WiringPi2 Bibliothek für Python
WiringPi2 ist eine zusätzliche Bibliothek um mit der GPIO Schnittstelle vom Raspberry Pi zu arbeiten. Für die meisten Anwendungen ist sie wenig sinnvoll, da man mit der GPIO Bibliothek schneller ans Ziel kommt, für die Ansteuerung analoger Geräte ist sie perfekt geeignet. Ich zeige euch wie man WiringPi2 installiert und verwendet.
WiringPi2 Bibliothek für Python
Ursprünglich wurde WiringPi in C implementiert und auch nur für diese Programmiersprache. Da diese Bibliothek recht schnell Beliebtheit fand wurde sie auch für Python, Perl und Ruby konvertiert und steht somit unseren Python Projekten am Raspberry Pi zur Verfügung. Die Bibliothek ist im standard Betriebssystem nicht verfügbar, weshalb wird diese erst manuell nachinstallieren. Das geht so:
Installation
Für die Installation einer zusätzlichen Python Bibliothek führen wird folgende Zeilen im Terminal aus:
sudo apt-get update sudo apt-get install python-dev python-pip
Eventuell ist der Installer für Python Bibliotheken (python-pip) bereits installiert, dann erspart man sich diese Installation. Falls dies bereits am System verfügbar ist wird in der Kommandozeile darauf hingewiesen.
Python Bibliotheken wie zum Beispiel WiringPi werden folgendermaßen installiert:
sudo pip install wiringpi2
Dabei werden die Quelldateien herunter geladen, diese kompiliert und stehen als neue Python Bibliothek bereit. Der Erfolg der Installation wird durch folgende Information auf der Kommandozeile angezeigt:
Successfully installed wiringpi2 Cleaning up...
Installation testen
In der interaktiven Python Umgebung kann man die erfolgreiche Installation der Bibliothek sehr einfach testen. Folgende Befehle sind dazu in der Kommandozeile einzugeben:
sudo python import wiringpi2 wiringpi2.piBoardRev()
Sofern alles funktioniert wird ein Wert ausgegeben. Funktioniert etwas nicht erscheint anstatt der Ziffer 2 eine Fehlermeldung. Im Zweifelsfall sollte man prüfen ob man nicht doch einen Tippfehler im Code hat. In meinem ersten Versuch hatte ich wiringpi anstatt wiringpi2 geschrieben.
Dokumentation und Beispiele
Dir wiringpi2 Bibliothek wird in Python Scripts über folgenden Import verwendet:
import wiringpi2 as wiringpi
Wie man mit der Bibliothek arbeitet zeigen einige Beispiele auf der GitHub Projektseite. Dort findet man übrigens auch den kompletten Source Code und kann im Detail nachlesen wie Befehle implementiert sind.
In diesem kleinen Exkurs habe ich euch nun WiringPi2 vorgestellt. Richtig gearbeitet haben wir damit noch nicht. Die Installation war nur eine Vorarbeit für die nächsten Artikel in denen ich die Bewegungssteuerung meines Raspberry Pi Roboters weiter verbessern möchte. Der Raspberry Pi hat von sich aus keine Möglichkeit um über die GPIO Schnittstelle analoge Signale zu senden – für die Steuerung meiner Motoren ist das jedoch notwendig, möchte man die Geschwindigkeit regulieren. Aktuell gibt es nur zwei denkbare Zustände: 0 für den still stehenden Motor und 1 für den drehenden Motor unter maximaler Umdrehungsgeschwindigkeit.
Fazit
WiringPi2 ist eine in C geschriebene Bibliothek in der die Funktionen der GPIO Schnittstelle am Raspberry Pi abgebildet und in etwas erweiterter Form zur Verfügung stehen. Diese Bibliothek steht auch für andere Programmiersprachen, unter anderem Python zur Verfügung. In meinem Fall werde ich sie dafür verwenden um analoge Signale an die angeschlossenen DC Motoren zu senden um damit die Geschwindigkeit zu regulieren. Wie das funktioniert und warum werde ich im nächsten Artikel zeigen.