基于單片機高精度溫度測量的補償方法
長期以來,人們在測量溫度時,大部分使用常規(guī)的測量方法測量。檢測精度要求較高時,調理電路復雜、A/D的位數(shù)高,使設計的系統(tǒng)成本居高不,很難普及。隨著電子技術的發(fā)展,出現(xiàn)了很多功能完備的低功耗、低電壓大規(guī)模集成電路,為設計便攜式高精度測溫系統(tǒng)提供了硬件基礎。本文介紹的高精度便攜式測溫儀,使用了非常適合作低功耗便攜式測試設備美國TI公司的MSP430P325為控制器,用Pt500鉑電阻完成溫度檢測,檢測的溫度通過液晶顯示器顯示。本測試儀的測溫精度達到0。03℃。
硬件電路設計
MSP430P325單片機內部集成了可切換的精密恒流源。精密恒流源的電流大小由外部精密電阻確定,同時內部又集成了6個14位的A/D轉換器和液晶控制器。這樣的內部結構,適合驅動性傳感器。因此,可減少信號調理環(huán)節(jié)和顯示環(huán)節(jié)的擴展,大大地簡化了系統(tǒng)結構,效降低了系統(tǒng)功耗。
1。溫度傳感器數(shù)學模型
溫度敏感元件采用鉑電阻Pt500,在~630。75℃溫度范圍內鉑電阻阻值與溫度關系為
b=-5。847×10-7/(℃)2
根據(jù)上式進行溫度計算,需要求解二階方程的解,計算程序復雜,精度也難以保證。為此本文使用表格法和線形插值法進行溫度標度變換。方法如下:首先,以溫度增加1℃對應的絕對電阻值建立120個表格,A/D轉換結果與表格內的電阻值進行比較,直到Rn≤RM<Rn+1時停止比較,求出溫度整數(shù)部分,根據(jù)R-Rn和Rn+1-Rn的比值求解溫度的小數(shù)部分,就可求出溫度值。這種方法計算簡單方便,也能滿足設備精度要求。
2。MSP430P325單片機的A/D轉換原理
MSP430系列單片機具有低功耗、高抗干擾、高集成度等優(yōu)點。其中MSP430P325單片機具6有個通道14位A/D轉換器,如圖1所示。6個通道中A0~A3可編程為恒流源工作、適合于外妝電阻性、無源傳感元件的應用場合。SVCC端是A/D轉換的參考電壓端,它可連接于片內的AVCC,也可由外部穩(wěn)壓源提供。A/D轉換采用逐次逼近原理,由內部一個電阻網(wǎng)絡生個開關電容網(wǎng)絡配合D/A及比較器等電路來實現(xiàn),由時鐘ADCLK控制轉換的進程。轉換過程經(jīng)過兩卡,首先通過電阻陣列分壓值與輸入信號的比較來確定輸入信號電壓的范圍,這個電壓范圍是將參考電壓分成4等分,由低到高分別稱范圍A、B、C、D;然后由開關電容陣列逐位改變電容量,來搜索與輸入信號最接近的電壓值,由于電容量是以二進制冪排列的,完成搜索后開關的接通狀態(tài)即為輸入信號的A/D轉換值。實際上的由電阻網(wǎng)絡確定轉換值的高2位,由開關電容網(wǎng)絡確定了轉換值的低12位。
當啟動轉換時在ACTL中設定了信號電壓范圍,實際已確定了轉換數(shù)據(jù)的高2位,經(jīng)過電阻網(wǎng)絡的高2位判別就不必進行了,因此轉換速度較快,它的轉換速度為96個ADCLK周期。而假如啟動轉換時在ACTL中設定為自動搜索輸入電壓范圍,ADAT中的將出現(xiàn)全部14位轉換數(shù)據(jù),這時轉換時間增加到132個ADCLK周期。輸入端輸入信號是經(jīng)過電阻型傳感元件實現(xiàn)的,A/D輸入端中的A0~A3,可以編程為恒流源輸出端對傳感元件供電。要實現(xiàn)這一功能,除了要對ACTL定義外,還要在引腳SVCC和REXT之間連接一個外接電阻,以構成恒流源,恒流由A/D輸入端輸出。這時檢測的信號是傳感元件上的電壓值。關系為VIN=0。25×Vsvcc×RSEN/REXT。其中,Vsvcc是參考電壓,RSEN是傳感元件電阻,REXT是構成恒流源的外接電阻,VIN即為在傳感元件上檢測到的電壓值。A/D轉換的精度較高時,數(shù)據(jù)低位受干擾的可能性也增大了。因此,MSP430P325單片機的模擬數(shù)字的供電是分開的,包括AVCC、AGND、DVCC、DGND等引腳。為保證A/D轉換精度,在電路中不應將它們的簡單地連接在一起。分成兩組電源供電比較理想,但是在實際電路中往往難以做到??刹捎迷贏VCC與DVCC之間加LC濾波去耦電路來隔離。在AGND與DGND間串入反向并聯(lián)的二極管可使兩點在電壓低于0。7V時處于斷開狀態(tài)。空閑的輸入端用作數(shù)字通道時,要防止對相鄰模擬通道的干擾。這種干擾是經(jīng)通道間的電容引入的。避免的方法是A/D轉換期間避免數(shù)字通道出現(xiàn)信號跳變。由于A/D轉換過程利用了開關電容網(wǎng)絡,當信號源的內阻過大時會因RC常數(shù)過大而影響轉換精度。A/D輸入端的等待輸入阻抗大約相當于2kΩ電阻與42pF電容的串聯(lián)電路。ADCLK為1MHz時,信號源內阻低于27KΩ才能保證轉換精度。
3。外加電阻與測試精度的關系
使用鉑電阻進行測溫時,外加電阻與恒流源電流之間的關系式為
ISET=0。25×VSVCC/RSET(2)
式中:ISET為恒流源電流,VSVCC為電源電壓,RSET為外加電阻。
鉑電阻到地的電壓VIN為
VIN=Rt(t)×ISET
從式中可以看出,影響鉑電阻兩端電壓檢測精度的因素有兩種:一個是電源電壓的波動,另一個是外加電阻的精度和溫度穩(wěn)定性。從儀表使用情況來看,儀表的供電電池的電壓隨時間推移逐漸減小,假如沒有相應的補償方法,鉑電阻的溫度檢測精度是無法保證的,因此本文提出如下補償方法。
MSP430P325有4個恒流源輸出A/D轉換通道,在另一個通道接一個與外加電阻RSET相同阻值的電阻,每次A/D轉換時進行電阻電壓降低補償。補償方法如下:
恒流源給鉑電阻供電時鉑電阻兩端電壓為
VIN=0。25×VSVCC×Rt(t)/RSET
V=0。25×VSVCC×R/RSET(5)
A/D轉換以后鉑電阻兩端電壓的數(shù)字量為Nx,固定電阻的兩端電壓的數(shù)字量N,因為A/D的轉換精度和位數(shù)是一致的,因此得出如下結果:
Nx/N=Rt(t)/R(6)
從式可以看出,鉑電阻兩端電壓的A/D轉換結果與電源電壓沒有關系,這種方法也可以補償芯片的基準電壓離散性。要保證檢測精度,外加的固定電阻R的精度是關鍵因素。假如溫度檢測范圍為0~100℃,外加的固定電阻R的精度大小應如何選擇?下面進行定量分析。
Nx/(N±ΔN)=Rt(t)/(R±ΔR)(7)
式和式相除得出如下結果:
/N=(R±ΔR)/R(8)
假如外加電阻RSET和R的阻值均為500Ω時,要求電阻精度影響數(shù)字量的大小為1LSB,那么電阻R的精度為0。02%。
結束語
從MSP430P325的A/D轉換原理入手,具體論述了電源電壓的波動對檢測精度的影響,同時分析了補償原理及補償電阻的精度選擇方法,為其它精密溫度測量場合提供了極好的應用實例。本文提出的補償方法在一家電子公司已成功的應用,補償效果令人滿足。
評論