對于S7-1500/1200 PLC,可以選擇包含所聲明變量的特定地址區(qū)域,訪問寬為 1 位、8 位、16 位或 32 位的區(qū)域。將存儲器區(qū)域(如,BYTE 或 WORD)拆分為一個較小的存儲器區(qū)域(如 BOOL),又稱"片段訪問"(Slice access)。
注意:無法使用片段訪問對覆蓋 AT 的結(jié)構(gòu)、常量和變量進行尋址。
以下內(nèi)容使用TIA V17 Pro軟件測試。
1. 使用語法
下列語法用于尋址:
1.
2.
3.
4.
該語法包含以下部分:
部分 | 說明 |
|
訪問的變量 |
X B W D |
訪問寬度為"位(1 位)" 訪問寬度為"字節(jié)(8 位)" 訪問寬度為"字(16 位)" 訪問寬度為"雙字(32 位)" |
|
訪問 |
|
訪問 |
|
訪問的 |
|
訪問的 |
通常針對Byte、Word等數(shù)據(jù)類型的變量進行片段訪問,如圖1所示。也可對 INT、DINT 等整數(shù)數(shù)據(jù)類型的變量進行片段訪問。
圖1. 片段訪問結(jié)構(gòu)
注意:當(dāng)使用SCL編程對INT、DINT 等整數(shù)數(shù)據(jù)類型的變量進行片段訪問時,不能啟用SCL程序塊的IEC檢查,否則提示語法錯誤,如圖2所示。
圖2. 對整數(shù)變量片段訪問的特殊情況
2. 片段訪問使用示例
1. 對 DB 塊變量進行 Slice 訪問(優(yōu)化或非優(yōu)化DB均可)
創(chuàng)建一個 S7-1500 的項目,在程序塊中新建優(yōu)化DB “數(shù)據(jù)塊_1”和非優(yōu)化DB “數(shù)據(jù)塊_2”,并新建DWORD和WORD數(shù)據(jù)類型的變量,如圖 3 所示。
圖3. 創(chuàng)建 DB 塊變量
在程序段 1 簡單編程(程序無實際意義僅為應(yīng)用示例),變量輸入方法:拖拽變量,然后在變量后面輸入“.X0"或".B0",如圖 4 所示。
圖4. 對 DB 塊變量的進行 Slice 訪問
2. FB、FC 塊接口變量的 Slice 訪問
以FB為例,在 Input 和 Output 分別創(chuàng)建變量"Input_1"和"Output_1",數(shù)據(jù)類型為WORD。編程使用方法和DB變量的片段訪問一樣,先拖拽變量然后再輸入“.X0"或".B0",如圖 5 所示。
圖5. 對FB接口變量進行 Slice 訪問
審核編輯:湯梓紅
-
plc
+關(guān)注
關(guān)注
5015文章
13355瀏覽量
464580 -
存儲器
+關(guān)注
關(guān)注
38文章
7522瀏覽量
164128 -
S7-1500
+關(guān)注
關(guān)注
3文章
300瀏覽量
6480
原文標(biāo)題:S7-1500 通過片斷訪問對變量區(qū)域進行尋址
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論