Frage zu Rolladensteuerung (Schalten zu bestimmten Zeiten)

Begonnen von DJ-Mix, 14 Mai 2014, 20:52:46

Vorheriges Thema - Nächstes Thema

strauch

So ich will mal die Thresholds erklären, was denke ich verwirrt ist das ich die Zahl im Namen habe:

define threshold_azimuth_260 threshold myTwilight:azimuth:0:260

dieser Threshold macht nichts anderes als wenn der Wert unter 260 ist, als state on zu haben und wenn er über 260 steht ein state off zu haben.

define threshold_Rollladen_azimuth threshold myTwilight:azimuth:0:140 AND threshold_azimuth_260:state:on KZ_Rollo2|set @ pct 50|set @ on|1

Dieser Threshold schaut ob der Wert unter 140 oder über 140 ist und zusätzlich ob der andere threshold auf on oder off steht. Wenn nun der Wert unter 140 ist und der andere Threshold auf on, dann gibt sendet der Threshold ein on an den Rollo, ist der Wert über 140 und der andere Threshold on, dann sendet er ein pct 50. Steigt der Wert nun auf über 260, sende der andere Threshold an diesen ein off und er schaltet wieder auf on zurück.

Willst du nun den Wert von 260 auf 240 ändern musst du folgendes ändern
define threshold_azimuth_260 threshold myTwilight:azimuth:0:240

besser wäre es wohl den threshold nicht "threshold_azimuth_260" zu nennen sondern irgendwie "threshold_azimuth_ober_schaltschwelle" o.ä.

Du kannst jetzt noch in den Weekdaytimer folgendes einbauen, dann ist der threshold nur aktiv, wenn der weekdaytimer sagt der Rollo ist oben (keine Ahnung ob das so geht musst du mal testen):
define Rollo_KZ1 WeekdayTimer Rollo_KZ1 12345|07:30|on;{fhem("attr threshold_Rollladen_azimuth disable 0")} 12345|{sunset("REAL",480,"17:00","20:00")}|off;{fhem("attr threshold_Rollladen_azimuth disable 1")}
define Rollo_KZ1_WE WeekdayTimer Rollo_KZ1 67|08:30|on;{fhem("attr threshold_Rollladen_azimuth disable 0")} 12345|{sunset("REAL",480,"17:00","20:00")}|off;{fhem("attr threshold_Rollladen_azimuth disable 1")}
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

DJ-Mix

@Strauch
danke für dein Hilfe.  ;)

Leider kennt er das Attribut attr threshold_Rollladen_azimuth disable 0 bzw. attr threshold_Rollladen_azimuth disable 1 nicht.
FHEM übernimmt dann nur den Code bis zum ersten on;

Habe es auch mal mit Set versucht, bringt aber auch kein Ergebnis.

Gruß
Markus

strauch

Klappt es denn wenn du
attr threshold_Rollladen_azimuth disable 1 direkt oben in die Zeile eintippst, ansonsten wenn er den Code nur bis zum on nimmt, dann müssen wir halt alles in geschweifte Klammern setzten:

define wd_Rollo_KZ1 WeekdayTimer Rollo_KZ1 12345|07:30|{fhem("set Rollo_KZ1 on;attr threshold_Rollladen_azimuth disable 0")} 12345|{sunset("REAL",480,"17:00","20:00")}|{fhem("set Rollo_KZ1 off;attr threshold_Rollladen_azimuth disable 1")}
define wd_Rollo_KZ1_WE WeekdayTimer Rollo_KZ1 67|08:30|{fhem("set Rollo_KZ1 on;attr threshold_Rollladen_azimuth disable 0")} 12345|{sunset("REAL",480,"17:00","20:00")}|{fhem("set Rollo_KZ1 off;attr threshold_Rollladen_azimuth disable 1")}
FHEM 5.6 VMware mit Debian. 1 CUL für FS20 und HMLAN für Homematic, HM-CC-RT-DN, HM-LC_Sw1PBU-FM, HM-LC-Bl1PBU-FM,  HM-SEC-SC, HM-SEC-SC-2, HM-LC-Sw1-Pl2, HM-Sec-RHS, ASH2200, FHT80B, S20KSE, Sonos, XBMC, FB_Callmonitor, SMLUSB, Arduino Firmata, uvm.

Damian

