Lettura del contatore dell'acqua di casa con ESPHome e Home Assistant

Volevo scrivere questo post, Era da tempo che cercavo una buona soluzione, Stabile e affidabile… E naturalmente, ESPHome ha la risposta. In questo post vedremo come leggere il consumo d'acqua di un normale contatore dell'acqua, Andiamo, Quello che abbiamo in casa; e visualizzalo con Home Assistant.

Per anni questo argomento mi ha incuriosito, Conosci i consumi, in questo caso dell'acqua di casa, il consumo e l'uso che facciamo dell'acqua nelle nostre case. Avevo utilizzato soluzioni con una fotocamera e il riconoscimento del testo OCR, ma… Non era una soluzione valida, Aveva i suoi punti deboli e mancava più di un fucile da fiera. Dopo qualche mese di utilizzo posso assicurarvi che il modo più affidabile è con un sensore di prossimità induttivo e un ESP8266 o ESP32.

Per cosa? Beh, per qualsiasi motivo tu abbia, per conoscere i consumi, Cerca di risparmiare, Rileva le perdite, Perché puoi…

Bene, totale, che alla fine si scopre che abbiamo un modo molto semplice di leggere la lettura di un contatore, Possiamo farlo utilizzando un sensore di prossimità, in particolare con l'NPN LJ18A3-8Z/BX (per poco più di 10 €). Contatori d'acqua, Di solito hanno una piccola ruota della roulette, Questa ruota della roulette gira e ha un piccolo magnete che possiamo rilevare ad ogni giro. Ad ogni angolo, Ogni impulso è uguale a 1 litro.

Così, collegheremo il sensore di prossimità LJ18A3-8Z/BX alla nostra scheda con l'ESP, che si tratti di ESP8266 o ESP32, E poi incolleremo il sensore a detto spinner del contatore dell'acqua. Ovviamente, Prima di colpire qualsiasi cosa, Lo testeremo in anticipo con un magnete che abbiamo in frigo 😉 Il cablaggio è molto semplice e sarebbe simile a questo, cavo marrone a VIM, blu su GND e nero su un GPIO di dati, Il mio caso è D21.

Se non l'abbiamo già fatto, sulla nostra scheda installeremo il firmware ESPHome per poterlo integrare facilmente in Home Assistant. Il modo più semplice per installare ESPHome è dall'Home Assistant stesso, Aggiunta di un nuovo dispositivo (se necessario faremo un post di questo How To). E una volta creato il dispositivo, aggiungiamo la seguente configurazione alla scheda:

sensore:
  - Piattaforma: pulse_counter spilla: 21
    update_interval : 6Nome S: "Impulso d'acqua"
    Id: pulso_agua

  - Piattaforma: pulse_meter spillo: 21
    Nome: "Misuratore di pulsazioni d'acqua"
    unit_of_measurement: "litri/min"
    icona: "Mdi:Acqua"
    totale:
      Nome: "Acqua totale"
      unit_of_measurement: "Litri"

  - Piattaforma: Nome modello: "Flusso d'acqua"
    Id: flujo_agua accuracy_decimals: 1
    unit_of_measurement: "l/min"
    icona: "Mdi:Acqua"
    lambda: Ritorno (Id(pulso_agua).stato * 10);
    update_interval: 6s

Con questo saremo in grado di conoscere il 'Battito dell'acqua', l'"Acqua Totale"’ e il "Flusso d'acqua". Ti ci vorrà molto tempo 2 minuti per aggiungere schede in Home Assistant, Vi lascio i loro codici nel caso in cui vi siano di qualche utilità:

digitare: Costume:Intestazione della scheda Apexcharts:
  mostrare: Vero titolo: Consumo di acqua - Last minute show_states: serie false:
  - entità: sensor.total_agua nome: Tipo di lusso: Opacità area: 0.7
    colore: Blu group_by:
      Durata: 1Funziona per me: Media graph_span: 1h update_interval: 5Minuti

E poi su Home Assistant, se vogliamo memorizzare i dati per le statistiche e conoscere il consumo orario di acqua, al giorno, mensile o annuale, dovremmo creare i seguenti contatori di utilità direttamente nel file di configurazione di Home Assistant (configurazione.yaml):

utility_meter:
  consumo_agua_horario:
    Nome: "Consumo di acqua - Orario"
    Fonte: sensor.total_agua ciclo: consumo_agua_diario oraria:
    Nome: "Consumo di acqua - Quotidiano"
    Fonte: sensor.total_agua ciclo: consumo_agua_mensual giornaliero:
    Nome: "Consumo di acqua - Mensile"
    Fonte: sensor.total_agua ciclo: consumo_agua_anual mensile:
    Nome: "Consumo di acqua - Annuale"
    Fonte: sensor.total_agua ciclo: annuale

E le schede per visualizzare questi dati, Vi lascio con un esempio:

digitare: Costume:Intestazione della scheda Apexcharts:
  mostrare: Vero titolo: Consumo di acqua - Il mese scorso show_states: serie false:
  - entità: sensor.consumo_agua_diario nome: Tipo di litri: Opacità della colonna: 0.7
    colore: Blu group_by:
      Durata: 1d func: Max graph_span: 30d update_interval: 5Min

Spero che ti sia utile, Da qui alla fine dell'anno ho intenzione di pubblicare altri post che prendono le letture non solo dal contatore dell'acqua di casa, altrimenti, dei costi dell'energia elettrica, del gas… Come al solito, Ti auguro un grande successo! Abbracci,

Post consigliati

Autore

nheobug@bujarra.com
Autor del blog Bujarra.com Cualquier necesidad que tengas, Non esitate a contattarmi, Cercherò di aiutarti ogni volta che potrò, Condividere è vivere ;) . Goditi i documenti!!!