新聞中心

EEPW首頁 > 測試測量 > 設(shè)計(jì)應(yīng)用 > 滾動軸承強(qiáng)化壽命試驗(yàn)的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

滾動軸承強(qiáng)化壽命試驗(yàn)的數(shù)據(jù)采集系統(tǒng)設(shè)計(jì)

作者: 時間:2011-05-24 來源:網(wǎng)絡(luò) 收藏

1.2
由于采集系統(tǒng)要求實(shí)時快速多通道,且的失效是個慢變化的信號,所以要求A/D轉(zhuǎn)換的分辨率高,以提高檢測數(shù)據(jù)的精度。鑒于以上要求,本系統(tǒng)選用北京雙諾測控公司生產(chǎn)的卡AC6622,AC6622其是一款基于PCI總線中速采集卡,支持全速實(shí)時不間斷采集。主要性能參數(shù)如下:
(1)16路單端輸入。輸入電壓:5/10 V、±5 V,軟件控制。
(2)A/D轉(zhuǎn)換器:16位A/D,采樣頻率可達(dá)250 kHz。
(3)通道輸入阻抗:10 MΩ。
(4)輸入通道支持任意起始到任意結(jié)束通道的自動掃描。
(5)系統(tǒng)精度:0.02%FSR。
(6)卡上內(nèi)置4 kB采樣FIFO緩沖器。

2 系統(tǒng)軟件設(shè)計(jì)
本系統(tǒng)要求界面友好、操作方便、實(shí)時多通道采集大量數(shù)據(jù),特別是為了準(zhǔn)確測定失效時間和故障的診斷和預(yù)測提供可靠的數(shù)據(jù),要求準(zhǔn)確記錄數(shù)據(jù)及時間。根據(jù)以前統(tǒng)計(jì)經(jīng)驗(yàn)一般一次實(shí)驗(yàn)持續(xù)約為30天,連續(xù)采樣數(shù)據(jù)達(dá)幾百GB,所以準(zhǔn)確記錄數(shù)據(jù)及時間是本的關(guān)鍵技術(shù)。
系統(tǒng)在Windows XP下采用VC++6.0軟件實(shí)現(xiàn)數(shù)據(jù)采集。Microsoft Visual C++是一款功能強(qiáng)大的可視化應(yīng)用程序開發(fā)工具。憑借其強(qiáng)大的功能和易學(xué)等特點(diǎn)受到了廣大程序員的歡迎,在數(shù)據(jù)采集和工業(yè)控制領(lǐng)域得到了廣泛應(yīng)用。雖然VC++自身無法對計(jì)算機(jī)的底層硬件進(jìn)行訪問以及利用各種接口板進(jìn)行數(shù)據(jù)采集和時間控制,但是通過調(diào)用驅(qū)動程序提供的動態(tài)鏈接庫函數(shù),就可以實(shí)現(xiàn)對I/O口的訪問和控制。
AC6622采集卡以動態(tài)鏈接庫的方式封裝了用戶在Windows環(huán)境下編程需要的函數(shù),無需用戶編寫驅(qū)動程序,這樣就大大縮短了整個數(shù)據(jù)采集系統(tǒng)的開發(fā)周期。在這些函數(shù)中,幾個重要的函數(shù)如表2所示。

本文引用地址:http://2s4d.com/article/194941.htm

c.jpg


數(shù)據(jù)采集程序設(shè)計(jì)的關(guān)鍵問題是在實(shí)現(xiàn)連續(xù)采集的同時以固定時間間隔保存固定時間長度的振動數(shù)據(jù)。AC6622采集卡是在FIFO半滿時產(chǎn)生一次中斷,驅(qū)動接收中斷后自動將2 kB數(shù)據(jù)保存在內(nèi)部緩沖中,而后用戶通過調(diào)用Read_A/D()函數(shù)讀取內(nèi)部緩沖中的采集數(shù)據(jù)。采集卡沒有提供用戶使用的中斷源,要實(shí)現(xiàn)精確定時寫入定量的數(shù)據(jù)到存儲設(shè)備中,無法通過采集卡硬件中斷實(shí)現(xiàn)。
實(shí)現(xiàn)定時數(shù)據(jù)存儲有兩種方案,第1種方案是利用Windows下提供直接使用的定時器函數(shù)控制數(shù)據(jù)采集卡定時自動保存數(shù)據(jù)。第2種方案是根據(jù)采樣率一定情況下,每個采樣點(diǎn)所用時間是固定的,通過查詢采集卡讀回?cái)?shù)據(jù)的長度進(jìn)行時間換算,進(jìn)而通過控制每次讀回?cái)?shù)據(jù)的長度進(jìn)行時間上的定時。
第1種方案雖然有編程簡單,容易實(shí)現(xiàn)的優(yōu)點(diǎn),但是利用VC6++編程時,Windows下提供直接使用的定時器函數(shù)SetTimer()、KillTimer()和()nTimer()函數(shù)的定時精度只有55 ms,而且通過SetTimer()函數(shù)設(shè)置的常規(guī)定時器的定時事件是由消息引發(fā)的,而Windows是一個多任務(wù)的操作系統(tǒng),在其消息隊(duì)列中的定時器消息WM_TIMER的優(yōu)先級很低,所以較難保證所發(fā)出的定時消息能及時得到響應(yīng)和處理。此外Windows的工作方式為搶占式,其內(nèi)部的時間管理函數(shù)并不能實(shí)現(xiàn)等間隔的時間控制。因此第1種方案只適用于定時精度不高的地方,這樣就不能滿足本系統(tǒng)精確定時的要求。



評論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