var HeizungPartyraum_Solltemperatur = 6 // HeizungPartyraum_Solltemperatur_Fensterkontakt
var Timer AussentuerePartyraumHeizungMeldung = null
rule "Türe Partyraum Auf Heizung aus"
when
Item AussentuerePartyraum_TurFensterstatus changed
then
//cancel timer if running
AussentuerePartyraumHeizungMeldung?.cancel
AussentuerePartyraumHeizungMeldung = null
if (AussentuerePartyraum_TurFensterstatus.state == OPEN)
AussentuerePartyraumHeizungMeldung = createTimer(ZonedDateTime.now.plusMinutes(1), [|
HeizungPartyraum_Solltemperatur = HeizungPartyraum_Solltemperatur_Fensterkontakt.state as Number
HeizungPartyraum_Solltemperatur_Fensterkontakt.sendCommand(6)
])
if (AussentuerePartyraum_TurFensterstatus.state == CLOSED){
HeizungPartyraum_Solltemperatur_Fensterkontakt.sendCommand(HeizungPartyraum_Solltemperatur)
}
end
doch jetzt wenn ich die Türe auf und in weniger als 1. Minute zu mache gegt die Heizung immer auf 6 Grad (Aus).Ich finde den Fehler nicht wenn die Tür länger als 1 Minute auf ist geht die Heizung auf 6 Grad und wenn ich sie wieder schließe auch wieder auf die vor der Öffnung eingestellte Temperatur.
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz
Dies liegt daran, das der Timer beim öffnen der Türe startet. Dann schließt Du die Türe < 1Min und die Heizung wird auf den alten Wert gesetzt.
Dann läuft der Timer ab und setzt die 6 Grad.
Lösung: Du musst den Timer beim schließen der Türe beenden. Zudem ist die Var ja schon initialisiert, da kannst Du dies in der Rule sparen.
var HeizungPartyraum_Solltemperatur = 6 // HeizungPartyraum_Solltemperatur_Fensterkontakt
var Timer AussentuerePartyraumHeizungMeldung = null
rule "Türe Partyraum Auf Heizung aus"
when
Item AussentuerePartyraum_TurFensterstatus changed
then
//cancel timer if running
AussentuerePartyraumHeizungMeldung?.cancel
if (AussentuerePartyraum_TurFensterstatus.state == OPEN)
AussentuerePartyraumHeizungMeldung = createTimer(ZonedDateTime.now.plusMinutes(1), [|
HeizungPartyraum_Solltemperatur = HeizungPartyraum_Solltemperatur_Fensterkontakt.state as Number
HeizungPartyraum_Solltemperatur_Fensterkontakt.sendCommand(6)
])
if (AussentuerePartyraum_TurFensterstatus.state == CLOSED){
//cancel timer if running
AussentuerePartyraumHeizungMeldung?.cancel
HeizungPartyraum_Solltemperatur_Fensterkontakt.sendCommand(HeizungPartyraum_Solltemperatur)
}
end
ungetestet und ohne Gewehr
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3
he vielen Dank für deine Hilfe. Leider ist es bei deiner Rule das gleiche. Wenn ich die Türe innerhalb von einer Minute schließe geht die Heizung auf 6 Grad.
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz
Hmm, was sagt denn das Log dazu? Interessant wäre der Zeitraum wenn Du die Türe öffnest, innerhalb 1 Min wieder schließt und die Temp wieder auf 6 gesetzt wurde. Gerne bereinigt um die o.g. Items.
VG
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3
2021-12-01 20:50:17.709 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'AussentuerePartyraum_TurFensterstatus' changed from CLOSED to OPEN
2021-12-01 20:50:23.173 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'AussentuerePartyraum_TurFensterstatus' changed from OPEN to CLOSED
2021-12-01 20:50:23.187 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'HeizungPartyraum_Solltemperatur_Fensterkontakt' received command 21.0
2021-12-01 20:50:23.206 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'HeizungPartyraum_Solltemperatur_Fensterkontakt' predicted to become 21.0
ist sogar noch die Rule die ich am Anfang gepostet habe
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz
Ich denke es hängt vielleicht mit den Speichern der Temperatur zusammen oder mit dem Timer Abbruch. Habe es jetzt mehrmals getestet und es läuft so wie es soll.
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz
2021-12-02 16:41:43.113 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'AussentuerePartyraum_TurFensterstatus' changed from CLOSED to OPEN
2021-12-02 16:41:53.610 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'AussentuerePartyraum_TurFensterstatus' changed from OPEN to CLOSED
2021-12-02 16:41:53.623 [INFO ] [openhab.event.ItemCommandEvent ] - Item 'HeizungPartyraum_Solltemperatur_Fensterkontakt' received command 6.0
2021-12-02 16:41:53.637 [INFO ] [penhab.event.ItemStatePredictedEvent] - Item 'HeizungPartyraum_Solltemperatur_Fensterkontakt' predicted to become 6.0
2021-12-02 16:41:53.650 [INFO ] [openhab.event.ItemStateChangedEvent ] - Item 'HeizungPartyraum_Solltemperatur_Fensterkontakt' changed from 21.0 to 6.0
ich habe keine Ahnung an was das liegen könnte
vor der Türöffnung war die Heizung auf 21 Grad gestellt
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz
Das Problem dürfte sein, dass Du die Temperatur einfach so sicherst, es kann aber sein, dass die Absenkung schon stattgefunden hat. Genauso könnte gar keine gültige Temperatur geliefert werden. Es wäre also sinnvoller, hier ein paar Vorkehrungen zu treffen, was bei ungültigen Werten passieren soll.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
Bin für Vorschläge offen wie ich es besser machen könnte. Was mich wundert ist das es manchmal geht und manchmal nicht
openhab4.3.1 auf Pi 5 8GB im Docker Portainer&Frontail /Grafana&InfluxDB und mosquitto auf Pi 3 in Docker Portainer/Pi 3 mit Docker zur Datensicherung / Pi 4 4GB Portainer & Deconz