Lätt IoT väderstation med flera sensorer (4 / 8 steg)
Steg 4: kodning
Eftersom inte jag är särskilt bra i programmering försökt jag flera skisser availible på internet. Jag fick reda på att de flesta av skisserna var skriven i LUA språk och därtill värdelös för mig. En annan sak jag hittade är att när du hittar en skiss för en separat esp8266 sköld (en av dem är på toppen av NodeMcu) det är möjligt att använda denna skiss på NodeMCU utan problem. OK, detta bör låta dumt till dig, men jag verkligen visste inte att!
Jag hittade en bra skiss för temperatur och fuktighet på denna webbplats. Man kan se detta skissar görs för esp8266V1.0 (endast wifi sköld med 2GPIO stift) men workes på NodeMcu ombord. Biblioteket i ESP8266WiFi.h hämtas automatiskt när du lägger till theNodeMcu styrelse, DHT biblioteket du enkelt kan hämta med hjälp av inbuild library manager. Jag fann att när du använder det DHT (och inte det DHT11 biblioteket) det ingen spelar roll vilken sensor du använder, DHT22 eller DHT11! Enkelt ändra överallt där DHT11 är skrivet i texten till DHT22. Stor!
Skiss från denna webbplats tjänat som grund för skissen jag utvecklat och ges nedan. Jag började helt enkelt med DHT22 sensor att driva temperaturen och luftfuktigheten till thingspeak varefter jag lade till BMP sensor, regnsensor och LDR sensor. Om du jämför skissen ovan med skissen nedan ser du hur du lägger till aditional sensorer!
Efter att jag lagt alla sensorer upptäckte jag att du kan härleda daggpunkt temperaturen och fuktigheten. Det är också möjligt att retreave alltitude från temperaturen och lufttrycket, althrough detta är från mindre betydelse för ett väder kanal det är kul. Jag la formeln för daggpunkten och alltitude i arduino skiss.
- Ändra apiKey med en av ditt konto för thingspeak
- Lägg till ssid-namnet för ditt wifi-nätverk. Detta är helt enkelt namnet visas när du klickar på i rätt bottum hörn du skärmen.
- Lägga till lösenord för detta wifi nätverk
Om du lagt upp skissen kan du kontrollera i seriell övervaka hur det fungerar. Helt enkelt öppna bildskärmen genom att trycka på CNTR + M.