Banana Pi Raspberry Pi

PiXtend: Inbetriebnahme mit Linux-Tools oder CODESYS

PiXtend vereint zahlreiche Schnittstellen und Schaltmöglichkeiten auf einem Board und bietet damit eine optimale Grundlage für individuelle Projekte und Hausautomation. Im Artikel PiXtend: Hardware für anspruchsvolle Projekte und Hausautomation wurden das Board und dessen Hardwarevarianten bereits ausführlich vorgestellt. Im Folgenden wird gezeigt wie man bei der Inbetriebnahme des Boards, spezielle bei der Installation der Software, vorgehen muss.

PiXtend Hardware: Lötarbeiten und Inbetriebnahme

Das PiXtend-Board ist in mehreren Varianten und unterschiedlichen Bausätzen erhältlich. Wer sich für einen Bausatz zum selber basteln entscheidet, der sollte die Lötarbeiten mit großer Sorgfalt angehen, um das Board vor Beschädigungen zu schützen. Eine Überprüfung der Platine durch eine zweite erfahrene Person ist an dieser Stelle empfehlenswert (für ungeübte Bastler). Ein Test des Boards mit Multimeter / Durchgangsprüfer ist selbstverständlich sinnvoll.

Im Downloadbereich der PiXtend-Webseite findet man unter der Überschrift Schaltpläne, Layouts und Bestückungspläne das erforderliche Material um das Board zu erstellen / zu bearbeiten.

Nach dem Fertigstellen der Platine kann der Raspberry Pi montiert werden. Andere kompatible Einplatinencomputer können via Adapterplatine befestigt werden.

PiXtend Software: Linux-Tools und CODESYS

Linux-Tools: pixtendtool und pxauto

Die Vielseitigkeit und Individualität von PiXtend spiegelt sich ebenfalls in der Software wieder. Eine Möglichkeit zum arbeiten PiXtend ist die Verwendung der mitgebrachten Linux-Tools pixtendtool und pxauto. Beide Programme sind in der Programmiersprache C geschrieben. Pixtendtool ist angelehnt an ein gewöhnliches Linux-Konsolenprogramm, welches durch Übergabe entsprechender Parameter bei Aufruf die Operation einmalig ausführt. Dagegen bietet pxauto eine “grafische” Oberfläche in der Konsole und tauscht zyklisch Daten mit dem PiXtend Board aus. Dadurch können die einzelnen Zustände der Ein- und Ausgänge live betrachtet werden. Beide Tools arbeiten mit der WiringPi-Bibliothek.

PiXtend Image mit Raspbian

Wer sich für die Verwendung der Linux-Tools entscheidet, um mit PiXtend zu arbeiten, kann das Board ganz bequem mit einem vorinstallierten Image in Betrieb nehmen. Das PiXtend Image beinhaltet Raspbian und hat sowohl die Linux-Tools, als auch andere notwendige Treiber und Bibliotheken bereits vorinstalliert:

  • Linux-Tools (pxdev mit pixtendtool & pxauto, C-Library und Make-Files)
  • wiringPi Library
  • rcswitch-pi 433 MHz-Transmitter Tool
  • Real-Time-Clock eingerichtet (python-smbus / i2c-tools)
  • Kernel Module für I2C, SPI und RTC werden automatisch geladen
  • Lauffähig auf allen Raspberry Pi Varianten (A, B, B+, 2 B)

Das vorbereitete Image kann im Downloadbereich der PiXtend Webseite unter der Überschrift PiXtend SD-Karte heruntergeladen werde. Nach dem Download muss das Image aus dem Archiv entpackt werden. Beim Erwerb von PiXtend ist dieses Image alternativ auch auf einem beiliegenden USB-Stick abgelegt.

Zum Schreiben des Images benötigt man das Tool Win32 Disk Imager (Windows). Dieses muss heruntergeladen und installiert werden. Anschließend kann eine Speicherkarte in den Computer geschoben und der Disk Imager gestartet werden.

