三次樣條插值在稱重儀表誤差補償中的應用
3 樣條曲線插位方法
3.1 三次樣條插值函數(shù)
當插值節(jié)點很多時,使用高次多項式插值并不能得到好的結果,因而一般采用分段插值法,即將插值區(qū)間分成若干個小區(qū)間,然后在每個小區(qū)間上使用次數(shù)較低的多項式進行插值。一般的分段插值法有一個嚴重的缺點,就是會導致插值函數(shù)在子區(qū)間的端點處不光滑,而樣條曲線插值就不存在這個問題。三次樣條插值由分段三次曲線連接而成,在連接點處有二階連續(xù)導數(shù),從而可以保證在連接點處光滑連接。
設函數(shù)f(x)在區(qū)間[a,b]上給定n+1個插值節(jié)點:a=x0x1…xn=b及其在插值節(jié)點的值f(x0),f(x1)…f(xn).若函數(shù)S(x)滿足:
1)S(x)在每個小區(qū)間[xj,xj+1]上是三次多項式j=0,1…,n-1;
2)S(x)在每個小區(qū)間[a,b]上具有連續(xù)二階導數(shù);
3)S(xj)=f(xj),j=0,1…n(2)則S(x)為函數(shù)f(x)的三次樣條插值函數(shù)。
3.2 三次樣條插值函數(shù)求法
記S(xj)=Mj,S(xj)=yi,hj=xj+1-xj,由三次樣條插值函數(shù)定義知,三次樣條函數(shù)的二階導數(shù)S(xj)在每個小區(qū)間[xj,xj+1]是一次線性函數(shù),如果已知在小區(qū)間兩個端點的值,則S(x)的在小區(qū)間[xj,xj+1]表達式可表示為:
其中的f[xj,xj+1]是關于節(jié)點xj,xj+1的一階差商。對于各個區(qū)間內的三次樣條插值函數(shù)可以通過采用追趕法對三彎矩方程組求得樣條函數(shù)的系數(shù)Mj,然后將系數(shù)Mj代入公式(4)求得,具體介紹可參看參考文獻。
4 稱重儀表的三次樣條插值誤差補償
4.1 基于三次樣條插值的誤差補償方法
對儀表進行三次樣條插值誤差補償的方法和步驟為:
1)首先將傳感器的滿量程劃分為若干段(一般為等間距劃分),確定插值節(jié)點;
2)給傳感器在各個插值節(jié)點處施加標準載荷,記錄此時的ADC轉換值和實際顯示值,根據(jù)理想的顯示值和實際顯示值求得一偏移量和ADC轉換值求代數(shù)和,將此值作為該插值節(jié)點的輸入值xj;
3)將各個插值節(jié)點處的儀表應該顯示的值(理想顯示值)作為輸出值yj;
4)根據(jù)各節(jié)點處的xj和yj求得各個區(qū)間上的三次樣條插值函數(shù)Sj(x);判斷ADC的實時轉換值x所處的具體區(qū)間,按照該區(qū)間的三次樣條插值函數(shù)計算儀表的實際顯示值即實時載荷值;
4. 2 實驗數(shù)據(jù)處理和分析
采用一款已經研制完成的五位半精度的儀表對傳感器的信號進行分析和驗證。
本款儀表采用高精度的24位AD轉換器AD7190對傳感器信號進行數(shù)模轉換,MCU采用TI公司的MSP430F149。
AD7190是ADI公司最新推出的具有業(yè)內最高精度之一的∑—△型AD轉換器,其非線性誤差最低僅為0.000 5%,峰值轉換速率可達到4.8 kHz,且具有極低的溫漂和轉換噪聲等性能。當內部PGA為1時可以達到高達22.5bit的無噪聲輸出,實際設計時,選取19位有效位(已經超出5位半顯示精度要求)。同時AD7190內部自帶有零點校準功能和增益校準功能,通過軟件編程可方便地根據(jù)實際情況對內部的零點校準寄存器和增益校準寄存器進行操作。
評論