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