日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

基于MATLAB的數(shù)據(jù)采集與分析系統(tǒng)設(shè)計

 ludertk 2013-10-07

論文關(guān)鍵詞:聲卡  數(shù)據(jù)采集  MATLAB  信號處理 
  論文摘要:利用數(shù)據(jù)采集卡構(gòu)建的數(shù)據(jù)采集系統(tǒng)一般價格昂貴且難以與實際需求完全匹配。聲卡作為數(shù)據(jù)采集卡具有價格低廉、開發(fā)容易和系統(tǒng)靈活等優(yōu)點。本文詳細介紹了系統(tǒng)的開發(fā)背景,軟件結(jié)構(gòu)和特點,系統(tǒng)地分析了數(shù)據(jù)采集硬件和軟件設(shè)計技術(shù),在此基礎(chǔ)上以聲卡為數(shù)據(jù)采集卡,以MATLAB為開發(fā)平臺設(shè)計了數(shù)據(jù)采集與分析系統(tǒng)。  
本文介紹了MATLAB及其數(shù)據(jù)采集工具箱, 利用聲卡的A/ D、D/ A 技術(shù)和MATLAB 的方便編程及可視化功能,提出了一種基于聲卡的數(shù)據(jù)采集與分析方案,該方案具有實現(xiàn)簡單、性價比和靈活度高的優(yōu)點。用MATLAB 語言編制了相應軟件,實現(xiàn)了該系統(tǒng)。該軟件有著簡潔的人機交互工作界面,操作方便,并且可以根據(jù)用戶的需求進行功能擴充。最后給出了應用該系統(tǒng)采集數(shù)據(jù)的應用實例。 
  1緒論  
  1.1 課題背景  
  數(shù)據(jù)也稱觀測值,是實驗、測量、觀察、調(diào)查等的結(jié)果,常以數(shù)量的形式給出。數(shù)據(jù)采集,又稱數(shù)據(jù)獲取,就是將系統(tǒng)需要管理的所有對象的原始數(shù)據(jù)收集、歸類、整理、錄入到系統(tǒng)當中去。數(shù)據(jù)采集是計算機管理系統(tǒng)使用前的一個數(shù)據(jù)初始化過程。數(shù)據(jù)采集技術(shù)廣泛引用在各個領(lǐng)域。比如攝像頭,麥克風,都是數(shù)據(jù)采集工具。 
  數(shù)據(jù)采集(Data Acquisition)是將被測對象(外部世界、現(xiàn)場)的各種參量(可以是物理量,也可以是化學量、生物量等)通過各種傳感元件作適當轉(zhuǎn)換后,再經(jīng)信號調(diào)理、采樣、量化、編碼、傳輸?shù)炔襟E,最后送到控制器進行數(shù)據(jù)處理或存儲記錄的過程。 
  被采集數(shù)據(jù)是已被轉(zhuǎn)換為電訊號的各種物理量,如溫度、水位、風速、壓力等,可以是模擬量,也可以是數(shù)字量。采集一般是采樣方式,即隔一定時間(稱采樣周期)對同一點數(shù)據(jù)重復采集。采集的數(shù)據(jù)大多是瞬時值,也可是某段時間內(nèi)的一個特征值。準確的數(shù)據(jù)測量是數(shù)據(jù)采集的基礎(chǔ)。數(shù)據(jù)測量方法有接觸式和非接觸式,檢測元件多種多樣。不論哪種方法和元件,都以不影響被測對象狀態(tài)和測量環(huán)境為前提,以保證數(shù)據(jù)的正確性。數(shù)據(jù)采集含義很廣,包括對連續(xù)物理量的采集。在計算機輔助制圖、測圖、設(shè)計中,對圖形或圖像數(shù)字化過程也可稱為數(shù)據(jù)采集,此時被采集的是幾何量數(shù)據(jù)。 
  在智能儀器、信號處理以及工業(yè)自動控制等領(lǐng)域,都存在著數(shù)據(jù)的測量與控制問題,常常需要對外部的溫度、壓力、流量、位移等模擬量進行采集。數(shù)據(jù)采集技術(shù)是一種流行且實用的電子技術(shù)。它廣泛應用于信號檢測、信號處理、儀器儀表等領(lǐng)域。近年來,隨著數(shù)字化技術(shù)的不斷發(fā)展,數(shù)據(jù)采集技術(shù)也呈現(xiàn)出速度更高、通道更多、數(shù)據(jù)量更大的發(fā)展態(tài)勢。 
  數(shù)據(jù)采集系統(tǒng)是一種應用極為廣泛的模擬量測量設(shè)備,其基本任務是把信號送入計算機或相應的信號處理系統(tǒng),根據(jù)不同的需要進行相應的計算和處理。它將模擬量采集、轉(zhuǎn)換成數(shù)字量后,再經(jīng)過計算機處理得出所需的數(shù)據(jù)。同時,還可以用計算機將得到的數(shù)據(jù)進行儲存、顯示和打印,以實現(xiàn)對某些物理量的監(jiān)視,其中一部分數(shù)據(jù)還將被用作生產(chǎn)過程中的反饋控制量。 
  數(shù)據(jù)采集系統(tǒng)是計算機測控系統(tǒng)中非常重要的環(huán)節(jié),目前,有各種數(shù)據(jù)采集卡或采集系統(tǒng)可供選擇,以滿足生產(chǎn)和科研試驗等各方面的不同需要,但由于數(shù)據(jù)源以及用戶需求的多樣性,有時并不能滿足要求。特別是在某些應用中,需要同時高速采集多個通道的數(shù)據(jù),而且為了分析比較各通道信號間的相互關(guān)系,常常要求所有通道的采集必須同步?,F(xiàn)有的數(shù)據(jù)采集系統(tǒng)能夠滿足上述要求的比較少,且價格十分昂貴,體積較大,分量較重,使用十分不方便。 
  一般模擬量是通過各種數(shù)據(jù)采集卡進行數(shù)據(jù)采集。目前常用的是具有 ISA 總線、PCI 總線等接口形式的 A/D 采集卡,雖然數(shù)據(jù)傳輸率很高,但是還存在整個系統(tǒng)笨重,缺乏靈活性,不能實現(xiàn)即插即用,不適合小型、便攜設(shè)備采用等缺點。另外這些類型的采集卡在計算機上安裝比較麻煩,而且由于受計算機插槽數(shù)量、地址、中斷資源的限制不可能掛接很多設(shè)備。因此,工程師們往往需要花費大量的時間和資源用于系統(tǒng)搭建。 
  隨著現(xiàn)代工業(yè)技術(shù)的迅猛發(fā)展,生產(chǎn)規(guī)模的不斷壯大,生產(chǎn)過程和制作工藝的日趨復雜,對自動測試和各種信息集成的要求也就越來越高。數(shù)據(jù)采集系統(tǒng)的好壞將直接影響自動測試系統(tǒng)的可靠性和穩(wěn)定性,為了滿足不同的測試需求,以及減少對資源的浪費,在系統(tǒng)的設(shè)計上應該盡量滿足通用性和可擴展性。在高度發(fā)展的當今社會中,科學技術(shù)的突飛猛進和生產(chǎn)過程的高度自動化已成為人所共知的必然趨勢,而它們的共同要求是必須建立在有著不斷發(fā)展與提高的信息工業(yè)基礎(chǔ)上。人們只有從外界獲取大量準確、可靠的信息經(jīng)過一系列的科學分析、處理、加工與判斷,進而認識和掌握自然界與科學技術(shù)中的各種現(xiàn)象與其相關(guān)的變化規(guī)律,并通過相應的系統(tǒng)和方法實現(xiàn)科學實驗研究與生產(chǎn)過程的高度自動化。換言之,生產(chǎn)過程的自動化面臨的第一個問題就是必須根據(jù)從各種傳感器得到的數(shù)據(jù)來檢測、監(jiān)視現(xiàn)場,以保證現(xiàn)場設(shè)備的正常工作。所以對現(xiàn)場進行數(shù)據(jù)采集是重要的前期基礎(chǔ)工作,然后再對現(xiàn)場數(shù)據(jù)進行傳輸和相應的處理工作,以滿足不同的需要。 
  數(shù)據(jù)采集卡是中低端數(shù)據(jù)采集系統(tǒng)設(shè)計的必選產(chǎn)品。基于 ISA、PCI 的插卡式數(shù)據(jù)采集設(shè)備存在以下缺陷:安裝麻煩;價格昂貴;受計算機插槽數(shù)量、地址、中斷資源限制,可擴展性差;在一些電磁干擾性強的測試現(xiàn)場,無法專門對其做電磁屏蔽,導致采集的數(shù)據(jù)失真。而現(xiàn)代工業(yè)生產(chǎn)和科學研究的發(fā)展要求數(shù)據(jù)采集卡具有更好的數(shù)據(jù)采集、處理能力,傳統(tǒng)的 CPU 已經(jīng)不能滿足這一要求。針對以上要求,本文將論述一種基于PC機的聲卡技術(shù),它安裝容易,成本較低。只需利用計算機本身的軟硬件資源,而不需添加其他任何設(shè)備即可構(gòu)成數(shù)據(jù)采集與分析系統(tǒng),使用MATIAB語言編制簡潔的圖形用戶界面,該界面操作方便,并且可以根據(jù)用戶的需求進行功能擴充。 
  數(shù)據(jù)分析在整個科研工作中是個重要的必不可少的環(huán)節(jié),它的目的是把隱沒在一大批看來雜亂無章的數(shù)據(jù)中的信息集中、萃取和提煉出來,以找出所研究對象的內(nèi)在規(guī)律。在實用中,數(shù)據(jù)分析可幫助人們作出判斷,以便采取適當行動。數(shù)據(jù)分析是組織有目的地收集數(shù)據(jù)、分析數(shù)據(jù),使之成為信息的過程。這一過程是質(zhì)量管理體系的支持過程。在產(chǎn)品的整個壽命周期,包括從市場調(diào)研到售后服務和最終處置的各個過程都需要適當運用數(shù)據(jù)分析過程,以提升有效性。例如,一個企業(yè)的領(lǐng)導人要通過市場調(diào)查,分析所得數(shù)據(jù)以判定市場動向,從而制定合適的生產(chǎn)及銷售計劃。因此數(shù)據(jù)分析有極其廣泛的應用范圍。數(shù)據(jù)分析系統(tǒng)工作的質(zhì)量和速度如何,對整個科研工作的影響也是很大的。因此研究一種質(zhì)量性能高的通用數(shù)據(jù)采集平臺具有很大的意義。 
  在近幾十年來 IC 技術(shù)和計算機技術(shù)的高速發(fā)展,為數(shù)據(jù)采集與分析提供了非常良好與可靠的科學技術(shù)基礎(chǔ),也提出了更高的要求和強有力的推動。如今面臨著先進的計算機技術(shù)和信息技術(shù)與落后的信息采集與分析技術(shù)的現(xiàn)實差距,那將大大影響科學技術(shù)的高度發(fā)展和生產(chǎn)過程的高度自動化。所以,近幾十年來世界各國都大量投入進行信息采集與分析的工作,尤其是在經(jīng)濟發(fā)達的美、英、德、法日等國與我國,都對這一技術(shù)高度重視。 
  1.2 國內(nèi)外研究動態(tài)  
  數(shù)據(jù)采集是獲取信息的基本手段,數(shù)據(jù)采集技術(shù)作為信息科學的一個重要分支,與傳感器、信號測量與處理、微型計算機等技術(shù)為基礎(chǔ)而形成的一門綜合應用技術(shù),它研究信息數(shù)據(jù)的采集、存儲、處理及控制等作業(yè),具有很強的實用性。隨著科學技術(shù)的發(fā)展,數(shù)據(jù)采集系統(tǒng)得到了越來越廣泛得應用,同時人們對數(shù)據(jù)采集系統(tǒng)的各項技術(shù)指標,如:采樣率、線性度、精度、輸入范圍、控制方法以及抗干擾能力等提出了越來越高的要求,特別是精度和采樣率更是使用者和設(shè)計者所共同關(guān)注的重要問題,于是,高速及超高速數(shù)據(jù)采集系統(tǒng)應運而生并且得到了快速發(fā)展。今天,數(shù)據(jù)采集技術(shù)己經(jīng)在雷達、通信、水聲、振動工程、無損監(jiān)測、智能儀器、工業(yè)自動控制以及生物醫(yī)學工程等眾多領(lǐng)域得到廣泛的應用并且收到了良好的效果。高速數(shù)據(jù)采集系統(tǒng)在國防、航天、邊緣科學研究中及國民經(jīng)濟的各個領(lǐng)域的成功的應用,進一步引起了各方的關(guān)注,推動了它的研制和發(fā)展。隨著科學技術(shù)的發(fā)展,數(shù)據(jù)采集系統(tǒng)得到了越來越廣泛的應用。目前,國外很多公司與廠商都投入巨資進行數(shù)據(jù)采集系統(tǒng)的研制開發(fā)與生產(chǎn)銷售,其中比較著名的有 NEFF, NI、HP,TEK 等。 
  從數(shù)據(jù)采集系統(tǒng)產(chǎn)品來看,各大公司提供的系列產(chǎn)品都包括了完成數(shù)據(jù)采集的諸如信號放大、濾波、多路開關(guān)、模數(shù)轉(zhuǎn)換和接口等各種模塊。現(xiàn)有的高速數(shù)據(jù)采集器件和開發(fā)的產(chǎn)品中,目前還沒有完全實現(xiàn)高速、高分辨率。在雷達、通信、譜分析、瞬態(tài)分析、電視等應用領(lǐng)域,為滿足實時檢測和高速采集的日益更新的需要,實現(xiàn)數(shù)據(jù)采集的高速、高分辨率已成為數(shù)據(jù)采集系統(tǒng)的一個發(fā)展方向?,F(xiàn)有的高速 ADC 器件和產(chǎn)品價格都比較昂貴,有些高速、高分辨率的器件本身還存在著不穩(wěn)定性,因此,在數(shù)據(jù)采集系統(tǒng)向高速、高分辨率發(fā)展的同時,開發(fā)和研制的器件和產(chǎn)品應不斷地提高可靠性,降低成本,提高性價比,以便使之得到更廣泛的應用。在國內(nèi),由于歷史、技術(shù)等原因,我們的產(chǎn)品普遍存在:通用性差、用途單一、測點少、測量距離小、環(huán)境適應性差等缺點,遠沒有形成系列化、模塊化、標準化的通用產(chǎn)品,根本無法滿足國內(nèi)用戶不斷增長的需要,也遠遠不能與國外產(chǎn)品抗衡,正因此使得價格高昂的國外產(chǎn)品占有了相當大的市場份額。 
  1.3 數(shù)據(jù)采集系統(tǒng)的現(xiàn)狀及發(fā)展  
  數(shù)據(jù)采集與分析一直是生產(chǎn)實踐研究與應用領(lǐng)域的一個熱點和難點。隨著微電子制造工藝水平的飛速提高及數(shù)據(jù)分析理論的進一步完善與成熟,目前國內(nèi)外對數(shù)據(jù)采集系統(tǒng)的高性能方面的研究上取得了很大的成就。就 A/D 轉(zhuǎn)換的精度、速度和通道數(shù)來說,采樣通道從單通道發(fā)展到雙通道、多通道,采樣頻率、分辨率、精度逐步提高,為分析功能的加強提供了前提條件。而在數(shù)據(jù)分析的微處理器上,最初的數(shù)據(jù)采集系統(tǒng)以 8 位單片機為核心,隨著微電子技術(shù)的不斷發(fā)展,新興單片機的不斷問世,十六位、三十二位單片機也為數(shù)據(jù)采集系統(tǒng)研制廠家所采用,近年來采用具有 DSP 功能的數(shù)據(jù)采集系統(tǒng)也己投入市場。同時,通用 PC 機的 CPU 用于數(shù)據(jù)處理也較為常見??傊?,伴隨著高性能微處理器的采用和用戶技術(shù)要求的不斷提高,數(shù)據(jù)采集系統(tǒng)的功能也越來越完善。數(shù)據(jù)采集系統(tǒng)的發(fā)展主要體現(xiàn)在以下幾個趨勢: 
  首先,在專業(yè)測控方面,基于 PC 計算機的數(shù)據(jù)采集系統(tǒng)越來越成熟和智能化。在過去的二十年中,開放式架構(gòu) PC 機的處理能力平均每十八個月就增強一倍。為了充分利用處理器速度的發(fā)展,現(xiàn)代開放式測量平臺結(jié)合了高速總線接口,如 PCI和 PXI/Compact PCI,以便獲得性能的進一步提升。計算機的性能提升和由此引起的基于計算機的測量技術(shù)的創(chuàng)新,正在持續(xù)不斷地模糊著傳統(tǒng)儀器和基于計算機的測量儀器之間的界線。 
  其次,在通用測控方面,采用嵌入式微處理器的方案也由早期的采用 A/D 器件和標準單片機組成應用系統(tǒng)發(fā)展到在單芯片上實現(xiàn)完整的數(shù)據(jù)采集與分析,即目前極為熱門的 SOC (System On Chip)。通常在一塊芯片上會集成一個,可以采樣多路模擬信號的 A/D 轉(zhuǎn)換子系統(tǒng)和一個硬 CPU 核(比如增強型 80_52 內(nèi)核),而且其CPU 的運算處理速度和性能也較早期的標準 CPU 內(nèi)核提高了數(shù)倍,而且有著極低的功耗。這種單芯片解決方案降低了系統(tǒng)的成本和設(shè)計的復雜性。 
  此外,為了解決 SOC 方案中數(shù)據(jù)處理性能的不足,采用 DSP 作為數(shù)據(jù)采集系統(tǒng)的 CPU 的研究與應用目前也逐漸引起業(yè)內(nèi)重視。但是這類產(chǎn)品目前僅僅處于發(fā)展的初級階段,在精度、速度或其它性能指標上并不能很好的滿足要求。因此,國內(nèi)外以 DSP 作為數(shù)據(jù)采集系統(tǒng)的采樣控制和分析運算的研究與應用正在展開。 
  近年來隨著芯片技術(shù)、計算機技術(shù)和網(wǎng)絡技術(shù)的發(fā)展,數(shù)據(jù)采集技術(shù)取得了許多新的技術(shù)成果,市場上推出了繁多的新產(chǎn)品。高速數(shù)據(jù)采集技術(shù)的發(fā)展一方面是提高采集速率,另一方面不斷向兩端延伸。一端是輸入的信號調(diào)理,另一端是采集后的數(shù)字化信號的實時處理與事后處理。20世紀90年代末,隨著數(shù)字技術(shù)快速發(fā)展,數(shù)據(jù)采集技術(shù)已向著并行、高速、大量存儲、實時分析處理、集成化等方向發(fā)展。 
  (1)采樣方式 
 ?、龠^采樣(Over Sampling)。采樣方式中最早是過采樣,根據(jù)采樣定理,采樣頻率fs必須高于被采信號最高頻率fch的兩倍,才不致產(chǎn)生頻率混疊現(xiàn)象。例如信號最高頻率為10kHz,采樣頻率必須高于20kHz。 
 ?、谇凡蓸樱║nder Sampling)。在通信和動態(tài)數(shù)據(jù)的采集中,發(fā)展了一種欠采樣技術(shù),即采樣頻率fs可以低于信號頻率fch,但信號的頻帶寬度不得大于0.5fs,利用采樣信號產(chǎn)生的高次諧波,將采樣后的信號移至第二或者更高的奈奎斯特區(qū)。例如采樣頻率fs為10kHz,可對頻帶fch落于11~14kHz的信號(頻帶寬度為3kHz,低于0.5fs=5kHz)進行欠采樣。于是在采樣頻率2次諧波兩邊產(chǎn)生的采樣后的信號頻帶為f2ch = 2fs±fch = 20 kHz±(11~14 kHz)= 31~34 kHz,或9~6 kHz 
 ?、鄣刃r間采樣(Equivalent Time Sampling )。主要是對于重復的周期波形進行等效時間采樣。例如美國泰克公司的TDS784D數(shù)字存儲示波器,其實際的采樣頻率為 1 GS/s ( 1GHz ),對于重復的周期信號,采取周期微差法,可以達到250GS/s(250GHz)的等效時間采樣。例如對于 1 GHz 的方波,進行周期微差法采樣,每個周期的采樣只有微小的時差,將若干個周期中的樣點集中排列,即可測出方波上升沿和下降沿的波形。對于單次瞬態(tài)信號,這種方法是無效的。 
 ?、茏兯俾首兎直媛什蓸?。 
  (2)采集方式的發(fā)展 
 ?、賿呙枋讲杉⊿canning Acquisition):時分制、多通道巡回采集。 
  ②并行式采集(Parallel Acquisition):多個通道同步并行采集,每個通道采用一個獨立的A/D轉(zhuǎn)換器,通道采集速率只取決于A/D的轉(zhuǎn)換速率,與通道數(shù)無關(guān)。 
 ?、劢惶娌杉↖nternative Acquisition):一個通道由多個A/D轉(zhuǎn)換器交替采集,使每個通道采樣速率等于多個A/D的轉(zhuǎn)換速率之和,可以高于單個A/D的轉(zhuǎn)換速率。 
  (3)采集數(shù)據(jù)的實時分析與處理軟件 
  目前國外的測試儀器或系統(tǒng)生產(chǎn)廠家,在生產(chǎn)硬件的同時,推出其相應的支持軟件或軟件開發(fā)平臺,如為產(chǎn)品開發(fā)者提供的軟件工具;為系統(tǒng)集成者提供系統(tǒng)應用軟件的集成的環(huán)境;為終端用戶提供編寫自己的用戶應用程序的手段。 
  1.4 本文主要內(nèi)容和章節(jié)安排  
  本文完成了一種基于MATLAB的數(shù)據(jù)采集系統(tǒng)的方案的設(shè)計,實現(xiàn)了在MATLAB環(huán)境下利用聲卡和MATLAB數(shù)據(jù)采集工具箱進行的數(shù)據(jù)采集與分析。 
  全文的結(jié)構(gòu)安排如下: 
  第一章  緒論,說明了研究背景、意義、國內(nèi)外現(xiàn)狀,以及系統(tǒng)的發(fā)展現(xiàn)狀。 
  第二章  主要介紹了系統(tǒng)結(jié)構(gòu)特點及性能 
  第三章  主要介紹了聲卡、MATLAB軟件及其工具箱的使用 
  第四章  主要討論了系統(tǒng)結(jié)構(gòu)功能設(shè)計與實現(xiàn),以及數(shù)據(jù)采集與分析的具體過程 
  第五章  主要對數(shù)據(jù)采集進行了舉例  
  2數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)特點  
  2.1  系統(tǒng)組成結(jié)構(gòu)  
  數(shù)據(jù)采集系統(tǒng)主要由兩部分組成:采集子系統(tǒng)和計算機子系統(tǒng),即下位機智能數(shù)據(jù)采集系統(tǒng)和上位機 HMI(Human Machine Interface)系統(tǒng)。采集子系統(tǒng)實現(xiàn)將客觀世界被測對象信號采集和轉(zhuǎn)換為能被計算機處理的數(shù)字信號的功能等;計算機子系統(tǒng)實現(xiàn)對采集數(shù)據(jù)的控制、存儲和處理等功能,計算機起著對采集數(shù)據(jù)的存儲和處理、統(tǒng)計分析、提供人機接口與其他計算機的數(shù)據(jù)通信和交換的功能。 
  數(shù)據(jù)采集系統(tǒng)涉及多學科,所研究的對象是物理或生物等各種非電或電信號。根據(jù)各種非電或電信號的特征,利用相應的歸一化技術(shù),將其轉(zhuǎn)換為可真實反映事物特征的電信號后,經(jīng)A/D轉(zhuǎn)換器轉(zhuǎn)換為計算機可識別的有限長二進制數(shù)字編碼,以此作為研究自然科學和實現(xiàn)工業(yè)實時控制的重要依據(jù),實現(xiàn)對宏觀和微觀自然科學的量化認識,典型的數(shù)據(jù)采集系統(tǒng)組成如圖2-1所示。 

          圖2-1   典型數(shù)據(jù)采集系統(tǒng)的組成 
  而一般的外置式數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)如圖2-2所示。模擬信號由傳感器采得經(jīng)過信號調(diào)理模塊送入數(shù)據(jù)采集硬件設(shè)備。在數(shù)據(jù)采集設(shè)備中完成A/D轉(zhuǎn)換,包括采樣、量化、編碼,轉(zhuǎn)化成數(shù)字信號后送入與之相連的PC機中。根據(jù)不同的要求,在PC機上利用MATLAB以及二次編程實現(xiàn)數(shù)據(jù)的實時分析與處理。用戶可以通過人機交互界面修改、設(shè)定各項參數(shù)來控制數(shù)據(jù)采集硬件設(shè)備的工作狀態(tài),同時可以得到數(shù)據(jù)的采集與分析結(jié)果, 從而實現(xiàn)數(shù)據(jù)采集與分析的自動化。 

       圖2-2 一般的外置式數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu) 
  利用聲卡在WINDOWS環(huán)境下開發(fā)數(shù)據(jù)采集系統(tǒng)時,由于受編程語言的限制,其數(shù)據(jù)分析與處理的功能非常有限。例如,為了對所采集的數(shù)據(jù)進行功率譜分析,則需要用戶以VB或C語言來編寫功率譜分析的子程序,這顯然增加了開發(fā)的難度,并且也極不利于分析功能的進一步擴展。 
  而利用聲卡作為A/D轉(zhuǎn)換工具,經(jīng)過衰減和取樣電路得到的模擬信號送至聲卡的線路輸入端LINEIN,并利用MATLAB中提供的數(shù)據(jù)采集工具箱,可滿足控制聲卡進行數(shù)據(jù)采集的要求。用戶通過調(diào)用MATLAB命令, 可對采集的數(shù)據(jù)進行分析和處理。 
  整個系統(tǒng)可分為數(shù)據(jù)采集和數(shù)據(jù)分析兩大部分,以友好的圖形界面與用戶進行交互溝通。數(shù)據(jù)采集部分實現(xiàn)數(shù)據(jù)采集功能,根據(jù)用戶選擇的采樣頻率和預設(shè)的采樣時間,從聲卡獲得用戶需要的數(shù)據(jù);數(shù)據(jù)分析部分對采集到的數(shù)據(jù)進行頻譜分析。全部數(shù)據(jù)的時域和頻域波形以圖形方式直觀地呈現(xiàn)于用戶面前。此外,還提供保存數(shù)據(jù)以及回放數(shù)據(jù)的功能。 
  圖2-3給出了基于MATLAB的數(shù)據(jù)采集系統(tǒng)的簡圖,主要部件數(shù)據(jù)采集工具箱提供了硬件驅(qū)動程序和MATLAB環(huán)境之間“對話”所需的硬件驅(qū)動程序適配器、數(shù)據(jù)采集引擎和M-文件函數(shù). 

  圖2-3  基于MATLAB的數(shù)據(jù)采集系統(tǒng)簡圖 
  硬件驅(qū)動程序適配器在硬件驅(qū)動程序和數(shù)據(jù)采集引擎之間交換屬性數(shù)值、數(shù)據(jù)和事件;數(shù)據(jù)采集引擎用來存儲各個設(shè)備對象,以及每個設(shè)備對象的屬性值;對采集到的數(shù)據(jù)進行存儲并且使不同事件同步;M-文件用來創(chuàng)建設(shè)備對象、采集或輸出數(shù)據(jù)、配置屬性值和檢測數(shù)據(jù)采集狀態(tài)和數(shù)據(jù)采集設(shè)備。

    2.2 系統(tǒng)的特點和性能指標  
  現(xiàn)代數(shù)據(jù)采集系統(tǒng)發(fā)展到今天,一般來說具有如下主要特點: 
 ?。?)現(xiàn)代采集系統(tǒng)一般都由計算機控制,使得數(shù)據(jù)采集的質(zhì)量和效率等大為提高,也節(jié)省了硬件投資。 
 ?。?)軟件在數(shù)據(jù)采集系統(tǒng)中的作用越來越大,增加了系統(tǒng)設(shè)計的靈活性。 
 ?。?)數(shù)據(jù)采集與數(shù)據(jù)處理相互結(jié)合的日益緊密,形成數(shù)據(jù)采集與處理系統(tǒng),可實現(xiàn)從數(shù)據(jù)采集、處理到控制的全部工作。 
  (4)數(shù)據(jù)采集過程一般都具有“實時”特性,實時的標準是能滿足實際需要;對于通用采集系統(tǒng)一般希望有盡可能高的速度,以滿足更多的應用環(huán)境。 
 ?。?)隨著電子技術(shù)的發(fā)展,電路集成度的提高,數(shù)據(jù)采集系統(tǒng)的體積越來越小,可靠性越來越高,甚至出現(xiàn)了單片數(shù)據(jù)采集系統(tǒng)。 
 ?。?)總線在數(shù)據(jù)采集系統(tǒng)中有著廣泛的應用,總線技術(shù)它對數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)的發(fā)展起著重要作用。 
  評價一個數(shù)據(jù)采集系統(tǒng)的性能有很多指標,但是一般采用以下幾個比較常用的指標進行評價。 
  (1)系統(tǒng)分辨率 
  系統(tǒng)分辨率是指數(shù)據(jù)采集系統(tǒng)可以分辨的輸入信號的最小變化量。通??梢杂萌缦聨追N方法表示系統(tǒng)分辨率: 
  使用系統(tǒng)所采用的 A/D 轉(zhuǎn)換器的位數(shù)表示系統(tǒng)分辨率; 
  使用最低有效位值(LSB)占系統(tǒng)滿度值的百分比表示系統(tǒng)分辨率; 
  使用系統(tǒng)可分辨的實際電壓數(shù)值表示系統(tǒng)分辨率; 
  使用滿度值可以分的級數(shù)表示系統(tǒng)分辨率。 
 ?。?)系統(tǒng)精度 
  系統(tǒng)精度是指當系統(tǒng)工作在額定采集速率下,整個數(shù)據(jù)采集系統(tǒng)所能達到的轉(zhuǎn)換精度。A/D 轉(zhuǎn)換器的精度是系統(tǒng)精度的極限值。實際上,系統(tǒng)精度往往達不到A/D 轉(zhuǎn)換器的精度。因為系統(tǒng)精度取決于系統(tǒng)的各個環(huán)節(jié)(子系統(tǒng))的精度,如前置放大器、濾波器、模擬多路開關(guān)等。只有當這些子系統(tǒng)的精度都明顯優(yōu)于 A/D 轉(zhuǎn)換器的精度時,系統(tǒng)精度才有可能達到 A/D 轉(zhuǎn)換器的精度。系統(tǒng)精度是系統(tǒng)的實際輸出值與理論輸出值之差,它是系統(tǒng)各種誤差的總和,通常表示為滿度值的百分數(shù)。 
 ?。?)采集速率 
  采集速率又稱為系統(tǒng)通過速率或吞吐率,是指在滿足系統(tǒng)精度指標的前提下,系統(tǒng)對輸入的模擬信號在單位時間內(nèi)所能完成的采集次數(shù),或者說是系統(tǒng)每個通道、每秒鐘可采集的有效數(shù)據(jù)的數(shù)量。這里說的“采集”包括對被測物理量進行采樣、量化、編碼、傳輸和存儲的全部過程。 
 ?。?)動態(tài)范圍 
  動態(tài)范圍是指某個確定的物理量的變化范圍。信號的動態(tài)范圍是指信號的最大幅度和最小幅度之比的分貝數(shù)。 
  2.3 系統(tǒng)常見的幾種結(jié)構(gòu)形式  
 ?。?)多通道共享采樣/保持器和 A/D 轉(zhuǎn)換器數(shù)據(jù)采集系統(tǒng) 
  這種系統(tǒng)構(gòu)成如下圖所示,這種結(jié)構(gòu)形式采用分時轉(zhuǎn)換工作的方式,多路被測信號共用一個采樣/保持器和一個 A/D 轉(zhuǎn)換器。當采樣保持器的輸出已充分逼近輸入信號(按給定精度)時,在控制命令的作用下,采樣保持器由采樣狀態(tài)進入保持狀態(tài),A/D 轉(zhuǎn)換器開始進行轉(zhuǎn)換,轉(zhuǎn)換完畢后輸出數(shù)字信號。在轉(zhuǎn)換期間,多路開關(guān)將下一路信號切換到采樣/保持器的輸入端,系統(tǒng)不斷重復以上的操作,可以實現(xiàn)對多通道模擬信號的數(shù)據(jù)采集。采樣方式可以按順序或隨機進行。 

多通道共享采樣保持器和 AD 轉(zhuǎn)換器數(shù)據(jù)采集系統(tǒng)圖 
  這種采集系統(tǒng)結(jié)構(gòu)形式最簡單,所用芯片數(shù)量少,適用于信號變化率不高、對采樣信號不要求同步的場合。如果被測信號變化速率較慢,可以不用采樣保持器,直接進行 A/D 轉(zhuǎn)換。如果信號很弱而干擾噪聲強,需要在系統(tǒng)電路中增加信號放大電路和濾波環(huán)節(jié)。 
 ?。?)多通道同步數(shù)據(jù)采集系統(tǒng) 

   多通道同步型數(shù)據(jù)采集系統(tǒng)圖 
  其結(jié)構(gòu)如上圖所示,也屬于分時轉(zhuǎn)換系統(tǒng)。 
  多路模擬輸入信號共用一個 A/D 轉(zhuǎn)換器,但是每個通道各有一個采樣/保持器,在同一采樣指令控制下對各路信號同步進行信號采樣,得到各路信號在同一時刻的瞬時值。模擬開關(guān)分時將各路采樣/保持器切換到 A/D 轉(zhuǎn)換器上,進行模數(shù)轉(zhuǎn)換。這些同步數(shù)據(jù)可以描述各路信號的相位關(guān)系,所以這種結(jié)構(gòu)被稱為同步型數(shù)據(jù)采集系統(tǒng)。 
  由于各路信號必須串行的在共用的 A/D 轉(zhuǎn)換器中進行轉(zhuǎn)換和計算,若采樣信號回路過多時,這種采集結(jié)構(gòu)的速度仍然較慢。 
 ?。?)多通道并行數(shù)據(jù)采集系統(tǒng) 
  
  多通道并行數(shù)據(jù)采集系統(tǒng)框圖如上圖所示。這種結(jié)構(gòu)形式中,每個通道都有自己的采樣保持器和A/D轉(zhuǎn)換器,經(jīng)過A/D轉(zhuǎn)換的數(shù)據(jù)經(jīng)過接口電路送到計算機中。相對于前兩種數(shù)據(jù)采集系統(tǒng),這種結(jié)構(gòu)形式的數(shù)據(jù)采集速度最快,但所用的硬件電路復雜,成本較高。 
  通用型模擬量數(shù)據(jù)采集模塊則屬于這一類的數(shù)據(jù)采集子系統(tǒng)。數(shù)據(jù)采集模塊是屬于單片機的智能器件,在整個數(shù)據(jù)采集系統(tǒng)中,每個模塊可以認為是實時、并行地工作,每個模塊僅完成幾路信號的檢測和采集,實時響應性能優(yōu)。 
 ?。?)分布式數(shù)據(jù)采集系統(tǒng) 
  以上介紹的三種結(jié)構(gòu)形式中,系統(tǒng)各部件之間的空間距離很近,邏輯上耦合程度緊密,都可以稱之為數(shù)據(jù)采集系統(tǒng)。這種系統(tǒng)的優(yōu)點是:結(jié)構(gòu)簡單,容易實現(xiàn),能滿足中小規(guī)模的集中數(shù)據(jù)采集的要求。在市面上均有成熟產(chǎn)品可供選用。系統(tǒng)的體積和設(shè)備量小,造價低。 
  由于工作原理、結(jié)構(gòu)形式和性能設(shè)計等原因,這類系統(tǒng)也存在不少缺點: 
  因為系統(tǒng)結(jié)構(gòu)不靈活,不易擴展,所以不適合大規(guī)模的數(shù)據(jù)采集應用場合??垢蓴_能力差,尤其對于被測對象物理位置分散、傳感器輸出的微弱信號需要長距離傳輸時,所受的干擾不容忽視的??煽啃圆睢O到y(tǒng)結(jié)構(gòu)中某一部件出現(xiàn)故障會導致整個系統(tǒng)工作崩潰。由于各部件之間緊密耦合,導致系統(tǒng)的可擴展性和靈活性差。分布式數(shù)據(jù)采集系統(tǒng)是數(shù)據(jù)采集技術(shù)、計算機技術(shù)和通信技術(shù)綜合和發(fā)展的產(chǎn)物,基于“分散采集、集中管理”的思想設(shè)計的系統(tǒng)結(jié)構(gòu)形式,由若干個“數(shù)據(jù)采集點”和上位機以及通信接口組成。分布式數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu)如下圖所示: 

           分布式數(shù)據(jù)采集系統(tǒng)圖 
  處于分散部位的數(shù)據(jù)采集點相當于小型的集中數(shù)據(jù)采集系統(tǒng),位于被測對象的附近,可獨立完成數(shù)據(jù)采集和預處理任務,并將采集的數(shù)據(jù)轉(zhuǎn)換為數(shù)字信號的形式傳送給上位機,采用數(shù)據(jù)傳輸?shù)姆椒梢钥朔M信號傳輸?shù)墓逃腥毕荨7植际綌?shù)據(jù)采集系統(tǒng)的主要特點是: 
 ?。?)系統(tǒng)適應能力強。因為可以通過選用適當數(shù)量的數(shù)據(jù)采集點來構(gòu)成相應規(guī)模的系統(tǒng),所以無論是大規(guī)模的系統(tǒng),還是中小規(guī)模的系統(tǒng),分布式結(jié)構(gòu)都能夠適應。 
 ?。?)系統(tǒng)可靠性高。由于采用了多個數(shù)據(jù)采集點,若某個數(shù)據(jù)采集點出現(xiàn)故障,只會影響某項數(shù)據(jù)的采集,而不會對系統(tǒng)的其他部分造成任何影響。 
 ?。?)系統(tǒng)實時相應性好。由于系統(tǒng)各個數(shù)據(jù)采集點之間是真正“并行”工作的,所以系統(tǒng)的實時相應性較好。 
 ?。?)另外,這種數(shù)據(jù)采集系統(tǒng)是用數(shù)字信號傳輸代替模擬信號傳輸,有利于克服常模干擾和共模干擾。因此,這種系統(tǒng)特別適合于在惡劣的環(huán)境下工作。目前對于大規(guī)模的數(shù)據(jù)采集場合一般都采用分布式結(jié)構(gòu),根據(jù)不同的數(shù)據(jù)采集工作原理、結(jié)構(gòu)形式和性能特點,在本系統(tǒng)中采用集中式的數(shù)據(jù)采集器件作為數(shù)據(jù)采集終端,采用上下位的連接方式,最終組成整個數(shù)據(jù)采集系統(tǒng)。 
  3 MATLAB軟件 
  3.1 MATLAB 簡介  
  MATLAB 是美國MathWorks 公司開發(fā)的一種功能極其強大的高技術(shù)計算機語言和內(nèi)容極其豐富的軟件庫,它適合于工程各領(lǐng)域的分析設(shè)計與復雜計算的軟件,該軟件包括基本部分和專業(yè)擴展兩大部分.擴展部分稱為工具箱,用于解決某一方面的專業(yè)問題.它以矩陣和向量的運算以及運算結(jié)果的可視化為基礎(chǔ),把廣泛應用于各個學科領(lǐng)域的數(shù)值分析、矩陣計算、函數(shù)生成、信號處理、圖形及圖像處理、建模與仿真等諸多強大功能集成在一個便于用戶使用的交互式環(huán)境中,為使用者提供了一個高效的編程工具及豐富的算法資源。對于信號處理和圖像處理等數(shù)字處理領(lǐng)域,MATLAB 更是得天獨厚,它豐富的M文件和強大的繪圖可視功能為使用者帶來了極大的方便, 被廣泛的應用于信號與圖像處理、控制系統(tǒng)設(shè)計、通信、系統(tǒng)仿真等諸多領(lǐng)域,尤其對初學者可起到事半功倍之效。 
  MATLAB是一種解釋語言,所有的程序和指令都必須在MATLAB解釋器中讀入后才能運行,因而極大地限制了代碼執(zhí)行速度。MATLAB強大的計算功能只能在其平臺上才能使用,也就是說,必需在安裝了其解釋器的機器上才能使用MATLAB的M文件,這樣就給工程應用帶來了很大不便。對于一般用戶來講,MATLAB只能作為離線的計算和分析工具,而不能作為實時的工程工具。幸運的是,開發(fā)MATLAB的MathWorks公司為廣大的應用者提供了應用程序接口(API,ApplicationProgram Interface)和編譯器(Compiler)。利用MATLAB和C語言交互,也可以開發(fā)基于MATLAB的數(shù)據(jù)采集系統(tǒng)。如果配上數(shù)據(jù)采集線路,該系統(tǒng)就可以作為一個虛擬儀器來使用。 
  3.2 數(shù)據(jù)采集工具箱及聲卡簡介  
  MATLAB 自帶的數(shù)據(jù)采集工具箱(Data Acquisitiontoolbox, DAQ) 能更容易地將實驗測得的數(shù)據(jù)進行分析和可視化操作。數(shù)據(jù)采集設(shè)備包括: 多媒體聲卡、美國國家儀器E系列和1200 系列接口板、Hewlett-Packard-VXIE1432- 系列接口板及其他各種數(shù)據(jù)采集硬件設(shè)備。數(shù)據(jù)采集硬件設(shè)備的內(nèi)部特性對MATLAB 的接口完全透明, 無論是使用一個或幾個硬件設(shè)備, 數(shù)據(jù)采集工具箱都會向所有硬件設(shè)備提供單一和統(tǒng)一的接口。通過調(diào)用MATLAB 命令和函數(shù)可對與計算機兼容的數(shù)據(jù)采集硬件設(shè)備進行訪問并對其屬性進行可視化監(jiān)控。 
  數(shù)據(jù)采集工具箱是一種建立在MATLAB環(huán)境下的M函數(shù)文件和MEX動態(tài)鏈接庫文件的集合,包含3大區(qū)域的組件:M文件函數(shù)、數(shù)據(jù)采集引擎及硬件驅(qū)動適配器。它具有如下特點:是一種通過使用與PC機兼容的、即插即用的數(shù)據(jù)采集設(shè)備在MATLAB環(huán)境中的架構(gòu);支持模擬信號的輸入輸出以及數(shù)字信號的輸入、輸出,子系統(tǒng)還包括同步模擬輸入輸出的轉(zhuǎn)換;支持聲卡;事件驅(qū)動采集。 
  在MATLAB數(shù)據(jù)采集工具箱里集成了數(shù)據(jù)采集的M 文件格式的函數(shù)和MEX文件格式的動態(tài)鏈接庫。其主要特征如下: 
  (1)提供了將實時測量數(shù)據(jù)從數(shù)據(jù)采集硬件采集到MATLAB中的框架。 
  (2)支持模擬量輸入(AI)、模擬量輸出(A0)以及數(shù)字量I/0子系統(tǒng),包括模擬量I/O實時變換。 
  (3)支持PC聲卡和業(yè)界非常流行的數(shù)據(jù)采集設(shè)備如NI卡、并行口(LPT1-LPT3)、Keithley卡等。 
  (4)采用事件驅(qū)動模式進行數(shù)據(jù)采集。數(shù)據(jù)采集工具箱由3部分組成:M文件格式的函數(shù)、數(shù)據(jù)采集引擎和硬件驅(qū)動,如圖3-1所示。這些組成部分使得MATLAB與數(shù)據(jù)采集硬件之間的信息傳遞成為可能。 

  
         圖3-1 數(shù)據(jù)采集引擎與硬件驅(qū)動 
 
目前市面上的數(shù)據(jù)采集卡一般都包含了完整的數(shù)據(jù)采集電路和與計算機的接口電路,如NI公司的E系列數(shù)據(jù)采集卡、研華的數(shù)據(jù)采集卡等, 其價格是與性能成正比的,可以說比較昂貴。在采樣頻率要求不高的情況下,可以利用計算機的聲卡作為數(shù)據(jù)采集的輸入和輸出。而如今聲卡技術(shù)已經(jīng)成熟,成本越來越低。一般的聲卡都可以實現(xiàn)雙通道、16 位、高保真的數(shù)據(jù)采集,采樣率甚至可以達到48KHz。對于許多科學試驗和工程測量來說,其樣本量化精度和采樣率是足夠高的,甚至優(yōu)于目前常用數(shù)據(jù)采集卡的性能。將其用于數(shù)據(jù)采集,性價比相當高。 
  聲卡是一個非常優(yōu)秀的音頻信號采集系統(tǒng),其數(shù)字信號處理器包括模數(shù)轉(zhuǎn)換器(ADC) 和數(shù)模轉(zhuǎn)換器(DAC) ,ADC 用于采集音頻信號,DAC用于重現(xiàn)這些數(shù)字聲音,轉(zhuǎn)換率達到44.1KHz。聲卡已成為多媒體計算機的一個標準配置,利用聲卡進行采樣與輸出,就不需要購買專門的采集卡可以降低虛擬儀器的開發(fā)成本,且在音頻范圍內(nèi)可以完全滿足實驗要求。 
  3.3 MATLAB在數(shù)據(jù)采集中的應用  
  數(shù)據(jù)采集工具箱集成于MATLAB中,所以在進行數(shù)據(jù)采集的同時,可以對采集的數(shù)據(jù)進行實時分析,或者存儲后再進行處理,或者針對數(shù)據(jù)分析的需要對測試條件的設(shè)立進行不斷的更新。應用數(shù)據(jù)采集工具箱提供的命令和函數(shù)可以控制任何類型的數(shù)據(jù)采集。例如,在硬件設(shè)備運行時,可以獲取事件信息,評估采集狀態(tài),定義觸發(fā)器和回訪狀態(tài),預覽數(shù)據(jù)以及進行實時分析,可以設(shè)置和顯示所有的硬件特性以滿足用戶的技術(shù)指標。 
  4系統(tǒng)設(shè)計方案  
  聲音信號的采集與分析處理在工程應用中是經(jīng)常需要解決的問題,如何實時采集聲音信號并對其分析處理,從而找出聲音信號的特征在科學研究中是一項非常有意義的工作。 
  聲卡是多媒體計算機系統(tǒng)中最基本、最常用的硬件之一,其技術(shù)發(fā)展已經(jīng)成熟,它具有AD/DA轉(zhuǎn)換功能,現(xiàn)已被廣泛應用于聲音信號采集和虛擬儀器系統(tǒng)的設(shè)計。MATLAB則是一種功能強大、計算效率高、交互性好的數(shù)學計算和可視化計算機高級語言,它將數(shù)值分析、信號采集與處理和圖形顯示有機地融為一體,形成了一個極其方便、用戶界面友好的操作環(huán)境。本文所設(shè)計的聲音信號采集與分析系統(tǒng)就是充分利用了聲卡的AD/DA轉(zhuǎn)換功能和MATLAB強大的數(shù)據(jù)處理功能,同時,該系統(tǒng)還是建立在MATLAB軟件的圖形界面實現(xiàn)的,因而使系統(tǒng)具有良好的交互性。 
  基于計算機聲卡的數(shù)據(jù)采集系統(tǒng)有以下特點: 
 ?。?)價格低廉。在數(shù)據(jù)采集時,所要采用的是模數(shù)轉(zhuǎn)換芯片,對于某些應用場合,可以利用計算機上所附帶的聲卡實現(xiàn)數(shù)據(jù)采集任務。 
 ?。?)靈活性強。用戶不僅可以進行實時監(jiān)視和控制操作,還可以把數(shù)據(jù)保存到硬盤,供以后分析使用。在CPU足夠快的條件下,還可以實時處理數(shù)據(jù),動態(tài)顯示波形的頻譜、功率譜。另外在一臺計算機上,可以插若干塊聲卡,組成多通道數(shù)據(jù)采集系統(tǒng)。 
  (3)頻率范圍較窄,不能測直流。由于受聲卡的硬件限制,要得到較好的波形,輸入信號的頻率最好在100Hz~15kHz范圍內(nèi)。 
    總之,運用廉價的聲卡,構(gòu)成一個較高的采樣精度,中等采樣頻率,且具有很大靈活性的數(shù)據(jù)采集系統(tǒng),對于一些應用領(lǐng)域是一種很好的選擇。 
  4.1 系統(tǒng)結(jié)構(gòu)設(shè)計  
  MATLAB提供了一個數(shù)據(jù)采集工具箱(Data Acquisition Toolbox),在該數(shù)據(jù)采集工具箱中,有一整套的命令和函數(shù),可用來直接控制與PC機兼容的數(shù)據(jù)采集設(shè)備進行數(shù)據(jù)采集,因此,利用MATLAB的這一工具箱便可進行聲音信號的采集。然后在MATLAB中直接調(diào)用頻譜分析函數(shù)、功率譜分析函數(shù)或數(shù)值分析函數(shù)等,就可以將采集到的聲音信號分別進行頻譜、功率譜分析等多種譜分析。因此,在MATLAB中可以很容易地實現(xiàn)信號采集與分析處理工作。 
  
  
             圖4-1系統(tǒng)實現(xiàn)的總體框圖                                      
  從系統(tǒng)框圖上看,整個系統(tǒng)結(jié)構(gòu)簡單,而且數(shù)據(jù)的后續(xù)分析方便,不需要再進行數(shù)據(jù)轉(zhuǎn)移,而直接在MATLAB軟件中完成分析處理工作。在該系統(tǒng)中,從硬件上來講,只需必要的信號預處理電路和一臺普通的多媒體計算機(或筆記本電腦)即可;從軟件上來講,則只需使用本文中所編制的程序,便可從聲卡獲取數(shù)據(jù)并保存為文件,然后再可根據(jù)實際需要進行數(shù)據(jù)分析處理。 
  4.2 系統(tǒng)功能設(shè)計  
  本系統(tǒng)由數(shù)據(jù)采集和數(shù)據(jù)分析兩大部分組成,數(shù)據(jù)采集部分是實現(xiàn)信號采集功能,根據(jù)用戶選擇的采樣頻率和預設(shè)的采樣樣本數(shù)從聲卡獲得用戶需要的數(shù)據(jù)。數(shù)據(jù)分析部分主要實現(xiàn)以下功能:(1)從信號采集部分獲取數(shù)據(jù),或者從數(shù)據(jù)文件讀取數(shù)據(jù);(2)實現(xiàn)將采集到的聲音信號數(shù)據(jù)進行頻譜分析,畫出頻譜圖以圖形方式很直觀地反映出信號特征;(3)保存數(shù)據(jù),包括保存所有數(shù)據(jù)和部分數(shù)據(jù)的功能,同時保存對應的頻譜數(shù)據(jù);(4)顯示聲音信號數(shù)據(jù)的時域圖和頻譜圖;(5)其他功能。根據(jù)不同的需要,還可以進行修改,以選擇合適的實驗方案。 
  4.3 系統(tǒng)設(shè)計實現(xiàn)  
  聲音信號采集功能的實現(xiàn)是由MATLAB控制計算機聲卡將傳感器得到的模擬信號轉(zhuǎn)換為數(shù)字信號并存儲在計算機中;而信號分析功能是將采集得到的數(shù)據(jù)進行時、頻域分析和各項數(shù)值分析等。整個系統(tǒng)設(shè)計主要包括系統(tǒng)的硬件配置、編制程序?qū)崿F(xiàn)數(shù)據(jù)采集、編制程序?qū)崿F(xiàn)數(shù)據(jù)分析及系統(tǒng)的界面設(shè)計四部分。 
  4.3.1 聲音信號采集的硬件配置  
  將聲卡插入計算機的PCI插槽,安裝好相應的驅(qū)動程序后,將聲音傳感器設(shè)備與聲卡的模擬輸入端連接起來,這就構(gòu)建了聲音采集的硬件設(shè)備,需要注意的是對聲音傳感器的選擇,應選擇音頻專用電纜或屏蔽電纜以減小噪聲信號的引入,最好能選擇單向性聲音傳感器。在MATLAB的信號采集工具箱中有專門為聲卡生成一個操作對象的函數(shù),初始化該操作對象即能建立MATLAB與聲卡的通信,并為已創(chuàng)建的聲卡設(shè)備對象增加數(shù)據(jù)采集通道和觸發(fā)方式。若缺省設(shè)置則系統(tǒng)采用一個數(shù)據(jù)通道、手動觸發(fā)方式啟動工作。進行數(shù)據(jù)采集時,根據(jù)所配置的聲卡的工作特性和信號分析的設(shè)計要求,可設(shè)置相應的參數(shù)來控制聲卡在數(shù)據(jù)采集時的行為,如采樣頻率、采樣時間、預計模擬信號的輸入/輸出范圍、采樣的出發(fā)方式,采樣點數(shù)據(jù)的存儲等。另外需要注意的一點是采樣頻率是由聲卡的物理特性決定的,實際應用中可以根據(jù)情況選擇一個聲卡支持的采樣頻率.MATLAB支持電平觸發(fā)、事件觸發(fā)和手動觸發(fā)三種方式來啟動數(shù)據(jù)采集工作。聲音信號采集硬件配置的具體實現(xiàn)過程: 
  sound=analoginput(‘winsound’);% ‘winsound’為聲卡的驅(qū)動程序 
  channel=addchannel(sound,1);% 添加通道為單聲道 
  set(sound, ‘SampleRate’,44100);% 設(shè)置采樣頻率為44100Hz 
  set(sound, ‘SamplesPerTrigger’,22050);% 設(shè)置采樣時間為0.5s 
  set(sound, ‘TriggerType’, ‘manual’);% 設(shè)置觸發(fā)方式為手工觸發(fā) 
  ...% 其它的相關(guān)設(shè)置 
  4.3.2 數(shù)據(jù)采集  
  啟動設(shè)備對象,控制聲卡開始采集數(shù)據(jù),采集過程中可以向聲卡發(fā)送控制命令,如暫停采集、退出采集等。采集到的數(shù)據(jù)被暫時存放在計算機的內(nèi)存中,理論上可采集的最大數(shù)據(jù)量是由計算機的內(nèi)存量所決定的。同時, MATLAB能夠記錄采集設(shè)備的硬件屬性、采集的啟動時刻、采集時間、采樣頻率及采樣通道等信息,如果采集過程中出現(xiàn)了錯誤,則出錯的時刻、錯誤產(chǎn)生的來源等信息也都會被記錄下來供后續(xù)工作參考。需要注意的是,執(zhí)行完一次數(shù)據(jù)采集工作后應刪除設(shè)備對象,將內(nèi)存中的數(shù)據(jù)存儲在硬盤上之后釋放數(shù)據(jù)存儲所占用的內(nèi)存空間,以備下一次采集能有足夠的內(nèi)存空間存儲新的數(shù)據(jù),聲音信號采集的實現(xiàn)程序為: 
start(sound);% 啟動設(shè)備對象 
try 
time=0;data=0; 
[data,time]=getdata(sound);% 獲取采樣數(shù)據(jù) 
catch 
time=0;data=0;disp(‘A timeout occurred’); 
end 
stop(sound);% 停止設(shè)備對象 
delete(sound);% 刪除設(shè)備對象 
  4.3.3 數(shù)據(jù)分析  
  在設(shè)計該部分時,不僅要求實現(xiàn)能從數(shù)據(jù)采集部分直接獲取數(shù)據(jù),還需實現(xiàn)能從文件中讀取以前所保持好的數(shù)據(jù)。之后,用戶可以根據(jù)實際研究的需要,在MATLAB中調(diào)用頻譜分析函數(shù)(periodogram等)、功率譜分析函數(shù)(psd等)或數(shù)值分析函數(shù)(fminbnd等),就可以將采集到的聲音信號分別進行頻譜、功率譜分析等多種譜分析,并且可方便地將分析結(jié)果以圖形的形式顯示出來,如圖4-2所示。在研究蛋殼破損自動檢測過程中,通過對所采集的蛋殼聲音信號進行頻譜分析,找出區(qū)分損殼蛋與好殼蛋的特征變量,從而實現(xiàn)蛋殼破損的自動檢測。對所采集的聲音信號進行頻譜分析的程序為: 
...% 獲取采樣數(shù)據(jù) 
Px=abs(fft(data,512)) 2/512;% 對所采集的數(shù)據(jù)進行傅立葉變換 
px=Px(1:256); 
s=60+10*log10(px); 
...% 其它功能 

                 圖4-2 聲音信號的采集與頻譜分析 
  4.3.4 系統(tǒng)界面設(shè)計  
  利用MATLAB軟件中GUI模塊進行設(shè)計,在MATLAB中可以方便地設(shè)計出基于對話框的圖形用戶界面,它提供了諸如編輯框、按鈕、滾動條等圖形對象,通過對這些圖形對象的有機組合,再對相應的圖形對象編寫程序,就可以設(shè)計出界面友好、操作方便的系統(tǒng)軟件。圖4-2所示為聲音信號采集與頻譜分析系統(tǒng)的運行界面,還可再根據(jù)實際需要進行擴展。 
  建立基于聲卡和MATLAB的信號采集與分析系統(tǒng),能夠?qū)崿F(xiàn)信號采集、設(shè)備控制、數(shù)據(jù)分析以及結(jié)果顯示等功能。實踐證明該系統(tǒng)具有精度高、實時性好、性價比高、人機界面友好、升級修改簡單等優(yōu)點。在進行項目研究過程中,常常需要進行多次實驗,采集大量的數(shù)據(jù),并且要求對數(shù)據(jù)能實時地進行分析處理,該系統(tǒng)能很好地滿足這種研究需要。此外,這一系統(tǒng)還可以擴展應用到其他相關(guān)的領(lǐng)域中,如在語音識別工作中可以用該系統(tǒng)采集語音信號并且加入語音處理的相關(guān)分析等。因此,該系統(tǒng)不僅具有良好的實用性,還可為其他的相關(guān)研究提供理論和應用基礎(chǔ)。 
    語音信號分析處理系統(tǒng)一般由聲電傳感器(麥克風) 、數(shù)據(jù)采集卡、處理器(計算機) 、軟件系統(tǒng)等幾部分組成。商品數(shù)據(jù)采集卡(A/ D 板) 都包含了完整的數(shù)據(jù)采集電路和計算機接口電路,并同時提供驅(qū)動程序,產(chǎn)品和種類繁多,性能價格各異,價格一般都比較貴。PC 機的聲卡本身就是一個廉價同時又非常優(yōu)秀的語音信號采集系統(tǒng),它采用直接內(nèi)存讀取方式傳輸數(shù)據(jù),極大地降低了CPU 的占用率;不僅如此,聲卡16 位的A/ D 轉(zhuǎn)換精度比普通16 位A/ D 卡要高,能夠滿足語音信號采集分析要求。 
  5 應用設(shè)計  
  一、 對聲卡產(chǎn)生的模擬輸入對象(AI) 進行操作 
  聲卡是MATLAB數(shù)據(jù)采集工具箱所支持的一種硬件,用聲卡完成一個簡單的數(shù)據(jù)采集過程,麥克風就成了數(shù)據(jù)采集系統(tǒng)中的傳感器. 
  1)創(chuàng)建設(shè)備對象,這里創(chuàng)建的是一個聲卡AI設(shè)備對象,硬件設(shè)備標示符為2. 
  ai=analoginput(‘winsound’,2); 
  2)給設(shè)備對象添加通道,這里添加1個通道. 
  addchannel(ai,1); 
  3)設(shè)定設(shè)備屬性值,控制數(shù)據(jù)采集. 
  freq=8 000; \采樣頻率8 000 Hz 
  set(AI,SampleRate.freq) 
  duration=2; \采樣時間2 s 
  set(AI,SamplesPerTrigger,duration*freq); 
  4)數(shù)據(jù)采集及結(jié)果處理.在這里首先將所采集到的數(shù)據(jù)進行快速傅立葉變換,然后轉(zhuǎn)化成分貝,并顯示結(jié)果的實數(shù)部分. 
start(ai); 
data=getdata(ai); 
fftdata= abs(fft(data)); 
mag =20*logl0(fftdata); 
mag= mag(1:end/2); 
5)清除內(nèi)存中的設(shè)備對象. 
delete(ai); 
clear ai; 

        圖5-1 采樣過程中沒有對麥克風講話 

       圖5-2 采樣過程中對麥克風講話
 
結(jié)果分析:圖5-1是在采樣過程中打開麥克風,但是沒有對麥克風講話的結(jié)果(對不同品牌、質(zhì)量的聲卡,結(jié)果可能有所不同),圖5-2是在采樣的過程中對麥克風講話的結(jié)果.可以看出,講話與否(傳感器感受端的變化)改變了所采集到的數(shù)據(jù)的結(jié)果. 
  二、 直接利用MATLAB數(shù)據(jù)采集箱中提供的函數(shù)命令進行采集 
  一般的采樣過程是對聲卡產(chǎn)生的模擬輸入對象(AI) 進行操作的,由于計算機配置和模擬通道的運用使得數(shù)據(jù)采集過程顯得煩瑣難以理解,有時還不易獲得采樣數(shù)據(jù)。實驗過程發(fā)現(xiàn)一種更為簡單實用的方法可以進行數(shù)據(jù)采集。在闡述之前,首先介紹一下MATLAB數(shù)據(jù)采集箱中的幾條有關(guān)命令: 
  wavrecord : wavrecord 利用Windows 音頻輸入設(shè)備記錄聲音,其調(diào)用形式為:wavrecord (n ,fs ,ch) 。利用Windows音頻輸入設(shè)備記錄n個音頻采樣, 頻率為fs Hz ,通道數(shù)為ch。采樣值返回到一個大小為n*ch 的矩陣中。缺省時,fs = 11025 ,ch = 1。 
  waveplay: waveplay 利用Windows音頻輸出設(shè)備播放聲音,其調(diào)用形為:waveplay(y ,fs) 。以采樣頻率fs向Windows 音頻設(shè)備發(fā)送向量信號。標準的音頻采樣率有:8000、11025、22050 和44100Hz。 
  wavread :wavread 用于讀取Microsoft 的擴展名為“.wav”的聲音文件。其調(diào)用形式為: y = wavread (file) 。其作用是從字符串file 所指的文件路徑讀取wave 文件,將讀取的采樣數(shù)據(jù)送到y(tǒng) 中。Y的取值范圍: [ -1 ,1 ] 。 
  sound:音頻信號是以向量的形式表示聲音采樣的。sound 函數(shù)用于將向量轉(zhuǎn)換為聲音,其調(diào)用形式為:sound (y ,fs) ,作用是向揚聲器送出向量y 中的音頻信號(采樣頻率為fs) 。 
  應用上述所講到的MATLAB數(shù)據(jù)采集箱提供的函數(shù)進行一次簡單的語音信號的采集實驗。記錄5 秒鐘的8 位音頻語音信號并回放之, 采樣頻率設(shè)為11025Hz。 
﹥﹥fs = 11025 ; \ 設(shè)置采樣頻率 
﹥﹥y1 = wavrecord (5*fs ,fs ,‘uint8’) ; \ 進行無語音采集 
﹥﹥plot (y1) ; 
﹥﹥y2 =wavrecord (5*fs ,fs ,‘uint8’) ; \ 開始采集8位語音信號,時間為5s 
﹥﹥plot (y2) ; 
﹥﹥wavplay(y2 ,fs) ; \ 回放所采集的語音 
﹥﹥sound (y2 ,fs) ; 
﹥﹥y1 =fft (y2) ; \ 做信號的fft 變換 
﹥﹥plot (y2) ; 

                        圖5-3 無聲音信號輸入波形 
                
            圖5-4  有聲音信號輸入波形 
                 
                       圖5-5 聲音信號傅里葉變換  
  圖形分析:用戶可以變換采樣頻率及采樣時間,也可以不同的頻率回放語音。感受不同函數(shù)在相同的頻率下回放的語音信號是否一致。此例進行的是實時回放,若要事后回放則可用wavread 函數(shù)。從程序語言及實現(xiàn)上可看出此方法簡便了許多,而且實驗結(jié)果與傳統(tǒng)方法得到的實驗結(jié)果完全一致。圖5-3為在采樣過程中打開麥克風,但是沒有對麥克風講話的結(jié)果(對不同品牌、質(zhì)量的聲卡,結(jié)果可能不同) ,從圖上可以看到除開始采樣的極短一段時間內(nèi)有個信號接收過程產(chǎn)生階躍外,其余時間內(nèi)波形都在很小的范圍內(nèi)平穩(wěn)的波動。圖5-4是采樣過程中對麥克風講話的結(jié)果,可以看出,講話(傳感器端接收到信號)改變了采集的數(shù)據(jù)的結(jié)果。從圖5-4中看出波形發(fā)生了很大的變化,波形隨聲音信號的高低強弱而發(fā)生變化,可知計算機已經(jīng)通過麥克風接收到了語音信號,說明信號采集工作成功。圖5-5為對采集到的信號進行的快速傅立葉變換所得到的圖形。 
  上面介紹的基于聲卡和MATLAB的語音數(shù)據(jù)采集系統(tǒng),具有實現(xiàn)簡單、性價比和靈活度高的特點。經(jīng)實例分析證明,利用該系統(tǒng)可實現(xiàn)在線連續(xù)采集語音信號并進行分析和處理。 
  應用前文所述的MATLAB 數(shù)據(jù)采集工具箱提供的命令函數(shù)和系統(tǒng)環(huán)境為Windows98 的計算機上的板載聲卡進行簡單數(shù)據(jù)采集。記錄5s的16 bit音頻語音信號并回放, 采樣頻率設(shè)為11025 Hz。 
fs=11025       %設(shè)置采樣頻率 
y1=wavrecord( 5*fs, fs, ‘unit16’)     %進行無語音采集 
plot( y1)           %畫出所采集到的信號的波形 
y2=wavrecord( 5*fs, fs, ‘unit16’)     %進行語音采集 
wavplay( y1, fs) 
sound( y2, fs)      %回放所采集的語音 
  圖5-6是用MATLAB的DAQ工具箱中的命令函數(shù)的方法采集數(shù)據(jù), 采樣過程中傳聲器無語音輸入;圖5-7是用創(chuàng)建聲卡設(shè)備對象的方法采集數(shù)據(jù), 采樣過程中傳聲器有語音輸入。 

圖5-6 傳聲器無語音輸入 

圖5-7 傳聲器有語音輸入
 

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
    轉(zhuǎn)藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多