基于USB接口的多節(jié)點無線測溫系統(tǒng)
1 引言
溫度監(jiān)測在土木建筑施工、儲糧倉庫、智能樓宇、空調(diào)系統(tǒng)以及其他工農(nóng)業(yè)生產(chǎn)中有著廣泛的應用。傳統(tǒng)的測溫方法是在各監(jiān)測點布置溫度探頭,由專人每天定時采集各點的溫度數(shù)據(jù),再輸入電腦保存,并生成溫度、應力的變化曲線和測試報告,也有一些是通過數(shù)據(jù)采集箱采集溫度和應力數(shù)據(jù),然后通過電纜上傳電腦做進一步的數(shù)據(jù)處理。
傳統(tǒng)的測量方法需要監(jiān)測人員頻繁來往于施工現(xiàn)場,勞動強度大,數(shù)據(jù)采集和傳輸不方便,信息管理的自動化程度低,難于滿足現(xiàn)代信息化監(jiān)測的要求。為了提高測溫數(shù)據(jù)采集的準確性、可靠性、及時性,同時實現(xiàn)溫度和應力數(shù)據(jù)的智能化、信息化管理,本文針對大規(guī)模建筑施工監(jiān)測等工程應用的要求,設計了一種基于無線數(shù)據(jù)傳輸和USB接口的多節(jié)點遠程溫度監(jiān)測系統(tǒng)。
通過無線數(shù)據(jù)傳輸,一方面拓展了節(jié)點分機布置的空間范圍,另一方面大大縮短了測溫電纜的長度以方便布線。USB接口實現(xiàn)了將各節(jié)點分機的測溫數(shù)據(jù)向主機的快速傳輸,取代了傳統(tǒng)的RS 232等接口形式,大大方便了與主機的連接。主機軟件完成數(shù)據(jù)的轉換、存儲、曲線和報表生成,實現(xiàn)混施工監(jiān)測的信息化管理,也可以構建一個Web服務器,實現(xiàn)信息的異地監(jiān)測。
2 測溫系統(tǒng)的整體構造
測溫系統(tǒng)是由主機、通信機和測溫節(jié)點分機構成,整體框圖如圖1所示。
其中溫度信號通過埋植在現(xiàn)場的傳感器傳輸?shù)焦?jié)點分機,節(jié)點分機內(nèi)部集成了調(diào)理電路和信號采集模塊,以及由微處理器控制的存儲模塊和通信模塊,一個節(jié)點分機最多可以處理64路溫度信號,測溫分機以主機設定的時間間隔通過無線或有線方式經(jīng)通信機向主機傳送數(shù)據(jù),其中通信機采用了支持USB 2.0標準的微控制器C8051F320,使傳輸?shù)臄?shù)據(jù)通過USB傳送到主機,PC機在軟件支持下對數(shù)據(jù)進行處理并以報表以及曲線圖表示出來。同時,主機也可以設定分機的數(shù)據(jù)采集間隔,監(jiān)測的部位,系統(tǒng)時間等參數(shù)。
3 USB接口在測溫系統(tǒng)中的應用
為了把測溫數(shù)據(jù)傳送到主機,傳統(tǒng)的方法是利用RS 232或RS 485總線與主機通信。但由于這些接口傳輸速度慢,近年來,逐步被USB接口所取代。目前USB成為PC機的標準接口已經(jīng)是大勢所趨,在主機(host) 端,目前推出的PC機幾乎100%支持USB。鑒于此,本文采用CYGNAL公司的支持全速USB 2.0的微控制器C8051F320。該單片機是完全集成的混合信號系統(tǒng)級芯片(SOC),具有與C8051完全兼容的CIP51內(nèi)核,與MSC-51指令集完全兼容。片內(nèi)集成了數(shù)據(jù)采集和控制系統(tǒng)中常用的模擬、數(shù)字外設及其他功能部件;內(nèi)置FLASH程序存儲器、內(nèi)部RAM以及外部數(shù)據(jù)存儲器RAM。微控制器C8051F320帶有USB接口,其功能控制模塊符合USB 2.0規(guī)范,可在全速或低速下運行,并具有1 kB USB緩存、集成收發(fā)器,無需外部電阻。Silicon lab公司提供了USBXpress的開發(fā)套件。通過使用USBXpress庫,大大簡化了USB固件程序和PC端驅動程序的開發(fā)。其中USB通信總體框圖如2所示。USBXpress通過一系列函數(shù)實現(xiàn)單片機端的應用程序接口(API)。當主機需要數(shù)據(jù)時,可將測溫節(jié)點分機數(shù)據(jù)通過通信機傳輸?shù)街鳈C中,應用程序對數(shù)據(jù)進行波形顯示和數(shù)據(jù)分析處理。
4 USB通信
本系統(tǒng)的USB外設為非符合HID標準的設備,因此要使主機與通信機順利傳輸數(shù)據(jù),需要編寫三部分的程序:設備端的固件程序、主機上的設備驅動程序以及客戶應用程序。
4.1 固件程序設計
采用C語言編寫,USB固件程序程序由3部分組成:
(1)初始化單片機和所有的外圍電路;包括USB控制器的初始化、端點初始化、交叉開關和I/O口初始化、系統(tǒng)時鐘設置,控制器使能;
(2)主循環(huán)部分,其任務是可以中斷的;
(3)中斷服務程序,其任務是對時間敏感的,必須馬上執(zhí)行。如圖3所示。
根據(jù)USB協(xié)議,任何傳輸都是由主機(Host)開始的。單片機做它的前臺工作,等待中斷。主機首先要發(fā)令牌包給USB設備,C8051F320接收到令牌包后就進入中斷服務程序,首先讀單片機的中斷寄存器,判斷USB令牌包的類型,然后執(zhí)行相應的操作。