CNR 的梯形图示例如图所示。图 CNR 指令梯形图及助记符示例指令说明:当条件 0.01 为 ON 时,将 T1~T4 的定时完成标志置为 OFF,同时将它们的定时当前值置为较大值 9999;当条件 0.02 为 ON 时,将 C2~C7 的计数完成标志置为 OFF,同时将它们的计数当前值置为较大值 9999。CNRX(547)的功能与 CNR 相同,区别是它将定时器/计数器的 PV 置为较大值 FFFF。注意:1)CNR/CNRX 指令不能复位长时间定时器(TIML/TIMLX)和多输出定时器(MTIM/MTIMX)的当前值。2)计数器的编号由 CNT、CNTX(546)、CNTR(012)、CNTRX(548)、CNTW(814)和CNTWX(818)等共同占有,因此当不同的计数指令使用了同一编号时,只要二者不同时工作,即使 plc 自检时会将重复错误标志置位,但不会影响其计数操作;否则将不能准确计数。延时 3s 断开程序,如图所示。图 3s 脉冲程序示例指令说明:当输入 0.00 为 ON 时,定时器 TIM0000 的定时当前值开始做递减操作,同时输出继电器100.05 接通。经过 3s 后 TIM0000 产生输出,其常闭触点 T0000 断开,同时输出继电器 100.05断开,从而在 100.05 上产生了一个 3s 的延时中断输出。本例旨在掌握定时器的常闭触点的应用。块比较指令 BCMP 是将一个 4 位十六进制数与一个由 32 个连续通道构成的比较表中的 16 组上、下限值进行逐一比较,该比较表中每两个连续通道组成一个数据组,在每个数据组中总是*一通道(通道号低)的值设为下限值,*二通道(通道号高)的值设为上限值,下限值必须小于或等于上限值,比较从*一个数据组开始,若比较的十六进制数在限值范围内时,则 BCMP 就将结果通道中的 0 位置 1,否则置 0。继续再比较*二个数据组,以此类推,完成 16 次比较后结果通道的 16 个位记录对应的比较结果。BCMP 指令梯形图与比较结果如图所示。图 BCMP 指令的应用示例上例中,当执行条件 0.08 为 ON 时,将 D20 通道值 1510H 与*一组上限通道 H31 的值0100H、下限通道 H30 的值 0H 进行比较,由于其**出了上限值,所以将比较结果通道 W40的 0 位置 0。以此类推,D20 通道的值 1510H 再与其他各组上、下限通道值逐一比较,较终的执行结果是由于 1510H 处于* 16 组上限通道 H60 的值 1501H 和下限通道 H61 的值 1600H之间,使 W40 的 15 位置位。