直升机性能调优

直升机性能调优

原文地址

该调优指南适用于Copter3.4及以上版本,从Copter3.3到3.4版本中我们修改了参数的名字与范围,这里有旧版的调优指南
如果使用者要设置传统直升机的参数,请务必使用gcs中的全部参数列表,不要使用为多旋翼准备的基本、扩展、高级调优界面, 这些界面会对直升机设置进行不必要的更改,而且要记得向飞控写入参数否则更改不会被保存。

一般飞机控制率介绍

使用者在调优之前应该大致了解飞机的控制率,大体看来飞机的控制率是一种跟随的算法模型,这种模型会把飞手输入的量转化为姿态控制(自稳模式)或速度控制(特技模式)以便能够实现期望量的输出。而软件根据飞手或自动驾驶仪的输入来跟踪或预测飞机在空间中的位置(即俯仰和横摇姿态)。它有两个控制器(姿态和速度)一起工作,以确保实际飞机实现软件预测的俯仰翻滚速度以及飞机姿态。

飞手对飞机的俯仰与翻滚方向的加速度的大小将通过设置参数ATC_ACCEL_P_MAX以及ATC_ACCEL_R_MAX受到限制。飞机对飞行员输入的响应速度(灵敏度/迟缓度)可以通过RC_FEEL参数进行调整。飞手的输入量和这些参数用于确定获得期望响应所需的请求速率,该速率被送给速率控制器。

姿态控制器被用来确保飞机实际的姿态与期望的姿态相匹配,比如俯仰中使用ATC_ANG_PIT_P参数来乘以控制期望俯仰角与实际俯仰角的偏差,结果经过姿态控制器输出控制俯仰轴的速率,该速率再通过速率控制器把飞机驱动到期望的俯仰角。参数ATC_ANG_RLL_P参数相似的的功能。

速率控制器的期望速率来自飞手输入的速率量以及姿态控制器输出的速率量的总和,通过控制十字盘的倾斜来实现期望的速率。速率控制器采用PID控制算法和前馈路径对飞行器进行控制来实现期望的速率。前馈路径使用期望速率,并将ATC_RAT_PIT_VFF前馈增益系数应用于俯仰,将ATC_RAT_RLL_VFF增益系数应用于滚动,来控制十字盘。PID算法利用实际速率和期望速率之间的误差来确定十字盘状态。这些数据汇总后发送到飞控中伺服控制模块,来控制伺服舵机的位置。

因此,这种调优方法最初使用VFF增益来确保期望速率与实际速率匹配,然而期望的速率会由于扰动而变化,所以用P、D增益来防止由于扰动而使实际的速率偏离期望速率。但是P、D又不能完全的消除扰动,所以达不到期望与实际的完全匹配。由于控制器时刻的在检测与跟踪飞行器,所有任何期望与实际的速率偏差都将导致姿态的偏差。因此,有一个称为积分器,它不断地累加速率误差,从而有效地计算姿态误差。I增益乘以积分器并加上速率控制器的其他输出。 该积分器受ATC_RAT_RLL_IMAX参数和ATC_RAT_PIT_IMAX参数的限制。当飞行器的相对地的速度小于5m/s时,该积分器将会被减小其控制量(按规定的速率降低),另一些参数ATC_RAT_RLL_ILMI和ATC_RAT_PIT_ILMI也将被降低相同控制量。如果ILMI或积分器减小到最小值为零,那么积分器将不允许增加,并且不会控制姿态与飞控预测的姿态完全匹配。然而,如果这不是零或足够大的姿态误差,可能会遇到低速和悬停,那么实际的姿态将跟踪预测的姿态。积分器的减小和ILMI参数的原因是前飞需要较大的积分器,然而在悬停时,特别是在飞行器即将离地或着陆过渡时,允许大量的积分器会导致飞机翻转。因此积分器泄漏和泄漏最小参数保留了足够的积分器,使其能够有效地保持姿态匹配,但不足以导致飞机侧翻。

初始化俯仰翻滚的调优参数

下表默认的参数可以用来开始调优你的直升机,当俯仰和滚转的VFF设置为0.15,直升机将很容易控制,但你需要修改默认的尾翼设置。

