初學(xué)LabVIEW數(shù)據(jù)采集中常見(jiàn)的問(wèn)題_第1頁(yè)
初學(xué)LabVIEW數(shù)據(jù)采集中常見(jiàn)的問(wèn)題_第2頁(yè)
初學(xué)LabVIEW數(shù)據(jù)采集中常見(jiàn)的問(wèn)題_第3頁(yè)
全文預(yù)覽已結(jié)束

下載本文檔

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

文檔簡(jiǎn)介

1、初學(xué)數(shù)據(jù)采集中常見(jiàn)的問(wèn)題經(jīng)常在論壇上會(huì)碰到一些會(huì)員朋友發(fā)貼提問(wèn)數(shù)據(jù)采集的問(wèn)題,其中很大一部分是初學(xué) 者剛接觸數(shù)據(jù)采集,對(duì)其中的一些基本概念還沒(méi)有太多的了解,這里將這些問(wèn)題集中一下, 做個(gè)總結(jié)。由于個(gè)人接觸的板卡以 NI的為主,這里的內(nèi)容只針對(duì) NI的數(shù)據(jù)采集卡,不保證 適用于其它公司的數(shù)據(jù)采集卡。1,數(shù)據(jù)采集的時(shí)候數(shù)據(jù)會(huì)不會(huì)丟失?這是最常見(jiàn)的一個(gè)問(wèn)題,剛開(kāi)始學(xué)數(shù)據(jù)采集的時(shí)候都會(huì)在考慮,如果軟件上讀取數(shù)據(jù)的循環(huán)運(yùn)行得不夠快時(shí),比如100K采樣率的時(shí)候,軟件上循環(huán)肯定沒(méi)這么快,數(shù)據(jù)是不是就丟失了?首先我們要清楚的是,數(shù)據(jù)采集功能是由數(shù)據(jù)采集卡來(lái)完成的,軟件只是將采集到的數(shù)據(jù)接收到電腦上面過(guò)來(lái),數(shù)據(jù)

2、采集卡有自身的辦法來(lái)解決硬件采集速度快過(guò)于軟件讀取速度 的問(wèn)題。這需要對(duì)數(shù)據(jù)采集過(guò)程中數(shù)據(jù)的傳輸作一個(gè)介紹:外部的信號(hào)進(jìn)入數(shù)據(jù)采集卡后,經(jīng)過(guò)各種處理轉(zhuǎn)換,先進(jìn)入數(shù)據(jù)采集卡自身的緩沖區(qū)里面,緩沖區(qū)是先進(jìn)先出(FIFO, First InFirst Out )的,NI的數(shù)據(jù)采集卡應(yīng)該是都有板載的緩沖區(qū),區(qū)別在于緩沖區(qū)的大小而已。 然后當(dāng)板載緩沖區(qū)中的數(shù)據(jù)量到了一定的條件時(shí),數(shù)據(jù)采集卡將緩沖區(qū)的數(shù)據(jù)上傳到計(jì)算機(jī)內(nèi)存中,一般是以 DMA(直接內(nèi)存訪問(wèn))方式傳入的,但也可以設(shè)置為其它方式,比如中斷 等。上傳數(shù)據(jù)的方式和時(shí)機(jī)可以通過(guò)DAQmX勺屬性節(jié)點(diǎn)進(jìn)行設(shè)置或查看,DAQm中默認(rèn)是使用DMA專(zhuān)輸方式,傳

3、輸條件是板載內(nèi)存非空。以下藍(lán)色部分摘自 NI網(wǎng)站: 數(shù)據(jù)傳輸方式包括直接內(nèi)存訪問(wèn) (DMA),中斷請(qǐng)求(IRQ)和可編程I/O。DMA是一種DAQ板 卡和PC內(nèi)存間直接通訊的傳輸方式,不再需要處理器的干預(yù)。NI "MITE"芯片可以處理與PCI總線間的所有總線協(xié)議。IRQ傳輸方式會(huì)置高信號(hào)并中斷處理器,然后由處理器處理數(shù)據(jù)傳輸。IRQ傳輸通常很低,只有 150 kb/s,而DMA可以高達(dá)20 Mb/s。IRQ傳輸速率與使用的系 統(tǒng)設(shè)備相關(guān),如處理器速度等。規(guī)屋性:盤(pán)毀:養(yǎng)捂怖笞和內(nèi)召:檢據(jù)傳潔雷家雜杵屬性在円而円睛-twr .'r.fOc偉阪橢«.對(duì)張獻(xiàn)R

