870605
爱拼才会赢
级别: 论坛先锋
精华主题: 0
发帖数量: 135 个
工控威望: 1503 点
下载积分: 535 分
在线时间: 92(小时)
注册时间: 2008-02-15
最后登录: 2024-11-25
查看870605的 主题 / 回贴
楼主  发表于: 2011-06-09 11:22
(D)CMP(P) 比较  将两源操作元件的数据作代数比较,结果送到目标元件中,决定目标元件的状态。
源操作元件:K/H KnX  KnY  KnM  KnS  T  C  D  V/Z
目标元件:Y  M  S
格式:LD   X0
CMP(P)  K100   C20  M0  
X0由OFF到ON 时:当K100>C20当前值时,M0=1
                    当K100=C20当前值时,M1=1
                    当K100<C20当前值时,M2=1  
当用连续方式执行CMP时,条件满足时,每个扫描周期执行一次。

(D)ZMP(P) 区间比较  将一个数据与两个源元件的数据区间作比较,结果送到目标元件中,决定目标元件的状态。
源操作元件:K/H  KnX  KnY  KnM  KnS  T  C  D  V/Z
目标元件:Y  M  S
格式:LD  X0
ZCP(P)  K100  K120  C30  M3
X0由OFF到ON时: 当K100>C30当前值时,M3=1
                    当K100≤C30≥K120时,M4=1
                    当K120<C30当前值时,M5=1
当用连续方式执行ZCP时,条件满足时,每个扫描周期执行一次。

(D)MOV(P)  传送 将操作元件的数据传送到目标元件中。
源操作元件:K/H  KnX  KnY  KnM  KnS  T  C   D  V/Z
目标元件:KnY  KnM  KnS  T  C  D  V/Z
格式:LD X0
MOV(P)  K100  D10
当X0由OFF到ON时,将100 传送到D10中
当用连续方式执行MOV时,条件满足时,每个扫描周期执行一次。
对于32位数据用DMOV 传送,用元件号相临的两元件组成元件对。元件对的首位用奇数、偶数均可,但为避免出错,元件对的首位建议统一用偶数。
当传送指令执行时,常数自动转化成二进制数存入目标元件。

SMOV(P)移位传送  将源元件的数据转化为BCD码,然后将BCD码根据要求移位后,传送到目标元件中。
源操作元件:K/H  KnX  KnY  KnM  KnS  T  C  D  V/Z
目标元件:KnY  KnM  KnS  T  C  D  V/Z
m:K  H    K/H的取值范围:1—4,即D1的值不可超过9999
n:K  H
使用格式:如D1=1685   D2=0
         LD  X0
        SMOV(P)  D1  K4  K2  D2  K3  
当X0由OFF到ON时:将D1=1685转化为BCD 码为0001  0110  1000  0101
                         D2=0   转化为BCD码为 0000  0000  0000   0000
再将D1的BCD码从右起第4位开始的向右2位,移到D2 中右起第3位开始向右的2位,1位和第4位不变。此时D2为 0000 0001 0110 000 ,D2=160
当用连续方式执行SMOV时,条件满足时,每个扫描周期执行一次。


(D)CML(P)取反传送  将源元件内数据转化为二进制数逐位取反(0→1 ,1→0),并传送到指定目标元件。
源操作元件:K/H  KnX  KnY  KnM  KnS  T  C  D  V/Z
目标元件:KnY  KnM  KnS  T  C  D  V/Z
格式:如D0=11
     LD  X0
CML(P)  D0  K1Y0
当X0由OFF到ON时:先把D0= 11转化为二进制为 1 0 1 0,  然后取反为 0 1 0 1  
则K1Y0的输出为Y0=0,Y1=1,Y2=0,Y3=1
当用连续方式执行CML时,条件满足时,每个扫描周期执行一次。

BMOV(P)块传送  从源操作元件开始的n个数据组成数据块传送到以目标元件开始的n个元件组成的数据块。
源操作元件:KnX  KnY  KnM  KnS  T  C  D  文件寄存器
目标元件:KnY  KnM  KnS  T  C  D
n: K、H   n≤512
使用格式:LD  X0
BMOV(P)  D5  D10  K3       D5→D10(1)
                                     D6→D11(2)
                                     D7→D12(3)
          BMOV(P)  D5  D7  K3        D5→D7(3)
                                     D6→D8(2)
                                     D7→D9(1)
          BMOV(P)  D20  D18  K3      D20→D18(1)
                                     D21→D19(2)
                                     D22→D20(3)
传送顺序是自动决定的,以防止源数据被这条指令传送的其它数据冲掉。
当X0由OFF到ON时,按上述传送当用连续方式执行BMOV时,条件满足时,每个扫描周期执行一次。
当M8024=ON时,数据传送方向反转。
BMOV有访问程序区中的文件寄存器(系统寄存器)的功能。(对FX系列而言,通过参数设置可把D1000以后的通用数据寄存器设为文件寄存器。当PLC从STOP→RUN时,程序存储区的文件寄存器会自动被copy到RAM(程序寄存器)区中的文件寄存器中,除BMOV指令外其它指令用到的D1000后均指RAM中的文件寄存器。)

FMOV(P) 多点传送 将源元件中的数据传送到以目标元件开始的n个元件中。
源操作元件:K/H  knX  KnY  KnM  KnS  T  C  D  V/Z
目标元件:KnY  KnM  KnS  T  C  D
n:  K\H   n≤512  ;
使用格式:LD   X0
FMOV(P)  K10  D0  K20
当X0由OFF到ON时:将源数据10传送到从D0开始的20个元件中每个元件中的数据都为10。  
当用连续方式执行FMOV时,条件满足时,每个扫描周期执行一次。
如果元件号超出元件范围,则数据只送到允许的范围的元件内。

(D)XCH(P)交换  将源元件和目标元件内的数据互换
操作元件:KnY  KnM  KnS  T  C  D  V/Z
目标元件:KnY  KnM  KnS  T  C  D  V/Z
使用格式:如D1=100  D2=20
          LD   X0
          XCH(P)  D1  D2
当X0有OFF到ON时:执行后D1=200  D2=100
注意:在连续执行方式XCH下,数据在每个扫描周期交换一次。
处理16位数据时当M8160置位时,而且源元件与目标元件为同一元件时,数据的高8位与低8位互换。 源元件与目标元件不为同一元件时,不执行XCH指令。
本指令也可处理32位数据,用DXCH。也可进行高低16位互换。                        M8061置位时与(147、SWAP高低位互换指令功能相同。)
高低位互换具体不明???


(D)BCD(P)变换  将PLC 中的二进制数(在PLC中所有数据都以二进制数形式存在)变换成BCD码输出以驱动LED显示器七段显示。
源操作元件:KnX  KnY  KnM  KnS  T  C  D  V/Z
目标元件:KnY  KnM  KnS  T  C  D  V/Z
数据范围:0—9999或0--99999999
使用格式:如D10=17
         LD  X0
         BCD  D10   K2Y0
当X0由OFF到ON时: 先将17转化为BCD 码为 0001  0111
驱动Y7=0,Y6=0,Y5=0,Y4=1,Y3=0,Y2=1,Y1=1 Y0=1。
当用连续方式执行CML时,条件满足时,每个扫描周期执行一次。
注意:处理16位时源数据不可超出0---9999,处理32位不可超过0—99999999。
一组BCD码四位,只能表示一位十进制数,最大可变换9。即对于KnY0,不可能使Y0、Y1、Y2、Y3全置1。

D)BIN(P)指令将源操作元件中的BCD码转化为二进制数据送到目标元件。常用于将BCD数字开关的设定值输入到PLC中
操作元件:KnX  KnY  KnM  KnS  T  C  D  V/Z
目标元件:KnY  KnM  KnS  T  C  D  V/Z
数据范围:0—9999或0--99999999
使用格式:如X7=1,X6=0, X5=0,X4=0,X3=0,X2=1,X1=0,X0=1。
          LD   X0
          BIN(P) K2X0  D10
当X0由OFF到ON时:K2X0组成的BCD码为1000 0101,再将其转化为二进制数存到D10,再转化为十进制,即D10=86
当用连续方式执行BIN时,条件满足时,每个扫描周期执行一次。
注意:一组K1X0只能表示一位十进制数,最大为9。即向目标元件送两位数时要用两组KnX





爱拼才会赢 .
shidegang
级别: 略有小成
精华主题: 0
发帖数量: 94 个
工控威望: 201 点
下载积分: 680 分
在线时间: 37(小时)
注册时间: 2010-08-13
最后登录: 2015-04-02
查看shidegang的 主题 / 回贴
1楼  发表于: 2011-11-02 10:56
堪称教学篇了。顶