ESP8266 väderstation med Arduino – #2 programvara
Detta instructable är för programvara min Weather Station projektet. Läs den först för att förstå alla förklaringar.
På grund av de båda MCU programvara koncept är baserat på två delar: ESP8266 körs på Nodemcu och gör Internet-anslutningen och thingspeak.com med delar. Arduinoen gör alla sensorn relaterade saker. Kommunikationen mellan Arduino och ESP8266 sker via seriell anslutning där Arduino använder SoftwareSerial bibliotek på stift D2 (RX) och D3 (TX).
Konfigurationen är indelad i de båda enheterna:
- Alla wifi och thingspeak.com relevanta parametrar lagras i ESP8266 i en config-fil.
- Alla sensor och mäta relaterade parameter ställs i Arduino.
Varför? Jag bygger upp en hel del olika enheter som endast avviker i parametrarna thingspeak.com och wifi. Och jag bygga en snygg programmerare (bild) för ESP01. Så jag bara har att spara den nya config-filen till ESP01 och hålla alla andra saker samma. Och kan enkelt ändra den thingspeak kanalen genom att ändra endast ESP01 config.
Det finns två lägen i programvaran Arduino: standardkvalitet och låg effekt. Standard-versionen driver ESP01 en gång och skickar data regelbundet (korta perioder) till thingspeak.com. Den låg effekt en skickar datum också regelbundet men i längre perioder. Mellan två sendings drivs ESP01 ner. Därför använder standard-versionen och inte alltid spara makt? Om du vill ha en mer tillförlitlig, lika långt tidsstämpel på thingspeak.com återanslutning till wifi tar för lång tid och är inte lika från en återanslutning till den andra. Och om du inte kör systemet på batteriet, Energispar är inte viktigaste.