借助智能DAQ獲得高級數據采集技術(shù)

發(fā)布時(shí)間:2010-4-13 13:43    發(fā)布者:嵌入式公社
關(guān)鍵詞: DAQ , 高級 , 技術(shù) , 數據采集 , 智能
概覽

多功能智能DAQ設備配有自定義式板載處理功能,最大限度地為系統定時(shí)及觸發(fā)提供靈活性能。 與控制設備功能的固定ASIC不同,智能DAQ采用基于FPGA的系統定時(shí)控制器,令所有模擬和數字I/O能夠根據特定應用操作接受相應的配置。 本指南展示了:如何使用R系列智能DAQ板卡和NI LabVIEW FPGA,靈活自如地執行數據采集任務(wù)

入門(mén)

NI LabVIEW FPGA模塊幫助DAQ系統的開(kāi)發(fā)者靈活自如地進(jìn)行應用程序編程以實(shí)現各類(lèi)輸入/輸出操作。 用戶(hù)無(wú)需預先了解VHDL等硬件設計工具,便可將LabVIEW代碼嵌入FPGA芯片并獲得硬件定時(shí)的速度和可靠性。

讓我們先從數據采集硬件的常用組件切入論題。 假設您擁有了模數轉換器(ADC)、數模轉換器(DAC)和數字輸入/輸出線(xiàn),則所有I/O便要根據實(shí)際操作接受某種方式的定時(shí)和控制。 典型的多功能數據采集設備采用功能齊全的ASIC,滿(mǎn)足了大多數的功能性需求。

比如:M系列DAQ設備通過(guò)DAQ-STC2,控制著(zhù)各類(lèi)硬件組件的定時(shí)和觸發(fā)。 智能DAQ硬件(如:R系列DAQ設備)區別于市面上的其他任何數據采集設備,因為在控制設備功能方面智能DAQ用基于FPGA的系統定時(shí)控制器取代了傳 統ASIC,從而使得所有模擬和數字I/O都能根據特定應用操作接受相應的配置。 可重配置FPGA芯片通過(guò)NI LabVIEW FPGA模塊進(jìn)行編程,此時(shí)NI LabVIEW的數據流模式仍舊適用,不過(guò)采用了一組新函數控制最底層的設備I/O。

LabVIEW FPGA I/O節點(diǎn)并不通過(guò)NI-DAQmx函數負責實(shí)現常見(jiàn)的任務(wù)和功能,而是靈活自如地在各個(gè)通道最底層上運行。 通過(guò)以下各部分的內容,我們將了解NI-DAQmx的特定實(shí)例,并學(xué)習如何通過(guò)智能DAQ定制各類(lèi)數據采集任務(wù)。

定時(shí)和觸發(fā)

實(shí)現高級數據采集的智能DAQ主要用于定制定時(shí)和觸發(fā)。 下方的范例程序框圖展現了:NI-DAQmx幫助實(shí)現的觸發(fā)式模擬輸入任務(wù)。


圖1. 通過(guò)NI-DAQmx實(shí)現的觸發(fā)式模擬輸入

如圖1所示,智能DAQ并未使用不同函數配置通道,而是通過(guò)名為I/O節點(diǎn)的函數讀寫(xiě)各路模擬和數字通道。 讓我們看看使用NI LabVIEW FPGA中I/O節點(diǎn)所獲得的相同功能。


圖2. 通過(guò)智能DAQ和NI LabVIEW FPGA實(shí)現的觸發(fā)式模擬輸入

上圖既沒(méi)有針對全局通道、采樣時(shí)鐘、觸發(fā)的配置函數,也沒(méi)有開(kāi)始、停止和清除等任務(wù)。 所有內容都被1個(gè)簡(jiǎn)單的模擬I/O讀取所取代;全部定時(shí)都為本地LabVIEW結構(如:While循環(huán)和條件結構)所控制。由于整個(gè)程序框圖均在 FPGA硬件內執行,LabVIEW代碼的運行便體現出硬件定時(shí)的速度和可靠性。

