Buchempfehlung:
Roboter-Autos mit dem Raspberry Pi

Roboter Autos mit dem Raspberry Pi

Nach dem das Donkeycar soweit aufgebaut ist und die Lenkung für die linke und rechte Kurvenfahrt kalibriert wurde ist der nächste Schritt die Erfassung der Trainingsdaten. Dazu wird der Kurs abgefahren und ein paar 10.000 Bilder der Strecke für Traingszwecke aufgenommen. Das hört sich jetzt so leicht an ist es aber nicht. Denn es müssen ein paar Vorbereitungen getroffen werden. Dazu gehört die Verwendung eines Joysticks um mehr oder weniger analoge Lenk- und Beschleunigungswerte zu erhalten. Das ist mit einer Tastatur die lediglich 0 (kein Ausschalg) oder 1 (voll Ausschalg) kennt nicht möglich. Weiter muss die Strecke, also die Fahrbahn markiert werden, mit z. B. hellem Klebeband das auf dem Boden angebracht wird. Ich habe mich für Nahtband beschwert mit einem Bleiband entschieden da ich dieses einfach wiederverwenden kann.

Donkeycar lane line

Donkeycar lane line

Gamepad & Co für die Steuerung

Mit einem Playstation Controller für die Steuerung des Donkeycars habe ich sehr gute Erfahrungen gemacht bei der Aufzeichnung der Lenkbewegungen und Beschleunigungswerte. Auf der Donkeycar Seite ist auch beschrieben wie ein Playstation 3 Controller (PS3) verwendet werden kann. Ich habe eine kleine Anleitung auf deutsch verfasst wie ich den PS3 Controller am Donkeycar also am Raspberry Pi SBC zum Laufen gebracht habe. Die Anleitung ist über den folgenden Link aufrufbar: Playstation PS3 Controller (Bluetooth) einrichten am Raspberry Pi

Hinweis:

Allerdings war ich mit dem PS3 Controller nicht zufrieden. Durch die notwendige Softwareinstallation und dem fortgeschrittenen Alters des Controller lief dieser nicht zuverlässig. So hätte ich z. B. den Akku tauschen müssen und auch musste ich immer wieder Programme starten und die Kopplung neu durchführen damit der PS3 Controller am Raspberry Pi funktioniert.

So habe ich noch einen Playstation 4 Controller (PS4) gekauft und diesen getestet. Dieser ist neu günstiger als der PS3 Controller aber kann nicht via Software und Bluetooth an den Raspberry Pi gekoppelt werden. Daher benötigt man noch den Sony USB Bluetooth Adapter der die Kopplung vornimmt und so sehr zuverlässig am Raspberry Pi ohne Softwareinstallation funktioniert. Die Beschreibung und benötigten Komponenten habe ich im folgenden Artikel zusammengefasst: Playstation PS4 Controller (dualshock) einrichten am Raspberry Pi

Mit dem PS4 Controller ist die Erfassung der Trainingsdaten kein Problem und das fahren von sauberen Runden ohne Fehler funktioniret nach etwas Übung sehr gut.

Raspberry Pi Playstation 4 controller mit Sony USB Adapter

Raspberry Pi Playstation 4 controller mit Sony USB Adapter

Donkeycar Fahrbahnmarkierung

Das Ziel das mit dem Training des Donkeycars primär verfolgt wird ist, dass es innerhalb einer Fahrbahnbegrenzung autonom fahren kann. Dazu muss man diese in Form von Linien auf dem Boden auftragen. Eine sehr gute Lösung wäre natürlich die Linien mit Farbe dauerhaft anzubringen. So könnten diese Farblinien nicht verrutschen und währen dauerhaft für weitere Trainingsrunden vorhanden. Allerdings wäre das Ändern des Streckenverlaufes so nicht gut möglich. Eine weitere Lösung ist Klebeband die man häufig sieht. Allerdings werde ich die Teststrecke in unserer Wohnung aufbauen und kann hier kein Klebeband auf dem Holzfußboden anbringen. Auch wäre es optisch nicht sehr schön wenn das Klebeband mehrere Wochen gar Monate angebracht wäre. Weiter erzeugt man mit Klebeband natürlich sehr viel Abfall was auch nicht sein muss.

