Skip to content

+49 1626571232

info@openelab.io

Spedizione gratuita a partire da 50€ nell'UE / 80€ in tutto il mondo

Come realizzare il tuo termostato intelligente

26 Jul 2024 0 Comments
Il Termostato Intelligente è un dispositivo avanzato di controllo della temperatura da utilizzare in ambienti domestici e commerciali. Gli utenti possono regolare le impostazioni della temperatura sempre e ovunque e gestirle da remoto tramite un'app per smartphone o un'interfaccia web. Lo scopo di questo progetto è creare un Termostato Intelligente facile da usare, facile da usare e open source che puoi creare in base alle tue esigenze specifiche.

Componenti hardware:

  1. Microcontrollore: Arduino MKR WiFi 1010 (microcontrollore per elaborare i dati dei sensori e controllare il sistema di riscaldamento. Dispone di funzionalità WiFi e Bluetooth).
  2. Sensori: Sensore di umidità e temperatura: sensori di temperatura umidità pressione BME280
  1. Display OLED: display OLED SSD1306 da 0,96 pollici I2C 128 x 64 pixel
  2. Modulo relè: modulo relè 5 V/12 V , utilizzato come interruttore per controllare il sistema di riscaldamento.
  3. Orologio in tempo reale: orologio in tempo reale RTC DS3231 I2C orologio in tempo reale (per il monitoraggio dell'ora precisa)
  4. alimentazione: alimentatore 5V/2A
  5. alloggiamento: stampato in 3D (vedi bozza in questa nota) o scatola di aggiornamento per ospitare i componenti
  6. scheda di circuito
  7. breadboard e jumper (se vuoi eseguirlo come prototipo ed eventualmente espanderlo)
  8. circuito stampato personalizzato (progettalo utilizzando KiCad EDA e stampalo utilizzando Eurocircuits)

Requisiti software:

  1. IDE: Arduino IDE (puoi utilizzare qualsiasi IDE che preferisci purché tu sia in grado di caricare il codice su Arduino)
  2. Programmazione: è necessaria solo una conoscenza di base dell'assemblaggio e dell'ottimizzazione della configurazione. Se desideri espandere il progetto, potrebbe essere utile una certa esperienza con le tecnologie di cui sopra.
  3. Arduino: C++
  4. Base dati: SQL (MariaDB)
  5. Front-end: TypeScript (front-end Angular17)
  6. Backend: TypeScript (Node.js, Express)
Nella maggior parte dei sistemi di riscaldamento, il termostato controlla il riscaldatore chiudendo (cortocircuitando) i contatti per completare il circuito e attivare il riscaldatore. Questo termostato funziona secondo lo stesso principio, utilizzando un relè per chiudere il circuito e, se il tuo attuale termostato funziona in questo modo, puoi utilizzare anche questo termostato.

Passaggio 1: alloggiamento stampato in 3D

Abbiamo progettato un involucro semplice per rendere il termostato più sofisticato e più simile a un tipico termostato. Puoi scaricare il nostro file STL e importarlo in Tinkercad o qualsiasi altro software di modellazione 3D. Puoi modificarlo a tuo piacimento e poi stamparlo in 3D. Il nostro design è molto semplice e può essere utilizzato come prototipo in modo da poterlo migliorare e personalizzare secondo necessità.
Se desideri utilizzare il PCB (da noi progettato) per adattarlo esattamente alla custodia, puoi esportare il layout PCB da KiCad come file SVG e importarlo nel tuo software di modellazione 3D. In questo modo puoi progettare il case attorno al PCB e assicurarti che tutto si adatti. Termostato_Case.stl

Passaggio 2: stampare il PCB

Passaggio 3: assemblaggio dell'hardware e configurazione del microcontroller

Configurazione del microcontrollore

Inizia il processo di assemblaggio configurando il microcontrollore. Montatelo su una breadboard in modo che possa essere prototipato e collegato più facilmente. Collega il microcontrollore a una fonte di alimentazione, assicurandoti che riceva un'alimentazione stabile da 5 V/2 A. Questa configurazione iniziale costituisce la base del termostato, fornendo il controllo e la potenza di elaborazione necessari per i restanti componenti.

Integrazione del sensore

Successivamente, integra i sensori di temperatura e umidità con il microcontrollore. A seconda del tipo di sensore scelto, seguire lo schema elettrico specifico per collegarli correttamente. Per il sensore Adafruit sopra elencato, puoi trovarlo sul loro sito web. Il sensore fornirà dati in tempo reale sulla temperatura e l'umidità ambientale, che il microcontrollore utilizzerà per regolare il sistema di riscaldamento. Fissare il sensore in una posizione in cui possa misurare con precisione la temperatura ambiente.

Connessione display OLED

Collega il display OLED al microcontrollore, assicurandoti che i pin siano configurati correttamente. Il display verrà utilizzato come interfaccia utente per mostrare la temperatura attuale, la temperatura impostata e altre informazioni rilevanti. Il corretto collegamento del display è fondamentale per un output del display chiaro e accurato.

Configurazione del modulo relè

Configura il modulo relè che controllerà il sistema di riscaldamento in base alle letture della temperatura e agli input dell'utente. Collega il relè al microcontrollore per assicurarti che possa gestire il carico del sistema di riscaldamento. Il relè funge da interruttore e il microcontrollore può accenderlo o spegnerlo per regolare la temperatura. Testare il funzionamento del relè per assicurarsi che risponda correttamente ai segnali di controllo provenienti dal microcontrollore.

Passaggio 4: programmazione del termostato

La funzione del ciclo principale viene eseguita continuamente ed esegue le seguenti attività:
  1. invia periodicamente un heartbeat al server.
  2. se l'heartbeat ha esito positivo, mette in coda la richiesta dei dati del sensore.
  3. elabora tutte le richieste pendenti in coda.
  4. tenta di riconnettersi se è in modalità fallback ed è trascorso un tempo sufficiente.
  5. controlla il relè di riscaldamento in base alla temperatura mentre è in modalità fallback.
  6. aggiornare periodicamente la visualizzazione.
Impostazione dell'ambiente di sviluppo
Configura l'ambiente di sviluppo sul tuo computer installando il software necessario. Se utilizzi Arduino, scarica e installa l'IDE Arduino. per Raspberry Pi, configurare l'ambiente di sviluppo appropriato. Assicurati di avere tutte le librerie necessarie per il sensore di temperatura, il display LCD e tutti gli altri componenti che stai utilizzando. Questa configurazione fornirà gli strumenti necessari per scrivere, caricare ed eseguire il debug del codice del termostato.
Caricamento del codice su Arduino MKR WiFi 1010
Collegamento dell'Arduino MKR 1010 WiFi
  1. Collega la scheda: collega Arduino MKR 1010 WiFi al computer utilizzando il cavo USB.
  2. Seleziona scheda madre: vai su Strumenti->Scheda madre e seleziona Arduino MKR WiFi 1010.
  3. Seleziona Porta: Vai su Strumenti->Porte e seleziona la porta che corrisponde alla scheda a cui ti stai connettendo (ad esempio, COM3, /dev/ttyUSB0).
Preparazione di uno schizzo
  1. Apri schizzo: apri il file di schizzo di Arduino (.ino) nell'IDE di Arduino.
  2. Configura schizzo: modifica lo schizzo in modo che corrisponda all'IP del server, alle credenziali WiFi e ad altre impostazioni.
Per caricare uno schizzo
  1. Verifica lo schizzo: fai clic sull'icona del segno di spunta nell'angolo in alto a sinistra dell'IDE di Arduino per compilare e verificare il codice. Ciò garantisce che non vi siano errori di sintassi.
  2. Carica schizzo: fai clic sull'icona della freccia destra accanto al segno di spunta per caricare il codice su Arduino MKR 1010 WiFi. l'IDE compilerà nuovamente il codice e poi lo caricherà sulla scheda madre.
Monitoraggio dell'uscita seriale
  1. Attiva il monitor seriale: vai su Strumenti->Monitor seriale per accendere il monitor seriale.
  2. Imposta velocità di trasmissione: assicurati che la velocità di trasmissione nella parte inferiore del monitor seriale sia impostata su 9600 per corrispondere a Serial.begin(9600); impostazione nel codice.
  3. Visualizza output: dovresti vedere l'output di Arduino, che include messaggi di debug e letture dei sensori.
Regolazione della configurazione
Dovrai regolare le configurazioni WiFi e server in modo che corrispondano alle tue impostazioni. Queste configurazioni devono essere regolate per corrispondere all'indirizzo IP del server e alla rete WiFi.
Opzionale: Regolazione delle variabili operative
Queste variabili e costanti gestiscono lo stato operativo, come lo stato della connessione, lo stato del riscaldamento e gli intervalli di temporizzazione delle attività. FALLBACK_TEMPERATURE viene utilizzato quando il server non è raggiungibile e il termostato funziona in modalità fallback. HEARTBEAT_INTERVAL determina la frequenza con cui Arduino invia heartbeat al server.

Passaggio 5: configurazione del database, del server e del front-end

Banca dati
Per poter funzionare correttamente, il server del Termostato Intelligente necessita di un database. Per questo utilizziamo MariaDB.
Puoi trovare informazioni su come configurarlo qui: Repository GitHub - Configurazione database
 
Fine frontale
Il frontend è stato sviluppato utilizzando Angular17 e consente all'utente di visualizzare i dati e configurare le impostazioni della temperatura.
Puoi trovare informazioni su come configurarlo qui: Repository GitHub - Impostazioni frontend
 
Backend
Sviluppato utilizzando Node.js ed Express, il backend fornisce API per i dati dei sensori, l'autenticazione e il controllo del riscaldamento.
Puoi trovare informazioni su come configurarlo qui: Repository GitHub - Configurazione backend
 

Passaggio 6: test e calibrazione

Prova iniziale
Accendere il termostato ed eseguire un test iniziale per garantire che tutti i componenti funzionino correttamente. Controllare che l'output del display OLED sia corretto e verificare che il sensore di temperatura fornisca letture accurate. Testare il modulo relè impostando varie soglie di temperatura e osservando se il relè attiva o disattiva di conseguenza il sistema di riscaldamento. Questa fase di test iniziale è fondamentale per identificare tempestivamente eventuali problemi e apportare le modifiche necessarie.
Calibrazione
Calibrare il termostato per garantire un funzionamento accurato e affidabile. Confronta le letture del sensore con un termometro affidabile per verificarne l'accuratezza. Se necessario, modificare i codici o le posizioni dei sensori per avvicinarli maggiormente alle temperature effettive. Assicurarsi che i relè siano attivati ​​e disattivati ​​alla corretta impostazione della temperatura per un controllo preciso del sistema di riscaldamento. Questo processo di calibrazione ottimizzerà le prestazioni del termostato e garantirà che soddisfi le specifiche richieste.
Seguiranno ulteriori informazioni: Costruisci il tuo termostato intelligente

Prev Post
Next Post

Leave a comment

All blog comments are checked prior to publishing

Someone recently bought a

Thanks for subscribing!

This email has been registered!

Shop the look

Choose Options

Edit Option
Notifica di disponibilità
this is just a warning
Login
Shopping Cart
0 items
RuffRuff App RuffRuff App by Tsun