基于PCI總線的數據采集卡的設計與實現
2 數據采集過程的實現
2.1 動態鏈接庫的設計
LabVIEW軟件本身提供了對端口的操作函數,可以對外設的端口進行讀寫,而其他對外設的實時控制則需要通過DLL技術來實現。
在本系統中,自行應用硬件芯片設計了數據采集卡,要實現系統中的各個硬件與計算機之間的通信,必須設計相應的動態鏈接庫。DLL庫的設計在這里主要包括:設備初始化;確定設備名;創建設備句柄;獲取通道信息;等待客戶軟件信息。
2.2 數據采集過程
先對數據采集卡有關的采樣參數設置;采樣開始,多路開關對采樣通道進行一次掃描,每個通道采樣一個點;接著開始A/D轉換,轉換后的數字信號存到數據緩存區中。重復上述過程直到采集到了所需的采樣次數,全部數據順序存儲到緩存區中,需要時從數據采集卡的緩存中讀取數據到計算機的內存中進行處理。采集流程如圖5所示。本文引用地址:http://www.104case.com/article/192773.htm
2.3 LabviEW中的動態鏈接庫調用
在LabVIEW的編程狀態下,打開Function Palette工具箱中“調用動態鏈接庫功能”,將數據采集卡驅動程序轉化為一個圖標/連接器,然后在框圖程序中就可以調用該模塊,通過在其輸入端設置相應的參數,在程序運行時,驅動模塊啟動數據采集卡的工作,并將采集數據返回。圖6為動態鏈接庫調用的一個例子。
圖6中CLF節點I/O數據類型決定于外輸入,采集通道數輸入控件“channel”、采集次數輸入控件“times”均為32位無符號長整形,對0~5V電壓經采集后的輸出為雙精度浮點型離散的數值,先送入緩存器中存儲待用。
4 結論
本文采用硬件芯片設計的數據采集系統,在本地總線的晶振頻率為20MHz時,能穩定地達到160Mb/s的采集速率;晶振頻率為40MHz時,能穩定的達到200Mb/s的采集速率。
將虛擬儀器技術與各種物理信號的采集、分析及結果顯示結合起來為新型儀器的開發提供了一個很好的方向。將先進的儀器開發軟件LabVIEW與普通數據采集系統很好地結合起來又將使虛擬儀器技術在各個領域得到更廣泛的應用。
評論