|
Linux-Projekte
für den Raspberry Pi,
die mit Python realisiert
wurden
RWE
Storage flex [rein LOKALER Datenzugang]
|
Seit
einigen Monaten nun ist bei mir eine PV (Solar)-Anlage mit
Akkuspeicher installiert. Bei dem Speicher handelt es sich um den
Typ 'RWE Storage flex'. Darin sind enthalten 2 Akkumodule a 1,25
kWh. Somit stehen mir für die Nachtstunden 2,5 kWh an
(nutzbarer) Energie zur Verfügung. Das ist allemal ausreichend.
Natürlich nur unter der Voraussetzung, daß die Akkus tagsüber
einigermaßen voll aufgeladen werden.
Der Akkuspeicher steht
im Keller unter der Treppe und sieht etwa so aus wie
Nachtspeicherheizungen früher mal. Hat natürlich ein farbiges
LCD-Display mit Touch-Funktion. Allerdings sieht man hier
standardmäßig nur ein groooßes Batteriesymbol, in dem grafisch
der Ladezustand dargestellt wird, daneben noch ein Pfeil (rauf
oder runter), mit der Angabe, wieviel Kilowatt geladen oder
entladen werden. Das ist alles.
Über das Display kann man
sich zwar als User einloggen, aber dann sieht man auch nicht eben
viele sinnvolle Daten. Um nur den Ladezustand oder die
Lade/Entladewerte sehen zu können, mußte ich also jedesmal in
den Keller laufen. Das hieß zu Anfang (Kommentar aus dem Umfeld:
Da hast du ja wieder ein schönes neues Spielzeug, aber ein
bisschen teuer.) so 20-30 mal am Tag Treppab/ Treppauf. Hält
zwar fit, nervt aber irgendwann mal sehr. Vor allem, wenn man
immer in den 1. Stock muß!
Also habe ich mal den
DSL-Stecker bei meinem Router gezogen, den Akku-Speicher ans LAN
angesteckt und dessen IP-Adresse (wurde per DHCD automatisch
vergeben) herausgefiltert. In einem Browser habe ich dann die
Adresse eingegeben und, tadaaaaaahhh,
das Ding hatte einen WEB-Server. Passwort war keines vergeben
(notwendig). Als allererstes kam die Meldung (natürlich in
englisch), daß mein WLAN nicht funktioniert und ich es
überprüfen soll.
Die Meldung habe ich ignoriert und mich
mal durch die Seiten (Tabs) geklickt. Da konnte ich tatsächlich
meine Akkus finden. Mit Unterteilung in „BHKW
(BlockHeizKraftWerk!), Eigenverbrauchsrelais, Wärmepumpe (hatte
ich alles nicht), Photovoltaik, Sonnenbatterie und
Gesamtverbrauch“. DAS waren die Werte, die ich haben
wollte.
Die Seite wurde alle paar Sekunden aktualisiert. Das
hieß aber auch für mich, die Werte könnten ALLE im
AKKUSPEICHER archiviert werden???
Bei dem Speicher war
auch ein Bedienungshandbuch, in dem erklärt wird, daß man sich
auf einem Internetportal anmelden und dann auf die Werte grafisch
zugreifen kann. Dazu sollte aber erst einmal der Internet-Zugang
im Akku-Speicher freigeschaltet werden (das kam nicht in die
Tüte). Es gab in der Bedienungsanleitung viele, schöne Bilder
und Grafiken. ABER: 1. wie bekomme ich einen Internetanschluß in
den Keller (jaaaaa, läßt sich per WLAN realisieren) und 2. und
das war mir das Wichtige: Warum muß ich die Daten erst auf ein
Portal im Internet hochladen, damit ich sie mir dann wieder von
dort herunterladen muß????? Grafisch aufbereitet, schön
anzusehen, ja. Das hieße aber auch, alle vorhandenen Akku-Daten,
mit fast minütlicher Aufzeichnung von Ladezustand, Ladung/
Entladung, ja sogar der aktuelle Verbrauch im Haus je Phase, mit
Maximumwert werden auf einen Server transferiert.
Daraus
kann man hervorragend Nutzerprofile erstelle. Z.B. Wann stehe ich
auf, bzw. wann gehe ich zu Bett, wann wird gekocht ,....... Ja
man kann sogar daraus erkennen, wann jemand im Hause ist oder
nicht, wann ich in Urlaub bin, und, und, und......
UNBEZAHLBAR!
Wollte dann mal herausfinden, WOHIN die
Daten gesendet werden. Bei Anmelden wird ein 'MiOS'-account
benötigt (die Zugangsdaten dazu hatte ich von RWE in einem
Verschlossenen Briefumschlag erhalten, aber NIE aktiviert!). Um
der Sache genauer auf den Grund zu gehen, habe ich ein
Hilfsprogramm
verwendet (ist sogar im Raspian Softwarepool vorhanden) , das den
Ethernetport meines Rechners logt (aufzeichnet). Nach einigem
Suchen kamen gleich mehrere Serveradressen zutage. Alle bei
mios.com'. Bin dann Spaßeshalber mal an einem anderen Tag, OHNE
LAN beim Akku ,aber mit gestecktem DSL auf diese Seite gegangen
und habe mir die 'therms and conditions' komplett durchgelesen
(in englisch natürlich!). Hauptsitz ist Hongkong (Kotz. Von
Datenschutz halten die Chinesen noch weniger als die Amerikaner)
Und
wie erwartet:
Alle Daten, die auf den Server geladen werden,
können vom Betreiber (Genehmigung durch den Anwender ist nicht
notwendig) benutzt, veröffentlicht und sogar verändert werden.
Der Betreiber ist für NICHTS haftbar zu machen, weder für
Viren, noch für durch den Server verursachte Schäden oder
Ausfälle, noch für sonst irgendwas. Allerdings: Der User hat
für alles seinen Kopf hinzuhalten und kann für alles zur
Verantwortung gezogen werden. Der Nutzer hat sich an alle
Bedingungen in dieser Veröffentlichung zu halten, auch nachdem
diese ihre Gültigkeit verloren haben. Die Bedingungen können
jederzeit - sofort gültig nach Veröffentlichung auf dieser
Seite - geändert werden, ohne Vorabinformation oder
nachträgliche Info an den Benutzer. Hatte mir fast schon sowas
gedacht (kennt man ja von den sozialen Medien!). Muß
ich aber nicht haben.
Mios
ist aber wohl nur der Betreiber der Seite und evtl. der Server
(auf der Startseite ist nicht mal ein Impressum zu finden). Dann
wird es etwas unübersichtlich. Auf der Mios Seite ist die Firma
'micasaverde' gennannt. Über mivcasaverde.com kommt man dann zu
'getvera.com' und diese Seite gehört Vera Control LTD.'. die
haben anscheinend das Kontrollprogramm entwickelt. Und wo sind
die mit Hauptsitz wohl zu finden? Richtig, wenn die Antwort
Hongkong war! Hab dann nicht weiter nachgeforscht. Das war mir
dann alles eh schon viel zu viel.
Meine hochsensiblen
Benutzerdaten werde ich doch dort nicht hinschicken. Das ist mit
dem Deutschen Datenschutz ja sowas von vereinbar!!!
Stellt
sich also die Frage, wie komme ich an die Daten, die im Browser
ja verfügbar sind heran.
Jetzt
kam
wieder das LAN-Hilfsmittel zum Einsatz. Also DSL wieder
abgesteckt und nochmal das WEB-UI des Akkus 'angeworfen'. Siehe
da, mit dem 'LeitungsHai' lassen sich alle notwendigen
Informationen herausfinden. Zur lokalen Darstellung der Werte
verwendet der WEB-Server des Akkus einen speziellen Port seiner
IP-Adresse. Dorthin werden vom Browser HTTP GET Header gesendet,
die vom WEB-Server (AKKU) auch beantwortet werden.
Das
kannte ich doch schon?!!!! Jau! Hatte zum Übertragen von Druck-
und Zählerdaten sowas selbst schon entworfen. Das kam mir nun
zugute.
Also
mal wieder 'die Würgeschlange' (python) in die Hand genommen und
ein Programm 'gestrickt': ging auch wieder mit 'urllib'. Die
genauen Headerinformationen konnte ich einfach aus dem
'LeitungsHai' kopieren. Und siehe da, nach ein paar kleineren
Schwierigkeiten, hatte ich nicht nur alle meine gewünschten
Werte, sondern
sogar viiiieeeel
mehr.
Es
kamen mehrere Verbrauchs/ Leistungs-Archive zum Vorschein:
tägliche, wöchentliche und monatliche. Jeweils mit vielen
hundert
Einträgen!!!! Würde den
Datenschutzbeauftragten
vielleicht
interessieren.
Aber egal. Ich konnte nun, ohne Internet, auf
meine eigenen Daten zugreifen. Das war mir wichtig!
Stellt
sich dem einen oder anderen noch die Frage:
Wie kann
ich den Speicher am LAN betreiben, und trotzdem im gleiche Netz
auf das Internet zugreifen, ohne daß ungewollt Daten verschickt
werden?
Antwort:
Im
meinem Router (Fr... ank¿Schachtel. Oder so ähnlich) kann ich
Zugangsbedingungen für das Internet setzen (heißt dort
'Kindersicherung'). Dort habe ich einfach der IP des
Akku-Speichers KEINE Internetzugang gewährt! Und den WEB-Server
des Akkus verwende ich nicht mehr. Also fällt auch der Umweg
über meinen Browser weg!
Wen
es interessiert: _____HIER____
ist ein Beispiel der Daten, die ich lokal aus dem Speicher
Abrufen kann. Die sensiblen Daten habe ich selbstverständlich
unkenntlich gemacht und die umfangreichen Listen die existieren,
werden erst garnicht angezeigt (daily/ weekly/ monthly) sondern
nur die Pointer dazu.
Antworten:
ja,
der Akku war leer und
ja, die Solarmodule haben (sich) zu
dem Zeitpunkt nicht viel geleistet.
Und
noch zwei Hinweise.
Die
Zeitangaben in der Datei (Unix Zeitstempel) wurden von mir per
Programm teilweise in ein 'echtes' Datum umgewandelt.
Aus
dem 'Basis-dictionary:
ZwaveStatus
TimeStamp
LoadTime
UserData_DataVersion
DataVersion
startup
devices
LocalTime
wurde
nur der Eintrag 'devices' aufgelöst