西门子S7-200 SMART PLC-PID指令(下)

电子说

1.3w人已加入

描述

二、PID指令介绍

1.指令说明

PID指令说明如表6-76所示。

表6-76PID指令说明

PID控制

2.PID控制回路参数表

PID运算由P(比例)、I(积分)和D(微分)三项运算组成,PID运算公式如下:

Mn=[KcX(SPn-PVn)]+[KcX(Ts/Ti)X(SPn-PVn)+Mx]+[KcX(Td/Ts*)X(SPn-PVn)]

在上式中,Mn为PID运算输出值,[Kc(SPn-PVn)]为比例运算项,[KcX(Td/Ts)X(SP,-PV)+M]为积分运算项,[KcX(T/T)X(SPn-PVn)]为微分运算项。

要进行PID运算,须先在PID控制回路参数表中设置运算公式中的变量值。PID控制回路参数表见表6-77。在表中,过程变量(PVn)相当于图6-59中的反馈信号,设定值(SPn)

相当于图6-59中的给定信号,输出值(Mn)为PID运算结果值,相当于图 6-59中的控制

信号。如果将过程变量(PVn)值存放在VD200双字单元,那么设定值(SPn)、输出值(Mn)

则要分别存放在VD204、VD208单元。

表6-77PID控制回路参数表

PID控制

3.PID运算项的选择

PID运算由P(比例)、|(积分)和D(微分)三项运算组成,可以根据需要选择其中的一项或两项运算。

①如果不需要积分运算,应在参数表中将积分时间(Ti)设为无限大,这样(Ts/Ti)

值接近0,虽然没有积分运算,但由于有上一次的积分值M,积分项的值也不为0.

②如果不需要微分运算,应将微分时间(Td)设为0.0。

③如果不需要比例运算,但需要积分或微分回路,可以把增益(Kc)设为0.0,系统

会在计算积分项和微分项时,把增益(Kc)当作1.0看待。

4.PID输入量的转换与标准化

PID控制电路有两个输入量:设定值和过程变量。设定值通常是人为设定的参照值,

如设置的水压值;过程变量值来自受控对象,如压力传感器检测到的水压值。由于现实中

的设定值和过程变量值的大小、范围和工程单位可能不一样,在执行PID指令进行PID运算前,必须先把输入量转换成标准的浮点型数值。

PID输入量的转换与标准化过程如下:

①将输入量从16位整数值转换成32位实数(浮点数)。该转换程序如图6-60

所示。

PID控制

图6-6016位整数值转换成32位实数

②将实数转换成0.0~1.0之间的标准化数值。转换表达式为

输入量的标准化值=输入量的实数值1跨度+偏移量

跨度值通常取32000(针对0~32000单极性数值)或64000(针对-32000~+32000

双极性数值);偏移量取0.0(单极性数值)或0.5(双极性数值)。该转换程序如图6-61

PID控制

图6-61

5. PID输出量的转换

在PID运算前,需要将实际输入量转换成0.0~1.0之间的标准值,然后进行PID运算,PID运算后得到的输出量也是0.0~1.0之间的标准值,这样的数值无法直接驱动PID的控制对象,因此需要将PID运算输出的0.0~1.0标准值按比例转换成16位整数,再送到模拟量输出单元,通过模拟量输出端子输出。

PID输出量的转换表达式为PID输出量整数值=(PID运算输出量标准值-偏移量)x跨度

PID输出量的转换程序如图6-62所示。

PID控制                                

图6-62

 PID指令应用举例

下面以图6-59所示的恒压供水控制为例来说明PID 指令的应用。

(1)确定PID控制回路参数表的内容

在编写PID控制程序前,首先要确定PID控制回路参数表的内容。参数表中的给定值SPn增益值Kc、采样时间Ts、积分时间下、微分时间Ti。需要在PID指令执行前输入,来自压力传感器的过程变量值需要在PID指令执行前转换成标准化数值并存入过程变量单元。参数表中的变量值要根据具体情况来确定,还要在实际控制时反复调试以

达到最佳控制效果。本例中的PID控制回路参数表的值见表6-78,因为希望水箱水压维持在满水压的70%,故将给定值SPn设为0.7,不需要微分运算,将微分时间设为0。

(2) PID控制程序

恒压供水PID控制程序如图6-63所示。

表6-78PID控制回路参数表的值

PID控制PID控制

图6-63恒压供水PID控制程序

在程序中,网络1用于设置PID控制回路的参数表,包括设置给定值SPn增益值Kc采样时间Ts、积分时间Ti和微分时间Td:网络2用于将模拟量输入AIW0单元中的整数值转换成0.0~1.0之间的标准化数值,再作为过程变量值PVn,存入参数表的VD100单元,AIW0单元中的整数值由压力传感器产生的模拟信号经PLC 的A/D(模/数)转换模块转换而来;网络3用于启动系统从参数表取变量值进行PID运算,运算输出值M,存入参数表的VD108单元:网络4用于将VD108中的标准化输出值(0.0~1.0)按比例转换成相应的整数值(0~32000),再存入模拟量输出 AQW0单元,AQW0单元的整数经D/A(数/模)转换模块转换成模拟信号,去控制变频器工作频率,进而控制水泵电动机的转速来调节水压。







审核编辑:刘清

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分