在S7-1200PLC中,l利用MOVE_BLK指令可以將一個存儲區(qū)(源范圍)的數(shù)據(jù)移動到另一個存儲區(qū)(目標范圍)中。使用輸入 COUNT 可以指定將移動到目標范圍中的元素個數(shù)。可通過輸入 IN 中元素的寬度來定義元素待移動的寬度。僅當源范圍和目標范圍的數(shù)據(jù)類型相同時,才能執(zhí)行該指令。
如果滿足下列條件之一,使能輸出 ENO 將返回信號狀態(tài)“0”:
條件1:使能輸入 EN 的信號狀態(tài)為“0”。
條件2:移動的數(shù)據(jù)量超出輸入 IN 或輸出 OUT 所能容納的數(shù)據(jù)量。:
當復制 ARRAY of BOOL 時,溢出的使能輸出 ENO 將設(shè)置為“1”,直至超出 ARRAY 結(jié)構(gòu)的字節(jié)限制。如果 COUNT 輸入的值超出了 ARRAY 結(jié)構(gòu)的字節(jié)限制,則使能輸出 ENO 將復位為“0”。
TIPS:1.IN和OUT是等待復制的源區(qū)域和目標區(qū)域的首個元素,但是并不要求是數(shù)組中的第一個元素,前提條件是數(shù)組的數(shù)據(jù)類型必須保持一致;見下圖1所示;
2.MOVE_BLK指令只適合實現(xiàn)對數(shù)據(jù)塊中的數(shù)組進行移動,不能實現(xiàn)對不是數(shù)據(jù)塊的存儲器進行塊移動;針對這種情況,可以使用SCL編程中的POKE_BLK指令來實現(xiàn),操作方法見圖2所示;
例如下面就是利用該指令實現(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塊,就默認值就是0;
byteOffset_src:=50,//源操作數(shù)的起始地址;
area_dest:=16#82,//目標操作數(shù)的存儲器類型;16#82代表Q區(qū);
dbNumber_dest:=0,//目標操作數(shù)的DB塊地址,如果目標操作數(shù)不是DB塊,就默認值是0;
byteOffset_dest:=0,//目標操作數(shù)的起始地址;
count:=10);//從源操作數(shù)寫入到目標操作數(shù)的地址個數(shù);
其中,利用POKE_BLK指令來進行編程時,操作數(shù)是通過16進制進行表示的;輸入過程映像區(qū)I(16#81),輸出過程映像區(qū)Q(16#82),位存儲器區(qū)M(16#83),DB塊(16#84);
審核編輯:劉清
-
plc
+關(guān)注
關(guān)注
5016文章
13388瀏覽量
465438 -
西門子
+關(guān)注
關(guān)注
95文章
3062瀏覽量
116454 -
SCL
+關(guān)注
關(guān)注
1文章
239瀏覽量
17178 -
S7-1200
+關(guān)注
關(guān)注
11文章
331瀏覽量
18074
原文標題:西門子S7-1200PLC移動操作指令:塊移動指令MOVE_BLK
文章出處:【微信號:非標設(shè)備自動化設(shè)計,微信公眾號:非標設(shè)備自動化設(shè)計】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
怎么讓Smart line系列觸摸屏與西門子S7-1200PLC與時間一樣
![怎么讓Smart line系列觸摸屏與<b class='flag-5'>西門子</b><b class='flag-5'>S7-1200PLC</b>與時間一樣](https://file.elecfans.com/web1/M00/9E/F5/o4YBAF1A6GeAWbFlAAARyKjdhhk984.jpg)
利用Modbus采集網(wǎng)關(guān)采集西門子S7-1200plc數(shù)據(jù)
![利用Modbus采集網(wǎng)關(guān)采集<b class='flag-5'>西門子</b><b class='flag-5'>S7-1200plc</b>數(shù)據(jù)](https://file.elecfans.com/web2/M00/52/70/pYYBAGLLyhqAVmYRAAbXfP1kjRI408.png)
西門子S7-1200PLC移動操作指令之交換指令SWAP介紹
西門子S7-1200PLC移動操作移動值指令MOVE
C#使用西門子S7協(xié)議讀寫PLC DB塊
![C#使用<b class='flag-5'>西門子</b><b class='flag-5'>S7</b>協(xié)議讀寫<b class='flag-5'>PLC</b> DB<b class='flag-5'>塊</b>](https://file.elecfans.com/web1/M00/D9/4E/pIYBAF_1ac2Ac0EEAABDkS1IP1s689.png)
西門子PLC S7-1200在線下載功能分享
西門子PLC 1500/1200硬件分享
西門子1200PLC之間的ModbusTCP通訊如何實現(xiàn)?
![<b class='flag-5'>西門子</b><b class='flag-5'>1200PLC</b>之間的ModbusTCP通訊如何實現(xiàn)?](https://file1.elecfans.com/web2/M00/8E/63/wKgZomTGCHqAfdfeAABtRMpUq2g032.jpg)
西門子Smart line系列觸摸屏如何與S7-1200PLC的時間同步
![<b class='flag-5'>西門子</b>Smart line系列觸摸屏如何與<b class='flag-5'>S7-1200PLC</b>的時間同步](https://file1.elecfans.com/web2/M00/8F/57/wKgZomTMoiSAaxZJAAARyKjdhhk522.jpg)
使用鋇錸BL102網(wǎng)關(guān)連接西門子S7-1200PLC接入mosquitto服務器方法
![使用鋇錸BL102網(wǎng)關(guān)連接<b class='flag-5'>西門子</b><b class='flag-5'>S7-1200PLC</b>接入mosquitto服務器方法](https://file.elecfans.com/web2/M00/3C/87/pYYBAGJT_6GAAUKCAAH8oQkM88k185.png)
評論