RandomTimer - neues Modul

Begonnen von Dietmar63, 28 Juli 2013, 15:52:40

Vorheriges Thema - Nächstes Thema

sasquuatch

#390
danke für die schnelle antwort, meine 2. Frage wird ja erst eine seite vorne dran beantwort, bei antwort 364-367, habe ich erst beim rückwärt lesen bemerkt :s

ich habe den switchmode so verstanden, dass z.B 800/200 nach frühstens 200 sekunden schaltet und spätestens nach 800 sekunden. was er aber dabei schaltet ist halt zufall. demnach könnte er z.b. nach 200 sek schon wieder ausschalten und erst nach 800 sekunden wieder einschalten, was eine länger ausphase als einphase bedeutet.

eventuell könnte man ein SwitchmodeOn (2000/1000) und ein SwitchmodeOff (700/300) einbauen oder verstehe ich das gerade falsch?
vielleicht reicht auch nur ein SwitchmodeOn und Switchmode. Ist nix eingestellt, gilt Switchmode für beides und ist standard auf 800/200 eingestellt. Ist SwitchmodeOn eingestellt, gilt Switchmode automatisch nur fürs ausschalten. sind nur als idee gemeint.....

ach ja, danke überhaupt für dieses tolle modul.

Fredi69

Zitat von: sasquuatch am 13 August 2016, 09:26:16
Zwei kleine Fragen, z.Zt. nutze ich den randomtimer mit einem Zwischenstecker um eine Lampe ein und auszuschalten. Ist es möglich den so einzustellen, dass die on Phasen länger als die off Phasen sind oder macht der Randomtimer das jetzt schon?

Ich möchte jetzt noch an einem 2. Zwischenstecker einen TV Simulator hängen. Da ist es eher doof wenn der immer wieder an und aus geht. Ich möchte hier nur ein zufälliges einschalten innerhalb einer Zeitspanne A (vielleicht immer die Stunde vor Sonnenuntergang, aber nie vor 18h) und ein zufälliges ausschalten innerhalb einer Zeitspanne B (z. B.  von 23 - 1h) haben, ist dies irgendwie möglich?
Genau für diesen Anwendungsfall habe ich den Switchmode auf 950/100 eingestellt.
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

sasquuatch

Zitat von: Fredi69 am 13 August 2016, 10:19:48
Genau für diesen Anwendungsfall habe ich den Switchmode auf 950/100 eingestellt.
demnach stehen die 950 sekunden für die Zeit innerhalb der das Device ausgeschaltet wird und die 100 sekunden innerhalb der das device eingeschaltet wird?
dann wäre ein SwitchmodeOn überflüssig....

Fredi69

Zitat von: sasquuatch am 13 August 2016, 12:07:47
demnach stehen die 950 sekunden für die Zeit innerhalb der das Device ausgeschaltet wird und die 100 sekunden innerhalb der das device eingeschaltet wird?
dann wäre ein SwitchmodeOn überflüssig....
Der Switchmode hat nichts mit Sekunden zu tun, es ist eine Wahrscheinlichkeit. Mit dem Parameter 950 ist die Wahrscheinlichkeit sehr hoch, dass das Gerät durch den RT eingeschaltet wird wenn es aus ist. Mit dem Parameter 100 ist die Wahrscheinlichkeit sehr gering, dass das Gerät durch den RT ausgeschaltet wird wenn es an ist.

Aus der Doku:
Setting the switchmode you can influence the behavior of switching on/off. The parameter has the Format 999/999 and the default ist 800/200. The values are in "per mill". The first parameter sets the value of the probability that the device will be switched on when the device is off. The second parameter sets the value of the probability that the device will be switched off when the device is off.
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Dietmar63

Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Fredi69

Warum erzeugt ein RandomTimer zwischen Start- und Stoppzeit dauernd Events, obwohl der RandomTimer State auf disabled steht?
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

Dietmar63

#396
Weil das ganze so gebaut ist, dass unabhängig von enable/disable der Zufallsgenerator läuft, aber bei disable  das Gerät nicht geschaltet wird. Du kannst so durch Presence den enable/disable Status des RT verändern und RT regiert korrekt. Man hätte so etwas vielleicht noch durch notify lösen können, aber wäre vermutlich sehr fehleranfällig gewesen.

Welche Events stören? Vielleicht kann ich sie unterbinden.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Fredi69

