FHEM Forum

FHEM - Hausautomations-Systeme => EnOcean => Thema gestartet von: RpiEinOzean am 22 März 2019, 16:52:55

Titel: GPIO abfragen ON/OFF, verhindern dass kurz hintereinander ON/OFF geschaltet wird
Beitrag von: RpiEinOzean am 22 März 2019, 16:52:55
Hallo zusammen,
ich möchte einen GPIO als Eingang benutzen um in Fhem Relais zu schalten.
( Wie GPIO als Eingang benutzt wird ist klar, wie die Relais geschaltet werden ist auch klar. )
Im "Normalfall" wird der GPIO-Port einfach nur auf ON geschaltet. Zu einem späteren Zeitpunkt wird der GPIO-Port auf OFF geschaltet.
Im "nicht Normalfall" Wird der GPIO-Port kurz eingeschaltet und nach ca. 5 Sekunden wieder auf OFF geschaltet.
Der "nicht Normalfall" stellt für mich ein Problem dar weil ich bei den Relais Einschaltverzögerungen und Ausschaltverzögerungen ab dem Moment des "Normalfall" starte.
Das heißt, die Zeitverzögerungen (mit sleep . . .) kommen dabei richtig unangenehm durcheinander.

Nun hier meine Frage:
Kann mir jemand einen Tipp geben wie ich verhindere dass das Signal vom GPIO-Port innerhalb von ca. 15 Sekunden auf OFF gestellt werden kann.
Nach diesen ca. 15 Sekunden brauche ich die OFF Funktion natürlich wieder.
Diese ca. 15 Sekunden kann ich aber vorher nicht bestimmen. Es kann sein dass am GPIO-Port erst nach 8 Stunden das OFF Signal geschaltet wird.

Ich möchte also nur verhindern dass innerhalb der ersten ca. 15 Sekunden die Anlage wieder abgeschaltet wird.

Ich würde mich über einen Schubs in die richtige Richtung freuen.
Titel: Antw:GPIO abfragen ON/OFF, verhindern dass kurz hintereinander ON/OFF geschaltet wird
Beitrag von: SouzA am 23 März 2019, 03:38:29
Moin,
1. Ich glaube, es ist die falsche Abteilung im Forum. Was hat das mit EnOcean zu tun?
2. Schau dir mal das DOIF-Modul an. Da kannst du relativ leicht eine Wartezeit einstellen um auf Trigger zu reagieren.

Bis denn
SouzA
Titel: Antw:GPIO abfragen ON/OFF, verhindern dass kurz hintereinander ON/OFF geschaltet wird
Beitrag von: Ellert am 23 März 2019, 06:23:03
Du musst möglichst früh in der Signalkette verhindern, dass der unnormale Fall eintritt, z.B. an der Definition des Eingabegerätes mit event-min-interval, dann werden keine Impulse kürzer als das angegebene Intervall erzeugt.
Titel: Antw:GPIO abfragen ON/OFF, verhindern dass kurz hintereinander ON/OFF geschaltet wird
Beitrag von: RpiEinOzean am 23 März 2019, 16:21:32
Anfrage hat sich erledigt.
Habe mir was zusammen gebastelt.
DUMMY_GPIO           = reading vom GPIO-Port on / off
DUMMY_alterWert     = Wert vom DUMMY_GPIO zwischenspeichern
DUMMY_Relais          = Ausgabe an die Relais
define di_alles_AN DOIF ([DUMMY_GPIO:state] eq "on") (set DUMMY_Relais on; sleep 10; set DUMMY_alterWert AUS )

define di_alles_AUS DOIF ([DUMMY_GPIO:state] eq "off" && [DUMMY_alterWert:state] eq "AUS") (set DUMMY_Relais off; set DUMMY_alterWert AN )