Bewegingsmelder, Conditional statements

Ik ben nu een paar weken met de Homey aan het experimenteren. Niet met een onverdeeld succes. Soms met een flinke frustratie. Het opbouwen van een altijd werkende flow valt niet mee. Ik begrijp dat ‘als en dan’ eigenlijk een ‘do case’ conditional statement is. Waarbij de ‘als’ en ‘en’, ‘of’ zeer kritisch te kiezen zijn, wat neem je als eerste. En eigenlijk ben ik er nog goed uit. Ik hak een flow nu maar een diverse kleinere en laat de ene de andere aanroepen.

Zeker de bewegingsmelder vind ik verwarrend, mij vragen:

Is er een verschil tussen de melder is aan en gaat aan? ( of is uit en gaat uit? )?

De Philips hue bewegingsmelder detecteert beweging en geen aanwezigheid, twee tellen stilstaan is hetzelfde als geen beweging dus gaat het licht weer uit. Hoe of waarmee is aanwezigheid te detecteren?

Ik laat nu een lamp bij voldoende donker en tussen twee tijdstippen bij binnenkomst of vol gedimd of half gedimd aan gaan, met een teller van 240 sec. Natuurlijk altijd te kort ( iemand in het donker ) en altijd te lang ( nodeloos het licht aan, en het is eigenlijk geen of slechte automatisering ). Kan dit slimmer?

Simpel. (<<Dit is een link, kan je op klikken)

Net als de link naar simpel is dit een oplossing met een teller ( beide slimmer dan mijn oplossing hoor :wink: ), binnen X tijd weer of geen beweging, nog niet een detectie op aanwezigheid, rustig zitten zet je dus na een paar minuten in het donker. Of is hiertoe een ander sensor nodig?

Lees de flow niet als:
Als - en / of - dan / anders
Omdat in het NL de als een coditie kan zijn.

Ik vertaal de Engelse:
When - and/or - than/ else
In
Wanneer - en / of - dan / anders

Wanneer de bewegindsmelder aan gaat…

Er is dus inderdaad een verschil tussen gaat-aan en is-aan
De is-aan zou een goede conditie zijn voor in het tweede stuk.

WANNEER de bewegingsmelder aan gaat
EN de lamp is aan OF het is overdag
DAN Zeg de lamp is al aan ANDERS doe de lamp aan

Tja, daar heb je gelijk in, de bewegingsmelder doet precies wat hij zegt te doen, beweging melden … :grimacing:. Infrarood melder?

Klinkt logisch en simpel, toch loop ik meerdere keren vast: in een andere kamer wil ik : na zonsondergang en tussen bepaalde tijdstippen gedimd licht aan en zodra iemand die kamer instapt moet het licht minder gedimd zijn, is er weer niemand in die kamer dan moet het licht weer terug gaan naar gedimd. Ik weet inmiddels dat ik dit mbv de countdown app heel aardig kan benaderen:

Flow 1
Mijn als: de bewegingsmelder gaat aan
Mijn en: de bewegingsmelder is aan, het is na zonsondergang, de tijd is tussen 20:00 en 23:00
Mijn dan: zet lamp aan, dim naar 55%, stop countdown timer
Mijn anders: stop countdown timer
Flow 2
Mijn als: de bewegingsmelder gaat uit
Mijn dan: draaizandloper kamer 60
Flow 3
Mijn als: zandloper leeg kamer
Mijn en: lamp is aan
Mijn dan: dim naar 1%

Ik heb het zo werkend maar heb het gevoel te omslachtig te werk te gaan. Wat is hier logischer als de als, de en, de dan en de anders?

Badkamer, tussen twee tijdstippen mag het licht niet fel aan, daar buiten wel, als het tenminste voldoende donker is, is er genoeg daglicht dan mag de lamp niet aan

Flow 1 kan wel iets simpeler:

Beetje dubbel deze.

Meeste lampen gaan aan als je ze naar 55% dimt, meestal niet nodig om hem eerst aan te zetten.

1 Like

Jawel :+1:, maar ik wil begrijpen wat ik doe en waarin de verschillen zitten opdat ik zelf nieuwe flows kan bedenken en maken

Maar de beide voorwaarden zijn niet hetzelfde, las ik in een van de reacties. Aan gaan is een status verandering en aan zijn is een statische situatie, denk ik dan

Dan zal ik het anders zeggen: Als de melder aan gaat is hij aan. Om daarna als voorwaarde op te geven dat hij aan is, is onzin. Beter verwijderen in de EN kolom!

En daarom gebruiken we “aan gaan” in de ALS kolom.
“Aan zijn” is een voorwaarde die we in de EN kolom gebruiken.
Aangezien we de trigger “ALS melder aan gaat” gebruiken kunnen we er vanuit gaan dat de melder ook aan is en hoeven we (kunnen we beter) niet de voorwaarde op te geven in de EN kolom.

