Rollo fahren mit on-for-timer

Begonnen von Maxl, 23 Dezember 2015, 10:15:23

Vorheriges Thema - Nächstes Thema

Maxl

Hallo,

ich möchte die Rollo für eine maximale Zeit verfahren solange die Taste gedrückt ist bzw. unterbrechen wenn die Schalter wieder aus sind.
Irgendwie überlappt sich aber alles und es verfährt gar nicht oder nur ein Fenster.  Das on-for-timer funktioniert irgendwiue gar nicht. Vielleicht gibt es auch eine einfachere Lösung für mein Problem. Wäre für Lösungsansätze dankbar.

define Rollo_auf_Zimmer2 notify HMW_IO_12_Sw14_DR_MEQ0370281_16:STATE:.off { fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_12 off";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_13 off";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_11 on-for-timer 20";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_14 on-for-timer 20";; }

define Rollo_zu_Zimmer2 notify HMW_IO_12_Sw14_DR_MEQ0370281_18:STATE:.off { fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_11 off";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_14 off";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_12 on-for-timer 20";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_13 on-for-timer 20";; }

define Rollo_auf_Zimmer2 notify HMW_IO_12_Sw14_DR_MEQ0370281_16:STATE:.on { fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_11 off";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_14 off";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_12 off";; fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_13 off";; }


FHEM auf Raspberry mit HM, HMC und AVR Netios.

Thorsten Pferdekaemper

Hi,
ich habe keinen 12/14 und weiß daher auch nicht so genau, wie das ganze funktioniert. Ich kann mir dazu nur das Geräte-XML betrachten und dann ins Coding schauen. ...aber so ganz schlau werde ich daraus nicht. Folgendes fällt mir auf:

  • Dein drittes Notify heißt genauso wie das erste.
  • Ich weiß, dass Kanäle mit dem Typ "switch" on/off haben. Beim 12/14 ist das aber digital_output. Da bin ich mir nicht so sicher. Funktioniert denn ein manuelles "set HMW_IO_12_Sw14_DR_MEQ0370281_12 on" bzw ... off?
  • So ähnlich für die Eingänge: Gehe mal auf den Event-Monitor und drücke auf den Tasten rum.
  • on-for-timer ist in FHEM selbst implementiert, aber nur für switch-Kanäle. Ich würde mich wundern, wenn das für den 12/14 überhaupt funktioniert.

Könntest Du das ganze mal für einen einzelnen Rollo machen und auch beschreiben, welche Ein-Ausgänge was genau bewirken sollen.
Gruß,
   Thorsten
FUIP

Maxl

