西門子plc的程序結構及子程序如何調用?
隨著西門子plc在工業行業中廣泛應用,西門子plc子程序調用在編程過程中最常常見的手段,今天小編給給大家介紹一下西門子plc的程序結構及子程序調用在編程過程中的使用方法。
所謂的西門子PLC程序結構是構成PLC程序的各種網絡(網絡)或“功能程序段”。 PLC內的組織和管理形式。PLC控制系統是否復雜,都是使用最基本的指令組合。
設計者可以根據控制對象的各個部分的不同要求,通過使用基本指令,創建相應的程序網絡(網絡)或由多個網絡組成的簡單“功能塊”。在此基礎上,只要這些程序網絡或功能程序段按照S7程序指定的格式按照控制系統的動作要求進行排列和組合,就可以形成完整的PLC程序。
西門子plc程序結構與子程序調用方法:
1. 西門子plcS7-200的程序結構 過程映像輸入/輸出,存儲器V,內部存儲器位M,時間定時器T,計數器C等屬于全局變量。 S7-200的程序組織單元(POU)包括主程序,子程序和中斷程序。每個POU都有64字節局部變量,局部變量只能在它所在的POU中使用。相反,全局變量可用于每個POU。 以下是子例程可以使用的局部變量:
西門子plc子程序調用TEMP(臨時變量)是臨時存儲在本地數據區域中的變量。僅在執行POU時,才使用定義的臨時變量。執行POU后,不再保存臨時變量的值。IN是由調用它的POU提供的輸入參數。OUT是返回給調用它的POU的輸出參數(子程序的執行結果)。
西門子plc子程序調用IN_OUT是一個input_output參數,西門子PLC編程軟件初始值由調用它的POU傳送到子程序,并將子程序的執行結果返回給使用相同變量調用它的POU。 主程序和中斷程序的局部變量是TEMP。 具有輸入,輸出參數和局部變量的子程序易于實現結構化編程。
2. 通過程序之間的通話。這就像使用數字集成電路芯片來形成復雜的數字電路。 如果子例程沒有輸入和輸出參數,則它與調用它的程序之間沒有明確的接口,并且很難實現結構化編程。 如果子例程中沒有局部變量,則它只能通過調用它的程序與全局變量交換數據。只能在子程序中使用全局變量。
將子例程和中斷移植到其他項目時,需要重新排列它們使用的全局變量,以確保沒有地址沖突。當程序非常復雜時,有許多子程序和中斷程序,重新分配地址的工作量非常大。 如果子例程和中斷例程具有局部變量,并且它們僅在內部使用局部變量,則它們不使用全局變量。由于與其他POU沒有地址沖突,因此您可以將子例程遷移到其他項目而不進行任何更改。
3. S7-300/400的功能與S7-200的功能基本相同。S7-300/200都有輸入,輸出參數和臨時變量,并且函數的本地數據中的返回值實際上屬于輸出參數。它們沒有專用的內存區域,臨時變量中的數據是根據調用程序執行結束而定的。 全局變量可用于保存函數執行完畢后需要保存的數據,但會影響函數的可移植性。
4.西門子plc子程序調用功能塊是由用戶用其自己的專用存儲區域(即,背景數據塊)寫入的程序塊。功能塊的輸入,輸出參數和靜態變量存儲在指定的實例數據塊中,臨時變量存儲在本地數據堆棧中。程序每次調用FB背景功能塊時,都會指定實例數據塊。執行功能塊后,后臺數據塊中的數據不會丟失,但本地數據堆棧中的數據不會丟失保存。 S7-300/400的共享數據塊可用于所有邏輯塊。
以上就是小編為大家介紹西門子plc子程序調用以及結構說明,希望對大家在編程過程中有所幫助,如果有西門子plc編程方面的疑問,可以聯系我們的在線客服或者熱線電話咨詢!我們為客戶提供量身定制的自動化解決方案,是專業的自動化控制系統集成服務商。
- 上一篇:英威騰變頻器在污水處理方面的應用
- 下一篇:施耐德變頻器的分類和用途
標題:西門子plc的程序結構及子程序如何調用? 地址:http://m.511997.cn/hangye/3380.html