ZCP指令也是比较指令,但它是区间比较指令,比CMP指令略显麻烦。
从ZCP指令和CMP指令的梯形图中,可以看到,ZCP指令比CMP指令多了一个源址S·,这个S·就是ZCP指令的主角,它到底有什么含义呢?我们接着往下看。 ZCP指令是区间比较指令,所谓区间,就是一个数据范围。例如我们考试,将成绩划分为3个区间:0-59分为不及格,60-80分为良好,81-100分为优秀。ZCP指令也将数据划分为3个区间,分界点分别为S1、S2,而S就是被用于比较的主角,例如我们每个人所考的成绩。终址D的含义类似于CMP指令中的D,也是用于反馈比较结果,占用3点:D、D+1、D+2。
类似于CMP指令,在ZCP指令中,当驱动条件成立时,将源址S数据分别与源址S1、S2数据进行比较,若比较结果S<S1,则D接通;若S1≤S≤S2,则D+1接通;若S>S2,则D+2接通。 例如执行指令ZCP K60 D0 K100 M0表示:若数据寄存器D0的内容(D0)<K60,则M0接通,若K60≤(D0)≤K100,则M1接通;若(D0)>K100,则M2接通。
源址S1与S2除了可以是常数外,还可以是各种字元件,但在这里要注意的一点是:ZCP指令在正常执行的情况下,S1<S2,也就是说,S1所存的数据应小于S2所存的数据,若S1>S2, plc就会把S2作为S1处理。例如在ZCP D10 D11 D12 Y0中,D10内存的数据为K10,D11所存的数据为K8,此时若D12所存的数据为K8或K9,D12都是M0接通。 和CMP指令一样,执行ZCP指令后,若驱动条件断开,终址D、D+1、D+2的状态依然保持不变,可以用复位指令RST或批量复位指令ZRST对它们复位。 无论是CMP指令还是ZCP指令,它们都是字元件数据的比较,且比较结果用终址相对应的3个位元件接通来区分。除此之外,三菱FX PLC 2N中还有触点比较指令,什么是触点比较指令?它们与CMP指令和ZCP指令又有什么区别呢?接下来我们继续走进触点比较指令的世界。 |