◆潘可賢
(廈門工學院 電子與電氣工程學院 福建 361024)
近年來,隨著高校的辦學理念的不斷發展和改變,教學過程中對學生的實踐動手能力和創新能力提出了更高的要求,課外開放式實驗課時、課程設計,以及學生的課外科技創新創業活動的增加,使得實驗室的使用頻率大幅度提高。而實驗室管理人員有限,實驗室的人工預約使用常常出現使用時間沖突,使用設備資源沖突等問題,且在學生在課外使用實驗室的過程中,設備使用安全問題缺少合理監管。針對此類問題,建設信息化的實驗室預約管理系統,可使學生或教師利用手機便捷的預定在某個時間使用某個實驗室,實驗管理人員根據申請準備相應的實驗設備,并在其實驗過程中,可隨時監控實驗室情況。
由于近年來手機微信應用的快速發展,微信小程序開發平臺提供了方便簡單、高效的應用開發框架和豐富的組件及API,其所提供的云數據庫為文檔型數據庫,穩定可靠,支持在小程序端和云函數中調用。預約系統主要采用微信小程序的形式實現,一方面學生和普通老師無須安裝APP,直接微信關注即可,同時也解決開發平臺問題,無論蘋果手機或者安卓平臺手機皆可使用,提高開發效率,節約成本。
本實驗室預約管理系統目的是為了無紙化校園辦公,節省人力物力和時間。系統使用者為高校學生,教師,實驗室管人員。主要功能如下:實驗室管理人員需將當前學期的實驗室上課使用情況上傳至實驗室預約管理系統,記錄在系統數據庫中,系統可據此計算出實驗室空余時段。學生或普通教師通過該系統可根據需要靈活選擇時間段使用某個實驗室,并提出某個實驗儀器的使用。申請提交后,實驗室管理教師可通過系統上接收到相應申請,并對此進行批準或駁回,審批信息直接返回到申請者手機上,隨時可查看,并發回密碼和二維碼信息,用于實驗室的門禁登錄。若申請獲批后,臨近申請的時間,系統提前發出通知,申請人按時到達實驗室。申請人按時間到達相應的實驗室后,通過輸入密碼或二維碼掃描等方式打開實驗室門禁,進入實驗室進行實驗。實驗過程中,實驗管理老師可通過網絡攝像頭監控實驗情況,實驗結束后,實驗人員再次掃碼登記離開實驗室,實驗室管理教師檢查實驗儀器后,可終止該次申請,同時也可對該次申請人員進行評價,作為下次申請的參考依據。為了保證實驗室資源的有效使用,若申請人出現多次爽約的情況,則將此申請人列入黑名單,限制預約次數。
對于學生或普通老師而言,只需了解各實驗室的空余時段,提交申請,以及獲得申請的結果即可,因此主要采用微信小程序實現,其中功能包括用戶信息管理模塊以及預約功能模塊,用戶只需掃一掃或者搜索即可打開應用,無須安裝卸載,隨時可用。 而對于管理員而言,需要增加網絡監控模塊以及每學期實驗室課程數據的導入,教師以及新生信息的導入,畢業生數據的刪除,以及預約數據的導出等操作。另外考慮到微信小程序目前對網絡攝像頭的支持較少,因此提供了Android 版本供管理員使用,可實現網絡監控功能,以及隨時預約審批。此外由于在手機上對文件操作的不便捷性,系統同時提供網頁版本,主要實現數據的導入和導出。數據庫采用微信小程序提供的云數據庫實現。
微信小程序開發采用微信開發者工具平臺,該平臺提供了豐富的API 和足夠多的框架和組件,同時還提供了詳細的開發文檔和詳盡的設計規范。程序開發時,使用WXML+WXSS+JavaScript,完成程序界面構建,界面文字圖案樣式設計以及程序邏輯功能設計。
在新建項目時務必要勾選“開啟云服務”,并設置數據庫環境,根據使用量選用資源配額,然后在項目中獲得用戶的openid,即可利用云功能,此時無須搭建服務器,可直接在微信小程序前端操作數據庫,也能在云函數中對數據庫進行操作。
對于數據庫內容的管理,可在微信這一開發工具的云開發控制臺中實現,在此可直接建立各數據庫集合,并直接導入初始信息,如學生信息,實驗室信息等。在云開發控制臺中也可實現對數據庫的索引信息和數據權限進行設置,以及對云函數的管理。
數據庫環境搭建好后,可直接通過微信小程序中實現數據的增刪查改,也可通過HTTP API 協議在小程序外訪問云開發資源。
微信小程序主要向申請者提供申請實驗室通道,主要是實現用戶登錄和注冊界面(學生和普通老師注冊和登錄為申請者,實驗室管理人員作為管理者登錄)。申請者首次登錄需核對是否本校學生或老師,核對成功后進入預約界面,選擇申請日期和實驗室后,系統自動列出可使用的時間段,申請者可根據需要選擇,同時備注實驗的內容以及需準備的實驗儀器等。用戶成功提交后可查看申請結果。如申請滿的實驗室不得再接受申請,如有實驗人員結束實驗,完成該次申請后,該實驗室可重新進入備選狀態等。此外申請者可對自身信息進行修改,如電話號碼等內容進行修改。
管理員接收到申請后,可查看申請,并對申請進行批準或拒絕,界面圖3所示。此外管理員具有信息的導入和導出功能,可完成學生基礎信息的導入和課程信息的導入,學生基礎信息主要用于識別注冊和申請人員是否為本校學生,如果不是本校學生則不允許申請使用實驗室。課程信息則是用于記錄每學期實驗室的課程安排情況,系統根據導入的課程信息計算空余時間段,申請人只允許預約課程外的空余時間段。信息導出功能則能夠完成對某時間段實驗室使用情況的信息導出。
數據庫的實現,由于目前系統只在電子與電氣工程學院內部使用,單個院部的師生人數大約為2000 人左右,實驗室約為20 間左右,需要記錄的信息大約為實驗室信息,學生學號,班級,手機號,預約信息等,存儲容量較少,每月的信息訪問量也較少,因此直接使用系統均衡性的基礎版本配額即可。
系統涉及的主要的數據庫集合有用戶信息表,字段有姓名,學號,班級,手機號,微信號,密碼等;實驗室信息表,字段有實驗室名,ID 等;實驗室狀態表,字段有周數,星期,時間段,實驗室ID,狀態等;預約信息表,字段有學號,實驗室ID,周數,星期,時間段,批準狀態,備注等。
由于實驗室預約系統是為了方便課余時間師生能夠充分使用實驗室資源,因此,單獨申請試用實驗室的時間多為課外空余時間,此時,老師是沒有時間實時跟蹤實驗的進行的,大部分的時間應該是學生或老師獨立進行實驗。該功能的實現可以通過具體實驗室的門禁系統同一控制攝像頭實現,完成圖像的實時傳輸。
監控系統將網絡攝像頭安裝在實驗室,通過手機Android 應用程序完成攝像頭的控制。實驗室管理員在手機上安裝應用程序后可隨時進行監控。
如預約申請成功后,系統會返回申請成功的提示,并向申請者手機發回二維碼和密碼,申請者到達實驗室后,需二維碼掃描通過或者輸入密碼開啟門禁。
當申請者按時到達相應實驗室時,可通過二維碼掃碼或密碼輸入開門信息。門禁系統安裝在實驗室門口處,能夠無線連接到數據庫,如從中查找到與申請者匹配的預約記錄,則實驗室門禁打開,同時通知實驗室管理人員申請者已經入相應實驗室。當實驗人員完成實驗后,退出實驗室也需掃碼登記,此時實驗管理人員收到信息后檢查實驗儀器情況,關閉該條申請信息,完成整個申請實驗過程。門禁系統的系統使用密碼輸入和二維碼掃碼打開門禁的方式。
實驗室門禁系統采用stm32 單片機作為主控系統,連接二維碼識別模塊、無線模塊、鍵盤模塊,LCD 顯示模塊,電磁鎖門禁控制模塊等。 單片機控制二維碼識別模塊得到開門密碼,通過無線模塊連接到云數據庫,在數據庫中查詢到申請者信息后,再將數據回傳到門禁系統顯示在LCD 上,同時數據庫記錄進入時間,同時通過云函數向管理員賬號發出通知。
門禁系統訪問數據庫時使用HTTP API 協議,在小程序外訪問云開發資源,實現與云開發的互通。
數據庫查詢記錄的請求地址為:

新增記錄的請求地址為:

本系統完成了根據用戶登錄身份的不同,展示不同的頁面,學生、普通老師用戶可以進行預約申請,查看預約,取消預約和賬戶密碼的修改。管理員用戶可以對預約進行審批,對所有預約數據進行導出,也可以導入實驗室數據,課程數據,實驗室允許預約數據等。經過一段時間的運行,能夠將實驗室管理人員從煩瑣的實時實地預約工作中解放出來,更好地配合開放性實驗室的使用。系統還需要在與學生、實驗室人員的相互配合使用中進一步完善和改進功能