在上一节无人机飞控方案文章中,小编我为大家讲解了几个工业级、农业植保无人机应用方案例子,那么今天小编我还是为大家带来几个开源无人机平台、软硬件平台、技术特征、使用传感器及其运用优缺点的对比介绍,供大家学习参考。
一、开源ardupilot / apm 系列
apm 是在2007年由diy无人机社区(diy drones)推出的飞控系统。也是迄今为止最为成熟的开源自动导航系统,可支持多旋翼、固定翼、直升机和无人驾驶车等无人设备。
apm 基于arduino的开源平台,对多处硬件做出了改进,包括加速度计、陀螺仪和磁力计组合惯性测量单元(imu)。由于apm良好的可定制性,apm在全球航模爱好者范围内迅速传播开来。通过开源软件mission planner,开发者可以配置apm的设置,接受并显示传感器的数据,使用google map 完成自动驾驶等功能,但是mission planner仅支持windows操作系统。
目前,apm飞控已经成为开源飞控成熟的标杆,针对多旋翼 apm飞控支持各种四、六、八轴产品,并且连接外置gps传感器以后能够增稳,并完成自主起降、自主航线飞行、回家、定高、定点等丰富的飞行模式。apm能够连接外置的超声波传感器和光流传感器,在室内实现定高和定点飞行。
apm系列发展至今,apm2.5 和 apm2.6已经是ardupilot飞控最终版本,apm给我们带来非常强大的功能,非常的成熟可靠,潜能被充分挖掘出来,功能也非常的丰富。但源于apm系列8位cpu计算与存储的能力已经远远不能够满足未来的运用需求了,apm系列产品的终结也是势在必行。
apm 系列支持如下自动导航板
· px4 – 一款32位基于arm的自动导航仪,支持很多高级特性,使用nuttx实时操作系统
· apm2 – 一款受欢迎的avr2560 8位自动导航仪
· apm1(已终止开发) – 一款基于avr2560的自动导航仪,使用分离式结构
由于 ardupilot/apm 源码基于 ap-hal 硬件抽象层编写,使代码能支持更多自动导航板变为可能。
apm 开发语言与工具:
用于ardupilot/apm的主要飞行代码使用c++编写。支持工具使用多语言编写,最常用的是python。
目前,主要载具代码编写为“.pde”文件,由 arduino 构建系统得来。pde文件是预处理为.cpp文件构建的一部分。pde文件中包含的声明也能提供构建规则,说明需要包含与连接到哪些库。
地面站:
ardupilot/apm支持多种地面站用于计划与控制飞行。飞行固件使用mavlink协议,它允许飞机被任何mavlink兼容设备控制。
· 使用最广泛的地面站就是 mission planner,使用用于 windows 的c#语言编写。mission planner 的源码可以在github上查看。mission planner 也能通过 mono 运行在 linux 与 macos 上。
· qgroundcontrol 也是地面站的一个选择,使用c++的qt库编写
· 对于面相命令行与可编脚本地面站,你可以使用 mavproxy
· 对于 android 平板,你可以使用 ardropilot 或者 droidplanner
其他特征:
主控芯片:avratmega1280/2560
主要传感器:atmega168/328.双轴陀螺,imu(单轴陀螺,三轴加速度计。三轴磁力计模块)。气压计.ad芯片
编译环境:arduino ide
开发语言:arduino
开发软件:arduino ide界面友好简单,arduino语言类似于c语言
采用算法:两级pid控制方式,第一级是导航级,第二级是控制级
硬件平台:apm2.5: 板载电子罗盘;apm2.6:电子罗盘外置和gps融合了
优缺点:
优势:
1. apm使用人数多,资料丰富齐全,特别是经典款apm2.5,上手快
2. 功能完全满足使用
3. apm固件相对px4成熟
4. 有震动,姿态的日志记录,出现问题有据可查
劣势:
1. 处理器相比f407落后,但是够用
2. 传感器分散,集成度不高
二、开源 px4 / pixhawk 系列
px4 系列:
pixhawk 是根据飞控设计需求,结合px4系列飞控发展而来的px4飞控单块电路板版本, px4 系列最初有两个版本:px4fmu与px4io。
px4是一个由lorenz meier所在的瑞士小组所开发的学校项目,其拥有一个32位处理器,提供更多内存、运用分布处理方式并且包含一个浮点运算协处理器。相比apm,px4 具有相对于前者10倍以上的cpu性能及其他更多方面的改进,diydrones和3drobotics把px4系统视作他们下一代飞控的基础。
pixhawk 系列:
由3dr联合apm小组与px4小组于2014年推出的pixhawk飞控是px4飞控的升级版本,拥有px4和apm两套固件和相应的地面站软件。该飞控是目前全世界飞控产品中硬件规格最高的产品,也是当前爱好者手中最炙手可热的产品。
pixhawk拥有168mhz的运算频率,并突破性地采用了整合硬件浮点运算核心的cortex-m4的单片机作为主控芯片,内置两套陀螺和加速度计mems传感器,互为补充矫正,内置三轴磁场传感器并可以外接一个三轴磁场传感器,同时可外接一主一备两个gps传感器,在故障时自动切换。
基于其高速运算的核心和浮点算法,pixhawk使用最先进的定高算法,可以仅凭气压高度计便将飞行器高度固定在1米以内。它支持目前几乎所有的多旋翼类型,甚至包括三旋翼和h4这样结构不规则的产品。它使飞行器拥有多种飞行模式,支持全自主航线、关键点围绕、鼠标引导、“followme”、对尾飞行等高级的飞行模式,并能够完成自主调参。
pixhawk飞控的开放性非常好,几百项参数全部开放给玩家调整,靠基础模式简单调试后亦可飞行。pixhawk集成多种电子地图,爱好者们可以根据当地情况进行选择。pixhawk被定位为下一代无人机飞控,系统具备的所有特征,均符合未来无人机飞控系统未来发展的基础需求,未来将会有更大的发展空间。
技术规格:
处理器
32位 stm32f427 arm cortex m4 核心外加 fpu(浮点运算单元)
168 mhz/256 kb ram/2 mb 闪存
32位 stm32f103 故障保护协处理器
传感器
invensense mpu6000 三轴加速度计/陀螺仪
st micro l3gd20 16位陀螺仪
st micro lsm303d 14位加速度计/磁力计
ms5611 meas 气压计
电源
良好的二极管控制器,带有自动故障切换
舵机端口7v高压与高电流输出
所有的外围设备输出都有过流保护,所有的输入都有防静电保护
接口
5个uart串口,1个支持大功率,两个有硬件流量控制
spektrum dsm/dsm2/dsm-x 卫星输入
futaba sbus输入(输出正在完善中)
ppm sum 信号
rssi(pwm或者电压)输入
i2c, spi, 2个can, usb
3.3 与 6.6 adc 输入
尺寸
重量 38g
长 81.5 mm x 宽 50 mm x 高 15.5 mm
pixhawk 的接口分配
pwm,ppm-sum和sbus模式下的舵机与电调的连接方法
pixhawk 接口图
* 备注:上图中针脚1在右边
串口 1 (telem 1),串口 2 (telem 2) ,串口 (gps) 针脚: 6 = gnd, 5 = rts, 4 = cts, 3 = rx, 2 = tx, 1 = 5v.
三、开源 openpilot / taulabs 系列
openpilot是由openpilot社区于2009年推出的自动驾驶仪项目,旨在为社会提供低成本但功能强大的稳定型自动驾驶仪。这个项目由两部分组成,包括openpilot自驾仪与其相配套的软件。其中,自驾仪的固件部分由c语言编写,而地面站则用c++编写,并可在windows、macintosh osx和linux三大主流操作系统上运行。
openpilot的最大特点是硬件架构非常简单,从它目前拥有的众多硬件设计就可以看出其与众不同之处。官方发布的飞控硬件包括cc、cc3d、atom、revolution、revolution nano等,衍生硬件包括sparky、quanton、revomini等,甚至包含直接使用stm32开发板扩展而成的flyingf3、flyingf4、descoveryf4等,其中cc3d已经是300mm以下轴距穿越机和超小室内航模的首选飞控,而discoveryf4被大量用于爱好者研究飞控,quanton更是成为了taulabs的首选硬件。
下面我们来说说openpilot旗下最流行的硬件cc3d。
此飞控板只采用一颗72mhz的32位stm32单片机和一颗mpu6000就能够完成四旋翼、固定翼、直升机的姿态控制飞行(注意,该硬件可进行的是三自由度姿态控制,而不是增稳),电路板大小只有35mm×35mm。
与所有开源飞控不同,它不需要gps融合或者磁场传感器参与修正,就能保持长时间的姿态控制。以上所有功能全部使用一个固件,通过设置便可更改飞机种类、飞行模式、支持云台增稳等功能。
其编译完的固件所需容量只有大约100kb,代码效率令人惊叹,是所有飞控程序员学习的楷模。其地面站软件集成了完整的电子地图,可以通过电台实时监测飞机状态。
taulabs飞控是openpilot飞控的衍生产品。当前taulabs最流行的硬件叫做quanton,由原openpilot飞控小组成员独立完成。
它继承了openpilot简单高效的特点,并扩展了气压高度计和三轴磁场传感器,将主控单片机升级为带有硬件浮点运算的cortex-m4核心。该飞控是最早支持自动调参的开源飞控产品,带有模型辨识算法,能够在飞行中进行自整定姿态pid控制参数。taulabs能够完成许多高级飞行模式,连接外置gps后可使多旋翼具备定高、定点、回家等功能。飞控集成了电子地图,且界面非常友好,使用向导模式进行初始化,初学者可以简单上手。
multi wii copter(mwc)飞控是一款典型的arduino衍生产品,是专为多旋翼开发的低成本飞控,它完整地保留了arduino ide开发和arduino设备升级和使用的方法。由于成本低、架构简单、固件比较成熟,因此该飞控在国内外拥有大量爱好者。除了支持常见的四、六、八旋翼以外,该飞控的最大特点是支持很多奇特的飞行器类型,比如三旋翼、阿凡达飞行器(bicopter avatar style)、y4型多旋翼(其中两轴为上下对置)等,使得该飞控的开发趣味性较强,容易博得大家的喜爱。
高颜美机,淑女好逑!华为Nova青春版俘获“少女心”
FPGA相比GPU和CPU有什么行业竞争优势
比亚迪董事长王传福:电动车全面替代燃油车的时机已成熟
科创板嘉元科技董事沈东明介绍、履历信息
传感器自动识别装置在空调节能中的应用
您不能不知道的几大无人机飞控系统
适合任何可充电电池化学应用的铅酸电池
很多国产手机取消NFC功能的原因分析_你觉得NFC功能有没有必要?
新能源汽车充电难的问题该如何彻底解决
小米5c全面曝光,三星14nm+Mail T-860GPU,安兔兔跑分约6.3W
德州仪器推出支持超过1 Mbps数据速率Turbo CAN收发器
一文看懂百度自动驾驶平台阿波罗Apollo
CAN转光纤设备长距离稳定传输数据
如何更好的发挥人员定位系统在智慧电厂中的应用
国家对于物联网安全技术的标准有哪些
Google如何管理位置数据
全球存储芯片业正被持续装进韩企的口袋
脑洞无限!VR控制器竟然还可以这样设计
DS2480B 1-Wire时序的理解及配置
基石数据:TOC理论物理学浅析(三)结存篇