基于USB的數(shù)據(jù)采集卡應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
引言
隨著工業(yè)技術(shù)的發(fā)展和現(xiàn)場(chǎng)監(jiān)控要求的提高,許多應(yīng)用場(chǎng)合對(duì)數(shù)據(jù)采集的要求也越來越高。在性能方面,要求數(shù)據(jù)采集卡的釆樣速率快,通道數(shù)多,分辨率高;在使用方面,要求其編程容易,攜帶方便,可移 植性好。NI USB-6009數(shù)據(jù)釆集卡正好可以滿足這些需求,它具有的USB接口使設(shè)備能即插即用,并且具有較高的傳輸速度,是實(shí)現(xiàn)數(shù)據(jù)采集比較理想的一款數(shù)據(jù)采集卡。
1 數(shù)據(jù)釆集卡的組成
數(shù)據(jù)釆用卡通常由多路開關(guān)、放大器、采樣/保持器、A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器等部分組成。下面對(duì)各部分進(jìn)行簡(jiǎn)要說明。
通過系統(tǒng)中的多路開關(guān)可將各路信號(hào)輪流切換到放大器的輸入端,實(shí)現(xiàn)多參數(shù)多路信號(hào)的分時(shí)采集。
放大器可將前一級(jí)多路開關(guān)切換進(jìn)來的待采集信號(hào)放大或衰減至采樣環(huán)節(jié)的量程范圍內(nèi)。實(shí)際系統(tǒng)中,通常將其做成增益可調(diào)的放大器,設(shè)計(jì)者可根據(jù)輸入信號(hào)的不同幅值選擇不同的增益倍數(shù);
采樣/保持器的任務(wù)是取出待測(cè)信號(hào)某一瞬時(shí)值 (即實(shí)現(xiàn)信號(hào)的時(shí)間離散化),并在A/D轉(zhuǎn)換過程中保持信號(hào)不變,如果被測(cè)信號(hào)變化緩慢,也可以不用采樣/保持器;
A/D轉(zhuǎn)換器可將輸入的模擬量轉(zhuǎn)換為數(shù)字量輸出,并完成信號(hào)幅值的量化。隨著電子技術(shù)的發(fā)展,目前,通常將釆樣/保持器和A/D轉(zhuǎn)換器集成在同一塊芯片上;
D/A轉(zhuǎn)換器的作用是將計(jì)算機(jī)輸出的數(shù)字量信號(hào)轉(zhuǎn)換為模擬量,以實(shí)現(xiàn)控制功能。
2 NI USB-6009數(shù)據(jù)采集卡介紹
NI USB-6009數(shù)據(jù)采集卡是一款用于USB的14位、48 k/s的多功能數(shù)據(jù)釆集卡,它釆用方便而便于攜帶的總線型設(shè)計(jì),擁有8路12位模擬輸入通道、14位數(shù)字I/O線、2路模擬輸出通道和1個(gè)計(jì)數(shù)器。NI USB-6009的特性如表1所列。圖1為NI USB- 6009主要功能組件。圖2所示為NIUSB_6OO9信號(hào)標(biāo)簽。NI USB-6009擁有一個(gè)用于模擬信號(hào)的可拆卸式螺栓端子連接器和一個(gè)用于數(shù)字信號(hào)的可拆卸螺栓端子連接器。兩個(gè)端子連接器可提供16個(gè)連接,它們使用16AWG至28AWG導(dǎo)線。
圖3所示是NI USB-6OO9的模擬輸入電路。NI USB-6009帶有模數(shù)轉(zhuǎn)換器(ADC)??ㄉ系亩嗦窂?fù)用器(MUX)每次可將一個(gè)AI通道多路復(fù)用至PGA。
當(dāng)卡上的可編程增益放大器配置為差分測(cè)量模式時(shí),可為輸入端提供1,2,4,5,8,10,16或20倍的增益選擇;而配置為單端測(cè)量模式時(shí),則增益倍數(shù)為1。PGA增益主要根據(jù)測(cè)量應(yīng)用選擇的電壓量程來自動(dòng)換算。
NI USB-6OO9的信號(hào)說明如表2所列。該數(shù)據(jù)采集卡可對(duì)固定或無限次數(shù)釆樣執(zhí)行單個(gè)或多個(gè)A/D 轉(zhuǎn)換。在AI采集過程中,主要通過先進(jìn)先出(FIFO)緩存來存儲(chǔ)數(shù)據(jù),這樣可以確保沒有數(shù)據(jù)丟失。
3 NI USB-6009數(shù)據(jù)釆集卡的軟件編程
由于NI USB-6009上安裝有Easy I/O for DAQ 函數(shù)庫(kù),因此,在安裝NI-DAQ程序后,就可以通過VC﹢﹢來使用Easy I/O for DAQ函數(shù)庫(kù)。
在對(duì)NI USB-6009進(jìn)行編程時(shí),其常用函數(shù)如下:
(1)nidaqAlCreateTask 函數(shù)
該函數(shù)可用于創(chuàng)建模擬輸入采樣任務(wù)。其函數(shù)原型為:long nidaqAlCreateTask ( char Channel_Path[], long Task_Type, long * Number_of_Channels, long * Task_ID);
Channel_Path[]用于設(shè)定采樣的通道號(hào)。如設(shè)備 1,通道0,則Channel_Path = " daq::1! ( 0 ) ”,Task_Type用于模擬輸入任務(wù)類型的設(shè)定;Number_of_ Channels為通道數(shù);Task_ID用于設(shè)定采樣任務(wù)ID。
(2)nidaqAIStart 函數(shù)
用于啟動(dòng)模擬輸入采樣任務(wù)。函數(shù)原型為long nidaqAIStart (long Task_ID_In);
(3)nidaqAIStop 函數(shù)
停止采樣任務(wù)函數(shù),函數(shù)原型為:long nidaqAIStop (long Task_ID_In);
(4)nidaqAIRead 函數(shù)
該函數(shù)用于讀取緩沖區(qū)中的數(shù)據(jù)。函數(shù)原型為: long nidaqAIRead (long Task_ID_In, char Channel _Path[]long Number_of_Scans , double Time_ Limit_sec, double Data[]);
其中Task_ID_In用于釆樣任務(wù)ID; Channel_Path[]用于采樣通道號(hào);Number_of_Scans用于每次采集所掃描的數(shù)據(jù);Time_Limit_sec用于等待數(shù)據(jù)的最大時(shí)間;Data[]用于存放數(shù)據(jù)的數(shù)據(jù)數(shù)組。
基于NI USB-6OO9的數(shù)據(jù)采集軟件流程圖如圖4所示。
4 應(yīng)用優(yōu)勢(shì)
圖5所示是某干擾源頻譜圖,該頻譜圖是通過數(shù)據(jù)釆集卡釆集頻譜儀直接下變頻的模擬信號(hào)所繪制而成的。與傳統(tǒng)的頻譜儀直接掃描相比,該數(shù)據(jù)采集卡 的優(yōu)點(diǎn)有三:其一是它有更高的采樣率,可使頻譜圖的 數(shù)據(jù)點(diǎn)大大增加,從而繪制出更精確地頻譜圖;其二是 可多通道同時(shí)工作,因而可以對(duì)多臺(tái)頻譜儀或其他設(shè) 備進(jìn)行數(shù)據(jù)釆集,進(jìn)而形成一套強(qiáng)大的數(shù)據(jù)釆集系統(tǒng); 其三是它強(qiáng)大的數(shù)據(jù)處理能力,可以結(jié)合VC﹢﹢對(duì)數(shù) 據(jù)進(jìn)行進(jìn)一步的處理,從而得到滿足用戶要求的圖形。
5結(jié)論
本文主要討論了基于USB的數(shù)據(jù)釆集卡的應(yīng)用。由于USB接口使用簡(jiǎn)單、即插即用、高速穩(wěn)定, 故使得這類采集卡已經(jīng)得到了廣泛的使用。另外, NI USB-6009數(shù)據(jù)釆集卡采樣率高,通道數(shù)多,編程容易,攜帶方便,可大大提高數(shù)據(jù)采集的能力和速度, 因而能夠在數(shù)據(jù)采集和處理中達(dá)到令人滿意的效果。