ROS RC-Car: Autonomes Fahrzeug im kleinen Format

Die Idee

Eines der langfristigen Ziele der Forschungsgruppe NIVES ist die Evaluation und Fusionierung von Sensorik für autonome Fahrfunktionen. Dafür besitzt die Hochschule bis dato zwei Fahrzeuge, einen BMW i3 und einen Renault Twizy. Beide Fahrzeuge sind bereits zum Teil mit Sensoren und Aktuatoren ausgestattet worden um die grundlegenden autonomen Fahrfunktionen (Beschleunigen, Bremsen, Lenken) ohne menschliches Eingriff durchführen zu können. Durch die fortschreitende Entwicklung von Algorithmen für autonome Fahrfunktionen und dem noch nicht abgeschlossenen Umbau der verfügbaren Fahrzeuge entstand die Idee ein schnell einsatzbereites kleines Modellfahrzeug zu nutzen um sowohl die Algorithmen als auch das Gesamtsystem in einer natürlichen Umgebung, auf dem hauseigenen Testfeld der HTW Dresden, zu testen.

Die Vorteile eines Modellfahrzeugs sind:

  • robust gebaut (eventuelle Fehler in den Algorithmen und resultierende Crashs sind bei einem RC-Auto harmlos)
  • schnell einsatzbereit, tragbar
  • kostengünstiger Umbau (meiste Sensorik durch andere Projekte bereits vorhanden)
  • skalierbar (Algorithmen die auf das RC-Modell sinnvoll skaliert sind funktionieren auch im „echten“, großen Fahrzeug)
  • benötigt wenig Platz (Testfahrten auf Testfeld nicht unbedingt nötig, Testfahrten im Gebäude leicht möglich)

 

Die Basis

Als Basis dient ein 1:5 RC-Modell (Remote Control, Ferngesteuert), welches vor einigen Jahren für Studentenpraktika und Lehre angeschafft wurde. Es war bereits mit einem kräftigen Motor, einem Motortreiber, Servomotor an der Lenkachse, sowie vier weiteren Servomotoren zum Abbremsen jedes einzelnen Rades und Drehzahlsensoren ausgestattet. Schnell zeigte sich jedoch, dass der verbaute Motor für die geplanten autonomen Fahrsituationen, wie zum Beispiel Einparken und sanftes Anfahren, ungeeignet war. Vielmehr war das Modell auf Geschwindigkeiten von ca. 60km/h im Rahmen von dynamischen Fahrversuchen (ABS, ESP) ausgelegt, was zum Entschluss führte neben der vollständigen Überarbeitung der Elektronik und dem Einbau eines Computers auch den Antriebsstrang zu verändern.

 

Basis-Hardware:

  • 1:5 Modellfahrzeug
  • Heckgetrieben
  • Servomotor an Lenkachse
  • Hydraulische Bremsen für jedes Rad
  • Drehzahlsensoren für jedes Rad

Auszumusternde Basis-Hardware:

  • Brushless-Motor mit Brushless-Motortreiber
  • NiMH Akkus 12v, 4000mAh
  • PCB zur Ansteuerung des Systems mit MatLab

 

Die ungeeignete Hardware sollte im folgenden Umbau im Rahmen der „Modernisierung“ zum autonomen Fahrzeug weichen.

 

Die entfernte Hardware

 

Elektronik

Als leistungsstarker Kleinstcomputer wurde ein Odroid XU4 verbaut. Er zeichnet sich gegenüber einem Raspberry Pi 3 durch doppelt so viel RAM und einer wesentlich stärkeren CPU aus. Der Computer dient zur Berechnung der teils komplexen Fahrmanöver und erlaubt die Kommunikation mit anderen Computern in einem verfügbaren WLAN-Netzwerk.

Die Ansteuerung der Motoren und Auslesen der Sensoren erfolgt mithilfe eines Arduino Due, welcher per USB-Seriell-Schnittstelle mit dem Odroid kommuniziert. Für ein einheitliches und „aufgeräumtes“ Kabelmanagement wurde für den Arduino Due eine Aufsteckplatine entworfen, welche alle Motoren und Sensorsysteme auf einer Platine zentral zusammenführt. Darüber hinaus ist die Aufsteckplatine mit bis zu acht Ultraschallsensoren erweiterbar.

Umbau

Im folgenden wird der Umbau in mehreren Stufen beschrieben.

 

Umbauten Stufe 1

  • Schaffung einer neuen Ebene zur Montage der Elektronik (Carbonplatte) mit Montagesäulen aus dem 3D-Drucker
  • Nutzung der großen Kammer unter der Carbonplatte zur Anbringung der neuen Akkus und Kabelmanagement
  • Montage eines RPLidar 360° Laserscanners mithilfe 3D-gedruckter Bauteile
  • Planung und Bestellung eines PCB als Aufsteckplatine für den Arduino Due
  • Montageplatte für die Elektronik erstellt und 3D-gedruckt

 

PCB als Aufsteckplatine für den Arduino Due

 

Gesamtansicht des Umbau Stufe 1

 

Umbauten Stufe 2

  • Ersetzen des vorhandenen Brushless-Motor mit geeignetem DC-Getriebemotor (erlaubt langsame Bewegung)
  • 3D-Druck von Zahnriemenrädern (PETG) und Zahnriemen (TPU) mit dem Zahnprofil HTD, sowie einer Motorhalterung
  • Unterbringung des DC-Schrittmotortreibers
  • Lüfter zur Kühlung der Spannungswandler
  • Einbau eines leistungsstarken LiPo-Akkus (6s mit 5000mAh), entfernen der wesentlich schwereren NiMH Akkus
  • Anpassung der Modellfahrzeugkarosserie auf die verbaute Hardware (Ausschnitte für Laserscanner)

Gesamtansicht Umbau Stufe 2

 

Der Artikel wird zukünftig fortlaufend aktualisiert. Es folgt in Kürze der Bericht zur Umbaustufe 3.

 

Besuch Berufsschulklasse aus Nordhausen

Im Rahmen der Nachwuchsförderung haben uns heute 25 Auszubildende der Kfz-Mechatronik im zweiten Lehrjahr von der Berufsschule Nordhausen besucht.

Kernthemen waren die Vorstellung unserer Versuchsfahrzeuge BMW i3 und Renault Twizy mit der verbauten Messtechnik und Umfeldsensorik, sowie eine kurze Einführung in die Welt der Robotik.

Nach einem Fahrversuch zum Thema Car2X-Kommunikation auf unserem Test- und Prüffeld, demonstrierte Patrick Richter den interessierten Azubis eine Eigenentwicklung zum automatisierten Test von Fahrzeugumfeldsensorik.

Im Fokus der Veranstaltung stand die Vermittlung von Grundlagenwissen zu Fahrzeugkommunikationsstrukturen und -Umfeldsenorik. Die Versuchsfahrzeuge bildeten in diesem Zusammenhang eine direkte Schnittstelle zur praktischen Anwendung der jeweiligen Systeme.

Inbetriebnahme des SICK LD-MRS Laserscanners am Renault Twizy

Der SICK LD-MRS400102 HD Laserscanner ermöglicht eine Detektion von Hindernissen über einen Arbeitsbereich von 110° und 4 Ebenen. Der Sensor soll denn bisher im Renault Twizy verwendeten Hella Idis Laserscanner ersetzen und u. a. in den Projekten Platooning und GEwAF sowie weiteren interdisziplinären Forschungsprojekten zum Einsatz kommen. Im Video ist die Darstellung der Rohdaten des Laserscanners mithilfe des ROS Rviz Frameworks zu erkennen. Als Maßgabe für die Adaption des Sensors an das Fahrzeug erfolgte die Kalibrierung mithilfe mehrerer Pylonen und der hinteren Fahrzeugkontur eines weiteren Twizys.

MDR-Kurzbeitrag

Der Verkehrsgerichtstag 2018 in Goslar beschäftigt sich unter anderem auch mit den Entwicklungen im Bereich des automatisierten Fahrens. Der MDR hatte hierzu einige Fragen an das Mechlab-Team und hat den aktuellen Arbeitstand in einem kurzen Beitrag festgehalten. Dieser lief am 20.01.18 in der Hauptausgabe von MDR aktuell um 19:30 Uhr. Der Sendebeitrag in der MDR-Mediathek ist (solange verfügbar) durch einen Klick auf das Bild verfügbar.

