ArduPilot/APM 支持的导航板关键资源为什么取这个名字?开发语言与工具地面站 介绍
ArduPilot/APM是一款开源自动导航系统,支持多旋翼飞行器,传统直升机,固定翼飞机与传统直升机。源码由一个大型爱好者社区开发。
支持的导航板
-
APM1(已终止开发) – 一款基于AVR2560的自动导航仪,使用分离式结构
ArduPilot/APM源码基于AP-
HAL硬件抽象层编写,使代码能支持更多自动导航板变为可能。请查看这篇博客文章获取关于迁移到AP-HAL的更多信息。
关键资源
-
ArduPilot/APM的源码使用git管理在http://github.com/diydrones/ardupilot
-
主开发者讨论邮件列表drones-discuss,它开放给任何人加入
-
用于支持的自动导航板的预编译固件可在http://firmware.diydrones.com上下载
-
有关配置与飞行ardupilot的用户文档可在http://copter.ardupilot.cn,http://plane.ardupilot.cn与http://rover.ardupilot.cn上找到
-
故障追踪与开放issues可以使用github issues系统跟踪
为什么取这个名字?
ArduPilot的“Ardu”部分取自Arduino。最初APM1自动导航板是基于Arduino开发环境的。自从我们成长的比Arduino环境更快时,我们就不再使用Arduino运行库了。尽管我们仍然使用稍加修改的Arduino集成开发环境版本,来支持用于基于AVR的APM1与APM2板的ArduPilot。因为我们现在不仅支持Arduino兼容硬件(如PX4),为表示当前代码的跨平台特性,我们把“Ardu”前缀从软件项目取消,改为了“APM”
前缀(APM:copter,APM:Plane,APM:Rover等)。
开发语言与工具
用于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
ArduPilot/APM 支持的导航板关键资源为什么取这个名字?开发语言与工具地面站 官网
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。