3359 web.archive.org/web/20060413081016/http://www.ht services.com/applications/process/PID2. htm
PV:process variable
SP:setpoint
差异:也称为错误,是PV和SP之间的区别。
目的:指定SP,使PV立即调整为SP并保持稳定。
绝对误差: SP - PV,即当前误差,对应比例单元
所有时间误差之和:即,当前和之前所有误差之和对应于积分单元
死区时间:指系统延迟,为烤箱指定温度。 烤箱达到指定温度需要时间。 对应于微分单元
比例单元(p )、积分单元(I )、微分单元(d )分别对应于当前误差、过去累计误差、未来误差。
比例单元中没有死区时间比例系数为p,反馈环路的控制器中没有死区时间,开始时没有反馈,因此PV=0
spiterationpverroroutputx 10xy2=p * x x2y2 yxdzty3=p * (yxdzt ) x3y3x-y4=p * (x-y3 )是第三次使用SP=PV,即x=p* ) x
如果x不为0,则不能将输出设置为目标值。 如果都是0,本来就不需要控制。
如图所示,没有死区时间的只有比例控制,白线是SP,无论比例如何都不会达到目标值SP。
在有死区时间情况下,假设每个反馈间隔为1s,死区时间为1s
spiterationpverroroutputx 10xy1=p * xx 20xy2=p * xx 3y 1x-y1
y3=p*(x-y1 ) x4y2 yxdzt
y4=p*(yxdzt ) x5y3 x-y3
y5=p*(x-y3 ) x6y4 x-y4
Y6=P*(X-Y4 )每次控制都必须有1s反应,此时又有新的控制,要重复两次。
无论是否存在死区时间,仅靠一个比例控制都无法将输出作为目标值。
积分单元比例单元最终将PV调整为偏离SP的直线,积分单元可以消除这种偏离
积分系数为I
无死区时间spiterationpverroroutputintegrealx 10xy2=p * xe1=I * y2 x2y2 yxdzty3=p * (yxdzt ) e1e2=I*y3e1x3y3x-y3y4=p*
可以看出,有积分单元可以消除偏差。
但是,如果只有积分单元,没有比例单元,会怎么样? 也就是说比率为1时会怎么样?
可以看出比例越大,往返变动越大,逐渐稳定。
死区时间spiterationpverroroutputintegrealx 10xy1=p * xe1=I * y1x 20xy2=p * xe1e2=e1i * y2x 3y1x-y1
y3=p*(x-y1 ) e2e3=e2 I*y3x4y2 yxdzt
y4=p*(yxdzt ) e3e4=e3 I*y4x5y3 x-y3
y5=p*(x-y3 ) e4e5=e4 I*y5x6y4 x-y4
什么是Y6=P*(X-Y4 ) e5e6=e5 I*y6微分单元,其实是死区时间,是阻尼。
PID控制需要事先确定3个系数,以使控制达到最佳。 请先从小数开始试试。 否则,会发生以下情况。
可知在系数P=0.4、I=1.4、D=3时控制发散。
要进一步理解公式,第二种是标准格式
PID控制描述了误差与输出的关系
求PID的传递函数
y(t )=h ) t ) [g(t ) ) y ) ],y是输出,x是输入,*是卷积
h(s )=y(s )/x (s ) h是系统传递函数
g(s )=x(s )/(y ) s )-x ) ) g是PID传递函数