《電子技術應用》
您所在的位置:首頁 > 可編程邏輯 > 設計應用 > 基于SoPC技術的傳感器非線性軟件校正的實現(xiàn)
基于SoPC技術的傳感器非線性軟件校正的實現(xiàn)
摘要: 本文采用三層前向網(wǎng)絡,輸入層神經(jīng)元2個,分別代表溫度傳感器ADS90和氣體傳感器TGS813輸入信號,,DS18B20的測量值作為AD590的期望值,,輸出層神經(jīng)元1個,代表AD590的校正值。
關鍵詞: SoPC 傳感器
Abstract:
Key words :

0 引 言

  現(xiàn)代測量系統(tǒng)中,傳感器的工作性能直接影響整個系統(tǒng)。由于受外界因素的影響,,傳感器大多具有非線性特性,致使測量儀表或系統(tǒng)的輸入與輸出之間不能保證很好的線性關系,。除了采取硬件補償電路外,,對于軟件補償算法的研究受到更多的重視。由于受數(shù)據(jù)總線寬度和工作頻率的影響,,軟件算法補償?shù)难芯扛嗍窃谟嬎銠C上仿真實現(xiàn)的,,而現(xiàn)場的測量系統(tǒng)往往建立在單片微處理器的基礎上。微電子技術的迅速發(fā)展,,使得集成電路設計和工藝技術水平得到很大的提高,,片上系統(tǒng)(system on a programma-ble chip,SOPC)技術把系統(tǒng)的處理機制,、模型算法和電路設計緊密結合,,在單片芯片上實現(xiàn)復雜系統(tǒng)的全部功能?;贔PGA的SOPC技術,,軟件算法修改和硬件平臺結構調整都是在線可編程的,其靈活性和可靠性是其他單片微處理器無法比擬的,。本文采用ALTERA公司提供的SOPC技術,,研究傳感器的非線性軟件校正的算法實現(xiàn)。

  1 非線性軟件校正原理

  一個受多個參量影響的傳感器系統(tǒng)可表示為y=f(x,,t1,,t2,…,tk),,其中,,x為待測目標參量,t1,,t2,,…,tk為k個非目標參量,,y為傳感器輸出,。為了消除非目標參量對傳感器輸出的影響,一般采用逆向建模的方法,。實際測量的數(shù)據(jù),由于受非目標參量的影響,,它與目標參量之間的函數(shù)關系不再是線性的,。逆向建模的目的是通過非線性映射,把非線性函數(shù)關系x=f-1(y,,t1,,t2,…,,tk)向線性函數(shù)關系x=y/A逼近,。在模型中,測量數(shù)據(jù)和非目標參量的測量值作為輸入,,目標參量的線性值作為模型的輸出,,按照一定的算法原則,不斷調整模型的參數(shù),,使得模型輸出誤差在允許的范圍之內,。

  在本系統(tǒng)中,選用模擬溫度傳感器AD590作為校正目標,,數(shù)字溫度傳感器DS18B20測量值作為模型的期望輸出,,氣體傳感器TGS813測量值為非目標參量輸入。系統(tǒng)采用ALTERA公司CYCLONEⅡ系列的EP2C35F672 FPGA作為核心處理器,,采用QUARTUS-Ⅱ自帶的SOPC Builder開發(fā)包作為算法的調試環(huán)境,,在FPGA其內部實現(xiàn)測量數(shù)據(jù)的智能處理。

  2 系統(tǒng)方案實現(xiàn)

  2.1傳感器調理電路

  AD590是美國模擬器件公司生產(chǎn)的單片集成兩端感溫電流源,,流過器件的電流(μA)等于器件所處環(huán)境的熱力學溫度(K)度數(shù),,AD590隨溫度變化輸出的是電流信號,需要將其轉換為電壓信號,。由于AD590靈敏度高,,受環(huán)境的影響大,在使用前需要校正。在本文中,,利用神經(jīng)網(wǎng)絡算法對AD590的輸出進行了校正,。

  DS18B20是Dallas半導體公司推出的一線式數(shù)字化溫度傳感器,可以程序設定9~12位的分辨力,,精度為±0.5℃,。本文采用外接電源模式,12 bit數(shù)據(jù)輸出格式,。

  TGS813是一種由SnO2材料組成的燒結體半導體氣體傳感器,,屬于一種廣譜性氣敏元件,對多種氣體敏感,,對不被檢測氣體不敏感,;由于輸出電壓最高可以達到+9 V,而后級模擬數(shù)字轉換電路的輸入電壓不超過+5 V,,所以,,使用前需要調整分壓電阻器的阻值。

  2.2模擬數(shù)字轉換電路

  來自傳感器的模擬信號,,在送入模擬數(shù)字轉換電路之前,,由于器件的輸入阻抗比較低,而傳感器的輸出阻抗較高,,不能直接把模擬信號送入模擬數(shù)字轉換電路,。本文采用TLC279構成電壓跟隨器,實現(xiàn)阻抗變換,??紤]到在FPGA實現(xiàn)的算法處理對數(shù)據(jù)的精度敏感,因此,,系統(tǒng)選用了四路模擬量輸入的12 bit串行數(shù)據(jù)輸出的TLV2544作為模擬數(shù)字轉換電路的核心芯片,。

  TLV2544是TI公司生產(chǎn)的高性能12位低功耗、高速(3.6μs)CMOS模數(shù)轉換器,,具有采樣一保持功能,,電源電壓為2.7~5.5V。TLV2544還具有3個輸入端和1個三態(tài)輸出端,,可為最流行的微處理器串行端口(SPI)提供4線接口,。器件在上電初始化時首先需要將初始化命令A000h寫入CFR配置寄存器,然后,,對器件進行編程,,其編程方法是在初始化命令A000h的低12位000h寫入編程數(shù)據(jù)以規(guī)定器件的工作方式。TLV2544具有4種轉換模式:單次模式,、重復模式,、掃描模式和重復掃描模式,,可用模式00,01,,10,,11表示。圖1為TLV2544和單片機AT89C2051的接口電路,。該電路采用外部基準,,REFP與REFM之間接0.1μF和10μF2只去耦電容器。

  各路信號送入微處理器AT89C2051,,經(jīng)串行口發(fā)送給系統(tǒng)板,。微處理器的軟件設計主要是在接收到SOPC系統(tǒng)控制發(fā)送的采集命令(0x41H),啟動TLV2544和DS18B20,,將數(shù)據(jù)轉為ASCII碼發(fā)送,。DS18B20和TLV2544都是12bit輸出,所以,,每次發(fā)送9個ASCII碼,,分別代表3個數(shù)據(jù)源的轉換結果。

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

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

  3 算法測試

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

 

此內容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權禁止轉載,。