理论教育 正反作用回路的作用机理分析

正反作用回路的作用机理分析

时间:2023-06-27 理论教育 版权反馈
【摘要】:如果增益为正,那么该回路为正作用回路。如果增益为负,那么是反作用回路。用户可以在执行PID指令以前修改回路表中积分项前值。在实际运用中,这样做的目的是找到由于积分项前值引起的问题。如果需要其他处理,如报警检查或回路变量的特殊计算器,则这些处理必须使用S7-200支持的基本指令来实现。PID指令不检查回路表中的值是否在范围之内,所以必须小心操作以保证过程变量和设定值不超界。

正反作用回路的作用机理分析

如果增益为正,那么该回路为正作用回路。如果增益为负,那么是反作用回路(对于增益值为0.0的I或ID控制,如果指定积分时间、微分时间为正,就是正作用回路;如果指定为负值,就是反作用回路)。

1.变量和范围

过程变量和给定值是 PID运算的输入值,因此,回路表中的这些变量只能被 PID指令读而不能被改写。

输出变量是由 PID运算产生的,所以在每一次 PID运算完成之后,需更新回路表中的输出值,输出值被限定在0.0~1.0。当PID指令从手动方式转变到自动方式时,回路表中的输出值可以用来初始化输出值。

如果使用积分控制,积分项前值要根据PID运算结果更新。这个更新了的值用作下一次PID运算的输入,当输出值超过范围(大于1.0或小于0.0),那么积分项前值必须根据下列公式进行调整:

式中 MX——经过调整了的积分和(积分项前值);

MPn——第n采样时刻的比例项值;

MDn——第n采样时刻的微分项值;

Mn——第n采样时刻的输出值。

这样调整积分值前,一旦输出回到范围后,可以提高系统的响应性能。而且积分项前值也要限制在0.0~0.1,然后在每次PID运算结束之后,把积分项前值写入回路表,以备在下次PID运算中使用。

用户可以在执行PID指令以前修改回路表中积分项前值。在实际运用中,这样做的目的是找到由于积分项前值引起的问题。手工调整积分项前值时,必须小心谨慎,还应保证写入的值在0.0~1.0。

回路表中的给定值与过程变量的差值(e)是用于PID运算中的差分运算,用户最好不要去修改此值。

2.控制方式

S7-200的PID回路没有设置控制方式,只要PID块有效,就可以执行PID运算。在这种意义上说,PID 运算存在一种 “自动”运行方式。当PID运算不被执行时称为“手动”模式。

同计数器指令相似,PID指令有一个使能位。当该使能位检测到一个信号的正跳变(从0到1),PID指令执行一系列的动作,使PID指令从手动方式无扰动地切换到自动方式。为了达到无扰动切换,在转变到自动控制前必须用手动方式把当前输出值填入回路表中的Mn栏。PID指令对回路表中的值进行下列动作,以保证当使能位正跳变出现时,从手动方式无扰动切换到自动方式:(www.daowen.com)

(1)置给定值(SPn)=过程变量(PVn)。

(2)置过程变量前值(PVn-1)=过程变量现值(PVn)。

(3)置积分项前值(MX)=输出值(Mn)。

PID使能位的默认值是“1”,在CPU启动或从STOP方式转到“RUN”方式时建立。CPU进入“RUN”方式后首次使PID块有效,没有检测到使能位的正跳变,那么就没有无扰动切换的动作。

3.报警与特殊操作

PID指令是执行PID运算的简单而功能强大的指令。如果需要其他处理,如报警检查或回路变量的特殊计算器,则这些处理必须使用S7-200支持的基本指令来实现。

4.出错条件

如果指令指定的回路表起始地址或 PID回路号操作数超出范围,那么在编译期间,CPU将产生编译错误(范围错误),从而编译失败。

PID指令不检查回路表中的值是否在范围之内,所以必须小心操作以保证过程变量和设定值不超界。PID指令不检查回路表中的值是否超界,必须保证过程变量和设定值(偏置和前一次过程变量)必须在0.0~1.0。

如果PID计算的算术运算发生错误,那么,特殊存储器标志位SM1.1(溢出或非法值)会被置“1”,并且中止PID指令的执行(要想消除这种错误,靠改变回路表中的输出值是不够的,正确的方法是在下一次执行PID运算之前,改变引起算术运算错误的输入值,而不是更新输出值)。

5.回路表

回路表有80字节长,它的格式如表4-23和表4-24所示。

表4-23 回路表

表4-24 扩展的回路表

续表

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

我要反馈