

Code: Alles auswählen
when
Item Aussenluft changed // WAC350 Sensor
then
if(Lueftung_min_max_Temp.state != ON) return; // wenn Schalter aus(nicht an) , keine Aktionen
if(!(Aussenluft.state instanceof Number)) {
logWarn("Aussenluft manuell","Aussenluft.state not a Number: {}",Aussenluft.state) // numerisch ?
return;
}
if (Aussenluft.state >= AussenGrenzMax_Set.state && FanStandby_switch.state != 0) {
FanStandby_Switch.sendCommand(0)
logInfo("Aussenluft manuell","LuefterStufe ist jetzt: {} Aussenluft beträgt {}",LuefterStufe.state,Aussenluft.state )
}
else if (AussenTemp.state <= AussenGrenzMin_Set.state && FanStandby_Switch.state != 1) { // LaCrosse Sensor
FanStandby_Switch.sendCommand(1)
logInfo("Aussenluft manuell","LuefterStufe ist jetzt: {} AussenTemp beträgt {}",LuefterStufe.state,AussenTemp.state)
}
end
Code: Alles auswählen
rule "Aussenluft manuell"
when
Item AussenTemp changed // LaCrosse Sensor
then
if(Lueftung_min_max_Temp.state != ON) return; // wenn Schalter aus(nicht an) , keine Aktionen
if(!(AussenTemp.state instanceof Number)) {
logWarn("Lüftung manuell","AussenTemp.state not a Number: {}",AussenTemp.state) // numerisch ?
return;
}
if (AussenTemp.state >= AussenGrenzMax_Set.state && FanStandby_Switch.state != 0) {
FanStandby_Switch.sendCommand(ON)
logInfo("Lüftung manuell","LuefterStufe ist jetzt: {} AussenTemp beträgt {}",LuefterStufe.state,AussenTemp.state )
}
else if (AussenTemp.state <= AussenGrenzMin_Set.state && FanStandby_Switch.state != 1) { // LaCrosse Sensor
FanStandby_Switch.sendCommand(OFF)
logInfo("Lüftung manuell","LuefterStufe ist jetzt: {} AussenTemp beträgt {}",LuefterStufe.state,AussenTemp.state)
}
end
Code: Alles auswählen
2019-02-28 13:49:00.375 [ome.event.ItemCommandEvent] - Item 'Lueftung_min_max_Temp' received command ON
2019-02-28 13:49:00.381 [vent.ItemStateChangedEvent] - Lueftung_min_max_Temp changed from OFF to ON
Code: Alles auswählen
2019-02-28 13:49:44.750 [vent.ItemStateChangedEvent] - AussenTemp changed from 18.9 °C to 19.0 °C
Code: Alles auswählen
2019-02-28 14:22:20.522 [ome.event.ItemCommandEvent] - Item 'AussenGrenzMax_Set' received command 18
2019-02-28 14:22:20.540 [vent.ItemStateChangedEvent] - AussenGrenzMax_Set changed from 17.5 to 18
Code: Alles auswählen
2019-02-28 14:42:45.665 [vent.ItemStateChangedEvent] - AussenTemp changed from 18.8 °C to 18.7 °C
2019-02-28 14:42:45.687 [ome.event.ItemCommandEvent] - Item 'FanStandby_Switch' received command ON
2019-02-28 14:42:45.694 [nt.ItemStatePredictedEvent] - FanStandby_Switch predicted to become ON
2019-02-28 14:42:45.693 [INFO ] [arthome.model.script.Lüftung manuell] - LuefterStufe ist jetzt: 1 AussenTemp beträgt 18.7 °C
2019-02-28 14:42:45.704 [vent.ItemStateChangedEvent] - FanStandby_Switch changed from OFF to ON
2019-02-28 14:42:55.099 [vent.ItemStateChangedEvent] - LuefterStufe changed from 1 to 0
2019-02-28 14:43:03.287 [vent.ItemStateChangedEvent] - Abluft changed from 19.5 to 19.6
2019-02-28 14:43:08.527 [vent.ItemStateChangedEvent] - Abluft changed from 19.6 to 19.5
2019-02-28 14:43:08.633 [vent.ItemStateChangedEvent] - Luefter1 changed from 35 to 0
2019-02-28 14:43:08.648 [vent.ItemStateChangedEvent] - Luefter2 changed from 35 to 0
Code: Alles auswählen
if (AussenTemp.state >= AussenGrenzMax_Set.state && FanStandby_Switch.state != 0) {
FanStandby_Switch.sendCommand(ON)
logInfo("Lüftung manuell","LuefterStufe ist jetzt: {} AussenTemp beträgt {}",LuefterStufe.state,AussenTemp.state
Code: Alles auswählen
if (AussenTemp.state >= AussenGrenzMax_Set.state && FanStandby_Switch.state != 0) {
FanStandby_Switch.sendCommand(0)
logInfo("Lüftung manuell","LuefterStufe ist jetzt: {} AussenTemp beträgt {}",LuefterStufe.state,AussenTemp.state
Ne... das ist etwas verwirrend, aber wenn Standby ON ist... geht die Anlage in Standbypeter-pan hat geschrieben: ↑28. Feb 2019 14:48 Hallo Peter,
hab's nicht so genau angeschaut, aber du hast folgenden Code-Snipped:Muss das nichtCode: Alles auswählen
if (AussenTemp.state >= AussenGrenzMax_Set.state && FanStandby_Switch.state != 0) { FanStandby_Switch.sendCommand(ON) logInfo("Lüftung manuell","LuefterStufe ist jetzt: {} AussenTemp beträgt {}",LuefterStufe.state,AussenTemp.state
heissen? Also FanStandby_Switch.sendCommand(0)Code: Alles auswählen
if (AussenTemp.state >= AussenGrenzMax_Set.state && FanStandby_Switch.state != 0) { FanStandby_Switch.sendCommand(0) logInfo("Lüftung manuell","LuefterStufe ist jetzt: {} AussenTemp beträgt {}",LuefterStufe.state,AussenTemp.state
Probier's mal