王 慧,趙國超,金 鑫,宋宇寧
(1.遼寧工程技術大學機械工程學院,遼寧 阜新 123000;2.營口理工學院機械與動力系,遼寧 營口 115014)
通用硅壓阻式壓力傳感器的主要元件為惠斯通橋集成的硅膜片,此類傳感器壓阻系數與溫度直接相關,極易出現溫度漂移。對傳感器的溫度補償的方法,國內外專家學者也相繼開展了眾多研究[1-3]。Yuanjiang Li,Yuehua提出了兩種改進的PSO算法,并用來解決熱電堆傳感器的溫度補償問題,通過實驗證明了此類方法的有效性及可移植性[4]。Hernandez A,Farah L E提出了一種基于片段線性近似的壓阻式壓力傳感器新型溫度補償算法[5],通過實驗證明了補償算法的有效性,但此方法對非線性段的補償精度不足。文獻[6]利用蟻群算法對RBF神經網絡權值閾值進行修正,通過壓力傳感器補償實驗證明修正后的RBF神經網絡補償效果更好;文獻[7]利用遺傳算法對BP神經網絡進行優化,利用優化的神經網絡進行溫度補償實驗,彌補了BP神經網絡易陷入局部極小的缺陷;文獻[8]利用粒子群智能優化算法,將BP神經網絡的權值閾值進行優化和修正,提高了BP神經網絡的搜索速度并通過壓力傳感器溫度補償實驗驗證補償方法的準確性和有效性,但此類方法對較小漂移的線性段補償效率不夠。
本文提出一種基于粒子群優化RBF神經網絡與最小二乘法融合的壓阻式傳感器溫度補償方法,根據硅壓阻式傳感器受溫度影響變化分段的特性,利用最小二乘法對線性段進行溫度補償;使用粒子群(PSO)算法對RBF神經網絡的權值和閾值進行改進,提高RBF神經網絡的泛化性,對傳感器的非線性段進行溫度補償。
壓阻式傳感器受溫度變化的特性,可分為3個不同階段[9]。隨著溫度的變化可將傳感器的輸出函數表示如下:
(1)
處于中溫區間[T1,T2]時,傳感器隨溫度呈線性變化,溫度漂移造成的影響較小;溫度處于低溫區間[T0,T1]和高溫區間[T2,T3]時,傳感器隨溫度呈非線性變化,溫度漂移造成的影響較大。對于線性變化的中溫區間段,采用直線最小二乘法進行溫度補償;對于非線性變化的低溫、高溫區間,采用粒子群優化RBF神經網絡進行溫度補償。通過環境溫度自適應選擇,完成線性段和非線性段溫度補償模型的切換。補償原理如圖1所示。

圖1 壓力傳感器溫度補償原理
利用線性方程進行擬合,需要按照一定精度需求自動搜索線性段溫度區間,以便得到較寬的擬合區間,實現較大的補償效率且簡化計算難度。通過對給定的一組實驗數據(xi,yi),i=1,2,…,n做n次多項式,使得總誤差S最小。使用線性方程y=α+βx+e進行擬合,其中α為常數項、β為系數,e為擬合殘差。根據文獻[10]可知:
(2)
(3)
總誤差:
(4)
設線性段溫度最初區間為[T1,T2],令[T1,T2]=[T0,T1],對最初區間進行擬合,如果總體誤差的最大值Smax比誤差設定下極限大,則令T1=T1+τ,其中τ為溫度樣本間距,對新的區間再次擬合,若依然大于誤差設定下極限,則令T2=T2-τ,對所得區間再次擬合,直至擬合總誤差Smax滿足設定極限要求,得到最終樣本訓練區間。
RBF(徑向基函數神經網絡)是一種模擬人腦神經網絡的三層前饋網絡,結構如圖2所示。它能以任意精度逼近任意連續函數,具備最佳逼近能力和全局最優特性,且構造容易,訓練時間短,對復雜、非線性和不確定性系統具有較強的映射能力[11-12]。

圖2 RBF神經網絡的結構
RBF神經網絡輸出層用具有n個輸入數據的列向量表示:
X=[x1,x2,…,xn]T
(5)
RBF神經網絡隱含層輸出為:
(6)
式中:Ci為隱含節點中心;σi為基函數的寬度。
輸出層為:
(7)
式中:wi為隱含節點與輸出節點的連接權值;bo為輸出偏差。
輸入層只進行信號輸入,不做任何的處理;隱含層采用高斯函數為激活函數,進行非線性變換過程;輸出層采用Purelin函數,對隱含層的輸出進行線性變換后輸出。在RBF神經網絡的基本構成中,需要確定的參數有Ci、σi和wi。傳統RBF獲取這些參數使用的是K-均值聚類算法以及梯度下降兩階段離線算法[13]。這些參數的選取直接影響到RBF神經網絡的性能,因此采用粒子群優化(Particle Swarm Optimizer)算法獲取隱含節點中心Ci、基函數寬度σi和連接權值wi,進而提高算法泛化能力并發揮粒子群算法全局尋優和提高收斂速度的能力。
粒子群算法模擬群鳥尋食的過程,每個鳥就是算法中的粒子即求解問題的可能解。算法搜索模式為速度—位置型,隨機初始化一群粒子,每一粒子的位置均代表優化問題的可能最優解,通過不斷迭代取得個體和全局最優,更新粒子位置,最終尋得最優解。假設搜索的解空間為N維,存在n個粒子,根據適應函數每次迭代求得種群中每個粒子的位置xi、速度Vi、個體最優Pbest,全局最優Gbest。
取得個體最優和全局最優后,粒子根據式(8)、式(9)更新自己的位置和速度。
(8)
(9)
式中:k為迭代次數;ω為慣性權值,一般在[0.1,0.9]內取值[14];i=1,2,…,n;d=1,2,…,N;加速度因子c1=c2=2[15];隨機數r1、r2取值區間為[0,1]。
針對PSO算法中每一粒子都與一個可行解對應,因此采用編碼方式對粒子進行編碼用來獲取隱含節點中心及基函數寬度。編碼方式包括隱含層節點的二進制編碼;基函數寬度和節點中心的實數編碼,結構如圖3所示。

圖3 編碼結構
PSO算法優化RBF神經網絡具體方法如下:
①收集樣本數據,并對數據進行歸一預處理。
②令RBF神經網絡的初始化參數變為一列,作為粒子的一組初始化種群。取n個粒子,初始t+1 代,隨機粒子的初速度為vi,初位置xi,單個粒子最優值Pi。
③根據式(10)求解粒子適應度。
(10)

④將每個粒子當前適應度fi與歷史適應度進行排序,若當前位置比歷史位置更好則更新Pbest。
⑤將每個粒子適應度fi與全局中的歷史最優位置排序,如果當前優于歷史則更新Gbest。
⑥根據RBF神經網絡隱含層輸出和輸出層輸出更新粒子位置和速度,并循環(4)~(6)步,直至滿足最優條件。
⑦將全局最優的粒子位置和速度進行解碼后得到隱含節點中心及基函數寬度。
⑧根據最優的輸出結果進行解碼,獲得神經網絡的權值,對神經網絡進行訓練。
用粒子群算法優化RBF神經網絡流程如圖4所示。

圖4 粒子群優化RBF神經網絡過程示意
采用課題組汽車轉矩協調控制實驗臺所用的飛思卡爾24 PC型壓力傳感器對溫度補償系統進行實驗驗證,設定溫度區間為[-20 ℃,80 ℃],溫度變化步長為10 ℃;壓力區間為[5 kPa,20 kPa],壓力變化步長為 5 kPa。溫度補償前傳感器部分數據如表1所示。

表1 24PC型傳感器補償前實驗數據
溫度補償前對不同壓力和溫度狀態下的傳感器實際輸出電壓和測量輸出電壓進行對比,測量誤差擬合曲線如圖5所示。

圖5 補償前的傳感器測量誤差
由圖5可以看出,在低溫區間[-20 ℃,10 ℃]和高溫區間[50 ℃,80 ℃],壓力傳感器的誤差呈現非線性變化趨勢;而在中溫區間[10 ℃,50 ℃]誤差呈線性變化趨勢。
針對非線性變化和線性變化區間分別采用PSO優化的RBF神經網絡和最小二乘法進行溫度補償實驗。用最小二乘法所用的線性擬合方程為[16]:y=1.067 1x-2.631 2;用神經網絡進行溫度補償的參數設定如表2所示。

表2 RBF神經網絡參數設定
將常規RBF神經網絡和PSO優化的RBF神經網絡進行對比訓練,樣本訓練曲線如圖6所示。

圖6 訓練曲線
經過100次迭代后,PSO優化的RBF神經網絡精度為1.125×10-4,常規RBF神經網絡的精度為1.632×10-2;常規RBF神經網絡出現局部最優。由此可得,與常規的RBF神經網絡相比,PSO優化的RBF神經網絡訓練精度更高,訓練效率更好。
利用PSO優化的RBF神經網絡和最小二乘法對該壓力傳感器進行溫度補償實驗,得到補償后傳感器測量誤差擬合曲線如圖7。

圖7 補償后的傳感器測量誤差
對比補償前后傳感器誤差,利用PSO優化RBF神經網絡進行溫度補償后,壓力為5 kPa時,傳感器的平均誤差在0.4%~0.6%之間;壓力為10 kPa時,傳感器的平均誤差在0.3%~0.8%之間;壓力為15 kPa時,傳感器的平均誤差在0.8%~1.4%之間;壓力為20 kPa時,傳感器的平均誤差在0.8%~1.7%之間。較大程度削減溫度和壓力對傳感器的影響,整體補償效果表現良好。
為證明本文研究方法對傳感器非線性變化溫度區間補償的優越性及整體補償效率,在25 kpa壓力下,對該傳感器依次采用全局常規RBF神經網絡、全局最小二乘法及本文方法進行對比實驗。溫度補償效果及所用時間如表3、表4所示。

表3 溫度補償效果對比

表4 溫度補償所耗時間
對比3種算法的補償效果可以發現,在非線性溫度區間內,使用最小二乘法進行溫度補償的誤差在2%~3%區間;使用常規RBF神經網絡進行溫度補償的誤差控制在1%范圍內;使用PSO優化的RBF神經網絡進行溫度補償誤差明顯小于1%,經過PSO優化后的RBF神經網絡對傳感器溫度補償效果明顯高,有效地抑制了傳感器溫漂帶來的測量誤差,提高了測量精度。
從補償時間上看,本文研究的方法,在吸收最小二乘法線性補償優勢基礎上加強了對非線性段的補償,提高了補償時間顯著優于全局常規RBF神經網絡,遜于全局最小二乘法。但綜合效率和補償精度來看,本文方法優于其他兩種方法。該方法特點在于利用計算機對算法處理具有較好的性能及充裕的資源,可推廣到此類傳感器的漂移補償問題。
(1)采用粒子群算法實現常規RBF神經網絡權值和闕值的優化,增強了神經網絡的泛化能力,避免了局部最優的發生。同時,網絡訓練速度、精度明顯提高,結果波動性和偶然性的發生得到控制。
(2)對比未進行溫度補償的實驗測量誤差,證明PSO優化RBF神經網絡溫度補償模型擬合效果更佳,能有效的控制溫度和壓力對傳感器的影響。
(3)在傳感器非線性變化溫度區間內,進行3種不同的溫度補償模型對比實驗,結果表明:應用本文研究的補償模型,傳感器對溫度變化的敏感程度大大降低,整體效果良好,補償效率增加,滿足課題項目對傳感器輸出數據的精度要求。
參考文獻:
[1] 陳韋名,曾喆昭,廖震中,等. 一種濕度傳感器溫度補償的非線性校正方法[J]. 傳感技術學報,2017,30(5):742-745.
[2] 楊遂軍,康國煉,葉樹亮. 基于最小二乘支持向量機的硅壓阻式傳感器溫度補償[J]. 傳感技術學報,2016,29(4):500-505.
[3] 王曉,楊祖安,彭碧輝. 改進型RBF神經網絡在磁致伸縮液位傳感器中的應用[J]. 自動化技術與應用,2015,34(12):5-8,33.
[4] Li Yuanjiang,Li Yuehua,Li Feng,et al. The Research of Temperature Compensation for Thermopile Sensor Based on Improved PSO-BP Algorithm[J]. Mathematical Problems in Engineering.2015.
[5] Hernandez A,Farah L E,Ramirez J. New Thermal Compensation Algorithm for Piezoresistive Pressure Sensors Based on the Linear Approximation by Segments[J]. Mathematical Problems in Engineering,2015,31(4)246-256.
[6] 宋瑞娟. 基于改進RBF神經網絡的傳感器溫度補償系統研究[J]. 機械強度,2016,38(6):1225-1228.
[7] 彭基偉,呂文華,行鴻彥,等. 基于改進GA-BP神經網絡的濕度傳感器的溫度補償[J]. 儀器儀表報,2013,34(1):153-160.
[8] 孫艷梅,苗鳳娟,陶佰睿. 基于PSO的BP神經網絡在壓力傳感器溫度補償中的應用[J]. 傳感技術學報,2014,27(3):342-346.
[9] 行鴻彥,彭基偉,呂文華,等. 一種濕度傳感器溫度補償的融合算法[J]. 傳感技術學報,2012,25(12):1711-1716.
[10] 孫艷梅. 壓阻式壓力傳感器溫度補償方法研究[D]. 齊齊哈爾:齊齊哈爾大學,2012.
[11] 張小俊,張明路,李小慧. 基于RBF神經網絡的電化學CO氣體傳感器的溫度補償[J]. 傳感技術學報,2009,22(1):11-14.
[12] 單亞峰,孫璐,付華,訾海. 基于小波包和RBF神經網絡的瓦斯傳感器故障診斷[J]. 傳感技術學報,2015,28(2):278-283.
[13] 張曉磊,王輝林. 壓阻式壓力傳感器的溫度補償算法研究[J]. 中國農機化學報,2015,36(5):234-236.
[14] 行鴻彥,鄒水平,徐偉,等. 基于PSO-BP神經網絡的濕度傳感器溫度補償[J]. 傳感技術學報,2015,28(6):864-869.
[15] 李強,周軻新. 基于PSO-BP算法的壓力傳感器溫度補償研究[J]. 電子學報,2015,43(2):412-416.
[16] 王慧,宋宇寧. 基于混合優化算法的壓力傳感器溫度補償[J]. 傳感技術學,2016,29(12):1864-1868.