本文转载自:https://blog.csdn.net/xiaoshuai537/article/details/60465851

ArduPilot官方Tutorial PDF(2017.2): http://download.csdn.net/download/xiaoshuai537/10262086

ArduPilot中有14种常用的模式:

  • 依赖GPS的模式有:Auto、Circle、Drift、Follow Me、Guided、Loiter、PosHold、RTL和Throw;
  • 不依赖GPS的有:Acro、Alt Hold、Land、Sport和Stabilize模式。

1. Acro(特技模式)

直接用摇杆控制飞行器的角速度,松开摇杆飞行器将保持原有的姿态。常用于特技表演。

2. Alt Hold(定高模式)

在Alt Hold模式下,飞行器保持高度不变,可以操作俯仰、滚转和偏航。Alt Hold模式是很多模式的基础,例如Loiter和Sport。Alt Hold采用气压计测高、如果高度低于约8m,可以自动使用声呐定高。

2.1 用油门控制飞行器的升降速度:

  • 油门在40-60%(死区)会保持现有高度;
  • 超出上述范围,根据摇杆拨动幅度,升降速度会不同,油门为0时,下降速度为2.5m/s,油门100%,上升速度为2.5m/s,该数值可以通过PILOT_VELZ_MAX调整;
  • 死区的范围可以通过THR_DZ调整,调整范围为0-400,0表示死区为0,400表示死区为(50-40)%~(50+40)%,即10-90%。

2.2 PID调试

  • Altitude Hold中的P将高度偏差转化为升降速度偏差,P越大,保持高度稳定的趋势越强,但是P值过大会导致不平稳;
  • Throttle Rate中PD用于将升降速度转化为升降加速度;
  • Throttle Accelerate中PID用于将加速度偏差转化到电机输出,P:I=1:2,其值不能增加,但是对于动力强劲的飞行器,将其值减小(如P=0.5,I=1)可能会得到更好的响应;

2.3 用日志验证效果

下载日志,比较气压计高度(BarAlt)、目标高度(DelAlt)和内部导航估计的高度(Alt)。

2.3 常见问题

  • 强烈震动导致飞行器突然爬升;
  • 飞行器升降缓慢,这是由于油门不在中位,通常发生在从手动模式(如Stabilize)切换到AltHold模式时;
  • 刚切换到AltHold模式时,电机可以短时停转,这是由于在快速爬升时切换到该模式;
  • 空气压力改变时可能导致飞行器高度波动;
  • 飞行器高速飞行后会出现短暂掉高(1-2m),这是由于空气动力学的影响,飞行器顶部压力降低,飞控因为飞行器高度增加了;
  • 接近地面时,气压计测量变得不准确;
  • 光直射会导致高度变化

2.4 充足的动力

理想情况下降,50%油门时能够飞行是比较合适的,超过70%会比较危险。

如果你在遥控器中设置了油门曲线expo,死区范围将会增大。

3. Auto(自动模式)

将执行预编程指令,包括导航命令和DO命令。

3.1 控制

  • 从地面起飞时,油门大于0时开始执行任务;如果在空中开启Auto模式,会跳过自动跳过TakeOff(起飞)命令。
  • 任何时候Auto模式都可以切换到其他模式,当再次回到Auto模式时,从头开始执行任务。
  • Auto模式飞行过程中,roll、pitch和throttle操作都会被忽略,但是可以通过遥控器控制yaw,这允许飞行过程中飞行器以一定指向前进;在经过下一个航点时,飞控会尝试重新获取yaw的控制权。
  • 飞行任务指令可以通过【飞行计划】进行修改。

3.2 调试

Auto模式融合了AltHold模式的高度控制和Loiter模式的位置控制。

最大水平速度可以在上图SPEED中设置,一般多旋翼飞行器飞行速度可达10-13m/s。高度方向最大速度可以通过Speed Up和Speed Dn设置。与航点距离小于Radius设定值时,任务认为完成了,这个只有当航点设置有延时时才应用。

4. Brake(刹车模式)

这个模式将尽快停止飞行器,该模式使用了Loiter,需要GPS的支持,一旦启用,该模式不接受飞行操控信号。

5. Circle(绕圈模式)

绕圈模式会以兴趣点为中心,机头朝兴趣点旋转,旋转半径可以通过CIRCLE_RADIUS控制。如果半径为0,则飞行器原地不动,缓慢旋转。飞行速度可以通过CIRCLE_RATE修改,正表示顺时针旋转。当旋转时产生的中心加速度超过限制(WPNAV_ACCEL)时,旋转速度会被限制。

