《電子技術應用》
您所在的位置:首頁 > 嵌入式技術 > 設計應用 > 基于氣壓傳感器BMP085的高度測量系統實現
基于氣壓傳感器BMP085的高度測量系統實現
來源:微型機與應用2014年第6期
張金燕1,劉高平1,楊如祥2
(1.浙江萬里學院 EDA重點實驗室,浙江 寧波315100; 2.寧波昊華智能科技有限公司,浙江
摘要: 設計了一種基于氣壓傳感器BMP085的高度測量系統。該系統以STM32F103RCT6嵌入式芯片為主控制器,采用I2C硬件接口的方式讀取BMP085測量的氣壓值,并用溫度值對氣壓值進行補償,然后根據大氣壓強與海拔高度的關系,利用線性插值法計算絕對高度,進而獲取相對高度。實驗結果表明,該系統測量的相對高度誤差為0.4 m,能夠達到高精度的要求。
Abstract:
Key words :

摘  要: 設計了一種基于氣壓傳感器BMP085高度測量系統。該系統以STM32F103RCT6嵌入式芯片為主控制器,采用I2C硬件接口的方式讀取BMP085測量的氣壓值,并用溫度值對氣壓值進行補償,然后根據大氣壓強與海拔高度的關系,利用線性插值法計算絕對高度,進而獲取相對高度。實驗結果表明,該系統測量的相對高度誤差為0.4 m,能夠達到高精度的要求。
關鍵詞: BMP085;氣壓傳感器;線性插值法;高度測量

    近年來,全球定位系統GPS(Global Positioning System)在定位領域的應用越來越廣泛。在GPS信號接收狀況良好時,能夠實現全球范圍內的實時定位,但是在封閉的高樓內以及高架橋下等環境中,GPS衛星的信號容易被遮擋,導致定位精度大大降低[1-2]。隨著傳感器技術的不斷發展,利用基于微機電系統MEMS(Micro Electromechanical System)技術的傳感器實現高度測算已經成為一種研究趨勢,采用這種方法可以彌補GPS定位時信號被遮擋的缺點。本文提出了一種基于BMP085數字氣壓傳感器的高度測量方法,設計了一種通過STM32F103RCT6微處理器控制的高度測量系統。該系統具有體積小、精度高、功耗低等優點,可以應用于室內外導航、天氣預測、飛行高度測量等多種場合。
1 系統硬件設計
    本系統硬件由BMP085氣壓傳感器模塊、STM32F103-
RCT6微處理器、電源等部分組成。BMP085氣壓傳感器模塊通過I2C(Inter-Integrated Circuit)總線將未經補償的氣壓值和溫度值傳送給STM32F103RCT6微處理器,微處理器對數據進行補償后,再將氣壓、高度等數據通過串口輸出到PC上,并在PC上顯示。系統硬件框圖如圖1所示。

1.1 BMP085數字氣壓傳感器
    BMP085是德國BOSCH公司生產的一款低功耗、高精度的MEMS數字氣壓傳感器。BMP085的供電電壓為1.8 V~3.6 V,典型值為2.5 V。它由電阻式壓力傳感器、A/D轉換器和帶有E2PROM的控制單元組成,控制單元通過I2C總線與移動設備的微處理器連接[3]。E2PROM中存儲了11個校準參數,這11個校準參數涉及到參考溫度下的零點漂移、零點漂移的溫度系數以及靈敏度的溫度系數等[4],用于對氣壓值進行溫度補償。BMP085的氣壓測量范圍為300 hPa~1 100 hPa(海拔高度-500 m~9 000 m),溫度測量范圍為-40 ℃~+85 ℃。在低功耗模式下,BMP085精度為0.06 hPa(0.5 m),在高精度模式下其精度可以達到0.03 hPa(0.25 m),轉換速率可以達到128次/s,能夠滿足系統對速度和精度的要求。
1.2 接口電路設計
    STM32F103RCT6是一款基于32位ARM CortexTM-M3 RISC內核的增強型微控制器[5],包含2個I2C接口,便于與外圍設備之間進行通信,其中I2C1的串行數據(SDA)線和串行時鐘(SCL)線對應的引腳分別為PB6、PB7,而I2C2的SDA和SCL對應的引腳分別為PB10、PB11。本系統采用I2C1接口進行通信,BMP085的SCL和SDA分別與STM32F103RCT6的PB6、PB7引腳相連。STM32F103-RCT6微處理器采用8 MHz的外部晶振,通過鎖相環產生最大的72 MHz主時鐘頻率。另外,一般具有I2C總線的器件其SDA和SCL管腳都是漏極開路(或集電極開路)輸出結構,因此實際使用時,SDA和SCL信號線都必須加上拉電阻Rp(Pull-Up Resistor),上拉電阻一般取值為3 kΩ~10 kΩ,本系統采用4.7 kΩ的上拉電阻。
    同時,測量所得的氣壓和高度等數據通過USART1串口輸出到PC。BMP085與STM32F103RCT6的接口電路連接如圖2所示,圖中U1為電壓轉換芯片,將5 V電壓轉換為3.3 V電壓,U2為氣壓傳感器BMP085,U3為SP3232電平轉換芯片,通過串行端口(COM)與PC機相連,U4為本系統的核心芯片STM32F103RCT6微處理器。

2 單片機軟件設計
    單片機軟件設計流程如圖3所示。首先進行系統初始化,包括系統時鐘(RCC)配置、中斷向量(NVIC)配置、GPIO配置、USART串口配置以及I2C接口初始化。接著從BMP085的E2PROM中讀取11個校準參數。然后每隔10 ms從寄存器中讀取未經補償的溫度和氣壓值,用校準參數對其進行補償,并采用線性插值法計算海拔高度,再將溫度、氣壓、高度等數據一起傳送給PC,并在PC上顯示一行數據。

    下面對I2C讀寫方式、數據補償以及線性插值法計算海拔高度部分進行重點介紹。
2.1 硬件方式實現I2C接口
    本系統的BMP085和STM32F103RCT6之間通過I2C總線進行通信。I2C接口有兩種實現方式,一種是使用I/O口模擬I2C接口,另外一種是硬件中斷方式。本系統采用硬件方式實現I2C接口通信。雖然硬件實現I2C接口較復雜,但是相對于用I/O口模擬I2C接口的方法,硬件I2C方式在實時性和傳輸速度上有很大的優勢。
      對I2C口進行初始化時,配置I2C為7位地址模式,時鐘頻率為100 kHz,開啟IT_
ERR、IT_EVT和IT_BUF中斷。在產生I2C起始位后,第一個字節由7位的傳輸地址和1位的數據方向位組成。數據方向位為“1”表示主接收模式(主機請求從機數據),為“0”表示主傳輸模式(主機向從機輸出數據)[5]。當采用單字節讀寫方式時,主傳輸模式與主接收模式序列圖分別如圖4、圖5所示。圖中S為起始條件,P為停止條件,A為應答,NA為非應答;EV5表示已發送起始條件,EV6_1表示從機地址已發送,EV6_2表示收到匹配的地址數據,EV7表示收到數據,EV8表示數據已發送。

2.2 數據補償
      由于海拔高度和大氣壓強的關系受溫度的影響,因此需要用溫度值對氣壓值進行補償。BMP085氣壓傳感器的E2PROM中有原廠自帶的11個校準參數,每一個傳感器的校準參數都不同。在第一次讀取氣壓和溫度值之前,必須先讀取E2PROM中的校準參數,再從指定的寄存器中將未經補償的溫度和氣壓值讀取出來,然后采用BMP085數據手冊提供的補償算法對溫度值和氣壓值進行補償。該算法中,需要根據所設置的過采樣參數OSS(Oversampling Setting)的值來選擇BMP085的工作模式,OSS的值決定了測量精度和轉換時間,BMP085的4種工作模式如表1所示[3]。本系統的單片機軟件中將OSS的值設置為“0”,即選擇低功耗工作模式。

    
后的氣壓值,p0為標準大氣壓,即p0=101 325 Pa。從式(3)可以看出,大氣壓每下降1 hPa,海拔高度就升高8.43 m。同時,可以發現大氣壓強與實際海拔高度之間存在非線性關系。如果直接用單片機微處理器計算此式,則程序較復雜、占用內存空間較大,影響了運算速度。因此需要采用一種算法將氣壓和高度兩者之間的非線性關系轉換為線性關系,以便于通過STM32F103RCT6微處理器對高度進行實際的測算[7]。
2.3.2 線性插值法計算海拔高度
    線性插值法的基本思路為:系統的靜態輸入/輸出數據表格中相鄰兩個數據點之間客觀地存在著某種變化規律,在相鄰的各已知點間構造一個簡單的近似函數,近似函數的值取離散數據,然后根據己知點的函數值求出所要點的函數值[7]。本文采用線性插值法來計算海拔高度,假設系統輸入為x,并且xi<x<xi+1時,在此區間內可近似認為測量系統的靜態輸入/輸出的關系為線性關系,即P(x)=α0+α1x,其點斜式插值公式為:
   
      國際標準大氣壓數據表中記錄了-100 m~20 000 m間每隔一段高度所對應的氣壓值。每個氣壓數據點為xi,其對應的高度數據點為yi,P(x)即為系統所要測量的海拔高度值。在實際應用中,首先判斷傳感器所讀取的氣壓值對應的高度范圍,然后采用線性插值法進行高度計算,這樣在很大程度上避免了乘方運算的復雜性[8]。
3 實驗結果及分析
3.1 實驗測試結果

    下面給出對一幢大樓進行高度測試實驗的記錄情況。分為兩次實驗,兩次實驗在同一時間段內進行,首先測量大樓樓頂的海拔高度,然后測量地面的海拔高度,兩者相減得到相對高度,即大樓的高度。
    實際測量海拔高度時,每隔2 min測量一次,每次記錄30行數據的平均值,記錄下10組測量數據。兩次實驗結果如圖6所示,大樓相對高度與實際高度的對比如圖7所示。

 

 

    對圖7中的數據進行分析,計算得到10組相對高度數據的平均值為17.3 m。經實地測量,大樓的實際高度為16.9 m。因此本系統測量的相對高度誤差為0.4 m,達到了預期的精度要求。
3.2 誤差分析
    由于大氣壓強易受天氣、溫度等因素影響而發生變化,導致計算得出的絕對海拔高度值不穩定,變化范圍較大,本實驗計算得到的相對高度值可以抵消由此產生的誤差。


 
    本文提出的基于氣壓傳感器BMP085的高度測量系統,借助于大氣壓與海拔高度之間的關系,采用線性插值法計算海拔高度,減小了運算的復雜性。同時,利用硬件方式實現I2C接口,保證了較快的傳輸速率。經實驗驗證,該系統的相對高度誤差為0.4 m,具有一定的適用性。本系統具有體積小、精度高、便于攜帶等優點,適合安裝在移動設備中,實用性較強,可以應用于軍事、工業和商業等多個領域,有著廣泛的應用前景。
參考文獻
[1] 龐晗.基于MEMS慣性器件的徒步個人導航儀設計與實現[D].哈爾濱:哈爾濱工程大學,2012.
[2] 姜西瑞.基于GPS和GSM/GPRS的定位系統的設計與實現[D].北京:中國科學院計算技術研究所,2006.
[3] BOSCH Sensortec.BMP085 digital pressure sensor data sheet[EB/OL].[2013-08-10].http://www.bosch-sensortec.com.
[4] 王俊彩,王福平,侯瑞峰,等.基于BMP085的一種便攜式海拔高度測量系統設計[J].傳感器與微系統,2011,30(12):123-125.
[5] 蒙博宇.STM32自學筆記[M].北京:北京航空航天大學出版社,2012.
[6] 曲國福.高精度智能高度傳感器設計[J].計量與測試技術,2003,30(6):4-6.
[7] 孟煒.高度測量數據處理及算法的研究[D].西安:西北工業大學,2005.
[8] Skyteacher.基于線性插值算法與BMP085氣壓傳感器的數字電子高度計設計[EB/OL].[2013-09-06].http://www.docin.com/p-471155660.html.

此內容為AET網站原創,未經授權禁止轉載。
热re99久久精品国产66热_欧美小视频在线观看_日韩成人激情影院_庆余年2免费日韩剧观看大牛_91久久久久久国产精品_国产原创欧美精品_美女999久久久精品视频_欧美大成色www永久网站婷_国产色婷婷国产综合在线理论片a_国产精品电影在线观看_日韩精品视频在线观看网址_97在线观看免费_性欧美亚洲xxxx乳在线观看_久久精品美女视频网站_777国产偷窥盗摄精品视频_在线日韩第一页
  • <strike id="ygamy"></strike>
  • 
    
      • <del id="ygamy"></del>
        <tfoot id="ygamy"></tfoot>
          <strike id="ygamy"></strike>
          欧美sm视频| 久久国产精品第一页| 久久在精品线影院精品国产| 在线精品视频一区二区三四| 欧美一区二区三区喷汁尤物| 欧美国产欧美亚州国产日韩mv天天看完整| 欧美激情一区二区三区成人| 亚洲综合视频一区| 欧美在线视频导航| 日韩午夜免费| 一区二区动漫| 欧美在线一级va免费观看| 国产综合在线看| 亚洲伦理在线观看| 亚洲精品影视在线观看| 亚洲第一在线视频| 欧美日韩国产综合在线| 伊人久久男人天堂| 亚洲欧美成人| 欧美色视频一区| 久久亚洲综合色一区二区三区| 最新中文字幕一区二区三区| 欧美视频一区二区三区…| 国产精品一区二区在线观看| 91久久精品国产91久久性色tv| 日韩午夜激情av| 久久超碰97人人做人人爱| 亚洲一区免费| 欧美一区二区三区免费观看| 国产一区香蕉久久| 亚洲国产日韩欧美一区二区三区| 欧美日本中文字幕| 欧美日韩综合在线免费观看| 午夜亚洲一区| 亚洲精品1234| 欧美日韩妖精视频| 亚洲在线视频免费观看| 久久国产夜色精品鲁鲁99| 亚洲欧美综合精品久久成人| 国产精品尤物福利片在线观看| 亚洲精品国产精品国自产观看浪潮| 亚洲成人原创| 国产精品久久久久久久午夜| 一区二区在线视频观看| 欧美在线视频一区二区三区| 欧美精品日韩www.p站| 欧美精品激情在线观看| 激情综合五月天| 影音先锋日韩资源| 极品尤物久久久av免费看| 久久国产乱子精品免费女| 亚洲在线观看视频网站| 亚洲精品专区| 欧美一区成人| 在线亚洲精品福利网址导航| 国产午夜精品福利| 99精品视频一区二区三区| 美脚丝袜一区二区三区在线观看| 欧美午夜无遮挡| 亚洲深夜福利在线| 国产一区在线看| 欧美性猛交99久久久久99按摩| 欧美精品一区二区三区很污很色的| 日韩一区二区高清| 欧美精品一区在线| 国产综合久久久久影院| 欧美日本高清视频| 欧美伦理影院| 欧美日韩免费区域视频在线观看| 裸体歌舞表演一区二区| 久久这里有精品15一区二区三区| 欧美视频一区二区三区| 一区二区免费看| 国产一区欧美日韩| 中文网丁香综合网| 亚洲国产日韩在线一区模特| 欧美精品久久99久久在免费线| 欧美伦理91| 免费观看一级特黄欧美大片| 欧美在线综合视频| 极品尤物久久久av免费看| 国产精品免费网站| 久久精品一区二区三区四区| 欧美在线国产精品| 国产日韩欧美在线视频观看| 国产日韩欧美一区二区三区四区| 国内精品伊人久久久久av一坑| 母乳一区在线观看| 亚洲欧洲精品一区二区三区波多野1战4| 麻豆精品精品国产自在97香蕉| 欧美在线三级| 欧美区亚洲区| 亚洲欧美另类久久久精品2019| 欧美精品乱人伦久久久久久| 一区二区三区中文在线观看| 国产日韩欧美在线视频观看| 国产精品国产a级| 欧美性淫爽ww久久久久无| 久久精品国产99国产精品| 亚洲在线黄色| 欧美一区二区三区视频免费| 欧美国产视频在线| 国产偷久久久精品专区| 欧美美女福利视频| 欧美精品999| 亚洲理伦在线| 国产精品白丝jk黑袜喷水| 韩国福利一区| 国产三区精品| 日韩亚洲欧美中文三级| 欧美日韩国产另类不卡| 老司机凹凸av亚洲导航| 欧美色道久久88综合亚洲精品| 久久精品国产精品亚洲精品| 香蕉尹人综合在线观看| 国产欧美日韩伦理| 亚洲综合首页| 国产精品日本欧美一区二区三区| 男女激情久久| 久久精品成人| 亚洲精品久久在线| 久久精品国产第一区二区三区最新章节| 亚洲无线一线二线三线区别av| 亚洲韩国日本中文字幕| 欧美少妇一区| 亚洲永久字幕| 亚洲欧美日韩精品综合在线观看| 国产精品电影网站| 国产精品亚洲一区| 美国成人毛片| av成人动漫| 国产一区 二区 三区一级| 久久中文精品| 欧美一区二区三区视频免费| 国产精品区二区三区日本| 国产精品免费一区二区三区观看| 久久久精品一区二区三区| 久久久久久日产精品| 久久国产视频网| 国内自拍亚洲| 欧美日韩在线视频一区二区| 久久精品国产亚洲a| 亚洲免费在线观看视频| 国产麻豆视频精品| 国户精品久久久久久久久久久不卡| 久久精品久久综合| 麻豆91精品91久久久的内涵| 香蕉av777xxx色综合一区| 欧美一区二区播放| 在线观看一区视频| 久久黄金**| 免费国产自线拍一欧美视频| 一区二区三区在线观看国产| 亚洲欧美国产高清va在线播| 亚洲一区二区三区精品视频| 国产精品一区久久| 国产精品一区二区三区成人| 久久久久久久网站| 国产精品99久久久久久宅男| 国产欧美精品一区| 亚洲片在线资源| 欧美日韩精品一二三区| 黄色成人小视频| 国产精品午夜久久| 欧美在线观看视频在线| 国内成人精品一区| 亚洲国产裸拍裸体视频在线观看乱了中文| 欧美日韩国产一中文字不卡| 一区二区三区四区五区视频| 亚洲国产精品毛片| 亚洲国产成人一区| 国产精品电影在线观看| 亚洲一区二区日本| 国产精品理论片| 欧美激情第五页| 一区二区欧美在线观看| 在线观看欧美一区| 一本色道久久综合亚洲二区三区| 欧美成人精品一区二区| 99精品福利视频| 欧美日韩在线视频一区| 亚洲乱码精品一二三四区日韩在线| 亚洲欧美日韩国产一区二区三区| 久久久国产精品一区二区三区| 亚洲欧美国产三级| 国产精品五区| 欧美日韩中文在线观看| 日韩午夜电影在线观看| 国产精品99久久久久久白浆小说| 麻豆精品精华液| 巨胸喷奶水www久久久免费动漫| 一区二区三区四区五区视频| 亚洲人成网站影音先锋播放| 亚洲精品免费在线播放| 欧美一乱一性一交一视频| 国产精品成人一区二区网站软件| 亚洲另类在线视频| 国内久久精品| 娇妻被交换粗又大又硬视频欧美| 久久久在线视频| 国产亚洲欧美一区二区三区| 国产综合久久| 99精品国产一区二区青青牛奶| 国产精品美女黄网| 久久久久久久网站| 国产亚洲视频在线观看| 欧美三级资源在线| 国产精品欧美激情| 欧美在线观看视频一区二区| 新狼窝色av性久久久久久| 亚洲国产精品久久久久| 欧美国产日韩免费| 国内精品久久久久久影视8| 国产亚洲毛片在线| 狠狠干综合网| 国产欧美亚洲一区| 久色婷婷小香蕉久久| 亚洲精品中文字幕在线观看| 亚洲福利在线看| 99热免费精品在线观看| 久久理论片午夜琪琪电影网| 国产精品国产三级国产a| 亚洲欧美日韩精品一区二区| 国产精品久久久久久亚洲毛片| 99riav国产精品| 韩国精品主播一区二区在线观看| 亚洲免费电影在线| 欧美日韩精品中文字幕| 亚洲伦理中文字幕| 亚洲精品乱码久久久久久按摩观| 先锋影音久久| 国户精品久久久久久久久久久不卡| 欧美激情综合五月色丁香| 国产美女精品人人做人人爽| 亚洲欧美日本国产有色| 欧美日本亚洲| 麻豆视频一区二区| 亚洲免费一区二区| 亚洲美女色禁图| 久久久久一区二区| 亚洲免费观看| 亚洲欧美视频一区| 在线观看日韩国产| 狠狠色狠狠色综合系列| 欧美在线视频一区二区三区| 亚洲国产成人精品久久| 欧美制服丝袜第一页| 国外成人网址| 欧美成人午夜激情在线| 久久久久久久高潮| 99精品视频一区二区三区| 亚洲欧美日韩中文在线制服| 亚洲国内高清视频| 亚洲欧美日韩另类| 美女诱惑一区| 久久永久免费| 在线观看国产精品网站| 中国亚洲黄色| 今天的高清视频免费播放成人| 欧美视频在线观看一区二区| 久久亚洲欧美| 欧美精品1区| 亚洲精品久久久蜜桃| 91久久久久久| 欧美一区二区三区日韩视频| 午夜国产不卡在线观看视频| 欧美四级伦理在线| 欧美一区高清| 久久久久女教师免费一区| 国产精品日韩在线一区| 亚洲高清在线| 亚洲一区尤物| 一本色道**综合亚洲精品蜜桃冫| 销魂美女一区二区三区视频在线| 亚洲激精日韩激精欧美精品| 欧美人成在线视频| 噜噜噜噜噜久久久久久91| 性做久久久久久久久| 亚洲二区在线| 久久亚洲春色中文字幕久久久| 国产精品婷婷| 欧美成人免费大片| 国产精品一二| 国产精品久久久久久久久久ktv| 狠狠色丁香久久婷婷综合_中| 欧美有码视频| 欧美片第1页综合| 亚洲精品一区二区网址| 国产精品亚洲视频| 国产精品久久久久7777婷婷| 亚洲精品国产精品国产自| 欧美日韩国内自拍| 欧美大成色www永久网站婷| 国产区在线观看成人精品| 久久久91精品国产一区二区精品| 欧美精品九九99久久| 欧美日韩一级片在线观看| 久久精品国产999大香线蕉| 老司机精品视频网站| 欧美日韩免费一区二区三区| 日韩西西人体444www| 美女网站久久| 国产女人aaa级久久久级| 亚洲视频第一页| 国产精品视频九色porn| 国产午夜亚洲精品羞羞网站| 久久一日本道色综合久久| 香蕉成人久久| 欧美午夜在线| 欧美日韩精品一区| 亚洲欧美视频在线观看视频| 亚洲在线一区二区| 国产精品magnet| 国产乱码精品一区二区三区av| 国产午夜精品在线观看| 一区二区三区欧美激情| 欧美日韩美女在线观看| 99亚洲伊人久久精品影院红桃| 国产欧美一区二区三区国产幕精品| 亚洲欧美日韩在线综合| 亚洲欧洲精品一区二区三区波多野1战4| 亚洲精品乱码久久久久久| 国产精品久久久久久久久久久久久| 小辣椒精品导航| 亚洲欧美日韩第一区| 久久综合色播五月| 激情视频一区二区三区| 免费观看亚洲视频大全|