4、穴外t2»方兀網(wǎng)心逼附牘事氓葉;iXBT葦轟費(fèi)!模槪驚人濤孵性:音緩;蠱據(jù)倩輸和內(nèi)存;魏據(jù)怖輸機(jī)劃屬性慚話專(zhuān)益匚 ataXfe.lTKech頁(yè)蒂內(nèi)尸復(fù)匹L1 W (10204)罠上班 一,戰(zhàn)l龍一 -fiulk)Fit軸 辿左于制 也注汕1圖1設(shè)置模擬輸入數(shù)據(jù)傳遞方式與時(shí)機(jī)數(shù)據(jù)到了內(nèi)存后,再由程序中的DAQmRead.vi從內(nèi)存中讀入到計(jì)算機(jī)中去。這里計(jì)算機(jī)的內(nèi)存要和板載緩沖區(qū)區(qū)分開(kāi)來(lái),板載緩沖區(qū)是廠商固定死的,改變不了,不會(huì)出現(xiàn)溢出的情況,它的空間可以很小, 比如1Kbit以下,但計(jì)算機(jī)中為數(shù)據(jù)采集開(kāi)辟的內(nèi)存建議是采樣率的10左右,即是說(shuō)即使 DAQmRead.vi在10秒鐘都沒(méi)有

5、執(zhí)行一次的話,那么就會(huì)出現(xiàn) 內(nèi)存不足以存放采集到的數(shù)據(jù)的問(wèn)題,導(dǎo)致數(shù)據(jù)丟失,DAQmXRead.vi會(huì)報(bào)錯(cuò)。內(nèi)存中的大小可以在 DAQmx Timing (Sample Clock).vi的每通道采樣 輸入端進(jìn)行設(shè)置,參考下圖中DAQm幫助中的說(shuō)明:DAQmx時(shí)(VI)進(jìn)! NJ-J-JIT -血犬亍堆載生或莊廉席啟-弁創(chuàng)墾畑的氏沖2.於1,:疼fl分勸村垃于1£盞朋的證片奐SL.ITF71事WK式It耳芾峯吿-T幵需或4*樂(lè)嚴(yán),£壬韋甲響療也吐登抿丹.1 »123j41:.-3加訂&jKTII費(fèi)卡鉅U塵砂打右削黑艸 1017«.|一g;主或訓(xùn)啖

