• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      民機(jī)試飛遙測(cè)實(shí)時(shí)數(shù)據(jù)處理軟件設(shè)計(jì)與研發(fā)

      2022-12-26 13:35:50李成浩
      計(jì)算機(jī)測(cè)量與控制 2022年12期
      關(guān)鍵詞:視頻流遙測(cè)數(shù)據(jù)包

      劉 濤,馮 燦,李成浩

      (中國(guó)商飛民用飛機(jī)試飛中心,上海 200232)

      0 引言

      民機(jī)試飛是指在真實(shí)的環(huán)境中對(duì)飛機(jī)進(jìn)行測(cè)試的過程,以驗(yàn)證其功能和性能是否滿足相關(guān)適航條款規(guī)定,也是民機(jī)投放市場(chǎng)的必由之路[1]。用于試飛測(cè)試的飛機(jī)與航空公司運(yùn)營(yíng)的飛機(jī)不同,會(huì)抽引機(jī)體上各種總線,并在飛機(jī)上安裝各種傳感器、采集系統(tǒng)和數(shù)據(jù)處理設(shè)備,用于實(shí)時(shí)獲取反映飛機(jī)各個(gè)關(guān)鍵系統(tǒng)運(yùn)行狀態(tài)的參數(shù)和影像數(shù)據(jù),實(shí)現(xiàn)試飛過程中的實(shí)時(shí)監(jiān)控,保障飛行安全。試飛實(shí)時(shí)監(jiān)控又分為機(jī)載監(jiān)控和遙測(cè)地面監(jiān)控,其中,遙測(cè)地面監(jiān)控是指將采集后參數(shù)數(shù)據(jù)和視頻流經(jīng)過PCM(pulse code modulation,脈沖編碼調(diào)制)編碼,并采用無線傳輸?shù)姆绞絺鬟f到地面,利用地面系統(tǒng)進(jìn)行數(shù)據(jù)的接收和解析,為試飛工程師、地面指揮人員、飛機(jī)設(shè)計(jì)人員等提供決策依據(jù)[2-4],是飛行試驗(yàn)開展過程中最重要的監(jiān)控模式。隨著大量先進(jìn)總線在飛機(jī)上的使用以及網(wǎng)絡(luò)化測(cè)試系統(tǒng)的普及,試飛測(cè)試參數(shù)的數(shù)量越發(fā)繁多,類型也越發(fā)復(fù)雜,以某國(guó)產(chǎn)大型客機(jī)為例,其用于遙測(cè)地面監(jiān)控的試飛測(cè)試參數(shù)就超過了10 000個(gè)。

      遙測(cè)數(shù)據(jù)實(shí)時(shí)處理軟件是地面系統(tǒng)中不可或缺的關(guān)鍵組件,主要功能是結(jié)合機(jī)載測(cè)試系統(tǒng)的采集格式、參數(shù)測(cè)試信息、校準(zhǔn)信息和ICD信息,完成遙測(cè)數(shù)據(jù)的實(shí)時(shí)解算、工程量轉(zhuǎn)換和原始數(shù)據(jù)保存[5]。但傳統(tǒng)的遙測(cè)數(shù)據(jù)實(shí)時(shí)處理軟件功能單一,存在以下不足:

      1)實(shí)時(shí)處理參數(shù)量有限,往往不超過2 000個(gè),無法滿足當(dāng)前多參數(shù)的實(shí)時(shí)監(jiān)控需求;

      2)參數(shù)和視頻流解析一般采用分離模式,對(duì)兩者的混合編碼無法解析;

      3)受制于軟件性能,無法進(jìn)行較為復(fù)雜的參數(shù)計(jì)算和分析。

      因此,為了滿足某大型民機(jī)試飛安全監(jiān)控需求,需要研制一套新的遙測(cè)數(shù)據(jù)實(shí)時(shí)處理軟件,實(shí)現(xiàn)試飛過程中遙測(cè)參數(shù)及視頻流的實(shí)時(shí)解析、計(jì)算和存儲(chǔ)。

      1 系統(tǒng)結(jié)構(gòu)及原理

      遙測(cè)數(shù)據(jù)實(shí)時(shí)處理軟件由后端解析服務(wù)和前端顯示軟件兩部分構(gòu)成,集成了網(wǎng)絡(luò)配置、試飛參數(shù)配置、數(shù)據(jù)實(shí)時(shí)處理、數(shù)據(jù)記錄及監(jiān)控畫面顯示等多種功能,用以完成試飛參數(shù)的工程量處理及相關(guān)計(jì)算,并經(jīng)過網(wǎng)絡(luò)傳輸實(shí)時(shí)驅(qū)動(dòng)可視化監(jiān)控終端,達(dá)到對(duì)試飛狀態(tài)實(shí)時(shí)監(jiān)控的目的。軟件結(jié)構(gòu)如圖1所示。

      圖1 遙測(cè)地面實(shí)時(shí)數(shù)據(jù)軟件結(jié)構(gòu)示意圖

      后端解析服務(wù)主要由數(shù)據(jù)接收模塊、數(shù)據(jù)解析模塊、數(shù)據(jù)存儲(chǔ)模塊、數(shù)據(jù)傳輸模塊和任務(wù)控制模塊組成;前端顯示軟件包括了任務(wù)管理模塊、界面顯示模塊、算法處理模塊、數(shù)據(jù)同步模塊、異常告警模塊和日志信息模塊。前端顯示軟件和后端解析服務(wù)之間通過Redis數(shù)據(jù)庫及ZeroMQ消息隊(duì)列進(jìn)行數(shù)據(jù)交互。Redis數(shù)據(jù)庫是非關(guān)系型數(shù)據(jù)庫,屬于鍵值型數(shù)據(jù)存儲(chǔ)[6],Redis支持高并發(fā)的快速數(shù)據(jù)訪問,在本軟件中被用于各類狀態(tài)信息的前后端傳輸。ZeroMQ是一個(gè)并發(fā)框架,提供的套接字支持信息在線程和進(jìn)程間的多協(xié)議傳輸[7],本軟件使用ZeroMQ消息隊(duì)列用于實(shí)現(xiàn)各個(gè)模塊、各個(gè)線程間的數(shù)據(jù)安全通信。

      2 后端解析服務(wù)

      后端解析服務(wù)基于C++編程語言開發(fā),以控制臺(tái)形式運(yùn)行,在基礎(chǔ)框架上按照功能模塊使用多線程進(jìn)行數(shù)據(jù)的接收、處理和轉(zhuǎn)發(fā),通過消息隊(duì)列使用序列化協(xié)議進(jìn)行相關(guān)數(shù)據(jù)消息通信,同時(shí)集成了Redis數(shù)據(jù)庫進(jìn)行實(shí)時(shí)狀態(tài)的更新,并使用日志框架,對(duì)服務(wù)內(nèi)部運(yùn)行狀態(tài)進(jìn)行監(jiān)控和存儲(chǔ)。圖2是后端解析服務(wù)內(nèi)部工作流程圖。

      圖2 后端解析服務(wù)流程

      在實(shí)際工作時(shí),后端解析服務(wù)由前端顯示軟件通過發(fā)送開始、暫停、停止等指令控制任務(wù)處理過程,并根據(jù)各指令執(zhí)行情況,反饋執(zhí)行結(jié)果給前端顯示軟件。任務(wù)模式包括實(shí)時(shí)處理和數(shù)據(jù)回放兩種模式。兩種模式除了數(shù)據(jù)源不同,其他處理過程完全一致。其中,數(shù)據(jù)回放模式是指后端解析服務(wù)通過加載IRIG 106 CH10記錄文件,進(jìn)行數(shù)據(jù)的提取、解析和轉(zhuǎn)發(fā);實(shí)時(shí)模式則是針對(duì)IRIG 106 CH10的實(shí)時(shí)TCP或UDP數(shù)據(jù)流的處理。

      后端解析服務(wù)采用多線程調(diào)度實(shí)現(xiàn),各個(gè)功能模塊與線程的對(duì)應(yīng)關(guān)系如表1所示。

      表1 功能模塊與線程對(duì)應(yīng)表

      圖3為在實(shí)時(shí)處理和數(shù)據(jù)回放模式工作狀態(tài)下,各線程間指令、數(shù)據(jù)流從任務(wù)開始到結(jié)束的交互時(shí)序圖。

      圖3 線程調(diào)度示意圖

      在任務(wù)啟動(dòng)時(shí),任務(wù)控制模塊首先會(huì)開啟主控調(diào)度線程,將任務(wù)信息發(fā)送給數(shù)據(jù)接收模塊,同時(shí)將通道ID、遙測(cè)參數(shù)等結(jié)構(gòu)化配置信息發(fā)送至數(shù)據(jù)解析模塊;

      數(shù)據(jù)接收模塊通過對(duì)任務(wù)信息的解析,創(chuàng)建并開啟數(shù)據(jù)接收線程,接收實(shí)時(shí)數(shù)據(jù)流或者讀取記錄文件數(shù)據(jù),將IRIG-B碼數(shù)據(jù)、PCM參數(shù)數(shù)據(jù)、PCM視頻流數(shù)據(jù)傳輸至數(shù)據(jù)解析模塊和數(shù)據(jù)存儲(chǔ)模塊;

      數(shù)據(jù)解析模塊在收到主調(diào)度線程發(fā)來的通道ID和參數(shù)信息后會(huì)自動(dòng)創(chuàng)建對(duì)應(yīng)的處理線程,用于各類數(shù)據(jù)包的解析,解析后的數(shù)據(jù)被發(fā)送至數(shù)據(jù)傳輸模塊;

      數(shù)據(jù)存儲(chǔ)模塊將持續(xù)偵聽數(shù)據(jù)接收線程的PCM參數(shù)數(shù)據(jù)和PCM視頻流數(shù)據(jù),并根據(jù)控制指令按照任務(wù)信息完成數(shù)據(jù)的實(shí)時(shí)存儲(chǔ)。

      2.1 數(shù)據(jù)接收模塊

      數(shù)據(jù)接收模塊主要負(fù)責(zé)實(shí)時(shí)處理模式下網(wǎng)絡(luò)數(shù)據(jù)流的接收或數(shù)據(jù)回放模式下記錄文件中歷史數(shù)據(jù)的讀取,該模塊是整個(gè)軟件的數(shù)據(jù)源,其工作流程如圖4所示。

      圖4 數(shù)據(jù)接收模塊工作流程

      2.2 數(shù)據(jù)解析模塊

      無論在實(shí)時(shí)模式下還是回放模式下,遙測(cè)數(shù)據(jù)的本質(zhì)均為IRIG 106 CH10數(shù)據(jù)包,該數(shù)據(jù)格式由包頭、包主體和包尾組成,其結(jié)構(gòu)如圖5所示[8-10]。

      圖5 IRIG 106 CH10數(shù)據(jù)包格式

      其中,數(shù)據(jù)包包頭包含通道ID、數(shù)據(jù)包同步格式、數(shù)據(jù)包長(zhǎng)度、數(shù)據(jù)類型等關(guān)鍵要素;數(shù)據(jù)包包體可存放IRIG-B碼數(shù)據(jù)、PCM參數(shù)數(shù)據(jù)以及PCM視頻流數(shù)據(jù)。

      PCM的一般格式如圖6所示,每一行為一個(gè)子幀,多個(gè)子幀組成了主幀[11]。每個(gè)子幀均由Sync Word(同步字,一般為FE6B2840)、SFID(計(jì)數(shù)器)以及多個(gè)PCM Word組成。PCM Word可負(fù)載常用的航空總線數(shù)據(jù)(包括ARINC429、ARINC664、IMB總線等)、音頻數(shù)據(jù)和視頻數(shù)據(jù),總線數(shù)據(jù)均以消息的形式存放在PCM的格式格柵中[12-14]。

      圖6 PCM格式格柵

      數(shù)據(jù)解析模塊作為本軟件的核心功能模塊,主要負(fù)責(zé)數(shù)據(jù)包的格式解析、PCM幀處理、PCM參數(shù)計(jì)算和PCM視頻流解析。

      IRIG 106 CH10數(shù)據(jù)包在解析過程中,主要結(jié)合通道ID和數(shù)據(jù)類型進(jìn)行指定數(shù)據(jù)包的篩選[8]。提取的數(shù)據(jù)包將按照?qǐng)D7所示的流程進(jìn)行解析。

      圖7 PCM參數(shù)數(shù)據(jù)解析流程

      本軟件集成了IRIG 106 官方提供的解析庫,首先根據(jù)數(shù)據(jù)類型關(guān)鍵字(如當(dāng)數(shù)據(jù)類型的值為0x09時(shí)表示為PCM數(shù)據(jù))判斷數(shù)據(jù)包類型。當(dāng)數(shù)據(jù)包為PCM數(shù)據(jù)包時(shí),將按照遙測(cè)數(shù)據(jù)XML配置文件中參數(shù)和視頻流的描述信息,對(duì)數(shù)據(jù)包體內(nèi)容進(jìn)行解析。

      遙測(cè)數(shù)據(jù)XML配置信息以層級(jí)標(biāo)簽進(jìn)行描述,標(biāo)簽包括、、、。其中,是任務(wù),可以包含多個(gè),每個(gè)嵌入一個(gè)或多個(gè)PCM,可以是參數(shù)流也可以是視頻流,每個(gè)中則是多個(gè)不同類型的試飛參數(shù),包含參數(shù)名稱、參數(shù)在PCM子幀中的位置(SFID、Word)、取位、對(duì)應(yīng)掩碼、分辨率、采樣率等屬性。

      數(shù)據(jù)解析模塊以PCM子幀為單位,從數(shù)據(jù)包體中按照參數(shù)的位置和取位提取原碼,并將原碼與對(duì)應(yīng)掩碼進(jìn)行“與”計(jì)算,得到參數(shù)碼值P0,當(dāng)該子幀內(nèi)所有參數(shù)信息解析完成后實(shí)時(shí)轉(zhuǎn)發(fā)給數(shù)據(jù)傳輸模塊。

      PCM視頻流的編碼與參數(shù)不同,往往以“超采”的形式嵌在PCM數(shù)據(jù)幀中,如圖6所示,該主幀中包括三路嵌入式視頻,第一路視頻數(shù)據(jù)即為Word-01、Word-04、Word11、Word-14...Word-n1、Word-n4。在試飛領(lǐng)域,視頻編碼一般采用H.264壓縮算法,經(jīng)過H.264壓縮后的視頻流被稱為“裸流”由連續(xù)的NALU(NAL Unit)組成,并使用Start Code(一般為0x 00 00 00 01)來指示一個(gè)NALU的起始或者結(jié)束[20]。從功能層面,每一個(gè)NALU又可以分為VCL(視頻編碼層)和NAL(網(wǎng)絡(luò)適配層)。其中VCL獨(dú)立于網(wǎng)絡(luò),用于影像數(shù)據(jù)的高效編碼,輸出的結(jié)果為字節(jié)數(shù)組;NAL的功能是將VCL生產(chǎn)的字節(jié)數(shù)組適配至網(wǎng)絡(luò)(例如將字節(jié)數(shù)組切分為不超過MTU的多個(gè)單元)。經(jīng)過VCL處理的數(shù)據(jù)在傳輸或者存儲(chǔ)之前,被封裝到了NALU中,每一個(gè)NALU的結(jié)構(gòu)可以表示為一組原始字節(jié)序列負(fù)載(RBSP,raw byte sequence payload)和對(duì)應(yīng)視頻編碼頭部信息(NALU Header)的組合。

      視頻在PCM的編碼中可使用裸流和傳輸流兩種形式,當(dāng)采用傳輸流編碼時(shí),解析只需要將每個(gè)子幀中屬于同一路視頻流的PCM Word按照順序提取出來,以UDP/IP形式發(fā)送至VLC播放器即可完成解碼和播放;當(dāng)采用H.264編碼時(shí),軟件在完成指定PCM Word提取的基礎(chǔ)上,以Start Code為標(biāo)準(zhǔn)提取完整的影像幀序列,最后封裝成RTP報(bào)文或者傳輸流。在RTP報(bào)文的封裝過程中,首先去除Start Code,利用NALU Header轉(zhuǎn)換成Payload Header,加上RBSP成為RTP Payload,配合RTP Header完成報(bào)文封裝[18];傳輸流的轉(zhuǎn)換過程是在H.264裸流基礎(chǔ)上添加PES數(shù)據(jù)包頭,并將PES數(shù)據(jù)包按照184字節(jié)進(jìn)行切分,為每一個(gè)切片添加4字節(jié)TS包頭轉(zhuǎn)換成傳輸流[19]。過程如圖8所示。

      圖8

      2.3 數(shù)據(jù)傳輸模塊

      數(shù)據(jù)傳輸模塊的主要功能是負(fù)責(zé)通過消息隊(duì)列和序列化協(xié)議對(duì)相關(guān)消息進(jìn)行內(nèi)部和外部交互,包括PCM參數(shù)和PCM視頻消息、時(shí)間消息、日志消息、交互反饋消息、狀態(tài)消息、心跳消息等。數(shù)據(jù)傳輸模塊根據(jù)這些消息通過制定相關(guān)數(shù)據(jù)結(jié)構(gòu),使用Protobuf序列化成二進(jìn)制數(shù)據(jù),并通過類型進(jìn)行相關(guān)區(qū)分,然后進(jìn)行打包,使用ZeroMQ消息隊(duì)列將數(shù)據(jù)發(fā)送給前端顯示軟件。Protobuf文件中各數(shù)據(jù)結(jié)構(gòu)定義如表2所示。

      表2 Protobuf數(shù)據(jù)結(jié)構(gòu)

      2.4 數(shù)據(jù)存儲(chǔ)模塊

      數(shù)據(jù)存儲(chǔ)模塊按照任務(wù)信息,以任務(wù)名稱創(chuàng)建一級(jí)目錄,并在該目錄下創(chuàng)建文件,按照IRIG 106 CH10格式實(shí)時(shí)存儲(chǔ)由數(shù)據(jù)接收模塊轉(zhuǎn)發(fā)的所有數(shù)據(jù),同時(shí)該目錄還存儲(chǔ)了遙測(cè)數(shù)據(jù)XML配置文件、日志文件和嵌入式視頻流文件,如圖9所示。視頻存儲(chǔ)目錄作為二級(jí)路徑以通道ID命名,在該目錄下,每路視頻文件以”通道ID_視頻通道”命名。

      圖9 數(shù)據(jù)存儲(chǔ)目錄

      2.5 任務(wù)控制模塊

      任務(wù)控制模塊主要負(fù)責(zé)后端解析服務(wù)和前端顯示軟件任務(wù)開始、結(jié)束等指令的交互和執(zhí)行情況的反饋,并對(duì)后端解析服務(wù)內(nèi)部各模塊、各線程、各數(shù)據(jù)流進(jìn)行調(diào)度,是整個(gè)端解析服務(wù)處理流程的調(diào)度樞紐。

      在收到任務(wù)啟動(dòng)指令時(shí),任務(wù)控制模塊首先進(jìn)行報(bào)文解析,完成遙測(cè)XML配置文件的加載,當(dāng)加載成功后識(shí)別工作模式,完成網(wǎng)絡(luò)初始化和任務(wù)信息讀取,并啟動(dòng)各功能模塊的相關(guān)線程,同時(shí)完成狀態(tài)記錄;當(dāng)接收到結(jié)束指令時(shí),任務(wù)控制模塊會(huì)停止各個(gè)模塊的線程,并完成狀態(tài)記錄。

      任務(wù)控制模塊使用了Redis數(shù)據(jù)庫,記錄任務(wù)運(yùn)行的相關(guān)狀態(tài),包括任務(wù)運(yùn)行狀態(tài),IRIG-B碼處理、PCM參數(shù)處理、PCM視頻流處理狀態(tài)。各狀態(tài)消息的主鍵和數(shù)據(jù)類型定義如表3所示。

      表3 Redis關(guān)鍵字段

      3 前端顯示軟件

      前端顯示軟件采用C#編程語言和WPF框架進(jìn)行開發(fā),WPF(windows presentation foundation)是微軟推出的基于Windows的用戶界面框架,做到了界面設(shè)計(jì)和業(yè)務(wù)邏輯的分離[15-17]。前端顯示軟件的主要功能是負(fù)責(zé)任務(wù)控制、狀態(tài)可視化顯示以及相關(guān)信息的配置,分為任務(wù)管理模塊、界面顯示模塊、算法處理模塊、數(shù)據(jù)同步模塊、異常告警模塊、日志信息模塊等6個(gè)部分。

      前端顯示軟件主要通過數(shù)據(jù)同步模塊與后端解析服務(wù)進(jìn)行數(shù)據(jù)交互,將同步得到的相關(guān)信息提供給各個(gè)工作模塊進(jìn)行處理。例如任務(wù)管理模塊獲取得到任務(wù)狀態(tài)信息,用以控制任務(wù)的進(jìn)行;算法處理模塊捕獲傳過來的輸入?yún)?shù),調(diào)用對(duì)應(yīng)的算法進(jìn)行解析處理,得到計(jì)算結(jié)果并派生出對(duì)應(yīng)的參數(shù)信息,流程如圖10所示。

      圖10 前端顯示軟件各功能模塊關(guān)系圖

      3.1 任務(wù)管理模塊

      任務(wù)管理模塊主要負(fù)責(zé)對(duì)任務(wù)的加載、保存、刪除以及進(jìn)行歷史任務(wù)的回放。在實(shí)時(shí)模式下,加載任務(wù)主要通過導(dǎo)入遙測(cè)XML配置文件機(jī)載對(duì)應(yīng)的任務(wù)信息,并將數(shù)據(jù)源、數(shù)據(jù)流、數(shù)據(jù)參數(shù)和分發(fā)終端等任務(wù)信息結(jié)構(gòu)化后存儲(chǔ)于SQLite數(shù)據(jù)庫;在回放模式下,主要通過訪問SQLite數(shù)據(jù)庫,提取相應(yīng)的任務(wù)內(nèi)容。

      3.2 界面顯示模塊

      界面顯示模塊主要負(fù)責(zé)針對(duì)數(shù)據(jù)源、數(shù)據(jù)流、參數(shù)信息以及分發(fā)監(jiān)控終端的狀態(tài)信息進(jìn)行可視化展示,展示內(nèi)容包括IRIG-B碼信息、PCM數(shù)據(jù)流同步狀態(tài)、PCM參數(shù)值、PCM視頻流解析狀態(tài)等。所有展示信息通過WPF框架的數(shù)據(jù)綁定(DataBinding)進(jìn)行顯示。所謂數(shù)據(jù)綁定就是在顯示控件與其顯示的數(shù)據(jù)之間建立連接的過程,其原理為界面顯示模塊會(huì)將需要顯示的信息自動(dòng)包裝成依賴屬性,并在其Set方法中實(shí)現(xiàn)INotifyPropertyChanged接口,當(dāng)該屬性被更新(賦值)時(shí)將值傳遞給顯示控件。

      前端顯示軟件主界面采用TapPage切換模式,包括數(shù)據(jù)源、IRIG-B數(shù)據(jù)流、PCM數(shù)據(jù)流、PCM視頻流、數(shù)據(jù)參數(shù)界面和終端狀態(tài)等6個(gè)顯示頁面:

      1)數(shù)據(jù)源顯示界面主要包括數(shù)據(jù)源名稱、輸入詳細(xì)信息、通道等內(nèi)容。其中,輸入詳細(xì)信息允許用戶在回放模式下輸入記錄文件的路徑和類型;通道信息包括了通道編號(hào)、通道類型、數(shù)據(jù)鏈路名稱和通道ID。

      圖11 數(shù)據(jù)源顯示頁

      2)數(shù)據(jù)流顯示界面主要顯示PCM數(shù)據(jù)流、PCM視頻流、IRIG-B時(shí)間流的狀態(tài)和信息。

      3)數(shù)據(jù)參數(shù)界面包括有所有參數(shù)的列表,當(dāng)參數(shù)被選中時(shí),則顯示當(dāng)前參數(shù)的名稱、單位和描述,同時(shí)結(jié)合PCM格式格柵地圖呈現(xiàn)參數(shù)的位置(SFID、Word)、取位以及算法編輯子窗口。通過算法編輯子窗口,用戶可從預(yù)定義算法或者自定義算法庫中以拖拽方式拉取一個(gè)或多個(gè)算法進(jìn)行運(yùn)算,形成計(jì)算鏈,如圖12所示。

      圖12 數(shù)據(jù)參數(shù)顯示頁

      4)終端狀態(tài)顯示頁主要顯示各個(gè)監(jiān)控終端的名稱、通信碼速率和數(shù)據(jù)傳輸狀態(tài),當(dāng)數(shù)據(jù)傳輸處于不同狀態(tài)時(shí),軟件會(huì)通過不同的顏色進(jìn)行明顯區(qū)分。

      圖13 終端顯示頁

      3.3 數(shù)據(jù)同步模塊

      數(shù)據(jù)同步模塊主要通過ZeroMQ消息隊(duì)列的方式,從后端解析服務(wù)中獲得任務(wù)狀態(tài)信息、數(shù)據(jù)參數(shù)信息、異常告警信息和操作日志信息。獲取以上信息,并分別提供給任務(wù)管理模塊、算法處理模塊、異常告警模塊和日志信息模塊使用,最終由界面顯示模塊完成展示。ZeroMQ通訊協(xié)議采用命令碼和Protobuf數(shù)據(jù)格式組成,命令碼長(zhǎng)度為2個(gè)字節(jié)。

      表4 命令碼表

      3.4 算法處理模塊

      算法處理模塊主要完成遙測(cè)PCM參數(shù)的計(jì)算,流程如下:

      1)算法處理模塊通過任務(wù)管理模塊加載的遙測(cè)XML配置文件,得到參數(shù)列表,形成參數(shù)集合;

      2)通過數(shù)據(jù)同步模塊從后端解析服務(wù)獲得P0參數(shù)后,根據(jù)配置信息判斷該參數(shù)是否有算法綁定,若無,則不作處理,若有,則調(diào)用響應(yīng)的算法鏈進(jìn)行計(jì)算,得到每一步的計(jì)算結(jié)果P1、P2、…、Pn;

      3)P0以及每一步計(jì)算結(jié)果P1、P2、…、Pn通過界面顯示模塊進(jìn)行顯示,同時(shí)將結(jié)果發(fā)送給監(jiān)控終端。

      3.5 異常告警模塊

      異常告警模塊主要負(fù)責(zé)對(duì)界面、數(shù)據(jù)操作時(shí)的異常告警信息進(jìn)行捕獲和提示,以警告彈窗、日志輸出和告警信息文件的形式進(jìn)行展示和存儲(chǔ)。當(dāng)軟件運(yùn)行過程中出現(xiàn)告警時(shí),前后端的告警信息會(huì)形成異常告警集合,并通過時(shí)間進(jìn)行排序,同時(shí)輸出到顯示界面和日志文件中。告警信息分為普通、警告、嚴(yán)重等三個(gè)不同的等級(jí),顯示時(shí)按照等級(jí)不同分別顯示為白色、琥珀色和紅色。

      3.6 日志信息模塊

      軟件運(yùn)行過程中,相關(guān)的操作,特別是異常情況、告警信息,在沒有運(yùn)行日志的情形下,很難排查故障原因,因此日志信息模塊至關(guān)重要。

      本軟件采用Log4cplus框架對(duì)調(diào)試信息、過程警告信息、執(zhí)行流程記錄信息、內(nèi)部程序斷言信息、內(nèi)部程序錯(cuò)誤信息和用戶的基本操作信息進(jìn)行管理。

      4 試驗(yàn)結(jié)果與分析

      為了驗(yàn)證遙測(cè)實(shí)時(shí)數(shù)據(jù)處理軟件的功能和性能,分別在實(shí)時(shí)處理和數(shù)據(jù)回放模式下開展驗(yàn)證試驗(yàn)。

      在實(shí)時(shí)處理模式下(處理流程如如圖14所示),利用國(guó)產(chǎn)某大型客機(jī)的實(shí)時(shí)遙測(cè)數(shù)據(jù)作為數(shù)據(jù)源(數(shù)據(jù)源信息如表5所示),經(jīng)移動(dòng)遙測(cè)系統(tǒng)接收后,通過地面幀同步處理工作站完成PCM的位幀同步處理,形成IRIG 106 CH10網(wǎng)絡(luò)數(shù)據(jù)流,經(jīng)網(wǎng)絡(luò)交換機(jī)發(fā)送至運(yùn)行本軟件的數(shù)據(jù)處理服務(wù)器進(jìn)行實(shí)時(shí)處理,處理后的結(jié)果轉(zhuǎn)發(fā)至實(shí)時(shí)監(jiān)控終端進(jìn)行可視化顯示;在回放模式下通過加載記錄的IRIG 106 CH10文件進(jìn)行測(cè)試(數(shù)據(jù)源信息如表5所示)。

      圖14 驗(yàn)證試驗(yàn)流程

      表5 數(shù)據(jù)源信息

      經(jīng)測(cè)試,結(jié)果如表6所示,遙測(cè)數(shù)據(jù)及解析后的視頻如圖15所示。

      表6 數(shù)據(jù)源信息

      圖15 監(jiān)控終端顯示結(jié)果

      5 結(jié)束語

      本文設(shè)計(jì)研發(fā)了一套用于民機(jī)試飛遙測(cè)數(shù)據(jù)實(shí)時(shí)監(jiān)控的軟件,在實(shí)時(shí)處理和文件回放兩種工作模式下,實(shí)現(xiàn)了國(guó)產(chǎn)某大型民機(jī)不少于15 000個(gè)PCM參數(shù)和4路高清嵌入視頻的實(shí)時(shí)處理、計(jì)算和分發(fā),驅(qū)動(dòng)了實(shí)時(shí)監(jiān)控終端的監(jiān)控應(yīng)用,為民機(jī)試飛的安全監(jiān)控提供了有力保障。

      猜你喜歡
      視頻流遙測(cè)數(shù)據(jù)包
      邊緣實(shí)時(shí)視頻流分析系統(tǒng)配置動(dòng)態(tài)調(diào)整算法研究
      基于視頻流傳輸中的擁塞控制研究
      自適應(yīng)模糊PID控制的遙測(cè)方艙溫度調(diào)節(jié)方法
      電子制作(2019年11期)2019-07-04 00:34:40
      SmartSniff
      某小型無人機(jī)遙測(cè)軟件設(shè)計(jì)
      美國(guó)視頻流市場(chǎng)首現(xiàn)飽和征兆
      淺談如何提高遙測(cè)狀態(tài)估計(jì)合格率
      基于Libpcap的網(wǎng)絡(luò)數(shù)據(jù)包捕獲器的設(shè)計(jì)與實(shí)現(xiàn)
      利用VBA處理鄰近氣象站的相關(guān)遙測(cè)數(shù)據(jù)
      河南科技(2014年16期)2014-02-27 14:13:30
      視覺注意的數(shù)據(jù)包優(yōu)先級(jí)排序策略研究
      三原县| 牙克石市| 尖扎县| 蒙城县| 金沙县| 邯郸县| 南汇区| 青铜峡市| 文昌市| 开江县| 安达市| 凤台县| 日土县| 肇源县| 襄城县| 巴东县| 资兴市| 三台县| 铁岭市| 来凤县| 马公市| 长泰县| 克东县| 乌鲁木齐市| 遵化市| 咸阳市| 汉源县| 黄浦区| 仁布县| 民县| 和林格尔县| 偏关县| 商城县| 孝感市| 逊克县| 银川市| 武乡县| 惠来县| 石棉县| 金平| 遂川县|