图3-37表示了偏差控制的算法框图。这里用控制值R对系统进行控制,而设定值为R0。当设定值(R0)与实际值(C)之差(E)为0时,R即等于R0。这等于实际值复现了设定值。如由于干扰,实际值偏离设定值,则E不等于0。此时,E将增大R值(当实际值小于设定值时),或减少R值(当实际值大于设定值时),进而使实际值(C)增大或减少,以接近设定值。
图3-38为与图3-37对应的梯形图程序。
图3-37 偏差控制算法框图
图3-38 偏差控制梯形图程序
从图3-38a可知,当“偏差控制”ON,则执行如图程序。这时,先用“CLC”指令清进位位(P_CY),接着,进行“设定值”与“实际值”相减,结果存于“E”中。如“设定值”大于“实际值”,则P_CY OFF(触点L0.00也为OFF),“E”即为这个差值。进而把“E”与“设定值R0”相加,再乘“H”,并存于“控制输出”中。如“设定值”小于“实际值”,则P_CYON(触点L0.00也为ON),接着,取“E”的补数,进而把“E”与“设定值R0”相减,再乘“H”,也存于“控制输出”中。当然,这是如“E”大于“设定值R0”,则把0传送给“控制输出”。“设定值”小于“E”时作这么处理,目的是避免“控制输出”出现负值。(www.daowen.com)
而图3-38b、c用的是十六进制数据,又没有进位位参与计算问题,程序较简单,也较易理解,就不多解释了。
图3-38d中节1、2为使能模拟量输入、输出模块。节3为进行偏差控制计算。当然,这里变量须与模拟量输入、输出通道地址关联。如果必要,还要做些数值换算。它所使用的变量声明如下:
偏差控制实质也是负反馈控制,不同的只是这里有由设定值R0确定的初始实际值。只要这个实际值发生了偏差,将产生的补充控制量,使系统的实际值恢复初始实际值。所谓偏差控制,也因此得名。
但是,要想用这种偏差控制去完全消除是不可能的。因为没有偏差也就没有补充控制量,怎么能把所有偏差都消除了。只是可加大H值,使这个无法消除的偏差,也叫“静差”,减小。可是,这么做也存在系统是否稳定的问题。所以,加大H是受限制的。
提示:欧姆龙PLC加、减指令执行时,其进位位也参与运算。求其绝对差,则用0~9999即可。但图3-38用了1~9999。原因是这时进位位已置1。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。