ASAM International Conference 2017

Unter dem Motto „Autonomous Driving – Big Testing and Big Data as the Next Challenge“ tagte vom 06-07.12 die ASAM International Conference 2017 im Dresdner Congress Center. Auch das Team mechlab war mit einem eigenen Stand vertreten und zeigte anschaulich, wie die Planung und Simulation von automatisierten Fahrmanövern mithilfe der Entwicklungsumgebung Unity3D in der Realität umgesetzt werden könnte. Beispielhaft wurde die gewünschte Trajektorie zunächst mit der Applikation für die Testfläche der HTW Dresden geplant und im Folgenden auf das Fahrzeug übertragen. Der reale Fahrversuch stellt anschließend die letzte Stufe im systematischen Entwicklungsprozess dar und ist Voraussetzung für die Validierung der Fahrmanöver im urbanen Verkehr.

ROS Rviz – 360° LiDAR – Punktwolken Verdichtung

Im Rahmen des Forschungsprojektes „NIVES“ wird die Nutzung und Fusion verschiedener Sensoriken am Fahrzeug zur teils vollständigen Automatisierung von Fahrfunktionen untersucht. Dabei ist eine detaillierte Erfassung der Umgebung von besonderer Wichtigkeit. Mithilfe eines 360°-Laserscanners können viele Informationen der räumlichen Umgebung in das System eingespeist werden. Jedoch besitzt ein einzelner Scan (vgl. einzelnes Foto) nur eine vergleichsweise detailarme Abbildung der räumlichen Umgebung. Deshalb nutzen wir die Odometrie des Fahrzeugs, sowie GPS und GLONASS um eine Translation des Laserscanners im Raum festzustellen, die Punktwolke je Scan über die Zeit entsprechend zu transformieren und damit die Punktwolke zu verdichten.

Im nachfolgenden Video wurde die Punktwolke durch 200 einzelne Scans verdichtet.

 

Erstes Praktikum auf dem Prüffeld

In der Kalenderwoche 43 startete das neue Praktikum im Rahmen der Vorlesung „mechatronische Grundlagen“ für das 3. Semester der Fahrzeugtechniker. Die Studierenden konnten erstmals das Prüffeld für vernetzte und automatisierte Fahrfunktionen im Einsatz erleben. Jeder Student mit gültigem Führerschein absolviert im Versuchsfahrzeug BMW i3 zwei Runden, in denen er verschiedene Fahrmanöver ausführen muss. Jede der insgesamt vier Studiengruppen hat dabei leicht veränderte Aufgaben. Die nachfolgende Grafik zeigt die zu absolvierenden Manöver für die Gruppe 4. Mit einem Klick auf das Bild gelangt man zum Video einer Messfahrt.

Während sich eine Gruppe auf dem Prüffeld der Fahraufgabe widmet, erarbeitet sich die zweite Gruppe die informationstechnischen Grundlagen zur automatisierten Auswertung der anfallenden Messwerte mit MatLab.

Ziel ist es, den Studierenden den Umgang mit großen Datenmengen (DERZEITIGES Schlagwort: BIG DATA) näherzubringen. In einer vernetzten Fahrzeugwelt fallen immer größere Datenmengen an, die sicher und nachvollziehbar ausgewertet werden müssen. In den nächsten Semestern werden die Versuche systematisch erweitert, so dass die Fahrzeugtechnik-Absolventen der HTW Dresden bestens auf die zukünftigen Aufgaben in der Fahrzeugentwicklung vorbereitet sind.

 

Sensordatenfusion mit Extended Kalman Filter (EKF)

