第六章 數(shù)據(jù)采集

上傳人:沈*** 文檔編號:160018474 上傳時間:2022-10-09 格式:DOC 頁數(shù):26 大?。?.22MB
收藏 版權(quán)申訴 舉報 下載
第六章 數(shù)據(jù)采集_第1頁
第1頁 / 共26頁
第六章 數(shù)據(jù)采集_第2頁
第2頁 / 共26頁
第六章 數(shù)據(jù)采集_第3頁
第3頁 / 共26頁

下載文檔到電腦,查找使用更方便

10 積分

下載資源

還剩頁未讀,繼續(xù)閱讀

資源描述:

《第六章 數(shù)據(jù)采集》由會員分享,可在線閱讀,更多相關(guān)《第六章 數(shù)據(jù)采集(26頁珍藏版)》請在裝配圖網(wǎng)上搜索。

1、第六章 數(shù)據(jù)采集 6.1 概述 在計算機廣泛應(yīng)用的今天,數(shù)據(jù)采集的重要性是十分顯著的。它是計算機與外部物理世界連接的橋梁。各種類型信號采集的難易程度差別很大。實際采集時,噪聲也可能帶來一些麻煩。數(shù)據(jù)采集時,有一些基本原理要注意,還有更多的實際的問題要解決。 6.1.1 采樣頻率、抗混疊濾波器和樣本數(shù)。 假設(shè)現(xiàn)在對一個模擬信號x(t) 每隔Δt時間采樣一次。時間間隔Δt被稱為采樣間隔或者采樣周期。它的倒數(shù)1/Δt 被稱為采樣頻率,單位是采樣數(shù)/每秒。t=0, Δt ,2Δt ,3Δt ……等等,x(t)的數(shù)值就被稱為采樣值。所有x(0),x(Δt),x(2Δt )都是采樣值。這樣

2、信號x(t)可以用一組分散的采樣值來表示: 下圖顯示了一個模擬信號和它采樣后的采樣值。采樣間隔是Δt,注意,采樣點在時域上是分散的。 圖6-1 模擬信號和采樣顯示 如果對信號x(t)采集N個采樣點,那么x(t)就可以用下面這個數(shù)列表示: 這個數(shù)列被稱為信號x(t)的數(shù)字化顯示或者采樣顯示。注意這個數(shù)列中僅僅用下標(biāo)變量編制索引,而不含有任何關(guān)于采樣率(或Δt)的信息。所以如果只知道該信號的采樣值,并不能知道它的采樣率,缺少了時間尺度,也不可能知道信號x(t)的頻率。 根據(jù)采樣定理,最低采樣頻率必須是信號頻率的兩倍。反過來說,如果給定了采樣頻率,那么能夠正確顯示信號而不發(fā)生

3、畸變的最大頻率叫做恩奎斯特頻率,它是采樣頻率的一半。如果信號中包含頻率高于奈奎斯特頻率的成分,信號將在直流和恩奎斯特頻率之間畸變。圖6-2顯示了一個信號分別用合適的采樣率和過低的采樣率進(jìn)行采樣的結(jié)果。 采樣率過低的結(jié)果是還原的信號的頻率看上去與原始信號不同。這種信號畸變叫做混疊(alias)。出現(xiàn)的混頻偏差(alias frequency)是輸入信號的頻率和最靠近的采樣率整數(shù)倍的差的絕對值。 b 過低采樣率下的采樣結(jié)果  a 足夠的采樣率下的采樣結(jié)果 圖6-2 不同采樣率的采樣結(jié)果 圖6-3給出了一個例子。假設(shè)采樣頻率 fs 是100HZ,,信號中含有25 、70、16

4、0、和 510 Hz的成分。 圖6-3 說明混疊的例子 采樣的結(jié)果將會是低于奈奎斯特頻率(fs/2=50 Hz)的信號可以被正確采樣。而頻率高于50HZ的信號成分采樣時會發(fā)生畸變。分別產(chǎn)生了30、40和10 Hz的畸變頻率F2、F3和F4。計算混頻偏差的公式是: 混頻偏差=ABS(采樣頻率的最近整數(shù)倍-輸入頻率) 其中ABS表示“絕對值”,例如: 混頻偏差 F2 = |100 – 70| = 30 Hz 混頻偏差F3 = |(2)100 – 160| = 40 Hz 混頻偏差F4 = |(5)100 – 510| = 10 Hz   為了避免這種情況的發(fā)生,通常在信號被

5、采集(A/D)之前,經(jīng)過一個低通濾波器,將信號中高于奈奎斯特頻率的信號成分濾去。在圖6-3的例子中,這個濾波器的截止頻率自然是25HZ。這個濾波器稱為抗混疊濾波器 采樣頻率應(yīng)當(dāng)怎樣設(shè)置呢?也許你可能會首先考慮用采集卡支持的最大頻率。但是,較長時間使用很高的采樣率可能會導(dǎo)致沒有足夠的內(nèi)存或者硬盤存儲數(shù)據(jù)太慢。理論上設(shè)置采樣頻率為被采集信號最高頻率成分的2倍就夠了,實際上工程中選用5~10倍,有時為了較好地還原波形,甚至更高一些。 通常,信號采集后都要去做適當(dāng)?shù)男盘柼幚?,例如FFT等。這里對樣本數(shù)又有一個要求,一般不能只提供一個信號周期的數(shù)據(jù)樣本,希望有5~10個周期,甚至更多的樣本。并且希望

6、所提供的樣本總數(shù)是整周期個數(shù)的。這里又發(fā)生一個困難,有時我們并不知道,或不確切知道被采信號的頻率,因此不但采樣率不一定是信號頻率的整倍數(shù),也不能保證提供整周期數(shù)的樣本。我們所有的僅僅是一個時間序列的離散的函數(shù)x(n)和采樣頻率。這是我們測量與分析的唯一依據(jù)。 6.1.2 數(shù)據(jù)采集系統(tǒng)的構(gòu)成 圖6-4 數(shù)據(jù)采集系統(tǒng)結(jié)構(gòu) 上圖表示了數(shù)據(jù)采集的結(jié)構(gòu)。在數(shù)據(jù)采集之前,程序?qū)Σ杉蹇ǔ跏蓟?,板卡上和?nèi)存中的Buffer是數(shù)據(jù)采集存儲的中間環(huán)節(jié)。需要注意的兩個問題是:是否使用Buffer?是否使用外觸發(fā)啟動、停止或同步一個操作。 緩沖(Buffers) 這里的緩沖指的是PC

7、內(nèi)存的一個區(qū)域(不是數(shù)據(jù)采集卡上的FIFO緩沖),它用來臨時存放數(shù)據(jù)。例如,你需要采集每秒采集幾千個數(shù)據(jù),在一秒內(nèi)顯示或圖形化所有數(shù)據(jù)是困難的。但是將采集卡的數(shù)據(jù)先送到Buffer,你就可以先將它們快速存儲起來,稍后再重新找回它們顯示或分析。需要注意的是Buffer與采集操作的速度及容量有關(guān)。如果你的卡有DMA性能,模擬輸入操作就有一個通向計算機內(nèi)存的高速硬件通道,這就意味著所采集的數(shù)據(jù)可以直接送到計算機的內(nèi)存。 不使用Buffer意味著對所采集的每一個數(shù)據(jù)你都必須及時處理(圖形化、分析等),因為這里沒有一個場合可以保持你著手處理的數(shù)據(jù)之前的若干數(shù)據(jù)點。 下列情況需要使用Buffer

