Selftrigger nicht ganz richtig verstanden

Begonnen von eddy242, 20 April 2020, 12:12:24

Vorheriges Thema - Nächstes Thema

eddy242

Hallöchen,

könnte sich bitte jemand mal diesen Code ansehen. Mein (naives) Verständnis war, dass nach einer initialen Triggerung entweder via set automat1 myState Anfang oder set automat1 cmd_1 die Maschine rundlaufen müsste, d.h. alle 5s in den nächsten Status wechseln müsste. Was habe ich übersehen? Danke!


defmod automat1 DOIF ([SELF:myState] eq "Anfang")(set $SELF myState Mitte)\
DOELSEIF ([SELF:myState] eq "Mitte")(set $SELF myState Ende)\
DOELSEIF ([SELF:myState] eq "Ende")(set $SELF myState Anfang)
attr automat1 DbLogExclude .*
attr automat1 cmdState Anfang|Mitte|Ende
attr automat1 readingList myState
attr automat1 selftrigger wait
attr automat1 setList myState:Anfang,Mitte,Ende
attr automat1 wait 5:5:5

xenos1984

Müsste der Trigger nicht
[$SELF:myState]
sein, also mit einem Dollar-Zeichen?

eddy242

Hallo xenos1984,

Asche auf mein Haupt - das hat mich x Stunden gekostet ohne dass ich das Offensichtliche bemerkt habe. Vielen Dank!

Grüße
eddy242