自己对PID一些学习总结

本文深入介绍了PID控制算法,包括比例、积分、微分三个环节的作用。通过MATLAB仿真展示了比例控制如何影响系统响应速度和超调,积分控制如何消除静差以及微分控制如何减少调节时间。还探讨了积分饱和问题,并对比了位置式和增量式PID控制算法的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

最近在学习关于PID的一些知识,记录一下。

前期准备

  • MATALAB R2020b

过程

pid的基础

PID即:Proportional(比例)、Integral(积分)、Differential(微分)的缩写。顾名思义,PID控制算法是结合比例、积分和微分三种环节于一体的控制算法,它是连续系统中技术最为成熟、应用最为广泛的一种控制算法。PID控制的实质就是根据期望与测量的偏差值,按照比例、积分、微分的函数关系进行运算,运算结果用以控制输出,使得被控对象保持在一个稳定状态

系统由PID控制器和被控对象组成,原理框图如下
在这里插入图片描述
误差 e ( t ) = r ( t ) − u ( t ) e(t)=r(t)-u(t) e(t)=r(t)u(t)

连续控制系统的理想PID控制规律为:
u ( t ) = K p ( e ( t ) + 1 T i ∫ 0 t e ( t ) d t + T d d e ( t ) d t ) . u(t) = K_p\left(e(t)+\frac{1}{T_i}\int_0^t e(t)dt+T_d\frac{de(t)}{dt}\right). u(t)=Kp(e(t)+Ti10te(t)dt+Tddtde(t)).
式中
K p K_p Kp---- 控制器增益,比例系数,与比例度成倒数关系
T i T_i Ti------积分时间常数
T d T_d Td------微分时间常数
e ( t ) e(t) e(t)------期望值与测量值之差

k p k_p kp—成比例地反映控制系统的偏差信号,偏差一旦产生,立即产生控制作用以减小偏差(图中的 K p K_p Kp,等同)