param name value
ATC_ACCEL_P_MAX 110000
ATC_ACCEL_R_MAX 110000
ATC_ANG_PIT_P 4.5
ATC_ANG_RLL_P 4.5
ATC_RAT_PIT_D 0
ATC_RAT_PIT_FILT 20
ATC_RAT_PIT_I 0
ATC_RAT_PIT_ILMI 0
ATC_RAT_PIT_IMAX 0.40
ATC_RAT_PIT_P 0
ATC_RAT_PIT_VFF 0.15
ATC_RAT_RLL_D 0
ATC_RAT_RLL_FILT 20
ATC_RAT_RLL_I 0
ATC_RAT_RLL_ILMI 0
ATC_RAT_RLL_IMAX 0.40
ATC_RAT_RLL_P 0
ATC_RAT_RLL_VFF 0.15
RC_FEEL 50

调整偏航轴(尾舵)

建议你开始调优俯仰与翻滚之前确保尾舵已调优.

重要提示-无人直升机相比于运动直升机通常机头的速度低而十字盘的负载高.对于机械驱动的尾桨意味着尾巴速度低于运动直升机而且降低了尾桨对机体的影响. authority.如果你的直升机符合这些描述,那么建议第一次测试悬停时将ATC_RAT_YAW_VFF设置成0.05.

下面是当前偏航的默认设置。在stabilize模式下,启动直升机将其悬停在距地面不超过0.25米的地方,测试起始机尾设置。如果尾部看起来“松了”而且不想持保持,则增加ATC_RAT_YAW_P。如果尾巴快速地左右摇摆,减少ATC_ANG_YAW_P.

所有情况下都不建议将ATC_ANG_YAW_P 低于3.5或ATC_RAT_YAW_P高于0.38.如果你的直升机在限制的值内调不了稳定的尾巴,那么你的直升机尾巴的机械结构出来问题,例如过度倾斜,连杆问题或者是舵机的问题.继续翻滚和俯仰的调优之前要修正这些问题.

param name value
ATC_ACCEL_Y_MAX 27000
ATC_ANG_YAW_P 4.5
ATC_RAT_YAW_D 0.003
ATC_RAT_YAW_FILT 20
ATC_RAT_YAW_I 0.12
ATC_RAT_YAW_ILMI 0
ATC_RAT_YAW_IMAX 0.33
ATC_RAT_YAW_P 0.18
ATC_RAT_YAW_VFF 0.024

设置VFF和ACCEL_MAX达到所需的俯仰和滚转响应

在俯仰轴和滚转轴上,都设置了VFF增益,以便实际的速度与期望的速度匹配,为此,在日志中的RATE需要比较俯仰方向的P.des与P信号以及翻滚方向的R.des与R信号.设置VFF=0.15,起飞,在stability模式下悬停,然后在pitch与roll方向来一些大动作.着陆后从sd卡中下载日志并在你的地面站中查看这些信息. 如果实际速率大于期望速率,则需要降低VFF,如果是小于则增加VFF. 如果期望的和实际的速度偏差一个量级,这意味着你的十字盘没有调平,或者重心不正确。在这种情况下,只需确保期望和实际之间的速率变化是相似的。如果你得到匹配的速率,并且他们觉得他们太快了,那么减少ATC_ACCEL_MAX参数,并且重复上面的过程来匹配期望的和实际的速率。

如果在调整VFF增益时飞机开始振荡,减小该轴的ATC_ANG_xxx_P增益,直到振荡停止。然而,对于大多数直升机来说,上述建议值不应该引起这个问题。

对于有副翼的直升机来说连杆的速率通常较低,建议俯仰和滚转都从0.22 VFF开始,VFF可能设置的更高.对于没有副翼的直升机来说,VFF不应该超过0.22,除非你的伺服系统超慢。对于所有直升机,VFF增益补偿伺服和连杆速度的差异。

AATC_ACCEL_MAX参数的值取决于直升机的大小。大型800-900级机器通常在36000-52000范围内;较小的450-500级机器通常在90000-110000范围内。你可能也想试验一下RC_FEEL参数,以得到你喜欢的初始飞机响应。建议将RC_FEEL参数保持在25到50之间。一旦这个过程完成,飞机应该有所期望的柔韧性和速度感。

