Aller au contenu
tibo789

Reglage Du Temps De Filtration Piscine En Lua

Recommended Posts

Bonsoir,

Je viens d'acquerir une HC2 que j'ai connecté a ma Zibase.

Je transfert progressivement tout le Zwave sur la HC2 mais j'ai un souci sur le code en LUA.

Je calcul un temps de fonctionnement  en seconde de la pompe de filtration en fonction de la temperature de l'eau.

J'ai essayé deux methodes mais sans resultat j'ai toujours une erreur pas moyen de faire une tempo reglable

 

3600 remplacé par fibaro:setGlobal("TempsMarchePiscine", "0")

 

1-fibaro.sleep(3600*1000)
2-setTimeout(function() fibaro:call(101, "turnOff");end, 3600*1000)

 

Merci de votre aide

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

je n'attire pas la foule

personne n'a voulu realiser une tempo reblable sur HC2 ???

Je n'avais eu aucun proleme pour le faire sur la Zibase !!

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu peux remplacer 3600 par une variable

Mais je vois pas exactement ce que tu veux faire

Partager ce message


Lien à poster
Partager sur d’autres sites

Cela ne fonctionne pas si je mets une variable a la place de 3600. Je veux faire tourner la pompe de la piscine un certain temps fonction de la température de l'eau

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité chris6783

J'arrive un peu tard mais j'avais publié un VD pour ce besoin ici

 

http://www.domotique-fibaro.fr/index.php/topic/4432-virtual-device-gestionnaire-filtration-piscine/?hl=piscine

 

je vais publier une mise à  jour cette semaine car dans certains cas de changement de variable globale via le panneau de variable il ne reprenait pas le calcul

Il est maintenant stable et fait son job.

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour , j'ai jamais eu le temps de donner mon résultat final

voila comment je calcule le temps de fonctionnement de la piscine inspiré de se que j'avais trouvé sur zibase

Le temps de filtration est optimisé en fonction de la température cela fais 2 ans que ca fonctionne parfaitement

La filtration est lancé par un script 7 fois par jour

 

Bouton calcultemps lancé 1 fois par jour a midi

local idEau = 148;
local tempEau = fibaro:getValue(idEau,"value");
local currentDate = os.date("*t");
local MinuteDebut= currentDate.min
local HeureDebut= currentDate.hour
local MinuteFin= 0
local HeureFin= 0
fibaro:debug(HeureDebut)
fibaro:debug(MinuteDebut)


--calcul duree filtration
local Duree = 45 + (tonumber(tempEau) - 17) * 5;
if Duree < 0 
  then
      Duree =0 
  else
  if Duree > 120
    then
        Duree = 120
    end
end
-- calcul heure d'arret
if Duree + MinuteDebut < 60
    then
        MinuteFin = MinuteDebut + Duree
          HeureFin = HeureDebut
    else
    if Duree + MinuteDebut > 60
        then
            MinuteFin = Duree - 60 + MinuteDebut
              HeureFin = HeureDebut + 1
          else
        if Duree + MinuteDebut == 120
        then
            MinuteFin = 0
              HeureFin = HeureDebut + 2
          end
      end
end

fibaro:debug(HeureFin)
fibaro:debug(MinuteFin)
TempsPiscine=string.format("%02d", HeureFin) .. ":" .. string.format("%02d", MinuteFin)
fibaro:debug(TempsPiscine)


fibaro:setGlobal("TempPiscine", Duree)
fibaro:setGlobal("TempsPiscine", TempsPiscine)
fibaro:debug("Duree :"..fibaro:getGlobalValue("TempPiscine"))
fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label3.value", "Durée Filtration "..fibaro:getGlobalValue("TempPiscine").."mn x 7")
fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label4.value", "Heure Arret "..fibaro:getGlobalValue("TempsPiscine"))

 

et dans la boucle principale 

if string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == fibaro:getGlobalValue("TempsPiscine")
    then
      fibaro:call(idPump, "turnOff");
    fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Label2.value", "Pompe à l'arrêt"); 
end

Capture.PNG.e0be589b8ed0346e19ade1816d91e527.PNG

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×