Stop met het najagen van perfecte aanwezigheidsdetectie in Home Assistant
Wanneer ik automatiseringen in Home Assistant maak, streef ik er altijd naar om ze zo goed mogelijk te laten werken. Lange tijd probeerde ik echter perfectie te bereiken met mijn aanwezigheid-gebaseerde automatiseringen. Ik voelde me veel gelukkiger toen ik stopte met streven naar het onmogelijke.
De mythe van de feilloze sensor
Niemand is perfect
Het gebruik van een bewegingssensor om een licht aan te doen is een klassieke automatisering en een die veel mensen vroeg in hun slimme huis avontuur instellen. Het basisconcept werkt goed; een bewegingssensor kan een automatisering activeren om je licht aan te doen wanneer je een kamer binnenloopt.
De problemen ontstaan wanneer je wilt dat het licht uitgaat als je weggaat. Een bewegingssensor kan niet zien wanneer je stilzit en tv kijkt, dus de lichten kunnen plotseling uitgaan. Het gebruik van een aanwezigheidsensor is bedoeld om dit probleem op te lossen.
Zelfs de beste aanwezigheidsmelders werken echter niet altijd perfect. Af en toe beslissen mijn aanwezigheidsmelders ineens dat er niemand in een kamer is voor een seconde of twee voordat ze van gedachten veranderen. Dit zorgde er vroeger voor dat mijn lichten af en toe voor een fractie van een seconde uitgingen, wat natuurlijk een beetje irritant is.
Het is onredelijk om te verwachten dat een slimme huissensor altijd volledig nauwkeurig is. We maken allemaal fouten, en slimme huisapparaten zijn daarop geen uitzondering. Soms verliezen ze even de stroom of raken ze gewoon in de war. Een waterdichte sensor bestaat gewoonweg niet.
Dingen gaan beter zodra je stopt met perfectie te verwachten
Niet voorbereiden en jezelf voorbereiden op falen
Zodra je begint te werken met de gedachte dat je sensoren nooit perfect zullen zijn, kun je automatiseringen maken die hun beperkingen compenseren. Met mijn aanwezigheidsensoren was dit zo eenvoudig als het toevoegen van een kleine cooldown-timer, zodat de lichten niet onmiddellijk uit zouden gaan wanneer aanwezigheid niet langer werd gedetecteerd. Dit stopte mijn lichten van het uitgaan als de sensor even wiebelde, en de situatie verbeterde aanzienlijk.
Het is veel eenvoudiger om je automatisering te creëren met af en toe een fout in gedachten dan om later terug te moeten gaan en de problemen op te lossen zodra ze onvermijdelijk optreden. Als je het ergste aanneemt, kun je een automatisering maken die meteen beter werkt, in plaats van deze achteraf te moeten repareren wanneer er iets misgaat.
Bayesiaanse logica voor de overwinning
Meerdere signalen geven meer vertrouwen
Een nog betere denkwijze is om automatiseringen te bouwen die niet afhankelijk zijn van één enkele bron van waarheid. Als je hele automatisering is opgebouwd rond één sensor, dan werkt je automatisering ook niet goed als die sensor faalt. Het is veel beter om meerdere signalen te gebruiken om te bepalen of een kamer bezet is of niet.
Hier is waar Bayesiaanse sensoren hun gewicht in goud waard zijn. Ze kunnen behoorlijk ingewikkeld zijn om op te zetten, omdat je veel ruwe waarschijnlijkheden moet uitzoeken. Zodra je echter een Bayesiaanse sensor werkend hebt, kan deze veel betrouwbaarder zijn dan het gebruik van een enkele aanwezigheidsensor.
Je kunt een hele reeks signalen gebruiken om te helpen de waarschijnlijkheid te schatten dat een kamer bezet is. Dit kan informatie omvatten van extra sensoren zoals bewegingssensoren, evenals apparaatvolgers, de status van mediaplayers en smart-tv's, of de lichten aan zijn, en zelfs patronen zoals hoe vaak je een specifieke kamer gebruikt en op welke tijdstippen van de dag je deze gebruikt. Al deze gegevens kunnen worden gecombineerd om een redelijk nauwkeurige schatting te geven of de kamer bezet is, wat veel stabieler kan zijn dan afhankelijk zijn van een sensor die af en toe kan uitvallen.
Volmaakte perfectie is de moeite niet waard
Soms is goed genoeg gewoon goed genoeg
Zelfs met al deze signalen kan je automatisering echter af en toe nog steeds niet correct werken. Er kunnen randgevallen zijn die je niet had overwogen of dingen buiten je controle. De verleiding is om steeds meer toe te voegen aan je automatisering om deze randgevallen of eventualiteiten te dekken.
Het probleem is dat er altijd net één ding meer is dat je aan je automatisering zou kunnen toevoegen om dichter bij perfectie te komen. Op een gegeven moment is de hoeveelheid moeite die nodig is om dingen te repareren het gewoon niet waard. Als je automatisering 998 keer van de 1.000 werkt, is het waarschijnlijk niet de beste besteding van je tijd om drie dagen te besteden aan het uitzoeken hoe je dat nummer kunt verhogen naar 999 keer van de 1.000.
Als je automatisering slechts zelden faalt, is dat waarschijnlijk prima. Het is het niet waard om je haar uit te trekken om het probleem te proberen op te lossen als het ergste dat gebeurt is dat je licht een halve seconde uitgaat eens in de drie maanden. Leer er mee te leven en besteed de tijd aan iets dat nuttiger zal zijn.
Perfect is de vijand van goed
Streven naar perfectie is nobel, maar het zal uiteindelijk waarschijnlijk een vruchteloze taak zijn. Je slimme huis hoeft niet helemaal perfect te zijn; het hoeft alleen maar goed genoeg te zijn. Al die tijd die je besteedt aan het proberen perfectie te bereiken, kan waarschijnlijk beter aan iets anders besteed worden.



