<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 基于DSP和DDS技術(shù)的氣體濃度檢測系統(tǒng)

          基于DSP和DDS技術(shù)的氣體濃度檢測系統(tǒng)

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

            引 言

            處理器是ADI公司Blackfin系列產(chǎn)品的成員,專為滿足當(dāng)今嵌入式音頻、視頻和通信應(yīng)用的計算要求和低功耗條件而設(shè)計的新型16位嵌入式處理器。它基于由ADI和Intel公司聯(lián)合開發(fā)的微信號架構(gòu)(Micro Signal Architecture,MSA),將一個32位RISC型指令集和雙16位乘法累加(MAC)信號處理功能與通用型微控制器所具有的易用性組合在一起。處理器具有以下主要特點:最大頻率為600 MHz,1200 MMACs;每一個內(nèi)核中帶有2個16位的乘法器,2個40位的累加器,2個40位的邏輯運(yùn)算單元,4個位的視頻運(yùn)算單元和1個40位的移位器,在一個指令周期內(nèi)可完成2個16位數(shù)的乘法,2個40位數(shù)的算術(shù)邏輯運(yùn)算,4個位的視頻數(shù)據(jù)算術(shù)邏輯運(yùn)算,1個40位的移位運(yùn)算;低功耗采用1.12 V的內(nèi)核電壓和3.3 V的I/O電壓,片內(nèi)集成調(diào)壓器,并且具備動態(tài)電源管理;高達(dá)148 KB的片內(nèi)存儲器;豐富的外設(shè)接口,支持與SDRAM,SRAM,F(xiàn)LASH和ROM的無縫連接;片上JTAG仿真接口。

            提出一種基于為核心,集和A/D采樣芯片于一體的系統(tǒng)。該系統(tǒng)針對結(jié)構(gòu)性微氣體傳感器,充分利用了信號源頻率、相位穩(wěn)定可控的特點和DSP芯片強(qiáng)大的控制能力和高速的數(shù)據(jù)處理能力,具有硬件簡單,成本低,可靠性高,通用性好等優(yōu)點。

            1 自相關(guān)檢測原理

            設(shè)被測信號x(k)由有用信號s(k)和噪聲u(k)組成:

          x(k)=s(k)+u(k)

            x(k)的自相關(guān)函數(shù)為:

          公式

            式中:Rs(m)為s(k)的自相關(guān)函數(shù);Rsu(m)為s(k)與u(k)的互相關(guān)函數(shù);Rus(m)為u(k)與s(k)的互相關(guān)函數(shù);Ru(m)為u(k)的自相關(guān)函數(shù)。由于在電路系統(tǒng)中主要為白噪聲,有Rsu(m)=Rus(m)=0,隨著m的增大,公式

            根據(jù)維納一辛欽定理,功率信號的自相關(guān)函數(shù)與其功率譜密度函數(shù)具有傅里葉變換關(guān)系,所以可以用FFT計算自相關(guān)函數(shù)。但是,實際采樣值只有N+1點,所以求出的Rx(m)只能是自相關(guān)函數(shù)的估計值。當(dāng)用FFT計算自相關(guān)函數(shù)時,x(k)必須補(bǔ)N個零,使長度變成2N+1,因此功率譜密度為:

          公式

            對上式進(jìn)行IFFT就可以得到Rs(m)。

            2 系統(tǒng)硬件設(shè)計

            系統(tǒng)硬件框圖如圖1所示。主要包括傳感器激勵信號的發(fā)生、傳感器位置的選取,信號采集以及外部存儲器的設(shè)計四個部分。其核心是ADSP-BF531芯片,它負(fù)責(zé)整個系統(tǒng)事務(wù)協(xié)調(diào)以及算法功能實現(xiàn)。系統(tǒng)工作過程中,DSP芯片通過設(shè)定 SPI控制器,控制芯片AD9850產(chǎn)生一個特定的穩(wěn)幅的超聲頻的正弦信號。這個信號通過放大器和多路開關(guān)后,施加在指定的傳感器驅(qū)動電極上,并驅(qū)動傳感器發(fā)生同頻振動。傳感器輸出信號經(jīng)由前置放大器放大到適當(dāng)?shù)某潭?,再?jīng)過高精度的A/D芯片AD9235采樣后將轉(zhuǎn)換結(jié)果送到DSP進(jìn)行相關(guān)運(yùn)算,計算出振動幅度。

          氣體濃度檢測系統(tǒng)硬件框圖

          AD9850和DSP的接口

            2.2 DSP與A119235的接口設(shè)計

            ADSP-BF531處理器提供可直接與并行A/D和D/A轉(zhuǎn)換器、ITU R601/656視頻編碼和解碼器以及其他通用外設(shè)連接的并行接口(PPI)。PPI包括一個專用時鐘引腳,多達(dá)3個幀同步引腳和多達(dá)16個數(shù)據(jù)引腳。輸入時鐘支持系統(tǒng)時鐘一半的并行數(shù)據(jù)傳輸率。PPI采用DMA方式,可以直接把數(shù)據(jù)存放在SDRAM或者送到內(nèi)核進(jìn)行處理。它能與12 b A/D采樣芯片AD9235完全兼容,電路接口簡單,A/D芯片和PPI采用同一時鐘來同步數(shù)據(jù)。同時AD9235的數(shù)據(jù)溢出位作為數(shù)據(jù)最高位接到 PPI,在計算過程中,可以通過判斷該位對壞數(shù)據(jù)進(jìn)行剔出,其電路接口如圖3所示。

          DSP與A119235的接口

            3 系統(tǒng)軟件設(shè)計

            系統(tǒng)軟件設(shè)計包括DSP初始化程序、中斷向量表、應(yīng)用程序(包括響應(yīng)外部中斷程序)、數(shù)據(jù)后處理程序。檢測系統(tǒng)啟動時首先運(yùn)行內(nèi)部ROM固化的Boot-Loader程序,將存儲在FLASH中的程序代碼加載到DSP內(nèi)部RAM 中。程序首先是初始化系統(tǒng),通過配置DSP內(nèi)部寄存器,確定DSP具體的工作狀態(tài),然后是中斷響應(yīng)程序以及數(shù)據(jù)后處理程序。系統(tǒng)程序框圖如圖4所示,自相關(guān)運(yùn)算在中斷子程序中完成,為方便移植所有程序都采用結(jié)構(gòu)化C語言完成。本檢測系統(tǒng)在工作過程中,對每一頻點采樣4 092點,將每個頻點采樣值進(jìn)行自相關(guān)運(yùn)算,恢復(fù)出微弱信號,并計算該頻率傳感器響應(yīng)幅度。前面已經(jīng)證明在DSP內(nèi)進(jìn)行自相關(guān)運(yùn)算可以用FFT來實現(xiàn)。

          系統(tǒng)程序框圖

            FFT算法中的倒序可以由DSP變址方便實現(xiàn),整個推導(dǎo)過程由三重循環(huán)構(gòu)成,外層的循環(huán)控制有M級的順次運(yùn)算(M=log2N),內(nèi)層的兩個循環(huán)一起控制同一級中各個碟型運(yùn)算單元,最內(nèi)層的一個循環(huán)控制為同一類型的碟型運(yùn)算。本程序采用基-2時間碟型運(yùn)算,碟型運(yùn)算的計算關(guān)系為:

          公式

            這里的X(M-1)(k)和X(M-1)(j)分別表示第M-1級中上節(jié)點和下節(jié)點的值,XM(k)和XM(j)分別為第M級中上節(jié)點和下節(jié)點的值,k是j的對偶節(jié)點,依據(jù)上述公式可以實現(xiàn)序列的同址運(yùn)算。

            4 結(jié) 語

            實驗證明,基于微氣體傳感器的氣體濃度檢測系統(tǒng)能有效地檢測出傳感器的微弱信號。系統(tǒng)以 Black-fin531為核心,結(jié)合DDS技術(shù)和自相關(guān)檢測方法,硬件設(shè)計簡單可靠,程序采用結(jié)構(gòu)化的C語言,通用性和移植性好,易于DSP實現(xiàn)。系統(tǒng)很好地滿足了氣體濃度檢測的需要,測量精度高,算法簡單,可以用于氫氣等多種氣體的檢測。



          關(guān)鍵詞: ADSP-BF531 DDS 氣體濃度檢測

          評論


          相關(guān)推薦

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

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();