Linux-Projekte für den Raspberry Pi
(in Python)
Zählerdaten (EDL21/SML) auswerten und am LCD-Display darstellen





Nun müssen die Daten noch in den 'Anfrage'-Rechner kommen. Dafür wurde ebenfalls ein kleiner, einfacher Socket-Client erstellt. Dieser wurde in das Hauptprogramm des 'Anfrage'-Rechners integriert, muß aber ebenfalls über eine Config-Datei parametriert werden.

Folgende Parameter werden beim Programmstart eingelesen:

1. Port (muß mit der Portnummer übereinstimmen, die am 'Zähler'-Rechner vorgegeben wurde)

2. Rechner-Name oder IP-Adresse, an den die Anfrage gesendet werden soll.

3. Pfad in dem die empfangene Datei abgelegt werden soll.

4. Prefix, das dem Übertragungsbefehl vorausgehen soll (muß mit dem Prefix des 'Zähler'-Rechner übereinstimmen. Z.B : 'EDL_')


Das Anzeige-Programm fragt auf Knopfdruck die gewünschte Datei auf dem 'Zähler'-Rechner an. Wird diese dort gefunden und dann übertragen, wird die Datei lokal gespeichert und weiterverarbeitet. Dabei werden die Daten der Einzelzeilen separiert und nur die Werte der aktuellen Wirkleistung, mit dem Aufzeichnungs-Datum weiterverarbeitet. Das Endergebnis wird auf einem monochromen
LC-Display (EADOGxl240-7) mit einer Auflösung von 240*128 Pixeln als grafische Linie über den (bisherigen) Tagesverlauf dargestellt.


Nur die Werte der aktuellen Leistung werden als (maximum/ minimum) Linie dargestellt.

Die Summen von Bezug / Lieferung und die aktuelle Leistung werden als Textwerte angezeigt.

Negative Werte (untere Skalenhälfte) bedeuten: Strom wird ans EVU geliefert.

Positive Werte (obere Skalenhälfte) bedeuten, Strom wird vom EVU bezogen.

Ein langer, horizontaler Skalenstrich steht hier für je 1 kW/h, ein kurzer für 500 W/h


Die senkrechten Skalenstriche markieren jeweils 3 Stunden von 0 Uhr an.

Die grafische Aufbereitung ist noch nicht ganz fertig. Darum fehlen noch die Skalenbeschriftungen. Das Diagramm selbst muß auch noch in der Größe angepaßt werden, damit die Skalenbeschriftung selbst noch dargestellt werden kann. Es bleibt also noch genug zu tun.