Entwicklung einer 3D-Darstellung von Luftfahrzeugmodellen mit einem 3D-Monitor
Diplomarbeit von Stefan Lücking
Motivation
Die Firma EADS befasst sich unter anderem mit der Analyse von Flugschreiberdaten für die deutsche Luftwaffe. Diese Flugschreiberdaten sind sehr nützlich bei der Unfallanalyse und Unfallursachenforschung, bei Einsatznachbesprechungen und Pilotentraining. Der Einsatz von Computern und entsprechender Software bietet hierbei eine Vielzahl von Möglichkeiten für die Datenanalyse. Bestehende Programme sind in aller Regel für eine sehr exakte Datenanalyse ausgelegt, hierunter leidet allerdings die Anschaulichkeit. Außerdem wird zumeist nur die Anzeige von Daten für ein Flugzeug unterstützt, weiterhin werden keine Informationen über die überflogene Landschaft angezeigt. Somit kann nachvollzogen werden, was während eines Fluges passiert ist (z.B. Kurvenflug), aber nicht, warum es passiert ist (z.B. Ausweichmanöver wegen eines anderen Flugzeugs). Vorteilhaft wäre ein Programm, das eine intuitive, anschauliche Darstellung der Flugdaten ermöglicht. Ein solches Programm sollte im Rahmen dieser Diplomarbeit entwickelt werden. Die Arbeit entstand bei der Firma EADS am Standort Friedrichshafen.
Aufgabenstellung
Im Rahmen dieser Diplomarbeit sollte ein Programm entwickelt werden, das eine 3D-Darstellung von Luftfahrzeugen auf einem 3D-Monitor ermöglicht. Wesentliche Anforderungen waren:
- Darstellung von Luftfahrzeugen als 3D-Modell
- Darstellung der Luftfahrzeuge Tornado, Tiger, NH90 und A400M
- Animation der Luftfahrzeugmodelle mithilfe von Flugschreiberdaten
- Darstellung der überflogenen Landschaften als 3D-Modell
- Positionierung der Luftfahrzeugmodelle über dem Landschaftsmodell unter Benutzung aufgezeichneter GPS-Koordinaten
- Anzeige grafischer Hilfsmittel, z.B. Flugpfad und verschiedene Instrumente
- Nutzung des Frameworks Vizard (mehr dazu unter Realisierung)
- Nutzung eines 3D-Monitors um der 3D-Darstellung einen räumlichen Tiefeneffekt zu verleihen
Die Darstellung der Grafik sollte auf einem 3D-Monitor erfolgen. Diese Monitore erzeugen ein Stereobild, das einen räumlichen Tiefeneffekt beinhaltet. Dieser Effekt kann theoretisch bei der Abschätzung von Entfernungen helfen. Das Framework Vizard sollte genutzt werden, da es über eine eingebaute Unterstützung für 3D-Monitore verfügt. Neben den eigentlichen Luftfahrzeugen und der Landschaft sollten auch einige grafische Hilfsmittel angezeigt werden. Hierzu zählen unter anderem der Flugpfad der Luftfahrzeuge und verschiedene Instrumente, mit denen weitere Informationen eingeblendet werden können.
Das Programm
Das im Rahmen der Arbeit entstandene Programm trägt den Namen FDR3DViz 2.0 (Version 1.0 war ein bereits vorher entwickeltes Testprogramm, das lediglich den 3D-Effekt des 3D-Monitors nachweisen sollte). Bei Programmstart wählt der Benutzer die darzustellenden Luftfahrzeuge aus und weist ihnen die entsprechenden Flugschreiberdaten zu, danach muss noch eine darzustellende Landschaft ausgewählt werden (falls mehrere Landschaftsmodelle für die überflogene Landschaft zur Verfügung stehen). Sobald die Darstellung startet, betrachtet der Benutzer eines der Luftfahrzeugmodelle von außen. Diese Ansicht ähnelt der einer Flugsimulation. Die Kamera kann frei um das Luftfahrzeug herum bewegt werden und folgt diesem, wenn es sich bewegt. Der Benutzer kann jederzeit zu den anderen gleichzeitig dargestellten Luftfahrzeugen wechseln und diese betrachten. Mit Hilfe einer Zeitsteuerung kann der Betrachter die Ablaufgeschwindigkeit des Programms steuern und die Flüge in Echtzeit oder im Zeitraffer betrachten. Jeder beliebige Zeitpunkt innerhalb eines Fluges kann angefahren werden. Die Luftfahrzeugmodelle folgen während des Programmablaufs ihrem Flugpfad und bewegen beispielsweise die Steuerflächen wie dies auch während des echten Fluges passiert ist. Der Benutzer kann nun interessante Zeitpunkte eines Fluges anfahren und sich die Situation anschauen: Er kann klären, ob sich Luftfahrzeuge zu nahe gekommen sind, ihre Manöver nachvollziehen und Entfernungen zwischen Luftfahrzeugen messen. Mithilfe von Instrumenten kann er zusätzliche Informationen sichtbar machen. Außerdem kann der Benutzer verschiedene Flugpfade und weitere grafische Hilfsmittel einblenden.
Realisierung
Das Programm FDR3DViz 2.0 wurde mithilfe des Frameworks Vizard realisiert. Vizard ist eine Laufzeitumgebung für Programme der Skriptsprache Python und stellt eine umfangreiche 3D-Grafik- und Multimediabibliothek zur Verfügung. Vizard selbst verwendet OpenGL zur Grafikdarstellung. Der Vorteil von Vizard ist die einfache und schnelle Anwendung von Entwicklungen, sowie die bereits eingebaute Unterstützung für 3D-Monitore und weitere Hardware. Verwendet wurden die bei der Firma EADS vorhandenen 3D-Modelle von Luftfahrzeugen, Flugschreiberdaten und Kartendaten. Die Kartendaten wurden mithilfe eines C-Programms ausgelesen und in ein 3D-Modell der darzustellenden Landschaften umgewandelt. Für die Luftfahrzeuge wurde eine spezielle Konfigurationsdatei entwickelt, die auf einer XML-ähnlichen Syntax aufbaut. Mit ihrer Hilfe kann man für jedes darzustellende Luftfahrzeug dessen Animation anhand von Flugschreiberdaten festlegen, außerdem kann man eine eventuell notwendige Verarbeitung der Flugschreiberdaten hier definieren. Weiterhin können anzuzeigende Instrumente hier angegeben werden. Die Instrumente basieren auf einigen Standard-Instrumententypen (Zeigerinstrument, LED-Instrument), sind aber frei konfigurierbar im Hinblick auf anzuzeigende Daten oder ihr Aussehen. Das Konzept dieser Datei erlaubt eine große Flexibilität, somit kann das Programm einfach um weitere Luftfahrzeuge erweitert werden.
Links
Die Homepage der Firma EADS
Die Homepage der Herstellerfirma von Vizard
Informationen zur Programmiersprache Python
Canvys: Ein Hersteller von 3D-Monitoren
Für weitere Informationen bitte E-Mail an stl@upb.de