中心議題:
- 介紹利用徑向基函數神經(jīng)網(wǎng)絡(luò )和智能溫度傳感器DS18B20改善傳感器精度的新方法
- 通過(guò)大量的樣本數據訓練構建雙輸入單輸出網(wǎng)絡(luò )模型
- 采用改進(jìn)的算法實(shí)現傳感器高精度溫度補償
解決方案:
- 采用DS18B20智能溫度傳感器和RBF神經(jīng)網(wǎng)絡(luò )相結合的溫度補償新方法
- 在DS1820中將低八位用補碼表示,第九位以符號擴展形式擴展至其它七位
- 引入DS18B20作輔助測量傳感器
一般工業(yè)測控現場(chǎng)的環(huán)境溫度變化急劇,傳感器大多數都對溫度有一定的敏感度,這樣就會(huì )使傳感器的零點(diǎn)和靈敏度發(fā)生變化,從而造成輸出值隨環(huán)境溫度的變化而變化,導致測量出現附加誤差,因此溫度補償問(wèn)題一直是工業(yè)測控系統中的關(guān)鍵環(huán)節[1]。本文采用DS18B20智能溫度傳感器和RBF神經(jīng)網(wǎng)絡(luò )相結合的溫度補償新方法來(lái)實(shí)現傳感器高精度溫度補償。本文介紹的方法將DS18B20測量值作為溫度補償輸入,將傳感器本身的測量值作為另一輸入,用RBF神經(jīng)網(wǎng)絡(luò )構成雙輸入單輸出的補償模型,輸出即為補償后的測量值。RBF神經(jīng)網(wǎng)絡(luò )主要用于傳感器的數據處理,以改善傳感器測量精度。
DS18B20數字溫度傳感器測溫原理
a.DS18B20的特性
DS18B20是美國DALLAS公司繼DS1820之后推出的增強型單總線(xiàn)數字溫度傳感器,它在測溫精度、轉換時(shí)間、傳輸距離、分辨率等方面較DS1820有了很大的改進(jìn),這給用戶(hù)帶來(lái)了更方便的使用和更令人滿(mǎn)意的效果。其特點(diǎn)如下:
(1)單線(xiàn)接口:僅需一根口線(xiàn)與單片機連接;
(2)由總線(xiàn)提供電源,也可用數據線(xiàn)供電,電壓范圍:3.0~5.5V;
(3)測溫范圍為:-55~+125℃,在-10~+85 ℃時(shí),精度為0.5℃;
(4)可編程的分辨率為9~12位,對應的分辨率為0.5~0.0625℃;
(5)用戶(hù)可編程的溫度報警設置;
(6)12位分辨率時(shí)最多在750ms內把溫度值轉換為數字量。
b.DS1820引腳功能說(shuō)明
DS1820的PR-35封裝形式見(jiàn)圖1,其外表看起來(lái)像三極管。另外還有8腳SOIC封裝形式,只用3、4和5腳,其余為空腳或不需連接引腳。不過(guò)最常見(jiàn)的形式是PR-35封裝,其引腳說(shuō)明如表1所示。
c.DS1820溫度數據格式
在DS1820中,轉換溫度值是以9位二進(jìn)制形式表示的,而輸出溫度則是以16位符號擴展的二進(jìn)制補碼讀數形式提供。采用的辦法是將低八位用補碼表示,第九位以符號擴展形式擴展至其它七位。具體溫度表示格式見(jiàn)表2。
在實(shí)際應用中,測量溫度往往在0°C以上,此時(shí)可只取16位二進(jìn)制溫度輸出的低8位,即1個(gè)字節,這樣將使計算和編程工作更為便利。
c.DS18B20的測溫原理
DS18B20的測溫原理為:內部計數器對一個(gè)受溫度影響的振蕩器的脈沖計數,低溫時(shí)振蕩器的脈沖可以通過(guò)門(mén)電路,而當到達某一設置高溫時(shí),振蕩器的脈沖無(wú)法通過(guò)門(mén)電路。計數器設置為-55℃時(shí)的值,如果計數器到達0之前門(mén)電路未關(guān)閉,則溫度寄存器的值將增加,這表示當前溫度高于-55℃。同時(shí),計數器復位在當前溫度值上,電路對振蕩器的溫度系數進(jìn)行補償,計數器重新開(kāi)始計數直到回零。如果門(mén)電路仍然未關(guān)閉,則重復以上過(guò)程。溫度轉換所需時(shí)間不超過(guò)750ms,得到的溫度值的位數因分辨率不同而不同[2]。DS18B20同AT89C52單片機的接口電路如圖2所示。這種接口方式只需占用單片機一根口線(xiàn),與智能儀器或智能測控系統中的其它單片機或DSP的接口也可采用類(lèi)似的方式。
RBF神經(jīng)網(wǎng)絡(luò )及學(xué)習算法
RBF神經(jīng)網(wǎng)絡(luò )即徑向基函數(Radial Basis Function)神經(jīng)網(wǎng)絡(luò )[3~4],其結構如圖3所示。它很容易擴展到多輸出節點(diǎn)的情形,在此只考慮一個(gè)輸出變量Y的情況。RBFNN包括一個(gè)輸入層、一個(gè)隱含層和一個(gè)輸出層的最簡(jiǎn)模式。隱含層由一組徑向基函數構成,與每個(gè)隱含層節點(diǎn)相關(guān)的參數向量為Ci(即中心)和σi(即寬度)。徑向基函數有多種形式,一般取高斯函數[5]。具體如下:
上式中,m是隱含層結點(diǎn)數;||•||是歐幾里德范數;X,Ci∈Rn, ωi是第i個(gè)基函數與輸出結點(diǎn)的連接權值(i=1,2,...,m)。
RBF神經(jīng)網(wǎng)絡(luò )是一種性能良好的前向網(wǎng)絡(luò ),它具有最佳逼近性能,在結構上具有輸出—權值線(xiàn)性關(guān)系、訓練方法快速易行、不存在局部最優(yōu)問(wèn)題的特點(diǎn)。該網(wǎng)絡(luò )的學(xué)習算法有很多種,本文將帶遺忘因子的梯度下降法應用于RBF神經(jīng)網(wǎng)絡(luò )的參數調整[6],即在考慮當前時(shí)刻(k時(shí)刻)的網(wǎng)絡(luò )狀態(tài)的變化時(shí),將前一個(gè)時(shí)刻(k-1時(shí)刻)的網(wǎng)絡(luò )參數變化也包括進(jìn)去。其具體算法如下:
其中,J為誤差函數,Y(k)代表希望的輸出,Y(W,k)為網(wǎng)絡(luò )的實(shí)際輸出,W是網(wǎng)絡(luò )的所有權值組成的向量。
隱層—輸出層連接權值矩陣的調整算法為:
隱層中心值矩陣的調整算法為:
隱層標準偏差矩陣的調整算法為:
其中,μ(k)為學(xué)習率,α(k)為動(dòng)量因子,也稱(chēng)為遺忘因子,又稱(chēng)動(dòng)量項或阻尼項。將其稱(chēng)為遺忘因子可從對于新舊信息的學(xué)習與遺忘的角度來(lái)理解;稱(chēng)為動(dòng)量項或阻尼項是因為在網(wǎng)絡(luò )的學(xué)習訓練中,此項相當于阻尼力,當訓練誤差迅速增大時(shí),它使網(wǎng)絡(luò )發(fā)散得越來(lái)越慢??傊?,它使網(wǎng)絡(luò )的變化趨于穩定,有利于網(wǎng)絡(luò )的收斂。
測試方法及推廣應用分析
實(shí)驗中以測量壓力為例,采用Honeywell的24PCGFA1G型壓力傳感器。將傳感器測量值和DS18B20的輸出值作為網(wǎng)絡(luò )輸入層節點(diǎn)的輸入,與其對應的壓力是網(wǎng)絡(luò )輸出層節點(diǎn)的輸出。采用的RBF神經(jīng)網(wǎng)絡(luò )為三層網(wǎng)絡(luò )結構,其中,輸入層有2個(gè)節點(diǎn),隱含層有8個(gè)節點(diǎn),輸出層有1個(gè)節點(diǎn)?;谏弦还澲刑岬降木W(wǎng)絡(luò )參數調整算法,通過(guò)調整RBF網(wǎng)絡(luò )中的可調參數(隱層節點(diǎn)數、學(xué)習速率、遺忘因子和網(wǎng)絡(luò )權值、隱層標準偏差等)進(jìn)行網(wǎng)絡(luò )的訓練和測試,并采用均方根(RMS)計算其訓練精度和測試精度。共采集樣本數據120組,其中72組作為網(wǎng)絡(luò )訓練樣本,48組作為網(wǎng)絡(luò )測試樣本,在環(huán)境溫度變化范圍為-5℃~75℃時(shí),最佳RBF的神經(jīng)網(wǎng)絡(luò )的訓練精度為0.048%,測試精度為0.062%。同時(shí)基于獲得的實(shí)驗數據,采用最小二乘擬合方法建立的數學(xué)模型,其擬合精度為0.170%;用單片機直接預存線(xiàn)性插值補償的方法,測試精度為0.280%。
對于其它參數的檢測,如流量、濃度或溫度本身,也可采用增加溫度或其它輔助傳感器來(lái)實(shí)現補償的方法。對于同時(shí)存在溫、濕度漂移的測量場(chǎng)合,可以采用溫濕度一體化傳感器進(jìn)行補償。在本文圖3所示的神經(jīng)網(wǎng)絡(luò )中增加一個(gè)X3輸入代表濕度,只是會(huì )增加具體計算的復雜性。
DS18B20測溫已普遍應用,且有著(zhù)價(jià)格低廉、同基于單片機的智能儀器或測控系統接口簡(jiǎn)單的突出優(yōu)點(diǎn),本文將其引入作輔助測量傳感器,在傳感器溫度補償領(lǐng)域是一種有益的嘗試。RBF網(wǎng)絡(luò )是一種性能良好的前向網(wǎng)絡(luò ),它不僅有全局逼近性質(zhì),而且具有最佳逼近性能。將帶遺忘因子的梯度下降算法應用于RBF神經(jīng)網(wǎng)絡(luò )的參數調整,該算法具有良好的非線(xiàn)性映射能力、自學(xué)習和泛化能力,魯棒性好、收斂較快,特別適用于傳感器數學(xué)模型的建立。論文采用軟硬件相結合的方法實(shí)現了高精度的溫度補償。與最小二乘擬合方法及線(xiàn)性插值補償方法相比,其精度提高了2~5倍。