8、I/O: l 需要采集或產(chǎn)生許多樣本,其速率超過了實際顯示、存儲到硬件,或?qū)崟r分析的速度。 l 需要連續(xù)采集或產(chǎn)生AC數(shù)據(jù)(>10樣本/秒),并且要同時分析或顯示某些數(shù)據(jù)。 l 采樣周期必須準(zhǔn)確、均勻地通過數(shù)據(jù)樣本。 下列情況可以不使用Buffer I/O: l 數(shù)據(jù)組短小,例如每秒只從兩個通道之一采集一個數(shù)據(jù)點。 l 需要縮減存儲器的開支。 觸發(fā)(Triggering) 觸發(fā)涉及初始化、終止或同步采集事件的任何方法。觸發(fā)器通常是一個數(shù)字或模擬信號,其狀態(tài)可確定動作的發(fā)生。軟件觸發(fā)最容易,你可以直接用軟件,例如使用布爾面板控制去啟動/停止數(shù)據(jù)采集。硬件觸發(fā)讓板卡上的電路

9、管理觸發(fā)器,控制了采集事件的時間分配,有很高的精確度。硬件觸發(fā)可進(jìn)一步分為外部觸發(fā)和內(nèi)部觸發(fā)。當(dāng)某一模入通道發(fā)生一個指定的電壓電平時,讓卡輸出一個數(shù)字脈沖,這是內(nèi)部觸發(fā)。采集卡等待一個外部儀器發(fā)出的數(shù)字脈沖到來后初始化采集卡,這是外部觸發(fā)。許多儀器提供數(shù)字輸出(常稱為“trigger out”)用于觸發(fā)特定的裝置或儀器,在這里,就是數(shù)據(jù)采集卡。 下列情況使用軟件觸發(fā): l 用戶需要對所有采集操作有明確的控制,并且 l 事件定時不需要非常準(zhǔn)確。 下列情況使用硬件觸發(fā): l 采集事件定時需要非常準(zhǔn)確。 l 用戶需要削減軟件開支。 l 采集事件需要與外部裝置同步。 后面可以看到怎樣使

10、用采集的VI程序設(shè)置有Buffer及無Buffer的I/O操作,以及設(shè)置觸發(fā)的類型。 6.1.3 模入信號類型 數(shù)據(jù)采集前,必須對所采集的信號的特性有所了解,因為不同信號的測量方式和對采集系統(tǒng)的要求是不同的,只有了解被測信號,才能選擇合適的測量方式和采集系統(tǒng)配置。 任意一個信號是隨時間而改變的物理量。一般情況下,信號所運載信息是很廣泛的,比如:狀態(tài)(state)、速率(rate)、電平(level)、形狀(shape)、頻率成分(frequency content)。根據(jù)信號運載信息方式的不同,可以將信號分為模擬或數(shù)字信號。數(shù)字(二進(jìn)制)信號分為開關(guān)信號和脈沖信號。模擬信號可分為直流

11、、時域、頻域信號,如圖6-5所示。 圖6-5 信號分類 數(shù)字信號   第一類數(shù)字信號是開-關(guān)信號。一個開-關(guān)信號運載的信息與信號的瞬間狀態(tài)有關(guān)。TTL信號就是一個開-關(guān)信號,一個TTL信號如果在2.0到5.0V之間,就定義它為邏輯高電平,如果在0到0.8V之間,就定義為邏輯低電平。   第二類數(shù)字信號是脈沖信號。這種信號包括一系列的狀態(tài)轉(zhuǎn)換,信息就包含在狀態(tài)轉(zhuǎn)化發(fā)生的數(shù)目、轉(zhuǎn)換速率、一個轉(zhuǎn)換間隔或多個轉(zhuǎn)換間隔的時間里。安裝在馬達(dá)軸上的光學(xué)編碼器的輸出就是脈沖信號。有些裝置需要數(shù)字輸入,比如一個步進(jìn)式馬達(dá)就需要一系列的數(shù)字脈沖作為輸入來控制位置和速度。 模擬直流信號   模擬直流

12、信號是靜止的或變化非常緩慢的模擬信號。直流信號最重要的信息是它在給定區(qū)間內(nèi)運載的信息的幅度。常見的直流信號有溫度、流速、壓力、應(yīng)變等。采集系統(tǒng)在采集模擬直流信號時,需要有足夠的精度以正確測量信號電平,由于直流信號變化緩慢,用軟件計時就夠了,不需要使用硬件計時。 模擬時域信號   模擬時域信號與其他信號不同在于,它在運載信息時不僅有信號的電平,還有電平隨時間的變化。在測量一個時域信號時,也可以說是一個波形,需要關(guān)注一些有關(guān)波形形狀的特性,比如斜度、峰值等。為了測量一個時域信號,必須有一個精確的時間序列,序列的時間間隔也應(yīng)該合適,以保證信號的有用部分被采集到。要以一定的速率進(jìn)行測量,這個測

13、量速率要能跟上波形的變化。用于測量時域信號的采集系統(tǒng)包括一個A/D、一個采樣時鐘和一個觸發(fā)器。A/D的分辨率要足夠高,保證采集數(shù)據(jù)的精度,帶寬要足夠高,用于高速率采樣;精確的采樣時鐘,用于以精確的時間間隔采樣;觸發(fā)器使測量在恰當(dāng)?shù)臅r間開始。存在許多不同的時域信號,比如心臟跳動信號、視頻信號等,測量它們通常是因為對波形的某些方面特性感興趣。 模擬頻域信號   模擬頻域信號與時域信號類似,然而,從頻域信號中提取的信息是基于信號的頻域內(nèi)容,而不是波形的形狀,也不是隨時間變化的特性。用于測量一個頻域信號的系統(tǒng)必須有一個A/D、一個簡單時鐘和一個用于精確捕捉波形的觸發(fā)器。系統(tǒng)必須有必要的分析功能

14、,用于從信號中提取頻域信息。為了實現(xiàn)這樣的數(shù)字信號處理,可以使用應(yīng)用軟件或特殊的DSP硬件來迅速而有效地分析信號。模擬頻域信號也很多,比如聲音信號、地球物理信號、傳輸信號等。 上述信號分類不是互相排斥的。一個特定的信號可能運載有不只一種信息,可以用幾種方式來定義信號并測量它,用不同類型的系統(tǒng)來測量同一個信號,從信號中取出需要的各種信息。 6.1.4 模入信號的連接方式   一個電壓信號可以分為接地和浮動兩種類型。測量系統(tǒng)可以分為差分(Differential)、參考地單端(RSE)、無參考地單端(NRSE)三種類型。 1.接地信號和浮動信號 接地信號   接地信號,就是將信號的

15、一端與系統(tǒng)地連接起來,如大地或建筑物的地。因為信號用的是系統(tǒng)地,所以與數(shù)據(jù)采集卡是共地的。接地最常見的例子是通過墻上的接地引出線,如信號發(fā)生器和電源。 浮動信號 一個不與任何地(如大地或建筑物的地)連接的電壓信號稱為浮動信號,浮動信號的每個端口都與系統(tǒng)地獨立。一些常見的浮動信號的例子有電池、熱電偶、變壓器和隔離放大器。 2.測量系統(tǒng)分類 差分測量系統(tǒng)   差分測量系統(tǒng)中,信號輸入端分別與一個模入通道相連接。具有放大器的數(shù)據(jù)采集卡可配置成差分測量系統(tǒng)。圖6-6描述了一個8通道的差分測量系統(tǒng),用一個放大器通過模擬多路轉(zhuǎn)換器進(jìn)行通道間的轉(zhuǎn)換。標(biāo)有AIGND(模擬輸入地)的管腳就是測