下面是一个图表,显示了期望的速率辊与实际速率辊的示例。峰值对应于快速杆输入,峰值的振幅(高度)应该大致相同,偏移不超过100毫秒。
image

关于调整有副翼的直升机的注意事项 -副翼是速率PID回路的机械版本。所以副翼在俯仰和滚转上只使用VFF来调优。下面中提到的速率D和P增益保持为零。I-gain、IMAX和ILMI的调优就像FBL一样。下面是在飞行杆直升机上使用ATC_RAT_RLL_VFF =0.22的起始设置。该图显示飞机对姿态控制器速率要求的响应较低,这意味着必须增加VFF值以实现适当的速率响应。对于所有有副翼的直升机,确保将H_FLABAR_MODE设置为1.
image

调整D和P增益

一旦直升机以VFF增益的速率做出良好的响应,现在调整PID增益。速率PID控制器提供稳定性以抑制干扰,并保持实际飞机速率达到系统预测的速率。

从D增益开始。使用连接到遥控器通道6的ArduCopter的调优功能。进行以下参数更改。

name valude
TUNING 21
TUNING_LOW 0
TUNING_HIGH 30*

对于futaba收音机,这相当于旋钮的一个增量为0.001

调整遥控器6通道的旋钮,直到ATC_RAT_RLL_D和ATC_RAT_PIT_D增益为0.001。上升到悬停状态,并在roll方向做一些大动作。大多数直升机在看到俯仰振动之前都会先看到横摇振动。这就是为什么建议使用roll输入。如果没有震动,加大增益,然后再试一次。在得到快速抖动的值处,将该值减半,并将其作为ATC_RAT_RLL_D和ATC_RAT_PIT_D的最终调优值输入。测试将直升机悬停在空中,并在俯仰和翻滚中做一些快速的运动,以确保它是稳定的。

接下来调整P增益,确保进行以下参数更改。

name value
TUNING 4
TUNING_LOW 0
TUNING_HIGH 300*

对于futaba遥控器,这相当于旋钮的一个增量为0.01

调整6通道旋钮,直到ATC_RAT_RLL_P和ATC_RAT_PIT_P增益为0.05。盘旋上升,从一边到另一边猛烈滚动。如果没有抖动,将增益增加0.01,然后重试。在得到快速摇晃的值时,将该值减半,并将其输入为ATC_RAT_RLL_P和ATC_RAT_PIT_P的最终调优值。测试悬停直升机,并在俯仰和滚转中进行一些快速的运动,以确保其稳定。

在调整了P增益和D增益后,飞机应该会感觉更平稳。

设置I增益以及IMAX、ILMI

建议将ATC_RAT_PIT_I增益设置为ATC_RAT_PIT_VFF增益,ATC_RAT_RLL_I增益设置为ATC_RAT_RLL_VFF增益,IMAX值限制了积分器误差的累积,积分项可以用来对抗较大的姿态扰动。在飞机的纵轴上,当飞机高速前进时ATC_RAT_PIT_I能够保持飞机的姿态,初始值是0.4。并且确保IMAX = 1,请以最大期望速度飞行飞机。拉出日志,查看PIDP消息中的最大I值是多少。将IMAX设置为高于最大值0.1。您可以对滚动轴做同样的操作,但通常0.4就足够了。ILMI设置为您希望在悬停时保留的最大积分器值,以帮助保持姿态。建议该值不大于0.1。

下面是在ILMI参数设置为零,适当设置I-gain和IMAX参数的情况下,直升机在高速自主飞行中期望横摇姿态与实际横摇姿态的关系图,将使直升机在超过5m/s的速度下,以超过2秒的时间(我们称之为“动态飞行”)非常接近所期望的姿态。在动态飞行中,它应该在所需的1-2度误差范围内。在图的右边,飞手将直升机从悬停状态切换到稳定飞行模式。您将注意到实际滚动姿态和期望滚动姿态之间的差异,这是将ILMI设置为0的原因。ILMI可以被认为是悬停时的一种“自动配平”,当直升机不在动态飞行时,这种配平可以减少期望和实际俯仰和滚转姿态之间的差异。
image

悬停配平、悬停飞行模式和航路点飞行的高级调优

