要求
塊接口已打開。
操作步驟
要聲明 STRUCT 數(shù)據(jù)類型的變量,請按以下步驟操作:
在塊接口中,選擇需聲明的部分。 在“名稱”(Name) 列中,輸入變量的名稱。 在“數(shù)據(jù)類型”列中輸入“Struct”。輸入時系統(tǒng)將提供自動完成功能。 在新變量后將插入空的縮進行。 在第一個空行中插入第一個結構元素。 在該元素后會再插入一個空行。 選擇結構元素的數(shù)據(jù)類型。 可選:更改在塊接口其它列中顯示的結構元素的屬性。 對于所有其它結構元素,重復執(zhí)行步驟 4 到 6。 不必顯式完成該結構。結構會以輸入的最后一個元素結束。 要在結構后插入新變量,請在結構結尾后留一個空行,然后在第二個空行中啟動新變量。 |
結果
創(chuàng)建數(shù)據(jù)類型 STRUCT 的變量。
說明 S7-1500:一個數(shù)據(jù)塊中最多有 252 個結構 一個數(shù)據(jù)塊中最多允許有 252 個結構。如果需要更多結構,則必須重新構造自己的程序。例如,可以在多個全局數(shù)據(jù)塊中創(chuàng)建結構。 |
TRUCT 聲明
STRUCT 數(shù)據(jù)類型是指一種元素數(shù)量固定但數(shù)據(jù)類型不同的數(shù)據(jù)結構。
也可以基于 PLC 數(shù)據(jù)類型 (UDT) 創(chuàng)建結構。為此,需將 PLC 數(shù)據(jù)類型指定為一個結構化數(shù)據(jù)類型。小系統(tǒng)將通過工具提示,顯示該 PLC 數(shù)據(jù)類型的各個元素。
語法
聲明 STRUCT 所用的語法如下:
聲明 | 語法 | 示例 |
---|---|---|
STRUCT |
<名稱> : Struct <元素名稱> : <數(shù)據(jù)類型> [:= <值>]; <元素名稱> : <數(shù)據(jù)類型> [:= <值>]; ... END_Struct := (<初始化列表>); |
myStruct : Struct mem_1 : Int; mem_2 : Int; mem_3 : BOOL; END_Struct := (6,0, TRUE) ; |
基于 PLC 數(shù)據(jù)類型 (UDT) 的 STRUCT |
<名稱> : " |
myStruct : "myType" := (6,0, TRUE); |
說明 S7-1500:一個數(shù)據(jù)塊中最多有 252 個結構 S7-1500 系列 CPU 中的一個數(shù)據(jù)塊中最多允許有 252 個結構。如果需要更多結構,則必須重新構造自己的程序。例如,可以在多個全局數(shù)據(jù)塊中創(chuàng)建結構。 |
STRUCT 的初始化
STRUCT 初始化為可選操作。進行初始化時,可在變量聲明后直接跟隨一個值,也可使用初始化列表。
初始化列表位于關鍵字 END_STRUCT 之后,包含在一個括號內并通過 := 進行賦值。如果該結構中還包含下級結構,則可通過括號嵌套進行初始化。如果這兩種初始化方式均未采用,則可使用初始化列表中的值。
初始化列表使用的語法如下所示:
聲明 | 語法 | 示例 | 注釋 |
---|---|---|---|
STRUCT 的初始化 |
<名稱> : Struct <元素名稱> : <數(shù)據(jù)類型> [:= <值>]; ... END_Struct |
myStruct : Struct mem_1 : Int := 1; mem_2 : Int := 2; mem_3 : BOOL := FALSE End_Struct |
該結構中的元素將進行如下初始化: // mem_1 := 1 // mem_2 := 2 // mem_3 := FALSE |
STRUC 的初始化列表 | := (<值>,<值>,<值>... ) |
myStruct : Struct mem_1 : Int; mem_2 : Int; mem_3 : BOOL End_Struct:=(2,0,TRUE); |
該結構中的元素將進行如下初始化: // mem_1 := 2 // mem_2 := 0 // mem_3 := TRUE |
嵌套 STRUC 的初始化列表 | := (<值>,(<值>,<值>... )) |
myStruct : Struct mem_1 : Int; mem_2 : Int; mem_3 : Struct mem_4 : BOOL; mem_5 : BOOL; End_Struct; End_Struct:=(2,0, (TRUE,TRUE)); |
該結構中的元素將進行如下初始化: // mem_1 := 2 // mem_2 := 0 // mem_4 := TRUE // mem_5 := TRUE |
STRUC 的初始化列表(帶元素命名規(guī)范) | := (<元素名稱> := <值>), (<元素名稱> := <值>)... |
myStruct : Struct mem_1 : Int; mem_2 : Int; End_Struct:=(mem_2:=55); |
該結構中的元素將進行如下初始化: // mem_2 := 55 |
PLC 數(shù)據(jù)類型 (UDT) 的初始化列表 | := (<值>,<值>,<值>... ) | myStruct : "myType" := (2,0,TRUE); |
該結構中的元素將進行如下初始化: // mem_1 := 2 // mem_2 := 0 // mem_3 := TRUE |
嵌套 PLC 數(shù)據(jù)類型 (UDT) 的初始化列表 | := (<值>,(<值>,<值>... )) | myStruct : "myType" := (2,0,(TRUE,TRUE); |
該結構中的元素將進行如下初始化: // mem_1 := 2 // mem_2 := 0 // mem_3 := TRUE // mem_4 := TRUE |
PLC 數(shù)據(jù)類型 (UDT) 的初始化列表(帶元素命名規(guī)范) | := (<元素名稱> := <值>), (<元素名稱> := <值>)... | myStruct : "myType" := (mem_1:=22,mem_2:=55); |
該結構中的元素將進行如下初始化: // mem_1 := 22 // mem_2 := 55 |
審核編輯:湯梓紅
-
plc
+關注
關注
5016文章
13387瀏覽量
465405 -
西門子
+關注
關注
95文章
3062瀏覽量
116447 -
數(shù)據(jù)類型
+關注
關注
0文章
236瀏覽量
13663 -
Struct
+關注
關注
0文章
31瀏覽量
10902
原文標題:西門子博途:聲明 STRUCT 數(shù)據(jù)類型的變量
文章出處:【微信號:gh_a8b121171b08,微信公眾號:機器人及PLC自動化應用】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
相關推薦
Verilog 變量聲明與數(shù)據(jù)類型二
Verilog 變量聲明與數(shù)據(jù)類型一
西門子plc數(shù)據(jù)類型_西門子plc通訊方式

西門子PLC模擬量輸入輸出相關數(shù)據(jù)類型轉換

重視變量的數(shù)據(jù)類型

西門子博途F型PLC數(shù)據(jù)類型與標準PLC數(shù)據(jù)類型的差別
Struct結構數(shù)據(jù)類型
結構數(shù)據(jù)類型(Struct)及應用案例
結構數(shù)據(jù)類型Struct介紹
西門子博途中的SCL關系表達式
西門子博途中DB_ANY數(shù)據(jù)類型的使用

ARRAY 數(shù)據(jù)類型的變量
西門子博途有關STRUCT的基本信息

西門子博途:使用PLC數(shù)據(jù)類型 (UDT)

西門子PLC UDT數(shù)據(jù)類型的使用方法

評論