community italiana di domotica personale
 
Frigorifero tradizionale sotto controllo tramite la domotica  Home Assistant

Frigorifero tradizionale sotto controllo tramite la domotica Home Assistant

SCOPI DEL PROGETTO:
  • Utilizzare la propria domotica basata su Home Assistant per esser allertati qualora la temperatura del frigorifero (o del freezer) tradizionale non sia adeguata, consentendo così una regolazione puntuale dell’elettrodomestico (vedi nota HACCP)
  • Livello di difficoltà: basso
  • Costo: limitato (circa 20€ usando sensore Xiaomi/LUMI)
CONCETTI AFFRONTATI:
COMPONENTI SOFTWARE UTILIZZATE:
DISPOSITIVI FISICI UTILIZZATI:
PROGETTO INDICATO a UTENTI CON ISTALLAZIONE:
Ambienti Home Assistant HassOS-Supervised-Core
NOTE E DISCLAIMER
  • qualsiasi eventuale modifica agli impianti domestici dev'essere progettata e realizzata SOLO da personale qualificato;
  • qualsiasi modifica non prevista attuata in proprio è a propria responsabilità personale nonché a proprio rischio e pericolo (i contenuti della presenta pagina hanno infatti puro scopo didattico) e fa decadere garanzia, omologazioni e certificazioni di qualità; dei dispositivi interessati;
  • tutte le tecniche descritte si intendono applicate a software e firmware aggiornati alle ultime versioni disponibili;
  • gli articoli di inDomus sono totalmente indipendenti e non sponsorizzati. Se mai questo cambiasse, verrà segnalato chiaramente sulle pagine oggetto di sponsorizzazione;
  • questa pagina è materialmente scritta e manutenuta da più individui: non ci si aspetti né si pretenda un supporto personale. In caso di difficoltà, chiedere supporto alla community sul nostro forum o sulla nostra chat;
  • se hai bisogno di orientarti, c'è la mappa.
Revisione progetto: 1.7

Abstract

frigoriferoSua maestà il frigorifero. Un elettrodomestico talmente utile da essere nel mondo occidentale più diffuso della tv, della radio, addirittura della lavatrice. La sua importanza è, però, indirettamente proporzionale all’attenzione che spesso gli si presta: lo si compra, lo si installa in casa, lo si accende e, mediamente, ci se ne dimentica, non tanto nell’uso quotidiano – appunto, insostituibile – quanto nella sua regolazione.

La temperatura e l’umidità del frigo (ma anche del freezer, delle cantinette per vino e similari) non sono aspetti secondari, anzi. Malgrado al suo interno (sopratutto nei modelli piuttosto voluminosi) la temperatura non sia costante (un gradiente termico per il quale l’aria è più fredda in basso e più calda in alto – motivo per cui gli alimenti andrebbero posizionati in punti precisi del frigo n base alla loro natura), esiste una temperatura generalmente accettata come “media” tale da garantire un corretto equilibrio termico in tutte le zone, e quindi la corretta conservazione dei cibi.

La temperatura media ottimale universalmente accettata è di 5℃ per il frigorifero e di -18℃/-20℃ per la celletta freezer: l’obiettivo, dunque, dovrebbe essere quella di regolare la temperatura media del frigorifero su tali valori. Ma come farlo su un frigorifero tradizionale nel quale è disponibile la sola rotella di regolazione, senza altre informazioni?

Tale rotella di regolazione, solitamente, è (nei frigoriferi tradizionali) collegata a una termocoppia bi-metallo, vale a dire a un dispositivo passivo tanto semplice quanto geniale basato su due lamelle di metalli diversi, i quali si dilatano diversamente in base alla temperatura. Di solito la rotella di regolazione serve a distanziare più o meno le due lamelle che, contraendosi, attivano o disattivano il compressore del frigo e quindi la sua capacità di raffreddarsi. In sostanza, i frigoriferi (tutti) vivono continui cicli di riscaldamento-raffreddamento: quando la temperatura dentro il frigorifero sale, le lamelle della termocoppia contraendosi attivano il compressore (che avvia la circolazione del refrigerante), finché il raggiungimento di una temperatura sufficientemente bassa le fa contrarre al punto da disconnettersi, interrompendo così il processo di raffreddamento. Il lento riscaldamento ricomincia, e con lui il ciclo. Solitamente, la regolazione del freezer è direttamente connessa alla regolazione “generale” del frigorifero.

Home Assistant - Temperatura frigo
un esempio di andamento della temperatura interna di un frigorifero.

Tale regolazione però non garantisce sempre la stessa temperatura media: temperatura esterna e quantità di cibo contenuto dal frigo/freezer influenzano – e non poco – il comportamento del frigorifero.

La soluzione? Cambiare il frigo, acquistandone uno “intelligente” (magari addirittura domotico), oppure sfruttare la propria domotica personale (nel caso di questo progetto, basata su Home Assistant) per monitorare il proprio frigo tradizionale, sfruttandone quindi le notifiche automatiche al fine di essere allertati quando la regolazione del frigorifero/freezer non sia adeguata?

Il presente progetto è volto a realizzare un semplice sistema di notifica basato su Home Assistant, il quale sfrutti le letture di un piccolo sensore di temperatura posizionato all’interno del nostro frigorifero tradizionale come fonte d’informazione. La guida si concentra sul frigo, ma il principio per la celletta freezer, come vedremo, è il medesimo.

NOTA. Maggiori informazioni sul funzionamento del frigorifero e delle temperature da garantire al suo interno sono disponibili su questo speciale presso casinamia.com, il quale ci ha ispirato il presente progetto.

Una precisazione: abbiamo testato il progetto in un frigorifero tradizionale posto a una distanza di circa 10 metri dal Raspberry sul quale era in esecuzione il BRIDGE/Gateway ZigBee, senza repeater di segnale. Tra il sensore Xiaomi e l’antenna, il rivestimento del frigo, due pareti in mattoni forati: nessun problema di ricezione. Il sensore resiste da più di sei mesi nelle condizioni di bassa temperatura, senza particolari problemi né crolli di batteria. Analogamente, per temperature molto inferiori abbiamo utilizzato un sensore Shelly H&T, il quale è Wi-Fi e supporta temperature molto rigide (ideale quindi per freezer).

NOTA UTENTI HACCP

Sebbene questo progetto non sia dedicato agli utenti che abbiano esigenze di monitoraggio aderenti al protocollo HACCP, certamente la tecnologia e le metodologie proposte possono in alcuni casi tornare utili per adempiere ai doveri di legge. Il presente progetto fornisce uno strumento elementare e pratico per ottenere gli andamenti di temperatura istantanea e media di un frigorifero o di un freezer; l’utilizzo di tali dati e tecniche (unito al loro grado di affidabilità) sono a carico e responsabilità dell’utente che, eventualmente, effettua una scelta autonoma, consapevole e personale.

Assunti

Per questo progetto assumeremo la presenza di un’entità di tipo “Notifications” chiamata notify.edoardo e di un’altra, analoga, derivante dall’integrazione di Amazon Echo (Alexa) come Media Player (e quindi come sistema di notifica), chiamata media_player.alexa.
Infine, utilizzeremo un’entità di tipo gruppo che rappresenti lo stato di presenza degli inquilini chiamata group.famiglia. Utilizzeremo queste entità come elementi per definire l’automazione di notifica che ci serve.

Ovviamente, il progetto è adattabile come meglio si crede in base alle proprie esigenze.

Si parte

Il sensore

Ciò di cui è necessario dotarsi è un semplice, banalissimo sensore di temperatura wireless da installare ovviamente senza modifiche al frigorifero (o al freezer). Per il presente progetto abbiamo sperimentato il sensore di temperatura Zigbee della LUMI Aqara, integrato a Home Assistant tramite deCONZ (ovviamente sarebbero andate bene anche altre tecniche di integrazione, come ZigBee2MQTT, ZigBee2Tasmota o altro).

La scelta del sensore è nata dall’affidabilità e dall’economicità del sensore: nessuno però vieta di utilizzarne altri, come per esempio lo Shelly H&T (ideale per freezer, data la sopportazione di una temperatura fino a -40℃ centigradi), completamente Wi-Fi e quindi integrabile senza bisogno di BRIDGE/Gateway.

Xiaomi sensore di temperatura - frigo

Il sensore Xiaomi che abbiamo utilizzato per questo progetto è stato installato in un frigorifero tradizionale tramite il biadesivo in dotazione; il sensore è stato posizionato all’incirca a metà altezza del vano cibi, così da ottenere la lettura media istantanea della temperatura presente nel vano: il risultato è il grafico mostrato a mo’ d’esempio nell’abstract.

N.b. IL sensore non può e non deve essere installato nella celletta frigorifera: le bassissime temperature (sottozero) lo danneggerebbero irrimediabilmente entro poche ore, sebbene per il modello usato nel progetto il range operativo è di -20 / +50 dichiarati dal produttore. Inoltre, lo scopo del progetto è monitorare la temperatura del vano cibi freschi, non del congelatore.

Come detto, per monitorare freezer applicando la presente guida si consiglia un sensore alternativo capace di sopportare temperature più estreme, per esempio lo Shelly H&T.

Quale sia la scelta del sensore o delle modalità di integrazione, assumeremo per questo progetto la presenza di un’entità di tipo “Sensor” chiamata sensor.temperatura_frigo.

Temperatura media

Giunti al risultato di conoscere, istante per istante, la temperatura del vano cibi del nostro frigorifero, è ora necessario definire presso Home Assistant un sensore virtuale che calcoli il valore medio di tale temperatura. Le letture del semsore, infatti, riportando un andamento a dente di sega per le motivazioni spiegate nell’abstract (il ciclo di riscaldamento-raffreddamento): ciò che ci serve invece è un’entità che riporti un valore medio delle letture delle ultime tot ore, così da usarlo come trigger per un’automazione di notifica.

