公務員期刊網(wǎng) 論文中心 正文

藍牙標簽信息管理系統(tǒng)的設(shè)計與實現(xiàn)

前言:想要寫出一篇引人入勝的文章?我們特意為您整理了藍牙標簽信息管理系統(tǒng)的設(shè)計與實現(xiàn)范文,希望能給你帶來靈感和參考,敬請閱讀。

藍牙標簽信息管理系統(tǒng)的設(shè)計與實現(xiàn)

【摘要】傳統(tǒng)RFID電子標簽有著通信距離短、需要匹配讀寫器等缺點,在物聯(lián)網(wǎng)的應用中受到一定限制。本文設(shè)計并實現(xiàn)了基于BLE技術(shù)的藍牙標簽管理系統(tǒng),該系統(tǒng)設(shè)計了新型藍牙標簽,在Android平臺下使用Java語言開發(fā)APP,通過Android智能移動終端APP與藍牙標簽通信實現(xiàn)數(shù)據(jù)的讀寫。采用Java2EE技術(shù)開發(fā)Web后臺,MySQL實現(xiàn)數(shù)據(jù)庫管理,融合藍牙技術(shù)和移動通信技術(shù)將數(shù)據(jù)與信息更新至Web后臺。該系統(tǒng)驗證了藍牙標簽管理系統(tǒng)的可行性,并為電子標簽系統(tǒng)提供了新的解決方案。

【關(guān)鍵詞】BLE技術(shù)藍牙標簽Android平臺開發(fā)Web后臺管理系統(tǒng)

引言

本項目基于藍牙4.2技術(shù)[1]標準設(shè)計了一款新型藍牙標簽,并通過智能移動終端APP取代了傳統(tǒng)的固定或手持RFID讀寫器,通過后臺實時管理和監(jiān)控標簽信息。該系統(tǒng)集成了智能移動終端APP、數(shù)據(jù)庫、移動通信等技術(shù),為電子標簽系統(tǒng)提供了新的解決方案。它由藍牙4.2標簽、智能移動終端APP和基于Web的后臺管理系統(tǒng)三大部分構(gòu)成。同傳統(tǒng)RFID標簽[2]相比,該系統(tǒng)具有讀寫距離更遠、獲取數(shù)據(jù)速度更快、功耗更低、安全更高、功能擴展能力更強的特點,可實現(xiàn)大范圍物品和人員的精確管理。藍牙標簽信息管理系統(tǒng)應用前景廣泛、商業(yè)價值高,可以用作于RFID標簽技術(shù)的重要補充。

一、系統(tǒng)簡介

藍牙標簽管理系統(tǒng)由藍牙標簽硬件、智能移動終端APP、Web后臺管理系統(tǒng)3個部分組成。智能移動終端APP可以通過藍牙技術(shù)讀取和寫入信息,Web后臺管理系統(tǒng)[3]和智能移動終端APP可以實現(xiàn)實時信息交互。藍牙標簽信息管理系統(tǒng)系統(tǒng)具有如下特點:(1)藍牙標簽比傳統(tǒng)RFID標簽讀寫距離更遠,低功耗[4],安全性高,功能擴展能力強。(2)智能移動終端APP取代了傳統(tǒng)的固定或手持RFID讀寫器,更靈活。(3)Web后臺管理系統(tǒng),可實現(xiàn)各類信息精確和可視化的管理,長期保存方便進行大數(shù)據(jù)分析。(4)作為RFID標簽技術(shù)的重要補充,系統(tǒng)部署簡單,大大節(jié)省成本,系統(tǒng)兼容性好,商業(yè)價值高。(5)藍牙標簽除了進行物品管理,還可以進一步實現(xiàn)室內(nèi)定位、身份識別[5]等功能。

二、系統(tǒng)設(shè)計

2.1藍牙標簽設(shè)計

