[ Home > Der Palm Vx als Datenlogger ]

Die Idee

Die Idee, mit einem Palm Vx die RS232-Schnittstelle des KACO-Wechselrichters auszulesen, stammt von werner112 aus dem Photovoltaikforum. Herzlichen Dank an dieser Stelle nochmals an Werner! Zur Weiterentwicklung des Loggerprogramms hat der User solex aus dem Forum ebenfalls erheblich beigetragen.

Die Vorteile dieses Datenloggers:
  • kostengünstig, da der Palm Vx inzwischen schon recht alt ist
  • wenig Platzbedarf
  • wenig Energiebedarf
Nachteile:
  • keine automatische Internetanbindung wie bei professionellen Datenloggern
  • etwas Bastelaufwand notwendig
  • für jeden einzelnen Wechselrichter braucht man je einen Palm, es ist nicht möglich, die RS485-Schnittstelle zu nutzen

Die Methode profitiert davon, dass der KACO Wechselrichter die Daten im Klartext automatisch alle 10 Sekunden an die Schnittstelle schreibt, sobald er erkennt, dass die Schnittstelle angeschlossen ist. Andere Wechselrichter können so ohne weiteres nicht ausgelesen werden. Manche Wechselrichter fordern ein spezielles Schnittstellenprotokoll, bei dem die Werte gezielt abgefragt werden müssen.

Technische Realisierung

Man benötigt:

Folgende PINs werden angeschlossen:

WR SteckerPalm Stecker
PIN 2 ---- PIN 3 RXD
PIN 3 ---- PIN 2 TXD
PIN 4 ---- PIN 6 DTR
PIN 5 ---- PIN 5 GND
Da mit dem Kaco Wechselrichter kein Handshake erfolgt, sind genaugenommen nur 2 Pins notwendig, PIN 3 und PIN 5 auf der WR-Seite, und PIN 2 und PIN 5 auf der Palm-Seite. Die Schirmung sollte mit PIN 5 (GND) verbunden werden.

Software

Das Loggerprogramm auf dem Palm ist in Hotpaw Basic geschrieben. Informationen und eine Demoversion dieses Interpreters findet man unter

http://www.hotpaw.com/rhn/hotpaw/.

Die Demoversion erlaubt den Test für 30 Tage, anschließend erscheinen zur Laufzeit Hinweisausgaben. Eine Lizenz gibt es für wenig Geld z.B. bei www.pdassi.de.

Das Basic-Programm wird im Palm als Memo gespeichert. Hotpaw Basic erkennt aus den Memos diejenigen als ausführbare Programme, deren erste Zeile mit einem # beginnt und mit der Zeichenfolge ".bas" endet. Da ein Memo im Palm maximal 4 KB groß sein darf, ist die Komplexität der Programme begrenzt. Umgehen lässt sich das Problem durch den #include-Befehl, so dass Programmteile in andere Memos ausgelagert werden können.

Die Daten werden ebenfalls in einem Memo gespeichert. Auch hier gilt natürlich die Grenze 4 KB, was bedeutet, dass an einem langen Sommertag die Daten nicht im 5-Minuten-Abstand alle in einem einzigen Memo gespeichert werden können.

Beschreibung des Loggerprogramms

Das Hauptprogramm dKaco_1g.bas initialisiert die Variablen und die Grafik und besteht im wesentlichen aus einer Endlosschleife mit 3 weiteren Schleifen

Zwischen den ersten beiden Schleifen werden die Variablen für Sonnenauf- und -untergang initialisiert und mit dem ausgelagerten Programm #sonne.bas berechnet. Die Formeln für diese Berechnung sind entnommen aus http://lexikon.astronomie.info/zeitgleichung/. Zwischen "Warten auf Sonnenaufgang" und der Datenaufnahme wird die Grafik initialisiert, die Schnittstelle geöffnet und ein neues Memo für die Tagesdaten geöffnet. Innerhalb der Hauptschleife in dKaco.bas wird ggf. das Datenmemo geschlossen, wenn eine bestimmte Zeilenanzahl geschrieben wurde und ein neues Datenmemo geöffnet.

Programm-Code (Stand März 2008):

Hauptprogramm #dKaco_1g.bas

Ausgelagerte Hauptschleife #dKaco.bas (include)

Berechnung Sonnenaufgang/untergang #sonne.bas (include)

Hinweis: Die obigen Programmdateien sind reine Textdateien. Die Verwendung der Programme unterliegt der Verantwortung des jeweiligen Benutzers. Ich übernehme keine Haftung für Schäden, die evtl. bei der Verwendung der Programme auftreten könnten.

Weitere nützliche Programme für den Palm Vx sind: