張艷肖,李守智,張江江,曹小鴿,徐 微
(1.西安交通大學(xué)城市學(xué)院,陜西西安 710018;2.西安理工大學(xué)自動(dòng)化學(xué)院,陜西西安 710048)
在印刷、化工、建筑等領(lǐng)域,廣泛需要厚度檢測(cè),國(guó)內(nèi)外相繼出現(xiàn)多種厚度檢測(cè)技術(shù),常見的有基于各種射線、超聲波、渦流、太赫茲時(shí)域光譜等[1-4]。電容傳感器具有價(jià)格低、動(dòng)態(tài)響應(yīng)快、分辨率高等優(yōu)點(diǎn),將電容式傳感器用于厚度測(cè)量,相比于其他方法成本低、功耗小,而且對(duì)人體不會(huì)造成傷害。電容傳感器因受到邊緣效應(yīng)、寄生電容及操作誤差等因素的影響,存在較大誤差,制約了其測(cè)量精度。為了減小誤差,需要對(duì)傳感器輸出特性進(jìn)行補(bǔ)償,常用的方法有最小二乘法[5-6],支持向量回歸算法[5-6]及人工神經(jīng)網(wǎng)絡(luò)[9-10]算法,最小二乘法和神經(jīng)網(wǎng)絡(luò)是基于誤差平方和下降的計(jì)算來求最優(yōu)解,對(duì)擬合數(shù)據(jù)準(zhǔn)確性要求較高,不具備抗擊壞數(shù)據(jù)的能力。然而擬合數(shù)據(jù)來源于現(xiàn)場(chǎng)測(cè)試,隨機(jī)誤差和過失誤差可能同時(shí)存在,將導(dǎo)致補(bǔ)償效果變差。針對(duì)以上問題,該文引入抗差理論中的Fair 函數(shù),提出一種基于Fair 估計(jì)函數(shù)BP 神經(jīng)算法,使得電容式測(cè)厚傳感器測(cè)量精度得到有效提高。
電容傳感器原理如圖1 所示,電容傳感器的初始電容值表達(dá)式如式(1)所示:
圖1 電容傳感器結(jié)構(gòu)
式中,ε0為真空的介電常數(shù),ε1為待測(cè)介質(zhì)的介電常數(shù),A為電容傳感器極板的有效面積,d0兩極板之間的距離,可知電容傳感器的電容值變化由以上幾個(gè)參數(shù)共同決定[11-13]。將平行極板固定在待測(cè)材料兩端,被測(cè)材料厚度變化時(shí)引起傳感器電容的變化。根據(jù)高斯定理,傳感器電容Cx與材料厚度θ之間的關(guān)系如式(2)所示:
在實(shí)際工程應(yīng)用中,傳感器受周圍環(huán)境、目標(biāo)個(gè)體差異和邊緣效應(yīng)等多方面影響,不可避免的存在測(cè)量誤差,其輸出電容與材料厚度之間難以滿足上述函數(shù)關(guān)系,為了提高測(cè)試精度,系統(tǒng)需要對(duì)測(cè)量數(shù)據(jù)進(jìn)行回歸分析,得到材料厚度與傳感器電容之間的關(guān)系,并對(duì)未知目標(biāo)進(jìn)行估算。
BP 算法是按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),是目前應(yīng)用最為廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。網(wǎng)絡(luò)結(jié)構(gòu)為輸入層、隱含層和輸出層,如圖2 所示。從輸入層接收外界數(shù)據(jù)開始,將數(shù)據(jù)信息正向傳播給隱含層,經(jīng)過處理后在輸出層輸出結(jié)果。網(wǎng)絡(luò)訓(xùn)練的實(shí)質(zhì)是誤差e再向后傳遞的同時(shí)調(diào)整權(quán)值,以使實(shí)際輸出接近預(yù)期輸出值,傳統(tǒng)的權(quán)值由最小二乘法求得,取誤差函數(shù)為:
圖2 BP神經(jīng)網(wǎng)絡(luò)
誤差函數(shù)是單調(diào)函數(shù),最小二乘法適用于測(cè)試數(shù)據(jù)僅有隨機(jī)誤差,且誤差服從正態(tài)分布[14]的情況,而在實(shí)際工業(yè)操作過程中測(cè)量誤差中還可能存在過失誤差,過失誤差往往沒有規(guī)律可循,這將導(dǎo)致神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)不準(zhǔn)確。
為了減小測(cè)量誤差對(duì)測(cè)厚電容傳感器測(cè)量結(jié)果的影響,將魯棒的估計(jì)理論應(yīng)用于神經(jīng)網(wǎng)絡(luò)。魯棒的估計(jì)方法通過構(gòu)成一種無偏學(xué)習(xí)函數(shù),在一定偏離理想條件下對(duì)這種過偏不敏感或者呈現(xiàn)比較低的敏感度[15-16]。根據(jù)魯棒估計(jì)理論影響函數(shù)的定義,影響函數(shù)I(ζ) 正比于數(shù)據(jù)校正中誤差函數(shù)的導(dǎo)數(shù),魯棒估計(jì)的影響函數(shù)必須有界。當(dāng)ρ(e)為魯棒的誤差函數(shù)時(shí),需要滿足:
Fair 估計(jì)的影響函數(shù)可表示為:
其中,cF是一個(gè)調(diào)節(jié)常數(shù),在標(biāo)準(zhǔn)高斯分布下,取1.399 8[17]。圖3 為誤差與影響函數(shù)之間的關(guān)系,可知隨著e增大,最小二乘法(LS)函數(shù)無界,不具備魯棒性。而Fair 估計(jì)的影響函數(shù)隨著誤差的增大逼近某一常數(shù),滿足魯棒估計(jì)理論的條件。并且Fair 估計(jì)函數(shù)是凸函數(shù),有利于神經(jīng)網(wǎng)絡(luò)的優(yōu)化計(jì)算,過失誤差判別能力較強(qiáng),可以利用它求得最優(yōu)解,提高傳感器的測(cè)量精度。
圖3 不同的影響函數(shù)與誤差的關(guān)系
基于Fair 估計(jì)函數(shù)是魯棒的學(xué)習(xí)算法,該文采用該算法對(duì)神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練。假設(shè)輸入層訓(xùn)練樣本X=[x1,x2,…,xn],隱含層輸出H=[h1,h2,…,hm],實(shí)際輸出O=[o1,o2,…,ol],期望輸出Y=[y1,y2,…,yl]。輸入層到隱含層的權(quán)重3wij,隱含層到輸出層的權(quán)重為aj,隱含層到輸出層的偏置為bk,學(xué)習(xí)率為η,激勵(lì)函數(shù)選擇sigmoid 函數(shù):
隱含層的輸出為:
輸出層的輸出為:
當(dāng)網(wǎng)絡(luò)輸出與期望輸出不等時(shí),存在誤差:
由前文分析可知,基于Fair 估計(jì)函數(shù)可以減小測(cè)量誤差對(duì)神經(jīng)網(wǎng)絡(luò)輸出的影響,基于Fair 估計(jì)誤差函數(shù)為:
采用梯度下降法對(duì)隱含輸入層到輸入隱含層權(quán)值進(jìn)行更新:
隱含層到輸出層權(quán)值更新為:
偏置更新為:
該文采用FDC2214 電容式傳感器,測(cè)量單張及多張重疊的標(biāo)準(zhǔn)雙銅紙張的厚度進(jìn)行實(shí)驗(yàn)驗(yàn)證。測(cè)量前對(duì)紙張進(jìn)行干燥,減小紙張中水分對(duì)測(cè)量精度的影響。表1 給出了兩組傳感器響應(yīng)的特征值,其中,第2 組數(shù)據(jù)中含有10%的過失誤差。
表1 FDC2214傳感器在不同厚度紙張下的特征值
將傳感器的輸入厚度作為網(wǎng)絡(luò)的輸入,厚度經(jīng)傳感器后的對(duì)應(yīng)輸出電容值作為網(wǎng)絡(luò)期望輸出。利用Matlab 建立BP 網(wǎng)絡(luò)的模型及參數(shù)設(shè)置,輸入訓(xùn)練樣本,學(xué)習(xí)誤差函數(shù)分別為基于最小二乘法(LS)和Fair 估計(jì)函數(shù),將參數(shù)設(shè)置為一樣η=0.3,對(duì)網(wǎng)絡(luò)進(jìn)行若干次學(xué)習(xí)訓(xùn)練,連續(xù)調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值。測(cè)量數(shù)據(jù)中,不含過失誤差擬合結(jié)果如圖4 所示,擬合誤差如圖5 所示,當(dāng)正常測(cè)量不含過失誤差時(shí),基于最小二乘法(LS)和Fair 估計(jì)函數(shù)的BP 學(xué)習(xí)算法擬合結(jié)果基本接近。圖6 為擬合數(shù)據(jù)中含有過失誤差擬合結(jié)果,利用最小二乘法(LS) BP 學(xué)習(xí)算法造成過失誤差誤判,基于Fair 估計(jì)函數(shù)BP 學(xué)習(xí)算法擬合結(jié)果更接近于真實(shí)值,擬合誤差如圖7 所示。采用均方根誤差(MSE)評(píng)價(jià)擬合效果,表2 給出擬合后均方根誤差比較結(jié)果,當(dāng)擬合數(shù)據(jù)中含有過失誤差時(shí),基于Fair 估計(jì)函數(shù)BP 學(xué)習(xí)算法擬合效果更優(yōu),具有較強(qiáng)的魯棒性。
表2 均方根誤差比較結(jié)果
圖4 不含過失誤差擬合結(jié)果
圖5 擬合誤差
圖6 含過失誤差擬合結(jié)果
圖7 擬合誤差
將上文分析得到的基于Fair 估計(jì)函數(shù)BP 學(xué)習(xí)算法寫入STM32 單片機(jī)程序中,測(cè)量雙膠紙紙張厚度,測(cè)試結(jié)果如表3 所示。結(jié)果表明,厚度傳感器能準(zhǔn)確測(cè)量紙張厚度,測(cè)量相對(duì)誤差小于1.5%。
表3 實(shí)測(cè)結(jié)果
該文提出基于Fair 估計(jì)函數(shù)的BP 學(xué)習(xí)算法并應(yīng)用于電容傳感器厚度測(cè)量,當(dāng)訓(xùn)練數(shù)據(jù)中含有過失誤差和隨機(jī)誤差時(shí),擬合精度明顯高于傳統(tǒng)基于最小二乘法BP 學(xué)習(xí)算法。實(shí)驗(yàn)結(jié)果表明,該算法應(yīng)用于厚度傳感器能準(zhǔn)確測(cè)量紙張厚度,測(cè)量相對(duì)誤差小于1.5%。