Innholdsfortegnelse:
Video: DIY værstasjon som bruker DHT11, BMP180, Nodemcu med Arduino IDE over Blynk Server: 4 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:23
Github: DIY_Weather_Station
Hackster.io: Værstasjon
Du ville ha sett Weather Application, ikke sant? Som når du åpner den, blir du kjent med værforholdene som temperatur, fuktighet osv. Disse målingene er gjennomsnittsverdien for et stort område, så hvis du vil vite de eksakte parameterne knyttet til rommet ditt, kan du ikke bare stole på værprogrammet. For dette formålet kan vi gå videre til å lage Weather Station, som er kostnadseffektivt, og som også er pålitelig og gir oss den nøyaktige verdien.
En værstasjon er et anlegg med instrumenter og utstyr for måling av atmosfæriske forhold for å gi informasjon om værmeldinger og for å studere været og klimaet. Det krever litt innsats å koble til og kode. Så la oss komme i gang.
Om Nodemcu:
NodeMCU er en åpen kildekode IoT -plattform.
Den inkluderer fastvare som kjører på ESP8266 Wi-Fi SoC fra Espressif Systems, og maskinvare som er basert på ESP-12-modulen.
Begrepet "NodeMCU" refererer som standard til fastvaren i stedet for dev -settene. Fastvaren bruker skriptspråket Lua. Det er basert på eLua-prosjektet, og bygget på Espressif Non-OS SDK for ESP8266. Den bruker mange åpen kildekode-prosjekter, for eksempel lua-cjson og spiffs.
Sensorer og programvarekrav:
1. Nodemcu (esp8266-12e v1.0)
2. DHT11
3. BMP180
4. Arduino IDE
Trinn 1: Kjenn dine sensorer
BMP180:
Beskrivelse:
BMP180 består av en piezo-resistiv sensor, en analog til digital omformer og en kontrollenhet med E2PROM og et serielt I2C-grensesnitt. BMP180 leverer den ukompenserte verdien av trykk og temperatur. E2PROM har lagret 176 biters individuelle kalibreringsdata. Dette brukes til å kompensere forskyvning, temperaturavhengighet og andre parametere for sensoren.
- OPP = trykkdata (16 til 19 bit)
- UT = temperaturdata (16 bit)
Tekniske spesifikasjoner:
- Vin: 3 til 5VDC
- Logikk: 3 til 5V kompatibel
- Trykkføler: 300-1100 hPa (9000m til -500m over havet)
- Opptil 0,03 hPa / 0,25 m oppløsning-40 til +85 ° C driftsområde, +-2 ° C temperaturnøyaktighet
- Dette kortet/brikken bruker I2C 7-biters adresse 0x77.
DHT11:
Beskrivelse:
- DHT11 er en grunnleggende, ekstremt billig digital temperatur- og fuktighetssensor.
- Den bruker en kapasitiv fuktighetssensor og en termistor for å måle luften rundt, og spytter ut et digitalt signal på datapinnen (ingen analoge inngangspinner er nødvendig). Den er ganske enkel å bruke, men krever nøye timing for å hente data.
- Den eneste virkelige ulempen med denne sensoren er at du bare kan få nye data fra den en gang hvert 2. sekund, så når du bruker biblioteket vårt, kan sensoravlesninger være opptil 2 sekunder gamle.
Tekniske spesifikasjoner:
- 3 til 5V strøm og I/O
- Bra for 0-50 ° C temperaturavlesninger ± 2 ° C nøyaktighet
- Bra for 20-80% fuktighetsavlesninger med 5% nøyaktighet
- 2,5 mA maksimal bruk under konvertering (mens du ber om data)
Trinn 2: Tilkobling
DHT11 med Nodemcu:
Pin 1 - 3.3V
Pin 2 - D4
Pin 3 - NC
Pin 4 - Gnd
BMP180 med Nodemcu:
Vin - 3,3V
Gnd - Gnd
SCL - D6
SDA - D7
Trinn 3: Konfigurer Blynk
Hva er Blynk?
Blynk er en plattform med iOS- og Android -apper for å kontrollere Arduino, Raspberry Pi og lignende over Internett.
Det er et digitalt dashbord hvor du kan bygge et grafisk grensesnitt for prosjektet ditt ved å dra og slippe widgets. Det er veldig enkelt å sette opp alt, og du begynner å tinke på mindre enn 5 minutter. Blynk er ikke knyttet til et bestemt brett eller skjold. I stedet støtter den maskinvare du ønsker. Enten Arduino eller Raspberry Pi er koblet til Internett via Wi-Fi, Ethernet eller denne nye ESP8266-brikken, vil Blynk gjøre deg online og klar for Internet Of Your Things.
For mer informasjon om hvordan du konfigurerer Blynk: Detaljert Blynk -oppsett
Trinn 4: Kode
// Kommentarer for hver linje er gitt i.ino -filen nedenfor
#include #define BLYNK_PRINT Seriell #include #include #include #include #include Adafruit_BMP085 bmp; #define I2C_SCL 12 #define I2C_SDA 13 float dst, bt, bp, ba; røye dstmp [20], btmp [20], bprs [20], balt [20]; bool bmp085_present = true; char auth = "Sett autentiseringsnøkkelen fra Blynk -appen her"; char ssid = "Din WiFi SSID"; char pass = "Ditt passord"; #define DHTPIN 2 #define DHTTYPE DHT11 DHT dht (DHTPIN, DHTTYPE); // Definere pinnen og dhttype BlynkTimer -timeren; void sendSensor () {if (! bmp.begin ()) {Serial.println ("Kunne ikke finne en gyldig BMP085 -sensor, sjekk ledninger!"); mens (1) {}} float h = dht.readHumidity (); float t = dht.readTemperature (); if (isnan (h) || isnan (t)) {Serial.println ("Kunne ikke lese fra DHT -sensor!"); komme tilbake; } dobbel gamma = log (t / 100) + ((17,62*t) / (243,5 + t)); dobbel dp = 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); } ugyldig oppsett () {Serial.begin (9600); Blynk.begin (auth, ssid, pass); dht.begin (); Wire.begin (I2C_SDA, I2C_SCL); forsinkelse (10); timer.setInterval (1000L, sendSensor); } void loop () {Blynk.run (); timer.run (); }
Anbefalt:
Profesjonell værstasjon som bruker ESP8266 og ESP32 DIY: 9 trinn (med bilder)
Profesjonell værstasjon ved bruk av ESP8266 og ESP32 DIY: LineaMeteoStazione er en komplett værstasjon som kan grensesnittes med profesjonelle sensorer fra Sensirion samt noen Davis Instrument -komponent (regnmåler, vindmåler) Prosjektet er beregnet som en DIY værstasjon, men bare krever
Enkel værstasjon som bruker ESP8266 .: 6 trinn (med bilder)
Enkel værstasjon som bruker ESP8266 .: I denne instruksen vil jeg dele hvordan jeg bruker ESP8266 for å få data som temperatur, trykk, klima etc. Og YouTube -data som abonnenter og amp; Totalt antall seere. og vis dataene på seriell skjerm og vis dem på LCD. Dataene vil være f
Personlig værstasjon som bruker Raspberry Pi med BME280 i Java: 6 trinn
Personal Weather Station Using Raspberry Pi With BME280 in Java: Dårlig vær ser alltid verre ut gjennom et vindu. Vi har alltid vært interessert i å overvåke vårt lokale vær og det vi ser ut av vinduet. Vi ønsket også bedre kontroll over vårt varme- og klimaanlegg. Å bygge en personlig værstasjon er et godt
Værstasjon som bruker Arduino UNO: 7 trinn
Værstasjon som bruker Arduino UNO: Laget av: Hazel Yang Dette prosjektet er en værstasjon som bruker et Arduino UNO -kort for å kontrollere dataflyt, en DHT22 -sensor for å samle data og en OLED -skjerm for å vise dataene
Værstasjon som bruker Raspberry Pi med BME280 i Python: 6 trinn
Værstasjon som bruker Raspberry Pi Med BME280 i Python: er maith an scéalaí an aimir (Været er en god historieforteller) Med global oppvarming og problemer med klimaendringer blir det globale værmønsteret uberegnelig over hele verden, noe som fører til en rekke værrelaterte naturkatastrofer (tørke, ekstreme