//----------------------------------------------------
//Init Heizung
//----------------------------------------------------
rule "Init Heizung"
when
System started or // Wenn System startet oder
Time cron "0 00 21 * * ?" or // um 21:OO Uhr Standartwerte Temperatur laden
Time cron "0 00 05 * * ?"
then
Heizung_E_Soll.postUpdate(21.5)
Heizung_E_Soll_N.postUpdate(19)
Heizung_W_Soll.postUpdate(21.5)
Heizung_W_Soll_N.postUpdate(19)
end
Diese Regel hat immer funktionier, jetzt steht nach dem Neustart keine Werte mehr in den Sollwerten.
Kann das mit zu vielen Regeln zusammenhängen die beim Neustart initialisiert werden ?
Im voraus schon mal Danke für die Antwort.
Gruß leupy
Saarländer
Raspberry Pi 3 & 4 openHAB3.2
Asus Touchscreen Wandeinbau
Win 10 Rechner zum Visualisieren
Sonoff Aktoren mit Tasmota
Sonoff RF Bridge
MiLight
Shelly 1 und 2
Ich habe gelesen (weis aber nicht mehr wo), dass man das Setzen der ersten Initialwerte nach Systemstart ein bisschen rauszögern soll, weil die Rule-Engine sonst schon losläuft und der Rest noch nicht oben ist. Daher lasse ich erst einen 45 Sekunden Timer ablaufen, bevor die Werte gesetzt werden:
rule "Systeminit"
when
System started
then
logInfo("zentral.rules", "Systeminitialisierung...")
createTimer(now.plusSeconds(45)) [|
if (zentral_AUS.state == NULL) zentral_AUS.postUpdate(OFF)
if (EG_Gard_Heiz.state == NULL) EG_Gard_Heiz.postUpdate(OFF)
if (DR_Klingel_Bewegung.state == NULL) DR_Klingel_Bewegung.postUpdate(OFF)
[...]
]
end
Also, eigentlich sollte man Werte überhaupt nicht auf diese Weise initialisieren, wenn es nicht einen guten Grund dafür gibt.
Best practice:
Alle Status, die man über ein Addon abrufen kann, sollten vom System automatisch ausgelesen werden.
Bei den Status, die sich nicht so auslesen lassen, nutzt man den Persistence Service mapdb mit der Strategy everyChange,restoreOnStartup.
Nur die Items, welche zum Systemstart immer einen bestimmten Default Wert haben sollen (unabhängig vom tatsächlichen oder dem letzten bekannten Zustand) werden per Rule gesetzt, mit etwas zeitlichem Versatz, wie von harteknut beschrieben.
openHAB4.3.5 stable in einem Debian-Container (bookworm) (Proxmox 8.4.1, LXC), mit openHABian eingerichtet
Hallo, auf die Erste Frage ob noch mehr Regeln beim Starten laufen. Ja es laufen noch mehr und die Funktionieren ?. Ich werde das ganze überdenken und dann wie von euch vorgeschlagen ändern.
Saarländer
Raspberry Pi 3 & 4 openHAB3.2
Asus Touchscreen Wandeinbau
Win 10 Rechner zum Visualisieren
Sonoff Aktoren mit Tasmota
Sonoff RF Bridge
MiLight
Shelly 1 und 2