Chociaż dostępnych jest kilka wskaźników poziomu wody i urządzeń do monitorowania poziomu w górnym zbiorniku wody, urządzenia te często mają wysoką cenę i mają ograniczoną funkcjonalność. Poza tym do działania wymagają zanurzania elektrod lub przełącznika w wodzie; może to zanieczyścić wodę i z czasem ulec korozji.

Ale co by było, gdybyś mógł zbudować bezprzewodowy i bezdotykowy czujnik poziomu wody oparty na Wi-Fi, który raportuje poziom wody w zbiorniku bezpośrednio na smartfonie? W tym poradniku dla majsterkowiczów zbudujemy taki wskaźnik poziomu wody za pomocą płytki NodeMCU i ultradźwięku czujnik, który znajduje się w górnej części pokrywy zbiornika na wodę i przesyła dane do smartfona przez Home Asystent.

Jak to działa?

Ultradźwiękowy czujnik poziomu wody działa poprzez wysyłanie fal dźwiękowych o określonej częstotliwości (znanych również jako fale ultradźwiękowe) i odbieranie fali odbitej od obiektu docelowego. Czujnik oblicza i zgłasza odległość między czujnikiem a obiektem w oparciu o czas potrzebny na przebycie i odbicie fali dźwiękowej lub ultradźwiękowej.

instagram viewer

Czujnik ultradźwiękowy domyślnie podaje wartość odległości w centymetrach (cm). Wraz z głębokością zbiornika ta wartość zgłaszana przez czujnik ultradźwiękowy może być wykorzystana do znalezienia pozostała woda w zbiorniku poprzez obliczenie odległości między poziomem wody w zbiorniku a ultradźwiękami czujnik.

Rzeczy, których będziesz potrzebować

Aby zbudować ten inteligentny czujnik poziomu wody, potrzebujesz:

  • MCU oparty na ESP8266, taki jak NodeMCU, D1 Mini, ESP01 itp.
  • Czujnik ultradźwiękowy SR04
  • Przewody połączeniowe

W przypadku tego projektu zaleca się użycie wodoodpornego czujnika ultradźwiękowego JSN-SR04, aby zapobiec uszkodzeniu czujnika z powodu wilgoci.

Kroki, aby zbudować inteligentny czujnik poziomu wody

Możesz wykonać poniższe kroki, aby zbudować inteligentny bezdotykowy ultradźwiękowy czujnik poziomu wody oparty na Wi-Fi aby monitorować zużycie wody i uchronić się przed wchodzeniem po schodach lub zbiornikiem na wodę, aby to sprawdzić ręcznie. Możesz również użyć tego czujnika do monitorowania poziomu soli w zbiorniku.

Krok 1: Zainstaluj i skonfiguruj Home Assistant

Asystent domu (HA) jest preferowany, ale nie jest wymagany do zbudowania inteligentnego czujnika lub kontrolera poziomu wody opartego na Wi-Fi. Jeśli jednak chcesz otrzymywać powiadomienia, śledzić dzienne/tygodniowe/miesięczne zużycie lub dodać automatyzację w oparciu o poziom zbiornika, musisz skonfigurować Asystenta Domowego.

Możesz skorzystać z naszego poprzedniego przewodnika, aby zainstaluj Home Assistant na Raspberry Pi lub stary laptop. Jeśli nie chcesz instalować ani konfigurować Home Assistant, możesz sflashować oprogramowanie Tasmota i użyć go do sprawdzenia poziomu wody. Chociaż nie jest tak intuicyjny jak Home Assistant, wykonuje swoją pracę i raportuje surową wartość za pośrednictwem strony internetowej.

Krok 2: Zmierz głębokość zbiornika

Musisz zmierzyć głębokość zbiornika. Możesz to zrobić mierząc wysokość zbiornika od zewnątrz lub wewnątrz za pomocą taśmy mierniczej.

Po wykonaniu pomiaru zmierz odległość między pokrywą zbiornika, w której zostanie zainstalowany czujnik ultradźwiękowy, a brzegiem zbiornika na wodę. Jest to odległość, którą należy odjąć od całkowitej głębokości.

Na przykład, jeśli wysokość zbiornika wynosi 120 cm, a odległość między czujnikiem na pokrywie a brzegiem wody wynosi 10 cm, to głębokość wynosi 120 - 10 = 110 cm.

