[vz-users] Gaszähler Konfig

Tilman Glötzner tilman_1 at gloetzner.net
Mi Sep 28 11:10:59 CEST 2022


Hallo

ich habe mir einen Gaszähler mit einem I2C-Magnetkompass gebaut und ein 
Server-Programm zum Erfassen der gemessenen Impulse geschrieben. Das 
Interface zu vzlogger ist ein Python-script, das einmal pro Minute die 
in diesem Zeitraum erfassten Impulse  des Gaszählers ausgibt. 100 
Impulse sind 1 m^3. Wie muss ich das in Volkszähler konfigurieren bzw. 
stimmt die Konfig unten?  Es kommen Daten im vzlogger an. Ich bin mir 
aber nicht sicher, ob die Skalierung bei der Umrechnung in Kubikmeter 
stimmt.

Konfig vzlogger:

        // gas counter via i2c daemon and python script
          "enabled": true,
          "allowskip": true,
          "protocol": "exec",
          "command": "countingmeter.py",
          "format": "$t: $i = $v",
          "interval": 60,
          "channels": [{
              "uuid": "3e66af30-3efc-11ed-9625-9f6024cb27ed",
              "identifier": "Counter",
              "api": "volkszaehler",
              "middleware": "http://localhost/middleware.php",
              "aggmode": "sum",
              "duplicates": 720
           }]
         }
     ]


python script 'countingmeter.py'

#!/usr/bin/python3
import datetime
import socket
import json

HOST = "127.0.0.1"  # The server's hostname or IP address
PORT = 8888   # The port used by the server

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)

s.connect(("127.0.0.1", 8888))
string = (s.recv(1024).decode('utf-8'))
print (string)

data = json.loads(string)
now = str(int( datetime.datetime.now().timestamp() ))

print(now + ': Counter = ' + str(data["counter"]))
print(now + ': TotalCounter = ' + str(data["total"]))

Danke und Gruß

Tilman



Mehr Informationen über die Mailingliste volkszaehler-users