理论教育 PID回路指令输入输出变量数值转换优化

PID回路指令输入输出变量数值转换优化

时间:2023-07-02 理论教育 版权反馈
【摘要】:过程变量与PID回路输出有关,可以衡量输出对控制系统作用的大小。在PLC进行PID控制之前,必须将其转换成标准化浮点表示法。3)对PID输出数据进行工程量转换。

PID回路指令输入输出变量数值转换优化

1.回路输入的转换和标准化

每个PID回路有两个输入量,分别为给定值(SP)和过程变量PV)。给定值通常是一个固定的值。过程变量与PID回路输出有关,可以衡量输出对控制系统作用的大小。

给定值和过程变量都是实际数值,其大小、范围和单位可能不同。在PLC进行PID控制之前,必须将其转换成标准化浮点表示法。步骤如下:

1)将实际数值从16位整数转换成32位浮点型实数

下面的指令序列提供了实现这种转换的方法。

978-7-111-47551-4-Chapter07-34.jpg

2)将实数转换成0.0至1.0之间的标准化数值。

下面的算式可以用于标准化给定值或过程变量值

RNorm=(RRaw/Span)+Offset (7-8)

式中 RNorm为标准化的实数值;RRaw为没有标准化的实数值或原值;Offset偏移量,单极性为0.0,双极性为0.5;Span为值域大小,可能的最大值减去可能的最小值,单一极性为32000(典型值),双极性为64000(典型值)。

下面的指令把双极性实数标准化为0.0~1.0之间的实数。

如将上述AC0中的双极数值(值域为64000)标准化,通常用在第一步转换之后用下面的指令序列完成。

978-7-111-47551-4-Chapter07-35.jpg

2.将PID回路输出转换为成比例的整数值

程序执行后,PID回路输出0.0和1.0之间的标准化实数值,必须转换成16位成比例的整数值,才能驱动模拟输出。

这一过程是给定值或过程变量标准化转换的逆过程,第一步是使用下面给出的公式,将回路输出转换成一个标定的实数值。

RScal=(Mn-OffsetSpan (7-9)

式中 RScal为回路输出的刻度实数值;Mn为回路输出的标准化实数值;Offset为偏移量,单极性为0.0,双极性为0.5;Span为值域大小,可能的最大值减去可能的最小值,单一极性为32000(典型值),双极性为64000(典型值)。

这一过程可以用下面的指令序列完成。

978-7-111-47551-4-Chapter07-36.jpg

下一步是把回路输出的刻度实数值转换成16位整数值,可通过下面的指令序列来完成。

978-7-111-47551-4-Chapter07-37.jpg

3.PID指令的使用步骤

1)建立PID回路表。(www.daowen.com)

2)对输入采样数据进行归一化处理。

3)对PID输出数据进行工程量转换。

4.应用示例

【例7-6】恒压供水水箱水位的控制。

(1)控制任务

某恒压供水水箱,通过变频器驱动的水泵供水,维持水位在满水位的70%。过程变量PVn为水箱的水位(由水位检测计提供),设定值为70%,PID输出控制变频器,即控制水箱注水调速电动机的转速。要求开机后,先手动控制电动机,水位上升到70%时,转换到PID自动调节。

(2)PID控制参数表

恒压供水PID控制参数表见表7-16。

(3)程序设计

1)I/O分配

手动/自动切换开关I0.0 模拟量输入AIW0

模拟量输出AQW0

2)程序结构控制程序由主程序、子程序和中断程序构成。主程序用来调用初始化子程序,子程序用来建立PID回路初始参数表和设置中断,由于是定时采样,所以采用定时中断(中断事件号为10),设置周期时间和采样时间相同(0.1s),并写入SMB34。中断程序用于执行PID运算,I0.0=1时,执行PID运算,本例标准化时采用单极性(取值范围32000)。

表7-16 恒压供水PID控制参数表

978-7-111-47551-4-Chapter07-38.jpg

程序梯形图:主程序如图7-14、子程序如图7-15、中断程序如图7-16所示。

978-7-111-47551-4-Chapter07-39.jpg

图7-14 水箱水位控制主程序

978-7-111-47551-4-Chapter07-40.jpg

图7-15 水箱水位控制子程序

978-7-111-47551-4-Chapter07-41.jpg

图7-16 水箱水位控制中断程序

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