Sommario:

Monitoraggio della temperatura della piscina MQTT: 7 passaggi (con immagini)
Monitoraggio della temperatura della piscina MQTT: 7 passaggi (con immagini)

Video: Monitoraggio della temperatura della piscina MQTT: 7 passaggi (con immagini)

Video: Monitoraggio della temperatura della piscina MQTT: 7 passaggi (con immagini)
Video: Interfaccia grafica mobile per Home Assistant con MUSHROOM 2024, Dicembre
Anonim
Monitoraggio della temperatura della piscina MQTT
Monitoraggio della temperatura della piscina MQTT

Progetti Tinkercad »

Questo progetto è un compagno dei miei altri progetti di automazione domestica Smart Data-Logging Geyser Controller e Multi-purpose-Room-Lighting and Appliance Controller.

È un monitor montato a lato della piscina che misura la temperatura dell'acqua della piscina, la temperatura dell'aria ambiente e la pressione barometrica. Quindi visualizza la temperatura dell'acqua della piscina su un grafico a barre a LED locale e trasmette tramite WiFi/MQTT a un sistema domestico, nel mio caso una versione compatibile con MQTT aggiornata del controller di illuminazione. anche se è facile integrarlo in qualsiasi sistema Home compatibile MQTT.

Questo Instructable si concentra sulla progettazione e costruzione del monitor della piscina, l'aggiornamento del controller (nuovo firmware e aggiunta di un display OLED) sarà incluso a breve nel controller originale.

