Cuprins:
Video: Stație meteo DIY folosind DHT11, BMP180, Nodemcu cu Arduino IDE pe serverul Blynk: 4 pași
2024 Autor: John Day | [email protected]. Modificat ultima dată: 2024-01-30 11:44
Github: DIY_Weather_Station
Hackster.io: Stație meteo
Ați fi văzut aplicația meteo nu? De exemplu, atunci când îl deschideți, veți cunoaște condițiile meteorologice, cum ar fi Temperatura, Umiditatea etc. Aceste citiri reprezintă valoarea medie a unei zone mari, așa că, dacă doriți să cunoașteți parametrii exacți legați de camera dvs., nu puteți doar mizați pe aplicația meteo. În acest scop, putem trece la realizarea stației meteo, care este rentabilă și este, de asemenea, fiabilă și ne oferă valoarea exactă.
O stație meteo este o instalație cu instrumente și echipamente pentru măsurarea condițiilor atmosferice pentru a furniza informații despre prognozele meteo și pentru a studia vremea și clima. Este nevoie de puțin efort pentru conectare și cod. Deci sa începem.
Despre Nodemcu:
NodeMCU este o platformă IoT open source.
Include firmware care rulează pe ESP8266 Wi-Fi SoC de la Espressif Systems și hardware care se bazează pe modulul ESP-12.
Termenul „NodeMCU” se referă în mod implicit la firmware, mai degrabă decât la kituri de dezvoltare. Firmware-ul utilizează limbajul de scriptare Lua. Se bazează pe proiectul eLua și este construit pe Espressif Non-OS SDK pentru ESP8266. Folosește multe proiecte open source, cum ar fi lua-cjson și spiffs.
Senzori și cerințe software:
1. Nodemcu (esp8266-12e v1.0)
2. DHT11
3. BMP180
4. IDE Arduino
Pasul 1: Cunoaște-ți senzorii
BMP180:
Descriere:
BMP180 constă dintr-un senzor piezo-rezistiv, un convertor analogic digital și o unitate de control cu E2PROM și o interfață serial I2C. BMP180 oferă valoarea necompensată a presiunii și temperaturii. E2PROM a stocat 176 biți de date de calibrare individuale. Acesta este utilizat pentru a compensa compensarea, dependența de temperatură și alți parametri ai senzorului.
- UP = date de presiune (16 până la 19 biți)
- UT = date de temperatură (16 biți)
Specificații tehnice:
- Vin: 3 până la 5VDC
- Logică: compatibil 3 până la 5V
- Domeniu de detectare a presiunii: 300-1100 hPa (9000m până la -500m deasupra nivelului mării)
- Până la 0,03hPa / 0,25m rezoluție-40 până la + 85 ° C domeniu operațional, + -2 ° C precizie de temperatură
- Această placă / cip folosește adresa I2C pe 7 biți 0x77.
DHT11:
Descriere:
- DHT11 este un senzor digital de temperatură și umiditate de bază extrem de scăzut.
- Utilizează un senzor capacitiv de umiditate și un termistor pentru a măsura aerul înconjurător și scuipă un semnal digital pe pinul de date (nu sunt necesari pinii de intrare analogici). Este destul de simplu de utilizat, dar necesită sincronizare atentă pentru a obține date.
- Singurul dezavantaj real al acestui senzor este că puteți obține date noi de la acesta o dată la fiecare 2 secunde, astfel încât atunci când utilizați biblioteca noastră, citirile senzorilor pot avea o vechime de până la 2 secunde.
Specificații tehnice:
- Putere de la 3 la 5V și I / O
- Bun pentru citiri de temperatură 0-50 ° C precizie ± 2 ° C
- Bun pentru citiri de umiditate de 20-80% cu o precizie de 5%
- Utilizare curentă maximă de 2,5 mA în timpul conversiei (în timp ce solicitați date)
Pasul 2: conectivitate
DHT11 cu Nodemcu:
Pinul 1 - 3.3V
Pinul 2 - D4
Pinul 3 - NC
Pinul 4 - Gnd
BMP180 cu Nodemcu:
Vin - 3.3V
Gnd - Gnd
SCL - D6
SDA - D7
Pasul 3: Configurați Blynk
Ce este Blynk?
Blynk este o platformă cu aplicații iOS și Android pentru a controla Arduino, Raspberry Pi și like-uri prin Internet.
Este un tablou de bord digital în care puteți crea o interfață grafică pentru proiectul dvs. prin simpla glisare și plasare a widgeturilor. Este foarte simplu să configurați totul și veți începe să faceți jocuri în mai puțin de 5 minute. Blynk nu este legat de vreun tablou sau scut specific. În schimb, suportă hardware la alegere. Indiferent dacă dispozitivul dvs. Arduino sau Raspberry Pi este conectat la Internet prin Wi-Fi, Ethernet sau acest nou cip ESP8266, Blynk vă va face online și gata pentru Internetul lucrurilor voastre.
Pentru mai multe informații despre configurarea Blynk: Configurare detaliată Blynk
Pasul 4: Cod
// Comentariile pentru fiecare linie sunt date în fișierul.ino de mai jos
#include #define BLYNK_PRINT Serial #include #include #include #include #include Adafruit_BMP085 bmp; #define I2C_SCL 12 #define I2C_SDA 13 float dst, bt, bp, ba; char dstmp [20], btmp [20], bprs [20], balt [20]; bool bmp085_present = adevărat; char auth = "Puneți aici cheia de automatizare din aplicația Blynk"; char ssid = "SSID-ul dvs. WiFi"; char pass = "Parola ta"; #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); // Definirea pinului și a temporizatorului BlynkTimer dhttype; void sendSensor () {if (! bmp.begin ()) {Serial.println ("Nu s-a putut găsi un senzor BMP085 valid, verificați cablarea!"); while (1) {}} float h = dht.readHumidity (); float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("Nu s-a citit de la senzorul DHT!"); întoarcere; } gamma dublă = log (h / 100) + ((17,62 * t) / (243,5 + t)); dp dublu = 243,5 * gamma / (17,62-gamma); 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); întârziere (10); timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }
Recomandat:
Mini stație meteo folosind Arduino și ThingSpeak: 4 pași
Mini stație meteo folosind Arduino și ThingSpeak: Bună ziua tuturor. În acest Instructable, vă voi ghida prin pașii pentru a crea o mini stație meteo personalizată. De asemenea, vom folosi API-ul ThingSpeak pentru a încărca datele meteo pe serverele lor sau altceva care este scopul unei stații meteorologice
Stație meteo DIY și stație senzor WiFi: 7 pași (cu imagini)
Stație meteo DIY și stație senzor WiFi: În acest proiect vă voi arăta cum să creați o stație meteo împreună cu o stație senzor WiFi. Stația senzorului măsoară datele locale de temperatură și umiditate și le trimite, prin WiFi, către stația meteo. Stația meteo afișează apoi t
ESP8266 NodeMCU + LM35 + Blynk (stație meteo IOT / senzor digital de temperatură): 4 pași
ESP8266 NodeMCU + LM35 + Blynk (stație meteo IOT / senzor digital de temperatură): Bună băieți! În acest Instructable, vom învăța cum să interfațăm senzorul LM35 cu NodeMCU și să afișăm informațiile despre temperatură pe internet pe un smartphone cu aplicația Blynk. (De asemenea, în acest proiect vom folosi widgetul SuperChart în Bl
Cum să trimiteți date DHT11 către serverul MySQL folosind NodeMCU: 6 pași
Cum să trimiteți date DHT11 către serverul MySQL folosind NodeMCU: În acest proiect am interfațat DHT11 cu nodemcu și apoi trimitem date despre dht11, care este umiditatea și temperatura, la baza de date phpmyadmin
Arduino trimite date Dht11 către serverul MySQL (PHPMYADMIN) folosind Python: 5 pași
Arduino trimite date Dht11 către serverul MySQL (PHPMYADMIN) folosind Python: în acest proiect am interfațat DHT11 cu arduino și apoi trimit date ale dht11, care este umiditatea și temperatura, la baza de date phpmyadmin. Spre deosebire de proiectul nostru anterior, nu folosim niciun scut Ethernet în acest caz, aici citim doar t