在S7-1200PLC中,l利用MOVE_BLK指令可以將一個(gè)存儲區(qū)(源范圍)的數(shù)據(jù)移動到另一個(gè)存儲區(qū)(目標(biāo)范圍)中。使用輸入 COUNT 可以指定將移動到目標(biāo)范圍中的元素個(gè)數(shù)。可通過輸入 IN 中元素的寬度來定義元素待移動的寬度。僅當(dāng)源范圍和目標(biāo)范圍的數(shù)據(jù)類型相同時(shí),才能執(zhí)行該指令。
如果滿足下列條件之一,使能輸出 ENO 將返回信號狀態(tài)“0”:
條件1:使能輸入 EN 的信號狀態(tài)為“0”。
條件2:移動的數(shù)據(jù)量超出輸入 IN 或輸出 OUT 所能容納的數(shù)據(jù)量。:
當(dāng)復(fù)制 ARRAY of BOOL 時(shí),溢出的使能輸出 ENO 將設(shè)置為“1”,直至超出 ARRAY 結(jié)構(gòu)的字節(jié)限制。如果 COUNT 輸入的值超出了 ARRAY 結(jié)構(gòu)的字節(jié)限制,則使能輸出 ENO 將復(fù)位為“0”。
TIPS:1.IN和OUT是等待復(fù)制的源區(qū)域和目標(biāo)區(qū)域的首個(gè)元素,但是并不要求是數(shù)組中的第一個(gè)元素,前提條件是數(shù)組的數(shù)據(jù)類型必須保持一致;見下圖1所示;

2.MOVE_BLK指令只適合實(shí)現(xiàn)對數(shù)據(jù)塊中的數(shù)組進(jìn)行移動,不能實(shí)現(xiàn)對不是數(shù)據(jù)塊的存儲器進(jìn)行塊移動;針對這種情況,可以使用SCL編程中的POKE_BLK指令來實(shí)現(xiàn),操作方法見圖2所示;


例如下面就是利用該指令實(shí)現(xiàn)MB100-MB109的數(shù)據(jù)移動到QB0-QB9中
POKE_BLK(area_src:=16#83,//源操作數(shù)的存儲器類型;16#83表示M區(qū);
dbNumber_src:=0,//源操作數(shù)的DB塊地址,如果操作數(shù)不是DB塊,就默認(rèn)值就是0;
byteOffset_src:=50,//源操作數(shù)的起始地址;
area_dest:=16#82,//目標(biāo)操作數(shù)的存儲器類型;16#82代表Q區(qū);
dbNumber_dest:=0,//目標(biāo)操作數(shù)的DB塊地址,如果目標(biāo)操作數(shù)不是DB塊,就默認(rèn)值是0;
byteOffset_dest:=0,//目標(biāo)操作數(shù)的起始地址;
count:=10);//從源操作數(shù)寫入到目標(biāo)操作數(shù)的地址個(gè)數(shù);
其中,利用POKE_BLK指令來進(jìn)行編程時(shí),操作數(shù)是通過16進(jìn)制進(jìn)行表示的;輸入過程映像區(qū)I(16#81),輸出過程映像區(qū)Q(16#82),位存儲器區(qū)M(16#83),DB塊(16#84);

審核編輯:劉清
-
plc
+關(guān)注
關(guān)注
5039文章
14288瀏覽量
482014 -
西門子
+關(guān)注
關(guān)注
98文章
3240瀏覽量
119520 -
SCL
+關(guān)注
關(guān)注
1文章
244瀏覽量
17853 -
S7-1200
+關(guān)注
關(guān)注
11文章
333瀏覽量
19118
原文標(biāo)題:西門子S7-1200PLC移動操作指令:塊移動指令MOVE_BLK
文章出處:【微信號:非標(biāo)設(shè)備自動化設(shè)計(jì),微信公眾號:非標(biāo)設(shè)備自動化設(shè)計(jì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
怎么讓Smart line系列觸摸屏與西門子S7-1200PLC與時(shí)間一樣
利用Modbus采集網(wǎng)關(guān)采集西門子S7-1200plc數(shù)據(jù)
西門子S7-1200PLC移動操作指令之交換指令SWAP介紹
西門子S7-1200PLC移動操作移動值指令MOVE
西門子S7-1200PLC與V20變頻器進(jìn)行MODBUS RTU通信步驟
C#使用西門子S7協(xié)議讀寫PLC DB塊
西門子PLC S7-1200在線下載功能分享
西門子1200PLC之間的ModbusTCP通訊如何實(shí)現(xiàn)?
西門子Smart line系列觸摸屏如何與S7-1200PLC的時(shí)間同步
使用鋇錸BL102網(wǎng)關(guān)連接西門子S7-1200PLC接入mosquitto服務(wù)器方法
PLC西門子S7-200smart和S7-1200的區(qū)別?
介紹一下MOVE_BLK_VARIANT指令在使用中應(yīng)注意的問題

西門子S7-1200PLC塊移動指令MOVE_BLK操作
評論