[vz-dev] Siemens TD3511 mit Protokoll D0

thomas.schenkel at freenet.de thomas.schenkel at freenet.de
Sat Dec 14 19:14:00 CET 2013


Hallo Sebastian,

Super Arbeit von Dir. 
Wie schon geschrieben, herzlichen Dank gerade auch persönlich von mir.
Wenn Ihr die Zählerlogs veröffentlichen wollt, dann nehmt aber bitte die Zählernummern raus (1-0:0.0.0*255).
Muss ja nicht sein ;-)

Ansonsten, wie ist eigentlich der Weg? Wie findet das in den Hauptsource?

VG
Thomas





> -----Ursprüngliche Nachricht-----
> Von: Sebastian Michel 
> Gesendet: Sa. 14.12.2013 18:40
> An: volkszaehler.org , 
> Betreff: Re: [vz-dev] Siemens TD3511 mit Protokoll D0
>
> Hallo zusammen,
>
> also es funktioniert nun sowohl mit dem ISKRAemeco MT174 als auch dem
>
> Siemens TD3511. Anbei findet ihr den Patch. Ich hab versucht sowenig 
> Änderungen zu machen wie es geht. Hier nochmal die
> Zusammenfassungen:
>
> 1) Das Device wird im blocking mode geöffnet. Das führte
> bei mir dazu, 
> dass die read() Funktion mit 0 zurückkehrt. Das heißt
> normalerweise ein 
> eof oder derartiges. Sowas sollte bei einem seriellen Device niemals 
> passieren. Ich weiß auch nicht warum das der Fall ist.
>
> -> Ich hab den Code dahingehend geändert, dass das Device im 
> non-blocking mode geöffnet wird. Damit funktioniert's nun.
>
> 2) Die Statemachine sollte niemals unendlich warten und irgendwo
> hängen 
> bleiben.
>
> -> Ich hab ein Timeout von 10s eingebaut. Also wenn innerhalb 10s
> keine 
> Daten empfangen werden bzw. beim Start kein Sync-byte kommt, wird
> dieser 
> Lesevorgang abgebrochen.
>
> 3) Die Statemaching wird immer beim Empfang eines '/'
> zurückgesetzt. Da 
> mein Zähler ein '/' im Identification String sendet, hängt
> sich die 
> Statemachine auf.
>
> -> Das habe ich rausgenommen.
>
> 4) Mein Zähler sendet ca. 330 obis-codes. Da ist dann sowas
> dabei wie 
> 2.8.1*16, 2.8.1*15 usw. Ich interessiere mich eigentlich nur für
> die 
> Einträge von 2.8.0. Das ist insofern ein Problem, dass der
> D0-Meter nur 
> maximal 32 Einträge zulässt. Das heißt bis die
> interessanten codes 
> ankommen, sind die 32 Einträge schon längst belegt.
>
> -> Ich filtere jetzt nur noch obis-codes heraus die ein value und
> eine 
> Einheit besitzen. Damit kommen bei meinem Zähler genau 32
> zusammen.
>
> 5) Der Zähler sendet ungültige Obis-Codes. Zumindest ist
> der string für 
> die Klasse Obis.cpp nicht auswertbar. Das führt dazu, dass
> vzlogger 
> abstürzt. Vermutlich sind es die obis-codes die unter anderem
> Buchstaben 
> statt Zahlen haben.
>
> -> Ich hab die Stellen mit einem try-except Block abgefangen und 
> überspringe die betroffenen obis-codes.
>
> 6) Fehler beim Setzen der Parity
>
> -> Das hab ich korrigiert.
>
>
>
> Weiterhin habe ich mal die Ausgaben der beiden Zähler
> angehangen, mit 
> denen das getestet wurde.
>
> Gruß
> Sebastian>
>
> -----Ursprüngliche Nachricht Ende-----




---
Alle Postfächer an einem Ort. Jetzt wechseln und E-Mail-Adresse mitnehmen! http://email.freenet.de/basic/Informationen


More information about the volkszaehler-dev mailing list