劉燕瓊,盧文科,左 鋒,丁 勇
(東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海201620)
電渦流傳感器是利用電渦流效應(yīng),將非電量轉(zhuǎn)換成阻抗的變化而進(jìn)行測(cè)量的一種傳感器。在電渦流傳感器應(yīng)用于稱重系統(tǒng)的研究中,重力改變了電感線圈與被測(cè)金屬板的有效間距,將阻抗變化通過(guò)測(cè)量電路轉(zhuǎn)換為容易測(cè)量的電壓輸出變化,進(jìn)而計(jì)算出對(duì)應(yīng)的重量。然而,外界的溫度易影響該類型傳感器的阻值和磁導(dǎo)率,造成測(cè)量精度不高,穩(wěn)定性差等問(wèn)題。
實(shí)際應(yīng)用中,通過(guò)硬件來(lái)修正偏差的成本較高,效果也相對(duì)有限,而軟件溫度補(bǔ)償?shù)姆椒ǔ杀镜汀⒁渍{(diào)試、精度高,更易實(shí)現(xiàn)智能化。故文研究用軟件溫度補(bǔ)償?shù)姆椒▉?lái)改善溫度漂移的情況。在處理數(shù)據(jù)點(diǎn)較多的傳統(tǒng)算法中,BP 神經(jīng)網(wǎng)絡(luò)算法(back propagation,BP)是目前最成功的神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)算法。根據(jù)訓(xùn)練得到的結(jié)果與預(yù)想結(jié)果進(jìn)行誤差分析,進(jìn)而修改權(quán)重和閾值,多次迭代得到能輸出和預(yù)想結(jié)果一致的模型。但BP 神經(jīng)網(wǎng)絡(luò)算法易陷入局部最優(yōu)解,故在此采用遺傳算法(genetic algorithm,GA)對(duì)BP 神經(jīng)網(wǎng)絡(luò)的權(quán)重陣、閾值陣等參數(shù)進(jìn)行優(yōu)化,從而克服BP 神經(jīng)網(wǎng)絡(luò)算法易陷入局部最優(yōu)解的不足。
如圖1所示,根據(jù)法拉第定律[1],當(dāng)傳感器線圈通以正弦交流電I˙1時(shí),線圈周圍空間必然產(chǎn)生正弦交變磁場(chǎng)H˙1,使置于此磁場(chǎng)中的金屬導(dǎo)體中感應(yīng)電渦流I˙2,I˙2又產(chǎn)生新的交變磁場(chǎng)H˙2。根據(jù)楞次定律,H˙2的作用將反抗原磁場(chǎng)H˙1,導(dǎo)致傳感器線圈的等效阻抗發(fā)生變化,此電渦流的閉合流線的圓心同線圈在金屬板上的投影的中心重合。由此可知,線圓阻抗的變化完全取決于被測(cè)金屬導(dǎo)體的電渦流效應(yīng)。而電渦流效應(yīng)既與被測(cè)體的電阻率ρ、相對(duì)磁導(dǎo)率μ 及其幾何尺寸因子r,線圈中激磁流頻率f 相關(guān),還與線圈與導(dǎo)體間的距離x 相關(guān),因此傳感器線圈受電渦流影響時(shí)的等效阻抗Z 的函數(shù)關(guān)系式為


圖1 電渦流傳感器的原理圖Fig.1 Schematic diagram of eddy current sensor
本文保持恒溫且其他參數(shù)不變,只改變其中的有效距離x,傳感器線圈阻抗Z 就僅為這個(gè)參數(shù)的單值函數(shù)。通過(guò)配用的測(cè)量電路測(cè)出阻抗Z 的變化量,即可實(shí)現(xiàn)對(duì)該參數(shù)的測(cè)量。
如圖2所示,將電渦流傳感器固定在振動(dòng)梁之上,并保持一定的距離。選定秤盤的作用點(diǎn),砝碼的重量使懸臂梁?jiǎn)蝹?cè)下彎,傳感器與振動(dòng)梁原有的距離變大,渦流效應(yīng)減弱,傳感器線圈阻抗Z 的測(cè)量值因此發(fā)生改變。通過(guò)對(duì)阻抗Z 值的測(cè)量,可計(jì)算出一定質(zhì)量的砝碼所對(duì)應(yīng)的傳感器輸出,從而達(dá)到測(cè)量質(zhì)量的目的[2]。

圖2 稱重系統(tǒng)工作原理Fig.2 Working principle of weighing system
考慮到電渦流式傳感器對(duì)溫度比較敏感,將數(shù)據(jù)融合環(huán)節(jié)引入到稱量系統(tǒng)中,可以很大程度上消除溫度的干擾[3]。系統(tǒng)中,溫度傳感器采用LM 系列中的LM35DZ 溫度傳感器,將LM35DZ 傳感器粘貼至渦流傳感器附近,LM35DZ 的輸出電壓可以反應(yīng)電渦流傳感器工作時(shí)周圍環(huán)境的溫度變化。雙傳感器數(shù)據(jù)融合系統(tǒng)如圖3所示。

圖3 雙傳感器數(shù)據(jù)融合系統(tǒng)Fig.3 Dual sensor data fusion system
試驗(yàn)中,需要補(bǔ)償?shù)膫鞲衅鳛殡姕u流傳感器,其輸入量為質(zhì)量M,輸出量為電壓UM。監(jiān)測(cè)工作溫度的輔助傳感器的輸入量為T,輸出量為UT。實(shí)驗(yàn)過(guò)程中發(fā)現(xiàn),在15 ℃~43.5 ℃的工作溫度范圍內(nèi),選定n=11 個(gè)不同的溫度值,在量程范圍內(nèi),質(zhì)量M 選取k=16 個(gè)不同的標(biāo)定值。把溫度傳感器貼敷在電渦流傳感器的附近,并將2 個(gè)傳感器置于恒溫箱中,將恒溫箱的溫度調(diào)節(jié)到一恒定值,再將砝碼調(diào)整到要標(biāo)定的數(shù)值。分別測(cè)定電渦流傳感器的輸入量(質(zhì)量M)及其輸出量(電壓UM),同時(shí)記錄此時(shí)的溫度傳感器輸出的電壓值。重復(fù)上述操作,得到表1。

表1 電渦流傳感器二維標(biāo)定實(shí)驗(yàn)數(shù)據(jù)Tab.1 Eddy current sensor 2D calibration experiment data
根據(jù)實(shí)驗(yàn)數(shù)據(jù)繪制溫度補(bǔ)償前電渦流傳感器隨溫度變化的輸入輸出特性曲線如圖4所示。

圖4 溫度補(bǔ)償前電渦流傳感器的輸入輸出特性曲線Fig.4 Input-output characteristic curve of eddy currentsensor before temperature compensation
由圖4 可知,電渦流傳感器的輸入輸出特性曲線隨著溫度的變化而變化,出現(xiàn)了溫度漂移。在此選用零位溫度系數(shù)α0、靈敏度溫度系數(shù)αs和滿量程時(shí)的相對(duì)誤差δ 表示溫度對(duì)電渦流傳感器的穩(wěn)定性和精度的影響(零位溫度系數(shù)α0表示零位值UM0隨溫度漂移的速度;靈敏度溫度系數(shù)αs為靈敏度隨溫度漂移的速度)。


式中:T1、T11為工作溫度的最小、最大值;UM0max、UM0min是質(zhì)量M=0 g 時(shí),環(huán)境溫度在T1~T11范圍內(nèi)傳感器輸出電壓的最大值與最小值;UMhmax、UMhmin是質(zhì)量M=300 g 時(shí),環(huán)境溫度在T1~T11范圍內(nèi)傳感器輸出電壓的最大值與最小值;UFS為滿量程電壓輸出值;Δt=t11-t1為溫度變化范圍。
由表1 中數(shù)據(jù)計(jì)算可得:

零位溫度系數(shù)α0、靈敏度溫度系數(shù)αs和滿量程時(shí)的相對(duì)誤差δ 都比較大,需要對(duì)該傳感器進(jìn)行溫度補(bǔ)償。
BP 神經(jīng)網(wǎng)絡(luò)有著信號(hào)沿正向傳播、誤差沿反方向傳播的特點(diǎn)。本文采取3 層BP 神經(jīng)網(wǎng)絡(luò)模型[4],其網(wǎng)絡(luò)模型如圖5所示。

圖5 BP 神經(jīng)網(wǎng)絡(luò)模型Fig.5 BP neural network model
(1)輸入層包含2 個(gè)神經(jīng)元,分別是電渦流和溫度傳感器的輸入電壓值,形成輸入矩陣。(其中,i∈[1,2])為輸入層第i 個(gè)神經(jīng)元的輸入;
(2)隱層包含6 個(gè)神經(jīng)元,Iωji(其中,j∈[1,6])為輸入層與隱層之間的權(quán)值矩陣,b(2)為隱層的閾值矩陣,a(2)為隱層的輸出矩陣,隱層的第j 個(gè)神經(jīng)元輸入為

隱層傳遞函數(shù)采用tansig 函數(shù),故隱層的輸出為

(3)輸出層包含1 個(gè)神經(jīng)元,Lωkj(本文,k=1)為隱層與輸出層間的權(quán)值矩陣,b(3)為輸出層的閾值,輸出層采用purelin 純線性函數(shù)。BP 神經(jīng)網(wǎng)絡(luò)的最終輸出表達(dá)式為:

(4)計(jì)算輸出值與期望值的總誤差E,引入學(xué)習(xí)因子η 和勢(shì)態(tài)因子α,反復(fù)地根據(jù)E 的大小調(diào)整網(wǎng)絡(luò)參數(shù),使權(quán)值沿誤差函數(shù)E 的負(fù)梯度方向改變,使得誤差E 足夠小。按照誤差反向傳播算法,分別求取輸出層訓(xùn)練誤差δ2k和隱層訓(xùn)練誤差δ2j,最后得出權(quán)值修正公式為

由式(7)可知,BP 神經(jīng)網(wǎng)絡(luò)模型各層之間的連接權(quán)值和閾值決定著最終的數(shù)據(jù)融合效果,然而這些值的初始值都是在建模初期隨機(jī)得到的,缺乏選擇的依據(jù)。另一方面,BP 算法是基于梯度下降法進(jìn)行權(quán)值的修正,易存在局部最優(yōu)的問(wèn)題,某些初始值可能會(huì)導(dǎo)致網(wǎng)絡(luò)發(fā)散甚至被困在局部極值點(diǎn),因此必須對(duì)BP 神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,提高神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)模型適用性。
遺傳算法善于全局搜索[5],因此本次研究采用遺傳算法來(lái)優(yōu)化神經(jīng)網(wǎng)絡(luò)的初始參數(shù),以增強(qiáng)神經(jīng)網(wǎng)絡(luò)的全局搜索能力,提升學(xué)習(xí)速度并避免陷入局部最優(yōu)[6]。優(yōu)化過(guò)程分為種群初始化、計(jì)算個(gè)體適應(yīng)度值和遺傳操作3 個(gè)階段:
(1)種群初始化。把BP 神經(jīng)網(wǎng)絡(luò)3 層參數(shù)連接的式子作為一個(gè)染色體,在連接權(quán)值和閾值的范圍內(nèi),隨機(jī)生成數(shù)量為M 的染色體格式作為初始種群。
(2)計(jì)算個(gè)體適應(yīng)度值。選擇訓(xùn)練數(shù)據(jù)期望輸出與預(yù)測(cè)輸出的差值絕對(duì)值,求和后作為個(gè)體適應(yīng)度值F,表達(dá)式為

