浔之漫智控技术(上海)有限公司
西门子PLC模块 , CPU模块 , DP通讯电缆 , 6GK交换机
6SL3060-4AM00-0AA0

本文介绍S7-300和S7-400的梯形图(LAD)编程的比较指令。
1.比较指令概述
说明:根据用户选择的比较类型比较IN1和IN2:
==            IN1等于IN2
<>            IN1不等于IN2
>             IN1大于IN2
<             IN1小于IN2
>=            IN1大于或等于IN2
<=            IN1小于或等于IN2
如果比较结果为“真”,则函数的RLO为“1”。如果以串联方式使用比较单元,则使用“与”运算将其链接至梯级程序段的RLO;如果以并联方式使用该框,则使用“或”运算将其链接至梯级程序段的RLO。
以下是可供使用的比较指令:
·CMP ?I      整数比较
·CMP ?D      比较双精度整数
·CMP ?R      比较实数

2.CMP ?I 比较整数
符号:
     CMP ?I 比较整数符号-西门子PLC

参数数据类型内存区域说明输入框BOOLI、Q、M、L、D上一逻辑运算结果输入框BOOLI、Q、M、L、D比较的结果,仅在输入RLO=1时才进一步处理IN1INTI、Q、M、L、D或常数要比较的第一个值IN2INTI、Q、M、L、D或常数要比较的第二个值

说明:CMP ?I(整数比较)的使用方法与标准触点类似。它可位于任何可放置标准触点的位置。可根据用户选择的比较类型比较IN1和IN2。如果比较结果为“真”,则函数的RLO为“1”。如果以串联方式使用该框,则使用“与”运算将其链接至整个梯级程序段的RLO;如果以并联方式使用该框,则使用“或”运算将其链接至整个梯级程序段的RLO。

状态字:

 BRCC 1CC 0OVOSORSTARLO/FC写:XXX0-0XX1
实例:
     CMP ?I 比较整数-梯形图编程实例 
如果满足下列条件,则输出Q4.0置位:
·输入I0.0和I0.1的信号状态为“1”
·并且MW0>=MW2
3.CMP ?D 比较双精度整数
符号:
     CMP ?D 比较双精度整数符号


参数数据类型内存区域说明输入框BOOLI、Q、M、L、D上一逻辑运算结果输出框BOOLI、Q、M、L、D比较的结果,仅在输入RLO=1时才进一步处理IN1DINTI、Q、M、L、D或常数要比较的第一个值IN2DINTI、Q、M、L、D或常数要比较的第二个值

说明:CMP ?D(比较双精度整数)的使用方法与标准触点类似。它可位于任何可放置标准触点的位置。可根据用户选择的比较类型比较IN1和IN2。
如果比较结果为“真”,则函数的RLO为“1”。如果以串联方式使用比较单元,则使用“与”运算将其链接至梯级程序段的RLO;如果以并联方式使用该框,则使用“或”运算将其链接至梯级程序段的RLO。

状态字:

 BRCC 1CC 0OVOSORSTARLO/FC写:XXX0-0XX1

实例:
     CMP ?D 比较双精度整数-梯形图编程实例
如果满足下列条件,则输出Q4.0置位:
·输入I0.0和I0.1的信号状态为“1”
·并且MD0>=MD4
·同时输入I0.2的信号状态为“1”

4.CMP ?R 比较实数
符号:
     CMP ?R 比较实数的符号

参数数据类型内存区域说明输入框BOOLI、Q、M、L、D上一逻辑运算结果输出框BOOLI、Q、M、L、D比较的结果,仅在输入RLO=1时才进一步处理IN1REALI、Q、M、L、D或常数要比较的第一个值IN2REALI、Q、M、L、D或常数要比较的第二个值

说明:CMP ?R(整数比较)的使用方法类似标准触点。它可位于任何可放置标准触点的位置。可根据用户选择的比较类型比较IN1和IN2。
如果比较结果为“真”,则函数的RLO为“1”。如果以串联方式使用该框,则使用“与”运算将其链接至整个梯级程序段的RLO;如果以并联方式使用该框,则使用“或”运算将其链接至整个梯级程序段的RLO。

状态字:

 BRCC 1CC 0OVOSORSTARLO/FC写:XXXXX0XX1

实例:
     CMP ?R 比较实数的梯形图编程实例
如果满足下列条件,则输出Q4.0置位:
·输入I0.0和I0.1的信号状态为“1”
·并且MD0>=MD4
·同时输入I0.2的信号状态为“1”

说明:对于“立即写入”功能,必须按以下实例所示创建符号程序段。
对于对时间要求苛刻的应用程序,将数字输出的当前状态发送给输出模块的速度可能必须快于正常情况下在OB1扫描周期结束时发送一次的速度。“立即写入”将在扫描“立即写入”梯级时将数字输出写入输入模块。否则,必须等到下一OB1扫描周期结束,届时将以P存储器状态更新Q存储区。
要将一个输出(或多个输出)立即写入输出模块,请使用外设输出(PQ)存储区来代替输出(Q)存储区。可以字节、字或双字形式读取外设输出存储区。因此,不能通过线圈单元更新单一数字输出。要立即向输出模块写入数字输出的状态,将根据条件把包含相关位的Q存储器的字节、字或双字复制到相应的PQ存储器(直接输出模块地址)中。

当心
·由于Q存储器的整个字节都写入了输出模块,因此在执行立即输出时,将更新该字节中的所有输出位。
·如果输出位在程序各处产生了多个中间状态(1/0),而这些状态不应发送给输出模块,则执行“立即写入”可能会导致危险情况(输出端产生瞬态脉冲)发生。
·作为常规设计原则,在程序中只能以线圈形式对外部输出模块引用一次。如果用户遵循此设计原则,则可以避免使用立即输出时的大多数潜在问题。

实例
立即写入外设数字输出模块5通道1的等价梯形图程序段。
可以修改寻址输出Q字节(QB5)的状态位,也可以将其保持不变。程序段1中给Q5.1分配I0.1信号状态。将QB5复制到相应的直接外设输出存储区(PQB5)。
字PIW1包含I1.1的立即状态。对PIW1与W#16#0002执行AND运算。如果PB1中的I1.1(第二位)为真(“1”),则结果不等于零。如果WAND_W指令的结果不等于零,触点A<>0时将传递电压。
      立即读取梯形图编程实例
在此实例中,Q5.1为所需的立即输出位;字节PQB5包含Q5.1位的立即输出状态;MOVE(复制)指令还会更新PQB5的其它7位。


发布时间:2023-10-26
展开全文
优质商家推荐 拨打电话