回收西門子模塊6ES75521AA000AB0 回收西門子模塊6ES75521AA000AB0
一個數組將同種數據類型組合成整體,但不能建立數組的數組。圖5.4表示一個二維 整數數組。數組的符號名是“Op_temps”,用符號名加下標可訪問數組中的數據。以圖5.4為例,*個整數是Op_temps[1,1],第三個為Op_temps[l,3],第四個為Op_temps[2,1],第六個為Op_temps[2,3]。
1) 建立數組
在數據塊或變量聲明表中可定義數組。在聲明數組時,首先給數組命名,接著使用關鍵字(ARRAY),然后在方括號中給出數組的大小及維數。可以定義多達6維的數組,并用下標來標識數組的大小。在方括號中放下標,各維之間用逗號隔開,每一維的首尾之間用雙點隔開。一個下標可以為任何一個整數值(范圍:-32 768~+32 767),并包括負數。如用ARRAY[1‥3, 1‥2, 1‥3, -2‥3, 30‥32, 1‥4]來定義變量Op_temps為6維數組。該數組的*個整數為Op_temps[1, 1, 1, -2, 30, 1];后一個為Op_temps[3, 2, 3, 3, 32, 4]。圖5.5顯示了建立名字為Heat_2×3的二維數組(與圖5.4中的數組相似)。
2) 賦初始值
在建立數組時,STEP 7允許以兩種方法給數組的元素賦初始值。對圖5.5中的數組,可以為6個元素賦初始值:17,23,-45,556,3342,0;若初始值中有順序相同的元素,寫法可以簡化,如要數組的頭兩個元素設特定數值,其余4個為10,則可簡寫為17,23,4(10),其中4為重復系數,10為要重復的數值。
3) 訪問數組
利用數組中元素的下標可以訪問數組數據,這時數據塊、數組符號名及下標一起 使用。如圖5.5中聲明的數組在DB20(符號名:MOTOR)的*個字節處開始,用以下地址訪問數組中的第二個元素:
MOTOR. Heat_2×3[1,2]
4) 利用數組傳遞參數
將數組作為參數傳遞時,要求形式參數和實際參數必須有同樣的數據組織結構、相同 的數據類型,并按相同的順序排列。
2. 構造
構造將不同數據類型組合成一個整體,見圖5.6。構造的元素可以是任何基本數據類型或復式數據類型,有數組或構造元素的構造能嵌套8層。因此,STEP 7允許用戶將過程中的各種關聯數據統一組織在一個構造中,也為統一處理不同類型數據或參數提供了可能性
1) 建立構造
構造(STRUCT)只能在數據塊或變量聲明表中定義。圖5.7所示為由整數(存放數量)、字節(存放原始數據)、字符(存放控制碼)、浮點數(存放溫度)、布爾數(完成標志信號)組成的構造。該構造的名稱為Stack_1。
2) 賦初始值
按每個元素的類型和名稱給構造的每個元素賦初始值。并將其寫入圖5.8中Initial Value(初始值欄)的相應行中。例如,可以分配如下初始值:
Amount=0
Original_data=B#l6#0
Control_code=“Z”
Temperature=98.6
End:=FALSE
3) 訪問構造
(1) 用符號地址訪問:如MOTO.Stack_1.Temperature,其中,MOTO為構造所在數據塊DB20的符號名。
(2) 用物理地址訪問:如Stack_l從DB20的字節0開始存放,Amount的物理地址是DB20.DBW0,Temperature的地址為DB20.DBD4。
4) 利用構造傳遞參數
構造可以作為參數來傳遞。將構造作為參數傳遞時,要求形式參數和實際參數必須有同樣的數據組織結構、相同的數據類型,并按相同的順序排列。