roll和pitch对该模式无效,但是throttle可以控制飞行高度,遥控器可以控制yaw,调整机头方向,并且重启该模式前,该模式不会尝试重新获取yaw控制权。

在mission planner中,LOITER_TURNS包含了CIRCLE模式。

6. Drift(漂移模式)

  • 漂移模式允许像固定翼一样操控多旋翼,其设置了自动的坐标系转换。
  • 用户直接控制yaw和pitch,但是roll由飞行器控制;
  • 与stabilize相同的方式控制throttle

7. Follow Me(跟随模式)

需要使用数传、地面站以及蓝牙或USB GPS模块。

飞行器每2s执行Fly to here命令。

8. Guided(引导模式)

该模式利用数传好地面站,实时引导飞行器位置。引导模式不是一个基本模式,是在其他几种模式中切换形成的。当飞行器到达目标点后,会在目标点上方悬停。

Guided_NoGPS模式不需要GPS,他接受姿态目标而非速度和位置目标。

9. Land(着陆模式)

10m以上采用AltHold模式中设置的下降速度:

10m以下采用LAND_SPEED中设置的下降速度,默认0.5m/s;

落地后,会自动停止电机转动,如果油门处于最低位置会上锁;

油门最低、升降速度小于0.2m/s超过1s,并且高度不超过home高度10m,即认为着陆;

如果着陆时飞行器反弹,尝试降低LAND_SPEED中下降速度;

如果飞行器有GPS锁,则采用Loiter模式控制飞行器;如果飞行器无GPS,则采用Stabilize模式。

10. Loiter(悬停模式)

悬停模式会保持飞行器当前的高度、位置和航向。

10.1 控制

  • 可以通过roll和pitch控制飞行器位置,默认水平最大速度为5m/s;
  • 高度可以通过throttle控制,如同AltHold模式;
  • 航向可以通过yaw控制;
  • 只有在GPS 3D 锁定并且HODP小于2.0时才能在Loiter模式下解锁。

10.2 调试

  • WPNAV_LOIT_SPEED:最大水平速度(默认5m/s),默认最大加速度数值为其一半(默认2.5m/s2);
  • WPNAV_LOIT_MAXA:最大加速度(cm/s2),值越大,加速和停止性能越好;
  • WPNAV_LOIT_MINA:最小加速度,值越大,摇杆回中时停止越快,但是可能导致动作不平滑;
  • WPNAV_LOIT_JERK:加速度的改变(cm/s3),越大响应越快,越小越平滑;
  • POS_XY_P(上图中Loiter PID中的P):将位置差转换为合适的移动速度;
  • VEL_XY_P(上图中Rate Loiter PID):将速度转换为加速度,加速度随后转换为倾斜角度,传送给Stabilize模式处理。

10.3 常见问题

  • 摇杆回中后,稳定得非常慢可以增加WPNAV_LOIT_MAXA(例如到500)、WPNAV_LOIT_MINA(例如到100)和WPNAV_LOT_JERK(例如到4000);
  • 飞行器转圈,这通常是磁罗盘问题,最可能的原因是电池电缆的影响,可以进行磁罗盘补偿(http://ardupilot.org/copter/docs/common-compass-setup-advanced.html#common-compass-setup-advanced-compassmot-compensation-for-interference-from-the-power-wires-escs-and-motors)或者采用外置磁罗盘;磁罗盘校准过程出现问题也可能导致该现象;
  • 悬停模式一启用,飞行器朝错误方向飞,这个 问题原因同上,不同之处在于偏差角度大于90度;
  • 悬停正常,突然像错误方向移动,这通常是GPS失灵导致。因此需要随时准备手动接管,此外,起飞前保证良好的HDOP、以及减小GPSGLIPTCH_RADIUS和GPSGLIPTCH_ACCEL以加强失灵检测也是有利的;

10.4 HDOP显示

双击【飞行数据】左下角【快速】中某显示数值,可以改为显示HDOP。

10.5 通过日志验证悬停性能

查看NTUN中DesVelX和VelX,以及DesVelY和VelY。

高度信息查看如同AltHold。

11. PosHold(悬停角度控制模式)

PosHold模式和Loiter模式类似,都是保持当前高度、位置和航向。不同的是PosHold模式的摇杆直接控制飞行器偏转的角度。

最大的刹车角度可以通过PHLD_BRAKE_ANGLE设置(3000表示30°)。

飞行器旋转到最大角度的速度可以通过PHLD_BRAKE_RATE设置(8表示8°/s)。

12. Position(位置模式)

与Loiter模式类似,保持当前位置和航向,不同之处在于手动控制油门以升降飞行器。

GPS锁定的LED灯显示:

  • APM上蓝色LED灯稳定;
  • GPS上蓝色LED灯稳定;
  • GPS+COMPASS上蓝色LED灯闪烁。

13. RTL(返程模式)

RTL模式将引导飞行器飞回HOME上方。

13.1 概述

当飞行器高度高于RTL_ALT时将保持原有高度,反之则按RTL_ALT高度飞行,默认值为15m。

对于旋翼飞行器,RTL将返回至GPS定位后解锁的地方。

RTL模式使用气压计测量高度,6m以下可以采用声呐定高。

13.2 选项

(1)RTL_ALT:返回的最低高度

  • 设为0表示在当前高度返回;
  • 返回高度0.01~8m;
  • 默认返回高度为15m;

(2)RTL_ALT_FINAL:完成任务或RTL最后阶段的高度

  • 设为0将自动着陆;
  • 最终高度0.01~10m;

(3)RTL_LOIT_TIME:停在HOME上方的时间(ms),时间0~60s

(4)WP_YAW_BEHAVIOR:设置任务和RTL中的偏航角度

  • 0表示不改变yaw;
  • 1表示面向下一个航点或RTL时面向家的方向;
  • 2表示面向下一个航点,RTL时保持最终航向不变;

(5)LAND_SPEED:最终阶段下降的速度(0.2~2m/s)

(6)RTL_CLIMB_MIN:RTL初始阶段最低爬升高度(cm),默认为0

(7)RTL_SPEED:返回时的水平速度(cm/s),默认为0,表示使用WPNAV_SPEED

(8)RTL_CONE_SLOPE:定义当返回点离家很近时的爬升斜率

13.3 注意事项

  • WPNAV_ACCEL、WPNAV_SPEED_DN和WPNAV_SPEED_UP也会影响RTL模式;
  • 需要GPS定位;
  • 降落和重新解锁将会重新定义HOME的位置;
  • 如果飞行中GPS定位,HOME将设在此处;
  • 如果设置RTL_ALT为非0,返回时将保持该高度;
  • RTL使用WPNAV_SPEED来定义飞行速度;
  • 飞行器到达HOME上方时将暂停RTL_LOIT_TIME、AUTO_LAND的时间,然后降落。

14. Simple(简单模式)和Super Simper(超简模式)

这两种模式可以使用户不用关心飞行器的朝向。

  • 这两种模式可 以叠加到几乎所有模式下(除了Acro和Drift);
  • 简单模式的朝向以起飞时朝向为参考方向定义坐标系、只需要磁罗盘;
  • 超简模式定义飞行器与家的方向为参考方向定义坐标系,需要GPS定位;
  • 两个模式可以与普通模式之间通过遥控器上CH7/CH8切换。

超简模式下,无论飞行器在任何位置,往回拉pitch将试飞行器往家的方向走;但是在离家10m范围内,方向不会更新,因此不宜在家附近飞。

15. SPORT(运动模式)

  • roll、pitch和yaw控制飞行器的转动速率,因此当摇杆归位时,飞行器将保持当前姿态;
  • 最大角度为45°(可以通过ANGLE_MAX设置);
  • 高度采用AltHold控制方法,因此油门中间10%范围内油门摇杆将不起作用,升降速度为2.5m/s(通过PILOT_VELZ_MAX设置)

16. Stabilize(自稳模式)

  • 自稳模式会自动平衡roll轴和pitch轴。
  • roll和pitch输入控制飞行器的倾斜角度,当松开roll和pitch摇杆时飞行器自动平衡;
  • 飞行器需要周期性roll和pitch来保持位置,因为有风的影响;
  • 当松开yaw杆时保持当前朝向;
  • 油门控制电机的平均速度,如果油门波到最低其转速回达到最低值MOT_SPIN_ARMED;
  • 油门输出到电机的大小是由飞行器的倾斜角度自动分配的。

16.1 调试

  • ANGLE_MAX控制最大倾斜角,默认为45°;
  • ANGLE_RATE_MAX控制最大的旋转速度,默认为180°/s;
  • ACRO_YAW_P控制根据yaw的输入,飞行器旋转速度,默认的4.5控制当摇杆到最大值时转速为200°/s,越大转速越快;
  • 自稳模式roll/pitch的P控制飞行器响应输入差值的速度,默认4.5会在1°偏差时以4.5°/s旋转,7或者8会使飞行器产生更强的反应来抵抗风的影响;若P较低,会导致旋转缓慢,可能使抗风能力降低,甚至导致坠机。如果想使飞行更平滑,首先应先尝试降低RC_Feel的值;
  • Rate Roll/Pitch P, I和D根据理想的转速控制电机的输出。这些项通常与负载能力与重量比有关,比值越高,PID值越小。例如高负载飞行器的P值可低至0.08,而低负载的飞行器P值可到0.18甚至更高;

(1)P值是调试飞行器最重要的参数;

(2)P值越高,响应越快;

(3)默认P为0.15;

(4)I用于补偿使飞行器长时间不能保持理想速度的外力;

(5)I越高维持理想速度的响应越快,并且会快速下降来避免超调;

(6)D用于抑制飞行器加速到理想点的响应,D值高可能会导致不寻常的震动和记忆效应(响应慢),合适的D为0.011;

(7)根据飞行器的不同,值可以在0.001~0.02范围内变化;

16.2 利用日志验证效果

比较ATT中Roll-In/DesRoll(理想值)和Roll(实际值),以及Pitch-In/DesPitch和Pitch。

16.3 常见问题

  • 新飞行器起飞时弹跳,这通常是由于电机顺序不对或者桨不对;
  • 飞行器绕roll/pitch轴摇摆,这通常表示 Rate P不对;
  • 飞行器下降较快时摇摆,这是由于桨的自洗导致,这不太可能调整好,但是提高Rate Roll/Pitch P可能会有帮助;
  • 飞行器起飞时左或者右转15°,这是由于一些电机可能不是线性的或者ESC没有校准好;
  • 即使在无风环境下,飞行器也偏向于向一方飞行,尝试SavTrim或AutoTrim来使飞行器水平;
  • 飞行器高度保持不好,这是由于自稳模式是手动模式,需要摇杆控制稳定;
  • 有时roll和pitch抽动,正常情况下是由接收机受到某种干扰引起的或者是ESC问题,解决方法是重新校准;
  • 飞行过程中突然弹跳,这可能是电机或者ESC的机械故障;

17. Throw(抛飞模式)

抛飞模式存在危险性,该模式允许飞行器抛向空中来启动电机,当在空中时,该模式不在接受任何输入信息,这个模式需要GPS。

17.1 使用方法

(1)飞行器上锁;

(2)切换到抛飞模式;

(3)检查GPS是否定位;

(4)解锁飞行器,飞行器蜂鸣时处于待命状态,电机默认情况下不旋转;

(5)将飞行器抛出(爬升速度达到0.5m/s,速度达到5m/s);

(6)飞行器停止时,切换到其他模式重新获得控制权;

电机将在飞行器达到顶点时启动,电机启动后会首先稳住机身(保持水平和停止旋转),然后停止掉高,最红水平方向也停止移动。

17.2 设置

  • THROW_TYPE:0表示往上扔飞行器,1表示往下扔,如果是往下扔,高度至少10m;
  • THROW_MOT_START:控制电机在待机时是不转还是缓慢旋转(0不转、1缓慢旋转),默认为0;
  • THROW_NEXTMODE:设置飞行器停止后的下一个飞行模式(Auto、Guided、RTL、Land和Brake模式均支持),设置为Throw(默认)便保持在该模式等待手动切换到其他模式。

17.3 日志分析

下图为成功抛飞的日志,垂直速度大于0.5m/s,总速度大于5m/s。

ArduCopter —— ArduPilot—— 飞行模式相关推荐

  1. QuadPlane(VTOL)——ArduPilot——飞行模式

    版权声明:本文为博主原创博文,未经允许不得转载,若要转载,请说明出处并给出博文链接 这里只介绍除固定翼固有模式以外的飞行模式,固有模式请参看ArduPilot--ArduPlane 飞行模式 下面的几 ...

  2. ArduPilot Tutorial(PDF版)及ArduPilot飞行模式介绍

    ArduPilot官方Tutorial PDF(2017.2): http://download.csdn.net/download/xiaoshuai537/10262086 ArduPilot中有 ...

  3. Plane(Fixed Wing) ——ArduPilot——飞行模式

    版权声明:本文为博主原创博文,未经允许不得转载,若要转载,请说明出处并给出博文链接 . 本文参考网友Jeff的文档以及官网:http://ardupilot.org/plane/docs/flight ...

  4. APM(Ardupilot)——飞行模式

    飞行模式介绍 版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明. 1. Acro(特技模式) 直接用摇杆控制飞行器的角速度,松开摇杆飞行器将保持原 ...

  5. Mission Planner初学者安装调试教程指南(APM或PIX飞控)4——校准加速度计、指南针、遥控器、设置飞行模式

    目录 1.加速度计校准. 2.指南针校准. 3.遥控器校准. 安装完固件后,无人机并不能马上解锁起飞,必须进行校准加速度计.指南针.遥控器,下面就逐一进行校准,该环境使用的是APM2.8.Missio ...

  6. ArduCopter——ArduPilot——航点导航WPNav(一)

    版权声明:本文为博主原创博文,未经允许不得转载,若要转载,请说明出处并给出博文链接 现如今,四旋翼飞行器已经从几年前的遥控航模变成真正可以超视距操控的无人机,离不开伟大的通信协议mavlink和最近几 ...

  7. 无人机、无人船通信协议——MAVLink(V1.0、V2.0,心跳包,GPS定位,7种飞行模式)

    目录 1.什么是MAVLink 2.MAVLink的优势 3.MAVLink信息结构 3.1.MAVLink V1.0 3.2.MAVLink V2.0 4.心跳包(HEARTBEAT MESSAGE ...

  8. Android系统移植与调试之-------如何修改Android设备添加重启、飞行模式、静音模式等功能(一)...

    1.首先先来看一下修改前后的效果对比图 修改之后的图片 确认重启界面 具体的修改内容在下一篇中具体介绍. Android系统移植与调试之------->如何修改Android设备添加重启.飞行模 ...

  9. wp———跳转系统设置页面的wifi、网络连接、蓝牙、飞行模式等

    通过 ConnectionSettingsType 的设置,可以跳转 到 wifi.蓝牙.飞行模式.以及网络连接 其他方案跳转 1 private async void Button_Click_1( ...

最新文章

  1. 总线接口与计算机通信(五)CAN总线
  2. 单例模式(singleton)解析例子
  3. mysql启动时报错:Starting MySQL ERROR The server quit without updating PID file
  4. hibernate的多表查询
  5. 一,彻底理解第一个C语言程序 Hello World
  6. 开源GIS(六)——openlayers中overlay强大功能
  7. [转载]python模块学习---HTMLParser(解析HTML文档元素)
  8. APR学习-消息池的设计与使用
  9. san分布式共享文件系统_SAN存储区域网络共享软件全攻略
  10. 快捷方式管理软件推荐
  11. [项目管理入门系列] 师傅领进门-------项目运作的一般流程(三)
  12. 京东校招java面试题_2018京东校招Java笔试题
  13. 动手学习深度学习-深度学习基础
  14. python设置windows桌面壁纸
  15. win10鼎信诺为什么安装不了_2016年鼎信诺常见问题处理
  16. 朴素贝叶斯分类实验(垃圾邮件分类以及垃圾短信过滤数据集)
  17. 什么是REST?什么叫符合REST规范的API接口?
  18. python中途岛海战boss发射子弹类设计程序
  19. java规约运算的signature_Java8笔记第七篇(Stream API 的操作-规约,收集 )
  20. 淘淘商城第95讲——单点登录之用户注册

热门文章

  1. ucloud算法岗面试
  2. 新星宇控股再冲刺港交所上市:曾多次被处罚,非控股权益由盈转亏
  3. 使用 CodeMirror 打造属于自己的在线代码编辑器
  4. 啰啰嗦嗦学习VC++_
  5. 计算机信息技术挂号,利用Access实现自助挂号系统(6页)-原创力文档
  6. android媒体播放器课程设计,基于android的多媒体播放器课程设计报告.doc
  7. 中国较好的山地车品牌全球知名意大利三大自行车品牌排行榜
  8. PyInstaller天坑终极攻略(PyInstaller莫名报错?面对错误信息无从下手?全网找不到解决方法?面对PyInstaller中的那些莫名天坑不如和我一起手动打包python解释器和项目)
  9. RabbitMQ概念及环境搭建(二)RabbitMQ Broker管理
  10. nohup: 重定向标准错误到标准输出