基于C8051F340數(shù)據(jù)采集系統(tǒng)的設計
4. 2 上位PC 機客戶端程序
上位PC 機客戶端程序包括USB 驅(qū)動程序和用戶應用程序兩個部分。
USB驅(qū)動程序是一個軟件組件, 封裝了應用程序存取硬件設備的功能函數(shù)。有些設備具有相同的屬性, 把它們歸為一組標準類別, 可以定義設備類規(guī)范作為該類設備的主機驅(qū)動框架。設備類驅(qū)動程序使用相似的函數(shù), 處理不同設備間的通信,這樣使設備類驅(qū)動程序的開發(fā)可以脫離設備制造商。本系統(tǒng)的驅(qū)動程序使用了Silicon Laboratories公司提供的USB Xpress開發(fā)包, 在V isua l C ++ 6. 0環(huán)境下開發(fā), 封裝成動態(tài)鏈接庫DLL 的形式供用戶應用程序調(diào)用。
用戶應用程序采用C + + 編寫, 由客戶交互界面, USB數(shù)據(jù)通信, 數(shù)據(jù)保存顯示, 設備故障預警四個模塊組成。在USB 數(shù)據(jù)通信模塊設計中, 使用S ilicon Laboratories公司提供的S I_GetN umDevices,S I_GetProductString ( ), SI_Open( ), SI_C lose( ) , SI_Read( ) , SI_W rite( ) 等API函數(shù), 屏蔽了對底層硬件操作中USB 復雜的通信協(xié)議, 簡化了USB 通信開發(fā), 使得開發(fā)USB 通信的程序變得更容易 。
程序流程圖如圖4所示
圖4 客戶端應用程序流程圖。
誘發(fā)設備出現(xiàn)故障的原因很多, 為保證設備正常運行需要檢測多方面的數(shù)據(jù), 本系統(tǒng)主要是檢測設備的溫度和壓力等的數(shù)據(jù), 檢測獲得的數(shù)據(jù)一旦超過某個界限, 表示設備可能出現(xiàn)故障。因此為了保證設備長時間的穩(wěn)定工作, 需要對獲取的實時數(shù)據(jù)與事先設好的臨界值進行對比, 一旦超過臨界值, 系統(tǒng)則發(fā)出警報提醒工作人員對設備進行故障排查, 起到了故障預警的效果。
5 結(jié)語
基于USB 數(shù)據(jù)采集系統(tǒng)可供選擇的方案很多, 而本設計從便攜式和高速傳輸考慮, 編寫了固件和客戶端數(shù)據(jù)傳輸協(xié)議, 使得該數(shù)據(jù)采集系統(tǒng)方便攜帶, 數(shù)據(jù)傳輸高速準確, 具有良好的人機交互界面, 并能對一定的設備故障進行預警提醒, 有較大的使用價值。而且單片機端口資源還沒有用完,還有開發(fā)和擴展的空間。本文引用地址:http://www.ex-cimer.com/article/162542.htm
評論