Агуулгын хүснэгт:
Видео: DHT11, BMP180, Nodemcu ашиглан Blynk сервер дээр Arduino IDE ашиглан DIY цаг уурын станц: 4 алхам
2024 Зохиолч: John Day | [email protected]. Хамгийн сүүлд өөрчлөгдсөн: 2024-01-30 11:03
Github: DIY_Weather_Station
Hackster.io: Цаг агаарын станц
Та цаг агаарын мэдээг үзэх байсан биз дээ? Жишээлбэл, та үүнийг нээхдээ температур, чийгшил гэх мэт цаг агаарын нөхцөл байдалтай танилцах болно. Эдгээр уншилт нь том талбайн дундаж утга тул та өрөөнийхөө параметрүүдийг яг таг мэдэхийг хүсч байвал үүнийг хийх боломжгүй юм. Цаг агаарын мэдүүлэгт найдах. Үүний тулд цаг агаарын станц хийх ажлыг үргэлжлүүлье, энэ нь эдийн засгийн хувьд хэмнэлттэй, найдвартай бөгөөд бидэнд үнэн зөв үнэ цэнийг өгдөг.
Цаг агаарын станц гэдэг нь цаг агаарын урьдчилсан мэдээ өгөх, цаг агаар, цаг уурыг судлах зорилгоор агаар мандлын нөхцлийг хэмжих багаж, тоног төхөөрөмж бүхий байгууламж юм. Залгах, код бичихэд бага зэрэг хүчин чармайлт шаардагдана. Тиймээс эхэлцгээе.
Нодемкугийн тухай:
NodeMCU бол нээлттэй эх сурвалжтай IoT платформ юм.
Үүнд Espressif Systems-ийн ESP8266 Wi-Fi SoC дээр ажилладаг програм хангамж, ESP-12 модульд суурилсан техник хангамж орно.
"NodeMCU" гэсэн нэр томъёо нь анхдагч хэрэгслүүдээс илүү програм хангамжийг хэлдэг. Програм хангамж нь Lua скрипт хэлийг ашигладаг. Энэ нь eLua төсөл дээр суурилсан бөгөөд ESP8266-д зориулагдсан Espressif OS бус SDK дээр суурилсан болно. Энэ нь lua-cjson, spiffs гэх мэт олон нээлттэй эхийн төслүүдийг ашигладаг.
Мэдрэгч ба програм хангамжийн шаардлага:
1. Nodemcu (esp8266-12e v1.0)
2. DHT11
3. BMP180
4. Arduino IDE
Алхам 1: Мэдрэгчээ мэдэх
BMP180:
Тодорхойлолт:
BMP180 нь пьезо-эсэргүүцэлтэй мэдрэгч, тоон хөрвүүлэгч аналог, E2PROM бүхий хяналтын нэгж, цуваа I2C интерфэйсээс бүрдэнэ. BMP180 нь даралт, температурын нөхөн олговоргүй утгыг өгдөг. E2PROM нь хувийн тохируулгын 176 бит мэдээллийг хадгалсан болно. Энэ нь мэдрэгчийн офсет, температурын хамаарал болон бусад параметрүүдийг нөхөхөд ашиглагддаг.
- UP = даралтын өгөгдөл (16-19 бит)
- UT = температурын өгөгдөл (16 бит)
Техникийн үзүүлэлтүүд:
- Vin: 3 -аас 5VDC хүртэл
- Логик: 3 -аас 5V -тэй нийцдэг
- Даралт мэдрэх хүрээ: 300-1100 hPa (далайн түвшнээс дээш 9000м -500м)
- 0.03hPa / 0.25m нарийвчлалтай -40-аас +85 ° C хүртэл ажиллах хүрээ, +-2 ° C температурын нарийвчлал
- Энэхүү самбар/чип нь I2C 7 битийн 0x77 хаягийг ашигладаг.
DHT11:
Тодорхойлолт:
- DHT11 бол дижитал температур, чийгшлийн үндсэн, хэт хямд өртөгтэй мэдрэгч юм.
- Энэ нь багтаамжийн чийгшил мэдрэгч ба термистор ашиглан хүрээлэн буй орчны агаарыг хэмждэг бөгөөд өгөгдлийн зүү дээр дижитал дохиог цацдаг (аналог оролтын зүү шаардлагагүй). Үүнийг ашиглах нь маш энгийн боловч өгөгдлийг олж авахад цаг хугацаа шаардагдана.
- Энэхүү мэдрэгчийн цорын ганц сул тал бол та үүнээс 2 секунд тутамд нэг л удаа шинэ мэдээлэл авах боломжтой байдаг тул манай номын санг ашиглах үед мэдрэгчийн уншилт 2 секунд хүртэл үргэлжилдэг.
Техникийн үзүүлэлтүүд:
- 3-5 вольтын хүч ба I/O
- 0-50 ° C температурын уншилт ± 2 ° C нарийвчлалтай байвал сайн
- 5% -ийн нарийвчлалтайгаар 20-80% -ийн чийгшилтийг уншихад тохиромжтой
- Хөрвүүлэлтийн үед 2.5 мА хамгийн их гүйдлийн хэрэглээ (өгөгдөл хүсэх үед)
Алхам 2: Холболт
Nodemcu -тэй DHT11:
Зүү 1 - 3.3V
Зүү 2 - D4
Зүү 3 - NC
4 -р зүү - Gnd
Nodemcu -тай BMP180:
Вин - 3.3В
Гнд - Гнд
SCL - D6
SDA - D7
Алхам 3: Blynk -ийг тохируулна уу
Блинк гэж юу вэ?
Blynk бол Arduino, Raspberry Pi болон бусад зүйлийг интернетээр удирдах iOS болон Android програмтай платформ юм.
Энэ бол дижитал хяналтын самбар бөгөөд та виджетээ чирж, буулгах замаар төслийнхөө график интерфэйсийг бий болгож чадна. Бүх зүйлийг тохируулах нь маш энгийн бөгөөд та 5 минутын дотор засаж эхэлнэ. Блинк нь ямар нэгэн тусгай самбар эсвэл бамбайнд холбогдоогүй байдаг. Үүний оронд энэ нь таны сонгосон тоног төхөөрөмжийг дэмждэг. Таны Arduino эсвэл Raspberry Pi нь Wi-Fi, Ethernet эсвэл энэ шинэ ESP8266 чипээр интернетэд холбогдсон эсэхээс үл хамааран Blynk таныг онлайнаар холбож, таны эд зүйлсийн интернетэд бэлэн болно.
Blynk -ийг тохируулах талаар дэлгэрэнгүй мэдээллийг: Blynk -ийн дэлгэрэнгүй тохиргоо
Алхам 4: Код
// Мөр бүрийн тайлбарыг доорх.ino файлд өгсөн болно
#оруулах #тодорхойлох BLYNK_PRINT Цуврал #оруулах #оруулах #оруулах #оруулах #Adafruit_BMP085 bmp оруулах; #тодорхойлох I2C_SCL 12 #тодорхойлох I2C_SDA 13 float dst, bt, bp, ba; char dstmp [20], btmp [20], bprs [20], balt [20]; bool bmp085_present = үнэн; char auth = "Blynk аппаас баталгаажуулах түлхүүрээ энд оруулна уу"; char ssid = "Таны WiFi SSID"; char pass = "Таны нууц үг"; #тодорхойлох DHTPIN 2 #тодорхойлох DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); // Зүү ба dhttype BlynkTimer таймерыг тодорхойлох; void sendSensor () {if (! bmp.begin ()) {Serial.println ("Хүчинтэй BMP085 мэдрэгч олдсонгүй, утсыг шалгаарай!"); while (1) {}} float h = dht.readHumidity (); float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("DHT мэдрэгчээс уншиж чадсангүй!"); буцах; } давхар гамма = лог (h / 100) + ((17.62*t) / (243.5 + t)); давхар dp = 243.5*гамма / (17.62-гамма); float bp = bmp.readPressure ()/100; float ba = bmp.readAltitude (); float bt = bmp.readTemperature (); float dst = bmp.readSealevelPressure ()/100; Blynk.virtualWrite (V5, h); Blynk.virtualWrite (V6, t); Blynk.virtualWrite (V10, bp); Blynk.virtualWrite (V11, ba); Blynk.virtualWrite (V12, bt); Blynk.virtualWrite (V13, dst); Blynk.virtualWrite (V14, dp); } void setup () {Serial.begin (9600); Blynk.begin (auth, ssid, pass); dht.begin (); Wire.begin (I2C_SDA, I2C_SCL); саатал (10); timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }
Зөвлөмж болгож буй:
NaTaLia цаг уурын станц: Arduino нарны эрчим хүчээр ажилладаг цаг уурын станц зөв замаар хийсэн: 8 алхам (зурагтай)
NaTaLia цаг уурын станц: Arduino нарны эрчим хүчээр ажилладаг цаг уурын станц зөв замаар хийсэн: 1 жилийн турш 2 өөр байршилд амжилттай ажилласны дараа би нарны эрчим хүчээр ажилладаг цаг уурын станцын төслийн төлөвлөгөөгөө хуваалцаж, хэрхэн урт хугацаанд үнэхээр оршин тогтнож чадах систем болж хөгжсөн тухай тайлбарлаж байна. нарны эрчим хүчнээс үүссэн үе. Хэрэв та дагах бол
IoT ESP8266 дээр суурилсан цаг уурын станц: 6 алхам
IoT ESP8266 дээр суурилсан цаг уурын станц: Ямар ч мэдрэгч ашиглахгүйгээр цаг уурын станцын төслийг барьж, дэлхийн өнцөг булан бүрээс цаг агаарын талаар мэдээлэл авахыг хүсч байна уу? OpenWeatherMap -ийг ашиглах нь бодит ажил болно
DIY цаг уурын станц ба WiFi мэдрэгч станц: 7 алхам (зурагтай)
DIY цаг уурын станц ба WiFi мэдрэгч станц: Энэхүү төсөлд би WiFi мэдрэгч станцын хамт цаг агаарын станцыг хэрхэн яаж хийхийг танд үзүүлэх болно. Мэдрэгч станц нь орон нутгийн температур, чийгшлийн өгөгдлийг хэмжиж, WiFi -ээр цаг уурын станц руу илгээдэг. Цаг уурын станц дараа нь
Blynk програмыг ашиглан IoT цаг уурын станц: 5 алхам
Blynk програмыг ашигладаг IoT цаг агаарын станц: Энэхүү төсөл нь IoT дэлхийн анхны алхамуудтай холбоотой бөгөөд энд бид DHT11/DHT22 мэдрэгчийг NodeMCU эсвэл бусад ESP8266 дээр суурилсан самбартай холбож, Blynk програмыг ашиглах гэж буй интернет дээрх өгөгдлийг хүлээн авах болно. Хэрэв та байвал линк
RPi цаг уурын станц ба дижитал цаг: 4 алхам (зурагтай)
RPi цаг уурын станц ба дижитал цаг: Энэ бол хурдан бөгөөд хялбар төсөл бөгөөд үзүүлэх сайхан дэлгэц юм. Энэ нь цаг хугацаа, цаг агаарын нөхцөл байдал, температурыг хоёуланг нь харуулдаг. Хэрэв танд харсан зүйл тань таалагдаж байвал миний хийсэн зүйлийг дагаж мөрдөхийн тулд намайг Instagram, Twitter (@Anders644PI) дээр дагаарай