跳至内容

利用 FlightGear 进行多车模拟

警告

该模拟器是 社区支持和维护.它可能与当前版本的 PX4 兼容,也可能不兼容。

参见 工具链安装 了解核心开发团队支持的环境和工具。

本主题介绍如何在 SITL 中使用 FlightGear 模拟多个飞行器。所有飞行器实例都有由其启动脚本定义的参数。

信息

这是模拟多辆运行 PX4 的载具的最环保逼真的方法,可轻松测试多种不同类型的载具。它适合在以下环境中测试多载具支持 QGroundControl, MAVSDK等等

多车模拟与经典仿真场景Gazebo 应改为用于:有许多载具的蜂群模拟,以及 Gazebo Classic 才支持的计算机视觉等功能测试。

如何启动多个实例

要启动多个实例(在不同的端口和 ID 上):

  1. 查看 支持多种载具的 PX4 分支 (在 ThunderFly-aerospace):

    Git 复制 https://github.com/ThunderFly-aerospace/PX4Firmware.git
    CD PX4 固件
    Git 销售点 多功能飞行器
  2. 使用标准工具链(已安装 FlightGear)构建 PX4 固件。

  3. 使用 预定义脚本:

    CD ./Tools/flightgear_bridge/scripts
    ./vehicle1.sh
  4. 使用另一个脚本启动后续实例:

    ./vehicle2.sh

每个实例都应该有自己的启动脚本,可以代表完全不同的载具类型。对于已准备好的脚本,您应该获得以下视图。

使用 PX4 SITL 和 FlightGear 进行多车模拟

地面站,如 QGroundControl 使用普通 UDP 端口 14550 连接到所有实例(所有流量都连接到同一端口)。

同时运行的实例数量主要受计算机资源限制。FlightGear 是一个单线程应用程序,但空气动力学求解器会消耗大量内存。因此,可以分拆到多台计算机并使用 多人服务器 运行 很多 载具实例。

其他资源

  • 参见 模拟 了解有关端口配置的更多信息。