< Startseite >

Mit einem Zuhause eingerichteten Balkon-Kraftwerk wegen der künstlich geschaffenen Energiepreiserhöhungen etwas Entlastung erreichen.

Auch das ist mal wieder ein äußerst heikles Thema... einerseits IT-Technisch, aber letztlich viel mehr bezogen auf die Realitäten unseres Lebensalltags. Insbesondere hierbei trifft Ideologie auf Realität, sowie quasi-religiöses Wunschdenken, mediale Indoktrination, Desinformation, Manipulation und politische Agitation auf unsere persönlichen Lebensumstände … und das alles in Kombination ganz sicher nicht positiv für uns selber. Nun ist’s wie es ist und die Umstände zwingen einen fast dazu, nach eigenen Möglichkeiten zur passiven Selbstverteidigung gegen unseren mittlerweile ziemlich übergriffigen und gegen die Bevölkerung handelnden Staat zu suchen. Im Grunde genommen war auch genau das meine Motivation, mein kleines Balkonkraftwerk einzurichten. Man kann besser das eigene Geld einmalig zum langfristigen eigenen Vorteil investieren, als es wegen vorsätzlich künstlich geschaffener struktureller Zwänge durch eine zweifelhafte politische Ideologie den Shareholdern in typischen Investment-Unternehmen über den Umweg der Energiekonzerne oder den Herstellern von vermeintlich ‚grüner‘ Groß-Technologie zu  übereignen.

 

Dieses Projekt war für mich hinsichtlich der IT-Technik jedenfalls in einem ziemlichen Umfang herausfordernd, so habe ich mich doch zum ersten Mal in die Programmierung mit Python einarbeiten müssen – Python war für mich eine völlig neue Erfahrung. Insofern bitte ich die erfahrenen Python-Entwickler um etwas Nachsicht, wenn ich vielleicht vorhandene bessere Möglichkeiten mangels Erfahrung nicht genutzt habe, oder ‚unnötige Umwege gefahren‘ bin, oder vielleicht hier und dort gewisse Python-Regeln verletzt habe. Am Ende ist allerdings die wichtigste Feststellung für mich, dass die Programme seit Monaten genau das tun, wofür sie entwickelt wurden, und zwar fehlerfrei und ohne Aussetzer.

Um ganz am Ende kommt auch hier wieder ein ganz persönlicher Aspekt hinzu, ich hatte nämlich durchaus auch einigen Spaß an den neuen Herausforderungen, an solchen technischen Spielereien sowieso, gerade auch und am meisten an der Software-Entwicklung ... und ich machs halt, weil bzw. wenn ich es kann.

Inhaltsübersicht über die Kapitel dieses Artikels:

> Festlegen von Rahmenbedingungen

> Anforderungsprofil und Beschreibung der Teilprozesse

> Das Programm

> Die Konfigurations-Datei(en)

> Setup

> Einrichten der Jobs

> HTML-Web-Viewer

> Benefit?

> Haftungsausschluss

 

 

 

Festlegen von Rahmenbedingungen

< zurück >

 