Krok 2: Skompiluj oprogramowanie układowe

Aby skompilować oprogramowanie, otwórz Home Assistant i zainstaluj ESPHome dodatek, jeśli jeszcze tego nie zrobiłeś. Następnie wykonaj następujące kroki:

  1. Kliknij +Nowe urządzenie przycisk a następnie kliknij Kontyntynuj.
  2. Wprowadź nazwę pliku oprogramowania układowego, na przykład czujnik poziomu wody, i kliknij Następny.
  3. Wybierz posiadany MCU, taki jak NodeMCU, ESP32 lub D1 Mini, i kliknij Następny. Następnie kliknij Pomijać.

Teraz znajdź czujnik poziomu wody projekt i kliknij Edytować. To otwiera waterlevelsensor.yamlplik. W pliku skopiuj i wklej ten kod YAML. W kodzie edytuj następujące elementy:

  • Wprowadź swój identyfikator SSID Wi-Fi i hasło.
  • Edytuj wartości we wzorach poniżej filtry z odległością między czujnikiem a brzegiem wody i pełną wysokością zbiornika.
  • Kliknij Zapisać.
  • Podłącz NodeMCU, ESP32 lub D1 mini do komputera za pomocą kabla micro USB, a następnie kliknij Zainstalować.
  • Wybierz Podłącz do tego komputera opcja. Rozpocznie się kompilacja kodu YAML i wygeneruje plik oprogramowania układowego (waterlevelsensor.bin). To może chwilę potrwać.
  • Po skompilowaniu oprogramowania kliknij Pobierz projekt pobrać waterlevelsensor.bin plik.

Krok 3: Zaktualizuj oprogramowanie układowe na NodeMCU

Aby sflashować oprogramowanie waterlevelsensor.bin, możesz pobrać ESPHome-Flasher lub skorzystaj z sieci ESPHome. Kroki są następujące:

Po pobraniu oprogramowania, kliknij Otwórz ESPHome Web.

Kliknij Połączyć a następnie wybierz port szeregowy USB COM, do którego podłączony jest NodeMCU, D1 Mini lub ESP32.

Kliknij Zainstalować. Kliknij Wybierz plik, przejdź do waterlevelsensor.bin plik oprogramowania układowego i kliknij zainstalować. Po zaktualizowaniu oprogramowania sprzętowego odłącz kabel USB.

Krok 4: Podłącz czujnik ultradźwiękowy do NodeMCU

Zapoznaj się z poniższym schematem, aby połączyć czujnik ultradźwiękowy SR04 z płytą MCU.

NodeMCU/ESP32/D1 Mini Czujnik ultradźwiękowy SR04
3V3 Vcc
D5 Wymuskany
D6 Echo
GND GND

Jeśli używasz wodoodpornego modułu ultradźwiękowego JSN SR04 M-2, podłącz styki w sposób pokazany na schemacie.

NodeMCU/ESP32/D1 Mini Czujnik ultradźwiękowy JSN-SR04
Vin 5V
D5 Wymuskany
D6 Echo
GND GND

Po podłączeniu czujnika ultradźwiękowego do MCU ponownie podłącz kabel USB. Urządzenie automatycznie połączy się z siecią Wi-Fi w oparciu o dane wprowadzone w kodzie i zostanie wyświetlone jako online w Panel główny ESP.

Kliknij Dzienniki pod czujnik poziomu wody. Spowoduje to wyświetlenie dzienników i danych otrzymanych przez czujnik.

Jeśli dzienniki wyświetlają informacje, jak pokazano na zrzucie ekranu, możesz przejść dalej i skonfigurować czujnik w Home Assistant.

Jeśli zobaczysz komunikat „Upłynął limit czasu pomiaru odległości”, wykonaj następujące czynności:

  • Sprawdź, czy prawidłowo połączyłeś piny czujnika ultradźwiękowego z MCU.
  • Moduł JSN SR04 M-2 może mierzyć 20-400cm. Dlatego trzymaj obiekt w odległości co najmniej 20 cm. Musisz również odpowiednio wprowadzić zmiany w kodzie.
  • Zastosowany przez nas czujnik ultradźwiękowy może nie mierzyć odległości powyżej 400 cm. Jeśli twój zbiornik jest głębszy niż 400 cm (niezwykłe), może to nie zadziałać.