讓我們更深入地了解一下該程序框圖的運行方式。 模擬I/O節點(diǎn)并不指定某個(gè)采樣速率,而使用For循環(huán)采集各個(gè)樣本。 與之對應的ADC在I/O節點(diǎn)被調用時(shí),負責對輸入信號進(jìn)行實(shí)際數字化,因而通過(guò)For循環(huán)接受定時(shí)。 若想在100 kHz的頻率下進(jìn)行信號采樣,針對循環(huán)的延遲就必須設定為10 µs。 循環(huán)的定時(shí)器函數從第2輪循環(huán)迭代開(kāi)始便確保著(zhù)特定的時(shí)間延遲,用戶(hù)因而能夠通過(guò)順序結構保證樣本之間存在著(zhù)指定的時(shí)間間隔。 NI LabVIEW FPGA中功能強大的條件結構,實(shí)際代表了用于封裝各類(lèi)代碼的硬件觸發(fā)。 由于所有的函數和結構都通過(guò)邏輯單元在硬件內運行,所以條件結構確保開(kāi)始具有實(shí)時(shí)10 µs時(shí)間精度的采樣。 最后需指出的是,由于操作位于硬件層,只涉及幾個(gè)層次的抽象處理,因此用戶(hù)無(wú)需清除任務(wù)ID或釋放內存。

就基于FPGA的智能DAQ硬件而言,其真正的優(yōu)勢是能夠定制各類(lèi)定時(shí)和觸發(fā),并在硬件中進(jìn)行信號處理和決策。 現在讓我們了解一下:針對某類(lèi)自定義應用,需對模擬輸入觸發(fā)做出哪些修改。 若我們希望在2路模擬輸入通道的某路電壓超過(guò)指定范圍時(shí)便觸發(fā)采集,又該如何修改呢? 借助NI LabVIEW FPGA,此類(lèi)任務(wù)的執行易如反掌。


圖 3. 通過(guò)智能DAQ和NI LabVIEW FPGA實(shí)現的自定義觸發(fā)式模擬輸入

這里,我們已經(jīng)為程序框圖添加了第2個(gè)I/O節點(diǎn)和第2個(gè)比較函數,以及1個(gè)布爾“或”函數。 智能DAQ硬件為所有的模擬輸入通道提供專(zhuān)用ADC,因而2路通道能夠接受同步采樣;同時(shí),只要任何1路通道的電壓超過(guò)了指定范圍,條件結構便會(huì )執行 “真”條件,并開(kāi)始以10 µs時(shí)間精度進(jìn)行采樣。 請記。喝鄙僦悄蹹AQ便不可能生成類(lèi)似的觸發(fā);在其他DAQ硬件上應用時(shí),觸發(fā)需要具有更高延遲的軟件定時(shí)來(lái)實(shí)現。 如果此后我們希望通過(guò)擴展將監控范圍從2路通道延伸至全部8路通道,甚至希望添加數字觸發(fā),就需要簡(jiǎn)化自定義代碼。 添加預觸發(fā)掃描后,用戶(hù)便可對輸入通道不斷進(jìn)行采樣并將數據傳送至FIFO緩沖器。 觸發(fā)器一旦接受讀取,FIFO緩沖器和此后的采樣便可經(jīng)由DMA通道,被傳送至主機。

如果我們希望借助NI-DAQmx驅動(dòng),對第2模擬輸入通道進(jìn)行采樣,則該程序框圖與圖1所示的內容相差無(wú)幾。然而限制依然存在,因為2路通道均被迫引用 相同的觸發(fā)器并以相同的時(shí)鐘頻率進(jìn)行采樣。 現在我們來(lái)看看:智能DAQ和NI LabVIEW FPGA幫助實(shí)現的各類(lèi)多通道采樣。


圖4. 通過(guò)智能DAQ實(shí)現的觸發(fā)式同步模擬輸入

