Hallo,
ich habe mir bei IKEA mal einen Tradfri Button mitgenommen da meine Frau leider nicht mit meinem Openhab Tablet zurecht kommt Ich habe ein Item angelegt als Heizungsschalter was wenn es eingeschaltet ist alle Heizungen auf 21 Grad stellt und wenn es ausgeschaltet ist auf 6 Grad. Nun wollte ich es ihr leichter machen mit dem Button. Doch irgendwie funktioniert das nur bedingt mit der Rule so wie ich sie habe. Das heißt wenn ich den Button drücke wird der Heizungsschalter kurz eingeschaltet aber manchmal auch sofort wieder ausgeschaltet. Bin für Verbesserungsvorschläge offen
rule "Heizungsschalter Ikea"
when Channel "deconz:switch:00212E069043:b4e3f9fffe15bb3d011000:buttonevent" triggered 1002
then
if(Heizungsschalter_Alle_Heizungen.state == OFF){
Heizungsschalter_Alle_Heizungen.sendCommand (ON)
Meldung.postUpdate ("Es sind jetzt alle Heizungen auf 21 Grad gestellt")
}
if(Heizungsschalter_Alle_Heizungen.state == ON){
Heizungsschalter_Alle_Heizungen.sendCommand (OFF)
Meldung.postUpdate("Es sind jetzt alle Heizungen ausgeschaltet")
}
end
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
habe jetzt einfach mal die 1002 hinter triggered rausgenommen. Ich habe aber noch ein Problem mit dem Switsch Item das ich angelegt habe.
und zwar wenn ich das Item auf ON stelle konnte ich schon öfters beobachten das nicht alle Heizungen die in der Rule aufgeführt sind auf 21 Grad gehen oder bei OFF auf 6 Grad. Das ist die Rule
rule "Heizungsschalter für alle Heizungen"
when
Item Heizungsschalter_Alle_Heizungen received command
then
if(receivedCommand == ON) {
HeizungLucaZimmer_Solltemperatur.sendCommand(21)
HeizungNellyZimmer_Solltemperatur.sendCommand(21)
HeizungSchlafzimmer_Solltemperatur.sendCommand(21)
HeizungBadezimmer_Solltemperatur.sendCommand(21)
HeizungUnteresBadezimmer_Solltemperatur.sendCommand(21)
HeizungPartyraum_Solltemperatur.sendCommand(21)
HeizungTreppenhaus_Solltemperatur.sendCommand(21)
} else {
HeizungLucaZimmer_Solltemperatur.sendCommand(6)
HeizungNellyZimmer_Solltemperatur.sendCommand(6)
HeizungSchlafzimmer_Solltemperatur.sendCommand(6)
HeizungBadezimmer_Solltemperatur.sendCommand(6)
HeizungUnteresBadezimmer_Solltemperatur.sendCommand(6)
HeizungPartyraum_Solltemperatur.sendCommand(6)
HeizungTreppenhaus_Solltemperatur.sendCommand(6)
}
end
gibt es eventuell noch eine Möglichkeit etwas später zu prüfen ob alle Heizungen den jeweiligen Befehl erhalten haben und ihn vor allen auch ausgeführt haben ?
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
Eine erste Möglichkeit wäre es, dies über ein Logging zu prüfen. Gleichzeitig habe ich mal versucht die Rule mit dem hier gewonnenen Wissen etwas zu optiimieren.
rule "Heizungsschalter für alle Heizungen"
when
Item Heizungsschalter_Alle_Heizungen received command
then
var Integer AlleSollTemperatur = 6 //default
if(receivedCommand == ON) {
AlleSollTemperatur = 21
}
AlleHeizungenSoll.members.filter(f|(f.state as DecimalType).intValue!==AlleSollTemperatur.state as DecimalType).forEach[ h|
s.sendCommand(AlleSollTemperatur.state as DecimalType)
logInfo("Heizung", h.name.split("_").get(1) + " Solltemperaur 21 Grad")
]
end
Ungetestet und ohne Gewähr
openHAB 4.1.0 Release mit openHABian in einem Debian Bookworm (LXC) unter Proxmox 8.1.3
Kannst du mir noch erklären wie ich die Gruppen Items anlege oder eventuell einen link posten wo es erklärt wird.
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
vielen Dank. Habe jetzt mal ein wenig rumprobiert und festgestellt das die Befehle ordnungsgemäß von openhab ausgeführt werden. Nur kommen manche nicht bei der Innogy Zentralle an. Wenn ich z.B. die Heizungen alle mittels Schalter auf 21 Grad stelle wird mir das in Openhab zwar angezeigt aber bei Inoggy bleibt das Kommando manchmal hängen und sie bleiben auf 6 Grad.(einzelne auch nicht immer die gleichen).Somit sendet die Zentralle dann die verkehrte Gradzahl an Openhab und die Gradzahl wird wieder geändert. Denke ich werde doch bald auf ein neues System wie z.B Bosch oder so umsteigen müssen.
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
Snatsch hat geschrieben: ↑22. Dez 2021 18:59
aber bei Inoggy bleibt das Kommando manchmal hängen und sie bleiben auf 6 Grad.(einzelne auch nicht immer die gleichen).
Wenn du alle Thermostate über eine Gruppe steuerst ist das ein beliebtes Problem, auch bei anderen Techniken.
Du solltest einmal testen, die Thermostate einzeln auf die unterschiedlichen Gradzahlen zu schalten.
bis jetzt habe ich sie ja noch nicht in einer Gruppe gesteuert. wenn ich sie einzeln in meinem Model schalte geht es.
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