郭慧斌 鄭賓
【摘要】本文章基于CS-3LAS-03加速度計,提出了利用BP神經網絡來進行加速度計溫度補償,并在MATLAB環境下建立了基于BP神經網絡的溫度補償模型,首先介紹了加速度和溫度的采集系統的設計,然后對采集到的加速度值進行溫度補償,經過對實驗數據的融合處理表明,該方法可極大的減小溫度漂移,具有廣泛的應用前景。
【關鍵詞】加速度計;溫度補償;BP神經網絡;MATLAB
1.引言
在測試領域,加速度計的應用非常廣泛,加速度計的精度對測試具有很重要的作用。而溫度是影響加速度計測量精度的重要干擾因素,如何準確分析環境溫度的影響規律,提出高效的溫度補償方法,對提高加速度計的測量精度有著重大的現實意義。
傳統的溫度補償方法盡管已經十分成熟,但在實際應用中總不可避免的存在著弊端。這些方法一般需要有確定的被補償傳感器的精確數學模型,這個要求對于加速度計來說,很難做到。而BP神經網絡具有良好的自適應性,自組織性和很強的學習能力[1]。從理論上說,人們無需事先知道傳感器的數學模型,只需知道其對應的輸入和輸出數據,就能通過對神經網絡的訓練和神經網絡的自我學習掌握傳感器系統的數學模型和輸入輸出關系[2]。這就為我們設計一種基于BP神經網絡的加速度計溫度補償模型奠定了基礎。
2.系統設計
加速度計的溫度補償,需要系統能夠采集到加速度計的輸出值以及對應的溫度值,并且將這些數據實時的記錄。所以基于這些要求,設計了一個加速度和溫度采集系統。
CS-3LAS-03中星測控公司推出的一款三軸加速度計,該傳感器為模擬輸出,其量程為-100g~+100g。本設計以CS-3LAS-03為核心傳感器,采用ALTERA公司的EP2C8Q208C8N作為控制芯片、AD公司的AD7606為數據采集單元,SHT15作為溫度傳感器,SAMSUNG公司的K9HCG08U1M作為FLASH存儲單元。EP2C8Q208C8N控制AD7606[3]采集CS-3LAS-03加速度計三個軸的輸出電壓值,并且讀取SHT15的溫度值,將得到的數據存儲在K9HCG08U1M中[4]。實驗結束后,FPGA讀取FLASH中的加速度以及溫度值,經由USB傳輸至上位機,系統結構圖如圖1所示,實物圖如圖2所示。
圖1 系統結構圖
圖2 系統實物圖
3.BP神經網絡溫度補償模型設計
建立BP網絡模型,首先要確定網絡結構。在數學上已經證明對于任何在閉區間內的一個連續函數,都可以用單隱層的BP網絡逼近。雖然增加網絡層數可以進一步降低誤差提供精度,同時也使網絡復雜化,增加了網絡的訓練時間。因此本網絡采用三層BP神經網絡,即只含有一個中間隱層[5]。
理論上,隱層神經元的個數越多,則網絡輸出精度越高[8]。然而,神經元越多,網絡局部極小點可能增加,網絡學習收斂至局部極小點的幾率也增高,精度反而下降,網絡的容錯性能也在下降,而且計算量大為增加,對硬件的要求也提高了。因此隱層具體的神經元個數要根據具體的仿真結果而定[6]。
為了得到非線性的映射關系,隱層的傳輸函數采用對數S型傳遞函數logsig函數h(x)=[1+exp(-x)]-1,輸出層用線性傳遞函數purelin函數[7]。
本文選取的輸入層有兩個神經元,分別為加速度計輸出的X軸(Y軸或Z軸)溫度漂移數據A和SHT15傳感器輸出的溫度數據T。隱層神經元的個數擬定為N,輸出層只有一個神經元,為加速度計實際的X軸(Y軸或Z軸)的溫度漂移數據P,即為補償后的漂移數據。結構模型如圖3所示:
圖3 三層BP網絡溫度補償原理圖
4.實驗分析
4.1 數據采集
將待測加速度計和標準水平傳感器固定在一個安裝平臺上,然后將安裝平臺放在基座平臺上,通過調整基座位置,使標準水平傳感器近似達到水平狀態。如圖4所示。
圖4 實驗安裝平臺
然后將兩個傳感器連同安裝平臺一同放入低溫箱進行冷凍(-40°),低溫保持4小時后,拿出安裝平臺將其固定于初始調零位置,開始加速度值和溫度值的采集。當溫度由-45℃回到常溫25攝氏度時,結束采集工作。將FLSAH中的加速度和溫度值經由USB模塊傳輸至上位機,我們可以得到三四個矩陣X、Y、Z和T,分別表示從低溫-45℃到常溫25℃的回溫過程中加速度計X軸、Y軸、Z軸的溫度漂移數據和溫度傳感器記錄溫度數據。重復上述過程,得到X1、Y1、Z1、T1,用已驗證溫度補償神經網絡的重復性。然后變換安裝平臺的初始位置,重復上述過,得到X2、Y2、Z2、T2,用來驗證不同情況下溫度補償神經網絡的可行性。
4.2 數據處理
4.2.1 將矩陣X-X(count-1) 即溫度漂移和T作為輸入矩陣,隱層神經元個數N,我們根據經驗公式N=2n+1 (n為輸入單元數),N取5,然后利用BP網絡進行訓練,仿真結果如圖5所示。
從圖5可以看出當N=5時,經過98步訓練,誤差可收斂到0.001以內。同時我們得到了-50°到25°的溫度補償模型的BP訓練網絡net。
4.2.2 將隱層神經元個數N調整為10,再次訓練仿真,結果如圖6所示。
可以看出,當N=10的時候,仿真效果相比于N=5的時候略好,但訓練次數明顯增多,相應的訓練時間增加。因此我們取N=5,足以滿足實驗誤差要求。
4.2.3 利用步驟1中N=5時訓練好的BP網絡net來對矩陣X1-X1(count-1)和T1進行訓練仿真,訓練仿真結果如圖7所示。
圖5 N=5時的訓練仿真圖
圖6 N=10時的訓練仿真圖
圖7 訓練仿真圖
從圖7可以看出,步驟1中訓練好的網絡對同一加速度計的同一角度下的溫度補償具有重復性。
4.2.4 利用步驟1中訓練好的網絡來對矩陣X2和T2進行訓練仿真,訓練仿真結果如圖8所示。
圖8 訓練仿真圖
從圖8中可以看出,步驟1中訓練好的網絡可以適應同一加速度計在多角度下的溫度補償。
5.小結
BP神經網絡是人工神經網絡中最為重要的網絡之一,實踐證明這種基于誤差反傳遞算法的BP網絡有很強的映射能力,可以解決許多實際問題,而且精度很高。本文以環境溫度和加速度計的輸出為變量,基于BP神經網絡建立了加速度計溫度補償模型,仿真效果良好,具有廣泛的應用前景。
參考文獻
[1]陶海軍,張一鳴,曾志輝. 基于AD7606的多通道數據采集系統設計[J].工礦自動化,2013,12:110-113.
[2]李萍,曾令可,稅安澤,金雪莉,劉艷春,王慧.基于MATLAB的BP神經網絡預測系統的設計[J].計算機應用與軟件,2008,04:
149-150+184.
[3]陶海軍,張一鳴,曾志輝. 基于AD7606的多通道數據采集系統設計[J].工礦自動化,2013,12:110-113.
[4]蘇高利,鄧芳萍. 論基于MATLAB語言的BP神經網絡的改進算法[J].科技通報,2003,02:130-135.
[5]樊振宇.BP神經網絡模型與學習算法[J].軟件導刊,2011,07:66-68.
[6]石云.Bp神經網絡的Matlab實現[J].湘南學院學報,2010,05:86-88+111.
[7]張鵬飛,王宇,龍興武,湯建勛,李革,許光明. 加速度計溫度補償模型的研究[J].傳感技術學報,2007,05:1012-1016.
作者簡介:
郭慧斌,中北大學計算機與控制工程學院在讀研究生,研究方向:動態測試計量技術及儀器。
鄭賓,中北大學教授,研究方向:測試計量技術及儀器。