文獻標識碼: A
文章編號: 0258-7998(2012)10-0023-03
空速測量是無人機乃至有人機基本的測量參數(shù)之一,飛機空速分為真空速與指示空速,多年來無人機都是使用簡易的速度測量系統(tǒng)。本文通過對空速測量原理的深入研究,以嵌入式技術(shù)為核心,并采用擴散硅壓傳感器來獲取大氣壓力,設(shè)計了一種測量真空速的軟硬件結(jié)合的無人機真空速測量系統(tǒng)。
由于真空速與氣壓的關(guān)系過于復(fù)雜,本系統(tǒng)采用數(shù)據(jù)建模的方式來實現(xiàn)空速測量。數(shù)據(jù)建模有兩種方法:(1)擬合法:從整體上考慮近似函數(shù)同所給數(shù)據(jù)點誤差的大?。?2)插值法:差值函數(shù)嚴格地通過每一個數(shù)據(jù)點。采用擬合方法時,由于計算精度達不到0.1%的系統(tǒng)要求,因此本設(shè)計采用插值法。但是隨著差值節(jié)點的增加,插值多項式的次數(shù)也相應(yīng)增加,而高次的多項式容易帶來劇烈的震蕩和數(shù)據(jù)不穩(wěn)定,同時考慮到高次函數(shù)會占用大量的系統(tǒng)資源,降低運算速度,設(shè)計時插值函數(shù)的最高次定為一次。在本系統(tǒng)中,對真空速解算采用分段低次插值法。
絕壓傳感器和差壓傳感器感受到的靜壓和動壓,并分別將其轉(zhuǎn)換為相應(yīng)的電壓信號。經(jīng)過信號調(diào)理電路,對壓力傳感器的輸出信號進行濾波和放大,然后通過ARM上集成的A/D轉(zhuǎn)換器對信號采樣并將模擬量轉(zhuǎn)換為數(shù)字量,對離散信號采用相關(guān)算法計算空速值,最后將運算結(jié)果通過RS232 通信模塊傳送給上位機。ARM選用STM32F103ZET6芯片,該芯片使用高性能的32 bit Cortex-M3系列的RISC內(nèi)核,工作頻率為72 MHz,內(nèi)置512 KB的閃存和64 KB的SRAM。器件包含4個通用16 bit定時器,3個12 bit的ADC,還包含標準和先進的通信接口(SPI、USB、USART等)。
3.1 壓力數(shù)據(jù)采集
本系統(tǒng)采用MPX10DP型硅壓阻式差壓傳感器測量飛行速度產(chǎn)生的動壓Pd,采用ASDXO15A24R型絕壓傳感器來測量大氣靜壓PH[6]。
3.2 信號調(diào)理單元電路
針對本系統(tǒng)的動壓范圍,為了使傳感器在不同情況下輸出電壓滿足ARM內(nèi)置ADC的輸入電壓范圍,信號調(diào)理電路增加了一級調(diào)零電路,將放大倍數(shù)分別分配給AD620和后級減法電路。由AD620和減法電路組成的放大調(diào)零電路如圖2所示。R200為放大倍數(shù)調(diào)節(jié)電阻,R201為調(diào)零電阻。
3.3 信號采集及數(shù)據(jù)處理
在本系統(tǒng)中,壓力和溫度數(shù)據(jù)通過ADC采樣。為確保采樣轉(zhuǎn)換的準確性,使用定時器來控制,通過改變重裝載值就可以實現(xiàn)不同的采樣頻率。選擇定時器1的觸發(fā)輸出事件啟動ADC轉(zhuǎn)換,ADC選擇連續(xù)轉(zhuǎn)換模式,在定時器預(yù)置的時間里完成52次采樣,舍棄最大值和最小值,通過求和平均計算出當前的ADC轉(zhuǎn)換值。另外,考慮到經(jīng)ADC轉(zhuǎn)換后的數(shù)字量所存在的噪聲干擾,采用軟件方法進行濾波處理。本系統(tǒng)在算術(shù)平均值的基礎(chǔ)上采用了加權(quán)平均值濾波算法,以確保測量結(jié)果的準確性[7]。
運用ARM實現(xiàn)信號采集及濾波處理流程如圖3所示。
3.4 上位機軟件設(shè)計
本設(shè)計中,上位機軟件在NI公司的虛擬儀器軟件開發(fā)平臺LabVIEW上開發(fā)。軟件設(shè)計采用了自頂向下的設(shè)計思想,上位機與下位機通過雙方發(fā)送中斷程序完成交互和握手,通信的內(nèi)容包括上位機的控制指令與ARM運算處理后的測試數(shù)據(jù)。
上位機程序主要包括控制指令和數(shù)據(jù)顯示兩個模塊??刂浦噶畎▽Υ诘呐渲玫?;數(shù)據(jù)顯示模塊將ARM運算處理后的空速數(shù)據(jù)顯示在上位機指定區(qū)域內(nèi)。上位機軟件界面運行效果如圖4所示。
3.5 下位機軟件設(shè)計
本設(shè)計下位機在Keil μVision4軟件開發(fā)環(huán)境中編譯并調(diào)試,采用C語言編寫。下位機根據(jù)接收到的上位機控制命令來執(zhí)行相應(yīng)操作,并且將測試結(jié)果傳送回上位機顯示。下位機程序流程圖如圖5所示。
測試開始后,初始化ARM各硬件模塊,等待接收上位機控制指令,當接收到上位機控制指令后,開始執(zhí)行后續(xù)操作,其中主要操作包括:(1)當絕壓傳感器和差壓傳感器將靜壓PH與動壓Pd轉(zhuǎn)換為電流信號后,通過ARM內(nèi)置ADC轉(zhuǎn)換,以保證待測信號經(jīng)過外圍調(diào)零放大電路后,信號電壓不會超過ADC的工作電壓范圍。(2)設(shè)置ADC模擬看門狗的高閾值和低閾值并使能中斷程序,通過ADC模擬看門狗中斷程序調(diào)節(jié)電壓放大倍數(shù)。(3)將采樣數(shù)據(jù)進行相應(yīng)的運算處理即可分別得到指示空速和真空速結(jié)果。(4)將結(jié)果通過RS-232串行接口發(fā)送給上位機[8]。
4 實驗結(jié)果
本系統(tǒng)在指示空速為100 km/h~400 km/h,高度為0 m、1 000 m、3 000 m和5 000 m范圍內(nèi),實時計算出當前高度與壓力下的真空速,其實驗結(jié)果如表1所示。由表1可以看出,真空速的測試相對誤差控制在2.5以內(nèi),滿足系統(tǒng)的設(shè)計要求。
本文設(shè)計了一種基于ARM的無人機空速測量系統(tǒng),通過ARM上集成的模擬數(shù)字轉(zhuǎn)換電路對絕壓傳感器和差壓傳感器輸出的信號進行采樣。針對真空速測量公式的復(fù)雜性,通過公式分解,采用低次線性插值算法,實現(xiàn)了真空速實時測量,并通過LabVIEW軟件實現(xiàn)了上位機顯示。實驗結(jié)果表明,該系統(tǒng)測量有效解決了傳感器的溫漂問題,提高了測量精度、穩(wěn)定性以及實時性。本系統(tǒng)優(yōu)于傳統(tǒng)的測量裝置,適用于工程應(yīng)用。
參考文獻
[1] 朱定國.航空測試系統(tǒng)[M].北京:國防工業(yè)出版社,1990:296-307.
[2] 袁智榮,姜曉愛.小型無人機真空速測量系統(tǒng)的設(shè)計[J].傳感器技術(shù),2003,22(4):26-28.
[3] 歐陽潔,聶玉峰,車剛明.數(shù)值分析[M].西安:西北工業(yè)大學(xué)出版社,2007.
[4] 蔣健飛,胡良劍,唐儉.數(shù)值分析及其MATLAB實驗[M].北京:科學(xué)出版社,2004:73.
[5] GAVRLETS V,SHTERENBERG A,MARTINOS I,et al. Avionics system for aggressive maneuvers[J].IEEE Aess Systems Magzine,2001,9(2):14-17.
[6] 趙家貴,付小美,董平.新編傳感器電路設(shè)計手冊[M].北京:中國計量出版社,2002:26-28.
[7] 孫傳友,孫曉斌,漢澤西,等.測控系統(tǒng)原理與設(shè)計[M].北京:北京航空航天大學(xué)出版社,2002.
[8] 揭峰.基于單片機的無人機指示空速測量系統(tǒng)設(shè)計[D].西安:西北工業(yè)大學(xué),2010.