LUA : Comptage

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 <\>.
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

LUA : Comptage

Message par daniel4860 »

Bonjour à tous,
J'ai cree un compteur que je souhaite incrémenté avec un interrupteur nommée Circulateur, quand il passe à ON, le compteur s'incrémente.
Mais voila mon souci, tout les 2 minutes il y a une interrogation, et si le Circulateur est à on le compteur s'incrémente.
Ce que je désire c'est une incrémentation quand il est passé à ON après un OFF.
Voici mon LUA, que je découvre !!!
commandArray = {}
-- Compteur est le nom du compteur
-- 32 est l'idx du compteur
-- Circulateur est le nom du device que l'on doit compter
if (devicechanged['Circulateur']=='On') then
pulses = tostring(tonumber(otherdevices_svalues['Compteur'])+1)
print('Nombre de marche Circulateur '..pulses)
commandArray['UpdateDevice'] = '32|0|' .. pulses
end
return commandArray

C'est sur que quand il va passer dans le IF et q'uil est à ON on fait plus 1.
Mais comment faire quand il est à ON depuis 2h, ne pas rajouter 1 à chaque interrogation.
Merci pour votre aide.
Et si il existe des tuto, mode d'emploi de LUA explication en francais, je suis preneur.
Daniel
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
denis_brasseur
Messages : 898
Inscription : 24 déc. 2018, 17:05
Localisation : (26)

Re: LUA : Comptage

Message par denis_brasseur »

Ton script est pourtant bien basé sur un changement d'état

Code : Tout sélectionner

if (devicechanged['Circulateur']=='On') then

end
Le code n'est exécuté que si il y a changement d'état de Circulateur à On.

Ou alors cela signifie que tu force régulièrement l'état à On, ce qui expliquerait ton fonctionnement.
C'est sur que quand il va passer dans le IF et q'uil est à ON on fait plus 1.
Pas quand il est sur On, mais quand il passe sur On, ton script est basé sur un changement d'état, le If ne va s’exécuter qu'au changement d'état.
Pi3 + DD PiDrive - RFXtrx433 - AEON Labs ZW090
ogulf
Messages : 445
Inscription : 15 juin 2017, 14:41

Re: LUA : Comptage

Message par ogulf »

Question bête : c'est bien un script Device ?

Une piste pour voir si ton interrupteur repasse à "on" sans que tu le saches : consulter simplement son historique.
Domoticz Stable sur RPi3 + RFPlayer + ZWave+ + RFLink R48 :
- 11 x RF660P
- 1 x FGSD-002
- 10 x F007TH
- 5 x Emcoluxr EV1527 + 4 x NAS-DS01Z
- 4 x NAS-PD02Z
- 1 x Shelly 1PM
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: LUA : Comptage

Message par daniel4860 »

Oui c'est bien un script Device.
Est-ce que cela provient de mon blockly: en fichiers joints.
Merci pour votre aide.
Pièces jointes
Capture d’écran 2019-03-06 à 20.02.15.png
Capture d’écran 2019-03-06 à 20.02.15.png (47.06 Kio) Consulté 5606 fois
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
ogulf
Messages : 445
Inscription : 15 juin 2017, 14:41

Re: LUA : Comptage

Message par ogulf »

Ajoute des log des 2 températures à chaque "do" et encore une fois consulté l'historique des changements d'état : les timestamp doivent correspondre à tes log.
Domoticz Stable sur RPi3 + RFPlayer + ZWave+ + RFLink R48 :
- 11 x RF660P
- 1 x FGSD-002
- 10 x F007TH
- 5 x Emcoluxr EV1527 + 4 x NAS-DS01Z
- 4 x NAS-PD02Z
- 1 x Shelly 1PM
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: LUA : Comptage

Message par daniel4860 »

Bonjour ogulf
j'ai du mal à comprendre, comment ajouter des log des 2 températures à chaque DO, tu voudrais que je rajoute des log dans le DO qui se trouve dans le blockly?
Qu'appelle tu timestamp, et ou les trouvés?
En fichiers joint les log du circulateur.
logcirculateur.JPG
logcirculateur.JPG (104.9 Kio) Consulté 5586 fois
Merci
Daniel
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
Datawolf
Messages : 273
Inscription : 03 avr. 2018, 13:51

Re: LUA : Comptage

Message par Datawolf »

Salut,
Qu'est-ce qui met le circulateur sur On ?
Parce que la log fait apparaitre qu'on le met parfois On alors qu'il l'est déjà (idem pour Off).
Si ça peut être évité...
@+
The Datawolf
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: LUA : Comptage

Message par daniel4860 »

Bonjour Datawolf,
Le circulateur et mis en route par un Blockly présent dans un message plus haut.
Si la temp bas du ballon < la temp sortie chaudière alors set Circulateur.
Si la temp sortie chaudière <ou egale à la temp bas ballon ou la temp bas ballon >ou = 70 alors set Circulateur Off.
Donc à chaque passage on a un ON et un +1 pour le compteur!
Et je ne sais pas comment résoudre se problème.
J'ai essayé d'y ajouter pour le Circulateur On, dans la condition un And Circulateur Off, mais ça ne change rien.
Il y a une lecture ou un rafraichissement, je ne sais pas comment appeler cela tout les 2 minutes 30 un passage de lecture et un On ou un Off mis dans le log du Circulateur.
Merci pour l'aide.
Daniel
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
ogulf
Messages : 445
Inscription : 15 juin 2017, 14:41

Re: LUA : Comptage

Message par ogulf »

Il faudrait provisoirement ajouter tes 2 températures en log dans le Blocky ou au moins juste un texte "on" dans l'un et "off" dans l'autre.
Tu laisses tourner 1h ou deux.
Dans ta log Domoticz tu verras l'heure d'écriture (le fameux timestamp) avec "on" ou "off".
Il faudra ensuite comparer ta log avec l'historique des actions que tu as trouvé (et mis en copie).
Domoticz Stable sur RPi3 + RFPlayer + ZWave+ + RFLink R48 :
- 11 x RF660P
- 1 x FGSD-002
- 10 x F007TH
- 5 x Emcoluxr EV1527 + 4 x NAS-DS01Z
- 4 x NAS-PD02Z
- 1 x Shelly 1PM
daniel4860
Messages : 84
Inscription : 26 sept. 2016, 18:31
Localisation : Lapoutroie Haut-Rhin

Re: LUA : Comptage

Message par daniel4860 »

Voila ce que je viens de faire dans le blockly:
Capturer.JPG
Capturer.JPG (59.51 Kio) Consulté 5535 fois
mais j'ai un peu de mal à suivre et à comprendre!
Par contre j'ai mis marche et arrêt cela n'as pas d'incidence?
Pour les log, je les récupère dans "reglage" "log"!
Et je devrais retrouver une ligne Bas du Ballon arret ou marche?
Je vais laisser tourner la nuit, mais pour le moment je ne vois pas de marche ou d'arret dans le log.
A plus
Domoticz sur Raspberry sur lequel 3 sondes prennent la température.
Une Gpio Out fait basculer un relais pour enclencher un circulateur.
Répondre