Come realizzare un sensore di temperatura e umidità per la domotica
Puoi costruire rapidamente un sensore di temperatura e umidità digitale fai-da-te con un modulo display OLED per mostrare la temperatura e l’umidità della tua stanza. Puoi anche integrare questo sensore climatico fai-da-te nel tuo software di automazione domestica intelligente, come un server Home Assistant, per automatizzare l’unità HVAC (aria condizionata), il ventilatore o l’umidificatore per il controllo della temperatura e dell’umidità.
Cose di cui avrai bisogno
Avrai bisogno dei seguenti componenti per costruire un sensore di temperatura e umidità intelligente fai-da-te,
- Un sensore digitale di temperatura/umidità ad alta precisione AHT10
- Una scheda Wemos D1 Mini o NodeMCU
- Un display OLED SSD1306 128×64
- Alcuni ponticelli (DuPont).
- Uno stampato in 3D o comunque per assemblare i componenti
- Saldatore e stagno
- Un server Home Assistant in esecuzione su un Raspberry Pi o qualsiasi hardware x86 o x64 compatibile. Se vuoi saperne di più, puoi conoscere Home Assistant e come funziona prima di iniziare.
Passaggio 1: preparare il firmware
Devi compilare e preparare il firmware utilizzando il componente aggiuntivo ESPHome nel tuo server Home Assistant. I passi sono come segue:
- Nel tuo server Home Assistant, vai su Impostazioni > Componenti aggiuntivi e fai clic sul pulsante Negozio componenti aggiuntivi .
- Cerca ESPHome e fai clic sul componente aggiuntivo ESPHome nei risultati della ricerca. Non fare clic su ESPHome (dev) o ESPHome (beta).
- Fare clic sul pulsante Installa .
- Dopo l’installazione, fare clic su Avvia . Inoltre, abilita le opzioni Avvia all’avvio , Watchdog e Mostra sulla barra laterale .
- Fai clic su Apri interfaccia utente Web e fai clic su +Nuovo dispositivo .
- Digita il nome del dispositivo, ad esempio “climate-sensor”, e fai clic su Avanti .
- Scegliere di scegliere una scheda specifica e selezionare la scheda Wemos D1 Mini dall’elenco.
- Fare clic su Avanti > Salta . Scegli ESP8266 se stai utilizzando la scheda NodeMCU.
- Fai clic sull’opzione Modifica , quindi apporta le seguenti modifiche nella finestra dell’editor YAML.
Aggiungi le tue credenziali Wi-Fi:
wifi:
ssid: "YourWiFiSSID"
password: "WiFiPassword"
Quindi incolla il seguente codice appena sotto la riga captive_portal ::
web_server:
port: 80
i2c:
sda: D2
scl: D1
scan: True
time:
- platform: sntp
id: my_time
sensor:
- platform: aht10
temperature:
name: "Living Room Temperature"
id: temp
humidity:
name: "Living Room Humidity"
id: hum
update_interval: 10s
- platform: uptime
name: "Station Bureau Uptime Sensor"
- platform: wifi_signal
name: "Station Bureau WiFi Signal"
update_interval: 30s
font:
- file: 'slkscr.ttf'
id: font1
size: 12
- file: 'BebasNeue-Regular.ttf'
id: font2
size: 15
- file: 'arial.ttf'
id: font3
size: 15
display:
- platform: ssd1306_i2c
model: "SSD1306 128x64"
reset_pin: D0
address: 0x3C
rotation: 180°
lambda: |-
// Print "Ravi Smart Home"in top center.
it.printf(64, 0, id(font1), TextAlign::TOP_CENTER, "Ravi Smart Home");
// Print temperature (from AHT10 sensor)
if (id(temp).has_state()) {
it.printf(127, 23, id(font3), TextAlign::TOP_RIGHT, "Temperature: %.1f°", id(temp).state);
}
// Print Humidity (from AHT10 sensor)
if (id(hum).has_state()) {
it.printf(127, 60, id(font3), TextAlign::BASELINE_RIGHT, "Humidity: %.1f", id(hum).state);
}
Sostituisci “Ravi Smart Home” con il tuo titolo. Dopo aver aggiunto e aggiornato il codice, fai clic su Salva e quindi su Installa .
Scegli Collega a questo computer dall’elenco di opzioni e quindi attendi la compilazione del firmware. Questo potrebbe richiedere 10-15 minuti.
Una volta compilato il firmware, cliccare sul pulsante Scarica progetto . Questo scaricherà il file climate-sensor.bin compilato sul tuo sistema.
Passaggio 2: eseguire il flashing del firmware su D1 Mini o NodeMCU
Per eseguire il flashing del firmware scaricato su D1 Mini o NodeMCU, è possibile utilizzare il programma di installazione Web oppure per eseguire il flashing del firmware, è possibile utilizzare lo strumento flash basato sul Web o lo strumento ESPHome-Flasher per il sistema Windows, Linux o Mac. Seguire i passaggi seguenti per eseguire il flashing del firmware utilizzando il programma di installazione basato sul Web:
- Dopo aver scaricato il firmware, vedrai l’ opzione web Apri ESPHome . Cliccaci sopra. Questo aprirà una nuova finestra.
- Fare clic sul pulsante Connetti , selezionare la porta COM , quindi fare clic sul pulsante Connetti . Se la scheda non viene rilevata, installare i driver CH240/CH341.
- Fare clic su Installa > Scegli file e scegliere il file del firmware climate-sensor -factory.bin .
- Infine, fai clic sul pulsante Installa . Attendere che lo strumento web ESPHome termini il flash del firmware.
Una volta che il firmware è stato aggiornato, vai alla dashboard di ESPHome e trova il file climate-sensor.bin . Dovrebbe visualizzare lo stato come ONLINE .
Passaggio 3: aggiungi il sensore climatico alla dashboard di Home Assistant
Ora puoi aggiungere il sensore climatico alla dashboard di Home Assistant seguendo questi passaggi:
- Nel tuo server Home Assistant, vai su Impostazioni > Dispositivi e servizi .
- Il dispositivo del sensore climatico dovrebbe essere automaticamente scoperto e visibile. Fare clic sul pulsante CONFIGURA e quindi su INVIA . Questo aggiungerà il dispositivo all’elenco dei dispositivi ESPHome.
- Fare clic sul sensore climatico elencato sotto ESPHome , quindi fare clic sul collegamento 1 dispositivo .
- Fare clic su AGGIUNGI A DASHBOARD > Visualizza > AGGIUNGI A DASHBOARD . Scegli la stanza desiderata in cui desideri aggiungere il sensore.
Passaggio 4: collegare l’AHT10 a D1 Mini o NodeMCU
Fare riferimento alle seguenti istruzioni per collegare il sensore di temperatura e umidità AHT10 alla scheda del microcontrollore D1 Mini o NodeMCU utilizzando i ponticelli.
- Collegare il pin VIN dell’AHT10 e del display OLED al pin 5V del D1 Mini o al pin 3.3V sul NodeMCU.
- Collegare il pin GND dell’AHT10 e del display OLED al pin G sul D1 Mini o NodeMCU.
- Collegare il pin SCL dell’AHT10 e del display OLED al pin D1 del NodeMCU o D1 Mini.
- Collegare il pin SDA dell’AHT10 e del display OLED al pin D2 del NodeMCU o D1 Mini.
Avrai bisogno di un saldatore per saldare questi componenti. Puoi imparare a saldare prima di provare questo progetto fai-da-te.
Una volta collegati l’AHT10 e il display OLED, è possibile controllare i valori di temperatura e umidità sul display OLED e sulla dashboard di Home Assistant.
I valori cambieranno in tempo reale. Pertanto, puoi verificare se funziona correttamente soffiando sul sensore AHT10. In questo modo i valori di temperatura e umidità cambieranno istantaneamente. Una volta che i test hanno avuto successo, puoi racchiudere i componenti in una custodia stampata in 3D come questa di Thingiverse .
Puoi anche configurare l’integrazione di Amazon Alexa o Google Assistant in Home Assistant per ricevere notifiche vocali e avvisi quando i livelli di temperatura o umidità superano o scendono a un certo livello.
Il tuo sensore climatico digitale è pronto
È così che puoi creare un sensore di temperatura e umidità digitale intelligente basato su Wi-Fi per la tua stanza e integrarlo con il server Home Assistant per creare automazione e attivare altri dispositivi intelligenti. Ad esempio, è possibile aggiungere l’automazione per spegnere un’unità HVAC una volta che la temperatura e/o l’umidità raggiungono o scendono a un certo livello.
Lascia un commento