999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于氣壓傳感器BMP085的高度測量系統實現*

2014-07-25 07:43:52張金燕劉高平楊如祥
網絡安全與數據管理 2014年6期
關鍵詞:測量系統

張金燕 ,劉高平 ,楊如祥

(1.浙江萬里學院 EDA重點實驗室,浙江 寧波315100;2.寧波昊華智能科技有限公司,浙江 寧波315040)

近年來,全球定位系統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.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~1100 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 接口電路原理圖

2 單片機軟件設計

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

圖3 單片機軟件流程圖

下面對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表示數據已發送。

圖4 主傳輸模式序列圖

圖5 主接收模式序列圖

2.2 數據補償

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

表1 BMP085工作模式

2.3 氣壓-高度轉換

2.3.1 大氣壓強與海拔高度的關系

假設空氣為理想標準大氣狀態,則大氣壓強與海拔高度有如下的關系[6]:

其中,Ps為大氣靜壓,即BMP085測量出來的氣壓值,Pb為海平面氣壓(相應層下界氣壓),Hb為海平面高度(相應層下界高度),R為氣體常數,gn為自由落體標準加速度,Tb為相應層大氣溫度,r為地球半徑。這些參數的取值如下:Pb=101 325 Pa,Hb=0,R=287.052 87 m2/k·s2,gn=9.806 65 m/s2,Tb=288 K=15℃,r=6 356 766 m。H表示重力勢高度,h表示幾何高度,即海拔高度。由此可見,通過測量大氣靜壓Ps即可計算出海拔高度h。

BMP085氣壓傳感器數據手冊提供了大氣壓強與海拔高度關系的公式,當海拔高度范圍為0~11 000 m時,高度計算公式為[3]:

其中Altitude表示海拔高度,以m為單位,p為經過補償后的氣壓值,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所示。

圖6 大樓樓頂與地面的絕對高度

對圖7中的數據進行分析,計算得到10組相對高度數據的平均值為17.3 m。經實地測量,大樓的實際高度為16.9 m。因此本系統測量的相對高度誤差為0.4 m,達到了預期的精度要求。

圖7 相對高度與實際高度對比

3.2 誤差分析

由于大氣壓強易受天氣、溫度等因素影響而發生變化,導致計算得出的絕對海拔高度值不穩定,變化范圍較大,本實驗計算得到的相對高度值可以抵消由此產生的誤差。

假設大樓的海拔高度測量值為H1,實際值為H1′,絕對高度噪聲誤差為Δh1,因天氣、溫度等環境因素引起的誤差為Δh;地面的海拔高度測量值為H2,實際值為H2′,絕對高度噪聲誤差為 Δh2,因天氣等環境因素引起的誤差同樣為Δh,則有:

則大樓相對于地面的高度H為:

由式(6)可知,相對高度噪聲誤差為(Δh1-Δh2),由此可見,絕對高度誤差中因天氣等環境因素引起的誤差被抵消,但是當 Δh1為正最大值且 Δh2為負最大值時,相對高度噪聲誤差可能會達到原來絕對高度噪聲誤差的兩倍。

本文提出的基于氣壓傳感器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.

猜你喜歡
測量系統
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
基于PowerPC+FPGA顯示系統
把握四個“三” 測量變簡單
半沸制皂系統(下)
滑動摩擦力的測量和計算
滑動摩擦力的測量與計算
測量的樂趣
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
主站蜘蛛池模板: 国产在线八区| 天天综合网亚洲网站| 欧美综合成人| 国产午夜一级淫片| 久久久久久高潮白浆| 日本午夜视频在线观看| 久久免费精品琪琪| 综合色区亚洲熟妇在线| 最新亚洲av女人的天堂| 91精品久久久久久无码人妻| 91无码人妻精品一区二区蜜桃| 色妞www精品视频一级下载| 国产精品免费电影| 无码区日韩专区免费系列| 欧美日韩北条麻妃一区二区| 亚洲国产成人综合精品2020| 国产免费网址| 久热这里只有精品6| 亚洲欧美不卡视频| 亚洲Av综合日韩精品久久久| 四虎永久在线视频| 九九视频免费在线观看| 自拍偷拍欧美日韩| 福利视频一区| 精品一区二区三区波多野结衣 | 日韩欧美国产另类| 国产九九精品视频| 成人午夜精品一级毛片| 在线观看国产精品一区| 精品无码专区亚洲| 午夜国产理论| 全部免费特黄特色大片视频| 99热这里只有精品2| 国产精品一区不卡| 日韩无码视频网站| 日韩成人午夜| 欧美a在线| 精品国产99久久| 久久综合亚洲色一区二区三区| 不卡无码网| 992tv国产人成在线观看| 2021国产精品自拍| 亚洲日韩精品综合在线一区二区| 精品国产免费人成在线观看| 永久免费无码日韩视频| 国产人成乱码视频免费观看| 久精品色妇丰满人妻| 日本午夜精品一本在线观看 | 最新日本中文字幕| 在线日韩日本国产亚洲| 欧美国产日韩一区二区三区精品影视 | 99国产在线视频| 国产日韩欧美在线播放| 欧美成一级| 国产区网址| 中文精品久久久久国产网址| 99热最新网址| 日韩av手机在线| 国产精品成人免费综合| 亚洲 日韩 激情 无码 中出| 国产农村1级毛片| 亚洲精品天堂在线观看| 国产精品自在线天天看片| 国产精品久久自在自线观看| 91偷拍一区| 欧美v在线| 一级毛片中文字幕| 国产91熟女高潮一区二区| 在线视频精品一区| 久久综合五月婷婷| 2021无码专区人妻系列日韩| 午夜福利免费视频| 久久香蕉国产线看观看式| 亚洲中文字幕在线精品一区| 欧美精品v欧洲精品| 国产好痛疼轻点好爽的视频| 日本午夜精品一本在线观看| 亚洲欧美不卡中文字幕| 国产在线观看第二页| 22sihu国产精品视频影视资讯| 色精品视频| 国产在线观看第二页|