盧逸斌 王楠 朱智超 吳睫 唐亮
(1.上海宇航系統工程研究所,上海 201109;2.上海航天電子技術研究所,上海 201109)
基于OPC技術的飛行器測試與控制系統設計
盧逸斌1王楠1朱智超1吳睫2唐亮1
(1.上海宇航系統工程研究所,上海 201109;2.上海航天電子技術研究所,上海 201109)
為滿足飛行器地面測試與控制的需求,提高測試效率及測試設備的通用化程度,提出了一種基于OPC技術的飛行器測試與控制系統設計,并成功應用于現役飛行器測試與控制系統,高效地完成了數據采集與處理、參數監測與控制、數據存儲等功能。
OPC 測試與控制 通用化
飛行器測試與控制系統在飛行器的整個研制流程中起到綜合檢驗飛行器的作用。通過測試與控制系統對飛行器的功能和性能進行全面的測試,對飛行器的接口和電磁兼容性進行全面檢測,是確保飛行器成功完成飛行任務的重要環節。
飛行器測試與控制系統有著規模大、專業廣、難度大、兼容性差的特點。目前常規飛行器測試與控制系統設備數量一般超過50臺專用測試設備,40臺通用測試設備,200個以上測試接口,100根以上測試電纜,5000個以上各類型的測試數據。近年來隨著測試技術的不斷進步,測試與控制系統從VXI、PCI技術逐步向PXI、PLC技術轉變,為了提高綜合測試的效率,提高各類設備間的兼容性,提高設備的安全及故障預警能力,選擇應用OPC技術,整合不同監控設備間,工作站與工作站、工作站與服務器之間的通信方式。
為了實施監控系統通信網絡的統一化、標準化,與傳統監控系統不同,工作站與設備、工作站與工作站、工作站與監控中心之間通信采用的是OPC技術。
OPC是OLE for Process Control的縮寫,OPC技術是由世界上多個軟硬件供應商、自動化公司與微軟合作開發的一套數據交換接口標準,它能夠為現場設備、自動控制應用、企業管理應用軟件之間提供開放、一致的接口規范,為來自不同供應商的軟硬件提供“即插即用”的連接。

圖1 OPC結構圖
基于微軟的COM(組件對象模型)/DCOM(分布式組件對象模型)技術的OPC采用客戶/服務器結構,廠商為設備提供符合OPC規范接口的服務器,應用程序通過OPC接口對OPC服務器進行訪問,實現現場設備、監控系統以及管理系統之間的數據交換,如圖1所示。

圖2 飛行器測試與控制系統網絡組成圖

圖3 OPC客戶端數據設置界面

