Benutzer-Werkzeuge

Webseiten-Werkzeuge


howto:as1440_auf_iconnect
Sie wurden von hardware:channels:meters:power:as1440_auf_iconnect hierher umgeleitet.

Stromzähler AS 1440 auslesen mit iConnect

Diese Anleitung beschreibt eine eigene Loesung eines Nutzers, ohne Benutzung der Software von volkszaehler.org

Ich möchte hier mein Projekt zum Auslesen zweier Elster AS 1440 vorstellen. Ein Zähler zeichnet den Ertrag einer Solaranlage auf, der andere zeichnet den Verbrauch und den tatsächlich exportierten Ertrag auf.

Benutzt hab ich dazu zwei IR-Schreib-Leseköpfe und einen iConnect von Iomega.

Den iConnect hab ich benutzt, weil er 4 USB-Schnittstellen und WLAN hat und man ihn ohne Hardwareänderungen benutzen kann. Zudem kostet er nur ca. 50€ (Stand März 2012).

Konzept

Ich möchte beide Zähler auslesen die Einzelwerte in Dateien speichern. Dazu benutze ich ein kleines C-Programm. Per bash-Script aktualisiere ich dann statische html Seiten. Die Seiten hab ich vorher erstellt und mit speziellen Kommentaren versehen. Die Kommentare werden dann durch die Daten ersetzt. Danach kopiere ich die Seiten per FTP auf meine Webseite. Diese kann überall gehostet sein. Mir war wichtig den Webserver nicht selber zu hosten um kein Loch in meine Firewall bohren zu müssen.

Iomega iConnect

Der iConnect muss zur Zusammenarbeit überredet werden, da zwar schon ein Linux drauf ist, aber nur ein sehr rudimentäres. Unter www.congenio.de kann man sich ein fertiges Image für ein Debian herunterladen. Hier ist auch beschrieben wie man den iConnect von diesem Image (auf einem USB-Stick) startet. Der Vorteil dieser Methode: Wenn man den USB-Stick nicht benutzt, wird wieder von der originalen Firmware gestartet. Die einzige Änderung im iConnect ist der Bootloader, der so angepasst wird, dass er alternativ von unserem Stick bootet.

Hat man das Debian am Laufen, kann man sich per PuttY o.ä. auf den iConnect verbinden.

Die Webseite

Wie in der Einleitung beschrieben wollte ich statisches HTML benutzen um Serverunabhängig zu sein. Da ich die Seiten von mir aus hochlade ist es egal wo die Seite gehostet wird.

Ich habe 3 Seiten:

- Eine Tagesdatei, die alle 15 min. aktualisiert wird.

- Eine Monatsdatei die einmal am Tagesende aktualisiert wird. Hier stehen die Tagessummen für den laufenden Monat.

- Eine Historiendatei in der alle Monatsdaten verknüpft sind. Diese wird einmal im Monat aktualisiert.

Die Daten werden jeweils in einer Tabelle dargestellt. Als nett Spielerei habe ich von http://g.raphaeljs.com eine kleine Javascript Bibliothek benutzt um die Tages und Monatswerte grafisch darzustellen. Die blaue Kurve beschreibt die Einspeisung der Solaranlage, die rote Kurve beschreibt den momentanen Verbrauch unseres Hauses.

Darunter ist die Tabelle mit den Einzelwerten zu sehen.

Die Scripte

Wie schon beschrieben wird das Ganze mit Bash-Scripten gesteuert. Dazu lasse ich via crontab alle 15 min das Script SoSa1.sh laufen. Dieses startet das Auslesen der Schnittstellen via nohup im Hintergrund und wartet 2 min. Danach werden die erzeugten Logfiles ausgelesen und die interessanten Werte in die index.html geschrieben.

Abends am gleichen Tag läuft das Script SoSa1Tag.sh. Dieses rechnet aus den Daten vom Vortag und den letzten geschriebenen Werten die Tageszusammenfassung und schreibt diese in die monat.html.

Am Monatsersten früh läuft das dritte Script SoSa1Monat.sh. Das schreibt die Daten in die Jahr.html.

Am Ende der jeweiligen Scripte werden die html Dateien via FTP versendet (siehe FTPLogin*).

Hier nun alle Scripte, das Programm im Quellcode und compiliert und ein paar Beispieldaten: projekt.zip

howto/as1440_auf_iconnect.txt · Zuletzt geändert: 2013/02/03 21:36 von r00t