李會(huì)兵
(西安機(jī)電信息技術(shù)研究所,西安,710065)
在引信的環(huán)境試驗(yàn)中,熱源的距離、溫度的傳輸介質(zhì)等因素對于引信的實(shí)際工作溫度影響很大,目前主要依靠人工經(jīng)驗(yàn)或者簡單的數(shù)據(jù)處理方式(線性關(guān)系)來判斷引信的實(shí)際工作溫度。溫度的測量精度不高,不能夠及時(shí)的反應(yīng)引信工作環(huán)境的實(shí)際溫度,測溫的延時(shí)較大,有可能會(huì)導(dǎo)致熱源溫度與引信的實(shí)際工作溫度誤差較大,使其長時(shí)間處于極限工作狀態(tài),增加了損壞概率,降低了產(chǎn)品的可靠性。因此,本文介紹一種基于BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測方法,對引信的實(shí)際工作溫度進(jìn)行預(yù)測。
傳統(tǒng)的溫度測試方法主要有:1)直接測試法,該方法響應(yīng)速度較慢,不能及時(shí)反映溫度的變化規(guī)律;2)基于試驗(yàn)數(shù)據(jù)和線性回歸的溫度預(yù)測方法,該方法需要大量的實(shí)驗(yàn)數(shù)據(jù)預(yù)先建立模型,數(shù)據(jù)的獲取存在較大困難,使該方法的應(yīng)用受到一定的限制。因此,本文提出了一種基于BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測方法。
傳統(tǒng)的環(huán)境溫度測試方法主要是通過微控制器采集溫度傳感器,通過內(nèi)部校準(zhǔn)程序?qū)鞲衅鞯闹颠M(jìn)行校準(zhǔn),最后通過顯示模塊進(jìn)行顯示。具體簡單模型如圖1所示。
圖1 傳統(tǒng)的溫度測試方法
傳統(tǒng)的測試方法中,數(shù)據(jù)處理模塊比較簡單,概括起來主要有兩種情況,(1)利用溫度的線性標(biāo)定來確定傳感器的輸出與溫度之間的關(guān)系,利用插值法求解溫度值,誤差較大,不能較好的反應(yīng)溫度瞬時(shí)變化的過程。(2)主要利用采用以前積累的若干數(shù)據(jù),利用線性回歸的進(jìn)行曲線擬合,得到若干條溫度曲線,能夠反應(yīng)溫度的變化率,但是靈活性較差,前期需要大量的數(shù)據(jù)積累,可推廣性不強(qiáng)。
BP(Back Propagation)網(wǎng) 絡(luò) 是 1986年 由 Rumelhart和McCelland為首的科學(xué)家小組提出,是一種按誤差逆?zhèn)鞑ニ惴ㄓ?xùn)練的多層前饋網(wǎng)絡(luò),是目前應(yīng)用最廣泛的神經(jīng)網(wǎng)絡(luò)模型之一。BP網(wǎng)絡(luò)能學(xué)習(xí)和存貯大量的輸入-輸出模式映射關(guān)系,而無需事前揭示描述這種映射關(guān)系的數(shù)學(xué)方程。它的學(xué)習(xí)規(guī)則是使用最速下降法,通過反向傳播來不斷調(diào)整網(wǎng)絡(luò)的權(quán)值和閾值,使網(wǎng)絡(luò)的誤差平方和最小。BP神經(jīng)網(wǎng)絡(luò)模型拓?fù)浣Y(jié)構(gòu)包括輸入層(input)、隱層(hide layer)和輸出層(output layer)。其典型的模型如圖2所示。
圖2 BP神經(jīng)網(wǎng)絡(luò)典型模型結(jié)構(gòu)圖
圖3 基于BP網(wǎng)絡(luò)的溫度預(yù)測模型
環(huán)境試驗(yàn)溫度測試原理的普通模型如圖2所示,該系統(tǒng)中溫度傳感器為熱敏電阻。
圖2 溫度測量模型
由圖2可知,該測量模型的輸入為瞬時(shí)溫升,輸出為傳感器的測量溫度。從溫度測試的角度出發(fā),溫度預(yù)測的關(guān)注點(diǎn)是測試溫度和熱源實(shí)際溫度之間的關(guān)系。因此,預(yù)測模型的輸出因子是傳感器的輸出溫度,輸入因子為:熱源溫度變化率dt、熱源與傳感器的距離l、散熱系數(shù)st、傳感器的熱特性f(t)。對于時(shí)變溫度控制系統(tǒng),因素?zé)嵩礈囟茸兓蔰t和傳感器的熱特性f(t)起主導(dǎo)作用。
于是傳感器的輸出溫度可以表示為:
對于溫度測量而言,由圖2可知,其溫度的變化由瞬時(shí)溫升引起的,可以忽略散熱系數(shù)的影響,因此,其測量溫度可以表示為:
(1)、(2)式中: f1、f2為非線性功能函數(shù)。
在輸入因子中,熱源溫度變化率dt必須實(shí)時(shí)測量,通常由溫控箱來模擬實(shí)現(xiàn);熱源與熱敏電阻的距離l可以直接測量,通常一次安裝結(jié)束,l為一常量;散熱系數(shù)st則需要由散熱介質(zhì)決定,一般為空氣,也可以看做定值;熱敏電阻熱特性f(t)由傳感器特性標(biāo)定得出。
本系統(tǒng)采用BP神經(jīng)網(wǎng)絡(luò)建立溫度預(yù)測模型。輸入層節(jié)點(diǎn)數(shù)m=3,輸出層節(jié)點(diǎn)數(shù)n=1。隱含層采用試湊法確定為20。隱層、輸出層神經(jīng)元的轉(zhuǎn)移函數(shù)選用sigmoid函數(shù)。網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
BP網(wǎng)絡(luò)算法分為兩部分:一是信號的正向傳播過程,即訓(xùn)練信號由神經(jīng)網(wǎng)絡(luò)的輸入層經(jīng)隱層處理后傳向輸出層,其間每一層神經(jīng)元的狀態(tài)只影響下一層的神經(jīng)元的狀態(tài);二是誤差(E(t))的反向傳播過程,即采用梯度下降的最小方差學(xué)習(xí)方式,將誤差反向傳播,不斷調(diào)節(jié)網(wǎng)絡(luò)中神經(jīng)元之間的連接權(quán)重,使誤差最終達(dá)到最小。但當(dāng)梯度下降的最快方向與誤差曲面最小點(diǎn)方向偏離較大時(shí),參數(shù)到達(dá)最小點(diǎn)的路徑將加長,以致網(wǎng)絡(luò)學(xué)習(xí)效率低,速度慢。為克服這種不足,本文采用自適應(yīng)學(xué)習(xí)速率(η(t))調(diào)整法。其調(diào)整公式如下:
根據(jù)輸入輸出的設(shè)計(jì)和BP神經(jīng)網(wǎng)絡(luò)的設(shè)計(jì),本文建立一種基于BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測模型,如圖4所示。
圖4 基于BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測模型
在本溫度預(yù)測模型中,利用BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測算法替代了傳統(tǒng)的數(shù)據(jù)處理模塊,利用神經(jīng)網(wǎng)絡(luò)中的自適應(yīng)學(xué)習(xí)的方法對溫度傳感器進(jìn)行預(yù)測,與直接測試法相比,有明顯的優(yōu)勢。
由于引信的形狀、大小、材料等不同,為了簡化描述方法,本文以汽車輪轂剎車過程中溫度的變化為例,利用MALAB進(jìn)行仿真試驗(yàn),驗(yàn)證本方法的有效性。
利用傳統(tǒng)的直接測試法,在模擬環(huán)境中進(jìn)行溫度數(shù)據(jù)采集,以獲得的試驗(yàn)數(shù)據(jù)為基礎(chǔ),在MTLAB中仿真,對BP神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練。
通過實(shí)驗(yàn),分別在溫度變化率為25、35和50三種情況下,安裝距離為10mm,獲取了部分?jǐn)?shù)據(jù),如表1、表2、表3所示。
表1 溫度變化率為△t/s =25°
表2 溫度變化率為△t/s =35°
表3 溫度變化率為△t/s =50°
由表1、2、3中可以看出,利用直接測試方法,當(dāng)溫度的瞬間變化率較大時(shí),溫度測試值與實(shí)際溫度存在明顯的滯后,相對誤差高達(dá)51%。
將上述的試驗(yàn)數(shù)據(jù)用于BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練與檢驗(yàn)。在表1、2、3中各選一組數(shù)據(jù)作為檢驗(yàn)樣本,如表4所示,其他為訓(xùn)練樣本。
表4 檢驗(yàn)樣本
在MTLAB中,通過軟件編程,設(shè)置神經(jīng)網(wǎng)絡(luò)的訓(xùn)練次數(shù)為2000次,訓(xùn)練精度為10-3,隱含層的節(jié)點(diǎn)為20。
訓(xùn)練誤差如圖5中所示,訓(xùn)練誤差最大的地方出現(xiàn)在溫度變化率發(fā)生變化,同一溫度變化率時(shí),訓(xùn)練誤差趨近于零。預(yù)測輸出如圖6所示,通過訓(xùn)練樣本對BP神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,利用測試樣本得到其溫度預(yù)測結(jié)果。將BP神經(jīng)網(wǎng)絡(luò)溫度預(yù)測方法與直接測試法進(jìn)行比較,結(jié)果如表5所示。
圖5 BP網(wǎng)絡(luò)訓(xùn)練誤差
圖6 BP網(wǎng)絡(luò)預(yù)測輸出
表5 預(yù)測結(jié)果誤差分析表
由表5可見,BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測方法,系統(tǒng)的預(yù)測精度小于3.2%,比傳統(tǒng)測量方法的測量精度有明顯的提升,同時(shí)測溫的延時(shí)有了明顯的改善。
本文提出了基于BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測方法。該方法通過測量瞬時(shí)溫度變化率,利用BP神經(jīng)網(wǎng)絡(luò)的溫度預(yù)測模型,對溫度進(jìn)行預(yù)測。在MATLAB中仿真表明,該方法在訓(xùn)練2000次后即達(dá)到設(shè)定精度,溫度預(yù)測精度小于3.2%,驗(yàn)證了該方法的有效性。為了進(jìn)一步提高溫度預(yù)測精度,下一步將增加數(shù)據(jù)量,對BP神經(jīng)網(wǎng)絡(luò)的訓(xùn)練算法進(jìn)行深入研究。
[1]周永乾.基于單片機(jī)的汽車剎車片實(shí)時(shí)溫控系統(tǒng)[J].科技咨詢.2008(18):98-99.
[2]陳飛等.長大下坡路段重型車輛剎車轂溫度預(yù)測模型研究[J].
[3]李華成等.交通沖突量的BP神經(jīng)網(wǎng)絡(luò)預(yù)測方法[J].交通與計(jì)算機(jī).2006.24(6):71-72.