[gelöst] Status GPIO speichern, bei Bedarf einmal ausführen

Begonnen von maci, 10 August 2017, 13:11:15

Vorheriges Thema - Nächstes Thema

maci

Hallo,

Ich möchte, eine vorwählbare Ausführungsbedingung machen.
An einem GPIO Eingang hängt ein Taster. Falls der Taster betätigt wird soll sich die Fhem für 24 Stunden merken.
Falls dann ein einem Sensor eine gewisse Temperatur unterschritten wird und der Taster betätigt wurde, soll etwas ausgeführt werden.
Diese Ausführung soll nur einmal erfolgen.
Ausschalten des Ausgangs wenn gewisse Temperatur erreicht ist.

Ich habe habe mir zwar überlegt, das mit einem DOIF zu lösen, was auch funktioniert.
Jedoch darf ich hier nicht direkt auf den Eingang zugreifen, sondern auf den Statusflag.
Ich habe aber keine Ahnung wie das mit dem Flag funktioniert, bzw überhaupt möglich ist.
Ersuche daher mir ein paar Tipps zu geben, wie ich das angehen kann.
Fhem auf Dell Thinclient, Fhem auf Raspebrry Pi4,
UniPi Vers. 1.1 mit Raspberry Pi3, 1wire USB Adapter mit OWX
Netatmo Wetterstation + Regenmesser + Netatmo Thermostat
Homematic mit HMLan

maci

#1
Update:

Bin etwas weiter!
Flag setzen --> Dummy  warum habe ich nicht daran gedacht.

Doch jetzt habe ich beim notify einen Hänger. Es reagiert nicht.
Update: habe das notify geändert nach der Referenz.
Dann passt es.

Habe mal den Auszug aus der fhem.cfg zu diesem Teil hier reingestellt.
Das I04 ist die definition des Eingangs. Der reagiert auch und wird "on" wenn der GPIO "on" ist.

###################  Schaltungsdefinition E-Patrone
define E_Patrone_soll_heizen dummy
attr E_Patrone_soll_heizen room 2.03_Heizung_Schalter
attr E_Patrone_soll_heizen webCmd on:off
#
define n_E_Patrone_soll_heizen notify i04:on set E_Patrone_soll_heizen on
attr n_E_Patrone_soll_heizen room 2.03_Heizung_Schalter
define Schalt_E_Patrone DOIF ([E_Patrone_soll_heizen] eq "on" and [Boiler_Temperatur:temperature] < [Boiler_Tmin]) (set Boilernachheizung on)  DOELSE (set Boilernachheizung off)
attr Schalt_E_Patrone room 2.03_Heizung_Schalter


Update: So wie im script geschrieben funktioniert es

Ansonsten funktioniert schon alles
Fhem auf Dell Thinclient, Fhem auf Raspebrry Pi4,
UniPi Vers. 1.1 mit Raspberry Pi3, 1wire USB Adapter mit OWX
Netatmo Wetterstation + Regenmesser + Netatmo Thermostat
Homematic mit HMLan

Frank_Huber

versuch mal:
defmod n_E_Patrone_soll_heizen notify E_Patrone_soll_heizen set E_Patrone_soll_heizen $EVENT"

Tip: generiere notify / DOIf aus dem Event Monitor heraus!

maci

Wie gehe ich mit dem Eventmonitor um? bzw wo finde ich den?
Fhem auf Dell Thinclient, Fhem auf Raspebrry Pi4,
UniPi Vers. 1.1 mit Raspberry Pi3, 1wire USB Adapter mit OWX
Netatmo Wetterstation + Regenmesser + Netatmo Thermostat
Homematic mit HMLan

Frank_Huber

FHEM Webseite Links Unten.

1. Event Monitor öffnen
2. Taster drücken
3. Event markieren
4. "create/modify device" drücken