Ich wollte schon immer meine Roboter Autos mit einem Spiele Controller wie einem Playstation 4 Controller steuern. Dieser Typ von Controller sind weit verbreitet und lassen sich auch unter Raspbian an einem Raspberry Pi anschließen. In den letzten Tage habe ich dazu ein kleines Programm geschrieben, dass auf meinen schon vorhandenen Programmen von “pygame” aufsetzt. Dieses Programm mit meiner kleinen Modifikation ermöglicht es einen Roboter mit Raspberry Pi Hardware mit einem PS4 Controller zu steuern. Dazu habe ich diesen mit einem Wireless USB-Adapter an meinem Raspberry Pi angeschlossen.

Das Programm verwendet den rechten Joystick des Gamepads. So kann ich das Auto lenken und es macht einfach richtig Spaß mit der Steuerung über den Controller durch die Wohnung zu fahren. Das folgende Bild zeigt mein Roboter Auto mit dem PS-4 Controller.

Raspberry Pi Playstation 4 Controller Roboter Auto Steuerung

Raspberry Pi Playstation 4 Controller Roboter Auto Steuerung

Ich hatte schon zwei Artikel über die Verwendung der Playstation Controller an einem Raspberry Pi Computer geschrieben. Dabei ging es um den PS-3 Controller sowie um den PS-4 Controller. Beide lassen sich an einem Raspberry Pi anschließen. Wobei ich ganz klar Empfehle den PS-4 Controller mit dem USB-Adapter zu verwenden. Diese Kombination funktioniert ohne großen Konfigurationsaufwand sehr zuverlässig.

Artikelübersicht

Playstation PS3 Controller (Bluetooth) einrichten am Raspberry Pi
Playstation PS4 Controller (dualshock) einrichten am Raspberry Pi

Das folgende Bild zeigt den USB Adapter und den PS-4 Controller.

Raspberry Pi Playstation 4 Controller Roboter Auto Steuerung USB

Raspberry Pi Playstation 4 Controller Roboter Auto Steuerung USB

Software Roboter Auto Steuerung pygame

Das Programm habe ich mit einem Sony Playstation 4 Controller getestet. Es sollte aber vom Prinzip eigentlich mit jeden unter Raspbian unterstützten Controller funktionieren. Es könnte lediglich sein, dass die Nummerierung der Achsen des Joysticks angepasst werden müssen. Das Programm selber muss auf der grafischen Oberfläche von Raspbian ausgeführt werden. Andernfalls funktioniert die PyGame Bibliothek nicht da diese einen X-Screen erwartet. Ich starte dazu noch das Programm manuell über den TightVNCserver remote und steuere anschließend den Roboter mit dem PS-4 Controller.

Das folgende Bild zeigt das Programm wie es aussieht nach dem es gestartet wurde.

Sony PS-4 controller python program

Sony PS-4 controller python program pygame

Das Python Programm gibt es hier zum download: PS4 Controller joystick test

Zusammenfassung

Ich war tatsächlich erstaunt wie einfach mit PyGame als Python Bibliothek ein PS4 Controller in meine Programme integriert werden kann. Ich stellte mir das immer wesentlich schwieriger vor. Aber mit dem Test Programm von PyGame ist es möglich die Achsen und Buttons des Controller sich anzeigen zu lassen wenn man diese drückt. So ist es dann sehr einfach gewesen die Steuerung für das Roboter Auto zu programmieren.

Der Roboter selber lässt sich ganz gut mit dem ersten Wurf des Programmes steuern und es macht richtig Spaß so durch die Wohnung zu fahren.

(Visited 2.997 times, 1 visits today)