圖4(上圖)展現了:如何基于模擬輸入通道0中的模擬觸發(fā)器,對2路不同的模擬輸入通道進(jìn)行同步采樣。由于智能DAQ設備均配有獨立的ADC,在同一 I/O節點(diǎn)中的2路通道可在完全相同的時(shí)刻接受采樣。 典型的多功能DAQ設備可通過(guò)一個(gè)ADC多路復用所有通道,因此,各路通道必須共享相同的采樣時(shí)鐘和觸發(fā)線(xiàn)。 圖5(下圖)展現了:智能DAQ硬件其實(shí)能夠以獨立的速率,對不同的模擬輸入通道進(jìn)行采樣。 在獨立回路中放置模擬輸入I/O節點(diǎn)后,每路通道會(huì )以完全不同的速率進(jìn)行采樣,然后各自通過(guò)2條DMA通道讀寫(xiě)硬盤(pán)。


圖5. 通過(guò)智能DAQ實(shí)現的觸發(fā)式多速率模擬輸入

最后需指出的是,我們若是希望2路通道具有相互獨立的采樣率和開(kāi)始觸發(fā),則可參照圖6,將所有I/O節點(diǎn)都部署在并行循環(huán)結構中。該方式充分利用了FPGA的并行性,確保了各項任務(wù)能夠使用專(zhuān)用資源并在執行時(shí)完全獨立于其他采集任務(wù)。


圖6. 通過(guò)智能DAQ實(shí)現的獨立觸發(fā)式多速率模擬輸入

同步

DAQmx驅動(dòng)程序提供多種同步選擇,幫助建立輸入和輸出的時(shí)間相關(guān)性。 在下方的程序框圖中,模擬輸入通道和模擬輸出通道借助數字觸發(fā)實(shí)現同步;過(guò)程中,需對模擬輸入指定數字觸發(fā),并使用模擬輸入的觸發(fā)器信號觸發(fā)產(chǎn)生模擬輸出。


圖7. 通過(guò)NI-DAQmx實(shí)現的同步模擬輸入和輸出

用戶(hù)可通過(guò)智能DAQ硬件輕而易舉地執行同步任務(wù),而無(wú)需借助任務(wù)ID和板載信號路由。 本處即顯示了NI LabVIEW FPGA中的內容。


圖8. 通過(guò)智能DAQ實(shí)現的同步模擬輸入和輸出

此處,我們再次通過(guò)條件結構在FPGA芯片上執行硬件觸發(fā),而數字通道0上的上升沿則啟用了真條件中的代碼。 在順序結構中,模擬輸入與輸出的節點(diǎn)在同時(shí)接受調用的過(guò)程中,幾乎沒(méi)有任何抖動(dòng);而我們只要簡(jiǎn)單地在各個(gè)獨立的While循環(huán)內嵌入模擬I/O節點(diǎn),即可 令其擁有獨立的采樣速率。 另外值得注意的是: 程序框圖中顯示的正弦發(fā)生器函數是1個(gè)Express VI,可幫助用戶(hù)在查找表(LUT)中交互式地配置正弦值。

圖8中的智能DAQ程序框圖與圖7中的DAQmx VI皆具有相同的功能,而唯有智能DAQ才能為自定義任務(wù)提供相應的靈活性。 舉例為證:如需添加1個(gè)暫停觸發(fā),我們只消在內部While循環(huán)中添加1個(gè)條件結構,并通過(guò)另一個(gè)數字I/O節點(diǎn)選擇真條件或假條件,即可輕松完成任務(wù)。 對硬件進(jìn)行編程的強大功能,實(shí)現了各類(lèi)I/O的定時(shí)與同步。

多功能同步的另一例證體現為:通過(guò)板載計數器產(chǎn)生有限脈沖并將計數器輸出用作模擬輸入的采樣時(shí)鐘。 該過(guò)程是進(jìn)行可重觸發(fā)式有限采樣的常用手段。 下圖顯示了開(kāi)展此類(lèi)采集所必需的DAQmx代碼。


圖9. 通過(guò)NI-DAQmx實(shí)現的可重觸發(fā)式有限模擬輸入

