1.前言
PID在工业界随处可见。其的原理是什么?
2.数学物理代表意义
PID全名为比例积分微分控制器。顾名思义,表明其由三个控制器组成。
一是P,其代表比例(Proportional);
二是I,其代表积分(Integral);
三是D,其代表微分(Derivative);
通常,都是用温度差(Tset-Tnow)来对PID的原理进行解释。
PID的计算公式为:
在该公式中,第一项为比例,第二项为积分,第三项为微分;
Kp为比例增益;Ki为积分增益;Kd为微分增益。这三个增益均是常数,且会根据情况进行调整。
e为误差,等于设定值减去目前值;
t为目前时间;
为积分常数
以上这几个变量影响PID的数值,重点是误差e;
3.举例说明
此处以锅炉烧水为研究背景,这里需要将锅炉中的水烧到指定的温度。
比例: 考虑当前误差,意思是如果温度太低就给全力加热,随着温度上升等比例的减小加热力度
积分:考虑过去误差,意思是看之前的温度变化,来调整开关温度的时间点
微分:考虑将来误差,意思是预测未来的温度变化,来达到启动加热的的变化;
这里将三个量等价于位移,速度,加速度 。
下图是只以比例控制方式来对锅炉中的水温进行控制时水温与时间的关系:
由上图可知比例公式就是单纯的温度差。
积分:考虑过去误差
这里举例热量为例子来加强理解:
在式中,H为热量,m为水的质量,s为比热容,为温度差。
将温度T比作速度V,热量H比作位移X
下图为速度与时间关系图,这里可以等价于温度与时间的关系
图中的深蓝色面积为位移(等价于热量)。
相当于算出质量,算出比热,算出从初始温度到设定温度所需要多少热量。但是余温会提供多余的热量,导致温度过高,如图:
这时候用温度差去计算,会得到负值,既加热器提供的余温所产生的面积会被当负值去扣掉原本所需热量的面积。如图:
这样就达到了提前停止的目的,如图:
所以积分的计算公式为温度差乘以取样时间,且每次计算都是从0到t的加总。既每次都是取当前面积大小,
微分:是考虑将来误差,其的计算公式为目前温差减去上次取样的温度差除以时间。
t就是取样的时间差,可以为很多种数值:
:
那怎么对将来误差做判断呢?
这里本质是从斜率的角度考虑,考虑单个因子的物理意义,这里单个因子就是温度差,则表明斜率代表的是温度差的变化快慢,当斜率偏大,表明此时的温度差变化偏大,未来的温度变化会变得凶猛。
斜率偏大:(表明此刻取样与上一时刻的取样变化很大)
当斜率过小:
当斜率趋近于0:
再次强调:当斜率等于0,表明温度趋于稳定。因为每次都是取y轴的本次温度差与上一次的温度差。