Sisällysluettelo:
Video: DIY -sääasema käyttäen DHT11, BMP180, Nodemcu ja Arduino IDE Blynk -palvelimen yli: 4 vaihetta
2024 Kirjoittaja: John Day | [email protected]. Viimeksi muokattu: 2024-01-30 09:01
Github: DIY_Weather_Station
Hackster.io: Sääasema
Olisitko nähnyt Sääsovelluksen oikein? Kun avaat sen, opit tuntemaan sääolosuhteet, kuten lämpötilan, kosteuden jne. Nämä lukemat ovat suuren alueen keskiarvo, joten jos haluat tietää huoneeseesi liittyvät tarkat parametrit, et voi vain luottaa sääsovellukseen. Tätä tarkoitusta varten voimme siirtyä sääaseman valmistukseen, joka on kustannustehokas, luotettava ja antaa meille tarkan arvon.
Sääasema on laite, jossa on välineitä ja laitteita ilmakehän mittaamiseen, jotta saadaan tietoa sääennusteista ja tutkitaan säätä ja ilmastoa. Liittäminen ja koodaaminen vaatii vähän vaivaa. Aloitetaan siis.
Tietoja Nodemcusta:
NodeMCU on avoimen lähdekoodin IoT -alusta.
Se sisältää laiteohjelmiston, joka toimii ESP8266 Wi-Fi SoC: llä Espressif Systemsiltä, ja laitteiston, joka perustuu ESP-12-moduuliin.
Termi "NodeMCU" viittaa oletuksena laiteohjelmistoon eikä kehityssarjoihin. Laiteohjelmisto käyttää Lua -komentosarjakieltä. Se perustuu eLua-projektiin ja perustuu ESP8266: n Espressif Non-OS SDK: hon. Se käyttää monia avoimen lähdekoodin projekteja, kuten lua-cjson ja spiffit.
Anturit ja ohjelmistovaatimus:
1. Nodemcu (esp8266-12e v1.0)
2. DHT11
3. BMP180
4. Arduino IDE
Vaihe 1: Tunne anturit
BMP180:
Kuvaus:
BMP180 koostuu pietsoresistiivisestä anturista, analogisesta digitaalimuuntimeen ja ohjausyksiköstä, jossa on E2PROM ja sarjaliitäntä I2C. BMP180 tarjoaa kompensoimattoman paineen ja lämpötilan arvon. E2PROM on tallentanut 176 bittiä yksittäisiä kalibrointitietoja. Tätä käytetään kompensoimaan anturin siirtymä, lämpötilariippuvuus ja muut parametrit.
- YLÖS = painetiedot (16-19 bittiä)
- UT = lämpötilatiedot (16 bittiä)
Tekniset tiedot:
- Vin: 3-5 VDC
- Logiikka: 3-5 V: n mukainen
- Paineen tunnistusalue: 300-1100 hPa (9000 --500 m merenpinnan yläpuolella)
- Jopa 0,03 hPa / 0,25 m resoluutio -40 … +85 ° C toiminta-alue, +-2 ° C lämpötilan tarkkuus
- Tämä kortti/siru käyttää I2C 7-bittistä osoitetta 0x77.
DHT11:
Kuvaus:
- DHT11 on erittäin edullinen digitaalinen peruslämpötila- ja kosteusanturi.
- Se käyttää kapasitiivista kosteusanturia ja termistoria ympäröivän ilman mittaamiseen ja sylkee digitaalisen signaalin datanastalle (ei tarvita analogisia tulonappeja). Se on melko yksinkertainen käyttää, mutta vaatii huolellisen ajoituksen tietojen keräämiseen.
- Tämän anturin ainoa todellinen haittapuoli on, että voit saada siitä uusia tietoja vain kerran 2 sekunnissa, joten kun käytämme kirjastoamme, anturilukemat voivat olla jopa 2 sekuntia vanhoja.
Tekniset tiedot:
- 3-5 V: n virta ja I/O
- Sopii 0-50 ° C: n lämpötilalukemiin ± 2 ° C: n tarkkuudella
- Sopii 20-80% kosteuslukemiin 5% tarkkuudella
- 2,5 mA: n enimmäisvirta muuntamisen aikana (tietoja pyydettäessä)
Vaihe 2: Yhteydet
DHT11 ja Nodemcu:
Nasta 1 - 3.3V
Nasta 2 - D4
Nasta 3 - NC
Nasta 4 - Gnd
BMP180 ja Nodemcu:
Vin - 3.3V
Gnd - Gnd
SCL - D6
SDA - D7
Vaihe 3: Asenna Blynk
Mikä on Blynk?
Blynk on alusta, jossa on iOS- ja Android -sovellukset Arduinon, Raspberry Pi: n ja vastaavien hallitsemiseksi Internetin kautta.
Se on digitaalinen kojelauta, johon voit rakentaa graafisen käyttöliittymän projektillesi vetämällä ja pudottamalla widgettejä. Kaikki on todella yksinkertaista asentaa ja alat tinkeroida alle 5 minuutissa. Blynk ei ole sidottu tiettyyn lautaan tai kilpeen. Sen sijaan se tukee valitsemiasi laitteita. Olipa Arduino tai Raspberry Pi linkitetty Internetiin Wi-Fi-yhteyden, Ethernetin tai tämän uuden ESP8266-sirun kautta, Blynk saa sinut verkkoon ja on valmis Internet of Your -tapahtumaan.
Lisätietoja Blynkin määrittämisestä: Yksityiskohtaiset Blynk -asetukset
Vaihe 4: Koodi
// Kunkin rivin kommentit on annettu alla olevassa.ino -tiedostossa
#sisällytä #määrittele BLYNK_PRINT -sarja #sisällytä #sisällytä #sisällytä #sisällytä #sisällytä 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 = true; char auth = "Laita todennusavaimesi Blynk -sovelluksesta tähän"; char ssid = "WiFi -SSID -tunnuksesi"; char pass = "Salasanasi"; #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); // Tapin ja dhttype -tyypin määrittäminen BlynkTimer timer; void sendSensor () {if (! bmp.begin ()) {Serial.println ("Ei löytynyt kelvollista BMP085 -anturia, tarkista johdotus!"); while (1) {}} float h = dht.readHumidity (); float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("Lukeminen epäonnistui DHT -anturista!"); palata; } kaksinkertainen gamma = log (h / 100) + ((17,62*t) / (243,5 + t)); kaksinkertainen dp = 243,5*gamma / (17,62-gamma); float bp = bmp.read Pressure ()/100; float ba = bmp.readAltitude (); float bt = bmp.readTemperature (); float dst = bmp.readSealevel Pressure ()/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); viive (10); timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }
Suositeltava:
Yksinkertainen Arduino LoRa -yhteys (yli 5 km): 9 vaihetta
Yksinkertainen Arduino LoRa -kommunikaatio (yli 5 km): Testaamme E32-TTL-100: ta kirjastossani. Se on langaton lähetinvastaanotinmoduuli, joka toimii 410 441 MHz: llä (tai 868 MHz tai 915 MHz) SEMTECHin alkuperäisen RFIC SX1278: n perusteella, läpinäkyvä lähetys on saatavana, TTL -taso. Moduuli hyväksyy LORA
Ilmanlaadun valvontalaite, jossa MQ135 ja ulkoinen lämpötila- ja kosteusanturi MQTT: n yli: 4 vaihetta
Ilmanlaadun valvontalaite, jossa MQ135 ja ulkoinen lämpötila- ja kosteusanturi MQTT: n yli: Tämä on testitarkoituksiin
Digitaalinen lämpömittari DHT11 käyttäen ESP8266: 4 vaihetta
Digitaalinen lämpömittari DHT11 ESP8266: n avulla: Edellisessä artikkelissa keskustelin jo DH11: stä ja sen näyttämisestä ulostulolaitteissa, kuten 7 -segmentti-, LCD-, sarja- ja RGB -renkaissa. matkapuhelimen selaimen avulla
Minimalistinen IoT -kello (käyttäen ESP8266, Adafruit.io, IFTTT ja Arduino IDE): 10 vaihetta (kuvilla)
Minimalistinen IoT -kello (käyttäen ESP8266, Adafruit.io, IFTTT ja Arduino IDE): Tässä opetusohjelmassa näytän kuinka voit tehdä minimalistisen kellon synkronoituna Internetin kanssa. Testasin sitä kahdella eri ESP8266 -pohjaisella levyllä: Firebeetle ja NodeMCU. Mikro -ohjain saa nykyisen ajan Googlen palvelimelta ja näyttää sen
NODEMCU 1.0 (ESP8266) OHJAUSRELE BLYNK: N KÄYTTÖÖN (VERKON YLI): 5 vaihetta (kuvilla)
NODEMCU 1.0 (ESP8266) VALVOTTU RELE BLYNKÄ (VERKKON YLI): HI GUYS MINUN NIMI ON P STEVEN LYLE JYOTHI MY BAD ENGLISH