現在,讓我們對下圖內容和呈現相同功能的NI LabVIEW FPGA程序框圖,加以比較。


圖10. 通過(guò)智能DAQ和NI LabVIEW FPGA實(shí)現的可重觸發(fā)式有限模擬輸入

由于NI LabVIEW代碼在硬件層運行,圖10中的驅動(dòng)配置步驟顯然得到了極大精減。 我們已經(jīng)借助簡(jiǎn)單的數字輸入線(xiàn)和For循環(huán)結構,創(chuàng )建了硬件可重觸發(fā)式有限采集。 圖9中的程序框圖使用2個(gè)板載計數器,創(chuàng )建出可重觸發(fā)的有限脈沖序列;典型的多功能DAQ設備只有2個(gè)計數器。 而借助NI LabVIEW FPGA,智能DAQ硬件卻能夠將任意一條數字線(xiàn)配置成計數器。 我們將在之后的段落里,涉及更多“通過(guò)智能DAQ運行計數器/定時(shí)器”的內容。

我們能夠借助由頻率觸發(fā)的采集,進(jìn)一步地推進(jìn)智能DAQ在硬件定時(shí)方面的靈活性特性。 用戶(hù)可通過(guò)高速板載決策計算輸入信號的頻率,而后選擇條件結構中所需的代碼;這一點(diǎn)是使用典型多功能DAQ設備所無(wú)法企及的。 在多設備的同步進(jìn)程中,智能DAQ還可提供用于PCI板卡的RTSI總線(xiàn)或是用于PXI模塊的PXI觸發(fā)總線(xiàn)。 這些外部定時(shí)和同步線(xiàn)還可通過(guò)程序框圖上的I/O節點(diǎn)接受訪(fǎng)問(wèn)。

模擬波形的生成

不少多功能DAQ設備都配有模擬輸出通道,能夠為了生成連續的模擬波形而需要用到FIFO緩沖。 生成的波形可將FIFO用作循環(huán)緩沖區,且無(wú)需從主機處接受任何更新數據,即可連續不斷地重新生成一系列的模擬值。 通信總線(xiàn)的有無(wú)對此影響不大,因為并沒(méi)有針對設備的頻繁數據讀寫(xiě)。 而如果波形需要修改,就必須重新啟動(dòng)輸出任務(wù)并向FIFO寫(xiě)入新數據。 另一個(gè)辦法是向硬件FIFO設備連續讀寫(xiě)數據,而這又會(huì )導致輸出任務(wù)出現時(shí)滯。 借助智能DAQ,用戶(hù)能夠將波形輸出結果存儲于硬件,甚至能夠通過(guò)硬件觸發(fā)改變波形,進(jìn)而創(chuàng )建任意波形發(fā)生器。

下方的函數發(fā)生器范例通過(guò)數字輸入線(xiàn),觸發(fā)了輸出波形中的改動(dòng)。 通過(guò)組合數字I/O線(xiàn)0與1,我們取得了應用于模擬輸出的4種不同狀態(tài)或稱(chēng)條件。


圖11a. 配有智能DAQ條件0的函數發(fā)生器 – 零輸出


圖11b. 配有智能DAQ條件1的函數發(fā)生器 – 正弦波

當兩線(xiàn)皆呈現低電平時(shí),執行條件0;如圖11a所示,輸出值為0 V常量。而當DIO線(xiàn)0呈現高電平而DIO線(xiàn)1呈現低電平時(shí),條件1將在模擬輸出0上執行并生成一個(gè)正弦波。用戶(hù)可通過(guò)該正弦生成結構(圖11b)中的正 弦發(fā)生器Express VI,配置NI LabVIEW FPGA必需的參數,交互地配置正弦波。


圖11c. 配有智能DAQ條件2的函數發(fā)生器 – 方波

