community italiana di domotica personale
 
Stimare assorbimenti e consumi elettrici sulla domotica Home Assistant, con PowerCalc

Stimare assorbimenti e consumi elettrici sulla domotica Home Assistant, con PowerCalc

Scopi del pROGETTO:
  • Dotarsi di sensori di potenza ed energia basandosi su modelli di calcolo predittivi/di stima
  • Livello di difficoltà: Medio/basso
Concetti affrontati:
  • Configurazione software
Componenti software utilizzate:
Prerequisiti:
Dispositivi fisici utilizzati:
GUIDA INDICATA 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.1

Home Assistant - PowerCalc

Abstract

Com’è noto, l’HUB per domotica personale Home Assistant è un potente alleato anche nell’ambito sia della consuntivazione dei consumi elettrici (grazie all’uso di contabilizzatori e del suo pannello “Energia” – vedi demo) sia della consultazione dell’assorbimento istantaneo e storico di determinate utenze se non dell’intero impianto o porzioni di esso.

Per fare ciò solitamente si utilizzando delle componenti di misurazione di potenza ed energia che siano state integrate all’HUB: componenti come i misuratori passivi (come per esempio Shelly EM per la misurazione a monte impianto) oppure attivi, come le prese intelligenti, per non citare gli stessi elettrodomestici in grado di essere integrati a Home Assistant, i quali forniscano da sé tali misurazioni.

Capita però talvolta di non avere modo di misurare, magari perché non ha senso (o non è proprio possibile) posizionare un misuratore ad hoc per farlo; esistono dunque varie tecniche utili a ottenere il dato malgrado l’assenza di un misuratore.

Questa guida illustra come dotarsi dei sensori di cui sopra in un modo alternativo, ovvero quello empirico/deduttivo offerto dall’adozione del custom component “PowerCalc”.


Altri progetti disponibili su inDomus dedicate a impianti e consumi sono:

Si parte

Assunti

Com’è naturale che sia, si assume di avere a bordo di Home Assistant – già installato e funzionante – una o più integrazioni relative a utenze domestiche (luci, prese, elettrodomestici) le quali non presentino una controparte in termini di entità sensore relative a potenza (assorbimento elettrico istantaneo) ed energia (consumi nel tempo).

Si assume inoltre che su Home Assistant sia già installato e funzionante il componente HACS – non obbligatorio per l’installazione di PowerCalc ma caldamente consigliato (nonché base della presente guida).

Come funziona PowerCalc

PowerCalc è un custom component (quindi un componente aggiuntivo di Home Assistant) molto versatile che consente di ottenere, con facilità, gli scopi descritti sopra.

In pratica sfrutta un approccio che abbiamo già visto implementato su un altro HUB di successo: Homey. Il tutto parte da un assunto: se io conosco quanto e sopratutto come un dispositivo integrato a Home Assistant assorbe energia, posso anche definire un sensore calcolato sulla base dello stato dell’entità che lo rappresenta sull’HUB.

In pratica: se per esempio sappiamo empiricamente che la lampadina OSRAM ZigBee assorbe, accesa alla massima potenza, 9.20 watt, e se sappiamo quanto consuma per ogni step percentuale di regolazione nonché il suo consumo basale (in standby), allora posso definire un sensore “intelligente” che mi conteggi dinamicamente questa potenza e relativa energia (consumo) nel tempo. In questo caso si utilizzerà una strategia “Linear”, ma Powercalc ne prevede anche altre altre (fisse, modellate su WLED e altro), come vedremo più avanti.

PowerCalc fa proprio questo: grazie a un database collaborativo (al quale vedremo come contribuire), il custom component sa riconoscere già da sé i componenti ad esso “noti” (e quindi i relativi “comportamenti” elettrici), creando così i sensori satellite relativi a potenza ed energia – utilizzabili poi, per la visualizzazione sul pannello Energia e/o altri scopi.

Inoltre, il custom component permette anche di definire manualmente tali sensori nel caso non sia in grado di riconoscere automaticamente eventuali target.

Installare il componente

Installare il componente necessario – ovvero il già citato “PowerCalcè un gioco da ragazzi, quando si utilizza il comodissimo HACS. Recarsi dunque alla voce “Integrazioni” del pannello HACS e cercare, per l’appunto, “PowerCalc“.

Una volta trovato, cliccarvi sopra per accedere alla maschera tramite la quale provvedere all’installazione del componente cliccando “Scarica“. Al termine, non riavviare ancora Home Assistant (sebbene il componente indichi di farlo).

A questo punto, recarsi presso il file di configurazione di Home Assistant e aggiungere:

powercalc:

oppure

powercalc:
  enable_autodiscovery: false

in caso non si voglia usufruire – per qualche motivo – della funzione di auto-riconoscimento dei target.

Terminata la configurazione riavviare Home Assistant per procedere oltre.

Vetrina

Configurazione dei sensori

Come detto, le strade sono essenzialmente due, utilizzabili entrambe e contemporaneamente: quella di auto-riconoscimento dei dispositivi target (paragrafo seguente) e quella di definizione manuale dei sensori calcolati.

Auto-riconoscimento

Riavviato l’HUB, recandoci alla voce “Integrazioni” del menu “Configurazione” dell’HUB, in caso PowerCalc abbia rilevato uno o più target, essi verranno elencati in un modo analogo a quello che segue:

Home Assistant - PowerCalc - Auto-discovery
un esempio di target auto-rilevati da PowerCalc.

A questo punto, semplicemente cliccando su “CONFIGURA” e proseguendo nei due banali passi successivi (conferma del modello del dispostivo target rilevato e associazione alla zona domestica), i sensori verranno creati.

Per esempio: la già sopracitata lampadina OSRAM ZigBee, integrata su Home Assistant via ZigBee2MQTT, viene riconosciuta automaticamente da PowerCalc e aggiunge al dispositivo – accanto al classico “interruttore acceso/spento” con regolazione di intensità luminosa tipico del device stesso, anche i due sensori calcolati in tempo reale:

Home Assistant - PowerCalc - Esempio

Modificando l’intensità luminosa della lampadina (o il suo stato di accensione), il valore di potenza varia conseguentemente, in modo automatico e, di conseguenza, anche il conceggio di consumo (energia) su base tempo.

Non c’è molto altro da aggiungere. La cosa parla da sé 🙂

Configurazione manuale

Discorso diverso quello relativo alla configurazione manuale. Qualora PowerCalc non provveda all’auto-riconoscimento dei propri target, le strade sono due:

  • collaborare col progetto, fornendo le caratteristiche del proprio componente così da far sì che, al prossimo aggiornamento del componente, esso venga incluso nella lista dei device automaticamente riconosciuti e quindi il problema si risolva da sé;
  • inserire a mano i dati relativi a componente in questione.

Per collaborare al progetto il processo è descritto in calce al presente progetto. 

Diversamente, per inserire a mano le informazioni recarsi alla voce “Integrazioni” del menu “Configurazione” dell’HUB e cliccare sul “+” e cercare “PowerCalc“, selezionarla e portare avanti la configurazione, oppure qui:

https://my.home-assistant.io/badges/config_flow_start.svg


Per configurare, cliccare su “Virtual power (manual)“, il che ci traghetterà sulla maschera di configurazione dei sensori calcolati, i quali richiedono:

  • nome dell’entità da monitorare in termini di stato (quella che rappresenta il componente integrato che “consuma” energia);
  • il nome dell’entità dei sensori che verranno prodotti (opzionale);
  • un ID_univoco, il quale consente di impostare più sensori di potenza per la stessa entità. Quando non specificato, prenderà l’unique_id dell’entità di origine;
  • un eventuale gruppo (opzionale);
  • la strategia di calcolo;
  • la potenza assorbita in standby (usata da PowerCalc quando entità da monitorare è in “off“);
  • se creare anche il sensore di energia (ovvero il “consumo nel tempo”, utilizzabile sul pannello “Energia” di Home Assistant);
  • se creare anche un Utility Meter associato.
Home Assistant - PowerCalc - Configurazione manuale
la maschera di configurazione.
Strategia di calcolo

La Strategia di calcolo è forse l’aspetto più importante da capire. Spiegata in dettaglio qui, è in pratica:

Fixed Adatto quando il dispositivo assorbe una portenza fissa quando è acceso. È inoltre possibile impostare un valore di potenza per stato e utilizzare modelli.
Linear Utilizzare questo quando si desidera impostare la potenza su una scala lineare. Utile per luci o ventilatori dimmerabili con velocità diverse.
LUT Utilizza una tabella di ricerca LUT per mappare una determinata luminosità e colore della luce su un valore di potenza espresso in watt. Per creare questi modelli LUT va necessariamente utilizzata l’utility di misura.
Playbook Questo può essere utilizzato per registrare il consumo energetico di un dispositivo nel tempo e riprodurre tale registrazione. Potrebbe essere utilizzato ad esempio per i programmi della lavatrice.
WLED Utilizzato per strisce LED controllate con firmware WLED. L’integrazione WLED fornisce la corrente stimata e PowerCalc creerà di conseguenza i sensori di potenza ed energia.
Composite La strategia composita consente di creare un sensore di potenza che contenga a sua volta più strategie; per ciascuna strategia è possibile impostare le condizioni che indicano quando applicare la strategia. Quindi, ad esempio, si potrebbe utilizzare la strategia fissa quando si applica una determinata condizione e quella lineare quando si applica un’altra condizione, per esempio: un climatizzatore regolato su caldo, freddo, velocità alta, bassa eccetera. Per le condizioni viene utilizzato lo stesso motore delle automazioni e degli script HA.

N.b. Questa strategia è utilizzabile solo tramite configurazione YAML, e non via interfaccia grafica (vedi dettagli).

avanzando cliccando su “PROSSIMO” le maschere che seguiranno saranno diverse in funzione della strategia di calcolo scelto. Per esempio, nel caso di “Fixed“, la maschera chiederà quale sia la potenza assorbita quando l’entità si troverà in stato “ON” e quale sia quella, eventuale, a riposo; la “Linear” invece permetterà di configurare il range operativo di potenza, la potenza di idle e altri disparati parametri, i quali sono tutti spiegati qui.

Completata la configurazione sulla base delle proprie esigenze, i sensori verranno creati conseguentemente.

Contribuire

In chiusura, un accenno a un tema già trattato ma importante, ovvero quello della contribuzione di tutti all’accrescita di questo interessante ed efficace progetto.

Lo sviluppatore di PowerCalc mette a disposizione un pratico tool in grado di immagazzinare informazioni utili alla “modellazione” dei profili di calcolo dei vari device presenti sul mercato: se il vostro non è presente, valutate la possibilità di dare una mano al progetto sfruttando il tool e seguendo la procedura per l’inclusione del vostro dispositivo. Ne beneficerete voi stessi e l’intera community.

Dotarsi del tool di PowerCalc non è particolarmente complesso: la procedura è descritta qui. e prevede sostanzialmente di utilizzare Docker per istanziare un piccolo container contenente l’app; le tecniche di raccolta delle informazioni sono poi spiegate qui, assieme alla procedura per l’invio delle informazioni raccolte.

⚠️ 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. Se ti sei perso, a tua disposizione c'è la mappa.