沈 瑤,史麗峰,王詩豪,朱曉榮,趙 夙
(南京郵電大學(xué)通信與信息工程學(xué)院,南京 210003)
基于物聯(lián)網(wǎng)的實(shí)驗(yàn)設(shè)備智能管理系統(tǒng)
沈 瑤,史麗峰,王詩豪,朱曉榮,趙 夙
(南京郵電大學(xué)通信與信息工程學(xué)院,南京 210003)
針對(duì)高校實(shí)驗(yàn)室開放性管理不足的問題,研制了基于物聯(lián)網(wǎng)的實(shí)驗(yàn)設(shè)備智能管理系統(tǒng)。該系統(tǒng)在SQL Server 2005、Visual Studio 2012軟件平臺(tái)上使用ASP.NET、C#等技術(shù)搭建了設(shè)備管理的服務(wù)器管理軟件,利用低功耗藍(lán)牙、RFID(射頻識(shí)別)和網(wǎng)關(guān)通信等技術(shù)實(shí)現(xiàn)對(duì)設(shè)備的智能感知,自動(dòng)發(fā)現(xiàn)設(shè)備并進(jìn)行狀態(tài)的申報(bào)和記錄,并且可以對(duì)設(shè)備進(jìn)行預(yù)約、借用、歸還和智能調(diào)度等自動(dòng)化的管理和控制,提高了設(shè)備的利用率,節(jié)省了人力、物力和時(shí)間資源。
設(shè)備管理;智能感知;藍(lán)牙;射頻識(shí)別;網(wǎng)關(guān)
隨著國家對(duì)高等院校投資力度的不斷加大,各大高校的實(shí)驗(yàn)室得到了跨越式發(fā)展,實(shí)驗(yàn)設(shè)備逐漸完善,尤其是實(shí)驗(yàn)設(shè)備的數(shù)量和檔次都有了極大的提升,這也無疑增加了實(shí)驗(yàn)設(shè)備管理的復(fù)雜性,而傳統(tǒng)的實(shí)驗(yàn)室采用的設(shè)備管理方法普遍比較落后。因此,建立一套比較科學(xué)的實(shí)驗(yàn)設(shè)備智能化管理系統(tǒng),實(shí)現(xiàn)設(shè)備資源的開放共享,讓學(xué)生和教師更好更快地利用學(xué)校資源來進(jìn)行科研工作,提高設(shè)備的管理和利用效率尤為必要。
本文系統(tǒng)的主體設(shè)計(jì)思想是先對(duì)各個(gè)實(shí)驗(yàn)室的設(shè)備資源進(jìn)行網(wǎng)絡(luò)化管理,將房間內(nèi)所有設(shè)備信息錄入數(shù)據(jù)庫并展示到網(wǎng)站上,用戶可以在網(wǎng)上查詢自己所需設(shè)備的位置信息和借用情況等,并根據(jù)自身需求在設(shè)備開放時(shí)間內(nèi)進(jìn)行網(wǎng)上預(yù)約,省去了用戶與管理員溝通的時(shí)間。在獲取使用設(shè)備的權(quán)限后,用戶到相應(yīng)房間內(nèi)借用設(shè)備。整個(gè)預(yù)約過程并不需要設(shè)備管理員過多的參與,體現(xiàn)了設(shè)備管理的智能化。
圖1 系統(tǒng)總體框架圖
1.1 系統(tǒng)總體框架
圖1所示為系統(tǒng)總體框架圖,其主要由服務(wù)器管理模塊、網(wǎng)關(guān)模塊、藍(lán)牙模塊和RFID(射頻識(shí)別)模塊4部分組成,實(shí)現(xiàn)設(shè)備基本信息查詢、設(shè)備借用與歸還、實(shí)驗(yàn)設(shè)備增加、實(shí)驗(yàn)設(shè)備移動(dòng)以及設(shè)備使用信息統(tǒng)計(jì)分析等網(wǎng)絡(luò)化及自動(dòng)化管理功能。
1.2 系統(tǒng)運(yùn)行具體流程
系統(tǒng)將給每位用戶和每個(gè)設(shè)備配備具有唯一ID的RFID標(biāo)簽,用戶使用自己的RFID卡號(hào)在設(shè)備預(yù)約系統(tǒng)的網(wǎng)頁上進(jìn)行預(yù)約,后臺(tái)服務(wù)器根據(jù)調(diào)度算法自動(dòng)進(jìn)行預(yù)約審核,審核成功后,用戶獲得使用權(quán)限并記錄于相應(yīng)的RFID卡上。當(dāng)用戶刷RFID卡進(jìn)入實(shí)驗(yàn)室時(shí),網(wǎng)關(guān)掃描其卡號(hào)并發(fā)送給服務(wù)器判斷其是否具有權(quán)限進(jìn)入實(shí)驗(yàn)室。用戶獲得權(quán)限進(jìn)入實(shí)驗(yàn)室后,刷設(shè)備上的RFID卡,網(wǎng)關(guān)將設(shè)備RFID卡號(hào)和掃描到的用戶卡號(hào)綁定轉(zhuǎn)化為預(yù)先指定的幀格式發(fā)送給服務(wù)器,服務(wù)器對(duì)收到的數(shù)據(jù)進(jìn)行處理判定,并將判定結(jié)果數(shù)據(jù)指令發(fā)送給網(wǎng)關(guān),網(wǎng)關(guān)根據(jù)所收到的指令來作出相應(yīng)的動(dòng)作。用戶歸還設(shè)備時(shí),需要到相應(yīng)實(shí)驗(yàn)室刷自己的RFID卡進(jìn)入,再將設(shè)備放回對(duì)應(yīng)位置并刷設(shè)備RFID,此時(shí)網(wǎng)關(guān)會(huì)將設(shè)備歸還信息傳送給服務(wù)器,服務(wù)器以此更新相應(yīng)設(shè)備的狀態(tài)。另外,每臺(tái)設(shè)備上還會(huì)綁定一臺(tái)藍(lán)牙節(jié)點(diǎn),通過藍(lán)牙主機(jī)實(shí)時(shí)掃描從機(jī)設(shè)備狀態(tài),并將設(shè)備狀態(tài)發(fā)送給網(wǎng)關(guān),再由網(wǎng)關(guān)傳送給服務(wù)器進(jìn)行數(shù)據(jù)記錄。具體運(yùn)行流程如圖2所示。
圖2 系統(tǒng)運(yùn)行流程圖
1.3 開發(fā)環(huán)境和工具
服務(wù)器管理軟件分為網(wǎng)站和網(wǎng)絡(luò)通信服務(wù)器,在Visual Studio 2012軟件平臺(tái)上利用ASP.NET等技術(shù)搭建了具有三層架構(gòu)的網(wǎng)站[1-2],并運(yùn)用C#語言編寫了一個(gè)通過Socket(套接字)進(jìn)行TCP(傳輸控制協(xié)議)通信的網(wǎng)絡(luò)通信服務(wù)器。
智能網(wǎng)關(guān)采用嵌入式ARM平臺(tái)進(jìn)行開發(fā),涉及Linux操作系統(tǒng)、低功耗藍(lán)牙技術(shù)、ISO15693 RFID技術(shù)和Socket網(wǎng)絡(luò)通信技術(shù)。通過嵌入式平臺(tái)向下適配藍(lán)牙協(xié)議和RFID協(xié)議,向上與服務(wù)器進(jìn)行交互,完成系統(tǒng)上層與底層的橋接工作。
服務(wù)器管理模塊是本系統(tǒng)的核心部分,主要實(shí)現(xiàn)兩個(gè)方面的功能:一方面支持設(shè)備預(yù)約平臺(tái),將設(shè)備信息展示到網(wǎng)頁上供用戶檢索和預(yù)約,并且審核預(yù)約是否通過;另一方面實(shí)現(xiàn)與網(wǎng)關(guān)的數(shù)據(jù)通信,兩者之間通過Socket進(jìn)行數(shù)據(jù)交流,服務(wù)器接收由網(wǎng)關(guān)傳來的底層硬件的信息數(shù)據(jù),經(jīng)過數(shù)據(jù)格式的處理之后存儲(chǔ)到服務(wù)器數(shù)據(jù)庫中并回發(fā)相應(yīng)的指令數(shù)據(jù)。各個(gè)模塊之間的關(guān)系如圖3所示。
圖3 服務(wù)器及終端系統(tǒng)框圖
2.1 預(yù)約網(wǎng)站設(shè)計(jì)
預(yù)約平臺(tái)主要是面向用戶進(jìn)行預(yù)約,該平臺(tái)主要實(shí)現(xiàn)設(shè)備基本信息檢索、設(shè)備預(yù)約申請(qǐng)和設(shè)備預(yù)約進(jìn)度查詢3個(gè)功能。
后臺(tái)服務(wù)器對(duì)用戶預(yù)約請(qǐng)求進(jìn)行自動(dòng)審核,審核通過需滿足:(1)該設(shè)備存在于系統(tǒng)數(shù)據(jù)庫中,并且位置信息和數(shù)據(jù)庫中記錄的相一致;(2)該設(shè)備處于可預(yù)約狀態(tài);(3)該設(shè)備的預(yù)約開始時(shí)間和結(jié)束時(shí)間必須符合邏輯要求。
2.2 通信服務(wù)器設(shè)備管理軟件的設(shè)計(jì)
通信服務(wù)器是整個(gè)設(shè)備管理系統(tǒng)的“溝通橋梁”,通過連接到同一網(wǎng)絡(luò),它就可以按照客戶端的請(qǐng)求提供數(shù)據(jù)傳輸服務(wù)和各項(xiàng)數(shù)據(jù)運(yùn)算。
服務(wù)器和網(wǎng)關(guān)之間采用Socket進(jìn)行雙向通信。一方面,服務(wù)器接收網(wǎng)關(guān)傳來的底層硬件的信息數(shù)據(jù),經(jīng)格式化處理之后存儲(chǔ)在數(shù)據(jù)庫中;另一方面,如果網(wǎng)關(guān)傳來的是請(qǐng)求命令數(shù)據(jù),比如請(qǐng)求該用戶是否有權(quán)限進(jìn)入01號(hào)實(shí)驗(yàn)室,服務(wù)器要對(duì)請(qǐng)求數(shù)據(jù)根據(jù)內(nèi)部判斷函數(shù)作出判斷,并將判斷結(jié)果傳回給網(wǎng)關(guān),同時(shí)對(duì)數(shù)據(jù)庫進(jìn)行更新。
基于上述功能要求,本文在C#中使用Socket接口來實(shí)現(xiàn)網(wǎng)絡(luò)通信,考慮到數(shù)據(jù)傳輸?shù)目煽啃裕源_保系統(tǒng)通信流程實(shí)現(xiàn)無差錯(cuò)、無重復(fù)地收發(fā)數(shù)據(jù),本文采用TCP的流套接字[3-4]。
由于會(huì)有多個(gè)網(wǎng)關(guān)接入,因此服務(wù)器采用多線程編程[5],為每個(gè)Socket連接請(qǐng)求自動(dòng)新建一個(gè)線程來處理新的數(shù)據(jù)事務(wù),線程之間不會(huì)相互干擾,以保證數(shù)據(jù)被正確處理。
3.1 網(wǎng)關(guān)控制器設(shè)計(jì)
控制器在智能網(wǎng)關(guān)平臺(tái)中需要實(shí)現(xiàn)兩個(gè)主要功能:一是驅(qū)動(dòng)底層硬件模塊,獲取設(shè)備和人員信息;二是通過網(wǎng)絡(luò)與服務(wù)器進(jìn)行交互,匯報(bào)數(shù)據(jù)并執(zhí)行相應(yīng)的服務(wù)器指令。因此控制器需要完成大量的處理工作,并能接入其他外設(shè),進(jìn)行接口適配。本文選擇嵌入式ARM開發(fā)板作為網(wǎng)關(guān)控制平臺(tái)[6]。
3.2 設(shè)備感知方式設(shè)計(jì)
為了實(shí)現(xiàn)設(shè)備的自動(dòng)檢測,完成設(shè)備狀態(tài)信息的匯總和上報(bào),本文選用低功耗藍(lán)牙技術(shù)來進(jìn)行設(shè)備感知[7]。
藍(lán)牙設(shè)備在本系統(tǒng)中分為兩種:一種為執(zhí)行掃描工作的藍(lán)牙主機(jī);另一種為模擬實(shí)驗(yàn)設(shè)備的藍(lán)牙從機(jī)。在網(wǎng)關(guān)控制器的操控下,主機(jī)能定期地進(jìn)行環(huán)境掃描檢測,收集當(dāng)前環(huán)境中的從機(jī)狀態(tài),即該房間內(nèi)實(shí)驗(yàn)設(shè)備的當(dāng)前狀態(tài)。從機(jī)向周圍環(huán)境不斷廣播自己的MAC(媒體訪問控制)地址,使其能被其他主機(jī)掃描到,并用自身狀態(tài)來模擬代表設(shè)備狀態(tài)。
3.3 設(shè)備識(shí)別方式設(shè)計(jì)
本文選用RFID技術(shù)來完成使用者和實(shí)驗(yàn)設(shè)備的信息比對(duì),并配合上層服務(wù)器完成設(shè)備的借用和歸還過程[8-9]。
RFID分為讀卡器和電子標(biāo)簽兩部分。本文選用無源電子標(biāo)簽,只有在讀卡器天線正常輻射范圍內(nèi)才能通過微弱的感應(yīng)電流使電子標(biāo)簽的芯片工作,并返回芯片信息。該工作模式只有讀卡器需一直供電,電子標(biāo)簽不消耗電能,實(shí)現(xiàn)了節(jié)能和環(huán)保。
3.4 網(wǎng)關(guān)程序總體框架設(shè)計(jì)
網(wǎng)關(guān)程序總體框架的設(shè)計(jì)要求是:(1)網(wǎng)關(guān)能接入藍(lán)牙和RFID,實(shí)現(xiàn)設(shè)備信息獲取和其他基本操作;(2)網(wǎng)關(guān)向上能與服務(wù)器進(jìn)行交互,實(shí)現(xiàn)信息的實(shí)時(shí)更新;(3)整個(gè)管理系統(tǒng)最終能實(shí)現(xiàn)設(shè)備信息查詢、設(shè)備借用等自動(dòng)化管理功能。
為了實(shí)現(xiàn)設(shè)計(jì)功能,需要完成兩項(xiàng)任務(wù):(1)獲取藍(lán)牙設(shè)備信息和RFID標(biāo)簽信息;(2)根據(jù)服務(wù)器要求,以既定的數(shù)據(jù)幀格式進(jìn)行Socket通信,并根據(jù)服務(wù)器回發(fā)的指令進(jìn)行相關(guān)操作。可以對(duì)每個(gè)模塊單獨(dú)進(jìn)行控制和測試,最后將其整合為一個(gè)軟件系統(tǒng)。
3.5 設(shè)備感知線程-藍(lán)牙
藍(lán)牙的主要任務(wù)是模擬實(shí)驗(yàn)設(shè)備,確定設(shè)備是否存在于當(dāng)前實(shí)驗(yàn)室,以此來獲取信息并在網(wǎng)頁上進(jìn)行狀態(tài)顯示。借用或使用儀器設(shè)備則由RFID來實(shí)現(xiàn),因此可以簡化藍(lán)牙的功能,使其工作在“掃描-處理-發(fā)送”的循環(huán)狀態(tài)。掃描回讀數(shù)據(jù)為16進(jìn)制,在數(shù)據(jù)處理方面需要進(jìn)行參數(shù)轉(zhuǎn)換。掃描后回發(fā)數(shù)據(jù)為一長串字符指令,其中攜帶藍(lán)牙從設(shè)備的MAC地址,通過字符匹配的方法可以提取所需的MAC地址來進(jìn)行后續(xù)操作。
為了能對(duì)比發(fā)現(xiàn)設(shè)備的增加或缺少,需要定義一個(gè)靜態(tài)結(jié)構(gòu)數(shù)組以存放該實(shí)驗(yàn)室既定的設(shè)備信息,用來與掃描到的設(shè)備信息進(jìn)行對(duì)比,確定具體事件后與服務(wù)器進(jìn)行信息交互。這里將藍(lán)牙的事件分為3類:藍(lán)牙設(shè)備狀態(tài)正常、藍(lán)牙設(shè)備缺失和藍(lán)牙設(shè)備增加。具體事件由掃描數(shù)據(jù)與靜態(tài)庫對(duì)比后確定。為了能與服務(wù)器進(jìn)行正確的信息交互,傳達(dá)對(duì)應(yīng)的事件消息,約定3個(gè)幀格式來代表這3個(gè)事件,不但能規(guī)范通信格式,還能方便地進(jìn)行數(shù)據(jù)處理,為調(diào)試提供了便捷。
3.6 設(shè)備識(shí)別線程-RFID
RFID主要實(shí)現(xiàn)的功能是實(shí)驗(yàn)設(shè)備的借用。RFID標(biāo)簽卡作為身份標(biāo)識(shí),為使用人員和實(shí)驗(yàn)設(shè)備分別配備,以RFID標(biāo)簽唯一的UID(全球唯一標(biāo)識(shí))卡號(hào)作為區(qū)分??紤]到數(shù)據(jù)的安全性,將信息存儲(chǔ)于服務(wù)器上,每次掃描只獲取RFID標(biāo)簽號(hào),在使用過程中所產(chǎn)生或者需要的數(shù)據(jù)都通過與服務(wù)器交互的方式來獲取和傳達(dá)。
在RFID處理線程中,等待并接收輸入設(shè)備的控制指令,當(dāng)判斷為“借用”時(shí),進(jìn)行標(biāo)簽卡掃描操作,之后將標(biāo)簽卡信息發(fā)送給服務(wù)器。與上文中藍(lán)牙事件的數(shù)據(jù)幀格式相對(duì)應(yīng),這里定義了格式類似的數(shù)據(jù)幀來表示RFID請(qǐng)求事件。當(dāng)服務(wù)器收到請(qǐng)求后,網(wǎng)關(guān)將等待接收服務(wù)器的回發(fā)消息,包括當(dāng)前請(qǐng)求使用者的權(quán)限和設(shè)備信息等,再進(jìn)行后續(xù)處理。圖4所示為RFID事件的流程圖。
圖4 RFID事件流程
本文研制了基于物聯(lián)網(wǎng)的實(shí)驗(yàn)設(shè)備智能管理系統(tǒng),在該系統(tǒng)中智能網(wǎng)關(guān)節(jié)點(diǎn)為整個(gè)系統(tǒng)提供了信息獲取、指令執(zhí)行和操作反饋功能,在服務(wù)器設(shè)備管理軟件和調(diào)度算法的控制下實(shí)現(xiàn)智能化、自動(dòng)化和可視化的設(shè)備管理,進(jìn)一步優(yōu)化了資源配置,大大提高了高校實(shí)驗(yàn)室的管理水平。
[1]徐兵.基于.NET的實(shí)驗(yàn)預(yù)約管理系統(tǒng)的實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用,2009,(05):1259-1261.
[2]高揚(yáng).基于.NET平臺(tái)的三層架構(gòu)軟件框架的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)技術(shù)與發(fā)展,2011,(02):77-80.
[3]戴建明.面向連接的SOCKET編程與通信軟件的設(shè)計(jì)[J].成都?xì)庀髮W(xué)院學(xué)報(bào),1996,(04):291-300.
[4]戴寧.基于TCP/IP協(xié)議的網(wǎng)絡(luò)通信服務(wù)器設(shè)計(jì)[D].西安:西安電子科技大學(xué),2014:381-420.
[5]蔡昭權(quán).利用Socket實(shí)現(xiàn)多線程通信程序[J].惠州學(xué)院學(xué)報(bào):自然科學(xué)版,2004,(06):59-70.
[6]聶嘉棟.基于Linux-ARM平臺(tái)的3G無線聯(lián)網(wǎng)方案設(shè)計(jì)[J].電子技術(shù),2010,47(7):70-71.
[7](英)海登.低功耗藍(lán)牙開發(fā)權(quán)威指南[M].北京:機(jī)械工業(yè)出版社,2014:59-60.
[8]Klaus Finkenzeller.射頻識(shí)別(RFID)技術(shù)——無線電感應(yīng)的應(yīng)答器和非接觸IC卡的原理與應(yīng)用[M].陳大才,譯.第二版.北京:電子工業(yè)出版社,2001:1-8.
[9]李隆.基于ISO15693協(xié)議的HF RFID芯片開發(fā)系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[D].武漢:華中科技大學(xué),2013.
Intelligent Laboratory Equipment Management System Based on the Internet of Things
SHEN Yao,SHI Li-feng,WANG Shi-hao,ZHU Xiao-rong,ZHAO Su
(College of Telecommunication&Information Engineering,Nanjing University of Posts and Telecommunication,Nanjing 210003,China)
To solve the insufficiency problem of the opening laboratory equipment management in universities,an intelligent equipment management system on Internet of things is designed in this paper.A server system is constructed in this system by using ASP.NET,C#and other technology on the software platform of SQL Server 2005 and Visual Studio 2012.The intelligent perception of equipment is achieved by using low-power Bluetooth technology,RFID radio frequency identification technology,and gateway communication technology and so on.The system can automatically discover the equipment,report and record their status.Meanwhile,it can provide services such as reserving,borrowing,returning equipment,automatically.Also it can manage and control the intelligent scheduling,which improves the utilization of the equipment and saves manpower,material and time resources.
device management;intelligent perception;bluetooth;RFID;gateway
TP391.4
A
1005-8788(2016)05-0035-04
10.13756/j.gtxyj.2016.05.011
2016-06-11
沈瑤(1994-),女,江蘇溧陽人。本科,主要研究方向?yàn)橐苿?dòng)通信與無線技術(shù)。