FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: mhelgers am 13 Mai 2015, 09:31:51

Titel: Nach Stromausfall Steckdose wieder einschalten
Beitrag von: mhelgers am 13 Mai 2015, 09:31:51
Hallo Zusammen,


vielleicht hier im Forum schon beantwortet aber so richtig gefunden habe ich nichts.

Folgendes Szenario: Teichpumpe wird über eine FS20 Steckdose geschaltet und über fhem gesteuert. Sie läuft täglich von 07:00 - 22:00
Um 07:30 kommt es zu einem Stromausfall. Nachdem der Strom um 08:00 wieder da ist soll fhem die Steckdose wieder einschalten.
Wie macht man das oder gibt es ein globales Modul welches diese Aufgabe übernimmt alle Aktoren in den Zustand von vor dem Stromausfall setzt??


Danke für die Hilfe (und gefährliche Ein-Wort-Sätze wie zB "mach's mit Notify" nutzen mir nix, da wäre ein komplettes Beispiel schon netter)

Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: Elektrolurch am 13 Mai 2015, 10:06:34
Hallo,

define fhem_neustart_not notify global:initialized set Teichpumpe ein

Dann musst Du noch die Uhrzeit abragen (nur einschalten, wenn zwischen 7 und 22 Uhr)

Elektrolurch
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: mhelgers am 13 Mai 2015, 10:54:09
Danke für die Antwort....

könnte man das so machen..???????


define fhem_neustart_not notify global:initialized  { if($hour > 7 || $hour < 22) { fhem "set Teichpumpe ein" } }
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: duke-f am 13 Mai 2015, 11:14:11
Auf den ersten Blick würde ich sagen:
statt
if($hour > 7 || $hour < 22)
lieber
if($hour > 7 && $hour < 22)
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: mhelgers am 13 Mai 2015, 12:56:28
Danke! ich werde es direkt mal testen.. 8)
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: frank am 13 Mai 2015, 15:12:29
funktioniert natürlich nur, wenn der fhem-server beim stromausfall auch "abschmiert".
ausserdem muss "INITIALIZED" gross geschrieben sein.
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: mhelgers am 13 Mai 2015, 16:24:03
TOP! das funktioniert schon!!! :D :D :D :D

Aber gibt es auch eine Möglichkeit den Wert "$hour > 7" durch den vorher definierten Wert zu ersetzen??
Man ist ja bequem und wenn ich die Zeit zum Beispiel im Winter änder dann müßte ich ja blöderweise auch noch daran denken den $hour Wert anzupassen  :-\

die Laufzeit definiere ich so
define TeichpumpeOnOff DOIF ([07:00|1234560]) (set Teichpumpe on) DOELSEIF ([22:00|1234560]) (set Teichpumpe off)
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: Rince am 13 Mai 2015, 18:14:20
Ein Dummy, dessen Wert mit ReadingsVal in eine Variable kopiert wird, die du statt der 7 in den Code schreibst.

$wunschZeitPumpeAn = ReadingsVal("NameDesDummy", "state", undef);
(Ungetestet)

Dann eben statt 7 $wunschZeitPumpeAn schreiben...
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: flurin am 13 Mai 2015, 19:35:10
Zitat von: mhelgers am 13 Mai 2015, 16:24:03
TOP! das funktioniert schon!!! :D :D :D :D

Aber gibt es auch eine Möglichkeit den Wert "$hour > 7" durch den vorher definierten Wert zu ersetzen??
Man ist ja bequem und wenn ich die Zeit zum Beispiel im Winter änder dann müßte ich ja blöderweise auch noch daran denken den $hour Wert anzupassen  :-\

die Laufzeit definiere ich so
define TeichpumpeOnOff DOIF ([07:00|1234560]) (set Teichpumpe on) DOELSEIF ([22:00|1234560]) (set Teichpumpe off)

Versuchs mal so:


define du_begin dummy
set du_begin 07:00

define du_end dummy
set du_end 22:00



define TeichpumpeOnOff DOIF ([[du_begin]-[du_end]] or ([global:?INITIALIZED] and [?[du_begin]-[du_end]]))
  (set Teichpumpe on)
DOELSE
  (set Teichpumpe off)


Gruss
flurin
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: mhelgers am 19 Mai 2015, 07:19:11
Danke für die Antwort, schön das es hier so kreative Köpfe gibt! Weiter so!!
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: flurin am 19 Mai 2015, 13:58:21
Zitat von: mhelgers am 19 Mai 2015, 07:19:11
Danke für die Antwort, schön das es hier so kreative Köpfe gibt! Weiter so!!

Falls du mich meinst, Danke für das Kompliment. Solche Lösungen sind nur möglich, weil andere hier mit viel Aufwand die Voraussetzung dafür geschaffen haben.

Gruss
flurin
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: Ralli am 19 Mai 2015, 14:13:25
Zitat von: flurin am 13 Mai 2015, 19:35:10

define TeichpumpeOnOff DOIF ([[du_begin]-[du_end]] or ([global:?INITIALIZED] and [?[du_begin]-[du_end]]))
  (set Teichpumpe on)
DOELSE
  (set Teichpumpe off)


m.E. muss das Fragezeichen bei global:INITIALIZED da noch weg - denn das ist der Trigger, der auslösen soll und die Zeit wird lediglich als Bedingung noch angehangen.
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: flurin am 19 Mai 2015, 14:30:07
Zitat von: Ralli am 19 Mai 2015, 14:13:25
m.E. muss das Fragezeichen bei global:INITIALIZED da noch weg - denn das ist der Trigger, der auslösen soll und die Zeit wird lediglich als Bedingung noch angehangen.

Siehe "DOIF > Ereignissteuerung über Auswertung von Events".

Gruss
flurin
Titel: Antw:Nach Stromausfall Steckdose wieder einschalten
Beitrag von: Ralli am 19 Mai 2015, 14:33:30
Hast Recht. Habe mich von der Position des Fragezeichen irreführen lassen.