談基于聲卡的數(shù)據(jù)采集及波形發(fā)生器設(shè)計
一、概述
本文引用地址:http://www.ex-cimer.com/article/202232.htm數(shù)據(jù)采集是信號分析和處理的一個重要環(huán)節(jié),在很多產(chǎn)業(yè)控制和生產(chǎn)狀態(tài)監(jiān)控中,都需要對各種物理量進行數(shù)據(jù)采集和分析。但是,專用數(shù)據(jù)采集卡的價格一般比較昂貴,而我們PC機的聲卡就是一個很好的雙通道數(shù)據(jù)采集卡。實際丈量中,在滿足丈量要求的條件下,可以充分利用計算機自身資源,完成數(shù)據(jù)采集任務(wù),從而節(jié)省本錢。
本文利用vc編程實現(xiàn)了聲卡的雙通道數(shù)據(jù)采集,并且對信號進行頻譜分析同時實時丈量出信號的頻率。還利用聲卡的DA通道,實現(xiàn)了正弦波、方波、三角波輸出的信號發(fā)生器。波形發(fā)生器產(chǎn)生的信號同時還可以作為內(nèi)部測試用信號,檢驗數(shù)據(jù)采集的正確性。
二、聲卡數(shù)據(jù)采集系統(tǒng)硬件組成
Line Out
利用聲卡進行數(shù)據(jù)采集的硬件組成如圖1所示。通常,利用聲卡的Line In端作為信號輸進端口,兩路被測的模擬信號經(jīng)過左右聲道,A/D轉(zhuǎn)換進進計算機,通過vc編寫的虛擬儀器界面顯示出來。聲卡一般都具有單、雙聲道輸進,從而可實現(xiàn)單雙通道的采集.雙通道采集時,聲卡采用并行采集,并具有采樣保持功能,兩個通道的數(shù)據(jù)不存在時間差,第一通道和第二通道數(shù)據(jù)存儲在同一個數(shù)據(jù)緩沖區(qū)中,且等間隔存儲,奇數(shù)序列是一個通道數(shù)據(jù),偶數(shù)序列為另一個通道數(shù)據(jù).讀取數(shù)據(jù)時,將緩沖區(qū)中的數(shù)據(jù)全部讀進到一個數(shù)組中,然后對該數(shù)組數(shù)據(jù),采用隔一點取一點的方法,將數(shù)據(jù)分開并分別存到另外的兩個數(shù)組中,即將兩個通道的數(shù),轉(zhuǎn)自[92工作室]www.92game.net據(jù)分開,從而實現(xiàn)了雙通道的采集.單通道采集時,緩沖區(qū)中僅僅是一個通道的數(shù)據(jù),直接保存到一個數(shù)組即可。同時,信號發(fā)生器產(chǎn)生的波形也可經(jīng)過Line out端輸出。
為了保護聲卡,被測信號并不是直接進進聲卡,而是先經(jīng)過一個信號調(diào)理電路,對信號進行放大或限幅,濾波等處理,信號調(diào)理電路如圖2所示。(a)圖是直流電平疊加模塊摘要:C1代表信號的輸進,D1代表疊加直流電平后信號的輸出,電位器R8控制輸進直流電平的大??;(b)圖是信號疊加模塊摘要:A1、A2代表疊加信號的輸進,B1代表疊加后信號的輸出;(c)圖是模擬濾波模塊摘要:LPIN代表濾波器的輸出,LPOUT代表濾波器的輸出,調(diào)節(jié)R6可以控制輸出的、幅度大小。當(dāng)然可以根據(jù)需要在調(diào)理電路中加進一些其它的模塊。
三、聲卡采集系統(tǒng)的軟件編程
微軟公司已經(jīng)提供了一系列API函數(shù)用于對聲卡的操縱,為了將需要用到的函數(shù)封裝成了一個類,編程時只需直接調(diào)用。使用的API函數(shù)有摘要:
waveInGetDevCaps 實現(xiàn)聲卡的性能測試
waveInOpen 打開波形輸進設(shè)備
waveInPrepareHeader 為波形輸進預(yù)備緩沖區(qū)
waveInAddBuffer 將數(shù)據(jù)緩存發(fā)送給波形輸進設(shè)備驅(qū)動
waveInStart 啟動向波形輸進緩沖區(qū)存儲數(shù)據(jù)
waveInUnprepareHeader 開釋波形輸進緩沖區(qū)
waveInStop 停止向波形輸進緩沖區(qū)存儲數(shù)據(jù)
waveInClose 封閉波形輸進設(shè)備
設(shè)計的軟件界面如圖3所示。目前所實現(xiàn)的功能有摘要:
1.兩路波形發(fā)生器??僧a(chǎn)生正弦波、方波和三角波,并且頻率和幅值可調(diào)。
2.頻譜分析儀。可以對采集的信號進行頻譜分析。頻譜分析采用了快速傅立葉變換(FFT)算法,并且將其封裝成獨立的函數(shù),方便調(diào)用。
3.頻率計。同時還可以實時地丈量出采集到的信號的頻率。在利用程序計算頻率時,一般采用兩種方法。一種是利用快速傅立葉變換,它的優(yōu)點是不僅能對標(biāo)準(zhǔn)的周期波形進行丈量,而且能夠計算出各種復(fù)雜波形和信噪比非常低的信號的頻率值,缺點是分辨率受到限制。另一種計算頻率的方法是采用脈沖計數(shù)法。它的優(yōu)點是丈量低頻信號時精度高,但它不適合波形復(fù)雜和信噪比低的信號頻率丈量。所以在丈量過程中,程序先判定信號上述的性質(zhì),根據(jù)信號的性質(zhì),自動地采用相應(yīng)的丈量方法。
更多計算機與外設(shè)信息請關(guān)注:21ic計算機與外設(shè)頻道
評論