目標演示如何使用MCC數據采集設備和各種軟件平臺捕獲模擬波形。
概述
對于變化很慢的模擬現象,只需對信號進行不頻繁的采樣就足夠了,而且采樣之間的時間增量往往是可以接受的,因為最主要的需要是獲取信號的當前狀態。在這種情況下,對每個AI通道進行相當簡單的“軟件輪詢”可能就足夠了。但是,如果信號相對于經過的時間迅速變化,或者如果用戶對信號的頻率分量感興趣,則需要更快的A/D采樣。事實上,不僅需要更快的采樣,而且在樣本之間有一個統一和良好控制的時間增量是很重要的。
MCC的AI DAQ設備包括機載定時電路,以統一步調從一個或多個AI通道讀數。MCC DAQ設備還集成了星載存儲器,將數據排隊,定期通過接口總線(通常是USB)發送有效大小的數據包。與DAQ硬件一起工作的是MCC軟件驅動程序,它接收數據包,將它們捆綁到內存中的一個更大的緩沖區中,并將數據和狀態提供給更高級的用戶程序。
應用程序開發人員將希望從AI采樣持續時間和數據訪問需求的角度來確定項目的范圍。換句話說,我需要采樣多長時間,在收集過程中是否需要訪問數據,直到結束。最簡單的情況是在相對較短的時間內收集數據,直到所有數據都收集完畢后才進行處理。擴展這種想法,人們可能需要在收集過程中開始處理數據--例如,為操作員提供一個實時顯示。在這種情況下,開發人員希望在添加新數據時訪問數據緩沖區,MCC通過其后臺模式提供了便利。最復雜的情況是收集時間非常長,因為有限的計算機內存需要循環緩沖區。隨著新數據的不斷輸入,應用程序必須能夠執行所需的數學運算、顯示結果,或者將結果記錄到磁盤上,這樣才能有效地跟上進度。盡管本文并不是重點,但MCC的軟件驅動程序以其持續的模式支持這種高級需求。
對于獨立于軟件平臺的非連續掃描,必須指定下列信息:
AI信道號
要收集的樣本數
時鐘速率
輸入范圍
存儲數據的內存緩沖區。
除了A/D數據外,還返回一個錯誤代碼。
下面的示例展示了如何使用UniversalLibrary?、用于android?的UL、NI LabVIEW?、DASYLab和DAQami執行非連續掃描。
通用圖書館
下面的示例演示如何使用通用庫(UL)和VisualBasic執行非連續掃描:
LowChan=0
HighChan=0‘只從0頻道收集
Count=50000‘指定要收集的樣本總數
速率=50000‘指定每個通道的時鐘速率。
Range=MccDaq.Range.Bip10Volts‘指定+/-10V輸入范圍
ULStat=DaqBoard.AInScan(LowChan,HighChan,Count,Rate,Range,MemHandle,Options)
示例數據在提供的句柄處返回給PC內存中的緩沖區,而錯誤代碼作為ULStat的值返回。
接下來,我們將數據從內存緩沖區復制到名為ADData的本地程序數組:
ULStat=MccDaq.MccService.WinBufToArray(memHandle,ADData,FirstPoint,Count)
到目前為止,為了提高效率,數據已被傳輸并以計數格式存儲。我們可以通過以下UL功能轉換為電壓:
ULStat=DaqBoard.ToEngengUnit(范圍,ADData(0),EngUnit)
UL用于Android
下面的示例演示如何使用用于Android和Java的UL執行非連續掃描:
低陳=0;
HighChan=0;//只從0頻道收集
Mode=ChannelModes.INGLE_End;//指定配置模式
范圍=Range.BIP10VOLTS;//指定±10V輸入范圍
樣本PerChan=50000;//指定每個通道的樣本數
速率=50000;//指定每個通道的時鐘速率。
MUnit=Aiit.VOLTS;//指定電壓單元
實際ScanRate=mAiDevice.aInScan(低Chan、高陳、模式、范圍、樣本PerChan、速率、選項、mUnit、mScanData);
通過調用aInScan()函數來收集值。數據在名為mScanData的數組中返回。
Ni LabVIEW
下面的示例演示如何使用LabVIEW執行非連續掃描。下面的接線圖顯示了相關的VIS和設置。這里,硬件設備#0的第一個通道(AiO)被要求以50000 Hz的速率返回50000個樣本,在-10V到+10V的預期范圍內,產生的電壓數據作為測量陣列可用。

NI LabVIEW
DASYLab
非程序員可以考慮使用幾個包中的一個,使采集、顯示和存儲波形數據相當容易。一個流行的軟件包是DASYLab。
下面的工作表示例顯示一個模擬輸入模塊,其輸出連接到Y/t圖表顯示模塊。捕獲的電壓波形顯示在圖表顯示上。

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

達卡米
下面的示例顯示DAQami獲取頁面,其中設置了采樣率和樣本計數。

生成的數據在DAQami顯示頁面上繪制:
