• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > 設計應用 > 基于Onenet及微信小程序的校園運動場地預約系統

    基于Onenet及微信小程序的校園運動場地預約系統

    作者:岳增霖,金浩軒,張偉豪 時間:2019-11-29 來源:電子產品世界 收藏

      岳增霖,金浩軒,張偉豪,湯?毅(上海大學機電工程與自動化學院?工程訓練國家級實驗教學示范中心,上海??200044)

    本文引用地址:http://www.czjhyjcfj.com/article/201911/407672.htm

      摘?要:校園內師生進行體育運動時,時常遭遇到達現場,卻由于同一時間場館人員較多,無足夠場地進行活動的問題,其中籃球運動場館情況尤為最嚴重。該研究以籃球場為例,采用中國移動智能開放平臺作為數據交互服務器,作為用戶終端,小程序作為信息記錄存儲中心,建立運動場館使用、預約、實時場地查看為一體的智能化球場預約系統。該系統的實現利于師生合理安排時間進行體育運動,提高運動場館利用率,具有現實意義及推廣價值。

      關鍵詞:?;;;;

      0 引言

      近年來,隨著科技水平的迅速提升,物聯網技術取得了迅速的發展,物聯網相關產品大量走入人們的日常生活,為人們的生活提供便捷。體育運動是人們日常生活中不可或缺的一部分,市面上體育相關的物聯網應用大多集中于可穿戴設備領域,在整個體育場館進行硬件改造部署及使用方法的智能化方向應用并不成熟。對于公共場所而言,預約系統的構建對場地使用率提升、場館資源合理分配有著極為重要的意義,本研究以場館使用智能化高效化及信息可視化為目標,以市面廣泛應用的、小程序智能開放物聯平臺為基礎,進行整個系統設計及搭建。

      1 系統設計及實現

      1.1 系統總體概述

      運動場地智能預約系統功能主要包含預約及實時數據查看功能,用戶模塊功能包括遠程場地預約、場地當前人數、場地使用情況及環境參數查看,依托微信小程序進行功能實現。

      硬件系統分為本地控制、采集及數據上傳部分,控制部分包含,繼電器,電磁門鎖,UART電容觸摸屏,溫濕度傳感器,GM65二維碼掃描模塊,上傳部分由ESP8266無線模塊實現。系統運行過程中,二維碼掃描器識別到符合條件的二維碼后,采用繼電器控制電磁門鎖進行開門,由安裝于門兩側的紅外傳感器進行人數計數工作,當檢測到門關閉后,中斷計數,UNO通過UART串口將上傳數據傳輸至8266無線模塊,進行人數實時上傳更新。在無二維碼信息輸入時,進行數據循環監測,并與最后發送狀態參數進行對比,數據發生變動時,通過UART串口與8266無線模塊通信,進行場地參數上傳。

      整個系統通信流程及硬件線路連接設計如圖1所示。

    1575353385763591.jpg

    圖1

      1.2 本地系統與onenet平臺間通訊

      上傳實現以arduino為IDE進行編寫,通過加載無線模塊8266對應的ESP8266WiFi.h、ESP8266WiFiMulti.h兩個庫文件,調用相應功能函數進行wifi連接,http服務請求等行為,簡化程序工作量。

      程序設計時,首先進行wi-fi連接,采用庫函數Wi-Fi.begin(wi-fi_name, wi-fi_key);實現wi-fi連接,而后通過WiFiClient client;建立基于wifi的客戶端口以進行網絡通訊,程序頭部設定onenet平臺服務器IP地址,平臺賬號的設備編號,平臺注冊提供的apikey,將其命名為server_host、devidGet 、apiKey,分別按照格式包含在http請求指令中,調用庫中的client.print()函數進行http請求發送。

      數據上傳采用http中的post方法,以json格式進行數據更新。將上傳部分代碼封裝為void類型datasend_function(String id,String value)子函數形式,調用使用時,在id,value位置填入相應內容即可便捷調用,將數據上傳至指定數據流點進行后續數據調用及其它相關操作。

      根據平臺開發文檔要求,http上傳json格式形式如下:

    POST /devices/所注冊設備編號/datapoints

    HTTP/1.1

    api-key: //(平臺注冊時數據流api密鑰)

    Host: api.heclouds.com // 固定(此為onenet服務器域名)

    Content-Length: length // 發送httppost指令長度

    {“datastreams”:

    [{“id”:”對應數據點名”,”datapoints”:[{“v

    alue”:””}]}]}

    //value后填入數據點的實時數值

      http上傳需嚴格按照平臺定義形式進行,包括標點、空格、換行等細節,否則數據將上傳失敗。數據上傳成功,短暫延遲后可在onenet平臺上實時查看管理對應數據流。

      1.3 小程序數據可視化

      球場實時數據顯示,通過微信小程序和onenet平臺協作進行達成。Onenet平臺負責存儲采集到的數據,小程序通過http指令,以get方式從onenet平臺請求數據流,從而將體育館內的人數、環境指標、使用情況等數據顯示給用戶。

    1575353360796143.jpg

      得到場館內相應的信息之后,將其賦值給變量,調用console.log()函數,在wxml內置文件中將得到的內容再顯示到界面上,完成場館信息顯示功能。

      1.4 小程序預約系統實現

      小程序云開發數據庫:實現預約系統的過程中,小程序采用微信小程序的云開發數據庫。云開發提供了一個JSON 數據庫,數據庫中的每條記錄都是JSON 格式的對象。一個數據庫可有多個集合(相當于關系型數據中的表),集合可作為JSON數組,數組中的每個對象即為一條記錄,記錄格式以JSON格式進行。

      微信小程序數據庫相較于市面同類數據庫,有著開發成本低,易于操作的優勢,尤其針對微信小程序,適配性高,配套函數調用極為便捷,內置相關組件可便捷進行數據庫數據分析及可    視化處理處理,針對小程序開發者,小程序數據庫的使用能夠提供極大的便利。

      預約系統實現邏輯

    微信截圖_20191203140536.jpg

      小程序預約系統運行邏輯:通過小程序來對場館的類別和時間段進行預約,再由小程序從數據庫讀取相應的用戶預約記錄,轉而生成二維碼,再由門禁系統掃取二維碼,根據二維碼內容進行識別,從而判斷用戶能否進入場館。

      小程序預約系統通過基于數據庫的查詢與添加進行展開,小程序以查詢數據庫方式,獲取所有已預約時間和未預約時間,由此更新用戶端時間預約列表。用戶進行預約后,小程序再次對預約時間進行審核,核對用戶所預約的時間為無人預約后,將這個數據通信更新至數據庫。隨后他人打開預約界面的時候會再次訪問數據庫進行信息讀取刷新,由此實現預約信息的實時更新。

    1575353303594135.jpg

      查詢數據庫更新列表狀態采用db.collection.where與.get條件查詢語句,查詢在用戶的可預約時間段內,數據庫內是否已經含有預約記錄。若查詢到某個時間已經被預約,則將列表中對應的時間從時間文本更改為“請選擇其他時間”的文本。由此對用戶可預約時間內的每一個時間進行查詢,完成對列表狀態更新。

      用戶可在預約界面選擇預約日期并點擊預約進行場館預訂。單擊預約后,程序會再次判斷該時間是否可預約,如果可預約,則使用db.collection.add語句來向數據庫發送信息,信息包含日期、時間、場地號、使用方式,以“查詢”的方式顯示到小程序上“我的訂單”模塊。

      1.5 門禁系統的識別實現

      根據數據庫存儲的信息,轉化為包含“密鑰+日期+時間+場館號”信息的二維碼。每個場地對應特有場地號作為不同場地識別,由本地控制系統,經過GM-65二維碼掃描模塊,對小程序生成的二維碼信息進行掃描進而進行身份驗證。系統本地時間信息獲取通過gps模塊獲取實時UTC信息,進行轉換后獲取。

      2 結論

      本系統采用時下使用較為廣泛的Onenet開放式智能平臺,微信小程序及其數據庫,物聯網信息技術結合硬件傳感設備,實現遠程場地狀態查看及預約功能,為校園師生日常生活中合理規劃體育運動提供了便利,使得運動場地的使用更加智能高效便捷,系統的構建為預約功能在小程序中的實現、遠程設備信息上傳及開放式智能平臺搭建使用提供了可參考的解決方案,本系統具備一定現實意義及推廣價值。

      [1] 張新程.物聯網關鍵技術[M].北京:人民郵電出版社,2011.

      [2]中國移動.Onenet開發者文檔中心https://open.iot.10086.cn/bbs/forum.php?mod=viewthread&tid=536&fromuid=23569.

      [3] 張學記.智慧城市:物聯網體系架構及應用[M].北京:電子工業出版社,2014.

     ?。?] 任志玲,張廣全,林冬,等.無線傳感器網絡應用綜述[J].傳感器與微系統,2018,(3) : 165-166.

     ?。?] 陳晨.基于無線傳感器網絡的高校智慧圖書館研究與展望[J].輕工科技,2017,(12) : 68-69.

     ?。?] 楊洋.基于無線傳感器的智能電網線路傳感器系統的研制[J].貴州電力技術,2013,03 : 50-52.

     ?。?] 龔建華.JSON格式數據在Web開發中的應用[J].辦公自動化,2013,20 : 46-48.[8]徐斌,諸葛斌,等.基于微信小程序的智能學習平臺的設計與實現[EB/OL].北京:中國科技論文在線 [2018-11-19].

      本文來源于科技期刊《電子產品世界》2019年第12期第55頁,歡迎您寫論文時引用,并注明出處。



    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 那坡县| 扶绥县| 高邑县| 肃北| 礼泉县| 安龙县| 阜宁县| 阜阳市| 汉川市| 乌审旗| 德安县| 阿尔山市| 喀喇沁旗| 松原市| 朔州市| 台前县| 广宗县| 舟曲县| 应城市| 舟曲县| 海林市| 凌源市| 梁山县| 临沭县| 建始县| 永宁县| 新龙县| 金溪县| 兴安县| 长垣县| 龙泉市| 嫩江县| 额尔古纳市| 万州区| 西平县| 托里县| 达州市| 锦屏县| 中江县| 米脂县| 柏乡县|