非线性 6DOF GARTEUR RCAM 飞机飞行动力学模型的 Python 实现。
欧洲航空研究与技术小组 (GARTEUR) - 研究民用飞机模型 (RCAM)。 http://garteur.org/wp-content/reports/FM/FM_AG-08_TP-088-3.pdf
Christopher Lum(针对 Matlab/Simulink)的优秀教程被用作指南:
1 - 方程/建模:https://www.youtube.com/watch?v=bFFAL9lI2IQ
2 - Matlab 实现:https://www.youtube.com/watch?v=m5sEln5bWuM
该程序以用户定义的帧速率运行积分循环,将积分步骤调整为可用的计算周期,以将实时数据呈现给 FlightGear。
输出通过 UDP 以用户指定的帧速率发送到 FlightGear (FG)。 FG接口使用Andrew Tridgel实现的类:
fgFDM:https://github.com/ArduPilot/pymavlink/blob/master/fgFDM.py
目前,UDP 地址设置为本地计算机。
在一个终端中运行此程序,然后从另一个终端运行此程序,使用以下命令之一启动 FG(取决于安装的飞机插件):
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=空
fgfs --airport=KSFO --runway=28R --aircraft=757-200-RB211 --aircraft-dir=~/.fgfs/Aircraft/org.flightgear.fgaddon.stable_2020/Aircraft/757-200 --native- fdm=套接字,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
需要操纵杆才能工作。使用罗技 USB 棒进行测试。