图4-28表示了负反馈控制的算法框图。这里是用设定值(R)与实际值(C)之差(E)去进行控制。E经放大(乘H)后,产生控制输出M1,作用于被控对象。M2为某干扰量,不可避免地也同时作用于被控对象。被控对象的G1、G2为接受控制与扰动的特性值,是由系统的特性决定的。即:C=M1G1+M2G2。
从框图4-28可知,以上几个量间还有如下关系:
E=R-C
M1=HE=H(R-C)
以上关系,经化简后有:
图4-28 负反馈控制算法框图
如果HG1选得足够大,既足够的大于G2,又足够的大于1,则有:
这可使C不受或很少受干扰影响,而复现R的变化,达到精确控制的目的。(www.xing528.com)
当然,这里讲的只是理想情况。而实际系统是离散的,不仅系统总有惯性,而且PLC控制还都有滞后(时延),所以,HG1选得足够大,虽可改善系统的静态特性,但很可能出现静态及动态不稳定(振荡)。这也是负反馈控制的不足。
建立这个系统后,可按所要求的被控量C值,确定控制量R值,以实现相应的定值、或程序、或随动控制。
图4-29所示为对应的PLC梯形图程序。该图用的是符号地址。
从图4-29可知,当“负反馈控制”ON,则执行程序。这时,对图4-29a,先用“CLC”指令清进位位(P_CY),以避免进位位对减运算的影响,接着,进行“设定值”与“实际值”相减,结果存于“E”中。而对图4-29b、c,则直接进行“设定值”与“实际值”相减,结果存于“E”中。如“设定值”大于“实际值”,则P_CYOFF(图4-29a),“E”即为这个差值,进而把“E”乘“H”,并存于“控制输出”中。如“设定值”小于“实际值”,则P_CYON,接着,把0传送给“控制输出”。
“设定值”小于“实际值”时作如此处理,目的是避免“控制输出”出现负值。如“控制输出”允许出现负值时,则更简单。把“设定值”与“实际值”相减得出“E”(或正、或负),再将“E”乘“H”,并把结果存“控制输出”即可。但要清楚,图4-29a程序运算用的数据格式为BCD码,而图4-29b、c运算用的数据格式是十六进制。
图4-29d直接执行程序。图中节1、2为使能模拟量输入、输出模块。节3为进行反馈控制计算。当然,这里的变量需与模拟量输入、输出通道的地址关联。如果必要,还要作些数值换算。
图4-29 负反馈控制梯形图程序
提示:编写这类程序一定要处理好数据格式的转换。而模拟量入、模拟量出单元用的数据格式多为十六进制。所以,如数据格式为BCD码,则要进行转换。有的PLC运算可用浮点数,以提高运算精度。这时,在计算前后,也都要进行数据格式转换。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。