圖4 監控軟件界面
OPC對象模型分為不同層次的三類對象組成。
1.2.1 OPC服務器對象
它提供了一種訪問數據的方法,擁有服務器的所有信息,同時也是下層對象-OPC組對象的容器,主要功能為。
(1)創建和管理OPC組對象。
(2)管理服務器內部的狀態信息。
(3)將服務器的錯誤代碼翻譯成描述性語句。(4)瀏覽OPC服務器內部的數據組織結構。
1.2.2 OPC組對象
它提供了客戶組織數據的一種方法,每個組中都可以定義或多個OPC組件對象。OPC組對象的主要功能為:(1)管理組對象的內部狀態信息。(2)創建和管理組件對象。
(3)服務器內部的實時數據存取服務。
組對象是應用程序組織數據的一個單位,客戶可對之進行讀寫,還可設置客戶端的數據刷新率。
1.2.3 OPC組件對象
它是讀寫數據的最小邏輯單位,一個組件對象與一個具體的過程之相連,每個組件雖然代表了與服務器中的某個數據的連接,但它并不是數據源,而是僅僅是與數據源的連接。OPC組件對象并不提供對外接口,客戶不能直接對之進行操作,所有操作都是通過組對象進行的。
飛行器測試與控制系統是一個分布式局域網絡系統,如圖2所示。主要包括以下子系統:總線測試系統、測控測試系統、GNC測試系統、供配電系統、測試等效系統、總控測試系統,其中測控測試系統設備為射頻信號處理設備,暫不支持OPC協議。
系統設備分為三個層次,分別為現場設備層、數據服務層和監控管理層。現場設備層位于底層,由各個子系統下的單元測試設備組成,主要有PLC單元、PXI單元、1553b總線、RS422總線、信道處理單元、供電單元組成。數據服務層由總控服務器、數據庫服務器和多個安裝OPC服務器的終端組成,OPC服務器中封存了不同設備的各種驅動程序,能夠將采集的數據轉換為統一的OPC數據格式,通過總線技術和網絡技術發送到監控管理層,利用ODBC將數據保存在數據庫中。監控管理層主要是OPC客戶端和應用程序,通過圖形、表格、曲線、虛擬操作面板等方式顯示處理飛行器測試數據。
飛行器測試與控制系統的主要設備來自各大廠商,主要有西門子、National Instrument、AB等廠商,不同的廠商的設備之間缺少統一的數據交互平臺,各設備需使用專用的驅動程序,與目前的設備統一集中管理的設計理念存在較大差距。
采用OPC服務器技術,由OPC驅動程序讀取OPC服務器中的變量,從而實現對不同廠商、不同區域的設備進行集成監控,使得工業控制具有更簡單的系統結構、更長的壽命、更低的價格,同時現場設備與系統的連接也更加簡單、靈活、方便,主要應用的內容如下。
(1)采用OPC接口實現了應用程序和工業控制設備之間高效、靈活的數據讀寫,可以編制符合標準OPC接口的客戶端應用軟件完成數據的采集任務。
(2)OPC提供了讀取存儲在過程數據存檔文件、數據庫或遠程終端設備中的歷史數據以及對其操作、編輯的方法。
(3)OPC提供了OPC服務器發生異常以及OPC服務器設定事件到來時向OPC客戶發送通知的一種機制,通過使用OPC技術,能夠更好的捕捉控制過程中的各種報警和事件,并給予相應的處理。
(4)工控軟件開發中冗余技術是一種非常重要的技術,它是系統長期穩定工作的保障。OPC技術的使用可以更加方便的實現軟件冗余,而且具有較好的開放性和操作性。
(5)借助微軟的DCOM技術,OPC實現了高性能的遠程數據訪問,從而使得工業控制軟件之間的數據交換更加方便。
OPC服務器開發是基于使用面向對象的技術,可以使用適用于VC++編程環境快速開發包KOSRDK,將OPC規范所定義的COM接口實現封裝動態鏈接,通過調用KOSRDK.DLL的接口函數將數據傳輸到數據緩沖區,形成本地列表,并經過OPC服務器的驅動將數據進行傳遞,生成OPC服務器列表,供客戶層使用。開發者通過類的派生以及重載函數,實現數據的訪問和提交,簡化OPC服務器的開發過程。
利用KOSRDK在VC++環境下開發OPC服務器的流程如下。
(1)調用KOS_Init進行初始化。
(2)初始化成功后注冊回調函數。
(3)利用KOS_AddItem添加OPC點到OPC Server DLL中,通過客戶端檢索和使用OPC點。
(4)通過KOS_UpdataItem更新地址空間內的OPC點數據信息,將設備的實時信息和狀態反饋給客戶端。
(5)運行結束時需要刪除OPC點和反初始化,分別通過KOS_Re moveItem和KOS_UnInit兩個函數實現。
OPC客戶端開發需根據OPC邏輯對象模型包含OPCserver對象、OPCgroup對象和OPCitem對象,每類對象都包括一系列接口。
(1)OPCserver對象主要功能為創建和管理server內部狀態信息及OPCgroup對象。
(2)OPCgroup對象主要功能為管理OPCgroup對象內部狀態信息及OPCitem對象,同時對OPC服務器內部的實時數據進行存取。OPCgroup主要屬性包括組名(group name)、組激活狀態標識(ActiveStatus)、服務器提供客戶程序提交數據刷新速率(Update Rate)等。
(3)OPCitem是非COM對象,在OPC標準中用來描述實時數據,代表了與服務器中的數據連接。每個i t e m主要屬性包括ActiveStatus、Value、Type等等。
OPC客戶端開發使用VC6.0工具,界面設置如圖3所示,其中Property為Item的類型選擇,可選擇Value(數據值)或Switch(開關狀態),Computer為OPCServer在網絡上的計算機名,OPCServer為選擇的服務器名,Item為數據,Update Rate為刷新頻率默認50ms,Auto Connect為與自動連接開關。通過Add和Remove添加Item的數據項。
飛行器測試與控制系統的上位機監控軟件需含指令發送、數據采集、加電時間統計、數據存儲、故障報警等功能。
上位機監控軟件界面如圖4所示。表頭型顯示控件與按鈕型控制控件的OPCItem類型為Value型,指示燈顯示控件的OPCItem類型為Switch型,主從切換用于控制界面為主機或從機,避免誤操作,網絡可以設置OPC的各個參數值與類型。
測試結果表明,基于OPC技術的飛行器測試與控制平臺各項功能正常、穩定,大幅縮減了系統內部協議的復雜度,提高了系統的通用化程度和測試效率。
OPC技術為現場設備、控制系統應用、管理應用軟件之間提供了開放、統一的標準接口,很好地解決了網絡異構數據集成問題。而且OPC技術使設備生產廠商和應用程序開發的工作分離,應用程序開發人員無需重復開發設備驅動程序,只需開發一套接口就可以和不同設備相連。利用OPC技術開發集成監控系統能縮短開發周期,提高互連互操作性可擴展性、可維護性、適應性和經濟性。本文遵循OPC標準設計開發了服務器和客戶端,實現了集成監控系統的數據采集與處理、參數的監測與控制以及數據存儲的功能。
[1]靳臣,陳紅衛.基于OPC的半潛式鉆井平臺監控系統的開發[J].電子設計工程,2013,21(8):87-90.Jin Chen,Chen hongWei. Development of semi-submersible drilling platform monitoring system based on OPC[J]. Electronic Design Engineering,2013,21(8):87-90.
[2]周磊,劉大成,周傳福,等.OPC規范下數據訪問服務器的設計與實現[J].微計算機信息,2007,23(1):264-266.Zhou Lei,Liu Dacheng,Zhou Chuanfu.Design andrealization of data access server based on OPC specification[J].Control&Auyom ation,2007,23(1):264-266.
In order to meet the demands of spacecraft testing and control, improve the level of the testing efficiency and testing equipment currency,proposed a design of spacecraft testing and control system based on OPC technology, and successfully applied to the current spacecraft testing and control system,efficiently completed the data acquisition and processing, parameter monitoring and control ,data storage functions.
OPC;testing and control;currency
盧逸斌,男,學士,上海宇航系統工程研究所,工程師,從事飛行器綜合測試。