條件2(圖11c)能夠在While循環(huán)的每輪迭代中,輕松切換布爾值。 數值較低時(shí),整數15000便被寫(xiě)入模擬輸出AO0,以對應16位DAC內由輸出寄存器存放的數值:15000。 16位有符號整數可以包含-32768到32767之間的數值。當輸出電壓范圍介于-10 V和10 V時(shí),向模擬輸出AO0寫(xiě)入-32768會(huì )生成-10 V電壓,而寫(xiě)入32767則生成10 V電壓。該例中,因我們的寫(xiě)入值為15000,則生成的電壓將低于5 V。(數學(xué)公式為: 15000/32767 * 10 V = 4.5778 V) 通常,條件2會(huì )輸出一個(gè)在0 V和4.578 V之間變換的方波。


圖11d. 配有智能DAQ條件3的函數發(fā)生器 – 鋸齒波

當DIO 0和DIO 1均呈現高電平時(shí),便執行最后一個(gè)條件(圖11d);其間,須借助查找表(LUT)連續生成一個(gè)鋸齒波。 作為另一類(lèi)Express VI的查表VI,既能存儲任意波形值,也能通過(guò)編程建立波形值的索引。 該例中,接受配置的鋸齒波可在模擬輸出通道0上生成。

通過(guò)將所有的值都存儲在FPGA上,用戶(hù)在降低總線(xiàn)依賴(lài)性的同時(shí),也確保了波形更新時(shí)硬件定時(shí)的速度和可靠性。 之前各部分中所描述的模擬輸入的觸發(fā)和同步靈活性同樣適用于模擬輸出;借助智能DAQ,用戶(hù)能夠以不同速率,完全獨立地更新各路模擬輸出通道。 這意味著(zhù):用戶(hù)可在不影響其他通道輸出結果的前提下,修改單個(gè)周期性波形的頻率。 請注意:大多數數據采集硬件均不具備此項功能。

計數器/定時(shí)器的操作

如前所述,典型的多功能DAQ設備只有2個(gè)板載計數器,而智能DAQ則能在各條數字線(xiàn)上運行計數器功能。 數字I/O節點(diǎn)能夠在NI LabVIEW FPGA中利用名為單周期定時(shí)循環(huán)的專(zhuān)業(yè)結構,幫助用戶(hù)在2.5 MHz至200 MHz的特定頻率范圍內執行代碼。 例如,借助40 MHz的時(shí)鐘,用戶(hù)可使用單周期定時(shí)循環(huán),在各條數字線(xiàn)上創(chuàng )建40 MHz計數器。 圖12(下圖)展現了程序框圖的樣式。


圖12. 配有智能DAQ的簡(jiǎn)單事件計數器

由于計算值基于U32(32位整數)的數據類(lèi)型被發(fā)送至顯示控件,該代碼便在FPGA芯片上生成了1個(gè)40 MHz的32位計數器。 用戶(hù)可對其進(jìn)行數次復制與粘貼,令不同數字線(xiàn)上的多個(gè)計數器都能夠彼此完全并行地運行。 通過(guò)對智能DAQ中參數的設置可以實(shí)現定時(shí)器操作的自定義。 通過(guò)選擇,用戶(hù)能夠每隔2個(gè)上升沿便進(jìn)行1次計數器遞增,甚至能基于計數寄存器的值觸發(fā)模擬采集。 許多復雜的計數器操作(如:有限脈沖序列生成和級聯(lián)式事件計數)均需要使用2個(gè)計數器,這意味著(zhù)使用典型多功能設備中的所有板載計數器。 在總共160條數字線(xiàn)的幫助下,智能DAQ硬件上定時(shí)器的最大數量很少受到I/O可用性的影響,而往往取決于FPGA芯片的大小。 由于NI LabVIEW代碼運行于硅芯片中,因而用戶(hù)無(wú)需“裝備”或“重新裝備”通用計數器,即能全面控制計數器的運行。

圖13(下圖)中的范例使用計數器,生成了一個(gè)連續脈沖序列并將暫停觸發(fā)器置于NI-DAQmx中。


圖13. 連續脈沖序列的生成和配有NI-DAQmx的暫停觸發(fā)器

