PID控制算法控制算法.docx
《PID控制算法控制算法.docx》由会员分享,可在线阅读,更多相关《PID控制算法控制算法.docx(19页珍藏版)》请在冰豆网上搜索。
![PID控制算法控制算法.docx](https://file1.bdocx.com/fileroot1/2022-10/10/414eafd4-6a69-4807-bf2d-762664552d5a/414eafd4-6a69-4807-bf2d-762664552d5a1.gif)
PID控制算法控制算法
第五章 PID 控制算法控制算法
5.1 PID 控制原理与程序流程
5.1.1 过程控制的基本概念
过程控制――对生产过程的某一或某些物理参数进行的自动控制。
一、模拟控制系统
图 5-1-1 基本模拟反馈控制回路
被控量的值由传感器或变送器来检测,这个值与给定值进行比较,得到偏差,模拟调
节器依一定控制规律使操作变量变化,以使偏差趋近于零,其输出通过执行器作用于过程。
控制规律用对应的模拟硬件来实现,控制规律的修改需要更换模拟硬件。
二、微机过程控制系统
图 5-1-2 微机过程控制系统基本框图
以微型计算机作为控制器。
控制规律的实现,是通过软件来完成的。
改变控制规律,只
要改变相应的程序即可。
三、数字控制系统 DDC
图 5-1-3DDC 系统构成框图
DDC(Direct Digital Congtrol)系统是计算机用于过程控制的最典型的一种系统。
微型计算
机通过过程输入通道对一个或多个物理量进行检测,并根据确定的控制规律(算法)进行计算,
通过输出通道直接去控制执行机构,使各被控量达到预定的要求。
由于计算机的决策直接作
用于过程,故称为直接数字控制。
DDC 系统也是计算机在工业应用中最普遍的一种形式。
1
模拟形式
离散化形式
e(t) = r(t) - c(t)
e(n) = r(n) - c(n)
de(t)
dT
e(n) - e(n - 1)
T
t
⎰0 e(t)dt
n n
∑ e(i)T = T ∑ e(i)
i=0 i=0
5.1.2 模拟 PID 调节器
一、模拟 PID 控制系统组成
图 5-1-4 模拟 PID 控制系统原理框图
二、模拟 PID 调节器的微分方程和传输函数
PID 调节器是一种线性调节器,它将给定值 r(t)与实际输出值 c(t)的偏差的比例(P)、
积分(I)、微分(D)通过线性组合构成控制量,对控制对象进行控制。
1、PID 调节器的微分方程
⎡
⎣
1
TI
t
0
D
de(t) ⎤
⎥
式中
e(t) = r(t) - c(t)
2、PID 调节器的传输函数
D(S ) =
U (S )
E(S )
⎡
⎣
1
TI S
⎤
⎦
三、PID 调节器各校正环节的作用
1、比例环节:
即时成比例地反应控制系统的偏差信号 e(t),偏差一旦产生,调节
器立即产生控制作用以减小偏差。
2、积分环节:
主要用于消除静差,提高系统的无差度。
积分作用的强弱取决于积分
时间常数 TI,TI 越大,积分作用越弱,反之则越强。
3、微分环节:
能反应偏差信号的变化趋势(变化速率),并能在偏差信号的值变得太
大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减
小调节时间。
5.1.3 数字 PID 控制器
一、模拟 PID 控制规律的离散化
二、数字 PID 控制器的差分方程
2
⎧
⎩
TI ⎭
T n T ⎫
式中
= uP (n) + uI (n) + uD (n) + u0
uP (n) = K P e(n)
称为比例项
∑ e(i)
uI (n) = K P
T
TI
n
i=0
称为积分项
uD (n) = K P
TD
T
[e(n) - e(n - 1)] 称为微分项
三、常用的控制方式
1、P 控制
2、PI 控制
3、PD 控制
4、PID 控制
u(n) = uP (n) + u0
u(n) = uP (n) + uI (n) + u0
u(n) = uP (n) + uD (n) + u0
u(n) = uP (n) + uI (n) + uD (n) + u0
四、PID 算法的两种类型
1、位置型控制――例如图 5-1-5 调节阀控制
⎧
⎩
T
TI
n
i=0
TD
T
⎫
⎭
2、增量型控制――例如图 5-1-6 步进电机控制
∆u(n) = u(n) - u(n - 1)
= K P [e(n) - e(n - 1)]+ K P
T
TI
T
T
【例 5—1】设有一温度控制系统,温度测量范围是 0~600℃,温度采用 PID 控制,控
制指标为 450±2℃。
已知比例系数 K P = 4 ,积分时间 TI = 60s ,微分时间 TD = 5s ,采样
周期 T = 5s 。
当测量值 c(n) = 448 , c(n - 1) = 449 , c(n - 2) = 442 时,计算增量输出
3
∆u(n) 。
若 u(n - 1) = 1860 ,计算第 n 次阀位输出 u(n) 。
解:
将题中给出的参数代入有关公式计算得
K I = K P
T
TI
= 4 ⨯
5
60
=
1
3
T
T
15
5
= 12 ,
∆u(n) = 4 ⨯ (2 - 1) +⨯ 2 + 12 ⨯ [2 - 2 ⨯1 + (-2)]≈ -19
由题知,给定值 r = 450 ,将题中给出的测量值代入公式(5-1-4)计算得
e(n) = r - c(n) = 450 - 448 = 2
e(n - 1) = r - c(n - 1) = 450 - 449 = 1
e(n - 2) = r - c(n - 2) = 450 - 452 = -2
代入公式(5-1-16)计算得
1
3
代入公式(5-1-19)计算得
u(n) = u(n - 1) + ∆u(n) = 1860 + (-19) ≈ 1841
5.1.4 PID 算法的程序流程
一、增量型 PID 算法的程序流程
1、 增量型 PID 算法的算式
∆u(n) = a0e(n) + a1e(n - 1) + a2e(n - 2)
式中 a0 = K P (1 +
T
TI
T
T
2TD
T
T
T
2、增量型 PID 算法的程序流程――图 5-1-7(程序清单见教材)
4
二、位置型 PID 算法的程序流程
1、位置型的递推形式
u(n) = u(n - 1) + ∆u(n) = u(n - 1) + a0e(n) + a1e(n - 1) + a2e(n - 2)
2、位置型 PID 算法的程序流程――图 5-1-9
只需在增量型 PID 算法的程序流程基础上增加一次加运算 Δu(n)+u(n-1)=u(n)
和
更新 u(n-1)即可。
三、对控制量的限制
1、控制算法总是受到一定运算字长的限制
2、执行机构的实际位置不允许超过上(或下)极限
⎧umin
⎪
⎪umax
u(n) ≤ umin
umin < u(n) < umax
u(n) > umax
5.2标准 PID 算法的改进
5.2.1 微分项的改进
一、不完全微分型 PID 控制算法
1、不完全微分型 PID 算法传递函数
⎛
⎝
⎛ ⎫
⎪
⎝ K D ⎭
ç S + 1⎪
图 5-2-1 不完全微分型 PID 算法传递函数框图
2、完全微分和不完全微分作用的区别
图 5-2-2 完全微分和不完全微分作用的区别
3、不完全微分型 PID 算法的差分方程
5
uD (n) = uD (n - 1) +
TD
+ T
K D
[e(n) - e(n - 1)]+
T
+ T
K D
[e(n) - uD (n - 1)]
∆u(n) = K P
T
TI
uD (n) + K P [uD (n) - uD (n - 1)]
4、不完全微分型 PID 算法的程序流程――图 5-2-3
二、微分先行和输入滤波
1、 微分先行
微分先行是把对偏差的微分改为对被控量的微分,这样,在给定值变化时,不会
产生输出的大幅度变化。
而且由于被控量一般不会突变,即使给定值已发生改变,
被控量也是缓慢变化的,从而不致引起微分项的突变。
微分项的输出增量为
∆uD (n) =
K PTD
T
[∆c(n) - ∆c(n - 1)]
2、 输入滤波
输入滤波就是在计算微分项时,不是直接应用当前时刻的误差 e(n),而是采用
滤
波值 e(n),即用过去和当前四个采样时刻的误差的平均值,再通过加权求和形
式
近似构成微分项
uD (n) =
K PTD
6T
[e(n) + 3e(n - 1) - 3e(n - 2) - e(n - 3)]
∆uD (n) =
K PTD
6T
[e(n) + 2e(n - 1) - 6e(n - 2) + 2e(n - 3) + e(n - 4)]
5.2.2 积分项的改进
一、抗积分饱和
积分作用虽能消除控制系统的静差,但它也有一个副作用,即会引起积分饱和。
在偏差
始终存在的情况下,造成积分过量。
当偏差方向改变后,需经过一段时间后,输出 u(n)才
脱离饱和区。
这样就造成调节滞后,使系统出现明显的超调,恶化调节品质。
这种由积分项
引起的过积分作用称为积分饱和现象。
克服积分饱和的方法:
1、积分限幅法
积分限幅法的基本思想是当积分项输出达到输出限幅值时,即停止积分项的计算,这
时积分项的输出取上一时刻的积分值。
其算法流程如图 5-2-4 所示。
2、积分分离法
积分分离法的基本思想是在偏差大时不进行积分,仅当偏差的绝对值小于一预定的门
限值 ε 时才进行积分累积。
这样既防止了偏差大时有过大的控制量,也避免了过积分现象。
其算法流程如图 5-2-5。
6
图 5-2-4 积分限幅法程序流程5-2-5 积分分离法程序流程
3、变速积分法
变速积分法的基本思想是在偏差较大时积分慢一些,而在偏差较小时积分快一些,以
尽快消除静差。
即用 e'(n) 代替积分项中的 e(n)
e'(n) = f ( e(n) )e(n)
⎧ A - e(n)
⎪
A
⎪0
式中 A 为一预定的偏差限。
二、消除积分不灵敏区
1、积分不灵敏区产生的原因
e(n) < A
e(n) > A
∆uI (n) = K P
T
TI
e(n)
当计算机的运行字长较短,采样周期 T 也短,而积分时间 TI 又较长时, ∆uI (n) )容
易出现小于字长的精度而丢数,此积分作用消失,这就称为积分不灵敏区。
【例 5—2】某温度控制系统的温度量程为 0 至 1275℃,A/D 转换为 8 位,并采用 8 位字
长定点运算。
已知 K P = 1, T = 1s , TI = 10s ,试计算,当温差达到多少℃时,才会有积
分作用?
解:
因为当 ∆uI (n) < 1 时计算机就作为“零”将此数丢掉,控制器就没有积分作用。
7
将 K P = 1, T = 1s , TI = 10s 代入公式计算得
∆uI (n) = K P
T
TI
e(n) = 1⨯
1
10
⨯ e(n) = e(n)
而 0 至 1275℃对应的 A/D 转换数据为 0~255,温差 ∆T 对应的偏差数字为
e(n) =
255
1275
⨯ ∆T
令上式大于 1,解得 ∆T > 50 C 。
可见,只有当温差大于 50℃时,才会有
S I = ∑ ∆uI (i)
o
∆uI (n) = e(n) > 1,控