Quelloffene Rennsimulationen fĂĽrs Messen, Steuern, Regeln
Projekte, die sich mit der Entwicklung von Automotive-Software beschäftigen, bauen früher oder später Demonstratoren auf. Für welche in Forschungsprojekten baute die itemis AG reine Software-Demonstratoren.
- Andreas Graf
Projekte, die sich mit der Entwicklung von Automotive-Software beschäftigen, bauen früher oder später Demonstratoren auf. Gerne werden hier Modellfahrzeuge verwendet, die dann auf Messen über die Stände fahren. Leider haben diese den Nachteil, dass sie aufwendig zu transportieren sind und sich nicht beliebig reproduzieren lassen. Für Demonstratoren in verschiedenen Forschungsprojekten wollten wir – itemis – deswegen reine Software-Demonstratoren aufbauen. Hochpreisige Simulationssoftware kam dafür nicht in Frage. Nachdem Rennsimulationen inzwischen auch über gute Physiksimulation verfügen, lag der Gedanke nahe, eine solche einzusetzen. Da hierfür der Zugriff auf den Quellcode notwendig ist, wählten wir unter diversen Open-Source-Simulationen aus.
(Bild:Â itemis)
Für das Forschungsprojekt Verde zeigten wir in einer frühen Phase, wie sich aus einem Architekturmodell Code für die unterschiedlichen Schnittstellen generieren lässt. In dem Szenario wird die Fahrzeuggeschwindigkeit von einem Sensor gemessen, über ein Embedded-Gateway an ein IT-System gesendet und über Internetverbindung auf einem Android-Handy dargestellt.
Um das fahrende Auto umzusetzen, wählten wir TORCS und modifizierten es so, dass Fahrzeugdaten in der Hauptschleife des Spiels über UDP und CAN an das Gateway weitergeleitet werden. Die Daten aus der Simulationsfahrt werden dann über die Infrastruktur weitergeleitet und angezeigt. Der Einsatz eines Lenkrads für den Fahrer ist dabei dringend empfohlen, da die Tastatursteuerung Eingewöhnung erfordert und der Fokus ja nicht auf dem Spiel an sich, sondern der demonstrierten Technik liegt.
Im Forschungsprojekt IMES demonstrierten wir den Einsatz des Open-Source-Werkzeuges Damos für die High-Level-Implementierung einer Fahrerassistenz-Funktion (Tempomat). Da TORCS den Nachteil hat, dass es sich unter Windows nur schwer bauen lässt und andererseits die 3-D-Darstellung in der virtuellen Maschine nicht funktioniert, suchten wir nach einer Alternative und wurden bei VDrift fündig. Bei TORCS gefällt uns zwar die gute Kapselung der einzelnen Fahrzeugsimulationen für die automatischen Fahrzeuge, doch VDrift ist auf Windows bequemer zu bauen. In der neuesten Version für VDrift hat sich auch die Architektur etwas geändert, sodass der Vorsprung von TORCS hier geringer wird.
Nach einer Code-Analyse modifizierten wir hier die Stelle, an der verschiedene Fahrzeugwerte berechnet werden, sodass diese ĂĽber UDP versendet werden und sich gleichzeitig Werte, die sonst ĂĽber die Spiele-Controller-Schnittstelle ermittelt werden (Lenkwinkel, Gaspedal), ĂĽber UDP lesen lassen.
(Bild:Â itemis)
Um diese Werte in Damos verwenden zu können, stellte uns dessen Initiator, Andreas Unger, freundlicherweise zwei Erweiterungen zur Verfügung. Damit ist ein einfacher Regler für den Tempomat schnell gebaut. Auf Basis der aktuellen Fahrzeugdaten berechnet er den erforderlichen Wert für das Gaspedal und sendet ihn zurück.
Auch wenn die Simulation nicht vollständigen Simulationen eines Fahrzeugs entspricht, bieten die Simulationen noch viele weitere Fahrzeug- und Umgebungsdaten, die man entsprechend auswerten kann und Raum für Experimente bieten. ()