Bekend merk Smart apparatuur voor de Chinese markt.
Aanwezigheidsdetectie special
Aanwezigheidsdetectie: Que?
Wat is dat nu precies? Aanwezigheidsdetectie (of presence detection in het Engels). In basis is het eenvoudig: een systeem dat kan 'zien' of er iemand aanwezig is. Maar er zijn natuurlijk vele varianten op. In deze special zal ik een onderscheid maken tussen twee vormen van aanwezigheidsdetectie:
- Aanwezigheid in een bepaalde ruimte
- Aanwezigheid in een gebouw/woning

Aanwezigheid in een ruimte
We beginnen met de aanwezigheidsdetectie in een ruimte. Hiervoor is het belangrijk dat het systeem binnen de wanden van de ruimte kan 'zien' of er iemand aanwezig is. Het woordje 'zien' staat hierbij steeds tussen aanhalingsteken omdat niet alle technieken gebaseerd zijn op visuele input. Om iets dergelijks voor elkaar te krijgen zijn er vele technieken beschikbaar, maar de meest voorkomende werken op basis van:
- PIR detectie (infrarood)
- Beeldherkenning
- Audio herkenning
- Radar
- Beacons (BLE)
- Vibratie sensors
- knop/RFID/fingerprint/iris scan/spraakopdracht/etcetera
Fysieke of softwarematige knop | |
Voordelen:
| Nadelen
|
Dat betekent dat we dus een systeem nodig hebben die op de één of andere manier zelfstandig kan bepalen of er iemand aanwezig is, zonder feitelijke input van deze persoon. De meest voor de hand liggende techniek (en ook meest gebruikte techniek) is dan PIR, ofwel Passieve InfraRood detectie. Iedereen kent dergelijke sensoren ongetwijfeld. Ze zitten veel in kantoorpanden en zelfs de cheap-ass buitenlampen die automatisch aanspringen zodra er iemand langsloopt gebruiken deze techniek. Maar lang niet iedereen weet hoe PIR nu werkt, en als je PIR wilt inzetten voor je domotica is het wel handig om te weten hoe dit systeem werkt. Daarom, een korte uitleg in Jip-en-Janneke-taal.
Een PIR detector is niet meer dan een sensor die wisselingen in infrarood licht detecteert. Op ieder moment is er een bepaalde hoeveelheid infrarood licht aanwezig (tenzij het pikkedonker is). De sensor pikt dit op maar doet daar weinig mee. Pas wanneer er een groot verschil ontstaat in de hoeveelheid infrarood licht komt de sensor in actie. Hoe groot dit verschil moet zijn is afhankelijk van de gevoeligheid van betreffende sensor. Neemt de hoeveelheid infraroodlicht plots toe zal de sensor een positief signaal doorsturen, neemt de hoeveelheid infraroodlicht plots af zal er een negatief signaal doorgestuurd worden. Een chip in de detector zal op basis van deze wisselingen bepalen wanneer er sprake is van de aanwezigheid van een persoon. Immers: mensen zijn warmbloedig en warmte straalt naar buiten in de vorm van infrarood licht! (dit is ook de reden waarom je een PIR sensor voor de gek kunt houden door jezelf te verbergen achter een materiaal dat warmte absorbeert... Al is dit afhankelijk van de gevoeligheid van de sensor aangezien je daarmee uiteraard ook de hoeveelheid infrarood licht vanuit de omgeving beïnvloedt!). Voor domotica zijn er vele PIR detectoren beschikbaar. Deze verschillen in kwaliteit, enerzijds door de gevoeligheid van de sensor anderzijds door de achterliggende ingebouwde intelligentie die op basis van input van de sensor bepaalt of er sprake is van de aanwezigheid van een persoon. Bij duurdere exemplaren is het soms ook mogelijk de gevoeligheid aan te passen zodat je bijvoorbeeld kunt zorgen dat een mens wél gedetecteerd wordt, maar een (kleiner) huisdier niet... PIR detectoren zijn over het algemeen redelijk betrouwbaar maar hebben wel een aantal belangrijke beperkingen. Zo kunnen ze te gevoelig of juist niet gevoelig genoeg blijken (en is dit niet bij ieder apparaat in te stellen!) waardoor ze respectievelijk of bijvoorbeeld erg beïnvloedbaar zijn door (huis)dieren die in de ruimte bewegen of juist niet altijd reageren op de aanwezigheid van een persoon. Tevens is het goed te weten dat de sensoren enkel in rechte lijnen kunnen 'kijken'. Door het gebruik van slimme lenzen (zogenaamde Fresnel lenzen, voor de geïnteresseerde) is het zichtveld wel enorm te verbreden, maar een hoek om 'kijken' kan de PIR detector niet... Dus hang jij languit op de bank en staat de sensor achter die bank, dan zal de sensor je niet waarnemen!
PIR detectie | |
Voordelen:
| Nadelen
|
Een andere optie om de aanwezigheid in een ruimte te detecteren is door gebruik te maken van beeldherkenning. Een camera neemt de ruimte waar en software registreert of er beweging wordt waargenomen. De effectiviteit van een dergelijk systeem wordt in grote mate bepaald door de achterliggende software en in mindere mate door de kwaliteit van de hardware. Al kan een algoritme in de software uiteraard beter zijn werk doen wanneer het aangeleverde beeldmateriaal van hogere kwaliteit is. Er zijn verschillende vormen van software mogelijk. De meest eenvoudige herkent iedere beweging binnen het blikveld van de camera en zal dus ook reageren op huisdieren of gordijnen die bewegen in de wind. Meer geavanceerdere software is in staat om de menselijke vorm te herkennen en zal dus enkel reageren op de aanwezigheid van een mens in de ruimte. Nog geavanceerdere software zal in staat zijn om nog gedetailleerdere vormen te ontdekken en kan dus bijvoorbeeld gezichten herkennen en op basis daarvan niet enkel bepalen dat er een mens in de ruimte is, maar zelfs welke persoon dit betreft! Dit is mogelijk met behulp van kunstmatige intelligentie welke getraind is om bepaalde gezichten te herkennen, zoals de gezichten van de bewoners van het huis waar het systeem geïnstalleerd is. Met name deze laatste optie biedt zeer interessante mogelijkheden voor domotica. Denk bijvoorbeeld aan verlichting die zich aanpast aan de persoonlijke voorkeuren van de persoon die binnen loopt en mogelijk dienst favoriete televisiekanaal vast inschakelt... Vooralsnog worden deze technieken binnen de domotica echter nog relatief weinig gebruikt. Met name omdat het veel maatwerk vergt en daarom enkel mogelijk is voor mensen met veel kennis (en tijd) of veel geld (om specialisten hiervoor in te huren). Maar de ontwikkelingen op dit vlak gaan heel erg snel. Dus het is een kwestie van tijd voordat dit relatief eenvoudig in ieder domotica systeem ingebouwd kan worden... Zelfs voor de niet-die-hard domotica-fanaat!
Beeldherkenning | |
Voordelen:
| Nadelen
|
Audio herkenning kan op twee manieren gebruikt worden. Het is mogelijk om simpelweg een microfoon te plaatsen welke geluiden opvangt en op basis van de ingestelde gevoeligheid hieruit afleidt of er iemand aanwezig is. Of er kan gebruik gemaakt worden van echolocatie. Beide technieken worden weinig toegepast omdat ze voor domotica doeleinden minder geschikt zijn. Enkel audio signalen opvangen is tamelijk onbetrouwbaar, immers wanneer bijvoorbeeld de televisie aanstaat zal het systeem blijven denken dat er mensen aanwezig zijn. Zelfs wanneer deze al lang vertrokken zijn. Echo locatie zou in combinatie met de juiste achterliggende software die vormen en/of bewegingen detecteert prima bruikbaar kunnen zijn, maar het is onnodig complex. Er wordt hetzelfde bereikt als met bijvoorbeeld Radar, PIR of beeldherkenning, maar tegen hogere kosten en al snel lagere betrouwbaarheid (tenzij er gebruik gemaakt wordt van erg geavanceerde en dus kostbare systemen).
Audio herkenning | |
Voordelen:
| Nadelen
|
Radar is een opkomende techniek binnen de domotica. Het heeft alle voordelen van PIR, maar het kan ook nog eens tot een bepaalde mate door objecten heen kijken! De technologie van Radar werkt met radiogolven die worden verzonden. Wanneer een radiogolf tegen een object aankomt zal een deel ervan terug gekaatst worden. De radar detector zal het eigen teruggekaatste signaal herkennen en kan op basis daarvan berekenen waar een bepaald object zich bevindt. Het is daarmee vergelijkbaar met echolocatie, maar dan een stuk betrouwbaarder omdat gebruik gemaakt wordt van zeer specifieke en zeer kleine (radio)golven. Radar wordt momenteel binnen de domotica nog weinig gebruikt, vooral doordat het een relatief prijzige techniek is. Waarschijnlijk zal het in de toekomst vaker gebruikt gaan worden en ook nu al zijn er systemen verkrijgbaar die werken met vaak een combinatie van radar en PIR.
Radar | |
Voordelen:
| Nadelen
|
Beacons of iBeacons zijn kleine apparaatjes die een bepaald bluetooth signaal uitzenden. Deze kan door een app op een mobiel apparaat opgevangen worden en dan gebruikt worden voor plaatsbepaling. Het is hiermee mogelijk om behoorlijk nauwkeurig de plaats te bepalen en via de software in de app kan van alles aangestuurd worden, zoals domotica! Deze techniek was een jaar of 5 geleden erg in opkomst. Met name winkelketens wilde het grootschalig in gaan zetten om bijvoorbeeld plaatsgebonden aanbiedingen te doen terwijl mensen door de winkel lopen. In een app krijg je dan een aanbieding van een product dat in het rek voor je neus staat. Maar, inmiddels vijf jaar later zien we dergelijke technieken in winkels nog weinig terug.... Toch? Zonder dat veel mensen het weten maken diverse winkels wel degelijk gebruik van deze technologie of experimenteren er op zijn minst mee. Ze gebruiken het echter niet om reclame boodschappen te pushen (daar zitten consumenten niet op te wachten!), maar om informatie te vergaren over hoe consumenten zich door de winkels heen bewegen. Dezelfde technologie is ook prima bruikbaar binnen de domotica. Al heeft het vooralsnog nog geen vlucht genomen... Binnen de domotica wordt de techniek vooralsnog meer gebruikt voor de detectie van aanwezigheid binnen de woning. Wellicht is dat ook een meer praktische toepassing aangezien het anders een vereiste is dat je de gehele tijd met de telefoon in huis rond loopt.... Zodra er echter iemand een goede app hiervoor zou bedenken die werkt op een smartwatch zou het echter ineens weer heel interessant kunnen worden! Vooralsnog ben ik daarover nog niks tegen gekomen... Maar wat mij betreft is dit een technologie om de komende jaren goed in de gaten te houden!
Beacons | |
Voordelen:
| Nadelen
|
Tot slot de vibratie sensor. Een gevoelige vibratie sensor zou bepaalde trillingen op kunnen vangen en op basis daarvan kunnen bepalen of er iemand aanwezig is in de ruimte. In feite is dit een variant op de audio herkenning aangezien de meeste vibraties het gevolg zullen zijn van geluidstrillingen. Daarmee is deze technologie voor de detectie van personen, net als audio detectie niet erg geschikt.
Vibratie sensor | |
Voordelen:
| Nadelen
|
De verwachting is dat aanwezigheidsdetectie binnen de domotica steeds belangrijker gaat worden. Domotica waarmee lichtknoppen vervangen worden door knoppen in een app of spraakopdrachten zijn erg leuk door het hoge gadgetgehalte. Maar in feite niet heel erg praktisch! Zo lang er nog een handeling verricht moet worden is het voordeel ten opzichte van het ouderwetse lichtknopje immers niet erg groot! Dit in combinatie met de diverse technologieën die snel ontwikkelen en ook steeds betaalbaarder worden maakt dat de toepassingen op het gebied van locatiebepaling steeds breder zullen worden! Met name wanneer verschillende technologieën intelligent samen gaan werken wordt het erg interessant! Nu al zijn er sensoren beschikbaar die PIR en radar combineren. In de toekomst verwacht ik dat beacons ook nog wel eens erg interessant kunnen gaan worden (ondanks dat de toepassingen daarvan nog erg beperkt zijn, terwijl men een jaar of vijf geleden erg hoge verwachtingen had!). We zullen zien wat de toekomst brengt....

