本文共 585 字,大约阅读时间需要 1 分钟。
经常看见有人在群里问这个
1、APM历史要远长于PX4,因此功能更丰富,经历的坑也更多,填的坑也更多,因此有“功能完善、运行稳定”的优势(这里的稳定指的是由于程序问题莫名其妙炸机的情况少); 2、APM与PX4在一些关键算法上是相互借鉴的,因此算法先进程度差不多; 3、PX4由于起步晚,历史包袱少,最初就搭建了一个很先进的架构,因此获得了代码简洁易懂易懂的优势;相反,ardupilot(APM)最初是基于arduino搞的,Copter3.2.1版本的ArduCopter文件夹中的源代码还都是.pde这种arduino文件后缀,虽然arduino底层本身也是C++,但是ardupilot开局受其影响还是比较大的,不过从Copter3.3版本之后,APM一直在优化代码结构,因此3.3.x、3.4.x、3.5.x、3.6.x以及4.0.x每一代之间都有一些区别(功能不变,就是代码重构),到4.0.x之后,已经差不多了,硬件层抽象做的非常好,花很少时间就能完成自制飞控的移植;飞控代码的各个功能也开始最大化地利用C++的优势,代码已经变得很好用了。 无论你学习哪个固件,即使是PX4固件,自学时初期也是有一定的痛苦期的,一旦你真正入门了,找到了那种感觉,就会发现,其实都一样。 到现在,PX4在功能完善和运行稳定方面已经好不少了,应该跟APM是不相上下的。@你猜啊
转载地址:http://aklni.baihongyu.com/