宋樂(lè)
(航空工業(yè)直升機(jī)設(shè)計(jì)研究所無(wú)人機(jī)事業(yè)部,江西景德鎮(zhèn),333001)
從上世紀(jì)80 年代開(kāi)始,我國(guó)無(wú)人直升機(jī)已經(jīng)歷經(jīng)30多年的發(fā)展。近年來(lái),在無(wú)線電偵測(cè)、地質(zhì)地貌測(cè)繪、航空影拍、電力施工、森林防火、應(yīng)急救災(zāi)、通信中繼、反恐偵查等領(lǐng)域有廣泛的應(yīng)用[1]。隨著越來(lái)越多在民用場(chǎng)景下應(yīng)用,無(wú)人直升機(jī)在使用過(guò)程中產(chǎn)生的數(shù)據(jù)對(duì)無(wú)人機(jī)系統(tǒng)設(shè)計(jì)、仿真驗(yàn)證、地勤維修以及試驗(yàn)試飛等工作都具有較高的工業(yè)價(jià)值[2]。因此研發(fā)出一款針對(duì)無(wú)人直升機(jī)的數(shù)據(jù)分析軟件對(duì)無(wú)人機(jī)直升機(jī)的使用和發(fā)展具有極大的幫助。
本文首先提出一種無(wú)人直升機(jī)通用數(shù)據(jù)存儲(chǔ)結(jié)構(gòu)。并此基礎(chǔ)上設(shè)計(jì)無(wú)人直升機(jī)數(shù)據(jù)分析軟件的功能和界面。最后通過(guò)實(shí)際使用場(chǎng)景檢驗(yàn)該軟件的應(yīng)用價(jià)值。
無(wú)人直升機(jī)在使用過(guò)程中每時(shí)每刻會(huì)產(chǎn)生大量數(shù)據(jù)。根據(jù)數(shù)據(jù)來(lái)源不同大體可分為飛行遙控?cái)?shù)據(jù)、飛行遙測(cè)數(shù)據(jù)、鏈路狀態(tài)數(shù)據(jù)、鏈路控制數(shù)據(jù)和地面設(shè)備數(shù)據(jù)等。這些數(shù)據(jù)通過(guò)網(wǎng)絡(luò)或串口以字節(jié)流的形式傳遞。
為了更加全面有效的分析數(shù)據(jù)。需要將數(shù)據(jù)本身和數(shù)據(jù)的各種屬性存儲(chǔ)在本地。表1 列出數(shù)據(jù)的通用存儲(chǔ)結(jié)構(gòu)。其中接收時(shí)間使用長(zhǎng)整形保存,也可以使用BCD 時(shí)間量。幀數(shù)據(jù)指多種不同類(lèi)型的數(shù)據(jù)幀二進(jìn)制字節(jié)流。
表1 數(shù)據(jù)通用存儲(chǔ)結(jié)構(gòu)
無(wú)人直升機(jī)數(shù)據(jù)分析軟件具有協(xié)議管理模塊、幀仿真模塊和數(shù)據(jù)分析模塊??梢阅M無(wú)人直升機(jī)各種真實(shí)數(shù)據(jù)實(shí)現(xiàn)各種功能的虛擬仿真。也可以對(duì)真實(shí)的無(wú)人直升機(jī)數(shù)據(jù)進(jìn)行圖形化展現(xiàn),并提供各種分析工具獲取分析結(jié)論。
無(wú)人直升機(jī)使用中產(chǎn)生了各種幀數(shù)據(jù)均由協(xié)議格式?jīng)Q定。管理協(xié)議數(shù)據(jù)是軟件的核心功能之一。協(xié)議管理模塊提供協(xié)議的管理、編輯和保存功能。圖1 顯示該軟件協(xié)議編輯和管理的界面。具體功能如下所示。
圖1 協(xié)議管理模塊界面
(1)協(xié)議管理。
對(duì)協(xié)議進(jìn)行樹(shù)形分類(lèi)管理。同時(shí)在協(xié)議類(lèi)下創(chuàng)建協(xié)議信息,包括協(xié)議名稱(chēng)和描述等。
(2)協(xié)議編輯。
創(chuàng)建協(xié)議信號(hào)表結(jié)構(gòu)。表中每行可表示一個(gè)協(xié)議信號(hào)。通過(guò)填寫(xiě)信號(hào)名、字節(jié)數(shù)、有無(wú)符號(hào)、分辨率和偏移量等信息創(chuàng)建一個(gè)信號(hào)。根據(jù)不同信號(hào)特點(diǎn)可以分辨創(chuàng)建模擬量信號(hào)、離散量信號(hào)、校驗(yàn)信號(hào)等。
(3)協(xié)議保存。
編輯完所有信號(hào)后可以將協(xié)議數(shù)據(jù)進(jìn)行保存。該軟件采用SQLite 輕量級(jí)關(guān)系型數(shù)據(jù)庫(kù)保存數(shù)據(jù)。也可以選擇其他關(guān)系型數(shù)據(jù)庫(kù)或本地配置文件保存。
無(wú)人直升機(jī)數(shù)據(jù)分析軟件可以方便的創(chuàng)建各種幀數(shù)據(jù)仿真用例以測(cè)試無(wú)人機(jī)各種功能是否正常。幀仿真模塊用于創(chuàng)建各種滿足協(xié)議的幀數(shù)據(jù)。并通過(guò)指定通信接口發(fā)送。圖2 顯示該軟件幀仿真功能界面。具體功能如下所示。
圖2 幀仿真模塊界面
(1)幀用例管理。
根據(jù)測(cè)試需求創(chuàng)建幀用例信息,并對(duì)用例進(jìn)行樹(shù)形分類(lèi)管理。幀用例信息包括用例名和描述等。
(2)幀數(shù)據(jù)編輯。
在幀用例中可以創(chuàng)建若干幀數(shù)據(jù)。每個(gè)幀數(shù)據(jù)都必須指定對(duì)應(yīng)的協(xié)議。編輯幀數(shù)據(jù)值(十六進(jìn)制字符串)可以自動(dòng)解析出協(xié)議中信號(hào)的具體值(數(shù)值、狀態(tài)值或文本值)。同理編輯協(xié)議中的信號(hào)具體值會(huì)自動(dòng)解析成幀數(shù)據(jù)值。
(3)通信接口設(shè)置。
可以根據(jù)需要為幀用例設(shè)置發(fā)送接口。UDP 網(wǎng)絡(luò)接口需要設(shè)置IP 地址和端口號(hào)。串口接口需要設(shè)置波特率、數(shù)據(jù)位等信息。還可以設(shè)置發(fā)送的周期時(shí)間。
(4)數(shù)據(jù)仿真發(fā)送
提供循環(huán)發(fā)送和單步發(fā)送兩種方式。循環(huán)發(fā)送可以根據(jù)幀用例的發(fā)送周期時(shí)間自動(dòng)將每幀數(shù)據(jù)按次序循環(huán)發(fā)送。
數(shù)據(jù)分析模塊是軟件的核心功能。它可以將真實(shí)的幀二進(jìn)制字節(jié)流解析成指定協(xié)議的信號(hào)值。同時(shí)在時(shí)間軸維度上繪制出信號(hào)值曲線。該模塊可以將多個(gè)信號(hào)曲線繪制在同一個(gè)時(shí)間軸上,并提供多種功能進(jìn)行數(shù)據(jù)分析。圖3 顯示不同信號(hào)數(shù)據(jù)的分析曲線界面。具體功能如下所示。
圖3 數(shù)據(jù)分析模塊界面
(1)可以顯示曲線上的數(shù)據(jù)離散點(diǎn)。點(diǎn)擊后可詳細(xì)顯示幀十六進(jìn)制源碼值、信號(hào)真實(shí)值、協(xié)議類(lèi)型和數(shù)據(jù)發(fā)生時(shí)間等。
(2)可以框選曲線的一部分放大顯示。方便分析某小段時(shí)間內(nèi)的數(shù)據(jù)變化。
(3)可以拖動(dòng)一根垂直線標(biāo)注出同一時(shí)刻不同信號(hào)值的對(duì)比結(jié)果。方便精確分析信號(hào)值之間的關(guān)聯(lián)關(guān)系。
(4)可以拉動(dòng)一根水平線圈定一段時(shí)間范圍,以顯示在該時(shí)間內(nèi)的各項(xiàng)統(tǒng)計(jì)數(shù)據(jù)結(jié)果。
(5)可以統(tǒng)計(jì)出指定信號(hào)的數(shù)據(jù)發(fā)生時(shí)長(zhǎng)、最大值、最小值、平均值、相鄰點(diǎn)最大幅度和最大時(shí)段等。
(6)可以分析數(shù)據(jù)點(diǎn)之間的時(shí)間間隔、以確定通信質(zhì)量。
(7)可以分析出現(xiàn)數(shù)據(jù)跳變的時(shí)間和幅度。
(8)可以通過(guò)程序?qū)Σ煌盘?hào)分析出微小時(shí)間段內(nèi)異常數(shù)據(jù)曲線。
(9)可以平鋪顯示多個(gè)信號(hào)數(shù)據(jù)的曲線段。方便在較大時(shí)間范圍內(nèi)觀察數(shù)據(jù)變化。
(10)可以將多次飛行后分析的結(jié)果進(jìn)行再次比較,以確定在不同環(huán)境不同任務(wù)下無(wú)人機(jī)的飛行性能。
軟件在無(wú)人機(jī)飛行任務(wù)后對(duì)各種數(shù)據(jù)進(jìn)行分析后,可用于排查潛在的故障隱患。比如在某型無(wú)人機(jī)某次試飛后。試飛人員通過(guò)飛行數(shù)據(jù)分析后發(fā)現(xiàn)發(fā)動(dòng)機(jī)缸溫在很小時(shí)間段內(nèi)出現(xiàn)多次不正常數(shù)據(jù)波動(dòng)。進(jìn)而地勤人員檢查無(wú)人機(jī)后發(fā)現(xiàn)發(fā)動(dòng)機(jī)冷卻液管路出現(xiàn)微小滲漏。此次數(shù)據(jù)分析避免了可能發(fā)生的重大險(xiǎn)情。
軟件可以對(duì)無(wú)人機(jī)設(shè)計(jì)研發(fā)提供幫助。比如某型無(wú)人機(jī)在高原進(jìn)行多次飛行后,將飛控?cái)?shù)據(jù)進(jìn)行分析比對(duì)發(fā)現(xiàn)空氣盒溫度比平時(shí)使用有較大提高。為保證無(wú)人機(jī)的高原性能和動(dòng)力系統(tǒng)的安全。設(shè)計(jì)人員對(duì)無(wú)人機(jī)加裝了中冷系統(tǒng)。之后使用軟件進(jìn)行數(shù)據(jù)分析后正式中冷系統(tǒng)改善了無(wú)人機(jī)的環(huán)境溫度。
除對(duì)機(jī)載設(shè)備數(shù)據(jù)分析外。軟件還可以對(duì)地面控制系統(tǒng)數(shù)據(jù)進(jìn)行分析。通過(guò)多次分析無(wú)人機(jī)在各飛行姿態(tài)下的鏈路通信數(shù)據(jù)??梢苑治龀霾煌瑹o(wú)人機(jī)外形下天線安裝的最優(yōu)方案。也可以對(duì)無(wú)人機(jī)飛行過(guò)程中的航線設(shè)計(jì)進(jìn)行優(yōu)化,以防止出現(xiàn)較大范圍內(nèi)通信中斷的現(xiàn)象。
長(zhǎng)期實(shí)踐表明無(wú)人直升機(jī)數(shù)據(jù)分析軟件在無(wú)人機(jī)設(shè)計(jì)、試飛和使用階段都具有重要的應(yīng)用價(jià)值。對(duì)無(wú)人直升機(jī)的發(fā)展有一定的幫助。
本文詳細(xì)介紹了無(wú)人直升機(jī)數(shù)據(jù)分析軟件的模塊設(shè)計(jì)、界面設(shè)計(jì)和功能實(shí)現(xiàn)。并通過(guò)多個(gè)應(yīng)用實(shí)例說(shuō)明該軟件的科研價(jià)值、工程價(jià)值和應(yīng)用價(jià)值。