三菱PLC的比较指令CMP

在三菱 PLC(可编程逻辑控制器)中,CMP 指令(Compare,比较指令)用于比较两个数据的大小关系,并根据比较结果输出相应的触点信号。它是程序中实现逻辑判断、条件分支的重要指令。

一、CMP 指令的基本格式

三菱 PLC 中,CMP 指令的基本形式为:

CMP S1 S2 D
  • S1:源操作数 1(被比较的值,可以是常数、寄存器如 D、W 等)
  • S2:源操作数 2(用于比较的值,同 S1)
  • D:目标操作数(指定比较结果的存储软元件,通常是 3 个连续的辅助继电器 M 或状态继电器 S)

二、功能与工作原理

CMP 指令的作用是比较 S1 和 S2 的数值,并将结果通过 D 指定的 3 个连续软元件输出:

  • 当 S1 > S2 时:D 对应的软元件接通(为 ON)
  • 当 S1 = S2 时:D+1 对应的软元件接通(为 ON)
  • 当 S1 < S2 时:D+2 对应的软元件接通(为 ON)

例如,若指令为 CMP D0 K100 M0

  • 当 D0 > 100 时,M0 接通
  • 当 D0 = 100 时,M1 接通
  • 当 D0 < 100 时,M2 接通

三、使用注意事项

  1. 操作数类型

    • S1 和 S2 可以是常数(K/H)、数据寄存器(D)、定时器当前值(T)、计数器当前值(C)等。
    • 支持 16 位或 32 位数据比较(32 位时需加前缀D,如DCMP)。
  2. 执行条件

    • CMP 指令需要在触发条件(如 X0 接通)下执行,每次触发时进行一次比较。
    • 若触发条件持续为 ON,PLC 会在每个扫描周期重新执行比较。
  3. 结果保持

    • 比较结果会持续保持,直到下一次 CMP 指令执行或被其他操作修改。
  4. 32 位比较

    • 当比较 32 位数据时,使用 DCMP 指令,操作数需指定 32 位寄存器(如 D1D0,D1 为高 16 位,D0 为低 16 位)。

四、应用示例

五、与其他比较指令的区别

  • CMP:通用比较指令,可比较任意两个数值。
  • ZCP(区间比较):判断一个值是否在某个区间内(如 ZCP S D1 D2 M0 用于判断 S 是否在 D1~D2 之间)。

CMP 指令是三菱 PLC 中实现数值判断的基础指令,广泛用于液位控制、速度检测、计数达标等场景。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值