摘 要:集成控制策略組態和監控組態功能的新型軟PLC必然是工控組態軟件的發展趨勢。本文在分析現有工控組態軟件的基礎上,提出了新型軟PLC的體系結構設計和實現流程,論述了控制策略組態軟件模塊與監控畫面組態軟件模塊的功能結構以及控制策略組態和監控畫面組態之間的數據連接模型。基于這個數據連接模型和功能結構,開發了基于軟PLC體系的兼具控制策略組態功能和監控畫面組態功能的工控組態軟件。
關鍵詞:組態軟件;嵌入式PLC技術;IEC61131-3;軟PLC
1.引言
PLC(可編程控制器)在工業控制中有著廣泛的應用,然而,目前市場上各公司的PLC都自成體系,其硬件接口和編程環境都互不兼容,即使在PLC中使用最多的梯形圖語言編程上,各公司的語法結構、尋址方式等也并不完全相同。這對PLC技術的升級提升、推廣使用造成了影響。隨著IEC61131-3標準的推出,市場上出現了遵循該編程標準的工業控制產品,這些工控產品有著兼容的輸入輸出接口和符合IEC61131-3標準的編程環境。然而,現有的這些系統只是提供了控制策略編程(采用梯形圖語言、IL指令語言等)部分的組態軟件(編程環境),沒有完善的監控組態的編程環境。市面上通用的組態軟件又只是解決監控組態的問題,在關鍵的控制策略組態上沒有很好的解決方案,僅僅采用純粹的腳本編程方式作為控制功能的補充。因此,集成控制策略組態功能(符合IEC61131-3標準的軟PLC)和監控畫面組態功能的通用組態軟件必然會成為主流發展方向。
在軟PLC軟件的基礎上,設計具有監控組態功能的工控軟件關鍵需要解決軟PLC和監控組態軟件模塊之間的數據交換技術,也即監控組態數據源的驅動問題。本文提出解決這一問題的一種方法,在控制策略組態時,能夠根據策略文件自動產生數據文件,數據包括功輸入輸出端口信息、控制回路的輸出數據、報警數據及故障數據等。基于這個數據文件,采用符合標準的編程方法編寫監控畫面驅動功能塊、報警功能塊、數據記錄功能塊等監控功能。
2.軟件體系結構
2.1 控制策略組態軟件模塊
所謂的組態就是指用直觀(如梯形圖語言)的編程方式,完成控制策略或監控策略程序的生成。控制策略組態軟件是基于IEC61131-3標準的軟PLC,它能夠在傳統PC平臺上,用軟件的方式實現標準硬件PLC的功能。它的體系結構如圖1所示,包含控制策略編輯模塊、調試模塊、編譯模塊、連接模塊、通信模塊、運行虛擬機模塊、數據驅動模塊、I/O接口和設備驅動模塊、仿真模塊、項目管理模塊以及其它的界面管理、幫助信息等組件。
控制策略編輯/調試組件是組態軟件中最基本的功能模塊,它基于IEC61131-3標準為使用者提供標準的編程環境,主要有LD、IL、ST等6種編程語言,其中LD語言采用梯形圖的編程方式完成控制策略的生成。控制策略編輯模塊的輸入信息來自用戶的控制應用編寫,并最終生成專有格式的中間文件給編譯模塊。編譯與連接模塊完成用戶編寫的程序代碼的語法及語義檢查,最終生成獨立于運行環境的目標代碼。通訊模塊在編輯環境與運行環境之間建立信息通道,完成代碼下載、操作命令和硬件配置參數下達以及運行狀態變量讀取等功能。運行虛擬機是整個組態軟件的核心部分,它獨立于控制組態編輯環境,其作用是執行編譯連接產生的目標代碼,完成相應的控制功能。在運行虛擬機執行目標代碼的過程中,不斷地從I/O模塊讀取信息、運算及處理信息以及從I/O模塊輸出信息,從而實現控制功能。仿真模塊可以仿真接口硬件設備,從而在沒有硬件的情況下仿真運行用戶編制的程序,以便縮短開發周期。項目管理模塊的功能是保存用戶編制的控制策略文件、打印文件以及權限管理等。
[align=center]

圖1 控制策略組態軟件體系結構[/align]
2.2 監控組態軟件模塊
在控制系統的控制層、監控層、管理層這三個層面中,監控層不但起到現場的實時監測控制,還起到信息的上傳下達作用。監控組態是指基于控制策略,根據控制流程和控制流程中的中間變量,用直觀的編程方式(如動畫、圖形組合)完成相應的監控畫面、報警信息以及歷史數據存檔等功能。監控組態軟件是實現監控組態功能的軟件編輯環境,它為用戶提供靈活多樣的組態方式和良好的用戶開發界面;其內置的軟件模塊可以方便的實現監控層的各種功能,并能向管理層提供決策數據信息。監控組態軟件的基本體系結構如圖2所示,主要由數據表、圖形組態模塊、實時數據庫組態模塊、項目管理模塊以及圖形運行組件、數據庫運行組件等部分組成。
圖形組態模塊、實時數據庫組態模塊與項目管理模塊組成監控組態軟件的開發環境,圖形運行組件以及數據庫運行組件組成監控組態軟件的運行環境。組態后生成圖形的數據驅動來源于控制策略組態過程中自動生成的數據表,數據表的生成是無縫集成控制策略組態和監控組態的關鍵技術。
圖形組態模塊提供操作界面和流程畫面監控生成功能,是監控組態軟件中的主要編程工具。它依照操作系統的圖形標準,采用面向對象的圖形技術,提供強大的繪圖編輯、動畫連接和腳本工具。在動畫連接的過程中,從數據表中選擇驅動動畫的數據源,通過一系列的用戶數據文件,最終生成圖形目標應用系統供圖形運行環境運行時使用。實時數據庫組態模塊是建立實時數據庫的組態工具,可以定義實時數據庫的結構、數據連接、數據類型及相關的各種參數,其數據的主要來源為控制策略生成時自動產生的數據表。
[align=center]

圖2 監控組態軟件體系結構[/align]
2.3 控制策略組態和監控組態間的數據驅動
在軟PLC軟件的基礎上,設計具有監控組態功能的軟件關鍵需要解決軟PLC和監控組態軟件模塊之間的數據交換和消息傳遞。本文提出解決這一問題的一種方法,在控制策略組態時,能夠根據策略文件自動產生數據文件,數據包括功輸入輸出端口信息、控制回路的輸出數據、報警數據及故障數據等。基于這個數據文件,采用符合標準的編程方法編寫監控畫面驅動功能塊、報警功能塊、數據記錄功能塊等監控功能。
控制策略組態軟件與監控組態軟件的集成,關鍵在于控制策略組態與監控畫面組態之間的數據驅動技術,也即監控組態數據源的生成問題。在控制策略組態的過程中,由梯形圖語言或其它語言編寫的控制策略文件可統一轉換成指令表。數據驅動模塊的作用就在于可動態掃描指令表和I/O配置表,獲取所用的輸入數據區、輸出數據區、中間變量存儲區的地址信息,從而生成動態數據表文件。在監控組態時,圖形組態的數據源和實時數據庫組態的數據源就可以統一從動態數據表中獲取。其體系結構如圖3所示。
動態數據表實際上是一個數據網絡表,記錄了存儲器地址到輸入輸出端口的映射信息。在圖形組態過程中,通過在數據源屬性對話框里編輯驅動動畫的表達式,而涉及的變量則來自動態數據網表。在控制策略目標代碼執行的過程中,隨著輸入刷新和輸出刷新,數據區的數據不斷的變化,則監控畫面也在數據的驅動下作相應的動作,實時數據庫同時記錄下不同時間的輸入輸出數值。
[align=center]

圖3 控制策略組態與監控組態間的數據驅動[/align]
3.結束語
采用本文描述的結構,把控制策略組態功能和監控組態功能集成在一個組態軟件里面,形成基于IEC61131-3標準的新型軟PLC。采用這個技術開發的工控組態軟件,不但具有直觀的控制策略組態功能(采用梯形圖語言和指令表語言兩種方式),而且具有直觀的監控組態功能,可以容易的實現動態畫面顯示,報警以及實時數據記錄。目前只是實現了基本的順序控制功能和畫面監控功能,但在這個體系結構下,能夠最終擴展成成熟的工控組態軟件產品。
參考文獻
[1] karl-heinz, John. Michael, Tiegelkamp. IEC61131-3 工業自動化程序系統的編制[M]. 北京:中國機電一體化技術應用協會秘書處翻譯出版,2003,71~223.
[2] Cecilio Blanco, Miguel A. Perez, Juan C. Alvarez, Juan Carlos Campo and Francisco J. Ferrero, An Intrinsic Safety PLC with a Graphic Programming Environment[A], Industrial Electronics Society, 1998. IECON ‘98. Proceedings of the 24th Annual Conference of the IEEE , Volume: 3 , 31 Aug.-4 Sept. 1998, Pages:1649 - 1652 vol.3.
[3] Jan Thieme, Hans-Michael Hanisch, Model-based generation of modular PLC code using IEC61131 function blocks[A], Industrial Electronics, 2002. ISIE 2002. Proceedings of the 2002 IEEE International Symposium on, Volume: 1, 8-11 July 2002, pages: 199 - 204 vol.1.
[4] Aspern, Jens, SPS software development with International Electronical Commission 61131[M]. Huethig publishing house Heidelberg, 2000.
[5] 遲君平,王斌,李業友.模塊化編程方法在PLC程序開發中的應用[J].微計算機信息,2005,6: 26-27