常用的比较指令CMP指令用于比较两个参数(操作数1、操作数2)中的数据大小。RANGE指令用于比较某一个值是否在指定的值范围内。如果比较指令的比较结果为“真”,则RLO为“1”,否则为0。常用的比较指令见表6-9。
比较指令CMP的符号和操作如图6-31所示。
表6-9 比较指令
(续)
图6-30 减计数、加计数和可逆计数LAD和FBD图程序示例
在程序段插入比较指令CMP的符号后,点击中间部位,就会出现两个黄色箭头,点击右上角黄色箭头,并下拉列表,选择需要的CMP指令符;点击右下角黄色箭头,并下拉列表,选择需要的数据类型。然后分别点击红色“???”输入操作数1和操作数2。CMP指令应用例如图6-32所示。
如果输入I3.0的信号状态为“1”,当MW400中的内容等于30时,置位Q10.0为“1”,如果MW400的内容不等于30,则Q10.0的状态为“0”。当MW400>30,则置位Q10.1为“1”,否则为“0”。MW400<30,则置位Q10.2为“1”,否则为“0”。(www.xing528.com)
再如,某生产系统需要检测3个工段工作任务情况。如果工段1完成了60件则发灯光显示;如果工段2完成了90件则发灯光显示;如果工段3完成了100件则发灯光显示。控制程序如图6-33所示。
图6-31 比较指令CMP的符号和操作
IN_RANGE是“值在范围内”的比较指令。如果输入VAL的值满足MIN≤VAL≤MAX,则功能框输出的信号状态为“1”。如果该比较的结果不为真,则功能框输出的信号状态为“0”。如果功能框输入的信号状态为“0”,则不执行“值在范围内”操作。只有要比较的值具有相同的数据类型且互连了功能框输出时,才能执行该比较功能。
OUT_RANGE是“值超出范围”的比较指令。如果输入VAL的值满足MIN>VAL或VAL>MAX,则功能框输出的信号状态为“1”。如果该比较的结果不为真,则功能框输出的信号状态为“0”。如果功能框输入端的信号状态为“0”,则不执行“值超出范围”操作。只有要比较的值具有相同的数据类型且互连了功能框输出时,才能执行该比较功能。
图6-32 CMP指令应用示例
图6-33 工段工作任务检测示例
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。