Aanwezigheid in een gebouw/woning
Hieronder versta ik het detecteren van iemand in (de buurt van) een gebouw of woning. Dat vergt wezenlijk andere technieken dan aanwezigheidsdetectie in een ruimte. Het nadeel is dat een gebouw/woning uit meer ruimtes bestaat. Dat maakt technieken met een bepaald zichtveld minder praktisch. Het is daarentegen gemakkelijker omdat het bij deze detectie niet relevant is te 'zien' waar iemand zich precies bevindt. En daardoor zijn er een aantal relatief eenvoudige technieken beschikbaar om dit voor elkaar te krijgen. Deze blijken in de praktijk echter niet allen even betrouwbaar te zijn! Ik benoem hier:
- Geofencing
- Pingen
- Smart lock/NFC tag / beacon
- Slim gebruik van de technieken mbt aanwezigheid in een ruimte
- All of the above
Geofencing | |
Voordelen:
| Nadelen
|
Vergelijkbaar met geofencing is de techniek waarbij je devices 'pingt' die je als gebruiker bij je draagt. Hier is wederom de smartphone het meest voor de hand liggend. Pingen is een techniek waarbij een computer controleert of een bepaald ander apparaat via een IP-adres bereikbaar is. Als je instelt dat je smartphone binnenshuis altijd met hetzelfde (statische) IP-adres verbinding maakt via WiFi is dit een manier om te controleren of iemand in de buurt is. Net als bij Geofencing is het hier wel een voorwaarde dat je de smartphone dan meeneemt wanneer je het huis verlaat. Voordeel is wel dat hiervoor ook andere devices geschikt zijn, denk aan bijvoorbeeld een smart horloge met Wifi-connectie! In de praktijk heb ik echter wel gemerkt dat een smart watch niet altijd verbinding maakt met Wifi omdat deze dat ook niet vaak nodig heeft zo lang er verbinding is met de telefoon... Tevens is een groot probleem met pingen de grote vertraging. Wanneer je eenmaal binnen het bereik bent van het Wifi netwerk kan het soms nog 1 a 2 minuten duren voor er verbinding gemaakt is en omdat pingen gedaan wordt met een bepaalde interval kan het nog eens 30 seconden of een minuut langer duren voordat het systeem daadwerkelijk doorheeft dat het apparaat daadwerkelijk verbonden is. Wanneer het gaat om bijvoorbeeld automatisch een alarm uitschakelen wanneer je voor de deur van de woning staat is deze techniek dus totaal ongeschikt (is mijn persoonlijke ervaring).
Pingen | |
Voordelen:
| Nadelen
|
Digitale toegangssystemen kunnen uiteraard ook gebruikt worden om de aanwezigheid in een gebouw te detecteren. Denk aan smart locks welke geopend en gesloten kunnen worden middels een app of NFC sleutel. Of alarmen die middels een NFC sleutel, pincode of bluetooth beacon in/uitgeschakeld kunnen worden. Hierbij geef je als bewoner/gebruiker van het gebouw zelf aan wanneer je binnenkomt en weg gaat. Deze informatie is uiteraard te koppelen aan de domotica!
Smart lock, NFC key/pas, bluetooth beacon | |
Voordelen:
| Nadelen
|
Wanneer je al systemen hebt om aanwezigheid in een ruimte te detecteren (zie bovenstaand) kun je deze uiteraard ook gebruiken voor de detectie van aanwezigheid in het gebouw. Immers: weet je domotica systeem dat je in de woonkamer aanwezig bent, dan kan deze dus ook 'bedenken' dat je wel in het huis zult zijn! Door al deze systemen te combineren heb je zonder toevoeging van apparaten of software de mogelijkheid om ook aanwezigheid in het huis/gebouw te detecteren. Uiteraard werkt dit enkel wanneer je in alle ruimtes in de woning dergelijke detectoren hebt... Al kun je hier middels een stukje intelligente software enigszins omheen werken. Bijvoorbeeld: Wanneer je aanwezigheid is gedetecteerd in een bepaalde ruimte blijft het systeem je als 'aanwezig' aanduiden totdat je de voordeur opent. Daarmee kun je enigszins ondervangen dat je smart home jou 'kwijt' raakt wanneer je in een ruimte bent zonder aanwezigheidssensoren...
Aanwezigheid in ruimte | |
Voordelen:
| Nadelen
|
Misschien het meest verstandig voor betrouwbare aanwezigheidsdetectie is toch wel het combineren van technieken. Zoals in de diverse lijstjes te zien hebben veel van de technieken toch een probleem met betrouwbaarheid of bepaalde afhankelijkheden. Door het combineren van technieken vergroot je de betrouwbaarheid en maak je jezelf minder afhankelijk van één bepaald apparaat. Ikzelf gebruik bijvoorbeeld een combinatie van geofencing, pingen en diverse PIR sensoren in huis. En dat werkt redelijk goed! Helaas gaat een enkele keer wel het alarm nog steeds af wanneer ik zelf het huis in kom. Dit komt doordat de geofencing functionaliteit in de door mij gebruikte Domoticz app toch niet altijd even betrouwbaar blijkt en pingen heeft een te grote vertraging.
Conclusie
Aanwezigheidsdetectie is lastige materie. Er zijn verschrikkelijk veel technieken beschikbaar, maar mijn ervaring is dat geen van deze volledig betrouwbaar is. Daarom is mijn enige advies: combineer meerdere technieken als je een betrouwbare aanwezigheidsdetectie wilt, ongeacht of het gaat om aanwezigheid in een gebouw of aanwezigheid in een bepaalde ruimte.
Wat betreft domotica en smart homes is aanwezigheidsdetectie wat mij betreft één van de kritische succesfactoren. Domotica wordt pas écht handig wanneer je dit goed ingericht hebt. Het maakt het namelijk mogelijk dat een woning (of kantoor, of...) 'intelligent' gaat reageren op wat de bewoners/gebruikers doen. Alle andere technieken met betrekking tot de aansturing van domotica (zoals aansturing via apps of spraak) zijn absoluut leuk en hebben een hoog gadget gehalte maar zijn in feite niet heel erg veel praktischer dan een 'ouderwets' (licht)knopje indrukken... Binnen de domotica industrie zie ik ook dat er steeds meer aandacht is voor aanwezigheidsdetectie. Er zijn steeds meer sensoren te koop (zie onderaan dit artikel) en ook de diverse software biedt steeds meer mogelijkheden. Ik voorzie dan ook dat er over enkele jaren nog veel meer technieken beschikbaar zijn dan in dit overzicht en dat ook de mainstream commerciële domotica toepassingen hier meer mee gaan doen...
Zelf ervaring met aanwezigheidsdetectie? Deel het via de comments! Vragen of opmerkingen? Laat het me weten. Via de comments of PM
Hardware
Hierbij een overzicht met diverse producten die te gebruiken zijn voor aanwezigheidsdetectie. Ik heb mij enigszins beperkt tot Xiaomi en Aqara omdat ik daar zelf de meeste (goede) ervaring mee heb. Er is uiteraard meer verkrijgbaar, dus zelf rondkijken is altijd aan te raden! Ook met betrekking tot compatibiliteit met de domotica systemen/software die je gebruikt.
PIR detectie (infrarood):
Xiaomi Mija Human Body Sensor(Affiliate)
Aqara Human Body Sensor(Affiliate)
SONOFF PIR2 IR detector(Affiliate)
Philips Hue Motion Sensor
Beeldherkenning
Xiaomi Smart IP Camera(Affiliate)
Aqara Smart IP Camera(Affiliate)
Foscam C1 IR camera(Affiliate)
Neo Coolcam(Affiliate)
Neo Coolcam outdoor(Affiliate)
Audio herkenning
Iedere microfoon of camera met ingebouwde microfoon
Radar
Nog niet echt commercieel verkrijgbaar?
DMBD TYXAL+
Beacons (BLE)
Bluetooth adapter(Affiliate)
Bluetooth dongle(Affiliate)
iBeacon patch(Affiliate)
Vibratie sensors
Aqara Vibration detector(Affiliate)
knop/RFID/fingerprint/iris scan/spraakopdracht/etcetera
Aqara wireless switch(Affiliate)
Aqara switch(Affiliate)
Aqara wall switch(Affiliate)
Aqara magic cube(Affiliate)
Xiaomi wireless witch(Affiliate)
Nest Mini
Geofencing
bv. Domoticz app
Smart lock/NFC tag / beacon
Aqara Smart Lock(Affiliate)
Aqara S2 Smart Lock(Affiliate)
Xiaomi Smart Lock(Affiliate)
Xiaomi Sherlock M1(Affiliate)
Kleine boodschap van de sponsor: Banggood heeft i.v.m. Black Friday grote kortingen op Smart Home producten! Neem eens een kijkje (en help mij aan wat centen om meer content te kunnen creëren, dus affiliate link!).
Deze special is op verzoek van één van mijn donateurs! Wil je ook doneren? Dat kan! Zie hier rechts hoe je eenmalig kunt doneren via Paypal of hoe je Patron kunt worden van dit blog/vlog!
Slaapkamer domotica (incl. LUA script!)
Wat moest er geautomatiseerd?
De slaapkamer kende nog geen domotica om een heel simpele reden: er was één lamp aan het plafond en één bedlamp. Daar valt weinig winst te behalen qua automatisering... Maar toen kreeg ik als bedankje voor het spreken op een conferentie ineens een Amazon giftcard van 100 dollar.... Tja. Ik wilde al lang een TV op de slaapkamer. Maar een TV in Amerika bestellen? Héél duur in de verzending en redelijk risico op schade tijdens de verzending. Geen optie dus... Maar een budget beamer? Dat kon wel! En dat leverde een leuk hobbyprojectje op...
De beamer moest budget opgehangen worden en ik had nog een 'antieke' versterker met speakers ergens liggen, dus die zouden onder het bed geplaatst worden. Daarnaast kon mijn Playstation 3 er mooi op aangesloten worden, want die lag ook enkel stof te vangen! Maar gevolg hiervan: om even TV te kijken zou ik dus allerlei apparaten in moeten schakelen die ik tevens allemaal enigszins uit het zicht wilde wegwerken en waarvan de aan/uitknop dus lastig bereikbaar is. Hier zou een intelligente schakeling een oplossing kunnen bieden! Bovendien wilde ik absoluut niet dat deze budget beamer ooit per ongeluk zou blijven draaien terwijl ik van huis ben wegens mogelijk brandgevaar. En tja, als ik dan toch bezig ben kan het bedlampje net zo goed meteen ook geautomatiseerd worden!
DIY
Allereerst een paar plaatjes van de DIY opstelling zoals hij geworden is. Een simpel Ikea kastje met glazen deurtje is omgetoverd tot een beamer-kast. Dat betekent dat ik wat gaten gemaakt heb zodat de snoeren er aan de achterzijde uit kunnen, maar belangrijker: er is een ventilator* ingebouwd. Deze is via USB aangesloten op de beamer en gaat dus automatisch aan als de beamer ingeschakeld wordt! Nette roostertjes* ervoor die wit gespoten zijn en ook de fan zelf is wit gespoten. De versterker is geplaatst in een nieuw bedkastje (ook Ikea) waar ik meteen dan ook maar een Qi draadloos oplaadpunt in gemaakt heb. Op die manier kan ik enerzijds de telefoon makkelijk opladen, maar tevens kan ik nu TV kijken via de mobiel op de beamer zonder mij zorgen hoeven te maken dat de accu leeg getrokken wordt. Op dat moment kan er immers geen laadkabel in de telefoon omdat de HDMI kabel daar al op aangesloten zit!
Alles getest: werkt perfect!
Domotica
Vervolgens kwam de domotica aan de beurt. Alle audiovisuele apparatuur ging in een verdeelstekker welke aangesloten is op een Xiaomi Smart Socket* (let op: alleen de Zigbee variant werkt met Domoticz! En een verloop-plug van Aziatisch stopcontact naar NL stopcontact is vereist). De bedlamp is aangesloten op een tweede Smart Socket. Schakelen van de apparatuur kan via een (dubbele) Xiaomi wall switch*, schakelen van de lamp via dezelfde switch én via een deur sensor*. Op die manier gaat mijn bedlamp automatisch aan zodra ik door de deur naar binnen loop en kan deze uit zichzelf uit gaan als ik de slaapkamer weer verlaat (nb. dat werkt bij mij omdat ik de deur toch altijd al daadwerkelijk sluit i.v.m. aanwezige katten die ik niet in de slaapkamer wil! Anders had hier wellicht beter iets slims gedaan kunnen worden met een IR sensor).
Uitdaging 1:
Nadat ik alle apparatuur geïnstalleerd had bleek meteen dat de Xiaomi switch en plugs niet goed gevonden werden door de hub. Ze waren te ver weg van de hub met teveel betonnen muren er tussen! Nu is het allemaal Zigbee protocol, en dat maakt gebruik van een zogenaamd mesh-netwerk. Ofwel, de verschillende apparaten geven de signalen aan elkaar door en zo komt het uiteindelijk terecht bij de hub. Maar: omdat het in de lucht houden van zo'n mesh-netwerk stroom kost doen enkel de apparaten die direct op stroom aangesloten dit. De meeste Xiaomi producten werken op batterij en zijn daarom geen onderdeel van de mesh... Ze versturen enkel signalen! Er moest dus tussen de hub en mijn slaapkamer een extra Smart plug komen... En dan hopen dat daarmee de afstand wel te overbruggen was. Een extra smart plug in de hal geplaatst, en: succes!! De slaapkamer is onderdeel geworden van mijn domotica infrastructuur.
Uitdaging 2:
Nu moest er een nieuw stukje code in Domoticz komen. Alleen deze kon niet gebruik maken van de Wall Switch omdat deze in Domoticz nog niet ondersteund werd (nb. in de laatste recente update is deze ondersteuning als het goed is wél toegevoegd! Heb zelf de update nog niet gedaan... Dus heb dat nog niet kunnen uitproberen).
De code zelf was redelijk simpel:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| commandArray = {} timenow = os.date("*t") minutesnow = timenow.min + timenow.hour * 60 if ((globalvariables['Security'] ~= 'Armed Away')) then if (devicechanged['Slaapkamerdeur']=='Open') and (otherdevices['Bedlamp']=='Off') and ((minutesnow >= 1200) or (minutesnow <= 480)) then commandArray['Bedlamp']='On FOR 60' print ("Bedlamp aan voor max 1 uur") elseif (devicechanged['Slaapkamerdeur']=='Open') and (otherdevices['Bedlamp']=='On') then commandArray['Bedlamp']='Off AFTER 10' print ("Bedlamp uit over 10 seconden") end else commandArray['Bedlamp']='Off' commandArray['Beamer']='Off' end return commandArray |
Allereerst werkt het script enkel wanneer ik niet van huis ben (dan staat het alarm op 'Armed Away'). Bovendien: mocht de lamp of beamer aan blijven staan, dan gaat deze vanzelf uit zodra het alarm (automatisch) ingeschakeld wordt wanneer ik het huis verlaat, al is dit helaas niet 100% betrouwbaar: de wijziging van alarm status triggert een script namelijk niet goed. Hier heb ik dus nog wat uitzoekwerk zitten!...
Ben ik wel aanwezig, dan zal tussen 8 uur 'savonds en 8 uur 's ochtends de lamp aan gaan wanneer de deur geopend wordt en de lamp uit staat. In het script wordt gerekend in minuten... Vandaar groter dan 1200 of kleiner dan 480 verstreken minuten op de dag. De lamp gaat op dat moment een uur aan. Mocht ik vergeten deze uit te zetten (bijvoorbeeld doordat ik in slaap val), dan gaat deze dus vanzelf weer uit na een tijdje.
Wordt de deur geopend terwijl de lamp aan staat, dan gaat deze na 10 seconden uit. Niet direct omdat ik dan in het donker sta... In mijn hal werkt de verlichting namelijk op een sensor en deze gaat veelal pas enkele seconden nadat ik de slaapkamer verlaat daadwerkelijk aan.
De Wall Switch kon ik niet opnemen in het script, deze heb ik dus ingesteld in de Mi Home App. Simpelweg schakelen van de smart plugs bij het indrukken van de knoppen. Doordat het bovenstaande script in/uitschakelen bepaalt door de status uit te lezen van de smart plug zitten beide systemen elkaar nooit in de weg! Zodra ik Domoticz geupdate heb zal ik de Wall Switch wellicht alsnog toevoegen in Domoticz.
Wat is er nodig om dit zelf te bouwen?
- 1x Aqara Gateway*: benodigd om de sensor, switch en smart sockets op aan te sluiten
- 2x Aqara Smart Socket Zigbee versie* (+ ik had 1 extra nodig om het signaal door te geven)
- 1x Aqara Dubbele draadloze Switch*
- 1x Aqara Deur sensor*
- 1x (Budget) beamer (+ eventueel aansluitkabels, extra audio apparatuur). De beamer die ik heb is niet meer te koop, maar misschien zoiets*?
- 1x 120 mm fan USB*
- 2x 120 mm fan guards*
- 1x Spuitbus wit
- 1x Ikea Eket Kastje
- 1 x Ikea Kallax inzet vitrinedeur
- 1x Ikea Nordmärke draadloze oplader
- 1x Ikea Trysil nachtkastje
- 1x Verdeeldoos
-------------------------
* Alle links naar Banggood zijn affiliate linkjes. Het is veelal daadwerkelijk de goedkoopste
(betrouwbare) leverancier, maar het staat een ieder (uiteraard) vrij ook elders te kijken, zoals Aliexpress of Gearbest. Veel producten zijn inmiddels ook (voor hogere prijzen) bij Nederlandse winkels te koop zoals bol.com. Nb. kopen via de affiliate link wordt uiteraard gewaardeerd. Alle eventuele opbrengsten gaan weer rechtstreeks terug in mijn blog/vlog en maken het mogelijk deze steeds van nieuwe content te blijven voorzien
Smart Terrarium
De woestijn in huis
Nabootsen van een woestijn, wat houdt dat dan in? Dat wil zeggen dat er overdag veel zon is en de temperatuur oploopt en 's nachts is het donker en koelt het flink af. Overdag is de luchtvochtigheid laag, 's nachts mag die best iets oplopen. In de winter zijn ook in de woestijn de dagen veel korter en de nachten langer waardoor het over de gehele dag genomen koeler is! Dat heeft de baardagaam echt nodig om een rustperiode te pakken (geen winterslaap, maar wel een winterrust).
Voorheen gebruikte ik hiervoor een stekkerdoos met timer. Die moest ik de hele tijd bijstellen om te zorgen dat de dagen richting de winter korter werden en in de lente geleidelijk aan weer langer. Veel gedoe en ook nog eens foutgevoelig... Bovendien kwam deze tropische zomer een probleem aan het licht... In mijn huis werd het maar liefst 30 graden en in het terrarium liep de temperatuur met alle lampen dus te hoog op! Regelmatig moest het licht in het terrarium dus even uit... Maar ja - ik kon het niet iedere dag in de gaten houden, immers moet ik ook gewoon werken!
Toen op een dag ook nog eens de timer kapot bleek kwam het eureka moment... Waarom niet automatiseren binnen mijn domotica systeem? Zo gezegd, zo gedaan.
Smart terrarium
In het terrarium kwam dus een sensor die de temperatuur en de luchtvochtigheid meet (en ook de luchtdruk, maar daar doe ik verder niks mee!). Deze kan ik uitlezen in Domoticz.
De lampen (warmtelamp én zonnelamp) van het terrarium sloot ik aan op een Smart plug en kan ik daarmee in en uitschakelen vanuit de software.
Vervolgens moest er een relatief eenvoudig scriptje geschreven worden dat er als volgt uitziet:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| commandArray = {} timenow = os.date("*t") minutesnow = timenow.min + timenow.hour * 60 if (tonumber(otherdevices['Terrarium temperatuur']) > 37) and uservariables['overheat']==0 then commandArray['Variable:overheat']= '1' elseif (tonumber(otherdevices['Terrarium temperatuur']) < 34) and uservariables['overheat']==1 then commandArray['Variable:overheat']= '0' end if ((minutesnow < timeofday['SunriseInMinutes']) or (minutesnow > timeofday['SunsetInMinutes']))or uservariables['overheat']==1 then if otherdevices['Terrarium']=='On' then commandArray['Terrarium']='Off' print ("Terrarium uit") end elseif otherdevices['Terrarium']=='Off' then commandArray['Terrarium']='On' print ("Terrarium aan") end return commandArray |
Het inschakelen en uitschakelen van het licht gebeurt op basis van de zonsop- en ondergang. Met daarbij één uitzondering als de temperatuur te hoog oploopt. Wanneer de temperatuur hoger dan 37 graden wordt gaat het licht uit totdat de temperatuur weer onder de34 graden zakt. Tamelijk simpel, maar het werkt perfect. En een heel mooie bijkomstigheid is dat ik ten alle tijden kan zien of het licht aan is én wat de temperatuur en luchtvochtigheid is... Ongeacht of ik thuis ben of niet!
Ook kan dit in mooie grafieken getoond worden:
Met dank aan mijn domotica zit mijn baardagaam dus altijd veilig in het zonnetje én heb ik er geen omkijken naar. Beestje blij, ik blij! Lang leve automatisering