Per far ciò utilizzeremo la piattaforma “Statistics Sensor” di Home Assistant, figlia appunto del componente “Sensor“. Tale piattaforma è concepita espressamente per creare sensori virtuali statistici a partire da altre entità.

Definiremo quindi un sensore che riporti nel suo stato la temperatura basata sulla media delle ultime 50 rilevazioni, utilizzando come fonte dati l’entità sensor.temperatura_frigo. La configurazione da aggiungere, banale, è la seguente:

sensor:
  - platform: statistics
    name: "Temperatura media FRIGO"
    entity_id: sensor.temperatura_frigo
    precision: 1
    sampling_size: 20
    state_characteristic: average_linear

Configuriamo il sensore usando la state_characteristic: average_linear, la quale consente di definire un senosore di temperatura medio non solo in base alle letture ricevute, ma anche tenendo in conderazione i lassi di tempo trascorsi tra una e l’altra (vedi documentazione di dettaglio).

Dopo il riavvio di Home Assistant, una nuova entità “Sensor” sarà nata, chiamata sensor.temperatura_media_frigo.

N.b. Il componente “Recorder” dev’essere attivo, motivo per cui l’abbiamo indicato nella configurazione qui sopra. La personalizzazione del sensore di tipo “Statistic Sensor” non è oggetto del presente progetto: la configurazione proposta è sufficiente allo scopo, ma in caso si vogliano ottenere risultati più specifici sul valore di media, far direttamente riferimento alle indicazioni della scheda della piattaforma.
Vetrina - Offerte del giorno

Automazione

A questo punto il grosso è fatto: ora sarà sufficiente definire un’automazione che utilizzi come trigger l’entità sensor.temperatura_media_frigo.

Ne creeremo una che:

  • preveda un messaggio di notifica specifico laddove la temperatura media sia eccessivamente alta, superiore ai 5 gradi centigradi o eccessivamente bassa, inferiore ai 3, per più di 30 minuti conseguitivi;
  • faccia sì che Alexa (lo smart speaker scelto per la notifica) pronunci un messaggio di notifica in presenza degli inquilini;
  • in caso gli inquilini siano fuori casa, invii una notifica testuale al capofamiglia (notify.edoardo).

Vediamo come realizzarla:

automation:
- alias: "Notifica temperatura frigo"
  trigger:
    - platform: numeric_state
      entity_id: sensor.temperatura_media_frigo
      above: 5.0
      for:
        minutes: 30
    - platform: numeric_state
      entity_id: sensor.temperatura_media_frigo
      below: 3.0
      for:
        minutes: 30
  condition: []
  action:
    - action: notify.alexa_media
      data:
        target: media_player.alexa_sala
        data:
          type: tts
        message: >
          {% if trigger.to_state.state|float > 5.0 %}
          Rilevata temperatura media frigorifero troppo alta.
          {% elif trigger.to_state.state|float < 3.0 %}
          Rilevata temperatura media frigorifero troppo bassa.
          {% endif %}
    - condition: template
      value_template: "{{ states.group.famiglia.state != 'home' }}"
    - action: notify.edoardo
      data:
        data:
          push:
            badge: 1
        title: Domotica
        message: >
          {% if trigger.to_state.state|float > 5.0 %}
          Rilevata temperatura media frigorifero troppo alta.
          {% elif trigger.to_state.state|float < 3.0 %}
          Rilevata temperatura media frigorifero troppo bassa.
          {% endif %}

Una volta ricaricata l’automazione o riavviato l’HUB, la notifica sarà operativa.

Home Assistant - Notifica frigorifero caldo
un esempio di notifica (su smartphone).

A fronte di una segnalazione della domotica sarà possibile, per l’utente, agire sulla regolazione del frigorifero per rientrare nel range termico da garantire per la corretta conservazione dei cibi in esso contenuti.

Visualizzazione su frontend

Nessuno ci vieta, ovviamente, di visualizzare il sensore virtuale appena creato presso l’interfaccia dell’HUB. In caso si voglia utilizzare una card di tipo sensore, è bene però sapere che l’entità di sensor.temperatura_media_frigo non sia dotata di due caratteristiche necessarie alla visualizzazione, ovvero la device_class (che deve essere impostata a “temperature“) e l’unità di misura (unit_of_measurement), la quale dev’essere impostata a “°C“.

Per far ciò è necessario accedere alla pagina “Configurazione” > “Personalizzazione“, selezionare il sensore e configurare i due parametri sopracitati. Successivamente sarà possibile configurare una card sensore indicando l’entità e visualizzare quindi i valori medi della temperatura del frigorifero:

Home Assistant - Temperatura media FRIGO - Card LOVELACE
un esempio di rappresentazione su Dashboards.

Rendere no-frost un frigorifero tradizionale con Home Assistant

⚠️ Se di Home Assistant ne sai poco ma sei interessato a capirne di più, ti suggeriamo di partire da qui.

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.