一種氣壓測(cè)量系統(tǒng)設(shè)計(jì)
2 硬件設(shè)計(jì)
本文引用地址:http://www.ex-cimer.com/article/263365.htm 針對(duì)小型無(wú)人機(jī)氣壓高度測(cè)量系統(tǒng)的特性,本設(shè)計(jì)選用STM32F103VCT6作為主控芯片,通過(guò)I2C讀取MS5611氣壓傳感器的數(shù)據(jù),并進(jìn)行二次溫度補(bǔ)償計(jì)算和氣壓高度解算等處理,通過(guò)串口輸出氣壓數(shù)據(jù),其系統(tǒng)框圖如圖 1所示。
其中,電源芯片選用TPS77633低壓降的線性電源芯片作為供電,能夠滿足系統(tǒng)低電壓的工作條件;采用PL2303HX芯片作為數(shù)據(jù)傳輸芯片,將數(shù)據(jù)通過(guò)串口發(fā)送到電腦上位機(jī)中,便于及時(shí)讀取數(shù)據(jù)和進(jìn)行相關(guān)數(shù)據(jù)的對(duì)比。
對(duì)于MS5611模塊的設(shè)計(jì),使用I2C的讀取模式,其原理圖如圖 2所示,在芯片的電源端和地之間連接一個(gè)104mF的去耦電容減小電源對(duì)芯片的干擾。
3 軟件設(shè)計(jì)
3.1 總體設(shè)計(jì)
軟件設(shè)計(jì)主要包括系統(tǒng)的初始化、MS5611寄存器數(shù)據(jù)讀取、溫度補(bǔ)償計(jì)算、溫度和氣壓解算、數(shù)據(jù)格式轉(zhuǎn)換、數(shù)據(jù)發(fā)送等部分,其主要流程圖如圖 3所示。系統(tǒng)在上電后,啟動(dòng)系統(tǒng)外部時(shí)鐘、設(shè)置串口波特率、設(shè)置系統(tǒng)I2C的IO工作模式和功能等。等待MS5611芯片初始化完成后,開(kāi)始相關(guān)溫度和氣壓數(shù)值的讀取和計(jì)算,并將這些數(shù)據(jù)發(fā)送到電腦上位機(jī)中保存,便于數(shù)據(jù)的對(duì)比和分析。
3.2 氣壓高度計(jì)算流程
氣壓高度的計(jì)算包括傳感器初始化、出廠校準(zhǔn)數(shù)據(jù)讀取、溫度和氣壓數(shù)據(jù)讀取、校準(zhǔn)計(jì)算、溫度補(bǔ)償、計(jì)算氣壓高度等幾部分。在MS5611初始化過(guò)程中,讀取MS5611內(nèi)部PROM中的6位出廠氣壓和溫度的補(bǔ)償值[2],實(shí)現(xiàn)溫度補(bǔ)償程序。在讀取MS5611的氣壓數(shù)值和溫度數(shù)值之后,通過(guò)中值濾波和滑動(dòng)窗濾波算法,減小氣壓數(shù)值波動(dòng), 能夠消除偶然出現(xiàn)的脈沖性干擾,對(duì)周期干擾也有良好的抑制作用[3]。將溫度補(bǔ)償運(yùn)算之后得到的氣壓數(shù)值按照公式2計(jì)算出氣壓高度。
波段開(kāi)關(guān)相關(guān)文章:波段開(kāi)關(guān)原理
評(píng)論