1 Like

Het blijft een gehannes, waarom is er wel ALS de zon onder gaat, en is er niet ALS het is na zonsondergang? Die optie staat bij EN, er staan veel meer opties bij EN dan bij ALS. Idem voor variabelen, de opties zijn bij ALS ook veel minder als bij EN.

Als de zon onder is geldt ALS de zon onder gaat niet meer, die flow start dan niet

Wanneer zou deze triggeren denk je?
Stel je voor dat hij zou bestaan.
Je maakt een flow met ALS het na zonsondergang is doe dan de lamp aan.
Wanneer gaat dat gebeuren dan?

Ik snap je vraag niet als antwoord op mijn vragen

Jouw vraag was:

Mijn vraag daarop is:

Dus, wanneer gaat de lamp aan denk jij, als je een flow maakt met ALS het na zonsondergang is doe dan de lamp aan?

@Karel_MuziekNu
Zonsondergang is een gebeurtenis waar je iets mee kan
“Als de zon onder is” is een gegeven. Niet een gebeurtenis.

Ik gebruikte hier variabelen voor en Zandlopers
Variabel heeft een waarde van 0 of 1 (waar of onwaar)
Zandloper kan zijn wat je wilt. Te lang is beter als te kort. Hij moet in ieder geval langer zijn dan de periode waarin je sensor nog in de “alarm” staat zit.

Flow 1 - er is beweging gedetecteerd en het is avond
Als
Er beweging is gedetecteerd
En
De zon is onder
Het is tussen xx en xx uur (is deze echt nodig?)
Dan
Zet variabel op 1
Zet zandloper aan

Flow 2 - zet timer en lampen aan
Als
variabel is veranderd
En
zandloper loopt
variabel is gelijk aan 1
Dan
Dim de lampen naar gewenste stand

Flow 3 - voorkom dat de lampen te vroeg dimmen
Als
beweging is gedetecteerd
En
zandloper loopt
Dan
Reset zandloper tijd

Flow 4 - merkt op dat er echt niemand meer is
Als
zandloper is verstreken
Dan
zet variabel op 0

Flow 5 - zet alles weer zoals het was
Als
variabel is veranderd
En
variabel is gelijk aan 0
Dan
Dim lampen terug naar oorspronkelijke dim stand (in dit geval 0)

Je kan flow 4 en 5 combineren. Maar ik hou er van om zo veel mogelijk in losse flows te doen en met variabelen te werken. Als je bijvoorbeeld een variabel maakt met als waarde 0.55 kun je deze gebruiken als je dimniveau. Mocht je het ooit willen aanpassen naar 60% hoef je dan niet alle flows van je lampen aan te passen. Dan pas je de variabel aan en dimmen alle lampen die deze variabel gebruiken in het dim niveau netjes naar de nieuwe waarde. Scheelt enorm veel tijd als je meerdere lampen hebt.

Inmiddels gebruik ik lux sensoren om dit te schakelen als het donkerder is. Dan werkt het ook op een donkere herfstdag.

En ja, de lampen gaan nu uit als je rustig blijft zitten. Vraag jezelf dan af wat je doet als je rustig zit.
Kijk je tv? Laat de flow dan niet lopen als je tv aan staat
Lees je een boek? Laat de flow dan niet lopen als je een leeslampje aan hebt
Zit je op de telefoon te candy crushen? Laat de flow dan niet lopen als je telefoon in de lader zit.
Zit je echt stil en staar je naar de muur terwijl je je zonden overdenkt? Stop een druksensor onder je zitplek

De mogelijkheden zijn eindeloos

Zeer bedankt voor de heldere toelichting en opzet van de flows. De truc met de variabelen snap ik, het gaf me eerder hoofdbrekens, ik verwachtte het in de ALS (ALS variabele is ‘ja’). Inmiddels ingevoerd, en ga het testen. Buiten dat tijdslot moeten de lampen uit en uitblijven, dat heb ik toegevoegd aan flow 1, bij ANDERS lamp uit. Suggesties voor extra sensoren klinken goed ( lang geleden heb ik met vele type sensoren gewerkt ). Nogmaals dank :+1:

1 Like

Exact :+1:, dat is wat ik bedoel waardoor mijn flows niet starten als dat moment al geweest is.

:+1:

@RoyWissenburg , bedankt voor je uitleg hierboven.
Ik heb nu flows kunnen maken voor mijn buitenlamp, getest en het werkte :tada:
Ik heb nu 4 flows om de lamp bij zonsondergang aan te zetten, tussen 23 en 7 uur uit en bij zonsopgang ook uit. Wel jammer dat dit niet met minder flows kan maar wel lekker overzichtelijk.

1 Like