你的位置:首頁 > 傳感技術 > 正文

一種用RBF神經網絡改善傳感器測量精度的新方法

發(fā)布時間:2008-10-21 來源:電子技術應用

中心議題:

  • 介紹利用徑向基函數神經網絡和智能溫度傳感器DS18B20改善傳感器精度的新方法
  • 通過大量的樣本數據訓練構建雙輸入單輸出網絡模型
  • 采用改進的算法實現(xiàn)傳感器高精度溫度補償

解決方案:

  • 采用DS18B20智能溫度傳感器和RBF神經網絡相結合的溫度補償新方法
  • 在DS1820中將低八位用補碼表示,第九位以符號擴展形式擴展至其它七位
  • 引入DS18B20作輔助測量傳感器

 

一般工業(yè)測控現(xiàn)場的環(huán)境溫度變化急劇,傳感器大多數都對溫度有一定的敏感度,這樣就會使傳感器的零點和靈敏度發(fā)生變化,從而造成輸出值隨環(huán)境溫度的變化而變化,導致測量出現(xiàn)附加誤差,因此溫度補償問題一直是工業(yè)測控系統(tǒng)中的關鍵環(huán)節(jié)[1]。本文采用DS18B20智能溫度傳感器和RBF神經網絡相結合的溫度補償新方法來實現(xiàn)傳感器高精度溫度補償。本文介紹的方法將DS18B20測量值作為溫度補償輸入,將傳感器本身的測量值作為另一輸入,用RBF神經網絡構成雙輸入單輸出的補償模型,輸出即為補償后的測量值。RBF神經網絡主要用于傳感器的數據處理,以改善傳感器測量精度。


DS18B20數字溫度傳感器測溫原理
a.DS18B20的特性
DS18B20是美國DALLAS公司繼DS1820之后推出的增強型單總線數字溫度傳感器,它在測溫精度、轉換時間、傳輸距離、分辨率等方面較DS1820有了很大的改進,這給用戶帶來了更方便的使用和更令人滿意的效果。其特點如下:
    (1)單線接口:僅需一根口線與單片機連接;
    (2)由總線提供電源,也可用數據線供電,電壓范圍:3.0~5.5V;
    (3)測溫范圍為:-55~+125℃,在-10~+85 ℃時,精度為0.5℃;
    (4)可編程的分辨率為9~12位,對應的分辨率為0.5~0.0625℃;
    (5)用戶可編程的溫度報警設置;
    (6)12位分辨率時最多在750ms內把溫度值轉換為數字量。

b.DS1820引腳功能說明
DS1820的PR-35封裝形式見圖1,其外表看起來像三極管。另外還有8腳SOIC封裝形式,只用3、4和5腳,其余為空腳或不需連接引腳。不過最常見的形式是PR-35封裝,其引腳說明如表1所示。
 
 

c.DS1820溫度數據格式
在DS1820中,轉換溫度值是以9位二進制形式表示的,而輸出溫度則是以16位符號擴展的二進制補碼讀數形式提供。采用的辦法是將低八位用補碼表示,第九位以符號擴展形式擴展至其它七位。具體溫度表示格式見表2。
 
 
 
在實際應用中,測量溫度往往在0°C以上,此時可只取16位二進制溫度輸出的低8位,即1個字節(jié),這樣將使計算和編程工作更為便利。

c.DS18B20的測溫原理
DS18B20的測溫原理為:內部計數器對一個受溫度影響的振蕩器的脈沖計數,低溫時振蕩器的脈沖可以通過門電路,而當到達某一設置高溫時,振蕩器的脈沖無法通過門電路。計數器設置為-55℃時的值,如果計數器到達0之前門電路未關閉,則溫度寄存器的值將增加,這表示當前溫度高于-55℃。同時,計數器復位在當前溫度值上,電路對振蕩器的溫度系數進行補償,計數器重新開始計數直到回零。如果門電路仍然未關閉,則重復以上過程。溫度轉換所需時間不超過750ms,得到的溫度值的位數因分辨率不同而不同[2]。DS18B20同AT89C52單片機的接口電路如圖2所示。這種接口方式只需占用單片機一根口線,與智能儀器或智能測控系統(tǒng)中的其它單片機或DSP的接口也可采用類似的方式。
 
 

 

RBF神經網絡及學習算法
RBF神經網絡即徑向基函數(Radial Basis Function)神經網絡[3~4],其結構如圖3所示。它很容易擴展到多輸出節(jié)點的情形,在此只考慮一個輸出變量Y的情況。RBFNN包括一個輸入層、一個隱含層和一個輸出層的最簡模式。隱含層由一組徑向基函數構成,與每個隱含層節(jié)點相關的參數向量為Ci(即中心)和σi(即寬度)。徑向基函數有多種形式,一般取高斯函數[5]。具體如下:
    
上式中,m是隱含層結點數;||•||是歐幾里德范數;X,Ci∈Rn, ωi是第i個基函數與輸出結點的連接權值(i=1,2,...,m)。
 


 

RBF神經網絡是一種性能良好的前向網絡,它具有最佳逼近性能,在結構上具有輸出—權值線性關系、訓練方法快速易行、不存在局部最優(yōu)問題的特點。該網絡的學習算法有很多種,本文將帶遺忘因子的梯度下降法應用于RBF神經網絡的參數調整[6],即在考慮當前時刻(k時刻)的網絡狀態(tài)的變化時,將前一個時刻(k-1時刻)的網絡參數變化也包括進去。其具體算法如下:
    
其中,J為誤差函數,Y(k)代表希望的輸出,Y(W,k)為網絡的實際輸出,W是網絡的所有權值組成的向量。

隱層—輸出層連接權值矩陣的調整算法為:
 
隱層中心值矩陣的調整算法為:
 
隱層標準偏差矩陣的調整算法為:
 
其中,μ(k)為學習率,α(k)為動量因子,也稱為遺忘因子,又稱動量項或阻尼項。將其稱為遺忘因子可從對于新舊信息的學習與遺忘的角度來理解;稱為動量項或阻尼項是因為在網絡的學習訓練中,此項相當于阻尼力,當訓練誤差迅速增大時,它使網絡發(fā)散得越來越慢??傊?,它使網絡的變化趨于穩(wěn)定,有利于網絡的收斂。

測試方法及推廣應用分析
實驗中以測量壓力為例,采用Honeywell的24PCGFA1G型壓力傳感器。將傳感器測量值和DS18B20的輸出值作為網絡輸入層節(jié)點的輸入,與其對應的壓力是網絡輸出層節(jié)點的輸出。采用的RBF神經網絡為三層網絡結構,其中,輸入層有2個節(jié)點,隱含層有8個節(jié)點,輸出層有1個節(jié)點?;谏弦还?jié)中提到的網絡參數調整算法,通過調整RBF網絡中的可調參數(隱層節(jié)點數、學習速率、遺忘因子和網絡權值、隱層標準偏差等)進行網絡的訓練和測試,并采用均方根(RMS)計算其訓練精度和測試精度。共采集樣本數據120組,其中72組作為網絡訓練樣本,48組作為網絡測試樣本,在環(huán)境溫度變化范圍為-5℃~75℃時,最佳RBF的神經網絡的訓練精度為0.048%,測試精度為0.062%。同時基于獲得的實驗數據,采用最小二乘擬合方法建立的數學模型,其擬合精度為0.170%;用單片機直接預存線性插值補償的方法,測試精度為0.280%。

對于其它參數的檢測,如流量、濃度或溫度本身,也可采用增加溫度或其它輔助傳感器來實現(xiàn)補償的方法。對于同時存在溫、濕度漂移的測量場合,可以采用溫濕度一體化傳感器進行補償。在本文圖3所示的神經網絡中增加一個X3輸入代表濕度,只是會增加具體計算的復雜性。

DS18B20測溫已普遍應用,且有著價格低廉、同基于單片機的智能儀器或測控系統(tǒng)接口簡單的突出優(yōu)點,本文將其引入作輔助測量傳感器,在傳感器溫度補償領域是一種有益的嘗試。RBF網絡是一種性能良好的前向網絡,它不僅有全局逼近性質,而且具有最佳逼近性能。將帶遺忘因子的梯度下降算法應用于RBF神經網絡的參數調整,該算法具有良好的非線性映射能力、自學習和泛化能力,魯棒性好、收斂較快,特別適用于傳感器數學模型的建立。論文采用軟硬件相結合的方法實現(xiàn)了高精度的溫度補償。與最小二乘擬合方法及線性插值補償方法相比,其精度提高了2~5倍。


 

要采購傳感器么,點這里了解一下價格!
特別推薦
技術文章更多>>
技術白皮書下載更多>>
熱門搜索
?

關閉

?

關閉