鄭國昆 蘇 娟 吳齊才 楊之江
(北京航天發(fā)射技術(shù)研究所 北京 100076)
運載火箭地面設(shè)備(以下簡稱地面設(shè)備)在運載火箭測試發(fā)射過程中,主要完成加注、供氣、瞄準、垂直度調(diào)整、加泄連接器脫落和擺桿控制等各個功能的射前準備工作。目前地面設(shè)備各分系統(tǒng)均已實現(xiàn)測控流程的電氣化,但各分系統(tǒng)僅在內(nèi)部形成了測控流程的自動化體系,系統(tǒng)的交互少,各分系統(tǒng)間的測控系統(tǒng)技術(shù)水平參差不齊、標準不一,接口匹配設(shè)計復(fù)雜、兼容性差;各分系統(tǒng)測試數(shù)據(jù)分散,難以全面了解各系統(tǒng)測試狀態(tài),上級指揮自動化程度低、發(fā)射決策效率低下,導(dǎo)致了測試發(fā)射準備周期長;各分系統(tǒng)測試設(shè)備重復(fù)配套,不利于研制成本的控制。
地面設(shè)備在運載火箭系統(tǒng)中屬于可重復(fù)使用的系統(tǒng),隨著我國航天器高密度發(fā)射的常態(tài)化,對地面設(shè)備也提出了新的要求:1) 提升地面設(shè)備測控系統(tǒng)的通用性,避免各分系統(tǒng)單獨設(shè)計測控系統(tǒng)帶來的差異性問題以及各分系統(tǒng)內(nèi)部接口不一致導(dǎo)致的兼容性問題;2) 提升地面設(shè)備測試的自動化程度,地面設(shè)備歷來是火箭系統(tǒng)中自動化程度相對低下的部分,靠人工完成的測試項目較多,實現(xiàn)測試流程自動化和判讀數(shù)據(jù)實時化,對節(jié)約人力,實現(xiàn)無人值守,縮短發(fā)射準備周期有重要意義,以避免高密度發(fā)射帶來的周期被迫縮短問題;3) 提高數(shù)據(jù)處理能力,實現(xiàn)試驗數(shù)據(jù)現(xiàn)場分析處理歸檔入庫,方便測試人員進行數(shù)據(jù)判讀、歷史數(shù)據(jù)查詢等。
在傳統(tǒng)的控制系統(tǒng)中,不同硬件控制設(shè)備之間的數(shù)據(jù)交互一般依靠不同的驅(qū)動程序?qū)崿F(xiàn),但硬件設(shè)備廠商提供的驅(qū)動程序功能相對固定,不滿足軟件設(shè)計人員的不同需求,當系統(tǒng)功能需求超過硬件設(shè)備廠商提供的驅(qū)動程序功能范圍時,軟件設(shè)計中就必須進行設(shè)備驅(qū)動程序設(shè)計環(huán)節(jié),大大增加了軟件的復(fù)雜度,降低了系統(tǒng)的可維護性和可靠性。
OPC(Object Linking and Embedding for Process Control)技術(shù)的出現(xiàn)為此問題的解決提供了契機。OPC是基于過程控制的對象鏈接和嵌入(Object Linking and Embedding,OLE)技術(shù)[1],是基于微軟公司的COM(部件對象模型)和DCOM(分布式部件對象模型)技術(shù)制定的自動化領(lǐng)域信息通信接口應(yīng)用技術(shù)。基于OPC技術(shù),可使硬件設(shè)備廠商之間具備了一套通用的依據(jù)和標準,由硬件設(shè)備廠商提供OPC服務(wù)器程序,軟件設(shè)計中僅需在滿足OPC規(guī)范的情況下,即可與不同的硬件設(shè)備進行數(shù)據(jù)交互,這樣就掃除了不同軟件和硬件之間的通信障礙,并且從根本上解決了軟件設(shè)計中必須為不同設(shè)備開發(fā)驅(qū)動程序的問題。同時,不同軟件之間由于數(shù)據(jù)接口不匹配帶來的通信問題也可通過OPC技術(shù)解決,為實現(xiàn)不同的系統(tǒng)及模塊間協(xié)調(diào)運行提供了可能[2-4]。
OPC技術(shù)是在微軟公司的COM和DCOM基礎(chǔ)上發(fā)展的,因此具備面對對象的特征,OPC規(guī)范是包含了一系列的屬性和方法的集合,由OPC基金會進行發(fā)布和維護,作為全世界硬件設(shè)備廠商的研發(fā)規(guī)范。OPC規(guī)范主要包含實時數(shù)據(jù)存取規(guī)范(Data Access,DA)、報警與事件處理規(guī)范、歷史數(shù)據(jù)處理規(guī)范、批量數(shù)據(jù)過程規(guī)范、數(shù)據(jù)安全規(guī)范和數(shù)據(jù)交換規(guī)范等一系列規(guī)范。其中OPC DA規(guī)范是OPC規(guī)范的基礎(chǔ),基于OPC DA規(guī)范的實時數(shù)據(jù),其余的規(guī)范才得以建立發(fā)展[5-9]。
OPC DA規(guī)范有別于一般傳統(tǒng)的數(shù)據(jù)交互方式,其可使上位機與現(xiàn)場硬件設(shè)備在相互之間的通信規(guī)則未知的情況下還可以正常進行數(shù)據(jù)交互。OPC DA規(guī)范采用COM技術(shù)典型的C/S模式,一個OPC客戶端可以連接到一個或多個OPC DA服務(wù)器,一個OPC DA服務(wù)器可以與一個或多個客戶端相連接。其典型的結(jié)構(gòu)模型如圖1所示。理論上OPC DA服務(wù)器可以和所有的硬件設(shè)備或?qū)崟r數(shù)據(jù)源連接,因此使上位機軟件不需要為特定的硬件設(shè)備開發(fā)驅(qū)動程序。
圖1 OPC C/S模式典型架構(gòu)圖
PC服務(wù)器是基于OPC規(guī)范的控制系統(tǒng)的重要組成部分,其主要功能是為對應(yīng)設(shè)備提供符合OPC規(guī)范的接口和數(shù)據(jù)通信機制。OPC規(guī)范中要求硬件設(shè)備廠商必須提供符合規(guī)范的OPC服務(wù)器,以保證任何符合OPC規(guī)范的OPC客戶端均可實現(xiàn)對其的訪問和數(shù)據(jù)交互。同時,OPC規(guī)范要求所有的軟件廠商必須提供符合規(guī)范的OPC客戶端,以保證客戶端可訪問任何符合規(guī)范的OPC服務(wù)器,并與其進行數(shù)據(jù)交互。
OPC服務(wù)器內(nèi)部結(jié)構(gòu)由服務(wù)器(Server)對象、組(Group)對象和項(Item)對象組成,其中:Server對象維護自身信息和Group對象鏈表;Group對象維護自身信息和Item對象鏈表;Item對象內(nèi)部維護自身信息,主要包括訪問權(quán)限、激活狀態(tài)、數(shù)據(jù)類型、數(shù)據(jù)值等。Server對象和Group對象為標準COM組件,提供標準接口,Item對象不提供客戶端接口,可自定義或派生于COM。這樣OPC服務(wù)器就可將對硬件設(shè)備的訪問封裝在內(nèi)部,而只為OPC客戶端提供訪問接口,OPC客戶端僅需明確接口即可調(diào)用相應(yīng)的服務(wù)完成功能,無須考慮訪問硬件設(shè)備這一復(fù)雜過程。OPC服務(wù)器內(nèi)部結(jié)構(gòu)如圖2所示。
圖2 OPC 服務(wù)器內(nèi)部結(jié)構(gòu)
圖3為OPC服務(wù)器和OPC客戶端數(shù)據(jù)流向圖??蛻舳送ㄟ^接口函數(shù)與服務(wù)器進行數(shù)據(jù)交互,客戶端用戶界面可實現(xiàn)對服務(wù)器端的操作;服務(wù)器通過驅(qū)動程序與硬件設(shè)備數(shù)據(jù)源進行數(shù)據(jù)交互,Server地址空間起保存具體數(shù)據(jù)源的作用,對象接口部分是客戶端和服務(wù)器進行數(shù)據(jù)傳遞的唯一途徑,服務(wù)器的用戶界面并非必須存在,一般只用作監(jiān)測服務(wù)器運行狀態(tài)和客戶端數(shù)量等。
圖3 OPC 服務(wù)器和客戶端數(shù)據(jù)流向
隨著我國航天運載火箭的發(fā)展,地面設(shè)備測控系統(tǒng)也經(jīng)歷了從無到有,由簡入繁的過程,本文以包含3個分系統(tǒng)的地面設(shè)備測控系統(tǒng)為例,介紹地面設(shè)備測控系統(tǒng)的常用架構(gòu)。
1) 分系統(tǒng)獨立的集成式測控系統(tǒng):該系統(tǒng)架構(gòu)原理圖如圖4所示,3個分系統(tǒng)獨立設(shè)計,互相之間沒有數(shù)據(jù)交互。分系統(tǒng)的內(nèi)部采用上位機+系統(tǒng)測控單元的常用架構(gòu)模式。系統(tǒng)測控單元是系統(tǒng)架構(gòu)的核心,一般根據(jù)系統(tǒng)功能和性能需求選取PLC、單片機和實時控制器等硬件設(shè)備,控制執(zhí)行器件(電機、電磁閥等)完成系統(tǒng)的規(guī)定動作,通過傳感器采集系統(tǒng)的各項參數(shù)和狀態(tài)。上位機運行用戶界面以完成監(jiān)測和控制,與系統(tǒng)測控單元進行數(shù)據(jù)交互,顯示系統(tǒng)的參數(shù)和狀態(tài),并完成數(shù)據(jù)處理和存儲等功能。此種系統(tǒng)架構(gòu)下,數(shù)據(jù)交互必須通過驅(qū)動程序執(zhí)行,而不同的分系統(tǒng)的具體的硬件設(shè)備和廠商均不同,導(dǎo)致不同分系統(tǒng)的數(shù)據(jù)交互需要的驅(qū)動程序不一致,軟件開發(fā)難度大,系統(tǒng)通用性和可維護性差,并且各分系統(tǒng)獨立運行,時間難以統(tǒng)一也是一大難題。發(fā)射測試過程中,各分系統(tǒng)會產(chǎn)生大量的數(shù)據(jù),由于各分系統(tǒng)數(shù)據(jù)獨立處理和存儲,當分系統(tǒng)工作存在測試流程上的邏輯性時,數(shù)據(jù)后處理和分析的工作量也相當巨大。
2) 地面設(shè)備集成測控系統(tǒng):系統(tǒng)架構(gòu)原理圖如圖5所示,在系統(tǒng)架構(gòu)1)的基礎(chǔ)上,增加指揮控制單元和數(shù)據(jù)處理單元。指揮控制單元和數(shù)據(jù)處理單元可以與各分系統(tǒng)的上位機進行數(shù)據(jù)交互,指揮控制單元負責發(fā)射測試過程的指揮調(diào)度協(xié)調(diào)功能,提升發(fā)射測試過程的指揮調(diào)度自動化,數(shù)據(jù)處理單元負責將測試過程中各分系統(tǒng)產(chǎn)生的數(shù)據(jù)進行實時處理和存儲,并在此基礎(chǔ)上,為實現(xiàn)全系統(tǒng)的數(shù)據(jù)實時監(jiān)測判讀提供了條件。但是,此種系統(tǒng)仍然以系統(tǒng)架構(gòu)1)為基礎(chǔ),沒有脫離分系統(tǒng)獨立的拓撲結(jié)構(gòu),并且與系統(tǒng)測控單元的數(shù)據(jù)交互仍然需要單獨設(shè)計,很難做到接口一致。
圖5 集成式測控系統(tǒng)架構(gòu)
為解決地面設(shè)備各分系統(tǒng)測控單元選型不一,設(shè)備接口不一致等問題,本文提出一種基于OPC技術(shù)的地面設(shè)備測控系統(tǒng)架構(gòu),如圖6所示。系統(tǒng)架構(gòu)采取分層式架構(gòu)設(shè)計,分為現(xiàn)場設(shè)備層、OPC服務(wù)器層、OPC客戶端層和系統(tǒng)應(yīng)用層。
圖6 基于OPC技術(shù)的地面設(shè)備測控系統(tǒng)架構(gòu)
1) 現(xiàn)場設(shè)備層。仍以3個分系統(tǒng)為例,包括各分系統(tǒng)的測控單元、執(zhí)行器件和傳感器,分系統(tǒng)1與分系統(tǒng)2的測控單元選型相同的情況下,二者可共用相同驅(qū)動程序接口,但分系統(tǒng)3的測控單元與其余分系統(tǒng)不同,因此驅(qū)動程序接口不一致。
2) OPC服務(wù)器層。分系統(tǒng)1與分系統(tǒng)2的驅(qū)動程序相同,因此二者共用同一OPC DA服務(wù)器,分系統(tǒng)3使用不同的OPC DA服務(wù)器,兩個OPC DA服務(wù)器可以依據(jù)OPC 數(shù)據(jù)交換規(guī)范進行數(shù)據(jù)交互,數(shù)據(jù)交互過程由OPC數(shù)據(jù)交換服務(wù)器實現(xiàn)。這樣在OPC服務(wù)器層即可實現(xiàn)數(shù)據(jù)交互,當某一分系統(tǒng)存在造成多個分系統(tǒng)的人員和設(shè)備安全風(fēng)險的故障時,可通過OPC數(shù)據(jù)交換服務(wù)器使其余分系統(tǒng)得知,并應(yīng)急處理,提升了應(yīng)急處理信息的傳遞速率。在OPC DA服務(wù)器的基礎(chǔ)上,依據(jù)OPC報警與事件處理規(guī)范建立OPC報警處理(AE)服務(wù)器,用于對實時數(shù)據(jù)采集后進行簡單的判斷和相應(yīng)。依據(jù)OPC歷史數(shù)據(jù)處理規(guī)范建立OPC歷史數(shù)據(jù)處理(HDA)服務(wù)器,用于OPC服務(wù)器層對實時數(shù)據(jù)進行趨勢等分析。最后,OPC服務(wù)器層依據(jù)OPC規(guī)范,向OPC客戶端提供接口以供調(diào)用。
3) OPC客戶端層。包含OPC DA、OPC AE、OPC HDA客戶端,可通過客戶端調(diào)用接口完成與各自服務(wù)器的數(shù)據(jù)交互,并且在客戶端層設(shè)置OPC服務(wù)器配置工具,用于對OPC服務(wù)器層包含的服務(wù)器進行配置,作為系統(tǒng)擴充和更改時使用。
4) 系統(tǒng)應(yīng)用層。系統(tǒng)應(yīng)用層的主要作用是提供面向用戶的用戶界面、實時數(shù)據(jù)處理和存儲,測試數(shù)據(jù)中心將地面設(shè)備過程中的所有測試數(shù)據(jù)進行實時處理,按照預(yù)先設(shè)定好的處理方法進行處理,完成后進行數(shù)據(jù)庫操作,并將數(shù)據(jù)提供給需要的模塊。分系統(tǒng)1-分系統(tǒng)3用戶界面為各分系統(tǒng)人員進行測試操作、監(jiān)測和控制的人機界面接口。地面設(shè)備指揮控制用戶界面實現(xiàn)發(fā)射測試過程的指揮調(diào)度協(xié)調(diào)功能,提升發(fā)射測試過程的指揮調(diào)度自動化,使各分系統(tǒng)按照測試流程順序執(zhí)行動作。數(shù)據(jù)瀏覽用戶界面基于實時測試數(shù)據(jù)中心和歷史數(shù)據(jù)庫建立,用于在發(fā)射測試過程中及發(fā)射后進行數(shù)據(jù)瀏覽、數(shù)據(jù)報表、數(shù)據(jù)判讀及數(shù)據(jù)導(dǎo)出等功能的實現(xiàn)。在測試發(fā)射的不同階段,對地面設(shè)備的技術(shù)狀態(tài)要求不一,因此應(yīng)用層配置工具主要完成測試流程配置、指令配置、參數(shù)配置和用戶界面配置等功能。
圖6所示的系統(tǒng)架構(gòu)中,現(xiàn)場設(shè)備層和OPC服務(wù)器層之間的數(shù)據(jù)交互需要硬件設(shè)備的驅(qū)動程序支持。基于OPC規(guī)范,硬件設(shè)備廠商在為其硬件設(shè)備開發(fā)OPC服務(wù)器時,已經(jīng)將驅(qū)動程序一并包含并提供,因此不需要系統(tǒng)軟件設(shè)計人員再重復(fù)開發(fā),軟件設(shè)計人員僅需依據(jù)OPC服務(wù)器提供的接口進行相應(yīng)的客戶端開發(fā)即可實現(xiàn)與所有的硬件設(shè)備的數(shù)據(jù)交互,最大限度保證了設(shè)計通用性,無論哪個分系統(tǒng),對于OPC客戶端而言,接口均一致,保證了客戶端及系統(tǒng)應(yīng)用層軟件的通用性。
本文提出的系統(tǒng)架構(gòu)中,分系統(tǒng)作為地面設(shè)備測控系統(tǒng)的一部分嵌入到系統(tǒng)架構(gòu)中,利用應(yīng)用層配置工具可進行測試流程配置,可快速完成不同分系統(tǒng)的測試流程界面的配置,免去大量測試流程調(diào)整的工作。
在測控系統(tǒng)內(nèi)部出現(xiàn)故障時,采取對OPC服務(wù)器進行配置的方式,對地面設(shè)備測控系統(tǒng)架構(gòu)進行在線重構(gòu),保證系統(tǒng)除故障點外的其余部分不受故障影響,可繼續(xù)完成測試流程,提升了系統(tǒng)的容錯能力和可維護性。實時數(shù)據(jù)和歷史數(shù)據(jù)均統(tǒng)一維護在實時數(shù)據(jù)中心和歷史數(shù)據(jù)庫中,保證數(shù)據(jù)的完整性及數(shù)據(jù)采集格式的統(tǒng)一,便于進行數(shù)據(jù)判讀和報表分析等工作。
本文首先提出當前運載火箭地面設(shè)備測控系統(tǒng)的需求,分析OPC技術(shù)規(guī)范的原理和優(yōu)勢,其次在概括了當前地面設(shè)備測控系統(tǒng)的常用架構(gòu)的弊端的基礎(chǔ)上,提出了基于OPC技術(shù)的運載火箭地面設(shè)備測控系統(tǒng)架構(gòu),介紹其組成,并重點描述了各虛擬層的功能,最后著重分析了提出的系統(tǒng)架構(gòu)相對于常用架構(gòu)在工作量、可維護性和擴充能力方面的優(yōu)勢?;贠PC技術(shù)的運載火箭地面設(shè)備測控系統(tǒng),可大大減少系統(tǒng)軟件設(shè)計的工作量,使之更集中于系統(tǒng)功能的實現(xiàn)而非底層驅(qū)動的實現(xiàn)上,可提高系統(tǒng)的擴充能力和容錯能力,其數(shù)據(jù)維護的方式更為合理,為后續(xù)數(shù)據(jù)判讀智能化、測試流程全自動化發(fā)展奠定了基礎(chǔ),為實現(xiàn)運載火箭加注發(fā)射測試過程無人值守提供了可行的思路。