摘要:文章針對(duì)學(xué)生運(yùn)動(dòng)打卡系統(tǒng)的問題,設(shè)計(jì)了一種基于微信小程序和Bcacon藍(lán)牙技術(shù)的打卡系統(tǒng)。該系統(tǒng)通過使用Bcacon藍(lán)牙技術(shù)進(jìn)行定位,可以在運(yùn)動(dòng)場(chǎng)地范圍內(nèi)自動(dòng)完成打卡,實(shí)現(xiàn)快速便捷的運(yùn)動(dòng)打卡功能。通過對(duì)該系統(tǒng)進(jìn)行實(shí)驗(yàn)和評(píng)估,發(fā)現(xiàn)其具有較好的可行性和實(shí)用性。該系統(tǒng)可以為學(xué)生提供更好的運(yùn)動(dòng)體驗(yàn),同時(shí)為學(xué)校管理和教學(xué)提供更好的數(shù)據(jù)支持和管理手段。
關(guān)鍵詞:微信小程序;Bcacon藍(lán)牙;學(xué)生打卡系統(tǒng);運(yùn)動(dòng)數(shù)據(jù)
中圖法分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A
1 概述
隨著社會(huì)的發(fā)展,人們?cè)絹碓疥P(guān)注健康生活和健身運(yùn)動(dòng)。在校園中,學(xué)生的身體健康也越來越受到重視。為鼓勵(lì)學(xué)生積極參加運(yùn)動(dòng),學(xué)校推出了運(yùn)動(dòng)打卡系統(tǒng)。該系統(tǒng)可以記錄學(xué)生的運(yùn)動(dòng)數(shù)據(jù),鼓勵(lì)學(xué)生參加運(yùn)動(dòng)鍛煉, 同時(shí)也方便學(xué)校管理和教學(xué)。
然而,目前的運(yùn)動(dòng)打卡系統(tǒng)存在一些問題。傳統(tǒng)的打卡方式需要學(xué)生手動(dòng)打卡,容易出現(xiàn)漏打卡、虛假打卡等情況。另外,學(xué)生需要攜帶特定的打卡設(shè)備,不方便。同時(shí),傳統(tǒng)的打卡系統(tǒng)也存在管理混亂、數(shù)據(jù)處理不及時(shí)等問題。
為解決這些問題,本文設(shè)計(jì)了一種基于微信小程序和Beacon 藍(lán)牙技術(shù)的學(xué)生運(yùn)動(dòng)打卡系統(tǒng)。該系統(tǒng)可以實(shí)現(xiàn)自動(dòng)定位和自動(dòng)打卡,便于學(xué)生參加運(yùn)動(dòng),同時(shí)提高打卡的準(zhǔn)確性和安全性。該系統(tǒng)以微信小程序?yàn)榍岸私缑妫渚哂辛己玫挠脩趔w驗(yàn)感和交互性。該系統(tǒng)使用Beacon 藍(lán)牙技術(shù)進(jìn)行定位,可以實(shí)現(xiàn)精準(zhǔn)的打卡定位和較快的打卡速度。該系統(tǒng)還具有良好的數(shù)據(jù)處理性能,可以為學(xué)校提供更好的數(shù)據(jù)支持和管理手段。微信小程序是一種輕量級(jí)的應(yīng)用程序,具有使用方便、開發(fā)成本低等優(yōu)點(diǎn)。基于微信小程序和Beacon 藍(lán)牙技術(shù)的學(xué)生打卡系統(tǒng),可以有效管理學(xué)生考勤,減輕教師考勤管理的負(fù)擔(dān),提高學(xué)生考勤管理的效率和準(zhǔn)確性。
2 相關(guān)技術(shù)介紹
2.1 Beacon 藍(lán)牙技術(shù)
Beacon 設(shè)備使用低功耗藍(lán)牙( Bluetooth LowEnergy,BLE)技術(shù)進(jìn)行通信,具有較低的功耗和較遠(yuǎn)的通信范圍。Beacon 設(shè)備可以以固定的頻率廣播信號(hào),周圍的設(shè)備可以通過接收信號(hào)來確定自己的位置和方向。在學(xué)生運(yùn)動(dòng)打卡系統(tǒng)中,可以將Beacon 設(shè)備放置在運(yùn)動(dòng)場(chǎng)地的關(guān)鍵位置,例如入口處、終點(diǎn)等。
學(xué)生在運(yùn)動(dòng)場(chǎng)地運(yùn)動(dòng)時(shí),可以通過接收Beacon 設(shè)備發(fā)出的信號(hào)來確定自己的位置,并自動(dòng)完成打卡操作。
由于Beacon 設(shè)備具有較低的功耗和較遠(yuǎn)的通信范圍,可以實(shí)現(xiàn)快速、準(zhǔn)確的定位和打卡功能[1~4] 。
2.2 微信小程序技術(shù)
微信小程序是一種基于微信平臺(tái)的輕量級(jí)應(yīng)用程序,可以在微信內(nèi)部進(jìn)行快速訪問和使用。微信小程序具有許多優(yōu)點(diǎn),如易于傳播、快速啟動(dòng)、不需要安裝、跨平臺(tái)等。在學(xué)生運(yùn)動(dòng)打卡系統(tǒng)中,可以以微信小程序?yàn)榍岸私缑妫阌趯W(xué)生進(jìn)行打卡操作和數(shù)據(jù)查詢。開發(fā)者可以使用微信小程序提供的API 接口進(jìn)行數(shù)據(jù)的存儲(chǔ)、讀取和處理,從而實(shí)現(xiàn)學(xué)生運(yùn)動(dòng)數(shù)據(jù)的管理和查詢功能。
3 系統(tǒng)設(shè)計(jì)
3.1 系統(tǒng)架構(gòu)
學(xué)生運(yùn)動(dòng)打卡系統(tǒng)采用微信小程序和Beacon 藍(lán)牙技術(shù)相結(jié)合的設(shè)計(jì)方案。系統(tǒng)包括硬件部分和軟件部分。硬件部分主要由Beacon 設(shè)備和服務(wù)器組成,軟件部分主要由微信小程序和服務(wù)器程序組成。
系統(tǒng)的總體架構(gòu)如圖1 所示。
3.2 系統(tǒng)功能
學(xué)生運(yùn)動(dòng)打卡系統(tǒng)的主要功能如下。
學(xué)生注冊(cè):學(xué)生可以通過微信小程序進(jìn)行注冊(cè),包括姓名、學(xué)號(hào)、密碼等信息。
運(yùn)動(dòng)打卡:學(xué)生在運(yùn)動(dòng)場(chǎng)地范圍內(nèi),可以通過接收Beacon 設(shè)備發(fā)出的信號(hào)來完成自動(dòng)打卡操作。
數(shù)據(jù)查詢:學(xué)生可以通過微信小程序查詢自己的運(yùn)動(dòng)數(shù)據(jù),包括運(yùn)動(dòng)距離、運(yùn)動(dòng)時(shí)間等信息。
數(shù)據(jù)統(tǒng)計(jì):學(xué)校管理人員可以通過服務(wù)器程序進(jìn)行運(yùn)動(dòng)數(shù)據(jù)的統(tǒng)計(jì)和分析,包括每個(gè)學(xué)生的運(yùn)動(dòng)情況、總體數(shù)據(jù)分析等。
3.3 實(shí)現(xiàn)細(xì)節(jié)
系統(tǒng)的實(shí)現(xiàn)包括硬件、軟件和網(wǎng)絡(luò)3 個(gè)部分。其中,硬件部分主要包括Beacon 設(shè)備和服務(wù)器;軟件部分主要包括微信小程序和服務(wù)器程序;網(wǎng)絡(luò)部分主要包括網(wǎng)絡(luò)通信和數(shù)據(jù)傳輸。
3.3.1 硬件實(shí)現(xiàn)
硬件部分主要由Beacon 設(shè)備和服務(wù)器組成。
Beacon 設(shè)備使用了藍(lán)牙芯片nRF52832 和Beacon 固件,具有低功耗、高精度、高穩(wěn)定性等特點(diǎn)。服務(wù)器將樹莓派作為主控制器,可以實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和管理。
在系統(tǒng)設(shè)計(jì)中,Beacon 設(shè)備需要設(shè)置UUID,Major 和Minor 等參數(shù),以便系統(tǒng)進(jìn)行區(qū)分和識(shí)別。
3.3.2 軟件實(shí)現(xiàn)
軟件部分主要由微信小程序和服務(wù)器程序組成。
微信小程序采用WXML,WXSS 和JavaScript 等前端技術(shù),以實(shí)現(xiàn)用戶交互界面和數(shù)據(jù)的展示。服務(wù)器程序采用Java 語言進(jìn)行編寫,以實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和管理。
在微信小程序中,需要實(shí)現(xiàn)用戶的注冊(cè)、運(yùn)動(dòng)打卡、數(shù)據(jù)查詢等功能。其中,運(yùn)動(dòng)打卡功能需要使用微信小程序提供的API 接口,通過藍(lán)牙掃描、連接、監(jiān)聽等操作來實(shí)現(xiàn)Beacon 設(shè)備的檢測(cè)和定位。數(shù)據(jù)查詢功能需要使用微信小程序提供的數(shù)據(jù)存儲(chǔ)接口,將運(yùn)動(dòng)數(shù)據(jù)保存到微信服務(wù)器中,以便學(xué)生隨時(shí)查詢。
3.3.3 網(wǎng)絡(luò)實(shí)現(xiàn)
網(wǎng)絡(luò)部分主要包括網(wǎng)絡(luò)通信和數(shù)據(jù)傳輸。系統(tǒng)采用HTTP 協(xié)議進(jìn)行網(wǎng)絡(luò)通信,以實(shí)現(xiàn)數(shù)據(jù)的傳輸和交互。其中,微信小程序和服務(wù)器程序之間的數(shù)據(jù)傳輸需要加密和校驗(yàn), 以保證數(shù)據(jù)的安全性和完整性[5~8] 。
4 系統(tǒng)實(shí)現(xiàn)
4.1 硬件搭建
系統(tǒng)的硬件搭建主要包括Beacon 設(shè)備和服務(wù)器的搭建。Beacon 設(shè)備采用nRF52832 藍(lán)牙芯片和Beacon 固件進(jìn)行搭建,具體如圖2 所示。
4.2 軟件編寫
系統(tǒng)的軟件編寫主要包括微信小程序和服務(wù)器程序的編寫。微信小程序采用WXML, WXSS 和JavaScript 等前端技術(shù)進(jìn)行編寫。服務(wù)器程序采用Java 語言進(jìn)行編寫,并使用Spring Boot 框架對(duì)數(shù)據(jù)接口進(jìn)行設(shè)計(jì)和編寫。
在微信小程序中,需要實(shí)現(xiàn)用戶的注冊(cè)、運(yùn)動(dòng)打卡、數(shù)據(jù)查詢等功能。其中,注冊(cè)功能需要對(duì)用戶信息進(jìn)行收集和存儲(chǔ),運(yùn)動(dòng)打卡功能需要使用微信小程序提供的API 接口,通過藍(lán)牙掃描、連接、監(jiān)聽等操作來實(shí)現(xiàn)Beacon 設(shè)備的檢測(cè)和定位。數(shù)據(jù)查詢功能需要使用微信小程序提供的數(shù)據(jù)存儲(chǔ)接口,將運(yùn)動(dòng)數(shù)據(jù)保存到微信服務(wù)器中,以便學(xué)生隨時(shí)查詢。其具體如圖3 所示。
服務(wù)器程序需要實(shí)現(xiàn)數(shù)據(jù)的存儲(chǔ)和管理,同時(shí)可以對(duì)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)和分析,為學(xué)校管理和教學(xué)提供更好的數(shù)據(jù)支持和管理手段。服務(wù)器采用Java 語言進(jìn)行編寫,使用Spring Boot 框架實(shí)現(xiàn)數(shù)據(jù)接口的設(shè)計(jì)和開發(fā)。服務(wù)器可以通過HTTP 協(xié)議和微信小程序進(jìn)行通信和數(shù)據(jù)交互,同時(shí)可以通過網(wǎng)絡(luò)連接和Beacon設(shè)備進(jìn)行數(shù)據(jù)傳輸和通信。
4.3 系統(tǒng)評(píng)估
為評(píng)估系統(tǒng)的可行性和實(shí)用性,本文進(jìn)行了相關(guān)實(shí)驗(yàn)和評(píng)估。實(shí)驗(yàn)中,通過模擬學(xué)生在運(yùn)動(dòng)場(chǎng)地的打卡操作和數(shù)據(jù)查詢操作,對(duì)系統(tǒng)的運(yùn)行情況和數(shù)據(jù)準(zhǔn)確性進(jìn)行了測(cè)試和分析。評(píng)估結(jié)果顯示,系統(tǒng)具有較好的可行性和實(shí)用性,能夠滿足學(xué)生運(yùn)動(dòng)打卡的需求,同時(shí)為學(xué)校管理和教學(xué)提供更好的數(shù)據(jù)支持和管理手段。
5 結(jié)束語
本文設(shè)計(jì)了一種基于微信小程序和Beacon 藍(lán)牙技術(shù)的學(xué)生運(yùn)動(dòng)打卡系統(tǒng)。該系統(tǒng)可以實(shí)現(xiàn)自動(dòng)定位和自動(dòng)打卡,便于學(xué)生參加運(yùn)動(dòng),同時(shí)能夠提高打卡的準(zhǔn)確性和安全性。該系統(tǒng)將微信小程序作為前端界面,其具有良好的用戶體驗(yàn)和交互性。該系統(tǒng)使用Beacon 藍(lán)牙技術(shù)進(jìn)行定位,可以實(shí)現(xiàn)精準(zhǔn)的打卡定位和較快的打卡速度。該系統(tǒng)還具有良好的數(shù)據(jù)處理性能,可以為學(xué)校提供更好的數(shù)據(jù)支持和管理手段。通過實(shí)驗(yàn)和評(píng)估發(fā)現(xiàn),該系統(tǒng)具有較好的可行性和實(shí)用性,能夠滿足學(xué)生運(yùn)動(dòng)打卡的需求,同時(shí)為學(xué)校管理和教學(xué)提供更好的數(shù)據(jù)支持和管理手段。未來,可以進(jìn)一步完善系統(tǒng)性能,提高系統(tǒng)的穩(wěn)定性和可靠性,為學(xué)生提供更好的運(yùn)動(dòng)體驗(yàn)和服務(wù)。
該系統(tǒng)也存在一些不足,需要進(jìn)一步改進(jìn)和優(yōu)化。首先,系統(tǒng)的精度和穩(wěn)定性還有待提高,尤其是在信號(hào)強(qiáng)度較弱或干擾較大的環(huán)境下。其次,系統(tǒng)的安全性還需進(jìn)一步加強(qiáng),尤其是在數(shù)據(jù)傳輸和存儲(chǔ)方面。此外,系統(tǒng)的使用成本還有待降低,需要考慮采用更便宜、更節(jié)能、更高效的設(shè)備和技術(shù)。這些問題需要在未來的研究中進(jìn)一步解決。
參考文獻(xiàn):
[1] 王益?。{(lán)牙室內(nèi)定位關(guān)鍵技術(shù)的研究與實(shí)現(xiàn)[D].南京:東南大學(xué),2015.
[2] 劉明偉,劉太君,葉焱,等.基于低功耗藍(lán)牙技術(shù)的室內(nèi)定位應(yīng)用研究[J].無線通信技術(shù),2015,24(3):19?23.
[3] 吳棟淦. 基于iBeacon 的智能導(dǎo)覽系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].貴陽學(xué)院學(xué)報(bào)(自然科學(xué)版),2014,9(4):9?13.
[4] 吳小竹,陳崇成,劉先鋒,等.集成IBeacon 室內(nèi)定位的文化旅游虛擬導(dǎo)覽系統(tǒng)[J].計(jì)算機(jī)工程,2016,42(10):6?11.
[5] 翟劍錕.Spring 框架技術(shù)分析及應(yīng)用研究[D].北京:中國科學(xué)院大學(xué)(工程管理與信息技術(shù)學(xué)院),2013.
[6] 鄒紅霆.基于SSM 框架的Web 系統(tǒng)研究與應(yīng)用[J].湖南理工學(xué)院學(xué)報(bào)(自然科學(xué)版),2017,30(1):39?43.
[7] 楊家煒.基于SpringBoot 的web 設(shè)計(jì)與實(shí)現(xiàn)[J].輕工科技,2016,32(7):86?89.
[8] 肖露.Spring 框架研究與應(yīng)用[D].長沙:長沙理工大學(xué),2011.
作者簡(jiǎn)介:古波(1993—),本科,實(shí)驗(yàn)師,研究方向:健康大數(shù)據(jù)。