Hauptmenü

Logische Steuerung

Begonnen von theotherhalf, 04 Januar 2025, 13:15:02

Vorheriges Thema - Nächstes Thema

theotherhalf

Ich habe ein DOIF gebaut. welches nicht ganz korrekt läuft, leider sehe ich scheinbar den Wald vor lauter Bäumen nicht mehr und hoffe ihr könnt mir weiterhelfen.
Es geht um einen Luftentfeuchter (Steuerung über Tasmota Steckdose), welcher in Abhängigkeit vom Wert eines Shelly Feuchtefühlers, des Status eines Homematic Fensterkontakts sowie einer Zeitperiode gesteuert sein soll.

Folgende Definition habe ich geschrieben:

( [Klimasensor_Keller_Zimmer:params_humidity_0_rh] >53 and [07:30-21:30|8] and [Keller_Zimmer_Fensterkontakt:state] eq "closed") (set Tasmota_Keller_Luftentfeuchter on) DOELSEIF ( [Klimasensor_Keller_Zimmer:params_humidity_0_rh] >53 and [10:30-22:00|7] and [Keller_Zimmer_Fensterkontakt:state] eq "closed") (set Tasmota_Keller_Luftentfeuchter on) DOELSE (set Tasmota_Keller_Luftentfeuchter off)

Die Steuerung funktioniert abhängig von der Luftfeuchte einwandfrei, jedoch sollte doch sobald das Fenster bei laufendem Entlüfter geöffnet wird, das Gerät stoppen. Dem ist aber leider nicht so. Ein Event des Fensterkontakts wird ausgelöst.
Was übersehe ich?
FHEM Anfänger
HM CCU2 mit diversen Komponenten als Steuerung
FHEM mit Floorplan auf Raspi 3 (Raspbian Jessie)  zur Visualisierung (Heizung, Zustände, etc.) und angeschlossenen One-Wire Sensoren
Schnittstelle CCU2 - FHEM mit HMCCU
EBUSD Applikation auf Raspi 2 mit Anbindung an Vaillant Heizung

Damian

Poste mal den List-Output vom DOIF-Device von dem vermeintlich falschen Zustand.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

theotherhalf

Ich Depp....Hab den Grund gefunden, natürlich muss ich auf STATE des Fensterkontakts reagieren und nicht auf state...
Sorry für die Aufregung. Problem gelöst.
FHEM Anfänger
HM CCU2 mit diversen Komponenten als Steuerung
FHEM mit Floorplan auf Raspi 3 (Raspbian Jessie)  zur Visualisierung (Heizung, Zustände, etc.) und angeschlossenen One-Wire Sensoren
Schnittstelle CCU2 - FHEM mit HMCCU
EBUSD Applikation auf Raspi 2 mit Anbindung an Vaillant Heizung

Damian

Zitat von: theotherhalf am 04 Januar 2025, 13:34:13Ich Depp....Hab den Grund gefunden, natürlich muss ich auf STATE des Fensterkontakts reagieren und nicht auf state...
Sorry für die Aufregung. Problem gelöst.

Eigentlich nicht. STATE ist ein Internal und produziert selbst keine Events. In diesem Fall reagiert DOIF allerdings auf alle Events des Devices, das kann auch nachteilhaft sein.
Programmierte FHEM-Module: DOIF-FHEM, DOIF-Perl, DOIF-uiTable, THRESHOLD, FHEM-Befehl: IF

theotherhalf

Hmm. Ich habe die Bedingung gerade auf STATE geändert und nun klappt es.

Es gibt zwei readings des Homematic Kontakts, STATE und state.
Im Event Log erscheint das STATE
FHEM Anfänger
HM CCU2 mit diversen Komponenten als Steuerung
FHEM mit Floorplan auf Raspi 3 (Raspbian Jessie)  zur Visualisierung (Heizung, Zustände, etc.) und angeschlossenen One-Wire Sensoren
Schnittstelle CCU2 - FHEM mit HMCCU
EBUSD Applikation auf Raspi 2 mit Anbindung an Vaillant Heizung

theotherhalf

Hatte ein Event-on-Change auf das Reading STATE des Fensterkontakts gesetzt vor langer Zeit. Daher erschien es auch im Log.
Nun abgeändert auf state und die Bedingung angepasst. Klappt!
FHEM Anfänger
HM CCU2 mit diversen Komponenten als Steuerung
FHEM mit Floorplan auf Raspi 3 (Raspbian Jessie)  zur Visualisierung (Heizung, Zustände, etc.) und angeschlossenen One-Wire Sensoren
Schnittstelle CCU2 - FHEM mit HMCCU
EBUSD Applikation auf Raspi 2 mit Anbindung an Vaillant Heizung

Per

Brauchst du die beiden cmd-States für irgendwas oder könntest du die beiden Zeitangaben or verknüpfen und in eine Zeile packen?