Le caratteristiche principali includono:

  • L'assenza di rete elettrica a bordo piscina determina un'alimentazione a batteria 18650 con un pannello solare polare integrato da 1W per mantenere la carica della batteria, la durata della batteria è ulteriormente ottimizzata dall'utilizzo della modalità ESP8266 "Deep Sleep". Nel mio sistema, l'unità è stata in grado di eseguire la nostra "stagione attiva della piscina" (da novembre ad aprile) senza l'intervento manuale della ricarica manuale.
  • Un grafico a barre a 8 LED integrato opzionale che visualizza la temperatura della piscina a intervalli di 1 grado.
  • Trasmissione dati MQTT tramite connessione WiFi locale a qualsiasi sistema host compatibile.
  • Tutta la programmazione avviene tramite WiFi utilizzando il Monitor come Access Point e le pagine di configurazione del Web Server interno con tutti i parametri programmabili memorizzati nella EEPROM interna.

    • Intervalli di tempo tra la sveglia e le trasmissioni. Intervalli da 1 a 60 minuti.
    • Formati di messaggi/argomento MQTT configurabili

      • Argomenti individuali dei messaggi (ad es. PoolTemp, AirTemp, BaroPress)
      • Singolo argomento compatto (Es. Pool Temp + Air Temp + Barometrica)
      • Compatibile con il display OLED montato sull'illuminazione multiuso della stanza e sul controller per elettrodomestici (vedi la figura del titolo per esempio)
    • SSID e password della rete WiFi
    • SSID e password del punto di accesso
    • Controllo grafico a barre LED

      • Intervallo di temperatura minima programmabile (da 15 a 25'C)
      • Programmabile permanentemente ON, permanentemente OFF, acceso solo durante le ore diurne

Sebbene abbia stampato in 3D il mio involucro / disposizione di montaggio e utilizzato una scheda PCB di un progetto precedente, puoi letteralmente utilizzare ciò che si adatta alle tue preferenze personali poiché nulla è critico o "calcato nella pietra". L'ultima sezione di questo Instructable contiene i file Gerber e STL per le schede PCB e l'alloggiamento in ABS che ho progettato appositamente per questo progetto

Passaggio 1: diagramma a blocchi e discussione sulla scelta dei componenti

Diagramma a blocchi e discussione sulla scelta dei componenti
Diagramma a blocchi e discussione sulla scelta dei componenti
Diagramma a blocchi e discussione sulla scelta dei componenti
Diagramma a blocchi e discussione sulla scelta dei componenti

Lo schema a blocchi sopra evidenzia i principali moduli hardware del Pool Monitor.

Processore

L'ESP8266 utilizzato può essere uno qualsiasi dei moduli di base ESP03/07/12 fino ai moduli NodeMCU e WEMOS più perfboard.

Ho usato l'ESP-12, se la tua piscina è a una certa distanza dal tuo router WiFi potresti preferire l'ESP-07 con un'antenna esterna. I moduli NodeMCU/Wemos sono molto compatibili con la scheda, ma comporteranno un leggero aumento del consumo energetico grazie al regolatore di tensione aggiuntivo e ai LED a bordo - questo influirà sulla capacità del pannello solare di mantenere la batteria in carica quotidianamente e potrebbe essere necessario un periodico carica manuale utilizzando la porta USB sul modulo caricabatterie.

Sensori di temperatura - Fig. 2

Ho usato le versioni tubo + cavo in metallo facilmente disponibili ea basso costo dei sensori di temperatura DS18B20 che vengono forniti con circa 1 metro di cavo di collegamento poiché sono già robusti e resistenti alle intemperie. Uno utilizza l'intera lunghezza del cavo per la misurazione dell'acqua della piscina e un altro con un cavo accorciato per la temperatura dell'aria ambiente.

Sensore aria ambiente

Ho selezionato l'ottimo modulo BME280 per misurare l'umidità dell'aria ambiente e la pressione barometrica. Forse ti starai chiedendo perché non ho usato la funzione di misurazione della temperatura dell'aria di questo modulo.

Il motivo è semplice: se, come ho fatto nel prototipo originale, utilizzo questa funzione, si finisce per misurare la temperatura statica dell'aria ALL'INTERNO dell'alloggiamento che tende a essere alta a causa dell'autoriscaldamento interno dell'intercapedine dell'armadio da parte del sole esterno (è si legge perfettamente di notte!). Si è subito capito che il sensore della temperatura dell'aria doveva essere montato all'esterno dell'armadio ma all'ombra, lontano dalla luce solare diretta, quindi sono passato a un secondo DS18B20 e ho fornito un piccolo punto di montaggio sotto l'armadio. Il sensore di temperatura BME280 è ancora utilizzato come misura diagnostica per la temperatura interna e può essere monitorato nella pagina principale del server di configurazione.

Grafico a barre LED - Fig. 1

Le otto uscite LED locali ad alta intensità sono pilotate da un chip di espansione IO PCF8574 che a sua volta pilota ciascun LED da un transistor PNP 2N3906. Il PCF8574 indicherà un solo LED alla volta (per ridurre il consumo energetico) a seconda della temperatura dell'acqua della piscina misurata e rimarrà attivo anche quando ESP8266 è in modalità di sospensione. Pertanto, se abilitato, il bargraph LED sarà sempre attivo.

  • Se la temperatura misurata è inferiore alla temperatura minima assegnata al bargraph, ENTRAMBI i LED 1 e 2 si illumineranno.
  • Se la temperatura misurata è maggiore della temperatura minima assegnata al bargraph+8, ENTRAMBI i LED 7 e 8 si illumineranno.
  • Se il livello di luce misurato dall'uscita del pannello solare è inferiore alla soglia programmata nella configurazione impostata, le uscite LED verranno disabilitate per risparmiare la carica della batteria, in alternativa il bargraph può essere disabilitato permanentemente (soglia impostata a 0) o abilitato (soglia impostata a 100).
  • Se la tua build non richiede il grafico a barre, ometti semplicemente PCF8574, LED, transistor e resistori associati

Pannello solare, batteria e scheda di ricarica della batteria

L'alimentazione di base è semplicemente una batteria 18650 LIPO da 2000 mAH (o superiore) alimentata tramite un diodo 1N4001 per ridurre la tensione della batteria (batteria carica massima = 4,1 V e tensione massima ESP8266 = 3,6 V).

Le batterie di capacità inferiore funzioneranno, ma non ho la sensazione che la ricarica giornaliera tramite il pannello solare sarà adeguata.

Fai attenzione alle batterie etichettate con capacità maggiore (ad es. 6800 mAH) - molte sul mercato sono false. Funzioneranno, ma chiunque può indovinare la capacità e l'affidabilità.

Il pannello solare da 1W 5V è collegato agli ingressi di una scheda caricabatterie TP4056 LIPO e l'uscita di quest'ultimo alla batteria, quindi la batteria verrà caricata quando il livello di luce è sufficientemente alto da produrre una tensione di carica utilizzabile e anche la batteria può essere caricati manualmente tramite il connettore USB sulla scheda TP4056.

Se si intende utilizzare il design dell'alloggiamento stampato in 3D, è necessario utilizzare il pannello solare di dimensioni 110 mm x 80 mm. Sono disponibili altre dimensioni, quindi fai attenzione quando acquisti in quanto ciò potrebbe essere fondamentale quando selezioni il tipo/dimensione dell'alloggio.

Anche una parola di cautela sulle temperature. Può essere difficile stabilire il vero limite di temperatura massima di questi pannelli economici poiché spesso non è indicato: ho trovato 65'C max specificati su un dispositivo ma nulla sulla maggior parte dei fornitori in loco. Ora considera che il pannello in base al design è a) nero eb) starà alla luce del sole tutto il giorno ogni giorno - potresti trovare meglio lasciare un po' d'ombra sul pannello se fa troppo caldo. La mia unità non ha subito alcun guasto (installata all'inizio del 2019) ma la sua affidabilità dipenderà sicuramente dal clima locale e probabilmente dal luogo di montaggio.

