(7)自动调优

news2024/11/17 17:25:28

文章目录

        前言

1 在自动调优模式下飞行前的设置

2 如何调用自动调优

3 在位置保持下调用自动调优

4 如果自动调优失败

5 补充说明

6 常见的问题

7 Dataflash日志记录

8 地面控制站消息


前言

AutoTune 试图自动调优稳定P速率P和 D,以及最大旋转加速度,以提供最高的响应,而没有明显的过冲。在尝试使用自动调优之前,旋翼飞机需要在 AltHold 模式(AltHold mode)下"基本"可以飞行,因为该功能需要能够在横滚和俯仰轴上"旋转"旋翼飞机。


Warning

AutoTune 并不总是能够为飞行器确定一个好的调优,可能会导致增益,导致飞行器无法飞行,可能会崩溃。在尝试使用 AutoTune 之前,请遵循调优过程说明(Tuning Process Instructions)。在遵循这些说明,并评估了你的初始调优后(evaluated your initial tune),应该尝试 AutoTune

有一些问题会妨碍 AutoTune 提供一个好的调优,包括:

  • 强风;
  • 高水平的陀螺仪噪音;
  • 由于 MOT_THST_EXPO 的值不正确而导致 ESC 的非线性响应;
  • 灵活的框架或有效载荷支架;
  • 过于灵活的振动隔离支架;
  • 对 MOT_SPIN_MIN 的设置非常低;
  • 超载的螺旋桨或电机。

1 在自动调优模式下飞行前的设置

1. 将一个飞行模式开关位置设置为 AltHold

2.RC 通道辅助功能开关(Auxiliary Function)或辅助功能开关(Auxiliary Function Switch)(4.0 版之前)设置为自动调优,以允许你用开关打开/关闭自动调优。

Note

你也可以将 AUTOTUNE 飞行模式设置为飞行模式开关上的一个模式,以激活自动调优。

3. 移除相机云台或其他可能在飞行中晃动的框架部分。

4. 使用 AUTOTUNE_AXES 参数选择你想调优的轴的组合(横滚、俯仰、偏航)。

5. 使用 AUTOTUNE_AGGR 参数设置自动调优的积极性(0.1 = 积极,0.075 = 中等,0.050 = 较弱),通常以默认的 0.1 开始。

6. 对于大型旋翼飞机(螺旋桨直径至少为13英寸33厘米),将速率横滚和俯仰滤波器设置为 10hz,它们是 ATC_RAT_RLL_FLTT, ATC_RAT_RLL_FLTD, ATC_RAT_PIT_FLTT, ATC_RAT_PIT_FLTD, (在 Copter-3.4 中它们是 ATC_RAT_RLL_FILT  和 ATC_RAT_PIT_FILT)。

7. 建议启用电池电压比例的 PID 增益(battery voltage scaling of PID gains)。

2 如何调用自动调优

1. 等待一个平静的日子,到一个大的开放区域。

2. 确保 ch7ch8 开关(如果使用的话)处于低电平位置。

3. 起飞后,在一个舒适的高度上将旋翼飞机置入 AltHold 模式。

4. 面对飞行器,使其与风吹的方向成 90 度旋转(即如果先调优横滚轴,则将飞行器指向风中)。

 5.ch7/ch8 开关设置到高位,或切换到 AUTOTUNE 模式,以进行自动调优:

  • 你会看到它左右旋转大约 20 度,持续几分钟,然后它将重复向前和向后;
  • 在任何时候使用横滚和俯仰杆来重新定位旋翼飞机,如果它漂移了(在重新定位和测试之间它将使用原来的 PID 增益)。当你松开摇杆时,它将继续自动调优它的位置;
  • ch7/ch8 开关移到 LOW 位置,如果使用 AUTOTUNE 飞行模式,可随时改变飞行模式,放弃自动调优,回到原始 PIDs
  • 确保你的发射机上没有任何微调设置,否则自动调优可能无法得到摇杆居中的信号。

6. 当调优完成后,旋翼飞机将变回原来的 PID 增益。

7.ch7/ch8 开关放置 LOW 位置,然后再回到高位,测试调优的 PID 增益,如果使用 AUTOTUNE 飞行模式,则切换出来,然后再回到该模式中。

8.ch7/ch8 开关放置 LOW 位置,或者切换出 AUTOTUNE 飞行模式,使用原来的 PID 增益飞行。

