借助智能DAQ, 獲得高級數據采集技術(shù)
模擬波形的生成
本文引用地址:http://dyxdggzs.com/article/107898.htm不少多功能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è)周期性波形的頻率。 請注意:大多數數據采集硬件均不具備此項功能。
評論