Sreenshot Win32 Disk Imager

Sreenshot Win32 Disk Imager

Sreenshot Win32 Disk Imager

Sreenshot Win32 Disk Imager

Über den Ordnerbutton selektieren wir zu dem heruntergeladenen PiXtend Image (Alternativ zum Image auf dem beigelegten USB-Stick) und wählen dieses aus. Der Pfad zur Imagedatei steht dann im Feld mit dem Bezeichner Image File. Mit Hilfe des Auswahlfeldes Device wählen wir die zu verwendende Speicherkarte aus. Dabei ist zu beachten, dass man wirklich das richtige Gerät auswählt, da sonst das falsche Laufwerk beschrieben wird. Mit dem Button Write kann abschließend der Schreibvorgang vom vorgefertigten PiXtend Image auf die SD-Karte gestartet werden. Ein kleines Fenster fasst vor dem Schreibvorgang nochmal alle Angaben zusammen und muss bestätigt werden. Der Schreibvorgang dauert anschließend ein kleine Weile.

Jetzt kann die SD-Karte in des Raspberry Pi geschoben und genutzt werden. Sichtbar wird ein gewohntes Raspbian. Mit dem Befehl raspi-config kann der gewohnte Einrichtungsassistent gestartet werden.

PiXtend Linux-Tools manuell installieren

Möchte man einen Raspberry Pi mit bereits lauffähigem System / Image im Zusammenspiel mit PiXtend verwenden, dann können die Linux-Tools problemlos nachinstalliert werden. Ebenfalls im Downloadbereich der PiXtend Webseite findet man unter der Überschrift Paket – pxdev das Paket / Archiv pxdev. Dieses beinhaltet die Treibersoftware, als auch die Linux-Tools pixtendtool und pxauto. Vorher installieren wir zunächst einmal alle notwendigen Pakete und nehmen entsprechende Einstellungen vor.

WiringPi

PiXtend verwendet die Bibliothek WiringPi. Falls diese noch nicht auf dem Pi installiert ist, kann dies mit der folgenden Befehlsfolge nachgeholt werden.

Zunächt benötigen wir git-core (falls noch nicht installiert) um dann im Anschluss WiringPi herunterzuladen.

sudo apt-get install git-core
git clone git://git.drogon.net/wiringPi

Nach dem Download wechseln wir in das Verzeichnis von WiringPi und führen zur Installation den Build-Skript aus.

cd wiringPi
./build

Nachdem WiringPi installiert wurde, sind die folgenden Pakete noch notwendig, welche wir mit diesem Befehl installieren:

sudo apt-get install libncurses5-dev libncursesw5-dev

SPI-Modul aktivieren mit raspi-config

PiXtend arbeitet über die SPI-Schnittstelle, sodass diese noch aktiviert werden muss (falls noch deaktiviert). Eine einfache Möglichkeit SPI zu aktivieren ist über das Konfigurationsmenü raspi-config.

raspi-config

Dort navigieren wir zu Advanced Options und anschließend SPI. Im folgenden Dialog aktivieren wir SPI (enable) und bestätigen das automatische Laden des Kernelmoduls.

Optional: SPI-Modul manuell aktivieren

Zur manuellen Aktivierung des SPI-Moduls bearbeiten wir mit dem Editor nano die Datei raspi-blacklist.conf.

sudo nano /etc/modprobe.d/raspi-blacklist.conf