9. 如果你对自动调优的 PID 增益感到满意,让 ch7/ch8 开关保持在高位,或者切换回自动调优飞行模式,降落后加锁,永久保存 PIDs。如果你不喜欢新的 PID,请将 ch7/ch8 切换到低电平或退出自动调优飞行模式,以返回到原始 PID。当你加锁时,增益将不会被保存。

如果你在执行自动调优后发现,在 StabilizeAltHoldPosHold(但在更多的自主模式下,如 LoiterRTLAuto,也可以)飞行时,飞行器感觉过度抽搐,可以尝试将 ATC_INPUT_TC 参数增加到 0.25。这将使飞行员的输入更加平滑。或者尝试减少 AUTOTUNE_AGGR 参数(它应该总是在 0.050.10 的范围内)并再次尝试。

如果飞行器在自动调优后感觉不顺畅,可尝试将 AUTOTUNE_AGGR 参数提高到 0.10,并再次尝试自动调优。

3 在位置保持下调用自动调优

Warning

通过上述从 AltHold 调用 AutoTune,而不是从 LoiterPosHold 调用,往往可以获得更好的调优效果,如下文所述。使用 AUTOTUNE 飞行模式也有这个可能的缺点。

如果在进行自动调优时,从 LoiterPosHold 飞行模式(与 AltHold 相反)调用,自动调优会执行一个弱位置保持。如果使用 AUTOTUNE 飞行模式,也会使用这种弱位置保持。

  • 飞行器将向一个"目标点"缓缓倾斜(最多 10 度),该目标点最初被设定为调用 AutoTune 时的飞行器位置;
  • 飞行员可以使用横滚、俯仰、偏航或油门杆来重新定位飞行器。目标位置将在飞行员释放横滚和俯仰杆的那一刻被重置为飞行器的位置;
  • 高度是通过高度保持控制器来保持的,所以当摇杆放在 10% 的中油门上时,飞行器将试图保持其当前高度。它将以 2.5m/s 的速度爬升或下降(这个速度可以通过 PILOT_SPEED_UP 和 PILOT_SPEED_DN 参数调整)。用于建立这些速度的加速度是由 PILOT_ACCEL_Z 设置的;
  • 为了与风向垂直地旋转,飞行器在漂移到离目标地点 5m(或更远)的时候,可能会突然向任何一个方向旋转,最多 90 度;
  • 如果风小或没有风,飞行器的温和位置控制可能意味着它来回移动,在目标点周围打乒乓,每次离目标超过 5m 就改变偏航。在这种情况下,恢复更简单的基于 AltHold 的自动调优可能会更舒服。

4 如果自动调优失败

如果自动调优失败,你将需要进行手动调优。

自动调优成功的一些迹象是(除了 DataFlash 日志和地面控制站信息):

  • ATC_ANG_PIT_P 和 ATC_ANG_RLL_P 的数值增加;
  • ATC_RAT_PIT_D 和 ATC_RAT_RLL_D 比 AUTOTUNE_MIN_D 大。

AutoTune 将试图把每个轴调优到飞机可以容忍的范围内。在一些飞机上,这可能是不必要的反应。对于大多数飞机来说,这是一个指南:

  • ATC_ANG_PIT_P 应从 10 减至 6
  • ATC_ANG_RLL_P 应从 10 减至 6
  • ATC_ANG_YAW_P 应从 10 减至 6
  • ATC_RAT_YAW_P 应从 1 减至 0.5
  • ATC_RAT_YAW_IATC_RAT_YAW_P x 0.1

只有在 AutoTune 产生更高的值时,才应该改变这些值。小型特技飞机可能更愿意保持这些值尽可能高。

5 补充说明

Copter-3.3(和更高版本)中,AutoTune 可以被设置为一种飞行模式。进入或退出 AutoTune 飞行模式的反应与提高或降低 ch7/ch8 辅助开关的高分配 AutoTune 功能相同。

AUTOTUNE_AXES 允许控制哪些轴要被调优。如果飞行器的电池寿命不够长,无法完成所有 3 轴的调优,这就很有用。"1"=调优横滚,"2"=调优俯仰,"4"=调优偏航。把这些数字加在一起,就可以在一次训练中调优多个轴(例如,"7"=调优所有轴)。

AUTOTUNE_AGGR:应该在 0.050.10 之间。更高的值会产生更积极的调优,但有时会导致增益过高。更具体地说,这个参数控制 D 项反弹和 P 项过冲的阈值。这影响到调优的抗噪能力(较高的值对框架中的弯曲或其他可能欺骗调优算法的干扰更宽容)。高值也会导致调优更好地拒绝外部干扰。较低的值会导致调优对飞行员输入的反应更灵敏。

