[vz-users] mbrtu - update: bug fixes for unsigned ints and support for [u]int(32|64) added
Frank Richter
frank.richter83 at gmail.com
Wed Dec 28 00:31:40 CET 2016
Hallo Lars,
ich habe eben einen Test mit uint32 gemacht. Leider wirkt sich der andere
Typ nicht auf die Ausgabe aus, es werden immer noch 2 mit Doppelpunkt
getrennte 16-Bit-Integer ausgegeben:
pi at raspberrypi:~ $ mbrtu -D -d/dev/ttyUSB0 -b9600 -pE -O1000 -a57 -f3 -tint
-n2 -r0x4000
Timeout set to 1s and 0ms.
ADDR=57 FUNC=3 REG=16384 CNT=2
Opening /dev/ttyUSB0 at 9600 bauds (E, 8, 1)
[39][03][40][00][00][02][D5][73]
Waiting for a confirmation...
<39><03><04><00><00><0D><A4><46><DB>
ADDR=57 REG=16384 DATA=0:3492
pi at raspberrypi:~ $ mbrtu -D -d/dev/ttyUSB0 -b9600 -pE -O1000 -a57 -f3
-tuint32 -n2 -r0x4000
Timeout set to 1s and 0ms.
ADDR=57 FUNC=3 REG=16384 CNT=2
Opening /dev/ttyUSB0 at 9600 bauds (E, 8, 1)
[39][03][40][00][00][02][D5][73]
Waiting for a confirmation...
<39><03><04><00><00><0D><A4><46><DB>
ADDR=57 REG=16384 DATA=0:3492
Für einen Wert der zu groß ist für uint16 musste ich etwas suchen, dann
habe ich die interne Uhr des Zählers gefunden:
pi at raspberrypi:~ $ mbrtu -D -d/dev/ttyUSB0 -b9600 -pE -O1000 -a57 -f3
-tuint32 -n2 -r0x0400
Timeout set to 1s and 0ms.
ADDR=57 FUNC=3 REG=1024 CNT=2
Opening /dev/ttyUSB0 at 9600 bauds (E, 8, 1)
[39][03][04][00][00][02][C1][83]
Waiting for a confirmation...
<39><03><04><00><16><48><1C><95><FD>
ADDR=57 REG=1024 DATA=22:18460
Zum Vergleich die Ausgabe eines Python-Skripts (MinimalModbus):
pi at raspberrypi:~ $ cat dvh4013.py
#!/usr/bin/env python
import minimalmodbus
minimalmodbus.TIMEOUT = 1
dvh4013 = minimalmodbus.Instrument('/dev/ttyUSB0', 57, mode='rtu')
dvh4013.serial.baudrate = 9600
dvh4013.serial.parity = minimalmodbus.serial.PARITY_EVEN
print dvh4013.read_long(0x0400)
pi at raspberrypi:~ $ ./dvh4013.py
1460270
Die Ausgabe von mbrtu kann man händisch in einen 32-Bit-Int umrechnen: 22 *
2^16 + 18460 = 1460252
Die kleine Abweichung liegt nur daran, dass ich das Python-Skript ein paar
Sekunden später aufgerufen habe und die Uhr inzwischen weiter gelaufen ist.
Gruß
Frank
Am 27. Dezember 2016 um 22:18 schrieb Lars Täuber <lars.taeuber at web.de>:
> Hallo zusammen,
>
> die Quellen bei github enthalten nun einige Bugfixes und unterstützen auch
> [u]int(32|64) Werte.
> Bitte auch das mal testen.
>
> Wenn ich keine Beschwerden höre, gebe ich dieser Version die Nummer 0.3.3.
>
> Dank und Grüße
> Lars
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20161228/cffcac89/attachment.html>
More information about the volkszaehler-users
mailing list