Mit dem Multi Chassis Rescue Kit, einem Raspberry Pi 3 und zwei Webcams baute ich einen Prototyp:

Roboter Front

Roboter Seite

Die Boards für die 5 Volt Spannungsregelung und der Motortreiber müssen noch irgendwo eingebaut werden. Der Roboter fährt so auch schon zu Testzwecken. Mit den zwei Webcams kann die Entfernung von Gegenständen gemessen werden. Es wird nach gleichen Teilen in beiden Bildern gesucht und dann anhand des Unterschiedes in der Position die Entfernung bestimmt. Das geht schon sehr gut. Die Abstände sind intern: 250 mm, 200 mm, 150 mm, 100 mm und 50 mm. Es lässt sich je nach Webcam und Auflösung etwa eine Genauigkeit von ca 1 cm erreichen.

Manchmal sind jedoch nur sehr wenige Messpunkte vorhanden. Deshalb versuche ich mit einer “Kantenerkennung” Hindernisse festzustellen. Was sich als schwierig herausgestellt hat. Zur Bildauswertung verwende ich OpenCV in der 2.x Version auf dem Raspi. Die Webcams “hängen” der Realität leider immer um ein paar Sekunden nach. Also kann der Roboter nicht in Echtzeit reagieren. Andere Webcams habe ich noch nicht testen können. Zur Steuerung verwende ich meine VM Nano mit C Bibliotheken für die Bildauswertung und RS232 Schnittstelle (Motortreiber).

So sieht der Roboter seine Umgebung:

Webcam Entfernungsmessung

Die Kantenerkennung im Flur getestet (das Muster des Bodens irritiert noch) ;)

Kantenerkennung

Der Roboter soll irgendwann mal in der Lage sein Hindernissen ausweichen zu können. Ich habe vor auch noch Sensoren einzubauen wie ich das bei meinem Mausroboter auch schon gemacht habe. Vor allem soll das Bauen und schreiben der Software Spaß machen. Der Weg ist das Ziel!