Simulation

Simulationsumgebungen stellen ein wichtiges Werkzeug zur Entwicklung von autonomen Robotersteuerungen dar. Im Folgenden werden verschiedene Simulationswerkzeuge und ihre Anwendung in der Forschung präsentiert.

SimVis3D

SimVis3D ist eine 3D Simulationssoftware welche für das Roboterframework Finroc entwickelt wurde. Sie basiert auf Open-Inventor und der Newton Physikengine und stellt simulierte Sensorik wie Kameras, Laser Scanner, Infrarot, Ultraschall oder PMD Sensorik bereit. Eine Simulationsszene bindet beliebige 3D Modelle ein, welche über eine XML Datei eingelesen und in einen Szenengraphen überführt werden. Zur Laufzeit kann ein Nutzer mit der Szene interagieren und diese über C++ Schnittstellen zur Laufzeit verändern. Die Software wurde zur Simulation von vielfältigen Roboter eingesetzt, zum Beispiel den mobilen Roboter RAVON, MARVIN, ARTOS, dem Bagger THOR, oder der Laufmaschine BIPED.

Mit SimVis3D wurde das Framework zum autonomatisierten Testen TAURUS entwickelt. Es ermöglicht die Spezifikation von komplexen Testfällen. TAURUS-Tests bestehen aus einer Szenario-Beschreibung, die die Navigationsbefehle und eine "Mission", die der Roboter ausführen soll, enthält. Verschiedene Parameter des simulierten Roboters und seiner Umwelt werden dabei aufgezeichnet und für die Auswertung benutzt. Wenn eine Invariante (z.B. Zeitüberschreitung, Kollision,...) festgestellt wird, wird diese Information nach jedem Durchlauf in einem Bericht zur Verfügung gestellt. TAURUS selbst besteht aus einem Verhaltensnetzwerk, das zwischen das laufende Programm und der Benutzeroberfläche geschaltet ist. So steuert es automatisch die verschiedenen Testfälle, setzt Parameter und Konfigurationen.

Ogre-PhysX

Die Ogre-PhysX Simulation wurde als Nachfolger der SimVis3D Software entwickelt. Sie basiert auf dem Grafikframework OGRE3D und NVIDIA PhysX und bietet eine erweitere Performance und verbesserte Grafik. So wurden komplexe Search & Rescue Szenarien abgebildet, in denen vollständige Häuser mit tausenden Objekten dynamisch simuliert wurden, um autonome Rettungs- und Erkundungsmission durchzuführen. Hierbei wurden Gefahrenquellen wie Feuer oder instabile Umgebungssegmente performant abgebildet, sodass die Robotersteuerung dahingehend optimiert werden konnte solche Situtationen adäquat zu bewältigen. Neben diesem Szenario wurden ebenso große offene Welten umgetzt, in denen autonome Fahrten über weite Strecken ermöglicht sowie Landwirtschaftsprozesse simuliert wurden.

Die Simulation wurde für die Steuerungsentwicklung der Roboter Gator, SUGV, und LUGV eingesetzt.

 

 

V-REP

Die virtual robot experimentation platform (V-REP) ist eine Simulationsengine von Coppelia Robotics. Sie unterstützt unter anderem C/C++, Python, Lua, Octave, Urbi und Matlab. Zur Simulation von Physik stehen verschiedene Engines bereit wie Newton, Bullet, ODE oder Vortex. V-REP interagiert mit dem Finroc Framework durch eine C++ Schnittstelle. Finroc stellt hierfür ein V-REP Plugin bereit, kann aber auch über die Remote API kommunizieren.

V-REP wurde unter anderem für die Simulation der  Roboter Gator, Unimog, Backhoe und CARL eingesetzt. Neben Sensorik wie 2D und 3D Lasern, GNSS, IMU wurden auch charakteristische Sensorstörungen und Effekte implementiert. So können für die Bestimmung von GNSS-Signalen, reale Satellitendaten aus Finroc ausgelesen werden und somit Störungen durch Abschattungen realistisch berechnet werden.

Unreal Engine 4

Die Unreal Engine 4 ist eine professionelle Spieleengine, die von Epic Games entwickelt wird. Die Plattform bietet photorealistisches Rendern, Anbindung von VR, offenes Weltendesign, Blueprint-Scripting und vollen C++ Quellzugriff. Projekte wie NVIDIA FleX ergänzen die bestehende PhysX Engine mit Partikelsimulationen. Ein Marketplace bietet Zugriff auf eine große Anzahl von Projekten und Inhalten.

Finroc ist als Unreal Projekt realisiert welches die Finroc-Laufzeitumgebung und Ports aus der Engine startet. Hierbei ist es möglich Roboter in einer komplexen, offenen, photorealistischen Welten zu steuern und mit dieser zu interagieren. Das detailgetreue Simulieren von Sensorik berücksichtigt beispielsweise typische Kameraüberblendungen, -rauschen, oder -unschärfe welche in realen Systemen großen Einfluss auf die Steuerung haben.

Unreal wird derzeit in Straßenbauszenarien mit den Walzen BW154 und BW147 für das AMMCOA Projekt eingesetzt, wo einige Kilometer der Bundesstraße B10 rekonstruiert und simuliert werden. Ebenso werden Gator, Unimog, Backhoe und die Umfelderkennung der Mobilkräne des SafeguARd Projekts damit virtuell getestet.

Relevant Publications

@incollection{Braun07a,
Author = {T. Braun and J. Wettach and K. Berns},
Title = {A Customizable, Multi-Host Simulation and Visualization Framework for Robot Applications},
Booktitle = {Recent Progress in Robotics: Viable Robotic Service to Human, Selected papers from ICAR07},
Year = {2007},
Pages = {357--369},
Publisher = {LNCIS Series, Springer-Verlag},
Editor = {Sukhan Lee and Il Hong Suh and Mun Sang Kim},
Volume = {370},
}