Im Rahmen der Nachwuchsforschergruppe wurde ein erster Entwurf eines Erweiterten Kalman Filters (EKF) implementiert. Dabei werden Positionsinformationen von einem GPS-Receiver (ublox 6T) und Fahrdynamikdaten (Abgriff Fzg. CAN Bus) im Livebetrieb fusioniert. Als Systemmodell wird dabei ein Constant Turn Rate and Velocity (CTRV) -Modell nach folgendem Vorbild verwendet: http://www.cbcity.de/das-extended-kalman-filter-einfach-erklaert. Die Messdaten stammen aus einer Messung mit dem laboreigenen BMW i3 und wurden im Robot Operating System (ROS) -Framework prozessiert und fusioniert. Um die Performance des Filters (im Video violett) zu testen, wurden die bereits qualitativ guten GPS-Messungen (grün) mit einem Rauschen versehen (orange Punktwolke). Bedeutsamer Mehrwert kommt dem Filter in dichtbebautem Stadtgebiet sowie bei GPS-Abschottung bspw. durch Tunnel zu (siehe GPS-Signalabriss im Tunnel). In diesem Fall erfolgt die Positionierung verstärkt bzw. hauptsächlich aus den Fahrdynamikinformationen des Fahrzeugs. In den Filteralgorithmus fließt dazu die Standardabweichung der Positionslösung sowie die  Anzahl der observierten Satelliten ein, sodass die im Filter verwendeten Kovarianzmatrizen adaptiv angepasst werden können. Nach längerem Signalabriss kommt es zu einem Einschwingverhalten, sobald wieder ein vertrauenswürdiger GPS-Messwert vorliegt.
Die Arbeitsweise des Filters ist in nachfolgendem Video mit dem ROS-Visualisierungstool mapviz dargestellt:

 

Platooning mit IPG-Truckmaker und MatLab/Simulink

Allgemein:

„Nutzfahrzeug-Platooning“ ist eine der nachhaltigsten und erfolgversprechendsten Zukunftstechnologien in der Logistikbranche. Dabei werden mehrere Lkw in einem Verband zusammengefasst und der Sicherheitsabstand zwischen den einzelnen Fahrzeugen wird reduziert.

Diese Reduzierung ist nur möglich, wenn die Fahrzeuge untereinander kommunizieren und ein vom ersten Lkw eingeleitetes Bremsmanöver direkt an alle folgenden Fahrzeuge weitergeleitet wird, so dass diese ebenfalls unverzüglich ein Bremsmanöver mit der entsprechenden Verzögerung einleiten können. Der Sicherheitsabstand und die Reaktionszeit wird dadurch minimiert.

Der entscheidende Vorteil ist aber nicht der geringere Platzbedarf des „Platoon“ im Verkehr, sondern seine verbesserte Aerodynamik im Vergleich zu den einzelnen Lkw. Durch den reduzierten Luftwiderstand lassen sich bei einem Abstand von ca. 10m etwa 10% Kraftstoff für den gesamten „Platoon“ einsparen. Damit verbunden ist auch die Reduzierung der CO2 Emission.

Simulation:

Mit „IPG-Truckmaker“ und „MATLAB-Simulink“ wird die Geradeausfahrt eines „Platoon“, bestehend aus mindestens drei Lkw simuliert. Parallel dazu erfolgt die Auslegung eines Reglers für die Längsführung des Ego-Fahrzeuges.

Die Reglerauslegung als PID erfolgte in MatLab-Simulink. Dieser ersetzt die Signale „VC Brake“ und „VC Throttle“ des IPG Modells. Die Eingangswerte (Abstand, Geschwindigkeit, Beschleunigung) für den Regler werden durch einen „long range“ Radarsensor am Ego-Fahrzeug bereitgestellt. Gleichzeitig wird eine generische Funkverbindung simuliert, die über ein zeitliches Offset die fahrdynamischen Parameter des Führungsfahrzeuges übermittelt. In Ergänzung werden über die Parameter „desired time gap“ und „desired speed“ die Zeitlücke und die Zielgeschwindigkeit vorgegeben.

Für eine Erweiterung der Simulation werden die Fahrzeugpositionen aller im „Platoon“ befindlicher Fahrzeuge ausgelesen, welche später auch in GPS Koordinaten umgerechnet werden können.

Die Ergebnisse der Arbeit sind Bestandteil theoretischer Vorbetrachtungen des Platooning Projektes. Daraus sollen Grenzwerte der Funkstrecke sowie des Sicherheitsabstandes abgeleitet werden.