基于LabVIEW和USB聲卡的直流信號采集設計
摘要:針對普通聲卡無法采集直流信號現狀,文中介紹了在虛擬儀器LabVIEW環境下,以CM108音頻芯片為核心,結合A/D芯片PCM1801,通過I2S數據格式傳輸實現直流信號采集的一種方法。
關鍵詞:USB聲卡:LahVIEW;直流信號;I2S
作為多媒體計算機的基本硬件——聲卡,其A/D轉換功能已經成熟,而且被廣泛作為數據采集器應用。目前主流聲卡采樣精度為16位,比普通12位的數據采集卡的采樣精度還要高,而且采樣頻率也達到44.1K,完全滿足低頻信號的采集需要。USB聲卡是近年流行起來的產品,其通過USB接口與計算機連接進行數據的錄制或播放,A/D功能與電腦內置聲卡相似。用聲卡作為數據采集卡,不僅價格低廉,兼容性好、性能穩定、通用性強,軟件特別是驅動程序升級方便,而且在LabVIEW軟件中有現成的驅動程序,使用起來也十分方便。但是無論是電腦聲卡還是USB聲卡,都只能接受音頻范圍(20Hz~20k Hz)內的交流信號,不能對直流信號進行采集。這是聲卡代替專用的數據采集卡的瓶頸所在。
鑒于聲卡采集的這一局限,本文介紹了在LabVIEW軟件環境下,結合USB聲卡,通過添加外圍電路實現USB聲卡采集直流信號的功能,并給出了實驗測試結果。
1 硬件組成與設計
該方法的硬件設計結構原理如圖1所示。
硬件設計主要包括USB聲卡芯片CM108外圍電路、A/D芯片PCM1801電路和信號調理電路等三部分構成。直流信號由信號調理電路進入外置的A/D轉換器——PCM1801,把模擬信號轉變為I2S格式的數字信號,所得數據通過I2S總線傳送給聲卡,再經USB總線傳送到PC機進行處理、顯示,從而達到直流信號采集的功能。
1.1 信號調理電路設計
在信號采集過程中,若直接把直流信號輸入到PCM1801的模擬通道,會出現直流信號被“湮沒”的現象。因為PCM1801的模擬輸入端是采用交流耦合輸入,要使得直流信號順利輸入,必須去掉隔離電容。但去掉隔離電容,模擬輸入端的電平會發生偏移。在與信號源直接相接時,信號電平不再適合此時PCM1801的輸入電平范圍要求了。因此需要在信號輸入PCM1801之前將輸入信號電平進行平移,提高到PCM1801的輸入電平范圍內。本文利用NE5532運算放大器對輸入信號進行電平平移操作,并提供瞬態電流隔離功能,其電路圖如圖2所示。圖中的參考電壓VREF由PCM1801內部提供,其中NE5532采用±5V電源供電。
1.2 A/D芯片PCM1801電路設計
鑒于CM108內部只有一個ADC,支持單聲道錄音,其I2S數據輸入也只接受單聲道的數據,因此本設計采取了單通道采集。CM108內部ADC嵌入了低通數字濾波器,當直流信號經過濾波器后會完全被濾掉。鑒于這一情況,本文調用外部ADC對直流信號進行采集,含有直流信號的數據由I2S總線從外部傳送CM108。I2S總線擁有3條數據線進行傳輸:1條雙向數據傳輸線,1條命令選擇線和1條時鐘線。對應有3個主要信號:串行時鐘SCLK,命令選擇信號WS(LRCK)和串行數據SD。為了實現兩個不同沒備之間的數據傳輸同步,還增加一個土時鐘信號MCLK。
評論