吳守宇


摘 要:隨著制造業的發展,設備自動化程度越來越高,自動化生產越來越被大家所青睞,應用越來越廣,自動化設備的優點是依靠編程控制,實現工藝的自動化生產,本文主要介紹西門子PLC編程技術,幫助從業人員快速掌握PLC編程。
關鍵詞:STEP 7編程語言 ;數據類型;尋址方式
0? 前言
早期的PLC是用來替代繼電器、接觸器控制的。它主要用于順序控制,只能實現邏輯運算。因此,被稱為可編程邏輯控制器(Programmable logic controller,略寫 PLC )
隨著電子技術、計算機技術的迅速發展,可編程控制器的功能已遠遠超出了順序控制的范圍。被稱為可編程控制器(Programmable controller,略寫PC)。為區別于Personal Computer (PC),故沿用PLC 這個略寫。
1? STEP 7編程語言
1.1? STL(語句表)
由STL(語句表)是一種類似于計算機匯編語言的一種文本編程語言,由多條語句組成一個程序段。語句表可供習慣匯編語言的用戶使用,在運行時間和要求的存儲空間方面最優。在設計通信、數學運算等高級應用程序時建議使用語句表。
1.2 LAD(梯形圖)
LAD(梯形圖)是一種圖形語言,比較形象直觀,容易掌握,用得最多,堪稱用戶第一編程語言。梯形圖與繼電器控制電路圖的表達方式極為相似,適合于熟悉繼電器控制電路的用戶使用,特別適用于數字量邏輯控制。
1.3 GRAPH(順序控制)
GRAPH類似于解決問題的流程圖,適用于順序控制的編程。利用S7-GRAPH編程語言,可以清楚快速地組織和編寫S7 PLC系統的順序控制程序。它根據功能將控制任務分解為若干步,其順序用圖形方式顯示出來并且可形成圖形和文本方式的文件。
1.4 SCL(結構化控制語言)
S7-SCL(Structured Control Language:結構控制語言)是一種類似于PASCAL的高級文本編輯語言,用于S7-300/400和C7的編程,可以簡化數學計算、數據管理和組織工作。S7-SCL具有PLC公開的基本標準認證,符合IEC 1131-3 (結構化文本)標準。
2? 數據類型
2.1? 基本數據類型
2.2復雜數據類型
2.2.1數組(ARRAY)
數組是由一組同一類型的數據組合在一起而形成的復雜數據類型。數組的維數最大可以到6維;數組中的元素可以是基本數據類型或者復雜數據類型中的任一數據類型(Array類型除外,即數組類型不可以嵌套);數組中每一維的下標取值范圍是-32768~32767,要求下標的下限必須小于下標的上限。
2.2.2結構(STRUCT)
結構是由一組不同類型(結構的元素可以是基本的或復雜的數據類型)的數據組合在一起而形成的復雜數據類型。
2.2.3字符串(STRING)
字符串是最多有254個字符(CHAR)的一維數組,最大長度為256個字節(其中前兩個字節用來存儲字符串的長度信息)。字符串常量用單引號括起來。
2.2.4日期和時間(DATE_AND_TIME)
用于存儲年、月、日、時、分、秒、毫秒和星期,占用8個字節,用BCD格式保存。星期天的代碼為1,1~6的代碼為2~7。
2.2.5用戶定義的數據類型(UDT)
用戶定義數據類型表示自定義的結構,存放在UDT塊中(UDT1~UDT65535),在另一個數據類型中作為一個數據類型“模板”。當輸入數據塊時,如果需要輸入幾個相同的結構,利用UDT可以節省輸入時間。
2.2.6功能塊類型(FB、SFB)
這種數據類型僅可以在FB的靜態變量區定義,用于實現多背景DB。
3 尋址方式
所謂尋址方式就是指令執行時獲取操作數的方式,可以直接或間接方式給出操作數。
3.1立即尋址
立即尋址是對常數或常量的尋址方式,其特點是操作數直接表示在指令中,或以惟一形式隱含在指令中。其中“//”后面的內容為指令的注釋部分,對指令沒有任何影響。
3.2存儲器直接尋址
存儲器直接尋址,簡稱直接尋址。該尋址方式在指令中直接給出操作數的存儲單元地址。存儲單元地址可用符號地址(如SB1、KM等)或絕對地址(如I0.0、Q4.1等)。
3.3存儲器間接尋址
存儲器間接尋址,簡稱間接尋址。該尋址方式在指令中以存儲器的形式給出操作數所在存儲器單元的地址,也就是說該存儲器的內容是操作數所在存儲器單元的地址。該存儲器一般稱為地址指針,在指令中需寫在方括號“[]”內。地址指針可以是字或雙字,對于地址范圍小于65535的存儲器可以用字指針;對于其他存儲器則要使用雙字指針。
3.4寄存器間接尋址
寄存器間接尋址,簡稱寄存器尋址。該尋址方式在指令中通過地址寄存器和偏移量間接獲取操作數,其中的地址寄存器及偏移量必須寫在方括號“[]”內。在S7-300中有兩個地址寄存器AR1和AR2,用地址寄存器的內容加上偏移量形成地址指針,并指向操作數所在的存儲器單元。地址寄存器的地址指針有兩種格式,其長度均為雙字,指針格式如圖所示。
第一種地址指針格式適用于在確定的存儲區內尋址,即
區內寄存器間接尋址。
第二種地址指針格式適用于區域間寄存器間接尋址。
第一種地址指針格式包括被尋址數據所在存儲單元地址的字節編號和位編號,至于對哪個存儲區尋址,則必須在指令中明確給出。這種格式適用于在確定的存儲區內尋址,即區內寄存器間接尋址。
第二種地址指針格式包含了數據所在存儲區的說明位(存儲區域標識位),可通過改變標識位實現跨區域尋址,區域標識由位26~24確定。這種指針格式適用于區域間寄存器間接尋址。
4 總結
西門子PLC編程時需要注意事項:
a)選用自己最熟悉的編程語言
b)數據類型填寫要和實際對應,避免出錯
c)尋址時注意尋址方式書寫格式
d)盡量采用結構化編程或模塊化編程
參考文獻
[1]張鳳珊,電氣控制及可編程控制器,中國輕工業出版社
[2]馬志溪,電氣工程設計,機械工業出版社
[3]? IEC61131標準中的1-4部分