版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、LabVIEW編程及虛擬 儀器設(shè)計(jì),授課教師:周紅標(biāo)電話:15189544918E-mail: hyitzhb@163.com,第七講:數(shù)據(jù)采集(下),上節(jié)課內(nèi)容小結(jié),1.測試系統(tǒng)簡介:基于虛擬儀器技術(shù)構(gòu)成的測量系統(tǒng)的基本組成及相應(yīng)功能;信號采集的基本概念;測量信號的差分式輸入方式;采樣率;分辨率;輸入范圍。 2.測量及自動化瀏覽器——測量系統(tǒng)硬件即數(shù)據(jù)采集卡的配置軟件MAX。利用MAX,能完成驅(qū)動數(shù)據(jù)
2、采集卡;確立數(shù)據(jù)采集任務(wù)的名稱;并對數(shù)據(jù)采集卡、具體數(shù)據(jù)采集通道以及采樣的相應(yīng)參數(shù)、換算比例等進(jìn)行配置。3.在本實(shí)驗(yàn)室環(huán)境下,建立一個實(shí)際數(shù)據(jù)采集任務(wù),包含要確認(rèn)一個或多個虛擬通道;且除每個虛擬通道的屬性設(shè)置以外,該任務(wù)涉及的參數(shù)還包含這些虛擬通道共用的采樣和觸發(fā)模式等屬性參數(shù)的配置(可選用默認(rèn),也可調(diào)整)。 虛擬通道:一個由測量采集任務(wù)名稱、采集硬件物理通道、模擬信號輸入接線方式、測量或發(fā)生的信號類型、換算(縮放比例)等
3、虛擬儀器通過數(shù)據(jù)采集卡實(shí)現(xiàn)測量數(shù)據(jù)采集所需要配置的屬性的集合。,在LabVIEW環(huán)境下,為運(yùn)行經(jīng)測量及自動化瀏覽器即MAX新建立的數(shù)據(jù)采集任務(wù),需要借助 “DAQmx 任務(wù)名”控件或“DAQmx 任務(wù)名” 常量?!癗I-DAQmx”實(shí)際意味著一系列數(shù)據(jù)采集軟件。它包括數(shù)據(jù)采集卡驅(qū)動程序,以及LabVIEW環(huán)境下可建立數(shù)據(jù)采集任務(wù)、實(shí)現(xiàn)測量數(shù)據(jù)采集功能(經(jīng)數(shù)據(jù)采集卡讀取數(shù)據(jù)或由其生成數(shù)據(jù))的相應(yīng)功能函數(shù)及Express VI。確立一個
4、數(shù)據(jù)采集任務(wù),還可用DAQ助手(Express VI)來完成——整合了MAX的功能,直接在框圖面板實(shí)現(xiàn)數(shù)據(jù)采集任務(wù)建立。但用DAQ助手建立的任務(wù)無名稱,屬臨時任務(wù),不會保存在MAX中被其他程序使用。7. 在框圖面板,直接使用“DAQmx 創(chuàng)建虛擬通道”亦即“DAQmx 創(chuàng)建通道(AI-電壓-基本)”函數(shù),通過編程的方法,也可以建立數(shù)據(jù)采集的臨時任務(wù)。,本次課的內(nèi)容,一、NI-DAQmx(數(shù)據(jù)采集)的屬性節(jié)點(diǎn)二、NI-DAQm
5、x(數(shù)據(jù)采集)的任務(wù)狀態(tài)(邏輯)三、數(shù)據(jù)采集程序(VI)的編制(示例) 1. 模擬輸入(單個、一段、連續(xù)) 2. 模擬輸出(單個、一段、連續(xù)) (其中每個均包括利用NI-DAQmx VI和借助DAQ助手兩種編程途徑),一、DAQmx(數(shù)據(jù)采集)的屬性節(jié)點(diǎn),DAQmx屬性節(jié)點(diǎn)的功能:用于指定數(shù)據(jù)采集操作的各種屬性。這些屬性中,某些可利用DAQmx VI(數(shù)據(jù)采集相關(guān)的功能函數(shù)——8種)進(jìn)行設(shè)置;而另一些無法
6、則由DAQmx VI設(shè)置。,路徑:“函數(shù)”選板 ?“測量I/O” ? DAQmx- 數(shù)據(jù)采集,二、DAQmx(數(shù)據(jù)采集)的任務(wù)狀態(tài)(邏輯)配置任務(wù)-> 開始任務(wù)-> 采集數(shù)據(jù)操作-> 結(jié)束任務(wù)-> 清除任務(wù) 顯式和隱式任務(wù)狀態(tài)的轉(zhuǎn)換:通過調(diào)用函數(shù)的方法明確實(shí)施任務(wù)狀態(tài)的轉(zhuǎn)換,稱為顯式狀態(tài)轉(zhuǎn)換;而某些DAQmx VI在執(zhí)行時,若未處于其所需的狀態(tài),將會引起狀態(tài)的自動轉(zhuǎn)換,這種自動轉(zhuǎn)換被稱為隱式狀態(tài)轉(zhuǎn)換
7、。,(1)顯式轉(zhuǎn)換舉例:在“讀取”采樣數(shù)據(jù)前,明確地執(zhí)行“開始任務(wù)”;且在“清除任務(wù)”前,明確地執(zhí)行“結(jié)束任務(wù)”。,(2)隱式轉(zhuǎn)換舉例:在“讀取”函數(shù)執(zhí)行前,自動執(zhí)行“開始任務(wù)”;在“清除任務(wù)”執(zhí)行前,自動執(zhí)行“結(jié)束任務(wù)”。,三、數(shù)據(jù)采集程序(VI)示例,1. 模擬輸入,(a) 采集5V的直流電壓(電平),并由表盤式顯示器顯示,找到表盤式顯示器路徑:“控件”選板 ->“新式”?“數(shù)值”? “儀表”,該程序(VI)建立的步驟:將需
8、測的直流電壓經(jīng)差分模式接至實(shí)驗(yàn)箱的模擬輸入0號與8號通道之間;b) 用MAX建立此采集測量任務(wù):我的系統(tǒng)\數(shù)據(jù)鄰居\NI-DAQmx任務(wù),右擊彈出“創(chuàng)建新NI-DAQmx任務(wù)”->采集信號->模擬輸入-> 電壓->選擇0號物理通道(ai0) ->采用默認(rèn)的任務(wù)名“我的電壓任務(wù)” ,點(diǎn)擊“完成”。將虛擬通道“電壓”的“信號輸入范圍”設(shè)置為0~10V,任務(wù)的“定時設(shè)置”參數(shù)區(qū)域的“采集模式”選擇“1 采樣
9、(按要求)”;隨后,按參數(shù)配置欄左上角“保存”按鈕,對參數(shù)設(shè)置的調(diào)整做確認(rèn)。c) 構(gòu)建數(shù)據(jù)采集VI:往框圖面板調(diào)用多態(tài)函數(shù)“DAQmx 讀取”,選擇“模擬 DBL 1通道 1采樣”功能;在該函數(shù)的“任務(wù)/通道輸入”輸入端子彈出快捷菜單選“創(chuàng)建”->“輸入控件”,建立同名的DAQmx 任務(wù)名控件,并選中“我的電壓任務(wù)”。在前面板添加標(biāo)簽為“儀表”的表盤式顯示器?;氐娇驁D面板,完成左上圖所示的連線。,,,調(diào)節(jié)為5V,打開開關(guān),(b
10、) 對(a)例,改用DAQ助手建立程序(VI),建立該程序(VI)的步驟:經(jīng) “函數(shù)選板->測量I/O->DAQmx-數(shù)據(jù)采集”途徑向框圖面板添加并啟動“DAQ 助手” Express VI,在其打開的“新建Express任務(wù)” 對話框里,選擇“采集信號”->“模擬輸入”->“電壓”;再選擇模入物理通道ai0,并將“信號輸入范圍”設(shè)置為0~10V,在“采集模式”中選擇“1 采樣 (按要求——表示立即采集數(shù)據(jù))
11、” 。關(guān)閉DAQ 助手新建任務(wù)對話框后可看到,在該Express VI圖標(biāo)下方多出了“數(shù)據(jù)”輸出端子,將該輸出端子連至“儀表”控件,即可完成對采集到的單點(diǎn)數(shù)據(jù)的輸出。,舉例:軟件定時(Software Timed)的多點(diǎn)采集:幫助->查找范例->硬件輸入與輸出->DAQmx ->模擬測量 -> 低速變壓信號 -> Acq&Chart Mult Samples-SW Timed.vi,利用循
12、環(huán)結(jié)構(gòu),不斷進(jìn)行單點(diǎn)數(shù)據(jù)采集,直到“DAQmx 讀取”函數(shù)出錯(錯誤簇的“status”參數(shù)為True),或采集到了“Samples per Channel”參數(shù)指定的點(diǎn)數(shù),或按下“abort”按鈕為止。每次采樣之間的時間間隔由“等待(ms)”函數(shù)的輸入值決定。但是,這種采樣模式下,不同采樣點(diǎn)之間的時間間隔無法精確控制和指定;故一般用于采集、測量緩變信號。,(c) 如何實(shí)現(xiàn)對多個數(shù)據(jù)點(diǎn)的采集?,去掉“Samples per Channe
13、l”的限制,就可變?yōu)檫B續(xù)采集,,多數(shù)據(jù)點(diǎn)采集,包含采集若干個(一段有限長)數(shù)據(jù)點(diǎn)和連續(xù)不斷采集數(shù)據(jù)點(diǎn)兩種情況。 若要求嚴(yán)格等間隔采樣,就不能采用“重復(fù)單點(diǎn)采集”的方法——無法確保采樣點(diǎn)之間具有精確相等的時間間隔。 LabVIEW中采用設(shè)置緩沖區(qū)技術(shù)來實(shí)現(xiàn)等間隔采樣。緩沖區(qū)是在計(jì)算機(jī)內(nèi)存中開辟的一段連續(xù)區(qū)域。使用緩沖區(qū)采集數(shù)據(jù)時,應(yīng)先將一段采樣數(shù)據(jù)從數(shù)據(jù)采集卡送到緩沖區(qū)中(這一過程可以確保等間隔采樣),然后再“
14、讀取”到程序(VI)中。當(dāng)任務(wù)的采樣模式設(shè)置為“N 采樣”(采集一段數(shù)據(jù))或“連續(xù)采樣”時,就是在使用緩沖區(qū)進(jìn)行數(shù)據(jù)采集。 “N 采樣”時,使用簡單緩沖;“連續(xù)采樣”時,則使用的是循環(huán)緩沖(Circular-Buffered)。,(d) 如何實(shí)現(xiàn)嚴(yán)格的等間隔多數(shù)據(jù)點(diǎn)采集?,簡單緩沖:用于等間隔一次讀取有限個采樣點(diǎn),即在經(jīng)MAX途徑建立新DAQmx(數(shù)據(jù)采集)任務(wù)時,從其“定時設(shè)置”選項(xiàng)頁的“采集模式”選擇
15、欄選定“N 采樣”;或是在框圖面板選用“DAQmx 定時(采樣時鐘)”函數(shù)時,在其“采樣模式”參數(shù)選擇表里選中“有限采樣”。 在簡單緩沖模式下,DAQmx任務(wù)會首先據(jù)每個通道所要讀取樣本數(shù)多少及任務(wù)需要的采集通道數(shù)建立合適的緩沖區(qū)(= 每通道樣本數(shù)×通道數(shù))。在進(jìn)行數(shù)據(jù)采集時,DAQmx任務(wù)從數(shù)據(jù)采集卡讀取數(shù)據(jù),并將它們填充到緩沖區(qū)中,直到其被完全填滿即讀取到了全部數(shù)據(jù)為止,才將該緩沖區(qū)中的數(shù)據(jù)經(jīng)“DAQmx 讀
16、取”函數(shù)輸出(返回)到框圖面板的VI中。,回答:不能,因?yàn)樵诿看窝h(huán)獲得的采樣數(shù)據(jù)段之間,需等待多少時間是無法嚴(yán)格確定的。,問題:若希望實(shí)現(xiàn)連續(xù)不斷的等間隔采樣,能否采用不斷循環(huán)重復(fù)等間隔一次讀取若干個采集數(shù)據(jù)的方法實(shí)現(xiàn)?,而循環(huán)緩沖,則可用于等間隔連續(xù)數(shù)據(jù)采集。其原理說明如下: 循環(huán)緩沖模式下,被采到的數(shù)據(jù)不斷送入緩沖區(qū),最新送入數(shù)據(jù)的位置隨之不斷后移;與此同時,“DAQmx 讀取”函數(shù)每次讀取一定大小的數(shù)據(jù)塊返回到程序
17、框圖。當(dāng)緩沖區(qū)寫滿后,DAQmx改從該緩沖區(qū)的頭部重新開始寫入數(shù)據(jù);“DAQmx 讀取”函數(shù)一直連續(xù)讀取數(shù)據(jù)塊,讀到緩沖區(qū)的末端后,同樣也再改從緩沖區(qū)的頭部繼續(xù)讀取數(shù)據(jù)。,故,只要寫緩沖與讀緩沖配合得當(dāng),就可實(shí)現(xiàn)連續(xù)數(shù)據(jù)采集。 可能出現(xiàn)的問題有:(1) 從緩沖區(qū)讀取數(shù)據(jù)比向其中寫入數(shù)據(jù)快;(2)從緩沖區(qū)讀取數(shù)據(jù)過慢,再寫入新數(shù)據(jù)時覆蓋掉了還未讀取走的數(shù)據(jù)。 第一個問題容易解決,“DAQmx 讀取”函數(shù)會自動等待,
18、直到讀到所要求多的新數(shù)據(jù)后才返回。第二個問題則需要特別注意,因?yàn)槿绻采w掉還未讀取的數(shù)據(jù),將會引起數(shù)據(jù)丟失,使數(shù)據(jù)采集不再連續(xù)。出現(xiàn)這種情況,DAQmx會返回錯誤信息。 解決數(shù)據(jù)丟失的辦法:調(diào)整緩沖區(qū)大小、調(diào)整采樣率和調(diào)整每次讀取數(shù)據(jù)的數(shù)目。 ①一般情況下,DAQmx可自動設(shè)置循環(huán)緩沖區(qū)大??; ②降低采樣率,以降低向緩沖區(qū)寫入數(shù)據(jù)的速度; ③增加每次從緩沖區(qū)讀取數(shù)據(jù)量,從而提高從緩沖區(qū)讀取數(shù)據(jù)的速度。,(e) 采集多通道數(shù)據(jù)
19、(一次采集多個(若干個)等間隔 數(shù)據(jù)點(diǎn)——簡單緩沖),,該程序(VI)建立的步驟:將正弦信號和方波信號按差分模式分別接在0號與8號通道以及1號與9號通道之間;調(diào)用“DAQmx 創(chuàng)建虛擬通道”函數(shù),建立虛擬通道和任務(wù):物理通道輸入?yún)?shù) physical channels寫入物理通道列表“Dev1/ai0,Dev1/ai1”,并且name to assign字符串控制器寫入 “Ch0,Ch1”,即所建立的臨時任務(wù)將包含
20、兩個虛擬通道Ch0和Ch1,且分別對應(yīng)于設(shè)備1(Dev1)的物理通道ai0和ai1。“最大值”和“最小值”設(shè)置輸入電壓范圍的最小值(-5V)和最大值(5V),在“輸入接線端配置”枚舉參數(shù)中,指定采用差分模式;調(diào)用“DAQmx定時”函數(shù)并選擇其“采樣時鐘”功能,設(shè)定任務(wù)的具體時間參數(shù)如下:采樣率1000Hz,每通道采樣100個點(diǎn),采樣模式選擇采集“有限個點(diǎn)”;調(diào)用“DAQmx 讀取”函數(shù),選擇其“模擬2D DBL N通道N采樣”功能。
21、其輸入?yún)?shù)每通道采樣數(shù)設(shè)置為100,即每通道采集100個點(diǎn);采集到的數(shù)據(jù)輸出(返回)“給波形圖”顯示控件。注意:“DAQmx定時”函數(shù)的“每通道采樣”參數(shù)決定了從采集卡輸出并寫入到緩沖區(qū)的數(shù)據(jù)點(diǎn)數(shù);“DAQmx讀取”函數(shù)的“每通道采樣數(shù)”參數(shù),決定了從緩沖區(qū)讀到程序(VI)中的數(shù)據(jù)點(diǎn)數(shù)??梢哉J(rèn)為,采集數(shù)據(jù)時以兩者中的較小值為準(zhǔn)。,如果接入-1或不接入任何數(shù)據(jù),則讀取緩沖區(qū)中的全部數(shù)據(jù)點(diǎn)。,,,,選擇正弦波,打開開關(guān),,,打開開關(guān),(f
22、) 對(e)例,借助“DAQ助手”建立程序,該示例程序(VI)的建立步驟:經(jīng)“函數(shù)選板->測量I/O ->DAQmx-數(shù)據(jù)采集”向框圖面板添加并啟動“DAQ助手”,在打開的“新建Express任務(wù)” 對話框里,選擇“采集信號”->“模擬輸入”->“電壓” ,選擇模入物理通道ai0和ai1,輸入范圍采用默認(rèn)的-5至5V,在“采集模式”中選擇“N采樣”,“待讀取采樣”采用默認(rèn)值100,“采樣率(Hz)”采用默認(rèn)值1
23、000。關(guān)閉“DAQ助手”對話框后可看到,該Express VI圖標(biāo)下方多出了“數(shù)據(jù)”輸出端子,將該輸出端子連到“波形圖”顯示控件,即可完成對所采集的一段數(shù)據(jù)的波形輸出。,(g) 采集多通道數(shù)據(jù)(等間隔連續(xù)采集數(shù)據(jù)——循 環(huán)緩沖),,該程序(VI)的建立步驟:將正弦信號和方波信號分別接在實(shí)驗(yàn)箱0號與8號通道以及1號與9號通道之間;使用MAX建立新的DAQmx任務(wù):指定模擬輸入、測量電壓,選擇0號和1號物理通道(ai0和a
24、i1),任務(wù)名為“我的電壓任務(wù)”,輸入范圍使用默認(rèn)的-5~5V,端子配置使用默認(rèn)的差分方式,采集模式使用默認(rèn)的“N 采樣”,“待讀取采樣”采用默認(rèn)值100,“采樣率 (Hz)”采用默認(rèn)值1000;3) 來到框圖面板,調(diào)用“DAQmx 定時”函數(shù)并選擇其“采樣時鐘”功能,將采樣模式選定為“連續(xù)采樣”,“采樣率”設(shè)置為1000Hz。,注意:在實(shí)施連續(xù)采集時,由MAX建立的 DAQmx任務(wù)的Samples To Read參數(shù)(“DAQmx
25、 定時”函數(shù)的samples per channel),參與確定循環(huán)緩沖區(qū)大小。,4) 調(diào)用“DAQmx 開始任務(wù)”函數(shù),即顯式地開始任務(wù);5) 在While循環(huán)中調(diào)用“DAQmx 讀取”函數(shù),選擇“模擬 2D DBL N通道 N采樣”功能。該函數(shù)的“每通道采樣數(shù)”輸入?yún)?shù)定義每個通道從緩沖區(qū)讀取的采樣數(shù)據(jù)點(diǎn)數(shù),本例中為1000。采集到的數(shù)據(jù)分別送入“波形圖”和“波形圖表”顯示控件,“波形圖表”的“圖表歷史長度…”參數(shù)設(shè)置為300
26、0,這樣,在“波形圖表”上將顯示連續(xù)3次讀取操作得到的數(shù)據(jù); “DAQmx 讀取”函數(shù)的錯誤簇輸出參數(shù)的“status”元素與“停止”按鈕取“邏輯或”后,送給循環(huán)結(jié)束端子,作為循環(huán)結(jié)束條件;在循環(huán)之外,采用“DAQmx 結(jié)束任務(wù)”函數(shù)結(jié)束任務(wù);然后以“DAQmx 清除任務(wù)”函數(shù)清除任務(wù)。,,,選擇正弦波,打開開關(guān),,,打開開關(guān),應(yīng)該搞清楚的問題:(1)在連續(xù)采集示例中同時使用“波 形圖”和“
27、波形圖表”顯示控件的原因。,使用“波形圖”只能顯示每次從循環(huán)緩沖區(qū)讀取出的數(shù)據(jù),而對各次讀取出的數(shù)據(jù)波形之間是否連續(xù)卻難以確認(rèn)。而“波形圖表”可保存前面若干次采集的數(shù)據(jù),故利用它,通過觀察多次采集數(shù)據(jù)間的過渡波形,便可確認(rèn)是否的確實(shí)現(xiàn)了連續(xù)采集。 注意:進(jìn)行連續(xù)數(shù)據(jù)采集時,最好用上述方法仔細(xì)觀察采集到的數(shù)據(jù)是否真的連續(xù),因?yàn)榇嬖贒AQmx(數(shù)據(jù)采集)對實(shí)際上不完全連續(xù)的情況未報(bào)出錯的現(xiàn)象。,應(yīng)該搞清楚的問題:(2)在循環(huán)外使
28、用“DAQmx開始任 務(wù) ”函數(shù)和“DAQmx 結(jié)束任務(wù)”函數(shù)的道理。,這是顯式任務(wù)狀態(tài)轉(zhuǎn)換的典型案例。若不使用“DAQmx 開始任務(wù)”函數(shù),則在調(diào)用“DAQmx讀取”函數(shù)時就要使用默認(rèn)的隱式狀態(tài)轉(zhuǎn)換,具體地,“DAQmx讀取”函數(shù)首先開始任務(wù),然后才采集數(shù)據(jù),最后還要結(jié)束任務(wù)。如此,每次循環(huán)都將進(jìn)行開始任務(wù)、采集數(shù)據(jù)、結(jié)束任務(wù)的操作。這一來沒有必要,二來會降低程序執(zhí)行效率和性能。把函數(shù)“DAQmx開始任務(wù)”
29、 和 “DAQmx 結(jié)束任務(wù)”置于循環(huán)之外,使“開始任務(wù)”和“結(jié)束任務(wù)”的操作只進(jìn)行一次,無疑可改善程序的運(yùn)行性能。,(h) 對(g)例,借助 “DAQ助手”建立程序,該程序(VI)的建立步驟:經(jīng)“函數(shù)選板?測量I/O ? DAQmx-數(shù)據(jù)采集 ?”途徑向框圖面板添加“ DAQ 助手”,在打開的“新建Express任務(wù)” 對話框里,選擇“采集信號” ? “模擬輸入” ? “電壓”,選擇模入物理通道ai0和ai1,輸入范圍設(shè)置為
30、-5~5V,在“采集模式”中選擇“連續(xù)采樣”?!按x取采樣”設(shè)置為1000,“采樣率 (Hz)”設(shè)置為10000Hz。關(guān)閉“DAQ助手”對話框后,將“DAQ助手”圖標(biāo)下方出現(xiàn)的“數(shù)據(jù)”輸出端接至“波形圖”之同時,經(jīng)“從動態(tài)數(shù)據(jù)轉(zhuǎn)換”函數(shù)(選擇“二維標(biāo)量數(shù)組——行是通道”)轉(zhuǎn)化為二維數(shù)組,送至“波形圖表”(歷史紀(jì)錄長度設(shè)置為3000,取消“轉(zhuǎn)置數(shù)組”選項(xiàng),修改X坐標(biāo)范圍為0~2999)顯示控件;再把它們都放入While循環(huán)中。循環(huán)是否結(jié)
31、束,由“停止”按鈕控制。,Samples To Read參數(shù)在代碼內(nèi)部接入了DAQmx Read函數(shù)number of samples per channel參數(shù),用以決定每個通道每次從循環(huán)緩沖區(qū)讀取的數(shù)據(jù)點(diǎn)數(shù)。,DAQ助手輸入?yún)?shù)“停止” 的作用: 在各次循環(huán)之間,“DAQ助手”的調(diào)用狀態(tài)處于被監(jiān)控之中。若“停止”參數(shù)采用默認(rèn)值“False”,第一次調(diào)用“DAQ助手”時,進(jìn)行任務(wù)的各種配置和讀取操作,而此后的每次調(diào)用均不再
32、進(jìn)行任務(wù)配置,只進(jìn)行數(shù)據(jù)讀取操作;但如果“停止”參數(shù)選為“True”,那每次調(diào)用“DAQ助手”都將進(jìn)行重新配置——降低程序執(zhí)行性能,甚至無法保證實(shí)現(xiàn)連續(xù)采集操作。,DAQ助手的“停止”輸入?yún)?shù),默認(rèn)值為False,,,,2. 模擬輸出(Analog Output),(1) 輸出直流電壓(單點(diǎn)輸出),,該程序(VI)的建立步驟: 調(diào)用“DAQmx 創(chuàng)建通道”函數(shù),選擇“AO 電壓”,物理通道輸 “Dev1/ao0”,其他參數(shù)使用
33、默認(rèn)值;b) 調(diào)用“DAQmx 寫入”函數(shù),選擇“模擬 DBL 1通道 1采樣”功能 ,輸出數(shù)值控制器 “data”中的值。注意:使用示波器或萬用表觀測模出通道ao0(接在實(shí)驗(yàn)箱上的“DAC 0 OUT”和“AOGND”引腳之間)可發(fā)現(xiàn),剛剛輸出的電壓值在輸出引腳上保持不變,即使輸出單點(diǎn)數(shù)據(jù)的程序已經(jīng)運(yùn)行完畢。重新運(yùn)行程序并輸出新值,才可以改變引腳電壓值。,,,接至萬用表或示波器,或送至模入通道直接測量,該程序(VI)的建
34、立步驟:經(jīng)“函數(shù)選板?測量I/O ? DAQmx-數(shù)據(jù)采集 ? ”途徑向框圖面板添加并啟動“DAQ 助手”,在其“新建Express任務(wù)”對話框,選擇“生成信號” ?“模擬輸出” ? “電壓”,選擇模出物理通道ao0,在“生成模式”中選擇“1 采樣 (按要求——表示立即發(fā)生數(shù)據(jù))” ?!靶盘栞敵龇秶辈捎媚J(rèn)值 -10至10V。關(guān)閉“DAQ助手”對話框后可看到,該Express VI圖標(biāo)下方多出了“數(shù)據(jù)” 輸入端子。直接向該端子輸入
35、一個數(shù)值,即可完成單點(diǎn)數(shù)據(jù)的模擬輸出。,(2)對(1)例,借助DAQ助手建立程序,(3)輸出一段波形數(shù)據(jù)(等間隔,簡單緩沖),,經(jīng)“函數(shù)選板 ?信號處理 ? 波形生成?途徑選用 “基本函數(shù)發(fā)生器”,用以產(chǎn)生仿真波形數(shù)據(jù)。這個VI的功能,近似于“仿真信號” Express VI。,其中,該函數(shù)的枚舉參數(shù)“信號類型”用于設(shè)置仿真發(fā)生信號的類型,可以是正弦波、三角波、方波和鋸齒波;“幅值”設(shè)定信號幅值;“相位”設(shè)定初相位;“方波占空比(%)”
36、則專用于設(shè)定方波的占空比。,需要特別注意:“頻率”和“采樣信息”這兩個輸入?yún)?shù)。 簇類型參數(shù)“采樣信息”的元素Fs定義“采樣率”(默認(rèn)值1000),元素“采樣數(shù)”定義采樣點(diǎn)數(shù)(默認(rèn)1000);“頻率”給出信號自身頻率(默認(rèn)10)。 以默認(rèn)值做說明:“采樣數(shù)”決定了仿真生成信號數(shù)據(jù)總點(diǎn)數(shù)為1000;Fs的值表示每秒生成1000個數(shù)據(jù);即“采樣數(shù)”和Fs的默認(rèn)值配合生成1“秒”的數(shù)據(jù)。而“頻率”值為10,表示1“秒”
37、中生成10個周期的波形。這樣,調(diào)用“基本函數(shù)發(fā)生器”函數(shù)產(chǎn)生的波形數(shù)據(jù)為:產(chǎn)生10個周期的波形;每周期以100個數(shù)據(jù)點(diǎn)描述,且波形數(shù)據(jù)的dt參數(shù)為0.001。 秒字帶引號,是因?yàn)樗皇欠抡嫔傻臄?shù)據(jù);且dt=0.001,也僅表示希望以1毫秒作為時間間隔產(chǎn)生數(shù)據(jù)。而真正發(fā)生數(shù)據(jù)的時間間隔,要由DAQmx函數(shù)決定。在后面給出的例子中,將看到如何對這種情況做出處理。,(等間隔,簡單緩沖)示例:輸出一段鋸齒波形數(shù)據(jù),該程序(VI)的建立步
38、驟:使用MAX,建立模擬輸出DAQmx新任務(wù):選擇“生成信號” ->“模擬輸出” ->“電壓” ,選擇物理通道ao0,接受默認(rèn)任務(wù)名“我的電壓輸出任務(wù)”,其他任務(wù)參數(shù)均接受默認(rèn)值(采集模式默認(rèn)為“N 采樣”)。在框圖面板,調(diào)用“基本函數(shù)發(fā)生器”生成仿真波形數(shù)據(jù):“信號類型”選擇“鋸齒波”,“幅值” 輸入5V,“頻率”選2Hz,“采樣信息”采用默認(rèn)值。生成的波形特點(diǎn):2個周期的鋸齒波,每周期500點(diǎn),且波形數(shù)據(jù)的dt參數(shù)為
39、0.001。仿真波形數(shù)據(jù)送至“波形圖”顯示。調(diào)用“DAQmx 定時”函數(shù),修改任務(wù)“我的電壓輸出任務(wù)”的默認(rèn)數(shù)據(jù)發(fā)生速率(采樣率rate)參數(shù)決定了每秒鐘產(chǎn)生的樣本數(shù)。對“基本函數(shù)發(fā)生器”的簇參數(shù)“采樣信息”采用“按名稱解除捆綁”函數(shù)提取出其采樣率(Fs)參數(shù),輸入作為“DAQmx 定時”函數(shù)的“采樣率”(rate)參數(shù),即明確接受“基本函數(shù)發(fā)生器”函數(shù)輸出的波形數(shù)據(jù)的dt元素作為發(fā)生數(shù)據(jù)的真正的時間間隔。調(diào)用“DAQmx 寫入”函
40、數(shù),向緩沖區(qū)寫入數(shù)據(jù),此時,還沒有真正地輸出波形;調(diào)用“DAQmx 開始任務(wù)”函數(shù)真正開始數(shù)據(jù)發(fā)生;調(diào)用“DAQmx 結(jié)束前等待”函數(shù),等待數(shù)據(jù)全部被生成;調(diào)用“DAQmx 清除任務(wù)”函數(shù)停止并清除任務(wù)。注意:必須調(diào)用“DAQmx 結(jié)束前等待”函數(shù),否則將在產(chǎn)生完數(shù)據(jù)前就結(jié)束了任務(wù)。,這里,使用LabVIEW自帶的示例程序來觀察該波形發(fā)生VI的輸出效果。 將調(diào)理箱上ao0端輸出的仿真數(shù)據(jù)接至ai0與ai8模入端子之間差分輸
41、入。 選擇“幫助” -> “查找范例”打開示例程序?yàn)g覽器,按“任務(wù)”進(jìn)行瀏覽操作,打開“硬件輸入與輸出” -> DAQmx-> “模擬測量”-> “電壓”-> Acq&Graph Voltage-Int Clk-Analog Start.vi,修改Sample Rate (Hz)參數(shù)為1000,Trigger Source參數(shù)為Dev1/ai0,Trigger Level (Volt)
42、參數(shù)為1V,如圖所示。先運(yùn)行該示例程序,然后盡快運(yùn)行本課上建立的波形發(fā)生程序??梢栽谑纠绦蛑锌吹讲ㄐ握_發(fā)生,且是使用上升沿觸發(fā)的方式采集到的。,,,該程序(VI)的建立步驟:經(jīng)“函數(shù)選板->測量I/O ->DAQmx-數(shù)據(jù)采集 ->”途徑向框圖面板添加并啟動“DAQ 助手”,在在其“新建Express任務(wù)”對話框,選擇“生成信號”->“模擬輸出”->“電壓”,選擇模出物理通道ao0,從“生成模式”中選
43、擇“N 采樣”,取消其后面的“使用波形定時”復(fù)選框的選中狀態(tài),并將“待寫入采樣”和“采樣率 (Hz)”都設(shè)為1000;關(guān)閉“DAQ助手”設(shè)置窗口,將仿真波形輸入至“DAQ 助手” 的“數(shù)據(jù)”的輸入端子,完成兩個周期鋸齒波的模擬輸出。,(4) 對(3)例,借助“DAQ助手”建立該程序,(5) 產(chǎn)生周期性連續(xù)波形數(shù)據(jù),,連續(xù)發(fā)生周期數(shù)據(jù)并不復(fù)雜:只需向所建立的緩沖區(qū)寫入一個周期的數(shù)據(jù),DAQmx將自動不斷地重復(fù)該段數(shù)據(jù),以生成周期性的輸
44、出信號。,該程序(VI)的建立步驟:a) 調(diào)用“基本函數(shù)發(fā)生器”生成仿真數(shù)據(jù):“信號類型”選正弦波,“頻率”設(shè)為1.5,“采樣信息”使用默認(rèn)值。波形特點(diǎn):產(chǎn)生1.5周期正弦波,每周期采2000/3個點(diǎn),且波形數(shù)據(jù)的dt參數(shù)設(shè)置為0.001。1.5周期的波形由“波形圖”控件顯示。b) 調(diào)用“DAQmx 創(chuàng)建虛擬通道”函數(shù),生成虛擬通道和任務(wù),選擇“AO 電壓”這個實(shí)例,輸入物理通道“Dev1/ao0”。c) 調(diào)用“DAQmx
45、定時”函數(shù)設(shè)置時間參數(shù),這里采用與前例不同的采樣率設(shè)置方法:選擇“DAQmx 定時”函數(shù)的“使用波形”實(shí)例,該實(shí)例直接根據(jù)“波形”參數(shù)輸入端的波形數(shù)據(jù)設(shè)置發(fā)生數(shù)據(jù)的時間間隔?!安蓸幽J健眳?shù)設(shè)置為“連續(xù)采樣”。d) 調(diào)用“DAQmx 寫入”函數(shù),將1.5個周期的正弦波數(shù)據(jù)寫入緩沖區(qū)。為該VI選擇“模擬波形 1通道N采樣”。e) 調(diào)用“DAQmx開始任務(wù)”函數(shù),開始數(shù)據(jù)發(fā)生;在循環(huán)中調(diào)用“DAQmx 任務(wù)完成”函數(shù)查詢?nèi)蝿?wù)狀態(tài),實(shí)
46、際上,任務(wù)是否結(jié)束的信息并未使用,只利用該函數(shù)輸出的錯誤簇以檢查數(shù)據(jù)發(fā)生操作是否出錯,如出錯或者按下“停止”按鈕,都將退出循環(huán)、結(jié)束程序;可在循環(huán)中調(diào)用“時間延遲” Express VI以設(shè)置查詢延時。在循環(huán)外調(diào)用“DAQmx清除任務(wù)”函數(shù),結(jié)束和清除任務(wù)。,將調(diào)理箱上ao0輸出的數(shù)據(jù)接至ai0與ai8模入端子之間差分輸入,使用LabVIEW自帶的例程序察看連續(xù)輸出的波形:“幫助” -> “查找范例” -> “硬件輸入與輸出
47、”-> DAQmx ->“模擬測量”->“電壓”-> Cont Acq&Graph Voltage-Int Clk-Analog Start.vi。 參數(shù)的設(shè)置情況下如圖中左側(cè)所示。,,,該程序的建立步驟:經(jīng)“函數(shù)選板->測量I/O ->DAQmx-數(shù)據(jù)采集 ->”添加并啟動“ DAQ 助手”;在打開的“新建Express 任務(wù)”對話框,選擇“生成信號”-> “模
48、擬輸出”->“電壓”,選擇模出物理通道ao0,在“生成模式”中選擇“連續(xù)采樣” ,選中其后的“使用波形定時”復(fù)選框,即使用輸入波形中包含的時間信息,將這部分代碼放入平鋪順序結(jié)構(gòu)的第0幀;關(guān)閉“DAQ助手”對話框,將仿真波形送至“DAQ助手”的“數(shù)據(jù)”輸入端子; 在順序結(jié)構(gòu)的第1幀中放入循環(huán)結(jié)構(gòu)進(jìn)行延時,“時間延遲” Express VI設(shè)置延時為0.1秒,按下“停止”按鈕,程序退出;C) 仿前生成1.5個周期的正弦波
49、,參數(shù)與前例完全相同。,(6) 對(5)例,借助“DAQ助手”建立 該程序,第 七 次 練 習(xí),習(xí)題1:以兩種方式(利用DAQmx 有關(guān)函數(shù)、借助DAQ助手) 輸出一段方波電壓信號波形,具體參數(shù)配置為:初相位 0°,頻率4Hz,采樣頻率1000;采集點(diǎn)數(shù)1000,幅值 3V。自己改變其中的某些參數(shù)設(shè)置,再重復(fù)
50、本任務(wù)。,習(xí)題2:借助DAQ助手產(chǎn)生一個連續(xù)的正弦波信號,具體參數(shù)配 置為:初相位30°,頻率3Hz,采樣頻率1000;采集點(diǎn) 數(shù)自定,正弦波幅值1.5V。自己改變其中的某些參數(shù)設(shè) 置,再重復(fù)本任務(wù)。,習(xí)題3:借助DAQ助手采集一段即2個周期的三角波信號,具體 參數(shù)配置為:初相位45 ° ,幅值2.5V,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 虛擬儀器及l(fā)abview基礎(chǔ)
- 虛擬儀器labview教材
- 外文翻譯---虛擬儀器(labview)
- 畢業(yè)論文----虛擬儀器及l(fā)abview介紹
- 基于labview的虛擬儀器開題報(bào)告
- 基于LabVIEW的虛擬儀器設(shè)計(jì)及應(yīng)用研究.pdf
- 基于LabVIEW的虛擬儀器實(shí)驗(yàn)平臺設(shè)計(jì).pdf
- 基于labview的虛擬儀器外文翻譯
- labview虛擬儀器外文文獻(xiàn)及翻譯其他專業(yè)
- 基于LabVIEW的遠(yuǎn)程虛擬儀器技術(shù).pdf
- 基于labview的虛擬儀器畢業(yè)設(shè)計(jì)開題報(bào)告
- labview的課程設(shè)計(jì)---基于labview的交流參數(shù)測量虛擬儀器
- 虛擬儀器課程設(shè)計(jì)---基于labview的流水燈設(shè)計(jì)
- 基于LabVIEW的虛擬儀器的研究與設(shè)計(jì).pdf
- 基于LabVIEW構(gòu)建虛擬儀器實(shí)驗(yàn)系統(tǒng).pdf
- 虛擬儀器軟件開發(fā)平臺labview教程
- 基于LabVIEW的車床噪聲源識別虛擬儀器設(shè)計(jì).pdf
- 基于LabVIEW的虛擬儀器研究與開發(fā).pdf
- 基于LabVIEW的切削力測量虛擬儀器設(shè)計(jì).pdf
- 畢業(yè)設(shè)計(jì)論文基于labview的虛擬儀器設(shè)計(jì)與開發(fā)
評論
0/150
提交評論