可由自动调优更新的参数的完整列表:

  • 横滚角度 P 增益:ATC_ANG_RLL_P
  • 横滚速率 PID 增益:ATC_RAT_RLL_P, ATC_RAT_RLL_I, ATC_RAT_RLL_D
  • 横滚最大加速度:ATC_ACCEL_R_MAX
  • 俯仰角度 P 增益:ATC_ANG_PIT_P
  • 俯仰速率 PID 增益:ATC_RAT_PIT_P, ATC_RAT_PIT_I, ATC_RAT_PIT_D
  • 俯仰最大加速度:ATC_ACCEL_P_MAX
  • 偏航角度 P 增益:ATC_ANG_YAW_P
  • 偏航速率 PID 增益:ATC_RAT_YAW_P, ATC_RAT_YAW_I, ATC_RAT_YAW_D
  • 偏航速率滤波器:ATC_RAT_YAW_FLTT, ATC_RAT_YAW_FLTE(在AC3.6: ATC_RAT_YAW_FLT)
  • 偏航最大加速度:ATC_ACCEL_Y_MAX
  • 横滚和俯仰轴速率前馈已启用:(ATC_RATE_FF_ENAB)

在你调优好之后,你可能希望把 ATC_THR_MIX_MAX 增加到 0.9(默认是 0.5),以提高姿态控制的优先级,而不是油门。这可以减少在AltHold中有时看到的俯仰过冲(特别是在有大螺旋桨的旋翼飞机上),如果飞行器在执行快速向前飞行后突然减速。在这种情况下,风从螺旋桨下刮过,提供了升力,但也扰乱了飞行器的姿态,导致油门和姿态控制之间的冲突。增加这个参数值的危险在于,如果后来速率增益提高到如此之高,以至于飞行器严重振荡,那么飞行器可能很难下降(因为它将优先考虑试图纠正姿态振荡,而永远不会充分减少油门)。

AutoTune 可以要求对电机的输出进行非常大和快速的改变,这可能导致 ESC 的同步问题,特别是当使用 SimonK 固件和/或低 KV 的电机(低于 500KV)。请看这个视频,其中显示了一个测试(video showing a test),它再现了一个同步问题。

为了达到最佳效果,不应该让飞行器建立起过高的水平速度。这可以通过在测试之间进行快速修正(抽动)来阻止飞行器飞得太快。

请注意,自动调优将从自稳模式开始,所以在你进入 AltHold 并准备开始程序之前,不要意外地翻开你的自动调优开关。

一般来说,对于俯仰和横滚,PI 应该相等,D 应该是 P1/10。对于偏航,I 应该是 P1/10D = 0,在大多数情况下。

6 常见的问题

如果飞行器即使在自动调优模式下也不会开始调优(即不会抽动),那么问题很可能是横滚、俯仰、偏航或油门杆没有完全在中间。将 RC1_DZRC2_DZRC3_DZ 和 RC4_DZ 增加到 50(或更高),可能有助于增加 RC 输入的死区。

如果自动调优产生了一个过度抽动的飞行器,尝试减少 AUTOTUNE_AGGR 参数(不应低于 0.05)并再次执行自动调优。

如果自动调优产生的飞行器不稳定,尝试增加 AUTOTUNE_AGGR 参数(不应超过 0.1)并再次执行自动调优。

Tip

当报告 AutoTune 的问题时,请包括对你的框架描述和飞行的数据闪存记录。

7 Dataflash日志记录

ATUN(自动调优概述)和 ATDE(自动调优细节)信息被写入数据闪存日志中。这些信息内容的一些细节可以在 Mission Planner 的下载和分析数据日志(Downloading and Analyzing Data Logs in Mission Planner)维基页面上找到。

8 地面控制站消息

对于每个轴来说,有几个阶段的调优。速率 PID 首先被调整,然后是角度参数。这些阶段的进度信息被发送到 GCS(并记录在 Dataflash 日志中)。

调优期间的典型顺序可能是:

09:09:33       AutoTune: Twitch

09:09:34       AutoTune: (P) Rate P Up\

09:09:34       AutoTune: WFL (Rate(P)) (15.13040 > 10.00000)

09:09:34       AutoTune: p=0.052298 d=0.005232

