RBF神經(jīng)網(wǎng)絡(luò)在紅外CO2傳感器壓力補(bǔ)償中的應(yīng)用研究
0 引 言
本文引用地址:http://2s4d.com/article/82979.htm在目前種類(lèi)繁多的CO2傳感器中,紅外光學(xué)式因?yàn)槠潴w積小、壽命長(zhǎng)、反應(yīng)快、精度高等優(yōu)點(diǎn),已經(jīng)成為CO2氣體分析最常用的方法,但因環(huán)境總壓的影響一直是這種分析方法中難以解決的主要問(wèn)題之一,所以,它的適用范圍受到了很大的限制。在實(shí)際應(yīng)用中,此類(lèi)傳感器通常都用在標(biāo)準(zhǔn)大氣壓環(huán)境中,其環(huán)境總壓基本保持恒定,不存在受總壓影響的情況。目前,一些精度較高的紅外CO2傳感器都通過(guò)采用壓力補(bǔ)償措施來(lái)保證分析測(cè)量精度,其中,比較簡(jiǎn)單常見(jiàn)的一種數(shù)學(xué)方法是利用最小二乘法對(duì)不同分壓值的CO2氣體由于環(huán)境總壓變化引起的測(cè)量誤差進(jìn)行直線、指數(shù)或者多項(xiàng)式擬合。這種補(bǔ)償算法在環(huán)境總壓小范圍變化的應(yīng)用中取得了良好的效果,但誤差會(huì)隨著測(cè)量的CO2氣體分壓值的增高而變大,并且,當(dāng)環(huán)境總壓變化范圍較大后,補(bǔ)償?shù)男Ч麑?huì)很差。
本文提出構(gòu)建徑向基函數(shù)(radial basis function,RBF)神經(jīng)網(wǎng)絡(luò)模型,將其作為壓力補(bǔ)償方法應(yīng)用于紅外CO2傳感器來(lái)預(yù)測(cè)CO2氣體分壓值,期望能有效地解決在環(huán)境總壓大范圍變化情況下精度差的問(wèn)題。
1 紅外CO2傳感器結(jié)構(gòu)與原理
紅外CO2傳感器的設(shè)計(jì)利用紅外吸收原理,其吸收關(guān)系服從Lambert-beer定律
式中,I0為入射光強(qiáng);I為出射光強(qiáng);c為單位面積上分子數(shù)的線密度;l為紅外光透射的空間長(zhǎng)度;u為吸收系數(shù),它與環(huán)境壓力、溫度、氣體的種類(lèi)、入射光的光譜波長(zhǎng)等因素有關(guān)系。
本文實(shí)驗(yàn)所用紅外CO2傳感器為單光束雙波長(zhǎng)結(jié)構(gòu),如圖1所示。選用1個(gè)紅外光源,2只探測(cè)器,將光源和探測(cè)器分別安裝在一只采樣氣室的兩端。其中,一只探測(cè)器前安裝能透過(guò)4.26μm波長(zhǎng)紅外光的濾光片,CO2氣體可吸收4.26μm波長(zhǎng)的紅外光,因此,可用于探測(cè)CO2信號(hào)U1,形成測(cè)量光路;另一只探測(cè)器前安裝透過(guò)4μm波長(zhǎng)紅外光的濾光片,CO2氣體不吸收4μm波長(zhǎng)的紅外光,因此,可作為探測(cè)CO2信號(hào)的參比信號(hào)U0,形成參比光路,測(cè)量信號(hào)與參比信號(hào)相除可得一比值
式中k為光能轉(zhuǎn)換為電信號(hào)的系數(shù);△r為環(huán)境干擾信號(hào),由式(2)可以看出:有效信號(hào)只剩下與氣體吸收能力有關(guān)的參量,與傳感器系統(tǒng)的部件性能無(wú)關(guān),這樣,就可以消除光源輻射強(qiáng)度變化、光學(xué)元件污染以及探測(cè)器漂移等影響,本文將用這個(gè)比值作為傳感器的輸出信號(hào)。另外,傳感器中內(nèi)置熱敏電阻器,用于輸出溫度信號(hào),環(huán)境壓力通過(guò)壓力傳感器測(cè)得。對(duì)傳感器進(jìn)行的壓力補(bǔ)償分析即是研究在輸出溫度信號(hào)恒定的前提下,傳感器輸出的比值信號(hào)在環(huán)境總壓取不同值時(shí)與要測(cè)量的CO2氣體分壓值之間的映射關(guān)系。
2 RBF網(wǎng)絡(luò)模型設(shè)計(jì)
2.1 RBF神經(jīng)網(wǎng)絡(luò)理論
RBF網(wǎng)絡(luò)屬于前饋式網(wǎng)絡(luò)(feed forward network),通過(guò)系統(tǒng)輸入與輸出所組成的資料來(lái)建立分析模型,并借由收斂法則來(lái)達(dá)成學(xué)習(xí)之目的。它是一種局部逼近網(wǎng)絡(luò),能以任意精度逼近任一連續(xù)函數(shù),其結(jié)構(gòu)如圖2所示。RBF網(wǎng)絡(luò)由三層組成,隱含層節(jié)點(diǎn)由高斯激活函數(shù)構(gòu)成,隱含層第j個(gè)節(jié)點(diǎn)的輸出可表示為
式(4)針對(duì)紅外CO2傳感器壓力補(bǔ)償模型而言,CO2氣體分壓值與傳感器輸出比值信號(hào)存在對(duì)應(yīng)關(guān)系,在加入總壓影響這個(gè)因素后,實(shí)際上就形成了一個(gè)二對(duì)一的結(jié)構(gòu),所以,這里輸入樣本表示為x=(x1,x2)T,其中,x1表示傳感器輸出比值信號(hào),x2表示總壓值,L是輸出層節(jié)點(diǎn)數(shù),取1,表示需預(yù)測(cè)的CO2氣體分壓值,wkj,cj,σj為網(wǎng)絡(luò)參數(shù),m是隱含層節(jié)點(diǎn)數(shù),在之后網(wǎng)絡(luò)訓(xùn)練的過(guò)程中通過(guò)實(shí)驗(yàn)法確定為14
2.2 樣本數(shù)據(jù)獲取與預(yù)處理
在選定了網(wǎng)絡(luò)的輸入和輸出模式后,需獲取一定量的覆蓋較全面的樣本數(shù)據(jù)來(lái)對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練和測(cè)試。獲取過(guò)程采用固定CO2分壓逐點(diǎn)加總壓的方法進(jìn)行,總壓范圍為30~110 kPa,每5 kPa一個(gè)點(diǎn),全部實(shí)驗(yàn)是在恒定溫度(27℃)下進(jìn)行。經(jīng)過(guò)實(shí)驗(yàn),可獲得187組樣本數(shù)據(jù),分別選取各CO2分壓值點(diǎn)中的其中一個(gè)壓力點(diǎn)的數(shù)據(jù)組成測(cè)試樣本,共11組,剩下的176組數(shù)據(jù)組成訓(xùn)練樣本。為了使這些數(shù)據(jù)對(duì)于網(wǎng)絡(luò)更容易訓(xùn)練和學(xué)習(xí),需進(jìn)行尺度變化將它們變化到[0,1]區(qū)間內(nèi)。
2.3 網(wǎng)絡(luò)算法
根據(jù)尺度變化后的樣本數(shù)據(jù),網(wǎng)絡(luò)算法可分以下幾步進(jìn)行:
1)選取網(wǎng)絡(luò)的中心向量cj和標(biāo)準(zhǔn)化常數(shù)σj。這里,采用k-均值聚類(lèi)法求解,它能準(zhǔn)確計(jì)算出這2個(gè)參數(shù)的最佳初始值,與通常采用的設(shè)初始值為隨機(jī)值的方法相比,這種算法非常有效地加快了網(wǎng)絡(luò)的收斂速度。
2)求解網(wǎng)絡(luò)模型的初始權(quán)值wkj。隱含層節(jié)點(diǎn)有14個(gè),在聚類(lèi)法求出初始中心向量和標(biāo)準(zhǔn)化常數(shù)后,對(duì)于176組訓(xùn)練樣本,可以推論輸出矩陣為
通過(guò)式(5)求出網(wǎng)絡(luò)的最佳初始權(quán)值,對(duì)加快網(wǎng)絡(luò)收斂速度也起了相當(dāng)大的作用。
3)經(jīng)過(guò)(1),(2)步的求解,網(wǎng)絡(luò)模型初始參數(shù)已確定,在網(wǎng)絡(luò)傳遞過(guò)程中,利用最陡坡降法通過(guò)誤差函數(shù)來(lái)反饋修正隱含層和輸出層的參數(shù),誤差函數(shù)用系統(tǒng)總誤差表示為
式中p為訓(xùn)練樣本數(shù),取176;ti,yi分別為在樣本i的作用下輸出節(jié)點(diǎn)的期望輸出和實(shí)際輸出。第n+1次訓(xùn)練后的系數(shù)相對(duì)于第n次訓(xùn)練后的系數(shù)修正公式為
式中n為訓(xùn)練次數(shù);η為學(xué)習(xí)速率,取值為0.001;Z=wj,cj,σj。
4)經(jīng)過(guò)不斷正向傳播,反向修正,求得網(wǎng)絡(luò)的最終參數(shù),再用測(cè)試樣本數(shù)據(jù)檢驗(yàn)網(wǎng)絡(luò)性能。
2.4網(wǎng)絡(luò)模型結(jié)果分析
利用MATLAB工具強(qiáng)大的數(shù)值矩陣運(yùn)算和繪圖功能,整個(gè)網(wǎng)絡(luò)算法是通過(guò)編寫(xiě)M文件進(jìn)行編譯完成。在用測(cè)試樣本數(shù)據(jù)檢驗(yàn)時(shí),保持網(wǎng)絡(luò)參數(shù)不變,正向運(yùn)行該網(wǎng)絡(luò),每訓(xùn)練一次,即用測(cè)試數(shù)據(jù)測(cè)試一遍,其均方誤差隨訓(xùn)練次數(shù)變化的曲線如圖3。
從誤差曲線可以看出:在用測(cè)試數(shù)據(jù)檢驗(yàn)時(shí),均方誤差開(kāi)始減小,隨著訓(xùn)練次數(shù)的增加慢慢趨于平衡。選擇訓(xùn)練次數(shù)的原則是:選擇盡量少的訓(xùn)練次數(shù)以取得盡量小的測(cè)試均方誤差,使網(wǎng)絡(luò)具備很好的泛化能力。這里,取訓(xùn)練次數(shù)為50 000次,訓(xùn)練時(shí)間約為4 min,訓(xùn)練均方誤差可到0.028 1,測(cè)試均方誤差可達(dá)到0.001 527。網(wǎng)絡(luò)的最佳結(jié)構(gòu)取14個(gè)隱含層節(jié)點(diǎn),這里,通過(guò)實(shí)驗(yàn)法比較取不同隱層節(jié)點(diǎn)數(shù)后的均方誤差來(lái)確定。
圖4為網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本的預(yù)測(cè)值與實(shí)際值的比較,圖5為網(wǎng)絡(luò)模型對(duì)測(cè)試樣本的預(yù)測(cè)值與實(shí)際值的比較。
由圖4看出:網(wǎng)絡(luò)模型對(duì)訓(xùn)練樣本的預(yù)測(cè)值同實(shí)際輸出基本相符,平均誤差為0.038 kPa,精度可達(dá)1.26%,誤差最大值為0.12 kPa;由圖5看出,網(wǎng)絡(luò)模型對(duì)未經(jīng)訓(xùn)練的測(cè)試樣本的也可給出準(zhǔn)確的預(yù)測(cè)值,這個(gè)預(yù)測(cè)值與實(shí)際輸出值的平均誤差為0.035 kPa,精度可達(dá)1.18%,誤差最大值為0.079 kPa;測(cè)試數(shù)據(jù)結(jié)果分析證明:該網(wǎng)絡(luò)模型具有非常好的泛化能力,而且,解決了CO2氣體分壓值較高時(shí)精度差的問(wèn)題。
3 結(jié)論
綜合以上分析與比較可以看出:在環(huán)境壓力變化范圍較大的情況下,將神經(jīng)網(wǎng)絡(luò)應(yīng)用于構(gòu)建壓力補(bǔ)償模型,通過(guò)采集傳感器的輸出比值信號(hào)和壓力信號(hào)來(lái)組成樣本并進(jìn)行分類(lèi)和預(yù)處理,然后,用基于k-均值聚類(lèi)和最陡坡降法的RBF網(wǎng)絡(luò)依據(jù)樣本來(lái)建立輸入變量和輸出變量之間的映射關(guān)系,以預(yù)測(cè)被測(cè)氣體所含CO2氣體分壓值。該網(wǎng)絡(luò)模型使用實(shí)驗(yàn)法確定網(wǎng)絡(luò)的最佳結(jié)構(gòu),在網(wǎng)絡(luò)初始參數(shù)選取上做了較細(xì)的處理,故具有很快的收斂速度。實(shí)驗(yàn)結(jié)果表明:這種算法模型收到了良好的效果??梢灶A(yù)見(jiàn),神經(jīng)網(wǎng)絡(luò)將發(fā)展成為預(yù)測(cè)傳感器在復(fù)雜環(huán)境中的輸出信號(hào)的一種可行的有效的工具。
評(píng)論