Sommario:
- Passaggio 1: Introduzione
- Fase 2: Modulo 1 - FLAT
- Fase 3: Modulo 2 - CALDAIA
- Passaggio 4: quale interfaccia Web offre?
Video: Monitor di temperatura e umidità - Arduino Mega + Ethernet W5100: 5 passaggi
2024 Autore: John Day | [email protected]. Ultima modifica: 2024-01-30 09:59
Modulo 1 - FLAT - hardware:
- Arduino Mega 2560
- Wiznet W5100 schermatura Ethernet
- 8x sensori di temperatura DS18B20 su bus OneWire - suddivisi in 4 bus OneWire (2, 4, 1, 1)
- 2x sensore digitale di temperatura e umidità DHT22 (AM2302)
- 1x sensore di temperatura e umidità SENSIRION SHT21 (Si7021)
- 1x sensore di temperatura e umidità (e pressione dell'aria) BOSCH BME280
- Invia i dati da tutti i sensori contemporaneamente in diversi minuti (modificabile)
Modulo 2 - CALDAIA - hardware:
- Arduino Mega 2560
- Wiznet W5100 schermatura Ethernet
- 16x sensori di temperatura DS18B20 su bus OneWire - suddivisi in 7 bus OneWire (2, 2, 2, 2, 2, 2, 4)
- 8 ingressi digitali
- 8x uscite digitali - per solenoide/relè
- Invia i dati da tutti i sensori contemporaneamente in diversi minuti (modificabile)
- Legge gli stati delle singole uscite dall'interfaccia web, li applica Invia gli stati degli ingressi digitali
Passaggio 1: Introduzione
Oggi vi presenterò in dettaglio l'ultimo progetto realizzato, piuttosto complesso in termini di funzionalità, numero di sensori utilizzati, schede Arduino, bus dati utilizzati. Il progetto si compone di due moduli. Fisicamente ogni modulo è costituito da un Arduino Mega 2560 separato, Ethernet shield W5100 (compatibile con R3) e dai sensori che utilizza.
Ciascun modulo comunica con l'interfaccia web su Internet tramite richieste HTTP POST, mediante le quali il server web vende dati o richiede alcuni dati, ad esempio tramite richiesta POST (solo modulo 2). L'interfaccia web si completa con un sistema di login, mentre tutta la famiglia può registrarsi al sistema, ognuna con il proprio nome e password. Si tratta quindi di un'applicazione multiutente in cui ogni membro della famiglia ha una panoramica di entrambi i moduli e può eseguire diverse azioni - impostazione della temperatura di riferimento, controllo del termometro, ecc. L'interfaccia Web è programmata in PHP, i dati sono archiviati nel database MySQL. Ciascuno dei moduli ha una tabella separata nel database per i dati. Considera i singoli moduli in modo più dettagliato.
Fase 2: Modulo 1 - FLAT
L'intero modulo 1-FLAT funge solo da monitor della temperatura nelle singole stanze, non ha altro ruolo. I sensori DHT22 sono stati utilizzati a lunga distanza utilizzando un resistore pull-up da 10 kohm adatto per registrare l'umidità nei bagni. Poiché BME280 e SHT21 comunicano tramite il bus I2C e questo è considerevolmente limitato in termini di lunghezza dei driver del bus, i sensori vengono utilizzati vicino ad Arduino nelle stanze.
I sensori di temperatura DS18B20 sono stati suddivisi in 4 bus, in quanto vengono utilizzati due sensori esterni, rendendo più semplice collegarli a uscite Arduino separate e, in caso di caduta del sensore, è più semplice sostituirli in quanto non ne paralizza la funzionalità del sistema.
Ad esempio, nel caso di uno di questi bus OneWire, su cui sono indicizzati 4 sensori. L'indice è legato all'indirizzo fisico dei termometri, quindi se uno dei sensori viene scambiato, il nuovo sensore può apparire sull'indice 0 - iniziale, o anche 2, 3 o ultimo. Pertanto, riducendo il numero di sensori sui bus, possiamo evitare tale complicazione che può verificarsi quando il sensore viene sostituito.
Fase 3: Modulo 2 - CALDAIA
Oltre alla funzione di monitor, il modulo 2 - CALDAIA ha anche un ruolo più importante, ovvero il comando di solenoidi o relè per il comando delle valvole dei radiatori. Il modulo funziona indipendentemente dal riscaldamento domestico. Il modulo non commuta riscaldamento o caldaia. Il modulo si occupa solo di aprire, chiudere la valvola del radiatore, se la temperatura ambiente è inferiore / superiore a quella impostata - il cosiddetto. temperatura di riferimento. Ad ogni ambiente in cui viene comandata la valvola del radiatore può essere assegnato un termometro specifico dal modulo 2. Oltre a questo - modalità automatica, esiste anche una modalità manuale in cui la valvola può essere aperta/chiusa manualmente dall'interfaccia web a tempo indeterminato - hard. Gli ingressi digitali possono essere utilizzati per verificare che l'elettrovalvola/relè/valvola sia stata aperta/chiusa su richiesta con Arduina - possibilità di confrontare se l'uscita è uguale all'ingresso.
Passaggio 4: quale interfaccia Web offre?
Per entrambi i moduli è prevista anche la rappresentazione grafica di un grafico a linee per lo sviluppo delle singole variabili - temperatura, umidità nelle 24 ore, 7 giorni. L'interfaccia web offre anche la visualizzazione del valore massimo/minimo, medio nelle 24 ore, 7 giorni per ogni termometro/igrometro. Nel modulo 1 è stata inizialmente considerata una coppia di sensori SHT21, ma non avendo la possibilità di modificare l'indirizzo I2C, sarebbe necessario utilizzare un multiplexer per la comunicazione di un bus da due sensori con lo stesso indirizzo I2C. In caso di dati del sensore difettosi, il nome del sensore viene memorizzato in un registro che l'amministratore di sistema può aprire in qualsiasi momento per riparare il bus OneWire e sostituire, ad esempio, il sensore difettoso.
Nei programmi Arduino è stato implementato il watchdog, che in caso di inizializzazione errata, "congelamento", un altro errore si riavvia in sicurezza e all'inizio del programma disattiva tutte le uscite fino a stabilire la connessione all'interfaccia web, dove è completamente sincronizzato in termini di output, che successivamente applica.
Altri progetti che puoi trovare su: https://arduino.php5.sk?lang=en Fai una donazione per altri esempi:
Consigliato:
Configura Raspberry Pi 4 tramite laptop/pc utilizzando il cavo Ethernet (senza monitor, senza Wi-Fi): 8 passaggi
Configura Raspberry Pi 4 tramite laptop/pc utilizzando il cavo Ethernet (senza monitor, senza Wi-Fi): in questo lavoreremo con Raspberry Pi 4 Modello B di 1 Gb di RAM per la configurazione. Raspberry-Pi è un computer a scheda singola utilizzato per scopi didattici e progetti fai-da-te con un costo accessibile, richiede un'alimentazione di 5V 3A.Sistemi operativi come
Come realizzare un cavo Ethernet: 5 passaggi
Come realizzare un cavo Ethernet: Ciao! Oggi impareremo come creare il tuo cavo Ethernet standard del settore! Quale sarà in grado di farti risparmiare denaro quando si tratta di aver bisogno di cavi! Allora perché sono qualificato per insegnarti? Bene, sono un professionista IT, ho passato gli ultimi 2
Iniettore PoE Ethernet 10/100M fai da te: 6 passaggi
Iniettore PoE Ethernet 10/100M fai da te: qui realizzeremo un semplice inettore PoE adatto per Ethernet 10/100M, che potrebbe anche essere alimentato direttamente con le batterie
MCP23017 Controllo GPIO tramite Ethernet: 5 passaggi
MCP23017 Controllo GPIO via Ethernet: controlla MCP23017 IO-extender via ethernet utilizzando Sensor Bridge e MCP23017 break out board. Comandi inviati da script Python, URL del browser o qualsiasi sistema in grado di comunicare HTTP. Può essere integrato a Home Assistant per la domotica. I cavi sono
Lettura dell'umidità con sensore Ethernet: 3 passaggi
Lettura dell'umidità con sensore Ethernet: Scopo del progetto era quello di poter leggere le letture di umidità e temperatura attraverso la rete ethernet, in modo che i risultati potessero essere utilizzati per l'automazione domestica (Home Assistant ecc. Il sensore T9602 aveva il miglior fattore di forma, con grande prestazioni all'ar