20.10.2025, 22:06
(Dieser Beitrag wurde zuletzt bearbeitet: 20.10.2025, 22:46 von gerhardwmw.)
In diesem Beitrag möchten wir uns mit der Generierung der Alarm-Details für die Anzeige der Alarme beschäftigen.
Die Verarbeitung der vom Flightdirector gelieferten Alarmierungsdaten erfolgt mittels eines Web-Services, welches in einer virtuellen Maschine auf unserem Server läuft.
Das Web-Service ruft die Alarmliste während der Betriebszeiten unseres Modellflugplatzes alle 20 Sekunden ab, sofern Modellflugbetrieb herrscht.
Die Information, ob Modellflugbetrieb herrscht, wird aus unserem elektronischen Flugbuch ermittelt – jedes Mitglied hat einen Mitgliedsausweis mit integriertem RFID-Chip, der vor jedem Start auf einem RFID-Kartenleser aufgelegt wird und so einen Eintrag im elektronischen Flugbuch setzt.
Das Web-Service folgt diesem Workflow alle 20 Sekunden:
Diese JSON-Liste kann nun von jedem REST-HTTP-fähigen Gerät weiterverarbeitet werden.
Wir haben uns für die Anzeige der Liste für ein LED-Matrix-Display entschieden, das von einem ESP angesteuert wird.
Genaue Details dazu beschreiben wir im nächsten Beitrag.
Die Verarbeitung der vom Flightdirector gelieferten Alarmierungsdaten erfolgt mittels eines Web-Services, welches in einer virtuellen Maschine auf unserem Server läuft.
Das Web-Service ruft die Alarmliste während der Betriebszeiten unseres Modellflugplatzes alle 20 Sekunden ab, sofern Modellflugbetrieb herrscht.
Die Information, ob Modellflugbetrieb herrscht, wird aus unserem elektronischen Flugbuch ermittelt – jedes Mitglied hat einen Mitgliedsausweis mit integriertem RFID-Chip, der vor jedem Start auf einem RFID-Kartenleser aufgelegt wird und so einen Eintrag im elektronischen Flugbuch setzt.
Das Web-Service folgt diesem Workflow alle 20 Sekunden:
- Ist der Zeitpunkt innerhalb der Betriebszeiten? Wenn nein, Ausstieg. Wenn ja, nächster Schritt.
- Herrscht Flugbetrieb? Dazu wird das Flugbuch abgefragt, ob aktuell ein Flug angemeldet ist. Wenn nein, Ausstieg. Wenn ja, nächster Schritt.
- Wenn am heutigen Tag noch nicht erfolgt bzw. seit dem letzten Start des Web-Services noch nicht erfolgt, werden die Registrierungsdatenbanken der AustroControl und anderer Anbieter eingelesen.
- Abruf der Alarmliste vom FlightDirector.
- Abruf der Liste der aktuell im Luftraum befindlichen Flugzeuge inkl. aller Detaildaten
- Erstellung der Alarm-Detail-Datei. Dabei werden folgende Parameter erhoben:
Code:{
"Kennzeichen": "OE-AAA", # Kennzeichen, sofern bekannt
"Art": "M", # Flugzeugart: M (Motor, Jet), G (Segler), P (Motorsegler), H (Hubschrauber, Gyrocopter), U (Unbekannt)
"Typ": "DA-20", # Flugzeugtyp bzw. -hersteller
"GPSLat": 48.19666, # GPS-Koordinate Latitude
"GPSLon": 14.03602, # GPS-Koordinate Longitude
"Altitude": 1700, # Altitude in ft über MSL
"Speed": 83, # Geschwindigkeit in kts
"Track": 92, # Flugrichtung in °
"Distance": 1.9, # Entfernung in km
"DistanceMFPInM": 1900, # Entfernung zum MFP in m
"AltitudeMFP": 202, # Höhe über Grund MFP in m
"TrackMFP": 207 # Relative Richtung (Bearing) des Flugzeuges zum Modellflugplatz
},
{
...
},
{
...
},
...
- Diese Details werden für alle Flugzeuge in der Alarm-Liste generiert und gemeinsam in einer JSON-basierten Datei abgespeichert.
- Die fertig erstellte Liste wird auf dem Web-Service zum Abruf via REST-HTTP-Call zur Verfügung gestellt.
Diese JSON-Liste kann nun von jedem REST-HTTP-fähigen Gerät weiterverarbeitet werden.
Wir haben uns für die Anzeige der Liste für ein LED-Matrix-Display entschieden, das von einem ESP angesteuert wird.
Genaue Details dazu beschreiben wir im nächsten Beitrag.

