Twilight und Horizont für lichtsteuerung

Begonnen von Wasserwerk33, 15 August 2017, 19:53:00

Vorheriges Thema - Nächstes Thema

Wasserwerk33

Hallo Leute

Normales Licht anschalten per Horizont klappt ohne Probleme. Würde nur gerne noch zusätzlich twillight mit einfügen. Nur es klappt nicht. Habe versucht es mir aus anderen zusammen zubauen, dieses hat aber nicht wirklich geklappt.

Internals:
   COMMAND    set SteckdoseStehlampe on
   DEF        *{sunset("REAL",0,"16:00","22:30")} set SteckdoseStehlampe on
   NAME       EsszimmerLicht
   NR         49
   NTM        20:48:43
   PERIODIC   yes
   RELATIVE   no
   REP        -1
   STATE      Next: 20:48:43
   TIMESPEC   {sunset("REAL",0,"16:00","22:30")}
   TRIGGERTIME 1502822923
   TRIGGERTIME_FMT 2017-08-15 20:48:43
   TYPE       at
   READINGS:
     2017-08-14 20:50:43   state           Next: 20:48:43
Attributes:
   room       steckdose


Internals:
   DEF        ([sunset("REAL",0,"16:00","22:30")] or  [Helligkeitswert:status]>6)    (set SteckdoseStehlampe on)
   NAME       LichtEsszimmer
   NR         83
   NTFY_ORDER 50-LichtEsszimmer
   STATE      initialized
   TYPE       DOIF
   READINGS:
     2017-08-15 19:47:51   Device          Helligkeitswert
     2017-08-12 10:30:14   cmd             0
     2017-08-12 10:30:14   state           initialized
     2017-08-13 21:07:43   timer_01_c01    error: Wrong timespec sunset("REAL",0,"16:00","22:30"): either HH:MM:SS or {perlcode}
     2017-08-15 19:47:51   warning         condition c01: Argument "" isn't numeric in numeric gt (>)

   condition:
     0          DOIF_time_once($hash,0,$wday) or  ReadingValDoIf($hash,'Helligkeitswert','status')>6
   devices:
     0           Helligkeitswert
     all         Helligkeitswert
   do:
     0:
       0          set SteckdoseStehlampe on
     1:
   helper:
     event      azimuth: 280.72,elevation: 7.84,twilight: 100,twilight_weather: 95.8,compasspoint: west
     globalinit 1
     last_timer 1
     sleeptimer -1
     triggerDev Helligkeitswert
     triggerEvents:
       azimuth: 280.72
       elevation: 7.84
       twilight: 100
       twilight_weather: 95.8
       compasspoint: west
     triggerEventsState:
       azimuth: 280.72
       elevation: 7.84
       twilight: 100
       twilight_weather: 95.8
       compasspoint: west
   internals:
   itimer:
   localtime:
   readings:
     0           Helligkeitswert:status
     all         Helligkeitswert:status
   regexp:
     0:
     all:
   state:
     STATE:
   time:
     0          sunset("REAL",0,"16:00","22:30")
   timeCond:
     0          0
   timer:
     0          0
   timers:
     0           0
   trigger:
Attributes:
   do         always
   room       steckdose


Oder ist es besser diesen anders zu programmieren? Mit watchdog ? Oder ne andere Idee?

Danke für die Hilfe

amenomade

sunset() ist aber ein Perl Befehl. Deswegen musst Du so schreiben (geschleifte Klammern dazu):
([{sunset("REAL",0,"16:00","22:30")}] or  [Helligkeitswert:status]>6)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Wasserwerk33

Ah Super werde es direkt nachher ausprobieren wenn ich ausgeschlafen habe. ;)

Danke erstmal

Gesendet von meinem ALE-L21 mit Tapatalk


FranzB94

Hi amenomade!
Zitat von: amenomade am 15 August 2017, 20:08:36
...geschleifte Klammern...

Ich dachte bisher, die heißen geschweifte Klammern!

Gruß Franz

Frank_Huber

#4
Zitat von: amenomade am 15 August 2017, 20:08:36
sunset() ist aber ein Perl Befehl. Deswegen musst Du so schreiben (geschleifte Klammern dazu):
([{sunset("REAL",0,"16:00","22:30")}] or  [Helligkeitswert:status]>6)

