平台:Ubuntu 20.04
PX4版本:v1.33
(提示:PX4版本为v1.3.x,之前的v1.4.0经笔者测试并参考论坛,疑似因为固件版本的原因存在报错)
一、FlightGear安装
1.FlightGear官网提供了多种Linux平台下的安装方式,Ubuntu提供了ppa的安装方式。
sudo add-apt-repository ppa:saiarcot895/flightgear
sudo apt update
sudo apt-get install flightgear
2.测试运行软件。
fgfs --launcher

3.为Protocol文件夹赋予权限。
sudo chmod a+w /usr/share/games/flightgear/Protocol
二、PX4源码安装并编译
1.直接使用GitHub整理好的代码。
git clone https://github.com/ThunderFly-aerospace/PX4Firmware.git
cd PX4Firmware
git checkout flightgear-multi
2.启动标准固定翼仿真
make px4_sitl_nolockstep flightgear_rascal
(FlightGear窗口弹出后,下载地景需要一定时间,请耐心等待,若长时间不加载,可尝试重新编译,3与4中的车辆与旋翼机也是一样)
按下v键可切换视角,鼠标右键旋转视角,按下右键的同时滑动滚轮调整视角远近。

3.启动车辆仿真。
make px4_sitl_nolockstep flightgear_tf-r1

4.启动旋翼机仿真。
make px4_sitl_nolockstep flightgear_tf-g1

注1:编译过程中可能提示需要安装依赖
pip3 install --user packaging
pip3 install --user toml
注2:笔者在测试过程中遇到了如下错误
Could not find a package configuration file provided by "ignition-math4"
with any of the following names:
ignition-math4Config.cmake
ignition-math4-config.cmake
Add the installation prefix of "ignition-math4" to CMAKE_PREFIX_PATH or set
"ignition-math4_DIR" to a directory containing one of the above files. If
"ignition-math4" provides a separate development package or SDK, be sure it
has been installed.
解决办法如下:
sudo apt-get install libignition-math4-dev
三、飞行
1.以固定翼飞机为例,通过make px4_sitl_nolockstep flightgear_rascal编译启动仿真后,打开QGroundControl地面站,在常规设置页面启用虚拟手柄。


2.控制台输入commander takeoff让飞机一键起飞,起飞后建议切换至顶点模式飞行。


3.定点模式下,所有摇杆居中,飞机定速定高平飞。每个通道的控制对应关系可参考PX4官网介绍。



本文详细介绍了如何在Ubuntu20.04系统上安装FlightGear,通过PPA,以及编译和配置PX4版本v1.33以进行多模态飞行器仿真,包括固定翼、旋翼机和地面控制。过程中涉及解决ignition-math4依赖问题及使用QGroundControl进行控制。
1373

被折叠的 条评论
为什么被折叠?



