查看: 692|回复: 7

ArduPilot与Pixhawk什么关系?

[复制链接]

45

主题

827

帖子

1641

积分

金牌飞友

Rank: 6Rank: 6

积分
1641
飞币
805
注册时间
2017-9-7
发表于 2022-10-28 12:42:44 | 显示全部楼层 |阅读模式
最近想尝试开源无人机,便在网上搜索了一下早已如雷贯耳的ArduPilot和Pixhawk,没想到一堆名词映入眼帘:PX4、Pixhawk、APM、ArduPilot、Dronecode……费了一番功夫来弄懂他们之间的关系,记录在此,如果有误还请大家指正,拜谢!!!

  • 1. 开源项目PX4和ArduPilot
  • 2. Dronecode和ArduPilot
  • 3. PX4和ArduPilot区别
1. 开源项目PX4和ArduPilot

这两个其实才是真正的无人机开源项目,其代码均在Github中可以找到(PX4开源代码及ArduPilot开源代码)。
ArduPilot与APM的关系:ArduPilot的“Ardu”部分取自Arduino。最初APM1自动导航板是基于Arduino开发环境的。自从ArduPilot成长的比Arduino环境更快时,就不再使用Arduino运行库了。尽管仍然使用稍加修改的Arduino集成开发环境版本,来支持用于基于AVR的APM1与APM2板的ArduPilot,但是也支持Arduino兼容硬件(如PX4),为表示当前代码的跨平台特性,把“Ardu”前缀从软件项目取消,改为了“APM” 前缀(APM:Copter,APM:Plane,APM:Rover等)。
PX4和APM是两套最成熟先进的无人机软件系统,PX4由苏黎世理工大学(ETH)的科研团队研发并开放,而APM则是累积了几年来众多开发者和发烧玩家的代码贡献,逐渐成熟起来。围绕着这两套系统有一系列的开源硬件:如Pixhawk飞控,APM飞控还有最新的高通骁龙Snap Dragon Flight,PIXHAWK2等等。 所以题目中的两个词,ArduPilot更偏指一套代码,而Pixhawk则偏指一套硬件,不知道我这样理解是否正确。
2. Dronecode和ArduPilot

Dronecode起源:PX4和APM系统吸引了数以千计的开发者参与开发制作。因为开源的性质,所有的代码都在网络上开放,每个人都有机会对代码系统做出贡献。除了DIY玩家,学校的科研机构以及无人机厂商也愿意使用PX4和APM进行科研或者商业用途。两套成熟的飞控系统吸引了大量的开发者,玩家以及公司,一个围绕着开源飞控而聚集的社区慢慢成型了。当聚集的人越来越多,就需要一个组织来管理社区的各种事务,决策社区的发展方向,这时,Dronecode便应运而生。
Dronecode附属于开源基金会Linux Foundation管理模式下,通过借鉴学习开源项目Linux的成功经验,建立国际开源无人机组织。有两大开源系统APM和PX4的支撑,Dronecode在创办之初就聚集了大量的开发者和公司,其中不乏高通、Intel这样有意愿涉足无人机领域的科技大佬,还有众多无人机厂商,特别说明的是目前在Dronecode旗下的中国企业有:Yuneec,赫星等等。就这样,开源无人机总算成立的自己的组织,有了响亮的名头。
所以Dronecode其实是一个社区,他旗下两个最大的项目就是ArduPilotPX4(当然这只是曾经,因为现在ArduPilot已经从Dronecode脱离了,具体原因看下面)。
3. PX4和ArduPilot区别

Ardupilot带头人Philip和Andrew公开的文中指 出,组织内的高级成员公司更加青睐PX4的原因显而易见:PX4使用的商业执照是 BSD执照,而Ardupilot的执照是GPLv3,两者最大的不同是,如果公司使用BSD执照的代码,他们没有义务将自己对代码的改进和提升公布给开源社区;而使用GPL v3代码的公司,则有义务将自己的代码公开,贡献给开源社区的所有成员。举 个简单的例子,3DRobotics的消费者无人机产品Solo使用的就是衍生版Ardupilot代 码,因此Solo的代码在网上是被公开的。
作为以商业利益为核心的公司,希望开源的代码为自己提供免费的利益,却也不希望自己的核心技术被大众所知道而削弱了自己的竞争力,因此宁愿使用BSD执照的PX4代码。坚守开源精神的Ardupilot阵营认为,只有每个公司都愿意在使用开源成果的同时,也贡献自己的一份力量,才有可能促进开源技术的持续发展。
看到这里就更明白一些了,虽然都是开源,但PX4和ArduPilot还是有很大区别的。Dronecode里那些高级会员为了使用开源代码,同时还不想做贡献,更加青睐PX4。另一个更大的项目Ardupilot就不干了,于是就离开了Droncode。
这里只以一个平民爱好者的角度来看,作为一个硬件平台Pixhawk可以跑PX4代码,也可以跑ArduPilot代码,所以自己玩的时候一定要注意区分,使用诸如MissionPlanner和QGroundContrl升级固件时终于明白是怎么回事了。
最后:如果理解有误请指正,当然也非常欢迎大佬补充。
参考资料:
ArduPilot与Dronecode:开源无人机何去何从
Dronecode的开源理想国
最流行的开源飞控项目ArduPilot Mega(APM)介绍及发展历史
开源自动导航系统 ArduPilot/APM

44

主题

873

帖子

1746

积分

金牌飞友

Rank: 6Rank: 6

积分
1746
飞币
863
注册时间
2017-8-15
发表于 2022-10-28 12:51:44 | 显示全部楼层
谢谢分享!作者是从事无人机工作的吗?

378

主题

419

帖子

1193

积分

金牌飞友

Rank: 6Rank: 6

积分
1193
飞币
776
注册时间
2017-7-8
发表于 2022-10-28 12:57:12 | 显示全部楼层
感谢分享

37

主题

827

帖子

1629

积分

金牌飞友

Rank: 6Rank: 6

积分
1629
飞币
800
注册时间
2017-9-6
发表于 2022-10-28 13:09:02 | 显示全部楼层
谢谢学习了

50

主题

857

帖子

1697

积分

金牌飞友

Rank: 6Rank: 6

积分
1697
飞币
840
注册时间
2017-8-7
发表于 2022-10-28 13:20:06 | 显示全部楼层
感谢分享

36

主题

895

帖子

1789

积分

金牌飞友

Rank: 6Rank: 6

积分
1789
飞币
870
注册时间
2017-9-30
发表于 2022-10-28 13:25:19 | 显示全部楼层
终于搞清楚pixhawk和px4的区别了

40

主题

820

帖子

1612

积分

金牌飞友

Rank: 6Rank: 6

积分
1612
飞币
790
注册时间
2017-9-25
发表于 2022-10-28 13:40:11 | 显示全部楼层
其实Pixhawk代表的不仅仅局限于一套软硬件  更多的是一种生态

50

主题

857

帖子

1697

积分

金牌飞友

Rank: 6Rank: 6

积分
1697
飞币
840
注册时间
2017-8-7
发表于 2022-10-28 13:45:43 | 显示全部楼层
还是一头雾水。
您需要登录后才可以回帖 登录 | 加入联盟

本版积分规则

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