藍牙標簽核心部分為NRF52832藍牙芯片。電源部分中電容主要是為了濾波,使電源更加穩(wěn)定,其中使用的電池為CR2032紐扣電池,UART部分為串口預留部分,主要為后續(xù)擴展應用提供接口。下行接口為Jtag口。按鈕中,按鈕1為功能選擇按鍵,按鈕2為復位鍵。LED部分中,LED0為進入模式選擇指示燈,LED1為藍牙標簽模式指示燈,LED2為藍牙信標模式指示燈。

2.2智能移動終端APP設(shè)計

安卓平臺(4.4版本及以上)通過GATT協(xié)議庫支持BLE通信協(xié)議軟件程序的開發(fā),必須聲明藍牙權(quán)BLUETOOTH,是因為這是智能移動終端APP中使用藍牙功能的前提,諸如請求連接、接受連接和傳輸數(shù)據(jù)等藍牙通信皆需要用到此權(quán)限。同時,為了能夠使智能移動終端APP啟動設(shè)備發(fā)現(xiàn)或操縱藍牙設(shè)置,必須聲明BLUETOOTH_ADMIN權(quán)限??梢允褂肁ndroidStudio自帶的googleAPI,來幫助完成以上所說的聲明藍牙權(quán)限。

2.3Web后臺管理系統(tǒng)設(shè)計

藍牙標簽后臺子系統(tǒng)用于管理“藍牙標簽”軟件使用過程中涉及到的所有信息。子系統(tǒng)是使用MySQL數(shù)據(jù)庫管理和Java語言開發(fā)的機遇B/S結(jié)構(gòu)的在線系統(tǒng)。采用MVC軟件設(shè)計典范,一個部件里聚集這些業(yè)務邏輯,不需要重新編寫業(yè)務邏輯。藍牙標簽后臺子系統(tǒng)中的組織結(jié)構(gòu)設(shè)計主要有數(shù)據(jù)層,接口層,數(shù)據(jù)庫操作層以及服務層。智能移動終端APP請求Web后臺做出相應的JSON響應,以完成與智能移動終端APP與Web后臺之間的通信。服務層封裝了數(shù)據(jù)層對象,然后設(shè)計對數(shù)據(jù)庫的操作和調(diào)用封裝對象實現(xiàn)業(yè)務邏輯。為考慮到后期增添和修改功能,設(shè)計每個模塊時應獨立且大小適中,因此設(shè)計初期模塊按照來源,藍牙標簽后臺子系統(tǒng)管理的信息可以基于應用場景對標簽信息進行設(shè)置和定義。

三、系統(tǒng)實現(xiàn)

3.1開發(fā)環(huán)境

智能移動終端APP在安卓系統(tǒng)下開發(fā),通過谷歌出品的AndroidStudio使用Java編程語言開發(fā)。Web后臺管理系統(tǒng)分為成兩子系統(tǒng)開發(fā),其中,數(shù)據(jù)庫子系統(tǒng)由MySQL數(shù)據(jù)庫開發(fā),MySQL數(shù)據(jù)庫在NavicatforMySQL下開發(fā)和實現(xiàn);后臺管理子系統(tǒng)Web界面則是使用Java編程語言在Eclipse平臺開發(fā),其中JDK版本是JavaEE8,Web應用服務器采用Tomcat。

3.2藍牙標簽開發(fā)

