zeitverzögertes Einschalten

Begonnen von Laola, 09 Juli 2013, 17:10:38

Vorheriges Thema - Nächstes Thema

Laola

Hallo Zusammen,
 als Anfänger habe ich folgende Aufgabenstellung und ich komme einfach nicht weiter.

Regensensor (FS20 SR) soll bei geöffneter Terassentür (FHT 80TF) und offenen Rollo (FHT 80TF)  bei Regen über die Markisensteuerung (FS20 MS)schliessen. Die Markisensteuerung möchte ich über die Steckdose1 (FS20 ST-2) aktivieren, bzw. deaktivieren. Wenn ich jetzt nach dem Regen die Rollo hoch fahre (externer Schalter) ist alles ok. Also es klappt alles soweit.
Jetzt mein Problem:
Wenn ich die jetzt die Terassentür öffne fährt der Rollo sofort wieder zu, da sich noch Feuchtigkeit auf dem Regensensor befindet.  Als Lösung sehe ich eine Einschaltverzögerung für die Steckdose1, ausgelöst durch das öffen der Terassentür.
Aus Codeschnipsel habe ich folgendes in meiner fhem.cfg definiert:
#Steckdose Regensensor
define Steckdose1 FS20 370d 31
attr Steckdose1 room Schlafzimmer
define FileLog_Steckdose1 FileLog ./log/Steckdose1-%Y.log Steckdose1
attr FileLog_Steckdose1 logtype text
attr FileLog_Steckdose1 room FS20

#Überwachung Regensensor
define storeLastOff notify .*:off { $data{lastOffTime} = time() }
define sunSetOn notify Terassentuer:on { \
if($data{lastOffTime}+5*60 < time() &&\
fhem "set Steckdose1 on";;\
 }\
}

Logfile:
storeLastOff return value: 1373379906

Ich habe mir fast schon beide Arme ausgegoogelt und komme einfach nicht weiter. Kann mir bitte jemand einen Tip geben?

Vielen Dank!

Grüsse

Laola

Zrrronggg!

ZitatRegensensor (FS20 SR) soll bei geöffneter Terassentür (FHT 80TF) und offenen Rollo (FHT 80TF) bei Regen über die Markisensteuerung (FS20 MS)schliessen. Die Markisensteuerung möchte ich über die Steckdose1 (FS20 ST-2) aktivieren, bzw. deaktivieren. Wenn ich jetzt nach dem Regen die Rollo hoch fahre (externer Schalter) ist alles ok. Also es klappt alles soweit.
Jetzt mein Problem:
Wenn ich die jetzt die Terassentür öffne fährt der Rollo sofort wieder zu, da sich noch Feuchtigkeit auf dem Regensensor befindet. Als Lösung sehe ich eine Einschaltverzögerung für die Steckdose1, ausgelöst durch das öffen der Terassentür.

Die Lösung verstehe ich nicht, kannst du genauer formulieren, was unter welchen Bedingungen passieren soll?
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

betateilchen

Wenn der Regensensor das erste Mal "nass" meldet, einen Dummy definieren, dann das Rollo und/oder Markise ansteuern.
Wenn der Regensensor wieder "trocken" meldet, den Dummy automatisch wieder löschen.
Solange der Dummy exisitiert, darf der Regensensor die Rollo/Markisensteuerung nicht noch einmal ausführen.

Dann kannst die Tür auf- und zumachen so oft Du willst und es wird nix mehr passieren.
-----------------------
Formuliere die Aufgabe möglichst einfach und
setze die Lösung richtig um - dann wird es auch funktionieren.
-----------------------
Lesen gefährdet die Unwissenheit!

Zrrronggg!

Ob wir einen Dummy nehmen oder nicht, finden wir später raus.
Du beschreibst bitte erstmal nur wie sich das VERHALTEN soll.

Also

Wenn der Regensensor nass wird und die Tür auf und das Rollo offen, soll die Markise zu gemacht werden?

Das kann man bereits so darstellen, das eine zwischenzeitliches öffnen und schliessen der Tür gar keine Folge hat. dA braucht man keinen Dummy.

Es wäre also wirklich wichtig erstmal VOLLSTÄNDIG zu beschreiben, wie die Abhängigkeiten sein sollen. WAS ist nur Bedingung und WAS soll AUSLÖSEN.

Wenn ich dich recht verstehe, ist die Tür eigentlich nur als Bedingung gedacht und nur der Regensensor Auslöser.  Oder soll das öffnen der Tür auch auslösen, wenn der Regensensor nass ist, die Tür aber bisher zu war?

Verstehst du was ich meine? ZUERST sorgfältig nachdenken/beschreiben was man will. Zumindest andere können dir sonst kaum helfen (und auch man selber kommt da auf die falsche Fährte)


