Python-Implementierung des nichtlinearen 6DOF GARTEUR RCAM-Flugdynamikmodells.
Group for Aeronautical Research and Technology Europe (GARTEUR) – Research Civil Aircraft Model (RCAM). http://garteur.org/wp-content/reports/FM/FM_AG-08_TP-088-3.pdf
Als Leitfaden dienten die hervorragenden Tutorials von Christopher Lum (für Matlab/Simulink):
1 – Gleichungen/Modellierung: https://www.youtube.com/watch?v=bFFAL9lI2IQ
2 – Matlab-Implementierung: https://www.youtube.com/watch?v=m5sEln5bWuM
Das Programm führt die Integrationsschleife mit einer benutzerdefinierten Bildrate aus und passt die Integrationsschritte an die verfügbaren Rechenzyklen an, um Echtzeitdaten an FlightGear zu rendern.
Die Ausgabe wird über UDP mit einer vom Benutzer angegebenen Bildrate an FlightGear (FG) gesendet. Die FG-Schnittstelle verwendet die von Andrew Tridgel implementierte Klasse:
fgFDM: https://github.com/ArduPilot/pymavlink/blob/master/fgFDM.py
Derzeit ist die UDP-Adresse auf den lokalen Computer eingestellt.
Führen Sie dieses Programm in einem Terminal aus und starten Sie FG von einem separaten Terminal aus mit einem der folgenden Befehle (abhängig von den installierten Flugzeug-Add-ons):
fgfs --airport=KSFO --runway=28R --aircraft=ufo --native-fdm=socket,in,60,,5500,udp --fdm=null
fgfs --airport=KSFO --runway=28R --aircraft=Embraer170 --aircraft-dir=./FlightGear/Aircraft/E-jet-family/ --native-fdm=socket,in,60,,5500,udp --fdm=null
fgfs --airport=KSFO --runway=28R --aircraft=757-200-RB211 --aircraft-dir=~/.fgfs/Aircraft/org.flightgear.fgaddon.stable_2020/Aircraft/757-200 --native- fdm=socket,in,60,,5500,udp --fdm=null
fgfs --airport=KSFO --runway=28R --aircraft=757-200-RB211 --aircraft-dir=~/.fgfs/Aircraft/org.flightgear.fgaddon.stable_2020/Aircraft/757-200 --native- fdm=socket,in,60,,5500,udp --fdm=null --enable-hud --turbulence=0.5 --in-air --enable-rembrandt
Zum Funktionieren ist ein Joystick erforderlich. Getestet mit Logitech USB Stick.