西門子S7-1200/1500系列PLC支持優(yōu)化的塊訪問(Optimized block access),通常理解的是數(shù)據(jù)塊(DB)具有這個功能。
其實除了數(shù)據(jù)塊,組織塊、函數(shù)塊和函數(shù)也都有這個功能。
在博途環(huán)境下新建這四類程序組織單元,其屬性都默認勾選“優(yōu)化的塊訪問”。
今天這篇文章,我們來詳細談?wù)勥@個功能。
1、數(shù)據(jù)塊(DB)
博途環(huán)境下新建數(shù)據(jù)塊,在其屬性中可以看到已勾選“優(yōu)化的塊訪問”,如下圖所示:
優(yōu)化的數(shù)據(jù)塊具有如下一些特點:
①數(shù)據(jù)塊中的變量只能以符號的方式訪問(不支持絕對地址訪問)。比如,某優(yōu)化的數(shù)據(jù)塊名稱為“optDB”,其內(nèi)部有一個start變量,則訪問的語法為:
"optDB".start
注:optDB兩邊的雙引號是自動添加的,表示這是一個全局變量;如果添加的是井號(#),則表示是局部變量;
為了說明標準數(shù)據(jù)塊與優(yōu)化的數(shù)據(jù)塊之間存儲策略的差別,我們來舉個例子。假設(shè)有變量按如下順序存儲:
start:布爾型;
speed:實數(shù)型;
stop:布爾型;
對于標準數(shù)據(jù)塊,使用絕對地址存儲變量(以字節(jié)為單位),第一個布爾型變量占用一個字節(jié)(B0,雖然它實際只使用了其中一位)。
第二個變量為實數(shù),從偶數(shù)地址開始存放,因此其起始地址為B2,占用4個字節(jié)(B2~B5);第三個變量為布爾型,占用一個字節(jié)(B6)。
可見,在這種存儲策略下,這三個變量占用了7個字節(jié)存儲空間。
當然,如果將順序調(diào)整一下,兩個布爾型變量放到一起,會節(jié)省一個字節(jié)的空間,不過這要求編程人員熟悉其存儲策略才行。
在有多種數(shù)據(jù)類型的情況下,人工優(yōu)化存儲往往費神費力,很難達到理想的效果。
而優(yōu)化的數(shù)據(jù)塊幫我們解決了這個問題。它會自動將同類型的變量存儲到一起,從而最大限度的利用存儲空間。兩者的對比如下圖所示:
②優(yōu)化的數(shù)據(jù)塊可以對其中的變量單獨設(shè)置保持屬性,而標準數(shù)據(jù)塊要么全部保持,要么全部取消保持;
③對于S7-1200,優(yōu)化的數(shù)據(jù)塊采取存儲優(yōu)先的策略(由于其數(shù)據(jù)空間相對較小);對于S7-1500,優(yōu)化的數(shù)據(jù)塊采取訪問優(yōu)先的策略(由于其數(shù)據(jù)空間相對較大,為了提高訪問速率);
2、組織塊(OB)
優(yōu)化了啟動信息。
優(yōu)化后的組織塊只有很少幾條啟動信息,比如Startup組織塊優(yōu)化后僅有兩條啟動信息,如下圖所示:
3、函數(shù)塊(FB)
①對其背景數(shù)據(jù)塊進行優(yōu)化,類似數(shù)據(jù)塊的優(yōu)化;
②對復(fù)雜變量可通過符號尋址;
4、函數(shù)(FC)
①優(yōu)化臨時變量的使用,每次塊調(diào)用前會對其進行初始化;
②對復(fù)雜變量可通過符號尋址;
審核編輯:劉清
-
plc
+關(guān)注
關(guān)注
5028文章
13593瀏覽量
470663 -
存儲器
+關(guān)注
關(guān)注
38文章
7611瀏覽量
165875 -
S7-1200
+關(guān)注
關(guān)注
11文章
333瀏覽量
18372 -
S7-1500
+關(guān)注
關(guān)注
3文章
301瀏覽量
6673
原文標題:談?wù)凷7-1200/1500系列PLC的優(yōu)化塊訪問
文章出處:【微信號:方正智芯,微信公眾號:方正智芯】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
西門子plc S7-1200/S7-1500優(yōu)化的DB塊與標準的DB塊整體對比

基于S7-1200的PLC的編程及擴展
WinCC V7.2與S7-1200的PLC通訊

基于WinCC V7.2與S7-1200/1500 PLC通訊步驟介紹

S7-1500系統(tǒng)架構(gòu)及特點

關(guān)于S7-1200或S7-1500 PLC的通信
WinCC與 S7-1200/S7-1500 PLC之間的通信解析
S7-1200 PLC仿真功能
西門子PLC,SIMATIC S7-1200和S7-1500

評論