胡啟陽,龍 軍,陳 君
(北京控制工程研究所,北京 100190)
?
基于LS-SVR的壓力傳感器溫度自補(bǔ)償策略*
胡啟陽,龍 軍,陳 君*
(北京控制工程研究所,北京 100190)
硅壓阻式壓力傳感器在實(shí)際使用過程中受環(huán)境溫度影響易發(fā)生溫度漂移,同時(shí)傳感器本身又存在一定的非線性,這使得傳感器測量精度大幅度降低。針對(duì)傳統(tǒng)的溫度補(bǔ)償方法中需引入溫度傳感器的情況,提出一種基于最小二乘支持向量回歸(LS-SVR)的壓力傳感器溫度自補(bǔ)償策略,通過定義并測量傳感器橋路自身參數(shù)獲取溫度信息實(shí)現(xiàn)溫度補(bǔ)償,而無需配置額外的溫度傳感器。通過粒子群算法和交叉驗(yàn)證對(duì)LS-SVR的參數(shù)進(jìn)行了優(yōu)化。實(shí)驗(yàn)結(jié)果表明:這種利用傳感器自身橋路進(jìn)行溫度補(bǔ)償?shù)姆椒軌蛴行У叵龎毫鞲衅鞯臏囟绕?。補(bǔ)償后測量精度達(dá)到0.1%FS。
壓力傳感器;溫度補(bǔ)償;最小二乘支持向量回歸;粒子群優(yōu)化;K-折交叉驗(yàn)證
硅壓阻式壓力傳感器利用組成惠斯通電橋的4個(gè)半導(dǎo)體等值電阻在受到壓力時(shí)阻值會(huì)發(fā)生變化,從而打破電橋平衡,產(chǎn)生電壓輸出。由于半導(dǎo)體材料本身對(duì)環(huán)境溫度非常敏感,在壓力不變的情況下,傳感器的輸出會(huì)隨著溫度的變化產(chǎn)生漂移,使傳感器精度大大降低。因此,必須采取有效措施,補(bǔ)償傳感器由于溫度影響造成的誤差,從而提高傳感器的測量精度。
通常采用的補(bǔ)償方法有硬件補(bǔ)償法和軟件補(bǔ)償法。硬件補(bǔ)償法指采用硬件電路進(jìn)行補(bǔ)償,存在調(diào)試?yán)щy,精度低,通用性差等缺點(diǎn),不利于工程應(yīng)用。軟件補(bǔ)償方法則是通過數(shù)學(xué)算法來構(gòu)建測量模型,具有補(bǔ)償精度高,通用性強(qiáng)的特點(diǎn)。常用的軟件補(bǔ)償方法包括查表法,插值法,神經(jīng)網(wǎng)絡(luò)等。查表法和插值法對(duì)數(shù)據(jù)點(diǎn)數(shù)隨著精度的要求急劇增加,而神經(jīng)網(wǎng)絡(luò)算法存在訓(xùn)練速度慢,容易陷入局部最小點(diǎn),泛化能力差的局限性[1-2]。
支持向量機(jī)[3]SVM(Support Vector Machines)是一種基于結(jié)構(gòu)風(fēng)險(xiǎn)最小化準(zhǔn)則的機(jī)器學(xué)習(xí)方法。其中,被用于函數(shù)回歸的SVM常被稱為支持向量回歸SVR(Support Vector Regression)。和其他回歸算法相比,SVR能夠較好地解決小樣本,非線性,過擬合等實(shí)際應(yīng)用問題。最小二乘支持向量回歸[4](LS-SVR)在支持向量回歸的基礎(chǔ)上,將不等式約束轉(zhuǎn)化為等式約束,用解線性方程組的方法代替求解二次規(guī)劃問題,在保持SVR優(yōu)點(diǎn)的同時(shí)大大提高了計(jì)算速度[5-6]。
本文采用基于粒子群算法參數(shù)優(yōu)化的LS-SVR進(jìn)行溫度補(bǔ)償,同時(shí)從壓力傳感器元件本身獲取溫度信息。該方法無需布置額外的溫度傳感器進(jìn)行測溫,在結(jié)構(gòu)上更為簡單,同時(shí)克服了傳感器之間存在的溫度差問題,能有效提高傳感器的測量精度。
對(duì)于給定訓(xùn)練數(shù)據(jù)集(xi,yi)(i=1,2,…,l),LS-SVR的基本原理是通過非線性映射將輸入數(shù)據(jù)映射到高維空間,并在此空間中構(gòu)造如下的估計(jì)模型
y(x)=?Tφ(x)+b
(1)
式中:φ(·)為非線性變換,?為對(duì)應(yīng)的權(quán)向量,b為偏移量。
依據(jù)結(jié)構(gòu)風(fēng)險(xiǎn)最小化原則,需求解如下優(yōu)化問題
(2)
式中:γ是正則化因子,ei是訓(xùn)練誤差。
為求解上述優(yōu)化問題,引入拉格朗日乘子λi,構(gòu)造如下拉格朗日函數(shù):
(3)
根據(jù)庫恩—塔克爾KKT(Karush-Kuhn-Tucker)條件,令L對(duì)各項(xiàng)偏導(dǎo)數(shù)為0,得
(4)
消去變量?,e則轉(zhuǎn)化為如下方程
(5)
式中:I是單位陣;Θ=[1,…,1]T,Ω中的元素Ωij=φ(xi)T(xj)
通過求解式(5)可得LS-SVR的回歸函數(shù)
(6)
式中:核函數(shù)K(xi,x)=φ(xi)Tφ(x)為滿足mercer條件的核函數(shù)。常用的核函數(shù)有多項(xiàng)式核函數(shù),線性核函數(shù)和徑向基核函數(shù)等。本文選擇靈活性強(qiáng),使用范圍廣,回歸精度較高的徑向基核函數(shù),其表達(dá)式為
K(x,xi)=exp(-‖x-xi‖2/2σ2)
(7)
式中:σ為徑向基寬度。
由LS-SVR模型可知,正則化參數(shù)γ決定了訓(xùn)練誤差的大小和泛化能力的強(qiáng)弱;徑向基寬度σ反映了訓(xùn)練樣本數(shù)據(jù)在高維特征空間分布的復(fù)雜程度。這兩個(gè)參數(shù)的選取直接影響模型的性能,因此有必要通過優(yōu)化來選取最佳的參數(shù)組合。常用的參數(shù)優(yōu)化方法包括網(wǎng)格搜索法、梯度法、遺傳算法以及粒子群優(yōu)化等[7-9]。
(8)
式中:w為慣性權(quán)重;r1,r2是[0,1]上的隨機(jī)數(shù);c1,c2是學(xué)習(xí)因子;t為迭代次數(shù)。為使模型在前期具有較強(qiáng)的全局搜索能力,而后期具有較強(qiáng)的局部搜索能力,w按式(9)的線性遞減方式進(jìn)行計(jì)算。
(9)
式中:wmax,wmin為預(yù)設(shè)的慣性權(quán)重最大值和最小值;Tmax為最大迭代次數(shù)。
交叉驗(yàn)證CV(Cross Validate)是一種消除取樣隨機(jī)性所帶來的訓(xùn)練偏差的統(tǒng)計(jì)方法[11]。k折交叉驗(yàn)證是其中的常用方法。它將訓(xùn)練數(shù)據(jù)隨機(jī)分為k個(gè)子集,以任一子集作為驗(yàn)證集,其余k-1個(gè)子集作為訓(xùn)練集進(jìn)行建模,得到模型的均方誤差。這樣循環(huán)k次,直到k個(gè)子集都作為驗(yàn)證集被預(yù)測一次。最后將k次預(yù)測所得均方根誤差的平均值作為最終的適應(yīng)度值。本文在粒子群參數(shù)優(yōu)化算法中采用五折交叉驗(yàn)證法對(duì)參數(shù)組合進(jìn)行評(píng)價(jià),其適應(yīng)度函數(shù)如式(10)所示:
(10)
應(yīng)用粒子群算法和交叉驗(yàn)證進(jìn)行LS-SVR參數(shù)優(yōu)化具體步驟如下:①初始化參數(shù),即設(shè)定參數(shù)γ和σ的選擇范圍,慣性權(quán)重、學(xué)習(xí)因子、種群規(guī)模和迭代次數(shù)的值。②對(duì)每一粒子所對(duì)應(yīng)的參數(shù)組合(γ,σ),應(yīng)用LS-SVR進(jìn)行建模,并按照式(10)進(jìn)行適應(yīng)度的計(jì)算。③按式(17)、式(18)對(duì)粒子的速度和位置進(jìn)行更新,生成新一代種群。每迭代一次,需要對(duì)粒子的個(gè)體最優(yōu)值和全局最優(yōu)值進(jìn)行重新定位,直到達(dá)到迭代次數(shù)。最后得到的使適應(yīng)度最小的參數(shù)組合即為最優(yōu)值[12]。
3.1 補(bǔ)償原理
由于傳感器的測量值由壓力和溫度共同決定,因此在溫度補(bǔ)償?shù)倪^程中,必須提取反應(yīng)溫度變化的參量。常用的方法是通過外加一個(gè)溫度傳感器進(jìn)行溫度的測量。由于溫度傳感器的測量值與壓力膜片實(shí)際溫度之間存在誤差,會(huì)給溫度補(bǔ)償精度帶來很大的影響。本文提出一種直接從壓力傳感器橋路元件本身來提取溫度變化參量的方法,從而實(shí)現(xiàn)溫度的自補(bǔ)償,從而進(jìn)一步提高壓力傳感器的測量精度。
硅壓阻式壓力傳感器測量電路如圖1所示[13]。
圖1 壓力傳感器測量橋路原理
其輸出電壓可表示為
(11)
在實(shí)際測量過程中,4個(gè)橋臂電阻的阻值不僅隨著壓力的變化而變化,還會(huì)隨著溫度的變化而變化。假設(shè)4個(gè)橋臂電阻初始阻值,溫度系數(shù)和壓阻系數(shù)一致,當(dāng)溫度,壓力發(fā)生變化時(shí),各電阻的阻值如下[14]:
(12)
式中:RO為0 ℃時(shí)候的電阻值,ΔRp為受壓力影響的變化量,ΔRt為受溫度影響的變化量。
測量橋路的并聯(lián)總電阻RA為(R1+R2)//(R3+R4),有
(13)
將式(12)代入式(13),得RA=RO+ΔRT,這是一個(gè)僅與溫度有關(guān)的值,不受壓力的影響。因此可以將RA作為主要反映溫度變化的參量。其值可由式(4)計(jì)算得到:
RA=Vs/I
(14)
式中:I為橋路電流。
同時(shí)定義
RB=Vo/I
(15)
將式(13)、式(14)代入式(15),易得
(16)
由于R1、R2、R3、R4均會(huì)受到壓力P和溫度T的影響,是溫度和壓力的二元函數(shù),因此RA和RB也可以表示為P,T的二元函數(shù)形式
(17)
消去變量T,則可將待測壓力P表示為RA和RB的二次函數(shù)形式,即
P=f(RA,RB)
(18)
圖2 溫度補(bǔ)償原理圖
為了獲得橋路電流I,本文在電路中引入高精密低溫漂參考電阻RREF(精度0.05%,溫漂5 ppm),其測量原理圖如圖2所示,橋路電流I可表示為I=VREF/RREF。RA和RB可由式(19)進(jìn)行計(jì)算:
(19)
3.2 模型建立
以電阻值RA,RB作為輸入,對(duì)應(yīng)的壓力值作為輸出,建立基于LS-SVR的壓力傳感器溫度自補(bǔ)償模型。模型結(jié)構(gòu)如圖3所示。
3.3 樣本獲取
選用某型0~2.0 MPa硅壓阻式壓力傳感器作為檢測元件,其工作范圍為-10 ℃~50 ℃。傳感器橋臂電阻為R=2.8 kΩ,精密參考電阻取值為2.2 kΩ。
為覆蓋被測元件的工作溫度范圍,實(shí)驗(yàn)中在-15 ℃~55 ℃范圍內(nèi)選取13個(gè)溫度點(diǎn),每個(gè)溫度點(diǎn)上選擇15個(gè)壓力點(diǎn),測量195組數(shù)據(jù)點(diǎn)對(duì)應(yīng)的RA和RB值,如表1所示(表中數(shù)據(jù)為經(jīng)保留小數(shù)點(diǎn)后兩位的結(jié)果)。
表1 傳感器標(biāo)定數(shù)據(jù)
3.4 實(shí)驗(yàn)過程和結(jié)果
將壓力標(biāo)定值為0.12 MPa、0.16 MPa、0.2 MPa、0.6 MPa、1.0 MPa、1.4 MPa、1.8 MPa和2.0 MPa所對(duì)應(yīng)的104組數(shù)據(jù)作為測試集,其余91組數(shù)據(jù)樣本作為驗(yàn)證集。首先利用測試集的數(shù)據(jù),按照本文第3節(jié)中的方法進(jìn)行參數(shù)優(yōu)化。參數(shù)設(shè)定為:wmax=0.95,wmin=0.4,種群規(guī)模m=50,最大迭代次數(shù)Tmax=300,學(xué)習(xí)因子c1=c2=2。優(yōu)化過程如圖4所示。
圖4 粒子群優(yōu)化曲線
由圖4可以看出,優(yōu)化過程在50步以內(nèi)即可達(dá)到收斂。利用優(yōu)化后的參數(shù)重新建立LS-SVR溫度補(bǔ)償模型,并利用驗(yàn)證集的數(shù)據(jù)進(jìn)行預(yù)測,預(yù)測結(jié)果作為溫度補(bǔ)償后的壓力值。限于篇幅,選擇壓力傳感器工作范圍內(nèi)的6個(gè)溫度點(diǎn)-10 ℃、0 ℃、15 ℃、25 ℃、40 ℃和50 ℃分別作出進(jìn)行溫度補(bǔ)償前后的壓力真實(shí)值與測量值(預(yù)測值)曲線如圖5所示。
圖5 補(bǔ)償前后不同溫度下測量曲線對(duì)比圖
由圖5可知,在進(jìn)行溫度補(bǔ)償之前,隨著溫度的升高,同一壓力下的測量值在降低,因此壓力傳感器中存在明顯的溫度漂移,且漂移量隨著待測壓力的增加而升高,滿量程誤差達(dá)到了7.5%通過LS-SVR模型進(jìn)行溫度補(bǔ)償后的各溫度下測量曲線一致性較好,測量誤差在0.1%以內(nèi)。
兩幅圖的對(duì)比結(jié)果表明,采用測量參數(shù)RA和RB并用LS-SVR的方法建立的溫度補(bǔ)償模型能夠有效地消除溫度對(duì)傳感器測量的影響,補(bǔ)償后的精度提高到了0.1%以內(nèi),取得了良好的補(bǔ)償效果。
本文針對(duì)硅壓阻式壓力傳感器存在的溫度漂移問題,利用壓力傳感器敏感橋路本身對(duì)溫度和壓力敏感的特點(diǎn),采用LS-SVR建立了其與被測壓力之間的測量模型,采用粒子群算法和交叉驗(yàn)證方法對(duì)模型參數(shù)進(jìn)行優(yōu)化。最終獲得的壓力測量模型極大地消除了溫度對(duì)壓力測量的影響,將壓力測量精度提高到0.1%以內(nèi),同時(shí)由于避免設(shè)置額外的的溫度傳感器獲得溫度信息,因此該方法還具有很強(qiáng)的工程實(shí)用價(jià)值。
[1] 楊雪,劉詩斌. 壓力傳感器溫度補(bǔ)償各種算法的比較分析[J]. 電子設(shè)計(jì)工程,2013,21(10):90-96.
[2] 楊遂軍,康國煉,葉樹亮. 基于最小二乘支持向量機(jī)的硅壓阻式傳感器溫度補(bǔ)償[J]. 傳感技術(shù)學(xué)報(bào),2016,29(4):500-505.
[3] Vapnic V. Statistical Learning Theory[M]. New York:John Wiley,1998.
[4] Suykens J A K,Vandewalle J. Least Squares Support Vector Machine Classifiers[J]. Neural Processing Letters,1999,9(3):293-300.
[5] Wang H F,Hu D J. Comparison of SVM and LS-SVM for Regression[C]//Processing of 2005 International Conference on Neural Networks and Brain. Beijing,China:IEEE,2005:279-283.
[6] 閻威武,邵惠鶴. 支持向量機(jī)和最小二乘支持向量機(jī)的比較及應(yīng)用研究[J]. 控制與決策,2008,18(3):358-360.
[7] 陳偉根,騰黎,劉軍,等. 基于遺傳優(yōu)化支持向量機(jī)的變壓器繞組熱點(diǎn)溫度預(yù)測模型[J]. 電工技術(shù)學(xué)報(bào),2014,29(1):44-51.
[8] 劉昌平,范明鈺,王光衛(wèi),等. 基于梯度算法的支持向量機(jī)參數(shù)優(yōu)化方法[J]. 控制與決策,2008,23(11):1291-1295.
[9] 韓曉慧,杜松懷,蘇娟,等. 基于參數(shù)優(yōu)化的最小二乘支持向量機(jī)觸電電流檢測方法[J]. 農(nóng)機(jī)工程學(xué)報(bào),2014,30(23):238-245.
[10] 張朝龍,紅巨浪,李彥梅,等. 基于云粒子群—最小二乘支持向量機(jī)的傳感器溫度補(bǔ)償[J]. 傳感技術(shù)學(xué)報(bào),2012,25(4):472-477.
[11] 紀(jì)昌明,周婷,向騰非,等. 基于網(wǎng)格搜索和交叉驗(yàn)證的支持向量機(jī)在梯級(jí)水電系統(tǒng)隱隨機(jī)調(diào)度中的應(yīng)用[J]. 電力自動(dòng)化設(shè)備,2014,34(3):125-131.
[12] 段其昌,周華鑫,曾勇,等. 帶擴(kuò)展記憶的粒子群優(yōu)化最小二乘支持向量機(jī)在中長期電力負(fù)荷預(yù)測中的應(yīng)用[J]. 計(jì)算機(jī)科學(xué),2013,40(6):41-43.
[13] 龍軍,關(guān)威,汪旭東,等. 基于嶺回歸的壓力傳感器高精度測量模型研究[J]. 傳感技術(shù)學(xué)報(bào),2017,30(3):391-396.
[14] 姚敏,趙敏,邢力. 基于小波神經(jīng)網(wǎng)絡(luò)的壓力傳感器溫度補(bǔ)償方法[J]. 傳感器技術(shù),2005,24(7):13-15.
胡啟陽(1991-),男,碩士,2016年畢業(yè)于北京控制工程研究所,主要研究方向?yàn)閭鞲衅骷夹g(shù),674700313@qq.com;
龍 軍(1985-),男,博士,2013年畢業(yè)于浙江大學(xué),主要研究方向?yàn)閭鞲衅骷夹g(shù),18613889712@163.com;
陳 君(1978-),男,碩士,2004年畢業(yè)于西北工業(yè)大學(xué),主要研究方向?yàn)閭鞲衅骷夹g(shù),航天器推進(jìn)技術(shù),sportcj@163.com。
Temperature Self-Compensation Strategy forPressure Sensor Based on LS-SVR*
HU Qiyang,LONG Jun,CHEN Jun*
(Beijing Institute of Control Engineering,Beijing 100190,China)
Temperature drift exists in Silicon piezo-resistive pressure sensor as the result of its susceptibility to temperature,which decreases the measurement precision of the sensor. Aiming at the problem that a temperature sensor is needed in traditional temperature compensation method,a temperature self-compensation strategy for pressure sensor based on LS-SVR is proposed,which acquires temperature information by definition and measurement of parameters in the measurement bridge of sensor. PSO algorithm and Cross Validate are applied to optimize the parameters of LS-SVR. The experimental results show that this method can eliminate the temperature drift effectively without an additional temperature sensor. The measurement accuracy can be improved to 0.1%FS.
pressure sensor;temperature compensation;LS-SVR;PSO;K-fold CV
項(xiàng)目來源:十二五民用航天項(xiàng)目(E020415)
2016-09-07 修改日期:2017-03-17
TP212
A
1004-1699(2017)07-1057-05
C:7230
10.3969/j.issn.1004-1699.2017.07.015