Am 28.03.2012 08:40, schrieb Tom Weber:
Hallo Justin,

doch, ich habe tatsächlich den Q3D Datenstrom mal direkt im AVR verarbeitet
(und von dort aus in meinen Hausbus LCN gesendet)
Allerdings ist das ein Heidenaufwand und wurde mir für jeden Meter zu viel
Aufwand (zudem ich auch je ein Busmodul zum Einspeisen von 2 Werten
benötigte)

Jedoch ist das Programm in Bascom, das Einlesen über software-rs232 (mit
Inverter). Auch dort hatte ich Fehldaten (die ich leicht filtern konnte,
wenn die Länge nicht stimmt), habe es aber immer auf die software-rs232
geschoben - nun bin ich unsicher. Aber der nächste Versuch direkt am
Easymeter kommt ja heute, also: Positiv denken.

Zum Datenproblem:
Das Problem ist wie du selber schreibst in meinen Augen die Menge. Der Q3D
spuckt jede Sekunde einen Datensatz, so überm Daumen 150B/s da komme ich RAW
auf ca. 4-5 GB/Jahr. Gespeichert werden allerdings nur 5 Floats, da kommt
deine Rechnung mit 1GB/Jahr in MySQL wohl hin.  Ob das der Sheeva / dem
MySQL noch schmeckt?

Ich bin in bin/sh Skripts nicht sonderlich fit - aber das Lesen Zwischen
Start- und Stoppzeichen war in Bascom ziemlich einfach. Vielleicht kennt da
jemand ein Tool mit dem man Satzweise auf einen TCP-Port zugreifen kann und
alle Daten zwischen "/EASY" und "!" einem Skipt zukommen lässt?

So ein Problem würde ich mit einem (Perl-) Skript auf dem Unix-Host mit der VZ-Software lösen. Kurzes (noch nicht ausgeknautschtes) Konzept:

- Daemon lauscht auf einem dezidierten Port und wartet auf sekündliche Telegramme
- jedes 60. Telegramm wird ausgewertet und Stand an Middleware übergeben.

ggf. kann man die ganze Behandlung des Zählers da gleich mitmachen und Ethersex reicht nur die ser. Schnittstelle per TCP weiter. Auf die Weise hat man doch etwas mehr Eingriffsmöglichkeiten bei der Verarbeitung als auf dem AVR, insbesondere kann man sowas natürlich gleich für N Zähler auslegen.

Martin

<<attachment: martin.vcf>>

Antwort per Email an