Pulsanti - Fig. 3

Potresti pensare che un pulsante sia "solo un pulsante", ma quando si trova su un recinto che è fuori sotto il sole e la pioggia 24 ore su 24, 7 giorni su 7, allora devi prenderti cura delle sue specifiche. Elettricamente è un componente semplice ma l'integrità della tenuta del vostro alloggiamento dipende dalla loro qualità meccanica. Ho usato quello che è un pulsante unipolare impermeabile molto popolare da 12 mm disponibile da molti fornitori - questo si è dimostrato un interruttore molto robusto.

  • Il pulsante 1 viene utilizzato come pulsante di ripristino, utilizzato per forzare manualmente il monitor a eseguire una misurazione e trasmettere il risultato
  • Il pulsante 2, se premuto immediatamente dopo aver premuto e rilasciato il pulsante 1, indicherà al monitor di avviare il suo punto di accesso (AP) utilizzando l'SSID e la password con cui è stato precedentemente programmato. Se presente, ogni LED alternativo sul grafico a barre si accende brevemente per indicare che l'AP si sta avviando.
  • Entrambi i pulsanti vengono utilizzati anche nella procedura di compilazione iniziale per caricare il firmware nella memoria flash del processore.

Nota. L'alloggiamento stampato in 3D è progettato per questi interruttori da 12 mm come elencato nella distinta materiali e come tali sono montati sul lato dell'alloggiamento. Se stai usando il tuo alloggiamento, ti consiglio di inserirli sotto l'alloggiamento per proteggerli dall'esposizione agli agenti atmosferici.

Pulsante di attivazione/disattivazione - Fig. 2

