基于MS5534B的氣壓高度計(jì)系統(tǒng)的設(shè)計(jì)
0引言
本文引用地址:http://m.butianyuan.cn/article/87629.htm傳統(tǒng)的氣壓測(cè)量方法很多,例如水銀氣壓計(jì)和機(jī)械振筒式空盒氣壓計(jì),但它們的結(jié)構(gòu)復(fù)雜、體積龐大、測(cè)量精度低,不便于自動(dòng)遙測(cè)。目前,氣壓傳感器正朝著小型化、集成化、智能化、標(biāo)準(zhǔn)化的方向發(fā)展,在性能上追求高穩(wěn)定性、高靈敏度、高分辨率、低功耗、寬溫度范圍等。隨著電子技術(shù)的快速發(fā)展,相繼出現(xiàn)了壓阻式、電容式以及基于MEMS技術(shù)制作的絕對(duì)壓力傳感器等。壓阻式或電容式傳感器結(jié)構(gòu)簡(jiǎn)單、精度高、靈敏度高,尤其是采用MEMS技術(shù)制作的絕對(duì)壓力傳感器,采用先進(jìn)的集成電路工藝和微加工技術(shù),將傳感元件和信號(hào)處理電路集成于一體,大大提高了測(cè)量性能,并簡(jiǎn)化了測(cè)量系統(tǒng)設(shè)計(jì),同時(shí)大大減小了體積,使得測(cè)量?jī)x器系統(tǒng)整體小型化。MS5534B就是基于MEMS的絕對(duì)壓力傳感器的典型代表。本文提出了一種基于壓力傳感器MS5534B實(shí)現(xiàn)高度傳感器的設(shè)計(jì)方案,其系統(tǒng)體積小、質(zhì)量輕、精度高、數(shù)據(jù)穩(wěn)定、響應(yīng)快、功耗低。
1 系統(tǒng)硬件設(shè)計(jì)
系統(tǒng)由數(shù)字壓力傳感器MS5534B、單片機(jī)MSP430F449、電源模塊、液晶顯示器LCD、RS232接口及其他外圍電路組成,如圖1所示。
MSP430F449用軟件模擬三線SPI口,實(shí)現(xiàn)MSP430F449與MS5534B通信,根據(jù)MS5534B的通信協(xié)議發(fā)送相應(yīng)的指令,獲得氣壓、溫度以及校準(zhǔn)系數(shù)值。串行時(shí)鐘信號(hào)SCLK由MSP430F449產(chǎn)生,SCLK提供串行數(shù)據(jù)傳輸所需時(shí)鐘。主時(shí)鐘MCLK由外部晶振產(chǎn)生,MCLK給MS5534B內(nèi)部邏輯電路提供時(shí)鐘。MSP430F449利用I/O口讀得MS5534B的數(shù)據(jù),通過(guò)軟件進(jìn)行溫度補(bǔ)償和壓力-高度轉(zhuǎn)換運(yùn)算得到實(shí)際高度值。首先MSP430F449對(duì)MS5534接口復(fù)位后,通過(guò)串口讀出MS5534B模塊存儲(chǔ)器中的WORD1~WORD4,再用邏輯運(yùn)算操作和移位操作提取補(bǔ)償參數(shù)C1~C6,然后,通過(guò)SPI口讀取16位壓力數(shù)據(jù)D1和溫度數(shù)據(jù)D2,用D1、D2和C1~C6通過(guò)補(bǔ)償算法計(jì)算出補(bǔ)償后的壓力,再由壓力-高度轉(zhuǎn)換算法得到實(shí)際高度值。溫度和實(shí)際高度值通過(guò)LCD顯示。LCD驅(qū)動(dòng)模擬電壓由R3、R5、R6組成的權(quán)電阻網(wǎng)絡(luò)提供。RS232接口通過(guò)異步串口與MSP430F449相連,實(shí)現(xiàn)上位機(jī)與MSP430F449的通信。
1.1 數(shù)字壓力傳感器
MS5534B是基于MEMS技術(shù)的數(shù)字壓力傳感器,內(nèi)部集成了絕對(duì)壓力傳感器、電阻式溫度傳感器、數(shù)據(jù)選擇器、15位A/D轉(zhuǎn)換器、數(shù)字濾波器及數(shù)據(jù)存儲(chǔ)器,其結(jié)構(gòu)如圖2所示。壓力、溫度傳感器分別檢測(cè)壓力、溫度信號(hào),壓力測(cè)量和溫度測(cè)量之間的切換是通過(guò)多路選擇開(kāi)關(guān)在很短的時(shí)間內(nèi)完成的。A/D轉(zhuǎn)換器分別將壓力、溫度的差分模擬信號(hào)轉(zhuǎn)換成數(shù)字信號(hào),通過(guò)數(shù)字濾波器抑制干擾,然后將16位的壓力和溫度數(shù)字信號(hào)存貯在數(shù)字IC模塊中。同時(shí),64位的數(shù)據(jù)存儲(chǔ)器PROM中存貯了6個(gè)補(bǔ)償參數(shù),分別是參考溫度下的零漂、靈敏度、零漂的溫度系數(shù)、靈敏度的溫度系數(shù)、參考溫度、溫度的變化系數(shù)。MS5534B供電電壓為2.2~3.6 V,壓力測(cè)量范圍為(30~110)kPa,工作時(shí)鐘為(30~35)kHz,是一種低功耗、低供電電壓的傳感器,可自動(dòng)斷開(kāi)電源,三線接口則可滿足與單片機(jī)通信,方便實(shí)現(xiàn)軟件矯正,達(dá)到極高的精度。
1.2單片機(jī)
MSP430F449是具有功耗低、存儲(chǔ)容量大、集成度高、在線支持性強(qiáng)等特點(diǎn)的單片機(jī),其工作電壓低(1.8~3.6 V)、電流小,有5種低功耗模式;豐富的中斷源并可任意嵌套,用中斷請(qǐng)求將系統(tǒng)從備用狀態(tài)喚醒僅需6μs;片內(nèi)看門(mén)狗及上電復(fù)位電路,三個(gè)時(shí)鐘源(XTAL1、XTAL2或內(nèi)部DCO)可供靈活選用;片內(nèi)16位的硬件乘法器,實(shí)時(shí)處理大量復(fù)雜的溫度補(bǔ)償和壓力-高度轉(zhuǎn)換運(yùn)算;雙向并行I/O口P1和P2(有中斷功能)及P3~P6口,多數(shù)口有復(fù)用功能;片內(nèi)集成4×40段LCD液晶驅(qū)動(dòng)器,實(shí)時(shí)顯示溫度和高度;通用通信模塊UARST0,通過(guò)軟件可選用為同步或異步方式。
2 軟件設(shè)計(jì)
軟件采用模塊化設(shè)計(jì)方法,主要包括系統(tǒng)初始化、I/O口模擬SPI口通信、溫度補(bǔ)償、濾波、氣壓-高度轉(zhuǎn)換、液晶顯示、RS232通信等子程序,主程序以循環(huán)方式工作,完成初始化及子程序的調(diào)用;I/O口模擬SPI口通信是單片機(jī)根據(jù)傳感器的通信協(xié)議,發(fā)送相應(yīng)的指令,讀取傳感器中相應(yīng)的壓力、溫度及校正參數(shù)值,并將4個(gè)字的校正參數(shù)值WORD1~WORD4轉(zhuǎn)換為6個(gè)補(bǔ)償參數(shù)C1~C6;溫度補(bǔ)償是單片機(jī)根據(jù)補(bǔ)償原理對(duì)讀出來(lái)的壓力進(jìn)行溫度補(bǔ)償計(jì)算,修正溫度變化引起的零漂和靈敏度變化,從而修正溫度變化引起的壓力值的變化;通過(guò)軟件濾波減小電路的噪聲干擾,提高測(cè)量精度,得到在實(shí)際溫度下的壓力值,然后程序通過(guò)高度與壓力、溫度的關(guān)系計(jì)算出高度。程序流程圖如圖3所示。
加速度計(jì)相關(guān)文章:加速度計(jì)原理
評(píng)論