Inhoudsopgave:

ESP32 WiFi BODEMVOCHTSENSOR - Ajarnpa
ESP32 WiFi BODEMVOCHTSENSOR - Ajarnpa

Video: ESP32 WiFi BODEMVOCHTSENSOR - Ajarnpa

Video: ESP32 WiFi BODEMVOCHTSENSOR - Ajarnpa
Video: Modkam - Zigbee датчик влажности почвы для растений 2024, November
Anonim
ESP32 WiFi BODEMVOCHTSENSOR
ESP32 WiFi BODEMVOCHTSENSOR

Goedkope bodemvochtsensoren die een elektrisch signaal door de bodem sturen om de weerstand van de bodem te meten, falen allemaal. Door elektrolyse hebben deze sensoren geen praktisch nut. Lees hier meer over elektrolyse. De sensor die in dit project wordt gebruikt, is een capacitieve sensor en geen geleidend metaal komt in contact met natte grond.

Na het laden van de firmware (Arduino-schets), zal de sensor een webserver op zichzelf maken en inloggen op uw wifi-router. U hebt nu toegang tot de webzijde op de ESP32-sensor. Er worden geen gegevens naar de cloud gestuurd.

Enige bekendheid met Arduino-programmering, soldeervaardigheden en HTML enz. kan helpen. Als u dit project bouwt, upload dan foto's via de onderstaande uploadlink. Geniet van het hacken.

Deze sensor kan lezen:

  1. Bodemvocht (Mijn code berekent het gravimetrische bodemwatergehalte)
  2. Luchttemperatuur en relatieve vochtigheid

Benodigdheden

  1. Wemos® Higrow ESP32 WiFi + Bluetooth-batterij + DHT11 Bodemtemperatuur- en vochtigheidssensormodule
  2. Voor datalogging (optioneel)

    • een Micro SD-kaartmodule.
    • Broodplank en OR
    • Soldeerbout, soldeerpasta.
    • Zes vrouwelijke naar mannelijke startkabels.

Stap 1: INSTALLEER EN CONFIGUREER DE ARDUINO IDE OP UW PC/MAC

INSTALLEER EN CONFIGUREER DE ARDUINO IDE OP UW PC/MAC
INSTALLEER EN CONFIGUREER DE ARDUINO IDE OP UW PC/MAC
INSTALLEER EN CONFIGUREER DE ARDUINO IDE OP UW PC/MAC
INSTALLEER EN CONFIGUREER DE ARDUINO IDE OP UW PC/MAC
INSTALLEER EN CONFIGUREER DE ARDUINO IDE OP UW PC/MAC
INSTALLEER EN CONFIGUREER DE ARDUINO IDE OP UW PC/MAC

Deze instellingsprocedure zou moeten werken op een Windows-pc, MAC en LINUX (x86)-systeem. Helaas voor Raspberry PI-gebruikers zijn de LINUX (ARM)-bibliotheken voor het ESP32-bord nog niet beschikbaar (hoewel er echte slimme mensen waren die ze uit de bron hebben gecompileerd).

  1. Download en installeer de Arduino IDE
  2. Voeg in het menu Voorkeuren https://dl.espressif.com/dl/package_esp32_index.json toe aan de URL van Aditional Boards Manager.
  3. Installeer de ESP32-bibliotheken via Tools>Board>Boards Manager. Zoeken naar esp32 op espressif-systemen
  4. Selecteer je Board in het menu: Tools>Board>"WeMos" WiFi & Bluetooth Battery
  5. Installeer de vereiste DHT11-bibliotheken via Extra> Bibliotheken beheren…

    1. U moet de DHT-sensorbibliotheek installeren door Adafruit versie 1.3.7 (of later?)
    2. U moet Adafruit Unified Sensor van Adafruit versie 1.0.3 installeren

Stap 2: BEVESTIG MICRO SD-KAART VOOR LOGGING (OPTIONEEL)

Als u uw gegevens moet loggen, sluit dan een Pololu Micro SD-kaartmodule aan. Andere SD-kaarten kunnen een andere bedrading en code hebben.

