Sebbene siano disponibili diversi indicatori di livello dell'acqua e dispositivi per monitorare il livello in un serbatoio dell'acqua sopraelevato, questi dispositivi spesso hanno un prezzo elevato e con funzionalità limitate. Inoltre, per funzionare, richiedono elettrodi a immersione o un interruttore nell'acqua; questo può contaminare l'acqua e corrodersi nel tempo.
E se potessi costruire un sensore di livello dell'acqua basato su Wi-Fi wireless e contactless che segnala l'acqua rimanente nel tuo serbatoio direttamente sul tuo smartphone? In questa guida fai-da-te, costruiremo un tale indicatore del livello dell'acqua utilizzando una scheda NodeMCU e un ultrasuoni sensore che si trova nella parte superiore del coperchio del serbatoio dell'acqua e segnala i dati al tuo smartphone tramite Home Assistente.
Come funziona?
Un sensore di livello dell'acqua ad ultrasuoni funziona inviando onde sonore a una frequenza specifica (nota anche come onde ultrasoniche) e ricevendo l'onda riflessa dall'oggetto mirato. Il sensore calcola e segnala la distanza tra il sensore e l'oggetto in base al tempo impiegato dall'onda sonora o dall'onda ultrasonica per viaggiare e riflettere.
Il sensore a ultrasuoni riporta il valore della distanza in centimetri (cm) per impostazione predefinita. Insieme alla profondità del serbatoio, questo valore riportato dal sensore a ultrasuoni può essere utilizzato per trovare il acqua residua nel serbatoio calcolando la distanza tra il livello dell'acqua del serbatoio e l'ultrasuono sensore.
Cose di cui avrai bisogno
Per costruire questo sensore di livello dell'acqua intelligente, è necessario quanto segue:
- Un MCU basato su ESP8266, come NodeMCU, D1 Mini, ESP01, ecc.
- Un sensore a ultrasuoni SR04
- Cavi di collegamento
Per questo progetto, si consiglia di utilizzare un sensore a ultrasuoni impermeabile JSN-SR04 per prevenire danni al sensore dovuti all'umidità.
Passaggi per costruire un sensore di livello dell'acqua intelligente
È possibile seguire i passaggi seguenti per costruire un sensore di livello dell'acqua a ultrasuoni contactless intelligente basato su Wi-Fi per monitorare il consumo di acqua ed evitare di salire le scale o il serbatoio dell'acqua per controllarlo manualmente. È inoltre possibile utilizzare questo sensore per monitorare il livello di un serbatoio del sale.
Passaggio 1: installa e configura Home Assistant
Home Assistant (HA) è preferito ma non necessario per costruire un sensore o controller del livello dell'acqua basato su Wi-Fi intelligente. Tuttavia, se desideri ricevere notifiche, monitorare il consumo giornaliero/settimanale/mensile o aggiungere l'automazione in base al livello del serbatoio, devi configurare Home Assistant.
Puoi seguire la nostra precedente guida a installa Home Assistant su Raspberry Pi o un vecchio laptop. Se non desideri installare o configurare Home Assistant, puoi eseguire il flashing del firmware Tasmota e utilizzarlo per controllare il livello dell'acqua. Sebbene non sia intuitivo come Home Assistant, fa il lavoro e segnala il valore grezzo tramite una pagina web.
Passaggio 2: misurare la profondità del serbatoio
Devi misurare la profondità del serbatoio. Puoi farlo misurando l'altezza del serbatoio dall'esterno o dall'interno usando un metro a nastro.
Una volta ottenuta la misurazione, misurare la distanza tra il coperchio del serbatoio in cui verrà installato il sensore a ultrasuoni e il bordo del serbatoio dell'acqua. Questa è la distanza che devi sottrarre dalla profondità totale.
Ad esempio, se l'altezza del serbatoio è di 120 cm e la distanza tra il sensore sul coperchio e il bordo dell'acqua è di 10 cm, la profondità è 120 - 10 = 110 cm.
Passaggio 2: compilare il firmware
Per compilare il firmware, apri Home Assistant e installa il file ESPHome componente aggiuntivo se non l'hai già fatto. Quindi segui questi passaggi:
- Clicca il +Nuovo dispositivo pulsante e quindi fare clic Continua.
- Immettere il nome per il file del firmware, ad esempio sensore del livello dell'acqua, e fare clic Prossimo.
- Seleziona l'MCU che hai, come NodeMCU, ESP32 o D1 Mini, e fai clic Prossimo. Quindi fare clic Saltare.
Ora trova il sensore del livello dell'acqua progetto e fare clic Modificare. Questo apre il waterlevelsensor.yamlfile. Nel file, copia e incolla questo codice YAML. Nel codice, modifica quanto segue:
- Inserisci il tuo SSID Wi-Fi e la password.
- Modifica i valori nelle formule sotto filtri con la distanza tra sensore e bordo dell'acqua e l'altezza del serbatoio pieno.
- Clic Salva.
- Collega il tuo NodeMCU, ESP32 o D1 mini al PC utilizzando un cavo micro USB e quindi fai clic Installare.
- Scegli il Collegati a questo computer opzione. Questo avvierà la compilazione del codice YAML e genererà un file del firmware (waterlevelsensor.bin). Questo può richiedere del tempo.
- Dopo aver compilato il firmware, fare clic su Scarica Progetto per scaricare il waterlevelsensor.bin file.
Passaggio 3: eseguire il flashing del firmware su NodeMCU
Per eseguire il flashing del firmware waterlevelsensor.bin, è possibile scaricare il file ESPHome-Flasher strumento o utilizzare il web ESPHome. I passi sono come segue:
Dopo aver scaricato il firmware, fare clic su Apri ESPHome Web.
Clic Collegare e quindi seleziona la porta COM seriale USB a cui è collegato il tuo NodeMCU, D1 Mini o ESP32.
Clic Installare. Clic Scegli il file, vai a waterlevelsensor.bin file del firmware e fare clic Installare. Una volta eseguito il flashing del firmware, scollegare il cavo USB.
Passaggio 4: collegare il sensore a ultrasuoni con NodeMCU
Fare riferimento allo schema seguente per collegare il sensore a ultrasuoni SR04 con la scheda MCU.
NodeMCU/ESP32/D1 Mini | Sensore ad ultrasuoni SR04 |
3V3 | Vcc |
D5 | Trig |
D6 | Eco |
GND | GND |
Se si utilizza il modulo ultrasonico impermeabile JSN SR04 M-2, collegare i pin come mostrato nel diagramma.
NodeMCU/ESP32/D1 Mini | Sensore a ultrasuoni JSN-SR04 |
Vin | 5V |
D5 | Trig |
D6 | Eco |
GND | GND |
Una volta collegato il sensore a ultrasuoni all'MCU, ricollegare il cavo USB. Il dispositivo si connetterà automaticamente alla rete Wi-Fi in base ai dettagli inseriti nel codice e verrà visualizzato come in linea nel Cruscotto ESPHome.
Clic Registri sotto il sensore del livello dell'acqua. Questo visualizzerà i registri e i dati ricevuti dal sensore.
Se i registri mostrano le informazioni come mostrato nello screenshot, puoi andare avanti e configurare il sensore in Home Assistant.
Se vedi "Misurazione della distanza scaduta", procedi come segue:
- Verificare di aver collegato correttamente i pin del sensore a ultrasuoni con l'MCU.
- Il modulo JSN SR04 M-2 può misurare 20-400 cm. Quindi, mantieni l'oggetto ad almeno 20 cm di distanza. È inoltre necessario apportare modifiche al codice di conseguenza.
- Il sensore a ultrasuoni che abbiamo utilizzato potrebbe non riuscire a misurare la distanza oltre i 400 cm. Se il tuo serbatoio è più profondo di 400 cm (insolito), questo potrebbe non funzionare per te.
Passaggio 5: aggiungi il sensore del livello dell'acqua intelligente all'assistente domestico
Per aggiungere il sensore del livello dell'acqua a ultrasuoni a Home Assistant per il monitoraggio, attenersi alla seguente procedura:
- In Home Assistant, vai a Configurazione > Dispositivi e servizi.
- Il sensore del livello dell'acqua dovrebbe essere rilevato ed elencato automaticamente. In caso contrario, fare clic Aggiungi integrazione.
- Cerca e seleziona ESPHome.
- Immettere l'indirizzo IP del sensore del livello dell'acqua. Puoi trovarlo dai registri o dal tuo router Wi-Fi. Dopo aver inserito l'indirizzo IP, fare clic su Invia.
- Seleziona un'area e clicca Fine.
- CIl sensore verrà elencato in ESPHome. Clic sensore del livello dell'acqua e selezionare l'entità.
- Clic Aggiungi a Lovelace.
- Scegli una stanza e clicca Prossimo.
- Questo aggiungerà il sensore del livello dell'acqua al cruscotto.
Puoi personalizzare ulteriormente la carta predefinita aggiungendo quanto segue nell'editor di codice:
tipo: calibro
nome: Sensore del livello dell'acqua
unità: '%'
entità: sensor.waterlevelsensor
verde: 0
giallo: 45
rosso: 85
Passaggio 6: installare il sensore sul coperchio del serbatoio dell'acqua
È ora possibile installare il sensore nel serbatoio dell'acqua. Per il progetto abbiamo utilizzato il sensore SR04, che non è impermeabile. Per renderlo impermeabile, abbiamo utilizzato una custodia trasparente e smalto sufficiente per isolare i componenti elettrici sulla scheda.
Abbiamo praticato due piccoli fori e utilizzato un filo metallico per mantenere il modulo SR04 attaccato al coperchio. Un altro foro più grande è stato realizzato per i fili collegati al sensore ad ultrasuoni. Abbiamo utilizzato un lungo cavo a 4 fili per interfacciare il sensore a ultrasuoni con il NodeMCU poiché il serbatoio si trova sul tetto e la temperatura qui può salire fino a 40-45°C.
Puoi tenerli entrambi in un caso e fornire alimentazione al NodeMCU. Inoltre, assicurati una buona potenza del segnale Wi-Fi quando installi il NodeMCU o il sensore. Leggi la nostra guida su come aumentare il segnale Wi-Fi per estendere la portata del Wi-Fi.
Controlla la pompa dell'acqua per mantenere il serbatoio pieno
Integrando il sensore di livello dell'acqua intelligente con Home Assistant, puoi aggiungere l'automazione per ricevere avvisi sul tuo smartphone o tramite Alexa/Google Assistant quando il livello del serbatoio è basso o pieno. Allo stesso modo, puoi aggiungere l'automazione per accendere la pompa dell'acqua per riempire il serbatoio quando sta per esaurirsi e spegnerlo automaticamente quando il livello del serbatoio raggiunge un certo livello, ad esempio 90-100%.
Inoltre, puoi aggiungere una sonda sensore di temperatura impermeabile, come un DS18B20, al tuo sensore di livello dell'acqua intelligente per controllare e monitorare la temperatura dell'acqua nel serbatoio.
Come costruire un monitor energetico domestico fai-da-te utilizzando ESP8266
Leggi Avanti
Argomenti correlati
- Fai da te
- Sensore intelligente
- Elettronica
- Tutorial per progetti fai-da-te
Circa l'autore
Ravi è un esperto spiegatore di tecnologia, un appassionato di IoT e un amante di Linux con un background in big data e sviluppo di app. Trascorre la maggior parte dei fine settimana lavorando con i dispositivi IoT e giocando su Xbox. È anche un viaggiatore solista che ama le escursioni e l'esplorazione di nuovi sentieri.
Iscriviti alla nostra Newsletter
Iscriviti alla nostra newsletter per suggerimenti tecnici, recensioni, ebook gratuiti e offerte esclusive!
Clicca qui per iscriverti