基于單片機(jī)的高精度壓力數(shù)據(jù)采集系統(tǒng)的設(shè)計(jì)
2 非線性誤差的補(bǔ)償
軟件補(bǔ)償是將微處理器與壓力傳感器結(jié)合起來(lái),充分利用單片機(jī)豐富的軟件功能、結(jié)合一定的補(bǔ)償算法對(duì)傳感器的附加誤差進(jìn)行修正。常用的軟件補(bǔ)償算法有曲線擬合法和表格法。對(duì)于曲線擬合方法,常用的有最小二乘法和切比雪夫法。最小二乘擬合法又可分為最佳擬合直線法和多項(xiàng)式擬合曲線法。擬合的方法不同,擬合誤差就不同。一般來(lái)說(shuō),對(duì)于理論上輸入輸出為線性關(guān)系的傳感器,當(dāng)擬合的次數(shù)較低時(shí), 采用最小二乘法的精度較高??紤]到一般測(cè)試儀器的實(shí)際測(cè)試精度要求以及計(jì)算機(jī)的數(shù)據(jù)運(yùn)算能力、存儲(chǔ)能力,我們采用低階的最小二乘法曲線擬合,對(duì)誤差加以修正。2.1最佳擬合直線補(bǔ)償原理x1 假設(shè)擬合直線的方程為y=kx+b,設(shè)被測(cè)物理量為,x2,…xn,相應(yīng)的測(cè)量結(jié)果為y1,y2,…,yn,則第i個(gè)測(cè)量數(shù)據(jù)與擬合直線上相應(yīng)值之間的殘差為:△i=yi-(kxi+b),最小二乘法擬合的原則是使為最小,即使從而求得:
根據(jù)校準(zhǔn)曲線上n個(gè)測(cè)量值,將式(1)和(2)編制計(jì)算程序,很快可得最小二乘方擬合直線的截距和斜率。
2.2 軟件實(shí)現(xiàn)
在軟件實(shí)現(xiàn)過(guò)程中,為更好的補(bǔ)償系統(tǒng)非線性誤差,我們?cè)跐M量程的壓力測(cè)量范圍內(nèi)等分若干工作區(qū)段,每段曲線用一段對(duì)應(yīng)的折線來(lái)代替,對(duì)每段折線可求出斜率k和截距b,得到線段的回歸方程:y=kix+bi式中,i為某段折線的序號(hào),x為壓力傳感器采集的數(shù)據(jù)經(jīng)A/D轉(zhuǎn)換后的結(jié)果,y為修正輸出數(shù)值。
通過(guò)測(cè)量調(diào)試,得到系統(tǒng)測(cè)量參數(shù),預(yù)先將每段的特性數(shù)值存儲(chǔ)于單片機(jī)的程序存儲(chǔ)器中,在不同的工作區(qū)段,單片機(jī)自動(dòng)地將對(duì)應(yīng)的每段的參數(shù)值調(diào)出進(jìn)行運(yùn)算修正處理。
修正計(jì)算子程序流程圖如下:
3 結(jié)果仿真
本文用Matlab對(duì)實(shí)驗(yàn)室的擴(kuò)散型壓力傳感器的測(cè)量數(shù)據(jù)做了仿真,如圖4所示。實(shí)驗(yàn)數(shù)據(jù)見(jiàn)下表。為了提高補(bǔ)償精度,最小二乘法擬合時(shí)將壓力數(shù)據(jù)范圍0~0.06Mpa平均分為3段,分段用最小二乘法的最佳擬合直線擬合。仿真結(jié)果說(shuō)明這種補(bǔ)償方法可以更好的修正采集系統(tǒng)的誤差,有利與提高整個(gè)系統(tǒng)的精度。
評(píng)論