Hallo Leute,
ich habe da ein kleines Problem mit einer Rule und finde den Fehler nicht.
Folgende Situation:
Ich habe in unserem Haus im WC einen Fensterkontakt, welchen ich über KNX abfrage (OPEN oder CLOSED).
Dann habe ich über Homematic einen Heizungsthermostat verbaut.
Die eingestellte Temperatur soll über Zustand des Fensters und über Zeit geregelt werden.
Als Software benutze ich Openhab 2.1 mit Homegear auf einem Raspberry PI 2.
Das habe ich vor:
Freigabe "Automatik Temperatur ist immer "ON"
1. Situation:
Die Temperatur im WC ist auf 16°C eingestellt (Temp_WC_set auf 16 °C gestellt). Sobald das Fenster geöffnet wird, soll der Wert von Temp_WC_set in das Item Temp_WC_temp geschrieben werden und Temp_WC_set auf 6°C gestellt werden.
2. Situation:
Das Fenster wird wieder geschlossen:
Der Wert von Temp_WC_temp soll in das Item Temp_WC_set geschrieben werden.
3. Situation:
Fenster geschlossen und Zeit 20:00 (oder 9:00) wird erreicht:
Der Wert von Temp_WC_set wird auf 12°C gestellt.
4. Situation:
Das Fenster ist geöffnet und 20:00 (oder 9:00) wird erreicht:
Temp_WC_set bleibt auf 6°C. Temp_WC_temp wird auf 12°C gestellt.
Wird das Fenster dann geschlossen, soll der Wert von Temp_WC_temp auf das Item Temp_WC_set geschrieben werden.
Nun zu meinem Problem:
Die Temperatur im WC wird immer auf 6°C eingestellt, ich finde den Fehler leider nicht.
Der Smarthome-Designer hilft da auch nicht weiter....
hier sind die Items dazu:
Hier ist die Rule, wo der Fehler drin ist:
Hat da jemand einen heißen Tip für mich??
Danke schonmal
Yankee
ich habe da ein kleines Problem mit einer Rule und finde den Fehler nicht.
Folgende Situation:
Ich habe in unserem Haus im WC einen Fensterkontakt, welchen ich über KNX abfrage (OPEN oder CLOSED).
Dann habe ich über Homematic einen Heizungsthermostat verbaut.
Die eingestellte Temperatur soll über Zustand des Fensters und über Zeit geregelt werden.
Als Software benutze ich Openhab 2.1 mit Homegear auf einem Raspberry PI 2.
Das habe ich vor:
Freigabe "Automatik Temperatur ist immer "ON"
1. Situation:
Die Temperatur im WC ist auf 16°C eingestellt (Temp_WC_set auf 16 °C gestellt). Sobald das Fenster geöffnet wird, soll der Wert von Temp_WC_set in das Item Temp_WC_temp geschrieben werden und Temp_WC_set auf 6°C gestellt werden.
2. Situation:
Das Fenster wird wieder geschlossen:
Der Wert von Temp_WC_temp soll in das Item Temp_WC_set geschrieben werden.
3. Situation:
Fenster geschlossen und Zeit 20:00 (oder 9:00) wird erreicht:
Der Wert von Temp_WC_set wird auf 12°C gestellt.
4. Situation:
Das Fenster ist geöffnet und 20:00 (oder 9:00) wird erreicht:
Temp_WC_set bleibt auf 6°C. Temp_WC_temp wird auf 12°C gestellt.
Wird das Fenster dann geschlossen, soll der Wert von Temp_WC_temp auf das Item Temp_WC_set geschrieben werden.
Nun zu meinem Problem:
Die Temperatur im WC wird immer auf 6°C eingestellt, ich finde den Fehler leider nicht.
Der Smarthome-Designer hilft da auch nicht weiter....
hier sind die Items dazu:
Code:
Freigabe Regelung:
Switch Temp_Auto "Automatik Temperatur"
Fensterkontakt:
Contact Fensterkontakt_WC "Fenster WC [MAP(de.map):%s]" (UG_WC, Fenster) {knx="<5/1/35"}
Thermostat:
Number Temp_WC "Temperatur [%.1f °C]"
Number Temp_WC_temp
Number Temp_WC_set "Eingest. Temperatur [%.1f °C]"
Hier ist die Rule, wo der Fehler drin ist:
Code:
// Rule zur Temperaturregelung im WC
// Situation 1:
rule "Runterregeln bei offenem Fenster WC"
when
Item Fensterkontakt_WC received update OPEN
then
if (Temp_Auto.state==ON) {
postUpdate(Temp_WC_temp, Temp_WC_set.state)
sendCommand(Temp_WC_set, 6)
}
end
//#####################################################################################################
//Situation 2:
rule "Anheizen bei geschlossenem Fenster WC"
when
Item Fensterkontakt_WC received update CLOSED
then
if (Temp_Auto.state==ON) {
sendCommand(Temp_WC_set, Temp_WC_temp.state)
//Temp_WC_set.sendCommand(Temp_WC_temp.state)
}
end
//#####################################################################################################
//Situation 3:
rule "Runterregeln nach Zeit Fenster geschlossen"
when
Time cron "0 00 20 * * ?" /* taeglich 20:00 */
then
if (Temp_Auto.state==ON && Fensterkontakt_WC.state==CLOSED)
{
sendCommand(Temp_WC_set, 12)
}
end
//#####################################################################################################
//Situation 4:
rule "Runterregeln nach Zeit Fenster offen"
when
Time cron "0 00 20 * * ?" /* taeglich 20:00 */
then
if (Temp_Auto.state==ON && Fensterkontakt_WC.state==OPEN)
{
postUpdate(Temp_WC_temp, 12)
}
end
//#####################################################################################################
//Situation 3:
rule "Anheizen nach Zeit Fenster geschlossen"
when
Time cron "0 00 09 * * ?" /* taeglich 09:00 */
then
if (Temp_Auto.state==ON && Fensterkontakt_WC.state==CLOSED)
{
sendCommand(Temp_WC_set, 16)
}
end
//#####################################################################################################
//Situation 4:
rule "Anheizen nach Zeit Fenster offen"
when
Time cron "0 00 09 * * ?" /* taeglich 09:00 */
then
if (Temp_Auto.state==ON && Fensterkontakt_WC.state==OPEN)
{
postUpdate(Temp_WC_temp, 16)
}
end
//#####################################################################################################
Hat da jemand einen heißen Tip für mich??
Danke schonmal
Yankee


Kommentar