王曉云
(安微省化工設計院,安微合肥230009)
DCS是分散控制系統 (Distributed Control System)的簡稱,國內一般習慣稱為集散控制系統。它是一個由過程控制級和過程監控級組成的以通信網絡為紐帶的多級計算機系統,綜合了計算機 (Computer)、通訊 (Communication)、顯示(CRT)和控制(Control)等4C技術,其基本思想是分散控制、集中操作、分級管理、配置靈活、組態方便。工業爐控制系統涉及溫度、轉速、壓力、流量等多點多類型物理量控制,因此非常適合DCS的應用。
RS485總線由于其組網方便、非常適用于工程集散控制系統的應用。RS-485采用平衡發送和差分接收方式實現通信:發送端將串行口的TTL電平信號轉換成差分信號 A、B兩路輸出,經過線纜傳輸之后在接收端將差分信號還原成TTL電平信號。由于傳輸線通常使用雙絞線,又是差分傳輸,所以有極強的抗共模干擾的能力,總線收發器靈敏度很高,可以檢測到低至200 mV電壓。故傳輸信號在千米之外都是可以恢復。RS-485最大的通信距離約為1 219 m,最大傳輸速率為10 Mb/s,傳輸速率與傳輸距離成反比,在100 kb/s的傳輸速率下,才可以達到最大的通信距離,如果需傳輸更長的距離,需加485中繼器。RS-485采用半雙工工作方式,支持多點數據通信。本系統就是基于RS485總線構建的工業窯爐集散控制系統。
控制系統硬件部分主要由工控機、溫控儀、I/O模塊、485電纜、變頻器、電機、窯爐體等構成。
工控機為普通工業控制計算機,適用于工業現場較惡劣場合。主要功能采集現場數據、數據庫記錄、監控及參數設定功能。
導電SR94溫度控制器,帶RS485通訊功能,與上位工控機進行實時數據交互。
帶有RS485通訊功能I/O模塊用于采集和設定現場I/O數據,包括數字量和模擬量信號。
變頻器通過RS485口發送和接受電機轉速信息。
ROSEMOUNT 3411P型溫度變送器,用于檢測爐膛實際溫度。
西門子SITRANSP系列壓力變送器,檢測爐膛壓力。
E+H TMASS 65系列熱式質量流量計,用于測量氣體流量。
RS485/RS232轉換模塊,由于采用的工控機只有RS232接口,因此系統必須具有此轉換裝置。
圖1為常用工業窯爐DCS控制系統框圖。上位工控機通過485總線與下位控制儀表或模塊連接,工控機通過485總線讀取下位儀表參數狀態并在監控軟件中實時顯示、分析和記錄。另外,工控機還發送相應控制信號,下位機接受到指令進行運算處理,然后發出相應的信號控制現場被控對象,使其處于期望的狀態。

圖1 工業爐DCS控制系統示意框圖
軟件是數字控制系統的靈魂,其設計的優劣直接影響整個控制系統的性能。本系統采用VB.NET作為工具來開發監控軟件。VB.NET是微軟新推出具有完全面向對象功能的VB最新版本,用來開發運行于.NET框架環境下的應用程序,具有很好的移植性。.NET程序對運行環境是沒有特別的要求的,只要安裝了.Net framework,它就能在上面運行(不管是Windows系統,還是Linux系統,甚至是Window CE嵌入式系統)。微軟的.NET和Sun公司的JAVA基本上類似,都是需要平臺支持的,Java需要虛擬機,.NET程序需要.net framework。其編程思想實現了從過程式到面向對象的跨越,支持多線程應用程序開發。
面向對象的程序設計是軟件系統設計和實現的重要方法,可以通過增加軟件的可擴展性和可重用性,來控制軟件開發和維護的復雜性與開銷。
為了體現面向對象思想,軟件按功能封裝為如下幾大類和模塊,模塊功能框圖如圖2。
(1)主界面類模塊(ClassUI);
(2)溫度控制儀表類(ClassTC),其主要負責讀取下位儀表儀數據并送至UI模塊顯示;
(3)串口通訊類(ClassSerailPortComm),運用多態性實現不同類型通訊儀表的統一接口,該類應具有后期綁定動態聯接特性。負責串口通訊;
(4)按鈕類(ClassButton),可以繼承標準按鈕控件或自定義控件用來響應按鈕事件;
(5)報警燈類(ClassA larm Lamp)實時獲取和顯示報警狀態;
(6)變頻器類(ClassFC),讀取和設定網帶速度;
(7)用戶信息類(ClassUserInfo),該類為可串行化類,用于保存用戶信息;
(8)數據記錄類模塊(ClassDataSetRecord),其主要負責記錄數據到數據庫;
(9)曲線記錄類模塊(ClassTermCurve),溫度曲線的顯示保存;
(10)應用程序配置類模塊(ClassMyAppConfigure),為可串行化類;
(11)參數設置類模塊(ClassTechnicsConfigure),負責工藝參數的設置與保存。
(12)網絡通訊模塊類(ClassNetComm),負責與外部網絡或設備進行網絡通訊。
(13)配置程序,用來修改配置文件。

圖3 軟件總體功能框圖
上述各類和模塊相互之間通過子類化、類的合成以及接口調用等方法進行通訊,將各個獨立模塊有機結合起來協調工作,實現系統所需功能。
多線程允許CPU同時獨立執行多個任務,因而提高了資源的利用率以及應用程序的性能和靈敏度。自由線程提供非同步處理機制可以在不影響其他應用程序部分的前提下新建一個線程來進行一些長時間的任務、復雜的查詢請求或者多塊同步計算。
.NET框架中包含的System.Threading命名空間專門負責實現多線程功能,而且操作相當簡單,只需要利用該命名空間中的Thread類,就具有了實現自由線程的屬性和方法。按照本系統軟件的功能要求,將程序劃分為如下幾個線程:
(1)主線程,為UI線程,負責處理消息響應,界面刷新。操控其他后臺自由線程;
(2)通訊線程,主要負責工控機與下位智能儀表的數據通訊;
(3)數據記錄線程,主要負責數據庫連接和數據記錄;
(4)網絡通訊線程,與外部設備及網絡進行通訊。
由于軟件采用面向對象和多線程思想實現,因此程序運行效率較高、升級維護非常方便。例如:增加或減少溫區數,只需增減溫控儀類實例數即可;如更換相關器件,將相應類模塊更改即可,由于面向對象封裝的特性,不會影響到程序其他部分的正常功能;對于需要更改同類型的功能更多的儀表,只需通過繼承一個新類,加入少量針對新增功能的代碼就可以實現,充分體現面向對象思想中代碼的重用性。
由于基于485串行總線,本系統硬件搭建便捷,通過很少的通訊線路即可組建DCS控制網絡。監控軟件采用VB.NET實現,運用面向對象思想以及多線程技術,系統響應快、效率高、后期維護升級非常方便。該系統已經成功應用于多種控制系統設備,實際運行效果較好。
[1](美)Katsuhiko Ogata.現代控制工程[M].北京:電子工業出版社,2000.
[2]唐樹才等.VB.NET程序設計與應用[M].北京:電子工業出版社,2002
[3]張燕紅.計算機控制技術[M].南京:東南大學出版社.2008.