在这一点上,你应该有一架反应灵敏又稳定的直升机。但是我们需要修整直升机,这样它就可以在stability飞行模式下自由盘旋。在AUTO 飞行模式下调整I-增益,以便在飞机在全自动驾驶仪全部控制下正确跟踪姿态。

悬停调优

在俯仰和翻滚轴上调整直升机是防止飞机在stability和althold模式下漂移的一个重要步骤。翻滚轴的配平姿态受尾旋翼推力的影响。所有传统的带有扭矩补偿尾桨的单旋翼直升机,根据主旋翼转向的方式,要么右滑低,要么左滑低。ArduCopter软件有一个参数(ATC_HOVR_RLL_TRIM)来补偿这种现象。纵向重心位置将影响俯仰轴上的配平姿态。没有参数可以告诉飞行控制器飞机在俯仰姿态上漂移盘旋。它总是以飞行控制器测量的零度俯仰为目标。因此,飞机盘旋的实际俯仰姿态可能是5°机头高,但飞行控制器AHRS配平值被设置为使其认为姿态为零。

为了配平飞机,将ATC_HOVR_RLL_TRIM 参数设置为零。在飞行控制器的初始设置过程中,AHRS配平值是在加速计校准过程中的最后一步设置的,最后一步是使飞机水平。对于这个步骤,你应该确保轴在俯仰和滚动上是完全垂直的。对于此步骤,建议您检查并使用以下方法。

用数字螺距尺测量实际的节距和滚动角度(在垂直于主轴的框架部分)。通过MavLink连接到地面站软件,注意飞行控制器测量的俯仰和滚转角度。调整AHRS_TRIM_X和AHRS_TRIM_Y值,使飞行控制器匹配你用数字螺距尺测量的相同的框架角度。您可以使用地面站中的校准水平面功能,将直升机水平放置在实际高度。该功能将为您调整AHRS_TRIM。

以上是必要的,这样我们就可以精确地测量滚转角来设置ATC_HOVR_RLL_TRIM。飞行控制器现在“知道”主轴何时完全垂直。

给直升机装载其正常有效载荷,并在stability飞行模式无风条件下悬停直升机。着陆并查看日志,注意你必须保持的滚转角( noting the roll angle that you had to hold with the stick to keep the helicopter from drifting),以防止直升机漂移。以百分位数为单位,在ATC_HOVR_RLL_TRIM参数中输入该值。对于顺时针转动主电机,如果需要3.5度的右滚来补偿,输入350。负值适用于需要左滚进行补偿的逆时针转动主电机。

重要提醒 - do not use the radio trims at all. Make sure they are centered.

设置好ATC_HOVR_RLL_TRIM后,现在再次悬停直升机。如果仍然漂移,则对SERVO1_TRIM、SERVO2_TRIM和SERVO3_TRIM进行小的调整。使斜盘完全水平的机会非常低,需要这种动态调整来调整直升机。如果它需要与原始的SERVOx_TRIM值有较大的偏差,那么很可能是您的重心问题,或者您在调平斜盘时的初始设置不是很准确。

你的直升机现在调整好了。这种修整步骤使难以操纵的直升机与真正具有飞行品质和操纵能力的直升机有所不同。(This trimming procedure makes the difference between a helicopter that is difficult to handle vs one that flies with true scale quality and handling.)

高速自主飞行模式下的I增益的调整

用你的地面站软件准备一个任务,让直升机以6米/秒的速度左右转弯。执行此任务的直升机,从microSD卡中取出日志,查看动态飞行中所需的AHRS与实际俯仰、横摇和偏航姿态。他们误差应该在1-2度内。如果没有,则增加该轴的ATC_RAT_xxx_I值,直到满足。

现在,以9-10 m/s的更高速度执行同样的任务,并以同样的方式分析日志。根据需要进一步调整I增益和IMAX值,不同的直升机需要不同的值。但是0.25-0.38的I增益值在俯仰和滚转中很常见,在偏航中为0.18-0.30。0.40-0.45的IMAX值很常见,但是请参阅“设置I增益以及IMAX、ILMI”部分,了解如何确定IMAX值。

发布了10 篇原创文章 · 获赞 11 · 访问量 5973

猜你喜欢

转载自blog.csdn.net/qq_33641919/article/details/89281186