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

          新聞中心

          EEPW首頁 > 測試測量 > 設(shè)計應(yīng)用 > 基于CPCI規(guī)范的生命探測系統(tǒng)研究

          基于CPCI規(guī)范的生命探測系統(tǒng)研究

          ——
          作者: 時間:2007-09-25 來源:電子技術(shù) 收藏
          1 概述 

          我國一直是個多地質(zhì)災(zāi)害的國家,尤其是近年以來,我國頻發(fā)礦井坍塌事故,因此對幸存人員實現(xiàn)探測是很有必要的。在生命救助系統(tǒng)中,聲音探測是救援隊的一項必不可少的裝備。減災(zāi)救助一直是我國比較重視但是也是相對比較落后的一個科研領(lǐng)域,在十五科技相關(guān)項目“聲波/振動實用化研究”中,我們對前端的數(shù)據(jù)采集做一些比較具體而有成效的工作,但如何實現(xiàn)對有效信號識別方面還存在許多不足之處。

          救災(zāi)現(xiàn)場需要實時數(shù)據(jù),同時為了進一步的分析比對工作,對這些數(shù)據(jù)進行存儲是有必要的。通過科學(xué)的分析,總結(jié)經(jīng)驗,可以為以后的減震救災(zāi)提供指導(dǎo)性和科學(xué)性的方法?;?a class="contentlabel" href="http://www.ex-cimer.com/news/listbylabel/label/CPCI規(guī)范">CPCI規(guī)范而架構(gòu)的不僅可以很好的滿足現(xiàn)場探測要求,同時也為進一步的工作提供了數(shù)據(jù)樣本。

          2 系統(tǒng)組成與基本工作原理

          整個系統(tǒng)由一臺工控機,可選內(nèi)部板卡,外部信號調(diào)理子系統(tǒng),重力加速度傳感器組成。其中每一個單獨的內(nèi)部工控機模塊可以獨立控制外部四個監(jiān)視傳感器,整機配置模塊可選。

          整個系統(tǒng)是以探詢地下目標(biāo)所發(fā)出的聲音為信號源,通過上位機軟件來實現(xiàn)本地系統(tǒng)的配置。上位機通過與本地CPU的交互,實現(xiàn)對信號調(diào)理子系統(tǒng)的管理,達(dá)到地下異常信號采集的目的,根據(jù)所采集到的信號特征,通過軟件過濾,從而確定目標(biāo)的方位和深度。上位機發(fā)送監(jiān)聽通道選擇,增益選擇,以及截止頻率選擇指令。

          而且,很好的實現(xiàn)大量數(shù)據(jù)的實時采集,存儲,以及后期數(shù)據(jù)的處理,同時由于CPCI接口的熱插拔性能,使的整個系統(tǒng)在故障時候的修復(fù)過程得到了極大的提高。

          3 硬件整體設(shè)計

          上位機采用了研華工控機ACP4320,該系統(tǒng)支持3U和6U板卡,完全支持熱插拔的特性。同時實時采集現(xiàn)場數(shù)據(jù)。系統(tǒng)設(shè)計主要包括兩個部分,本地工控機板卡設(shè)計部分,本地目標(biāo)信號調(diào)理部分。

          3.1 工控機板卡設(shè)計

          本地工控機板卡設(shè)計包括實現(xiàn)CPCI接口通信,實現(xiàn)本地系統(tǒng)的控制,以及存儲采樣數(shù)據(jù)。系統(tǒng)實現(xiàn)框圖如圖1所示。

           

          CPCI(Compact Peripheral ComponertInterconnect)總線即壓縮外圍部件互連總線,是一種先進的高性能32/64位地址數(shù)據(jù)復(fù)用局部總線,可同時支持多組外圍設(shè)備,并且不受制于處理器,為中央處理器與高速外圍設(shè)備提供一座溝通的橋梁,提高了數(shù)據(jù)吞吐量(32位時最大可達(dá)132MB/s),是當(dāng)今工控機領(lǐng)域中流行的總線。CPCI總線有嚴(yán)格的總線規(guī)范,保證了它有良好的兼容性,符合CPCI總線規(guī)范的擴展卡可以插入任何CPCI系統(tǒng)可靠地工作。 一個CPCI接口包括一系列的寄存器,這些寄存器中的信息允許計算機自動配置CPCI卡。其中在中,包括3U和6U兩種規(guī)范設(shè)計。在本系統(tǒng)中采用3U極卡設(shè)計,支持32位數(shù)據(jù)總線和32位地址總線,考慮到整個系統(tǒng)的特性,只用了中的P1端口。

          目前實現(xiàn)CPCI接口一般采用兩種方案:使用可編程邏輯器件[3][5]和使用專用總線接口器件。采用可編程邏輯器件實現(xiàn)PCI接口比較靈活,可以利用的器件也比較多,但由于PCI總線協(xié)議的復(fù)雜性,其接口的實現(xiàn)比ISA等總線要困難得多,這種方法難度較大,設(shè)計周期較長。采用專用接口器件不僅對PCI協(xié)議有良好的支持,而且提供給設(shè)計者良好的接口,這些都大大減少了設(shè)計者的工作量,PCI專用接口芯片可供選擇的比較多,如PLX的PCI9054,9052,9056等系列,因此在本系統(tǒng)的硬件設(shè)計中我們采用了專門的接口協(xié)議芯片PCI9054。其中PCI9054完全符合CPCI規(guī)范,支持熱插拔特點特性,極大縮短了系統(tǒng)的維修時間,接口電路也比較簡單。接口電路如圖2所示。

           

          本地的CPU采用三星公司的S3C2410作為本地的主控CPU,完成本地板卡的資源管理和實現(xiàn)與CPCI總線的數(shù)據(jù)交換。上位機和本地CPU通過雙口RAM實現(xiàn)了數(shù)據(jù)的交換。同時在板卡上實現(xiàn)A/D轉(zhuǎn)換,達(dá)到實現(xiàn)對數(shù)據(jù)采集的目的。

          3.2 外部信號調(diào)理板設(shè)計

          外部信號調(diào)理板進行信號的調(diào)理和模擬信號濾波,功能主要完成傳感器與放大板的恒流接口電路設(shè)計,其中重力加速度傳感器采集信號,并對微弱振動信號進行放大和處理;完成各道信號的調(diào)理;消除通道間干擾,提供分路的A/D轉(zhuǎn)換信號。調(diào)理部分由4路電路參數(shù)相同的單通道電路組成,信號調(diào)理板的單路原理框圖如3所示。

           

          在調(diào)理板中,傳感器要求用恒流源進行饋電,同時為了實現(xiàn)可以人機交互的操作,所有的放大和濾波器件均采用可編程器件。

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

          整個系統(tǒng)的軟件設(shè)計是本系統(tǒng)的核心部分,主要包括三個部分:本地板卡的固件程序設(shè)計、上位工控機驅(qū)動程序,以及數(shù)據(jù)處理程序部分。

          4.1 固件程序設(shè)計

          固件程序設(shè)計指本地的CPU程序設(shè)計。本地CPU是S3C2410,該CPU采用ARM92T進行匯編程序設(shè)計。整個程序主要包括主程序和中斷程序,采用模塊化設(shè)計,實現(xiàn)與上位機的CPCI通訊,同時管理本地資源,實現(xiàn)對本地資源的初始化和有效配置,實現(xiàn)對外部模擬信號的采集。固件程序的工作過程是:系統(tǒng)初始化,等待上位機發(fā)出中斷請求,從而到共享數(shù)據(jù)區(qū)讀取相應(yīng)的命令,實現(xiàn)本地系統(tǒng)控制,若SDRAM中數(shù)據(jù)滿或半滿,則發(fā)出PCI請求,將數(shù)據(jù)放入雙口RAM,通知上位機讀取數(shù)據(jù),實現(xiàn)本地數(shù)據(jù)的傳輸。整個固件程序流程圖如圖4所示。

           

          4.2 工控機板卡驅(qū)動程序

          驅(qū)動程序保證了整個系統(tǒng)的良好運行,設(shè)備驅(qū)動程序提供鏈接到CPCI板卡的軟件接口,文件擴展名為.SYS的動態(tài)鏈接庫。在Windows2000中,設(shè)備驅(qū)動稃序必須根據(jù)Windows驅(qū)動程序模型(WDM)設(shè)計。設(shè)備驅(qū)動程序的關(guān)鍵是如何完成硬件操作,基本功能是完成設(shè)備的初始化、對端口的讀寫操作、中斷的設(shè)置和響應(yīng)及中斷的調(diào)用,以及對內(nèi)存的直接讀寫。驅(qū)動程序的編寫主要有兩種方式:采用DDK直接面向最底層,應(yīng)用已有的工具實現(xiàn)底層架構(gòu)。前者的工作效率高,但難度較高。后者雖然效率比不上前者,但使用方便,成熟。

          本系統(tǒng)選用Windriver來編寫設(shè)備驅(qū)動程序,Windriver是美國KRF-Tech公司出品的用于編寫驅(qū)動程序的另一種工具包。它以通用設(shè)備驅(qū)動程序Windrvr.vxd和Windrvr.svs為核心,包含一個類似QuickVxD的代碼生成器Windriver Wizard,一個Windriver發(fā)行包,兩個公用程序pci scan.exe和pci_dump.exe。用它編寫的程序主要針對ISA/PCI設(shè)備,可同時工作在Windows 9x/NT兩種操作系統(tǒng),其中Windrvr.vxd用于Windows 9x操作系統(tǒng),Windrvr.sys用于Windows NT操作系統(tǒng),因此,它是設(shè)計PCI設(shè)備驅(qū)動程序的理想工具。

          Windriver針對PLX和AMCC的專用接口芯片特別編寫了API函數(shù)包,這些函數(shù)能夠方便地實現(xiàn)中斷處理、DMA傳輸、I/O操作、內(nèi)存映射以及即插即用等功能,為系統(tǒng)的驅(qū)動程序的編寫提供了便利。

          4.3 數(shù)據(jù)處理程序

          數(shù)據(jù)處理程序是整個系統(tǒng)的最終目的,也給終端用戶提供了一個良好的平臺。在上位工控機中,我們采用了WINDOWS操作系統(tǒng)作為工作平臺,主要是考慮到操作人員對系統(tǒng)很容易熟悉和上手。數(shù)據(jù)處理程序主要包括界面程序和數(shù)據(jù)識別,目標(biāo)位置判斷程序。在其中涉及到整個數(shù)據(jù)的后期處理,如何實現(xiàn)整個板卡的控制和人機的交互。主要是數(shù)據(jù)的有效識別和目標(biāo)位置的計算等一系列的數(shù)字處理。數(shù)據(jù)處理程序流程圖如圖5所示。

           

          從目標(biāo)源發(fā)出的信號,通過不同的介質(zhì)傳播后,會使信號的信噪比降低,這會給以后的處理帶來不利的影響。為了消除這種影響,就必須提高信噪比,即濾波。在此,本系統(tǒng)主要用了比較常見的去噪方法——自適應(yīng)濾波。

          圖6是在實驗中所采集初始的時域數(shù)據(jù)。從圖中可以看到,信號所帶的噪聲比較少,這是因為在信號調(diào)理的過程中,已經(jīng)對噪聲進行了一定的抑制。但為了計算的準(zhǔn)確和方便,還是應(yīng)該讓噪聲盡可能的少,所以再一次的自適應(yīng)濾波是有必要的是必要的。

           

          圖7是經(jīng)過自適應(yīng)濾波處理后的數(shù)據(jù)。

           

          濾波后的數(shù)據(jù)經(jīng)過小波變換后,我們可以在時域和頻域?qū)ζ溥M行觀察,經(jīng)過計算以后可以確定信號的有效性,判斷月標(biāo)的位置和深度。

          經(jīng)過實踐的檢驗,該系統(tǒng)能夠可靠地識別在地下約10m處的有聲目標(biāo)。并能夠可靠的排除干擾。采用不同的傳感器,通過軟件的不同配置可以應(yīng)用到不同的場合。除了現(xiàn)場救援工作,還可以很方便的進行后期的數(shù)據(jù)處理。同時由于工控機的采用,和軟件平臺的普及對于今后的二次開發(fā)提供了良好的工作平臺,對于產(chǎn)品的系列化開發(fā)提供了可靠的技術(shù)保障和條件。


          評論


          相關(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); })();