Spisu treści:

CZUJNIK WILGOTNOŚCI GLEBY ESP32 WiFi: 5 kroków
CZUJNIK WILGOTNOŚCI GLEBY ESP32 WiFi: 5 kroków

Wideo: CZUJNIK WILGOTNOŚCI GLEBY ESP32 WiFi: 5 kroków

Wideo: CZUJNIK WILGOTNOŚCI GLEBY ESP32 WiFi: 5 kroków
Wideo: Czujniki wilgotności gleby - rezystancyjny kontra pojemnościowy 2024, Listopad
Anonim
CZUJNIK WILGOTNOŚCI GLEBY ESP32 WiFi
CZUJNIK WILGOTNOŚCI GLEBY ESP32 WiFi

Tanie czujniki wilgotności gleby, które wysyłają sygnał elektryczny przez glebę w celu pomiaru rezystancji gleby, zawodzą. Elektroliza sprawia, że czujniki te nie mają praktycznego zastosowania. Zobacz więcej o elektrolizie tutaj. Czujnik zastosowany w tym projekcie jest czujnikiem pojemnościowym i żaden przewodzący metal nie ma kontaktu z mokrą glebą.

Po załadowaniu oprogramowania układowego (szkic Arduino) czujnik utworzy na sobie serwer WWW i zaloguje się do routera WiFi. Możesz teraz uzyskać dostęp do strony internetowej na czujniku ESP32. Żadne dane nie są wysyłane do chmury.

Pomocna może być pewna znajomość programowania Arduino, umiejętności lutowania i HTML itp. Jeśli zbudujesz ten projekt, prześlij zdjęcia za pomocą poniższego linku do przesyłania. Ciesz się hakowaniem.

Ten czujnik może odczytać:

  1. Wilgotność gleby (Mój kod obliczy grawimetryczną zawartość wody w glebie)
  2. Temperatura powietrza i wilgotność względna

Kieszonkowe dzieci

  1. Wemos® Higrow ESP32 WiFi + bateria bluetooth + moduł czujnika temperatury i wilgotności gleby DHT11
  2. Do rejestracji danych (opcjonalnie)

    • moduł karty Micro SD.
    • Deska do chleba i OR
    • Lutownica, pasta lutownicza.
    • Sześć kabli połączeniowych żeńsko-męskich.

Krok 1: ZAINSTALUJ I SKONFIGURUJ ARDUINO IDE NA SWOIM PC/MAC

ZAINSTALUJ I SKONFIGURUJ ARDUINO IDE NA SWOIM PC/MAC
ZAINSTALUJ I SKONFIGURUJ ARDUINO IDE NA SWOIM PC/MAC
ZAINSTALUJ I SKONFIGURUJ ARDUINO IDE NA SWOIM PC/MAC
ZAINSTALUJ I SKONFIGURUJ ARDUINO IDE NA SWOIM PC/MAC
ZAINSTALUJ I SKONFIGURUJ ARDUINO IDE NA SWOIM PC/MAC
ZAINSTALUJ I SKONFIGURUJ ARDUINO IDE NA SWOIM PC/MAC

Ta procedura konfiguracji powinna działać na systemie Windows PC, MAC i LINUX (x86). Niestety dla użytkowników Raspberry PI biblioteki LINUX (ARM) dla płyty ESP32 nie są jeszcze dostępne (chociaż byli naprawdę sprytni ludzie, którzy skompilowali je ze źródeł).

  1. Pobierz i zainstaluj Arduino IDE
  2. W menu Preferencje dodaj https://dl.espressif.com/dl/package_esp32_index.json do adresu URL Menedżera tablic dodatkowych.
  3. Zainstaluj biblioteki ESP32 z menu Narzędzia>Płyta>Menedżer tablic. Wyszukaj esp32 według systemów espressif
  4. Wybierz swoją tablicę w menu: Narzędzia>Płytka>Bateria „WeMos” WiFi i Bluetooth
  5. Zainstaluj wymagane biblioteki DHT11 z menu Narzędzia> Zarządzaj bibliotekami…

    1. Musisz zainstalować bibliotekę czujników DHT firmy Adafruit w wersji 1.3.7 (lub nowszej?)
    2. Musisz zainstalować Adafruit Unified Sensor firmy Adafruit w wersji 1.0.3

Krok 2: PODŁĄCZ KARTĘ MICRO SD W CELU REJESTRACJI (OPCJONALNIE)

