摘 要:壓力測控系統(tǒng)是嵌入式應(yīng)用中常見的應(yīng)用模塊之一,被廣泛地應(yīng)用于現(xiàn)代工業(yè)的各種測控系統(tǒng)中。本文介紹基于Freescale公司生產(chǎn)的壓力傳感器MPxM2010、微控制器68HC908QT4等低成本器件設(shè)計(jì)的壓力測控系統(tǒng),并在硬件成本幾乎不增加的情況下,通過搭配簡單的模擬電路和軟件上的編程,增加系統(tǒng)測量精度。文中對精度改進(jìn)前后的系統(tǒng)做了數(shù)值計(jì)算上的比較,從具體數(shù)值上說明系統(tǒng)精度有明顯的提高。文中介紹的方法還可應(yīng)用于A/D轉(zhuǎn)換的其他應(yīng)用環(huán)境,對降低系統(tǒng)成本大有裨益。
關(guān)鍵詞:68HC908QT4 MPxM2010硅壓阻傳感器 A/D轉(zhuǎn)換精度提高
引 言
Freescale公司生產(chǎn)的MPXM2010器件是一種硅壓阻式壓力傳感器。MPXM20lO精度很高,輸出電壓與輸人的壓力具有良好的線性關(guān)系。這種傳感器是一塊單片集成電路,集成有壓力應(yīng)變儀及膜阻網(wǎng)絡(luò),并帶有激光式微調(diào)模塊進(jìn)行溫度補(bǔ)償和偏移佼正微控制器68HC908QT4則是一款低端的8位微控制器,有4路8位的A/D轉(zhuǎn)換通道和16位的PWM模塊,可以用于A/D和D/A轉(zhuǎn)換。
將兩種芯片結(jié)合到一起可組成一套實(shí)用的低成本壓力測控系統(tǒng)。美中不足的是它的精度低了一些,如果將A/D位數(shù)提高則會使成本大大增加。通過硬件搭配和軟件上的編程可以彌補(bǔ)這一缺點(diǎn),即不增加硬件開銷而且可以提高產(chǎn)品性能。
1 壓力傳感器模塊設(shè)計(jì)
Freescale公司生產(chǎn)的MPXM2010器件是一種硅壓阻式壓力傳感器,其內(nèi)部原理如圖l所示。MPXM2010精度很高,輸出電壓與輸入的壓力具有良好的線性關(guān)系。這種傳感器是一塊單片集成電路,集成有壓力應(yīng)變儀及膜阻網(wǎng)絡(luò),并帶有激光式微調(diào)模塊進(jìn)行溫度補(bǔ)償和偏移校正。
MPXM2010特點(diǎn)如下:
◇壓力測量范圍為O~10 kPa,精度可達(dá)士O.01 kPa;
◇在O~85℃之間具有溫度補(bǔ)償功能;
◇輸出信號與壓力的線性關(guān)系良好;
◇傳感器接觸面可選擇是否帶引出管口;
◇有Tape&Reel的易用封裝形式,具體樣圖如圖2所示。
MPXM2010的輸出信號比較弱,需要另加1片MOC2A60,將小信號放大,直流變?yōu)榻涣?。這樣就可以直接控制電機(jī)切斷或是接通電源。在調(diào)試模塊時,將各部分分離開來便于調(diào)試。運(yùn)放采用MC33179,再配接一些電阻,就可以把壓力傳感器的信號輸出,并且可以通過調(diào)節(jié)阻值來調(diào)節(jié)輸出信號的大小。圖3和圖4是壓力傳感器模塊設(shè)計(jì)的原理圖和PCB板圖。
2 壓力測控系統(tǒng)設(shè)計(jì)及其精度改進(jìn)
2.1 直聯(lián)式壓力測控系統(tǒng)
通常情況下,使用68HC908QT4的A/D模塊即可完成設(shè)計(jì),只要把壓力傳感器模塊的輸出端接至68HC908QT4的A/D模塊輸入端即可。圖5給出了壓力測控系統(tǒng)的框圖。
微控制器68HC908QT4特點(diǎn)如下:
◇4 KB Flash存儲器、128 B的RAM存儲器;
◇4路8位A/D轉(zhuǎn)換器、16位PWM模塊;
◇價格便宜,批量1000片以上每片的價格可降至1美元以下。
MPXM2010測量范圍為0~10 kPa,將其輸出電壓信號限制在0~5 V,則其精度為:
S=5 V/10 kPa=500 mV/kPa
68HC908QT4的A/D為8位,電壓限制5 V,則其精度為:
R=5 V/(20—1)bit≈19.61 mV/bit
整個系統(tǒng)的壓力精度為:
R/S=19.61/500 kPa/bit=0.039 22 kPa/bit
如果要提高精度,將A/D升為10位,則精度為:
R/S=O.03 922X(28—1)/(210—1)kPa/bit=0.009 776 kPa/bit
A/D升為12位后,精度為:
R/S=0.039 22×(28—1)/(212—1)kPa/bit=0.002 442 kPa/bit
這樣做確實(shí)可以提升精度,但要增加硬件的開銷。利用68HC908QT4的PWM模塊作為D/A轉(zhuǎn)換器,可以巧妙地提高A/D變換的精度。
2.2 改進(jìn)后的壓力測控系統(tǒng)
誤差產(chǎn)生的原因就是在A/D處,將小數(shù)點(diǎn)后的部分舍去,比如176.51 bit會當(dāng)作176 bit來處理。解決問題也應(yīng)該從這里人手,把誤差縮小。
誤差的引出可以用D/A來解決,把A/D讀進(jìn)來的數(shù)據(jù)再用D/A處理一次送出來,和原來的數(shù)據(jù)做一次減法就可以得到。誤差沒法直接再送回A/D,但可以將其放大后再送回,再使用68HC908QT4中的另一路A/D將放大后的誤差進(jìn)行A/D變換,MCU得到結(jié)果后縮小相同的倍數(shù),與原A/D變換結(jié)果相加,便是更精確的結(jié)果。圖6中,整個系統(tǒng)可分為壓力傳感器模塊、模擬部分、單片機(jī)部分和輸出電路部分,精度提高的關(guān)鍵在模擬部分的設(shè)計(jì).如圖7所示。假設(shè)放大器G的放大倍數(shù)為10。A/D的性能本身并沒有提升,精度仍為R=19.61 mV/bit,這個值也就是極限值。放大10倍后,原來的最大誤差19.6l mV/bit被擴(kuò)大為196.1 mV/bit,A/D處理的是放大后的數(shù)據(jù),其能力就被放大了10倍。數(shù)據(jù)處理時又會將其除以lO恢復(fù),從整體上來看就好像精度R除以10了一樣,變?yōu)?.961 mV/bit。
例如:初始A/D變換的誤差為10 mV,經(jīng)過放大后變?yōu)?00 mV,此時再經(jīng)過A/D變換,第二次遺留的誤差為100 mV一19.61 mV/bit×5 bit=1.95 mV,再除以10后變?yōu)?.195 mV。誤差大大地減小了,其極限值就是原精度的十分之一。
G的放大倍數(shù)可以自己調(diào)整,但要符合所選微處理器的性能以及電路本身的精度,選的過高沒有實(shí)際意義。
圖7所示的電路中,Vm、D、Vc與圖6所示相同。其中D的計(jì)算值為:
D=(Vm—Vc)×(R14/R13)[l+(R17/R16)]
G的放大倍數(shù)為(R14/R13)[1+(R17/R16)]。
結(jié)語
在產(chǎn)品設(shè)計(jì)研發(fā)過程中,成本是很重要的因素。巧妙地利用微控制器內(nèi)的模塊,輔助以相應(yīng)的簡單模擬電路,可以大大提高芯片的利用效率,并能提升系統(tǒng)性能。多利用手頭的東西進(jìn)行改進(jìn)再創(chuàng)造,往往能得到事半功倍的效果。