簡介
接口中包含有塊所用局部變量和局部常量的聲明。這些變量可分為以下兩組:
在程序中調(diào)用時構(gòu)成塊接口的塊參數(shù)。
用于存儲中間結(jié)果的局部數(shù)據(jù)。
變量聲明可用于定義程序中塊的調(diào)用接口,以及塊中需使用的變量/常量名稱和數(shù)據(jù)類型。
函數(shù)塊接口中還定義了分配給函數(shù)塊的背景結(jié)構(gòu)。
塊參數(shù)
下表列出了塊參數(shù)的類型:
類型 | 區(qū)域 | 功能 | 可用于 |
---|---|---|---|
輸入?yún)?shù) | Input | 其值由塊讀取的參數(shù)。 | 函數(shù)、函數(shù)塊和某些類型的組織塊 |
輸出參數(shù) | Output | 其值由塊寫入的參數(shù)。 | 函數(shù)和函數(shù)塊 |
輸入/輸出參數(shù) | InOut | 調(diào)用時由塊讀取其值,執(zhí)行后又由塊寫入其值的參數(shù)。 | 函數(shù)和函數(shù)塊 |
返回值 | 返回 | 返回到調(diào)用塊的值。 | 功能 |
根據(jù)打開塊的類型不同,可能顯示其它的區(qū)域。
局部數(shù)據(jù)
下表列出了局部數(shù)據(jù)的類型:
類型 | 區(qū)域 | 功能 | 可用于 |
---|---|---|---|
臨時局部數(shù)據(jù) | Temp | 用于存儲臨時中間結(jié)果的變量。只保留一個周期的臨時局部數(shù)據(jù)。如果使用臨時局部數(shù)據(jù),則必須確保在要讀取這些值的周期內(nèi)寫入這些值。否則,這些值將為隨機(jī)數(shù)。 |
函數(shù)、函數(shù)塊和組織塊 注: 臨時局部數(shù)據(jù)不顯示在背景數(shù)據(jù)塊中。 |
靜態(tài)局部數(shù)據(jù) | Static | 用于在背景數(shù)據(jù)塊中存儲靜態(tài)中間結(jié)果的變量。靜態(tài)數(shù)據(jù)會一直保留到被覆蓋,這可能在幾個周期之后。在此代碼塊中作為多重實例調(diào)用的塊名稱,也將存儲在靜態(tài)局部數(shù)據(jù)中。 | 函數(shù)塊 |
常量 | 常量 | 在塊中使用且?guī)в新暶鞣柮某A俊?/td> |
函數(shù)、函數(shù)塊和組織塊 注: 局部常量不顯示在背景數(shù)據(jù)塊中。 |
塊接口中的有效數(shù)據(jù)類型
S7-1200 中塊接口的有效數(shù)據(jù)類型
下表列出了接口各區(qū)域可分配的參數(shù)數(shù)據(jù)類型。
區(qū)域 |
標(biāo)準(zhǔn) 數(shù)據(jù)類型 |
ARRAY STRUCT STRING / WSTRING DT |
ARRAY [*] | VOID | VARIANT |
---|---|---|---|---|---|
組織塊 | |||||
Temp | √ | √ | - | - | √ |
常量 | √ | √ (1) (2) | - | - | - |
函數(shù)塊 | |||||
Input | √ | √ | - | - | √ |
Output | √ | √ | - | - | - |
InOut | √ | √ (1) | √ (4) | - | √ |
Static | √ | √ | - | - | - |
Temp | √ | √ | - | - | √ |
常量 | √ | √ (1) (2) | - | - | - |
函數(shù) | |||||
Input | √ | √ (1) | √ (4) | - | √ |
Output | √ | √ (1) | √ (4) | - | √ |
InOut | √ | √ (1) | √ (4) | - | √ |
Temp | √ | √ | - | - | √ |
返回 | √ | √ (3) | - | √ | - |
常量 | √ | √ (1) (2) | - | - | - |
(1) 不能在這些區(qū)域中聲明 STRING 和 WSTRING 的長度。STRING 標(biāo)準(zhǔn)長度通常為 254;WSTRING 標(biāo)準(zhǔn)長度為 16832。不允許聲明 MyString[3] 格式。在這些區(qū)域中,僅允許在具有優(yōu)化訪問權(quán)的塊中聲明 WSTRING。 (2) 不允許使用數(shù)據(jù)類型為 ARRAY 或 STRUCT 的常量。 (3) WSTRING 數(shù)據(jù)類型的函數(shù)值不得超過 1022 個字符。 (4) 固件版本 V4.2 及更高版本中,ARRAY[*] 可用于具有優(yōu)化訪問的塊中。 |
S7-1500 中塊接口的有效數(shù)據(jù)類型
下表列出了接口各區(qū)域可分配的參數(shù)數(shù)據(jù)類型。
區(qū)域 |
標(biāo)準(zhǔn) 數(shù)據(jù)類型 |
ARRAY STRUCT STRING / WSTRING DT |
ARRAY[*] | 參數(shù)類型 | VOID | DB_ANY | POINTER | ANY | VARIANT | REF_TO |
---|---|---|---|---|---|---|---|---|---|---|
組織塊 | ||||||||||
Temp | √ | √ | - | - (4) | - | √ | - | √ (3) | √ | √ |
常量 | √ | √ (1) (5) | - | - | - | - | - | - | - | - |
函數(shù)塊 | ||||||||||
Input | √ | √ | - | √ | - | √ | √ | √ | √ | - |
Output | √ | √ | - | - | - | √ | - | - | - | - |
InOut | √ | √ (1) | √(7)(8) | - (4) | - | √ | √ | √ | √ | - |
Static | √ | √ | - | - | - | √ | - | - | - | - |
Temp | √ | √ | - | - (4) | - | √ | - | √ (3) | √ | √ |
常量 | √ | √ (1)(5) | - | - | - | - | - | - | - | - |
函數(shù) | ||||||||||
Input | √ | √ (1) | √ (7) | √ | - | √ | √ | √ | √ | √ |
Output | √ | √ (1) | √ (7) | - | - | √ | √ | √ | √ | √ |
InOut | √ | √ (1) | √ (7) | - (4) | - | √ | √ | √ | √ | - |
Temp | √ | √ | - | - (4) | - | √ | - | √ (3) | √ | √ |
返回 | √ | √ (6) | - | - | √ | √ | √ | √(2) | - | √ |
常量 | √ | √ (1) (5) | - | - | - | - | - | - | - | - |
(1) 不能在這些區(qū)域中聲明 STRING 和 WSTRING 的長度。STRING 標(biāo)準(zhǔn)長度通常為 254;WSTRING 標(biāo)準(zhǔn)長度為 16832。不允許聲明 MyString[3] 格式。在這些區(qū)域中,僅允許在具有優(yōu)化訪問權(quán)的塊中聲明 WSTRING。 (2) 在 SCL 中,ANY 不允許作為函數(shù)值。 (3) ANY 只能用于“Temp”區(qū)域中的標(biāo)準(zhǔn)訪問塊。 (4) “INSTANCE”參數(shù)類型是“TEMP”和“InOut”區(qū)域中唯一允許出現(xiàn)的例外。 (5) 不允許使用數(shù)據(jù)類型為 ARRAY 或 STRUCT 的常量。 (6) WSTRING 數(shù)據(jù)類型的函數(shù)值不得超過 1022 個字符。 (7) 固件版本 V2.0 及更高版本中,ARRAY[*] 可用于具有優(yōu)化訪問的塊中。 (8) 僅當(dāng)未設(shè)置屬性“在 IDB 中設(shè)置”(Set in IDB) 時,ARRAY[*] 才可用。 |
塊接口的布局
塊接口的布局
下圖顯示了塊接口的結(jié)構(gòu)。具體的列數(shù)和區(qū)域取決于塊類型。
各列的含義
下表列出了各列的含義。可根據(jù)需要顯示或隱藏各列。顯示的列數(shù)取決于 CPU 系列和打開對象的類型。
列 | 說明 |
---|---|
單擊該符號,可將元素拖放到程序中作為操作數(shù)。 | |
名稱 | 元素的名稱。 |
數(shù)據(jù)類型 | 元素的數(shù)據(jù)類型。 |
偏移 |
塊中變量的相對地址。僅標(biāo)準(zhǔn)訪問的塊中,才顯示該列。 注: SIMATIC 系統(tǒng)庫中的許多指令都具有“優(yōu)化塊訪問”屬性,因此不占用任何固定存儲器地址。即使將這些指令用作標(biāo)準(zhǔn)訪問塊中的多重實例,這些指令也不顯示偏移量。 |
默認(rèn)值 |
代碼塊接口中可預(yù)分配給特定變量的值,或局部常量的值。 對于變量,可選擇是否指定默認(rèn)值。如果未指定任何值,則使用指定數(shù)據(jù)類型的預(yù)定義值。例如,BOOL 類型的預(yù)定義值為“false”。 在相應(yīng)的背景數(shù)據(jù)塊中,將變量的默認(rèn)值應(yīng)用為初始值。在背景數(shù)據(jù)塊中,可使用實例特定的起始值對這些值進(jìn)行替換。 而在塊接口中常量通常為聲明的默認(rèn)值。這些常量不顯示在背景數(shù)據(jù)塊中,也無法在此指定實例特定的值。 |
保持性 |
將變量標(biāo)記為具有保持性。 即使在關(guān)斷電源后,保持性變量的值也將保留不變。 該列僅在具有優(yōu)化訪問特性的函數(shù)塊接口中顯示。 |
在 HMI 工程組態(tài)中可見 | 指示 HMI 選擇列表中是否默認(rèn)顯示變量。 |
從 HMI/OPC UA 可訪問 | 指示在運行過程中,HMI/OPC UA 是否可訪問該變量。 |
從 HMI/OPC UA 可寫 | 指示在運行過程中,是否可從 HMI/OPC UA 寫入變量。 |
設(shè)定值 |
將變量標(biāo)記為設(shè)定值。設(shè)定值是指調(diào)試過程中可能需要微調(diào)的值。 該列僅適用于函數(shù)塊的接口中。 |
監(jiān)控 | 指示是否已為該變量的過程診斷創(chuàng)建有監(jiān)視。 |
注釋 | 說明元素的注釋信息。 |
-
接口
+關(guān)注
關(guān)注
33文章
8605瀏覽量
151191 -
函數(shù)
+關(guān)注
關(guān)注
3文章
4331瀏覽量
62630 -
數(shù)據(jù)類型
+關(guān)注
關(guān)注
0文章
236瀏覽量
13624 -
Inout
+關(guān)注
關(guān)注
0文章
4瀏覽量
6189 -
S7-1500
+關(guān)注
關(guān)注
3文章
300瀏覽量
6409
原文標(biāo)題:博途:塊接口概述
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機(jī)器人及PLC自動化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論