在NI LabVIEW FPGA中,暫停觸發(fā)器無(wú)需接受配置,因為只需簡(jiǎn)單的條件結構便能在硅芯片中實(shí)現相同的功能。 此處是通過(guò)智能DAQ運行時(shí)所展現的相同功能(圖14)。


圖14. 連續脈沖序列的生成和配有智能DAQ的暫停觸發(fā)器

在這種情況下,數字I/O線(xiàn)DIO0用作暫停觸發(fā),而脈沖將在數字I/O線(xiàn)DIO1上生成并輸出。使用單周期定時(shí)循環(huán)可令各個(gè)脈沖獲得25 ns的分辨率,因為這將成為單個(gè)計時(shí)在使用40 MHz定時(shí)源時(shí)的值。

數字I/O應用

智能DAQ硬件提供多達160條硬件定時(shí)數字線(xiàn),令諸多數字應用成為可能。 我們已經(jīng)學(xué)習了如何使用數字I/O實(shí)現觸發(fā)、同步及計數器/定時(shí)器的運行,而智能DAQ還可用于誤碼率測試、數字模式匹配、脈沖寬度調制、正交編碼器和數 字通信協(xié)議。 自定義或標準形式的串行接口均能直接通過(guò)數字定時(shí)框圖編程來(lái)實(shí)現。 舉例說(shuō)明,SPI便是一款與硬件組件(如:微控制器或ADC)進(jìn)行通信時(shí)最常用的串口協(xié)議。 圖15(下圖)展現了在進(jìn)行16位SPI通信時(shí),3條必要數字線(xiàn)所對應的定時(shí)框圖。


圖15. SPI通信輸入定時(shí)框圖

如定時(shí)框圖所示,所有16位數據均在每個(gè)時(shí)鐘周期上順次傳遞,而片選控制線(xiàn)(chip select line)則呈現低電平。 現在,我們來(lái)看看在NI LabVIEW FPGA中,如何通過(guò)智能DAQ硬件上的3條數字線(xiàn)進(jìn)行此類(lèi)編程。


圖16. 16位SPI通信程序框圖

圖16中,外部While循環(huán)確保了所有代碼均能連續執行,而寫(xiě)入布爾輸入控件則通過(guò)條件結構啟動(dòng)著(zhù)數據傳遞。 順序結構中的第一框架將片選控制線(xiàn)(chip select line)設置為低電平,之后由中間框架寫(xiě)入數據位并將時(shí)鐘線(xiàn)切換16次。 最終,第三順序框將片選控制線(xiàn)(chip select line)設置回TRUE狀態(tài),并將數據線(xiàn)重置為默認的FALSE狀態(tài)。 這一簡(jiǎn)單范例只是借助智能DAQ進(jìn)行數字通信時(shí)的一項內容。 用戶(hù)若想應用數字握手,便需為ACK(備用)和REQ(暫停)線(xiàn)準備2路通道,其中一路通道面向并行運作的時(shí)鐘信號和數據線(xiàn)。

數字線(xiàn)會(huì )時(shí)常抖動(dòng),在使用機電接觸時(shí)更是如此,然而用戶(hù)可通過(guò)NI LabVIEW FPGA,選擇不同方式,在數字輸入線(xiàn)上添加去抖動(dòng)濾波器。 在消除狀態(tài)的錯誤改動(dòng)時(shí),數字去抖動(dòng)濾波器確保數值的變化能夠保持一段最短的時(shí)間,因而規避了因抖動(dòng)引發(fā)的錯誤讀取。 圖17展現了如何通過(guò)智能DAQ實(shí)現此項功能的內容。


圖17. 智能DAQ硬件上的數字濾波器程序框圖

數據傳輸方式

配備N(xiāo)I-DAQmx驅動(dòng)程序的傳統多功能DAQ和智能DAQ之間的最大差異在于:數據傳輸的執行方式。 NI-DAQmx驅動(dòng)程序將承擔由設備至主機的各項傳輸任務(wù),此項操作中NI LabVIWE FPGA會(huì )對基于FPGA的所有板載硬件進(jìn)行編程。 用戶(hù)可通過(guò)多種途徑緩沖設備上的板載數據,并使用不同方式(如:DMA通道或中斷請求)傳輸數據。

