LabView數(shù)據(jù)采集_第1頁
LabView數(shù)據(jù)采集_第2頁
LabView數(shù)據(jù)采集_第3頁
LabView數(shù)據(jù)采集_第4頁
LabView數(shù)據(jù)采集_第5頁
已閱讀5頁,還剩15頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、第一節(jié)概述LabVIEW的數(shù)據(jù)采集(Data Acquisition )程序庫包括了許多NI公司數(shù) 據(jù)采集(DAQ卡的驅(qū)動(dòng)控制程序。通常,一塊卡可以完成多種功能-模 /數(shù)轉(zhuǎn)換,數(shù)/模轉(zhuǎn)換,數(shù)字量輸入/輸出,以及計(jì)數(shù)器/定時(shí)器操作等。 用戶在使用之前必須 DAQ#的硬件進(jìn)行配置。這些控制程序用到了許多 低層的DAQ驅(qū)動(dòng)程序。本課程需要一塊安裝好的 DAC卡以及LabVIEW開 發(fā)系統(tǒng)。數(shù)據(jù)采集系統(tǒng)的組成:DAC系統(tǒng)的基本任務(wù)是物理信號(hào)的產(chǎn)生或測量。但是要使計(jì)算機(jī)系統(tǒng)能夠測量物理信號(hào),必須要使用傳感器把物理信號(hào)轉(zhuǎn)換成電信號(hào)(電壓或者電流信號(hào))。有時(shí)不能把被測信號(hào)直接連接到DAC卡,而必須使用信號(hào)調(diào)

2、理輔助電路,先將信號(hào)進(jìn)行一定的處理??傊瑪?shù)據(jù)采集是借助軟 件來控制整個(gè)DAC系統(tǒng)-包括采集原始數(shù)據(jù)、分析數(shù)據(jù)、給出結(jié)果等。上圖中描述了插入式 DAQ卡。另一種方式是外接式 DAC系統(tǒng)。這樣,就 不需要在計(jì)算機(jī)內(nèi)部插槽中插入板卡, 這時(shí),計(jì)算機(jī)與DAQ系統(tǒng)之間的 通訊可以采用各種不同的總線,如 USB并行口或者PCMCIA等完成。這種結(jié)構(gòu)適用于遠(yuǎn)程數(shù)據(jù)采集和控制系統(tǒng)。模擬輸入: 當(dāng)采用DAC卡測量模擬信號(hào)時(shí),必須考慮下列因素:輸入模式(單端輸 入或者差分輸入)、分辨率、輸入范圍、采樣速率,精度和噪聲等。單端輸入以一個(gè)共同接地點(diǎn)為參考點(diǎn)。 這種方式適用于輸入信號(hào)為高電 平(大于一伏),信號(hào)源與采

3、集端之間的距離較短(小于 15英尺), 并且所有輸入信號(hào)有一個(gè)公共接地端。如果不能滿足上述條件,則需要使用差分輸入。差分輸入方式下,每個(gè)輸入可以有不同的接地參考點(diǎn)。并且,由于消除了共模噪聲的誤差,所以差分輸入的精度較高。輸入范圍是指ADC能夠量化處理的最大、最小輸入電壓值。DAQ卡提供了可選擇的輸入范圍,它與分辨率、增益等配合,以獲得最佳的測量精度。分辨率是模/數(shù)轉(zhuǎn)換所使用的數(shù)字位數(shù)。分辯率越高,輸入信號(hào)的細(xì)分 程度就越高,能夠識(shí)別的信號(hào)變化量就越小。 下圖表示的是一個(gè)正弦波 信號(hào),以及用三位模/數(shù)轉(zhuǎn)換所獲得的數(shù)字結(jié)果。 三位模/數(shù)轉(zhuǎn)換把輸入 范圍細(xì)分為23或者就8份。二進(jìn)制數(shù)從000到111

4、分別代表每一份。顯然,此時(shí)數(shù)字信號(hào)不能很好地表示原始信號(hào),因?yàn)榉洲q率不夠高,許 多變化在模/數(shù)轉(zhuǎn)換過程中丟失了。然而,如果把分辯率增加為16位,模/數(shù)轉(zhuǎn)換的細(xì)分?jǐn)?shù)值就可以從 8增加到216即65536,它就可以相當(dāng)準(zhǔn) 確地表示原始信號(hào)。增益表示輸入信號(hào)被處理前放大或縮小的倍數(shù)。給信號(hào)設(shè)置一個(gè)增益 值,你就可以實(shí)際減小信號(hào)的輸入范圍, 使模數(shù)轉(zhuǎn)換能盡量地細(xì)分輸入 信號(hào)。例如,當(dāng)使用一個(gè)3位模數(shù)轉(zhuǎn)換,輸入信號(hào)范圍為 0到10伏, 上面的圖顯示了給信號(hào)設(shè)置增益值的效果。當(dāng)增益 =1時(shí),模/數(shù)轉(zhuǎn)換只 能在5伏范圍內(nèi)細(xì)分成4份,而當(dāng)增益=2時(shí),就可以細(xì)分成8份,精度 大大地提咼了。但是必須注意,此時(shí)實(shí)際

5、允許的輸入信號(hào)范圍為0到5伏。一但超過5伏,當(dāng)乘以增益2以后,輸入到模/數(shù)轉(zhuǎn)換的數(shù)值就會(huì) 大于允許值10伏??傊?,輸入范圍,分辯率以及增益決定了輸入信號(hào)可識(shí)別的最小模擬變化量。此最小模擬變化量對(duì)應(yīng)于數(shù)字量的最小位上的0, 1變化,通常叫做轉(zhuǎn)換寬度(Code width )。其算式為:輸入范圍/ (增益*2八分辯率)例如,一個(gè)12位的DAQ卡,輸入范圍為0到10伏,增益為1,則可檢測到2.4mV的電壓變化。而當(dāng)輸入范圍為-10到10伏(20伏),可檢 測的電壓變化量則為4.8mV。 采樣率決定了模/數(shù)變換的速率。采樣率高,則在一定時(shí)間內(nèi)采樣點(diǎn)就 多,對(duì)信號(hào)的數(shù)字表達(dá)就越精確。采樣率必須保證一定的

6、數(shù)值,如果太 低,則精確度就很差。下面的圖表示了采樣率對(duì)精度的影響。根據(jù)耐奎斯特采樣理論,你的采樣頻率必須是信號(hào)最高頻率的兩倍。例 如,音頻信號(hào)的頻率一般達(dá)到20KHz因此其采樣頻率一般需要 40KHz。平均化。噪聲將會(huì)引起輸入信號(hào)畸變。 噪聲可以是計(jì)算機(jī)外部的或者內(nèi) 部的。要抑制外部噪聲誤差,可以使用適當(dāng)?shù)男盘?hào)調(diào)理電路,也可以增 加采樣信號(hào)點(diǎn)數(shù),再取這些信號(hào)的平均值以抑制噪聲誤差,這樣誤差可以減小到乘以下面的系數(shù):力采樣點(diǎn)數(shù)例如,如果以100個(gè)點(diǎn)來平均,則噪聲誤差將減小 1/10。第二節(jié) 數(shù)據(jù)采集VI程序的調(diào)用方法LabVIEW的DAQS序包括模擬輸入、模擬輸出、計(jì)數(shù)器操作、或者數(shù)字輸入、輸

