FHEM Forum

FHEM => Automatisierung => DOIF => Thema gestartet von: Fistandantilus am 05 Februar 2016, 13:51:58

Titel: Raffstore fährt immer wieder hoch
Beitrag von: Fistandantilus am 05 Februar 2016, 13:51:58
Hallo,

ich versuche gerade meine Raffstores zu automatisieren, allerdings ist offenbar noch irgenwo ein Fehler drin, da die Raffstores hochfahren, obwohl die Bedingungen dafür gar nicht eingetreten sind:


define Raffstoreautomatik dummy
attr Raffstoreautomatik devStateIcon on:fts_shutter_automatic off:fts_shutter_manual
attr Raffstoreautomatik group 1: Automatisierung Raffstore
attr Raffstoreautomatik room System
attr Raffstoreautomatik setList on off

define Auto_Raff_WZ DOIF ( \
  ( ( [Raffstoreautomatik] eq "on" ) and ( [WS1_ISRAINING] eq "yes" ) )\
  or\
  ( ( [Raffstoreautomatik] eq "on" ) and ( [WS1_WINDSPEED] gt 17 ) )\
) \
(define RaffstoreWZAutom_rauf at +00:00:06 set FSB14_1_1 opens )
attr Auto_Raff_WZ group 1: Automatisierung Raffstore
attr Auto_Raff_WZ room System


Hier die aktuellen Readings:
Device                                    WS1_WINDSPEED               2016-02-05 13:35:31
cmd_event                              WS1_ISRAINING                 2016-02-05 13:35:03
cmd_nr                                   1                                       2016-02-05 13:35:03
e_WS1_ISRAINING_STATE       no                                     2016-02-05 13:35:10
e_WS1_WINDSPEED_STATE     3.8 m/s                              2016-02-05 13:35:31
state                                       cmd_1                               2016-02-05 13:35:03

Hier noch ein Ausschnitt aus dem Eventlog:

Zitat
016-02-05 13:45:16 dummy SaunatemperaturAussen 20.0
2016-02-05 13:45:16 dummy SaunatemperaturAussen 20.0
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T1 T: 20.0
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T1 temperature: 20.0
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T1_T2 T: 3.7
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T1_T2 temperature: 3.7
2016-02-05 13:45:16 dummy SaunatemperaturInnen 16.3
2016-02-05 13:45:16 dummy SaunatemperaturInnen 16.3
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T2 T: 16.3
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T2 temperature: 16.3
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T2_T1 T: -3.7
2016-02-05 13:45:16 CUL_HM Saunatemperatur_T2_T1 temperature: -3.7
2016-02-05 13:45:17 readingsProxy WS1_SUN_EAST 46471
2016-02-05 13:45:17 readingsProxy WS1_SUN_SOUTH 70000
2016-02-05 13:45:17 readingsProxy WS1_SUN_WEST 40588
2016-02-05 13:45:17 EnOcean E_WS1 sunWest: 40588
2016-02-05 13:45:17 EnOcean E_WS1 sunSouth: 70000
2016-02-05 13:45:17 EnOcean E_WS1 sunEast: 46471
2016-02-05 13:45:20 HMLAN HMLAN0 loadLvl: low
2016-02-05 13:45:27 at RaffstoreKuecheAutom_rauf Next: 13:45:33
2016-02-05 13:45:27 readingsProxy WS1_BRIGHTNESS 999
2016-02-05 13:45:28 at RaffstoreWZAutom_rauf Next: 13:45:34
2016-02-05 13:45:28 DOIF Auto_Raff_WZ cmd_nr: 1
2016-02-05 13:45:28 DOIF Auto_Raff_WZ cmd_event: WS1_ISRAINING
2016-02-05 13:45:28 DOIF Auto_Raff_WZ cmd_1
2016-02-05 13:45:28 readingsProxy WS1_ISRAINING no
2016-02-05 13:45:28 readingsProxy WS1_SUN_EAST 46471
2016-02-05 13:45:28 readingsProxy WS1_SUN_EAST 46471
2016-02-05 13:45:28 readingsProxy WS1_SUN_SOUTH 70000
2016-02-05 13:45:28 readingsProxy WS1_SUN_SOUTH 70000
2016-02-05 13:45:28 readingsProxy WS1_SUN_WEST 40588
2016-02-05 13:45:28 readingsProxy WS1_SUN_WEST 40588
2016-02-05 13:45:28 readingsProxy WS1_TEMPERATURE 5.6
2016-02-05 13:45:28 readingsProxy WS1_TEMPERATURE 5.6
2016-02-05 13:45:28 Global global DEFINED RaffstoreKuecheAutom_rauf
2016-02-05 13:45:28 Global global DEFINED RaffstoreWZAutom_rauf
2016-02-05 13:45:28 DOIF Auto_Raff_Kueche cmd_nr: 1
2016-02-05 13:45:28 DOIF Auto_Raff_Kueche cmd_event: WS1_WINDSPEED
2016-02-05 13:45:28 DOIF Auto_Raff_Kueche cmd_1
2016-02-05 13:45:28 readingsProxy WS1_WINDSPEED 3.8
2016-02-05 13:45:28 readingsProxy WS1_WINDSPEED 3.8
2016-02-05 13:45:28 readingsProxy WS1_WINDSPEED 3.8
2016-02-05 13:45:28 readingsProxy WS1_WINDSPEED 3.8
2016-02-05 13:45:28 readingsProxy WS1_WINDSPEED 3.8
2016-02-05 13:45:28 EnOcean E_WS1 windSpeed: 3.8
2016-02-05 13:45:28 EnOcean E_WS1 T: 5.6 B: 999 W: 3.8 IR: no
2016-02-05 13:45:33 EnOcean FSB14_1_2 anglePos: 0
2016-02-05 13:45:33 EnOcean FSB14_1_2 position: 0
2016-02-05 13:45:34 EnOcean FSB14_1_2 endPosition: open
2016-02-05 13:45:34 EnOcean FSB14_1_2 open
2016-02-05 13:45:34 readingsProxy WS1_BRIGHTNESS 999
2016-02-05 13:45:34 readingsProxy WS1_ISRAINING no
2016-02-05 13:45:34 readingsProxy WS1_SUN_EAST 46471
2016-02-05 13:45:34 readingsProxy WS1_SUN_SOUTH 70000
2016-02-05 13:45:34 readingsProxy WS1_SUN_WEST 40588
2016-02-05 13:45:34 readingsProxy WS1_TEMPERATURE 5.6
2016-02-05 13:45:34 readingsProxy WS1_WINDSPEED 3.8
2016-02-05 13:45:34 Global global DELETED RaffstoreKuecheAutom_rauf
2016-02-05 13:45:34 EnOcean FSB14_1_1 anglePos: 0
2016-02-05 13:45:34 EnOcean FSB14_1_1 position: 0
2016-02-05 13:45:34 EnOcean FSB14_1_1 endPosition: open
2016-02-05 13:45:34 EnOcean FSB14_1_1 open
2016-02-05 13:45:34 readingsProxy WS1_BRIGHTNESS 999
2016-02-05 13:45:34 readingsProxy WS1_ISRAINING no
2016-02-05 13:45:34 readingsProxy WS1_SUN_EAST 46471
2016-02-05 13:45:34 readingsProxy WS1_SUN_SOUTH 70000
2016-02-05 13:45:34 readingsProxy WS1_SUN_WEST 40588
2016-02-05 13:45:34 readingsProxy WS1_TEMPERATURE 5.6
2016-02-05 13:45:34 readingsProxy WS1_WINDSPEED 3.8
2016-02-05 13:45:34 Global global DELETED RaffstoreWZAutom_rauf
2016-02-05 13:45:38 readingsProxy WS1_WINDSPEED 5.8
2016-02-05 13:45:38 EnOcean E_WS1 windSpeed: 5.8
2016-02-05 13:45:38 EnOcean E_WS1 T: 5.6 B: 999 W: 5.8 IR: no
2016-02-05 13:45:45 HMLAN HMLAN0 loadLvl: low
2016-02-05 13:45:57 readingsProxy WS1_WINDSPEED 8.0
2016-02-05 13:45:57 EnOcean E_WS1 windSpeed: 8.0
2016-02-05 13:45:57 EnOcean E_WS1 T: 5.6 B: 999 W: 8.0 IR: no
2016-02-05 13:45:59 readingsProxy WS1_TEMPERATURE 6.6
2016-02-05 13:45:59 EnOcean E_WS1 temperature: 6.6
2016-02-05 13:45:59 EnOcean E_WS1 T: 6.6 B: 999 W: 8.0 IR: no

VG F.
Titel: Antw:Raffstore fährt immer wieder hoch
Beitrag von: turo am 05 Februar 2016, 13:57:10
[WS1_WINDSPEED] gt 17

ist true, weil "8.0 gt 17" (oder auch 3.8  ) und gt ein lexikograpischer Vergleich ist. Du brauchst hier den numerischen Vergleich mit ">".

NB: Du bist sehr vorsichtig mit den Klammern und das ist auch gut so und empfohlen. Tatsächlich bräuchte Deine Bedingung keine einzige Klammer ;-)

Gruss,
turo
Titel: Antw:Raffstore fährt immer wieder hoch
Beitrag von: Fistandantilus am 05 Februar 2016, 14:00:31
Als ich > verwende habe, kam immer ein Fehler im Log, da die Einheit mitgesendet wird:

2016.02.05 13:58:13 1: PERL WARNING: Argument "5.8 m/s" isn't numeric in numeric gt (>) at (eval 6429) line 1.

In irgendeinem anderen Post hatte ich gelesen, dass man in dem Fall gt / lt / ... verwenden kann?!
Falls nicht, wie löse ich das am geschicktesten?
Titel: Antw:Raffstore fährt immer wieder hoch
Beitrag von: Ellert am 05 Februar 2016, 14:03:18
Zitat[WS1_WINDSPEED:d] > 17
http://fhem.de/commandref_DE.html#DOIF_Filtern_nach_Zahlen
Titel: Antw:Raffstore fährt immer wieder hoch
Beitrag von: turo am 05 Februar 2016, 14:11:15
Um 10s bei der Antwort geschlagen :( - aber ich hätte auch nicht genau gewusst, ob es nicht [WS1_WINDSPEED::d] hätte heißen müssen.

Aber mit "gt" und "lt" wird das nur in Ausnahmefällen was (wenn die lexikographische Ordnung gleich der numerischen ist) - findest Du den Post noch?

Gruss,
turo
Titel: Antw:Raffstore fährt immer wieder hoch
Beitrag von: Ellert am 05 Februar 2016, 14:18:30
Eigentlich so: [WS1_WINDSPEED:state:d] > 17
Titel: Antw:Raffstore fährt immer wieder hoch
Beitrag von: Fistandantilus am 05 Februar 2016, 14:22:45
Danke Euch beiden mit :state:d scheint es jetzt zu funktionieren. Zumindest bleibt das Teil momentan noch unten :)

VG
F.