Page 4 sur 4

Re: Releve compteur Gaz

Publié : 10 sept. 2017, 23:10
par moumout31
Gaz a écrit :Bonjour,
Je tente à mon tour de récupérer les données de mon compteur d'eau, pour le moment je suis en mode laboratoire, j'utiliserai un module fibaro FGBS001 ( car dispo dans un tiroir) pour envoyer les différents états, si pas concluant je passerais par un émetteur chinois en 433 mais après plusieurs heurūes.

Le script tourne nickel :

Code : Tout sélectionner

--|0.004

commandArray = {}

local thisfilename = "/volume1/@appstore/domoticz/samplescripts/lua/script_device_Eau.lua"
local virtualcounter_idx = "567"
local switchName = "Eau"

if devicechanged[switchName] == 'Open' then

-- Open this file and read in the first line
   file = io.open(thisfilename, "rb")
   sContents = file:read("*l")
   file:close()

-- Parse and update the countvalue
   foo, snumber = sContents:match("([^,]+)|([^,]+)")
   local countvalue = snumber + 0.001
   local newline = foo .. "|" .. string.format("%.3f", tostring(countvalue))

-- Update virtual counter device
   ts = virtualcounter_idx .. "|0|" .. string.format("%.3f", tostring(countvalue))
   commandArray['UpdateDevice'] = ts

-- Write back new counter value
   local file = io.open(thisfilename, "r+")
   file:write(newline)
   file:close()

end

return commandArray
Mais voila au niveau de la remontée sur le compteur virtuel ça merde :oops:
L'incrémentation se fait bien, mais la partie consommation journalière reste à 0m3 du coup les logs restent à 0 et la page rapport aussi.
Compteur Eau.png
J'ai essayer avec tout les type de compteurs.Idem :oops:
Avez-vous déjà rencontré ce problème ? Une solution ?

Apres il y le poste de js-martin et son script en python (viewtopic.php?t=1737) mais je sais pas comment l'adapter sans l'utilisation des GPIO et sur un nas Synology.

Code : Tout sélectionner

#!/usr/bin/python
# -*- coding: utf-8 -*-
 
import json
import requests
import urllib
import RPi.GPIO as GPIO  # bibliotheque pour utiliser les GPIO
import time

############# Parametres ################################# 

#~~~~~~~~~~ Parametres Domoticz ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
domoticz_ip="192.168.0.40"
domoticz_port="8080"
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# IDX de Domoticz 
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# remplacer XXX par votre idx de votre widget
dummy_idx={'compteur_eau': 331, 'switch_eau':330}


#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Mode debug
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
# si debug = True => on affiche plein de choses... (sinon mettre False) 
debug=True


#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Choix du GPIO
#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

# On mesure le compteur d'eau sur le GPIO 22 pin 15
GPIO.setmode(GPIO.BCM)   # mode de numérotation des pins
GPIO.setup(22,GPIO.IN)   # GPIO 22 (pin 15) regle en entree

###############  fin des parametres #############################

CheckGoOFF=False

def Loop4(channel):
    global CheckGoOFF
    global debug
    if GPIO.input(channel):
        if debug:
           print "---interrupt ON---"
           print "---Valeur CheckGoOFF="+str(CheckGoOFF)
        if CheckGoOFF:
           # On met CheckGoOFF Ã  False
           CheckGoOFF=False
           # on met à jour le compteur incremental de Domoticz
           requete='http://'+domoticz_ip+':'+domoticz_port+'/json.htm?type=command&param=udevice&idx='+str(dummy_idx['compteur_eau'])+'&svalue=1'
           urllib.urlopen(requete)
           #on passe le switch d'etat de la demi-lune à ON
           requete='http://'+domoticz_ip+':'+domoticz_port+'/json.htm?type=command&param=switchlight&idx='+str(dummy_idx['switch_eau'])+'&switchcmd=On&level=0'
           urllib.urlopen(requete)
           if debug:
              print "***La roue a bien fait un tour, il faut incrementer le compteur de 1"
              r = requests.get('http://'+domoticz_ip+':'+domoticz_port+'/json.htm?type=devices&rid='+str(dummy_idx['compteur_eau'])).json()
              result={}
              index=str(r['result'][0]['Counter'])
              print "Compteur eau nouvel index = "+index
        else:
           CheckGoOFF=False # not needed
           if debug:
              print "=====Traitement interruptions multiples sur un meme etat===="
              print "=====>> CheckGoOFF vaut encore False : la demi lune n'a pas encore fait un tour... on ignore l'interruption"
    else:
        if debug:
           print ":::interrupt OFF:::"
           print ":::Valeur CheckGoOFF="+str(CheckGoOFF)
           print ":::La lune metalique a fait un demi-tour - on passe la valeur de CheckGoOFF a True"
        CheckGoOFF=True
        #on passe le switch d'etat de la demi-lune a OFF
        requete='http://'+domoticz_ip+':'+domoticz_port+'/json.htm?type=command&param=switchlight&idx='+str(dummy_idx['switch_eau'])+'&switchcmd=Off&level=0'
        urllib.urlopen(requete)

