[vz-users] Auslesen eines ISKRA MT175
tuxlog
webmaster at tuxlog.de
Mi Mai 17 06:15:46 CEST 2023
Guten Morgen Tobias,
vielen Dank für Deine Antwort. Eigentlich würden mir die Daten im
vzlogger zunächst ausreichen. Dort kann ich sie mir dann abholen und in
eine DB schreiben. Auslesen würde ich gerne den saldierten Zählerstand
(abrechnungsrelevant) und die aktuelle Last in Watt.
Ich habe es so verstanden, wenn ich in der config keine channels anlege
und die verbosity auf 15 setzen, dann logged der vzlogger alles was er
als SML erkennt im log file. Aber er erkennt leider keine Daten und
somit bleibt es im logfile stumm und auf port 8081 würde ja nur etwas
angezeigt, wenn er SML erkennt und ein channel angelegt wurde.
Aktuell kommt dort: { "version": "0.8.1", "generator": "vzlogger",
"data": [ ], "exception": { "message": "channel index is disabled",
"code": 0 } }
Ich denke die Schwierigkeit ist eher, dass meine am Kopf ausgelesenen
Daten kein gültiges SML sind. Ich weiß aber nicht woran das liegen könnte.
Viele Grüße, tuxlog
Am 16.05.23 um 19:37 schrieb Tobias Baumann:
> hallo tuxlog
>
> kannst du bitte auch noch mitteilen was genau du haben möchtest ? ,
> nur VZlogger und nur die gerade ausgelesen daten ? oder die Komplette
> Datenbank mit Frontend und Darstellung
>
> Deine Config sagt nur das mini Frontend erstellt auf port 8081 , heißt
> nur der gerade aktuelle messwert wird angezeigt . die Log datei sieht
> korrekt aus zu deiner Config
>
>
> hast du denn deine daten auf port 8081 angeschaut ? sind diese vorhanden?
>
>
>
>
> Ich habe mir folgendes config-file zusammen gebaut (Parameter gemäß
> wiki Seite für den MT175):
>
> {
> "retry" : 3,
> "verbosity" : 15,
> "log" : "/var/log/vzlogger.log",
>
> "local" : {
> "enabled" : true,
> "port" : 8081,
> "index" : false,
> "timeout" : 30,
> "buffer" : 600
> },
>
> "meters" : [{
> "protocol" : "sml",
> "enabled" : true,
> "device" : "/dev/ttyUSB0",
> "parity" : "8N1",
> "baudrate" : 9600,
> "aggtime" : -1,
> "aggfixedinterval" : false,
> }]
> }
>
> Am 16.05.2023 um 19:28 schrieb Klaus Reichenecker:
>> Versuch es mal mit SMLReader
>>
>> https://github.com/mruettgers/SMLReader
>>
>> Hichi, Raspi usw, alles ok, Mega Aufwand, aber damit hast (
>> hofffentlich) die Daten erst mal zur Verfügung - kannst dann damit
>> per MQTT was auch immer anstellen
>>
>> TX brauchen übrigens aktuell die wenigsten Zähler
>>
>> Grüße
>>
>> Klaus
>>
>>
>>
>>
>>
>> -----Ursprüngliche Nachricht-----
>> Von: volkszaehler-users
>> <volkszaehler-users-bounces at demo.volkszaehler.org> Im Auftrag von tuxlog
>> Gesendet: Dienstag, 16. Mai 2023 19:11
>> An: volkszaehler-users at lists.volkszaehler.org
>> Betreff: [vz-users] Auslesen eines ISKRA MT175
>>
>> Hallo Miteinander,
>>
>> ich bekomme beim Versuch meinen Zähler auszulesen keine vernünftigen
>> Daten heraus und hoffe auf eure Hilfe.
>>
>> Zähler: ISKRA MT175-D1A51-V22-K0t (mit PIN frei geschaltet), Lesekopf:
>> Hichi USB an Raspberry Pi Model B Plus Rev 1.2 mit Raspbian Bullseye
>> (up-to-date).
>>
>> Echo-Test mit weißem Papier klappt ohne Probleme.
>>
>> Die Sendediode des MT175 sendet auch alle 1-3 Sekunden etwas (geprüft
>> mit Handy-Kamera).
>>
>> Installation des vzlogger hat auch geklappt.
>>
>> Ich habe mir folgendes config-file zusammen gebaut (Parameter gemäß
>> wiki Seite für den MT175):
>>
>> {
>> "retry" : 3,
>> "verbosity" : 15,
>> "log" : "/var/log/vzlogger.log",
>>
>> "local" : {
>> "enabled" : true,
>> "port" : 8081,
>> "index" : false,
>> "timeout" : 30,
>> "buffer" : 600
>> },
>>
>> "meters" : [{
>> "protocol" : "sml",
>> "enabled" : true,
>> "device" : "/dev/ttyUSB0",
>> "parity" : "8N1",
>> "baudrate" : 9600,
>> "aggtime" : -1,
>> "aggfixedinterval" : false,
>> }]
>> }
>>
>> Im Logfile sieht das dann so aus:
>>
>> [May 16 18:50:04][main] vzlogger v0.8.1 based on
>> tags/v0.8.1-0-g0671359029 from Sun, 23 Apr 2023 15:16:41 +0200 started.
>> [May 16 18:50:04][mtr0] Creating new meter with protocol sml.
>> [May 16 18:50:04][mtr0] Meter configured, enabled.
>> [May 16 18:50:04] New meter initialized (protocol=sml) [May 16
>> 18:50:04] Have 1 meters.
>> [May 16 18:50:04][main] log level is 15
>> [May 16 18:50:04][main] local=1
>> [May 16 18:50:04] Daemonize process...
>> [May 16 18:50:04] Opened logfile /var/log/vzlogger.log [May 16
>> 18:50:04][push] No pushDataServer defined.
>> [May 16 18:50:04][] ===> Start meters [May 16 18:50:04][mtr0]
>> Meter connection established [May 16 18:50:04][mtr0] Meter thread
>> started [May 16 18:50:04][mtr0] Meter is opened. Starting channels.
>> [May 16 18:50:04][http] Starting local interface HTTPd on port 8081
>> [May 16 18:50:04][] Startup done.
>> [May 16 18:50:04][mtr0] Number of readers: 32 [May 16 18:50:04][mtr0]
>> Config.local: 1
>>
>> Dann passiert nichts mehr.
>>
>> Also versuche ich erst mal direkt auf der Schnittstelle zu lesen und
>> zu schauen was da ankommt.
>>
>> Dazu verwende ich ein kleines Python-Programm:
>>
>> #!/usr/bin/python
>> import serial
>>
>> BAUDRATE = 9600
>>
>> print("opening port")
>> co = 0
>> out = ''
>> # Serial Port 9600 Baud, 8N1
>> port = serial.Serial(port='/dev/ttyUSB0', baudrate=BAUDRATE,
>> bytesize=serial.EIGHTBITS, parity=serial.PARITY_NONE,
>> stopbits=serial.STOPBITS_ONE, timeout=1) # Serial Port 9600 7E1 #port
>> = serial.Serial(port='/dev/ttyUSB0', baudrate=BAUDRATE,
>> bytesize=serial.SEVENBITS, parity=serial.PARITY_EVEN,
>> stopbits=serial.STOPBITS_ONE, timeout=1)
>>
>> while True:
>> input = port.read()
>> out = out + " " + input.hex()
>> co += 1
>>
>> if (co > 25):
>> print(out)
>> co = 0
>> out = ''
>>
>> Es gibt keinen wesentlichen Unterschied bei der Ausgabe, egal ob ich mit
>> 7E1 oder 8N1 lese.
>>
>> 1b 12 12 12 00 00 00 00 64 00 00 18 80 00 40 00 40 00 60 42 00 00 64
>> 00 00 00
>> 02 00 18 24 02 00 00 00 02 02 00 00 4e e0 00 00 00 42 90 20 00 64 00
>> 00 18 80
>> 00 40 00 40 00 60 42 06 00 66 00 02 00 00 00 02 02 00 00 4e e0 00 06
>> 00 00 40
>> 00 fe fe 60 40 00 40 00 20 42 80 70 66 06 00 00 86 00 02 fe 00 00 00
>> 00 00 00
>> 02 02 00 66 06 00 00 00 00 00 fe 00 00 00 00 02 00 00 00 02 02 00
>> 00 4e e0 00
>> 00 66 06 00 00 00 00 00 fe 40 00 00 00 00 00 40 1c 00 fe 10 00 00 00
>> 00 06 38
>> 38 10 00 66 06 00 00 00 00 00 fe 00 00 40 1c 00 fe 10 00 00 00 00 06
>> 38 38 10
>> 00 66 06 00 00 00 00 00 fe 00 00 40 1c 00 fe 10 00 00 00 00 00 00 00
>> 00 00 66
>> 06 00 00 00 06 00 fe 00 00 40 12 00 00 00 00 00 00 00 00 66 06 00 00
>> 00 06 00
>> fe 00 00 40 12 00 00 00 00 00 00 00 00 66 06 00 00 30 06 00 fe 00 00
>> 40 12 00
>> 00 00 00 00 00 00 00 66 06 00 00 08 06 00 fe 00 00 40 12 00 00 00 00
>> 00 00 c8
>> 00 66 06 00 00 86 00 00 fe 00 00 00 00 02 00 c2 30 08 30 00 00 80 8e
>> 60 c2 c0
>> 0c 30 02 c8 08 42 08 0e 06 0c 42 c0 24 04 00 04 22 86 00 00 00 10 c0
>> 12 e6 02
>> 30 80 08 3e 00 72 00 40 02 00 66 00 00 00 42 c0 00 00 64 00 00 18 80
>> 00 40 00
>> 40 00 60 42 00 00 60 00 42 02 90 00 12 12 12 12 10 00 f2 fe 1b 12 12
>> 12 00 00
>> 00 00 64 00 00 18 80 02 40 00 40 00 60 42 00 00 64 00 00 00 02 00 18
>> 26 02 00
>> 00 00 02 02 00 00 4e e0 00 00 00 42 06 02 00 64 00 00 18 80 00 40 00
>> 40 00 60
>> 42 06 00 66 00 02 00 00 00 02 02 00 00 4e e0 00 06 00 00 40 00 fe fe
>> 60 40 00
>> 40 00 20 42 80 70 66 06 00 00 86 00 02 fe 00 00 00 00 00 00 02 02 00
>> 66 06 00
>> 00 00 00 00 fe 00 00 00 00 02 00 00 00 02 02 00 00 4e e0 00 00 66 06
>> 00 00 00
>> 00 00 fe 40 00 00 00 00 00 40 1c 00 fe 10 00 00 00 00 06 38 38 12 00
>> 66 06 00
>> 00 00 00 00 fe 00 00 40 1c 00 fe 10 00 00 00 00 06 38 38 12 00 66 06
>> 00 00 00
>> 00 00 fe 00 00 40 1c 00 fe 10 00 00 00 00 00 00 00 00 00 66 06 00 00
>> 00 06 00
>> fe 00 00 40 12 00 00 00 00 00 00 02 00 66 06 00 00 00 06 00 fe 00 00
>> 40 12 00
>> 00 00 00 00 00 00 00 66 06 00 00 30 06 00 fe 00 00 40 12 00 00 00 00
>> 00 00 02
>> 00 66 06 00 00 08 06 00 fe 00 00 40 12 00 00 00 00 00 00 cc 00 66 06
>> 00 00 86
>> 00 00 fe 00 00 00 00 02 00 c2 30 08 30 00 00 80 8e 60 c2 c0 0c 30 02
>> c8 08 42
>> 08 0e 06 0c 42 c0 24 04 00 04 22 86 00 00 00 10 c0 12 e6 02 30 80
>> 08 3e 00 72
>> 00 40 02 00 66 00 00 00 42 06 00 00 64 00 00 18 80 00 40 00 40 00 60
>> 42 00 00
>> 60 00 42 80 70 00 12 12 12 12 10 00 c0 20
>>
>> Okay, jetzt ist klar, wieso der vzlogger kein SML findet, der SML-Header
>> 1b1b1b1b01010101 kommt nicht vor. Allerdings so etwas Ähnliches (1b 12
>> 12 12 00 00 00 00). Dann habe ich einige Umpositionierungen des
>> Lesekopfs ausprobiert. Ich dachte, vielleicht sitzt der irgendwie
>> schief drauf, leider ohne Erfolg es kommen immer ähnliche Daten wie
>> oben.
>>
>> Fällt euch dazu etwas ein? Ich vermute irgendetwas an der seriellen
>> Kommunikation ist falsch eingestellt. Aber was?
>>
>> Vielen Dank, tuxlog
>>
>>
>>
>>
>
Mehr Informationen über die Mailingliste volkszaehler-users