池曉宇 彭澤順 沙毅 張立立
【摘 要】隨著計算機技術和Internet的發(fā)展,計算機輔助管理越來越成為今后教育改革的趨勢。借鑒當前先進的計算機技術,改革落后的實驗元器件管理手段,利用科學的方法對元器件進行管理,就此目的開發(fā)了一套實驗室智慧管理系統(tǒng),能夠有效的對各類元器件進行分類管理并可通過此系統(tǒng)對元器件位置進行快速檢索。實驗室智慧管理系統(tǒng)采用前后端分離部署的辦法,搭建響應式頁面和動態(tài)網(wǎng)頁,兼顧移動端和電腦端的使用。能夠?qū)崿F(xiàn)對元器件的智能化管理,有效縮短了找尋元器件所花費的時間,提高了學生的實驗效率及元器件的利用率,進而提高了實驗室使用效益。
【關鍵詞】實驗室;數(shù)據(jù)庫;元器件;管理系統(tǒng)
中圖分類號:TP 393 文獻標識碼: A 文章編號: 2095-2457(2018)36-0055-003
DOI:10.19694/j.cnki.issn2095-2457.2018.36.023
Design and Implementation of Intelligent Management System for Electronic Components in University Laboratories
CHI Xiao-yu PENG Ze-shun SHA Yi ZHANG Li-li
(National Computer Experimental Teaching Demonstration Center,College of computer science and engineering, Northeastern University, Shenyang Liaoning 110819, China)
【Abstract】With the development of computer technology and the Internet, computer-aided management has become a trend of education reform in the future. Drawing on the current advanced computer technology, reforming backward experimental component management methods, and using scientific methods to manage components, a laboratory intelligent management system has been developed for this purpose, which can effectively classify various components and manage them. This system allows quick retrieval of component locations. The laboratory wisdom management system adopts the separation of front and rear ends to build a responsive page and a dynamic web page, taking into account the use of mobile and computer. It can realize the intelligent management of components, effectively shorten the time spent searching for components, improve the efficiency of students experiments and the utilization of components, and thus improve the efficiency of laboratory use.
【Key words】Laboratory; Database; Components; Management system
隨著實驗室的全面開放,越來越多學生想要進入實驗室完成一些自主設計實驗,這些要做實物的同學要到實驗儲物柜里取要用的元器件,可是這樣非常容易造成很混亂的局面,各種元器件混在一起,讓人眼花繚亂,況且近年來,隨著我國高等教育的快速發(fā)展,隨著高校學科建設[1]、科學研究工作的快速提高、學校管理變革的推進、儀器設備日益增多,高校的設備資產(chǎn)在數(shù)量和質(zhì)量上都得到了快速增長和提高,在實驗中為學生提供的電子元件和電子設備也日益增多,但元件設備復雜且不方便統(tǒng)一管理,由學生人工搜索某些元件設備耗費時間過長,極大的降低了實驗效率,同時傳統(tǒng)的元器件和設備的存取方式存在諸多類似于過量使用,使用后不歸位等問題[2]。使用效益、經(jīng)濟效益和管理機制問題迫在眉睫,亟需一種高效便捷的實驗室元器件存取系統(tǒng)為其提供保障。同時,實驗室元器件存取系統(tǒng)包括了實名登錄→輸入元器件和設備名稱→查詢元器件數(shù)量及所在位置等過程流程,可快速查詢并取出元器件,既提高了存取效率又保障了元器件的充分且合理使用。
1 系統(tǒng)總體設計
1.1 概述
計算機國家級實驗教學示范中心[3]在實驗室元器件管理方面做了大量工作,各類元器件作為實驗課所必須使用的一部分貫穿了整個實驗課過程,現(xiàn)有的實驗室元器件管理體系經(jīng)過考察發(fā)現(xiàn)仍存在許多不足之處:
(1)現(xiàn)有的元器件管理系統(tǒng)由于未進行實名制管
理,所以存在元器件過度取用的情況,存在浪費現(xiàn)象。
(2)現(xiàn)有的存儲方式主要使用實體柜對元器件進行簡單分類存放,由于沒有計算機輔助所以使得元器件所在位置以及元器件剩余數(shù)量均不能在第一時間被同學知曉,是的同學們找尋元件消耗時間過長。
(3)由于沒有回收監(jiān)督系統(tǒng)使得使用完畢的以及未經(jīng)使用的元器件不能被及時的回收或者再利用,堆放在實驗室內(nèi)造成了實驗室雜亂的現(xiàn)象[4]。
鑒于以上存在的問題,計算機示范中心力爭在實驗元器件智慧管理方面進行改革改善,具體設計方法如下。
實驗室電子元器件智慧管理系統(tǒng)整體分為前后端服務器及硬件系統(tǒng)共三個部分,其中軟件部分采用了前后端分離部署的辦法,前端服務器負責頁面生成及與用戶之間的交互,將交互生成的數(shù)據(jù)通過調(diào)用后端API接口轉(zhuǎn)發(fā)給后端。服務器采用瀏覽器/服務器結(jié)構,是對客戶機/服務器結(jié)構的一種變化或者改進的結(jié)構。在這種結(jié)構下,用戶界面完全通過瀏覽器實現(xiàn),一部分事務邏輯在前端實現(xiàn),但是主要事務邏輯在服務器端實現(xiàn),形成所謂3-tier結(jié)構,而且該結(jié)構不需要Cookie/Session,與Server完全分離,易于維護、擴展。后端服務器負責業(yè)務邏輯,權限控制及提供前端及硬件系統(tǒng)所需要的數(shù)據(jù)。硬件系統(tǒng)負責上傳射頻識別等傳感器經(jīng)過濾所收集到數(shù)據(jù)及執(zhí)行后端服務器傳入的指令。優(yōu)點在于各個前端可以共用一套后端接口,簡化開發(fā)流程,減少資源浪費,一個Server API[5]可以隨意服務多個Web App開發(fā)上與后臺幾乎同步,互相不影響,特別是基于RESTFul API風格,更是減少了溝通的成本前后完全分離,前端開發(fā)者完全不需要關心服務端用了什么技術,只需要一份接口說明文檔即可。
1.2 模型設定
1.2.1 前端模型
前端采用Web服務器[6]軟件Apache及基于PHP語言的開源框架ThinkPHP。Apache是Apache軟件基金會的一個開放源碼的網(wǎng)頁服務器,可以在大多數(shù)計算機操作系統(tǒng)中運行,由于其多平臺和安全性被廣泛使用,是最流行的Web服務器端軟件之一。前端網(wǎng)頁使用HTML,CSS以及JavaScript作為編程語言,采用JavaScript框架JQuery以及前端開發(fā)工具包Bootstrap進行開發(fā)。
1.2.2 后端模型
后端采用C++應用程序開發(fā)框架QT進行開發(fā)[7]。它可用于開發(fā)非GUI程序,比如控制臺工具和服務器。QT是面向?qū)ο蟮目蚣懿⑶以试S真正地組件編程。該模型向外采用HTTP協(xié)議及Socket接口,采用JSON進行數(shù)據(jù)交換;向內(nèi)分為三個部分,即通信部分、管理控制部分與數(shù)據(jù)存儲部分。
1.2.3 硬件模型
硬件采用以stm32開發(fā)板[8]為中心,使用ESP8266網(wǎng)絡通信模塊作為通信單元,以HTTP作為與數(shù)據(jù)處理服務器的通訊方式,RC522芯片作為射頻識別芯片進行RFID感應。分為通信部分、邏輯控制部分、管理部分進行構建。硬件系統(tǒng)結(jié)構圖如圖1所示。
2 系統(tǒng)模塊實現(xiàn)及功能
2.1 前端服務器設計
前端服務器即網(wǎng)頁服務器分為兩部分進行實現(xiàn),其中前端網(wǎng)頁采用了HTML、CSS以及Javascript語言進行編寫,后端采用PHP語言的開源框架ThinkPHP,主要用于與用戶以及后端服務器進行交互。其中后端程序主要功能包括:元件取用部分以及元件管理功能,借還功能以及用戶管理功能,實現(xiàn)了對于元器件的借還管理以及用戶實名制信息管理等功能,前端網(wǎng)頁部分主要包括用戶登錄注銷、元器件位置智能檢索等功能
2.2 后端服務器設計
數(shù)據(jù)處理服務器采用基于C++語言的跨平臺開發(fā)框架QT進行編寫,向外采用Http協(xié)議及Socket接口進行通信連接,采用JSON進行數(shù)據(jù)交換;向內(nèi)分為三個部分,即通信部分、管理控制部分與數(shù)據(jù)存儲部分。通信部分采用HTTP請求作為作為QT服務器與HTTP服務器的通信方式,采用TCP SOCKET請求作為QT服務器與客戶端服務器的通信方式。在后端服服務器中嵌入了用戶管理模塊以及物品管理模塊兩部分,實現(xiàn)對用戶和物品的實時信息管理。并且使用數(shù)據(jù)庫進行相關信息的記錄。后端服務器程序結(jié)構如圖2所示。
2.3 硬件部分設計
以STM32單片機為主體,ESP8266芯片為通信模塊,RC522模塊為RFID讀寫模塊。STM32控制電子鎖與用戶交互,通過通信模塊與服務器進行Socket通信。RFID模塊近場讀取器件識別號,也由通信模塊向服務器傳輸數(shù)據(jù)。服務器進行數(shù)據(jù)分析并通過指令的下發(fā)進而實現(xiàn)柜門打開。ESP8266芯片采用LUA腳本進行編程,使用I2C協(xié)議與STM32單片機及RC522模塊通信;STM32單片機采用C語言編程,采用中斷函數(shù)及看門狗保證單片機的效率和穩(wěn)定性。
3 系統(tǒng)軟件調(diào)試
測試使用LoadRunner和Postman在阿里云服務器ECS環(huán)境[9]進行測試。
LoadRunner是一種預測系統(tǒng)行為和性能的負載測試工具。通過以模擬上千萬用戶實施并發(fā)負載及實時性能監(jiān)測的方式來確認和查找問題,最大限度地縮短測試時間,優(yōu)化性能和加速應用系統(tǒng)的發(fā)布周期。
項目使用LoadRunner模擬上線運行時服務器的負載。將項目部署到阿里云進行運行,以下為LoadRunner 模擬同一實驗室所有電腦(約50臺)同時訪問時服務器壓力測試結(jié)果如表1所示,發(fā)包率及收包率對比如圖3所示。通過表格可以看出平均事務響應時間的詳細信息,在整個事務中,93%的用戶在進行操作時,服務器相應時間均維持在2.5秒左右。其中服務器網(wǎng)絡帶寬平均1.07Mbit/s,CPU平均占用60%,響應速度可以滿足項目需求。
Postman是一款功能強大的網(wǎng)頁調(diào)試和API開發(fā)測試的工具。其能夠發(fā)送任何類型的HTTP請求,附帶任何數(shù)量的參數(shù)和請求頭。支持多種認證機制并擁有強大的跨平臺特性。
項目使用Postman進行單獨API接口的性能測試及正確性測試,圖4為對部分通用API接口的測試結(jié)果。
4 結(jié)束語
本文基于實驗教學示范中心建設應以培養(yǎng)學生實踐能力、創(chuàng)新能力和提高教學質(zhì)量為宗旨,以實驗元器件管理機制改革為核心,以實驗資源充分利用為基礎,以高素質(zhì)實驗教學隊伍和完備的實驗條件為保障,創(chuàng)新元器件管理機制,利用計算機輔助教學的理念,全面提高實驗效率和實驗室使用效益。
【參考文獻】
[1]張曉寧.國家級實驗教學示范中心建設狀況[J].實驗室研究與探索,2009,28(10):85-89.
[2]毛福新,郭曉河,顧小佳.電子元器件管理裝置的研究與應用[J].設備管理與維修,2018,3:148-149.
[3]創(chuàng)建高水平實驗教學示范中心的實踐[J].實驗室研究與探索,2007,26(04):93-95.
[4]邵乙迪,蔡戩,王衛(wèi)東.電子元器件管理計劃應用分析[J].電腦知識與技術,2017,13(32):257-258.
[5]關玉蓉.基于可視化平臺的API接口研究[J].科技廣場,2015,6:26-29.
[6]任晨曦.WEB服務器集群系統(tǒng)的設計與實現(xiàn)研究[J].信息與電腦,2018,12:97-98.
[7]韓冬.基于嵌入式Linux與QT的微型生化分析儀界面軟件設計[J].自動化技術與應用,2016,3508:63-66.
[8]劉彤.基于STM32的智能數(shù)據(jù)處理裝置的硬件設計與實現(xiàn)[J].電子世界,2018,11,195-197.
[9]姜文,劉立康.軟件調(diào)試問題研究[J].計算機技術與發(fā)展,2017,8:1-6.