技术信息

PID控制的原理

1. 引言

 在”什么是PID控制“的页面中,我们以驾驶汽车为例,介绍了PID控制算法是基于何种思路运作的。作为下一步,我们将结合数学公式,解释PID控制在实际中是如何运作的,以及各部分的运作原理。

 另外,为了便于说明,本页中插入了一些PID模拟的结果图。但您可以点击靠近图形的[打开PID模拟器]链接,运行控制模拟器。我们建议您自行更改设定值和PID参数,这将有助于加深对PID控制的理解。


2. PID控制与温度控制

 本节将解释搭载PID控制算法的温度控制器实际上是如何运作的。控制是指”为达到某一目的,对被控对象施加所需的操作”。也就是说,对于温度控制来说,就是”进行操作使温度目标值与测量点温度相等”(图1)。图中的虚线部分对应温度控制器的功能块线框图,其中控制部分C对应具有PID控制算法的部分。

图1:温度控制的概念图


2.1. PID控制的基本公式

 PID控制的基本公式由与偏差e(=SV-PV)成比例的比例动作(Proportional action:P动作)、与偏差e的积分成比例的积分动作(Integral action:I动作)、与偏差e的微分成比例的微分动作(Derivative action:D动作)之和表示(公式(1))。

 可设置的基本参数有3个:比例增益(Kp)、积分时间(Ti)和微分时间(Td)。但是,温度控制器通常不直接指定比例增益(Kp),而是指定比例增益的倒数比例带Pb=100/Kp℃。公式(1)的右边第一项依次表示比例项(P动作输出)、积分项(I动作输出)和微分项(D动作输出)。


2.2. PID控制算法的含义

 人们在判断事物时,会考虑”过去””现在””未来”这三个要素,然后得出结论。对于PID控制算法,也可以解释为”过去对应I动作””现在对应P动作””未来对应D动作”,即根据这三个要素决定操作量。


2.3. P动作和偏移

2.3.1. P动作

P动作由公式(2)表示,输出与当前偏差e成正比。

 从公式可以看出,比例增益Kp越大,在偏差e相同的情况下,P动作输出也就越大。但实际上存在物理限制,操作量MV只能在0~100[%]等有限范围内变化。例如,假设比例带Pb=30[℃]、目标值SV=100[℃]、测量值PV=40[℃],则:

理论上操作量MV应为200[%],但实际上上限为100%。

P动作运作简单易懂,但仅依靠P动作,即便经过足够长时间,也会残留偏移(静态偏差)(图2(a))。提高比例增益Kp可以减小偏差,但PV的响应会更加振荡,进一步提高Kp可能导致持续振荡。如果设置Kp以避免振荡,那就必定会残留偏移。这就是P动作的局限性。

图2(a):P动作温度控制示例(比例带:30[℃]、SV:100[℃])


打开PID模拟器


2.3.2. 偏移

图2(b):P动作输出与负载特性

 

 当偏差e为0时,P动作输出为0[%],这就是P动作必定会产生偏移的原因。例如,图2(b)所示负载特性(※1)的被控对象,为维持PV=SV=100[℃]的稳定状态,需要MV(操作量)为50[%]。

① 初始时,假设PV为周围温度(25[℃]),则P动作输出=100%。
② 在比例带内,P动作输出与偏差e成正比。P动作输出随着PV接近SV而降低,远离SV而升高。
③ 当SV(100[℃])≤PV时,P动作输出为0%。从图2(b)的负载特性可知,PV会逐渐下降至周围温度。
④ 最终PV将在P动作输出与负载特性平衡点(图2(b)交点)稳定。这时残留的偏移称为偏差。

要消除偏移,可以手动将重设值50[%]加到公式(2)中(图2(c)),或添加I动作。
(※1)此处将被控对象在热平衡状态下的温度[℃]与当时的负载通电率[%]的关系定义为负载特性。

图2(c):P动作输出与手动重设(50[%])


2.4. PI动作与积分时间

将I动作输出加到公式(2)中,得到PI动作的公式(3)。

I动作是过去偏差e的积分值,因此当(e>0)时将逐渐增大,当(e<0)时将逐渐减小。假设I动作输出初值为0、偏差保持不变,则在时刻t1处的P动作输出和I动作输出可表示为:


 比较这两个公式,可以看出当t1=Ti时,P动作输出=I动作输出。由此可知,”从输入一个固定偏差开始,到P动作输出=I动作输出,这个时间就是积分时间Ti”。与P动作根据偏差输出固定值不同,I动作在偏差e不为零的情况下会持续增大(或减小)输出。因此,虽然收敛速度因积分时间Ti而异,但最终偏移会变为0。需要注意的是,即使偏差e为0,之前的积分值也会保持不变。I动作输出实际上是自动修正了手动重设值,起到了类似的效果。〔打开PID模拟器

图3:PI动作的输出

2.5. PD动作与微分时间

在公式(2)中加入与偏差e的微分成比例的D动作输出,得到PD动作的公式(5)。

 D动作输出与偏差e的变化速度成正比,能抑制未来偏差的变化速度。D动作产生的力与变化速度方向相反,因此可以类比为阻尼器。阻尼器也称振动减振器,是构成汽车、摩托车等悬架的部件之一。如果没有阻尼器,行驶时车身将无法抑制振动,乘坐感觉就会很差。D动作也具有同样的减振作用。例如,当PV=SV稳定时,如果由于外部扰动使温度急剧下降(de/dt>0),则D动作会输出正方向的值,抑制外部扰动引起的变化。而在升温时(de/dt<0),D动作会输出负方向的值,抑制过度升温(超调)。如图4所示,当偏差以恒定速度增加时,D动作输出(D输出)保持不变。当偏差保持不变(变化速度为零)时,D动作输出为零,因此无法消除偏移。

 图4:PD動作の出力


 微分时间Td的定义为:”当加入一个斜率(偏差变化速度)恒定的偏差时,从输入该偏差开始,到(P动作输出)=(D动作输出)时的时间”。〔打开PID模拟器

从图中可以看出,D动作输出的确是朝着减小振荡的方向输出的。另外,在模拟器中,即使偏差保持不变,D动作输出的值也不一定保持恒定。这是因为公式(5)的运算方式通常被称为”完全微分”,直接使用并不实用。模拟器中是先用一阶滞后滤波器对偏差e进行处理,再进行微分运算,这种方式被称为”不完全微分”。

3. 结语

本文使用数学公式和模拟器,解释了PID控制各部分的基本运作原理。要实现实用的控制,除了基本运作,还需要各种改进,希望本技术解说页面能为您提供一些帮助。