錢 良,徐玉鋒
(中國衛(wèi)星海上測控部,江蘇江陰214431)
船載天地超短波通信系統(tǒng)在設計時就加入了對主要設備的監(jiān)控功能,并將監(jiān)控數據記錄到數據庫中。監(jiān)控數據包括設備狀態(tài)和外部數據兩部分,前者記錄了設備各分系統(tǒng)的電壓、頻率和狀態(tài)指示等數據;后者記錄了外部引導數據和監(jiān)控中心指令等數據[1]。但是系統(tǒng)的操作軟件在查詢相關數據時只以簡單的表格形式顯示,由于數據量巨大(單項數據每個圈次大約150條記錄),使用者根據監(jiān)控數據難以迅速地判斷出設備的工作狀態(tài),同時,監(jiān)控所記錄的數據為設備的原始數據,缺乏對數據的進一步處理,使用者必須自行對數據進行分析判斷,效率低下,對使用者的工作經驗也提出了較高的要求;另一方面,由于監(jiān)控數據記錄在VHF通信系統(tǒng)的監(jiān)控計算機上,查詢時也只能在該計算機上執(zhí)行,查詢時較為不便。
目前VHF系統(tǒng)監(jiān)控功能的不足,使其無法發(fā)揮出數據監(jiān)控應有的作用,因此,需要加強數據查詢功能,增加對數據的處理功能,有必要建立一套能夠有效利用設備監(jiān)控數據的系統(tǒng),幫助崗位人員了解設備狀態(tài),做出正確的判斷。
項目主要需要實現以下幾個目標:①實現設備相關監(jiān)控數據的網絡化查詢;②依據指標監(jiān)視設備參數狀態(tài),出現異常則發(fā)出告警;③ 實現監(jiān)控數據的圖形化顯示;④為日后接入試驗任務IP網,預留通信接口;⑤具有較強的通用性,易于擴展,方便移植;⑥有效地利用網絡帶寬。
該系統(tǒng)的建立將有效地幫助崗位人員全面地掌握設備情況,迅速判斷出VHF通信系統(tǒng)所處狀態(tài),并且能夠實現對天地超短波通信系統(tǒng)設備狀態(tài)的遠程監(jiān)視,便于技術專家遠程監(jiān)視設備狀態(tài),發(fā)現安全隱患,并根據狀態(tài)參數做出診斷。系統(tǒng)所預留的通信接口也為其日后接入基地試驗任務IP網打下了基礎。
VHF數據綜合顯示系統(tǒng)主要用于對VHF天地超短波通信系統(tǒng)的伺服參數、設備狀態(tài)數據等的遠程監(jiān)視。VHF天地超短波通信系統(tǒng)將監(jiān)控數據發(fā)送到綜合顯示系統(tǒng)。綜合顯示系統(tǒng)對接收到的監(jiān)控數據進行選擇、處理,將其轉化為XML數據,同時將實際數據與相應的指標進行對比,判斷設備狀態(tài)是否正常,若異常則發(fā)出告警。遠程監(jiān)控終端通過局域網訪問綜合顯示系統(tǒng),從而在其瀏覽器上通過柱狀圖、餅圖、線圖來監(jiān)視VHF設備的狀態(tài)。從而實現了對VHF天地超短波通信系統(tǒng)進行遠程監(jiān)視,提高了對設備的遠程監(jiān)視和診斷的能力,具體連接關系如圖1所示。
圖1 系統(tǒng)連接關系
VHF數據綜合顯示系統(tǒng)分為數據源、中間層和顯示層3個層次。數據源包含了VHF通信系統(tǒng)監(jiān)控分系統(tǒng)所記錄的設備監(jiān)控數據;中間層主要完成對所需數據的選擇和處理,生成符合規(guī)范的XML數據,其中的通信接口負責與外界進行通信[2,3](如上報重要設備信息等);顯示層包含了2個部分:用戶界面和圖形化顯示,其中,圖形化顯示是本系統(tǒng)的重點和難點。系統(tǒng)層次結構如圖2所示。
圖2 系統(tǒng)層次關系
2.2.1 數據源
數據源層包括:伺服、發(fā)射機、接收機、保密機、復分接器和設備頻率的監(jiān)控數據,這些數據反映了VHF天地超短波通信系統(tǒng)的工作狀態(tài)。各狀態(tài)具體意義如下:
①伺服狀態(tài):伺服在各時間點的方位角、俯仰角、伺服操作方式(程序引導、數字引導、模擬引導、手動跟蹤)和設備自檢狀態(tài)。
②發(fā)射機狀態(tài):發(fā)射機在各時間點的發(fā)射功率、反射功率、基帶電平狀態(tài)。
③接收機狀態(tài):接收機在各時間點的解擴鎖定狀態(tài)、解調鎖定狀態(tài)、中頻放大電壓值。
④保密機狀態(tài):保密機在各時間點的明話/密話狀態(tài)、同步狀態(tài)、主備用情況。
⑤復分接器狀態(tài):復分接器在各時間點的同步狀態(tài)、飛船同步狀態(tài)、主備用情況,一機和二機的工作狀態(tài)。
⑥頻率:各時間點的發(fā)射頻率和本振頻率。
數據源層負責根據用戶的需求將相關的數據從數據庫中提取出來。系統(tǒng)在實際使用中通過不同的參數進行數據的選擇,主要參數包括:需要檢查的設備、檢查的項目和圈次。系統(tǒng)由這些參數生成對應的數據庫查詢語句,數據庫查詢語句在數據庫執(zhí)行后即返回對應的數據。
2.2.2 中間層
中間層負責將從數據源獲得的數據進行處理,并按照制定好的格式填寫到XML文件中,完成之后發(fā)往終端用戶[4-6]。中間層使用了 Ajax技術,Ajax全稱為“Asynchronous JavaScript and XML”(異步JavaScript和XML),是一種創(chuàng)建交互式網頁應用的網頁開發(fā)技術[7],是傳統(tǒng)WEB應用程序的一個轉變,Ajax應用可以僅向服務器發(fā)送并取回必需的數據,使得在服務器和瀏覽器之間交換的數據大量減少,結果就能使響應更加迅速,從而能夠有效地節(jié)約網絡帶寬,在系統(tǒng)的數據傳輸過程中,所傳內容主要是參數和XML數據,在獲取數據之后,頁面也僅對需要更新的部分進行更新,確保了數據交互的高效率。
中間層主要分為數據選擇模塊、數據處理模塊、XML轉換模塊和通信接口模塊。
①數據選擇模塊依據用戶要求查看的設備,將相應的監(jiān)控數據從數據源中選出,傳遞給數據處理模塊。
②數據處理模塊從數據選擇模塊接收相應的數據,并對數據進行處理,使其符合系統(tǒng)的要求,處理完畢后進行XML轉換;數據處理模塊還負責將實際監(jiān)控數據與設備指標進行比對,以判斷設備工作是否正常。
③XML轉換模塊。將處理后的數據依照事先制定的XML文檔格式進行組織,使其符合XML文檔的標準結構,處理完畢的XML數據即可在網絡上正常傳遞。
④通信接口模塊。通信接口用于本系統(tǒng)與外界進行通信,同樣采用XML形式收發(fā)信息,信息可以根據需要進行定義,例如在設備參數發(fā)生異常時上報、接收文字消息等。
2.2.3 顯示層
顯示層用于完成通過Javascript代碼按照XML文檔內的設置將文檔內的數據進行圖形渲染,生成最終用戶所需的PNG圖像[8]。Javascript代碼首先讀取XML文檔的選項部分,對圖表初始化,之后依照數據部分的監(jiān)控數據將圖表內的點逐個在圖表上描出,再將所有各點連接成曲線,形成最終的圖像。
顯示層包括用戶界面模塊和數據顯示模塊。
①用戶界面模塊是連接用戶與系統(tǒng)的紐帶,用于根據用戶需求向上層功能模塊發(fā)出相應的指令,例如查看某一設備狀態(tài)。
②數據顯示模塊是本系統(tǒng)的開發(fā)重點,負責讀取從中間層傳遞來的XML數據,并以圖形的方式將其中的數據顯示出來;數據顯示模塊還負責顯示告警信息,以文字形式顯示。
本系統(tǒng)采用B/S模式,圖形編程在瀏覽器上通過Javascript來實現。Javascript代碼通過操作<canvas>對象實現圖形渲染,<canvas>是一個新的HTML元素,已經在HTML5.0標準中獲得確認,主要用于矢量圖繪制[9]。該對象可以渲染四邊形、扇形和任意的多邊形,因此顯示層所做的就是將所要呈現的圖像分解成以上這3種基本的圖形。顯示層需要顯示3種圖形:柱狀圖、餅圖和線圖。柱狀圖可分解為四邊形,餅圖分解為扇形,而線圖實際為多邊形,由此實現監(jiān)控數據的圖形化顯示[10]。
系統(tǒng)工作流程如圖3所示。用戶通過點擊對應的按鈕選擇需要顯示的設備監(jiān)控數據,顯示層的用戶界面部分將相應的參數發(fā)往綜合顯示系統(tǒng)。綜合顯示系統(tǒng)將收到的參數進行處理,形成數據庫查詢語句,發(fā)往數據庫。數據庫將相應的數據返回給綜合顯示系統(tǒng),并對這些數據進行處理。綜合顯示系統(tǒng)將處理完畢的數據按照事先編寫的XML文檔格式填寫到XML文件中。將XML文件發(fā)送到用戶計算機,交由瀏覽器解析。瀏覽器通過Javascript代碼按照文檔內的設置將XML文檔內的數據進行圖形渲染,生成最終用戶所需的PNG圖像。
圖3 系統(tǒng)工作流程
圖4顯示了伺服系統(tǒng)方位角、俯仰角的實際變化情況,以及數據引導方位角、俯仰角的變化情況,可以看到伺服的實際工作情況與引導數據之間僅存在微小差別,說明伺服系統(tǒng)工作正常。
圖4 方位角、俯仰角曲線圖
由伺服曲線圖可知,伺服在開始跟蹤和結束跟蹤時角度變化緩慢,而在最高仰角時角度變化最為迅速,而僅通過表格形式是很難迅速做出這樣的判斷的。中放電壓是體現接收機工作狀態(tài)的一項重要指標,圖5(a)顯示了中放的電壓值,圖5(b)顯示了對應時間中放電壓以2 V為基準的電壓值。在實戰(zhàn)任務中,中放電壓存在短時間的突跳,但持續(xù)時間很短,不影響系統(tǒng)的正常工作。若持續(xù)時間過長,則應對設備進行檢修。
圖5 中放電壓曲線
將設備監(jiān)控數據以圖形的方式通過瀏覽器顯示,利用網絡的便利性,使得用戶能夠在網絡內任意節(jié)點直觀迅速地了解系統(tǒng)內設備的工作狀態(tài),具有很強的實用價值,是崗位人員檢測設備狀態(tài)十分有效的手段。同時本系統(tǒng)具有很強的可移植性,應用領域不僅限于VHF系統(tǒng),其他系統(tǒng)在經過適當改造之后也能夠采用。
[1]張兵山.天地超短波通信培訓教材[M].北京:2007:25-37.
[2]陳 曦.基于Ajax構建Web應用程序的研究[J].古林化工學院學報,2009,24(2):51 -52.
[3]張 琳,張國平.XML數據島結合AJAX實現Web的異步刷新[J].電子設計工程,2012,16(20):39 -41.
[4]李為健,卞藝杰.基于DWR和EXT的Ajax應用研究與實現[J].計算機與現代化,2010,1(4):66 -67.
[5]張 龍,肖琬蓉.集群數據庫內容管理系統(tǒng)的設計與實現[J].情報雜志,2012(2):15-17.
[6]楊振東,何 宏,丁 勇.基于Web的機場油料供應管理系統(tǒng)的設計[J].計算機應用與軟件,2012,29(6):69-71.
[7]JACOBS S.Beginning XML with DOM and Ajax[M].Berkly Apress,2005:24-40.
[8]楊秀梅,羅顯剛,楊秀紅.基于WebGIS云南滑坡災害氣象預警分析模型[J].地理信息世界,2012,8(4):36-40.
[9]FLANAGAN D.JavaScript:The Definitive Guide 5th Edition[M].Foster O'Reilly,2006:94 -102.
[10]沈曉星,焦方成,孫 劍.基于VML和AJAX繪制站點的實況曲線圖[J].科技信息,2012(11):72-73.