根據(jù)藍牙標簽原理圖制作成PCB板,經(jīng)過加工、焊接等工作完成藍牙標簽硬件制作,由于藍牙標簽要進行通信,需通過軟件對藍牙標簽進行通信初始化設(shè)置。首先,需要初始化藍牙設(shè)置:初始化定時器,設(shè)置為1分頻,初始化協(xié)議棧handle模塊,設(shè)置連接主從機的連接數(shù)量,使能協(xié)議棧,注冊handle模塊到藍牙處理事件中。同時對按鍵,LED燈等外設(shè)初始化。其次配置標簽模式:通過構(gòu)造藍牙標簽結(jié)構(gòu)體,把minor、major和company_identifier的值寫進結(jié)構(gòu)體。設(shè)置廣播數(shù)據(jù):把標簽信息傳遞給廣播數(shù)據(jù)結(jié)構(gòu)體,廣播類型設(shè)置為不可連接、廣播間隔為0、廣播超時為0。最后,把參數(shù)和數(shù)據(jù)注冊到協(xié)議棧中,開始廣播。最后配置信標模式:構(gòu)造廣播數(shù)據(jù)結(jié)構(gòu)體,把信標為全名和低功耗可發(fā)現(xiàn)模式寫入結(jié)構(gòu)體,廣播類型為:廣播間隔為187.5ms、廣播超時0、快速連接,同時把參數(shù)和數(shù)據(jù)注冊到協(xié)議棧中,開始廣播。藍牙標簽實物成品。

3.3智能移動終端APP開發(fā)

首先設(shè)置BLE:雖然現(xiàn)在的手機基本都支持BLE,但是考慮到程序的健碩性,這個檢查是必需的。其次進行發(fā)現(xiàn)BLE設(shè)置:使用startLeScan()方法發(fā)現(xiàn)BLE設(shè)備,使用該方法的前提是實現(xiàn)它的回調(diào)函數(shù)設(shè)置BluetoothAdapter.LeScanCallback參數(shù),即返回掃描結(jié)果Device、ScanRecord——Device里面包含設(shè)備的mac地址和設(shè)備的名稱,scanRecord的內(nèi)容是BLE設(shè)備發(fā)出的廣播包數(shù)據(jù)。最后,實現(xiàn)智能移動終端APP與Web后臺通信:選擇JSON作為數(shù)據(jù)交互的方法。Android訪問遠程服務器前端,獲取并解析網(wǎng)絡上的JSON,再將獲取到的解析JSON格式的輸入流轉(zhuǎn)換成List,顯示到相對應的Activity頁面上。

3.4Web后臺的實現(xiàn)

首先,創(chuàng)建數(shù)據(jù)庫,并插入了一個用戶。其次,創(chuàng)建VO類:用于對應數(shù)據(jù)庫以使用DAO類中的代碼。再者,定義DAO的接口類:查詢是否存在這個用戶的方法是findLogin(Useruser)。緊接著,定義DAO的實現(xiàn)類——相當于Mode(模型層):對用戶名和密碼進行驗證,如果驗證成功,則通過VO類將用戶數(shù)據(jù)取出并返回。然后,新建一個Servlet類——相當于Controller(控制層)。最后,始界面Login.jsp——相當于View(顯示層)。對于Web服務器與Tomcat通信問題:因為Tomcat服務器是一個免費的開放源代碼的Web應用輕量級服務器,所以需要建立MySQL和java的連接。主要方法是下載鏈接用的jar包,jar包為MySQL官方提供的mysql-connector-java-5.1.39-bin.jar,然后在實際項目中引用該jar包。

四、結(jié)論

根據(jù)上述的設(shè)計方案,順利完成系統(tǒng)開發(fā),驗證了該系統(tǒng)的可行性。藍牙標簽可用作RFID標簽的重要補充,應用于各種場合。

參考文獻

[1]丁磊等.基于藍牙4.0的低功耗電子貨架標簽設(shè)計[J].電子技術(shù)應用,2014,40(05):28-30.

[2]黃玉蘭.基于物聯(lián)網(wǎng)的RFID電子標簽研究進展[J].電訊技術(shù),2013,53(04):522-529.

[3]高嘉澤等.面向移動應用的后端服務平臺[J].計算機系統(tǒng)應用,2014,23(02):22-27.

作者:劉立豐 鐘慧琳 夏靖波 張曉燕 杜小甫 單位:廈門大學嘉庚學院

精選范文推薦