劉文舉,馮錫煒,徐偉炫,陳 槊,魏 銘,馬國皓
(1.遼寧石油化工大學創新創業學院,遼寧撫順 113001;2.遼寧石油化工大學信息與控制工程學院,遼寧撫順 113001;3.遼寧石油化工大學經濟管理學院,遼寧撫順 113001;4.遼寧石油化工大學機械工程學院,遼寧 撫順 113001)
2020 年春,新冠肺炎席卷全球,在疫情期間高校應更加高效地管理學生[1],保證學生安全,防止疫情傳播,因此該系統設計的主要目的便是保證同學們的安全。手機以及微信是大學生日常生活學習必不可少的工具,該系統中學生端打開微信小程序[2-3],開啟手機定位[4],小程序對學生的位置信息進行實時采集,將數據傳送至數據庫[5]供管理平臺進行調用查詢,管理員可實時查詢學生位置;通過對百度地圖進行二次開發[6],用戶端微信小程序能夠方便用戶查看校園地圖,顯示行程軌跡,查詢天氣信息,以及在用戶接近設定范圍邊界及或有門禁的樓宇時會對用戶進行提示。門禁[7]部分采用較為流行的嵌入式開發,選用ESP8266 開發板[8],通過Arduino[9]開發對其嵌入代碼,實現開閘、關閘、測溫等功能,同時將數據進行上傳。
如此便可對人員位置進行實時監控,對校園內人員以及安全進行全方位管理。
該系統的主要設計目的是幫助高校更好地管理學生,能夠調取學生在校期間的行程數據,通過對數據進行分析,能夠了解學生的行程信息,進而保護學生安全。同時在疫情期間,大多數高校實行封閉式管理,該系統能有效緩解高校的管理壓力。
系統主要分為三大部分,分別是微信小程序、管理平臺、門禁系統,結合前后端開發對系統的各個部分進行設計,管理員可通過管理平臺實現門禁查詢、路線查詢、歷史記錄查看、日周月報查看等功能,用戶端則具有查看天氣、樓宇門禁提示、圍欄警示等功能,系統結構功能如圖1 所示。

圖1 系統結構功能圖
管理平臺采用IDEA 開發工具對頁面進行設計,管理員登錄管理平臺即可實現對校園管理系統的管理,對異常數據進行處理,對超出學校圍欄的進行通報,以及查詢人員的行蹤軌跡數據,查看周報、月報與日報。
微信小程序用于移動端檢驗查詢系統的設計與開發[10],主要涵蓋登錄頁面、地圖頁面、個人中心頁面,其中地圖主頁面有“天氣查詢”“開始記錄軌跡”“軌跡記錄”三個按鈕,以及校園電子地圖界面。小程序能夠對用戶的位置進行采集,并進行數據上傳,同時能顯示用戶的行程軌跡,超出范圍時進行警示。
門禁部分由ESP8266WiFi 開發模塊、DS1820 溫度傳感器和舵機組成,通過Arduino 開發工具給ESP8266 開發板嵌入代碼,以實現對進入人員進行測溫,以及控制舵機旋轉實現門禁開閉。
注冊微信小程序后,準備百度地圖微信小程序JavaScript API 相關配置獲取開發者密鑰(AK),小程序JSAPI 對百度地圖Web 服務API 中的部分接口按照微信小程序的規范進行前端JS 封裝,方便微信小程序開發者進行調用。
2.2.1 IDEA
IDEA 能夠為創建可擴展的集成開發環境提供一個穩固可靠的開放平臺,在該系統中,IDEA 用于Web 的前后端開發,同時作為百度地圖開發的平臺,并將其嵌入微信小程序中。
2.2.2 MySQL設計
MySQL 是關系型數據庫[11]管理系統,是包括有關聯的邏輯組織和存取數據的一套程序,該系統數據庫設計主要包括以下實體:
1)門禁:地點、時間、ID;
2)溫度:ID(自動增長)、時間、體溫、地點;
3)開關:ID(自動增長)、按鈕;
4)用戶:ID(自動增長)、學號、用戶名;
5)天氣:時間、文本、風向、風力級別;
6)管理員:ID、用戶名;
7)地點:經度、緯度、地點名、半徑、ID;
8)行跡:經度、緯度、時間。
前端主要使用了和微信小程序類似的開發技術,使用HTML 對頁面進行編寫;CSS 可以對整個頁面進行編輯,其與div 的結合使得頁面更加美觀;標簽里嵌入JS 函數,可以讓標簽更活躍,當標簽被點擊或者需要數據時可以通過JS 函數來獲取。
數字溫度傳感器DS18B20 是溫度采集系統中常用的一個新型數字溫度傳感器,其具有體積小、精度高、適用電壓寬及采用一線總線、可組網等優點[12],在實際應用中取得了良好的測溫效果。
ESP8266 是專為移動設備和電子產品等物聯網應用而設計的,通過Arduino 開發平臺給ESP8266開發板嵌入門禁程序,令其控制舵機,實現門禁的開閉。
門禁控制電路如圖2 所示,DS18B20 端的溫度信號轉換成電信號,由ESP8266 開發板處理后根據溫度判斷是否低于合格溫度37.3 ℃,如果小于37.3 ℃,則門禁屏幕顯示“體溫正常開”,同時ESP8266 開發板控制舵機P-Motor 轉動,門禁打開;反之如果大于合格溫度,屏幕顯示異常,門禁關閉。

