賈海艷,于瑞年
(解放軍92941部隊(duì),遼寧 葫蘆島 125000)
遙測信息是指揮人員實(shí)時監(jiān)控及進(jìn)行決策的重要依據(jù),尤其是出現(xiàn)意外、查找問題時更是意義重大。由于不同任務(wù)遙測數(shù)據(jù)流編碼、處理和顯示要求差異巨大,通常每一套處理軟件只適應(yīng)特定的一種任務(wù),為適應(yīng)不同任務(wù)需求必須頻繁修改軟件,軟件維護(hù)工作量大,因此需要對遙測數(shù)據(jù)處理技術(shù)進(jìn)行研究。從遙測數(shù)據(jù)處理研究的現(xiàn)狀看,遙測事后數(shù)據(jù)處理對通用性方面研究的比較多。文獻(xiàn)[1]中通過建立數(shù)據(jù)庫模型的方法對遙測數(shù)據(jù)通用化處理進(jìn)行了討論,對周期不一致問題是通過事后添加時間的方式進(jìn)行解決,這種處理方法不適合實(shí)時數(shù)據(jù)處理;文獻(xiàn)[2]選取最具代表性的3種遙測幀結(jié)構(gòu)進(jìn)行總結(jié)分析,并在此基礎(chǔ)上闡述了遙測事后數(shù)據(jù)處理關(guān)鍵技術(shù);文獻(xiàn)[3]提出了采用Qt開發(fā)包實(shí)現(xiàn)遙測數(shù)據(jù)實(shí)時處理通用化的設(shè)計方案,是通過軟件架構(gòu)設(shè)計實(shí)現(xiàn)通用化處理;文獻(xiàn)[4]利用組件化及系統(tǒng)可配置的設(shè)計思想,提出了一種高度靈活、可配置的遙測數(shù)據(jù)實(shí)時處理方法。這兩種方法都滿足遙測數(shù)據(jù)處理實(shí)時性要求,但都沒有對遙測數(shù)據(jù)幀結(jié)構(gòu)類型進(jìn)行總結(jié),缺少對特殊情況下復(fù)雜幀結(jié)構(gòu)的處理措施,通用性不強(qiáng)。針對目前缺少既滿足遙測數(shù)據(jù)實(shí)時性處理同時又兼顧特殊情況下復(fù)雜幀結(jié)構(gòu)處理的方法,提出多任務(wù)遙測數(shù)據(jù)實(shí)時處理系統(tǒng)。
遙測數(shù)據(jù)實(shí)時處理就是實(shí)時接收遙測流并即時進(jìn)行處理,即將遙測參數(shù)實(shí)時從原始測量數(shù)據(jù)中分路提取出來,解算成實(shí)際物理量值的過程。遙測數(shù)據(jù)實(shí)時處理需要在系統(tǒng)出現(xiàn)故障時,也要盡可能地保障實(shí)時性,因此需要具有容錯能力。遙測數(shù)據(jù)實(shí)時處理系統(tǒng)典型架構(gòu)如圖1所示。
圖1 系統(tǒng)典型架構(gòu)圖Fig.1 A typical system architecture diagram
處理系統(tǒng)按功能自底向上分為采集層、處理層及交互層。采集層主要是接收原始各路數(shù)據(jù)流并傳輸?shù)教幚碓O(shè)備,數(shù)據(jù)處理層主要實(shí)現(xiàn)數(shù)據(jù)的分路與并路及利用公式進(jìn)行最終解算,交互層用于測量原始數(shù)據(jù)流及解算結(jié)果的展示。
遙測幀是原始遙測數(shù)據(jù)流存儲和傳輸?shù)幕窘Y(jié)構(gòu),遙測幀不僅包括子幀、副幀、特殊副幀,而且包括復(fù)用幀、1553B總線等特殊形式的幀結(jié)構(gòu)。不同任務(wù)對應(yīng)不同類型遙測幀結(jié)構(gòu),同一任務(wù)遙測幀結(jié)構(gòu)也可能不同,因此系統(tǒng)通用化設(shè)計和研制難度較大。通過對典型幀結(jié)構(gòu)的總結(jié)與分析,研究遙測數(shù)據(jù)實(shí)時處理關(guān)鍵技術(shù),實(shí)現(xiàn)數(shù)據(jù)處理環(huán)節(jié)和效率的優(yōu)化。
雖然遙測數(shù)據(jù)流幀結(jié)構(gòu)不盡相同,各有特點(diǎn),但仍存在一定的共性。通過對遙測數(shù)據(jù)流幀結(jié)構(gòu)進(jìn)行分析發(fā)現(xiàn),數(shù)據(jù)解算過程都類似樹、枝、葉之間的關(guān)系,從整體到局部層層遞進(jìn),如圖2所示。如果將數(shù)據(jù)幀采用某種方式進(jìn)行規(guī)范化表示,遙測實(shí)時處理軟件就能適應(yīng)各種遙測數(shù)據(jù)流處理,因此設(shè)計了一種分層協(xié)議樹數(shù)據(jù)架構(gòu)實(shí)現(xiàn)對遙測數(shù)據(jù)的解析。
圖2 遙測數(shù)據(jù)解算樹狀圖Fig.2 Solution tree of telemetry data
分層協(xié)議樹數(shù)據(jù)架構(gòu)如表1所示,數(shù)據(jù)結(jié)構(gòu)采用7個字段來進(jìn)行描述。
表1中Beginpos,Blength及IDBlength字段確定樹的位置,IDvalue,Vbytes及Function字段確定枝的位置,Content字段表示葉的位置,葉表示要解算的遙測參數(shù)。針對分層數(shù)據(jù)結(jié)構(gòu),設(shè)計遙測數(shù)據(jù)解析過程,流程圖如圖3所示。
表1 分層數(shù)據(jù)結(jié)構(gòu)Tab.1 Layered data structure
圖3 遙測數(shù)據(jù)解析實(shí)現(xiàn)流程圖Fig.3 Flow chart of telemetry data analysis
首先從“樹”節(jié)點(diǎn)對數(shù)據(jù)包解析,解析出“樹”節(jié)點(diǎn)的數(shù)據(jù)內(nèi)容,以此數(shù)據(jù)內(nèi)容為數(shù)據(jù)包,遞歸對其子節(jié)點(diǎn)即“枝”、“葉”進(jìn)行解析,直到參數(shù)解算完成。
通過配置表完成分層協(xié)議樹的賦值,配置表設(shè)計如表2—表4所示。配置表的完成通過遙測方案規(guī)劃來實(shí)現(xiàn),遙測方案規(guī)劃在人機(jī)交互界面完成,通過后臺程序?qū)懭霐?shù)據(jù)庫。
表2 樹層配置表Tab.2 Root layer configuration table
表3 枝層配置表Tab.3 Branch layer configuration table
表4 葉層配置表Tab.4 leaf layer configuration table
配置表是在系統(tǒng)啟動前完成的。對于不同的任務(wù),數(shù)據(jù)處理人員不必更改程序代碼,只需針對相應(yīng)遙測數(shù)據(jù)幀結(jié)構(gòu)完成遙測方案規(guī)劃即可。
不同任務(wù)處理遙測數(shù)據(jù)流的數(shù)量是不同的,一個設(shè)備可能有一路或多路遙測數(shù)據(jù)流,設(shè)備越多,數(shù)據(jù)流的數(shù)量就越多。通常對數(shù)據(jù)流的處理方式是按照時間和位置的順序進(jìn)行拼接[5-7]。這種方式雖然減少了處理數(shù)據(jù)的工作量,但沒有充分利用所有信息源的遙測數(shù)據(jù),使得到的信息不夠全面,對處理出的數(shù)據(jù)進(jìn)行實(shí)時決策時缺乏整體的認(rèn)識,遇到關(guān)鍵問題缺少判斷的依據(jù)。因此設(shè)計了多路遙測數(shù)據(jù)并行處理與優(yōu)選,利用多線程數(shù)據(jù)處理技術(shù)[8-9],將一路遙測數(shù)據(jù)流設(shè)計為一個線程,使多路遙測數(shù)據(jù)在不同線程中同時處理,實(shí)現(xiàn)多路遙測數(shù)據(jù)并行處理。針對遙測實(shí)時處理數(shù)據(jù)采集量大,實(shí)時性要求高的特點(diǎn),在系統(tǒng)設(shè)計時需要應(yīng)用安全隊(duì)列技術(shù)。安全隊(duì)列的作用就是對數(shù)據(jù)起到緩沖作用,防止大流量數(shù)據(jù)來臨時,信息來不及處理出現(xiàn)丟幀。同時,安全隊(duì)列也是運(yùn)用多線程技術(shù)進(jìn)行數(shù)據(jù)處理的基礎(chǔ)。安全隊(duì)列處理方法是以隊(duì)列為數(shù)據(jù)存儲結(jié)構(gòu),將數(shù)據(jù)臨時存儲在隊(duì)列中,按照先進(jìn)先出的原則處理,同時使安全隊(duì)列成為自動事件觸發(fā)多線程,并且可以被多線程安全使用的數(shù)據(jù)結(jié)構(gòu)。對于多路遙測數(shù)據(jù)系統(tǒng)中通常只選取一路進(jìn)行輸出。傳統(tǒng)的選優(yōu)方法存在高優(yōu)先級的質(zhì)量不好的數(shù)據(jù)被選擇輸出的問題,這直接導(dǎo)致遙測實(shí)時數(shù)據(jù)處理精度降低。針對此類問題提出增加基于原始幀的融合數(shù)據(jù)做為一路高優(yōu)先級信息源參與選優(yōu),提高遙測實(shí)時數(shù)據(jù)處理的精度[10-11]。
基于原始子幀的融合數(shù)據(jù)是對同一目標(biāo)從多個遙測設(shè)備接收的基于二進(jìn)制源碼的原始數(shù)據(jù)子幀中采用時差修正、丟幀插補(bǔ)、拼接檢查等步驟進(jìn)行處理[12-13],然后形成一個包含完整幀結(jié)構(gòu)流的遙測數(shù)據(jù)包。這路融合結(jié)果去除了由于丟幀導(dǎo)致的亂散數(shù)據(jù),精度較高。原始幀融合過程如圖4所示。
圖4 遙測原始幀數(shù)據(jù)流生成Fig.4 Generation of telemetry original frame data stream
在任務(wù)執(zhí)行過程中存在以下三個問題:
1) 測試并不能檢測出程序的所有問題,在程序運(yùn)行過程中如有意外發(fā)生,導(dǎo)致按照正常的處理過程輸出處理結(jié)果,造成處理結(jié)果質(zhì)量差或錯誤,影響任務(wù)的決策;
2) 任務(wù)日益復(fù)雜的情況下有時有多變性的需求;
3) 采取人機(jī)結(jié)合以人為主地切換方式,確保每次操作準(zhǔn)確性。
因此采用在線控制技術(shù)設(shè)計了遙測實(shí)時處理作業(yè)人工干預(yù)機(jī)制,在原來封閉運(yùn)行的實(shí)時數(shù)據(jù)處理過程中,把人的因素加進(jìn)去,使用人為干預(yù)的手段對進(jìn)程施加影響,支持任務(wù)執(zhí)行過程中不停止作業(yè)情況下,動態(tài)調(diào)整遙測設(shè)備分工,增加或修改遙測參數(shù),可滿足復(fù)雜任務(wù)的遙測狀態(tài)快速切換和突發(fā)情況應(yīng)急參數(shù)處理要求。
人工干預(yù)處理包流程圖如圖4所示。
圖5 人工干預(yù)處理包Fig.5 Manual intervention processing package
多任務(wù)實(shí)時遙測數(shù)據(jù)處理系統(tǒng)采用VC++開發(fā)實(shí)現(xiàn),系統(tǒng)運(yùn)行穩(wěn)定。
為驗(yàn)證系統(tǒng)性能,完成兩個仿真任務(wù),每個任務(wù)具有3路遙測數(shù)據(jù),在不修改軟件代碼情況下實(shí)現(xiàn)多任務(wù)處理,并且實(shí)現(xiàn)了并行處理與優(yōu)選。圖6、圖7給出各路遙測數(shù)據(jù)的處理結(jié)果。將數(shù)據(jù)處理結(jié)果與真值進(jìn)行比對,結(jié)果表明該系統(tǒng)完全符合技術(shù)指標(biāo)要求。
圖6 仿真任務(wù)1遙測時間速度變化率結(jié)果Fig.6 Time velocity change rate results of simulation the first task telemetry data
圖7 仿真任務(wù)2時間角度變化率結(jié)果Fig.7 Time angle change rate results of simulation the second task telemetry data
圖8為以遙測數(shù)據(jù)高度為例,多路遙測數(shù)據(jù)并行處理時融合信息源的處理結(jié)果與某原始單信息源的比較結(jié)果。通過融合后完整幀數(shù)與某設(shè)備接收完整幀數(shù)比對,完整幀數(shù)數(shù)目增加7.24%。
圖9為在線控制技術(shù)的實(shí)現(xiàn)。某目標(biāo)處于任務(wù)狀態(tài),點(diǎn)擊此目標(biāo)就會彈出刪除目標(biāo)對話框,點(diǎn)擊此對話框目標(biāo)就會刪除,與目標(biāo)關(guān)聯(lián)的所有數(shù)據(jù)都會隨之刪除。
圖9 在線實(shí)時控制Fig.9 Online real-time control
本文提出了多任務(wù)遙測數(shù)據(jù)實(shí)時處理系統(tǒng)。該系統(tǒng)利用遙測數(shù)據(jù)流結(jié)構(gòu)邏輯分層軟件定義、多路遙測數(shù)據(jù)并行處理與優(yōu)選及遙測作業(yè)實(shí)時在線控制等技術(shù)設(shè)計,滿足遙測數(shù)據(jù)實(shí)時處理通用性、實(shí)時性、可靠性需求,能夠提供全面準(zhǔn)確的遙測數(shù)據(jù),支持在任務(wù)執(zhí)行過程中不停止作業(yè)的情況下,動態(tài)調(diào)整遙測設(shè)備分工,增加或修改遙測參數(shù),滿足復(fù)雜任務(wù)的遙測狀態(tài)快速切換和突發(fā)情況應(yīng)急參數(shù)處理要求。使用結(jié)果表明該系統(tǒng)具有遙測數(shù)據(jù)處理需求的動態(tài)適應(yīng)能力,具備對不同任務(wù)良好的兼容性。