7、出等。你可以在框圖程序窗口下選擇Data Acquisitio n 。再在此子模板下,可以看到 6個(gè)子模板:An alog In put, An alog Output,Digital I/O, Counter, Calibration and Configuration禾口 SignalCon diti oning 。在上述6個(gè)子模板下,每個(gè)子模板又分成 Easy I/O Vis, In termediate Vis, Utility Vis 和 Adva need Vis。下面我們以 An alog In put 子模板 為例進(jìn)行解釋。如圖所示,在其頂層是簡單模擬量輸入VI程序(EasyA

8、I),中間層是中級(jí)模擬量輸入 VI程序(In termediate AI),然后下 面是兩個(gè)圖標(biāo),一個(gè)用于調(diào)用模擬輸入應(yīng)用程序( Utility AI ), 一個(gè) 調(diào)用高級(jí)模擬量輸入程序(Advaneed AI )。在本教材中,我們主要講 述簡單和中級(jí)程序。高級(jí)程序涉及到與 DACSE動(dòng)程序的低層接口,而通 用應(yīng)用程序是中級(jí)程序的組合。簡單I/O程序僅僅只是表面層接口程序,它能執(zhí)行基本的模擬量輸入、模擬量輸出、數(shù)字I/O,以及計(jì)數(shù)器/定時(shí)器操作。它簡單易用,并且包含一個(gè)簡單的出錯(cuò)處理方法。當(dāng)出錯(cuò)時(shí),將彈出一個(gè)對(duì)話框,顯示出錯(cuò) 信息,而用戶可以選擇中止程序執(zhí)行或者忽略錯(cuò)誤。相對(duì)于簡單程序而言,中

9、級(jí)程序具備更多的硬件設(shè)置功能,靈活性,并 且可以更有效地開發(fā)實(shí)用程序。它具有許多簡單程序所缺乏的功能,如 外部時(shí)鐘等。它對(duì)出錯(cuò)的處理也更加靈活,可以把出錯(cuò)狀態(tài)信息傳遞給 其它的程序,編程處理出錯(cuò)情況。第三節(jié)模擬輸入與輸出在Data Acquisiti on子模板下的An alog In put 子模板程序執(zhí)行模/數(shù)轉(zhuǎn)換操作。而Analog Output程序庫則執(zhí)行數(shù)/模轉(zhuǎn)換或多重轉(zhuǎn)換。channel (0)Al7sampleAl Sample Chaxinel. viAI Sample Channel程序測量指定通道上信號(hào)的一個(gè)采樣點(diǎn),并返回測量值。Device是DAQ卡的設(shè)備編號(hào),Chann

10、el是描述模擬輸入通道號(hào)的字符串,High Limit和Low Limit指明輸入信號(hào)的范圍,缺省值為 +10V和-10V。AOUpdate Channel程序把一個(gè)給定電壓值在一個(gè)模擬輸出通道上輸出。Device是DAQ卡的設(shè)備編號(hào),Channel是輸出通道號(hào)字符串 Voltage是輸出的電壓值。ONE FT|A0 Update Chaimel. vi在上述程序執(zhí)行時(shí),如果發(fā)生錯(cuò)誤,則彈出一個(gè)對(duì)話框,顯示錯(cuò)誤代碼, 你可以選擇中止程序或者繼續(xù)程序執(zhí)行。練習(xí)2-1目的:輸出一個(gè)模擬電壓信號(hào),并且用DAQ卡再次采集該信號(hào)。首先編制一個(gè)VI程序,以0.5伏的間隔從0伏到9.5伏輸出電壓,再 編制V

11、I程序進(jìn)行單點(diǎn)模擬輸入電壓測量,驗(yàn)證上述輸出電壓。最后,再修改程序,使之控制 Demo Box上的LED指示燈。在演示盒 Demo Box上,把模擬輸出CH0與模擬輸入CH1相連。前面板:devicechannelVolt ace Output Hfl1J001. 打開電壓輸出 Voltage Output程序窗口,用 Device指定DAQ卡設(shè)備 編號(hào),Channel字符串指定模擬輸出通道,用 Voltage Output輸出顯示 來顯示當(dāng)前輸出電壓值。2. 切換到框圖程序。框圖程序1. 按照下圖建立框圖程序。對(duì)于循環(huán)For Loop要求每500毫秒執(zhí)行一次,控制輸出電壓以0.5伏的間隔從0

12、伏到9.5伏變化。當(dāng)循環(huán)For Loop結(jié)束后,輸出電壓又復(fù) 位為0伏。2. 關(guān)閉上述框圖程序窗口,再打開前面板窗口,創(chuàng)建輸入電壓測量Voltmeter程序,以顯示輸入電壓值。前面板:devi cehigh li«it (JOV):1W.j取 limit (-10V)Pow erP 00框圖程序:1. 按照下圖編寫程序。2. 在前面板的電壓測量儀表盤中,將其刻度定義為0.0至10.0。3. 在通道控制Channel輸入值1, 上限控制High Limit輸入值10.0 , 下限控制Low Limit輸入值0.00,打開Power開關(guān),運(yùn)行該程序。4. 如果運(yùn)行過程中出現(xiàn)錯(cuò)誤, 將會(huì)彈

13、出一個(gè)對(duì)話框,顯示錯(cuò)誤代碼和解 釋。要模擬出錯(cuò)情況,在 Device控制欄中輸入0并運(yùn)行程序,則將會(huì) 顯示出錯(cuò)情況。5. 確認(rèn)已在演示盒DemcBox中將模擬輸出CH0接到模擬輸入CH1,運(yùn)行 電壓輸出Voltage Output VI 程序,則在電壓測量 Voltmeter程序中將 采集并顯示電壓值。6. 停止程序運(yùn)行,并按上圖虛線框住的部分修改程序, 當(dāng)輸入電壓大于 5伏時(shí)點(diǎn)亮LED燈。演示盒DemcBox上的LED燈是負(fù)邏輯,高電平時(shí)關(guān) 閉LED低電平時(shí)打開LED|AI Safliplg Charm電L 譏channelEQleviesONt FTVoltage meterSQLhigh

14、 limit (10V):SGI.Lx limit (70¥)|DIG LIN£Pert numberrow er7. 再同時(shí)運(yùn)行前面的電壓輸出程序和本電壓輸入程序,以驗(yàn)證運(yùn)行效 果。(練習(xí)2-1結(jié)束)。第四節(jié) 波形的采集與產(chǎn)生在許多應(yīng)用場合,一次只采樣一個(gè)數(shù)據(jù)點(diǎn)是不夠的。另外,采樣點(diǎn)之間 的間隔很難保持恒定,因?yàn)樗Q于很多因素,如循環(huán)的執(zhí)行速度,子 程序的調(diào)用時(shí)間等等。而使用 Al Acquire Waveform 和AO Gen erate Waveform程序,就可以以大于單點(diǎn)操作的速度進(jìn)行多點(diǎn)的數(shù)據(jù)采集和波 形產(chǎn)生,并且用戶可以自定義采樣速率。波形采集:Al Ac

15、quire Waveform 程序從一個(gè)指定的輸入通道按用戶定義的采樣率 和采樣點(diǎn)數(shù)采集數(shù)據(jù)并返回計(jì)算機(jī)。actual sample per1 cd (sec)機(jī)nab«rtMipltsirrmLsuiplt ritt (1000sunplti/x«c)khMimi(£>) iz*< 譏-dr m(iCli<h(D OAl Acquire Ttwfom. vi上圖中Number of Samples是采樣點(diǎn)數(shù),Sample rate 是采樣率,以 Hz 為單位。Waveform是模擬輸入信號(hào)的一維采樣數(shù)組,以伏特為單位。Actual sample

16、 period是實(shí)際采樣率的倒數(shù),它可能與指定采樣率有一些小偏差,偏差取決于計(jì)算機(jī)硬件速度。波形產(chǎn)生:AOGe nerate Waveform程序在一個(gè)模擬輸出通道上以用戶定義的更新速 率產(chǎn)生一個(gè)電壓波形。Update rate是每秒鐘產(chǎn)生的電壓數(shù)值更新點(diǎn)數(shù)。 Waveform是一個(gè)一維數(shù)組,它包含寫到輸出通道上的模擬電壓值,以伏為單位。&的i詞|詞channel (0)|jlTbcTkHO IMT Ptupdate rate (1000 updates/ec:1AJO Generate Waveform, viwaveform ;y練習(xí)2-2 目的:采集并顯示一個(gè)模擬信號(hào)波形。學(xué)員將

17、編寫一個(gè)VI程序,它使用DAQ卡采集一個(gè)信號(hào)波形,并在圖表上顯示。在本例中,把演示盒上的模擬輸入CH1接到函數(shù)發(fā)生器的正弦波輸出端口上。前面板:1.打開一個(gè)新建前面板窗口,并照下圖創(chuàng)建一個(gè)前面板程序。設(shè)備號(hào)通這采樣數(shù)采祥/秒扌 t2:阪|iooo(5-co波形“采樣數(shù)”控制欄定義采樣點(diǎn)數(shù),而“采樣 /秒”控制欄定義采樣率2.切換到框圖程序。框圖程序:采拝/秒flVDT PTKI Acquire Waveform, vi1.按照上圖創(chuàng)建框圖程序。2.返回前面板窗口,輸入各控制欄數(shù)值,并運(yùn)行程序。圖表窗口將繪出 模擬信號(hào)波形。試用不同的采樣率和采樣點(diǎn)數(shù),觀察波形的差別。(練習(xí)2-2結(jié)束)第五節(jié)掃描

18、多個(gè)模擬輸入通道AI Acquire Waveforms程序從多個(gè)輸入通道以指定的采樣率采集指定的 采樣點(diǎn)數(shù),并將采樣結(jié)果數(shù)據(jù)送回到計(jì)算機(jī)。Channels控制欄指定要采 樣的多個(gè)通道的編號(hào),各個(gè)通道號(hào)間以逗號(hào)隔開,例如1, 2, 4??刂茩贜umber of samples/ch 是每個(gè)通道要采集的采樣點(diǎn)數(shù)。Scan rate是每個(gè)通道每秒鐘的采樣點(diǎn)數(shù)即采樣率。Waveform是一個(gè)二維數(shù)組,包含模擬輸入信號(hào)電壓數(shù)值,以伏為單位。Actual scan period是實(shí)際采樣率的倒數(shù),由于計(jì)算機(jī)硬件的不同,實(shí)際采樣率與指定的采樣率可能 有微小差異。練習(xí)2-3目的:使用簡單I/O程序來執(zhí)行掃描

19、多個(gè)通道的數(shù)據(jù)采集工作。學(xué)員將創(chuàng)建一個(gè)VI程序,它掃描兩個(gè)不同通道的模擬信號(hào)波形,并將它們分別在圖表上繪出。在本例中,把Demo Box的模擬輸入通道CH1接到正弦波/三角波輸出口,而模擬輸入通道 CH2接到方波輸出口。前面板:1.按照下圖創(chuàng)建前面板程序,它有兩個(gè)輸入通道,可同時(shí)顯示兩個(gè)波形。2.切換到框圖程序??驁D程序:kl Acquire Waveforms- vi第一邇道1.創(chuàng)建如上圖所示框圖程序,它調(diào)用了如下的功能模塊:Al Acquire Waveforms 子程序(在 Data Acquisiti on>An alog In put子模板)。在本例中,它在通道1和通道2以采樣

20、率10000Hz采樣1000 個(gè)點(diǎn)。Index Array 子程序(在Array子模板),在本例中,把二維數(shù)組的第0列定義為通道1的采集數(shù)據(jù),第1列定義為通道2的采集數(shù)據(jù)。Write to Spreadsheet File子程序(在File I/O子模板)。在本例中,把通道1和通道2的數(shù)據(jù)寫入數(shù)據(jù)文件(spreadsheet file )。2將演示盒上的模擬輸入通道1與方波發(fā)生器連接;模擬通道2與正弦 波發(fā)生器相連接。運(yùn)行該程序,在圖表上將顯示輸入的兩個(gè)數(shù)據(jù)波形。(練習(xí)2-3結(jié)束)。第六節(jié)連續(xù)數(shù)據(jù)采集連續(xù)數(shù)據(jù)采集,或者說實(shí)時(shí)數(shù)據(jù)采集,是在不中斷數(shù)據(jù)采集過程的情況下不斷地向計(jì)算機(jī)返回采集數(shù)據(jù)。開始數(shù)據(jù)采集后,DAQ卡不斷地采集數(shù)據(jù)并將它們存貯在指定的緩沖區(qū)中(circular buffer ),然后LabVIEW每隔一段時(shí)間將一批數(shù)據(jù)送入計(jì)算機(jī)進(jìn)行處理。如果緩沖區(qū)放滿了,DA

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論