16、量系統(tǒng)的地。 圖6-6 差分測量系統(tǒng) 一個理想的差分測量系統(tǒng)僅能測出(+)和(-)輸入端口之間的電位差,完全不會測量到共模電壓。然而,實際應(yīng)用的板卡卻限制了差分測量系統(tǒng)抵抗共模電壓的能力,數(shù)據(jù)采集卡的共模電壓的范圍限制了相對與測量系統(tǒng)地的輸入電壓的波動范圍。共模電壓的范圍關(guān)系到一個數(shù)據(jù)采集卡的性能,可以用不同的方式來消除共模電壓的影響。如果系統(tǒng)共模電壓超過允許范圍,需要限制信號地與數(shù)據(jù)采集卡的地之間的浮地電壓,以避免測量數(shù)據(jù)錯誤。 參考地單端測量系統(tǒng)(RSE) 一個RSE測量系統(tǒng),也叫做接地測量系統(tǒng),被測信號一端接模擬輸入通道,另一端接系統(tǒng)地AIGND。圖6

17、-7描繪了一個16通道的RSE測量系統(tǒng)。 無參考地單端測量系統(tǒng)(NRSE) 在NRSE測量系統(tǒng)中,信號的一端接模擬輸入通道,另一端接一個公用參考端,但這個參考端電壓相對于測量系統(tǒng)的地來說是不斷變化的。圖6-8說明了一個NRSE測量系統(tǒng),其中AISENSE是測量的公共參考端,AIGND是系統(tǒng)的地。 圖6-7 參考地單端測量系統(tǒng) 圖6-8 無參考地單端測量系統(tǒng) 3.選擇合適的測量系統(tǒng) 兩種信號源和三種測量系統(tǒng)一共可以組成六種連接方式: 接地信號 浮動信號 DEF * * RSE ** NRSE * * 其中,不帶

18、*號的方式不推薦使用。一般說來,浮動信號和差動連接方式可能較好。但實際測量時還要看情況而定。 測量接地信號   測量接地信號最好采用差分或NRSE測量系統(tǒng)。如果采用RSE測量系統(tǒng)時,將會給測量結(jié)果帶來較大的誤差。圖6-9展示了用一個RSE測量系統(tǒng)去測量一個接地信號源的弊端。在本例中,測量電壓Vm是測量信號電壓Vs和電位差DVg之和,其中DVg是信號地和測量地之間的電位差,這個電位差來自于接地回路電阻,可能會造成數(shù)據(jù)錯誤。一個接地回路通常會在測量數(shù)據(jù)中引入頻率為電源頻率的交流和偏置直流干擾。一種避免接地回路形成的辦法就是在測量信號前使用隔離方法,測量隔離之后的信號。 圖6-9 RSE

19、測量系統(tǒng)引入接地回路電壓 如果信號電壓很高并且信號源和數(shù)據(jù)采集卡之間的連接阻抗很小,也可以采用RSE系統(tǒng),因為此時接地回路電壓相對于信號電壓來說很小,信號源電壓的測量值受接地回路的影響可以忽略。 測量浮動信號   可以用差分、RSE、NRSE方式測量浮動信號。在差分測量系統(tǒng)中,應(yīng)該保證相對于測量地的信號的共模電壓在測量系統(tǒng)設(shè)備允許的范圍之內(nèi)。如果采用差分或NRSE測量系統(tǒng),放大器輸入偏置電流會導(dǎo)致浮動信號電壓偏離數(shù)據(jù)采集卡的有效范圍。為了穩(wěn)住信號電壓,需要在每個測量端與測量地之間連接偏置電阻,如圖6-10所示。這樣就為放大器輸入到放大器的地提供了一個直流通路。這些偏置電阻的阻值應(yīng)

20、該足夠大,這樣使得信號源可以相對于測量地浮動。對低阻抗信號源來說,10kΩ到100kΩ的電阻比較合適。 圖6-10 增加偏置電阻 如果輸入信號是直流,就只需要用一個電阻將(-)端與測量系統(tǒng)的地連接起來。然而如果信號源的阻抗相對較高,從免除干擾的角度而言,這種連接方式會導(dǎo)致系統(tǒng)不平衡。在信號源的阻抗足夠高的時候,應(yīng)該選取兩個等值電阻,一個連接信號高電平(+)到地,一個連接信號低電平(-)到地。如果輸入信號是交流,就需要兩個偏置電阻,以達(dá)到放大器的直流偏置通路的要求。 總的來說,不論測接地還是浮動信號,差分測量系統(tǒng)是很好的選擇,因為它不但避免了接地回路干擾,還避免了環(huán)

21、境干擾。相反的,RSE系統(tǒng)卻允許兩種干擾的存在,在所有輸入信號都滿足以下指標(biāo)時,可以采用RSE測量方式:輸入信號是高電平(一般要超過1V);連線比較短(一般小于5米)并且環(huán)境干擾很小或屏蔽良好;所有輸入信號都與信號源共地。當(dāng)有一項不滿足要求時,就要考慮使用差分測量方式。 另外需要明確信號源的阻抗。電池、RTD、應(yīng)變片、熱電偶等信號源的阻抗很小,可以將這些信號源直接連接到數(shù)據(jù)采集卡上或信號調(diào)理硬件上。直接將高阻抗的信號源接到插入式板卡上會導(dǎo)致出錯。為了更好的測量,輸入信號源的阻抗與插入式數(shù)據(jù)采集卡的阻抗相匹配。 6.1.5 信號調(diào)理   從傳感器得到的信號大多要經(jīng)過調(diào)理才能進(jìn)入數(shù)據(jù)

22、采集設(shè)備,信號調(diào)理功能包括放大、隔離、濾波、激勵、線性化等。由于不同傳感器有不同的特性,因此,除了這些通用功能,還要根據(jù)具體傳感器的特性和要求來設(shè)計特殊的信號調(diào)理功能。下面僅介紹信號調(diào)理的通用功能。 1. 放大   微弱信號都要進(jìn)行放大以提高分辨率和降低噪聲,使調(diào)理后信號的電壓范圍和A/D的電壓范圍相匹配。信號調(diào)理模塊應(yīng)盡可能靠近信號源或傳感器,使得信號在受到傳輸信號的環(huán)境噪聲影響之前已被放大,使信噪比得到改善。 2. 隔離   隔離是指使用變壓器、光或電容耦合等方法在被測系統(tǒng)和測試系統(tǒng)之間傳遞信號,避免直接的電連接。使用隔離的原因由兩個:一是從安全的角度考慮;另一個原因是隔離可使從數(shù)

