script qui se déclenche 5x par secondes

Forum dédié aux problématiques concernant les scripts pour DomoticZ.
Entourez votre code et les logs avec les balises nommées code grâce au bouton <\>.
kurogane
Messages : 19
Inscription : 20 janv. 2022, 20:26

script qui se déclenche 5x par secondes

Message par kurogane »

Bonjour a tous

J'ai un problème avec un script qui déclenche tous mes script 5 fois par seconde

Code : Tout sélectionner

------ Declaration des variables
local consigne = 0
local radiateur = 'radiateur_azenor'
Heure_Actuelle=os.date("%X")
local temperature = otherdevices_temperature['chambre_azenor']
local mode = 'mode_azenor' --Selecteur de mode (On, Off force)
local hysteresis = 0.3 --Delai de declanchement

commandArray = {}

if otherdevices[mode]=='nuit' then  --On met le radiateur en fonctionnement auto

    if (Heure_Actuelle > "19:00:00" and Heure_Actuelle < "22:00:00") then --or otherdevices[interrupteur]=='On'  then --on determine les heure du mode confort pour la nuit
        consigne=19
    
    else --if (Heure_Actuelle < "19:00:00" and Heure_Actuelle > "22:00:00") then --or otherdevices[interrupteur]=='Off'  then --on passe en eco pour le reste de la nuit
        consigne=17.5
    end
    
    if (temperature <= (consigne-hysteresis)) then
        commandArray[radiateur]='On'
    elseif  (temperature >= (consigne+hysteresis)) then
        commandArray[radiateur]='Off'
    end
end

if otherdevices[mode]=='confort' then --On passe en mode confort
    consigne=19
    
    if (temperature < (consigne-hysteresis)) then
        commandArray[radiateur]='On'
    elseif  (temperature > (consigne+hysteresis)) then
        commandArray[radiateur]='Off'
    end

end

if otherdevices[mode]=='eco' then --On passe en mode eco
    consigne=17.5
    
    if (temperature < (consigne-hysteresis)) then
        commandArray[radiateur]='On'
    elseif  (temperature > (consigne+hysteresis)) then
        commandArray[radiateur]='Off'
    end

end

if otherdevices[mode]=='Off' then -- Mise a l'arret du radiateur
    commandArray[radiateur]='Off'
end

return commandArray
Pourtant hier il se déclenchait normalement j'ai juste rajouté un level au sélecteur et changé les noms hier soir et ce matin tous les scripts lua se déclenche plusieure fois toutes les secondes.
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: script qui se déclenche 5x par secondes

Message par Keros »

Tu as sûrement un trigger Device. Passe en Time, il ne devrait s'exécuter toutes les minutes au lieu de toutes les fois où tu as un device qui change (qui peut être 5 fois par secondes).

Plus d'info dans mon petit guide débuter en programmation dans ma signature.
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
kurogane
Messages : 19
Inscription : 20 janv. 2022, 20:26

Re: script qui se déclenche 5x par secondes

Message par kurogane »

C'était effectivement ça! Merci

Du coup juste pour être sur je pensais que les script device c’était pour modifier l’état d'un device mais là du fait d'une variable sur l'heure et une sur une sonde de température j'ai des changement de variable tous le temps d'où le déclenchement intempestif?
Il ne faut pas nécessairement agir sur des variable de temps pour qu'un script soit considéré comme time?

Bon ben je vais retourner relire tous ça du coup!
Keros
Messages : 6638
Inscription : 23 juil. 2019, 20:57

Re: script qui se déclenche 5x par secondes

Message par Keros »

Pour t'aider : Trigger peut se traduire par Déclencheur ;)

Regarde plus précisément ce tuto : https://easydomoticz.com/point-scripts-lua/
Comment bien utiliser le forum : Poser une question, Mettre un script, un fichier, une image ou des logs
Mes petits guides : Débuter en programmation, Le débogage, Le choix de matériel, Les sauvegardes
Ma présentation - Mes Tutos
kurogane
Messages : 19
Inscription : 20 janv. 2022, 20:26

Re: script qui se déclenche 5x par secondes

Message par kurogane »

Ok je vois devicechanged pour un script_device. J'avais vraiment pas compris ça comme ca.

Merci pour ton temps et ton aide!
Répondre