Akku-Lade-Center ALC 8000/ALC 8500 Expert Teil 8/8

0,00
Aus ELVjournal 02/2006     0 Kommentare
 Akku-Lade-Center ALC 8000/ALC 8500 Expert Teil 8/8
Bausatzinformationen
ungefähr Bauzeit(Std.)Verwendung von SMD-Bauteilen.
39,5OK1/05

Inhalt des Fachbeitrags

PDF- / Onlineversion herunterladen

Linux ist in aller Munde, und wer sein ALC 8500 Expert im Bastelkeller an einem Zweitrechner betreibt, ist nicht immer bereit, sich noch eine Windows-Lizenz zu kaufen. Was liegt näher, als ein kostenloses Linux zu installieren. Mit diesem Artikel sind Sie in der Lage, ein Linux so zu konfigurieren, dass ein ALC 8500 Expert problemlos auch unter Linux mit einer Software fernsteuerbar ist. Die Beschreibungen sind sehr allgemein gehalten, so dass die Anleitung mit den verschiedensten Distributionen von Linux nachvollziehbar ist. Die Bildschirmfotos sind hier am Beispiel der Linux-Distribution Suse 10 64-Bit angefertigt.

Schrittweise zum Erfolg

Im ersten Schritt wird die Unterstützung für USB, die übrigens auch für viele andere Geräte von ELV funktioniert, eingerichtet. Anschließend wird die Laufzeitumgebung von Java angepasst bzw. installiert, falls sie noch nicht vorhanden ist. Damit die Java-Laufzeitumgebung überhaupt auf eine serielle Schnittstelle zugreifen kann, wird noch eine Erweiterung installiert. Ein kleines Testprogramm zeigt den Erfolg an, wenn die Konfigurationsarbeiten bis zu diesem Schritt korrekt ausgeführt wurden. Danach ist ChargeProfessional bereits startklar. Einige der nachfolgend verwendeten Dateien finden Sie kostenlos auf der Homepage von ELV zum Downloaden unter dem Link: http://www.elv-downloads. de/downloads/alc8xxx/alc8xxx.htm.

Treiber für USB

Bild 1: Auszug aus dem Quelltext für den USB-Treiber
Bild 1: Auszug aus dem Quelltext für den USB-Treiber

Dieser Treiber stellt unter dem Betriebssystem Linux für das Akku-Ladegerät ALC 8500 Expert eine virtuelle serielle Schnittstelle bereit. Die Schnittstelle trägt zumeist den Namen ttyUSB0 bzw. wird bei mehreren Geräten einfach eine fortlaufende Nummer angehängt (ttyUSB1, ttyUSB2 usw.). Wer bereits den Kernel 2.6.13 (z. B. in Suse 10 enthalten) oder höher installiert hat, kann direkt zum nächsten Schritt übergehen, da die notwendige Unterstützung ab dieser Version des Kernels bereits integriert ist. Falls der bestehende Kernel nicht vollständig durch eine neue Version ersetzt werden soll, reicht es aus, zwei Dateien im Quelltext durch eine andere Version auszutauschen und den bestehenden Kernel neu zu kompilieren. Die beiden Dateien sind üblicherweise abgelegt in diesem Verzeichnisbaum: /usr/src/linux-2.6.13-15/ drivers/usb/serial. Die Bezeichnung linux-2.6.13-15 ist selbstverständlich durch den Namen Ihrer Version zu ersetzen. Die beiden Dateien tragen die Namen ftdi_sio.c und ftdi_sio.h und enthalten die Version 1.4.3 des Treibers. Wenn Sie sich etwas mehr auskennen, werfen Sie einen genaueren Blick in die Datei ftdi_sio.h ab Zeile 146, wie in Abbildung 1 gezeigt. Für die Geräte UR 100 (USB-RS232-Umsetzer), UO 100 und UM 100 ist die Unterstützung standardmäßig aktiviert. In den Zeilen 162 bis 181 finden Sie weitere Geräte von ELV; falls Sie diesen Geräten auch einen virtuellen seriellen Port zuweisen möchten, kommentieren Sie die jeweiligen Zeilen in der Datei ftdi_sio.c ab Zeile 420 einfach aus.

Bild 2: Der Treiber für USB wurde erfolgreich geladen, das ALC 8500 Expert hat jetzt die virtuelle serielle Schnittstelle „ttyUSB0“.
Bild 2: Der Treiber für USB wurde erfolgreich geladen, das ALC 8500 Expert hat jetzt die virtuelle serielle Schnittstelle „ttyUSB0“.

Der Erfolg der Konfiguration lässt sich leicht feststellen. Stecken Sie einfach das USB-Kabel des ALC 8500 Expert in einen freien Anschluss am Computer und geben den Befehl dmesg in einer Konsole ein. Die letzten Meldungen des Kernels werden angezeigt. Das Bildschirmfoto Abbildung 2 zeigt eine erfolgreiche Einbindung des Treibers.

Bild 3: Das Programm „usbview“ zeigt alle erkannten Geräte in einer Baumstruktur an.
Bild 3: Das Programm „usbview“ zeigt alle erkannten Geräte in einer Baumstruktur an.

In diesem Fall wurde dem Gerät die Schnittstelle ttyUSB0 zugewiesen. Eine weitere Möglichkeit bietet das Programm usbview (siehe Abbildung 3). Dieses Programm zeigt alle angeschlossenen Geräte für den USB an. Geräte, welche nicht über einen passenden Treiber verfügen, werden rot dargestellt. Wenn das ALC 8500 Expert dort in schwarzer Schrift erscheint, hat alles geklappt. Das Programm usbview ist unter der GNU-Lizenz frei erhältlich und in vielen Distributionen von Linux bereits integriert.

Java einrichten …

Bild 4: Die Java-Entwicklungsumgebung wird installiert.
Bild 4: Die Java-Entwicklungsumgebung wird installiert.

Leider unterscheidet sich die Handhabung der Java-Umgebung je nach Distribution sehr stark. Zudem ist noch eine Erweiterung nachträglich zu installieren, auch hierfür unterscheidet sich leider die Vorgehensweise sehr. Glücklicherweise kann sich jeder Benutzer selbst eine Variante in seinem Home-Verzeichnis installieren. Eine Entwicklungsumgebung der JVM (Java Virtual Machine) kann kostenlos auf der Internet-Seite java.sun.com bezogen werden. Dabei ist nicht die rpm-Variante, sondern einfach das Binärfile herunterzuladen. In unserem Beispiel haben wir die Datei jdk-1_5_0_06-linux-amd64.bin verwendet. Nach dem Download werden mit folgendem Befehl die Rechte so gesetzt, dass die Datei ausführbar ist: chmod +x jdk-1_5_0_06-linux-amd64.bin. Schließlich wird mit dem Befehl ./jdk- 1_5_0_06-linux-amd64.bin die Installation gestartet.Abbildung 4 zeigt, wie es geht.


… und konfigurieren

Bild 5: Die Systemvariablen werden an die Installation angepasst.
Bild 5: Die Systemvariablen werden an die Installation angepasst.

Drei Systemvariablen müssen jetzt noch auf die frisch installierte Version angepasst werden: JAVA_HOME, JRE_HOME und PATH. Wir gehen hier davon aus, dass Java in dem Pfad /home/testuser/ jdk1.5.0_06 installiert ist. Entweder sind die nachfolgenden Befehle nach jedem Systemstart einzugeben oder die folgenden Zeilen werden zu der bash.rc hinzugefügt: Der Pfad /home/testuser/ jdk1.5.0_06 ist in jedem Fall an Ihre Installation anzupassen. Die Abbildung 5 zeigt, wie die bash.rc aussehen kann.

Bild 6: Die Konfiguration der Java-Entwicklungsumgebung wird überprüft.
Bild 6: Die Konfiguration der Java-Entwicklungsumgebung wird überprüft.

Der Befehl java –version auf einer Konsole zeigt die Version der „aktiven“ Java-Laufzeitumgebung an. Wenn diese der soeben installierten Version entspricht, war die Installation erfolgreich. Mit dem Befehl set | grep ”JAVA“ und set | grep ”JRE“ lässt sich jeweils prüfen, ob die Systemvariablen passend gesetzt sind. Die Abbildung 6 zeigt einen erfolgreichen Test.

Java und Hardware

Leider bietet Java standardmäßig keinen Zugriff auf serielle Schnittstellen, da diese Programmiersprache auf Plattformunabhängigkeit ausgelegt ist. Es gibt jedoch einige Erweiterungen, die diesen Zugriff erlauben. Eine solche Erweiterung ist RXTX, dieses Paket ist über die GNU-Lizenz kostenlos erhältlich auf der Internet-Seite www. rxtx.org. Im Downloadbereich dieser Seite sind auch die zugehörigen Quelltexte erhältlich, nachfolgend beschrieben ist die Variante RXTX 2.1, die Datei heißt dort rxtx-2.1-CVS-20050120.tar.gz. Dieses Archiv wird zunächst in ein neues Verzeichnis ausgepackt. Eine detaillierte Anleitung zum Einrichten enthält die Datei INSTALL des Archivs. Damit immer nur ein Prozess gleichzeitig auf eine serielle Schnittstelle zugreifen kann, gibt es den so genannten lock-daemon. Dazu muss der angemeldete Benutzer die entsprechenden Rechte besitzen, in diesem Fall muss er Mitglied der Gruppe UUCP sein. Falls der angemeldete Benutzer weder Mitglied dieser Gruppe ist noch hinzugefügt werden kann, installiert man die Erweiterung ohne den lock-daemon. Allerdings wird dann nicht überwacht, ob zwei Prozesse gleichzeitig auf eine Schnittstelle zugreifen. Diese Vorgehensweise wird nicht empfohlen.

Bild 7: Die Erweiterung RXTX wurde erfolgreich kompiliert.
Bild 7: Die Erweiterung RXTX wurde erfolgreich kompiliert.

Mit dem Befehl ./configure bzw. ./configure --disable-lockfiles für die Installation ohne lock-daemon, wird die Konfiguration vorbereitet. Mit einem abschließenden make install wird die Erweiterung erstellt und die erzeugten Dateien automatisch in die entsprechenden Verzeichnisse der Java-Laufzeitumgebung kopiert. In der Abbildung 7 ist zu sehen, wie ein erfolgreicher Kompiliervorgang aussieht. Damit dieser Schritt funktioniert, müssen die Pfade – wie bei der Installation der Java-Umgebung beschrieben – korrekt in den Systemvariablen eingetragen sein.

Noch ein Test …

Bild 8: Ein Aufruf des Testprogramms „Show- Comm- Ports“
Bild 8: Ein Aufruf des Testprogramms „Show- Comm- Ports“

Ebenfalls im Archiv aus dem Download von ELV ist die Datei ShowCommPorts. java. Kompiliert wird dieses Programm mit dem Befehl javac ShowComm- Ports.java. Wenn jetzt keine Fehlermeldungen erscheinen, war das Kompilieren erfolgreich. Starten Sie das Programm mit dem Befehl java ShowCommPorts. Das Programm gibt alle verfügbaren seriellen Schnittstellen aus. Falls das ALC 8500 Expert ebenfalls angeschlossen ist, wird es (meist) als ttyUSB0 angezeigt. In der Abbildung 8 sehen Sie ebenfalls einen erfolgreichen Programmlauf. Die Installation war erfolgreich!

… und jetzt geht es los

Ebenfalls im Downloadbereich von ELV zum ALC 8500 Expert gibt es die Linux-Variante von ChargeProfessional. Nach dem Auspacken des Archivs wird das Programm mit dem Befehl java -jar cp2005_v160. jar gestartet. Selbstverständlich können Sie sich hierzu auch eine Verknüpfung auf dem Desktop anlegen. Die Abbildungen 9 und 10 zeigen, wie ChargeProfessional auch unter Linux das ALC 8500 Expert bedient. Bei Problemen sind die Dateien error. txt und log.txt hilfreich, die im Programmverzeichnis von ChargeProfessional automatisch angelegt werden.

Bild 9: Das Hauptfenster von ChargeProfessional – hier in der Linux-Variante
Bild 9: Das Hauptfenster von ChargeProfessional – hier in der Linux-Variante
Bild 10: Starten eines Ladevorgangs in der Linux-Variante von ChargeProfessional
Bild 10: Starten eines Ladevorgangs in der Linux-Variante von ChargeProfessional
Mit dieser Anleitung schließt die Artikelserie rund um das ALC 8500 Expert. Damit haben Sie einen umfassenden Überblick über die Interna des ALC erhalten, kennen das Übertragungsprotokoll und können es jetzt sogar unter Linux verwenden.

Fachbeitrag online und als PDF-Download herunterladen

Inhalt

Sie erhalten den Artikel in 2 Versionen:

online  als Online-Version

pdf  als PDF (4 Seiten)

Sie erhalten folgende Artikel:
  • Akku-Lade-Center ALC 8000/ALC 8500 Expert Teil 8/8
    • 1 x Journalbericht
Produkteweitere FachbeiträgeForen


Hinterlassen Sie einen Kommentar:
  Name
  E-Mail
KATEGORIEN
DAS KÖNNTE SIE AUCH INTERESSIEREN