Nach meinem bisherigen Verständnis ist es anscheinend völlig normal, dass fortschrittliche private Solaranlagen (die sowieso) und auch die Inverter eines kleinen Balkonkraftwerks ihre Ertragsdaten auf einem modernen Smartphone automatisch mit informativen Grafiken und Diagrammen visualisieren. Weil es aber keine direkte Verbindung zwischen Inverter und den beliebigen Smartphone-Typen gibt und außerhalb des Heimnetzwerks vom Smartphone sowieso kein Zugriff auf den Inverter möglich wäre, erstellt der Inverter eben nicht selber die gewünschten Grafiken, um sie von dort mit dem Handy abrufen zu können, sondern er stellt nur Rohdaten zur Verfügung. Er überträgt aber auch diese Rohdaten nicht direkt aufs Smartphone, wo vielleicht dann ad hoc Grafiken gerechnet und gerendert werden (könnten), er sendet sie stattdessen ausgehend aus dem heimischen Netzwerk über das Internet an einen zentralen OEM-Cloud-Server zur zentralen Speicherung. Das Smartphone nutzt in der Folge dann eine spezielle App, die sich ebenfalls über das Internet zu eben diesem Cloud-Server verbindet und man bekommt die aktuellen Ertrags-Daten zum leichten Verständnis mit Diagrammen grafisch aufbereitet aufs Handy geschickt. Das hat wohl den Vorteil, das man nicht an ein Smartphone oder ein bestimmtes Smartphone-Betriebssystem gebunden ist, die entsprechenden Apps funktionieren plattformübergreifend und sind einfach in den Appstores zum Download verfügbar. Man muss sich auch nicht um die Datensicherung kümmern, man ist nicht ans heimische Netzwerk gebunden, alles funktioniert einfach und perfekt, egal wo man sich gerade aufhält, die Daten vom heimischen Kraftwerk werden auf Wunsch unmittelbar angezeigt … App installieren, Anmeldedaten in Smartphone und Inverter eingeben und schon wird das eigene Balkonkraftwerk grafisch verständlich aufbereitet in Aktion gezeigt. Einfacher und komfortabler geht fast nicht mehr. Aber ...

... in Zeiten von

- annähernd globaler digitaler Dominanz durch BigTech-Unternehmen wie Microsoft (Windows), Alphabet (Google), Meta (Facebook, Instagram, WhatsApp), Apple, Amazon, also den Big Five meisterhafter Orwell’scher Überwachung,

- dem fortschreitenden Demokratieabbau vorangetrieben durch unsere gewählten ‚Eliten‘, die beherrscht und gelenkt von NGO’s und den dahinterstehenden global aktiven Investment-/Finanz-Konzernen handeln,

- dem von der EU über zweifelhafte und lobbyistisch motivierte Gesetze permanent aufgeweichten privaten resp. persönlichen Datenschutz,

- dem allumfassend existierenden Geschäfts-Dogma, dass ein einfacher Bürger eigentlich gar nicht mehr respektiertes Subjekt ist, sondern nur noch ein beliebig manipulierbares Objekt finanziellen Profits ist,

habe ich mittlerweile jegliche Gutgläubigkeit an Integrität und Fairness zu diesen Firmen und der Politik im Allgemeinen bei der Verwendung von im Geschäftsprozess gewonnenen personenbezogenen Daten verloren. Und genau aus diesem Hintergrund ist es natürlich völlig ausgeschlossen, dass irgendein proprietäres System (der Inverter mit eigener Server-Software-Funktionalität) integraler Bestandteil unseres Netzwerkes wird und gleichzeitig über die Berechtigungen verfügt, eigene Verbindungen über das Internet mit einem fremden Cloud-Server herzustellen.

 
Ich kenne
diesen Server-Hoster nicht, also das dahinterstehende
kommerziell handelnde
Unternehmen, ebenso
wenig
deren möglicherweise an
unsere
n
privaten
Daten interessierte Geschäftspartner.
Die
u
nternehmensstrategi
schen Ziel
e
dieses Webspace-Dienstleisters
sowie deren Geschäftsphilosophie ist mir
völlig
unbekannt.
Der Service selber ist kostenlos, bezahle ich stattdessen mit meinen privaten Daten?
Mit welchen?
Handeln sie im Rahmen eines zum EU-Recht kompatiblen Compliance Management Systems oder
sind
sie nur an ‚fremde‘ und ggf. ‚lockerere‘ Gesetzgebungen gebunden?
Ich kenne den Standort
des
Servers
nicht,
ich habe keine Kenntnisse übe
r
dessen
Berechtigungskonzept
e
,
dessen
lokale
Zugangsschutz-Mechanismen,
ich habe
keinerlei Kenntnis darüber, welche Personen sich berechtigt oder unberechtigt dieses Servers bemächtigen können,
alles
vollständig
unbekannte Aspekte
.
 

 

Wobei all das allerdings nicht einmal das primäre Problem darstellt. Darüber hinaus ist im Wesentlichen eine in diesem Zusammenhang stehende Folgefunktionalität hochgradig suspekt. Und zwar, dass von mir völlig unbemerkt dieser fremde Cloud-Server automatisiert ein Software-Update auf meinem Inverter durchführen kann, also die Software des bei mir stehenden und in meinem Netzwerk autorisierten Inverters aktualisiert oder austauscht. Das bedeutet also in letzter Konsequenz, die Software des Inverters (u.a. der Web-Server) ist eine autorisierte Instanz in meinem Heimnetzwerk, sieht lokalen Netzwerk-Traffic sowie weitere Netzwerk-Komponenten, überträgt Daten nach ‚irgendwohin‘, ermöglicht einen meinerseits unautorisierten Zugang in unser Netz von außen und kann von außerhalb initiiert proprietäre Software austauschen oder installieren.

 

Dabei habe ich keinerlei Möglichkeiten, den TCP/UDP/Netzwerks-Funktionsumfang dieser ‚neuen‘ Software zu prüfen, zu aktivieren, zu deaktivieren, oder überhaupt deren stilles Wirken im Hintergrund festzustellen. Wenn man in Betracht zieht, dass vielleicht Linux die Software-Basis des Inverters ist und möglicherweise sogar ein SSH-Server integriert wäre, so bedeutet das schließlich, dass der Inverter quasi eine unkontrollierbare Backdoor in mein privates Netzwerk darstellen könnte. Nichts für ungut, aber das ist ein absolutes NoGo. Selbst wenn das Betreiber-Unternehmen dieser Cloud nur integre Absichten hat, so habe ich dennoch nicht die geringste Kenntnis darüber, wer sich möglicherweise auf Grund schlampiger Server-Security, mangelhafter Sicherheitskonzepte und Berechtigungsvergaben schlimmstenfalls dieses Servers bedienen könnte, um eine invasive Software auf die verbundenen in privaten lokalen Netzen integrierten Inverter zu installieren. Und sei es, wenn es durch die Administratoren selber auf behördliche Anweisung im Rahmen einer Schleierfahndung bei solchen Übergriffen wie mit dem Staatstrojaner (siehe BKA, Quellen-TKÜ) passieren könnte. Immer häufiger beinhaltet die Ermittlungsarbeit heute u.a. bei der anlasslosen (!) Massenüberwachung die Erhebung, Verdichtung und Verwertung etwa von Verbindungs- oder Telekommunikationsüberwachungs-Daten, Funkzellenauswertungen oder Daten über finanzielle Transaktionen.

Zu diesem Zweck können auch Systeme zur Telefonkommunikationsüberwachung und Analysetools angebunden werden. NoGo! Nach den vergangenen 3 Jahren und den 2 davor liegenden Legislaturperioden gibt es heute jedenfalls keine totalitären Steigerungen mehr, die ich mir jetzt nicht mehr vorstellen kann.

Nun gäbe es alternativ aber auch noch die Möglichkeit, den WLAN-Adapter des Inverters nur in unserem Gastnetz zu erlauben – das wäre wohl ausreichend getrennt von unserem lokalen Heimnetz, beantwortet letztlich aber auch nicht die Frage nach potentiell möglichen invasiven Attacken. Und schließlich, woher weiß ich, dass er nicht IP-Spoofing betreibt und sich dann doch unerlaubt ‚reinzuschleichenversucht?

 

 

Darüber hinaus wäre er im Gastnetz für mich auch nicht via OpenVPN erreichbar. Insofern bleibt letztlich nur die Option, Einbindung ins lokale Netz, aber rigoroses Verbot für Verbindungen zum Internet. Aus diesen Gründen ist mein Inverter schließlich doch ein integrierter Bestandteil meines Netzwerks und damit Teil der Home-Automatisierung geworden, aber er hat wie z.B. die Web-Cams keinerlei Berechtigung, eine Verbindung ins Internet aufzubauen oder aus dem Internet heraus angesprochen werden zu können. Sicherheit und die Bewahrung meiner digitalen Privatsphäre ist innerhalb der computerisierten Welt unverändert mein primäres Interesse. Aber, um das noch einmal deutlich zu sagen, der Schutz unserer digitalen Privatsphäre betrifft ausdrücklich nicht die paar lächerlichen Stromertragsdaten meines Balkonkraftwerks, sondern ausschließlich die von mir unkontrollierbaren Netzwerksfunktionen eines in meinem Netzwerk autorisierten proprietären fremden Gerätes und die offene Frage, in welchem Umfang diese Software potentiell invasiv ist. Natürlich kann man das alles als Aluhut-Paranoia abtun und damit die Realität schlichtweg verleugnen… da sag ich dann nur, jeder wie er mag, aber bitte später nicht böse überrascht sein.