NI LabVIEW FPGA中的FIFO緩沖區在LabVIEW項目瀏覽器中接受配置,并能借助板載內存或硬件邏輯獲得運行。 圖18顯示了如何經(jīng)由項目瀏覽器,在板載塊存儲器中配置整數的FIFO緩沖區。


圖18. NI LabVIEW FPGA中的FIFO配置

FIFO一經(jīng)創(chuàng )建,便能用于NI LabVIEW FPGA程序框圖上多個(gè)循環(huán)之間的數據傳遞。 圖19中的范例顯示:數據先被寫(xiě)入左側循環(huán)中的FIFO,并隨即從右側循環(huán)中的FIFO被讀出。


圖19. 通過(guò)FIFO和多循環(huán)實(shí)現的NI LabVIEW FPGA程序框圖

同樣通過(guò)LabVIEW FPGA FIFO獲得應用的直接存儲器訪(fǎng)問(wèn)(DMA)通道,在項目瀏覽器中接受了類(lèi)似的配置。


圖20. NI LabVIEW FPGA中的DMA FIFO配置


圖21. 通過(guò)DMA FIFO和位組裝實(shí)現的NI LabVIEW FPGA程序框圖

所有的DMA FIFO數據傳輸寬度均為32位;因此,當其傳遞源自16位模擬輸入通道的數據時(shí),往往能夠合并2路通道或2個(gè)樣本上的數據再進(jìn)行傳輸,從而提高帶寬使用 率。 這即是圖21所展現的位組裝。當數據被直接傳遞到主控計算機的內存后,便可通過(guò)在Windows環(huán)境下運行的NI LabVIEW主接口函數接受讀。▓D22)。


圖22. 通過(guò)DMA FIFO讀取和位拆裝實(shí)現的主接口代碼

如圖22所示,主接口程序框圖引用FPGA終端VI,然后使用While循環(huán)連續讀取DMA FIFO。 32位的數據被分解為2路16位通道,在波形圖表上接受采樣和繪制。 主接口VI還能對FPGA VI前面板上的各類(lèi)顯示控件和輸入控件進(jìn)行讀寫(xiě)操作;在這種情況下,“停止按鈕”輸入控件也被寫(xiě)入。

結論

盡管DAQ-STC2等固定ASIC能夠滿(mǎn)足數據采集的大多數需求,然而,唯有借助智能DAQ中基于可重新配置FPGA的I/O定時(shí)和控制,方能實(shí) 現高度靈活性和完全定制。 借助NI LabVIEW FPGA,觸發(fā)和同步任務(wù)獲得了簡(jiǎn)化,因為通過(guò)繪制圖形化程序框圖即可充分滿(mǎn)足用戶(hù)需求;借助獨立的模擬和數字I/O線(xiàn),智能DAQ可利用FPGA提供的 實(shí)際并行。 R系列智能DAQ設備已經(jīng)針對多速率采樣、自定義計數器操作和頻率高達40 MHz的板載決策,為多功能數據采集進(jìn)行了各項可能的修繕。

NI公司供稿
本文地址:http://selenalain.com/thread-10395-1-1.html     【打印本頁(yè)】

本站部分文章為轉載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀(guān)點(diǎn)和對其真實(shí)性負責;文章版權歸原作者及原出處所有,如涉及作品內容、版權和其它問(wèn)題,我們將根據著(zhù)作權人的要求,第一時(shí)間更正或刪除。
wuwenshuai 發(fā)表于 2021-3-16 20:51:51
對學(xué)習DAQ很有幫助.
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復 返回頂部 返回列表
午夜高清国产拍精品福利|亚洲色精品88色婷婷七月丁香|91久久精品无码一区|99久久国语露脸精品|动漫卡通亚洲综合专区48页