1 引言 對高精度傳感器,溫度誤差已成為提高其性能的嚴重障礙,特別是在環境溫度變化較大的應用場合更是如此。依靠傳感器本身附加一些簡單的硬件補償措施是很困難的,目前對于一傳感器測量系統已大量引入了單片機,實現自動檢測和控制。因此用單片機自身的特點,利用軟件來解決傳感器溫度誤差難題是一條有效途徑。 在一單片機傳感器測量系統中,要解決傳感器溫度誤差補償問題,首先要測出傳感器點的溫度,該溫度信號作為多路采樣開關采集信號的一路送入單片機。測溫元件通常是安裝在傳感器內靠近敏感元件的地方,用來測量傳感器點的環境溫度,測溫元件的輸出經放大及A/D轉換送到單片機,單片機通過并行接口接收溫度數據,并暫存溫度數據。信號采樣結束,單片機運行溫度誤差補償程序,對傳感器信號的溫度誤差進行補償。對多個傳感器,可用多個測溫元件,常用的測溫元件有半導體熱敏電阻、AD950測溫管、PN結二極管等。原理框圖如圖1。
溫度變化給傳感器實際測量帶來誤差,表現在傳感器的輸入輸出特性曲線上產生非線性變化。為解決這樣問題,必須使問題簡單化,找出它們間的關系,建立對應的數學模型。傳感器特性曲線y=f(x),如圖2所示。
若傳感器的輸入和輸出之間的特性曲線的斜率變化很大,采用線性插值法,誤差就很大,這時可采用二次曲線插值法,即通過曲線上3個點A(x0、y0),B(x1、y1),C(x2、y2)做一拋物線,用此曲線代替原來的曲線,如圖3所示。曲線方程為一元二次方程,一般形式為: y="K0"+K1x+K2x2 式中K0,K1,K2為待定系數,可用曲線y=f(x)的3個點A,B,C的二元一次方程組求解,這就需要解聯立方程組,計算較復雜,列出的程序也較復雜,因此可以用另外一種型式: 以上是對傳感器建立溫度誤差的數學模型,用此模型可實現傳感器溫度補償。 3 實現溫度誤差補償的方法 首先給定K個溫度值(T0,T1,T2,…,TK-1),測出每個溫度點上傳感器靜態特性曲線在u 軸上的截距(u0,u1,…,uK),每個溫度點上傳感器特性曲線的數據要精確,必要時應在恒溫箱內進行,這需要較大的工作量,如圖4所示。 y =(u-U) tgα 式中U是溫度直線在坐標上的截距,可用線性插值由輸入的T求得,α是溫度直線與縱坐標軸u的夾角。按圖5流程編制補償程序,并作為子程序與監控程序一并使用,以便采集數據時按流程圖自動溫度補償。 uij—溫度Ti時第j次測得的傳感器輸出電壓。 用擬合法求出各溫度上的傳感器靜態輸出輸出特性的擬合多項式: 4 結語 用單片機的軟件實現傳感器溫度誤差補償,是一種簡便、有效的方法。它可以大大提高傳感器的測量精度,降低測量系統電路的復雜程度,提高可靠性,降低成本。特別是如硅阻、應變片、電容式等傳感器受溫度影響大,使用該方法可以提高它們測量精度。目前單片機廣泛使用在自動檢測儀表中,使用該方法實現傳感器溫度誤差補償,是一條行之有效的途徑。 |