強(qiáng)志鵬,齊明思,張紀(jì)平,姬天田,孫起帆,薛洋洋
(中北大學(xué) 機(jī)械工程學(xué)院,太原 030051)
近些年隨著航空技術(shù)的不斷發(fā)展,國(guó)內(nèi)外學(xué)者針對(duì)無(wú)人機(jī)數(shù)據(jù)采集的研究成果層出不窮,但是對(duì)無(wú)人旋翼機(jī)的研究較為少見(jiàn).小型無(wú)人旋翼機(jī)的旋翼不支持動(dòng)力旋轉(zhuǎn),所以其故障率遠(yuǎn)低于一般無(wú)人機(jī),相對(duì)而言經(jīng)濟(jì)性和可靠性也比較高[1],因此無(wú)論是在農(nóng)業(yè)植保方面,還是科研方面,都具有極其巨大的應(yīng)用潛力和研究?jī)r(jià)值.由于小型無(wú)人旋翼機(jī)自身的特性,只使用一套數(shù)據(jù)采集裝置所采集的數(shù)據(jù)將會(huì)出現(xiàn)重大的誤差,為了滿足小型無(wú)人旋翼機(jī)對(duì)大氣數(shù)據(jù)采集系統(tǒng)體積小,功耗低,測(cè)量精準(zhǔn)度高,抗干擾能力強(qiáng),數(shù)據(jù)實(shí)時(shí)性強(qiáng)等要求[2],在分析了大氣數(shù)據(jù)采集原理以及小型無(wú)人旋翼機(jī)飛行特點(diǎn)的基礎(chǔ)上,設(shè)計(jì)出了基于MEMS 數(shù)字型差壓傳感器和F28335 芯片的一種小型雙采集裝置大氣數(shù)據(jù)采集系統(tǒng),并對(duì)系統(tǒng)的設(shè)計(jì)進(jìn)行了一定的分析和研究,使系統(tǒng)能夠更加契合小型無(wú)人旋翼機(jī)[3].
大氣數(shù)據(jù)采集系統(tǒng),是指通過(guò)傳感器采集測(cè)量飛行器周?chē)喾N大氣參數(shù)及經(jīng)過(guò)解算后輸出多種飛行器所需參數(shù)的多輸入多輸出的機(jī)載綜合測(cè)量系統(tǒng)[4].由于小型無(wú)人旋翼機(jī)的一些特點(diǎn),現(xiàn)有的大氣數(shù)據(jù)采集系統(tǒng)在使用環(huán)境、成本、體積等方面受到了限制,針對(duì)這些特點(diǎn)設(shè)計(jì)的大氣數(shù)據(jù)采集系統(tǒng)選取了大氣靜壓以及大氣動(dòng)壓兩個(gè)參數(shù)作為主要輸入?yún)?shù),輸出氣壓高度值、指示空速、真實(shí)空速[5],其系統(tǒng)原理圖如圖1所示.
圖1 大氣數(shù)據(jù)采集系統(tǒng)原理框圖
小型無(wú)人旋翼機(jī)的飛行高度較低(小于11 km),飛行速度比較慢,一般在對(duì)流層下層進(jìn)行飛行,因此利用大氣壓力與飛行器高度變化密切相關(guān)的特性來(lái)測(cè)量飛行高度是一種可行的方法.可以按照以下的計(jì)算公式對(duì)氣壓高度進(jìn)行計(jì)算[6].
當(dāng)0≤H≤11 km 時(shí),大氣壓力和高度的關(guān)系可表示為:
式中,Hp代表氣壓高度,單位為m;PH代表小型無(wú)人旋翼機(jī)所在高度的大氣靜壓,單位為kPa;大氣靜壓P0=101.325 kPa(標(biāo)準(zhǔn)大氣狀態(tài)下海平面處);溫度T0=288.15 K(標(biāo)準(zhǔn)大氣下海平面處);氣溫垂直遞減率τ =-6.5×10-3K/m;標(biāo)準(zhǔn)自由落體加速度g=9.8 m/s2;空氣專(zhuān)用氣體常數(shù)R=287.052 87 m2/s2·K.
把查資料所得的標(biāo)準(zhǔn)大氣數(shù)據(jù)代入式(1)得:
由式(2)可以看出如果我們直接在F28335 中利用這個(gè)公式對(duì)氣壓高度值進(jìn)行計(jì)算顯得比較復(fù)雜,會(huì)拖慢系統(tǒng)的運(yùn)算速度,不利于系統(tǒng)數(shù)據(jù)傳輸?shù)膶?shí)時(shí)性,所以在本系統(tǒng)中將采用線性插值的方法對(duì)其進(jìn)行處理.
通過(guò)小型無(wú)人旋翼機(jī)飛行時(shí)大氣數(shù)據(jù)采集系統(tǒng)測(cè)量得到的動(dòng)壓Pd經(jīng)過(guò)式(3)解算得到指示空速.
式中,vi為指示空速,單位為km/h;Pd為動(dòng)壓,單位為kPa.
在操控小型無(wú)人旋翼機(jī)時(shí)飛行的高度不同,小型無(wú)人旋翼機(jī)周?chē)沫h(huán)境具有較大的差異,大氣數(shù)據(jù)采集系統(tǒng)測(cè)得的指示空速并不能完全代表小型無(wú)人旋翼機(jī)的實(shí)際速度,所以通過(guò)式(4)對(duì)指示空速進(jìn)行一定的換算修正得到真實(shí)空速.
式中,vH為真實(shí)空速,單位為km/h.
由式(3)和式(4)可知指示空速和真實(shí)空速的解算公式一樣比較復(fù)雜,直接運(yùn)算會(huì)占用較多的系統(tǒng)資源,同理,將對(duì)其采用線性插值的方法進(jìn)行處理.
為了滿足小型無(wú)人旋翼機(jī)大氣數(shù)據(jù)采集系統(tǒng)的體積小,功耗低,抗干擾能力強(qiáng)等要求,設(shè)計(jì)出的大氣數(shù)據(jù)采集系統(tǒng)的原理框圖如圖2 所示.傳感器將采集到的模擬信號(hào)經(jīng)過(guò)放大電路放大調(diào)理之后進(jìn)行AD 轉(zhuǎn)換,將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào),傳入到DSP 的解算模塊中,求其平均值并利用線性插值算法解算出設(shè)定好的參數(shù)值,濾波之后通過(guò)串口通訊將解算得到的參數(shù)值進(jìn)行輸出.
圖2 大氣數(shù)據(jù)采集系統(tǒng)硬件框圖
根據(jù)小型無(wú)人旋翼機(jī)的飛行需求,對(duì)小型無(wú)人旋翼機(jī)所需要參數(shù)計(jì)算原理進(jìn)行析,本大氣數(shù)據(jù)采集系統(tǒng)需要兩個(gè)絕壓傳感器以及兩個(gè)差壓傳感器.根據(jù)大氣數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)和實(shí)際需求,絕壓傳感器選取了基于高度集成的MS5803 高分辨率數(shù)字式氣壓傳感器[7],該傳感器包括高線性度的壓力傳感元件和超低功耗的24 位模數(shù)轉(zhuǎn)換電路,具有體積小,價(jià)格低,功耗低(1 μA),分辨率高(10 cm)等優(yōu)點(diǎn),帶有SPI 和I2C 兩種接口,通訊協(xié)議較為簡(jiǎn)單,在實(shí)際應(yīng)用中可以根據(jù)情況的不同選擇不同的工作模式.MS5803 傳感器的內(nèi)部結(jié)構(gòu)如圖3 所示.
圖3 MS5803 傳感器內(nèi)部結(jié)構(gòu)圖
差壓傳感器采用了具有高精度,低成本,低功耗等優(yōu)點(diǎn)的4525DO 數(shù)字式壓力傳感器[8],該傳感器內(nèi)部采用了最新的CMOS 傳感器調(diào)節(jié)回路,且支持SPI 和I2C 兩種通信方式,可選側(cè)面或正面引壓,有多種貼裝方式,具有完全校準(zhǔn)和溫度補(bǔ)償功能,工作電壓較小(直流恒壓3.3 V 或者5 V),其精度總誤差帶為0.25%,內(nèi)部結(jié)構(gòu)如圖4 所示.
圖4 4525DO 傳感器內(nèi)部結(jié)構(gòu)圖
TMS320F28335[9]實(shí)物如圖5 所示,集成了DSP 和微控制器的長(zhǎng)處,具有強(qiáng)大的數(shù)字信號(hào)處理功能,且具有豐富的外設(shè)模塊,具有精度高、功耗低等優(yōu)點(diǎn),價(jià)格較為低廉,適用于低成本的小型無(wú)人旋翼機(jī).高性能的靜態(tài)CMOS 技術(shù)使得F28335 的主頻最高能達(dá)到150 MHz(6.67 ns 時(shí)鐘周期),CPU 具有IEEE-754 單精度浮點(diǎn)單元,能夠快速中斷響應(yīng)保護(hù)關(guān)鍵的寄存器和處理外部異步事件,支持動(dòng)態(tài)鎖相環(huán)比率變化,低功耗模式和省電模式能夠極大的節(jié)省系統(tǒng)的資源,能夠適應(yīng)較為嚴(yán)苛的運(yùn)行環(huán)境.
本系統(tǒng)采用AC-DC 降壓穩(wěn)壓電源模塊,將220 V電源轉(zhuǎn)換為5 V(±0.2 V)為F28335 進(jìn)行供電.鑒于本系統(tǒng)選擇的芯片是浮點(diǎn)型DSP,所以為了實(shí)現(xiàn)系統(tǒng)的穩(wěn)定運(yùn)行,需要選擇一款功率大且驅(qū)動(dòng)負(fù)載能力強(qiáng)的非線性電源芯片,根據(jù)T I 公司的手冊(cè)選擇TPS767D301,5 V 的電壓輸入,3.3 V 和1.9 V 同時(shí)產(chǎn)生,3.3 V 供給IO,1.9 V 供給內(nèi)核[10].
圖5 F28335 實(shí)物圖
系統(tǒng)的軟件設(shè)計(jì)主要包含對(duì)系統(tǒng)的初始化,數(shù)據(jù)的采集,A/D 轉(zhuǎn)換,數(shù)據(jù)的處理以及串口通信的設(shè)計(jì).系統(tǒng)的初始化包括對(duì)F28335 芯片的各個(gè)端口,時(shí)鐘,串口以及寄存器進(jìn)行初始化;數(shù)據(jù)的采集是對(duì)小型無(wú)人旋翼機(jī)所在高度的氣壓進(jìn)行采集轉(zhuǎn)換成模擬信號(hào),A/D 轉(zhuǎn)換是將模擬信號(hào)轉(zhuǎn)換為數(shù)字信號(hào);數(shù)據(jù)的處理是對(duì)采集的數(shù)據(jù)進(jìn)行壓力補(bǔ)償、小型無(wú)人旋翼機(jī)所需參數(shù)的計(jì)算[11]和數(shù)據(jù)濾波[12-14].主程序流程圖如圖6所示.
TMS320F28335 和傳感器之間通過(guò)I2C 總線進(jìn)行同步通信.當(dāng)進(jìn)行數(shù)據(jù)傳輸時(shí),每個(gè)連接到I2C 總線的器件都具有唯一的識(shí)別地址且可以實(shí)現(xiàn)發(fā)送或接收功能.當(dāng)SCL 為高電平時(shí),SDA 信號(hào)由高電平轉(zhuǎn)為低電平,主機(jī)輸出START 信號(hào),表示數(shù)據(jù)傳輸開(kāi)始;當(dāng)SCL 為高電平時(shí),SDA 信號(hào)由低電平轉(zhuǎn)為高電平,主機(jī)輸出STOP 信號(hào),表示數(shù)據(jù)傳輸結(jié)束.
圖6 主程序流程圖
當(dāng)發(fā)出START 信號(hào)I2C 模塊開(kāi)始數(shù)據(jù)傳輸時(shí),I2CMDR 中的主模式位(MST)和START 條件位(STT)必須置1.當(dāng)發(fā)出STOP 信號(hào)I2C 模塊結(jié)束數(shù)據(jù)傳輸時(shí),STOP 條件位(STP)必須置1.當(dāng)I2CSTR 總線繁忙標(biāo)志位(BB)和SST 位都設(shè)置為1 時(shí),產(chǎn)生重復(fù)START 操作.
利用軟件和硬件的緊密配合,一方面可以降低系統(tǒng)對(duì)硬件的要求,另一方面可以提高系統(tǒng)的靈活性以及穩(wěn)定性.由上述的式(2)和式(3)可以看出,小型無(wú)人旋翼機(jī)所需要的參數(shù)都是利用傳感器所采集數(shù)據(jù)的單值函數(shù),但是其函數(shù)結(jié)構(gòu)比較復(fù)雜,如果直接用F28335 進(jìn)行計(jì)算的話,會(huì)出現(xiàn)程序比較繁瑣,運(yùn)算量較大等問(wèn)題,不利于系統(tǒng)對(duì)數(shù)據(jù)的實(shí)時(shí)解算,因此為了提升系統(tǒng)的實(shí)時(shí)性,在系統(tǒng)可以接受的誤差范圍內(nèi)對(duì)原函數(shù)利用線性插值算法進(jìn)行處理,用一個(gè)較為簡(jiǎn)便的函數(shù)代替原來(lái)的函數(shù),如式(5):
式中,yi代表第i 個(gè)插值氣壓高度的值(或指示空速的值);xi代表第i 個(gè)插值點(diǎn)大氣靜壓的值(或動(dòng)壓的值);ki代表插值線段的斜率.而插值點(diǎn)的個(gè)數(shù)則可以由式(6)線性插值法的誤差公式確定:
根據(jù)測(cè)量需要,在確定所需要插值點(diǎn)個(gè)數(shù)之后,可以得出各個(gè)插值點(diǎn)相對(duì)應(yīng)的yi值和xi值以及插值方程線段的斜率ki,然后存放到F28335 的ROM 中,當(dāng)采集轉(zhuǎn)換的兩組數(shù)據(jù)輸入DSP 時(shí),先將采集得到的數(shù)據(jù)求平均值,然后與存儲(chǔ)的數(shù)據(jù)進(jìn)行比較,確定其大致所在的分段,然后將該分段對(duì)應(yīng)的yi、xi、ki提取出來(lái)帶入式(5)中計(jì)算,得出一組數(shù)值進(jìn)行濾波后輸出,輸出的數(shù)值即為小型無(wú)人旋翼機(jī)所需要的數(shù)據(jù).
由于實(shí)驗(yàn)條件的限制,采用模擬實(shí)驗(yàn)的方式對(duì)設(shè)計(jì)的數(shù)據(jù)采集系統(tǒng)進(jìn)行驗(yàn)證.
對(duì)某教學(xué)樓1 層到8 層各樓層的氣壓高度值進(jìn)行了測(cè)量,測(cè)量綜合結(jié)果如表1 所示.
表1 各層氣壓高度值(單位:m)
從表1 中可知測(cè)量的氣壓高度值和實(shí)際高度的誤差不超過(guò)0.2 m,符合無(wú)人旋翼機(jī)的操控要求.
空速利用風(fēng)扇檔數(shù)以及距離遠(yuǎn)近的調(diào)節(jié)來(lái)進(jìn)行模擬測(cè)量,同時(shí)使用GM8901+風(fēng)速計(jì)測(cè)量風(fēng)速作為參考數(shù)據(jù),該風(fēng)速計(jì)的技術(shù)指標(biāo)如表2 所示.
表2 GM8901+風(fēng)速計(jì)技術(shù)指標(biāo)
空速和溫度測(cè)量得到的結(jié)果如圖7、圖8 和圖9所示.
經(jīng)過(guò)多次測(cè)量,在圖7 中測(cè)量得到的空速為7.5~8.5 m/s,風(fēng)速計(jì)測(cè)量的到的風(fēng)速為7.1~7.3 m/s;圖8 中測(cè)量得到的空速為9.6~10.4 m/s,風(fēng)速計(jì)測(cè)量的到的風(fēng)速為9.3~9.6 m/s;圖9 中測(cè)量得到的溫度為25.43~25.45 ℃,溫度計(jì)測(cè)量到的溫度為27.03~27.07 ℃.可以看出測(cè)量得到的數(shù)據(jù)和實(shí)際的誤差較小,能夠滿足無(wú)人旋翼機(jī)的操控要求.
圖7 一檔模擬飛行的空速測(cè)量數(shù)值
圖8 二檔模擬飛行的空速測(cè)量數(shù)值
圖9 溫度測(cè)量數(shù)值
在分析了小型無(wú)人旋翼機(jī)需求的基礎(chǔ)上,基于TMS320F28335 和MEMS 傳感器設(shè)計(jì)的小型雙采集裝置大氣數(shù)據(jù)采集系統(tǒng)測(cè)量高度誤差在0.2 m 以?xún)?nèi),空速誤差在1.5 m/s 以?xún)?nèi),溫度誤差在2 ℃以?xún)?nèi),基本能夠滿足小型無(wú)人旋翼機(jī)的操控要求,并具有體積小,功耗低等優(yōu)點(diǎn),為小型無(wú)人旋翼機(jī)大氣數(shù)據(jù)采集系統(tǒng)在實(shí)際中的應(yīng)用做了一定的理論工作.