Hallo,


  • falsch kopiert :-(
  • nein, das was du geschrieben hast könnte natürlich die Antwort sein, ginge es über eine dummy on/off Variable

Eigentlich will ich nichts Wettbewegendes machen, ich habe zwei Schalter an denm 12/14 HMW_IO_12_Sw14_DR_MEQ0370281_16 und 18, wenn einer betätigt ist sollte für eine gewisse Zeit der Ausgang HMW_IO_12_Sw14_DR_MEQ0370281_11 und 14 angesteuert werden bzw. wenn die Schalter aus sind alles aus sein, wenn der andere Eingang ein, dann sollten die anderen beiden Ausgänge 12 und 13 ein sein.

 
FHEM auf Raspberry mit HM, HMC und AVR Netios.

Otto123

Hallo,

ich habe auch keinen 12/14 aber ich kann mir nicht vorstellen, dass Dein Ansatz funktioniert. Die digitalen Eingänge dienen zur Erfassung 0 und 1. Für das was Du willst ist ein notify falsch, das reagiert auf die Änderung, der Status ist doch egal. Du musst den Status auswerten und dann den Ausgang schalten. Direkt verknüpfen kann man das ja leider nicht. Also musst Du einfach mit logischer Verknüpfung aus on am Eingang ein on am Ausgang machen. Oder liege ich komplett neben der Spur?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Maxl

Hi,

das mit direkten Verknüpfen funktioniert einwandfrei mit dem notify, eins für on in die eine Richtung, das andere für on in die Gegenrichtung. Nur sollte nach einer definierten Zeit alles auf aus gehen und das mag anscheinend das 12/14 Ding nicht, da es sich nicht um digitale on/off Ausgänge handelt, warum keine Ahnung. Muß noch eine Weile damit spielen bis ich dahintersteige.

Gruß
Mario
FHEM auf Raspberry mit HM, HMC und AVR Netios.

Thorsten Pferdekaemper

Zitat von: Maxl am 23 Dezember 2015, 14:20:32das mit direkten Verknüpfen funktioniert einwandfrei mit dem notify, eins für on in die eine Richtung, das andere für on in die Gegenrichtung. Nur sollte nach einer definierten Zeit alles auf aus gehen und das mag anscheinend das 12/14 Ding nicht, da es sich nicht um digitale on/off Ausgänge handelt, warum keine Ahnung. Muß noch eine Weile damit spielen bis ich dahintersteige.
Jetzt wird es aber immer verwirrender. Meinst Du jetzt direkte Verknüpfungen oder Notify? Eins hat mit dem Anderen recht wenig gemeinsam.
Vielleicht könntest Du hier mal posten, was denn nun genau funktioniert und was nicht.
Gruß,
   Thorsten
FUIP

Otto123

Zitat von: Maxl am 23 Dezember 2015, 14:20:32
da es sich nicht um digitale on/off Ausgänge handelt, warum keine Ahnung.
Hä? - Ich kann mich Thorsten nur anschließen.
Zitat von: Maxl am 23 Dezember 2015, 10:15:23
ich möchte die Rollo für eine maximale Zeit verfahren solange die Taste gedrückt ist bzw. unterbrechen wenn die Schalter wieder aus sind.
Ich dachte Du willst so etwas wie den "normalen" Rolladen Taster:
kurz drücken -> ganz hoch oder ganz runter.
lang drücken -> solange fahren wie gedrückt.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Maxl

Hallo,

ganz einfach:

es funktioniert direkte Verknüpfung wenn Schalter ein dann Ausgang ein und umgekehrt bzw.
Verknüpfung über notify mit Schalter ein dann Ausgang ein und umgekehrt. Ich möchte aber den Ausgang auch ausschalten nach einer bestimmten Zeit obwohl die Eingänge noch an sind, einfach um die Antrieben stromlos zu haben.
Da dachte ich eben an das on-for-timer, aber das geht eben mit den 12/14 Ding nicht :-(
Der Vorschlag von Otto klingt auch nett, aber hier möchte ich eben wieder die antriebe nach der max. Laufzeit stromlos haben.

Gruß
Mario
FHEM auf Raspberry mit HM, HMC und AVR Netios.

Otto123

Schau mal hier vielleicht gibt es diese Register auch bei dem 12/14.
Dann kannst Du die maximale Zeit direkt programmieren.

Und dann solltest Du die Idee vom normalen Rolladen Taster umsetzen. Irgendwie musst Du ja die Tastenabfrage unterscheiden. Ich habe allerdings keine Ahnung was der 12/14 da wirklich liefert?
Das musst Du im Eventmonitor anschauen oder es ist irgendwo beschrieben.

Das mit der direkten Verknüpfung wundert mich, ich glaubte überall gelesen zu haben, dass genau das nicht geht.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Thorsten Pferdekaemper

Zitat von: Maxl am 23 Dezember 2015, 17:02:17Da dachte ich eben an das on-for-timer, aber das geht eben mit den 12/14 Ding nicht :-(
Der Vorschlag von Otto klingt auch nett, aber hier möchte ich eben wieder die antriebe nach der max. Laufzeit stromlos haben.
Du kannst im notify ein at anlegen, das den Ausgang nach der gewünschten Zeit abschaltet.
Gruß,
    Thorsten
FUIP

Maxl

Hi,

dumme Frage, kann man eigentlich eine NOTIFY Abfrage in einer DOIF verschachteln, wie beispielsweise
define Rollo_stop_Zimmer2 DOIF ( [notify Temp2] eq "off" and
                                 [notify HMW_IO_12_Sw14_DR_MEQ0370281_16:STATE:.on] and\
                                 [notify HMW_IO_12_Sw14_DR_MEQ0370281_18:STATE:.on] )\
   ( dann machen wir irgendetwas ... )


FHEM auf Raspberry mit HM, HMC und AVR Netios.

Otto123

notify ist keine Abfrage.
Du könntest den Status des notifys abfragen also<name des notify> eq "" aber das notify läuft ja nicht. Das reagiert und löst etwas aus.
Vielleicht ist es besser Du erklärst was Du willst.

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Maxl

#12
wenn irgendein NOTIFY kommt soll alles aus sein, Temp2 habe ich als dummy
define Zeit_Temp2 notify Temp1 set Temp2 on-for-timer 5

welcher immer startet wenn was läuft

define Rollo_stop_Zimmer2 DOIF ( [notify Temp2:STATE:.off] or\
                                 [notify HMW_IO_12_Sw14_DR_MEQ0370281_16:STATE:.on] or\
                                 [notify HMW_IO_12_Sw14_DR_MEQ0370281_18:STATE:.on] )\
( set HMW_IO_12_Sw14_DR_MEQ0370281_11 off;\
  set HMW_IO_12_Sw14_DR_MEQ0370281_12 off;\
  set HMW_IO_12_Sw14_DR_MEQ0370281_13 off;\
  set HMW_IO_12_Sw14_DR_MEQ0370281_14 off;\
  set Temp1 off; )


weiterer Versuch

define Rollo_stop_Zimmer2 notify ([HMW_IO_12_Sw14_DR_MEQ0370281_16:STATE:.on]|\
                                  [HMW_IO_12_Sw14_DR_MEQ0370281_18:STATE:.on]|\
                                  [Temp2:STATE:.off]) {\....


es kommt aber immer eine Fehlermeldung das irgendetwas nicht paßt.
FHEM auf Raspberry mit HM, HMC und AVR Netios.

Otto123

#13
So was könnte gehen, also alle notify Trigger um die es geht noch einmal in einem notify - diese schaltet dann einfach alle Ausgänge auf off: 
define nty_Stop notify HMW_IO_12_Sw14_DR_MEQ0370281_16:.on|HMW_IO_12_Sw14_DR_MEQ0370281_18:.on set HMW_IO_12_Sw14_DR_MEQ0370281_1.* off
oder einzeln
set HMW_IO_12_Sw14_DR_MEQ0370281_11,HMW_IO_12_Sw14_DR_MEQ0370281_12,HMW_IO_12_Sw14_DR_MEQ0370281_13,HMW_IO_12_Sw14_DR_MEQ0370281_14 off
btw: Hast Du schon mal rename probiert?  ;D
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Maxl

#14
Hi,

funktioniert, aber wenn ich einen den Timer einbaue dann wird nichts mehr zurückgesetzt,

define Temp1 dummy
attr Temp1 webCmd on:off
define Temp2 dummy
attr Temp2 webCmd on:off

define Rollo_auf_Zimmer2 notify HMW_IO_12_Sw14_DR_MEQ0370281_16:STATE:.off  {\
  fhem "set Temp1 on";;\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_11 on";;\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_14 on";;}

define Rollo_ab_Zimmer2 notify HMW_IO_12_Sw14_DR_MEQ0370281_18:STATE:.off  {\
  fhem "set Temp1 on";;\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_12 on";;\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_13 on";;}

define Zeit_Temp2 notify Temp1:on.* {\
  fhem "set Temp2 on-for-timer 5";;\
  fhem "set Temp1 off";; }

define Rollo_stopp_Zimmer2 notify HMW_IO_12_Sw14_DR_MEQ0370281_16:STATE:.on|HMW_IO_12_Sw14_DR_MEQ0370281_18:STATE:.on|Temp2:off.* {\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_11 off";;\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_12 off";;\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_13 off";;\
  fhem "set HMW_IO_12_Sw14_DR_MEQ0370281_14 off";; }
 


wie ist das mit den NOTIFY zu verstehen, wird die ganze ODER-Verknüpfung als notify gesehen oder die einzelnen Abfragen auf on oder off?
Wenn die gesamte Verknüpfung gesehen wird, dann kann es nicht gehen. Aber wie kann man dann einzelne NOTIFYs verknüpfen.
FHEM auf Raspberry mit HM, HMC und AVR Netios.