Je viens de faire les test de la programmation de mes leds.
Il y avait plusieurs choses qui n'allaient pas :
- J'ai du créer une lumière fictive (avec visible=false pour ne pas qu'elle s'affiche) afin de pouvoir déclarer le N° de sortie automate et avoir une id du relais du transfo, car sauf erreur de ma part, il n'y pas moyen de mettre cette info dans le IO inter_boolean
- Dans les règles des lumières il faut mettre "toggle" pour la variable du bloc, car si on met "true" son état ne change qu'au 1er allumage après il ne bouge plus puisqu'il est toujours à "true" du coup impossible d'éteindre le bloc :
Code:
SI RGBplafond == changed
ALORS active_bloc = toggle
voila mon script :
Code:
local RGBplafond = calaos:getOutputValue("output_55")
local Wplafond = calaos:getOutputValue("output_72")
local RGBmeuble = calaos:getOutputValue("output_73")
local Wmeuble = calaos:getOutputValue("output_74")
local RGBplinthes = calaos:getOutputValue("output_75")
local Wplinthes = calaos:getOutputValue("output_76")
if RGBplafond ~= "0" or Wplafond ~= "0" or RGBmeuble ~= "0" or Wmeuble ~= "0" or RGBplinthes ~= "0" or Wplinthes ~= "0"
then
-- allume le bloc
calaos:setOutputValue("output_81", true)
else
-- coupe le bloc
calaos:setOutputValue("output_81", false)
end
return true
Au final j'ai du créer :
- 1 variable booléenne, qui permet de détecter un changement d'état de lumière
- 1 lumière "fictive" pour pouvoir actionner le relais
- 6 règles pour détecter le changement d'état des lumières
- 1 règles avec script pour gérer le relais du transfo.
Ca fonctionne bien, mais ca fait un peu usine à gaz... je vais réfléchir à une autre méthode pour essayer de simplifier, mais pas sur qu'il y ait plus simple...