请选择 进入手机版 | 继续访问电脑版

11

阿木币

1

精华

4 小时

在线时间

老司机

Rank: 2

发表于 2019-7-24 17:05:36 4403 浏览 4 回复

[算法之美] 无人机飞控姿态调参方法

本帖最后由 zwlbuaa 于 2019-7-24 22:48 编辑

前言

无人机的调试工作很大一部分是对飞行控制参数的调试,广义的飞控参数包含了制导、导航、控制律以及各种控制策略中的可调参数。一般的飞控都有上百项需要人为调试的参数,有的甚至是几百上千个。而姿态控制作为无人机控制的基础,一般在无人机试飞调试时首当其冲,成为我们首要调试对象,当然导航的参数以及我们上一讲PX4实战目光之振动分析肯定是在调试姿态之前都有一个比较好的状态的。

我们今天要说的姿态参数调试方法是针对目前使用最为广泛的串级PID控制器进行的,而在姿态控制中基于时标分离假设设计的控制器一般分为内外环结构,内环控制姿态角速率,外环控制姿态角。时标分离的意思就是内环响应的速度要远快于外环,所以内环响应可以在很短的时间内跟上外环给出的期望。PX4中使用的P(外环)—PID(内环)型结构就是这么设计出来的,关于姿态控制的控制律设计部分我们以后再讲,会针对欧拉角和四元数两种描述分别进行论述。今天我们就来谈谈这个P—PID的内外环姿态控制器的参数应该怎么调试。

固定翼、直升机和多旋翼的调参方法有类似之处,但是他们三者对于参数的敏感性完全不同,直升机对参数及其敏感,参数稍有变化控制效果就会相差很多,而固定翼对于参数适应范围很广,也是最好调试的。今天我们的调参主要针对的是多旋翼飞机(垂起飞行器旋翼部分),以PX4为例,其他飞控调试方法基本一样,可能参数名字不一样,功能有所差别而已。

调参准备

在开始参数调试之前,我们要做一些调试准备,飞行器各系统正常自不必说,飞控参数也要有所更改和验证:

1、电调校准完毕;

2、PWM_MIN参数要保证飞行器解锁后电机不会停止转动,这么做的原因是在空中遇到姿态控制比较极端的情况下,飞行器输出的电机控制信号一般会打到最低和最高位置,如果,最低位置PWM_MIN时电机已经停止转动,那也就是说电机这部分控制已经不起效果了,会造成飞行器力和力矩的不平衡,姿态控制出现问题。所以在地面时要进行以下验证:

A、不装桨叶上电;

B、将油门打到最低位置;

C、俯仰滚转偏航三个方向都晃动45度(这个角度根据你设置的最大姿态角来定);

D、检测有无电机停转;

3、还是打开SDLOG_PROFILE 参数的high rate选项,便于分析姿态控制效果;

4、将参数 MC_AIRMODE置0,此参数会在电机饱和时优先保证姿态控制,减弱油门通道的控制;

5、将姿态相关的所有参数都减少20%,避免发散的可能性。其主要参数如下:

滚转角速率控制器:(MC_ROLLRATE_P, MC_ROLLRATE_I, MC_ROLLRATE_D)

俯仰角速率控制器:(MC_PITCHRATE_P, MC_PITCHRATE_I, MC_PITCHRATE_D)

偏航角速率控制器:(MC_YAWRATE_P, MC_YAWRATE_I, MC_YAWRATE_D)

滚转角控制 (MC_ROLL_P)

俯仰角控制 (MC_PITCH_P)

偏航角控制 (MC_YAW_P)

最大滚转角速率 (MC_ROLLRATE_MAX)

最大俯仰角速率 (MC_PITCHRATE_MAX)

最大偏航角速率  (MC_YAWRATE_MAX)

滚转角速率前馈控制(MC_ROLLRATE_FF)

俯仰角速率前馈控制(MC_PITCHRATE_FF)

偏航角速率前馈控制(MC_YAWRATE_FF)

**参数调试方法**

俯仰滚转偏航三个通道的调试方法基本是一样的,所以我们只针对其中一个通道来进行说明,就以滚转通道为例,为了飞行安全,我们调试时都以manual/Stablized模式起飞,不进行Acro模式的试飞。

调试步骤一般是这样的:

1、轻推油门,在地面上观察飞机有无震荡趋势,没有则正常起飞;