Zitat von: Dietmar63 am 06 Oktober 2016, 06:58:36
Welche Events stören? Vielleicht kann ich sie unterbinden.
2016-10-06 21:32:55 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:32:55 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:32:55 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:32:57 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:32:57 RandomTimer ZufallsTimer_HUEDevice3 active: 0
2016-10-06 21:32:57 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:33:14 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:33:14 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:33:14 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:33:16 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:33:16 RandomTimer ZufallsTimer_HUEDevice3 active: 0
2016-10-06 21:33:16 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:33:34 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:33:34 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:33:34 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:33:37 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:33:37 RandomTimer ZufallsTimer_HUEDevice3 active: 0
2016-10-06 21:33:37 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:33:54 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:33:54 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:33:54 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:33:57 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:33:57 RandomTimer ZufallsTimer_HUEDevice3 active: 0
2016-10-06 21:33:57 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:34:14 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:34:14 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:34:14 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:34:17 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:34:17 RandomTimer ZufallsTimer_HUEDevice3 active: 0
2016-10-06 21:34:17 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:34:34 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:34:35 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:34:35 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:34:36 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:34:36 RandomTimer ZufallsTimer_HUEDevice3 active: 0
2016-10-06 21:34:36 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:34:54 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:34:54 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:34:54 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:34:56 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:34:56 RandomTimer ZufallsTimer_HUEDevice3 active: 0
2016-10-06 21:34:56 RandomTimer ZufallsTimer_HUEDevice3 disabled
2016-10-06 21:35:14 RandomTimer ZufallsTimer_HUEDevice2 disabled
2016-10-06 21:35:14 RandomTimer ZufallsTimer_HUEDevice2 active: 0
2016-10-06 21:35:14 RandomTimer ZufallsTimer_HUEDevice2 disabled
fhem auf Raspberry Pi 3
FRITZ!Box7490, Fritz!Box 3270 AP, 3xHMLAN, CUL868, nanoCUL 433 für IT, JeeLink für LaCrosse, HUE Bridge 2.0, Samsung UE46C8790 (STV), mehrere Homematic, Intertechno, Shelly und LaCrosse Komponenten

stebar_

Hallo zusammen,
ich habe folgendes Problem: Ich möchte mithilfe eines Dummys (State: on/ off) den disableCond Schalten, nur hat dieser keine Auswirkungen. Hier mein Code:

# Anwesenheitssimulation Allgemein definieren
define anwesend_SIM dummy
attr anwesend_SIM room System
attr anwesend_SIM webCmd on:off
# Anwesenheitssimulation Draußen definieren
define Laterne_RND RandomTimer *{sunset_abs()} Laterne *{sunset_abs(2*3600)} 480
attr Laterne_RND disableCond (!anwesend_SIM())

Hat jemand eine Idee was falsch ist?

Dietmar63

Wird schon besser.
Wenn es komplett klappt, checke ich es ein.

2016.10.07 22:21:12 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 22:12:52 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 22:04:31 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:56:01 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:47:31 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:39:27 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:31:01 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:22:39 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:14:32 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:05:50 3: Nachricht von ZufallsTimerTv: disabled
2016.10.07 21:05:50 3: Nachricht von ZufallsTimerTv: active: 0
2016.10.07 21:05:50 3: Nachricht von ZufallsTimerTv: disabled
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

Dietmar63

Zitat von: stebar_ am 06 Oktober 2016, 22:09:38
Hallo zusammen,
ich habe folgendes Problem: Ich möchte mithilfe eines Dummys (State: on/ off) den disableCond Schalten, nur hat dieser keine Auswirkungen. Hier mein Code:

# Anwesenheitssimulation Allgemein definieren
define anwesend_SIM dummy
attr anwesend_SIM room System
attr anwesend_SIM webCmd on:off
# Anwesenheitssimulation Draußen definieren
define Laterne_RND RandomTimer *{sunset_abs()} Laterne *{sunset_abs(2*3600)} 480
attr Laterne_RND disableCond (!anwesend_SIM())

Hat jemand eine Idee was falsch ist?

schalte mal verbose 5, dann kommst du vielleicht schon sebst dahinter.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

stebar_

Zitat von: Dietmar63 am 07 Oktober 2016, 22:29:09
schalte mal verbose 5, dann kommst du vielleicht schon sebst dahinter.
Danke für den Tipp, was ich gesehen habe ist, dass der dummy sauber ein und aus schaltet, es aber keine Auswirkungen auf dem RND Timer hat. Noch einen Tipp?

Dietmar63

Ich meine verbose auf Laterne_RND
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

stebar_

Zitat von: Dietmar63 am 07 Oktober 2016, 23:55:02
Ich meine verbose auf Laterne_RND
Im log steht, Undefined subroutine und EVALUATING beim disableCond

Dietmar63

Die Funktion anwesend_SIM() muss in 99_utils eingebaut sein.
99_utils mit reload neu laden oder einen shutdown restart ausführen.

reload ist der schnellere Weg.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm