潘 杰,盧文科,馮 陽(yáng),左 鋒
(東華大學(xué) 信息科學(xué)與技術(shù)學(xué)院,上海201620)
電渦流傳感器是用可產(chǎn)生“渦流效應(yīng)”的金屬導(dǎo)體作為核心元器件的傳感器,它可以將震動(dòng)頻率和位移等物理量轉(zhuǎn)換成電信號(hào)輸出。該裝置結(jié)構(gòu)簡(jiǎn)單,線性范圍好,靈敏度高,適用性強(qiáng),方便非接觸性測(cè)量,不損傷被測(cè)量工價(jià)的表面。該傳感器主要由導(dǎo)線和被測(cè)導(dǎo)體組成,因此線圈阻抗的大小和被測(cè)導(dǎo)體的電導(dǎo)率和磁導(dǎo)率都對(duì)溫度比較敏感,尤其在高溫情況下會(huì)存在嚴(yán)重的誤差,產(chǎn)生溫度漂移,使測(cè)量結(jié)果發(fā)生嚴(yán)重偏差。為了減小影響,需要進(jìn)行溫度補(bǔ)償[1]。傳統(tǒng)方法是通過(guò)硬件電路的補(bǔ)償,這種方法電路設(shè)計(jì)難度較大,精度不足,可移植性差,無(wú)法滿(mǎn)足現(xiàn)代設(shè)計(jì)需求。在此,采用改進(jìn)群粒子支持向量機(jī)的算法,對(duì)測(cè)量結(jié)果進(jìn)行修正,消除傳感器的交叉敏感,對(duì)溫度進(jìn)行較好的補(bǔ)償[2]。
電渦流傳感器的結(jié)構(gòu)如圖1 所示。線圈提供可變電流I1,產(chǎn)生可變磁場(chǎng)H1,金屬導(dǎo)體就會(huì)產(chǎn)生旋渦狀感應(yīng)電流I2,兩者的相對(duì)位置不同導(dǎo)體會(huì)產(chǎn)生不同的反向交變磁場(chǎng)H2,改變線圈的有效阻值,從而改變電信號(hào)輸出[3-4]。
圖1 電渦流原理示意圖Fig.1 Schematic diagram of eddy current principle
為便于分析,圖1 的等效電路如圖2 所示。圖中,左側(cè)是通電線圈在高頻的阻值R1和等效電感L1;中間是線圈和導(dǎo)體靠近時(shí)產(chǎn)生的互感M,它會(huì)依據(jù)兩者之間相對(duì)距離的變化而反向改變;右側(cè)是被測(cè)導(dǎo)體的等效電阻R2和等效電感L2。
圖2 電渦流傳感器等效電路Fig.2 Eddy current sensor equivalent circuit
由電路原理基本定理,得到:
則線圈的等效阻抗為
由式(4)可知,當(dāng)其他參數(shù)保持不變時(shí),線圈阻抗僅與互感M 有關(guān),而M 的取值受線圈與金屬導(dǎo)體相對(duì)距離S 的共同影響。但是在實(shí)際應(yīng)用中,線圈阻抗受到周?chē)鷾囟雀蓴_較大,極易產(chǎn)生偏差,需要對(duì)其進(jìn)行溫度補(bǔ)償。
支持向量機(jī)SVM(support vector machine)是一種新的機(jī)器學(xué)習(xí)方法,以統(tǒng)計(jì)學(xué)習(xí)理論(statistical learning theory)為基礎(chǔ),采用了結(jié)構(gòu)風(fēng)險(xiǎn)最小準(zhǔn)則,提高泛化水平,找尋最優(yōu)解,能夠很好地解決容量小和非線性的問(wèn)題[5-6]。
其中支持向量機(jī)結(jié)構(gòu)如圖3 所示。圖中,ai(i=1,2,3,…,s)為拉格朗日乘子,用于轉(zhuǎn)換成對(duì)偶問(wèn)題;K(x,xi′)為核函數(shù),用于不同維度之間的映射;x 為檢驗(yàn)樣本或?qū)崪y(cè)樣本中的某個(gè)向量;xi′(i=1,2,3,…,s)為支持向量;y(x)為x 的輸出量。
圖3 支持向量機(jī)的結(jié)構(gòu)Fig.3 SVM structure
圖中,由初始觀測(cè)樣本構(gòu)成輸入空間,利用某種關(guān)系把低維空間的數(shù)據(jù)反映到高維空間。用于數(shù)據(jù)擬合的線性回歸函數(shù)為
給定的樣本數(shù)據(jù)集為
最優(yōu)化回歸函數(shù)[7-8]通過(guò)最小化以下的泛函式獲得:
約束條件為
式中:C 為懲罰因子,是需要初始化的預(yù)定值,用于控制樣本擬合能力和預(yù)測(cè)能力;ε 為不敏感損失函數(shù)系數(shù),用于減小目標(biāo)偏差,提升回歸精度為松弛變量,分別為約束的上界和下界。
支持向量機(jī)通過(guò)對(duì)偶表達(dá)避免高維空間之中復(fù)雜的計(jì)算影響,通過(guò)K(x,xi′)的值來(lái)得到內(nèi)積,從而有效避免維數(shù)災(zāi)難[9]。在此所采用的核函數(shù)是高斯型徑向基函數(shù)RBF,表達(dá)式為
模型中的2 個(gè)參數(shù)——懲罰因子C 和核函數(shù)參數(shù)σ ——需要自行選取,在此采用粒子群算法尋優(yōu)來(lái)找到最合適的參數(shù)大小。
粒子群優(yōu)化POS(particle swarm optimization),是一種群智能研究領(lǐng)域的算法[10-11],源于對(duì)鳥(niǎo)群習(xí)性的仿真研究,在19 世紀(jì)90 年代正式誕生。該算法模仿生物群體在尋找目標(biāo)的進(jìn)程中展現(xiàn)的尋優(yōu)方案,僅需運(yùn)用一些基礎(chǔ)數(shù)學(xué)計(jì)算,易于實(shí)現(xiàn)。在此用于優(yōu)化參數(shù)得到最優(yōu)解。粒子群迭代的公式為
式中:vjk(m),xjk(m)分別為m 次迭代后第j 個(gè)粒子在空間k 維的位置和速度;c1和c2為加速因子,c1為認(rèn)知參數(shù),c2為社會(huì)參數(shù);r1k,r2k為[0,1]區(qū)間的隨機(jī)函數(shù);pjk(m)和pgk(m)分別為單個(gè)粒子j 和全部粒子在m 次迭代后的歷史最優(yōu)解。式(10)是將單個(gè)粒子的m 次迭代后的位置和歷史最佳位置做差,然后進(jìn)行隨機(jī)化,再將整體的最優(yōu)位置和粒子m 次迭代后在空間k 維位置做差,進(jìn)行隨機(jī)化,兩者的和作為下一時(shí)刻速度vjk(m+1)的調(diào)整分量。
在粒子群移動(dòng)迭代的進(jìn)程中,必須對(duì)單個(gè)粒子進(jìn)行適應(yīng)值計(jì)算,其中的適應(yīng)度是用于判斷單個(gè)粒子位置是否代表群體最佳的工具。
假定,f(x)為最優(yōu)化目標(biāo),其確定的最好位置為
算法結(jié)束的條件是:迭代次數(shù)超過(guò)預(yù)定值或者代入群體最佳位置得到的是最好適應(yīng)值。此時(shí)粒子群的最好解代表的適應(yīng)度函數(shù)是歷史最佳。
PSO-SVM 模型的算法流程如圖4 所示。
圖4 PSO-SVM 流程Fig.4 PSO-SVM flow chart
將粒子群和支持向量機(jī)融合[12],通過(guò)建立回歸預(yù)測(cè)模型,其中懲罰因子C 和核函數(shù)參數(shù)σ 對(duì)向量機(jī)預(yù)測(cè)結(jié)果有較為重大的影響,利用粒子群算法優(yōu)化參數(shù),首先確定好迭代次數(shù)、加速因子c1和c2,設(shè)定一個(gè)粒子群的初始速度和初始位置,通過(guò)粒子群計(jì)算出每次迭代改善的C 和σ 的值,接著將兩者代入向量機(jī)開(kāi)始訓(xùn)練試驗(yàn)數(shù)據(jù),求出預(yù)測(cè)值,并且將預(yù)測(cè)值和期望值的方差結(jié)果設(shè)置為適應(yīng)度大小。對(duì)于每一個(gè)粒子,修改其最好位置pjk的條件是適應(yīng)度相較于歷史最佳點(diǎn)更優(yōu); 更新全局最好pgk的條件是在粒子優(yōu)化過(guò)程中,群體的適應(yīng)值小于歷史最小的點(diǎn)。當(dāng)?shù)M(jìn)程超過(guò)初始值,此刻的參數(shù)值最佳,代入C 和σ 求出預(yù)測(cè)值,此時(shí)便是誤差補(bǔ)償?shù)慕Y(jié)果。
在PSO-SVM 的溫度補(bǔ)償系統(tǒng)中,如圖5 所示,通過(guò)改變被測(cè)導(dǎo)體和線圈的相對(duì)距離S 可以調(diào)整US,改變周?chē)鷾囟萒 可以改變溫度傳感器的測(cè)試電壓UT,再將兩者通過(guò)PSO-SVM 算法模塊擬合數(shù)據(jù),使電渦流的電壓輸出端有一個(gè)S*,最終實(shí)現(xiàn)溫度補(bǔ)償?shù)男Ч?/p>
圖5 PSO-SVM 溫度補(bǔ)償系統(tǒng)框圖Fig.5 Block diagram of PSO-SVM temperature compensation system
在一定工作范圍內(nèi),將傳感器按照試驗(yàn)要求放置恒溫箱,在不同工作環(huán)境溫度下,按照電路圖連接電路,調(diào)整相對(duì)距離S,以0.2 mm 為間隔,記錄不同位移下電路的輸出電壓值。在不同溫度下重復(fù)上述操作,所記錄的數(shù)據(jù)見(jiàn)表1。
表1 不同溫度下電渦流傳感器的靜態(tài)標(biāo)定數(shù)據(jù)(US/V)Tab.1 Static data of eddy current sensors at different temperatures(US/V)
根據(jù)二維試驗(yàn)所測(cè)量郵的物理量,繪制出該傳感器相對(duì)距離S 和測(cè)量電壓US的特征關(guān)系曲線,如圖6 所示。由圖可見(jiàn)隨著溫度的改變,特性曲線發(fā)生溫度漂移,其非線性度也很大。
圖6 補(bǔ)償前的輸入輸出特性曲線Fig.6 Input-output characteristic curvesbefore compensation
根據(jù)表1 數(shù)據(jù),可以求出以下溫度系數(shù):
①零位溫度系數(shù)α0
其中
式中:ΔU0max為相對(duì)距離S=0 時(shí)不同溫度所導(dǎo)致的電壓最大偏移值,V,在此為3.32 V-2.18 V=2.025 V;U(FS)為電渦流傳感器的量程,V,在此為5 V-2.18 V=2.82 V;ΔT 為溫度的測(cè)量范圍,℃,在此為55 ℃-25 ℃=30 ℃。
②靈敏度溫度系數(shù)αs
式中:U(T2)-U(T1)為在某個(gè)特定的相對(duì)距離S 條件下由于不同溫度所導(dǎo)致的電壓最大偏移值,V,在此為3.32 V-2.18 V=2.025 V;U(FS)為該電渦流傳感器的量程,V,在此為5 V-2.18 V=2.82 V;ΔT 為溫度的測(cè)量范圍,℃,在此為55 ℃-25 ℃=30 ℃。
使用粒子群優(yōu)化支持向量機(jī)參數(shù)算法時(shí),選用試驗(yàn)中的5 組測(cè)量值作為訓(xùn)練樣本,另外2 組測(cè)量值作為測(cè)試樣本。
開(kāi)始運(yùn)算前,設(shè)定粒子總數(shù)為30,更迭總數(shù)為300,此時(shí)的補(bǔ)償效果較為明顯;加速因子c1=1.8,c2=1.2,兩者可保障較好的全局性,對(duì)試驗(yàn)中的測(cè)量物理量US和UT進(jìn)行歸一化,然后開(kāi)始優(yōu)化訓(xùn)練。
所預(yù)測(cè)的相對(duì)位移S*即溫度補(bǔ)償效果見(jiàn)表2。
根據(jù)表2,得到零位溫度系數(shù)為
表2 PSO-SVM 補(bǔ)償后的輸出值(S*/mm)Tab.2 Output values after PSO-SVM compensation(S*/mm)
把式(13)和式(14)與式(15)和式(16)做對(duì)比(即圖6 與圖7 做對(duì)比),由圖可見(jiàn),電渦流傳感器在數(shù)據(jù)融合后,其零點(diǎn)溫度系數(shù)優(yōu)化效果上升近2個(gè)精度,而靈敏度溫度系數(shù)優(yōu)化效果上升1 個(gè)精度,極大地改善了溫度漂移帶來(lái)的問(wèn)題。
圖7 電渦流傳感器溫補(bǔ)后的輸出特性曲線Fig.7 Output characteristic curves of eddy current sensor after temperature compensation
針對(duì)電渦流傳感器數(shù)據(jù)因溫度變化產(chǎn)生漂移的現(xiàn)象,提出了利用粒子群算法優(yōu)化向量機(jī)的軟件矯正方法進(jìn)行溫度補(bǔ)償。其中粒子群主要優(yōu)化向量機(jī)2 個(gè)參數(shù)——懲罰因子C 和核函數(shù)σ;將優(yōu)化后的參數(shù)代入模型,求出預(yù)測(cè)值。試驗(yàn)證明,在數(shù)據(jù)融合后,靈敏度溫度系數(shù)由1.35×10-2/℃提升至5.59×10-4/℃,優(yōu)化效果提升近2 個(gè)精度;零位溫度系數(shù)由1.35×10-2/℃提升到1.81×10-4/℃,優(yōu)化效果提升1 個(gè)精度。