6、MX肛貶rr卻亜直一:zt:J*寒三氐仝fr用-吳棄郵怦”相“總出更迦師匙畫(huà)抄口賈“甲毎il迫辛IT吃亍峯盼式毎1泅0歪直BEt主Eli的來(lái)肆囲(3慄祥宦式丄齊坯聿樣.N-DAQm |5僅用注rt:確曰堆沖區(qū)主J,E| ff養(yǎng)莉HB罕在門(mén)嗣總怕尸結(jié)睦后”對(duì)任脊的引用”扣祐if道彌商亙司苗奮嶺出電盲曲品雖呦船入帝艇居曲土在V詡西站盤(pán);;>:.世盂恃出柘世罰両詢W 刮I費(fèi)船出持丟開(kāi)W趣片丈的就械壽.右 建益擊臣孫一:富(mu星用13亠空t*!=單中酹砂總遼L魚(yú)與吳工歯業(yè) 更J5-(ftF 處貞音燈代匸<雯,肝烝21-2" 3nfALSC<-W >M圖2設(shè)置內(nèi)存緩沖

7、區(qū)大小但是DAQm會(huì)默認(rèn)設(shè)置一個(gè)最小值,如果你在每通道采樣 輸入端設(shè)置的值小于這個(gè)值的話,DAQm會(huì)忽略你輸入的這個(gè)值而使用默認(rèn)最小值,見(jiàn)下圖:7球Hflt式育占睢玉口 t .JiUkS撤.iJJTDEWttJt jJU沖H!料F)*皿巾峠址&出大4 W飛迪足來(lái)耳僉邑匕hffi-陸0士匕如出血片克如:酬他于出U內(nèi) fffl.d . «».itfC+卜*:-爭(zhēng)吋忙4.陸n “;w簾td-5ttftMT?葩所冑科去hnV nrtjrr j-Tf 1 t TFT 正的 It I- i - r. i(t. -Ut.'H': . +: : jil Af B *

8、hFt-t、:£ H;b:4TE:卜:- WRi*遜塞薦Mtztf - >+T7=Jt晦吉”._ _匚t朋=W*F肖.來(lái):注琳HO kSC-:C'jS.-5i kSld9-ic t4C £.>'£14 kfilO.OOE L.ET-lSD E.fi£40 kSmu1 MSVL - Em±»TE ” JS裔兵係認(rèn)韻惟K 1'4£fWCM 如JBig沖區(qū)樣d返堆?f褲列S”ja-fc-1 -r.«dSai R冷=# -牡電弋-h首是匍爾,ripf廉捧畳劃的頤單jSSf - Hl-AQ

9、rrxT告ai程處沖匕E:對(duì)興SiiifcEgiE. fflEfllifEffitX4Stiffly1MTHTS.圖3確定緩沖區(qū)大小不過(guò)單單將這個(gè)緩沖區(qū)設(shè)置成10倍,并不一定能保證緩沖區(qū)不會(huì)溢出,因?yàn)榫彌_區(qū)的存儲(chǔ)的數(shù)據(jù)量不但跟它的輸入速度(采樣率)有關(guān),還跟它的輸出速度有關(guān),它的輸出速度就是采集程序從它里面讀取的速度,所以一般在使用循環(huán)中調(diào)用DAQmRead.vi的時(shí)候,一般是選擇多態(tài)VI中的多采樣而不是單采樣,如下圖所示: nuabor of samples per chi1J模擬 >單采樣>L數(shù)字 P名通道ID EBL計(jì)數(shù)器未換算卜更羞>圖 4 設(shè)置 DAQms Read

10、.vi同時(shí)將它的每通道采樣數(shù)設(shè)置為-1 ,表示每次調(diào)用 DAQmXRead.vi的時(shí)候都是將內(nèi)存中的所有數(shù)據(jù)讀取進(jìn)來(lái)。在一些特殊情況下才將這個(gè)輸入設(shè)置為其它整數(shù),但就得保證循環(huán)能盡快的執(zhí)行,以免緩沖區(qū)溢出。如果設(shè)置為100的話,表示每次從緩沖區(qū)中讀取100個(gè)數(shù)據(jù)回來(lái),如果緩沖區(qū)的數(shù)據(jù)不足100個(gè),那么就會(huì)等到夠了 100個(gè)后才讀進(jìn)來(lái)并輸出,程序會(huì)在這里等待緩沖區(qū)的數(shù)據(jù)夠 100個(gè)才往后執(zhí)行,跟串口設(shè)置讀取緩沖區(qū)字節(jié)數(shù)一樣。設(shè)置為 -1則 不會(huì)出現(xiàn)等待的情況,有就讀,沒(méi)有就返回空數(shù)組。所以,總結(jié)一下,為了保證數(shù)據(jù)不會(huì)失丟,要設(shè)置好內(nèi)存緩沖區(qū)的大小,還要保證讀取緩沖區(qū)的程序(DAQmx Read.

11、vi)循環(huán)得盡量快,每一次讀取的數(shù)據(jù)盡量多。2,數(shù)據(jù)采集的時(shí)間問(wèn)題數(shù)據(jù)采集中時(shí)間相關(guān)的問(wèn)題主要是二方面,一個(gè)是每一個(gè)數(shù)據(jù)點(diǎn)的時(shí)間,在NI的數(shù)據(jù)采集中是通過(guò)T0和dt來(lái)確定的,T0就是開(kāi)始數(shù)據(jù)采集的初始時(shí)間,是任務(wù)開(kāi)始時(shí)數(shù)據(jù)采 集卡讀取的計(jì)算機(jī)時(shí)間,dt二個(gè)數(shù)據(jù)點(diǎn)之間間隔的時(shí)間,是采樣率的倒數(shù),比如1K采樣率,dt就是1/1000=0.001秒=1毫秒。在使用DAQmRead.vi的時(shí)候要選擇波形輸出而不是選擇 DBL輸出,波形輸出就帶有這些信息,而DBL就只是有數(shù)據(jù)而沒(méi)有時(shí)間信息了。見(jiàn)圖4。另一個(gè)就是采樣率的設(shè)置問(wèn)題,數(shù)據(jù)采集卡的采樣脈沖一般是由它的內(nèi)部時(shí)鐘源進(jìn)行分頻后得到的,所以采樣率是不是

12、非常準(zhǔn)確,得看時(shí)鐘源是否能被整數(shù)倍地分頻到指定的采樣率,具體可以參考 NI上的文章:確定NI-DAQmx中采集的實(shí)際采樣率硬件:Multifunction DAQ (MIO)問(wèn)題:我設(shè)置采集的采樣速率為500,001 Hz。我想知道我的設(shè)備所用的實(shí)際采樣率。如果我在LabVIEW中用NI-DAQmx編成,如何確定實(shí)際采樣率?解答:您可以用DAQm定時(shí)屬性節(jié)點(diǎn)來(lái)獲得此信息。SamplClk.Timebase.Rate 屬性提供了產(chǎn)生實(shí)際采樣率的時(shí)基頻率 (timebase frequency)。大多數(shù)DAC設(shè)備有兩個(gè)時(shí)基頻率:20 MHz 和100 kHz。 SamplClk.TimebaseD

13、iv 屬性提供分頻系數(shù),用于從時(shí)基頻率分頻下來(lái)到您所希望的實(shí)際采樣時(shí)鐘頻率。所以當(dāng)您設(shè)置您的采樣速率為500,001 Hz ,設(shè)備利用20 MHz時(shí)基和分頻系數(shù)39來(lái)獲得實(shí)際的采樣速率 20 MHz/39 = 512,820.51 Hz分頻系數(shù)永遠(yuǎn)是一個(gè)整數(shù),該整數(shù)的大小取決于您的數(shù)據(jù)采集板卡的型號(hào)。舉個(gè)例子:假設(shè)分頻系數(shù)是一個(gè)16位的整數(shù),這樣 20 MHz時(shí)基允許您使用的所有頻率均大于305.18 Hz,因?yàn)橐粋€(gè)16位整數(shù)對(duì)應(yīng)的最大分頻系數(shù)為65,535。100 kHz時(shí)基用于低于該頻率的采樣速率。進(jìn)而,如果您指定的頻率不能準(zhǔn)確得到,驅(qū)動(dòng)將采用最接近于您指定的采樣率且高于您所指定的采樣率

14、對(duì)E系列:AI采樣時(shí)鐘分頻系數(shù)=24位AI轉(zhuǎn)換時(shí)鐘分頻系數(shù):=16位AO采樣時(shí)鐘分頻系數(shù)=24位對(duì)M系列:AI采樣時(shí)鐘分頻系數(shù)=32位AI轉(zhuǎn)換時(shí)鐘分頻系數(shù)=32位AO采樣時(shí)鐘分頻系數(shù)=32位另外,如果確實(shí)需要指定的采樣率,也可以用外部的時(shí)鐘源作為采樣脈沖來(lái)進(jìn)行數(shù)據(jù)采集。其實(shí)更深入一點(diǎn)的話,在連續(xù)采集的應(yīng)用程序中,數(shù)據(jù)采集時(shí)鐘源的準(zhǔn)確性問(wèn)題就會(huì) 顯示出來(lái),假設(shè)時(shí)鐘源的誤差是50ppm (百萬(wàn)分之五十),即二萬(wàn)分之一,而一天有86400秒,如果連續(xù)運(yùn)行一天的話數(shù)據(jù)采集的時(shí)鐘誤差最多就會(huì)有4秒多,所以到了 24小時(shí)后就會(huì)出現(xiàn)波形圖上的時(shí)間與計(jì)算機(jī)時(shí)間差了大概4秒左右的現(xiàn)象,時(shí)間越長(zhǎng)這個(gè)誤差就可能越大

15、,如果這個(gè)誤差不能接受的話就需要想其它辦法解決。其中一個(gè)方法是換一個(gè)更高精度的時(shí)鐘源,但長(zhǎng)時(shí)間運(yùn)行的話始終還是會(huì)有誤差的,之前用過(guò)的方法是到了 0點(diǎn)的時(shí)候關(guān)閉任務(wù)再重新開(kāi)啟,讓數(shù)據(jù)采集卡與計(jì)算機(jī)重新對(duì)時(shí)。3,其它一些問(wèn)題A, 數(shù)據(jù)采集卡在多通道采集時(shí)只需要將創(chuàng)建任務(wù)時(shí)輸入多個(gè)通道的名稱即可,比如單通道時(shí)是使用“Dev1/ai1 ”表示使用第一塊數(shù)據(jù)采集卡的第二個(gè)模擬輸入通道,“Dev1/ai0:1 ”表示使用的是第一塊數(shù)據(jù)采集卡的第1、2個(gè)模擬輸入通道,那么在 DAQmx Read.vi時(shí)就要選擇它的多通道讀取,然后可以通過(guò)“索引數(shù)組”將波形數(shù)組分為第一通道波形和但要注意的是同一個(gè)數(shù)據(jù)采集卡只能啟用一個(gè)同類(lèi)型的數(shù)據(jù)采集任務(wù),比如不能創(chuàng)建二個(gè)模擬輸入的任務(wù),分別測(cè)量二個(gè)通道,只能是啟用一個(gè)任務(wù),但是同時(shí)讀入二個(gè)通道的數(shù)據(jù)。但可以啟動(dòng)不同類(lèi)型的任務(wù),比如在數(shù)據(jù)采集時(shí)又進(jìn)行數(shù)據(jù)輸出等。需要注意的是多種任務(wù)同時(shí)運(yùn)行時(shí)可能會(huì)導(dǎo)致 DMA通道不夠用,這時(shí)就需要將某些任務(wù)的數(shù)據(jù)傳輸方

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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)論