Inhoudsopgave:

IoT Hydroponics - Adafruit IO gebruiken voor EC-, PH- en temperatuurregistratie: 6 stappen
IoT Hydroponics - Adafruit IO gebruiken voor EC-, PH- en temperatuurregistratie: 6 stappen

Video: IoT Hydroponics - Adafruit IO gebruiken voor EC-, PH- en temperatuurregistratie: 6 stappen

Video: IoT Hydroponics - Adafruit IO gebruiken voor EC-, PH- en temperatuurregistratie: 6 stappen
Video: How to set SONOFF WIFI Type POWR2 to PLTS 2024, November
Anonim
IoT Hydroponics - Adafruit IO gebruiken voor EC-, PH- en temperatuurregistratie
IoT Hydroponics - Adafruit IO gebruiken voor EC-, PH- en temperatuurregistratie

Deze instructable laat zien hoe je de EC, pH en temperatuur van een hydrocultuuropstelling kunt bewaken en de gegevens kunt uploaden naar de IO-service van Adafruit.

Adafruit IO is gratis om mee aan de slag te gaan. Er zijn betaalde abonnementen, maar het gratis abonnement is meer dan genoeg voor dit project.

Stap 1: Dingen die je nodig hebt

  • Elk ESP32-ontwikkelbord. Deze lijkt redelijk, maar alles zal werken.
  • Een geïsoleerde EC-probe-interfacekaart en een K1-geleidbaarheidsprobe. Je kunt ze allebei krijgen op ufire.co.
  • Een geïsoleerde ISE-sonde-interfacekaart en een pH-sonde ook van ufire.co.
  • Sommige kansen en doelen zoals draden en USB-kabels.

Stap 2: De software

  1. Ik ga ervan uit dat je bekend bent met Arduino, de Arduino IDE, en dat je deze al hebt geïnstalleerd. Zo niet, volg dan de links.
  2. Het volgende is om het ESP32-platform te installeren. Om de een of andere reden is dit niet vereenvoudigd door de beschikbare platformbeheerfuncties die de IDE te bieden heeft, dus je moet naar de github-pagina gaan en de juiste installatie-instructies volgen.
  3. Nu voor de bibliotheken:

    1. Ga vanuit de Arduino IDE naar Sketch / Include Library / Manage Libraries… en zoek naar en installeer 'EC_Salinity'.
    2. Zoek en installeer 'Isolated ISE Probe Interface'.
    3. Zoek en installeer 'Adafruit MQTT Library'.
    4. Zoek en installeer 'ArduinoHttpClient'.
    5. En tot slot zoeken naar een installatie 'Adafruit IO Arduino'.

Stap 3: Verbindingen maken

De ESP32 die we gebruiken heeft wifi- en BLE-interfaces, dus die heeft alleen een voeding nodig. U wilt waarschijnlijk een USB-kabel die netstroom levert, maar een batterij is een andere optie. Veel ESP32's kunnen worden gekocht met een batterijlaadcircuit dat al op het bord zit.

De uFire-apparaten die we EC, pH en temperatuur gaan meten, worden via de I2C-bus op de ESP32 aangesloten. Met de ESP32 kunt u elke twee pinnen voor I2C kiezen. Beide apparaten zitten op dezelfde bus, dus de SCL- en SDA-pinnen zijn hetzelfde. Als je naar de code kijkt (volgende stap), zie je deze twee regels.

ISE_pH pH (19, 23);

EC_Salinity mS (19, 23);

Ik besloot pin 19 te gebruiken voor SDA en pin 23 voor SCL. Sluit dus de 3.3v van de ESP32 (of hoe de pin ook mag heten op uw specifieke bord) aan op de 3.3/5v-pin van het EC uFire-apparaat, GND op GND, 19 op SDA en 23 op SCL. Sluit nu het uFire pH-bord aan op het EC-bord, pin voor pin. De pinout op uw ESP32 kan afwijken van de afbeelding.

Stap 4: Maak een Adafruit-account aan

U moet een account aanmaken op io.adafruit.com. Volg de link naar 'Aan de slag gratis'.

Als dat klaar is, ga je terug naar io.adafruit.com en zou je naar je lege Dashboards-lijst moeten kijken. Aan de linkerkant ziet u een menu-item genaamd 'View AIO Key', klik erop en er wordt een dialoogvenster geopend. U ziet een tekstvak met het label 'Gebruikersnaam' en 'Actieve sleutel'. Je hebt ze allebei nodig voor de volgende stap.

Stap 5: De schets

De schets hiervoor is het absolute minimum om onze gegevens te krijgen en te uploaden. Er zijn veel dingen om dit te verbeteren, energiebeheer, draadloze configuratie, sensorkalibratie … veel dingen, maar dit is slechts een demonstratie en een startpunt, dus we zullen het simpel houden.

Upload dit in de Arduino IDE, zorg ervoor dat je het juiste bord kiest in het menu Tools. ESP32 Dev Module zal meer dan waarschijnlijk werken. Sommige boards werken met hogere baudrates, maar bijna allemaal werken ze op 115, 200. Verander de regel AdafruitIO_WiFi io naar uw specifieke informatie. De 'Gebruikersnaam' en 'Actieve Sleutel' is de Adafruit-informatie die u zojuist hebt gevonden, WiFi SSID is de naam van uw WiFi-netwerk en WiFi-wachtwoord is het wachtwoord voor dat netwerk.

#include "AdafruitIO_WiFi.h"#include "ISE_pH.h" #include "uFire_EC.h" ISE_pH pH(19, 23); uFire_EC mS (19, 23); AdafruitIO_WiFi io("Gebruikersnaam", "Actieve sleutel", "WiFi SSID", "Wifi-wachtwoord"); AdafruitIO_Feed *ph = io.feed ("pH"); AdafruitIO_Feed *temp = io.feed ("C"); AdafruitIO_Feed *ec = io.feed ("mS"); void setup() { io.connect(); mS.setK(1.0); } void loop() { io.run(); ph->opslaan(pH.measurepH()); vertraging (3000); temp->opslaan(pH.measureTemp()); vertraging (3000); ec->save(mS.measureEC()); vertraging (3000); }

Stap 6: Het Adafruit-dashboard

Als alles soepel is verlopen, je alles hebt aangesloten, de schets hebt geüpload en een account hebt gemaakt, zou je de gegevens moeten kunnen zien binnenkomen.

Ga opnieuw naar io.adafruit.com en selecteer het menu-item 'Feeds' aan de linkerkant. Dit is een soort log van al je datastromen. U zou alle drie de gegevens moeten zien bijwerken, één om de drie seconden.

Nu kunt u die gegevens omzetten in een dashboard. De details daarvan laat ik aan jou over, de Adafruit-website zou alle informatie moeten hebben die je nodig hebt.

Aanbevolen: