新聞中心

EEPW首頁 > EDA/PCB > 設(shè)計(jì)應(yīng)用 > 采用FPGA的SOPC技術(shù)研究了傳感器非線性軟件校正的

采用FPGA的SOPC技術(shù)研究了傳感器非線性軟件校正的

作者: 時(shí)間:2009-12-02 來源:網(wǎng)絡(luò) 收藏

2.3神經(jīng)網(wǎng)絡(luò)校正算法

利用BP神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)非線性誤差軟件校正的文獻(xiàn)較多,但主要是基于PC機(jī)的仿真實(shí)驗(yàn)。單片微處理器由于存儲容量和數(shù)據(jù)總線寬度的限制,網(wǎng)絡(luò)結(jié)構(gòu)類型和計(jì)算精度只能控制在一定范圍之內(nèi)。在大規(guī)模集成電路的基礎(chǔ)上,底層電路采用硬件描述語言實(shí)現(xiàn),而軟件算法則在 IDE調(diào)試環(huán)境下采用高級語言,如C語言實(shí)現(xiàn)。在本文中,系統(tǒng)板采用NIOS-Ⅱ軟核微處理器,32 bit總線,工作頻率為50 MHz,BP神經(jīng)網(wǎng)絡(luò)采用動量法,在ALTERA公司提供的SOPC IDE調(diào)試環(huán)境下完成。算法處理結(jié)構(gòu)如圖2所示。


3 算法測試
本文采用三層前向網(wǎng)絡(luò),輸入層神經(jīng)元2個,分別代表溫度ADS90和氣體TGS813輸入信號,DS18B20的測量值作為AD590的期望值,輸出層神經(jīng)元1個,代表AD590的校正值。

本文共采集了70個樣本對數(shù)據(jù)作為神經(jīng)網(wǎng)絡(luò)的輸入。神經(jīng)網(wǎng)絡(luò)的訓(xùn)練采樣動量自適應(yīng)算法,剔除部分不符合要求的樣本,58個樣本作為訓(xùn)練樣本,8個樣本作為測試樣本。BP神經(jīng)網(wǎng)絡(luò)采用C語言編程實(shí)現(xiàn),由于微處理器與PC機(jī)相比,在工作頻率和總線結(jié)構(gòu)方面還存在很大差距,因此,在計(jì)算算法的誤差輸出時(shí),本文采用的是各個訓(xùn)練樣本的絕對誤差的累加和,而不是均方根誤差,這樣,可以避免大量的乘法和開方運(yùn)算,否則,算法很難收斂。 作為BP神經(jīng)網(wǎng)絡(luò)動量法的重要參數(shù),如果學(xué)習(xí)率參數(shù)選擇的范圍比較窄,那么,網(wǎng)絡(luò)性能的隨機(jī)性特點(diǎn)就會非常明顯,不利于網(wǎng)絡(luò)的推廣應(yīng)用。圖3是選擇不同的學(xué)習(xí)率時(shí)網(wǎng)絡(luò)輸出誤差的變化情況。測試條件是動量系數(shù)為0.9,增益為1,隱含層節(jié)點(diǎn)6個,算法停止迭代的判斷條件是輸出絕對誤差累加和小于0.01。



圖4是58對訓(xùn)練樣本完成網(wǎng)絡(luò)訓(xùn)練后的測試結(jié)果。由于BP神經(jīng)網(wǎng)絡(luò)的性能受隱含層節(jié)點(diǎn)個數(shù)影響比較大,圖中數(shù)據(jù)是在不同隱含層節(jié)點(diǎn)個數(shù)的條件下得到的,并與MATLAB軟件仿真得到的結(jié)果作了比較。網(wǎng)絡(luò)訓(xùn)練的條件:學(xué)習(xí)率為0.1,動量系數(shù)為0.9,增益為1,SOPC停止迭代的判斷條件是輸出絕對誤差累加和小于0.01,MATLAB停止迭代的判斷條件是均方根誤差小于0.0001,圖中,n代表隱含層節(jié)點(diǎn)個數(shù)。

由于采用的是12 bit的A/D轉(zhuǎn)換芯片,采集數(shù)據(jù)送入系統(tǒng)板后,經(jīng)過歸一化處理,數(shù)據(jù)類型發(fā)生變化。與MATLAB仿真軟件輸出結(jié)果保持一致,基于的神經(jīng)網(wǎng)絡(luò)輸出取小數(shù)點(diǎn)后4位有效數(shù)字。由圖4可以得出:雖然在個別測試點(diǎn)上基于MATLAB軟件仿真結(jié)果優(yōu)于SOPC的輸出結(jié)果,但在隱含層節(jié)點(diǎn)對算法性能的影響程度上,基于SOPC技術(shù)的輸出受到的影響比較小,穩(wěn)定性好,這與SOPC技術(shù)采用32位字長有很大關(guān)系。
4 結(jié)論

基于的SOPC技術(shù)不同于IC芯片設(shè)計(jì),它是把已有的模塊資源組合成一個系統(tǒng),系統(tǒng)的功能直接由載體FPGA芯片實(shí)現(xiàn);它又不同于傳統(tǒng)的基于單片微處理器的系統(tǒng)設(shè)計(jì),因?yàn)镾OPC系統(tǒng)的微處理器性能和外圍接口控制電路都是由用戶編程設(shè)定的,因此,采用SOPC技術(shù)可以節(jié)省成本,提高資源利用率,縮短開發(fā)周期和便于系統(tǒng)升級等特點(diǎn)。本文采用基于FPGA的SOPC非線性軟件校正的問題。算法的測試結(jié)果證實(shí)了方法的可行性。



上一頁 1 2 下一頁

關(guān)鍵詞: FPGA SOPC 技術(shù)研究 傳感器

評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