De/Interaktiver Verkehr

From FlightGear wiki
Revision as of 17:55, 12 January 2014 by Miheld (talk | contribs)
Jump to navigation Jump to search
Diese FAQ basiert auf der englischen Version und befindet sich momentan in der Übersetzung!
Es sind noch nicht alle Themen (korrekt)übersetzt, bitte habe etwas Geduld oder hilf bei der Übersetzung!


Interaktiver Verkehr oder AI-Verkehr steht seit der Version 0.9.5 von FlightGear zur Verfügung. Seitdem wird das interaktive Verkehrssystem ständig weiterentickelt. Das interaktive Verkehrsystem basiert auf einer Art Künstlichen Intelligenz (Artificial Intelligence). Diese Seite stellt die erforderliche Dokumentation für die Einrichtung und Nutzung des interaktiven Verkehrssystem dar.

Das interaktive Verkehrssystem beinhaltet drei Schritte:

  1. Erstellen von Dateien für den interaktiven Verkehr
  2. Flughäfen für den interaktiven Verkehr vorbereiten
  3. Anflug- und Abflugverfahren für den jeweiligen Flughafen erstellen

Die Flugzeuge für den interaktiven Verkehr sind ein Teil des Basispaketes. Eine zusätzliche Installation von AI-Flugzeugen ist nicht mehr erforderlich.

Dateiverzeichnis für den interaktiven Verkehr

Die Dateien für den interaktiven Verkehr werden im "Extended Markup Language"-Format (XML; Dateiendung:.xml) erstellt. Der Speicherort dieser Dateien hängt von der Version von FlightGear ab. In der nachfolgenden Tabelle sind die Unterverzeichnisse im FlightGear-Hauptverzeichnis aufgeführt:

FlightGear-Version Verzeichnis Hinweis
0.9x $FG ROOT/Traffic/
1.0 $FG ROOT/AI/Aircraft/ Beispiel: AI-Flugzeuge einer A380 der Lufthansa sind hier gespeichert: $FG ROOT/AI/Aircraft/A380/A380-Lufthansa-traffic.xml
1.9.0 und höher $FG ROOT/AI/Traffic/ Mit der FlightGear-Version 1.9.0 und höher wird ein neues Dateiformat genutzt (im Folgenden als "Traffic-Manager II"-Format (TM-II) bezeichnet). Mit TM-II-Format sind die AI-Flugzeuge und die AI-Verkehrdaten getrennt. Dies führt zu einer höheren Flexibilität beim interaktiven Verkehr.


Traffic-Manager-System

Der interaktive Verkehr in FlightGear konzentriert sich auf den Flugverkehr.

Ein Verkehrsflugzeug wird durch eine Fluglinie täglich eingesetzt um Passagiere von einem Flughafen zu einem anderen Flughafen zu bringen. So werden Flugzeuge zu Langstreckenflüge zwischen Kontinenten, aber auch zu kürzeren Inlandsflügen eingesetzt. Weiter gibt es auch Standzeiten für das Aus- und Einsteigen von Passagieren, für die Betankung und weiteren Servicezeiten am Flughafen. Diese unterschiedlichen Flug- und Standzeiten müssen bei einem interaktiven Verkehr berücksichtigt werden.

Zur Zeit werden die Flug- und Standzeiten in FlightGear noch nicht wirklichkeitgetreu umgesetzt. Dies soll jedoch in Zukunft möglich sein. So kann jedem einzelnen AI-Flugzeug eine oder mehrere Flugrouten zugeordnet werden, die regelmäßig - stündlich, täglich oder wöchentlich - wiederholt werden können.

Das FlightGear-Traffic-Manager-System überprüft periodisch die ungefähre Position der AI-Flugzeuge in seiner Datenbank. Diese Datenbank wurde ursprünglich auf der Grundlage einer festen Flugtabelle je AI-Flugzeug erstellt. Wie in der realen Welt endet ein Flug an einem Flughafen und der folgende Flug des AI-Flugzeuges startet wieder an diesem. In der realen Welt werden Flugzeuge auf unterschiedlichen Routen eingesetzt. In FlightGear fliegen die AI-Flugzeuge auf der gleichen Route hin und her. Ebenso wird in FlightGear die Wartung der AI-Flugzeuge und die dadurch außer Betriebnahme nicht berücksichtigt.