Krok 5: Dodaj inteligentny czujnik poziomu wody do Home Assistant

Aby dodać ultradźwiękowy czujnik poziomu wody do Home Assistant w celu monitorowania, wykonaj następujące kroki:

  1. W Asystencie domowym przejdź do Konfiguracja > Urządzenia i usługi.
  2. ten czujnik poziomu wody powinny być automatycznie wykrywane i umieszczane na liście. Jeśli nie, kliknij Dodaj integrację.
  3. Wyszukaj i wybierz ESPHome.
  4. Wprowadź adres IP urządzenia czujnik poziomu wody. Możesz to znaleźć w dziennikach lub routerze Wi-Fi. Po wprowadzeniu adresu IP kliknij Składać.
  5. Wybierz obszar i kliknij Skończyć.
  6. CCzujnik zostanie wyświetlony w ESPHome. Kliknij czujnik poziomu wody i wybierz podmiot.
  7. Kliknij Dodaj do Lovelace.
  8. Wybierz pokój i kliknij Następny.
  9. To doda czujnik poziomu wody do deski rozdzielczej.

Możesz dodatkowo dostosować domyślną kartę, dodając następujące elementy w edytorze kodu:

typ: miernik
Nazwa: czujnik poziomu wody
jednostka: '%'
podmiot: sensor.waterlevelsensor
zielony: 0
żółty: 45
czerwony: 85

Krok 6: Zainstaluj czujnik na pokrywie zbiornika na wodę

Możesz teraz zainstalować czujnik w swoim zbiorniku na wodę. Do projektu wykorzystaliśmy czujnik SR04, który nie jest wodoodporny. Aby była wodoodporna, użyliśmy przezroczystej obudowy i wystarczającej ilości lakieru do paznokci, aby zaizolować elementy elektryczne na płycie.

Wywierciliśmy dwa małe otwory i użyliśmy metalowego drutu, aby przymocować moduł SR04 do pokrywy. Wykonano kolejny większy otwór na przewody podłączone do czujnika ultradźwiękowego. Użyliśmy długiego 4-żyłowego przewodu do połączenia czujnika ultradźwiękowego z NodeMCU, ponieważ zbiornik znajduje się na dachu, a temperatura tutaj może wzrosnąć do 40-45°C.

Możesz zachować oba w jednym przypadku i zasilać NodeMCU. Upewnij się również, że moc sygnału Wi-Fi jest dobra podczas instalacji NodeMCU lub czujnika. Przeczytaj nasz przewodnik na jak wzmocnić sygnał Wi-Fi, aby zwiększyć zasięg Wi-Fi.

Kontroluj pompę wodną, ​​aby utrzymać pełny zbiornik

Integrując inteligentny czujnik poziomu wody z Home Assistant, możesz dodać automatyzację, aby otrzymywać alerty na smartfonie lub za pośrednictwem Alexa/Google Assistant, gdy poziom w zbiorniku jest niski lub pełny. Podobnie możesz dodać automatyzację, aby włączyć pompę wody, aby napełnić zbiornik, gdy jest niski, i wyłączyć ją automatycznie, gdy poziom zbiornika osiągnie określony poziom, na przykład 90-100%.

Ponadto możesz dodać wodoodporną sondę czujnika temperatury, taką jak DS18B20, do inteligentnego czujnika poziomu wody, aby sprawdzić i monitorować temperaturę wody w zbiorniku.

Jak zbudować domowy monitor energii dla domu za pomocą ESP8266?

Czytaj dalej

DzielićĆwierkaćDzielićE-mail

Powiązane tematy

  • majsterkowanie
  • Inteligentny czujnik
  • Elektronika
  • Samouczki dotyczące projektów DIY

O autorze

Ravi Singh (5 opublikowanych artykułów)

Ravi jest ekspertem w dziedzinie technologii, entuzjastą IoT i miłośnikiem Linuksa z doświadczeniem w tworzeniu dużych zbiorów danych i tworzeniu aplikacji. Większość weekendów spędza pracując z urządzeniami IoT i grając w gry na Xboksie. Jest także samotnym podróżnikiem, który uwielbia wędrówki i odkrywanie nowych szlaków.

Więcej od Raviego Singha

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować