RE: Programmation fermeture partielle VR en fonction du soleil - muller68 - 05-16-2016
Hello
petite question sur le même principe, je pensais mettre un scénario avec fermeture des vr a 14h coté sud / sud - ouest,
mais j'arrive pas a paramétré en faisant mon scénario depuis l'écran tactile.
je lui ai mis descente a un certain pourcentage a 14h donc, puis une pause entre l'étape de fin de 4h, pour qu'ils s'ouvrent a 18h.
le problème c'est que ça me remplace le temps de pause de 4h par quelques mili seconde et / ou suppression de l'étape de fin à chaque fois que je veux 'modifié le scénario' (en aillant constaté que le scénario ne s'est pas bien déroulé)
Si on trouve une solution a ça, j'aimerais bien également comprendre comment mettre les fameuse variables citée dans ce post ( si beau temps, si température , si pluie... )
Merci
RE: Programmation fermeture partielle VR en fonction du soleil - Eric64 - 05-20-2016
Perso je ne fais plus de scénario via l'écran tactile. Essai de les faire sur Calaos installer avec des conditions horaire (si = 14h alors fermeture, si = 18h alors ouverture, etc...) et temps ( beau, pluie, etc...)
RE: Programmation fermeture partielle VR en fonction du soleil - Arnaud - 05-21-2016
Hello,
Oui j'ai le même bug depuis longtemps.
RE: Programmation fermeture partielle VR en fonction du soleil - muller68 - 05-23-2016
Ok, merci pour vos réponse.
J'ai remarqué que les post 'Créer une variable scénario' et 'Créer une variable horaire' dans le wiki n'existe plus.
je ne sais pas ou il faut signalé ceci... si quelqu'un peu faire passé le mot.. ;-)
RE: Programmation fermeture partielle VR en fonction du soleil - Guillaume - 06-09-2017
Je rebondis sur ce post car je souhaite faire quasi la même chose mais en fonction de la température du salon.
Voici ce que j ai fait :
Création d'un boolean qui par défaut doit être à "true" et qui se met à "false" lors de l appui sur un bouton de volet, et à true lors de l'ouverture de volet ou l execution d un script "Volets_haut" ou "Volets_Matin_Weekend":
Creation du boolean :
Quote:
Ajout de la condition dans le script "Volets_Matin_Weekend" :
Creation du scenario Temp_salon :
Voici le script et ce qu il devrait faire :
Si la temperature_salon >= 24 et que la variable auto_volet_bas=true, il enclenche le script :
Code: local temperature_salon = calaos:getInputValue("input_35")
if (temperature_salon == 24) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 100")
calaos:setOutputValue("output_5", "set 100")
calaos:setOutputValue("output_6", "set 100")
elseif (temperature_salon == 24.1) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 90")
calaos:setOutputValue("output_5", "set 90")
calaos:setOutputValue("output_6", "set 90")
elseif (temperature_salon == 24.2) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 80")
calaos:setOutputValue("output_5", "set 80")
calaos:setOutputValue("output_6", "set 80")
elseif (temperature_salon == 24.3) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 70")
calaos:setOutputValue("output_5", "set 70")
calaos:setOutputValue("output_6", "set 70")
elseif (temperature_salon == 24.4) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 60")
calaos:setOutputValue("output_5", "set 60")
calaos:setOutputValue("output_6", "set 60")
elseif (temperature_salon == 24.5) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 50")
calaos:setOutputValue("output_5", "set 50")
calaos:setOutputValue("output_6", "set 50")
elseif (temperature_salon == 24.6) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 40")
calaos:setOutputValue("output_5", "set 40")
calaos:setOutputValue("output_6", "set 40")
elseif (temperature_salon == 24.7) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 30")
calaos:setOutputValue("output_5", "set 30")
calaos:setOutputValue("output_6", "set 30")
elseif (temperature_salon >= 24.8) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 20")
calaos:setOutputValue("output_5", "set 20")
calaos:setOutputValue("output_6", "set 20")
end
return true
Sauf qu il ne descend pas les volets pourtant dans les logs je vois bien une remonté true lors de l execution du script :
Code: Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] input (InputTemp.cpp:120) input_35: 24.6 °C
Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] rule (Rule.cpp:143) Rule(Scenario,Temp_salon): Starting execution (1 actions)
Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] lua (ScriptExec.cpp:39) Starting script. (0xb70550)
Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] process (ExternProc.cpp:169) Starting process: /usr/bin/calaos_script --socket /tmp/calaos_proc_7fdb9449-e288-c8d1-3356-2b0082e96f9e_lua_18159 --namesp
Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] rule (Rule.cpp:152) Rule(Scenario,Temp_salon): Execution done.
Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] lua (ScriptExec.cpp:68) LUA script finished.
Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] rule.action.script (ActionScript.cpp:38) Script finished with true
Jun 08 17:15:10 intel-corei7-64 calaos_server[18159]: [INF] lua (ScriptExec.cpp:94) LUA process terminated. (0xb70550)
RE: Programmation fermeture partielle VR en fonction du soleil - Guillaume - 06-09-2017
Je me reponds :
Il faut que dans la variable, l etat soit sauvegardé :
Et aussi déclarer la variable dans le script :
J ai ajouté du print pour voir dans les logs l etat de ma variable.
Code: local temperature_salon = calaos:getInputValue("input_35")
local auto_volets_bas = calaos:getInputValue("intern_1")
print("valeur temperature du salon:"..temperature_salon)
if auto_volets_bas == true then
print("la valeur boolean du BAS est true")
else
print("la valeur boolean du BAS est false")
end
if (temperature_salon == 24) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 0")
calaos:setOutputValue("output_5", "set 0")
calaos:setOutputValue("output_6", "set 0")
elseif (temperature_salon == 24.1) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 10")
calaos:setOutputValue("output_5", "set 10")
calaos:setOutputValue("output_6", "set 10")
elseif (temperature_salon == 24.2) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 20")
calaos:setOutputValue("output_5", "set 20")
calaos:setOutputValue("output_6", "set 20")
elseif (temperature_salon == 24.3) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 30")
calaos:setOutputValue("output_5", "set 30")
calaos:setOutputValue("output_6", "set 30")
elseif (temperature_salon == 24.4) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 40")
calaos:setOutputValue("output_5", "set 40")
calaos:setOutputValue("output_6", "set 40")
elseif (temperature_salon == 24.5) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 50")
calaos:setOutputValue("output_5", "set 50")
calaos:setOutputValue("output_6", "set 50")
elseif (temperature_salon == 24.6) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 60")
calaos:setOutputValue("output_5", "set 60")
calaos:setOutputValue("output_6", "set 60")
elseif (temperature_salon == 24.7) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 70")
calaos:setOutputValue("output_5", "set 70")
calaos:setOutputValue("output_6", "set 70")
elseif (temperature_salon >= 24.8) and (auto_volets_bas == true) then
calaos:setOutputValue("output_4", "set 80")
calaos:setOutputValue("output_5", "set 80")
calaos:setOutputValue("output_6", "set 80")
end
return true
|