#33
Zitat von: strauch am 26 Mai 2014, 14:53:34

define wd_Rollo_KZ1 WeekdayTimer Rollo_KZ1 12345|07:30|{fhem("set Rollo_KZ1 on;attr threshold_Rollladen_azimuth disable 0")} 12345|{sunset("REAL",480,"17:00","20:00")}|{fhem("set Rollo_KZ1 off;attr threshold_Rollladen_azimuth disable 1")}
define wd_Rollo_KZ1_WE WeekdayTimer Rollo_KZ1 67|08:30|{fhem("set Rollo_KZ1 on;attr threshold_Rollladen_azimuth disable 0")} 12345|{sunset("REAL",480,"17:00","20:00")}|{fhem("set Rollo_KZ1 off;attr threshold_Rollladen_azimuth disable 1")}


Man kann neuerdings vor dem Deaktivieren des Moduls eines der beiden definierten Kommandos (cmd1_gt oder cmd2_lt) vom THRESHOLD-Modul ausführen lassen : (siehe hier: http://forum.fhem.de/index.php/topic,10580.msg170921.html#msg170921)

Hier als Beispiel:

attr  threshold_Rollladen_azimuth setOnDeactivated cmd1_gt
define wd_Rollo_KZ1 WeekdayTimer  threshold_Rollladen_azimuth 12345|07:30|active 12345|{sunset("REAL",480,"17:00","20:00")}|deactivated set @ %


Damit es funktioniert braucht man natürlich die aktuelle Version von THRESHOLD.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

DJ-Mix

@strauch

er übernimmt dann als Next Value / State {fhem("set

@Damian
habe ein Update gemacht, aber setOnDeactivated kennt er trotzdem nicht



Gruß
Markus

Damian

Zitat von: DJ-Mix am 26 Mai 2014, 17:05:22

@Damian
habe ein Update gemacht, aber setOnDeactivated kennt er trotzdem nicht


unter:  http://fhem.de/commandref_DE.html#THRESHOLD

unter Attributes

steht

setOnDeactivated

Kommando, welches vor dem Deaktivieren ausgeführt werden soll. Mögliche Angaben: cmd1_gt, cmd2_lt


also muss es online verfügbar sein.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

Damian

#36
Zitat von: Damian am 26 Mai 2014, 17:11:12
unter:  http://fhem.de/commandref_DE.html#THRESHOLD

unter Attributes

steht

setOnDeactivated

Kommando, welches vor dem Deaktivieren ausgeführt werden soll. Mögliche Angaben: cmd1_gt, cmd2_lt


also muss es online verfügbar sein.

Gruß

Damian

Du hast nicht etwa das Uralt-Modul aus dem THRESHOLD-Thread genommen. Das aktuelle Modul ist per FHEM-Update verfügbar. Ich habe gerade die alte Version aus dem ersten Post des THRESHOLD-Thread entfernt, damit keiner auf die Idee kommt das falsche Modul zu laden.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

DJ-Mix

@Damian

jetzt hat es geklappt. Habe nun die aktuelle Version von THRESHOLD drauf.
wenn es nun noch mit meinem Anliegen funktioniert, wäre das perfekt . . . .  ;)

Gruß
Markus

DJ-Mix

@Strauch / Damian

jetzt wird define threshold_Rollladen_azimuth threshold myTwilight:azimuth:0:140 AND threshold_azimuth_260:state:on KZ_Rollo2|set @ pct 50|set @ on|1
nicht mehr aktualisiert. Der Status steht auf dem 2014-05-26 13:40:24 - somit wird der Rollladen nicht geschaltet.

attr  threshold_Rollladen_azimuth setOnDeactivated cmd1_gt
define wd_Rollo_KZ1 WeekdayTimer  threshold_Rollladen_azimuth 12345|07:30|active 12345|{sunset("REAL",480,"17:00","20:00")}|deactivated set @ %

schaltet auch nicht.

Gruß
Markus

Damian

Zitat von: DJ-Mix am 27 Mai 2014, 19:19:13
@Strauch / Damian

jetzt wird define threshold_Rollladen_azimuth threshold myTwilight:azimuth:0:140 AND threshold_azimuth_260:state:on KZ_Rollo2|set @ pct 50|set @ on|1
nicht mehr aktualisiert. Der Status steht auf dem 2014-05-26 13:40:24 - somit wird der Rollladen nicht geschaltet.

attr  threshold_Rollladen_azimuth setOnDeactivated cmd1_gt
define wd_Rollo_KZ1 WeekdayTimer  threshold_Rollladen_azimuth 12345|07:30|active 12345|{sunset("REAL",480,"17:00","20:00")}|deactivated set @ %

schaltet auch nicht

Gruß
Markus

poste mal Output von "list threshold_Rollladen_azimuth"

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

DJ-Mix

#40
Internals:
   DEF        myTwilight:azimuth:0:100 AND threshold_azimuth:state:on CUL_HM_HM_LC_Bl1PBU_FM_256453|set @ pct 50|set @ on|1
   NAME       threshold_Rollladen_azimuth
   NR         376
   NTFY_ORDER 50-threshold_Rollladen_azimuth
   STATE      initialized
   TYPE       THRESHOLD
   cmd1_gt    set CUL_HM_HM_LC_Bl1PBU_FM_256453 pct 50
   cmd2_lt    set CUL_HM_HM_LC_Bl1PBU_FM_256453 on
   cmd_default 1
   hysteresis 0
   init_desired_value 100
   offset     0
   operator   AND
   sensor     myTwilight
   sensor2    threshold_azimuth
   sensor2_reading state
   sensor2_state on
   sensor_reading azimuth
   Readings:
     2014-05-27 19:41:57   cmd             wait for next cmd
     2014-05-27 19:41:57   desired_value   100
     2014-05-27 19:41:57   mode            active
     2014-05-26 13:40:24   sensor2_state   on
     2014-05-26 13:52:31   sensor_value    189.89
     2014-05-27 10:00:49   state           active 100.0
     2014-05-27 19:41:57   threshold_max   100
     2014-05-27 19:41:57   threshold_min   100
Attributes:
   disable    1")}
   number_format %.1f
   setOnDeactivated cmd1_gt
   state_format _m _dv

Ps. Bitte nicht an der Namensgebung stören. Ich benenne diese um wenn es funktioniert . . . . .

Gruß
Markus

Damian

disable    1")}

ist falsch, da scheint die Konstruktion mit dem sunset im Aufruf  des WeekdayTimers nicht richtig zu funktionieren:

lösche erstemal das disable attribut

und teste erst mal mit festen Zeiten:

define wd_Rollo_KZ1 WeekdayTimer  threshold_Rollladen_azimuth 12345|07:30|active 12345|20:00|deactivated set @ %

wenn das klappt, dann können wir weiter schauen.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

DJ-Mix

@Damian

leider funktioniert es nicht. Der Rollladen fährt immer auf 100% egal welcher Status THRESHOLD anzeigt.
Wenn ich Manuell runter fahre (Bsp. um 20:00 Uhr) wird er kurze Zeit später auch wieder hoch gefahren.
Bin echt ratlos.

Gruß
Markus

Damian

Zitat von: DJ-Mix am 29 Mai 2014, 21:46:07
@Damian

leider funktioniert es nicht. Der Rollladen fährt immer auf 100% egal welcher Status THRESHOLD anzeigt.
Wenn ich Manuell runter fahre (Bsp. um 20:00 Uhr) wird er kurze Zeit später auch wieder hoch gefahren.
Bin echt ratlos.


Also, wenn dein THRESHOLD-Modul den Status "deactivated" anzeigt. Dann ist es auch deaktiviert und macht auch nichts. Wenn der Status von  threshold_Rollladen_azimuth "active" ist, dann wurde es nicht korrekt über den weekdaytimer deaktiviert (siehe Log).

Wenn dein Rolladen trotz des Status "deactivated" sich noch selbstständig macht, dann musst du noch etwas anders definiert haben, was den Rolladen bewegt.

Gruß

Damian
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

DJ-Mix

@Damian

myTwilight:azimuth:0:100 AND threshold_azimuth:state:on CUL_HM_HM_LC_Bl1PBU_FM_52A6AB|set @ pct 50|set @ on
liefert aktuell den Status "Active:100" - cmd2_lt wird ausgeführt (Rollladen fährt auf hoch)
myTwilight:azimuth:0:200 steht auf off
myTwilight steht bei 315.88
threshold_Rollladen_azimuth 12345|07:30|active 12345|20:00|deactivated set @ % steht auf deactivated

Gruß
Markus