SCOPI DEL PROGETTO:
CONCETTI AFFRONTATI:
|
COMPONENTI SOFTWARE UTILIZZATE:
DISPOSITIVI FISICI UTILIZZATI:
|
PROGETTO INDICATO a UTENTI CON ISTALLAZIONE:![]() |
|
NOTE E DISCLAIMER
|
|
Revisione progetto: 1.1 |
Abstract
Molte persone amano l’uso del ventilatore, nella stagione calda, in luogo del climatizzatore/condizionatore. Questo perché esso fornisce, per alcuni, un refrigerio più piacevole, specialmente di notte. Il problema, sopratutto in quest’ultimo caso d’uso, sta nel fatto che l’accensione costante alla lunga diventa fastidiosa e lo spegnimento prima di coricarsi lo è altrettanto perché porta a sentire caldo nelle prime ore di sonno.
La domotica ci viene in aiuto. Il presente progetto permetterà di configurare presso Home Assistant un meccanismo automatico tale da fornire all’utente la possibilità di scegliere una temperatura massima al raggiungimento della quale il ventilatore si accenda automaticamente e una minima al di sotto della quale esso si spenga, sempre automaticamente.
Nella prima versione di questo progetto abbiamo proposto l’utilizzo di uno slider; in questa versione utilizziamo un più appropriato termostato virtuale grazie all’adozione della piattaforma “Generic Thermostat“, una delle figlie del componente “Climate“. Questa piattaforma consente di creare un termostato virtuale che agisca su un dato switch (accendendolo e spegnendolo) a fronte del raggiungimento/allontanamento rispetto a una data temperatura target scelta dall’utente.
N.b. Ovviamente questo mini-progetto può essere applicato a qualsiasi entità di tipo switch: tutto quanto spiegato vale anche per ventilatori a pale da soffitto e altre tipologie di impianti, purché integrati a Home Assistant come “Switch”. |
Si parte
Assunzioni
Si assume che presso la configurazione di Home Assistant siano presenti le seguenti entità:
- uno “Switch“ chiamato “ventilatore” (“switch.ventilatore”) che corrisponda all’attuatore che eroga/interrompe corrente al ventilatore (vedi progetto esemplificativo e relative considerazioni) – in sostanza, che lo accende/spegne;
- un “Sensor” di temperatura chiamato “temperatura” (“sensor.temperatura”) che fornisca la temperatura istantanea della stanza in cui è presente il ventilatore con una risoluzione al decimo di grado centigrado.
Noi abbiamo testato la cosa utilizzando un sensore di temperatura Shelly H&T e un attuatore singolo canale Sonoff Basic R3; in alternativa si può utilizzare una qualunque sensore integrabile (Xiaomi/LUMI, Xiaomi Bluetooth ecc.) e una qualsiasi presa intelligente integrabile (la Shelly Plug S e molte altre) o attuatore a singolo canale.
Creazione del termostato
Creare un termostato dati gli assunti di cui sopra è piuttosto elementare. La configurazione proposta è la seguente:
climate - platform: generic_thermostat name: Ventilatore heater: switch.stufetta target_sensor: sensor.temperatura min_temp: 17 max_temp: 25 ac_mode: false target_temp: 27 cold_tolerance: 0.2 hot_tolerance: 0.2 initial_hvac_mode: "off" precision: 0.1
Questa configurazione definisce un’entità “Climate” chiamata climate.ventilatore.
Vediamo i campi relativi alla configurazione:
name | Definisce il nome dell’entità |
heater | Qui si indica quale sia l’entità acceso/spento da controllare (nel nostro caso switch.ventilatore) |
target_sensor | Il sensore di temperatura da utilizzare per capire se lo switch indicato nel campo heater debba venire acceso o spento in relazione alla temperatura target impostata dall’utente |
min_temp | Indica quale sia la temperatura target minima regolabile |
max_temp | Indica quale sia la temperatura target massima regolabile |
ac_mode | Impostato a “true” fa funzionare l’entità “Climate” come fosse un climatizzatore |
target_temp | La temperatura target di default |
cold_tolerance | Quanti gradi di tolleranza fredda vengono considerati (se lo imposto a 0.5 e la temperatura target è 27, lo switch viene spento sotto i 26.5) |
hot_tolerance | Quanti gradi di tolleranza calda vengono considerati (se lo imposto a 0.5 e la temperatura target è 27, lo switch viene acceso sopra i 27.5) |
initial_hvac_mode | La modalità iniziale (quando parte Home Assistant) dell’entità |
precision | La precisione di analisi di comparazione temperatura target/temperatura rilevata |
Uso
Naturalmente l’entità così generata può essere utilizzata manualmente presso l’interfaccia Home Assistant, consentendo all’utente di regolare con semplicità la temperatura target tramite l’utilizzo di una “card” grafica di tipo termostato:
Ovviamente nessuno vieta di utilizzarla anche tramite automazioni, magari attivandola automaticamente impostando delle temperature target a fronte di determinati scenari, magari in abbinamento a un sensore di benessere, oppure disattivandola per esempio quando si esce di casa, e così via.
N.b. Usiamo i termini attivare/disattivare anziché accendere/spegnere per non generare confusione. L’accensione e lo spegnimento dell’entità switch (quale che sia) avviene quando l’entità climate è attiva e quando si raggiunge o meno la temperatura target impostata. Se l’entità climate è disattiva, anche a fronte del raggiungimento (o meno) della temperatura target precedentemente impostata non ci sarà alcuna azione sullo switch. |
Mettiamo per esempio di voler disattivare l’entità climate (quindi evitare eventuali accensioni non volute del ventilatore) quando usciamo di casa. In un’ipotetica automazione dentro/fuori casa, nel blocco action da innescare automaticamente quando si abbandona casam imposteremmo qualcosa del genere:
# parte finale dell'automazione che si attiva quando si esce di casa
...
action:
action: climate.turn_off
entity_id: climate.ventilatore
Così facendo, l’entità climate.ventilatore verrà automaticamente disattivata ogni qual volta si esce.
Un esempio di andamento della temperatura durante una notte estiva controllata con questa tecnica è rappresentata nel seguente esempio (si noti l’andamento a zig-zag della temperatura durante la notte). L’automazione è stata disattivata manualmente all’una, ma prima di quell’ora:
Ovviamente si tratta solo di una rappresentazione esemplificativa: come sempre, il limite è la fantasia, pertanto sarà nelle corde dell’utente provvedere a personalizzare la rappresentazione come meglio crede.
Questa pagina è redatta, manutenuta e aggiornata dallo staff di inDomus, un gruppo di persone molto diverse tra loro che trovi, per domande e supporto, sul forum e sulla chat del sito. Alcuni link sono taggati in qualità di affiliati Amazon e riceviamo un compenso dagli acquisti idonei, utile al sostenimento del sito, ma le nostre recensioni sono tutte indipendenti e non sponsorizzate. Se ti sei perso, a tua disposizione c'è la mappa. |