k i k_i ki—主要用于消除静差提高系统的无差度。积分作用的强弱,取决于积分时间常数 T i Ti Ti T i Ti Ti越大积分作用越弱,反之则越强(图中的 K p T i \frac{K_p}{T_i} TiKp

k d k_d kd—微分环节的作用能反映偏差信号的变化趋势(变化速率),并能在偏差信号的值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减小调节时间(图中的 K p ⋅ T d {K_p}\cdot{T_d} KpTd

比例控制

利用matlab仿真来观察各个系数对曲线的影响,首先,搭建模型,将 k i , k d = 0 k_i,k_d=0 kikd=0,如下图
在这里插入图片描述
在这里插入图片描述

仿真结果如下图
在这里插入图片描述
从仿真图中可以看出,比例系数 k p k_p kp越小,控制作用越小,系统响应越慢;反之,比例系数 k p k_p kp越大,控制作用也越强,系统响应也越快。它能迅速反映偏差,从而减小偏差,但不能消除静差(静差是指系统控制过程趋于稳定时,给定值与输出量的实测值之差)。但是, k p k_p kp过大会使系统产生较大的超调和振荡,导致系统的稳定性能变差。

比例控制具有抗干扰能力强、控制及时、过渡时间短的优点,但存在稳态误差,增大比例系数可提高系统的开环增益,减小系统的稳态误差,从而提高系统的控制精度,但这会降低系统的相对稳定性,甚至可能造成闭环系统的不稳定,因此,在系统校正和设计中,比例控制一般不单独使用。
说到可提高系统的开环增益,就要看下图, K K K就是开环增益,而 k p ⋅ K k_p \cdot K kpK提高了原本的开环增益,使得分母增大,进而减小稳态误差。
在这里插入图片描述
那为什么 k p k_p kp过大会使系统产生较大的超调和振荡,导致系统的稳定性能变差呢?
我们先来看看模型中的根轨迹,如下图所示
在这里插入图片描述

num = [1] %开环传递函数的分子多项式
den = [6 5 1] %开环传递函数的分母多项式
sys = tf(num,den)
rlocus(sys) %绘制根轨迹

从图中可以看出,系统的极点都在s平面的左半平面(特征根具有负实部),根据线性系统稳定的充分必要条件可知,系统是稳定的,也就是说最后响应曲线能稳定在某一个值上,但是如何到达稳定,就得具体分析。
我们可以看到系统传递函数只有比例作用时的传递函数 G k ( s ) = k p ( 3 s + 1 ) ( 2 s + 1 ) , H ( s ) = 1 Gk(s)=\frac{k_p}{(3s+1)(2s+1)},H(s)=1 Gk(s)=(3s+1)(2s+1)kpH(s)=1
闭环传递函数 Φ ( s ) = k p 6 s 2 + 5 s + k p + 1 \Phi(s)=\frac{k_p}{6s^2+5s+k_p+1} Φ(s)=6s2+5s+kp+1kp
可以看出,因为不是标准的二阶系统,可以拆成比例环节乘以震荡环节,也就是把分子 k p k_p kp提出来, Φ ( s ) = k p k p + 1 ⋅ k p + 1 6 s 2 + 5 s 6 + k p + 1 6 \Phi(s)=\frac{k_p}{k_p+1}\cdot \frac{\frac{k_p+1}{6}}{s^2+{\frac{5s}{6}}+{\frac{k_p+1}{6}}} Φ(s)=kp+1kps2+65s+6kp+16kp+1
所以二阶系统的阻尼比 ζ = 5 6 12 k p + 1 \zeta={\frac{5\sqrt{6}}{12\sqrt{{k_p+1}}}} ζ=12kp+1 56 ω n = k p + 1 6 \omega_n=\sqrt{\frac{k_p+1}{6}} ωn=6kp+1
很明显,将 k p k_p kp代入,我们可以得到阻尼比是小于1的,也就是欠阻尼。而欠阻尼系统的响应是有超调的,而且随着阻尼比越小,超调越大,上升时间越短。所以 k p k_p kp越大,阻尼比越小,所以不能一直提高 k p k_p kp的值。

我们也可以从上面那个根轨迹图来判断,首先,我们知道根轨迹是开环系统某一参数从零变到无穷时,闭环系统特征方程式的根在s平面上变化的轨迹
在这里插入图片描述
从图中看出,临界阻尼和过阻尼都是在实轴上,而欠阻尼却变成了共轭复根,根据根轨迹图,当 k p k_p kp(或开环增益)继续增大,那么根轨迹就会往共轭复根处跑,也就会成为欠阻尼了,而且越远离实轴,阻尼比也就越小,超调也会越大。

积分控制

从图中可以看出仅凭 k p k_p kp是不能将曲线调到预定位置,而是和期望值始终有一个稳定的偏差,所以我们需要加上积分系数 k i k_i ki,用来进行无差调节,如下图所示
在这里插入图片描述
从图中可以看出,随着 k i k_i ki增大,曲线响应速度加快,产生的超调增大。
加入积分控制后,消除了系统稳态误差,但随着 T i {T_i} Ti值的增大,达到稳态的过渡时间也逐渐加长。

积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即使误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大,使稳态误差进一步减小,直到等于零,但会使系统稳定性降低,过渡时间也加长。

我们可以看到公式中的 K p T i \frac{K_p}{T_i} TiKp,积分作用的强弱,取决于积分时间常数 T i T_i Ti T i T_i Ti越大积分作用越弱,反之则越强。又可以从图中看出, k p k_p kp同样的情况下,由式子 k i = K p T i k_i=\frac{K_p}{T_i} ki=TiKp k i k_i ki越大,说明 T i {T_i} Ti越小,积分作用越强,超调越大。所以增大积分时间 T i {T_i} Ti有利于减小超调,减小振荡,使系统的稳定性增加,但是系统静差消除时间变长( k i = 0.1 k_i=0.1 ki=0.1)。图中的 k i = 1.2 k_i=1.2 ki=1.2减少了积分时间,发生了超调,系统出现振荡而且静差消除时间变长。
(补充:单独用积分控制可以提高系统的型别,有利于系统稳态性能的提高,但积分控制使系统增加了一个位于原点的开环极点,使信号产生90°的相角滞后,减少了系统的相角裕度,于系统的稳定性不利。)

微分控制

在调节微分环节的时候,如下图
在这里插入图片描述

仿真图如下

在这里插入图片描述

微分环节的作用能反映偏差信号的变化趋势(变化速率),并能在偏差信号的值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减小调节时间。

可以从图中看出,随着 k d k_d kd增大,曲线调节时间变快,产生的超调减小。

微分环节有助于系统减小超调,克服振荡,减小调节时间,从而改善了系统的动态性能,但微分时间常数过大,会使系统出现不稳定。微分控制作用一个很大的缺陷是容易引入高频噪声,所以在干扰信号比较严重的流量控制系统中不宜引入微分控制作用,或者说使得系统的固有频率增大[9],固有频率增大会越接近高频噪声的频率,使得整个系统产生共振,而共振会导致机械系统损坏。

参考[3]@李崇的回答,从根轨迹的角度来说,D环节相当于引入了新的零点 ( k p + k d ⋅ s ) G k ( s ) (k_p+k_d \cdot s)Gk(s) (kp+kds)Gk(s),使得系统的极点向左半平面移动,使得稳定裕度更大。有些自身不稳定的系统,只靠PI是不能够变稳定的,需要新的零点把闭环特征根给吸引到左半平面来。
有一个系统开环传函 G k = 1 s 2 Gk=\frac{1}{s^2} Gk=s21根轨迹的仿真图如下
在这里插入图片描述
可以看出根轨迹在虚轴上,可以知道拥有在虚轴上的特征根的闭环系统响应是等幅震荡的。而我们通常以开环增益 k k k作为某一参数,也就是说无论开环增益 k k k如何变化,根轨迹始终都在虚轴上,系统响应都是等幅震荡。
我们将零点加上去 G k ( s ) = s + 1 s 2 Gk(s)=\frac{s+1}{s^2} Gk(s)=s2s+1根轨迹的仿真图如下
在这里插入图片描述
从图中可以看出,加入零点后,系统的特征根除了原点外全都往左半平面跑了,而且随着开环增益的增大,系统变得稳定,系统的特征根越远离虚轴。

我们知道伯德图是系统频率响应的一种图示方法,利用伯德图可以看出在不同频率下,系统增益的大小及相位,也可以看出增益大小及相位随频率变化的趋势,还可以对系统稳定性进行判断。 G k ( s ) = s + 1 Gk(s)={s+1} Gk(s)=s+1bode图仿真图如下
在这里插入图片描述
可以看出,随着频率增大,系统增益也随之增大,幅值变大,把小的尖刺给放大,这也就是微分会使高频噪声放大。参照[3],输入信号 s i n ( 10 t ) + 0.01 s i n ( 100 t ) sin(10t)+0.01sin(100t) sin(10t)+0.01sin(100t)具体看图
在这里插入图片描述
算是低频的微分图
在这里插入图片描述

高频的微分图
在这里插入图片描述

两个函数叠加
在这里插入图片描述
从上图看出,随着频率增大,微分后出现尖刺。
可以来个更明显的
在这里插入图片描述
从图中就可以看出,当高频噪声的幅值提高十倍的时候,随着频率的增大,微分后出现尖刺更多也更密集。
如此看来,当系统中拥有高频噪声时,使用微分环节会造成系统响应含有更多的尖刺,而不是平滑的图像,造成系统震荡。

(补充:在PID控制中,加入微分项相当于加入了阻尼,使得阻尼比变大,这样可以使震荡快速衰减,变得稳定。)

PID控制

在这里插入图片描述
PID控制通过积分作用消除误差,而微分控制可缩小超调量、减少调节时间,是综合了PI控制和PD控制长处并去除其短处的控制。

位置式和增量式

数字 PID 控制算法因时间离散化不同,通常分为位置式 PID 控制算法和增量式 PID 控制算法,具体文章可参考[7]
有几点需要记住:
① 最大超调量是响应曲线的最大峰值与稳态值的差,是评估系统稳定性的一个重要指标;上升时间是指响应曲线从原始工作状态出发,第一次到达输出稳态值所需的时间,是评估系统快速性的一个重要指标;静差是被控量的稳定值与给定值之差,一般用于衡量系统的准确性。
② 关于积分积累误差,可以想象成用高度1米水缸接水。比如期望是接满1米,水龙头开始放水,放到水缸80厘米,然后把水龙头关掉,水缸里的水高度和期望相差20厘米,即使没有了输入,误差也会保持不变,这就是积分作用,水缸本身就是个积分结构,能把水一直储存下来。而如果是直流电机,一旦没有了输入,那么误差就会变成期望减去零,因为它本身没有积分结构,这时就需要积分作用来在它误差为零时,保持它的转速稳定在期望值。更多详细可以参考文章[5][6]
③饱和是执行机构的一个特性,定义为:一开始因变量会随着自变量的增大而增大,而当自变量到达某个特定范围时,因变量将不再随着自变量的增大而有明显的改变,而是不断逼近或停止在某个最大值附近。我的理解是开门只能开180°,但是你非要开360°,那肯定是不行的,因为门已经被墙卡住了。但是因为有积分环节,它会一直累积误差,输出360°,但是门却被墙卡住了,转不到360°。然后你又想关门,这时系统会从360°开始减小角度,实际门却没有动,等到输出小于180°的时候门才会有动作,你会觉得这个反应不是很灵敏,这是因为有一段时间是等待系统从积分饱和出来,减到180°,门才会有动作。

参考文章
[1] 深入浅出PID控制算法
[2] PID
[3] PID 的微分环节主要作用是什么
[4] PID中Kp,Ki,Kd跟Kp,Ti,Ti之间的关系式
[5] pid控制器输出的量到底是什么
[6] 如何通俗地解释 PID 参数整定
[7] 位置式与增量式PID
[8] 积分饱和
[9]九、控制与pid
[10]关于固有频率及阻尼

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值