王彪
(南京郵電大學(xué),江蘇南京,210003)
信息處理技術(shù)取得的進(jìn)展以及微處理器和計(jì)算機(jī)技術(shù)的高速發(fā)展,都需要在傳感器的開發(fā)方面有相應(yīng)的進(jìn)展。微處理器現(xiàn)在已經(jīng)在測量和控制系統(tǒng)中得到了廣泛的應(yīng)用。隨著這些系統(tǒng)能力的增強(qiáng),作為信息采集系統(tǒng)的前端單元,傳感器的作用越來越重要。
溫度是工農(nóng)業(yè)和消費(fèi)類電子產(chǎn)品的生產(chǎn)應(yīng)用中常見的和最基本的參數(shù)之一,而熱敏電阻則是監(jiān)控這種物理?xiàng)l件的主要手段之一。熱敏電阻測溫的靈敏度很高,但熱敏電阻存在嚴(yán)重的熱非線性,所以,在使用過程中,必須在數(shù)字或模擬范圍中線性化熱敏電阻輸出以獲得精確測量,也必須為熱敏電阻本身自熱效應(yīng)選擇合適的激勵(lì)源和補(bǔ)償器件過熱導(dǎo)致電阻變化所引起的誤差。
在本文中主要講述了,基于Atmega8 單片機(jī)和NTC熱敏電阻設(shè)計(jì)實(shí)現(xiàn)的一種廉價(jià)、高精度的多路溫度測量方法,系統(tǒng)測量精度優(yōu)于±0.5℃,最多可實(shí)現(xiàn)同時(shí)對(duì)4路溫度進(jìn)行測量,并具有保存各路溫度測試最大值等功能。
NTC熱敏電阻溫度——電阻特性曲線可近似表示為:
R: 溫度T(K)時(shí)的電阻值;R0: 溫度T0(K)時(shí)的電阻值,一般常取T0為20℃[3]; B:熱敏電阻的B值。由式(1)可得:熱敏電阻溫度——電阻特性呈指數(shù)關(guān)系變化。
實(shí)際上,熱敏電阻的B值也并非一恒定值,其變化大小因材料構(gòu)成而異,最大甚至可達(dá)5K/℃。因此,在較大的溫度測量范圍內(nèi)應(yīng)用固定B值代入式(1)求解時(shí),所得結(jié)果將與實(shí)際溫度之間存在一定誤差。在應(yīng)用過程中,B值可近似為:
其中,BT:溫度在T(K)時(shí)的B值,C、D、E為常數(shù),另外,因生產(chǎn)條件不同造成的B值的波動(dòng)會(huì)引起常數(shù)E發(fā)生變化,但常數(shù)C、D 不變。因此,在探討B(tài)值的波動(dòng)量時(shí),只需考慮常數(shù)E即可。在求取B值時(shí),只需取溫度——電阻特性曲線上3個(gè)數(shù)據(jù)點(diǎn)代入式(2),則可計(jì)算出對(duì)應(yīng)的C、D、E值。再把式(2)代入式(1)則可精確求出各溫度點(diǎn)T所對(duì)應(yīng)的熱敏電阻阻值R。
從式(1)中我們可以知道,熱敏電阻在全量程范圍內(nèi)溫度——電阻特性曲線具有很大的非線性。所以,在使用過程中,必須對(duì)熱敏電阻進(jìn)行在數(shù)字或模擬范圍內(nèi)線性化熱敏電阻輸出量以獲得精確測量,文獻(xiàn)[1-6]提出了多種熱敏電阻特性曲線進(jìn)行線性化的常用方法。在對(duì)熱敏電阻特性曲線進(jìn)行線性化的常用方法中主要有:串并聯(lián)電阻方法[5]、方波振蕩器方法[6]和Steinhart-Hart三階方程擬合方法。
串并聯(lián)電阻、方波振蕩器方法使用了模擬電路方法實(shí)現(xiàn)對(duì)熱敏電阻的溫度——電阻特性曲線進(jìn)行線性化,具有設(shè)計(jì)電路簡單易行等特點(diǎn),但一般使用在精度要求不是很高的場合。而在使用Steinhart-Hart三階方程進(jìn)行對(duì)熱敏電阻特性曲線進(jìn)行逼近時(shí),具有計(jì)算方便、擬合誤差小等特點(diǎn)。所以,在本系統(tǒng)設(shè)計(jì)中,使用 Steinhart-Hart三階方程[7-8]方法對(duì)熱敏電阻溫度-電阻特性曲線進(jìn)行擬合。
NTC熱敏電阻特性曲線用Steinhart-Hart三階方程進(jìn)行擬合:
其中,T:溫度(k),R:熱敏電阻阻值(Ω),A、B、C:曲線擬合常數(shù)。
在使用Steinhart-Hart方程進(jìn)行擬合時(shí),只要選取熱敏電阻溫度-電阻特性曲線中3個(gè)數(shù)據(jù)點(diǎn)代入式(3),則可求解出擬合方程中參數(shù)A、B、C。當(dāng)所選數(shù)據(jù)點(diǎn)間距不超過熱敏電阻溫度范圍標(biāo)定中點(diǎn)100 ℃時(shí),方程擬合誤差<±0.02℃。
數(shù)字測溫系統(tǒng)中主要涉及到以下幾個(gè)模塊:溫度傳感器模塊、信號(hào)調(diào)理模塊、數(shù)據(jù)采集器模塊、微控制器、按鍵顯示模塊。系統(tǒng)框圖如圖1所示。
圖1 系統(tǒng)框圖
2.1.1 測量網(wǎng)絡(luò)設(shè)計(jì)
NTC熱敏電阻具有負(fù)溫度系數(shù)大,靈敏度約為金屬熱電阻的10倍,標(biāo)稱電阻值比較大(幾kΩ~幾百kΩ)等特點(diǎn)。在本設(shè)計(jì)中,NTC熱敏電阻阻值測量網(wǎng)絡(luò)采用熱敏電阻與固定電阻進(jìn)行直接分壓方式實(shí)現(xiàn)。在系統(tǒng)量程(-25℃~100℃)范圍內(nèi),熱敏電阻的變化范圍為86.56kΩ~0.975kΩ,電阻測量跨度比較大,因此,在系統(tǒng)設(shè)計(jì)中,測量網(wǎng)絡(luò)采用分檔測量方法實(shí)現(xiàn)對(duì)熱敏電阻阻值的測量,即在不同溫度段采用不同的分壓電阻。測量網(wǎng)絡(luò)中,設(shè)Rt為熱敏電阻, Rx為分壓電阻。A/D采樣器直接采用Atmega8自帶的10bit ADC,同時(shí),A/D采樣器與測量網(wǎng)絡(luò)選用同一電壓基準(zhǔn)VREF。
考慮到系統(tǒng)要求溫度測量(-25℃~100℃)范圍內(nèi),測量精度優(yōu)于±0.5℃。在此,測量網(wǎng)絡(luò)采用分兩檔實(shí)現(xiàn),即10k檔和4k檔。在100℃時(shí),測量精度最?。?.1/0.3808=0.2626℃<0.5℃。具體電路如圖2所示。
圖2 熱敏電阻阻值測量原理圖
檔位控制由MOS管2N7002實(shí)現(xiàn),其具有開關(guān)頻率高,導(dǎo)通電阻小,截止電阻大等特點(diǎn)。在系統(tǒng)設(shè)計(jì)中取R10=10 kΩ,R4=R8=3.32 kΩ(分壓電阻均采用1%精度的電阻)。電路具體實(shí)現(xiàn)過程如下:
(1)當(dāng)測量溫度較低時(shí)(< 40℃),控制端口CONTROL_2 輸出 低電平,即MOS管2N7002處于截止?fàn)顟B(tài),分壓電阻Rx=R10=10 kΩ,即有:
(2)當(dāng)測量溫度較高時(shí)(>35℃),控制端口CONTROL_2 輸出高電平,即MOS管2N7002處于導(dǎo)通狀態(tài),又由于2N7002在導(dǎo)通過程中,導(dǎo)通電阻Ron<5Ω相對(duì)于R4+R8=6.64 kΩ來說可忽略,那么,分壓電阻Rx=R10||(R4+R8)≈4 kΩ,即有:
系統(tǒng)設(shè)計(jì)中,A/D采樣器直接采用Atmega8內(nèi)部的10bit ADC,并A/D采樣器與測量網(wǎng)絡(luò)選用同一參考電壓VREF。在此,假設(shè)ADC采樣值為N,則有:
把式(6)代入式(4)或式(5)并聯(lián)立式(3)則可求出被測系統(tǒng)的溫度。
圖3 外部基準(zhǔn)電壓原理圖
2.1.2 外部參考電壓設(shè)計(jì)
SC431是一精密可調(diào)電壓基準(zhǔn),穩(wěn)壓值可從2.5~36V連續(xù)可調(diào),低動(dòng)態(tài)電阻典型值0.25Ω,驅(qū)動(dòng)電流1.0~100mA,全溫度范圍內(nèi)溫度特性平坦,電壓穩(wěn)定度優(yōu)于50ppm。穩(wěn)壓電路如圖3所示。輸出電壓VREF有:
又由溫度測量網(wǎng)絡(luò)(圖2)中可以得到,分壓電阻Rx的取值分別為10 kΩ、4 kΩ,則可保證熱敏電阻在測溫全過程中自身熱功率≤1.1 mW。又熱敏電阻測溫過程中通常是放置在流動(dòng)空氣、液體或固體中,即熱敏電阻的散熱條件比較好,則可忽略熱敏電阻熱效應(yīng)。
Atmega8是一款高性能、低功耗的8位AVR微處理器。在系統(tǒng)設(shè)計(jì)中,數(shù)據(jù)采集器直接選用其內(nèi)部自帶的10bit ADC,ADC參考電壓選用外部電壓基準(zhǔn)。外部中斷0接通道切換顯示功能鍵,外部中斷1接溫度最大值清除功能鍵。本設(shè)計(jì)的軟件部分由C語言編寫實(shí)現(xiàn),開發(fā)環(huán)境為ICCV7 for AVR[9]。主程序流程圖如圖4所示。
圖4 主程序流程圖
系統(tǒng)測溫范圍為-25℃~100℃。在對(duì)系統(tǒng)性能檢測時(shí),使用熱電耦溫度計(jì)(±0.1℃精度)與熱敏電阻捆綁一起放入熱開水中,再使其一起放入冰箱中進(jìn)行冷卻、冰凍。這樣則可測出從-25℃~100℃間各點(diǎn)溫度值。測試結(jié)果如表1所示。
表1 測試結(jié)果
經(jīng)分析,誤差來源可能有如下幾種:熱敏電阻和分壓電阻的阻值誤差;A/D采樣器的非線性誤差;Steinhart-Hart方程擬合誤差等。
從測量結(jié)果中可以看出,系統(tǒng)的測量精度還不是特別高,還可通過各種方法使系統(tǒng)性能得到改善,具體可有以下一些改進(jìn)方法:測量網(wǎng)絡(luò)采用更多的檔位、選用更高精度的A/D采樣器、選用其它測量精度更高的測量電路、選用其它性能更好的溫度傳感器。
熱敏電阻特別適合于對(duì)限制溫度范圍的測溫應(yīng)用。對(duì)于小的溫度變化具有明顯的電阻變化,使熱敏電阻可用于高分辨率測量。把熱敏電阻與高分辨率A/D變換器結(jié)合起來可構(gòu)成高精度、高分辨率溫度測量系統(tǒng)。
以測試結(jié)果來看,本多路溫度測量儀的測量精度優(yōu)于±0.5℃。不過系統(tǒng)還可以設(shè)計(jì)得更完美些,如:提高系統(tǒng)的測量精度和擴(kuò)大系統(tǒng)測溫范圍;單片機(jī)把測量的數(shù)據(jù)傳送到PC上,然后,使用各種數(shù)據(jù)處理方法進(jìn)行數(shù)據(jù)處理等等。
[1] 趙軍,謝作品,吳珂. NTC熱敏電阻線性化新方法[J].電測與儀表,2006,43(1):12-14.
[2] 李波,陳光華. 基于熱敏電阻的多通道高精度溫度測量系統(tǒng)[J]. 儀表技術(shù)與傳感器,2008(5):87-88.
[3] 周以琳,李金亮,楊勇,郭煥然. NTC 熱敏電阻R-T特性的高精度補(bǔ)償[J]. 青島科技大學(xué)學(xué)報(bào):自然科學(xué)版,2010,31(1):80-82.
[4] 招惠玲,秦淑娟. 熱敏電阻溫度特性曲線的線性化[J].傳感器技術(shù),2003,22 (7):47-49.
[5] 孟凡文. NTC熱敏電阻的非線性誤差及其補(bǔ)償[J].傳感器世界,2003,9(5):21-24.
[6] 俞阿龍,李正. 熱敏電阻溫度傳感器的一種線性化設(shè)計(jì)[J]. 電氣自動(dòng)化,2003,25(2):58-59.
[7] http://en.wikipedia.org/wiki/Steinhart-Hart_equation
[8] Analog Devices公司. 熱敏電阻結(jié)合高分辨∑△A/D變換器測量溫度[J]. 電子產(chǎn)品世界,2006(08).
[9] 沈文,Eagle Lee,詹衛(wèi)前. AVR單片機(jī)C語言開發(fā)入門指導(dǎo)[M]. 北京:清華大學(xué)出版社,2003.