GPIO.add_event_detect(22, GPIO.BOTH, callback=Loop4, bouncetime=100)


while True:
    time.sleep(100)
    print "..."
    
En espérant avoir de l'aide.
Bonjour,

Je me permets de rebondir sur la question ci-dessus car j'ai le même problème avec un compteur de gaz. Le statut s'incrémente bien, mais le compteur journalier reste à 0.
J'ai utilisé le script donné au début du sujet avec un contact de porte 433mhz.

Avez-vous une idée pour faire fonctionner le compteur journalier ?
La seule solution que je vois est d'écrire sur le paramètre "CounterToday" en calculant dans le script la consommation du jour.
Qu'en pensez-vous ?

Merci par avance pour votre aide !

Baptiste

Re: RE: Re: Releve compteur Gaz

Publié : 12 sept. 2017, 17:27
par Oui_OuiBlog
Passer le type du compteur en compteur gaz et modifier les paramètres du diviseur gaz ne marche pas ?
https://easydomoticz.com/forum/viewtopi ... 228#p40228

Re: RE: Re: Releve compteur Gaz

Publié : 20 sept. 2017, 15:20
par moumout31
Oui_OuiBlog a écrit :Passer le type du compteur en compteur gaz et modifier les paramètres du diviseur gaz ne marche pas ?
https://easydomoticz.com/forum/viewtopi ... 228#p40228
J'ai suivi le lien, j'ai tout passé en dm3, du coup il n'y a plus de virgules dans le scripts. J'ai ensuite passé le diviseur à 1000 et tout fonctionne bien !
C'est super, merci beaucoup pour ton aide ! :D

Re: Releve compteur Gaz

Publié : 21 nov. 2017, 18:35
par FPA
bonsoir,

J'ai moi aussi un compteur magnol G4S6.20M et je c'ai l'intention de remonter les impulsions via un node mysensors équipé de contact magnétique. J'ai beau faire des tests avec le multimetre, je n'arrive pas à choper la moindre impulsion; pourrais tu me dire précisément où tu as placé ton capteur stp
d'avance merci

Re: Releve compteur Gaz

Publié : 01 janv. 2018, 20:28
par tekkharibo
Est ce que quelqu'un sait si ce compteur est "connétable" je n'ai pas trouvé sur internet. Image

Envoyé de mon SM-G935F en utilisant Tapatalk

Re: Releve compteur Gaz

Publié : 02 janv. 2018, 18:11
par papoo
tekkharibo a écrit :Est ce que quelqu'un sait si ce compteur est "connétable" je n'ai pas trouvé sur internet.
à vu de nez il me semble trop vieux pour etre télérelevable.
les gallus télérelevables ressemblent à ça maintenant
http://m.compteur-energie.com/media/Itr ... ie.com.pdf

Re: Releve compteur Gaz

Publié : 02 janv. 2018, 18:17
par tekkharibo
Merci pour l'information

Bon bah tant pis j'attendrai qu'on ne le change

Envoyé de mon SM-G935F en utilisant Tapatalk

Re: Releve compteur Gaz

Publié : 08 mai 2018, 20:17
par Vince
A priori il ya des différentes versions des compteurs Magnol G4 S6.20M en fonction des années.
Pour ma part il est de 1995 et je n'ai pas réussi à avoir la moindre impulsion. Le modéle décrit par @doc62fr doit être >à 1998
si jamais quelqu'un a réussi merci de passé l'info avec une photo de la postion du contact reed merci ;)

Re: Releve compteur Gaz

Publié : 17 nov. 2018, 19:31
par lebsana
Bonjour à tous,

Simplement pour dire merci pour à Deennoo.
J'ai appliqué les conseils chez moi et ça fonctionne nickel.
Pour info j'ai acheté un détecteur d'ouverture de porte à 4.50€ à l'adresse suivante :
https://www.banggood.com/fr/GS-WDS07-Wi ... rehouse=CN
Il a l'avantage de fonctionner avec une pile AAA.

Reste a vérifier la durée de vie de la pile fournie avec le détecteur.

Bonne continuation à tous et encore merci à deennoo pour son post.