Und da ich keinen Regensensor habe wäre es auch wichtig zu wissen, wie der agiert. Sendet der alle par minuten seinen Zustand oder nur Wechsel und was genau?
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Zrrronggg!

Hab ich dich jetzt verschreckt? Will gerne helfen...
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL

Laola

Hallo Zrrronggg, hallo betateilchen,

danke für die Antworten. Sorry, aber berufsbedingt hat sich die Beantwortung vezögert.

Zrrrong, nein verschreckt hast Du mich nicht. Das Verschrecken schaffe ich alleine :-)

Aber Du hast recht da war ein Fehler drin. Es sollte nicht auf die Terassentür reagieren, sondern auf die Überwachung ob sich der Status der Rolloüberwachung verändert hat.

Das versuche ich zu lösen:

Durch das Öffen des Rollos wird die Steckdose1 eingeschaltet, aber mit folgenden Bedingungen:
FHT80TF (Rolloüberwachung) wurde die letzten 5 Min nicht von off auf on geschaltet. (keine Statusänderung n dem Zeitraum von 5Min. von off auf on)
#5 Min ist die Zeit in der die Heizung des Regensensors die Feuchtigkeit verdrängt hat. Nach Ablauf der 5 Min
sollter die Steckdose1 auf on schalten.
'Regenüberwachung wieder aktiv.

Anbei noch die gewünsche Funktionsbeschreibung. Vertieft Euch bitte nicht darin, mir geht es primär um die oben aufgeführte Bedingung.

Funktionsbeschreibung:
Es fängt an zu regnen:
Ausgangssituation der Komponenten
Signal Rollo offen
Terassentür offen
Regensensor direkt eingeschaltet durch zwei Relais
Markisensteuerung eingeschaltet durch Steckdose1 (on)

Es fängt an zu regnen:
- Regensensor reagiert mit Signal an die Rollosteuerung und Rollo fährt zu. Wenn der Rollo zu ist geht Regensensor auf off ( durch Relais Regensensor schaltet auf stromlos).
  (Grund, sonst würde die Heizung des Regensensor die ganze Zeit laufen Strom sparen)
- Steckdose1 geht auf off und die angeschlossene Rollosteuerung ist stromlos

Regen zu ende.
Rollo wird über externen Schalter hochgefahren.
- Signal Terassentür on
-Signal Rollo geht auf on (Überwachung duch FHT 80TF)
 Regensensor wird durch die Relais bestromt.
Steckdose1 schaltet durch die Feuchtigkeit auf dem Regensensor und die Rollosteuerung wird bestromt. jetzt würde der Rollo zufahren, da die Heizung des Regensensor ca. 5 Min benötigt um die Feuchtigkeit zu beseitigen. Jetzt sollte die oben aufgeführte Bedingung greifen.

Danke für die Unterstützung.

Grüsse Laola

Zrrronggg!

Also gut: Hier mal eine abstraktes Beispiel wie man sowas mit einem Dummy lösen kann (der TrockungsVerzoegerung heisst):

define act_on_Rollo_up notify rollo:on { if (Value("TrockungsVerzoegerung") ne "an" && Value("Irgendwasanderes") eq "off") { fhem ("set Steckdose1 on ;; set TrockungsVerzoegerung an ;; define TrockungsVerzoegerung_off at +00:05:00 set TrockungsVerzoegerung aus") }}

Dummy ist natürlich vorher anzulegen.
&& Value("Irgendwasanderes") eq "off"
ist nur ein Platzhalter für zusätzliche Bedingungen, wie "und Terassentür ist auf" oder was auch immer. Kann man weglassen, wenn du es nicht brauchst.  rollo:on setzt Vorraus, das das Rollo auffahren mit  aktor:on korrospondiert, sonst anpassen.

Dies Lösung ist nicht unbedingt die Beste, es gäbe eventuell die Möglichkeit mit OldValue zu arbeiten, aber solange ich nichts über den Regensensor bzw dessen verhalten weiss, kann ich da nix weiteres zu sagen.
Leichen können auch noch in der Rollosteuerung liegen da die zum Teil recht unterschiedlich agieren. (Absolute Kommandos oder Zeitgesteuert on/off oder on/off aber mit Sensor für die Rolladenposition...)

In vielen Fällen sollte das aber so gehen.
FHEM auf Linkstation Mini, CUL 868 SlowRF, 2xCUL 868 RFR, CUL 433 für IT, 2xHMLAN-Configurator mit VCCU, ITV-100 Repeater, Sender und Aktoren von FHT, FS20, S300, HM, IT, RSL