什么是 ArduPilot?

ArduPilot 是一款开源软件系统,经过10余年的迭代,拥有百万级的高质量代码,用于自动驾驶软件,稳定可靠、用途广泛,支持多种飞行器类型:多旋翼直升机、传统直升机、固定翼飞机、船只、潜水艇、漫游车等。源代码由一个由专业人士和爱好者组成的大型社区开发。我们随时欢迎新的开发者加入!加入开发人员团队论坛是开始工作的最佳途径,该论坛对所有人开放,每天都有大量的开发信息。

APM(全称:ArduPilotMega2560)是在2007年由DIY无人机社区(DIY Drones)推出的飞控硬件,是当今最为成熟的开源硬件项目。APM飞控已经成为开源飞控成熟的标杆,可支持多旋翼、固定翼、直升机和无人驾驶车等无人设备。针对多旋翼,APM飞控支持各种四、六、八轴产品,并且连接外置GPS传感器以后能够增稳,并完成自主起降、自主航线飞行、回家、定高、定点等丰富的飞行模式。APM能够连接外置的超声波传感器和光流传感器,在室内实现定高和定点飞行。

由于APM良好的可定制性,APM在全球航模爱好者范围内迅速传播开来。通过开源软件Mission Planner,开发者可以配置APM的设置,接受并显示传感器的数据。2013年由3D-Robot公司联合Ardupilot与苏黎世联邦理工大学PX4组于推出了PIXHawk飞控。该飞控是APM飞控的升级版本,同时拥有Ardupilot和PX4两套固件和相应的地面站软件。该飞控是当时全世界飞控产品中硬件规格最高的产品,也是当前爱好者手中最炙手可热的产品。PIXHawk拥有168MHz的运算频率,并采用了整合硬件浮点运算单片机作为主控芯片,内置两套陀螺和加速度计MEMS传感器,互为补充矫正,内置三轴磁场传感器并可以外接一个三轴磁场传感器,同时可外接一主一备两个GPS传感器,在故障时自动切换。

迄今为止,ArduPilot开源软件、PIXHawk飞控系统已经反复迭代10余年,您可以随时唾手可得当时全世界飞控产品中硬件规格最高的产品,例如PodmanH7拥有480MHz的运算频率的硬件浮点运算高性能飞控,该飞控的传感器硬件软件的紧密耦合可实现2000Hz的姿态解算和控制环,同时对多处硬件做出了改进,包括传感器恒温加热和温度补偿。通过开源地面软件QGroundControl和Mission Planner(或机载计算机的ROS/ROS2软件),开发者可以实时控制、配置、诊断Ardupilot,通过SD卡的日志并分析传感器的数据图表。



ArduPilot能够控制几乎所有能想象到的飞行器/地面/潜水艇系统

ArduPilot 具有很强的自适应能力,并且可在飞行器平台上自动调参,用于调节飞行稳定性,很容易就适用于任何载具/飞行平台。它已安装在许多制造商(如我们合作伙伴的许多制造商)的载具上,并广泛应用于全球自主系统行业。它还被美国国家航空航天局(NASA)、英特尔(Intel)、Insitu/波音(Boeing)等大型机构和公司以及世界各地的无数高校用于测试和开发。

ArduPilot 稳定可靠,已安装在全球超过 1,000,000 台机器平台上,并配备了先进的数据记录、分析和模拟工具,是经过严格测试和值得信赖的自动驾驶系统。开放源代码库意味着该系统发展迅速,始终处于技术发展的最前沿,而完善的发布流程则为最终用户提供了信心。由于许多外围设备供应商都在开发接口,用户可以从传感器、配套计算机和通信系统的广泛生态系统中获益。由于源代码是开放的,因此可以对其进行审核,以确保符合安全和保密要求。

ArduPilot 能够创建和使用可信、自主的无人驾驶车辆系统,为所有人带来和平利益。作为一个开放源码项目,ArduPilot 根据庞大用户社区的快速反馈不断发展。开发团队与社区和商业合作伙伴合作,为 ArduPilot 增加有益于所有人的功能。尽管 ArduPilot 并不制造任何硬件,但 ArduPilot 固件可在各种不同的硬件上运行,以控制各种类型的无人驾驶飞行器。配合地面控制软件,运行 ArduPilot 的无人驾驶飞行器可以拥有先进的功能,包括与操作员进行实时通信。ArduPilot 拥有一个庞大的在线社区,致力于帮助用户解决各种问题。

ArduPilot 项目提供先进、功能齐全、可靠的开源自动驾驶软件系统。第一个 ArduPilot 开放代码库创建于 2009 年--从那时起,它一直由一支由专业工程师、学者、计算机科学家和我们全球社区的其他成员组成的团队开发。它能够控制几乎所有能想象到的飞行器系统:传统和 垂起固定翼 飞机、滑翔机、多旋翼飞行器、直升机、帆船、动力艇、潜水艇、地面飞行器甚至平衡机器人。随着新型平台使用案例的出现,支持的飞行器类型也在不断扩大。





开发者社区

正在编写代码?您可以从我们的 开发人员指南 并在 我们的对话频道


Discussion Forum

Get help and interact with other ArduPilot users on Discussion Forum and related blogs on ArduPilot.org!

Facebook ArduPilot group

Facebook ArduPilot group have several post with most recent community cases.

Discord

Developing questions? Check our discord channels and exchange your coding questions with other developers.

Community

Community is what really sets ArduPilot apart from many other offerings in the market. Here are some of the places you can find ArduPilot users and developers:








Ardupilot生态系统:平台、硬件、软件、地面站


无人驾驶车辆

ArduPilot 可以控制多种类型的硬件,如多旋翼飞机、传统直升机、固定翼飞机、船只、潜水艇、漫游车等。


硬件

是外围传感器、控制器和输出设备,充当车辆的眼睛、耳朵、大脑和手臂。几乎任何移动设备都可以变成自动驾驶汽车,只需在其中集成一个小型硬件包即可。硬件包首先是一个控制器。利用传感器的输入,控制器能够向电调、伺服、万向节和其他外围设备发送输出。

固件

代码是否在控制器上运行。您可以选择与车辆和任务相匹配的固件:旋翼机, 固定翼, 地面车, 潜水艇, or 天线追踪器.

软件

是您与控制器的接口。该软件也称为地面控制站(GCS),可在个人电脑或移动设备上运行。地面控制站允许用户设置、配置、测试和调整飞行器。高级软件包可实现自主任务规划、操作和任务后分析。

地面站

无人机地面站或无人机地面控制站是陆基通信和控制系统,通常用于机组人员与无人机之间的直接驾驶和通信。这些地面控制系统通常既可驾驶飞行器,也可传输实时视频和数据流。

Mission Planner地面站

是 ArduPilot 支持的全功能 GCS。它提供与硬件的点选式交互、自定义脚本和模拟功能。



ArduPilot 文档

ArduPilot 的中文镜像提供了大量文档。请参见顶部栏中的 教程文档/入门 链接查看。您需要选择平台:旋翼机, 固定翼, 地面车, 潜水艇, or 天线追踪器。以上的几种平台都有独立的入门教程,同时具有独立的(飞行)控制器的独立入门教程,然后按照教程的 "First Time Setup"(首次安装)逐步操作和安装地面站软件、连接设备和校准。