APM 基于Arduino的开源平台,怪不得开头几个字母一样,pilot是直升飞机的意思,所以Ardupilot的意思很明显,用Arduino做的直升飞机。

截图自ZN无人机课程第二期第二节

我最开始是在苍穹四轴的一篇公众号文章让我对这个词引起注意。

因为我买的是Pixhawk飞控,但在具体飞行模式解释上苍穹四轴给我发了一篇这个文章,我当时很好奇ardupilot是哪种飞控,没听说过,这个问题一直没去细查,今天在MP地面站又看到这个词,决定细察一下。似乎就是APM的意思,MP好像之前就是APM的地面站。

https://mp.weixin.qq.com/s/OhlimAx025SD9rxBUlxf5g

http://m.elecfans.com/article/482941.html

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. 传感器分散,集成度不高

Ardupilot 似乎就是APM相关推荐

  1. 最流行的开源飞控项目ArduPilot Mega(APM)介绍及发展历史

    ArduPilotMega (APM) 是市面上最强大的基于惯性导航的开源自驾仪 特性包括: 免费开源固件,支持飞机("ArduPlane"),多旋翼 (四旋翼, 六旋翼, 八旋翼 ...

  2. APM 学习 13 --- ArduPilot 遥控器 RC 发射器和接收器

    英文原文地址: https://ardupilot.org/copter/docs/common-pixhawk-and-px4-compatible-rc-transmitter-and-recei ...

  3. Pixhawk原生固件PX4之常用函数解读

    PX4Firmware 经常有人将Pixhawk.PX4.APM还有ArduPilot弄混.这里首先还是简要说明一下: Pixhawk是飞控硬件平台,PX4和ArduPilot都是开源的可以烧写到Pi ...

  4. 飞控和飞控固件的讲解

    本人目前是一名大二学生,调了不少时间的多旋翼,飞控是很重要的一环.下面我将讲解一些我对飞控和固件的浅显理解. 1.飞控固件 目前来说,主流开源的飞控有两类:PX4和APM.从我自己的使用经验来看:对于 ...

  5. 机器人开发--PX4 Autopilot介绍

    机器人开发--PX4 Autopilot介绍 1 简介 2 历史 3 Pixhawk.PX4.APM . ArduPilot关系 4 各家飞控对比 参考 1 简介 PX4 是一款专业级飞控. 它由来自 ...

  6. Pixhawk的历史

    发展历程:APM-->PX4FMU/IO-->Pixhawk: 1.Arduino简介 Arduino就是主要以以AVR单片机为核心控制器的单片机应用开发板(当然也有其他核心的例如STM3 ...

  7. Ardupilot -- APM源码笔记四(重制)~ 线程机制

    认识Ardupilot线程 在了解过Ardupilot的链接库之后,是时候来认识一下Ardupilot是怎么处理线程了,对于从arduino继承过来的setup()/loop()架构,会让我们认为Ar ...

  8. 基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第三篇)故障保护及问题诊断

    基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第三篇)故障保护及问题诊断 PIX无法安装驱动 双击下载的px4_driver_installer ...

  9. 基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第四篇)飞行特性

    基于Ardupilot/PX4固件,APM/PIXhawk硬件的VTOL垂直起降固定翼软硬件参数调试(第四篇)飞行特性 自动起飞 固定翼飞机可以自动发射多种类型的飞机.下面的说明将教你如何设置你的任务 ...

最新文章

  1. linux 命令删除命令,Linux 命令之删除命令
  2. 专为SaaS而生的PaaS平台!
  3. python jupyter 选择按钮,使用按钮选择数据
  4. centos7 mysql启动后端口_centos7 修改mysql5.7默认端口后启动异常
  5. 对linux的mv命令设计测试用例,测试用例中的细节 - 八音弦的个人空间 - OSCHINA - 中文开源技术交流社区...
  6. 【HDU - 5014】Number Sequence(贪心构造)
  7. jquery layout学习
  8. python matplotlib_高效使用 Python 可视化工具 Matplotlib
  9. mysql通用mapper_SpringBoot集成tk.mapper通用mapper,针对特殊业务也可写xml文件sql
  10. 找不到org.springframework.cloud.util.PropertyUtils
  11. android蓝牙 助手源码,蓝牙串口助手(Android Studio源码)
  12. rsync 同步文件
  13. 个人博客的Travis持续集成之路
  14. 湖南大学ACM——10015.self-numbers
  15. rstudio 保存_R更新以及Rstudio更新
  16. 粉丝文化:抖音广告短视频美妆营销中,男明星比女明星更带货?
  17. android分屏模式_Android分屏模式开发注意事项
  18. 1. 对输入的数组正序输出
  19. Ceph常见问题处理(octopus 15.2.13)
  20. Go语言如何自定义linter(静态检查工具)

热门文章

  1. 直方图均衡化(调节图像亮度、对比度)
  2. MySQL 分组排序取最后
  3. DataColumn.Expression 语法
  4. 鲁大师Q1季度最强CPU:AMD 3990X持续坐稳第一名!
  5. ME60单板加载故障维护经验
  6. IOS网络第二天 - 05-黑酷-NSXMLparser解析(略)
  7. 金山卫士开源系列讲座之一:揭秘卫士如何优化系统
  8. 思科交换机telnet配置
  9. 李斌说2023年销量超过雷克萨斯,蔚来能做到吗?
  10. 从《黑神话:悟空》的爆火,浅谈当前游戏从业者面临的机遇与挑战