Posts: 47
Threads: 1
Joined: Sep 2013
Reputation:
0
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
Posts: 359
Threads: 25
Joined: Nov 2013
Reputation:
2
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...)
CALAOS V3 | WAGO 750-849 | NUC NUC5PPYH | Ecran tactile ELO 1537L avec Ampli VGA et adaptateur USB/RS232 Grillé |
Sondes PT1000 | DMX RGBW pour Rubans Leds 24v | Caméras POE Weisky
Posts: 911
Threads: 93
Joined: Aug 2013
Reputation:
4
Hello,
Oui j'ai le même bug depuis longtemps.
Calaos v1.1.20 sur Advantech x86 | Calaos Home écran tactile RS232 | Wago 750-841 | DMX RGB LED
Calaos-OS v2.0 sur Advantech x86 | Clé USB
Squeezebox | Raspberry & Scripts maison
Posts: 47
Threads: 1
Joined: Sep 2013
Reputation:
0
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.. ;-)
Posts: 43
Threads: 10
Joined: Sep 2013
Reputation:
1
06-09-2017, 01:57 PM
(This post was last modified: 06-09-2017, 02:00 PM by Guillaume.)
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)
Posts: 43
Threads: 10
Joined: Sep 2013
Reputation:
1
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
|