Op verzoek:
Gebruikte sensor: Xiaomi Aqara Temperature Humidity Sensor (Xiaomi Gateway v2 of hoger vereist)
Deze stuurt ieder uur de waarden door, maar bij een verandering van de temperatuur met 0,5 graden celcius of meer en/of een wijziging in de luchtvochtigheid van 6% of meer ten opzichte van de laatst verzonden waarde wordt de nieuw gemeten waarde direct doorgestuurd (volgens de specs - heb het niet getest! \).
Batterijduur moet ik nog ervaren... als ik daar nieuws over heb laat ik het weten in mijn blog! Voor wie het interesseert, volgens Domoticz is de gebruikte sensor zelf een LaCrosse TX3 (zegt mij niet zoveel...).
DISCLAIMER
Ik kijk dus wél om naar het beestje, enkel niet langer naar de techniek rondom de verlichting/verwarming van het terrarium (wat onder de streep veiliger is voor de baardagaam). Middels deze blog wil ik mensen niet oproepen om zonder daar goed over na te denken een baardagaam of ander 'terrarium-beest' aan te schaffen. Dit zijn levende dieren met bepaalde behoeften. Voordat je de aanschaf van een baardagaam (of welk ander huisdier ook) overweegt zul je je eerst goed moeten verdiepen in een dergelijk huisdier en welke verantwoordelijkheden en kosten dit met zich meebrengt. Bezint eer ge begint...
==============================================================================
Deze blogpost is door Tweakers gekozen als Tweakblog van de maand september 2018! Super leuk.
Dank aan de mensen die mijn blog daarvoor genomineerd hadden!

