PCI-1711數據采集卡及其應用

發(fā)布時(shí)間:2010-6-9 16:26    發(fā)布者:vinda
關(guān)鍵詞: PCI-1711 , 數據采集
在數據采集和處理過(guò)程中,有些模擬信號的幅值和頻率變化的速度是非?斓,如何將這些高速變化的模擬信號采集到計算機里進(jìn)行處理便是一個(gè)需要解決的實(shí)際問(wèn)題。由于數字數據傳輸速率等系統瓶頸的影響,使用常規的技術(shù)方法往往不能理想地解決上述實(shí)際問(wèn)題。以PCI總線(xiàn)為代表的高性能局部總線(xiàn)的推出,為計算機的模擬輸入通道采樣頻率的大幅度提高提供了堅實(shí)的技術(shù)基礎。
PCI-1711數據采集卡
   
PCI-1711是12位的低損耗多功能采集卡卡,具有獨特的電路設計和完善的數據采集與控制功能,支持即插即用,具有FIFO的高速緩存,可靈活設定輸入類(lèi)型和范圍,具有16通道單端模/數輸入、16通道數字I/O和2通道數模輸出,采集速率可達100kHz,可編程的計數/計時(shí)器可作為A/D轉換的速度觸發(fā),同時(shí)具有通道自動(dòng)搜索功能。內部結構主要有單端模擬輸入通道、模擬輸出通道和觸發(fā)源連接三部分。
庫函數及其應用
   
廠(chǎng)家為用戶(hù)提供了PCI-1711采集卡的庫函數和不同語(yǔ)言的例程,使用戶(hù)具有良好的Windows開(kāi)發(fā)環(huán)境。廠(chǎng)家主要為可編程的DAS卡提供DDL、ActiveDAQ和GeniDAQ等驅動(dòng)文件,同時(shí)還提供了在Visual Basic、Visual C++、C++ Builder和Delphi等開(kāi)發(fā)環(huán)境下的例程,這些都方便了用戶(hù)根據自己的實(shí)際情況完成數據采集的編程工作。在Visual C++開(kāi)發(fā)環(huán)境下,其原文件要包含庫函數“driver.h”。
   
結合Visual C++ 軟件開(kāi)發(fā)環(huán)境,PCI-1711采集卡的軟件編程需要以下幾個(gè)步驟。
   
(1)采集卡的注冊?梢苑旁.cpp文件的開(kāi)始位置,或者直接包含注冊的庫函數。
   
(2)采集卡的配置。在配置文件里,可以設置通道號和通道增益模式。
   
(3)采集卡的數據采集。這里要根據設置的通道號和采集模式來(lái)采集數據,同時(shí)選擇觸發(fā)模式和電壓補償。觸發(fā)模式中,0為內觸發(fā)模式,1為外觸發(fā)模式。
   
(4)數據處理。用戶(hù)可根據自己的需要將采集來(lái)的電壓值進(jìn)行處理,同時(shí)可在Visual C++的環(huán)境下,將采集處理后的數據通過(guò)友好的人機界面顯示出來(lái)。
   
(5)釋放采集卡。在Visual C++開(kāi)發(fā)環(huán)境下,可用庫函數提供的DRV_DeviceClose()函數將采集卡關(guān)閉。
應用中的注意事項
   
PCI-1711采集卡的信號線(xiàn)要盡可能遠離電源線(xiàn)、發(fā)電機和具有電磁干擾的場(chǎng)所,也要遠離視頻監視系統,因為它會(huì )對數據采集系統產(chǎn)生很大的影響。在現場(chǎng)試驗中,如果信號線(xiàn)和電源線(xiàn)必須并行(比如在同一個(gè)電纜溝里),則兩者之間必須保持適當的安全距離,同時(shí)最好用屏蔽電纜,以確保信號安全準確地傳輸。
   
采集卡的每個(gè)通道的模擬量采集都有一個(gè)輸入電壓范圍,超過(guò)了這一范圍會(huì )造成采集卡A/D轉換部分的燒毀,所以在采集模擬信號時(shí),要保證被采集的信號在設定的量程范圍內。
應用實(shí)例
   
下面是在Visual C++的環(huán)境下實(shí)現PCI-1711數據采集的一段程序。采樣頻率可以通過(guò)SetTimer()函數設定,采用內部觸發(fā)方式。采集卡使用的五個(gè)步驟中,第一步在OnCtrStart()函數中實(shí)現,第五步在OnCtrStop(),第二步和第三步在A(yíng)dinput()函數中實(shí)現,第四步為數據處理,根據用戶(hù)不同的需要進(jìn)行相應的處理,這里從略。
   
void CStable2View::OnCtrStart()
{
// TODO: 添加命令句柄代碼
// Step 1:注冊設備
if(ErrCde =DRV_DeviceOpen(DeviceList[gwDevice].dwDeviceNum,
(LONG far *)&DriverHandle)!=0)
return ;
else
timeId=SetTimer(nIDE, 100, NULL);
}
ADinput(unsigned char chan) /* chan是通道號*/
{
float fVoltage;
//Step 2:配置設備
ptAIConfig.DasChan = chan;
ptAIConfig.DasGain = 1;
if(ErrCde = DRV_AIConfig(DriverHandle,(LPT_AIConfig)&ptAIConfig)!=0)
return 0;
// Step 3:采集數據
ptAIVoltageIn.chan = chan; // 輸入通道
ptAIVoltageIn.gain = 1; // 增益代碼,可參考手冊的電壓范圍
ptAIVoltageIn.TrigMode = 0; // 0: 內觸發(fā)器,1: 外觸發(fā)器
ptAIVoltageIn.voltage = &fVoltage; // 返回的電壓
if(ErrCde = DRV_AIVoltageIn(DriverHandle, &ptAIVoltageIn)!=0)
return 0;
return (fVoltage);
}
//step 4:處理數據(發(fā)送)
void CStable2View::OnCtrStop()
{
// TODO:添加命令句柄代碼
timeId=0;
KillTimer(timeId);
// Step 5:釋放設備
DRV_DeviceClose(&DriverHandle);
}

結語(yǔ)
     
PCI-1711是一種非常經(jīng)濟實(shí)用的數據采集卡,可以應用在很多領(lǐng)域。在現場(chǎng)試驗中,用PCI-1711采集卡采集重力加速度計和陀螺輸出的電壓信號,經(jīng)過(guò)采集卡的A/D采集,并對數據進(jìn)行處理,將所得數據通過(guò)一個(gè)良好的人機界面顯示出來(lái)。
本文地址:http://selenalain.com/thread-12496-1-1.html     【打印本頁(yè)】

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

相關(guān)視頻

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