甘成愿
(中南空管局技術(shù)保障中心,廣東廣州,510405)
近年來(lái),隨著中國(guó)民航業(yè)的高速發(fā)展,航班密度不斷增加,通信導(dǎo)航監(jiān)視等空管設(shè)備的正常穩(wěn)定運(yùn)行,對(duì)保障飛行安全日益重要。相關(guān)的設(shè)備保障或管理部門(mén)都需要及時(shí)掌握設(shè)備的第一手運(yùn)行狀況。目前民航總局空管局已要求各地空管部門(mén)把設(shè)備運(yùn)行狀態(tài)傳回總局,實(shí)施民航空管設(shè)備集中監(jiān)控系統(tǒng)工程。設(shè)備監(jiān)控的關(guān)鍵是在于解決設(shè)備運(yùn)行狀態(tài)采集的問(wèn)題。不同類(lèi)型、不同廠家的設(shè)備有著不一樣的通信協(xié)議,對(duì)其二次開(kāi)發(fā)采集狀態(tài)有著很大的難度。Terma場(chǎng)監(jiān)雷達(dá)國(guó)內(nèi)引進(jìn)較晚,尚缺乏對(duì)該設(shè)備狀態(tài)采集的研究。本文的研究正是基于這一實(shí)際需要。
Terma場(chǎng)監(jiān)雷達(dá)單套收發(fā)機(jī)的硬件組成包括天線單元、編碼器、馬達(dá)、X波段磁控管、調(diào)制器、X波段接收機(jī)、收發(fā)機(jī)控制器(TC3)、視頻處理單元(VP3)、雷達(dá)信號(hào)分配單元(RSD)、母板及電源模塊、主電源及安全保護(hù)電路單元等部件和模塊。其中TC3模塊是雷達(dá)系統(tǒng)的主控模塊,它是一個(gè)嵌入式系統(tǒng),含有一個(gè)功能強(qiáng)大的PC微處理器及存儲(chǔ)器件、輸入輸出接口等,存儲(chǔ)器件中保存了系統(tǒng)的啟動(dòng)、控制、監(jiān)視等程序及總體參數(shù)。本文的研究重點(diǎn)正是遠(yuǎn)端監(jiān)控終端通過(guò)以太網(wǎng)接口與TC3模塊進(jìn)行數(shù)據(jù)交換的通信協(xié)議。
為了實(shí)現(xiàn)狀態(tài)采集與通信功能,需定義兩個(gè)軟件接口,一個(gè)是監(jiān)控采集軟件與場(chǎng)監(jiān)雷達(dá)通過(guò)以太網(wǎng)口進(jìn)行通信的數(shù)據(jù)接口,該接口用于獲取雷達(dá)的狀態(tài)參數(shù)等。另一個(gè)是監(jiān)控采集軟件與集中通信服務(wù)器的通信接口,該接口用于將采集到的雷達(dá)狀態(tài)參數(shù)傳輸?shù)郊型ㄐ欧?wù)器。本文研究分析的重點(diǎn)是采集軟件與場(chǎng)監(jiān)雷達(dá)的通信協(xié)議,該協(xié)議由雷達(dá)廠家的ICD(Interface Control Document)定義。
進(jìn)行通信時(shí),監(jiān)控、狀態(tài)數(shù)據(jù)封裝于通用幀的數(shù)據(jù)域(Data Field),通用幀結(jié)構(gòu)如表3-1所示,包含幀頭DLE STX和幀尾DLE ETX,中間分別為收發(fā)機(jī)地址(Transceiver address)、幀號(hào) (Frame number)、數(shù)據(jù)長(zhǎng)度 (Data length)、數(shù)據(jù)域(Data field)及校驗(yàn)和(Check sum)。DLE固定為10H, STX為02H,ETX為03H。
表3-1通用幀結(jié)構(gòu)
特定功能幀由雷達(dá)廠家ICD定義,即具有不同幀號(hào)的特定幀完成不同的功能。以07幀和08幀為例,07幀用于雷達(dá)向外部發(fā)送參數(shù)值,08幀用于向雷達(dá)設(shè)置參數(shù)。在需要改變某個(gè)參數(shù)或?qū)走_(dá)的進(jìn)行控制時(shí),可以向雷達(dá)發(fā)送08幀。雷達(dá)收到該幀后,按照請(qǐng)求進(jìn)行參數(shù)設(shè)置,同時(shí)回應(yīng)07幀。
場(chǎng)面監(jiān)視雷達(dá)系統(tǒng)的所有參數(shù)、狀態(tài)、均保存在雷達(dá)TC3模塊的非易失性存儲(chǔ)器中,在與外部的監(jiān)控終端進(jìn)行通信時(shí),這些狀態(tài)、參數(shù)數(shù)據(jù)封裝于通信幀中的數(shù)據(jù)域。根據(jù)ICD的定義,雷達(dá)的每個(gè)模塊、每一個(gè)錯(cuò)誤/告警信息、BITE信息等都有固定的編號(hào)、定義,這些定義可通過(guò)查閱ICD得知。
為了獲得設(shè)備的狀態(tài)、參數(shù)數(shù)據(jù),采集系統(tǒng)與雷達(dá)設(shè)備的以太網(wǎng)接口通過(guò)TCP/IP協(xié)議進(jìn)行網(wǎng)絡(luò)通信,采集系統(tǒng)的軟件設(shè)計(jì)需首先具備TCP/IP的通信功能,同時(shí)要具備從TCP/IP數(shù)據(jù)流中解包和封包數(shù)據(jù)幀的功能,從而獲得狀態(tài)信息或控制雷達(dá)設(shè)備。采集系統(tǒng)還需具備通信保持功能,即能定時(shí)(每隔20秒)向設(shè)備發(fā)送“心跳包”,保持一直在線。
前文分析了監(jiān)控?cái)?shù)據(jù)的通信協(xié)議,在此基礎(chǔ)上可以進(jìn)行特定功能幀的構(gòu)建。以向雷達(dá)發(fā)送08幀,控制雷達(dá)2號(hào)收發(fā)機(jī)主電源開(kāi)啟的例子進(jìn)行說(shuō)明,如表3-2特定功能幀的構(gòu)建所示:其中,幀頭幀尾固定,分別為1002H和1003H;收發(fā)機(jī)地址為02H,表示2號(hào)機(jī);幀號(hào)是08H;數(shù)據(jù)長(zhǎng)度是指數(shù)據(jù)域的長(zhǎng)度,為0004H;這里對(duì)Data Field的構(gòu)建是主要的,根據(jù)ICD對(duì)08幀的定義,其數(shù)據(jù)域由3部分構(gòu)成,分別為參數(shù)類(lèi)型,參數(shù)號(hào)(占兩字節(jié))和參數(shù)值,得到數(shù)據(jù)域?yàn)?0000101H,其中的最后一個(gè)字節(jié)01H表示設(shè)置主電源為O N;校驗(yàn)和通過(guò)如下計(jì)算求得:02H+00H+08H+00H+04H+00H+00H+01H+0 1H= 10H。
表3-2特定功能幀的構(gòu)建
以上例子僅是構(gòu)建一個(gè)實(shí)現(xiàn)特定功能的通信幀的例子,實(shí)際上,為了實(shí)現(xiàn)特定功能需要構(gòu)建大量的特定通信幀。除了參數(shù)設(shè)置,更重要的是獲取雷達(dá)的狀態(tài)、參數(shù)信息,因此需要接收雷達(dá)發(fā)送的各種通信幀,并從中解出各種狀態(tài)、參數(shù)信息。根據(jù)以上例子的構(gòu)建方法可以構(gòu)建出其他特定通信幀。這些幀的構(gòu)建是進(jìn)行數(shù)據(jù)采集通信編程的基礎(chǔ)。
采集系統(tǒng)以windows 的MICROSOFT.NET為平臺(tái),通過(guò)C#編程實(shí)現(xiàn)。C#編程語(yǔ)言提供了多種設(shè)計(jì)模式,本文在進(jìn)行采集系統(tǒng)編程的過(guò)程中,采用了C#的觀察者設(shè)計(jì)模式,將采集系統(tǒng)的軟件結(jié)構(gòu)分為程序與場(chǎng)監(jiān)雷達(dá)的數(shù)據(jù)接口模塊、雷達(dá)模塊狀態(tài)顯示模塊、雷達(dá)歷史告警信息模塊、程序與集中通信服務(wù)器的接口模塊、監(jiān)控主界面錯(cuò)誤及告警信息模塊和場(chǎng)監(jiān)雷達(dá)參數(shù)模塊。其中場(chǎng)監(jiān)雷達(dá)的數(shù)據(jù)接口模塊作為觀察者設(shè)計(jì)模式中的主題角色,也是編程的核心模塊。采集系統(tǒng)的一大功能便是與雷達(dá)進(jìn)行通信,獲取各種狀態(tài)信息和參數(shù)等。在軟件中專(zhuān)門(mén)設(shè)計(jì)一個(gè)數(shù)據(jù)接口模塊來(lái)獲取這些信息,當(dāng)該模塊取到信息后,它能自動(dòng)地將這些信息及時(shí)地通知到軟件中的其他功能模塊。
鑒于篇幅,這里主要對(duì)系統(tǒng)軟件的主界面模塊進(jìn)行說(shuō)明,如圖4-1所示,它包含三個(gè)功能塊,即場(chǎng)監(jiān)雷達(dá)模塊的狀態(tài)顯示、場(chǎng)監(jiān)雷達(dá)收發(fā)機(jī)的錯(cuò)誤與告警信息顯示及雷達(dá)工作狀態(tài)三個(gè)功能塊,同一個(gè)界面集中了雷達(dá)的主要信息顯示,有利于設(shè)備維護(hù)人員隨時(shí)把握雷達(dá)的整體工作狀態(tài)。
圖4-1采集系統(tǒng)軟件主界面
本文研發(fā)的采集軟件運(yùn)行在一臺(tái)裝有WINDOWS XP系統(tǒng)的戴爾臺(tái)式計(jì)算機(jī)上,該計(jì)算機(jī)現(xiàn)放置于白云國(guó)際機(jī)場(chǎng)航管塔臺(tái)的十四樓,通過(guò)光MODEM、光纜與塔臺(tái)十七樓的場(chǎng)監(jiān)雷達(dá)設(shè)備的以太網(wǎng)接口進(jìn)行連接。采集計(jì)算機(jī)獲取的雷達(dá)狀態(tài)、參數(shù)通過(guò)串口、光MODEM傳輸?shù)胶焦軜撬臉堑募斜O(jiān)控電腦,之后這些信息將層層上傳,最終匯總到總局空管局的集中監(jiān)控系統(tǒng)。目前該系統(tǒng)已投入實(shí)際使用,運(yùn)行可靠、穩(wěn)定,實(shí)現(xiàn)了預(yù)期的各項(xiàng)功能。
本文分析了丹麥Terma場(chǎng)監(jiān)雷達(dá)監(jiān)控?cái)?shù)據(jù)通信協(xié)議,在此基礎(chǔ)上闡述了該設(shè)備的監(jiān)控與狀態(tài)采集系統(tǒng)的構(gòu)建方案,并用C#編程語(yǔ)言的觀察者設(shè)計(jì)模式成功地實(shí)現(xiàn)了采集系統(tǒng)。該系統(tǒng)不僅解決了民航空管設(shè)備集中監(jiān)控系統(tǒng)對(duì)場(chǎng)監(jiān)雷達(dá)狀態(tài)采集的需求,同時(shí)它能作為現(xiàn)有場(chǎng)監(jiān)雷達(dá)監(jiān)控系統(tǒng)的有力補(bǔ)充和備份,可以滿足空管設(shè)備保障部門(mén)對(duì)設(shè)備監(jiān)視和現(xiàn)場(chǎng)運(yùn)行方面的更高要求,具有一定實(shí)際意義。
[1]TERMA.RTCM Remote Transceiver Control & Monitoring,262105 HO REV.C
[2]TERMA.SCANTER 2001 Radar Transceiver External Interface Specification,262001-DI-C
[3](美)李(Lee,W.M.)著,田國(guó)法,吳蘭陟譯.C# 與 VB.NET網(wǎng)絡(luò)通信開(kāi)發(fā)實(shí)戰(zhàn).北京:人民郵電出版社,2008.8
[4]謝玉蘭.論首都機(jī)場(chǎng)場(chǎng)面監(jiān)視雷達(dá)及系統(tǒng)的建設(shè).民航經(jīng)濟(jì)與技術(shù)空中交通管理,1998年12期