PX4-V1.14开发笔记(2):编译代码

概述

这里我们选择Ubuntu-22.04系统配置开发环境。

  • 官方帮助文档

Setting up a Developer Environment (Toolchain) | PX4 Guide (main)

Windows Development Environment (WSL2-Based) | PX4 Guide (main)

  • 如果官方网站不好打开,可以试试如下镜像网站:

https://px-4.com/v1.14/en/

安装编译工具

进入PX4项目目录后,运行官方提供的脚本进行自动化配置:

cd PX4-Autopilot
bash ./Tools/setup/ubuntu.sh

如果遇到问题:module 'em' has no attribute 'RAW_OPT',那么改变下empy的版本 

$ pip uninstall empy $ pip install empy==3.3.2

启动gazebo仿真

运行如下命令启动gazebo仿真:

cd /path/to/PX4-Autopilot
make px4_sitl gz_x500

仿真支持多种机型,对应的编译命令如下:

VehicleCommandPX4_SYS_AUTOSTART
Quadrotor(x500)make px4_sitl gz_x5004001
Quadrotor(x500) with Depth Cameramake px4_sitl gz_x500_depth4002
Quadrotor(x500) with Vision Odometrymake px4_sitl gz_x500_vision4005
VTOLmake px4_sitl gz_standard_vtol4004
Planemake px4_sitl gz_rc_cessna4003

编程飞控固件

运行如下命令编译适配fmu-v5的固件:

cd PX4-Autopilot
make px4_fmu-v5_default

常用的 Pixhawk飞控版对应的编译如下:

连接地面站

$ ./QGroundControl_v4.2.4.AppImage

如果出现如下错误: 

/tmp/.mount_QGrounkE96Ul/QGroundControl: error while loading shared libraries: libpulse-mainloop-glib.so.0: cannot open shared object file: No such file or directory

则需要安装相关库,运行如下命令: 

sudo apt-get install libpulse-mainloop-glib0

启动地面站后会默认开启UDP接收14550端口,建立无人机通信连接。

 关于NextPilot飞控

NextPilot飞控系统是一款基于px4和rt-thread的国产开源自动驾驶仪,由NextPilot开发团队(nextpilot@qq.com)负责维护。它能够便捷的应用于教育、研究和工业等领域,让工程师专注于自己的擅长领域(比如嵌入式、控制算法、应用业务)进行高效的开发。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值