@
tinustilburg
Ik kan je enkel een richting op sturen, je zult je zelf de handigheid moeten leren ben ik bang. Maar goed, onderstaand is hoe bij mij thuis de verlichting werkt.
In elke ruimte heb ik één of meerdere Hue lampen en één Hue Motion Sensor. De 'fysieke schakelaars' zijn ook aanwezig, maar worden nergens gebruikt. Ik gebruikt ook geen dimmers of andere Hue afstandsbedieningen.
Ik heb slechts twee eisen aan de verlichting, het moet aan als ik het nodig heb, en uit als ik het niet nodig heb. Ik heb dit vertaald in de volgende 'regels':
- Lampen aan doen, als er beweging is en het is donker genoeg.
- Lampen uit als het licht genoeg is zonder de lampen aan
- Als er niemand in de ruimte is, doe de lamp dan ook uit
- Probeer te voorkomen dat de lampen uit gaan als je bijvoorbeeld te stil op de bank zit
Dan eerst een stukje techniek. De Hue Bridge bevat een software API interface ding (een beter woord heb ik er niet voor). Deze houdt een aantal dingen bij, zoals welke lampen zijn er, welke sensoren, scenes, groepen, etc. Het bevat ook een rule engine, welke je in staat om onder bepaalde condities, één of meerdere acties (zoals het aan doen van een lamp) uit te laten voeren. Deze rule engine kun je manipuleren via je browser door regels toe te voegen, aan te passen en te verwijderen.
Deze API is door Philips beschreven:
hier. Je kunt via de CLIP Debugger, http://<bridge ip address>/debug/clip.html, je eigen Bridge manipuleren.
Ik raad je aan om je bij Philips aan te melden zodat je de API documentatie kunt lezen, mits je net als ik je eigen regels wilt maken.
De Hue Motion sensor is slim opgezet en dat maakt hem juist zo krachtig. Als je de Hue Motion Sensor aan je bridge koppelt krijg je het volgende:
- een bewegings sensor
- een temperatuur sensor
- een lightsterkte sensor
Naast de bovenstaande sensoren krijg je er ook nog één (als ik het me goed herinneren) die virtueel is en enkel door de Hue App gebruikt wordt.
Je kunt deze allen vinden onder: /api/<API-key>/sensors
De sensoren melden enkel de gewenste waarden aan de bridge. Het is dus niet zo dat de Hue Motion Sensor een lamp schakelt. Het geeft enkel door: er is beweging, de lichtsterkte is X en/of de temperatuur is Y.
Bij het koppelen van de Hue Motion Sensor aan de bridge, krijg je er ook een aantal regels bij in je rule engine. Hierin staat bijvoorbeeld: bij lichtsterkte > X en bij beweging doe alle lampen in groep X aan. Via deze regels worden dus de Motion Sensors aan je Lampen gekoppeld. Maar... als je de 'standaard' regels niet goed vind werken (zoals ik) kun je dat allemaal aanpassen.
Deze regels kun je vinden onder: /api/<API-key>/rules
Tot zover de techniek
Wat heb ik dan nu gedaan.. Als eerste heb ik de 'default' rules verwijderd, deze wilde ik toch niet gebruiken. Tevens heb ik de sensoren lijst opgeschoond en alle virtuele sensors verwijderd. In essentie ontkoppel je de Hue App van je Motion Sensor, de overige sensors (beweging, lichtsterkte en temp) blijven echter wel hun waarden doorgeven. Volgens de Hue App zijn mijn Hue Motion sensoren wel gekoppeld, maar nog niet geconfigureerd.
Vervolgens heb ik nieuwe regels bedacht en deze toegevoegd aan de bridge via de CLIP debugger, hieronder zijn mijn regels, de stukken tussen !!! is commentaar wat ik er nu bij typ om de regel uit te leggen. Dit zul je uit de regel moeten verwijderen :D:
Regel 1: aanzetten lampen bij beweging en donker genoeg.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| {
"name": "On.Wnk.Presence",
"conditions": [
{ !!! Sensor 8 is de bewegings sensor. Deze moet op true staan, als in er is beweging !!!
"address": "/sensors/8/state/presence",
"operator": "eq",
"value": "true"
},
{ !!! dx is een speciale operator en betekent dat deze sensor/presense gewijzigd moet zijn, de 'trigger' voor de regel zeg maar !!!
"address": "/sensors/8/state/presence",
"operator": "dx"
},
{!!! de lichtsterkte moet < (lt = less than) 9000 lux zijn !!!
"address": "/sensors/9/state/lightlevel",
"operator": "lt",
"value": "9000"
},
{!!! niet alle lampen moeten aan staan !!!
"address": "/groups/1/state/all_on",
"operator": "eq",
"value": "false"
}
],
"actions": [
{!!! dit zorgt er voor dat de lampen aan gaan in groep 1 met deze scene !!!
"address": "/groups/1/action",
"method": "PUT",
"body": {
"scene": "sIY1or5yZEQn2Cx"
}
}
]
} |
Kort gezegd: ALS de bewegings sensor van 'geen beweging' naar 'wel beweging' springt EN de lichtsterkte is beneden 9000 EN niet alle lampen in groep 1 zijn aan DAN zet scene X op groep 1.
Regel 2: bij voldoende licht, zet de lampen uit.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| {
"name": "Off.Wnk.Lightlevel",
"conditions": [
{ !!! als de lichtsterkte > 12000 lux is !!!
"address": "/sensors/9/state/lightlevel",
"operator": "gt",
"value": "12000"
},
{ !!! minimaal 1 lamp in groep 1 is aan !!!
"address": "/groups/1/state/any_on",
"operator": "eq",
"value": "true"
}
],
"actions": [
{ !!! zet alle lampen in groep 1 uit !!!
"address": "/groups/1/action",
"method": "PUT",
"body": {
"on": false
}
}
]
} |
ALS de lichtsterkte > 12000 is EN minimaal 1 lamp van groep 1 is aan, DAN zet de gehele groep uit. De oplettende lezer zal zien dat ik 9000 lux gebruik voor het aanzetten en 12000 lux voor het uitzetten. Dit is omdat door het aanzetten van lampen de lichtsterkte boven de 9000 kan komen, met als gevolg hij weer uit zou gaan. Vandaar een verschil van 3000. Als zijn deze lichtsterkte niveau natuurlijk afhankelijk van je eigen situatie.
De volgende twee regels zijn wat complexer. Wat ik wil is dat ik voldoende lang stil kan zitten op de bank voordat de lampen uit gaan door gebrek aan beweging. Echter moet dit ook weer niet zolang zijn dat ik het zonde vind dat de lampen te lang aan staan als er echt geen beweging is.
Dit idee heb ik gevat in twee regels.
Regel 3: bij langer dan uur geen beweging, doe de lampen maar uit.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
| {
"name": "Off.Wnk.Presence.LDelay",
"conditions": [
{ !!! als de bewegings sensors op false staat !!!
"address": "/sensors/8/state/presence",
"operator": "eq",
"value": "false"
},
{ !!! en de laatste wijziging van de presense waarder is meer dan een uur geleden !!!
"address": "/sensors/8/state/presence",
"operator": "ddx",
"value": "PT01:00:00"
},
{ !!! en minimaal 1 lamp van groep is aan !!!
"address": "/groups/1/state/any_on",
"operator": "eq",
"value": "true"
}
],
"actions": [
{ !!! doe dan de lampen uit !!!
"address": "/groups/1/action",
"method": "PUT",
"body": {
"on": false
}
}
]
} |
Dus: ALS er geen beweging is EN het afgelopen uur is er ook geen beweging geweest EN er staat minimaal 1 lamp aan in groep 1 DAN gehele groep 1 uit doen.
Dit uur biedt mij voldoende tijd om niet in het donker te zitten. Meestal beweeg ik binnen dat uur wel een keer. (klinkt zo net alsof ik als een zoutzak op de bank ligt

)
Regel 4: als er geen beweging is voor 15 minuten tussen tijd x en tijd y, doe de boel dan uit
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
| {
"name": "Off.Wnk.Presence.Delay",
"conditions": [
{ !!! tussen 22u en 16u !!!
"address": "/config/localtime",
"operator": "in",
"value": "T22:00:00/T16:00:00"
},
{ !!! er mag geen beweging zijn !!!
"address": "/sensors/8/state/presence",
"operator": "eq",
"value": "false"
},
{ !!! laatste wijziging van presense is minimaal 15 minuten geleden !!!
"address": "/sensors/8/state/presence",
"operator": "ddx",
"value": "PT00:15:00"
},
{ !!! minimaal 1 lamp in groep 1 is aan. !!!
"address": "/groups/1/state/any_on",
"operator": "eq",
"value": "true"
}
],
"actions": [
{ !!! zet de boel uit !!!
"address": "/groups/1/action",
"method": "PUT",
"body": {
"on": false
}
}
]
} |
Dus: ALS het tussen 22u en 16u is EN er is al 15 minuten geen beweging gedetecteerd EN er is minimaal 1 lamp aan in groep 1 DAN zet groep 1 uit.
Regel 3 en 4 lijken erg veel op elkaar, maar zijn wel belangrijk.Los van de lampen uit bij te donker, werken de regels 3 en 4 als volgt:
Stel ik verlaat om:
- 20u mijn woonkamer, dan gaan de lampen uit om 21u (regel 3).
- 21:30u mijn woonkamer, dan gaan de lampen uit om 22:15u (regel 3 actief tot 22u, vanaf 22u regel 4).
- 22:00u mijn woonkamer, dan gaan de lampen uit om 22:15u (regel 4).
- 22:30u mijn woonkamer, dan gaan de lampen uit om 22:45u (regel 4).
De 22u is meestal ongeveer wanneer we richting bed gaan, dus de lamp mag dan vlot uit. Echter zolang ik in dat kwartier blijft bewegen blijft de boel gewoon aan. Zit ik wel eens in het donker? Ja.. een enkele keer maar het aanpassen van de tijden en intervallen is eenvoudig te doen. Het uur en het kwartier is voor mij prima, maar smaken verschillen.
Ik kan me voorstellen dat nog niet alles even duidelijk is, maar ik hoop ook dat je met zowel deze post als de informatie van de Philips site je Bridge zo kunt instellen als je wilt. Bij mij gaat de gehele beneden verdieping nu op deze manier, dus geheel automatisch zonder enige knop in te drukken.