式中:m 為輸出節(jié)點(diǎn)數(shù);yi為期望的BP 神經(jīng)網(wǎng)絡(luò)節(jié)點(diǎn)i 的輸出值;zi為預(yù)測(cè)模型BP 神經(jīng)網(wǎng)絡(luò)節(jié)點(diǎn)i 的預(yù)輸出;k 為系數(shù)。計(jì)算出所有個(gè)體的適應(yīng)度值,然后依次進(jìn)行選擇、交叉和變異,形成新的種群來(lái)取代上一代群體。
(3)遺傳操作。在新群體的交叉、變異操作過(guò)程中使用自適應(yīng)交叉變異算子,既加大了適應(yīng)度低的個(gè)體交叉和變異的概率,又保障了適應(yīng)度高的個(gè)體在群體中的比例,使之減小交叉和變異的概率,從而達(dá)到提高算法收斂速度的目的。通過(guò)反復(fù)的網(wǎng)絡(luò)訓(xùn)練,得到的適應(yīng)度最大的個(gè)體就是最優(yōu)解。若不滿足,則選出最大的μ 個(gè)個(gè)體,作為下一代的父體,繼續(xù)進(jìn)行網(wǎng)絡(luò)訓(xùn)練,直到滿足要求為止。最終將得到的最優(yōu)值作為BP 神經(jīng)網(wǎng)絡(luò)的初始權(quán)值和閾值。GA-BP 算法的流程如圖6所示。
設(shè)置網(wǎng)絡(luò)訓(xùn)練參數(shù):輸入節(jié)點(diǎn)數(shù)為2;隱含層節(jié)點(diǎn)數(shù)為6;輸出層節(jié)點(diǎn)數(shù)為1;遺傳算法的種群規(guī)模為20;迭代次數(shù)為200;交叉概率為0.6;變異概率為0.2;種群復(fù)制率為0.9;網(wǎng)絡(luò)訓(xùn)練性能目標(biāo)誤差為0.0001;訓(xùn)練與檢驗(yàn)次數(shù)為1000 次。最終,采用GA-BP 算法進(jìn)行數(shù)據(jù)融合后的結(jié)果如表2所示。

圖6 GA-BP 算法流程圖Fig.6 Flow chart of GA-BP algorithm
從表2 得到了補(bǔ)償后的輸入輸出特性曲線,如圖7所示。對(duì)比圖7 與圖4 可知,補(bǔ)償后的所有輸入輸出特性曲線一起向一條曲線聚焦,達(dá)到了對(duì)電渦流傳感器溫度補(bǔ)償?shù)哪康摹?/p>
由表2 可知,在試驗(yàn)溫度范圍內(nèi),零位置的最大改變量為0.94,在質(zhì)量為300 g 時(shí),存在最大的ΔMmax=303.33-297.45=5.88 g,最大量程UFS為300 g。


表2 經(jīng)過(guò)GA-BP 算法補(bǔ)償后的質(zhì)量值Tab.2 Quality values after GA-BP algorithm compensation

圖7 補(bǔ)償后電渦流傳感器的輸入輸出特性曲線Fig.7 Input-output characteristic curve of eddy current sensor after temperature compensation

將溫度補(bǔ)償前后的數(shù)據(jù)進(jìn)行對(duì)比分析可以得到:
(1)零位溫度系數(shù)由2.723×10-3/℃提高到1.099×10-4/℃,提高了1 個(gè)數(shù)量級(jí);
(2)靈敏度溫度系數(shù)由2.956×10-3/℃提高到6.877×10-4/℃,提高了1 個(gè)數(shù)量級(jí);
(3)滿量程的相對(duì)誤差由8.43%提高到1.93%,得到很大的改善。
針對(duì)電渦流傳感器在稱重系統(tǒng)中的溫度漂移問(wèn)題,提出了基于遺傳算法優(yōu)化的BP 神經(jīng)網(wǎng)絡(luò)對(duì)其進(jìn)行補(bǔ)償。 試驗(yàn)結(jié)果表明,經(jīng)過(guò)GA-BP 算法進(jìn)行數(shù)據(jù)融合補(bǔ)償后的零位溫度系數(shù)和靈敏度溫度系數(shù)提高了1 個(gè)數(shù)量級(jí),滿量程時(shí)的相對(duì)誤差也得到很大的改善,從而說(shuō)明GA-BP 神經(jīng)網(wǎng)絡(luò)算法可以在稱重試驗(yàn)中對(duì)電渦流傳感器進(jìn)行有效的溫度補(bǔ)償。