Aufbauanleitungen

Aus FreeSol-Wiki

Vorbemerkung

Auf dieser Seite sind detailliertere Bestelllisten und Aufbauanleitungen für die einzelnen Arbeiten zusammengestellt.

Für Eilige ist auch ein Schnelleinstieg beschrieben.

Bestellung und Hardware

Bestelllisten

  • Alle Preise sind Bruttopreise.
  • Versandkosten sind in der Regel nicht angegeben.

Grundpaket: FreeSol-Logger für S0-Solarenergieerfassung

Das Grundpaket enthält alle Hardware-Komponenten, die zum Aufbau und zur Programmierung eines FreeSol Loggers notwendig sind, wenn ein S0-Signal vorhanden ist. Sinnvollerweise startet man mit dem Grundpaket so wie im Schnelleinstieg in vier Schritten beschrieben.

Datei:Bestellliste Grundpaket.jpg

Anmerkungen:

  • Der noch günstigere Pocket AVR Programmer für 13 EUR bei Watterott hat leider nicht funktioniert. Zwar kann ich kleine Programme aufspielen, aber er scheint an der 64k-Grenze zu scheitern. Eine Diskussion mit dem Support hat das Problem leider nicht lösen können, im Moment deshalb auf Eis.
  • Der Programmieradapter in Position 8 ersetzt Positionen 6+7. Er ist inzwischen erfolgreich getestet, hat jedoch immer einige Wochen Lieferzeit aus Hongkong. Über Ebay z.B. hier: http://cgi.ebay.de/ws/eBayISAPI.dll?ViewItem&item=370532286436

Erweiterungspaket S0-Zähler: Zum Erzeugen eines nicht vorhandenen S0-Signals

Dieses Paket wird dann benötigt, wenn nirgends in der Anlage ein S0-Signal vorhanden ist. Alternativ könnte man versuchen, das S0-Signal günstiger zu erzeugen, z.B. durch Auslesen einer am Zähler blinkenden LED oder durch Anbringen einer Lichtschranke am Drehrad des Ferraris-Zähler.

Bestellliste S0-Zähler.jpg

Anmerkungen:

  • Weil nicht vernachlässigbar habe ich hier Versandkosten separat aufgeführt.

Erweiterungspaket SML-Lesekopf: Zum Einlesen von SML-Signalen aus einem Bezugs-Einspeisezähler

Mit diesem Paket wird zusätzlich zu der erzeugten Energie der Solaranlage auch ein SML-fähiger Zweirichtungszähler (Bezugs-/Einspeisezähler) ausgelesen. Die Daten werden ebenfalls vom Logger erfasst und zwischengespeichert. Für die Visualisierung udn dauerhafte Speicherung empfiehlt sich die kostenfreie Zusatzsoftware FreeSol EV aus dem Downloadbereich. Bestellliste SML-Zähler.jpg

Anmerkungen:

  • Pos. 31: Wir brauchen davon nur einen Phototransistor
  • Pos. 33+35: Packung mit je 100 Stück
  • Pos. 39: Kann man zerschneiden statt Kabel an einen Stecker hinzulöten
  • Als Variante kann man einen aufgebauten ähnlichen Volkszähler-SML-Schreib-Lesekopf verwenden (18 EUR Bauteile inkl. Verstand + 5 EUR Lötservice).

Erweiterungspaket Powerline: Netzwerkübertragung über Stromkabel

Dieses Paket weird dann benötigt, wenn sich am Anschlußort des FreeSol-Loggers kein Netzwerkanschluß befindet und die daten über die Stromleitung übertragen werden müssen. Aufgrund der Kosten für Hardware und Stromverbrauch (6 W Dauerbetrieb entspricht 12 EUR pro Jahr) sollte man versuchen, dies zu vermeiden. Bestellliste Powerline.jpg

Anmerkungen:

  • Pro Adaper ca. 3.4 W Dauerleistung

Einbau des S0-Zählers

Diese Arbeit darf nur ein Elektroinstallateur ausführen.

Anschluß des Loggers an den S0-Zähler

Hierzu gibt es im Moment eine bebilderte Kurzanleitung: http://www.freesol.de/download/2011-08-28%20Kurzanleitung%20zum%20Aufbau%20des%20Freesol.pdf

Fehlende Informationen

Finden sich im Moment noch bei http://www.freesol.de/hardware.html

Konfiguration der Software und Inbetriebnahme des Loggers

Inbetriebnahme des Grundpakets

Überblick

