# 模拟飞行器

FlightGear (打开新窗口) 是一款飞行模拟器,具有强大的 FDM 引擎 (打开新窗口).这使得 FlightGear 能够模拟各种气象条件下的旋翼机(这也是为什么该桥最初是由 FlightGear 开发的)。 ThunderFly s.r.o. (打开新窗口)).

本页介绍 FlightGear 在 SITL 中的单车使用。有关多载具使用的信息,请参阅: 利用 FlightGear 进行多车模拟.

支持的载具: 自动飞行器、飞机、漫游车。

美人鱼图 (打开新窗口)

备注

参见 模拟 了解有关模拟器、模拟环境和模拟配置(如支持的载具)的一般信息。

# 安装(Ubuntu Linux)

备注

这些说明在 Ubuntu 18.04 上进行了测试

  1. 安装常用的 Ubuntu LTS / Debian Linux 开发环境.

  2. 安装 FlightGear:

    苏都 add-apt-repository ppa:saiarcot895/flightgear
    苏都 适切 更新
    苏都 适切 安装 飞行装备
    

    这将安装 PAA 软件库中最新的 FlightGear 稳定版和 FGdata 软件包。

    TIP

    对于某些机型(例如带电动发动机的机型),可能需要使用具有最新功能的日常版本。使用 每日构建 PPA (打开新窗口).

  3. 检查是否可以运行 FlightGear:

    fgfs --launcher
    
  4. 设置 协议 文件夹:

    sudo chmod a+w /usr/share/games/flightgear/Protocol
    

    之所以需要设置权限,是因为 PX4-FlightGear-Bridge 将通信定义文件放在这里。

其他安装说明可在 FlightGear 维基百科 (打开新窗口).

# 运行模拟

启动 PX4 SITL,指定所选机身配置,运行模拟。

最简单的方法是在 PX4 根目录下打开终端 PX4-自动驾驶仪 并调用 生产 的目标。例如,要启动飞机模拟 :

CD /path/to/PX4-Autopilot
生产 px4_sitl_nolockstep flightgear_rascal

支持的载具和 生产 命令如下(点击链接查看载具图片)。

载具 指挥
标准平面 make px4_sitl_nolockstep flightgear_rascal
阿克曼飞行器(UGV/UGV无人车) make px4_sitl_nolockstep flightgear_tf-r1
自动飞行器 make px4_sitl_nolockstep flightgear_tf-g1

上述命令可启动具有完整用户界面的单个载具。 QGroundControl 应能自动连接到模拟载具。

备注

有关 FlightGear 构建目标(突出显示)的完整列表,请运行

make px4_sitl_nolockstep list_vmd_make_targets | grep flightgear_

更多信息,请参见 FlightGear 载具 (这包括有关不支持的载具和添加新载具的信息)。

备注

安装文件和代码 如果出现构建错误,该指南将是一个有用的参考。

# 飞向天空

生产 按照上述命令,首先创建 PX4,然后与 FlightGear 模拟器一起运行。

PX4 启动后,将启动 PX4 外壳,如下图所示。必须选择回车才能进入命令提示符。

INFO [px4] Calling startup script:/bin/sh etc/init.d-posix/rcS 0 INFO [param] selected parameter default file eeprom/parameters_1034 I'm Mavlink to FlightGear Bridge Target Bridge Freq: 200, send data every step: 1 4 5 -1 7 -1 2 1 4 1 [param] Loaded: eeprom/parameters_1034 INFO [dataman] Unknown restart, data manager file './dataman' 大小为 11798680 字节 INFO [simulator] 等待模拟器接受 TCP 端口 4560 的连接 INFO [simulator] 模拟器已连接 TCP 端口 4560。INFO [commander] LED: open /dev/led0 failed (22) INFO [commander] Mission #3 loaded, 9 WPs, curr: 8 INFO [init] Mixer: etc/mixers-sitl/plane_sitl.main.mix on /dev/pwm_output0 INFO [mavlink] mode:Normal, data rate:4000000 B/s,udp 端口 18570,远程端口 14550 INFO [airspeed_selector] 未检测到空速传感器。切换到非空速模式。INFO [mavlink] 模式:Onboard, data rate:4000000 B/s,udp 端口 14580,远程端口 14540 INFO [mavlink] 模式:板载,数据传输速率:4000 B/s,udp 端口 14280,远程端口 14030 INFO [logger] 启动日志程序(模式=全部) INFO [logger] 启动文件日志(类型:完整) INFO [logger] 打开完整日志文件:./log/2020-04-28/22_03_36.ulg INFO [mavlink] MAVLink 仅在 localhost 上运行(设置参数 MAV_{i}_BROADCAST = 1 以启用网络) INFO [px4] 启动脚本成功返回 pxh> StatsHandler::StatsHandler() 设置 GL2 兼容着色器 现在检查插件 osgPlugins-3.4.1/osgdb_nvtt.so PX4 Communicator:PX4 已连接;

当 PX4 加载特定机型的初始化和参数文件时,控制台将打印出状态,等待(并连接)模拟器。一旦出现 INFO 打印,表明 [ecl/EKF] 正在 开始 GPS 融合 飞行器已准备就绪。此时,您应该会看到一个 FlightGear 窗口,其中显示了一些飞行器视图。

备注

您可以按 Ctrl+V.

FlightGear 用户界面

您可以通过打字把它带到空中:

pxh>; 指挥官起飞

# 使用/配置选项

您可以通过以下环境变量调整 FG 安装/设置:

  • FG_BINARY - 要运行的 FG 二进制文件的绝对路径。(可以是 AppImage)。
  • fg\_models\_dir - 文件夹的绝对路径,该文件夹包含用于模拟的手动下载的飞机模型。
  • FG\_ARGS\_EX - 任何额外的 FG 参数。

# 显示帧频

在 FlightGear 中,您可以通过启用帧频来显示帧频: 查看> 查看选项> 显示帧频.

# 设置自定义起飞位置

SITL FlightGear 中的起飞位置可使用附加变量进行设置。设置变量将覆盖默认起飞位置。

可设置的变量如下: --机场, --天桥--偏移距离.其他选项见 FlightGear 维基百科 (打开新窗口)

例如

FG_ARGS_EX="--airport=PHNL" make px4_sitl_nolockstep flightgear_rascal

上面的示例在 檀香山国际机场 (打开新窗口)

# 使用操纵杆

通过以下方式支持操纵杆和拇指操纵杆 QGroundControl (在此查看设置说明).

应禁用 FlightGear 中的操纵杆输入,否则 FG 操纵杆输入和 PX4 命令之间会出现竞赛条件。

# 扩展和定制

要扩展或自定义仿真界面,请编辑 ** 中的文件。工具/飞行器桥 文件夹。代码可在 PX4-FlightGear-Bridge存储库 (打开新窗口) 在 Github 上。

# 更多信息