Viene utilizzato per spegnere completamente il monitor quando non viene utilizzato e riposto. Si noti che la batteria e il pannello solare rimangono collegati tra loro (ma non l'elettronica) e quindi la batteria continuerà a essere caricata se il pannello è esposto alla luce esterna.

Allegato - Fig. 3

Questo rimane l'ultimo ma molto importante componente in quanto questo è il componente principale che fornisce protezione per tutte le altre parti. Il pannello solare, i pulsanti, l'interruttore a levetta, i LED e i sensori di temperatura richiedono tutti la perforazione o il taglio di fori nell'alloggiamento, quindi l'impermeabilità è gravemente compromessa se la sigillatura dopo il montaggio degli articoli non viene curata. Ho incollato il pannello solare alla copertura e poi sigillato all'interno con sigillante in silicone. La scheda LED è stata inserita all'interno per garantire che tutti i punti LED fossero sigillati all'interno. Ottieni l'immagine: previeni potenziali punti di ingresso. Dato che ho usato un modello ABS stampato in 3D, ho spruzzato l'interno dell'alloggiamento compreso il PCB principale con spray sigillante PCB (puoi anche usare solo la vernice) solo per precauzione! La Figura 1 mostra la copertura montata a lato della piscina. I file STL inclusi includono anche un semplice gruppo di montaggio che consente di assemblare la custodia al coperchio superiore dello stramazzo. Può essere montato ovunque si desideri, in base alla lunghezza del cavo del sensore di temperatura dell'acqua, all'esposizione alla luce solare e alla visibilità del grafico a barre a LED, se installato.

Passaggio 2: Distinta base

Distinta materiali
Distinta materiali

Ho incluso una "potenziale" distinta base basata sulla mia scelta dei componenti Come affermato in precedenza, in realtà hai molta flessibilità quando si tratta di quasi tutti gli elementi di costruzione. Ho tagliato e incollato alcuni articoli dal sito di shopping online di Amazon puramente a scopo illustrativo, non come raccomandazione di fornitura. La batteria 18650 può avere linguette a saldare diretta per i fili oppure è possibile acquistare un tipo "standard" e portabatteria (come ho fatto io) per facilità di montaggio

Avrai anche bisogno di colla (2 parti epossidiche consigliate), 4 dadi e bulloni M4.

A seconda della tua posizione, avrai fornitori potenzialmente più convenienti e/o più economici. In effetti, se non hai fretta per i componenti, AliExpress promette riduzioni significative su alcuni se non tutti gli articoli principali.

Passaggio 3: build elettronica e caricamento del firmware

Build elettronica e caricamento del firmware
Build elettronica e caricamento del firmware
Build elettronica e caricamento del firmware
Build elettronica e caricamento del firmware

Lo schema rivela un "ESP8266 standard" relativamente semplice senza "sorprese" che comprende solo il microcontrollore e una raccolta di dispositivi di input (2 x sensore di temperatura DS18B20, 1 x sensore ambientale BME280, 1 x PCF8574 IO expander, 2 x pulsanti e una combinazione batteria/carica/pannello solare.

ESP8266 Assegnazioni dei pin

  • GPIO0 - Pulsante Avvia AP
  • GPIO2 - Non utilizzato
  • GPIO4 - I2C - SCL
  • GPIO5 - I2C - SDA
  • GPIO12 - Dati DS18B20
  • GPIO13 - Test - Non utilizzato
  • GPIO14 - Non utilizzato
  • GPIO16 - Riattivazione del sonno profondo
  • ADC - Tensione pannello solare

Assegnazioni pin PCF8574

  • P0 - Bargraph LED 1 - Temperatura minima
  • P1 - Grafico a barre LED 2 - Temperatura minima + 1'C
  • P2 - Grafico a barre LED 3 - Temperatura minima + 2'C
  • P3 - Grafico a barre LED 4 - Temperatura minima + 3'C
  • P4 - Grafico a barre LED 5 - Temperatura minima + 4'C
  • P5 - Bargraph LED 6 - Temperatura minima + 5'C
  • P6 - Bargraph LED 7 - Temperatura minima + 6'C
  • P7 - Bargraph LED 8 - Temperatura minima + 7'C

Caricamento del firmware

Una copia del codice sorgente del firmware è inclusa nella sezione download. Il codice è stato scritto per l'IDE Arduino versione 1.8.13 con le seguenti aggiunte ….

  • ESP8266 Board Manager (versione 2.4.2)
  • Libreria OneWire
  • Libreria della temperatura di Dallas
  • Libreria EEPROM
  • Libreria Adafruit BMP085
  • Libreria PubSubClient
  • Libreria di fili

Assicurati di selezionare la velocità di trasmissione corretta sul monitor seriale (115200) e la scheda corretta in base alla versione del chip ESP8266 che stai utilizzando).

Se hai bisogno di ulteriori istruzioni su come configurare l'IDE Arduino, fai riferimento ai miei due precedenti istruttori, entrambi contengono istruzioni di configurazione dettagliate e inoltre sono disponibili una moltitudine di fonti r online. Se tutto il resto fallisce, inviami un messaggio.

Ho incluso nella costruzione un connettore per le linee della porta seriale (TxD, RxD e 0V) per il collegamento al tuo computer utilizzando un convertitore standard FTDI da USB a TTL e i due pulsanti ti danno la possibilità di alimentare l'ESP8266 nella programmazione flash modalità. (Applicare l'alimentazione con ENTRAMBI i pulsanti Reset e Start AP premuti, rilasciare il pulsante Reset mentre si tiene ancora premuto il pulsante Start AP, quindi rilasciare il pulsante Start AP)