23、據(jù)采集卡讀出來的數(shù)據(jù)不受地電位和輸入模式的影響。如果數(shù)據(jù)采集卡的地與信號地之間有電位差,而又不進(jìn)行隔離,那么就有可能形成接地回路,引起誤差。 3. 濾波   濾波的目的是從所測量的信號中除去不需要的成分。大多數(shù)信號調(diào)理模塊有低通濾波器,用來濾除噪聲。通常還需要抗混疊濾波器,濾除信號中感興趣的最高頻率以上的所有頻率的信號。某些高性能的數(shù)據(jù)采集卡自身帶有抗混疊濾波器。 4. 激勵   信號調(diào)理也能夠為某些傳感器提供所需的激勵信號,比如應(yīng)變傳感器、熱敏電阻等需要外界電源或電流激勵信號。很多信號調(diào)理模塊都提供電流源和電壓源以便給傳感器提供激勵。 5. 線性化   許多傳感器對被測量的響應(yīng)是

24、非線性的,因而需要對其輸出信號進(jìn)行線性化,以補償傳感器帶來的誤差。但目前的趨勢是,數(shù)據(jù)采集系統(tǒng)可以利用軟件來解決這一問題。 6. 數(shù)字信號調(diào)理 即使傳感器直接輸出數(shù)字信號,有時也有進(jìn)行調(diào)理的必要。其作用是將傳感器輸出的數(shù)字信號進(jìn)行必要的整形或電平調(diào)整。大多數(shù)數(shù)字信號調(diào)理模塊還提供其他一些電路模塊,使得用戶可以通過數(shù)據(jù)采集卡的數(shù)字I/O直接控制電磁閥、電燈、電動機等外部設(shè)備。 6.1.6 數(shù)據(jù)采集(DAQ)卡 1.?dāng)?shù)據(jù)采集卡的功能   一個典型的數(shù)據(jù)采集卡的功能有模擬輸入、模擬輸出、數(shù)字I/O、計數(shù)器/計時器等,這些功能分別由相應(yīng)的電路來實現(xiàn)。   模擬輸入是采集最基本的功能。它

25、一般由多路開關(guān)(MUX)、放大器、采樣保持電路以及A/D來實現(xiàn),通過這些部分,一個模擬信號就可以轉(zhuǎn)化為數(shù)字信號。A/D的性能和參數(shù)直接影響著模擬輸入的質(zhì)量,要根據(jù)實際需要的精度來選擇合適的A/D。 模擬輸出通常是為采集系統(tǒng)提供激勵。輸出信號受數(shù)模轉(zhuǎn)換器(D/A)的建立時間、轉(zhuǎn)換率、分辨率等因素影響。建立時間和轉(zhuǎn)換率決定了輸出信號幅值改變的快慢。建立時間短、轉(zhuǎn)換率高的D/A可以提供一個較高頻率的信號。如果用D/A的輸出信號去驅(qū)動一個加熱器,就不需要使用速度很快的D/A,因為加熱器本身就不能很快地跟蹤電壓變化。應(yīng)該根據(jù)實際需要選擇D/A的參數(shù)指標(biāo)。 數(shù)字I/O通常用來控制過程、

26、產(chǎn)生測試信號、與外設(shè)通信等。它的重要參數(shù)包括:數(shù)字口路數(shù)(line)、接收 (發(fā)送 )率、驅(qū)動能力等。如果輸出去驅(qū)動電機、燈、開關(guān)型加熱器等用電器,就不必用較高的數(shù)據(jù)轉(zhuǎn)換率。路數(shù)要能同控制對象配合,而且需要的電流要小于采集卡所能提供的驅(qū)動電流。但加上合適的數(shù)字信號調(diào)理設(shè)備,仍可以用采集卡輸出的低電流的TTL電平信號去監(jiān)控高電壓、大電流的工業(yè)設(shè)備。數(shù)字I/O常見的應(yīng)用是在計算機和外設(shè)如打印機、數(shù)據(jù)記錄儀等之間傳送數(shù)據(jù)。另外一些數(shù)字口為了同步通信的需要還有“握手”線。路數(shù)、數(shù)據(jù)轉(zhuǎn)換速率、“握手”能力都是應(yīng)理解的重要參數(shù),應(yīng)依據(jù)具體的應(yīng)用場合而選擇有合適參數(shù)的數(shù)字I/O。 許多場合都要用到

27、計數(shù)器,如定時、產(chǎn)生方波等。計數(shù)器包括三個重要信號:門限信號、計數(shù)信號、輸出。門限信號實際上是觸發(fā)信號——使計數(shù)器工作或不工作;計數(shù)信號也即信號源,它提供了計數(shù)器操作的時間基準(zhǔn);輸出是在輸出線上產(chǎn)生脈沖或方波。計數(shù)器最重要的參數(shù)是分辨率和時鐘頻率,高分辨率意味著計數(shù)器可以計更多的數(shù),時鐘頻率決定了計數(shù)的快慢,頻率越高,計數(shù)速度就越快。 2.?dāng)?shù)據(jù)采集卡的軟件配置   一般說來,數(shù)據(jù)采集卡都有自己的驅(qū)動程序,該程序控制采集卡的硬件操作,當(dāng)然這個驅(qū)動程序是由采集卡的供應(yīng)商提供,用戶一般無須通過低層才能與采集卡硬件打交道。   NI公司還提供了一個數(shù)據(jù)采集卡的配置工具軟件——Measurem

28、ent & Automation Explorer ,它可以配置NI公司的軟件和硬件,比如執(zhí)行系統(tǒng)測試和診斷、增加新通道和虛擬通道、設(shè)置測量系統(tǒng)的方式、察看所連接的設(shè)備等。 6.1.7 多通道的采樣方式   多數(shù)通用采集卡都有多個模入通道,但是并非每個通道配置一個A/D,而是大家共用一套A/D,在A/D之前的有一個多路開關(guān)(MUX),以及放大器(AMP)、采樣保持器(S/H)等。通過這個開關(guān)的掃描切換,實現(xiàn)多通道的采樣。多通道的采樣方式有三種:循環(huán)采樣、同步采樣和間隔采樣。在一次掃描(scan)中,數(shù)據(jù)采集卡將對所有用到的通道進(jìn)行一次采樣,掃描速率(scan rate)是數(shù)據(jù)采集卡每秒

29、進(jìn)行掃描的次數(shù)。   當(dāng)對多個通道采樣時,循環(huán)采樣是指采集卡使用多路開關(guān)以某一時鐘頻率將多個通道分別接入A/D循環(huán)進(jìn)行采樣。如圖6-11給出兩個通道循環(huán)采樣的示意圖。此時,所有的通道共用一個A/D和S/H等設(shè)備,比每個通道分別配一個A/D和S/H的方式要廉價。循環(huán)采樣的缺點在于不能對多通道同步采樣,通道的掃描速率是由多路開關(guān)切換的速率平均分配給每個通道的。因為多路開關(guān)要在通道間進(jìn)行切換,對兩個連續(xù)通道的采樣,采樣信號波形會隨著時間變化,產(chǎn)生通道間的時間延遲。如果通道間的時間延遲對信號的分析不很重要時,使用循環(huán)采樣是可以的。 圖6-11 循環(huán)采樣 當(dāng)通道間的時間關(guān)系很重要時,就需要

30、用到同步采樣方式。支持這種方式的數(shù)據(jù)采集卡每個通道使用獨立的放大器和S/H電路,經(jīng)過一個多路開關(guān)分別將不同的通道接入A/D進(jìn)行轉(zhuǎn)換。圖6-12給出兩個通道同步采樣的示意圖。還有一種數(shù)據(jù)采集卡,每個通道各有一個獨立的A/D,這種數(shù)據(jù)采集卡的同步性能更好。但是成本顯然更高。 圖6-12 同步采樣 假定用四個通道來采集均為50kHz的周期信號(其周期是20μs),數(shù)據(jù)采集卡的采樣速率設(shè)為200kHz。則采樣間隔為5μs(1/200kHz)。如果用循環(huán)采樣則每相鄰兩個通道之間的采樣信號的時間延遲為5μs(1/200kHz),這樣通道1和通道2之間就產(chǎn)生了1/4周期的相位延遲,而通道1和

31、通道4之間的信號延遲就達(dá)15μs,折合相位差是2700。一般說來這是不行的。 為了改善這種情況。而又不必付出像同步采用采樣那樣大的代價。就有了如下的間隔掃描(interval scanning)方式。 在這種方式下,用通道時鐘控制通道間的時間間隔,而用另一個掃描時鐘控制兩次掃描過程之間的間隔。通道間的間隔由實際上由采集卡的最高采樣速率決定,可能是微秒、甚至納秒級的,效果接近于同步掃描。間隔掃描適合緩慢變化的信號,比如溫度和壓力。假定一個10通道溫度信號的采集系統(tǒng),用間隔采樣,設(shè)置相鄰?fù)ǖ篱g的掃描間隔為5μs,每兩次掃描過程的間隔是1s,這種方法提供了一個以1Hz同步掃描10通道的方法,如圖

32、6-13所示。1通道和10通道掃描間隔是45μs,相對于1Hz的采樣頻率是可被忽略的。對一般采集系統(tǒng)來說,間隔采樣是性價比較高的一種采樣方式。 圖6-13 間隔采樣 NI公司的數(shù)據(jù)采集卡可以使用內(nèi)部時鐘來設(shè)置掃描速率和通道間的時間間隔。多數(shù)數(shù)據(jù)采集卡根據(jù)通道時鐘(channel clock )按順序掃描不同的通道,控制一次掃描過程中相鄰?fù)ǖ篱g的時間間隔,而用掃描時鐘(scan clock)來控制兩次掃描過程的間隔。通道時鐘要比掃描時鐘快,通道時鐘速率越快,在每次掃描過程中相鄰?fù)ǖ篱g的時間間隔就越小?!  ? 對于具有掃描時鐘和通道時鐘的數(shù)據(jù)采集卡,可以通過把掃描速率(scan ra

33、te)設(shè)為0,使用AI Config VI的interchannel delay端口來設(shè)置循環(huán)采樣速率。LabVIEW默認(rèn)的是scan clock,換句話來說,當(dāng)選擇好掃描速率時,LabVIEW自動選擇盡可能快的通道時鐘速率,大多數(shù)情況下,這是一種比較好的選擇。圖6-14說明循環(huán)采樣和間隔采樣的不同。 圖6-14 間隔采樣與循環(huán)采樣比較 6.1.8 LabVIEW 數(shù)據(jù)采集模塊的分類 LabVIEW 中對于數(shù)據(jù)采集模塊按照難易程度做了分類,圖6-15以模入為例表明了工具欄中各種類型的模入模塊。 簡易模入VIs 中級模入VIs 高級模入VIs 通用模入VIs

34、 圖6-15 模入的各種模塊 簡易模入VIs (Ease Analog VIs) 該行的四個模塊執(zhí)行簡單的模入操作。它們可以作為單獨的VI,也可以作為subVI來使用。這些模塊可以自動發(fā)出錯誤警告信息,在對話框中你可以選擇中斷運行或忽略。但是比較復(fù)雜的應(yīng)用需要使用下面的類型?! ? 中級模入VIs (Intermediate Analog Input VIs) 中級模入在兩個地方可以找到,一個如圖6-15的位置,另一個是包含在下面討論的通用模入VIs中。與簡易模入不同的是在那里的一個操作AI Input ,這里細(xì)分為AI Config, AI S

35、tart, AI Read, AI Single Scan以及AI Clear。它可以描述更加細(xì)致、復(fù)雜的操作。 通用模入VIs ( Analog Input Utility VIs) 這里提供了三個常用的Vis,AI Read One Scan,AI Waveform Scan,及AI Continuous Scan。使用一個VI就可以解決一個普通的模入問題,方便但缺乏靈活性。這三個Vis是由中級模入構(gòu)成的。 高級模入VIs ( Advanced Analog Input VIs) 這些Vis是NI-DAQ數(shù)據(jù)采集軟件的界面,是上面三種類型Vis的基礎(chǔ)。一般情況下,用戶不需要

36、直接使用這個功能。 在下面的介紹中我們主要涉及前兩項。 6. 2 模擬輸入(Analog Input) 6.2.1 模入?yún)?shù)說明 為了更好地理解模入,需要了解信號數(shù)字化過程中分辨率、范圍、增益等參數(shù)對采集信號質(zhì)量的影響。 分辨率(Resolution) 分辨率就是用來進(jìn)行模數(shù)轉(zhuǎn)換的位數(shù),A/D的位數(shù)越多,分辨率就越高,可區(qū)分的最小電壓就越小。分辨率要足夠高,數(shù)字化信號才能有足夠的電壓分辨能力,才能比較好的恢復(fù)原始信號。目前分辨率為8的采集卡屬于較低的,12位屬中檔,16位的卡就比較高了。他們可以分別將模入電壓量化為256、4096、65536份。 電壓

37、范圍(Range) 電壓范圍由A/D能數(shù)字化的模擬信號的最高和最低的電壓決定。一般情況下,采集卡的電壓范圍是可調(diào)的,所以可選擇和信號電壓變化范圍相匹配的電壓范圍以充分利用分辨率范圍,得到更高的精度。比如,對于一個3位的A/D,在選擇0-10V范圍時,它將10V八等分;如果選擇范圍為-10V到+10V,同一個A/D就得將20V分為8等分,能分辨的最小電壓就從1.25V上升到2.50V,這樣信號復(fù)原的效果就更差了。 增益(Gain) 增益主要用于在信號數(shù)字化之前對衰減的信號進(jìn)行放大。使用增益,可以等效地降低A/D的輸入范圍,使它能盡量將信號分為更多的等份,基本達(dá)到滿量程,

38、這樣可以更好地復(fù)原信號。因為對同樣的電壓輸入范圍,大信號的量化誤差小,而小信號時量化誤差大。當(dāng)輸入信號不接近滿量程時,量化誤差會相對加大。如:輸入只為滿量程的1/10時,量化誤差相應(yīng)擴(kuò)大10倍。一般使用時,要通過選擇合適的增益,使得輸入信號動態(tài)范圍與A/D的電壓范圍相適應(yīng)。當(dāng)信號的最大電壓加上增益后超過了板卡的最大電壓,超出部分將被截斷而讀出錯誤的數(shù)據(jù)。 對于NI公司的采集卡選擇增益是在LabVIEW中通過設(shè)置信號輸入限制(input limits)來實現(xiàn)的,LabVIEW會根據(jù)選擇的輸入限制和輸入電壓范圍的大小來自動選擇增益的大小。 一個采集卡的分辨率、范圍和增益決定了可

39、分辨的最小電壓,它表示為1LSB。例如,某采集卡的分辨率為 12位,范圍取0-10V,增益取100,則有1LSB=10V/ (100×4096)24μV。這樣,在數(shù)字化過程中,最小能分辨的電壓就為24μs。 選擇合適的增益和輸入范圍要與實際被測信號匹配。如果輸入信號的改變量比采集卡的精度低,就可以將信號放大,提高增益。選擇一個大的輸入范圍或降低增益可以測量大范圍的信號,但這是以精度的降低為代價的。選擇一個小的輸入范圍或提高增益可以提高精度,但這可能會使信號超出A/D允許的電壓范圍。 在研究采集 VI之前需要了解如下的幾個定義。我們以下圖的多通道模入波形采集AI Acquire Wa

40、veform.vi為例說明。 device——設(shè)備號。在NI 采集設(shè)置工具中設(shè)定。該參數(shù)告訴LabVIEW你使用什么卡,它可以使采集 VI自身獨立于卡的類型,也就是說,如果你稍后使用了另一種卡,并且賦予它同樣的設(shè)備號,你的VI程序可正常工作而無須修改。 channels——指定數(shù)據(jù)樣本的物理源。例如,一個卡有16個模擬輸入通道,你就可以同時采集16組數(shù)據(jù)點。在LabVIEW VI中,一個通道或一組通道都用一個字符串來指定。例如: 通道 通道串 通道5 5 通道0到4 0:4 通道1,8,以及10到13 1,8,10:13 scan rate(1000 sc

41、ans/sec)——是在多通道采樣時,分配給一個通道得到的樣本速率,缺省值是1000/秒。 number of samples/ch——每通道要采集的樣本數(shù),缺省值是1000。 high limit——被測信號的最高電平,其缺省值是0。設(shè)為缺省值時系統(tǒng)將按照采集卡設(shè)置程序MAX中的設(shè)定處理。 low limit——被測信號的最低電平,其缺省值是0。設(shè)為缺省值時系統(tǒng)將按照采集卡設(shè)置程序MAX中的設(shè)定處理。 high limit 和 low limit的值將決定采集系統(tǒng)的增益。對大多數(shù)卡輸入信號變化的缺省值是10V到-10V,如果你將其設(shè)為5到-5V,則增益為2。如果你將其設(shè)為1到-1V,

42、則增益為10。如果你設(shè)置一個理論上的增益是得不到支持的,LabVIEW會自動將其調(diào)整到最近的預(yù)置值。典型的采集卡所支持的增益值有0.5,1,2,5,10,20,50,100。 waveforms——A/D轉(zhuǎn)換后的輸出,是一個二維的waveform數(shù)組,其每一列對應(yīng)于一個輸入通道,同時包含有反映時間信息的t0和Δt。 LabVIEW 數(shù)據(jù)采集模塊的分類 下面我們將由簡到難地介紹有關(guān)內(nèi)容。 6. 2.2 簡易模入(Ease Analog VIs) 這是LabVIEW提供的一組標(biāo)準(zhǔn)的、簡單易用的采集 VI。 從左到右,4個VI的功能為: l 從指定通道獲得一個樣本。 l 從由通道

43、字符串規(guī)定的一組通道每通道獲得一個樣本。這些樣本返回到一個樣本數(shù)組,順序由通道號決定。 l 按指定的采樣率由一個通道得到一個波形(一組覆蓋一個周期的樣本),這些樣本返回到一個wareform 數(shù)組。 l 從由通道字符串規(guī)定的每個通道獲得一個波形。這些樣本返回到一個波形的2維數(shù)組,順序由通道號和采樣周期決定。通道數(shù)據(jù)的每個點占1列,時間增量由行決定。 練習(xí) 6-1  目的:采集一個直流電壓信號 1. 準(zhǔn)備一個直流電源(例如0.5V)作為信號源連接到數(shù)據(jù)采集卡的0通道模入端。 2. 構(gòu)造前面板和框圖如上面所示。 3. 運行程序。可得到Mete

44、r指示0.5V。 練習(xí)?。叮?結(jié)束 練習(xí)?。叮病? 目的:多通道數(shù)據(jù)采集 1. 準(zhǔn)備一個方波信號源和一個正弦波信號源。分別連接到模入通道0和1。 2. 設(shè)置前面板與框圖如上。 3. 設(shè)置scan速率、通道號、每通道樣本數(shù)如前面板所示。 4. 運行該程序。 5. 保存為Acquire Multiple Channels.vi。 6. 該程序是無緩沖、軟件觸發(fā)的。 注意:這里使用的AI Acquire Waveform.vi具有多態(tài)性,它的輸出可以是Waveform,也可以是Array,前者可直接與Gra

45、ph連接,后者如果直接要與Graph連接麻煩一些。在LabVIEW 6I以前的版本中只有后者。用后者編寫這個程序的框圖如下: 增加的步驟包括: 7.在框圖上調(diào)出AI Acquire Waveform.vi的快速菜單,選擇Select Type >Scaled Array。 8.在前面板上的graph上用快捷菜單選擇Transpose Array。因為AI Sample Channel功能返回的2D數(shù)組是每列反映一個通道的電壓,而在一般情況下graph圖形是行對列,所以需要對數(shù)組做一次轉(zhuǎn)置,以使Y軸表示電壓值。 9. 在框圖上將起始時刻、實際采樣周期的倒數(shù)和采樣

46、數(shù)據(jù)使用Bundle功能捆綁成一個數(shù)組,送給graph。注意捆綁的順序是I32、SGL和數(shù)組,如果變?yōu)镮32、數(shù)組和SGL,可能出錯。 練習(xí) 6-2 結(jié)束 6. 2.3 中級模入Analog Input 上面介紹的簡單模入的基本局限是執(zhí)行采集任務(wù)的庸余。例如,你每一次調(diào)用AI Sample Channel,都必須為特定類型的測量設(shè)置硬件,告訴它采樣率等。顯然,如果你要反復(fù)采集大量的樣本,你未必需要在每一次重復(fù)時都去設(shè)置測量。一個典型的情況是連續(xù)采集,需要在程序中采用循環(huán)結(jié)構(gòu),按照簡單模入,每次采集前都在設(shè)置參數(shù),不僅多余,而且造成了采集過程的不連續(xù)。 中級模入有更好的功能與

47、靈活性,可以更有效地開發(fā)你的應(yīng)用。它的特點包括控制內(nèi)部采樣率,使用外部觸發(fā),執(zhí)行連續(xù)外部觸發(fā)等。下面我們將仔細(xì)描述它的各種VI,應(yīng)該注意其大量輸入、輸出端子中的部分內(nèi)容一般是不必理會的。有效地使用這些VI只需要關(guān)注你需要的端子。在大多數(shù)情況下,你不需要為在help中解釋的端子的設(shè)置煩惱。   u Analog Input AI Config對指定的通道設(shè)置模入操作,包括硬件、計算機內(nèi)buffer的分配。常用的端子有: l Device——采集卡的設(shè)備號。 l Channel——指定模入通道號的串?dāng)?shù)組。 l l Intput limit——指定輸入信號的范圍達(dá)到調(diào)節(jié)硬件增益

48、的目的。 l Buffer size——單位是scan,控制用于采集數(shù)據(jù)的AI Config占用計算機內(nèi)存的大小。 l Interchannel delay——掃描間隔設(shè)置。缺省值為-1,當(dāng)選用缺省值時,系統(tǒng)按照采集卡的最高掃描速率(一般為幾微秒),再加上系統(tǒng)消耗10微秒,來設(shè)置掃描間隔,對MIO-16-E-4卡來說,約為14微秒。用戶也可以自行設(shè)置這個值,實驗表明,對MIO-16-E-4卡最小可設(shè)到2~3微秒。 AI Start啟動帶緩沖的模入操作。它控制數(shù)據(jù)采集速率,采集點的數(shù)目,及使用任何硬件觸發(fā)的選擇。它的兩個重要輸入是: l Scan rate(scan/sec)——對每個通

49、道采集的每秒掃描次數(shù)。 l Number of scans to acquire——對通道列表的掃描次數(shù)。?? AI Read——從被AI Config分配的緩沖讀取數(shù)據(jù)。它能夠控制由緩沖讀取的點數(shù),讀取數(shù)據(jù)在緩沖中的位置,以及是否返回二進(jìn)制數(shù)或標(biāo)度的電壓數(shù)。它的輸出是一個2維數(shù)組,其中每一列數(shù)據(jù)對應(yīng)于通道列表中的一個通道。 AI Single Scan——返回一個掃描數(shù)據(jù)。它的電壓數(shù)據(jù)輸出是由通道列表中的每個通道讀出的電壓數(shù)據(jù)。使用這個VI僅與AI Config有關(guān)聯(lián),不需要AI Start和AI Read。 AI Clear——清除模入操作、計算機中分配的緩沖、釋放所有數(shù)據(jù)采集卡的

50、資源,例如計數(shù)器。 當(dāng)你設(shè)置一個模入應(yīng)用時,首先使用的VI總是AI Config。AI Config會產(chǎn)生一個taskID和Error cluster(出錯信息簇)。所有別的模入VI接受這個taskID以識別操作的設(shè)備和通道,并且在操作完成后輸出一個taskID。因為taskID是一個輸入并向另一個模入VI輸出,所以該參數(shù)形成了采集 VI之間的一個關(guān)聯(lián)數(shù)據(jù)。 練習(xí)?。叮场? 目的:多通道波形的連續(xù)采集 現(xiàn)在我們使用LabVIEW提供的DAQ向?qū)泶罱ㄟ@個程序,操作步驟如下: 1. 選LabVIEW進(jìn)入畫面選擇 DAQ Solutions

51、 2. 進(jìn)入Welcome to the Solution Wizard 選 l Program the input scaling and conversion myself 3.進(jìn)入Solution Wizard –Step 2 to 3 選 l Custom DAQ Applications 4.進(jìn)入Solution Wizard –Step 3 to 3 選 l Analog Input 5. 進(jìn)入Analog Input Functionality 選 在Step 1中選擇0、1兩個通道 在Step 2中選擇Scan multiple sample from

52、 each channel continuously 點擊OK按鈕 6. 又回到Solution Wizard –Step 3 to 3 ,顯示選中的各種配置,點擊[Open Solution]按 鈕,可以看到形成的程序。 上面的面板和框圖略做了簡化,刪去了有關(guān)錯誤信息處理的一個模塊。在這個程序中有幾個問題值得注意 1. 在AI Config 中設(shè)置interchannel delay 為 –1, 使用間隔掃描方式,避免了通道延遲。 2. 在這個簡化了的框

53、圖上我們可以更加清晰地看出中級模入的處理框圖,大致如下: 圖6-16 連續(xù)采集程序模型 無疑,這個流程更加合理,它把采集的初始化與結(jié)束處理放在了循環(huán)之外。 3. Buffer的設(shè)置和使用:連續(xù)采集時通常需要Buffer。面板上有3個與Buffer有關(guān)的對象。其一是Buffer Size(單位:scan的個數(shù)),這是它的大小,其二是Scans to Read at a time,即每一次從Buffer中讀走的scan的個數(shù),其三是scan backlog,這里顯示在Buffer中積壓的scan個數(shù)。這個數(shù)的大小取決于系統(tǒng)的運行速度。只要這里顯示一個大于Buffer Size的數(shù)

54、,系統(tǒng)將出錯,中斷運行。     這里使用的是一種稱為循環(huán)Buffer機制。其原理如下:在往緩沖區(qū)中放數(shù)據(jù)的  同時可以讀取緩沖區(qū)中已放的數(shù)據(jù),當(dāng)緩沖區(qū)滿時,從緩沖區(qū)開始處重新存放新的數(shù)  據(jù),只要放數(shù)據(jù)和取數(shù)據(jù)的速度配合好,就可以實現(xiàn)用一塊有限的存儲區(qū),來進(jìn)行連 續(xù)的數(shù)據(jù)傳送。使用循環(huán)緩沖區(qū),可以在采集設(shè)備在后臺連續(xù)進(jìn)行采集的同時, LabVIEW在兩次讀取緩沖區(qū)數(shù)據(jù)的時間間隔里對數(shù)據(jù)進(jìn)行處理。循環(huán)緩沖區(qū)存取數(shù)據(jù) 說明如圖6-17所示。 圖6-17 循環(huán)緩沖區(qū)存取數(shù)據(jù)說明 程序讀取數(shù)據(jù)的速度要不慢于采集設(shè)備往緩沖區(qū)中放數(shù)據(jù)的速度,才能保證連續(xù)運行時,緩沖區(qū)中的數(shù)據(jù)

55、不會溢出,不會丟數(shù)據(jù)。如果程序取數(shù)據(jù)的速度快于放數(shù)據(jù)的速度,LabVIEW會等待數(shù)據(jù)放好后再讀取。如果程序讀取數(shù)據(jù)的速度慢于放數(shù)據(jù)的速度,LabVIEW發(fā)送一個錯誤信息,告訴用戶有一些數(shù)據(jù)可能被覆蓋并丟失。可以通過調(diào)整三個參數(shù)來解決這個問題:input buffer size, scan rate和number of scans to read at a time。增大input buffer size可以延長填滿緩沖區(qū)的時間,但是這不能根本上解決連續(xù)采集過程中數(shù)據(jù)被覆蓋的問題,要根本解決這個問題,需要減小scan rate或者增大number of scans to read at a ti

56、me。number of scans to read at a time一般設(shè)置為一個小于緩沖區(qū)大小的值,緩沖區(qū)大小一般設(shè)置為scan rate的兩倍。具體的設(shè)置需要通過測試整個采集程序運行的情況來確定??梢酝ㄟ^查看輸出端的scan backlog的大小判斷緩沖中數(shù)據(jù)會不會被覆蓋,scan backlog被定義為從采集緩存中采集到而不是讀到的掃描個數(shù),是一個衡量系統(tǒng)是否跟得上連續(xù)采集數(shù)據(jù)的一個量度,如果scan backlog的數(shù)值一直在上升則表明從緩存中讀數(shù)據(jù)的速度不夠快并且最終會丟失數(shù)據(jù),如果丟失數(shù)據(jù),AI Read VI將會給出錯誤提示。 練習(xí)?。叮场〗Y(jié)束 6.3 模出(A

57、nalog Output) 6.3.1 基本參數(shù)與術(shù)語 多功能的DAQ卡用數(shù)模轉(zhuǎn)換器(D/A)將數(shù)字信號轉(zhuǎn)換成模擬信號,D/A的有關(guān)參數(shù)有范圍(Range)、分辨率(Resolution)、單調(diào)性(Monotonicity)、線性誤差 (Linearity Error)、建立時間(Settling Time)、轉(zhuǎn)換速率(Slew Rate)、精度(Accuracy)等。下面對部分參數(shù)做一些解釋。 建立時間(Settling Time):是指變化量為滿刻度時,達(dá)到終值1/2LSB時所需的時間。這個參數(shù)反映D/A的D/A轉(zhuǎn)換從一個穩(wěn)態(tài)值到另一個穩(wěn)態(tài)值的過渡過程的長短。建立時間一般為幾十納秒至

