[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
工作人员Tony_Stark
2015-10-10 09:55:44 显示全部楼层

马上注册,玩转Robomaster!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
完整的资料都在附件里。



                               
登录/注册后可看帖子

这只是部分···原文好长好长(而且这里没图)

常用四轴的两种PID算法讲解(单环PID、串级PID)
        这里主要讲解的PID算法属于一种线性控制器,这种控制器被广泛应用于四轴上。要控制四轴,显而易见的是控制它的角度,那么最简单,同时也是最容易想到的一种控制策略就是角度单环PID控制器,系统框图如图所示: 单级PID.jpg
或许有些朋友看得懂框图,但是编程实现有一定困难,在这里笔者给出了伪代码:
单级PID伪代码.jpg
上述角度单环PID控制算法仅仅考虑了飞行器的角度信息,如果想增加飞行器的稳定性(增加阻尼)并提高它的控制品质,我们可以进一步的控制它的角速度,于是角度/角速度-串级PID控制算法应运而生。在这里,相信大多数朋友已经初步了解了角度单环PID的原理,但是依旧无法理解串级PID究竟有什么不同。其实很简单:它就是两个PID控制算法,只不过把他们串起来了(更精确的说是套起来)。那这么做有什么用?答案是,它增强了系统的抗干扰性(也就是增强稳定性),因为有两个控制器控制飞行器,它会比单个控制器控制更多的变量,使得飞行器的适应能力更强。为了更为清晰的讲解串级PID,这里笔者依旧画出串级PID的原理框图,如图所示:
串级PID.jpg
同样,为了帮助一些朋友编程实现,给出串级PID伪代码:
串PID伪代码.jpg
而笔者在整定串级PID时的经验则是:先整定内环PID,再整定外环P。

内环P:从小到大,拉动四轴越来越困难,越来越感觉到四轴在抵抗你的拉动;到比较大的数值时,四轴自己会高频震动,肉眼可见,此时拉扯它,它会快速的振荡几下,过几秒钟后稳定;继续增大,不用加人为干扰,自己发散翻机。
特别注意:只有内环P的时候,四轴会缓慢的往一个方向下掉,这属于正常现象。这就是系统角速度静差。

内环I:前述PID原理可以看出,积分只是用来消除静差,因此积分项系数个人觉得没必要弄的很大,因为这样做会降低系统稳定性。从小到大,四轴会定在一个位置不动,不再往下掉;继续增加I的值,四轴会不稳定,拉扯一下会自己发散。
特别注意:增加I的值,四轴的定角度能力很强,拉动他比较困难,似乎像是在钉钉子一样,但是一旦有强干扰,它就会发散。这是由于积分项太大,拉动一下积分速度快,给  的补偿非常大,因此很难拉动,给人一种很稳定的错觉。

内环D:这里的微分项D为标准的PID原理下的微分项,即本次误差-上次误差。在角速度环中的微分就是角加速度,原本四轴的震动就比较强烈,引起陀螺的值变化较大,此时做微分就更容易引入噪声。因此一般在这里可以适当做一些滑动滤波或者IIR滤波。从小到大,飞机的性能没有多大改变,只是回中的时候更加平稳;继续增加D的值,可以肉眼看到四轴在平衡位置高频震动(或者听到电机发出滋滋的声音)。前述已经说明D项属于辅助性项,因此如果机架的震动较大,D项可以忽略不加。

外环P:当内环PID全部整定完成后,飞机已经可以稳定在某一位置而不动了。此时内环P,从小到大,可以明显看到飞机从倾斜位置慢慢回中,用手拉扯它然后放手,它会慢速回中,达到平衡位置;继续增大P的值,用遥控器给不同的角度给定,可以看到飞机跟踪的速度和响应越来越快;继续增加P的值,飞机变得十分敏感,机动性能越来越强,有发散的趋势。


                               
登录/注册后可看帖子







四轴PID算法讲解(单环PID、串级PID).rar

251.79 KB, 下载次数: 977

售价: 8 金钱  [记录]

精品,有点贵,但是值得

跳转到指定楼层

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
正式队员TSWinston
2019-3-20 19:56:26 显示全部楼层
外环P:当内环PID全部整定完成后,飞机已经可以稳定在某一位置而不动了。此时内环P,从小到大,可以明显看到飞机从倾斜位置慢慢回中,用手拉扯它然后放手,它会慢速回中,达到平衡位置;继续增大P的值,用遥控器给不同的角度给定,可以看到飞机跟踪的速度和响应越来越快;继续增加P的值,飞机变得十分敏感,机动性能越来越强,有发散的趋势。

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
梯队队员Bccbrr
2023-12-18 19:50:25 显示全部楼层
外环P:当内环PID全部整定完成后,飞机已经可以稳定在某一位置而不动了。此时内环P,从小到大,可以明显看到飞机从倾斜位置慢慢回中,用手拉扯它然后放手,它会慢速回中,达到平衡位置;继续增大P的值,用遥控器给不同的角度给定,可以看到飞机跟踪的速度和响应越来越快;继续增加P的值,飞机变得十分敏感,机动性能越来越强,有发散的趋势。

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
梯队队员qyc
2023-2-19 09:11:50 显示全部楼层
外环P:当内环PID全部整定完成后,飞机已经可以稳定在某一位置而不动了。此时内环P,从小到大,可以明显看到飞机从倾斜位置慢慢回中,用手拉扯它然后放手,它会慢速回中,达到平衡位置;继续增大P的值,用遥控器给不同的角度给定,可以看到飞机跟踪的速度和响应越来越快;继续增加P的值,飞机变得十分敏感,机动性能越来越强,有发散的趋势。

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
工作人员Tony_Stark
 楼主| 2015-10-10 10:05:45 显示全部楼层
我还没整理好····附件还在弄

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
工作人员Tony_Stark
 楼主| 2015-10-10 13:02:10 显示全部楼层
附件上传,现在已经弄好了,有点贵,但是值得这个价

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
哨兵逆光飞行
2015-10-12 07:32:08 显示全部楼层
为什么购买了下不了啊?

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
哨兵逆光飞行
2015-10-12 07:33:08 显示全部楼层
能不能给我发邮箱呢?
lordeliwood@163.com

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
工作人员Tony_Stark
 楼主| 2015-10-12 08:00:17 显示全部楼层
逆光飞行 发表于 2015-10-12 07:33
能不能给我发邮箱呢?

早上满课~~中午回来马上发~~不好意思

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
正式队员sk2214
2015-10-12 09:37:07 显示全部楼层
为什么购买后不能获取啊。。。

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
正式队员sk2214
2015-10-12 09:42:44 显示全部楼层
这是什么原因啊~~~你也给我发邮箱吧~eleconlab@163.com
]GQ2)HTAB403K)X4%L8J%HT.png

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
工作人员Tony_Stark
 楼主| 2015-10-12 10:11:33 显示全部楼层
sk2214 发表于 2015-10-12 09:42
这是什么原因啊~~~你也给我发邮箱吧~

嗯我待会重新上传,还有直接发给你,不好意思

[嵌入式] 【分享帖】PID控制算法详解(单环PID、串级PID)

  [复制链接]
工作人员Tony_Stark
 楼主| 2015-10-12 12:52:42 显示全部楼层
现在已经能正常下载~~感恩大家的支持
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

触屏版 | 电脑版

Copyright © 2024 RoboMasters 版权所有 备案号 粤ICP备2022092332号

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