Note aggiuntive

  1. Le connessioni dei pulsanti, l'alimentazione, i sensori di temperatura DS18B20 possono essere portati su pin standard da 0,1" per facili connessioni IO
  2. Il condensatore elettrolitico da 100 uF (C4) e il condensatore ceramico da 100 nF (C6) devono essere montati il più vicino possibile ai pin di alimentazione dell'ESP8266.
  3. Il condensatore ceramico da 100nF (C5) deve essere montato il più vicino possibile ai pin di alimentazione del PCF8574
  4. La Figura 10 illustra lo schema di cablaggio totale - È possibile costruire tutti i componenti su una scheda o dividerli in 2 schede con il PCF8574, 8 transistor 2N3906 (da Q1 a Q8), 16 x resistori (da R3 a 14, da R19 a 22), C5 su una "scheda bargraph LED) e il resto sulla "scheda controller" (questo è quello che ho fatto)

Passaggio 4: utilizzo dell'involucro stampato in 3D fornito

Utilizzo della custodia stampata in 3D fornita
Utilizzo della custodia stampata in 3D fornita
Utilizzo della custodia stampata in 3D fornita
Utilizzo della custodia stampata in 3D fornita

La scelta dell'alloggiamento è flessibile a seconda delle preferenze e delle esigenze di installazione. Ho stampato in 3D un alloggiamento in ABS per adattarlo alla mia installazione e includerlo per riprodurlo o usarlo come "ispirazione" per la tua costruzione. I file STL della sezione Download possono essere stampati con una risoluzione di 0,2 mm. Se non possiedi una stampante 3D né hai un amico con una, ci sono molte aziende di stampa 3D commerciali là fuori che dovrebbero essere in grado di fornirti un servizio conveniente.

I singoli articoli stampati sono:

  • A. Base dell'armadio
  • B. Copertura dell'involucro
  • C. Giunto a snodo
  • D. Adattatore per montaggio su snodo per custodia
  • E. Supporto sensore aria
  • F. Racchiudere la guida del cavo del sensore
  • G. 2 x asta (lunghezza corta ed estesa - consente di variare la lunghezza del gruppo di montaggio complessivo)
  • H. Adattatore superiore della copertura dello stramazzo
  • J. Adattatore inferiore del coperchio dello stramazzo

Sono necessari anche 4 bulloni e dadi filettati M4

