DAQ中各種采樣方法的一點(diǎn)想法(最簡(jiǎn)單的采樣方式)
另外做類似的程序時(shí),最好在循環(huán)外部加上DAQmx Start和Stop函數(shù),免得read和write每次運(yùn)行都要重新開(kāi)始任務(wù)。
即類似于這樣的結(jié)構(gòu)。
綜上所述:?jiǎn)吸c(diǎn)采樣連續(xù)采樣的read函數(shù)不等待,一直根據(jù)函數(shù)結(jié)構(gòu)進(jìn)行讀取和處理。
另:程序采樣開(kāi)始于開(kāi)始任務(wù)(DAQmx Start)函數(shù)
下面的說(shuō)法可以解釋上述的現(xiàn)象:在read函數(shù)中可以設(shè)置采樣數(shù)目!是這樣定義的!N采樣的情況下,read函數(shù)包含設(shè)置采樣個(gè)數(shù)的節(jié)點(diǎn),每通道采樣數(shù)指定要讀取的采樣數(shù)。 如未連線該輸入端或?qū)⑵湓O(shè)置為-1,NI-DAQmx將根據(jù)任務(wù)進(jìn)行連續(xù)采樣或采集一定數(shù)量的采樣,確定要讀取的采樣數(shù)。
如任務(wù)進(jìn)行連續(xù)采樣且該輸入的值為-1,VI將讀取緩沖區(qū)中當(dāng)前可用的全部采樣。
如采集一定數(shù)量的采樣且該輸入的值為-1,VI將等待任務(wù)獲取全部所需采樣,然后讀取采樣。如讀取全部可用數(shù)據(jù)屬性的值為T(mén)RUE,VI將讀取緩沖區(qū)中當(dāng)前可用的采樣,而不等待任務(wù)獲取全部所需采樣。
另外合理利用好DAQ的各屬性節(jié)點(diǎn)。如DAQ讀取屬性節(jié)點(diǎn)(測(cè)量IO——DAQmx數(shù)據(jù)采集——DAQ讀取屬性節(jié)點(diǎn)等)
如將上面的程序修改一下。
就可以在while循環(huán)運(yùn)行時(shí),顯示出目前緩沖區(qū)內(nèi)可用的樣點(diǎn)數(shù)目。
當(dāng)然:我們可以在read.VI中設(shè)置 每次讀取的采樣數(shù)目(每通道采樣數(shù))。如下圖
評(píng)論