【正文】
接庫,可以實(shí)時(shí)顯示通過計(jì)算機(jī)數(shù)據(jù)采集硬件采集的數(shù)據(jù)。關(guān)鍵詞:基于MATLAB;基于聲卡;數(shù)據(jù)采集The System Design Of Data Acquisition Based On The MATLABAbstract:MATLAB has the function of highperformance numerical putation and visual scientific engineering puting. It supports explanatory language input and the sound card, contains rich mathematical functions and has powerful data acquisition toolbox with simple programming. As the MATLAB data collection card, the sound card, pared to the conventional data collection card, endows with a low price, simple development and convenient system. This paper has discussed a design that bines the two kinds to conduct data collection.This paper has specifically introduced the background of this topic, the structure and the characteristics of nowadays data collection system. It has also introduced MATLAB and its data collection toolbox. By using the A/D, D/A conversion technique of the sound card and the function of MATLAB, I have presented a costeffective data collection and analysis design based on the sound card, and analyzed and described thoroughly the course and methods of data collection and analysis system by using MATLAB language programming. Finally, this paper has provided some examples which have applied this data collection system.Key words: Based on MATLAB。聲卡作為MATLAB的數(shù)據(jù)采集卡相對于常規(guī)的數(shù)據(jù)采集卡,具有價(jià)錢低廉、開發(fā)簡單和系統(tǒng)便捷等優(yōu)勢。數(shù)據(jù)采集(Data Acquisition)是將被測對象(外部世界、現(xiàn)場)的各種參量(可以是物理量,也可以是化學(xué)量、生物量等)通過各種傳感元件作適當(dāng)轉(zhuǎn)換后,再經(jīng)信號(hào)調(diào)理、采樣、量化、編碼、傳輸?shù)炔襟E,最后送到控制器進(jìn)行數(shù)據(jù)處理或存儲(chǔ)記錄的過程。20世紀(jì)70年代中后期,隨著微型機(jī)的發(fā)展,誕生了采集器、儀表同計(jì)算機(jī)溶為一體的數(shù)據(jù)采集系統(tǒng)。首先,分布式控制應(yīng)用場合中的智能數(shù)據(jù)采集系統(tǒng)正在發(fā)展。采樣方式中最早是過采樣,根據(jù)采樣定理,采樣頻率fs必須高于被采信號(hào)最高頻率fch的兩倍,才不致產(chǎn)生頻率混疊現(xiàn)象。 (2)并行式采集(Parallel Acquisition):多個(gè)通道同步并行采集,每個(gè)通道采用一個(gè)獨(dú)立的A/D轉(zhuǎn)換器,通道采集速率只取決于A/D的轉(zhuǎn)換速率,與通道數(shù)無關(guān)。用戶可以通過人機(jī)交互界面修改、設(shè)定各項(xiàng)參數(shù)來控制數(shù)據(jù)采集硬件設(shè)備的工作狀態(tài),同時(shí)可以得到數(shù)據(jù)的采集與分析結(jié)果, 從而實(shí)現(xiàn)數(shù)據(jù)采集與分析的自動(dòng)化。(1)現(xiàn)代采集系統(tǒng)一般都由計(jì)算機(jī)控制,使得數(shù)據(jù)采集的質(zhì)量和效率等大為提高,也節(jié)省了硬件投資。通??梢杂萌缦聨追N方法表示系統(tǒng)分辨率。采集速率又稱為系統(tǒng)通過速率或吞吐率,是指在滿足系統(tǒng)精度指標(biāo)的前提下,系統(tǒng)對輸入的模擬信號(hào)在單位時(shí)間內(nèi)所能完成的采集次數(shù),或者說是系統(tǒng)每個(gè)通道、每秒鐘可采集的有效數(shù)據(jù)的數(shù)量。在轉(zhuǎn)換期間,多路開關(guān)將下一路信號(hào)切換到采樣/保持器的輸入端,系統(tǒng)不斷重復(fù)以上的操作,可以實(shí)現(xiàn)對多通道模擬信號(hào)的數(shù)據(jù)采集。這些同步數(shù)據(jù)可以描述各路信號(hào)的相位關(guān)系,所以這種結(jié)構(gòu)被稱為同步型數(shù)據(jù)采集系統(tǒng)。MATLAB也是一種解釋語言,所有的程序和指令都必須在MATLAB解釋器中讀入后才能運(yùn)行,因而極大地限制了代碼執(zhí)行速度。在設(shè)計(jì)研究單位和工業(yè)部門,MATLAB被廣泛用于科學(xué)研究和解決具體問題。應(yīng)用數(shù)據(jù)采集工具箱提供的命令和函數(shù)可以控制任何類型的數(shù)據(jù)采集。靈活性強(qiáng)。然后在MATLAB中直接調(diào)用頻譜分析函數(shù)、功率譜分析函數(shù)或數(shù)值分析函數(shù)等,就可以將采集到的聲音信號(hào)分別進(jìn)行頻譜、功率譜分析等多種譜分析。(5)其他功能。進(jìn)行數(shù)據(jù)采集時(shí),根據(jù)所配置的聲卡的工作特性和信號(hào)分析的設(shè)計(jì)要求,可設(shè)置相應(yīng)的參數(shù)來控制聲卡在數(shù)據(jù)采集時(shí)的行為,如采樣頻率、采樣時(shí)間、預(yù)計(jì)模擬信號(hào)的輸入/輸出范圍、采樣的出發(fā)方式,采樣點(diǎn)數(shù)據(jù)的存儲(chǔ)等。,10000) % 設(shè)置采樣速率為10000HzActualRate = get(AI,39。software39。TriggerConditionValue39。seconds39。需要注意的是,執(zhí)行完一次數(shù)據(jù)采集工作后應(yīng)刪除設(shè)備對象,將內(nèi)存中的數(shù)據(jù)存儲(chǔ)在硬盤上之后釋放數(shù)據(jù)存儲(chǔ)所占用的內(nèi)存空間,以備下一次采集能有足夠的內(nèi)存空間存儲(chǔ)新的數(shù)據(jù),聲音信號(hào)采集的實(shí)現(xiàn)程序?yàn)閏lear data1。之后,用戶可以根據(jù)實(shí)際研究的需要,在MATLAB中調(diào)用頻譜分析函數(shù)(periodogram等)、功率譜分析函數(shù)(psd等)或數(shù)值分析函數(shù)(fminbnd等),就可以將采集到的聲音信號(hào)分別進(jìn)行頻譜、功率譜分析等多種譜分析,并且可方便地將分析結(jié)果以圖形的形式顯示出來。)對聲卡產(chǎn)生的模擬輸入對象進(jìn)行操作。(3)設(shè)定設(shè)備屬性值,控制數(shù)據(jù)采集。,chan)。,39。, 1)。,2)。Frequency (Hz)39。MATLAB提供的數(shù)據(jù)采集工具箱具有簡單易用的特點(diǎn),使用它用戶可以非常方便地創(chuàng)建自己的數(shù)據(jù)采集系統(tǒng),并對數(shù)據(jù)進(jìn)行處理。)。TriggerChannel39。,39。, 1)。,2) % 定義超時(shí)值Fs = ActualRate。end subplot(2,1,1) % 繪制2行1列的第1張子圖plot(time,data1) % 以時(shí)間為橫軸,數(shù)據(jù)為縱軸作圖xlabel(39。 % 構(gòu)造橢圓濾波器data=filter(b,a,data2)。)% 找到頻譜幅度最大值,并在屏幕上顯示xlim([0 1500])[ymax,maxindex] = max(mag)。求學(xué)歷程是艱苦的,但又是快樂