Mit dem "Traffic-Manager II"-Format sind die durchzuführenden Flüge nicht mehr starr einem bestimmten Flugzeug zugeordnet. Stattdessen werden die durchzuführenden Flüge einer Flugzeugflotte zugeordnet. Das Routing wird vom FlightGear-TrafficManager-System übernommen.


Traffic-Manager-Datei

Nachfolgend ist eine eine Beispiel für eine "Traffic-Manager II"-Datei aufgeführt. Diese Traffic-Manager-Datei wird in den FlightGear-Versionen 1.9.0 und höher verwendet:

<?xml version="1.0"?>
 <trafficlist>
    <aircraft>
       <model>Aircraft/MD11/Models/KLMmd11.xml</model>
       <livery>KLM</livery>
       <airline>KLM</airline>
       <home-port>EHAM</home-port>
       <required-aircraft>MD11KLM</required-aircraft>
       <actype>MD11/P</actype>
       <offset>25</offset>
       <radius>39</radius>
       <flighttype>gate</flighttype>
       <performance-class>jet_transport</performance-class>
       <registration>PH-KCA</registration>
       <heavy>true</heavy>
    </aircraft>
    <aircraft>
       <model>Aircraft/MD11/Models/KLMmd11.xml</model>
       <livery>KLM</livery>
       <airline>KLM</airline>
       <home-port>EHAM</home-port>
       <required-aircraft>MD11KLM</required-aircraft>
       <actype>MD11/P</actype>
       <offset>25</offset>
       <radius>39</radius>
       <flighttype>gate</flighttype>
       <performance-class>jet_transport</performance-class>
       <registration>PH-KCB</registration>
       <heavy>true</heavy>
    </aircraft>
 
    <flight>
       <callsign>KLM0765</callsign>
       <required-aircraft>MD11KLM</required-aircraft>
       <fltrules>IFR</fltrules>
       <departure>
           <port>EHAM</port>
           <time>0/12:35:00</time>
       </departure>
       <cruise-alt>330</cruise-alt>
       <arrival>
           <port>TNCM</port>
           <time>0/21:15:00</time>
       </arrival>
       <repeat>WEEK</repeat>
    </flight>
 
    <flight>
       <callsign>KLM0769</callsign>
       <required-aircraft>MD11KLM</required-aircraft>
       <fltrules>IFR</fltrules>
       <departure>
           <port>TNCM</port>
           <time>3/01:25:00</time>
       </departure>
       <cruise-alt>330</cruise-alt>
       <arrival>
           <port>EHAM</port>
           <time>3/10:50:00</time>
       </arrival>
       <repeat>WEEK</repeat>
    </flight>
 </trafficlist>

Dateiaufbau

Die Traffic-Manager II-Dateien sind im "Extended Markup Language"-Format (XML-Format) aufgebaut. Der logische Aufbau entspricht einer Baumstruktur und ist damit hierarchisch organisiert.

Die Traffic-Manager II-Datei hat folgenden Aufbau:

  • Allgemeiner Teil
  • Flugzeugdefinition
  • Flugplandefinition

Allgemeiner Teil

Der allgemeine Teil der Traffic-Manager II-Datei enthält in der ersten Zeile einen generischen XML-Header <?xml version="1.0"?>. In der zweiten Zeile folgt der sogenannte Start-Tag <trafficlist>. Die Traffic-Manager II-Datei wird mit einem End-Tag </trafficlist> abgeschlossen.

Beispiel:

<?xml version="1.0"?>
 <trafficlist>

 </trafficlist>


Flugzeugdefinition

Nach dem XML-Header und dem Start-Tag der Traffic-Manager II-Datei folgt die Definition der Flugzeuge. Jedes Flugzeug muss definiert werden. Die Flugzeugdefinition beginnt mit dem XML-Tag <aircraft> und endet mit dem XML-Tag </aircraft>.

Ein Flugzeug wird mit folgenden Eigenschaften beschrieben:

XML-Tag Beschreibung Beispielwert Hinweis
<model> Datei Aircraft/MD11/Models/KLMmd11.xml Verzeichnispfad und Dateiname der Datei des 3D-Modells
<livery> Lackierung KLM Dieser Wert wir zur Zeit nicht genutzt.

Ursprünglich bestand die Idee, das einzelnen Flugzeugen eine individuelle Lackierung erhalten sollten. Die Zuordnung wäre über die Angaben <model> und <livery> erfolgt. Eine Umsetzung ist bisher nicht erfolgt, da Kompabilitätsprobleme nicht auszuschließen sind.

