FS Magazin AugustSeptember 2017

(Tina Meador) #1
FS MAGAZIN 5/2017 49

ger auf der Flusi-Seite (Bild 1.1) ist ein
spezielles Programm, welches vom
Flusi beim Start des Programms akti-
viert wird. Dieses zusätzliche Pro-
gramm wird als sogenannte Library,
als Bibliothek von Funktionen vom
Flusi-Hauptprogramm ausgeführt und
bereitgestellt. Daher gibt es die
SimConnect.DLL oder die FSUIPC.DLL.
DLL steht für „Dynamic Link Library“.
Alle Programme, die auf einem PC lau-
fen, können solche DLLs einbeziehen.


SimConnect nutzt ein sogenanntes
Client-Server-Modell, um die Kommuni-
kation zwischen dem Simulator und
einem Add On zu ermöglichen. Typi-
scherweise stellt der Client, in unserem
Beispiel AS2016, zuerst eine Anfrage an
den Server, um die Kommunikation zu
eröffnen, im Bild 1.2 die Aktion 1.
Danach kommt die erste Anfrage für
einen Objekttyp, im Bild die Aktion 2.
Im Beispiel handelt es sich um die
Anfrage für die aktuelle Flughöhe.


Im weiteren möglichen Ablauf erstellt
der Client eine Liste mit weiteren
Anfragen von verschiedenen Typen
von Informationen oder Ereignissen,
die an den Server übertragen werden
sollen. Beispielsweise die Geschwindig-
keit und die Flugrichtung.


Dieser Ablauf kann je nach Add On im
Millisekunden-Takt ablaufen oder ein-
malig durch den PC-Piloten manuell
aktiviert werden. Das Besondere ge-
genüber der klassischen Kommunikati-
on ist, dass mit jeder Anfrage der Wert
der Antwort „gleichzeitig“ vom Server
zurückgegeben wird.


Im Beispiel des Bildes 1.2 ist immer die
Aktion 2 und 3 oder die Aktion 4 und 5
ein einziger Funktionsaufruf, ein „CALL
DLL“, indem der erfragte Wert vom
Server zurückgegeben wird.


Das asynchrone Verhalten der Client-
Server-Programmierung bedeutet, dass
der Client nach der Anfrage auf die Ant-
wortdaten des Servers wartet. Zum
Schluss beendet der Client mit einem
„sauberen Zustand“ die „Verbindung“
zum Server und beendet das Programm
nach jedem Durchlauf. Es können meh-
rere Clients zur gleichen Zeit laufen. Ein
Prioritätsmechanismus bestimmt, wel-
che Anfrage in welcher Reihenfolge be-


antwortet wird. Eine
Besonderheit ist, dass
der Client zudem
über eine Netzver-
bindung mit dem
Server kommunizie-
ren kann via
SimConnect.XML

3PRACHE¬ZWISCHEN¬
&LUSI¬UND¬!DD¬/N

SimConnect bietet
viele Sprachele-
mente an, die soge-
nannten API CALLs,
um möglichst alle Informationen
über unseren Flieger lesen zu kön-
nen. API steht für Application Pro-
gramming Interface, was so viel wie
Schnittstelle zur Anwenderpro-
grammierung heißt. Eine Schnitt-
stelle in der Computertechnik ist im
Vergleich wie eine Steckdose, ein
Element zwischen E-Werk und
Staubsauger. Schnittstellen sind
meist genormt und werden für die
Elektroindustrie oder Programmie-
rer veröffentlicht.

Die API CALLs sind die Aufrufe der
Funktionen, quasi der Strom aus der
Steckdose. Der Programmierer hat gut
85 Möglichkeiten, mit Hilfe dieser CALLs
an Daten des Flusi heranzukommen.
Diese Funktionen werden im SDK (Soft-
ware Development Kit), einem „Bau-
satz” für den Add-On-Programmierer
bereitgestellt. Die Funktion selbst ist im
Flusi realisiert.

Ein weiteres Beispiel: AS2016 will die
Höhe des Fliegers lesen. Hierfür gibt es
einen Speicherplatz (Simulation Varia-
ble), mit dem vom Flusi-Programmierer
festgelegten Namen „PLANE ALTITUDE“.
Der stark gekürzte Program-
miertext im Bild 1.3 gibt einen
Eindruck der Komplexität eines
Funktionsaufrufes (API CALL),
um die Flughöhe zu lesen.

%INSATZ¬UND¬.UTZUNG

An dem etwas komplexeren
Beispiel der Module des ehema-
ligen Hardware-Herstellers ITRA
zur Flusi-Steuerung lässt sich
gut zeigen, wo SimConnect eine
Rolle spielt. Alle Hardware-Trei-

ber der verschiedenen ITRA-Module
beinhalten einen SimConnect-Client als
Schnittstelle zum Flusi wie Bild 1.4 zeigt.

Das Tool FS-FlightControl http://www.fs-
flightcontrol.com (FS MAGAZIN 4/2016)
ist ebenfalls ein gutes Beispiel für den
notwendigen Einsatz von SimConnect.
Dieses Tool ist eine Flight-Instructor-
Station, um das Training von Flugmanö-
vern, Ausfällen und vielem mehr zu re-
alisieren. Hierfür ist der direkte Zugang
zum Flusi unabdingbar. Bild 1.5 zeigt,
wie in diesem Tool die SimConnect-
Parameter konfiguriert werden.

Bild 1.2 Diverse Aktionsschritte bei der Kommunikation.

Bild 1.3 Beispiel eines Funktionsaufrufs.

Bild 1.4 SimConnect ist eine zentrale Komponente des Flusis.
Free download pdf