okap: zmiana z abstrakcyjnego Number na dimmer
Procenty maja teraz mniej-wiecej przelozenie na biegi.
This commit is contained in:
@@ -3,62 +3,40 @@
|
||||
example of switch https://community.openhab.org/t/examples-of-scenes/16411/5
|
||||
*/
|
||||
|
||||
/* 0="OFF", 1="Bieg 1", 2="Bieg 2", 3="Bieg max"]
|
||||
/*
|
||||
Ustawienia wynikające ze scen:
|
||||
0="OFF", 30="Bieg 1", 60="Bieg 2", 100="Bieg max"]
|
||||
|
||||
Ustawienia wynikające z Alexy:
|
||||
procenty od 0 do 100
|
||||
|
||||
*/
|
||||
|
||||
rule "Ustaw prędkość okapu"
|
||||
when
|
||||
Item sOKAP_speed received update
|
||||
Item dOKAP_speed received update
|
||||
then
|
||||
switch (sOKAP_speed.state) {
|
||||
case 0: {
|
||||
sD1MINI01_bieg1.sendCommand(OFF)
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
}
|
||||
if (dOKAP_speed.state == 0) {
|
||||
sD1MINI01_bieg1.sendCommand(OFF)
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
|
||||
case 1: {
|
||||
sD1MINI01_bieg1.sendCommand(ON)
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
}
|
||||
/* 40% = 1 bieg */
|
||||
case 40: {
|
||||
sD1MINI01_bieg1.sendCommand(ON)
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
}
|
||||
/* turn ON == 100% == 1 bieg */
|
||||
case 100: {
|
||||
sD1MINI01_bieg1.sendCommand(ON)
|
||||
} else if (dOKAP_speed.state <= 32) {
|
||||
/* od 1% do 32% -> bieg 1 */
|
||||
sD1MINI01_bieg1.sendCommand(ON)
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
}
|
||||
} else if (dOKAP_speed.state <= 66) {
|
||||
/* 33% do 66% -> bieg 2 */
|
||||
sD1MINI01_bieg1.sendCommand(OFF)
|
||||
sD1MINI01_bieg2.sendCommand(ON)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
|
||||
case 2: {
|
||||
sD1MINI01_bieg2.sendCommand(ON)
|
||||
|
||||
sD1MINI01_bieg1.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
}
|
||||
/* 70% = 2 bieg */
|
||||
case 70: {
|
||||
sD1MINI01_bieg2.sendCommand(ON)
|
||||
|
||||
sD1MINI01_bieg1.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(OFF)
|
||||
}
|
||||
|
||||
case 3: {
|
||||
sD1MINI01_bieg3.sendCommand(ON)
|
||||
|
||||
sD1MINI01_bieg1.sendCommand(OFF)
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
}
|
||||
default: {
|
||||
logInfo("okap","incorrect state: {}", sOKAP_speed.state)
|
||||
}
|
||||
} else {
|
||||
/* powyzej 66% -> bieg max */
|
||||
sD1MINI01_bieg1.sendCommand(OFF)
|
||||
sD1MINI01_bieg2.sendCommand(OFF)
|
||||
sD1MINI01_bieg3.sendCommand(ON)
|
||||
}
|
||||
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user