Die Inbetriebnahme besteht aus folgenden Schritten:

  • Aufspielen der FreeSol-Software auf das Board
  • Einstellen der notwendigen Parameter auf dem FreeSol-Board

Aufspielen der FreeSol-Software auf das Board

Ich empfehle strikt folgendes Vorgehen, kann aber nicht ausschließen, dass diese Dokumentation nicht vollständig ist oder auf anderen Systemen nicht funktioniert (auf meinem System lief Windows 7 64 bit). Falls jemand Abweichungen merkt oder Fragen hat, bitte Feedback.

Für den Pololu-Programmer

Eine Beschreibung von Pololu zum möglichen Vorgehen findet sich hier, ich habe dabei aber die Variante gewählt, NUR den USB-Treiber und WinAVR mit AVRDUDE zu installieren und nicht das komplette Bundle.

  1. Deshalb also zunächst wie in der Pololu-Dokumentation beschrieben (OHNE ins USB eingestecken Programmer) den USB-Treiber von dieser Stelle herunterladen und installieren.
  2. Danach den Programmer in den USB-Port einstecken.
  3. Danach habe ich kontrolliert, ob wie bei Pololu beschrieben der Programmer im Gerätemanager (Systemsteuerung -> Gerätemanager) als COM-Port auftaucht und aufgeschrieben, welche Nummer dieser COMport hat, bei mir war dies die 8.
  4. Sinnvollerweise erhöht man im Gerätemanager die Baudrate für die zum Programmer gehörige serielle Schnittstelle auf 115200 (Anschlußeinstellungen/Bits pro Sekunde)
  5. Anschließend habe ich WinAVR installiert wie beschrieben, unter Windows 7 muss dies wohl ins Rootverzeichnis.
  6. In der WinAVR-Konfiguration habe ich im File c:\WinAVR-20100110\bin\avrdude.conf nach dem Abschnitt "1284P" gesucht und ein paar Zeilen weiter den Wert von "chip_erase_delay" auf "55000;" gesetzt. Wer es sich einfacher machen will, kann das geänderte File auch direkt von hier downloaden.
  7. Probeweise sollte man nun ein Kommandozeilenfenster öffnen (Bei "Start" in die Eingabezeile "cmd" eingeben und kontrollieren, dass bei Eingabe des Befehls "avrdude" dieser erkannt wird und eine Hilfeinformation ausgegeben wird.

Der Programmer ist damit für die Programmübertragung vorbereitet, das eigentliche Aufspielen erfolgt zusammen mit der Konfiguration und ist im folgenden Kapitel beschrieben.

Für den USBASP-Programmer
  • Bei Verwendung des USBASP-Proggers muss man nachher ebenfalls WinAVR mit AVRDUDE wie unten beschrieben installieren, der Windows-Treiber für den Progger findet sich hier, weitere Hintergrundinfos zum Progger hier.
  • Danach den Programmer in den USB-Port einstecken.
  • Anschließend habe ich WinAVR installiert, unter Windows 7 muss dies wohl ins Rootverzeichnis.
  • In der WinAVR-Konfiguration habe ich im File c:\WinAVR-20100110\bin\avrdude.conf nach dem Abschnitt "1284P" gesucht und ein paar Zeilen weiter den Wert von "chip_erase_delay" auf "55000;" gesetzt. Wer es sich einfacher machen will, kann das geänderte File auch direkt von hier downloaden.
  • Probeweise sollte man nun ein Kommandozeilenfenster öffnen (Bei "Start" in die Eingabezeile "cmd" eingeben und kontrollieren, dass bei Eingabe des Befehls "avrdude" dieser erkannt wird und eine Hilfeinformation ausgegeben wird.

Der Programmer ist damit für die Programmübertragung vorbereitet, das eigentliche Aufspielen erfolgt zusammen mit der Konfiguration und ist im folgenden Kapitel beschrieben.

Allerdings erhalte ich beim Schreiben mit dem Setup-Programm eine Fehlermeldung und der Schreibvorgang dauert sehr lange:

avrdude: auto set sck period (because given equals null) avrdude: warning: cannot set sck period. please check for usbasp firmware update.

Dies scheint aber bei dem Progger üblich zu sein und hat keinen Einfluß auf die Funktion.

Einstellen der notwendigen Parameter auf dem FreeSol-Board

Ein Windows-Konfigurationsprogramm FreeSol Setup soll beim Einspielen des Programms und dem Konfigurieren des Boards helfen. Das Programm geht davon aus, dass alle benötigten Files im Programmverzeichnis liegen.

Ansicht des FreeSol-Setup-Programms nach erstem Programmaufruf und Klick auf den Knopf "Defaultwerte"

Vorgehen dabei wie folgt:

  1. Programmieradapter einzustecken, Netzteil einstecken, um das Board mit Spannung zu versorgen, und das Setup-Programm starten.
  2. Das Programm FreeSol Setup aufrufen und den Reiter "Progger-Einstellungen" anklicken. Dort die richtiger Schnittstelle (nachsehen bei Systemeinstellungen -> Gerätemanager, siehe vorheriges Kapitel) auswählen und "Proggerkommandos auf Defaultwerte setzen". Wenn diese nicht passen (z.B. bei anderem Progger), kann man sie manuell ändert, dies wird auch beim Beenden gespeichert.
  3. Testweise mit dem Knopf "Fuses lesen" probieren, ob die Verbindung zum Chip richtig funktioniert un die Fuses gelesen werden (Anzeige im Konsolenfester).
  4. Danach mit dem Knopf "Fuses schreiben" die Fuses richtig einstellen. (Die Fuses stellen einmalig Hardwareparameter des Chips richtig ein. Muss man einmalig machen, danach nie wieder machen.)
  5. Danach das Hexfile Freesol.hex aus dem FreeSol-Paket (befindet sich im Unterverzeichnis des Zip-Files) in das Verzeichnis des Setupprogramms kopieren und mit dem Knopf "Programm schreiben" auf den Logger hochladen.
  6. Mit dem Knopf "Defaultwerte" eine Vorlage für die Konfiguration erstellen.
  7. Die Werte in der Konfiguration anpassen. Hilfetexte zu den Einstellungswerten der Parametern werden sichtbar, wenn man im Setup-Programm mit der Maus über den Parameternamen fährt. Anpassen sollten man auf jeden Fall:
    • Den Hostnamen (Erscheint auf der Webseite des Loggers)
    • Die Macadresse (kann beliebig wählen, am besten die vom mitgelieferten kleinen Chip nehmen, ist aufgeklebt)
    • Die IP-Adresse des Boards (am besten die nehmen, die dem Board nach erstmaligem Anschluß im Netz zugewiesen wird. Solange man die MAC-Adresse nicht ändert, merken sich die meisten Router freiwillig oder nach entsprechender Einstellung die IP-Adresse und weisen diese beim nächsten Mal wieder zu.
    • Defaultgwateway, Nameserver: Meist wie IP-Adresse, nur letzte Zahl die 1
    • Anlagenleistung in W
    • Die anderen Parameter kann man zunächst mal unverändert lassen.
  8. Nach Anpassen aller Konfigurationswerte als Filename für "Speichern" "eeprom.txt" einstellen und mit "Speichern" abspeichern. Damit wird die Konfiguration zunächst mal auf die Festplatte gespeichert.
  9. Mit dem Knopf "Konfiguration schreiben" die Konfiguration von der Festplatte auf den Chip übertragen. (Die Konfigurationsparameter, sind anlagenspezifisch, diese werden im Gegensatz zu den Fuses vielleicht öfter mal geändert)

Bei der Fehlersuche am laufenden Programm kann der sogenannte Heartbeat helfen: Jede Minute sendet der Logger über die serielle Schnittstelle die wichtigsten Statusinformationen (Datum, Zeit, S0-Zählerstand, IP, Adresse sowie den Zeitpunkt der Zeitsynchronisierung nach dem letzten Booten). Mit einem geeigneten Terminalprogramm und einem Verbindungskabel zur seriellen Schnittstelle läßt sich der Heartbeat am PC anzeigen.

Durchführung eines Softwareupgrades auf dem Logger

Solange der Logger problemlos läuft, sind Softwareupdates eigentlich nicht nötig. Wenn man diese trotzdem machen will, z.B. um ein neues Feature zu nutzen, geht man wie folgt vor:

  • Das FreeSol-Setup-Programm und das Hexfile Freesol.hex aus dem aktuellen FreeSol-Paket (Zip-File mit den Sourcen, Hexfile liegt im Unterverzeichnis des Zip-Files) aus dem Downloadbereich herunterladen und ins gleiche Verzeichnis speichern.
  • Den Programmieradaper an den USB-Port des PC und an den Logger Board anschliessen.
  • Das FreeSol-Setup-Programm ausführen. Dann auf einen der Knöpfe "Proggerkommandos auf Defaultwerte setzen" klicken. (Für den Pololu-Progger muss man zuvor natürlich den richtigen COM-Port des Programmieradapters eingeben, notfalls nachsehen in Systemeinstellungen -> Geratemanager).
  • Zum eigentlichen Übertragen des Programms auf das Board einfach im Tab "Hauptseite" auf "Programm schreiben" klicken. Der Programmieradapter blinkt dann eine Zeit lang rot, und danach ist die neue Software drauf.
  • Eine Übertragung der Konfigurationseinstellungen ist nicht nötig. Eine Übertragung der Konfiguratinseinstellungen überträgt gleichzeitig auch die alten Aufzeichnungswerte auf den Logger, weil Logger-Energiedaten und Konfigurationsdaten beide zusammen im Eeprom gespeichert sind. Mit einem neuen Übertragen der Konfigurationsdaten auf den Logger überschreibt man also ggf. die aktuellen Energiedaten durch ältere aus einer Sicherungskopie.

Inbetriebnahme der SML-Lesefunktion für Bezugs- und Einspeisezähler

  • Den Lesekopf aufbauen und wie beschrieben an den 9-poligen DSUB-Stecker des AVR-Boards anschließen
  • Soweit nötig kann vorher oder im Problemfall der Lesekopf zunächst direkt an einen Windows-PC angeschlossen und mit dem Programm Freesol SML live auf den PC ausgelesen werden. Sofern dabei der Zähler nicht oder nicht richtig erkannt wird, ist der Zäählertyp noch in die Software einzubauen. Dazu sollte ein Mitschnitt der Zählernachrichten (z.B. 1 min lang mit Programm hterm mitschneiden) erstellt und an mich geschickt werden. Im Moment werden folgende Zähler unterstützt:
    • EMH eHz
    • Easymeter Q3C
  • Im Setup-Programm des Boards die Variable Ee_fs_ev_url auf einen sinnvollen Wert setzen. Beim Benutzen der Defaulteinstellungen steht sie auf 'frees' (ohne Anführungszeichen). Nachdem aber nicht für jeden die Verbrauchsdaten offenliegen sollten, kann man hier einen eigenen Namen (maximal 6 Zeichen) als Vorsilbe wählen
  • Auf dem Logger werden damit eine Reihe weiterer Webseiten bereitgestellt. Der Name der Webseite bestimmt sich immer aus der gewählten Vorsilbe (hier z.B. 'frees') und einer Ergänzung, die den Inhalt beschreibt. Im Einzelnen gibt es dann z.B.
    • frees_b.js: 5min-Bezugsdaten des aktuellen Tages
    • frees_e.js: 5min-Einspeisedaten des aktuellen Tages
    • frees_bv.js: 5min-Bezugsdaten des Vortages
    • frees_ev.js: 5min-Einspeisedaten des Vortages
    • frees_bt.js: Bezugs-Tagesanfangszählerstände der letzten bis zu 30 Tage
    • frees_et.js: Einspeise-Tagesanfangszählerstände der letzten bis zu 30 Tage
    • frees_ue.js: Tabellarische Auflistung von Bezug, Einspeisung, Eigenverbrauch Gesamtverbrauch der letzten 10 Tage
    • frees_b.svg: Grafik der 5-Minutenwerte des Bezugszählers vom aktuellen Tag
    • frees_bv.svg: Grafik der 5-Minutenwerte des Bezugszählers vom Vortag
    • frees_e.svg: Grafik der 5-Minutenwerte des Einspeisezählers vom aktuellen Tag
    • frees_ev.svg: Grafik der 5-Minutenwerte des Einspeisezählers vom Vortag
    • frees_i.htm: Eine um Informationen zur letzten SML-Auslesung erweiterte Startseite
  • Bei Verwendung des Windows-Programms FreeSol EV SML müssen folgende Werte in den Einstellungen eingegeben werden:
    • Kurzbezeichnung und Name für alle drei Spalten frei, aber verschieden wählbar.
    • Es muss eine PV-Log-Nummer für alle drei Zähler eingetragen werden, hier einfach drei verschiedene Zahlen reinschreiben. Die Zahlen tauchen in den Namen der abgespeicherten Files wieder auf.
    • Die FreeSol URL muss in allen drei Spalten identisch als Loggeradresse eingegeben werden, z.B. http://meinlogger.dyndns.org
    • 'Logger aktiv' Häkchen in Erster Splate setzen, 'FreeSol einlesen' Häkchen in allen drei Spalten
    • Anlagenleistung in kW, Komma möglich
    • Jahresleistung in kWh/kWp
    • Als Fileprefix URL muss die gewählte Vorsilbe eingetragen werden, z.B. 'frees'.

Fehlende Informationen

Finden sich im Moment noch bei http://www.freesol.de/software.html

Dauerhafte Datenspeicherung in Portalen oder mit Windows-Software FreeSol EV

Die Windows-Software FreeSol EV

Diese kostenfreie Software aus dem Downloadbereich läuft auf dem heimischen PC und ermöglicht eine Kontaktaufnahme mit dem Logger. Der Logger selbst kann die Energiedaten zwischenspeichern (die 5min-Werte für 2 Tage und die Tageswerte für 30 Tage). Beim Aufruf von FreeSol EV werden die Daten vom Logger heruntergeladen, visualisiert und dauerhaft auf dem PC gespeichert.

Das Programm eignet sich damit für Nutzer, die ihre Daten nicht in ein Portal im Internet einstellen wollen. Außerdem ist es ein sinnvoller Zwischenschritt vor der Einbindung eines Datenportals, um zu sehen, ob der Logger wirklich stabil läuft.

Für die Verwendung von FreeSol EV muss der Logger noch keine statische IP haben, falls er sich im selben Netzwerk befindet wie der Computer, auf dem FreeSol EV läuft.

Einrichtung einer statischen IP-Adresse für den Logger

  • Ermöglicht es, einen im Heimnetz betriebenen Logger auch von "außen", also aus dem Internet, zu erreichen.
  • Der Logger lässt sich somit von überall aus ablesen.
  • Allerdings kann damit auch jeder auf die Loggerdaten zugreifen. (Hinweise: Die Bezugs-/Einspeisedaten sind durch Verwendung eines "geheimen" Namens für deren Internetadresse etwas geschützt).
  • Eine statische IP kann man mit Hilfe von kostenfreien Diensten wie no-ip.com oder dyndns.org anlegen.

Datenportale

Ein eigenes Datenportal

  • Es gibt die Möglichkeit, sich selber einen freien Webspace einzurichten und dort einmal täglich die Loggerdaten automatisiert hochzuladen. So sind auch die 5-Minuten-Daten dauerhaft vorhanden, ohne dass täglich gesichert wird.
  • Hier ist zunächst nur eine Kurzbeschreibung aufgeführt, sollte jemand daran interessiert sein und mehr Details benötigen, bitte nochmal nachfragen.
  • Einrichtung eines PHP-Skripts bei www.lima-city.de
    • Kostenfreien Useraccount beantragen
    • Im Rootverzeichnis ein Unterverzeichnis Daten und dort wiederum ein Unterverzeichnis Files einrichten
    • Ins Unterverzeichnis Daten dieses PHP-Skript hochladen, URL dazu anpassen und ggf weitere Filenamen im Array dazufügen
<?
$host = "http://meinefreesolanlage.dyndns.org/";
$files= array('minutes.js', 'minutesv.js');
$daten = file_get_contents($host.$files[0]);

$teile = preg_split('/\r\n/', $daten );
$datumsteile =preg_split('/\./', $teile[0] );

if (count ($datumsteile ) ==3) {
foreach ($files as $value) {
$daten = file_get_contents($host.$value);
$datei_name = $datumsteile[2].$datumsteile[1].$datumsteile[0].$value;
$fp = fopen('Files//'.$datei_name, "w");
fwrite($fp, $daten);
fclose($fp);
}
}
?>

<html>
<head><title>FreeSol Datenaktualisiierung</title></head>
<body>
<h2>Guten Tag,</h2>
die FreeSol-Datenaktualisierung wurde am <?=$teile[0];?> durchgeführt.
</body>
</html>

    • Einen cronjob bei www.my-cronjob.de einrichten, der das php-Skript einmal am Tag aufruft
    • Im Unterverzeichnis Files finden sich dann die täglich gespeicherten Daten, Datum ist den Filenamen vorangestellt.

pv-log.com

  • Zunächst muss für den Logger eine statische IP-Adresse angelegt werden.
  • Speichert und visualisiert auch die 5min-Werte dauerhaft
  • Beispielanlage: http://www.pv-log.com/Anlage/51.php

sonnenertrag.eu

Fehlende Informationen

Finden sich im Moment noch bei http://www.freesol.de/software.html

FreeSol Android - Eine kleine Applikation für das Smartphone

Mit dem App Inventor habe ich mal eine kleine App für das Smartphone versucht. Zeigt nur die Tagesdaten und die aktuelle Leistung, ist mehr als Demonstration dafür gedacht, was man alles machen kann.

Die App kann man hier oder über den abgebildeten QR-Code herunterladen.