okap: zmiana z abstrakcyjnego Number na dimmer

Procenty maja teraz mniej-wiecej przelozenie na biegi.
This commit is contained in:
root
2018-11-09 21:02:58 +01:00
parent 6076ef8c07
commit b4edfb2e43
3 changed files with 29 additions and 51 deletions

View File

@@ -60,7 +60,7 @@ Switch rSONOFF06 "Conn s06 [%s]" { mqtt="<[motherqtt:/sonoff06/lwt:state:MAP(esp
/* d1mini w okapie */
Number sOKAP_speed <fan>
Dimmer dOKAP_speed <fan>
Switch sD1MINI01_bieg1 "Okap bieg 1 [%s]" <fan> { mqtt=">[motherqtt:/d1mini01/gpio/12:command:ON:1],>[motherqtt:/d1mini01/gpio/12:command:OFF:0]" }
Switch sD1MINI01_bieg2 "Okap bieg 2 [%s]" <fan> { mqtt=">[motherqtt:/d1mini01/gpio/15:command:ON:1],>[motherqtt:/d1mini01/gpio/15:command:OFF:0]" }
Switch sD1MINI01_bieg3 "Okap bieg 3 [%s]" <fan> { mqtt=">[motherqtt:/d1mini01/gpio/16:command:ON:1],>[motherqtt:/d1mini01/gpio/16:command:OFF:0]" }

View File

@@ -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: {
if (dOKAP_speed.state == 0) {
sD1MINI01_bieg1.sendCommand(OFF)
sD1MINI01_bieg2.sendCommand(OFF)
sD1MINI01_bieg3.sendCommand(OFF)
}
case 1: {
} else if (dOKAP_speed.state <= 32) {
/* od 1% do 32% -> bieg 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)
sD1MINI01_bieg2.sendCommand(OFF)
sD1MINI01_bieg3.sendCommand(OFF)
}
case 2: {
} else if (dOKAP_speed.state <= 66) {
/* 33% do 66% -> bieg 2 */
sD1MINI01_bieg1.sendCommand(OFF)
sD1MINI01_bieg2.sendCommand(ON)
sD1MINI01_bieg1.sendCommand(OFF)
sD1MINI01_bieg3.sendCommand(OFF)
}
/* 70% = 2 bieg */
case 70: {
sD1MINI01_bieg2.sendCommand(ON)
} else {
/* powyzej 66% -> bieg max */
sD1MINI01_bieg1.sendCommand(OFF)
sD1MINI01_bieg3.sendCommand(OFF)
}
case 3: {
sD1MINI01_bieg2.sendCommand(OFF)
sD1MINI01_bieg3.sendCommand(ON)
sD1MINI01_bieg1.sendCommand(OFF)
sD1MINI01_bieg2.sendCommand(OFF)
}
default: {
logInfo("okap","incorrect state: {}", sOKAP_speed.state)
}
}
end

View File

@@ -15,7 +15,7 @@ sitemap pbrk label="Domek"
Frame label="Kuchnia" {
Switch item=sD1MINI02MOS
Switch item=sOKAP_speed label="Wyciąg" mappings=[0="OFF", 1="Bieg 1", 2="Bieg 2", 3="Bieg max"]
Switch item=dOKAP_speed label="Wyciąg" mappings=[0="OFF", 30="Bieg 1", 60="Bieg 2", 100="Bieg max"]
Switch item=sD1MINI01_swiatlo
/* Dimmer item=dD1MINI01_swiatlo */
}