張阿莉+刁學(xué)敏+劉威
摘 要: 針對(duì)新型飛控采集器采集數(shù)據(jù)流數(shù)增多、試飛模式改變的問題,對(duì)原有飛行控制系統(tǒng)總線數(shù)據(jù)處理軟件進(jìn)行優(yōu)化設(shè)計(jì)。使用內(nèi)存影射技術(shù)管理原始數(shù)據(jù)的讀寫操作,同時(shí)優(yōu)化設(shè)計(jì)校線文件管理模塊和參數(shù)文件管理模塊,實(shí)現(xiàn)了多流、多表號(hào)飛控?cái)?shù)據(jù)的快速處理。通過工程使用驗(yàn)證,軟件有效解決了多流、多表號(hào)飛行控制系統(tǒng)總線數(shù)據(jù)處理問題。
關(guān)鍵詞: 飛行控制系統(tǒng); 總線數(shù)據(jù); 多流多表號(hào); 優(yōu)化設(shè)計(jì)
中圖分類號(hào): TN911?34; TP311 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2014)07?0073?03
Optimization design of new type flight control system bus data processing method
ZHANG A?li, DIAO Xue?min, LIU Wei
(Chinese Flight Test Establishment, Xian 710089, China)
Abstract: Aiming at the data stream of new type flight control system collection facility increasing and flight?test mode changing, the original flight control system bus data processing software is optimized. Technology of memory mapping is used to manage the reading and writing of original data and optimize the design of calibration curve file management module and parameter file management module, thus to realized the quick processing of flight control data with multithread and multi?table. Practical use in project proved that the software has the ability in solving the problem of processing the data of flight control system with multithread and multi?table.
Keywords: flight control system; bus data; multithread and multi?table; optimization design
0 引 言
隨著新型飛機(jī)型號(hào)研制任務(wù)的快速發(fā)展和課題需要的變化,飛行控制系統(tǒng)(簡(jiǎn)稱飛控系統(tǒng))作為新型飛機(jī)設(shè)計(jì)定型試飛中一個(gè)必不可少的測(cè)試系統(tǒng),面臨著試飛測(cè)試參數(shù)的數(shù)量和種類不斷增加(以前試飛參數(shù)數(shù)量至多上百個(gè),現(xiàn)在已經(jīng)增加到幾千個(gè))、新型飛控系統(tǒng)采集、記錄總線數(shù)據(jù)的模式由1流增加到5流,試飛模式由單表號(hào)試飛變化為一次飛行多個(gè)表號(hào)試飛。用原飛控系統(tǒng)總線數(shù)據(jù)處理軟件(原數(shù)據(jù)處理軟件只針對(duì)單流數(shù)據(jù)進(jìn)行處理、一次處理單個(gè)表號(hào)試飛數(shù)據(jù)、數(shù)據(jù)處理效率較低)已無法滿足新型飛機(jī)試飛高效的數(shù)據(jù)處理需求。因此,急需優(yōu)化設(shè)計(jì)新型飛控系統(tǒng)總線數(shù)據(jù)處理軟件。
1 軟件設(shè)計(jì)
該軟件采用結(jié)構(gòu)化、模塊化設(shè)計(jì)思路,適應(yīng)性強(qiáng)。軟件主要包括配置文件模塊、參數(shù)校線解析模塊、數(shù)據(jù)處理模塊、源碼分析模塊、批處理模塊和故障檢查六個(gè)模塊。
1.1 基本框圖
軟件結(jié)構(gòu)框圖如圖1所示。
圖1 軟件結(jié)構(gòu)框圖
軟件的基本流程圖如圖2所示。
1.2 設(shè)計(jì)說明
飛控系統(tǒng)采集器一旦確定,采集的數(shù)據(jù)塊結(jié)構(gòu)就是固定的,定義如圖3所示。其中數(shù)據(jù)字0表示飛控系統(tǒng)的表號(hào)。
飛控系統(tǒng)一次飛行可以保存4張控制表,在飛行過程中,通過切換表號(hào),會(huì)采用不同的控制指令工作,按照飛控系統(tǒng)采集數(shù)據(jù)塊結(jié)構(gòu)特點(diǎn),一個(gè)起落中的表號(hào)可以任意切換,不影響飛控采集器正常采集數(shù)據(jù),但是對(duì)于數(shù)據(jù)處理來說,就需要根據(jù)表號(hào)進(jìn)行數(shù)據(jù)提取和分析。
圖2 算法流程圖
圖3 飛控?cái)?shù)據(jù)塊結(jié)構(gòu)
表號(hào)的格式定義如圖4所示。需要解決的問題如下:
(1) 解決多個(gè)表號(hào)帶來的參數(shù)信息正確對(duì)應(yīng)關(guān)系,帶頭信息中4個(gè)表號(hào)的參數(shù)信息完整,根據(jù)讀入的飛控?cái)?shù)據(jù)解析出表號(hào),并選用正確的參數(shù)表進(jìn)行參數(shù)的解算,由于不同表號(hào)參數(shù)名稱、解算方式不同,因此需要獨(dú)立的文件輸出不同表號(hào)的結(jié)果參數(shù)列,否則數(shù)據(jù)難以判讀;
(2) 飛控塊數(shù)據(jù)掃描模塊優(yōu)化:飛控塊數(shù)據(jù)不均分布在PCM格柵中,剔除PCM勤務(wù)字后,才能根據(jù)飛控塊間隔特征找出飛控塊數(shù)據(jù),并對(duì)飛控塊數(shù)據(jù)的正確、完整性進(jìn)行判讀,獲取完整的飛控塊后,才可以使用參數(shù)校線對(duì)飛控?cái)?shù)據(jù)進(jìn)行解算,高效、合理的飛控塊掃描和判讀直接影響飛控?cái)?shù)據(jù)處理的效率;
(3) 飛控帶頭信息管理:飛控參數(shù)校準(zhǔn)信息的定義、編輯、修改,原來飛控系統(tǒng)的帶頭信息只有一路,目前飛控一個(gè)架次有5流數(shù)據(jù)需要處理,除了提高飛控單流數(shù)據(jù)處理效率外,多流數(shù)據(jù)的帶頭維護(hù)需要程序支持,方便用戶一次維護(hù)多個(gè)帶頭信息,支持帶頭中參數(shù)信息的增刪改;
(4) 故障原始數(shù)據(jù)快速定位:支持故障塊數(shù)據(jù)在原始數(shù)據(jù)中的故障位置,方便用戶進(jìn)行飛控原始數(shù)據(jù)的分析,幫助飛控采集系統(tǒng)進(jìn)行故障分析;
(5) 多流數(shù)據(jù)的后期融合:提供數(shù)據(jù)融合手段,可以將同流和不同流的多組同一時(shí)間段的參數(shù)物理量結(jié)果信息進(jìn)行融合,方便課題進(jìn)行數(shù)據(jù)分析。
圖4 表號(hào)的格式定義
2 關(guān)鍵技術(shù)
2.1 參數(shù)文件、校線文件的優(yōu)化設(shè)計(jì)
不同的數(shù)據(jù)流采集的是不同的試飛參數(shù),不同的表號(hào)采集的是不同的試飛科目參數(shù),每個(gè)參數(shù)有順序、字號(hào)、名稱、類型、校準(zhǔn)信息等,將這么多參數(shù)信息寫進(jìn)一個(gè)校線文件,按照軟件設(shè)計(jì)的思路,采用的存放規(guī)則是先按照流數(shù)進(jìn)行存放,每一流再按照表號(hào)進(jìn)行存放。用三維字符數(shù)組來存放不同數(shù)據(jù)流不同表號(hào)的參數(shù),采用結(jié)構(gòu)體存放每個(gè)參數(shù)的信息內(nèi)容。
對(duì)參數(shù)文件的優(yōu)化:?jiǎn)螜C(jī)版處理程序采用在參數(shù)文件首行加入數(shù)據(jù)流數(shù)來區(qū)分每個(gè)流的參數(shù)文件,由于每流數(shù)據(jù)都可能存在多表號(hào),采用@TAB+表號(hào)數(shù)+流數(shù)@ 和“@TAB+表號(hào)數(shù)+流數(shù)END@”作為某一流某個(gè)表號(hào)參數(shù)的開始和結(jié)束標(biāo)志。
網(wǎng)絡(luò)化處理由于所有的處理參數(shù)都存放在一個(gè)數(shù)據(jù)庫,不同的表號(hào)之間可能會(huì)存在相同的參數(shù),采用“參數(shù)名+通道號(hào)+表號(hào)+流數(shù)”進(jìn)行區(qū)分參數(shù)名,讀入?yún)?shù)名后,然后進(jìn)行拆解流數(shù)、表號(hào)、通道號(hào)并按順序記錄每個(gè)參數(shù)的信息和對(duì)應(yīng)位置。
2.2 內(nèi)存映射技術(shù)
隨著試飛工作的開展,表號(hào)的切換,一個(gè)起落數(shù)據(jù)量劇增,原軟件對(duì)數(shù)據(jù)文件采用傳統(tǒng)的讀寫文件方式,由于不斷的在內(nèi)存和磁盤之間進(jìn)行切換,頻繁地執(zhí)行IO操作,因此處理效率不是很高。針對(duì)這種情況,引入內(nèi)存映射技術(shù),實(shí)現(xiàn)讀、寫數(shù)據(jù)都在內(nèi)存中進(jìn)行,避免了上述情況的發(fā)生,從根本上實(shí)現(xiàn)了數(shù)據(jù)處理的高效運(yùn)行。
按照飛控采集器的數(shù)據(jù)發(fā)送協(xié)議,正常情況下,飛控采集器在每一時(shí)刻發(fā)送完所有通道數(shù)據(jù)后,才會(huì)開始下一時(shí)刻數(shù)據(jù)發(fā)送。但是在實(shí)際使用中,經(jīng)常會(huì)遇到同一時(shí)刻多通道時(shí)間不同步問題。用原處理軟件進(jìn)行處理,經(jīng)常會(huì)存在漏時(shí)刻輸出。針對(duì)這種情況,先進(jìn)行單通道輸出數(shù)據(jù),然后再進(jìn)行多流合并數(shù)據(jù),由于每架次數(shù)據(jù)量大、數(shù)據(jù)流數(shù)多,為了實(shí)現(xiàn)快速輸出,運(yùn)用內(nèi)存映射技術(shù)中的內(nèi)存共享,將單通道輸出數(shù)據(jù)設(shè)置為內(nèi)存視圖文件,減少輸出文件在磁盤和內(nèi)存之間反復(fù)操作,實(shí)現(xiàn)數(shù)據(jù)塊的快速輸出。
3 軟件驗(yàn)證
首先對(duì)軟件的功能、效率、正確性、處理異常問題的能力進(jìn)行了測(cè)試,經(jīng)過測(cè)試改進(jìn),該軟件運(yùn)行正常,并能夠正確的解析飛控系統(tǒng)多流、多表號(hào)總線數(shù)據(jù)。目前該軟件已應(yīng)用到實(shí)際的飛控系統(tǒng)數(shù)據(jù)處理中,得到課題的一致認(rèn)可。其軟件的運(yùn)行界面圖如圖5,圖6所示。
圖5 批處理運(yùn)行界面圖
圖6 故障檢查界面圖
選取100個(gè)參數(shù),數(shù)據(jù)量1.3 GB,用原軟件處理和現(xiàn)有軟件處理進(jìn)行比對(duì),結(jié)果見表1。
表1 兩種技術(shù)提取數(shù)據(jù)速度對(duì)比
[軟件\&時(shí)間 /min\&優(yōu)化軟件\&3\&原軟件\&10\&]
4 結(jié) 語
本軟件針對(duì)多流、多表號(hào)飛控系統(tǒng)總線數(shù)據(jù)進(jìn)行分析處理,同時(shí)對(duì)原始數(shù)據(jù)的讀取、結(jié)果文件的輸出進(jìn)行優(yōu)化,極大的提高了數(shù)據(jù)處理效率;軟件提供的配置文件模塊可以滿足多種數(shù)據(jù)格式的數(shù)據(jù)處理任務(wù),同時(shí)在軟件設(shè)計(jì)中提供的源碼、計(jì)數(shù)字、故障檢查等模塊,更好地為試飛工程師分析飛控系統(tǒng)工作狀態(tài),為測(cè)試工程師排除系統(tǒng)故障提供了重要依據(jù),目前該款軟件已經(jīng)投入使用,反應(yīng)良好。
參考文獻(xiàn)
[1] 西安遠(yuǎn)方航空測(cè)控技術(shù)研究所.飛控?cái)?shù)字FTI采集器[M].西安:西安遠(yuǎn)方航空測(cè)控技術(shù)研究所,2012.
[2] 王建軍,黨懷義.基于Web的分布式試飛數(shù)據(jù)處理系統(tǒng)結(jié)構(gòu)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2010,18(6):1452?1454.
[3] RICHTER Jeffrey. Windows核心編程[M].北京:清華大學(xué)出版社,1998.
[4] 國家標(biāo)準(zhǔn)局.GB/T 8567?1988 計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南[S].北京:國家標(biāo)準(zhǔn)局,1988.
[5] [美]John Miano,Tom Cabaski.Borland C++ builder編程指南[M].郝杰,譯.北京:電子工業(yè)出版社,1998.
[6] 張阿莉,許應(yīng)康,郭永林.飛行控制總線數(shù)據(jù)網(wǎng)絡(luò)化處理軟件設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2013,36(10):15?17.
(4) 故障原始數(shù)據(jù)快速定位:支持故障塊數(shù)據(jù)在原始數(shù)據(jù)中的故障位置,方便用戶進(jìn)行飛控原始數(shù)據(jù)的分析,幫助飛控采集系統(tǒng)進(jìn)行故障分析;
(5) 多流數(shù)據(jù)的后期融合:提供數(shù)據(jù)融合手段,可以將同流和不同流的多組同一時(shí)間段的參數(shù)物理量結(jié)果信息進(jìn)行融合,方便課題進(jìn)行數(shù)據(jù)分析。
圖4 表號(hào)的格式定義
2 關(guān)鍵技術(shù)
2.1 參數(shù)文件、校線文件的優(yōu)化設(shè)計(jì)
不同的數(shù)據(jù)流采集的是不同的試飛參數(shù),不同的表號(hào)采集的是不同的試飛科目參數(shù),每個(gè)參數(shù)有順序、字號(hào)、名稱、類型、校準(zhǔn)信息等,將這么多參數(shù)信息寫進(jìn)一個(gè)校線文件,按照軟件設(shè)計(jì)的思路,采用的存放規(guī)則是先按照流數(shù)進(jìn)行存放,每一流再按照表號(hào)進(jìn)行存放。用三維字符數(shù)組來存放不同數(shù)據(jù)流不同表號(hào)的參數(shù),采用結(jié)構(gòu)體存放每個(gè)參數(shù)的信息內(nèi)容。
對(duì)參數(shù)文件的優(yōu)化:?jiǎn)螜C(jī)版處理程序采用在參數(shù)文件首行加入數(shù)據(jù)流數(shù)來區(qū)分每個(gè)流的參數(shù)文件,由于每流數(shù)據(jù)都可能存在多表號(hào),采用@TAB+表號(hào)數(shù)+流數(shù)@ 和“@TAB+表號(hào)數(shù)+流數(shù)END@”作為某一流某個(gè)表號(hào)參數(shù)的開始和結(jié)束標(biāo)志。
網(wǎng)絡(luò)化處理由于所有的處理參數(shù)都存放在一個(gè)數(shù)據(jù)庫,不同的表號(hào)之間可能會(huì)存在相同的參數(shù),采用“參數(shù)名+通道號(hào)+表號(hào)+流數(shù)”進(jìn)行區(qū)分參數(shù)名,讀入?yún)?shù)名后,然后進(jìn)行拆解流數(shù)、表號(hào)、通道號(hào)并按順序記錄每個(gè)參數(shù)的信息和對(duì)應(yīng)位置。
2.2 內(nèi)存映射技術(shù)
隨著試飛工作的開展,表號(hào)的切換,一個(gè)起落數(shù)據(jù)量劇增,原軟件對(duì)數(shù)據(jù)文件采用傳統(tǒng)的讀寫文件方式,由于不斷的在內(nèi)存和磁盤之間進(jìn)行切換,頻繁地執(zhí)行IO操作,因此處理效率不是很高。針對(duì)這種情況,引入內(nèi)存映射技術(shù),實(shí)現(xiàn)讀、寫數(shù)據(jù)都在內(nèi)存中進(jìn)行,避免了上述情況的發(fā)生,從根本上實(shí)現(xiàn)了數(shù)據(jù)處理的高效運(yùn)行。
按照飛控采集器的數(shù)據(jù)發(fā)送協(xié)議,正常情況下,飛控采集器在每一時(shí)刻發(fā)送完所有通道數(shù)據(jù)后,才會(huì)開始下一時(shí)刻數(shù)據(jù)發(fā)送。但是在實(shí)際使用中,經(jīng)常會(huì)遇到同一時(shí)刻多通道時(shí)間不同步問題。用原處理軟件進(jìn)行處理,經(jīng)常會(huì)存在漏時(shí)刻輸出。針對(duì)這種情況,先進(jìn)行單通道輸出數(shù)據(jù),然后再進(jìn)行多流合并數(shù)據(jù),由于每架次數(shù)據(jù)量大、數(shù)據(jù)流數(shù)多,為了實(shí)現(xiàn)快速輸出,運(yùn)用內(nèi)存映射技術(shù)中的內(nèi)存共享,將單通道輸出數(shù)據(jù)設(shè)置為內(nèi)存視圖文件,減少輸出文件在磁盤和內(nèi)存之間反復(fù)操作,實(shí)現(xiàn)數(shù)據(jù)塊的快速輸出。
3 軟件驗(yàn)證
首先對(duì)軟件的功能、效率、正確性、處理異常問題的能力進(jìn)行了測(cè)試,經(jīng)過測(cè)試改進(jìn),該軟件運(yùn)行正常,并能夠正確的解析飛控系統(tǒng)多流、多表號(hào)總線數(shù)據(jù)。目前該軟件已應(yīng)用到實(shí)際的飛控系統(tǒng)數(shù)據(jù)處理中,得到課題的一致認(rèn)可。其軟件的運(yùn)行界面圖如圖5,圖6所示。
圖5 批處理運(yùn)行界面圖
圖6 故障檢查界面圖
選取100個(gè)參數(shù),數(shù)據(jù)量1.3 GB,用原軟件處理和現(xiàn)有軟件處理進(jìn)行比對(duì),結(jié)果見表1。
表1 兩種技術(shù)提取數(shù)據(jù)速度對(duì)比
[軟件\&時(shí)間 /min\&優(yōu)化軟件\&3\&原軟件\&10\&]
4 結(jié) 語
本軟件針對(duì)多流、多表號(hào)飛控系統(tǒng)總線數(shù)據(jù)進(jìn)行分析處理,同時(shí)對(duì)原始數(shù)據(jù)的讀取、結(jié)果文件的輸出進(jìn)行優(yōu)化,極大的提高了數(shù)據(jù)處理效率;軟件提供的配置文件模塊可以滿足多種數(shù)據(jù)格式的數(shù)據(jù)處理任務(wù),同時(shí)在軟件設(shè)計(jì)中提供的源碼、計(jì)數(shù)字、故障檢查等模塊,更好地為試飛工程師分析飛控系統(tǒng)工作狀態(tài),為測(cè)試工程師排除系統(tǒng)故障提供了重要依據(jù),目前該款軟件已經(jīng)投入使用,反應(yīng)良好。
參考文獻(xiàn)
[1] 西安遠(yuǎn)方航空測(cè)控技術(shù)研究所.飛控?cái)?shù)字FTI采集器[M].西安:西安遠(yuǎn)方航空測(cè)控技術(shù)研究所,2012.
[2] 王建軍,黨懷義.基于Web的分布式試飛數(shù)據(jù)處理系統(tǒng)結(jié)構(gòu)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2010,18(6):1452?1454.
[3] RICHTER Jeffrey. Windows核心編程[M].北京:清華大學(xué)出版社,1998.
[4] 國家標(biāo)準(zhǔn)局.GB/T 8567?1988 計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南[S].北京:國家標(biāo)準(zhǔn)局,1988.
[5] [美]John Miano,Tom Cabaski.Borland C++ builder編程指南[M].郝杰,譯.北京:電子工業(yè)出版社,1998.
[6] 張阿莉,許應(yīng)康,郭永林.飛行控制總線數(shù)據(jù)網(wǎng)絡(luò)化處理軟件設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2013,36(10):15?17.
(4) 故障原始數(shù)據(jù)快速定位:支持故障塊數(shù)據(jù)在原始數(shù)據(jù)中的故障位置,方便用戶進(jìn)行飛控原始數(shù)據(jù)的分析,幫助飛控采集系統(tǒng)進(jìn)行故障分析;
(5) 多流數(shù)據(jù)的后期融合:提供數(shù)據(jù)融合手段,可以將同流和不同流的多組同一時(shí)間段的參數(shù)物理量結(jié)果信息進(jìn)行融合,方便課題進(jìn)行數(shù)據(jù)分析。
圖4 表號(hào)的格式定義
2 關(guān)鍵技術(shù)
2.1 參數(shù)文件、校線文件的優(yōu)化設(shè)計(jì)
不同的數(shù)據(jù)流采集的是不同的試飛參數(shù),不同的表號(hào)采集的是不同的試飛科目參數(shù),每個(gè)參數(shù)有順序、字號(hào)、名稱、類型、校準(zhǔn)信息等,將這么多參數(shù)信息寫進(jìn)一個(gè)校線文件,按照軟件設(shè)計(jì)的思路,采用的存放規(guī)則是先按照流數(shù)進(jìn)行存放,每一流再按照表號(hào)進(jìn)行存放。用三維字符數(shù)組來存放不同數(shù)據(jù)流不同表號(hào)的參數(shù),采用結(jié)構(gòu)體存放每個(gè)參數(shù)的信息內(nèi)容。
對(duì)參數(shù)文件的優(yōu)化:?jiǎn)螜C(jī)版處理程序采用在參數(shù)文件首行加入數(shù)據(jù)流數(shù)來區(qū)分每個(gè)流的參數(shù)文件,由于每流數(shù)據(jù)都可能存在多表號(hào),采用@TAB+表號(hào)數(shù)+流數(shù)@ 和“@TAB+表號(hào)數(shù)+流數(shù)END@”作為某一流某個(gè)表號(hào)參數(shù)的開始和結(jié)束標(biāo)志。
網(wǎng)絡(luò)化處理由于所有的處理參數(shù)都存放在一個(gè)數(shù)據(jù)庫,不同的表號(hào)之間可能會(huì)存在相同的參數(shù),采用“參數(shù)名+通道號(hào)+表號(hào)+流數(shù)”進(jìn)行區(qū)分參數(shù)名,讀入?yún)?shù)名后,然后進(jìn)行拆解流數(shù)、表號(hào)、通道號(hào)并按順序記錄每個(gè)參數(shù)的信息和對(duì)應(yīng)位置。
2.2 內(nèi)存映射技術(shù)
隨著試飛工作的開展,表號(hào)的切換,一個(gè)起落數(shù)據(jù)量劇增,原軟件對(duì)數(shù)據(jù)文件采用傳統(tǒng)的讀寫文件方式,由于不斷的在內(nèi)存和磁盤之間進(jìn)行切換,頻繁地執(zhí)行IO操作,因此處理效率不是很高。針對(duì)這種情況,引入內(nèi)存映射技術(shù),實(shí)現(xiàn)讀、寫數(shù)據(jù)都在內(nèi)存中進(jìn)行,避免了上述情況的發(fā)生,從根本上實(shí)現(xiàn)了數(shù)據(jù)處理的高效運(yùn)行。
按照飛控采集器的數(shù)據(jù)發(fā)送協(xié)議,正常情況下,飛控采集器在每一時(shí)刻發(fā)送完所有通道數(shù)據(jù)后,才會(huì)開始下一時(shí)刻數(shù)據(jù)發(fā)送。但是在實(shí)際使用中,經(jīng)常會(huì)遇到同一時(shí)刻多通道時(shí)間不同步問題。用原處理軟件進(jìn)行處理,經(jīng)常會(huì)存在漏時(shí)刻輸出。針對(duì)這種情況,先進(jìn)行單通道輸出數(shù)據(jù),然后再進(jìn)行多流合并數(shù)據(jù),由于每架次數(shù)據(jù)量大、數(shù)據(jù)流數(shù)多,為了實(shí)現(xiàn)快速輸出,運(yùn)用內(nèi)存映射技術(shù)中的內(nèi)存共享,將單通道輸出數(shù)據(jù)設(shè)置為內(nèi)存視圖文件,減少輸出文件在磁盤和內(nèi)存之間反復(fù)操作,實(shí)現(xiàn)數(shù)據(jù)塊的快速輸出。
3 軟件驗(yàn)證
首先對(duì)軟件的功能、效率、正確性、處理異常問題的能力進(jìn)行了測(cè)試,經(jīng)過測(cè)試改進(jìn),該軟件運(yùn)行正常,并能夠正確的解析飛控系統(tǒng)多流、多表號(hào)總線數(shù)據(jù)。目前該軟件已應(yīng)用到實(shí)際的飛控系統(tǒng)數(shù)據(jù)處理中,得到課題的一致認(rèn)可。其軟件的運(yùn)行界面圖如圖5,圖6所示。
圖5 批處理運(yùn)行界面圖
圖6 故障檢查界面圖
選取100個(gè)參數(shù),數(shù)據(jù)量1.3 GB,用原軟件處理和現(xiàn)有軟件處理進(jìn)行比對(duì),結(jié)果見表1。
表1 兩種技術(shù)提取數(shù)據(jù)速度對(duì)比
[軟件\&時(shí)間 /min\&優(yōu)化軟件\&3\&原軟件\&10\&]
4 結(jié) 語
本軟件針對(duì)多流、多表號(hào)飛控系統(tǒng)總線數(shù)據(jù)進(jìn)行分析處理,同時(shí)對(duì)原始數(shù)據(jù)的讀取、結(jié)果文件的輸出進(jìn)行優(yōu)化,極大的提高了數(shù)據(jù)處理效率;軟件提供的配置文件模塊可以滿足多種數(shù)據(jù)格式的數(shù)據(jù)處理任務(wù),同時(shí)在軟件設(shè)計(jì)中提供的源碼、計(jì)數(shù)字、故障檢查等模塊,更好地為試飛工程師分析飛控系統(tǒng)工作狀態(tài),為測(cè)試工程師排除系統(tǒng)故障提供了重要依據(jù),目前該款軟件已經(jīng)投入使用,反應(yīng)良好。
參考文獻(xiàn)
[1] 西安遠(yuǎn)方航空測(cè)控技術(shù)研究所.飛控?cái)?shù)字FTI采集器[M].西安:西安遠(yuǎn)方航空測(cè)控技術(shù)研究所,2012.
[2] 王建軍,黨懷義.基于Web的分布式試飛數(shù)據(jù)處理系統(tǒng)結(jié)構(gòu)設(shè)計(jì)[J].計(jì)算機(jī)測(cè)量與控制,2010,18(6):1452?1454.
[3] RICHTER Jeffrey. Windows核心編程[M].北京:清華大學(xué)出版社,1998.
[4] 國家標(biāo)準(zhǔn)局.GB/T 8567?1988 計(jì)算機(jī)軟件產(chǎn)品開發(fā)文件編制指南[S].北京:國家標(biāo)準(zhǔn)局,1988.
[5] [美]John Miano,Tom Cabaski.Borland C++ builder編程指南[M].郝杰,譯.北京:電子工業(yè)出版社,1998.
[6] 張阿莉,許應(yīng)康,郭永林.飛行控制總線數(shù)據(jù)網(wǎng)絡(luò)化處理軟件設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2013,36(10):15?17.