==============================================================================
Aanwezigheidssensoren in huis, hoe voorkom je knipperende lampen
Dat is niet handig, want zeker tijdens een avondje bank hangen beweeg je niet iedere twee minuten voldoende om door de sensor opgemerkt te worden! Op internet worden diverse oplossingen voor dit veelvoorkomende probleem aangedragen, waaronder:
- Gebruik een Dummy switch die voor een bepaalde tijd aan gaat wanneer de bewegingssesnsor aangaat
- Gebruik de Off Delay functie binnen de instellingen van de sensor zelf
- Zorg dat de verlichting zelf voor een bepaalde periode ingeschakeld wordt na activering door de sensor
- Gebruik de functionaliteit binnen Domoticz om uit te lezen wanneer de sensor voor het laatst van status gewijzigd is
Dummy Switch
Werkt redelijk, maar is in de praktijk vooral een uitstellen van het probleem. Immers, na 10 minuten gaat de Dummy switch uit. Ongeacht of deze in de tussentijd opnieuw geactiveerd is door de bewegingssensor. Of toch niet?? Ben er nooit helemaal goed uitgekomen wat er gebeurde (ondanks veel debuggen en de logging in de gaten houden). Maar het bleef lastig om de verlichting ingeschakeld te houden wanneer ik gewoon in de ruimte aanwezig was! Met enige regelmaat ging het licht toch uit en moest ik weer actief zwaaien naar de sensor... Bovendien zorgt deze oplossing voor een overvloed aan Dummy switches. Verre van ideaal omdat het alles zéér onoverzichtelijk (en dus foutgevoelig) maakt...
Off delay
Ieder device dat gebruikt wordt om te schakelen heeft in Domoticz een 'Off delay'. Heel erg handig! Hiermee kun je aangeven na hoeveel tijd het device weer terug naar 'Off' gezet moet worden vanaf het moment dat deze ingeschakeld wordt. Ideaal bij het gebruik van knoppen (Xiaomi Wireless Switch of de Aqara Wall Switches), maar ondanks dat deze oplossing met enige regelmaat aangedragen wordt op fora werkt dit in het geheel niet bij bewegingssensoren. Immers, de sensor gaat zelf na 2 minuten uit - en de Off Delay verandert daar niks aan... Enkel zal deze na 10 minuten de sensor nogmaals uit pogen te zetten... Kortom: het probleem wordt hooguit nóg erger!
Verlichting aan voor bepaalde periode
Het is mogelijk een lamp aan te zetten voor een periode: commandArray['Group:Nachtlicht']='On FOR 600'. Lijkt een mooie oplossing... Alleen werkt dit niet goed met Groepen of Scenes in Domoticz. In de praktijk betekent het veelal dat de verlichting nooit uit gaat - totdat deze actief uitgeschakeld wordt...
Uitlezen laatste status wijziging
Het zal geen verrassing zijn. Dit bleek de oplossing te zijn:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| function timedifference(timestamp) y, m, d, H, M, S = timestamp:match("(%d+)-(%d+)-(%d+) (%d+):(%d+):(%d+)") difference = os.difftime(os.time(), os.time{year=y, month=m, day=d, hour=H, min=M, sec=S}) return difference end commandArray = {} s = otherdevices_lastupdate['Xiaomi Motion Sensor'] if(otherdevices['Xiaomi Motion Sensor']=='Off' and timedifference(s) > 600 and otherdevices['Woonkamer lamp 1'] ~= 'Off') then print ('Tijd is voorbij: licht uit') commandArray['Group:Movie']='Off' commandArray['Group:Warmlicht']='Off' commandArray['Group:Nachtlicht']='Off' end |
Middels een functie wordt het tijdsverschil berekend tussen de huidige tijd en het moment dat de sensor het laatst van status gewisseld is. Indien deze waarde boven de 600 seconde ligt én de sensor is uit maar de verlichting nog aan, dan wordt het licht uitgeschakeld door alle gebruikte groepen die in gebruik zijn voor de betreffende ruimte uit te schakelen. Effectief betekent dit dat verlichting na detectie van een beweging 10 minuten aan gaat. Indien er binnen die 10 minuten een nieuwe beweging gedetecteerd wordt gaan deze 10 minuten opnieuw in... Dus zo lang ik niet héél lang volledig stil zit én ook de katten geen beweging maken blijft het licht netjes aan zo lang ik in de ruimte ben, maar schakelt deze uit wanneer ik enige tijd niet aanwezig ben! Althans, zo lang de katten niet de hele tijd langs de sensor lopen...
P.s. omdat er discussie ontstond over het wel/niet geschikt zijn van de gebruikte sensoren. De Xiaomi sensoren werken met een PIR sensor. En zijn daarmee dus zeer geschikt als aanwezigheidsmelder. Enkel zijn er geen mogelijkheden de gevoeligheid in te stellen noch om de duur dat de sensor ingeschakeld blijft aan te passen (niet gek ook voor circa 10 euro). Vandaar bovenstaand script, deze draai ik nu reeds enkele maanden en het werkt nagenoeg vlekkeloos (Sterker nog: het werkt stukken beter dan de zeer prijzige aanwezigheidssensoren die de woningbouw in mijn hal geïnstalleerd heeft voor de verlichting!).
Een slimmer huis met Domoticz en Xiaomi
====================
- DISCLAIMER 4/7/2018: Dit blogbericht is inmiddels wat ouder... Inmiddels ben ik qua kennis verder en zijn onderstaande scripts alweer verder verbeterd. Want bijvoorbeeld een Group aanzetten voor een X aantal minuten blijkt helemaal niet te werken!! Binnenkort schrijf ik een blog over de verdere ontwikkeling van dit script en hoe het er momenteel uitziet.
En toen was er licht...
De eerste stap was mijn Xiaomi RGBW Yeelight toevoegen aan Domoticz. Hiervoor hoef je Domoticz enkel te vertellen wat voor type Yeelight het is (RGBW of Mono) en het IP-adres mee te geven. Let op, als je wilt dat de lampen altijd blijven werken moet je wel zorgen dat de lamp binnen je router een vast IP adres krijgt!
De lamp kun je nu terugvinden onder 'Devices' en is toe te voegen als Switch. Nu is het mogelijk om via de computer de lamp aan en uit te zetten en een kleur in te stellen. Opvallend hierbij is dat de aansturing van het RGB deel van de lamp en het witte licht verre van een soepele overgang kent... Hierdoor kent de lamp slechts een heel scala aan kleuren en koud wit. Maar een plezierig warm wit, dat gaat niet lukken... Gelukkig is er op de Domoticz Wiki een eenvoudig script te vinden die het mogelijk maakt om via een dimmer iedere tint warm-wit licht in te stellen.
Sensoren
De volgende stap was de sensoren werkend krijgen. Zoals gemeld had ik een bewegingssensor en een draadloze knop. Deze werkend krijgen binnen Domoticz is in theorie eenvoudig, maar vergde de eerste keer enig experimenteren. Een nieuwe sensor moet eerst gekoppeld worden aan de Xiaomi Gateway. Dit kan via de app die beschikbaar is in Google Play en de Apple App Store. Verder is het vooral de instructies volgen op de Domoticz Wiki. De Wiki is helaas (nog) niet bijgewerkt naar de laatste versie van de app. Dus het is even zoeken waar alles nu te vinden is. Belangrijk is vooral dat je de 'Mainland China' server kiest, anders gaat het niet werken!
Binnen de Mi Home app kun je nu sensoren toevoegen. Dat spreekt inmiddels redelijk voor zich (was bij eerdere versies van de app wel anders!)... Het wordt je netjes uitgelegd in het Engels binnen de app en in het Chinees door de Gateway zelf. Schrik dus niet wanneer het apparaat in het Chinees ineens een heel verhaal begint af te steken...
De sensoren zijn nu zichtbaar binnen Domoticz. Indien dit niet direct gebeurt kan het helpen om binnen de Hardware tab (onder Setup) nog even de Xiaomi Gateway te Updaten.
Het eerste Domoticz script
Binnen Domoticz programmeer je in zogenaamde 'Events'. Ook deze zijn te vinden onder Setup. Hier heb je vervolgens de keuze om te programmeren in Blockly (voor de n00bs

1
2
3
4
5
6
7
8
| -- get current time timenow = os.date("*t") minutesnow = timenow.min + timenow.hour * 60 if (((minutesnow > timeofday['SunsetInMinutes'] - 30) or (minutesnow < timeofday['SunriseInMinutes'] + 10)) and globalvariables['Security'] == 'Disarmed') or (otherdevices['overrule_sun']=='On') or (devicechanged['overrule_sun']=='On') then if (devicechanged['Xiaomi Motion Sensor']=='On') or (otherdevices['Xiaomi Motion Sensor']=='On') then ... |
De belangrijkste termen hierin zijn 'devicechanged' en 'otherdevices'. De eerste controleert een status enkel op het moment dat deze verandert, de andere kijkt bij aanroep naar de huidige status. Het is mij opgevallen dat het zinvol kan zijn om soms beiden te gebruiken voor één enkele switch omdat het anders toch af en toe voorkomt dat het script iets 'over het hoofd ziet'... Heeft te maken met de timing die soms wat ongelukkig uitkomt binnen een script.
Aanvullend heb ik een Toggle dummy switch gemaakt (ook aan te sturen met de Xiaomi draadloze knop) die het mogelijk maakt om de verlichting handmatig uit te zetten wanneer ik op enig moment écht in het donker wil zitten en wilde ik enige controle hebben over de kleur van de lamp middels nog eens twee dummy switches:
Eén van deze dummy switches gebruik ik om de kleur van de verlichting aan te passen. Voor één enkele lamp is dat wat overkill, maar gekozen voor deze oplossing zodat in de toekomst ook andere lampen dit uit kunnen lezen en daarop dezelfde (of een bepaalde in te stellen andere) kleur kunnen weergeven!
Een tweede dummy switch houdt bij welk dagdeel het is. Gedurende de dag is er een script dat op gezette tijden deze switch automatisch omzet van ochtend naar middag, naar avond en tot slot naar nacht. Hierop kan ik het type licht aanpassen afhankelijk van het moment op de dag.
De code die ik vervolgens gebruik om de lamp (via een Group) aan te sturen is als volgt:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
| ... if (otherdevices['Toggle']=='Off') then commandArray['Group:Movie']='Off' commandArray['Group:Warmlicht']='Off' commandArray['Group:Nachtlicht']='Off' elseif (otherdevices['Kleur']=='Movie') then commandArray['Group:Movie']='On FOR 30' print ("Filmverlichting aan") else if (otherdevices['TimeOfDay']=='Night') then print ("Nachtstand") if (otherdevices['Kleur']~='Sunset') or (otherdevices['Woonkamer bol'] == 'Off') then commandArray['Kleur']='Set Level: 30' print ("Nachtverlichting aan") end else commandArray['Group:Warmlicht']='On FOR 30' print ("Dagverlichting aan") end end end ... |
Met andere woorden: Staat de toggle uit, dan mag alles uitgezet worden (ongeacht of het wel aan stond of niet). In andere gevallen wordt gekeken of de fimstand aanstaat (zo ja: blauw-paars licht), of het al nacht is (zo ja: wordt een zonsondergang gesimuleerd en dimt de lamp langzaam naar rood en gaat dan uit - meer hierover in een toekomstig blog) en indien dat allemaal niet het geval is wordt 'gewoon' warmwit licht aangezet.
Nu bleek enkel dat de lamp met enige regelmaat onbedoeld aan bleef staan overdag of 's nachts. En daarom is de code nog afgerond met:
1
2
3
4
5
6
7
| ... elseif (otherdevices['Woonkamer bol'] ~= 'Off') then print ('Tijd is voorbij: licht uit') commandArray['Group:Movie']='Off' commandArray['Group:Warmlicht']='Off' commandArray['Group:Nachtlicht']='Off' end |
En dat werd het belangrijkste stuk intelligentie om vooralsnog één enkele lamp aan te sturen. Maar al wel zodanig ingericht dat in de toekomst uitbreiding gemakkelijk is. Die uitbreiding heeft inmiddels al plaatsgevonden en het gebruikte script is daarbij nagenoeg ongewijzigd gebleven en bleek dus prima 'future-proof'.
Het werd echter complexer toen ik naast de woonkamer ook de keuken mee wilde gaan nemen in de automatisering. Meerdere sensoren moeten nu samenwerken om meerdere lampen op de juiste momenten te schakelen. En dat geeft de nodige uitdagingen... Zo heb ik één lamp die tussen keuken en woonkamer staat. Zowel bij beweging in de keuken moet deze aan als bij beweging in de woonkamer. Dus aan beide scripts toegevoegd - maar met als gevolg dat de lamp continu aan en uit blijft knipperen als één van beide ruimtes de lichten uitgeschakeld heeft en de andere de lichten ingeschakeld... Oeps! Heb daar nog geen goede oplossing voor bedacht. Wellicht is dit op te vangen middels een Dummy switch, maar daar heb ik er inmiddels al zoveel van! Nog een keer goed over nadenken...
Heb onlangs de Yeelight LEDstrip ontvangen. Daar wil ik binnenkort eens een review aan wijden. Tevens wil ik op korte termijn aan de slag met een betere integratie van Google Home binnen mijn Domotica, dus daar kun je ook een blog over verwachten! Tot slot heb ik nog een project staan om aanwezigheid beter te detecteren. gebruik hiervoor nu de Geofence functionaliteit in de Domoticz app, maar dat werkt tamelijk beroerd... Wil daarom mijn mobiel (en daarna ook die van de kinderen)
kunnen pingen en in combinatie met de geofencing functionaliteit uit de app zodoende betrouwbaarder kunnen bepalen of er iemand aanwezig is - en op basis daarvan het alarm in- en uit kunnen schakelen. Dus wederom, wordt vervolgd!
