Zo houd je je planten in de gaten met Adafruit IO

Door: koen-vervloesem | 18 augustus 2019 11:53

tuin gadgets
How To

Inhoudsopgave

  1. Inleiding
  2. Pagina 2

07 Arduino-bibliotheek installeren

Om ons programmaatje met Adafruit IO te koppelen, moeten we eerst een extra softwarebibliotheek in Arduino IDE installeren. Open in Arduino IDE het menu Hulpmiddelen / Bibliotheken beheren en zoek op Adafruit IO Arduino. Klik op Installeren naast de bibliotheek. Doe daarna hetzelfde met Adafruit MQTT Library en ArduinoHttpClient en sluit daarna het bibliotheekbeheer. Open dan in het menu Bestand / Voorbeelden / Adafruit IO Arduino het project adafruitio_08_analog_in. Dit doet al bijna exact wat we nodig hebben, we hoeven maar enkele regels code aan te passen.

08 Code aanpassen

De voorbeeldcode leest een lichtgevoelige weerstand uit, terwijl onze vochtsensor een vochtgevoelige weerstand is. Eigenlijk gebeurt er bijna hetzelfde. Je kunt de code eenvoudig uitbreiden om de digitale pin van onze vochtsensor correct in en uit te schakelen. Voeg helemaal in het begin vlak voor de regel // analog pin 0 de regel #define PULS_PIN 5 // D1 toe. Voeg helemaal in het begin van setup() de regels die beginnen met pinMode en digitalWrite van onze eerdere setup() toe. En voeg dan vóór de regel met analogRead de regel digitalWrite(PULS_PIN, HIGH); toe en erna de regel digitalWrite(PULS_PIN, LOW);.

09 Wachtwoorden invullen

Sla het aangepaste bestand alvast op (je vindt het ook kant-en-klaar hier). Let op: je dient de schets op een andere locatie op te slaan, omdat je anders de voorbeeldbestanden definitief aanpast. Geef het een naam zoals vochtsensor-adafruitio en sla het op. Open dan het tabblad config.h. Kopieer uit de pagina die je in stap 6 open had laten staan de twee regels code onder Arduino en plak ze hier in plaats van de twee regels die beginnen met #define IO_USERNAME en #define IO_KEY. Vul dan in de regels met #define WIFI_SSID en #define WIFI_PASS het ssid en wachtwoord van je draadloze netwerk in. Sla het bestand op en upload je schets dan naar je ESP8266 met een klik op het knopje met het pijltje naar rechts.

10 Verbinden met Adafruit IO

Als je nu de seriële monitor opent, krijg je na een tijdje (wees geduldig, want het kan eventjes duren!) de melding dat je ESP8266 verbonden is met Adafruit IO. Je krijgt ook elke keer dat de sensorwaarde verandert te zien dat die naar Adafruit IO verzonden wordt. Als je nu op de website van Adafruit IO links op Feeds klikt, krijg je een feed analog te zien met de recentste waarde. Die feed was in het begin van de code gedefinieerd met de regel AdafruitIO_Feed *analog = io.feed("analog");. Als je klikt op de feed analog, krijg je een grafiek met de recentste waardes te zien.

11 Dashboard

We kunnen nu ook een dashboard maken om deze meetgegevens samen met andere gegevens weer te geven. Klik links op Dashboards / Actions en in het uitklapmenu dat verschijnt op Create a New Dashboard. Geef je dashboard en naam en beschrijving. Klik daarna op de naam en dan op het blauwe icoontje met een plusteken om een nieuw blok aan te maken. Kies het bloktype (bijvoorbeeld Line Chart), vink je feed analog aan en klik op Next step. Geef je blok een titel en pas eventueel andere eigenschappen aan. Klik tot slot op Create block om de grafiek aan je dashboard toe te voegen. Je kunt hier nu ook andere blokken aan toevoegen, bijvoorbeeld voor meerdere planten.

12 Automatische melding

Je kunt Adafruit IO nu ook koppelen aan andere clouddiensten, zoals IFTTT. Klik daarvoor links op Services, dan bij IFTTT op Get Started / Click here to connect en tot slot (na eerst in te loggen op IFTTT) op Connect om Adafruit met IFTTT te verbinden. Nadat je IFTTT toegang gegeven hebt tot je Adafruit-account, kun je IFTTT laten reageren op de meetgegevens van je vochtsensor. Ga hiernaartoe en kies het applet If a feed value hits the threshold, send an IF notification.. Schakel die in, kies analog als je feed en vul less than 30 in. Vanaf nu krijg je automatisch een melding in de IFTTT-app als je plant te droog staat.

13 En verder

Je hoeft niet naar IFTTT te gaan om op je sensorgegevens te reageren. In het onderdeel Triggers van de webinterface van Adafruit IO kun je triggers definiëren en aan acties koppelen. Op die manier kun je ook meerdere ESP8266-controllerbordjes met elkaar koppelen en op elkaar laten reageren. Bekijk zeker de voorbeeldprojecten van Adafruit eens. Overigens kun je ook een Raspberry Pi met Python aan Adafruit IO koppelen en in de webinterface kun je ook je feeds met anderen delen. Genoeg mogelijkheden dus!

1 Reactie(s) op: Zo houd je je planten in de gaten met Adafruit IO

  • Om te reageren moet je ingelogd zijn. Nog geen account? Registreer je dan en praat mee!
  • 18 augustus 2019 12:46 Hans_Hekkenbouwer
    Je kunt zoveel tegenwoordig.
    Wanneer je een reactie plaatst ga je akoord
    met onze voorwaarden voor reacties.

Wanneer je een reactie plaatst ga je akoord
met onze voorwaarden voor reacties.