In der Datei suchen wir die Zeile mit blacklist spi-bcm2708 und kommentieren diese durch das davor setzen einer Raute (#) aus:

#blacklist spi-bcm2708

Anschließend kann die Datei mit der Tastenkombination Strg+x, Y und Enter gespeichert und geschlossen werden.

Weiterhin bearbeiten wir die /etc/modules.

sudo nano /etc/modules

Dort fügen wir eine neue Zeile ans Ende mit dem folgenden Inhalt. Danach kann diese ebenfalls geschlossen werden.

spidev

pxdev herunterladen und kompilieren

Abschließend können die PiXtend Linux-Tools heruntergeladen und kompiliert werden. Die Tools befinden sich im Paket pxdev (Zip-Archiv) und stehen im Downloadbereich der Entwicklerwebseite bereit. Gleichzeitig kann die aktuellste Version immer über Git heruntergeladen werden.

git clone git://git.code.sf.net/p/pixtend/pxdev pxdev
cd pxdev

Je nach Überarbeitung und Fortschritt des Tools können die Dateinamen und damit auch der Downloadlink mit der Zeit abweichen. Die hier gezeigte Variante, ist die zum Veröffentlichungsdatum aktuelle Version.

PiXtend Tools Ordner (Screenshot Windows)

PiXtend Tools Ordner (Screenshot Windows)

Unter Windows habe ich das Archiv ebenfalls mal heruntergeladen und entpackt. Der folgende Inhalt befindet sich also im gerade auf dem Pi entpackten Archiv: Für jedes Tool und die Libary einen eigenen Ordner. Ein Build-Skript ermöglicht abschließend das Kompilieren der PiXtend Tools pixtendtool und pxauto. Bevor wir diesen ausführen, müssen noch die entsprechenden Rechte gesetzt werden.

chmod +x ./build
./build

Nachdem alles installiert ist, machen wir einen Neustart um die SPI-Einstellungen zu übernehmen.

sudo reboot now

Um die PiXtend-Tools zu verwenden müssen wir in die entsprechenden Ordner wechseln und die Tools mit sudo ausführen, da WiringPi diese Rechte benötigt.

pixtendtool:

cd pxdev/pixtendtool
sudo ./pixtendtool

pxauto:

cd pxdev/pxauto
sudo ./pxauto

pxauto (Bild: pixtend.de)

pxauto (Bild: pixtend.de)

pixtendtool (Bild: pixtend.de)

pixtendtool (Bild: pixtend.de)

CODESYS statt Linux-Tools

Neben der Lösung mit Raspbian und den Linux-Tools kann CODESYS verwendet werden. CODESYS V3 ist eine hardwareunabhängige Programmierumgebung von der Firma 3S-Smart Software GmbH. Dabei wird das PiXtend-Board in gängigen Programmiersprachen für speicherprogrammierbare Steuerungen (ST, AWL, KOP, FUP) entwickelt. Die Programmierung mit CODESYS läuft dabei über eine Programmieroberfläche an einem Windows PC. Die Übertragung des entwickelten Quellcodes wird dann über Ethernet auf den Raspberry Pi erledigt. Weiterhin bringt die Umgebung eine eigene Webvisualisierung mit, welche beliebig angepasst werden kann.

CODESYS (Bild: pixtend.de)

CODESYS (Bild: pixtend.de)

SD-Karte

Für die Inbetriebnahme mit CODESYS muss der Raspberry Pi bzw. dessen SD-Karte mit einem speziellen Image beschrieben werden. Dieses Image kann im Downloadbereich der PiXtend Webseite unter der Überschrift PiXtend SD-Karte heruntergeladen werde. Das Image beinhaltet Raspbian mit einer vorinstallierten CODESYS-Laufzeitumgebung. Nach dem Download muss das Image aus dem Archiv entpackt werden. Beim Erwerb von PiXtend ist dieses Image alternativ auch ebenfalls auf einem beiliegenden USB-Stick abgelegt. Folgende Komponenten sind auf dem System vorinstalliert:

  • CODESYS Runtime V3.5.6.0 (PiXtend for CODESYS-Package 2.1.0.0)
  • PiXtend-Demoproject C startet automatisch ( Sofort erreichbar unter: http://:8080/webvisu.htm )
  • wiringPi Library
  • rcswitch-pi (433 MHz-Transmitter)
  • Real-Time-Clock eingerichtet (python-smbus / i2c-tools)
  • Kernel Module für I2C, SPI und RTC werden automatisch geladen
  • Lauffähig auf allen Raspberry Pi Varianten (A, B, B+, 2 B)

Das Schreiben des Images funktioniert ebenfalls mit dem Win32 Disk Imager (siehe Linux Tools). Man Selektiert das heruntergeladene Image und die eingeschobene SD-Karte – dann kann der Schreibvorgang gestartet werden. Nach dem Schreibvorgang ist die SD-Karte bereit für den Einatz im Pi.

Sreenshot Win32 Disk Imager

Sreenshot Win32 Disk Imager

Sreenshot Win32 Disk Imager

Sreenshot Win32 Disk Imager

CODESYS Entwicklungsumgebung (Windows)

Die CODESYS Entwicklungsumgebung kann bei der Herstellerwebseite heruntergeladen bzw. angefordert werden. Dazu findet man im Bereich Passwortanforderung ein Formular, in welchem Sie sich einen Zugang per Mail anfordern können. Die Rückmeldung wird durch einen Mitarbeiter von CODESYS überprüft. Per E-Mail erhält man daraufhin den Zugang zum geschützten Downloadbereich von CODESYS und kann die Entwicklungsumgebung herunterladen.

Am besten installiert man CODESYS zunächst mit den Standardeinstellungen, wobei als Feature Set “Professional” zu wählen ist. Nach der Installation steht eine vollwertige CODESYS Entwicklungsumgebung bereit.

Damit man CODESYS mit dem Raspberry Pi verwenden kann, benötigt man eine CODESYS Control Laufzeitumgebung für den Raspberry Pi. Diese ist im Shop von CODESYS nach einer erneuten Anmeldung erhältlich.

Im Archiv befindet sich zum einen das entsprechende Image, welches wir aber schon von der PiXtend Webseite heruntergeladen und installiert haben. Zum anderen findet man ein CODESYS Package, welches CODESYS zur Verwendung mit dem Raspberry Pi konfiguriert und Beispielprojekte erzeugt. Die CODESYS Package Datei kann ebenfalls im Downloadbereich von PiXtend unter der Überschrift CODESYS Package heruntergeladen werden.

Durch das Öffnen der CODESYS Package Datei wird CODESYS Paketmanager gestartet. Dieser beginnt automatisch die Installation der Raspberry Laufzeit Komponenten für CODESYE in den Default Einstellungen. Jetzt kann CODESYS auf dem Pi verwendet werden.

Hinweis: CODESYS Control für den Raspberry Pi ist zunächst nur eine Demo-Version (mit voller Funktionalität). Diese ist auf 2 Stunden Laufzeit beschränkt. Nach Ablauf der 2 Stunden beendet sich die Laufzeitumgebung automatisch bis zum nächsten Neustart. Nach jedem Neustart kann der Raspberry Pi wieder für volle 2 Stunden ohne Einschränkungen benutzt werden.

Linux-Tools und CODESYS im Parallelbetrieb

Sowohl die Linux-Tools als auch CODESYS laufen mit einem Raspbian-Unterbau. Da liegt es nahe auch beide Systeme gleichzeitig zu verwenden: Dies ist aber gegenwärtig nicht möglich, da beide auf die selben Ressourcen für GPIOs und SPI zugreifen. Vom Entwickler ist es bisher ebenfalls nicht vorgesehen, dass beides parallel betrieben wird. Wer standardmäßig CODESYS verwendet (Autostart beim Boot), aber dennoch die Linux-Tools verwenden möchte, der muss die CODESYS Runtime auf dem Pi anhalten:

sudo service codesyscontrol stop

Nachdem CODESYS gestoppt wurde, können die Linux-Tools verwendet werden. Zum erneuten Start von CODESYS kann folgender Befehl aufgerufen werden:

sudo service codesyscontrol start

Quellen: PiXtend, CODESYS

Hinterlasse eine Antwort

Kommentar