新聞中心

EEPW首頁 > 測(cè)試測(cè)量 > 設(shè)計(jì)應(yīng)用 > 任務(wù)及通道學(xué)習(xí)筆記

任務(wù)及通道學(xué)習(xí)筆記

作者: 時(shí)間:2017-01-06 來源:網(wǎng)絡(luò) 收藏
問題描述:DAQmx任務(wù)通道,任務(wù)相關(guān)API的使用,如“開始任務(wù)”、“停止任務(wù)”等。
DAQmx使用:DAQmx提供了一組用于控制NI的數(shù)據(jù)采集卡的API,方便實(shí)現(xiàn)模擬輸入輸出、數(shù)字輸入輸出、計(jì)數(shù)器輸入輸出等功能??梢栽贚abVIEW、LabVIEW SignalExpress、LabWindows/CVI、Measurement Studio、.NET和ANSI C中調(diào)用DAQmx API,前提是要先安裝或?qū)隓AQmx的驅(qū)動(dòng)。
DAQmx通道:即采集卡與外部信號(hào)的交互通道,一個(gè)通道代表一路外部信號(hào)。沒有NI采集卡設(shè)備時(shí)可以在MAX中虛擬一個(gè)設(shè)備,采用虛擬設(shè)備完成編程任務(wù)。當(dāng)電腦連接好NI采集卡設(shè)備時(shí),MAX會(huì)檢測(cè)到該設(shè)備,在程序中可以使用采集卡上對(duì)應(yīng)的各個(gè)物理通道。
DAQmx任務(wù):任務(wù)中所有通道的IO類型必須相同,可以在MAX中右擊連接的設(shè)備創(chuàng)建任務(wù),針對(duì)每一種IO類型需要獨(dú)立創(chuàng)建一個(gè)任務(wù),如模擬輸入任務(wù)、模擬輸出任務(wù)、數(shù)字輸入任務(wù)、數(shù)字輸出任務(wù)等等,在編程時(shí)調(diào)用“創(chuàng)建虛擬任務(wù)”函數(shù)時(shí)就可以看到這些任務(wù)并進(jìn)行設(shè)置了。
開始任務(wù):“開始任務(wù)”函數(shù)用于顯式的開始一個(gè)任務(wù),但一般單點(diǎn)讀取函數(shù)和寫入函數(shù)會(huì)自動(dòng)開始一個(gè)任務(wù),這種情況為隱式的開始任務(wù)。調(diào)用“開始任務(wù)”表示從“已提交”狀態(tài)轉(zhuǎn)為“運(yùn)行”狀態(tài)。
(1)開始有限測(cè)量任務(wù)(如N采樣),“開始任務(wù)”函數(shù)是非必須的,“讀取”函數(shù)直接讀取,在最后一個(gè)采樣讀取后停止任務(wù)。
(2)開始連續(xù)測(cè)量任務(wù),使用“開始任務(wù)”函數(shù),再“讀取”,然后“停止任務(wù)”。循環(huán)中操作時(shí)(單采樣、按需讀取、多采樣硬件定時(shí)讀取等),進(jìn)入循環(huán)前“開始任務(wù)”,離開循環(huán)后“停止任務(wù)”。
(3)開始模擬輸出任務(wù),對(duì)于單采樣寫入操作,調(diào)用“寫入”,同時(shí)也啟用了任務(wù),寫入單個(gè)采樣,最后停止任務(wù)。對(duì)于多采樣按需寫入操作,調(diào)用“寫入”,并將“自動(dòng)開始”參數(shù)設(shè)置為真,其默認(rèn)值為假。該調(diào)用也啟用了任務(wù),寫入多個(gè)采樣,最后停止任務(wù)。
對(duì)于多采樣硬件定時(shí)寫入操作,應(yīng)先調(diào)用“寫入”函數(shù),寫入要生成的樣本,顯式調(diào)用“開始任務(wù)”,調(diào)用“結(jié)束前等待”函數(shù)/VI等待采樣生成完畢,然后顯式調(diào)用“停止任務(wù)”函數(shù)/VI。
如將“寫入”函數(shù)/VI的自動(dòng)開始參數(shù)設(shè)置為真(主動(dòng)設(shè)置或使用單點(diǎn)寫入函數(shù)),硬件定時(shí)生成可能會(huì)失敗,因?yàn)閷懭氲牟蓸釉诓ㄐ紊蓵r(shí)還未傳遞到設(shè)備。進(jìn)行硬件定時(shí)生成時(shí),開始任務(wù)之前始終寫入部分波形。
(4)改進(jìn)“開始任務(wù)”性能,部分需顯示調(diào)用“DAQmx開始任務(wù)”與“DAQmx停止任務(wù)”情況:循環(huán)中調(diào)用“讀取”或“寫入”時(shí),進(jìn)入循環(huán)前調(diào)用“開始任務(wù)”,離開循環(huán)后調(diào)用“停止任務(wù)”,速度會(huì)提高。
中止任務(wù):“控制任務(wù)”函數(shù)動(dòng)作輸入端設(shè)置為“中止”即可。
DAQmx的任務(wù)狀態(tài)模型:任務(wù)狀態(tài)模型有下列五種狀態(tài):未驗(yàn)證、驗(yàn)證、保留、已就緒和運(yùn)行。調(diào)用“開始任務(wù)”、“停止任務(wù)”和“控制任務(wù)”,將任務(wù)從一個(gè)狀態(tài)轉(zhuǎn)換為另一個(gè)狀態(tài)。任務(wù)狀態(tài)模型具有一定的靈活性。根據(jù)應(yīng)用程序的需要可選擇任務(wù)狀態(tài)的一部分或全部任務(wù)狀態(tài)模型。







評(píng)論


技術(shù)專區(qū)

關(guān)閉