(D)CMP(P) 比較 將兩源操作元件的數(shù)據(jù)作代數(shù)比較,結(jié)果送到目標(biāo)元件中,決定目標(biāo)元件的狀態(tài)。
源操作元件:K/H KnX KnY KnM KnS T C D V/Z
目標(biāo)元件:Y M S
格式:LD X0
CMP(P) K100 C20 M0
X0由OFF到ON 時(shí):當(dāng)K100>C20當(dāng)前值時(shí),M0=1
當(dāng)K100=C20當(dāng)前值時(shí),M1=1
當(dāng)K100<C20當(dāng)前值時(shí),M2=1
當(dāng)用連續(xù)方式執(zhí)行CMP時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
(D)ZMP(P) 區(qū)間比較 將一個(gè)數(shù)據(jù)與兩個(gè)源元件的數(shù)據(jù)區(qū)間作比較,結(jié)果送到目標(biāo)元件中,決定目標(biāo)元件的狀態(tài)。
源操作元件:K/H KnX KnY KnM KnS T C D V/Z
目標(biāo)元件:Y M S
格式:LD X0
ZCP(P) K100 K120 C30 M3
X0由OFF到ON時(shí): 當(dāng)K100>C30當(dāng)前值時(shí),M3=1
當(dāng)K100≤C30≥K120時(shí),M4=1
當(dāng)K120<C30當(dāng)前值時(shí),M5=1
當(dāng)用連續(xù)方式執(zhí)行ZCP時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
(D)MOV(P) 傳送 將操作元件的數(shù)據(jù)傳送到目標(biāo)元件中。
源操作元件:K/H KnX KnY KnM KnS T C D V/Z
目標(biāo)元件:KnY KnM KnS T C D V/Z
格式:LD X0
MOV(P) K100 D10
當(dāng)X0由OFF到ON時(shí),將100 傳送到D10中
當(dāng)用連續(xù)方式執(zhí)行MOV時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
對(duì)于32位數(shù)據(jù)用DMOV 傳送,用元件號(hào)相臨的兩元件組成元件對(duì)。元件對(duì)的首位用奇數(shù)、偶數(shù)均可,但為避免出錯(cuò),元件對(duì)的首位建議統(tǒng)一用偶數(shù)。
當(dāng)傳送指令執(zhí)行時(shí),常數(shù)自動(dòng)轉(zhuǎn)化成二進(jìn)制數(shù)存入目標(biāo)元件。
SMOV(P)移位傳送 將源元件的數(shù)據(jù)轉(zhuǎn)化為BCD碼,然后將BCD碼根據(jù)要求移位后,傳送到目標(biāo)元件中。
源操作元件:K/H KnX KnY KnM KnS T C D V/Z
目標(biāo)元件:KnY KnM KnS T C D V/Z
m:K H K/H的取值范圍:1—4,即D1的值不可超過(guò)9999
n:K H
使用格式:如D1=1685 D2=0
LD X0
SMOV(P) D1 K4 K2 D2 K3
當(dāng)X0由OFF到ON時(shí):將D1=1685轉(zhuǎn)化為BCD 碼為0001 0110 1000 0101
D2=0 轉(zhuǎn)化為BCD碼為 0000 0000 0000 0000
再將D1的BCD碼從右起第4位開(kāi)始的向右2位,移到D2 中右起第3位開(kāi)始向右的2位,1位和第4位不變。此時(shí)D2為 0000 0001 0110 000 ,D2=160
當(dāng)用連續(xù)方式執(zhí)行SMOV時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
(D)CML(P)取反傳送 將源元件內(nèi)數(shù)據(jù)轉(zhuǎn)化為二進(jìn)制數(shù)逐位取反(0→1 ,1→0),并傳送到指定目標(biāo)元件。
源操作元件:K/H KnX KnY KnM KnS T C D V/Z
目標(biāo)元件:KnY KnM KnS T C D V/Z
格式:如D0=11
LD X0
CML(P) D0 K1Y0
當(dāng)X0由OFF到ON時(shí):先把D0= 11轉(zhuǎn)化為二進(jìn)制為 1 0 1 0, 然后取反為 0 1 0 1
則K1Y0的輸出為Y0=0,Y1=1,Y2=0,Y3=1
當(dāng)用連續(xù)方式執(zhí)行CML時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
BMOV(P)塊傳送 從源操作元件開(kāi)始的n個(gè)數(shù)據(jù)組成數(shù)據(jù)塊傳送到以目標(biāo)元件開(kāi)始的n個(gè)元件組成的數(shù)據(jù)塊。
源操作元件:KnX KnY KnM KnS T C D 文件寄存器
目標(biāo)元件: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)
傳送順序是自動(dòng)決定的,以防止源數(shù)據(jù)被這條指令傳送的其它數(shù)據(jù)沖掉。
當(dāng)X0由OFF到ON時(shí),按上述傳送當(dāng)用連續(xù)方式執(zhí)行BMOV時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
當(dāng)M8024=ON時(shí),數(shù)據(jù)傳送方向反轉(zhuǎn)。
BMOV有訪(fǎng)問(wèn)程序區(qū)中的文件寄存器(系統(tǒng)寄存器)的功能。(對(duì)FX系列而言,通過(guò)參數(shù)設(shè)置可把D1000以后的通用數(shù)據(jù)寄存器設(shè)為文件寄存器。當(dāng)PLC從STOP→RUN時(shí),程序存儲(chǔ)區(qū)的文件寄存器會(huì)自動(dòng)被copy到RAM(程序寄存器)區(qū)中的文件寄存器中,除BMOV指令外其它指令用到的D1000后均指RAM中的文件寄存器。)
FMOV(P) 多點(diǎn)傳送 將源元件中的數(shù)據(jù)傳送到以目標(biāo)元件開(kāi)始的n個(gè)元件中。
源操作元件:K/H knX KnY KnM KnS T C D V/Z
目標(biāo)元件:KnY KnM KnS T C D
n: K\H n≤512 ;
使用格式:LD X0
FMOV(P) K10 D0 K20
當(dāng)X0由OFF到ON時(shí):將源數(shù)據(jù)10傳送到從D0開(kāi)始的20個(gè)元件中每個(gè)元件中的數(shù)據(jù)都為10。
當(dāng)用連續(xù)方式執(zhí)行FMOV時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
如果元件號(hào)超出元件范圍,則數(shù)據(jù)只送到允許的范圍的元件內(nèi)。
(D)XCH(P)交換 將源元件和目標(biāo)元件內(nèi)的數(shù)據(jù)互換。
操作元件:KnY KnM KnS T C D V/Z
目標(biāo)元件:KnY KnM KnS T C D V/Z
使用格式:如D1=100 D2=20
LD X0
XCH(P) D1 D2
當(dāng)X0有OFF到ON時(shí):執(zhí)行后D1=200 D2=100
注意:在連續(xù)執(zhí)行方式XCH下,數(shù)據(jù)在每個(gè)掃描周期交換一次。
處理16位數(shù)據(jù)時(shí)當(dāng)M8160置位時(shí),而且源元件與目標(biāo)元件為同一元件時(shí),數(shù)據(jù)的高8位與低8位互換。 源元件與目標(biāo)元件不為同一元件時(shí),不執(zhí)行XCH指令。
本指令也可處理32位數(shù)據(jù),用DXCH。也可進(jìn)行高低16位互換。 M8061置位時(shí)與(147、SWAP高低位互換指令功能相同。)
高低位互換具體不明???
(D)BCD(P)變換 將PLC 中的二進(jìn)制數(shù)(在PLC中所有數(shù)據(jù)都以二進(jìn)制數(shù)形式存在)變換成BCD碼輸出以驅(qū)動(dòng)LED顯示器七段顯示。
源操作元件:KnX KnY KnM KnS T C D V/Z
目標(biāo)元件:KnY KnM KnS T C D V/Z
數(shù)據(jù)范圍:0—9999或0--99999999
使用格式:如D10=17
LD X0
BCD D10 K2Y0
當(dāng)X0由OFF到ON時(shí): 先將17轉(zhuǎn)化為BCD 碼為 0001 0111
驅(qū)動(dòng)Y7=0,Y6=0,Y5=0,Y4=1,Y3=0,Y2=1,Y1=1 Y0=1。
當(dāng)用連續(xù)方式執(zhí)行CML時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
注意:處理16位時(shí)源數(shù)據(jù)不可超出0---9999,處理32位不可超過(guò)0—99999999。
一組BCD碼四位,只能表示一位十進(jìn)制數(shù),最大可變換9。即對(duì)于KnY0,不可能使Y0、Y1、Y2、Y3全置1。
(D)BIN(P)指令將源操作元件中的BCD碼轉(zhuǎn)化為二進(jìn)制數(shù)據(jù)送到目標(biāo)元件。常用于將BCD數(shù)字開(kāi)關(guān)的設(shè)定值輸入到PLC中
操作元件:KnX KnY KnM KnS T C D V/Z
目標(biāo)元件:KnY KnM KnS T C D V/Z
數(shù)據(jù)范圍: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
當(dāng)X0由OFF到ON時(shí):K2X0組成的BCD碼為1000 0101,再將其轉(zhuǎn)化為二進(jìn)制數(shù)存到D10,再轉(zhuǎn)化為十進(jìn)制,即D10=86
當(dāng)用連續(xù)方式執(zhí)行BIN時(shí),條件滿(mǎn)足時(shí),每個(gè)掃描周期執(zhí)行一次。
注意:一組K1X0只能表示一位十進(jìn)制數(shù),最大為9。即向目標(biāo)元件送兩位數(shù)時(shí)要用兩組KnX