09:09:34       AutoTune: success 1/4

这是在 Pitch Rate P 的调整过程中,表明一个抽动即将发生,因为 P 正在尝试增加 0.052298 的值,但首先它在等待,直到它从上一次抽动回到水平(WFL = 等待水平),然后它报告说这次抽动的结果在目标范围内,并且成功了。但这必须连续发生 4 次,才能进入下一个阶段。

Note

在YAW速率调优阶段,信息将显示"d"的值,该值不是 ATC_RAT_YAW_D,通常为 0,而是 ATC_RAT_YAW_FLTE 的值,即正在变化。

任何时候,当这个过程被飞行员摇杆的移动打断时,就会出现这个信息:

09:09:38       AUTOTUNE: pilot overrides active

如果你在自动调优模式下停止调优并加锁,并且一个轴的调优已经完成,你将得到一条消息,显示该轴的新增益已经被保存。如果没有这样的信息,但认为你至少完成了一个轴,那么你可能在没有进入自动调优模式时加锁,实际上并没有保存它们。

09:19:48       AutoTune: Saved gains for Pitch

Tip

如果你不小心在非自动调优状态下加锁了一个会话的自动调优值,你可以检查它在调优过程中发送的 GCS 信息的数据闪存日志,并在工作台手动设置它们。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/636797.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

交流(直流)电流采集方案

芯片原理图 注意途中的绿色部分,说明此芯片可以采集交流或者直流 内部霍尔工作原理图 通过曲线可以确定再0A时输出电压为2.5v 只有随着电流的变化是大于2.5v或者小于2.5v(交流负方向,或者直流负方向) 下面是一个插排的拆解视频截…

9. ThreadLocal

9.1 ThreadLocal简介 9.1.1 面试题 ● ThreadLocal中ThreadLocalMap的数据结构和关系 ● ThreadLocal的key是弱引用,这是为什么? ● ThreadLocal内存泄漏问题你知道吗? ● ThreadLocal中最后为什么要加remove方法? 9.1.2 是什么&a…

KaiwuDB 受邀亮相山东省数字化转型论坛

4月21日,第十五届信博会暨中国(济南)数字经济高端峰会成功举办。KaiwuDB 受邀出席峰会重要论坛—山东省数字化转型论坛,并发表《工业物联网时代,数据库赋能企业数字化转型落地实践》主题演讲,与来自国内的 …

Java动态代理:优化静态代理模式的灵活解决方案

文章目录 代理模式定义具体实现分析优缺点 优化使用动态代理解决优化相关知识动态代理种类场景应用 代理模式 定义 代理模式,为其他对象提供一种代理以控制对这个对象的访问 具体实现 代理模式的具体实现描述可以分为以下几个步骤: 创建抽象对象接…

什么是Vue的JSX语法?如何使用JSX语法?

什么是Vue的JSX语法?如何使用JSX语法? 在Vue中,我们通常使用模板语法来编写组件的模板。但是,有些开发者更喜欢使用类似于React的JSX语法来编写组件。Vue也支持使用JSX语法来编写组件,本文将介绍什么是Vue的JSX语法以…

企业级信息系统开发讲课笔记4.7 Spring Boot整合JPA

文章目录 零、学习目标一、Spring Data JPA概述1、Spring Data JPA简介2、Spring Data JPA基本使用3、使用Spring Data JPA进行数据操作的多种实现方式4、自定义Repository接口中的Transactional注解5、变更操作,要配合使用Query与Modify注解 二、Spring Boot整合JP…

热门图表软件推荐,哪款更功能更强大?

在如今的数据化时代,各种企业都需要有一套高效的报表制作工具。而图表是报表中最常用、也是最重要的一部分,因此选择一款优秀的图表软件显得尤为重要。本文将为大家介绍5款热门图表软件,并突出介绍VeryReport图表软件的优势。 1. VeryReport…

NetApp 全闪存 ASA 系统可为您的任务关键型企业级应用程序、数据库和 VMware 基础架构提供简单专用的块存储

NetApp ASA:全闪存 SAN 阵列 在性能和效率之间进行艰难抉择的时代已经过去。NetApp ASA 系统提供简单专用的块存储,具有卓越的性能、高可用性和领先的效率 — 无需权衡取舍。 为什么选择适用于 SAN 的 NetApp ASA 系统? 简单的 SAN 存储&…

DCL单例及synchrosized问题

