一、前言
工業(yè)現(xiàn)場(chǎng)的環(huán)境溫度變化范圍大而劇烈,工作在工業(yè)現(xiàn)場(chǎng)的傳感器大多數(shù)都對(duì)溫度有一定的敏感度,這樣就會(huì)使傳感器的零點(diǎn)和靈敏度發(fā)生變化,從而造成輸出值隨環(huán)境溫度變化,導(dǎo)致測(cè)量出現(xiàn)附加誤差,因此溫度補(bǔ)償問題一直是傳感器技術(shù)中的關(guān)鍵環(huán)節(jié)。
溫度補(bǔ)償?shù)姆椒ㄒ话惴譃橛布a(bǔ)償和軟件補(bǔ)償兩種方法。目前應(yīng)用較廣泛的是利用微處理器實(shí)現(xiàn)溫度漂移軟件補(bǔ)償方法。本文要介紹的溫度補(bǔ)償方法也屬于一種軟件補(bǔ)償,只是在具體實(shí)現(xiàn)的過程中提出了新的設(shè)計(jì)方案—采用單總線數(shù)字溫度傳感器DS1820芯片和LonWorks現(xiàn)場(chǎng)總線技術(shù)中的神經(jīng)元芯片(Neuron Chip即CPU)實(shí)現(xiàn)傳感器的溫度補(bǔ)償,并以電化學(xué)傳感器為例,詳細(xì)介紹了它的硬件電路和軟件設(shè)計(jì)部分。
二、傳感器溫度漂移軟件補(bǔ)償原理
由于周圍環(huán)境溫度變化而引起傳感器的附加誤差,可以采用軟件的方法來修正,其基本思路是:在傳感器內(nèi)靠近對(duì)溫度敏感的部件處,安裝一個(gè)測(cè)溫元件,用以檢測(cè)傳感器所在環(huán)境的溫度;把測(cè)溫元件的輸出經(jīng)過多路開關(guān)與信號(hào)同一路徑送入CPU(或者采用多通道模/數(shù)轉(zhuǎn)換環(huán)節(jié)),根據(jù)溫度誤差的數(shù)學(xué)模型去補(bǔ)償被測(cè)信號(hào),以達(dá)到精確測(cè)量的目的,其中溫度誤差修正模型一般是根據(jù)具體的傳感器溫度特性用曲線擬合方法而建立的。
傳感器采用這種軟件補(bǔ)償方法解決溫度附加誤差時(shí),通常測(cè)溫元件大多采用熱電阻,因此必須增加相應(yīng)的熱電阻溫度變送器以及A/D轉(zhuǎn)換兩部分的電路,任何一個(gè)環(huán)節(jié)都不能缺少,具體實(shí)施起來難免顯得有些繁瑣,而且兩部分電路的溫度特性可能成為新的附加誤差。
三、傳感器溫度漂移軟件補(bǔ)償新方案
針對(duì)上述提出的問題,我們可以通過用數(shù)字式溫度傳感器代替熱電阻檢測(cè)周圍環(huán)境溫度來解決。在這里我們推薦使用美國Dallas半導(dǎo)體公司研制生產(chǎn)的DS1820芯片一種單總線數(shù)字溫度傳感器,它具有許多獨(dú)特的優(yōu)良性能:
(1)可以把溫度信號(hào)直接轉(zhuǎn)換為9位數(shù)字量,溫度的轉(zhuǎn)換可以在1秒內(nèi)完成;
(2)只通過一根數(shù)據(jù)線就能實(shí)現(xiàn)與微處理器的通訊,而且芯片正常工作所需要的電源也可以從這根數(shù)據(jù)線上獲得,無需外部電源;
(3)具有微型化、低功耗、高性能、抗干擾能力強(qiáng)、易配微處理器等優(yōu)點(diǎn);
(4)價(jià)格便宜,僅為普通溫度變送器的十分之一。
經(jīng)實(shí)驗(yàn)研究證明這種傳感器可以很好地解決溫度漂移軟件補(bǔ)償中的測(cè)溫問題。
四、電化學(xué)傳感器的溫度補(bǔ)償方案
[$page] 電化學(xué)傳感器通過測(cè)量氣體在某個(gè)確定電位電解時(shí)所產(chǎn)生的電流從而得到氣體的濃度值。這種傳感器體積小、重量輕,不僅靈敏度高,而且測(cè)量準(zhǔn)確、響應(yīng)時(shí)間快、使用壽命長(zhǎng),是目前比較理想的一種氣體濃度測(cè)量傳感器。不過,和大多數(shù)傳感器一樣,其溫度特性不太理想,在實(shí)際使用時(shí)需要進(jìn)行溫度補(bǔ)償。具體思路是:在確定傳感器輸出量與溫度之間的數(shù)學(xué)模型后,通過數(shù)字溫度傳感器DS1820芯片,直接把溫度信號(hào)轉(zhuǎn)換成相應(yīng)的數(shù)字量,送入CPU進(jìn)行后續(xù)處理,即根據(jù)傳感器的溫度特性對(duì)測(cè)量值進(jìn)行修正,實(shí)現(xiàn)用軟件的方法消除由于環(huán)境溫度的變化給測(cè)量帶來的誤差。
1、電化學(xué)傳感器溫度補(bǔ)償硬件電路設(shè)計(jì)
硬件電路設(shè)計(jì)如圖1所示,其核心部分主要是神經(jīng)元芯片和DS1820芯片。神經(jīng)元芯片有11個(gè)雙向、可編程I/O口(管腳IO_0至IO_10)。這些I/O口可根據(jù)需求不同,靈活選擇接口方式,實(shí)現(xiàn)與外圍設(shè)備的接口。另外,Neuron芯片有34個(gè)預(yù)編程的操作模式(即I/O對(duì)象),支持電平、脈沖、頻率等各種信號(hào),可以實(shí)現(xiàn)有效的測(cè)量和控制。本文涉及到的I/O對(duì)象主要有Neurowire I/O對(duì)象和Touch I/O對(duì)象,前者主要用于傳送全同步串行數(shù)據(jù),數(shù)據(jù)一次傳輸8位,首先傳輸最高有效位;后者主要用于與Dallas半導(dǎo)體公司開發(fā)的One-Wire協(xié)議接口,以便與觸摸式存儲(chǔ)器(Touch Memories)和相似的設(shè)備進(jìn)行通信(DS1820芯片就屬于One-Wire設(shè)備),對(duì)于DS1820芯片工作時(shí)所需要的一系列初始化序列,Touch I/O對(duì)象都有相應(yīng)的內(nèi)部函數(shù)支持,例如:touch_reset,該函數(shù)插入一個(gè)復(fù)位脈沖,如果檢測(cè)到存在脈沖則返回1,如果未檢測(cè)到存在脈沖則返回0,或1-WIRE總線總是為低電平則返回-1。有了這些函數(shù)的支持,神經(jīng)元芯片對(duì)外圍電路DS1820芯片的控制與通信就顯得非常方便,因此在這一點(diǎn)上明顯優(yōu)于其他的微處理器。
2、電化學(xué)傳感器溫度補(bǔ)償軟件設(shè)計(jì)
從前面給出的硬件電路可以發(fā)現(xiàn):電化學(xué)傳感器溫度補(bǔ)償環(huán)節(jié)的硬件電路比較簡(jiǎn)單,然而簡(jiǎn)潔的硬件配置是靠復(fù)雜的軟件來支撐的。為保證數(shù)據(jù)可靠傳送,任一時(shí)刻單總線上只能有一個(gè)控制信號(hào)或數(shù)據(jù)。因此進(jìn)行數(shù)據(jù)通信時(shí),要符合單總線協(xié)議,一般有以下四個(gè)過程:初始化信號(hào)、傳送ROM命令、傳送RAM命令和數(shù)據(jù)交換。神經(jīng)元芯片的編程語言是Neuron C語言,其軟件流程圖如圖2所示。
通過軟硬件測(cè)得環(huán)境溫度值之后,接著就要對(duì)一定環(huán)境溫度下檢測(cè)到的氣體濃度值進(jìn)行修正。我們以華誠5FCO電化學(xué)傳感器為例進(jìn)行溫度補(bǔ)償新方案的測(cè)試。
首先需要了解傳感器的溫度特性,根據(jù)廠家提供的實(shí)驗(yàn)數(shù)據(jù)由最小二乘擬合原理得到CO電化學(xué)傳感器的溫度特性為:Y=-0.000088X2+0.009612X+0.835393;其中:X—環(huán)境溫度值;Y—表示該環(huán)境溫度下濃度測(cè)量值與20℃時(shí)濃度值的百分比(20℃為標(biāo)準(zhǔn)環(huán)境溫度)。
應(yīng)用LonWorks現(xiàn)場(chǎng)總線節(jié)點(diǎn)開發(fā)工具NodeBuilder進(jìn)行硬件和軟件聯(lián)調(diào), 并在實(shí)驗(yàn)室和現(xiàn)場(chǎng)進(jìn)行多次測(cè)試,測(cè)試結(jié)果如表1所示。從表1可以看出,未進(jìn)行溫度補(bǔ)償時(shí)的最大誤差為16.4%,補(bǔ)償后的最大誤差為1.5%。因?yàn)镃O電化學(xué)傳感器的溫度特性函數(shù)是由最小二乘法擬合而得,所以1.5%的誤差中還包含有擬合誤差,實(shí)驗(yàn)表明DS1820芯片的使用很好地完成了溫度補(bǔ)償?shù)娜蝿?wù)。
五、結(jié)束語