硅壓阻式壓力傳感器的零點溫度漂移和靈敏度溫度漂移是影響傳感器性能的主要因素之一,如何能使該類誤差得到有效補償對于提高其性能很有意義。通過對硅壓阻式壓力傳感器建立高階溫度補償模型進行溫度誤差補償是一種有效的方法,并在該模型基礎上給出了擬合系數計算方法,并用Matlab GUI軟件來實現溫度補償系數計算,進而實現傳感器輸出的動態(tài)溫補,達到了很好的輸出線性性。實驗結果表明,補償后傳感器輸出的非線性誤差小于0.5% F.S.
0 引言
硅壓阻式壓力傳感器利用半導體材料的壓阻效應來進行壓力測量,以其體積小、靈敏度高、工藝成熟等優(yōu)點,在各行業(yè)中得到了廣泛應用。實際工程應用中由于硅材料受溫度的影響,導致零點漂移和靈敏度漂移,因此溫度補償問題是提高傳感器性能的一個關鍵環(huán)節(jié)。目前壓力傳感器主要有兩種溫度補償方法:硬件補償和軟件補償。硬件補償方法存在調試困難、精度低、成本高、通用性差等缺點,不利于工程實際應用;利用數字信號處理技術的軟件補償能夠克服以上缺點,也逐漸成為研究熱點。
目前軟件補償的方法主要有:查表法、二元插值法、BP神經網絡法、小波神經網絡方法、曲線曲面擬合方法等。查表法需要占用很大內存空間,而神經網絡方法存在網絡不穩(wěn)定、訓練時間較長的缺點不利于工程應用。在研究各類軟件補償方法的基礎上對壓力傳感器采用建立高階溫度補償模型進行溫度誤差補償,并且在Matlab GUI軟件平臺下實現高階溫度補償系數的計算,通過實驗對該方法進行驗證。
1 高階溫度補償模型的建立
1.1 高階溫度補償建模
壓力傳感器輸出非線性誤差主要是由零點溫度漂移和靈敏度溫度漂移產生,零點溫度漂移是由于電阻摻雜不同而導致電阻的溫度系數不同,靈敏度溫度漂移主要由于壓阻系數易隨溫度的升高而減少。針對溫度對傳感器輸出影響,采用對零點溫度漂移和靈敏度漂移建立高階補償模型進行統一補償,補償后壓力值 Press(T )表示為溫度傳感器電壓輸出VT 和壓力傳感器電壓輸出VP 的函數:
將 Press(T ) 補償轉換成曲面擬合問題,采用高階多項式擬合方法構造曲面方程:
式中系數矩陣中元素CI,J 是式(2)中VP VT 項對應系數。
對壓力傳感器進行全溫段實驗,得出壓力傳感器靜態(tài)輸出特性,應用上述模型計算擬合系數。
1.2 高階溫度補償過程
在實際工程應用中,傳感器輸出電路可采用以DSP為核心運算電路進行動態(tài)溫度補償的方法來實現實時數字溫度補償,具體電路如圖1 所示:整個電路由A/D轉換電路、DSP 運算電路、串并轉換電路、并串轉換電路、E2RPOM等5部分組成。
對壓力傳感器進行全溫段實驗,計算出擬合系數存放在數字補償電路的E2PROM 中。壓力傳感器輸出電壓值VP 和溫度傳感器輸出電壓值VT 通過A/D轉換輸出串行信號經過串并轉換電路送到DSP運算電路中,DSP運算電路根據式(2)進行計算。最后補償后結果通過并,串轉換電路輸出,從而實現壓力傳感器實時數字溫度補償。
1.3 高階溫度補償系數計算過程
由于不同壓力傳感器動態(tài)特性不同,采用高階補償模型計算出擬合系數也有差異。為了保證動態(tài)溫度補償在硬件上方便實現,減少硬件運算量,必須先求出擬合系數并進行適當調整,使擬合系數以統一格式存放。
以擬合系數范圍在小數點前6 位小數后3 位為例,即{-999 999.999,999 999.999}范圍,步驟如下:
?。?)構造高階多項式,根據靜態(tài)實驗數據用高階溫度補償模型進行擬合,計算出擬合系數矩陣C.
?。?)判斷擬合系數矩陣C 系數是否在范圍內:如果所有系數值在范圍內,擬合過程結束;當系數值不在范圍內,記錄擬合系數下標值。取絕對值最大的一項CI,J (max) ,CI,J (max) 取絕對值與999 999.999相除取整得到調整系數N.
(3)重新構造高階多項式,針對步驟(1)中計算出系數值不在范圍內對應位置項的系數置0得缺項多項式,重新根據靜態(tài)實驗數據進行擬合,求系數矩陣C1.根據N 對系數矩陣進行調整,調整后系數矩陣C =[C + C1N]/(N + 1)。
?。?)對調整后系數矩陣C 重復步驟(2)進行判斷,直至所有系數矩陣中系數值都在范圍內,則調整結束,保存系數矩陣。
擬合系數通過上述方法可以以統一的數據格式進行存放,方便在DSP 硬件平臺上實現動態(tài)數字溫度補償,在一定程度上可以減少硬件運算量。系數調整過程還需要根據具體情況設定系數范圍,在能夠保證傳感器輸出線性性的情況下,系數范圍越小在硬件上越容易實現。
2 軟件設計與實現
由上述分析可知,數字補償電路對傳感器進行動態(tài)溫度補償時,必須先求出高階溫度補償擬合系數。采用Matlab 2012a作為軟件平臺,利用Matlab圖形用戶界面(GUI)編程實現壓力傳感器高階溫度補償系數計算。
GUI 是Matlab 為用戶提供的Windows 圖形界面設計方法,使用戶能夠在利用其強大數值計算功能的同時設計出友好的圖形界面。
整個程序框圖如圖2 所示:包括數據讀取模塊、標準擬合模塊、系數調整模塊和數據存儲模塊。數據讀取模塊功能是讀取傳感器全溫段實驗數據進行預處理,標準擬合模塊根據高階溫度補償模型和靜態(tài)實驗數據計算系數矩陣,系數調整模塊是對高階溫度模型系數進行系數調整,數據存儲模塊把系數值以一定格式保存方便寫入數字補償電路的E2PROM.
軟件設計流程圖3所示。
3 實驗結果與誤差分析
實驗選用壓力傳感器量程為0~800 PSI,工作溫度范圍在-55~125 ℃,標準壓力源采用美國Mensor公司的PCS400,高低溫箱提供各種溫度測試環(huán)境。測試時依次取-20 ℃,25 ℃,50 ℃,75 ℃,100 ℃,75 ℃,50 ℃,25 ℃,-20 ℃溫度點進行高低溫實驗,每個溫度點下提供標準壓力值16 PSI,200 PSI,400 PSI,600 PSI,800 PSI,600 PSI,400 PSI,200 PSI,16 PSI,測得靜態(tài)壓力傳感器輸出特性如表1 所示。采用5階溫度補償模型對靜態(tài)數據進行溫度補償后得到的結果如表2所示。
實驗數據表明,壓力傳感器建立高階溫度補償模型可以實現其零點漂移和靈敏度漂移的統一補償,補償后傳感器輸出值與標準值最大誤差為:
4 結語
采用高階溫度補償方法對硅壓阻式壓力傳感器的零點漂移和靈敏度漂移進行統一補償。由實驗數據可知,這種方法可以對硅壓阻式壓力傳感器溫度補償效果明顯,能夠很好的提高壓力傳感器的輸出線性性,通過硬件可以實現傳感器實時數字溫度補償,具有一定的工程應用價值。但是這種方法也存在某些不足:對于實驗數據離散量比較大的情況下,高階溫度補償模型會對個別數據點補償效果不理想。針對這個問題可以采用插值法和引入權函數方法結合起來進行進一步改進。
(審核編輯: 智匯李)
分享