Stap 3: DOWNLOAD DE ARDUINO-SCHETS

DOWNLOAD DE ARDUINO-SCHETS
DOWNLOAD DE ARDUINO-SCHETS
DOWNLOAD DE ARDUINO-SCHETS
DOWNLOAD DE ARDUINO-SCHETS
  1. Download de toepasselijke Arduino-schets van GitHub en open deze.

    1. Esp32_SoilMoisture_WebServer.ino moet worden gebruikt als er geen micro-sd-kaartmodule is aangesloten.
    2. Esp32_SoilMoisture_WebServer_DataLog.ino vereist een micro-sd-kaart en blijft internettoegang tot de NTP-server. Deze optie heeft een zeer nauwkeurige tijd, maar gebruikt grote hoeveelheden stroom en kan de batterij leegmaken.
    3. Esp32_SoilMoisture_WebServer_DataLog_Int_RTC.ino vereist een micro-sd-kaart en internettoegang tot de NTP-server na reset. Het gebruikt de interne RTC van de ESP32 om de datum/tijd bij te werken die is ontvangen bij het resetten van de NTP-server. Dit is de meest energiezuinige oplossing, maar de tijd is mogelijk niet zo nauwkeurig.
  2. Bewerk uw router SSID en wachtwoord in de schets.
  3. Compileer de schets terwijl u op de opstartknop drukt.
  4. Als het compileren is gelukt, drukt u op de EN-knop en start u onmiddellijk de Arduino Serial Monitor (115200 Baud Rate)
  5. Wacht tot de blauwe LED aan en UIT gaat
  6. Laat het IP-adres afdrukken in de seriële monitor, voer het in uw browser in. U ziet nu de webpagina met sensorgegevens.
  7. Als je de micro sd-kaartlezer hebt toegevoegd, en je hebt een van de toepasselijke arduino-schetsen gecompileerd, dan heb je toegang tot je gegevens in /datalog.txt van je micro sd-kaart.

Stap 4: GRAVIMETRISCHE WATERGEHALTE KALIBRATIE

GRAVIMETRISCHE WATERGEHALTE KALIBRATIE
GRAVIMETRISCHE WATERGEHALTE KALIBRATIE

Hoe moet ik de bodemvochtmeting van GPIO 32 interpreteren?

Een methode is om het gravimetrische watergehalte van de bodem te berekenen. Het wordt berekend als:

(massa water in grondmonster)/(massa droge grond in monster)

Ik heb droge grond uit mijn tuin verzameld (het is Limpopo, Zuid-Afrika, augustusmaand en de grond is droog, echt droog). Je kunt de grond in een oven drogen.

  1. Weeg je droge grond
  2. giet de droge grond in een bak, plaats de sensor in de grond en neem een ruwe sensormeting (gebruik de webinterface). Noteer de watermassa (=0 in dit stadium) en de sensorwaarde.
  3. Verwijder de sensor, voeg 10 ml (gram) water toe, meng de grond en het water goed en noteer je watermassa (=10 in dit stadium) en de sensorwaarde.
  4. Ga door met dit proces zo ver u wilt, of totdat het toevoegen van water de sensormeting niet meer beïnvloedt.
  5. Mijn resultaten staan in het bijgevoegde Excel-blad. GWC wordt berekend als gwc=exp(-0.0015*SensorValue + 0.7072)

Stap 5: Toekomstige ontwikkelingen

Toekomstige ontwikkelingen
Toekomstige ontwikkelingen
  1. Sluit een externe RTC (Real Time Clock) aan. Momenteel wordt NTP (Network Time Protocol) gebruikt om de tijd voor datalogging te krijgen. Dit vereist wifi en is stroomintensief
  2. Voeg drukknoppen toe om de wifi- en webserver te starten en te stoppen om batterijverbruik te besparen.
  3. Voeg een GPRS-module toe en schakel wifi uit. Dit zal stroom besparen.

Aanbevolen: