S7-1200 使用 Slice 方式對(duì)變量進(jìn)行尋址
可以選擇包含所聲明變量的特定地址區(qū)域,可以訪問寬為 1 位、8 位、16 位或 32 位的區(qū)域,這種訪問類型稱之為“片段訪問”(Slice access)。
通過 slice(片段訪問)方式,可以選擇所聲明變量中的特定尋址區(qū)域;可以實(shí)現(xiàn)從單個(gè)位到變量級(jí)別的符號(hào)訪問;片段訪問不能尋址常量。
slice 方式支持這2種方式的塊:可標(biāo)準(zhǔn)訪問的塊、可優(yōu)化訪問的塊。
1. 語法表達(dá)
下列語法用于尋址:
1.
2.
3.
4.
語法說明
部分 | 說明 |
|
訪問的變量標(biāo)識(shí)。 |
x b w d |
訪問寬度為“位(1 位)”的標(biāo)識(shí) 訪問寬度為“字節(jié)(8 位)”的標(biāo)識(shí) 訪問寬度為“字(16 位)”的標(biāo)識(shí) 訪問寬度為“雙字(32 位)”的標(biāo)識(shí) |
|
待訪問 |
|
待訪問 |
|
訪問的 |
|
訪問的 |
通常針對(duì)Byte、Word等數(shù)據(jù)類型的變量進(jìn)行片段訪問,如圖1所示,此外也可以對(duì) INT、DINT 等整數(shù)數(shù)據(jù)類型的變量進(jìn)行片段訪問。
圖 1 片段訪問結(jié)構(gòu)
2. 使用說明
1. 使用 DB 塊變量進(jìn)行 Slice 訪問
創(chuàng)建一個(gè) S7-1200 的項(xiàng)目,在程序塊中新建一個(gè) DB 塊(優(yōu)化的塊訪問),創(chuàng)建一個(gè)變量,數(shù)據(jù)類型為 DWord,可以看到該變量沒有絕對(duì)地址,如圖 2 所示。
圖 2 創(chuàng)建 DB 塊變量
在程序段 1 中插入常開和賦值指令,常開指令填寫地址“DB1.Static_1.X0”,賦值指令填寫地址“DB1.Static_1.X1”,其中 X0 和 X1 分別表示變量 Static_1 的第 0 位和第 1 位,如圖 3 所示。
圖 3 對(duì) DB 塊變量的位進(jìn)行 Slice 訪問
在程序段 2 中插入 MOVE 指令,IN 管腳填寫地址“DB1.Static_1.B0”,OUT 管腳填寫地址“DB1.Static_1.B1”,其中 X0 和 X1 分別表示變量 Static_1 的第 0 字節(jié)和第 1 字節(jié),如圖 4 所示。
圖 4 對(duì) DB 塊變量的字節(jié)進(jìn)行 Slice 訪問
依次類推,對(duì)字訪問,就是填寫地址“DB1.Static_1.W0”和“DB1.Static_1.W1”。
2. FB、FC 塊接口變量的 Slice 訪問
創(chuàng)建程序塊(本例創(chuàng)建 FC 塊,優(yōu)化的塊訪問),在 Input 和 Output 分別創(chuàng)建變量“Input_1”和“Output_1”,數(shù)據(jù)類型分別是 DInt 和 Dword,可以看到這兩個(gè)變量沒有絕對(duì)地址,如圖 5 所示。
圖 5 創(chuàng)建 FC 塊接口變量
程序段 1,常開指令填寫地址“Input_1.X0”,賦值指令填寫地址“Output_1.X0”;程序段2,MOVE 指令的 IN 管腳填寫地址“Input_1.W0”,OUT 管腳填寫地址“Output_1.W0”。最后如圖 6 所示。
圖 6 對(duì) FC 接口變量進(jìn)行 Slice 訪問
審核編輯 :李倩
-
變量
+關(guān)注
關(guān)注
0文章
613瀏覽量
28329 -
S7-1200
+關(guān)注
關(guān)注
11文章
331瀏覽量
17911
原文標(biāo)題:S7-1200 使用 Slice 方式對(duì)變量進(jìn)行尋址
文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論