Daher habe ich mich auf die Suche gemacht nach einer Lösung die das Klebeband oder die Farbe ersetzt. Ich habe mir jetzt zwei 50mm breite und 50m lange Stoffbänder gekauft nach dem die 20mm breiten Bänder etwas zu schmal waren und sich nicht gut vom Boden abgehoben haben. Genauer gesagt handelt es sich um Nahtband der Qualitätsstufe B-Ware welches ich günstig auf eBay erhalten habe. Damit das Band nicht so leicht verrutscht und sich auch gut um Kurven legen lässt habe ich für die Beschwerung noch 100m Bleiband 50g/m dazu gekauft. Das Bleiband habe ich auf das Nahtband oben aufgenäht und so beschwert das Bleiband das Nahtmband und liegt stabil am Boden.

Das Bild zeigt das Nahtband (20mm breite Variante) und das Bleiband wie dieses geliefert wurde.

Donkeycar - lane line design

Donkeycar – lane line design

Bänder vernähen

Das Nähen war doch etwas schwieriger als gedacht. Denn das Bleiband ist recht dick und somit funktionierte der automatische Transport der Nähmaschine nicht mehr richtig. Das hatte zur Folge, dass ich immer manuell das Naht- und Bleiband etwas unter dem Fuß der Nähmaschine nach hinten ziehen musste. Da man als Mensch das aber nicht so gut hinbekommt habe ich auf 100m Naht ca. 15 Nadeln abgebrochen. Da ich das schon ahnte hatte ich mir zu Beginn der Aktion 20 Ersatznadeln gekauft gehabt.

Das folgende Bild zeigt die Nähmaschine mit eingelegtem Nahtband (noch das schmale 20mm Nahtband) und darauf gelegtem Bleiband. Mit einem großen Zickzackstich habe ich das Bleiband auf das Nahtband genäht. Ab jetzt kann ich die Fahrbahn für das Donkey Car flexibel aufbauen und abbauen.

Donkeycar - lane line sewing machine

Donkeycar – lane line sewing machine

Wie im vorherigen Abschnitt schon erwähnt habe ich ein paar Nadeln verbraucht. Hier ein Bild der abgebrochenen Nadeln die ich an einem Tag bzw. nach ca 70m gesammelt hatte.

Donkeycar - lane line sewing machine needles

Donkeycar – lane line sewing machine needles

Nach dem ich 2x50m genäht hatte hab eich den ersten Kurs gelegt. Gut zu sehen ist, dass sich das Nahtband beschwert mit dem Bleiband gut verlegen läßt. Auch sind Kurven kein Problem und das Band wirft kaum Falten. Bei der Variante mit einer Breite von 50mm wirft das Nahtband trotz der Beschwerung durch das Bleiband leichte Wellen.

Donkeycar - lane line test race course

Donkeycar – lane line test race course

Das 50mm breite Nahtband läßt sich auch sehr gut verlegen wirft nur etwas mehr Wellen in Kurfen. Für das Training wird dieses auch bei schwankenden Lichtverhältnissen gut erkannt und das Neuronale Netz läßt sich sehr gut anhand dem breiten Band trainieren.

Zusammenfassung

Beginnt man einmal mit dem Donkey Car Projekt so tauchen doch eine Vielzahl an Problemstellungen auf die gelößt werden müssen. Das macht das Projekt sehr spannend und man kann kreative Lösungen finden. Aus meinen Erfahrungen und dem UDACITY Self-Driving-Car-Engineer Kurs wusste ich schon, dass das Erfassen der Trainingsdaten in einer hohen Qualität die für das Trainieren des Neuronalennetzes wichtig ist aber nicht so einfach umgesetzt werden kann. Aber mit der flexiblen Lösung meiner Fahrbahn Markierung bin ich jetzt in der Lage verschiedene Kurse mit unterschiedlichen Kurven schnell aufbauen zu können. Das macht dann den eigentlichen Spaß aus zu sehen wie gut der tranierte Pilot der neuen Strecke folgen kann. Auch liegt das Band dank der Beschwerung gut am Boden und verrutscht nicht gleich wenn das Roboter-Auto einmal darüber fährt.


Artikel Übersicht Donkeycar Roboter Auto:

Autonom fahrendes Raspberry Pi KI Roboter-Auto – Einleitung
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Chassis
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Elektronik
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Software Installation
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Kalibrierung
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Trainings Vorbereitungen
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Trainingsdaten aufzeichnen
Autonom fahrendes Raspberry Pi KI Roboter-Auto – das Neuronale Netz trainieren
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Donkeycar training in einem Docker Container (optional)
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Donkey Car UNIMOG Upgrade
Autonom fahrendes Raspberry Pi KI Roboter-Auto – Manuelle Short Keys
Autonom fahrendes Raspberry Pi KI Roboter-Auto – IMU Sensor 9-DOF absolute Orientation
Autonom fahrendes AI Roboter-Auto – NVIDIA Jetson Nano SBC
(Visited 630 times, 1 visits today)