STEP 7 Struct是什么數(shù)據(jù)類型
劉玉蓉
發(fā)布于2014-11-03 17:17
1
0
標(biāo)簽:
請(qǐng)問 STEP 7 Struct是什么數(shù)據(jù)類型
在什么樣的情況下需要用到 Struct 數(shù)據(jù)類型!!
佳答案
Struct(結(jié)構(gòu)性類型)是由不同數(shù)據(jù)類型組成的、屬于復(fù)合型數(shù)據(jù)類型,它是用來定義一組相關(guān)的數(shù)據(jù),其長(zhǎng)度由用戶定義,它與數(shù)組(Array)類型相反(ARRAY是由相同類型的數(shù)據(jù)組成的數(shù)組)。
許多關(guān)于結(jié)構(gòu)類型的書籍中提到的關(guān)于電機(jī)控制系統(tǒng)中,把一個(gè)電機(jī)所有控制元素,如運(yùn)行速度、額度電流、起動(dòng)電流和運(yùn)行方向等作為參數(shù)或邏輯塊的局部變量,并且在全局?jǐn)?shù)據(jù)塊中聲明,這樣利用它可以結(jié)構(gòu)化大量的數(shù)據(jù)并且可以用符號(hào)進(jìn)行處理,由于訪問結(jié)構(gòu)的元素包含結(jié)構(gòu)的名稱,使程序更容易讀,指令編寫更清晰。
如電機(jī)的一組不同類型的數(shù)據(jù)(稱為元素)組成的結(jié)構(gòu)命名為Motor_Data,并且放在共享數(shù)據(jù)塊DB1中,為了用符號(hào)訪問結(jié)構(gòu)中的一個(gè)元素,需要給數(shù)據(jù)塊分配一個(gè)符號(hào)名,如Drive_1. 結(jié)構(gòu)的關(guān)鍵字是“STRUCT“,結(jié)構(gòu)的結(jié)束用END_STRUCT. 這樣在打開數(shù)據(jù)塊DB1(符號(hào)名Drive_1),可以看到上面變量聲明表為:
Address(地址) Name(名稱) Type(類型) Initial Value(初始值)
0.0 Struct
0.0 Motor_Data(電機(jī)數(shù)據(jù)) Struct
0.0 Operating_speed(運(yùn)行速度) INT
2.0 Rated_current(額定電流) REAL
6.0 Start_current (起動(dòng)電流) REAL
10.0 Max_temperature (大溫度)REAL
14.0 Turning_direction (轉(zhuǎn)動(dòng)方向)BOOL
=16.0 END_STRUCT
=16.0 END_STRUCT
如果訪問上述結(jié)構(gòu)中的某個(gè)元素,如Rated_current(額度電流),可以直接用下列指令:
L “Drive_1”.Motor_data.Rated_current
其中,“Drive_1”是數(shù)據(jù)塊的符號(hào)名,該數(shù)據(jù)塊包含結(jié)構(gòu)、結(jié)構(gòu)名稱(用點(diǎn)分割)在數(shù)據(jù)塊的后面。結(jié)構(gòu)的元素名(用點(diǎn)分割)跟在結(jié)構(gòu)名的后面。