<airline> Fluggesellschaft KLM Dieser Wert wird für die Zuweisung und Verwendung der Parkpositionen am Gate oder der Vorfeld-Standplätze genutzt. Es ist der offizielle dreistellige ICAO-Code für die Fluggesellschaften zu verwenden. Für Privat- oder Militärflugzeuge können andere Werte genutzt werden.
<home-port> Heimatflughafen EHAM Jedem Flugzeug wird ein Heimatflughafen zugewiesen. Verwendet wird der vierstellige ICAO-Code. In FlightGear wird dadurch sichergestellt, dass eine Flugroute am Heimatflughafen endet. Dadurch wir der Routing-Algorithmus des Traffic-Manager-Systems genauer.
<required-aircraft> Flugplanzuordnung MD11KLM Mit diesem Wert wird dieses Flugzeug mit einem Flugplan verknüpft. Der Wert <required-aircraft> (hier MD11KLM) wird auch bei der Flugplandefinition verwendet.

Wird ein Flugzeugtyp einer Fluggesellschaft von mehreren Heimatflughäfen (z.B. bei der KLM von Frankfurt und Amsterdam) betrieben, sind die Flugpläne aufzuteilen. Damit die Flugpläne übersichtlich bleiben, kann je Heimatflughafen der ICAO-Code des Flughafen verwendet werden, zum Beispiel: Flugplan-Frankfurt MD11KLMEDDF und Flugplan-Amsterdam MD11KLMEHAM).

<actype> ATC-Name MD11 Eine Beschreibung des Flugzeugtyps für die zukünftige Verwendung bei der Flugverkehrskontrolle (ATC).
<offset> Korrekturwert 25 Korrekturwert des verwendeten 3D-Modells des Flugzeugs

Dieser Wert dient dazu, dass das 3D-Modell mit den Rädern den Boden berührt. Bei einem falschen Wert "schwebt" oder "versinkt" das Flugzeug im Boden. Dieser Wert wird wahrscheinlich zuküftig nicht mehr erforderlich sein, da ein entsprechender Wert in der XML-Datei des Flugzeuges verwendet wird.

<radius> Flugzeuggrösse 39 Dieser Wert beschreibt die geschätzte Flugzeuggrösse. Dieser Wert wird auf den Flughäfen eingesetzt um zum Beispiel eine passende Parkposition am Gate zu finden.
<flighttype> Flugzeugtyp Tor Folgende Werte sind möglich:
  • ga - Allgemeiner Luftverkehr
  • cargo - Frachtverkehr
  • gate - Passagierverkehr
  • mil-fighter - Militärische Luftverkehr
  • mil-cargo - Militärischer Frachtverkehr

In Zukunft sollen diese Werte die Zuweisung der Start- und Landebahnen, der Rollwege und der Parkpositionen beeinflussen. Die verschiedenen Flugzeugtypen werden auf den Flughäfen mit diesem Wert individuell gesteuert.

<performance-class> Leistungseigenschaft jet_transport Folgende Werte sind möglich:
  • light_aircraft - Ein- oder zweimotoriges Propellerflugzeug
  • ww2_fighter - Flugzeug aus dem 2. Weltkrieg
  • jet-transport - Modernes Verkehrsflugzeug
  • jet_fighter - Militärflugzeug
  • tanker - Tankflugzeug
  • ufo - Ermöglicht extreme Beschleunigung bzw. Verzögerungen

Diese Werte sollen die Leistungseigenschaft des Flugzeuges beschreiben und einen realistischen AI-Verkehr gewährleisten.

<registration> Flugzeugregistrierung PH-KCA Flugzeugregistrierung am Flugzeugheck. Die Flugzeugregistrierung wird zukünftige bei der Flugverkehrskontrolle (ATC) verwendet. Für den gewerblichen Verkehr wird die Flugzeugregistrierung wahrscheinlich nicht genutzt werden.
<heavy> ATC-Zusatz true Folgende Werte sind möglich:
  • true
  • false

Eine zusätzliche Beschreibung des Flugzeugtyps für die zukünftige bei der Flugverkehrskontrolle (ATC). Wird der Wert true verwendet, wird der Zusatz Heavy an das Rufzeichen (Callsign) des Fluges angehängt.

Beispiel:

<?xml version="1.0"?>
 <trafficlist>
    <aircraft>
       <model>Aircraft/MD11/Models/KLMmd11.xml</model>
       <livery>KLM</livery>
       <airline>KLM</airline>
       <home-port>EHAM</home-port>
       <required-aircraft>MD11KLM</required-aircraft>
       <actype>MD11/P</actype>
       <offset>25</offset>
       <radius>39</radius>
       <flighttype>gate</flighttype>
       <performance-class>jet_transport</performance-class>
       <registration>PH-KCA</registration>
       <heavy>true</heavy>
    </aircraft>
    <aircraft>
      ...
    </aircraft>
 
 </trafficlist>

Flugplandefinition

Nach der Flugzeugdefinition folgt die Definition des Flugplanes. Jeder Flug muss einzeln definiert werden. Die Flugplandefinition beginnt mit dem XML-Tag <flight> und endet mit dem XML-Tag </flight>.

Ein Flugplan wird mit folgenden Eigenschaften beschrieben:

XML-Tag Beschreibung Beispielwert Hinweis
<callsign> Rufzeichen KLM0769 Jedes Flugzeug hat für die Flugverkehrskontrolle (ATC) ein Rufzeichen. Bei einem Flugzeug einer Fluggesellschaft setzt sich das Rufzeichen aus dem Rufzeichen der Fluggesellschaft (z.B. bei KLM -> KLM oder Lufthansa -> LH) und der Flugnummer (z.B. KLM0605 oder LH1860) zusammen.
<required-aircraft> Flugzeugzuordnung MD11KLM Mit diesem Wert wird der Flugplan mit dem Flugzeug verknüpft. Der Wert <required-aircraft> (hier MD11KLM) wird auch bei der Flugzeugdefinition verwendet.
<fltrules> Flugregel IFR Folgende Werte sind möglich:

Dieser Wert wird zukünftig für die Flugverkehrskontrolle (ATC) benötigt. Mit IFR erfolgt der Flug nach den Instrumentenflugregeln. Wird der Wert VFR verwendet, wir der Flug nach den Sichtflugregeln behandelt.

<departure> Abflugdefinition Beginn des Abschnitts im Flugplan für Abflugflughafen und Abflug-Zeitpunkt
<port> Abflugflughafen EHAM Im Flugplan muss ein Abflugflughafen angegeben werden. Verwendet wird der vierstellige ICAO-Code.
Abflugzeit 0/12:35:00 Neben dem Abflugflughafen muss auch auch eine Abflugzeit angegeben werden. Für die Abflugzeit muss der Wochentag und die Uhrzeit nach UTC angegeben werden. Der Wert hat folgende Form: Wochentag/Uhrzeit.

Die Wochentag haben folgenden Wert:

  • 0 - Sonntag
  • 1 - Montag
  • 2 - Dienstag
  • 3 - Mittwoch
  • 4 - Donnerstag
  • 5 - Freitag
  • 6 - Samstag

Die Uhrzeit hat das Format: Stunde:Minute:Sekunde. Bei der UTC handelt es sich um die koordinierte Weltzeit. Die UTC wird u.a. auch als einheitliche Uhrzeit in der Luftfahrt eingesetzt. Die UTC wird auch Greenwich Mean Time (GMT) genannt, die vom Nullmeridian ausgeht.

</departure> Ende des Abschnitts der Abflugdefinition
<cruise-alt> Datei Aircraft/MD11/Models/KLMmd11.xml Verzeichnispfad und Dateiname der Datei des 3D-Modells
<arrival>
<port> Datei Aircraft/MD11/Models/KLMmd11.xml Verzeichnispfad und Dateiname der Datei des 3D-Modells
Datei Aircraft/MD11/Models/KLMmd11.xml Verzeichnispfad und Dateiname der Datei des 3D-Modells
</arrival>
<repeat> Datei Aircraft/MD11/Models/KLMmd11.xml Verzeichnispfad und Dateiname der Datei des 3D-Modells


Beispiel:

<?xml version="1.0"?>
 <trafficlist>
     ...
    <flight>
       <callsign>KLM0765</callsign>
       <required-aircraft>MD11KLM</required-aircraft>
       <fltrules>IFR</fltrules>
       <departure>
           <port>EHAM</port>
           <time>0/12:35:00</time>
       </departure>
       <cruise-alt>330</cruise-alt>
       <arrival>
           <port>TNCM</port>
           <time>0/21:15:00</time>
       </arrival>
       <repeat>WEEK</repeat>
    </flight>
 </trafficlist>