Tja, und das
bedauernswerte
Ergebnis dieser Beschränkung
en
und der abschließenden Entscheidung
ist nun offensichtlich, es gibt
leider
keine komfortabel visualisierten Daten über die Leistung und die Erträge unseres Balkonkraftwerks ... keine Daten, keine
Diagramme über Leistung und Erträge
, keine Informationen, aus denen sich ableiten lässt, wie man seinen eigenen teuren und kosten
intensiven
Stromverbrauch abgestimmt auf
die
Solarerträge optimiert.
Das heißt, wenn ich es in Bunt und mit Balken und Linien und mit Zeitraumvergleichen verständlich grafisch aufbereitet sehen und kontrollieren will, muss ich das selber erstellen.
 

 

Als Fazit auf die genannten obligatorischen Beschränkungen ergeben sich nun die folgenden grob umrissenen Rahmenbedingungen:

  •  

Ein Zugriff von außerhalb des lokalen Netzwerks (also aus dem Internet) auf den Inverter ist untersagt, um eine unbemerkte Fremdkontrolle via Backdoor in unserem Netzwerk zu verhindern

  •  

Dem Inverter selber wird der Zugang zum Internet vollständig untersagt, um sicherzustellen, dass sich eine interne proprietäre Server-Software nicht über eine Reverse-Connection als unkontrollierbare Schadsoftware im eigenen Netzwerk erweist

  •  

Die Leistungs-Daten der Solar-Panels und der tatsächliche Ertrag müssen über das Web-Gui des Inverters ausgelesen werden

  •  

Zur Speicherung der Daten und für notwendige Langzeit-Auswertungen wird eine SQL-fähige Datenbank angelegt

  •  

Es sollen Grafiken über Produktivität und Erträge des BKWs über unsere Homepage via HTML-Steuerung auf allen unseren Geräten angezeigt werden können

  •  

Der Upload aller visualisierten Auswertungen zur Homepage soll alternativ über FTP oder SSHFS erfolgen können

  •  

Es wird eine eigene Software-Infrastruktur entwickelt, die alle Prozesse abdeckt

  •  

Unser lokaler LAN-Server bekommt eine weitere virtuelle Debian-Instanz nur für diese neuen Aufgaben

 

Weitere sekundäre Anforderungen:

  •  

Der spätere Betrieb muss wartungsarm und für mich weitestgehend aufwandsneutral erfolgen (ich will mich nicht ständig drum kümmern müssen)

  •  

Wartungs-Zugriffe auf den virtuellen Server, auf Software, aufs Web-GUI resp. Customizing des Inverters erfolgen nur LAN-Intern

  •  

Sofern ein Zugriff über das Internet notwendig ist, erfolgt dieser über eine OpenVPN-Verbindung (… also trotzdem nur LAN-Intern)

 

 

 

Anforderungsprofil und Beschreibung der Teilprozesse

< zurück >

 

Wie schon in der Vergangenheit bleibe ich auch hier meinem Vorsatz treu, ein mehr oder weniger kompliziertes Projekt in einzelne Teilschritte zu zerlegen, bei dem ich mich dann mit der Lösung eines jeden Einzelschritts exklusiv befasse, ohne mich dabei von anderen, gewesenen oder noch kommenden Belangen oder Problemen ablenken zu lassen. Deswegen werde ich jeden Teilprozess einzeln beschreiben. Natürlich habe ich zu Beginn schon eine genaue Vorstellung davon, was ganz am Ende dabei rauskommen soll. Und genau dafür gibt es ein kleines Pflichtenheft:

» Für die gesamte Arbeitsaufgabe sind 6 Teil-Prozesse resp. 6 Teil-Programme notwendig, jedes mit einer exklusiven Funktion. Darüber hinaus werden 2 Text-Files mit Konfigurationsangaben bzw. Einstellungen benötigt:

1. „Main“ (Shell-Eintrittspunkt) zur zentralen Prozess-Steuerung

2. Download der Daten vom Inverter und speichern in SQL-DB

3. Erzeugen von Grafiken

4. Upload via SHFS

5. Upload via FTP

6. Support-Modul für allgemeine Funktionen

7. Eine Konfigurations-Datei für die notwendige Customizing-Flexibilität

8. Eine Konfigurations-Datei für SQL-Queries

» Es ist für das Abbild eines Tages ausreichend genau, die Leistungsdaten des Inverters halbstündlich als Snapshots auszulesen

» Das Auslesen der Daten findet jahreszeitlich abgestimmt (helle/dunkle Monate, lange/kurze Tage) statt. Die notwendige Flexibilität wird über Customizing-Werte in einer Konfigurations-Datei hergestellt. Siehe Anmerkung unterhalb.

» Die Speicherung halbstündig ausgelesener Datensätze (hier max. 651 Records/Monat) erfolgt in einer SQLite-Datenbank

» Der dedizierte ‚Kraftwerks’-Server soll als isolierte Funktion im Rahmen der Home-Automatisierung in einer exklusiven VM laufen, die Datenbank selber wird auf einer Festplatte gespeichert und via Samba-Share zugemountet. Das ist keine ultimative Vorgabe, das Programm kann auch auf einem Raspberry PI, einem Arduino oder einem beliebigen anderen Linux-System laufen.

» Die gewonnenen Daten sollen zum besseren Verständnis über aussagekräftige Grafiken visualisiert werden

» Die Anzeige der Grafiken soll auch im Smartphone über das Internet unabhängig vom eigenen Standort möglich sein

» Eine permanent aktualisierte Just-in-Time Anzeigt ist nett, bleibt letztlich aber hier für die Erkenntnis über Wirkungsgrad und Zeitraum ein unnützes Gimmick, deshalb...

» ...die Grafiken werden halbstündig als JPEG erstellt und können damit von jedem beliebigen Internet-Browser angezeigt werden

» Nur die 30-Minuten-Aktualisierungen werden halbstündig grafisch upgedatet, der Tag als ganzes jedoch (optional) nur einmalig am Tag mit dem letzten Programmlauf des Tages

» Auf unseren Smartphones werden die auf der Homepage resp. im Webspace in einem besonderen Bereich gespeicherten Grafiken via beliebigen Internet-Browser angezeigt

» Für das einfache Online-Durchblättern der einzelnen Grafikseiten wird ein kleines HTML-Script erstellt

Im wesentlichen reduziert es sich auf nur drei relevante Prozess-Jobs, die unabhängig voneinander und nacheinander laufen. Zuerst das Auslesen und Speichern der Daten, dann das Erstellen der Grafiken und schließlich das  Hochladen der fertigen Grafiken auf den Web-Space, resp. zur Homepage oder Cloud. Dazu noch die primäre Ablaufsteuerung und einige Support-Routinen.

Bildlich dargestellt sieht der Ablauf wie folgt aus:

 

Und so sieht unsere Sonnen-Power-Installation aus. Es handelt sich um 2 Panels mit je 410 WP und dem Deye-Inverter SUN-M80G3-EU-Q0. Das Foto ist um 13 Uhr aufgenommen, Anfang August, also zur besten Mittagssonnenzeit, wie man am Schattenverlauf sehen kann. Die Neigung beträgt 55,7°, was vielleicht im Hochsommer nicht optimal ist, aber einen gerade noch akzeptablen Kompromiss zwischen Effizienz und Optik darstellt. Andererseits denke ich aber auch, dass diese Neigung wahrscheinlich etwas vorteilhafter ist, wenn in früheren und späteren Monaten des Jahres die Sonne eh flacher steht. Ums kurz zu sagen, egal, es muss sowieso so reichen.