RBF神經(jīng)網(wǎng)絡(luò)在智能傳感器模塊設(shè)計(jì)中的應(yīng)用
RBF神經(jīng)網(wǎng)絡(luò)Matlab源程序
RBF神經(jīng)網(wǎng)絡(luò)Matlab源程序如下:
clc
clear
close all %程序開始前,清屏,清除其它變量
%輸入原始數(shù)據(jù),每一列為一個(gè)變量,行數(shù)為樣本的個(gè)數(shù)。原始標(biāo)定數(shù)據(jù)的輸入,可以將數(shù)據(jù)直接輸入至程序中,也可以將數(shù)據(jù)先輸入至文件,然后在程序中讀入數(shù)據(jù)文件。數(shù)據(jù)中的P、Ut、Ui、Up均為維列向量, 為標(biāo)定數(shù)據(jù)點(diǎn)的個(gè)數(shù)
raw_data=[P Ut Ui Up]; %學(xué)習(xí)(訓(xùn)練)樣本
data_test=[P_test Ut_test Ui_test Up_test]; %測(cè)試樣本
%根據(jù)原始數(shù)據(jù)制作學(xué)習(xí)(訓(xùn)練)樣本與測(cè)試樣本,學(xué)習(xí)樣本與測(cè)試樣本的數(shù)據(jù)格式相同
P=raw_data(: , 1); Ui=raw_data(: , 2); Ut=raw_data(: , 3); Up=raw_data(: , 4);
P_test=data_test(: , 1); Ui=data_test(: , 2); Ut=data_test(: , 3); Up=data_test(: , 4);
P1= ; [Up Ui Ut] %學(xué)習(xí)樣本輸入
T1= ; P' %學(xué)習(xí)樣本期望輸出
P2= ;[Up_test Ui _test Ut_t est]' %測(cè)試樣本輸入
T2=P_test' ; %測(cè)試樣本輸出
%將輸入數(shù)據(jù)進(jìn)行歸一化
[PN1,Minp,maxp,TN1,mint,maxt]=premnmx(P1,T1);
PN2=tramnmx(P2,minp,maxp);
TN2=tramnmx(T2,mint,maxt);
%訓(xùn)練
switch 2
case 1 %神經(jīng)元數(shù)是訓(xùn)練樣本個(gè)數(shù)
spread=0.1; %此值越大,覆蓋的函數(shù)數(shù)值就越大(默認(rèn)為1)
net=newrbe(PN1,TN1,spread);
case 2 %神經(jīng)元數(shù)逐步增加,最多就是訓(xùn)練樣本個(gè)數(shù)
goal=1e-8; %訓(xùn)練誤差的平方和(默認(rèn)為0)
spread=0.1; %此值越大,需要的神經(jīng)元就越少(默認(rèn)為1)
MN=size(PN1,2); %最大神經(jīng)元數(shù)(默認(rèn)為訓(xùn)練樣本個(gè)數(shù))
DF=2; %顯示間隔(默認(rèn)為25)
net=newrb(PN1,TN1,goal,spread,MN,DF);
case 3
spread=0.1; %此值越大,需要的神經(jīng)元就越少(默認(rèn)為1)
net=newgrnn(PN1,TN1,spread);
end
%測(cè)試
YN1=sim(net,PN1); %學(xué)習(xí)(訓(xùn)練)樣本實(shí)際輸出
YN2=sim(net,PN2); %測(cè)試樣本實(shí)際輸出
MSE1=mean((TN1-YN1).ˆ2 %學(xué)習(xí)(訓(xùn)練)樣本實(shí)際輸出的均方誤差
%n1=length(TN1);%e1=sum((TN1-YN1).ˆ2/n1
%e1與MSE1相等
MSETD1=std((TN1-YN1).ˆ2
MSE2=mean((TN2-YN2).ˆ2 %測(cè)試樣本實(shí)際輸出均方誤差
%n2=length(TN2);%e2=sum((TN2-YN2).ˆ2/n2
%e2與MSE2相等
MSETD2=std((TN2-YN2).ˆ2
%反歸一化
Y1=postmnmx (YN1,mint,maxt)' %將歸一化的學(xué)習(xí)(訓(xùn)練)輸出數(shù)據(jù)恢復(fù)為原始數(shù)據(jù)
E1=Y1-P %學(xué)習(xí)(訓(xùn)練)輸出數(shù)據(jù)與標(biāo)定值之間的偏差
Y2=postmnmx (YN2,mint,maxt)' %將歸一化的測(cè)試輸出數(shù)據(jù)恢復(fù)為原始數(shù)據(jù)
E2=Y2-P_test %測(cè)試輸出數(shù)據(jù)與標(biāo)定值之間的偏差
max(E2)
min(E2)
采用經(jīng)過數(shù)據(jù)歸一化處理的程序
神經(jīng)網(wǎng)絡(luò)采用Matlab中的newrb()函數(shù),neurons=252。學(xué)習(xí)樣本經(jīng)RBF神經(jīng)網(wǎng)絡(luò)訓(xùn)練后的輸出值與相應(yīng)的壓力標(biāo)定值之間的最大誤差絕對(duì)值為1.0396e-011,均方誤差MSE1=5.6613e-023,均方誤差的標(biāo)準(zhǔn)差MSETD1=2.4666e-022。這里省略學(xué)習(xí)樣本的預(yù)測(cè)輸出表??梢姡捎肦BF神經(jīng)網(wǎng)絡(luò)對(duì)學(xué)習(xí)樣本的輸出已經(jīng)消除了壓力傳感器的交叉敏感影響(在誤差允許的范圍內(nèi))。
檢驗(yàn)樣本經(jīng)RBF神經(jīng)網(wǎng)絡(luò)的輸出值與相應(yīng)的壓力標(biāo)定值之間最大偏差絕對(duì)值為max=0.0113,均方誤差MSE2=3.8568e-005,均方誤差的標(biāo)準(zhǔn)差MSETD2=2.1727e-004。輸出樣本的詳細(xì)情況見表5(只列出部分?jǐn)?shù)據(jù))。
數(shù)據(jù)融合效果評(píng)價(jià)
降低溫度與電源波動(dòng)兩個(gè)干擾量的影響,傳感器系統(tǒng)穩(wěn)定性的改善程度分別用融合前后的零位、靈敏度溫度系數(shù)以及電流影響系數(shù)來評(píng)價(jià)。
由于學(xué)習(xí)(訓(xùn)練)樣本的網(wǎng)絡(luò)輸出值與標(biāo)定值之間的偏差很?。ň∮?.0e-011),如果根據(jù)這些數(shù)據(jù)來計(jì)算融合后的效果,可以認(rèn)為已經(jīng)完全消除交叉敏感。通過表5可知,本例中檢驗(yàn)樣本的網(wǎng)絡(luò)輸出值與標(biāo)定值之間的偏差與學(xué)習(xí)樣本的偏差相比,偏差較大,故按檢驗(yàn)樣本計(jì)算出數(shù)值來評(píng)價(jià)數(shù)據(jù)融合效果。
表5 輸出樣本
注:表中T表示工作溫度,I表示工作電流,P表示壓力標(biāo)定值,表示壓力計(jì)算值,偏差,單位都是V。
融合前:滿量程輸出值UFS=4.928V,當(dāng)溫度的變化范圍為=39℃(由25℃至64℃),電流由6mA至11mA,變動(dòng)時(shí),零點(diǎn)值的最大變化范圍=0.356V(由0.328V至-0.028V),滿量程輸出值由4.928V下降到2.710V,輸出變化范圍=-2.218V。
(1)零位溫度系數(shù)
(2)靈敏度溫度系數(shù)
(3)電流影響系數(shù)
利用檢驗(yàn)樣本計(jì)算的融合后的零位溫度系數(shù)、靈敏度溫度系數(shù)以及電流影響系數(shù)如下:
在=39℃,變化范圍內(nèi),零點(diǎn)融合計(jì)算值的最大偏差 =0.0113MPa;滿量程壓力PFS=0.5MPa,其融合計(jì)算值的最大偏差量=0.0007MPa,則有
將融合前和RBF神經(jīng)網(wǎng)絡(luò)融合后的各參數(shù)列于表6中。
表6 融合前和RBF神經(jīng)網(wǎng)絡(luò)融合后的各參數(shù)
從表6可見,經(jīng)RBF神經(jīng)網(wǎng)絡(luò)融合后,零位溫度系數(shù)降低到融合前的1/3,靈敏度溫度系數(shù)降低約3個(gè)數(shù)量級(jí),電流影響系數(shù)降低約2個(gè)數(shù)量級(jí)
結(jié)束語
由于半導(dǎo)體的特性參數(shù)易受溫度、電流的影響而變化,壓阻式傳感器將會(huì)產(chǎn)生很大的零位溫度漂移、靈敏度溫度漂移和電流影響漂移,這是壓阻式傳感器最大的弱點(diǎn)。因此,研究改善壓阻式壓力傳感器的溫度穩(wěn)定性與恒流源供電電流的穩(wěn)定性,在生產(chǎn)實(shí)踐中很有意義。采用RBF神經(jīng)網(wǎng)絡(luò)法,設(shè)計(jì)了抗兩個(gè)干擾量影響的智能化軟件模塊,對(duì)壓阻式壓力傳感器穩(wěn)定性進(jìn)行改善,取得了很好的效果。該方法簡(jiǎn)單易行,精度較高,將壓阻式壓力傳感器輸出精度控制在0.01%以內(nèi)。
半導(dǎo)體制冷相關(guān)文章:半導(dǎo)體制冷原理
評(píng)論