Jeśli chcesz zarejestrować swoje dane, podłącz moduł karty Micro SD Pololu. Inne karty SD mogą mieć inne okablowanie i kod.

Krok 3: POBIERZ SZKIC ARDUINO

POBIERZ SZKIC ARDUINO
POBIERZ SZKIC ARDUINO
POBIERZ SZKIC ARDUINO
POBIERZ SZKIC ARDUINO
  1. Pobierz odpowiedni szkic arduino z GitHub i otwórz go.

    1. Esp32_SoilMoisture_WebServer.ino powinien być używany, jeśli nie jest podłączony moduł karty micro sd.
    2. Esp32_SoilMoisture_WebServer_DataLog.ino wymaga karty micro SD i kontynuuje dostęp do Internetu do serwera NTP. Ta opcja ma bardzo dokładny czas, ale zużywa duże ilości prądu i może wyczerpać baterię.
    3. Esp32_SoilMoisture_WebServer_DataLog_Int_RTC.ino wymaga karty micro sd i dostępu do Internetu do serwera NTP po zresetowaniu. Wykorzystuje wewnętrzny zegar czasu rzeczywistego ESP32 do aktualizacji daty/godziny otrzymanej przy resecie z serwera NTP. Jest to najbardziej energooszczędne rozwiązanie, ale czas może nie być tak dokładny.
  2. Edytuj swój identyfikator SSID i hasło routera w szkicu.
  3. Skompiluj szkic, naciskając przycisk rozruchu.
  4. Jeśli kompilacja się powiedzie, naciśnij przycisk EN i natychmiast uruchom Arduino Serial Monitor (115200 Baud Rate)
  5. Poczekaj, aż niebieska dioda LED zaświeci się i wyłączy
  6. Uzyskaj adres IP wydrukowany na monitorze szeregowym, wprowadź go w przeglądarce. Zobaczysz teraz stronę internetową danych czujnika.
  7. Jeśli dodałeś czytnik kart micro sd i skompilowałeś jeden z odpowiednich szkiców arduino, możesz uzyskać dostęp do swoich danych w /datalog.txt swojej karty micro sd.

Krok 4: KALIBRACJA GRAWIMETRYCZNA ZAWARTOŚCI WODY

GRAWIMETRYCZNA ZAWARTOŚĆ WODY-KALIBRACJA
GRAWIMETRYCZNA ZAWARTOŚĆ WODY-KALIBRACJA

Jak należy interpretować odczyt wilgotności gleby z GPIO 32?

Jedną z metod jest obliczenie grawimetrycznej zawartości wody w glebie. Oblicza się go jako:

(masa wody w próbce gleby)/(masa suchej gleby w próbce)

Zebrałem suchą glebę z mojego ogrodu (jest Limpopo, RPA, sierpień i gleba jest sucha, naprawdę sucha). Możesz wysuszyć ziemię w piekarniku.

  1. Zważyć suchą glebę
  2. wsyp suchą glebę do pojemnika, włóż czujnik do gleby i wykonaj surowy odczyt czujnika (użyj interfejsu internetowego). Zapisz masę wody (=0 na tym etapie) i odczyt czujnika.
  3. Wyjmij czujnik, dodaj 10 ml (gram) wody, wymieszaj odpowiednio glebę i wodę i zapisz swoją masę wody (=10 na tym etapie) oraz wartość czujnika.
  4. Kontynuuj ten proces tak daleko, jak chcesz, lub do momentu, gdy dodanie wody nie będzie już miało wpływu na odczyt czujnika.
  5. Moje wyniki znajdują się w załączonym arkuszu Excela. GWC jest obliczany jako gwc=exp(-0,0015*SensorValue + 0,7072)

Krok 5: Przyszły rozwój

Przyszły rozwój
Przyszły rozwój
  1. Podłącz zewnętrzny RTC (zegar czasu rzeczywistego). Obecnie NTP (Network Time Protocol) jest używany do uzyskania czasu na logowanie danych. Wymaga to Wi-Fi i jest obecnie intensywne
  2. Dodaj przyciski, aby uruchamiać i zatrzymywać Wi-Fi i serwer sieciowy, aby oszczędzać baterię.
  3. Dodaj moduł GPRS i wyłącz WiFi. Pozwoli to zaoszczędzić energię.

Zalecana: