[vz-users] Probleme mit der Baudraten-Umstellung eines D0-Drehstromzählers

Winfried Peters winfried.peters at gmail.com
Sun Jan 24 12:41:57 CET 2016


Danke.

Hier nochmal eine ähnliche Konfiguration mit etwas geringerem
baudrate_change_delay-Wert und angehängt als ZIP-Datei die zugehörige
d0-Dump-Datei mit vzlogger-Log zur besseren Analyse.

Mich wundert, dass diese Kombination überhaupt funktioniert, denn nach
meinem Verständnis ist "wait_sync": "end" für Zähler gedacht, die ohne
Aufforderung senden.

Mein Zähler gibt auf jede vzlogger-Eingabe erstmal wie ein Echo die gleiche
Sequenz zurück. Damit kann anscheinend vzlogger nicht richtig umgehen. Im
Log ist zu erkennen, dass am Telegrammanfang das Zählerecho als falscher
OBIS-Code identifiziert wird. Es folgen dann aber genügend erkannte
OBIS-Codes.

{
  "retry": 0,
  "daemon": true,
  "verbosity": 15,
  "log": "/var/log/vz207.txt",
  "local": {
     "enabled": true,
     "port": 8080,
     "index": true,
     "timeout": 0,
     "buffer": 600
  },
  // Meter configuration
  "meters": [
   {
      // D0 meter (Strom)
      "enabled": true,
      "allowskip": false,
      "aggtime": -1,
      "aggfixedinterval": false,
      "channels": [
       {
          "uuid": "180a",
          "identifier": "1.8.1",
          "api": "null",
          "aggmode": "none",
          "duplicates": 0
       }
      ],
      "protocol": "d0",
      "device": "/dev/ttyUSB0",
      "pullseq": "2F3F343230383138210D0A",
       "ackseq": "063034300D0A",
      "baudrate": 300,
      "baudrate_read": 4800,
      "parity": "7e1",
      "wait_sync": "end",
      "read_timeout": 10,
      "dump_file": "/var/log/d0-207.txt",
      "baudrate_change_delay": 440
    }
  ]
}

Viele Grüße
Winfried


Am 24. Januar 2016 um 06:47 schrieb Matthias Behr <mbehr at mcbehr.de>:

> Ich schaue mir das noch mal in Ruhe an, schaffe ich aber erst nächsten
> Sonntag.
>
> Am 22.01.2016 um 18:41 schrieb Winfried Peters <winfried.peters at gmail.com
> >:
>
> Hallo,
>
> es gelingt mir nicht meinen Drehstromzähler dauerhaft auf eine höhere
> Baudrate umzustellen.
>
> Es handelt sich um ein EMH-ITZ Gerät.Folgende Informationen habe ich auf
> Anfrage vom zuständigen Stromnetzbetreiber bekommen:
>
>    - Die Infrarotschnittstelle kommuniziert über das
>    Schnittstellenprotokoll IEC1107
>    - Die Schnittstelle muss über eine Initialisierungssequenz mit
>    Passwort aktiviert werden. Das Passwort ist die Eigentumsnummer
>    - Zu Anfang erwartet der Zähler Kommunikation mit 300 baud, 7
>    Datenbits, 1 Stopbit, Parität even.
>    - Jeder Befehl muss mit CR&LF abgeschlossen werden.
>    - Wenn die Kommunikation läuft, kann man auf höhere Datenraten
>    umstellen.
>    - Der Zähler antwortet sofort mit /AAAB\@nnnnnnnnnnnnnn
>       - wobei:AAA = „EMH“
>       - B gibt die maximale Baudrate an (4 = 4800 Bd)
>       - „\@“ bedeutet, dass der Zähler R5, W5 und R6-Befehle unterstützt
>       - nnnnnnnnnnnnnn bezeichnet die 14-stellige Geräte-ID.
>    - Wenn innerhalb von 1,5s keine weiteren Befehle gesendet werden, gibt
>    der Zähler die aktuellen Messwerte aus und meldet sich ab
>
> Mit den vzlogger-Parametern
>
>    - Initialisierung: "pullseq": "2F3F343230383138210D0A"
>    - Aufforderung Baudratenwechsel 4800 Bd: "ackseq": "063034300D0A"
>    - "baudrate": 300 und "baudrate_read": 4800
>
> sollte sich im Prinzip die Kommunikation einstellen lassen.
>
> Nach Permutation von verschiedenen Parametern konnte ich mit
> "baudrate_change_delay": 500 und "wait_sync": "end" das bisher beste
> Ergebnis erzielen: Das 1. Zählertelegramm wird in umgestellter Baudrate
> ausgegeben, die nachfolgenden Telegramme allerdings wieder nur in 300 Bd.
>
> Das sieht im d0-Dump (die komplette Datei d0-169.txt im Anhang) dann so
> aus:
>
> --------------------------------------- Anfang
> d0-dump-------------------------------
> ##### 50.158888503s (     0 ms) opened
> ##### 50.171490960s (    13 ms) read
> ##### 50.171546136s (     0 ms) TCIOFLUSH and cfsetiospeed
> <<<<< 50.671836289s (   500 ms)
> 2f 3f 34 32 30 38 31 38 21 0d 0a                  /?420818!
>
> >>>>> 50.705414525s (    34 ms)
> 2f 3f 34 32 30 38 31 38 21 0a 0a 2f 45 4d 48 34   /?420818!  /EMH4
> 5c 40 2d 2d 49 54 5a 2d 47 30 30 33 38 45 0a 0a   \@--ITZ-G0038E
>
> <<<<< 52.585570689s (  1880 ms)
> 06 30 34 30 0d 0a                                  040
>
> ##### 53.087406779s (   502 ms) usleep cfsetispeed
> >>>>> 53.087504791s (     0 ms)
> 06 30 34 30 0a 0a 02 46 2e 46 28 30 30 30 30 30    040   F.F(00000   1.
> Zählertelegramm
> 30 30 30 29 0a 0a 30 2e 30 2e 30 28 30 30 34 32   000)  0.0.0(0042
> 30 38 31 38 29 0a 0a 30 2e 30 2e 31 28 30 32 32   0818)  0.0.1(022
> 35 36 32 33 30 29 0a 0a 30 2e 31 2e 30 28 36 35   56230)  0.1.0(65
> ....
> ....
> 2a 56 29 0a 0a 35 32 2e 32 35 28 32 33 31 2e 30   *V)  52.25(231.0
> 2a 56 29 0a 0a 37 32 2e 32 35 28 32 33 30 2e 33   *V)  72.25(230.3
> 2a 56 29 0a 0a 21                                 *V)  !
>
> ##### 59.602715084s (  6515 ms) read
> ##### 59.602767305s (     0 ms) TCIOFLUSH and cfsetiospeed
> <<<<< 60.103714342s (   501 ms)
> 2f 3f 34 32 30 38 31 38 21 0d 0a                  /?420818!
>
> >>>>> 60.134602742s (    31 ms)
> 2f 3f 34 32 30 38 31 38 21                        /?420818!
>
> ##### 60.403894575s (   269 ms) read
> ##### 60.403946531s (     0 ms) TCIOFLUSH and cfsetiospeed
> <<<<< 60.904221804s (   501 ms)
> 2f 3f 34 32 30 38 31 38 21 0d 0a                  /?420818!
> >>>>> 60.904947849s (     0 ms)
> 0a 0a 2f 3f 34 32 30 38 31 28 21                    /?42081(!
>
> ##### 61.205930809s (   301 ms) read
> ##### 61.205983535s (     0 ms) TCIOFLUSH and cfsetiospeed
> <<<<< 61.706251638s (   501 ms)
> 2f 3f 34 32 30 38 31 38 21 0d 0a                  /?420818!
>
> >>>>> 61.706938172s (     0 ms)
> 00 02 63 05 2d 2d 49 54 5a 2d 47 30 30 33 38 05     c --ITZ-G0038   2.
> Zählertelegramm
> 05 02 36 42 0b 43 0b 6a 0a 02 46 2e 46 28 30 30     6B C j  F.F(00
> 30 30 30 30 30 30 29 0a 0a 30 2e 30 2e 30 28 30   000000)  0.0.0(0
> ....
> ....
> 30 2e 37 2a 56 29 0a 0a 37 32 2e 32 35 28 32 32   0.7*V)  72.25(22
> 39 2e 39 2a 56 29 0a 0a 21                        9.9*V)  !
>
> ##### 52.591701715s ( 90885 ms) read
> ##### 52.591754756s (     0 ms) TCIOFLUSH and cfsetiospeed
> <<<<< 53.092015394s (   501 ms)
> 2f 3f 34 32 30 38 31 38 21 0d 0a                  /?420818!
>
> >>>>> 53.092768889s (     0 ms)
> 0a 0a 03 6e 2f 3f 34 32 30 38 31 38 21               n/?420818!
>
> ##### 53.391805484s (   299 ms) read
> ##### 53.391857725s (     0 ms) TCIOFLUSH and cfsetiospeed
> <<<<< 53.892111733s (   501 ms)
> 2f 3f 34 32 30 38 31 38 21 0d 0a                  /?420818!
>
> >>>>> 53.892736371s (     0 ms)
> 0a 0a 2f 3f 34 32 30 38 31 20 21                    /?42081 !
>
> ##### 54.194921780s (   302 ms) read
> ##### 54.194977016s (     0 ms) TCIOFLUSH and cfsetiospeed
> <<<<< 54.695234624s (   501 ms)
> 2f 3f 34 32 30 38 31 38 21 0d 0a                  /?420818!
>
> >>>>> 54.695868362s (     0 ms)
> 01 00 63 05 2d 2d 49 54 5a 2d 47 30 30 33 38 41     c --ITZ-G0038A
> 0a 02 36 42 0b 43 0b 6a 0a 02 46 2e 46 28 30 30     6B C j  F.F(00
> --------------------------------------- Ende
> d0-dump-------------------------------
>
> Hier die vollständige vzlogger.conf:
> {
>   "retry": 0,
>   "daemon": true,
>   "verbosity": 15,
>   "log": "/var/log/vztest.log",
>   "local": {
>      "enabled": true,
>      "port": 8080,
>      "index": true,
>      "timeout": 0,
>      "buffer": 600
>   },
>   // Meter configuration
>   "meters": [
>    {
>       // D0 meter (Strom)
>       "enabled": true,
>       "allowskip": false,
>       "aggtime": -1,
>       "aggfixedinterval": false,
>       "channels": [
>        {
>           "uuid": "180a",
>           "identifier": "1.8.1",
>           "api": "null",
>           "aggmode": "none",
>           "duplicates": 0
>        }
>       ],
>       "protocol": "d0",
>       "device": "/dev/ttyUSB0",
>       "pullseq": "2F3F343230383138210D0A",
>        "ackseq": "063034300D0A",
>       "baudrate": 300,
>       "baudrate_read": 4800,
>       "parity": "7e1",
>       "wait_sync": "end",
>       "read_timeout": 100,
>       "dump_file": "/var/log/d0-169.txt",
>       "baudrate_change_delay": 500
>     }
>   ]
> }
>
> Das Timing in der Kommunikation stimmt noch nicht. Ich hoffe mir kann
> jemand weiterhelfen.
>
> Viele Grüße
> Winfried
> <d0-169.txt>
>
>
> Gruß
>
> Matthias
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160124/f4e4f186/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: log207.zip
Type: application/zip
Size: 53105 bytes
Desc: not available
URL: <http://demo.volkszaehler.org/pipermail/volkszaehler-users/attachments/20160124/f4e4f186/attachment-0001.zip>


More information about the volkszaehler-users mailing list