圖2 門禁控制電路原理圖
MQTT 協議[13]是為工作在低帶寬、不可靠網絡的遠程傳感器和控制設備通信而設計的協議,通過MQTT 消息代理者通信來間接實現交互消息。
MQTT 傳輸的信息主要是由主題(Topic)和負載(Playload)兩部分組成[14],可以把所有聯網物品和外部連接起來,通過單片機的聯網功能實現校園監控和門禁測溫相結合,學生每次進入建筑物時進行測溫,通過MQTT 傳遞信息,以判斷是否體溫正常,MQTT 連接ESP8266 示意圖如圖3 所示。

圖3 MQTT連接ESP8266示意圖
MQTT 工作流程圖如圖4 所示。

圖4 MQTT工作流程
第一,對技術可行性進行分析,通過較為成熟的MySQL 數據庫以及Java 編程語言和C 語言的相關結合應用,使用IDEA 和微信開發工具,在Tomcat 服務器[15]上進行部署,前端在微信小程序上運行,后端在瀏覽器上運行,因此技術方面可行。
第二,對操作可行性進行分析,學生只要打開微信小程序,便可實現定位功能,管理員只需登錄平臺便可實現對校內人員的行程信息進行管理。
開發工具有jdk-12.02、MySQL、navicat.exe、Arduino.exe、IntelliJ IDEA、Postman.exe、微信開發者工具及Mqttx.exe。
1)登錄界面
為了平臺的安全性,管理員查看用戶數據時,需要先輸入自己的用戶名和密碼,以防止信息泄露。
2)平臺主界面
平臺主界面用來展示管理員主頁面,顯示管理員有哪些功能和管理范圍,其中管理員的權限有天氣查詢,體溫檢測,門禁查詢,人員行程歷史記錄,日報、周報、月報查看,以及人員體溫查詢等。管理平臺主界面如圖5 所示。

圖5 管理平臺主界面
3)體溫查詢
管理員可以在平臺查詢人員體溫信息。
4)天氣查詢
管理員可以在平臺查詢天氣信息。
5)門禁查詢
管理員通過管理平臺能夠查看學生經過哪些門禁,間接的說明學生進入過哪些建筑物,查詢樣例結果如圖6 所示。

圖6 門禁查詢樣例結果圖
6)路線查詢
管理員可查詢人員在地圖上的行蹤軌跡。
7)歷史查詢
用來查看用戶的身份信息和去過的路線,查詢樣例如圖7 所示。
基于百度地圖的二次開發[16],注冊百度地圖密鑰,連接百度地圖API,利用IDEA 開發平臺調出校園電子地圖,百度地圖能夠較為詳細地顯示校內地圖,并將其嵌入微信小程序中。
當用戶接近或超出設定范圍時,微信小程序會發出警告,當用戶接近或進入帶有門禁的樓宇時,小程序也會發出提示,提示用戶該建筑物有門禁測溫,其實現的提示及報警功能如圖8 所示。

圖8 小程序功能實現圖
門禁系統模型采用ESP8266 串口以WIFI 模塊為主體,該模塊能夠實時聯網、上傳數據,當測溫合格時則門禁打開,待其通過后,門禁關閉。
當溫度合格時門禁打開,舵機控制閘刀打開,如圖9 所示。

圖9 門禁打開圖
等待通過后門禁關閉,舵機旋轉,閘刀下拉,門禁閉合,如圖10 所示。

圖10 門禁關閉圖
該文設計的校園定位管理系統主要基于微信小程序,通過該系統能夠準確定位校內人員,并在人員進入門禁及時進行提醒、超出范圍時進行報警,同時管理員能夠對校內人員行蹤進行管理,全方位管理校園,保證了學生安全。