疑问待解: 1 synchronized代码块执行完后,在没有return INSTANCE之前,其他线程是否可见这个对象(因为synchronized出块后会把工作内存写到主存)? 如果可见,那么return的作用是不是可有可无&…

object类型(equals、hashCode、getClass、getName)

equals方法的改写 Override//重写equals方法,重写方法后对比的属性值(没有重写前对比的是属性值)public boolean equals(Object obj) {Students s (Students) obj;return this.name.equals(s.name) && this.age s.age;}public clas…

学顶教育:中级统计师单科成绩计算方式分享!

中级统计师的成绩管理是非滚动式的,所以需要考生一次考下两个科目,两个科目都合格之后,才能取得证书。 中级统计师的考试,是每年举行一次,全部考试科目合格者,授予由人事部统一印制、全国范围内有效的《统…

从结构上浅谈FPGA LCMXO2-4000HC-6BG256I 实现逻辑的基本原理

LCMXO2-4000HC-6BG256I lattice莱迪思深力科 MachXO2 可编程逻辑器件 (PLD) 由六个超低功耗、即时启动、非易失性 PLD 组成,可提供 256 至 6864 个查找表 (LUT) 的密度。 MachXO2 系列 PLD 提供多种特性,例如嵌入式块 RAM (EBR)、分布式 RAM 和用户闪存 …

叽里呱啦 Nacos 1.1.4 升级 1.4.1 最佳实践

博主介绍:✌全网粉丝4W,全栈开发工程师,从事多年软件开发,在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战、定制、远程,博主也曾写过优秀论文,查重率极低,在这方面…

VTK学习之读取图片,vtkImageViewer2的使用

一、vtk中的vtkImageData VTK提供相对应的类对图像文件进行读写操作 测试下效果&#xff1a; int main() {//vtkSmartPointer<vtkBMPReader> reader vtkSmartPointer<vtkBMPReader>::New();//reader->SetFileName("**\\12.bmp");vtkSmartPointer&l…

【分享】Heic图片如何批量转换成jpg格式?

我们知道&#xff0c;Heic是苹果产品的专属图片格式&#xff0c;但不是所有Windows系统都可以查看&#xff0c;而且很多需要上传图片的平台也不支持Heic格式&#xff0c;这些情况就需要把Heic转换成JPG等常用的图片格式。 如果图片数量非常多&#xff0c;要如何实现批量转换呢…

<Windows>《Windows当前桌面壁纸的位置》

《Windows当前桌面壁纸的位置》 问题&#xff1a; 想找到当前桌面壁纸的位置&#xff0c;该怎么做&#xff1f; 解决&#xff1a; win7之后&#xff0c;windows壁纸以注册表存在。注册表位置为&#xff1a; HKEY_CURRENT_USER\Control Panel\Desktop\Wallpaper该值记录了位置…

JWT验证

JSON Web Token 入门教程 - 阮一峰的网络日志 (ruanyifeng.com) 补充上时间线&#xff1f;画图&#xff1f; 隐患是什么 为什么一开始不这么做 这个封面挺好做的&#xff0c;以后笔记我也做一个&#xff0c;&#xff0c;要是能自动生成就好了 一、认证 为了保存信息用的&#…

【深度学习】日常笔记3

如果分类问题具有预测这样带有自然顺序的问题&#xff0c;如{婴⼉, ⼉童, ⻘少年, ⻘年⼈, 中年⼈, ⽼年⼈}&#xff0c;那么可以把分类问题转变为回归问题了。不过可以使用独热编码one-hot encoding。 类别对应的分量设置为1&#xff0c;其他所有分量设置为0。在我们的例⼦中…

Cadence原理图快速查找元器件的方法

1.Cadence原理图快速查找元器件的方法 ①在红框中输入元器件编号&#xff0c;点击望远镜的图标在底下的状态栏可看到查找到的相关元器件&#xff0c;点击元器件可自动定位当前元器件的位置。 ②点击hierarchy&#xff08;层&#xff09;可自主查找&#xff0c;找到后点击序号即…

【项目实战】一、Spring boot整合JWT、Vue案例展示用户鉴权

前言 案例整合了Spring boot、Spring Cloud alibaba、Gateway、Nacos discovery、Nacos config、openFeign、JWT、Vue3、Router、Axios等&#xff1b;通过JWT和登录、查询&#xff08;带用户信息&#xff09;接口&#xff0c;验证了上述工具以及鉴权功能。 1、若无公共模块&a…