目的
展示如何使用MCC數據采集設備和各種軟件平臺捕獲模擬波形。
目標受眾
數據采集系統開發人員,他們需要隨著時間的流逝將模擬波形數字化,并尋求了解各種軟件環境中的波形捕獲實現。
概述
對于非常緩慢變化的模擬現象,可以相當不頻繁地對信號進行采樣,并且通常可以接受采樣之間的時間變化,因為最主要的需求是獲取信號的當前狀態。在這種情況下,每個AI通道的相當簡單的“軟件輪詢”就足夠了。但是,如果信號相對于經過的時間快速變化,或者如果用戶感興趣信號的頻率分量,則需要更快的A / D采樣。實際上,不僅需要更快的采樣,而且在采樣之間具有均勻且受控良好的時間增量也很重要。
MCC的AI DAQ設備集成了板載定時電路,可統一調整來自一個或多個AI通道的讀數。MCC DAQ設備還集成了板載內存,以使數據排隊,以便通過接口總線(通常為USB)定期發送大小有效的數據包。MCC軟件驅動程序與DAQ硬件一起工作,該驅動程序接收數據包,將它們打包在一起,放入內存中的更大緩沖區中,并使數據和狀態可用于更高級別的用戶程序。
應用程序開發人員將希望從AI采樣持續時間和數據訪問需求的角度來擴展項目范圍。換句話說,我需要采樣多長時間,是否需要在收集期間訪問數據,或者直到結束時才需要訪問。最直接的情況是在相對較短的時間內收集數據,直到收集完所有數據后才處理任何數據。擴展想法,可能需要在收集過程中開始處理數據,例如向操作員提供實時顯示。在這種情況下,開發人員希望在仍要添加新數據的同時訪問數據緩沖區,而MCC借助其“后臺”模式對此提供了便利。最復雜的情況是收集時間非常長,由于計算機內存有限,因此需要循環緩沖區。隨著新數據不斷涌入,應用程序必須能夠執行所需的數學運算,顯示,甚至可能將結果記錄到磁盤上,并且必須足夠有效以跟上進度。盡管不是本文的重點,但MCC的軟件驅動程序通過“連續模式”滿足了這種高級需求。
對于獨立于軟件平臺的非連續掃描,必須指定以下信息:
AI頻道號
收集樣品數
時鐘頻率
輸入范圍
用于存儲數據的內存緩沖區
除A / D數據外,還返回錯誤代碼。
以下示例顯示了如何使用Universal Library?,UL for Android?,NI LabVIEW?,DASYLab?和DAQami執行非連續掃描。
通用庫
以下示例顯示了如何使用通用庫(UL)和Visual Basic執行非連續掃描:
LowChan = 0
HighChan = 0'僅從通道0收集
計數= 50000'指定要收集的樣本總數
Rate = 50000'指定每通道時鐘速率
Range = MccDaq.Range.Bip10Volts'指定+/- 10V輸入范圍
ULStat = DaqBoard.AInScan(LowChan,HighChan,Count,Rate,Range,MemHandle,選項)
樣本數據將通過提供的句柄返回到PC內存中的緩沖區,而錯誤代碼將作為ULStat的值返回。
接下來,我們將數據從內存緩沖區復制到名為ADData的本地程序數組中:
ULStat = MccDaq.MccService.WinBufToArray(MemHandle,ADData,FirstPoint,Count)
到目前為止,出于效率目的,數據已經以counts格式傳輸和存儲。我們可以使用以下UL功能轉換為電壓:
ULStat = DaqBoard.ToEngUnits(范圍,ADData(0),EngUnits)
適用于Android
的UL以下示例顯示了如何使用適用于Android和Java的UL執行非連續掃描:
lowChan = 0;
highChan = 0; //僅從通道0
模式收集= ChannelMode.SINGLE_ENDED; //指定配置模式
范圍= Range.BIP10VOLTS; //指定±10V的輸入范圍
samplesPerChan = 50000; //指定每個通道
速率的采樣數= 50000; //指定每個通道的時鐘速率
mUnit = AiUnit.VOLTS; //指定電壓單位
ActualScanRate = mAiDevice.aInScan(lowChan,highChan,模式,范圍,samplesPerChan,速率,選項,mUnit,mScanData);
通過調用aInScan()函數來收集值。數據在名為mScanData的數組中返回。
NI LabVIEW
以下示例顯示了如何使用LabVIEW執行非連續掃描。下面的接線圖顯示了相關的VI和設置。在此,要求硬件設備#0的第一個通道(AiO)以50000 Hz的速率返回-10 V至+10 V的預期范圍內的50000個采樣。所得電壓數據可用作測量陣列。

NI LabVIEW
DASYLab
非程序員可以考慮使用幾種軟件包之一,這些軟件包使得收集,顯示和存儲波形數據非常容易。一種流行的軟件包是DASYLab。
以下示例工作表顯示了模擬輸入模塊,其輸出連接到Y / t圖表顯示模塊。捕獲的電壓波形顯示在圖表顯示屏上。

DASYLAb
雙擊“模擬輸入”模塊將打開一個對話框,您可以使用該對話框啟用所需的通道,選擇輸入范圍并指定采樣率。
DASYLab

DAQami
以下示例顯示“ DAQami采集”頁面,您可以在其中設置“采樣率”和“采樣數”。

結果數據繪制在DAQami顯示頁面上:
