概述
Author:Bingo
Time:20190601,V1.0
直升机调试记录
- 十字盘机械配平
- 上位机调十字盘水平
- 调整直升机在Stabilize模式下悬停
- 调整直升机在AltHold模式下悬停
- 调整直升机在PosHold模式下悬停
十字盘机械配平
此目的是为了如下图所示臂A、臂B在同一个位置角度是相同。
用螺距尺测此时臂A的角度为-10度。
然后旋转十字盘,注意不要动三个舵机此时的位置,把臂B移动到如上图所示臂A的位置,测得此时臂B的角度为-9.4度。
两个臂相差0.6度,那么需要稍微降低臂B,使其达到-10度左右,可根据如下图所示操作。
最终的效果
上位机调十字盘水平
调整最大螺距,最小螺距位置
打开QGC在设置一栏中的直升机下会有如下图的三个选项。打开遥控器,油门拉到最低,调整Collective Pitch Minimum选项,直到测得的螺距为-3度左右。油门拉到最高,调整Collective Pitch Maximum选项,直到测得的螺距为10度左右。至于Mid-Point直接取最大与最小的平均和即可。
调整十字盘在最大(10度左右)和最小(-3度左右)螺距时臂A、臂B倾斜角度相同
接下来就是微调十字盘的三个舵机,使十字盘旋转时不论在哪个螺距上都能达到差不多的水平。
尾巴朝向你来看,舵机1为十字盘左边的舵机,舵机2为右边的舵机,舵机3为后边的舵机。
油门拉到最低,开始调最小螺距(-3度)。先调舵机1和2,如图两臂前后展开,螺距尺零度处在REL相对水平模式。
然后把螺距尺移动到臂A上,如图测的度数是-3.5度,那么改变舵机1的pwm值使度数达到-3度。
把螺距尺移动到臂B上,测得的度数是-4.3度,那么改变舵机2的pwm值使其达到-3度。
接下来调3号舵机,把两臂左右展开,螺距尺零度处在REL相对水平模式。
把螺距尺放到臂B上,可以看到三号舵机此时控制臂B的角度,得到度数为-2.5度,调整三号舵机pwm使其度数为-3度
三个舵机的微调pwm值到现在已经确定了,现在把油门调到最大,测臂的角度是否是10度左右,如果度数相差很大,那么,你需要从机械调平那里重新来过。
接下来顺便调下4号尾舵机的,打偏航杆,调整最大,最小pwm保证尾舵机行程在正常范围,并修改微调pwm,保证不打杆时尾桨在中立位置。
调整直升机在Stabilize模式下悬停
-
设置默认参数
-
调整YAW尾巴
-
调整Pitch and Roll 的Rate VFF以及ACCEL_MAX
-
调整Pitch and Roll 的Rate D与Rate P
-
调整Pitch and Roll 的Rate I 、Rate IMAX以及Rate ILMI
-
微调AHRS_TRIM_X,AHTS_TRIM_Y
设置默认参数
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 |
调整尾巴
在stabilize模式下,启动直升机将其悬停在距地面不超过0.25米的地方。如果尾部看起来“松了”而且不想保持,则增加ATC_RAT_YAW_P。如果尾巴快速地左右摇摆,减少ATC_ANG_YAW_P。
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 |
调整Pitch and Roll 的VFF以及ACCEL_MAX
在stability模式下悬停,然后在pitch与roll方向来一些大动作.着陆后从sd卡中下载日志并在你的地面站中查看这些信息, (在RATE一栏)如果实际速率大于期望速率,则需要降低VFF,如果是小于则增加VFF
ATC_ACCEL_MAX参数的值取决于直升机的大小。大型800-900级机器通常在36000-52000范围内;较小的450-500级机器通常在90000-110000范围内
调整Pitch and Roll 的D与P
设置ATC_RAT_RLL_D和ATC_RAT_PIT_D增益为0.001。上升到悬停状态,并在roll方向做一些大动作。大多数直升机在看到俯仰振动之前都会先看到横摇振动。这就是为什么建议使用roll输入。如果没有震动,加大增益,然后再试一次。在得到快速抖动的值处,将该值减半,并将其作为ATC_RAT_RLL_D和ATC_RAT_PIT_D的最终调优值输入。
设置ATC_RAT_RLL_P和ATC_RAT_PIT_P增益为0.05。盘旋上升,从一边到另一边猛烈滚动。如果没有抖动,将增益增加0.01,然后重试。在得到快速摇晃的值时,将该值减半,并将其输入为ATC_RAT_RLL_P和ATC_RAT_PIT_P的最终调优值
调整Pitch and Roll 的Rate I 、Rate 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。
微调AHRS_TRIM_X,AHTS_TRIM_Y
此步骤是为了在stability模式下,飞手脱杆直升机能够差不多的悬停。
修改AHRS_TRIM_X调整飞机前后,修改AHRS_TRIM_Y调整飞机左右。
调整直升机在AltHold模式下悬停
param name | value |
---|---|
PSC_POSZ_P | 5 |
PSC_VELZ_P | 1 |
PSC_ACCZ_P | 0.5 |
PSC_ACCZ_FF | 0 |
PSC_ACCZ_FILT | 20 |
PSC_ACCZ_I | 1 |
PSC_ACCZ_IMAX | 800 |
PSC_ACCZ_D | 0 |
PSC_POSZ_P用于将高度误差(期望高度和实际高度之间的差值)转换成期望的爬升率或下降率。更高的速率会使它更快速地试图保持高度,但如果设置得太高,会导致油门反应不稳。
PSC_VELZ_P(通常不需要调整)将期望的爬升或下降速度转换成期望的上升或下降加速度。
油门加速比例积分微分增益将加速度误差(即期望加速度和实际加速度之间的差值)转换为电机输出。如果修改这些参数,应该保持PSC_ACCZ_P:PSC_ACCZ_I=1:2。这些数值不应该增加,但是对于重量级的直升机来说,你可以通过减少PSC_ACCZ_P与PSC_ACCZ_I来获得更好的控制。
在日志中可以查看CTUN中Dalt(期待高度)与alt(实际高度)来分析高度控制的如何。
调整直升机在PosHold模式下悬停
这一步才是真正意义下了悬停,通过此步骤,飞机能够在poshold模式下定点。
此模式下的XY方向的控制率与高度Z方向的控制率有相同的规律。多调试,多看日志,多分析。
param name | value |
---|---|
PSC_ACC_XY_FILT | 2 |
PSC_POSXY_P | 1 |
PSC_VELXY_D | 0 |
PSC_VELXY_D_FILT | 5 |
PSC_VELXY_FILT | 5 |
PSC_VELXY_I | 0.5 |
PSC_VELXY_IMAX | 1000 |
PSC_VELXY_P | 1 |
通过日志里的PSC可以看到位置控制,其中T开头的是期望值。
最后
以上就是无心帽子为你收集整理的APM直升机调试记录直升机调试记录的全部内容,希望文章能够帮你解决APM直升机调试记录直升机调试记录所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复