Appunti

  1. Quando gli oggetti sono incollati, consiglio una resina epossidica bicomponente o qualsiasi colla resistente alle intemperie.
  2. Incollare il pannello solare al coperchio B e utilizzare sigillante siliconico all'interno del coperchio per impedire l'ingresso di acqua sulle facce di giunzione.
  3. La parte E è incollata alla parte E in qualsiasi punto per il montaggio del sensore dell'aria. TUTTO il sensore dell'aria deve essere al di sotto della base dell'alloggiamento, lontano da qualsiasi vista diretta della luce solare (Rif Fig.5A)
  4. Le parti F e D devono essere incollate anche alla base della parte E dell'armadio.
  5. Il gruppo snodo di montaggio (G, C e G) si incastra insieme come un innesto a pressione e quando i loro fori passanti sono allineati, può essere fissato utilizzando 2 bulloni filettati M4 e rondelle (non serrare finché il gruppo completo non è montato e l'orientamento richiesto identificato - non stringere eccessivamente per evitare di rompere i raccordi in plastica). Se necessario, tagliare i bulloni a una lunghezza adeguata.
  6. Montare le parti H e J sulla copertura della piattaforma dello stramazzo modificata in un punto in cui non vi è alcun rischio di interferenza fisica o sollecitazione da qualsiasi cinghia di copertura della piscina, ecc. (rif. Fig 5 C, E e F). Se il coperchio della piastra dello stramazzo ha una superficie curva, suggerisco di utilizzare un sigillante siliconico o epossidico per unire ulteriormente la parte J alla parte inferiore del coperchio dello stramazzo.
  7. Ora il gruppo custodia può essere montato sulla piastra di copertura dello stramazzo utilizzando il gruppo snodo (2xG e C). Questo gruppo snodo si inserisce saldamente a PUSH sia nella base dell'armadio che nel coperchio della piastra dello stramazzo, consentendo così di rimuovere facilmente l'unità per lo stivaggio invernale e/o la manutenzione. NON incollarlo in posizione. Rif. Fig. 5D
  8. La Figura 4 delinea ogni parte e come si incastrano. Per l'installazione di montaggio, ho praticato un foro nel coperchio superiore del mio stramazzo per fornire un punto di montaggio per l'articolazione di montaggio (questo fornisce una possibilità di regolazione tridimensionale per l'alloggiamento rispetto al supporto di montaggio)

Passaggio 5: server di configurazione (punto di accesso)

Server di configurazione (punto di accesso)
Server di configurazione (punto di accesso)
Server di configurazione (punto di accesso)
Server di configurazione (punto di accesso)

Tutte le impostazioni utente del monitor sono memorizzate in EEPROM e possono essere monitorate e modificate tramite il server Web integrato a cui è possibile accedere quando il monitor viene messo in modalità Access Point (AP).

Per fare ciò, l'utente deve prima premere e rilasciare il pulsante RESET, quindi, subito dopo il rilascio, premere e tenere premuto il secondo pulsante CONFIGURATION da 1 a 3 secondi. Al rilascio del pulsante Configurazione, se presente, ogni LED alternativo del bargraph si accenderà per alcuni secondi, nel frattempo l'AP si avvierà.

Se apri le impostazioni delle reti WiFi sul tuo computer o telefono cellulare vedrai apparire l'AP SSID nell'elenco delle reti disponibili. Se è la prima volta che avvii l'AP questo apparirà come HHHHHHHHHHHHHHHHHHHHH - Setup (il nome predefinito) altrimenti sarà il nome che hai assegnato all'AP nelle Impostazioni WiFi seguito da "-Setup".

Seleziona l'SSID e inserisci la password (l'impostazione predefinita è "password" senza virgolette, a meno che tu non l'abbia impostata su qualcos'altro.

Il tuo computer/telefono cellulare si connetterà all'AP. Ora apri il tuo browser web preferito e inserisci 192.168.8.200 nel campo dell'indirizzo URL.

Il browser si aprirà nella pagina principale del server Web di configurazione - fare riferimento alla Figura 6.

Qui sarai in grado di leggere i valori misurati attuali e i pulsanti per il WiFi e le altre pagine di impostazione del dispositivo. Il pulsante in basso è l'ultima cosa che premi quando hai cambiato tutti i parametri di cui hai bisogno (se non lo premi il monitor rimarrà acceso e scaricherà continuamente la batteria….

Figura 7

Questa è la pagina delle impostazioni WiFi e MQTT. Sarai in grado di vedere la rete attualmente archiviata e i dettagli MQTT più tutte le reti disponibili nel raggio del monitor, inclusa quella a cui vuoi connetterti.

Impostazioni Wi-Fi

I campi A e B ti consentono di inserire l'SSID di rete e i dettagli della password richiesti, C è il nome che vuoi dare al tuo dispositivo e questo sarà il nome dell'SSID AP la prossima volta che lo avvii. Infine il campo D è la password che si vuole dare all'AP.

Impostazioni MQTT

Qui imposterai il nome del broker MQTT (E) che stai utilizzando e, soprattutto, se il broker MQTT è un broker basato su cloud o un broker locale (ad es. Raspberry Pi) connesso al WiFi domestico.

Se hai precedentemente selezionato il broker basato su cloud, vedrai due campi aggiuntivi per inserire il tuo nome utente e password per il broker.

Nota che se lasci un campo vuoto, quel campo non verrà aggiornato: questo ti consente di effettuare aggiornamenti parziali delle impostazioni senza dover inserire tutti i campi.

L'indirizzo predefinito sulla prima build è Broker name è MQTT-Server ed è connesso localmente.

Figura 8

Questo mostra il resto della pagina delle impostazioni del dispositivo accessibile dal pulsante "Impostazioni dispositivo" nella pagina principale.

Questo ha 2 formati a seconda che le impostazioni MQTT siano impostate su "HAS HouseNode Compatible" o argomenti Single/Compact

HA HouseNode compatibile

Questo indica al monitor di formattare i suoi dati MQTT per consentire la visualizzazione delle misurazioni dei dati su uno dei display OLED a scorrimento su un massimo di 5 Housenodes descritti nel mio precedente Instructable "Controller multiuso per illuminazione e elettrodomestici". (Vedi la sezione Intro di apertura per un'immagine dei dati visualizzati da Housenode. Questo è descritto ulteriormente nell'Instructable collegato (aggiornato a novembre 2020).

Sarà necessario inserire il nome host dell'HouseNode a cui si desidera inviare i dati di misurazione (campo B)

Il campo C è il numero dello schermo in cui si desidera visualizzare i dati (questo avrà senso quando si legge il controller istruibile!

Il campo A è una semplice abilitazione/disabilitazione per questo frame di dati - se disabilitato, i dati non verranno inviati.

Ciò viene ripetuto per un massimo di 5 HouseNode, consentendo di inviare gli stessi dati a un massimo di 5 display Controller distribuiti nella propria abitazione.

Argomento unico

Ogni misurazione del monitor viene inviata come messaggio MQTT separato utilizzando gli argomenti "Pool/WaterTemp", "Pool/AirTemp" e "Pool/BaroPress". Ciò ti consente di selezionare facilmente quale parametro il tuo dispositivo master con sottoscrizione MQTT vuole leggere direttamente piuttosto che prendere tutto con l'argomento Compact ed estrarre ciò che vuoi usare.

Argomento compatto

Tutte e tre le misurazioni sono combinate in un argomento compatibile con Home Assitant se il tuo dispositivo MQTT in abbonamento preferisce il formato: Pool/{"WaterTemp":XX. X, "AirTemp":YY. Y, "BaraPress":ZZZZ. Z} dove XX. X, YY. Y e ZZZZ. Z sono la temperatura dell'acqua misurata ('C), la temperatura dell'aria ('C) e la pressione barometrica (mB)

Inoltre in questa pagina è possibile selezionare se i LED del bargraph devono essere spenti di notte (consigliato) per risparmiare il consumo non necessario della batteria. Questo è determinato dal livello di luce misurato (LL) del pannello solare ed è rappresentato da una misurazione dallo 0% (scuro) al 100% (luminoso). È possibile impostare una soglia compresa tra 1 e 99% definendo la soglia di luce al di sotto della quale i LED verranno disabilitati. Lo 0% disabiliterà permanentemente il grafico a barre e il 100% farà in modo che sia sempre attivo.

È inoltre possibile impostare l'intervallo di tempo tra le trasmissioni di dati nell'intervallo da 1 a 60 minuti. Chiaramente più lungo è l'intervallo, migliore è la gestione dell'energia e dovresti ricordare che la temperatura della piscina non è una misurazione che cambia rapidamente, il che significa che un intervallo tra 30 e 60 minuti dovrebbe andare bene.

Potresti notare che la prima volta dopo la costruzione iniziale che il tuo sensore dell'aria (cavo corto) viene indicato sul display come temperatura dell'acqua e viceversa! (testato tenendo il sensore in mano e/o facendo cadere il sensore in una tazza di acqua calda o fredda). In tal caso, la casella dati "DS18B20 pool and air address index index" consente di invertire il numero di indice (0 o 1) dei sensori: sarà necessario caricare l'impostazione e riavviare il dispositivo prima che l'indirizzamento del sensore venga essere corretto.

Ultimo e più importante, ricorda che in qualsiasi pagina in cui hai modificato i valori, DEVI premere il pulsante "Carica nuove impostazioni sul dispositivo" altrimenti il Monitor non aggiornerà la sua memoria EEPROM!

Se sei soddisfatto di tutte le modifiche alle impostazioni, per uscire dall'AP e tornare alla modalità monitor normale, premi il pulsante in basso nella pagina principale dell'AP. Se non lo si preme il monitor rimarrà acceso e scaricherà continuamente la batteria….

Passaggio 6: qualche informazione in più sull'utilizzo del monitor della piscina con il controller di illuminazione e elettrodomestici HAS

Qualche informazione in più sull'utilizzo del monitor della piscina con il controller di illuminazione e elettrodomestici HAS
Qualche informazione in più sull'utilizzo del monitor della piscina con il controller di illuminazione e elettrodomestici HAS
Qualche informazione in più sull'utilizzo del monitor della piscina con il controller di illuminazione e elettrodomestici HAS
Qualche informazione in più sull'utilizzo del monitor della piscina con il controller di illuminazione e elettrodomestici HAS
Qualche informazione in più sull'uso del monitor della piscina con il controller per l'illuminazione e l'apparecchio HAS
Qualche informazione in più sull'uso del monitor della piscina con il controller per l'illuminazione e l'apparecchio HAS

Il Pool Monitor è progettato per essere un singolo componente nel proprio sistema di automazione domestica (HAS) basato su MQTT. Ho menzionato più volte che è stato originariamente progettato per essere un membro del mio HAS utilizzando i miei 2 precedenti Instructables pubblicati (Controller per l'illuminazione e l'appliance multiuso e Smart Data-Logging Geyser Controller). Entrambi i progetti condividono un approccio comune alla configurazione utilizzando server Web integrati molto simili che garantiscono un'interfaccia utente coerente e confortevole su tutta la piattaforma.

Entrambe queste istruzioni sono state originariamente sviluppate per essere moduli autonomi, ma in un recente aggiornamento ho introdotto la comunicazione MQTT in ciascuno per consentire ai sensori satellitari (noti come SensorNodes) di essere collegati a uno o più controller (noti come HouseNodes). L'uso principale di questo oggi è quello di aggiungere un bel display OLED al controller multiuso per l'illuminazione della stanza e l'apparecchio e consentire a qualsiasi controller abilitato di visualizzare regolarmente tutti i dati SensorNode sul suo display OLED locale - la prima immagine sopra è di le tre schermate di un HouseNode che scorre e visualizza i dati da se stesso, un controller Geyser e il monitor della piscina, consentendo così una visualizzazione localizzata di tutti i dati acquisiti in qualsiasi posizione conveniente della casa.

Poiché qualsiasi SensorNode o HouseNode può ritrasmettere i propri dati tramite MQTT, ciò consente fino a 8 punti di visualizzazione indipendenti per i punti di misurazione HAS. In alternativa, qualsiasi nodo può essere facilmente integrato nel tuo sistema MQTT e già un amico ha integrato il controller del geyser nel suo Home Assistant HAS.

Altri SensorNode attualmente in fase di sviluppo sono:

  • Sensore di movimento PIR
  • Sensore di allarme a raggi infrarossi
  • Sirena di allarme e nodo di controllo della lampada
  • Centrale di allarme
  • Telecomando portatile
  • Visualizza solo unità

Queste unità verranno rilasciate come Instructables alcuni mesi dopo aver funzionato con successo a casa mia.

Passaggio 7: download

I seguenti file sono disponibili per il download….

  1. Il file del codice sorgente compatibile con Arduino IDE (Pool_Temperature_MQTT_1V2.ino). Scarica questo file e posiziona il file in una sottodirectory della directory di Arduino Sketches chiamata "Pool_Temperature_MQTT_1V2.
  2. I singoli file STL per tutti gli elementi stampati in 3D (*. STL) compressi in un unico file Pool_Monitor_Enclosure.txt. Scarica il file, quindi RINOMINA l'estensione del file da txt a zip e quindi estrai i file. STL richiesti. Li ho stampati con una risoluzione di 0,2 mm su un file del 20% utilizzando un filamento ABS utilizzando una stampante Tiertime Upbox+ 3D.
  3. Ho anche incluso una serie di file jpeg (FiguresJPEG.txt) che coprono tutte le figure utilizzate in questo Instructable per consentirti, se necessario, di stamparle separatamente in una dimensione più utile per te. Scarica il file, quindi RINOMINA l'estensione del file da txt a zip e quindi estrai i file jpeg richiesti.

Consigliato: