Statussen, geschiedenis en gebeurtenissen bekijken
In het vorige hoofdstuk heb je een slimme stekker aan Home Assistant toegevoegd. Daarmee heb je nu iets belangrijks bereikt: Home Assistant kan niet alleen…
In het vorige hoofdstuk heb je een slimme stekker aan Home Assistant toegevoegd. Daarmee heb je nu iets belangrijks bereikt: Home Assistant kan niet alleen informatie tonen, maar ook daadwerkelijk met een apparaat communiceren.
Voordat je die slimme stekker automatisch gaat schakelen, is het verstandig om eerst te kijken welke informatie Home Assistant over zo’n apparaat bijhoudt.
Dat helpt je straks bij het maken van automatiseringen. Een automatisering werkt namelijk bijna altijd met veranderingen: een lamp gaat aan, een temperatuur wordt hoger, iemand komt thuis of een sensor detecteert beweging.
In dit hoofdstuk ga je daarom nog niets automatiseren. Je gaat eerst kijken wat Home Assistant allemaal kan waarnemen en onthouden.
Je leert:
- wat een status is;
- hoe je de huidige status van een apparaat of entiteit bekijkt;
- hoe je in de geschiedenis kunt zien wat er eerder is gebeurd;
- wat het logboek laat zien;
- en wat Home Assistant bedoelt met een gebeurtenis.
Daarmee leg je de basis voor het volgende hoofdstuk, waarin je je eerste eenvoudige automatisering gaat maken.
Eerst even terug naar de slimme stekker
De slimme stekker die je in het vorige hoofdstuk hebt toegevoegd, bestaat in Home Assistant uit één of meer entiteiten.
Waarschijnlijk heb je bijvoorbeeld een entiteit die ongeveer zo heet:
switch.slimme_stekker
De precieze naam kan bij jou anders zijn.
Zo’n entiteit heeft altijd een bepaalde status.
Bij een schakelaar is dat meestal eenvoudig:
- on – de stekker staat aan;
- off – de stekker staat uit.
Andere apparaten kunnen heel andere statussen hebben.
Een temperatuursensor kan bijvoorbeeld de status:
21,4 °C
hebben.
Een bewegingssensor kan bijvoorbeeld aangeven:
Beweging gedetecteerd
of:
Geen beweging
Home Assistant kijkt dus voortdurend naar de toestand van apparaten en sensoren.
Die toestand noemen we de status.
Waarom een status zo belangrijk is
Een dashboard laat je vooral zien wat er nu gebeurt.
Maar voor automatiseringen is dat niet altijd voldoende.
Stel dat je later wilt zeggen:
Als de temperatuur lager wordt dan 18 °C, zet dan een verwarming aan.
Home Assistant moet dan weten wat de huidige temperatuur is.
Of:
Als de slimme stekker uit staat, zet hem om 08:00 uur aan.
Dan moet Home Assistant kunnen controleren of die stekker op dat moment on of off is.
De status van een entiteit is daarom een van de belangrijkste stukjes informatie binnen Home Assistant.
Je kunt het vergelijken met een meetinstrument in De Werkplaats.
Voordat je iets verandert, kijk je eerst naar de huidige situatie.
De huidige status bekijken
Open Home Assistant en ga naar:
Instellingen → Apparaten & diensten → Entiteiten
Je ziet hier een lijst met entiteiten die Home Assistant kent.
Zoek de entiteit van de slimme stekker die je in het vorige hoofdstuk hebt toegevoegd.
Je kunt hiervoor het zoekveld gebruiken.
Klik vervolgens op de entiteit.
Home Assistant laat nu meer informatie zien.
Afhankelijk van het apparaat kun je onder andere zien:
- de naam van de entiteit;
- het apparaat waarbij de entiteit hoort;
- de huidige status;
- wanneer de status voor het laatst is gewijzigd;
- en soms extra informatie over de entiteit.
Bij een slimme stekker zal de belangrijkste status waarschijnlijk Aan of Uit zijn.
Probeer het zelf
Kijk eerst naar de status van de slimme stekker.
Voorspel daarna wat er zal gebeuren als je hem vanaf het Home Assistant-dashboard inschakelt.
Schakel de stekker vervolgens in.
Kijk daarna opnieuw naar de status.
Je zou moeten zien dat deze verandert van:
off
naar:
on
Schakel hem daarna weer uit.
De status verandert opnieuw.
Dat klinkt misschien vanzelfsprekend, maar je hebt hier iets belangrijks gezien:
Home Assistant ziet een verandering van toestand.
Precies zulke veranderingen kunnen we later gebruiken om automatiseringen te starten.
Status en statusverandering zijn niet hetzelfde
Het verschil tussen een status en een statusverandering is belangrijk.
Een slimme stekker kan bijvoorbeeld al twintig minuten aanstaan.
De status is dan:
on
Maar er gebeurt op dat moment niets nieuws.
Pas wanneer de stekker verandert van:
off
naar:
on
is er sprake van een statusverandering.
Dat verschil wordt straks belangrijk.
Een automatisering kan namelijk bijvoorbeeld reageren op:
de slimme stekker wordt ingeschakeld
maar ook controleren:
de slimme stekker staat aan
Het eerste gaat over een verandering.
Het tweede gaat over de huidige toestand.
Kijken wat er eerder is gebeurd
Home Assistant kijkt niet alleen naar wat er nu gebeurt. Van veel entiteiten wordt ook bijgehouden hoe hun status in de loop van de tijd is veranderd.
Dat kun je bekijken via de geschiedenis.
Ga in het menu naar:
Geschiedenis
Je ziet hier grafieken en tijdlijnen van verschillende entiteiten.
Zoek de slimme stekker.
Als je hem een paar keer hebt in- en uitgeschakeld, zou je die veranderingen hier terug moeten kunnen zien.
Bij een schakelaar zie je bijvoorbeeld periodes waarin hij aan of uit stond.
Bij een temperatuursensor krijg je meestal een grafiek.
Daardoor kun je bijvoorbeeld zien:
- wanneer een lamp is aangegaan;
- hoelang een stekker ingeschakeld is geweest;
- hoe de temperatuur gedurende de dag veranderde;
- wanneer beweging werd gedetecteerd.
Geschiedenis verandert Home Assistant van een systeem dat alleen zegt wat er nu gebeurt in een systeem waarmee je ook kunt onderzoeken wat er eerder is gebeurd.
Een klein experiment
Laten we dat bewust testen.
- Kijk hoe laat het ongeveer is.
- Zet de slimme stekker aan.
- Laat hem even aanstaan.
- Zet hem daarna weer uit.
- Open vervolgens Geschiedenis.
Kun je het moment terugvinden waarop je de stekker hebt aangezet?
En het moment waarop je hem weer hebt uitgezet?
Als dat lukt, weet je dat Home Assistant de wijzigingen niet alleen heeft gezien, maar ook heeft opgeslagen.
Zie je niets?
Controleer dan eerst of je naar de juiste entiteit kijkt.
Het komt regelmatig voor dat één apparaat meerdere entiteiten heeft.
Verander niet meteen allerlei instellingen.
Controleer eerst één ding tegelijk:
- gebruik je de juiste entiteit?
- verandert de huidige status wel?
- kijk je naar het juiste tijdstip?
Een fout of onverwacht resultaat is hier juist nuttige informatie. Je probeert te ontdekken waar Home Assistant zijn informatie vandaan haalt.
Het logboek bekijken
Naast de geschiedenis heeft Home Assistant ook een logboek.
Geschiedenis en logboek lijken op elkaar, maar ze hebben een ander doel.
De geschiedenis laat vooral zien hoe een status zich in de tijd heeft ontwikkeld.
Het logboek probeert meer te beschrijven wat er is gebeurd.
Open:
Logboek
Afhankelijk van je installatie zie je hier bijvoorbeeld meldingen zoals:
- een schakelaar is ingeschakeld;
- een lamp is uitgeschakeld;
- een sensor heeft beweging gedetecteerd;
- een automatisering is uitgevoerd.
Bij onze slimme stekker zou je bijvoorbeeld kunnen zien dat deze op een bepaald tijdstip is in- of uitgeschakeld.
Later, wanneer je meer apparaten en automatiseringen hebt, wordt dit bijzonder handig.
Stel dat in De Werkplaats ineens om 22:14 uur een lamp is aangegaan terwijl je niet weet waarom.
Dan kun je in het logboek terugzoeken wat er rond dat tijdstip gebeurde.
Misschien zie je dan dat:
- een bewegingssensor actief werd;
- een automatisering startte;
- en daardoor de lamp werd ingeschakeld.
Het logboek wordt daarmee een hulpmiddel om het gedrag van je slimme huis te begrijpen.
Geschiedenis of logboek?
Je kunt het verschil ongeveer zo onthouden:
Geschiedenis
Hoe veranderde deze waarde in de loop van de tijd?
Logboek
Wat gebeurde er op dat moment?
Voor een temperatuursensor is de geschiedenis vaak het interessantst.
Je wilt bijvoorbeeld een grafiek zien van de temperatuur gedurende de afgelopen 24 uur.
Voor een automatisering kan het logboek juist interessanter zijn.
Je wilt dan weten:
Waarom ging deze lamp eigenlijk aan?
Beide onderdelen vullen elkaar aan.
Wat is een gebeurtenis?
Er is nog een begrip dat je regelmatig zult tegenkomen: een gebeurtenis, of in het Engels een event.
Een gebeurtenis is een bericht binnen Home Assistant dat zegt:
Er is iets gebeurd.
Denk bijvoorbeeld aan:
- Home Assistant is gestart;
- een automatisering is geactiveerd;
- iemand drukt op een knop;
- een apparaat meldt nieuwe informatie.
Je hoeft gebeurtenissen op dit moment nog niet technisch te kunnen gebruiken.
Het belangrijkste is dat je begrijpt dat Home Assistant voortdurend informatie ontvangt en verwerkt.
Sommige informatie wordt opgeslagen als een status.
Andere informatie is vooral een melding dat er op dat moment iets heeft plaatsgevonden.
Status of gebeurtenis?
Stel dat je een deurcontact in De Werkplaats hebt.
De status kan zijn:
open
of:
gesloten
Dat is een toestand die enige tijd kan blijven bestaan.
Een gebeurtenis lijkt meer op:
Er werd zojuist op een knop gedrukt.
Zo'n druk op de knop duurt niet minutenlang. Het gebeurde op één specifiek moment.
Daarom worden sommige dingen beter als gebeurtenis weergegeven en andere als status.
Voor je eerste automatiseringen zul je vooral met statussen werken. Toch is het goed dat je het begrip gebeurtenis alvast kent, omdat je het later steeds vaker tegenkomt.
Attributen: extra informatie naast de status
Een entiteit heeft meestal één hoofdstatus, maar kan daarnaast extra informatie bevatten.
Deze extra informatie noemen we attributen.
Een temperatuursensor kan bijvoorbeeld als status hebben:
21,4
en als attribuut:
unit_of_measurement: °C
Een lamp kan naast de status on bijvoorbeeld informatie bevatten over:
- helderheid;
- kleur;
- kleurtemperatuur.
Je hoeft attributen nu nog niet uit je hoofd te leren.
Onthoud alleen:
Een entiteit heeft een status en kan daarnaast aanvullende eigenschappen hebben.
Later kunnen ook die eigenschappen bruikbaar zijn in automatiseringen.
Ontwikkelaarstools: onder de motorkap kijken
Home Assistant heeft ook een gedeelte waarmee je nauwkeuriger kunt bekijken wat het systeem zelf ziet.
Ga naar:
Ontwikkelaarstools → Statussen
De precieze benaming kan afhankelijk van je Home Assistant-versie iets verschillen.
Zoek hier de entiteit van je slimme stekker.
Je ziet waarschijnlijk iets zoals:
switch.slimme_stekker
met daarnaast de status:
on
of:
off
Ook kun je hier de attributen bekijken.
Dit scherm is vooral handig wanneer je later automatiseringen maakt en wilt controleren welke exacte waarde Home Assistant gebruikt.
De interface kan bijvoorbeeld netjes Aan tonen, terwijl Home Assistant intern de waarde:
on
gebruikt.
Dat verschil is normaal.
De gebruikersinterface probeert informatie prettig leesbaar te maken. Automatiseringen werken vaak met de onderliggende waarden.
Verander hier nog niets
Ontwikkelaarstools geven je toegang tot onderdelen waarmee je Home Assistant rechtstreeks kunt testen en beïnvloeden.
Dat is nuttig, maar we gebruiken ze in deze gids voorlopig vooral om te kijken.
Verander daarom niet zomaar instellingen waarvan je nog niet weet wat ze doen.
Onze werkwijze blijft:
- voorspellen;
- één ding veranderen;
- waarnemen wat er gebeurt;
- controleren of dat overeenkomt met je verwachting.
Op die manier blijft duidelijk welke verandering welk resultaat veroorzaakt.
Wat Home Assistant nu al weet
Je hebt inmiddels een behoorlijk belangrijke stap gezet.
Home Assistant weet van je slimme stekker:
- welk apparaat het is;
- welke entiteit erbij hoort;
- wat de huidige status is;
- wanneer die status verandert;
- en wat er eerder met de entiteit is gebeurd.
Daarmee hebben we eigenlijk alle ingrediënten voor een eenvoudige automatisering.
Home Assistant kan namelijk:
waarnemen
De status van iets verandert.
controleren
Er geldt een bepaalde voorwaarde.
en daarna:
handelen
Voer een actie uit.
Dat is precies wat we in het volgende hoofdstuk gaan doen.
Even controleren
Voordat je verdergaat, moet je met je slimme stekker het volgende kunnen doen:
- de stekker vanuit Home Assistant in- en uitschakelen;
- de huidige status bekijken;
- in de geschiedenis zien wanneer hij aan of uit stond;
- in het logboek terugvinden dat er iets met de stekker is gebeurd;
- de entiteit terugvinden bij de ontwikkelaarstools.
Lukt één van deze stappen niet, probeer dan eerst te ontdekken waar het verschil zit voordat je verdergaat.
Juist dat controleren maakt straks het oplossen van problemen met automatiseringen een stuk eenvoudiger.
Op naar je eerste automatisering
Tot nu toe heb je Home Assistant vooral verteld welke apparaten er zijn en heb je gekeken naar de informatie die ze leveren.
In het volgende hoofdstuk verandert dat.
Daar laat je Home Assistant voor het eerst zelf reageren op een situatie.
We bouwen een eenvoudige automatisering rond de slimme stekker die je al hebt toegevoegd.
Daarbij gebruiken we precies wat je in dit hoofdstuk hebt gezien:
er gebeurt iets → Home Assistant merkt dat op → Home Assistant voert een actie uit.
Dat is het begin van automatiseren.