[vz-dev] Fehlerhafte Datenerfassung über s0

Thorben Thuermer r00t at constancy.org
Mon Dec 22 15:20:22 CET 2014


On Wed, 17 Dec 2014 13:07:34 +0100
Johannes von Langen <johannes.vonlangen at dalason.de> wrote:
> ich beobachte folgendes Fehlverhalten bei der Datenerfassung meiner 
> Stromzähler am s0 Bus (auf einem RPi über die Erweiterung mit 
> Schaltausgängen von Udo):

achtung: eine s0-schnittstelle ist kein bus.
einer s0-schnittstelle hat mit dem s0-bus von isdn rein garnichts zu tun.
(ausser, dass beide elektrische signale ueber kabel uebertragen.)

> Solange nur geringe Lasten an den Drehstromzählern anliegen (ca. < 3kW), 
> funktioniert die Datenerfassung fehlerfrei, sobald jedoch höhere Lasten 
> anliegen (z.B. 21kW Durchlauferhitzer), ist die Datenerfassung gestört. 
> Sprich: es werden zu wenige Zählimpulse an die Datenbank übermittelt 
> (einzelne Spitzen (2 Werte pro Spitze) mit ca. der halben Leistung und 
> zwischen diesen jeweils ein Abfall auf die Grundlast).
> 
> Hat sonst schon mal jemand dieses Verhalten beobachtet?

verlorene impulse bei hoher last sind ein typisches problem bei
erfassung ueber s0,
die anforderungen an das system steigen halt mit der impulsrate
(insbesondere, wenn nicht sauber implementiert).

> Zu meinem Setup:
> RPi B mit Erweiterung mit Schaltausgängen von Udo und auch dem auf der 
> Seite verlinkten RPi Image (aktuelle Updates sind eingespielt).
> Volkszähler läuft auf einem Server, so daß der RPi die Daten direkt 
> übers Netz verschickt und nicht selber speichern muß.
> Ich habe beim RPi und auch beim Server auf der Netzwerkschnittstelle 
> gelauscht - die Daten kommen so an, wie abgeschickt (mit timestamp im 
> Post) sprich: es werden keine Daten im Netz verworfen/abgefangen..

alte versionen von s0vz hatten die einschraenkung,
dass wenn waehrend des sendens des middleware-requests neue impulse einlaufen,
diese nicht registriert werden.
das kann bei 21kw last und 800imp/kWh = 4,6imp/s leicht ein problem werden.

pruefe mal welche version du nutzt, und update ggfs. auf die neuste.
update ist vom juli 2014: https://github.com/w3llschmidt/s0vz/commits/master/s0vz.c

auch sendet s0vz immer fuer jeden impuls einen eigenen request an die
middleware, was bei derartigen raten nicht optimal ist.

> Dieses Volkszähler-Setup lief zuvor mit einem AVR-Net IO - dieser hat 
> mit den identischen Werten auf Seite der middlware die von den 
> Drehstromzählern gelieferten Impulse verarbeitet und weitergeleitet - 
> daß es an den Drehstromzählern (2 Stück mit je 800imp/kw) liegt, ist 
> somit unwahrscheinlich - das Verhalten betrifft beide.
> 
> vmstat, dmesg und auch die Logs ergeben für mich bisher leider keine 
> Erklärung dafür.
> 
> Für mich sieht es so aus, als wenn der s0 Bus bei Last Daten verwirft.

- es ist kein bus
- die impulse gehen verloren, wenn die erfassung zu langsam fuer die impulsrate ist, s.o.

> Bin für jeglichen Tip dankbar.
> 
> Beste Grüße,
> Johannes

- Thorben


More information about the volkszaehler-dev mailing list