2、在空中做滚转方向激励(遥控器滚转遥杆迅速向左或向右拨杆后回中),遥控器从小到大给出滚转通道激励(10-30度左右的激励)后观察飞机反馈,看飞机有无震荡现象;

3、先调试参数MC_ROLLRATE_P,此参数是角速率控制器的主力军,只要有误差第一时间响应,参数大小直接影响飞机的灵敏度,每次增加10-20%直到给激励后飞机出现小幅震荡为止,这时候将此参数缩减为60-70%左右;

4、再调试参数MC_ROLLRATE_I,也是每次增加10-20%直到飞机出现小幅震荡,缩减为60-70%,此参数主要用于消除跟踪静差,参数太小会导致无法应对外界扰动;

5、参数MC_ROLLRATE_D与飞行器的噪声有关,所以对于噪声大的飞行器此参数基本设置为0附近,噪声小的可以适当增加此参数后观察飞机是否有小幅震荡,有的话缩减为50%,此参数过小会出现飞行器给出激励后回中时超调出现多次余震。

6、固定好内环参数后调试参数MC_ROLL_P,此参数基本不用怎么调试,调大了也会震荡,然后缩小;

7、MC_ROLLRATE_FF参数其实就是角速环输出直接反馈到电机上,此参数有利于飞行器给出姿态期望后的快速响应,但是不能过大,因为他不是反馈控制,要是占的输出比例过大,会干扰角速率环的控制。如果飞行器姿态响应比较慢可适当加大,姿态响应过于灵敏则降低此参数。

8、关于角度和角速率的限幅参数其实要根据具体的飞机来定了,如果飞机的电机不够富裕,那就限制得小一点,如果电机能力足够,就放宽一些。

9、THR_MDL_FAC参数,这个参数是用来修正升力和PWM输出值的关系的,我们经常发现在悬停状态时飞机的姿态控制好好的,但是到了快速爬升和下降时,飞机就出现姿态不稳的现象,就是因为力和PWM的输出他不是线性关系,所以会出现不同油门值的时候控制效果不一样,这个参数就是用来调试这个现象的。关于这个参数我们后面再讲。



数据分析



调参是一定需要数据分析的,可以使用Flight Review来进行分析,主要分析角度和角速率跟踪情况以及电机是否出现饱和现象。下面的数据除了第一张图之外都是较大尺寸飞机的姿态响应曲线,所以给出激励后响应较慢,不像小尺寸飞机的跟踪效果那么好。

角速率跟踪好的情况就跟下图所示:
roll_rate_tracking.png

跟踪不好震荡的情况是这样的:
roll_rate_tracking_bad.png

姿态跟踪好的情况给激励是这样的:
bokeh_plot (9).png

姿态跟踪不好的情况是这样的:
roll_tack_bad.png

总结


本文描述了如何调试角度控制器的主要参数,调参的时候要注意不要一步调太多,调试参数时飞机要落地,多调试,多总结,基本上就能够掌握调试的技巧了。姿态调参部分还有TPA的相关参数和THR_MDL_FAC没有细讲,后面会进行补充。欢迎关注公众号:无人机系统技术。可在公众号底部加微信群技术交流。
文末图.jpg






扫一扫浏览分享
回复

使用道具 举报

110

阿木币

0

精华

142 小时

在线时间

技术大V

Rank: 4

发表于 2019-7-24 22:18:45 来自手机
赞非常实用的文章
回复 点赞

使用道具 举报

11

阿木币

1

精华

4 小时

在线时间

老司机

Rank: 2

 楼主| 发表于 2019-7-24 22:47:09
SmilE 发表于 2019-7-24 22:18
赞非常实用的文章

谢谢,欢迎交流讨论
回复 点赞

使用道具 举报

209

阿木币

1

精华

52 小时

在线时间

老司机

Rank: 2

发表于 2019-7-25 08:33:08
哈哈 有经过这种调参之后,飞行姿态的对比视频么~~看起来挺好,但不知道最终效果啊。之前自己调试过,但感觉调了PID后,姿态的改变没有想象中大。
回复 点赞

使用道具 举报

11

阿木币

1

精华

4 小时

在线时间

老司机

Rank: 2

 楼主| 发表于 2019-7-25 17:26:57
blueboats 发表于 2019-7-25 08:33
哈哈 有经过这种调参之后,飞行姿态的对比视频么~~看起来挺好,但不知道最终效果啊。之前自己调试过,但感 ...

视频的话这儿没有,你可以加我微信我回头发给你看看
回复 点赞

使用道具 举报

返回列表
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表