Entwicklung eines Drive Subsystems für die Roboterplattform Bobby Car

Entwicklung eines Drive Subsystems für die Roboterplattform BobbyCar

Diese Bachelorarbeit beschäftigt sich mit einem Redesign der auf Mikrocontrollern basierenden Subsysteme zur Umsetzung von Fahrbefehlen der Roboterplattform FTW-2WD BobbyCar. Die Roboterplattform FTW-2WD BobbyCar ist ein Projekt der wissenschaftlichen Einrichtung 4 (WE4) der Fakultät ETTI (Elektrotechnik und Technische Informatik) zur Erprobung von Multi-Prozessor Systemen für den autonomen Fahrbetrieb. Bei der Roboterplattform BobbyCar handelt es sich um ein großes Spielzeug, in dem einst zwei kleine Kinder Platz fanden. Aufgrund des zur Verfügung stehenden Platzes, eignet es sich optimal für den Einbau von verschiedensten Sensoren, Steuerelektronik und Bussystemen. In Abbildung 1 ist die Roboterplattform FTW-2WD BobbyCar zu sehen.
 

Abbildung 1: Roboterplattform FTW-2WD BobbyCar

Derzeit umfasst das Dirve Subsystem zur Umsetzung der Fahrbefehle drei Teilsubsysteme. Nach außen hin sind diese drei Subsysteme als ein geschlossenes System konzeptioniert. Der Funktionsumfang der beiden 16-Bit-Subsysteme „STEERING“ und „DRIVE“, soll in das bestehende 32-Bit Drive Subsystems implementiert werden. Hierfür muss die bestehende Motorsteuerplatine V1.3, auf der sich der Drive Subsystem Controller befindet, mit Schnittstellen zum Abgreifen von Messwerten und zum Senden von Steuerinformationen erweitert werden. Des Weiteren wird der Drive Subsystem Controller durch einen Cortex-M-4-basierten Mikrocontroller ersetzt. Im Zuge der vorgegebenen Umstellung auf eine neue Prozessorarchitektur, ist auch eine Umstellung der Programmierung auf Basis eines gemeinsamen Standards (CMSIS1) der Cortex-M-basierten Mikrocontroller vorgesehen.

Diese Arbeit beschäftigt sich vor allem mit der Realisierung eines geeigneten Reglers zur Ansteuerung des Lenkeinschlags der Roboterplattform. In Abbildung 2 ist der kaskadierter Regler zur Ansteuerung der Lenkung ersichtlich. Für die Regler-Implementierung ist die Bestimmung der Regelparameter zur Optimierung des Führungsverhaltens besonders entscheidend. Des Weiteren wird die Herangehensweise zur Ermittlung der Regelstreckenparameter, sowie das Einstellen der Regler mit verschiedenen Verfahren abhängig vom Streckenverhalten beschrieben.

Abbildung 2: Kaskadierter Regler zur Ansteuerung der Lenkung
(Für eine größere Ansicht bitte auf das Blid klicken.)
 

Zur Ansteuerung der Motoren für Antrieb und Lenkung wurde ein neuer Motorcontroller verbaut. Hierfür mussten die Funktionalitäten zur Ansteuerung der verschiedenen Motoren für Antrieb und Lenkung implementiert werden. Die Kommunikation mit den verschiedenen Subsystemen der Roboterplattform BobbyCar, wird über den CAN2-Bus realisiert und beinhaltet alle relevanten Status- und Steuer-Informationen. Im Zuge der Neukonzeptionierung, ist das Drive Subsystem in der Lage, die über eine Fernbedienung gesendeten, als PWM3 vorliegenden Steuerinformationen, auszuwerten und in Fahrbefehle umzusetzen. Des Weiteren ist die Behandlung einer Notabschaltung für die Versorgungsspannung des Antriebs und der Lenkung ein entscheidender Punkt, der im Drive Subsystem entsprechend umgesetzt wurde. Für den autonomen Fahrbetrieb wurden die grundlegenden Funktionalitäten zum Abfahren einer exakt vorgegeben Distanz mithilfe eines Reglers auf dem Drive Subsystem Controller realisiert.

Fazit

Diese Bachelorarbeit beschäftigte sich mit einem Redesign des Drive Subsystems zur Sicherstellung einer exakteren Bewegungssteuerung und zur Schaffung einer einheitlichen Hardware-Struktur. Ziel dieser Bachelorarbeit war es, das Aufgabenspektrum der beiden 16-Bit-Teilsubsysteme „STEERING“ und „DRIVE“ mithilfe einer Weiterentwicklung der Motorsteuerplatine, in das bestehende Drive Subsystem zu implementieren. Es wurde ein Diagnoseprogramm erstellt, welches die verschiedenen Schnittstellen verifiziert und Testmöglichkeiten bietet. Des Weiteren wurde das eigentliche Betriebsprogramm für das Drive Subsystem auf Basis eines gemeinsamen Standards (CMSIS) der Cortex-M-basierten Mikrocontroller weiterentwickelt und umgestellt. Ein besonderer Aspekt dieser Arbeit lag auf der Neukonzeptionierung der Lenkung und der damit verbundenen Realisierung eines kaskadierten Reglers. Die Arbeit beschreibt weiterhin die Umsetzung der einzelnen Teilaufgaben zur manuellen Steuerung der Roboterplattform für Lenkung und Antrieb, sowie das exakte Abfahren einer vorgegebenen Distanz. Hierbei war besonders die genaue Messung von Odometriedaten ein ausschlaggebender Punkt. Dieses konnte durch den Einbau von Encodern und deren softwareseitigen Integration in das Betriebsprogramm realisiert werden. Die Überprüfung der einzelnen Funktionalitäten und der Bewegungssteuerung wurde durch zahlreiche Versuche gemäß den Anforderungen überprüft und bestätigt.

Ausblick

Bislang ist die Roboterplattform im autonomen Fahrbetrieb in der Lage, den Befehl und die Information über eine zu fahrende Distanz mittels einer CAN-Nachricht zu empfangen und abzufahren. Das Betriebsprogramm sieht derzeit noch keine Umsetzung von Kurvenfahrten oder dem Fahren einer fest vorgegebenen Geschwindigkeit vor. Aus diesen Gründen bedarf es einer Weiterentwicklung des Betriebsprogramms auf Basis der bislang gewonnenen Erkenntnisse zur Erfassung von Odometriedaten. Für das Fahren einer Kurve mit definierten Parametern ist die Zuhilfenahme der Gyroskop Werte zu überprüfen und gegebenenfalls in das Fahrprogramm zu implementieren. Außerdem müssen die verschiedenen Bewegungsprofile und deren mögliche Wende-Radien der Roboterplattform beim Aufkommen von Hindernissen vermessen werden.

_______________________________________________
1 Cortex Mikrocontroller Software Interface Standard
2 Controller Area Network
3 Pulsweitenmodulation
 
Raimund Walter, Juni 2014