[vz-users] Verstaendniss-Frrage middleware DB-Eintrag / Frontend

Rainer Gauweiler volkszaehler at moppl.inka.de
Sat Jan 19 21:01:52 CET 2013


Hallo Jakob,

Am 19.01.2013 13:10, schrieb Jakob Hirsch:
>> Bei denen stellt sich nur noch die Frage, auf welche Zeiträume ich 1Wh
>> verteile.
>
> Wie gehabt - auf den Zeitraum zwischen den zwei Änderungen des
> Zählerstands.

Ja, das ist Deine Meinung. Und die ist für Deinen Zähler auch im ersten 
Ansatz richtig.

Du übersiehst jedoch, dass

>> Dazu kommt, dass sie nicht in festen Intervallen die Werte von
>> sich geben sondern diese variieren.
>
> Warum sollte das eine Rolle spielen?

Ganz einfach: Der Zähler kann mir somit sagen, wie lang der relevante 
Zeitraum ist.

Beispiel:
Es fließt 1W. Mein Zähler misst die Leistung und gibt den aktuellen 
Stand aus.
Nach einer Stunde ist die Wh voll. Der Zähler gibt den jetzt geänderten 
Stand aus. -> 1Wh nach einer Stunde -> 1W während der Stunde.

Jetzt fließen aber 2W. Der Zähler gibt wieder den aktuellen Stand aus - 
und den nächsten Zählerstand nach 30m.
-> 1 Wh nach einer halben Stunde -> 2 W Leistung.

Das ist ein fundamentaler Unterschied zu Deinem Szenario. Bei Dir meldet 
sich nicht der Zähler, sondern Du musst ihn permanent pollen. Damit geht 
Dir die exakte Zeit, wann Deine kWh voll ist verloren.
Du musst daher raten, wann genau Deine kWh geflossen ist.
Du hast damit automatisch einen gewissen Fehler drin. Dieser Fehler ist 
umso größer, je gröber die Auflösung des Zählers ist.
Daher ist die Auflösung auch mit entscheidend.

>> Nach meinen Messungen berechnet man die Leistung in dem man die
>> Differenz der beiden Stände nimmt und durch die Zeit zwischen den
>> beiden Ständen teilt.
>
> Äh, ja, klar, das lernt man im ersten Physik-Schuljahr:

Klar, ich wollte Dich nicht belehren wie man aus Energie Leistung 
berechnet. Ich habe oben ein wichtiges Wort vergessen: "darauffolgend".

>> Wenn entsprechende Leistung fließt, kommen durchaus mehrere Stände pro
>> Sekunde. Fließt nichts, wird regelmäßig der gleiche Zählerstand gemeldet.
>
> Letzteres stimmt nicht ganz. Wenn sich Zählerstand nicht geändert hat,
> heißt das nur, daß der Energieumsatz geringer war als der Quotient
> Auflösungsvermögen durch Zeitinterval.

Das ist der Unterschied zwischen meinem und Deinem Zähler. Meiner 
beachtet die Zeit. Er hat keinen Grund, zweimal den gleichen Zählerstand 
zu melden. Wenn er das tut, so sagt er damit: "Kein Verbrauch während 
der letzten Anzeige".

Ich habe dieses Verhalten ursprünglich auch nicht erwartet. Nach etwas 
Nachdenken fand ich es dann jedoch logisch.
Ich habe dieses Verhalten an einem easymeter Q3DA beobachtet. Dieser hat 
den Vorteil, dass er auch gleichzeitig die Leistung noch mit überträgt.

Ich habe im ersten Entwurf meines php-Scriptes das den vlogger damals 
ersetzte die Differenz zwischen den Längen der Intervalle ignoriert. Ich 
ging damals davon aus, dass der Zähler immer im gleichen Abstand - 1s - 
sendet. Die Werte waren jedoch verschieden zur Leistung die mit 
übertragen wurde - teilweise extrem daneben. Erst als ich erkannte, dass 
ich die exakte Zeit zwischen den jeweiligen Übertragungen messen und 
verwenden musste stimmten die Werte.

Das gleiche Verfahren auf den eHz portiert zeigte dort plausible Werte. 
Dort kann ich jedoch nicht die Leistung vergleichen, sie wird vom Zähler 
nicht ausgegeben.

Ich habe eben nochmal ins Handbuch geschaut - dort ist leider nichts 
konkretes zu finden.
Hat jemand Zugriff auf die DIN-Normen EN 62056-21 und 62056-61?

Möglicherweise wird einem das Verhalten über Bit 1 von 1-0:96.5.5*255 
angezeigt - das werde ich bei Gelegenheit mal beobachten.

>
>> So wie es die middleware im Moment macht, bewertet sie den Zeitraum
>> falsch und macht daher Fehler, die bei meinen Zählern unnötig sind.
>
> Das hast du im letzten Posting schon behauptet, aber bis jetzt keine
> Belege dafür gebracht. Zeig doch einfach mal ein Beispiel mit zwei
> (unterschiedlichen!) Zählerständen und den dazugehörigen Zeitstempeln
> und was die Middleware da falsch "bewertet" haben soll.

Hatte ich doch bereits erläutert und einen Screenshot mitgeschickt. Die 
Linie wird zwischen den beiden Zeitpunkten gezogen, an dem sich der 
Zählerstand geändert hat. Nicht zwischen den Zeitpunkten der letzten und 
vorletzten Messung.
Somit erhalte ich Werte zu Zeitpunkten wo definitiv keine Leistung da war.

Du schriebst die Typen "lines" und "steps" wären relevant - wieso?

Ich habe inzwischen auf steps umgestellt. Das Bild jetzt findest Du im 
Anhang.
Du siehst eine Anzeige von 0.1W um 23:51:57 - das stimmt nicht mit der 
Realität überein.

Falls Du möchtest suche ich Dir auch gerne die Zahlen dazu raus, die 
sowohl in der DB stehen als auch die Middleware über die Api liefert.

Ich hoffe, die Unterschiede sind jetzt klar geworden.

Kurzfassung: Du hast eine grobe Auflösung und von Dir bestimmte 
Zeitintervalle. Der dabei entstehende Fehler ist so groß, dass Du ihn 
bestmöglich verteilen musst.

Bei mir ist die Auflösung viel feiner, die Zeitintervalle werden durch 
den Zähler bestimmt und haben eine Bedeutung. Die Zeitintervalle zu 
vermischen in dem man gleichbleibende Zählerstände ignoriert bringt 
dadurch einen zusätzlichen Fehler.

Gruss
      Rainer

-------------- next part --------------
A non-text attachment was scrubbed...
Name: Bildschirmfoto vom 2013-01-19 20:45:35.png
Type: image/png
Size: 24907 bytes
Desc: not available
URL: <http://volkszaehler.org/pipermail/volkszaehler-users/attachments/20130119/e1f28a2f/attachment-0001.png>


More information about the volkszaehler-users mailing list