58、幾微秒。 轉(zhuǎn)換速率(Slew Rate):是指D/A輸出能達(dá)到的最大變化速率,即電平變化除以轉(zhuǎn)換所用時間,通常指電壓滿范圍內(nèi)的轉(zhuǎn)換速率。 精度(Accuracy):分為絕對精度和相對精度。絕對精度是指輸入某已知數(shù)字量時其理論輸出模擬值和實際所測得的輸出值之差,該誤差一般應(yīng)低于1/2LSB。相對精度是絕對精度相對于額定滿度輸出值的比值,可用偏差多少LSB或者相對滿度的百分比表示。D/A的分辨率越高,數(shù)字電平的個數(shù)就越多,精度越高。D/A范圍增大,精度就會下降。 由建立時間和轉(zhuǎn)換速度可以得到D/A轉(zhuǎn)換輸出信號電平的快慢。一個有著更小的建立時間和更高的轉(zhuǎn)換速率的D/A可以產(chǎn)生更高的輸出信號頻率

59、,因為它達(dá)到新的電平所需的時間更少。 圖6-18 Settling Time 和Slew Rate 6.3.2 簡易模出 (Easy Analog Output) 與簡易模入類似,這里也提供了4個模塊,分別對應(yīng)于單(多)通道輸出波形或電壓數(shù)據(jù)。下面我們通過練習(xí)來討論 練習(xí)?。叮? 目的:產(chǎn)生一個模出電平   做面板及框圖如上。運行該程序,可以看到表的輸出將指示3。這個指示并非模出,為了看到模出,可以使用一塊數(shù)字萬用表直接測量DAC0 OUT。你會發(fā)現(xiàn)萬用表的指示一直維持在3V,盡管程序早已執(zhí)行完了。 練習(xí)?。叮础〗Y(jié)束 練習(xí) 6-5 目的:產(chǎn)生一個模出

60、波形 做面板及框圖如上??驁D中我們首先產(chǎn)生一個正弦波形(其初相位可控),然后將它送給模出,同時連接到一個Graph顯示。運行該程序,可以使用一塊數(shù)字萬用表的直流電壓檔直接測量DAC0 OUT。你會發(fā)現(xiàn)當(dāng)初相位為0時,萬用表的指示是0,當(dāng)初相位為90度時,萬用表的指示是1。這表明該程序輸出的不是一個連續(xù)不斷的波形,僅僅是一個或若干個整周期的波形。模出模塊在結(jié)束操作后并沒有清0復(fù)位,一直維持在最后一刻的電平上。如果希望產(chǎn)生一個連續(xù)不斷的波形,需要使用下面的較復(fù)雜的中級函數(shù)模塊。 練習(xí)?。叮怠〗Y(jié)束  6.3.3 中級模出(Analog Output) AO Co

61、nfig對指定的通道設(shè)置模出操作,包括硬件、計算機內(nèi)buffer的分配。常用的端子有: l Device——采集卡的設(shè)備號。 l Channel——指定模出通道號的串?dāng)?shù)組。 l Limit settings——指定輸出信號的范圍。 l taskID——用于所有后來的模出VI以規(guī)定操作的設(shè)備和通道。 AO Write以電壓數(shù)據(jù)的方式寫數(shù)據(jù)到模出數(shù)據(jù)緩沖區(qū)。它是一個2維數(shù)組,其中每一列數(shù)據(jù)對應(yīng)于通道列表中的一個通道。注意:通常其他函數(shù)為其準(zhǔn)備的波形數(shù)據(jù)是一個1維數(shù)組,且數(shù)據(jù)分布在一行中,這里需要將其“虛擴(kuò)”為二維數(shù)組,并做一次轉(zhuǎn)置。當(dāng)使用Waveform格式時,注意它是一個Wavefor

62、m Data,Waveform轉(zhuǎn)化為Waveform Data中間需要一個build array,見下文的練習(xí)6-6。 AO Start 啟動帶緩沖的模出操作。Update rate(scan/sec)是每秒發(fā)生的更新數(shù)的個數(shù)。如果你將0寫入Number of buffer iteerations端子,則卡將連續(xù)輸出給緩沖,直到運行AO Clear功能。 AO Wait 在返回之前一直等待直到波形發(fā)生任務(wù)完成。它的電壓數(shù)據(jù)輸出是由通道列表中的每個通道讀出的電壓數(shù)據(jù)。使用這個VI僅與AO Config有關(guān)聯(lián),不需要AO Start和AO Read。 AO Clear——清除模出操作、計算機

63、中分配的緩沖、釋放所有數(shù)據(jù)采集卡的資源,例如計數(shù)器。 當(dāng)你設(shè)置一個模出應(yīng)用時,首先使用的VI總是AO Config。AO Config會產(chǎn)生一個taskID和Error cluster(出錯信息簇)。所有別的模出VI接受這個taskID以識別操作的設(shè)備和通道,并且在操作完成后輸出一個taskID。該參數(shù)形成了采集 VI之間的一個關(guān)聯(lián)數(shù)據(jù)。 練習(xí) 6-6 目的:產(chǎn)生一個連續(xù)的正弦信號(1)   做面板及框圖如下。 上面的框圖中需要說明以下幾點: 由于AO Write要求輸入數(shù)據(jù)的要求(見上文),這里正弦波發(fā)生器的輸出是

64、一個waveform,通過Build Array轉(zhuǎn)換為數(shù)組才可連接到AO Write 。 循環(huán)中的AO Write僅為提供出錯信息設(shè)置。   在AO Config中主要是設(shè)置了Buffer,這對于連續(xù)輸出是必須的,其它都選默認(rèn)值。 Buffer的大小有時需要經(jīng)過調(diào)試,過大或過小都可能導(dǎo)致不能正常工作。 如果將Allocate mode改選為6, use FIFO memory模式,則將使用采集卡上的Buffers,同時數(shù)據(jù)由該Buffers,傳輸?shù)接嬎銠C內(nèi)存,將采用DMA方式,較少占用CPU等計算機資源。 不過這時要注意,Baffer size的設(shè)置不能超過采集卡硬件限制,對MIO-16E-1卡,這個值是512。 練習(xí)?。叮丁〗Y(jié)束 練習(xí)?。叮? 目的:產(chǎn)生一個連續(xù)的正弦信號(2)   下面我們使用Analog Output Utilities下提供的連續(xù)模出的現(xiàn)成模塊再做一個連續(xù)的正弦信號發(fā)生器。面板與框圖如下所示:   該例子中開關(guān)是控制AO C-GEN內(nèi)部的AO Clear模塊。當(dāng)其狀態(tài)為T時,運行程序?qū)⑨尫庞嬎銠C及采集卡資源,無信號輸出。 在程序框圖上點擊AO C-GEN圖標(biāo),可以看到其內(nèi)部結(jié)構(gòu)。 練習(xí)?。叮贰〗Y(jié)束 26

展開閱讀全文
溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!