Page 1 sur 2

Incrementer compteur simplement?

Publié : 26 nov. 2016, 12:53
par n1c0l45
Bonjour a tous

J'ai cablé sur une entrée GPIO un montage electrique qui active la sortie à chaque fois que le fasceau est coupé. Cette entree est bien reconnue comme "contact" et on voit bien les ON / off successifs.
J'ai mis dans "mesure" un compteur incrémental mais je trouve pas comment simplement incrémenter le compteur lorsque l'entrée "contact est sur ON ?
(par simplement je veux dire sans script) Mon signal etant tres propre (pas besoin de gerer uniquement les fronts montants) doit on obligatoirement passé par un script?
Merci

Re: Incrementer compteur simplement?

Publié : 26 nov. 2016, 13:28
par Snorky
sur l'action de ton device tu peux mettre une requête http json pour faire un update de ton compteur

Re: Incrementer compteur simplement?

Publié : 26 nov. 2016, 13:30
par Fredok
Bonjour, voici comment je procédé pour incrémenter un compteur.

Code : Tout sélectionner

commandArray = {}
-- Compteur est ne nom du compteur
-- idx est l'idx du compteur
-- nom du device est le nom du device que l'on doit compter
 if (devicechanged['nom du device'] == 'On') then
   if otherdevices_svalues['Compteur'] == nil then commandArray['UpdateDevice'] = 'idx du compteur|0|0' end
   pulses = tostring(tonumber(otherdevices_svalues['Compteur'])+1)
   print('phrase dans le log '..pulses)
   commandArray['UpdateDevice'] = 'idx du compteur|0|' .. pulses
end
Normalement cela fonctionne (chez moi)
bye

Re: Incrementer compteur simplement?

Publié : 26 nov. 2016, 17:24
par n1c0l45
je vais tester merci!

Re: Incrementer compteur simplement?

Publié : 26 nov. 2016, 18:18
par Fredok
bonsoir, il manque un "return commandArray" a la fin

Re: Incrementer compteur simplement?

Publié : 27 nov. 2016, 09:52
par n1c0l45
il doit effectivement manqué quelque chose car cela ne marche pas

Image

Re: Incrementer compteur simplement?

Publié : 27 nov. 2016, 09:58
par n1c0l45
Meme en rajoutant le Return commandArray, le compteur ne s'incremente pas? ou ai je fais une erreur?

Est ce qu'on peut mettre des espaces dans les noms?

Code : Tout sélectionner

commandArray = {}
-- Compteur est ne nom du compteur
-- idx est l'idx du compteur
-- nom du device est le nom du device que l'on doit compter
 if (devicechanged['Capteur Compteur impulsion'] == 'On') then
   if otherdevices_svalues['Compteur impulsion'] == nil then commandArray['UpdateDevice'] = '294|0|0' end
   pulses = tostring(tonumber(otherdevices_svalues['Compteur impulsion'])+1)
   print('phrase dans le log '..pulses)
   commandArray['UpdateDevice'] = '294|0|' .. pulses
end
return commandArray
Merci

Re: Incrementer compteur simplement?

Publié : 27 nov. 2016, 11:14
par n1c0l45
finalement j'ai fait une requette Json et ca fonctionne... par contre j'aimerai savoir pourquoi le script ne fonctionne pas, savoir ou est l'erreur?
Merci

Re: Incrementer compteur simplement?

Publié : 27 nov. 2016, 11:34
par balajol
Bonjour n1c0l45,
Peux tu décrire également la méthode par JSON ?
Merci
B.

Re: Incrementer compteur simplement?

Publié : 27 nov. 2016, 11:59
par vil1driver