Gelöst: Relative Zeitangabe erzeugt Fehlermeldung. Finde den Fehler nicht

Begonnen von bmwfan, 22 September 2019, 10:24:26

Vorheriges Thema - Nächstes Thema

bmwfan

Hallo,
ich habe eine Beschattungssteuerung, die ab einer bestimmten Uhrzeit und bis zu einer bestimmten Uhrzeit jede Stunde prüfen soll, ob die Kriterien für eine Beschattung erfüllt sind. Das DOIF scheint auch zu triggern, erzeugt jedoch eine Fehlermeldung deren Ursache ich nicht finde. Vielleicht sieht jemand den Fehler, der ja da sein muss.
Mein DOIF mit Erklärung. Dieser Teil "([06:00-18:00,+00:60:00])" ist der, der den Fehler erzeugt.:
((([?Wetter_Pro:fc0_tempMax] > 22 and ([?Wetter_Pro:fc0_weatherDay] =~ "sonnig" or [?Wetter_Pro:fc0_weatherDay] =~ "heiter" or [?Wetter_Pro:fc0_weatherDay] =~ "unterschiedlich bewölkt"))
or [EG_UniSen_06:temperature] >= 24 or [?Wetter_Pro:fc0_tempMax] > 26) and ($month >= 4 || $month <= 10) and ([06:00-18:00,+00:60:00]) and [?du_Beschattung_Haus_Mittag] ne "ja")
(set du_Beschattung_Haus_Mittag ja)
## Beschattung notwendig wenn Vorhersage Aussentemp. > 22 °C UND (heiter oder sonnig oder unterschiedlich bewölkt) ODER Aussentemp. > 26 °C ODER WZ-Temp >= 24°C und immer nur zwischen April
und Oktober, Überprüfung jede Stunde, wenn Dummy Beschatten nicht auf ja (sonst jede Stunde trigger)
Test: Ab 6:00 jede Stunde prüfen Alt:([11:30-19:00,+:60|1234] and !$we) or [11:40-19:00,+:60|57])
DOELSEIF ([du_Tageslicht] eq "dunkel") (set du_Beschattung_Haus_Mittag nein) ## Bei Sonnenuntergang Merker zurücksetzen


und die Fehlermeldung:
READINGS:
     2019-09-22 10:07:59   Device          EG_UniSen_06
     2019-09-21 19:35:22   cmd             2
     2019-09-21 19:35:22   cmd_event       du_Tageslicht
     2019-09-21 19:35:22   cmd_nr          2
     2019-09-22 10:07:59   e_EG_UniSen_06_temperature 23.0
     2019-09-22 06:46:34   e_du_Tageslicht_STATE hell
     2019-09-21 09:09:56   mode            enabled
     2019-09-21 19:35:22   state            Dummy
     2019-09-21 18:00:00   timer_01_c01    22.09.2019 06:00:00
     2019-09-21 18:00:00   timer_02_c01    22.09.2019 18:00:00
     2019-09-22 06:00:00   timer_03_c01    error: Wrong timespec 00:60:00: either HH:MM:SS or {perlcode}


Grüße Jürgen
Synology DS720+ mit Docker-Container und Haupt-FHEM, HM-LAN, Jalousienaktoren HmWired, Shelly-Devices; Raspi 3B+ mit piVCCU ohne FHEM-Instanz, CUL, JeeLink; Raspi 3B+ mit FHEM und HMUARTUSB,  Raspi 3B+ mit HMUARTGPIO, 1-wire, ebusd

Ellert

,+3600 oder ,+01:00, schon mal ne 60 auf der Digitaluhr gesehen?  ;)

bmwfan

60 auf einer Digitaluhr ist durchaus unüblich, stimmt.  :D

Aber 60 Minuten werden als 1 Stunde, auch in der Programmierung, verwendet. Deshalb bin ich gar nicht auf die Idee gekommen, statt 00:60 auch 01:00 zu schreiben. Ich teste es gleich mal.
Synology DS720+ mit Docker-Container und Haupt-FHEM, HM-LAN, Jalousienaktoren HmWired, Shelly-Devices; Raspi 3B+ mit piVCCU ohne FHEM-Instanz, CUL, JeeLink; Raspi 3B+ mit FHEM und HMUARTUSB,  Raspi 3B+ mit HMUARTGPIO, 1-wire, ebusd

Ellert

Zitat von: bmwfan am 22 September 2019, 16:17:15
60 auf einer Digitaluhr ist durchaus unüblich, stimmt.  :D

Aber 60 Minuten werden als 1 Stunde, auch in der Programmierung, verwendet. Deshalb bin ich gar nicht auf die Idee gekommen, statt 00:60 auch 01:00 zu schreiben. Ich teste es gleich mal.
Ein Beispiel wo im Format HH:MM:SS 60 min angegeben werden ist mir noch nicht untergekommen. Sekunden sind in FHEM als Grundeinheit üblich, z.b. bei sleep und mit Sekunden funktioniert es auch, also mit 60 min = 60 min x 60 s/min = 3600 s.

bmwfan

Habs umgestellt und siehe da, es funktioniert problemlos.

Danke und Gruß Jürgen
Synology DS720+ mit Docker-Container und Haupt-FHEM, HM-LAN, Jalousienaktoren HmWired, Shelly-Devices; Raspi 3B+ mit piVCCU ohne FHEM-Instanz, CUL, JeeLink; Raspi 3B+ mit FHEM und HMUARTUSB,  Raspi 3B+ mit HMUARTGPIO, 1-wire, ebusd

Per


bmwfan

Nach etwas überlegen muss ich Dir zustimmen. Hier muß ein logisches UND und kein ODER hinein. Hat trotzdem funktioniert aber vermutlich nur deswegen, da ich auch Temperaturbafragen mit eingebaut habe.
Ich stelle es richtig und schau, ob es dann immer noch funktioniert.

Danke
Synology DS720+ mit Docker-Container und Haupt-FHEM, HM-LAN, Jalousienaktoren HmWired, Shelly-Devices; Raspi 3B+ mit piVCCU ohne FHEM-Instanz, CUL, JeeLink; Raspi 3B+ mit FHEM und HMUARTUSB,  Raspi 3B+ mit HMUARTGPIO, 1-wire, ebusd