Čeprav je na voljo več indikatorjev nivoja vode in naprav za spremljanje nivoja v nadzemnem rezervoarju za vodo, imajo te naprave pogosto visoko ceno in omejeno funkcionalnost. Poleg tega za delovanje potrebujejo potapljanje elektrod ali stikalo v vodo; to lahko kontaminira vodo in sčasoma korodira.
Kaj pa, če bi lahko zgradili brezžični in brezkontaktni senzor nivoja vode na osnovi Wi-Fi, ki poroča o preostalo vodo v rezervoarju neposredno na pametnem telefonu? V tem priročniku DIY bomo zgradili tak indikator nivoja vode z uporabo plošče NodeMCU in ultrazvočnega senzor, ki se nahaja na vrhu pokrova rezervoarja za vodo in sporoča podatke vašemu pametnemu telefonu prek doma pomočnik.
Kako deluje?
Ultrazvočni senzor nivoja vode deluje tako, da pošilja zvočne valove na določeni frekvenci (znane tudi kot ultrazvočni valovi) in sprejema odbit val od ciljnega predmeta. Senzor izračuna in sporoči razdaljo med senzorjem in predmetom glede na čas, v katerem zvočni ali ultrazvočni val potuje in se odbije.
Ultrazvočni senzor privzeto poroča o vrednosti razdalje v centimetrih (cm). Skupaj z globino rezervoarja se lahko ta vrednost, ki jo sporoči ultrazvočni senzor, uporabi za iskanje preostalo vodo v rezervoarju z izračunom razdalje med nivojem vode v rezervoarju in ultrazvokom senzor.
Stvari, ki jih boste potrebovali
Za izdelavo tega pametnega senzorja nivoja vode potrebujete naslednje:
- MCU, ki temelji na ESP8266, kot je NodeMCU, D1 Mini, ESP01 itd.
- Ultrazvočni senzor SR04
- Premične žice
Za ta projekt je priporočljivo, da uporabite vodoodporni ultrazvočni senzor JSN-SR04, da preprečite poškodbe senzorja zaradi vlage.
Koraki za izdelavo pametnega senzorja nivoja vode
Sledite spodnjim korakom za izdelavo pametnega brezkontaktnega ultrazvočnega senzorja nivoja vode, ki temelji na Wi-Fi da spremljate porabo vode in se prihranite pred plezanjem po stopnicah ali rezervoarju za vodo, da jo preverite ročno. Ta senzor lahko uporabite tudi za spremljanje nivoja soli v rezervoarju.
1. korak: Namestite in nastavite Home Assistant
Home Assistant (HA) je prednosten, vendar ni potreben za izdelavo pametnega senzorja ali krmilnika nivoja vode, ki temelji na Wi-Fi. Če pa želite prejemati obvestila, spremljati dnevno/tedensko/mesečno porabo ali dodati avtomatizacijo glede na nivo rezervoarja, morate nastaviti Home Assistant.
Lahko sledite našemu prejšnjemu vodniku za namestite Home Assistant na Raspberry Pi ali star prenosnik. Če ne želite namestiti ali nastaviti Home Assistant, lahko vgradite vdelano programsko opremo Tasmota in jo uporabite za preverjanje nivoja vode. Čeprav ni tako intuitiven kot Home Assistant, opravi svoje delo in poroča o surovi vrednosti prek spletne strani.
2. korak: Izmerite globino rezervoarja
Izmeriti morate globino rezervoarja. To lahko storite tako, da z merilnim trakom izmerite višino rezervoarja od zunaj ali znotraj.
Ko opravite meritev, izmerite razdaljo med pokrovom rezervoarja, kjer bo nameščen ultrazvočni senzor, in robom rezervoarja za vodo. To je razdalja, ki jo morate odšteti od celotne globine.
Na primer, če je višina rezervoarja 120 cm in je razdalja med senzorjem na pokrovu in robom vode 10 cm, potem je globina 120 - 10 = 110 cm.
2. korak: prevedite vdelano programsko opremo
Za prevajanje vdelane programske opreme odprite Home Assistant in namestite ESPHome dodatek, če ga še niste. Nato sledite tem korakom:
- Kliknite na +Nova naprava gumb in nato kliknite Nadaljuj.
- Vnesite ime datoteke vdelane programske opreme, npr senzor nivoja vode, in kliknite Naslednji.
- Izberite MCU, ki ga imate, na primer NodeMCU, ESP32 ali D1 Mini, in kliknite Naslednji. Nato kliknite Preskoči.
Zdaj poiščite senzor nivoja vode projekt in kliknite Uredi. S tem se odpre waterlevelsensor.yamlmapa. V datoteko kopirajte in prilepite to kodo YAML. V kodi uredite naslednje:
- Vnesite svoj Wi-Fi SSID in geslo.
- Uredite vrednosti v formulah pod filtri z razdaljo med senzorjem in vodnim robom ter celotno višino rezervoarja.
- Kliknite Shrani.
- Povežite NodeMCU, ESP32 ali D1 mini na računalnik s kablom mikro USB in kliknite Namestite.
- Izberite Priključite v ta računalnik možnost. To bo začelo prevajati kodo YAML in ustvariti datoteko vdelane programske opreme (waterlevelsensor.bin). To lahko traja nekaj časa.
- Ko je vdelana programska oprema prevedena, kliknite Prenesite projekt da prenesete waterlevelsensor.bin mapa.
3. korak: Prenesite vdelano programsko opremo na NodeMCU
Če želite prenesti vdelano programsko opremo waterlevelsensor.bin, lahko prenesete datoteko ESPHome-Flasher orodje ali uporabite splet ESPhome. Koraki so naslednji:
Po prenosu vdelane programske opreme kliknite Odprite ESPhome Web.
Kliknite Povežite se in nato izberite serijska vrata USB COM, kjer je priključen vaš NodeMCU, D1 Mini ali ESP32.
Kliknite Namestite. Kliknite Izberite datoteko, poiščite na waterlevelsensor.bin datoteko vdelane programske opreme in kliknite Namestite. Ko se vdelana programska oprema utripa, odklopite kabel USB.
4. korak: Povežite ultrazvočni senzor z NodeMCU
Za povezavo ultrazvočnega senzorja SR04 s ploščo MCU glejte spodnji diagram.
NodeMCU/ESP32/D1 Mini | Ultrazvočni senzor SR04 |
3V3 | Vcc |
D5 | Trig |
D6 | Odmev |
GND | GND |
Če uporabljate vodotesen ultrazvočni modul JSN SR04 M-2, povežite nožice, kot je prikazano na diagramu.
NodeMCU/ESP32/D1 Mini | JSN-SR04 ultrazvočni senzor |
Vin | 5V |
D5 | Trig |
D6 | Odmev |
GND | GND |
Ko je ultrazvočni senzor priključen na MCU, ponovno priključite kabel USB. Naprava se bo samodejno povezala z omrežjem Wi-Fi na podlagi podrobnosti, ki ste jih vnesli v kodo, in bo prikazana kot Na spletu v Nadzorna plošča ESPhome.
Kliknite Dnevniki pod senzor nivoja vode. To bo prikazalo dnevnike in podatke, ki jih je prejel senzor.
Če dnevniki prikazujejo informacije, kot je prikazano na posnetku zaslona, lahko nadaljujete in konfigurirate senzor v Home Assistant.
Če vidite »Časovna omejitev merjenja razdalje je potekla«, naredite naslednje:
- Preverite, ali ste pravilno povezali zatiče ultrazvočnega senzorja z MCU.
- JSN SR04 M-2 modul lahko meri 20-400 cm. Zato naj bo predmet oddaljen vsaj 20 cm. Prav tako morate ustrezno spremeniti kodo.
- Ultrazvočni senzor, ki smo ga uporabili, morda ne bo izmeril razdalje več kot 400 cm. Če je vaš rezervoar globlji od 400 cm (nenavadno), vam to morda ne bo delovalo.
korak: Dodajte pametni senzor nivoja vode v Home Assistant
Če želite dodati ultrazvočni senzor nivoja vode v Home Assistant za spremljanje, sledite tem korakom:
- V Pomočniku za dom pojdite na Konfiguracija > Naprave in storitve.
- The senzor nivoja vode je treba samodejno odkriti in navesti. Če ne, kliknite Dodajte integracijo.
- Poiščite in izberite ESPHome.
- Vnesite naslov IP za senzor nivoja vode. To lahko najdete v dnevnikih ali v usmerjevalniku Wi-Fi. Po vnosu IP naslova kliknite Pošlji.
- Izberite območje in kliknite Končaj.
- C Senzor bo naveden pod ESPHome. Kliknite senzor nivoja vode in izberite entiteto.
- Kliknite Dodaj v Lovelace.
- Izberite sobo in kliknite Naslednji.
- To bo dodalo senzor nivoja vode na armaturno ploščo.
Privzeto kartico lahko dodatno prilagodite tako, da v urejevalnik kode dodate naslednje:
vrsta: merilnik
ime: senzor nivoja vode
enota: '%'
entiteta: senzor.waterlevelsensor
zelena: 0
rumena: 45
rdeče: 85
6. korak: Namestite senzor na pokrov rezervoarja za vodo
Senzor lahko zdaj namestite v rezervoar za vodo. Za projekt smo uporabili senzor SR04, ki ni vodoodporen. Da bi bila vodoodporna, smo uporabili prozorno ohišje in dovolj laka za nohte, da smo izolirali električne komponente na plošči.
Izvrtali smo dve majhni luknji in uporabili kovinsko žico, da je modul SR04 pritrjen na pokrov. Za žice, povezane z ultrazvočnim senzorjem, je bila narejena še ena večja luknja. Za povezavo ultrazvočnega senzorja z NodeMCU smo uporabili dolgo 4-žilno žico, saj se rezervoar nahaja na strehi in temperatura se tukaj lahko dvigne na 40-45°C.
Oboje lahko hranite v enem ohišju in napajate NodeMCU. Prav tako zagotovite dobro moč signala Wi-Fi, ko nameščate NodeMCU ali senzor. Preberite naš vodnik naprej kako povečati svoj signal Wi-Fi za razširitev dosega Wi-Fi.
Nadzorujte vodno črpalko, da ohranite rezervoar poln
Z integracijo pametnega senzorja nivoja vode z Home Assistantom lahko dodate avtomatizacijo za prejemanje opozoril na pametnem telefonu ali prek Alexa/Google Assistant, ko je nivo rezervoarja nizek ali poln. Podobno lahko dodate avtomatizacijo, da vklopite vodno črpalko, da napolni rezervoar, ko se zmanjka, in jo samodejno izklopite, ko nivo rezervoarja doseže določeno raven, na primer 90-100%.
Poleg tega lahko svojemu pametnemu senzorju nivoja vode dodate vodotesno sondo temperaturnega senzorja, kot je DS18B20, da preverite in spremljate temperaturo vode v rezervoarju.
Kako narediti DIY gospodinjski energetski monitor z uporabo ESP8266
Preberite Naprej
Povezane teme
- DIY
- Pametni senzor
- Elektronika
- Vadnice za projekte DIY
O avtorju

Ravi je strokovni tehnični razlagalec, navdušenec za internet stvari in ljubitelj Linuxa z izkušnjami na področju velikih podatkov in razvoja aplikacij. Večino svojih vikendov preživi v delu z napravami IoT in igranju iger na Xboxu. Je tudi solo popotnik, ki obožuje pohodništvo in raziskovanje novih poti.
Naročite se na naše novice
Pridružite se našemu glasilu za tehnične nasvete, ocene, brezplačne e-knjige in ekskluzivne ponudbe!
Kliknite tukaj, da se naročite