S7-300 CPU 數(shù)據(jù)塊
數(shù)據(jù)塊(DB)用來分類存儲設(shè)備或生產(chǎn)線中變量的值,數(shù)據(jù)塊也是用來實(shí)現(xiàn)各邏輯塊之間的數(shù)據(jù)交換、數(shù)據(jù)傳遞和共享數(shù)據(jù)的重要途徑。數(shù)據(jù)塊豐富的數(shù)據(jù)結(jié)構(gòu)便于提高程序的執(zhí)行效率。與邏輯塊不同,數(shù)據(jù)塊只有變量聲明部分,沒有指令部分。不同型號CPU允許建立數(shù)據(jù)塊的塊數(shù)和每個數(shù)據(jù)塊可以占用的最大字節(jié)數(shù)均不同,具體的參數(shù)可以查看CPU的技術(shù)規(guī)范手冊。
數(shù)據(jù)塊分為共享數(shù)據(jù)塊和背景數(shù)據(jù)塊兩種。共享數(shù)據(jù)塊又稱全局?jǐn)?shù)據(jù)塊,它不屬于任何邏輯塊。背景數(shù)據(jù)塊是專門指定給某個功能塊(FB)或者系統(tǒng)功能塊(SFB)使用的數(shù)據(jù)塊,它是FB或SFB運(yùn)行時的工作存儲區(qū)。
數(shù)據(jù)塊初始值與實(shí)際值(STEP 7)
在共享數(shù)據(jù)塊的變量聲明表中可以定義變量的名稱、數(shù)據(jù)類型、注釋和變量初始值。
初始值為純粹的組態(tài)值,當(dāng)由UDT生成數(shù)據(jù)塊或在全局?jǐn)?shù)據(jù)塊中生成新變量時,組態(tài)的初始值被用作為實(shí)際值。可以通過菜單命令 “View > Data view” 來查看實(shí)際值。
初始值對于數(shù)據(jù)塊或新聲明的變量數(shù)據(jù)塊來說,組態(tài)的有效次數(shù)僅為一次。如果變量已經(jīng)存在,實(shí)際值將不會隨著初始值的變化而發(fā)生改變。
對于CPU來說,生效的數(shù)據(jù)為實(shí)際值,初始值雖也可以下載到CPU中并可在線監(jiān)控,但不會被CPU采用。
以下方法可以將初始值傳送給 CPU 作為實(shí)際值:
圖1 變量視圖
圖2 切換到數(shù)據(jù)視圖
圖3 執(zhí)行初始化DB塊
圖4 是否使用初始值覆蓋實(shí)際值
圖5 執(zhí)行初始化數(shù)據(jù)結(jié)果
3. 最后將數(shù)據(jù)塊下載至CPU中,初始值就會替代實(shí)際值在CPU中生效。
注意:
在共享數(shù)據(jù)塊的聲明視圖(Declaration view)中,用戶可以添加或者刪除DB變量,而在數(shù)據(jù)視圖中(Data view)中,用戶可以查看變量實(shí)際值,但不可以添加或者刪除DB變量。
而在STEP 7中,如需裝載實(shí)際值到初始值中,沒有與之相關(guān)的菜單命令,可以通過如下操作來實(shí)現(xiàn):
STEP 7中,如何將數(shù)據(jù)塊的實(shí)際值保存為初始值
數(shù)據(jù)塊初始值與實(shí)際值(TIA Protal)
在TIA Protal中,數(shù)據(jù)塊的使用和STEP 7基本一致,并且建立數(shù)據(jù)塊也可以設(shè)置初始值,但是下載數(shù)據(jù)塊時可以選擇重新初始化使初始值生效,也可以選擇無操作,則數(shù)據(jù)塊的實(shí)際值會生效。
圖6 下載時數(shù)據(jù)塊初始化
TIA Protal中監(jiān)視數(shù)據(jù)塊,可以使用快照功能把數(shù)據(jù)塊的實(shí)際值復(fù)制到初始值中
圖7 使用快照
執(zhí)行將快照值復(fù)制到起始值中功能,軟件會提示是否覆蓋所選塊的所有值,點(diǎn)擊確定。
圖8 復(fù)制快照值到起始值
執(zhí)行完將快照值復(fù)制到起始值功能,快照值會復(fù)制到起始值中,結(jié)果如下:
圖9 執(zhí)行快照復(fù)制結(jié)果
數(shù)據(jù)塊屬性
在建立DB塊時,有時需要設(shè)置DB塊屬性:DB在PLC中寫保護(hù) 、未鏈接和非掉電保持,如下圖所示:
圖10 STEP 7 中DB屬性的設(shè)置
圖11 TIA Protal V15 中DB屬性的設(shè)置
數(shù)據(jù)塊各設(shè)置的含義
1. 勾選DB在PLC中寫保護(hù)
2. 勾選未鏈接
3. 不勾選非掉電保持
圖12 315-2PN/DP保持性存儲器的使用情況
數(shù)據(jù)塊的屬性對于數(shù)據(jù)塊的內(nèi)存占用影響
數(shù)據(jù)塊屬性/內(nèi)存區(qū)域 | 裝載存儲器(MMC) | 工作存儲器(CPU) | 保持性存儲器(CPU) |
非掉電保持不勾選(系統(tǒng)默認(rèn)) | 是 | 否 | 是 |
非掉電保持勾選 | 是 | 是 | 否 |
未鏈接不勾選(系統(tǒng)默認(rèn)) | 是 | 是 | 否 |
未鏈接勾選 | 是 | 否 | 否 |
1. 打開DB數(shù)據(jù)塊,菜單欄切換到聲明視圖 “View > Declaration view ”,在“Initial value” 欄輸入新的初始值;
2. 菜單欄切換到數(shù)據(jù)視圖“View > Data view ”,然后,執(zhí)行菜單命令 “Edit > Initialize Data Block”將所有“Intial value”欄的數(shù)值傳送至“Actual value”欄。
可以給數(shù)據(jù)塊分配寫保護(hù),此時不能在程序執(zhí)行期間覆蓋它們。
具有"未鏈接"屬性的數(shù)據(jù)塊僅存儲在裝載存儲器中。
這種塊不占用工作存儲器中的空間,因此可以節(jié)省CPU的工作存儲器空間,并且不存在與工作存儲區(qū)數(shù)據(jù)一致的問題。
該地址區(qū)域不能由工作存儲區(qū)直接訪問,需要使用SFC83或者SFC84把這類DB的內(nèi)容傳送到工作存儲區(qū)或者由工作存儲區(qū)傳送到對應(yīng)DB。
使用SFC83和SFC84讀寫MMC卡中DB數(shù)據(jù)
本選項(xiàng)允許用戶定義數(shù)據(jù)塊的斷電保持特性。
不勾選代表此類數(shù)據(jù)塊具有斷電保持功能。
每次斷電后工作存儲器中數(shù)據(jù)塊的當(dāng)前值保持到保持寄存器中。
用于保持性數(shù)據(jù)塊的非易失性存儲器的最大大小與CPU的具體型號有關(guān)系。下圖為CPU 315-2PN/DP保持性存儲器的使用情況。
-
cpu
+關(guān)注
關(guān)注
68文章
10854瀏覽量
211585 -
數(shù)據(jù)
+關(guān)注
關(guān)注
8文章
7002瀏覽量
88943 -
step
+關(guān)注
關(guān)注
0文章
42瀏覽量
20463
原文標(biāo)題:S7-300 CPU 數(shù)據(jù)塊
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機(jī)器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論