查看: 671|回复: 0

APM/Pixhawk/PX4还傻傻分不清吗?如何搭建PX4的开发环境?

[复制链接]

47

主题

858

帖子

1697

积分

金牌飞友

Rank: 6Rank: 6

积分
1697
飞币
837
注册时间
2017-8-13
发表于 2025-2-10 10:59:35 | 显示全部楼层 |阅读模式
一、APM/Pixhawk/PX4还傻傻分不清吗?APM(全称:ArduPilotMega)是在2007年由DIY无人机社区(DIY Drones)推出的飞控产品,是当今最为成熟的开源硬件项目。APM基于Arduino的开源平台,对多处硬件做出了改进,包括加速度计、陀螺仪和磁力计组合惯性测量单元(IMU)。由于APM良好的可定制性,APM在全球航模爱好者范围内迅速传播开来。通过开源软件Mission Planner,开发者可以配置APM的设置,接受并显示传感器的数据,使用google map完成自动驾驶等功能,但是Mission Planner仅支持windows操作系统。

mission planner地面站
目前APM飞控已经成为开源飞控成熟的标杆,可支持多旋翼、固定翼、直升机和无人驾驶车等无人设备。针对多旋翼,APM飞控支持各种四、六、八轴产品,并且连接外置GPS传感器以后能够增稳,并完成自主起降、自主航线飞行、回家、定高、定点等丰富的飞行模式。APM能够连接外置的超声波传感器和光流传感器,在室内实现定高和定点飞行。
PX4是一个软硬件开源项目(遵守BSD协议),目的在于为学术、爱好和工业团体提供一款低成本、高性能的高端自驾仪。这个项目源于苏黎世联邦理工大学的计算机视觉与几何实验室、自主系统实验室和自动控制实验室的PIXHawk项目。PX4FMU自驾仪模块运行高效的实时操作系统(RTOS),Nuttx提供可移植操作系统接口(POSIX)类型的环境。例如:printf()、pthreads、/dev/ttyS1、open()、write()、poll()、ioctl()等。软件可以使用USB bootloader更新。PX4通过MAVLink同地面站通讯,兼容的地面站有QGround Control和Mission Planner,软件全部开源且遵守BSD协议。
由3DR联合APM小组与PX4小组于2014年推出的PIXHawk飞控,是PX4飞控的升级版本,拥有PX4和APM两套固件和相应的地面站软件。PIXHawk拥有168MHz的运算频率,采用了整合硬件浮点运算核心的Cortex-M4作为主控芯片,内置两套陀螺和加速度计MEMS传感器,互为补充矫正,内置三轴磁场传感器并可以外接一个三轴磁场传感器,同时可外接一主一备两个GPS传感器,在故障时自动切换。
APM/Pixhawk/PX4还傻傻分不清吗?如何搭建PX4的开发环境?w2.jpg
QGround Control地面站
APM/Pixhawk/PX4还傻傻分不清吗?如何搭建PX4的开发环境?w3.jpg
简而言之,目前主流就两种:APM和PIXHAWK。具体是指硬件和软件:硬件分2种:APM和PIXHAWK。APM的版本有2.5,2.6和2.8,PIXHAWK的版本有v1和v2、v3、v4等。软件也分2种:APM和PX4。软件版本就多了去了,详见github。APM硬件由于存储空间有限,最高支持到3.2.1的APM软件。PIXHAWK硬件是STM32F4,存储空间大,对APM软件(3.2.1之后的版本也支持)和PX4都支持。
APM/Pixhawk/PX4还傻傻分不清吗?如何搭建PX4的开发环境?w4.jpg
二、如何搭建PX4的开发环境?搭建过程还是建议参考官网:切记切记。首先第一步,给管理权限,然后注销重登:sudo usermod -a -G dialout $USER第二步,你要明白,PX4固件一直在更新,在Github直接git的版本的是1.11,而当前大部分教程编译是停留在1.8、1.9版本,所以,固件源码下载一定要指定版本:git clone -b v1.8.2 https://github.com/PX4/Firmware.git完成后,初始化更新依赖库cd Firmware/git submodule update --init --recursive查看当前PX4固件版本,如下所示:git describe --always --tags
APM/Pixhawk/PX4还傻傻分不清吗?如何搭建PX4的开发环境?w5.jpg
第三步,开始编译过程:开始编译make px4fmu-v2_default此时会进入编译,如果你忽略了第一步,或者第一步没成功,则会出现如下报错:ccache: error: Failed to create file /home/myz/.ccache/f/5/a6b6c56e4e3aeb4a16157fdf5088ae-205662.o.tmp.stdout.myz-Inspiron-7559.4025.2A29qU: Permission deniedsrc/modules/px4iofirmware/CMakeFiles/px4iofirmware.dir/build.make:134: recipe for target 'src/modules/px4iofirmware/CMakeFiles/px4iofirmware.dir/mixer.cpp.obj' failedmake[7]: *** [src/modules/px4iofirmware/CMakeFiles/px4iofirmware.dir/mixer.cpp.obj] Error 1此时,需要给管理权限:sudo make px4fmu-v2_default然后就可以进入正常编译,时间是比较慢长的,你可以看点该看的东西,中间会报几个错误,缺少相关依赖库,缺啥装啥,需要啥就pip啥。sudo apt-get install python-jinja2sudo pip install numpy toml当你出现如下界面100%,那么恭喜你,编译完成,就可以进入你的自由发挥的阶段了。
APM/Pixhawk/PX4还傻傻分不清吗?如何搭建PX4的开发环境?w6.jpg
运行PX4自带的仿真界面:sudo make posix_sitl_default jmavsim可以看到效果还是比较好的

三、开源资料网站汇总1.飞控类:
KK飞控官网:
http://www.kkmulticopter.kr/
MWC飞控官网:
http://www.multiwii.com/connecting-elements
PX4飞控官网:
http://pixhawk.org/zh/start
APM官网:
http://code.google.com/p/ardupilot-mega/wiki/APM2board?wl=zh-Hans
APM论坛:
http://plane.ardupilot.com/
ACM官网:
https://code.google.com/p/arducopter/
ACM论坛:
http://copter.ardupilot.com/
Megapiratex官网:
http://megapiratex.com/index.php
MegaPirateNG官网:
http://code.google.com/p/megapirateng/

2.电调类:
MK电调:
http://www.mikrokopter.com/ucwiki/BrushlessCtrl#LED_Signale

3.云台类:
simplebgc云台官网
http://www.simplebgc.com/eng/downloads/
德版开源云台官网:
http://code.google.com/p/brushless-gimbal/
EVVGC云台项目地址:
http://www.rcgroups.com/forums/showthread.php?t=1872199

4.遥控器类:
433MHz远程遥控器:
http://code.google.com/p/openlrs/5

5.交流论坛:
Rcgroups官网:
http://www.rcgroups.com/forums/index.php
Diydrones官网:
http://diydrones.com/
3drobotics官网:
http://3drobotics.com/
飞控交流论坛:
http://www.openpilot.org/
太阳能飞机制造商官网:
http://titanaerospace.com/
点名时间:
http://www.demohour.com/
您需要登录后才可以回帖 登录 | 加入联盟

本版积分规则

快速回复 返回顶部 返回列表