Alternativ das Twilight Modul verwenden.
Dann Syntax so:
[{twilight("Sonnenstand","sr_civil","05:45","08:00")}]
zum Sunrise Civil, jedoch nicht vor 5:45 und nicht nach 08:00. Sonnenstand ist mein Device Name vom Twilight Modul.
Hier hast dann vom Twilight Modul mehrer Sunrise Zeiten zur Wahl.

Thyraz

Zitat von: FranzB94 am 16 August 2017, 09:16:37
Hi amenomade!
Ich dachte bisher, die heißen geschweifte Klammern!

Gruß Franz

Nein nein, die Ausbuchtung in der Mitte kommt vom zu lange hinter sich dran herschleifen. ;)
Fhem und MariaDB auf NUC6i5SYH in Proxmox Container (Ubuntu)
Zwave, Conbee II, Hue, Harmony, Solo4k, LaMetric, Echo, Sonos, Roborock S5, Nuki, Prusa Mini, Doorbird, ...

amenomade

Danke für die Korrektur :) Deutsch ist nicht meine Muttersprache. Ihr habt aber alle verstanden, was ich meinte  ::)
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus

Wasserwerk33

Hi

Also getriggert wird. Steht zumindestens schon mal drin.

Nur ich habe nen error? Habe mein List nochmal angehangen

Internals:
   DEF        ([{sunset("REAL",0,"16:00","22:30")}] or  [Helligkeitswert:status]>6) (set SteckdoseStehlampe on)
   NAME       LichtEsszimmer
   NR         83
   NTFY_ORDER 50-LichtEsszimmer
   STATE      initialize
   TYPE       DOIF
   READINGS:
     2017-08-16 12:58:55   Device          Helligkeitswert
     2017-08-16 12:58:55   error           condition c01: Unrecognized character \xC2; marked by <-- HERE after ,$wday) or<-- HERE near column 33, line 1.

     2017-08-16 04:28:55   state           initialize
     2017-08-16 03:19:03   timer_01_c01    16.08.2017 20:46:42
   condition:
     0          DOIF_time_once($hash,0,$wday) or  ReadingValDoIf($hash,'Helligkeitswert','status')>6
   days:
   devices:
     0           Helligkeitswert
     all         Helligkeitswert
   do:
     0:
       0          set SteckdoseStehlampe on
     1:
   helper:
     event      azimuth: 167.04,elevation: 49.7,twilight: 100,twilight_weather: 100,compasspoint: south-southeast
     globalinit 1
     last_timer 1
     sleeptimer -1
     triggerDev Helligkeitswert
     triggerEvents:
       azimuth: 167.04
       elevation: 49.7
       twilight: 100
       twilight_weather: 100
       compasspoint: south-southeast
     triggerEventsState:
       azimuth: 167.04
       elevation: 49.7
       twilight: 100
       twilight_weather: 100
       compasspoint: south-southeast
   internals:
   itimer:
   localtime:
     0          1502909202
   readings:
     0           Helligkeitswert:status
     all         Helligkeitswert:status
   realtime:
     0          20:46:42
   regexp:
     0:
     all:
   state:
     STATE:
   time:
     0          {sunset("REAL",0,"16:00","22:30")}
   timeCond:
     0          0
   timer:
     0          0
   timers:
     0           0
   trigger:
   triggertime:
     1502909202:
       localtime  1502909202
       hash:
Attributes:
   do         always
   room       steckdose

amenomade

Du hast ein (unsichtbares) Sonderzeichen in deiner DEF. Einfach auf DEF klicken, alles löschen, und wieder eintippen.
Pi 3B, Alexa, CUL868+Selbstbau 1/2λ-Dipol-Antenne, USB Optolink / Vitotronic, Debmatic und HM / HmIP Komponenten, Rademacher Duofern Jalousien, Fritz!Dect Thermostaten, Proteus


Wasserwerk33

#10
Super es klappt. Aber wie verhinde ich das schalten. Wenn ich ins Bett gehe. Den bei jedem Event lässt er wieder aus

Kann ich es anstatt >6 einfach 7-9 schreiben?

Frank_Huber

Mach "or  [?Helligkeitswert:status]>6" draus, dann schaltet er nur zum sunset.

Gesendet von meinem S3_32 mit Tapatalk


Frank_Huber

Oder ein DOELSEIF ([00:00]) ans Ende und Attribut repeatsame auf 1:1

Gesendet von meinem S3_32 mit Tapatalk


CoolTux

Oder Frage zusätzlich Deinen Bewohnerstatus ab  ;D
So viele Möglichkeiten.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Wasserwerk33