黄江虹,余敏建
(空军工程大学,陕西 西安 710051)
高等院校担负着培养高级技术人才和出高质量科研成果等多重任务,而实验室承担着繁重的实验教学和科研任务,实验室建设的好坏,对教学、科研和人才培养的质量将产生直接影响。高等院校实验室建设近年来在国家和地方的大力支持下取得较大发展,各种引进和国产新型实验器材陆续装备到实验室,使实验室仪器设备在数量和质量上都有很大提高。针对仪器设备精度高、数量多等特点,如何更科学合理地管理仪器设备,充分利用仪器设备资源,使之更好地为教学、科研服务已成为当前高校仪器设备管理需要解决的问题。
文中以开发实验室仪器设备管理信息系统为背景,探讨了仪器设备管理信息系统模型的设计、系统功能的划分以及QR二维码生成与识别技术在仪器设备管理中的应用等问题。
仪器设备管理信息系统首先对信息进行加工和采集,从而为管理人员提供更加准确的信息,其次将这些信息通过程序进行反馈,对信息进行及时的管理[1],实现资源利用最大化的效果。系统采用自顶向下结构化的设计方法,在局部环节使用原型法和面向对象的方法。根据高校仪器设备管理的需要,系统采用浏览器/服务器(B/S)的结构模式。B/S模式作为一种较为成熟的体系结构,以应用服务器为控制部件,通过浏览器友好的服务用户界面提供透明的网络服务[2],B/S客户端只需要装上操作系统和浏览器,就可以在服务器上进行所需要的软件开发、维护等工作,极大提高了工作效率[3]。整个系统可分为实验室与资产部门级和实验室级两个级别。实验室与资产部门级主要对仪器设备数据进行维护和管理,以及从整体的角度进行数据分析和统计。实验室与资产部门还可实现通过智能终端进行现场数据的采集,从而检查各实验室仪器设备状况,同时负责各实验室仪器设备二维码的打印和分发。智能终端可连接移动网络,支持Android操作系统,通过无线网与服务器进行数据交互。实验室与资产部门用户登录后具有最高操作权限。实验室管理用户登录后的功能主要是对本实验室的仪器设备数据进行维护管理。
目前,高校实验室仪器设备管理多为人工记录管理模式,仪器设备采用的纸质标签内容简单,仅包含设备型号,启用时间,责任人信息,对于巡查设备人员指导意义不大。要了解仪器设备更多信息,需要管理员查找相关资料,或登录系统后台进行调阅,缺乏良好的监控与管理手段,无法有效保证巡视工作的质量与效率。另外,巡视过程中的巡查信息多为手工记录,不能保证内容的确切和完整性,且易因为记录的内容分散,造成资料的丢失,不利于系统中仪器设备信息的及时更新与管理。
为解决以上问题,在开发实验室仪器设备管理信息系统的基础上,重点研究了二维码及智能终端的应用技术。该应用技术是在计算机应用实践中产生和发展起来的一种自动识别技术,是为实现对信息的自动扫描而设计的,是实现快速、准确而可靠地采集数据的有效手段。二维码技术和智能终端的应用解决了数据录入和数据采集的“瓶颈”问题,为仪器设备管理提供了有力的技术支持。
整个系统以实验楼局域网和校园网为依托,系统服务器设在实验室与资产部门,服务器直接接入校园网主干。系统用到的网络拓扑结构如图1所示。
图1 系统网络拓扑
数据库在数据库管理系统(DBMS)下完成对仪器设备信息的存储、检索、更新、加工与统计等功能。数据库是仪器设备管理信息系统的核心,能否建立一个好的数据库,使其能够迅速、准确地查找所需要的数据,是衡量仪器设备管理信息系统的主要指标之一。系统采用分布式数据处理技术。长期性数据和共享性数据存储在后台,同时后台还存储数据处理视图、存储过程、触发器等关键信息;为了减轻网络负荷、提高数据处理的高效与安全性,系统运行过程中临时表与码表存储在本地,临时表大量用于数据输入、数据检索和报表生成时数据的存储,其作用主要有:减少数据传输量,数据修改及恢复,后台数据与本地数据成块传输,等等[4]。数据库采用对象关系型数据库管理系统PostgreSQL,它作为开源DBMS,在成本和安全方面有其独特的优势[5],运用基于COM的ADO技术进行数据库的连接,与传统的数据库访问技术相比,该技术具有较好的灵活性和通用性,并且编程简单,容易实现,直接对数据库的驱动程序进行访问,大大提高了数据库的访问速度[6-7]。数据库实体关系图及主表字段设计如图2和表1所示。
表1 设备基本信息表
图2 数据库实体关系图
按操作权限,系统分为实验室与资产部门软件和实验室级软件。从开发角度看,实验室级软件是在实验室与资产部门级软件的基础上稍作功能配置修改而成,分为两个操作权限层级的软件,不会增加开发难度。文中以实验室与资产部门级软件为例介绍系统各功能模块。
仪器设备管理信息系统分为系统维护和仪器设备信息维护两大部分,下面分别对每部分包含的功能模块进行介绍。
2.3.1 系统维护
(1)实验室信息维护模块。维护实验室的基本信息,包括实验室的编号、实验室名称、实验室所属系、位置、负责人以及实验室电话等信息。其中实验室编号呈树状分布,父节点是系和系一级单位编号,子节点是各系所属实验室编号,这样形成单位树,从而便于管理员通过单位分类查找。
(2)标准代码维护模块。维护系统所需的标准代码。系统采用标准代码便于规范化管理,有利于防止脏数据录入到数据库中,有利于仪器设备信息搜索、统计等操作。
(3)操作权限维护模块。维护各实验室管理员的登录名、登录密码以及操作权限等。通过操作权限的维护可以使各实验室只能管理本实验室仪器设备的相关数据。
2.3.2 仪器设备信息维护
(1)设备基本信息模块。以单位树的形式显示各实验室仪器设备的基本情况。可按仪器设备名称、规格型号、状况等属性分组显示相关信息,同时提供对仪器设备基本情况的数据查询、数据过滤、数据排序、统计分析等功能。可以将列表中的数据导入Excel文件或直接打印列表中仪器设备的基本信息。在基本信息录入时可进行批次录入,录入的数据按实验室自动编号,同时可以录入仪器设备供应方的相关信息。通过以上功能能够有效、快捷、方便地对仪器设备基本信息进行管理、查询。
(2)设备变动登记模块。登记仪器设备变动情况,同时可对仪器设备变动信息进行查询、过滤、排序、统计分析等。仪器设备变动记录可以导入Excel文件,也可打印仪器设备变动的相关信息。
(3)设备修理登记模块。登记仪器设备故障及修理情况。可分类查询、打印、统计仪器设备故障及修理信息,也可导出相关信息的数据。
(4)检查登记模块。登记上级单位对实验室检查结果。提供查询、统计、打印、导出数据等功能,同时在本模块中完成系统与智能终端数据交换,使智能终端上的检查结果数据自动录入到数据库中,并在该模块中显示检查结果。可通过无线网连接对智能终端软件进行设置、上传下载数据以及数据清空等操作。
(5)打印二维码模块。可单条打印、全部打印、任意指定打印数据库中仪器设备的二维码,并提供二维码的打印预览。
(6)报表打印模块。根据数据库信息预览、打印各种制式报表。
(7)提示栏。提示数据库中待修的仪器设备等信息。通过设置,可以使提示栏在开机时自动运行,也可在运行系统程序时启动。
(8)报废设备登记模块。提供已报废仪器设备相关信息的查询、打印、统计等操作。
(9)供应方信息模块。提供仪器设备供应方信息,如供应方名称、地址、联系方式、负责人等,同时提供相关信息的查询、打印等功能。
二维码技术最早是由日本在20世纪70年代提出的,它使用黑白矩形图案来存储数据[8]。目前,二维码在许多领域应用广泛,取决于它信息产生的独立性,独立于数据库,低成本,且易制作[9]。二维码技术是在传统的一维条码无法满足应用需要的过程中发展起来的一项重要的自动化识别技术[10]。通过将仪器设备编码并且打印二维码标签,将每台实验仪器设备都纳入基于二维码的管理信息系统中,不仅便于仪器设备跟踪管理,也有助于提高管理效率,杜绝仪器设备无序、混乱等问题。同时,由于二维码具有很强的保密防伪性,所以仪器设备的信息安全得到了有效保障。
目前,常见的二维码有PDF417、QR Code、Code 49、Code 16 K、Code One等20余种[11]。其中QR(quick response)码因其快速识读、纠错能力、成本低等优点被广泛应用[12],可使用光学识读器(例如相机、扫描仪等)对QR码进行识读[13]。文中仪器设备编码采用QR码,作为每个仪器设备的唯一ID。
智能终端采用Android操作系统,采用SQLite数据库。SQLite以体积小巧、快速高效、稳定可靠、移植性好等优势成为嵌入式数据库领域的新宠[14],嵌入式设备是SQLite应用的主要场景,典型代表为Google的Android[15]。服务器端和智能终端数据交换格式采用XML。智能终端APP采用Java语言进行编程。
3.2.1 二维码标签生成
仪器设备的编码采用字母和数字混合的方式,其中,前三个字母代表学校简称,中间两个字母代表学院简称,数字从左到右的具体意义如下:第一到第二位代表实验室;第三到第四位代表设备类型;第五位代表仪器来源;第六到第十位代表在同一实验室中同类型设备的序号,其具体意义如图3所示。
打印二维码标签不需要专用二维码标签打印软件和二维码标签专用打印机,可使用系统中设计的二维码标签打印功能配合激光打印机打印,打印材料采用A4不干胶标签纸。系统中嵌入二维码打印功能,在打印时系统能自动录入需要打印的信息,这样既降低了系统成本,又使打印二维码标签工作简单、快捷。源代码中生成二维码标签的函数为void GenerateQRCodeLabel(CString strCode,CString strEqName,CString strEqModel,CString strLabName,CString strStartTime,CString strClg),参数含义分别是设备ID号、设备名称、设备规格型号、实验室、启用时间和单位名称。函数实现过程是首先存储二维码字符串,将字符串信息转换为二维码信息,初始化bmp头文件,并将二维码数据赋值给bmp,然后画出二维码图片,以及二维码标签的表格信息,包含设备名称、规格型号、实验室名称、启用时间等。二维码标签如图3所示。
图3 仪器设备二维码标签及编码意义
3.2.2 智能终端应用程序设计与实现
智能终端应用程序主要类设计如图4所示。
图4 智能终端应用程序类图
智能终端APP开发主要涉及以下内容:
(1)SQLite数据库设计:主表字段包括仪器设备编码、仪器设备状况、检查日期等。字段设计还包括设计字段的长度、类型等。
(2)APP操作界面设计:界面设计时做到方便易用,对需要手工输入的字段作出操作提示,对检查日期取系统时间,用户不必再手工输入。
智能终端的使用设计流程是智能终端与服务器通过无线网络连接进行数据库同步,将服务器端的仪器设备信息同步到终端的SQLite数据库。终端APP支持二维码扫描,通过自动解析二维码信息,匹配数据库中的仪器设备信息,在APP中显示该仪器设备相关信息。通过APP界面,巡查人员可更新仪器设备状态等巡查信息,支持APP拍照,通过图像记录仪器设备当前状态,同时,仪器设备ID号与图像存储路径关联。巡查结束后,通过无线网将智能终端中更新的仪器设备信息,包括现场图片,实时同步至服务器数据库。APP操作界面如图5所示。
图5 智能终端APP操作界面
测试环境服务器端配置为x3850 X6,CPU 1.9 GHz,内存32 G,Windows Server 2008 R2操作系统,数据库采用PostgreSQL9.6;桌面端配置为i5CPU,内存8 G,硬盘1 T,Windows7专业版操作系统,使用VC2010对二维码生成算法进行编辑和运行;智能终端2 G运行内存,64 G存储内存,Andriod5.0操作系统,数据库采用SQLite3.19。
(1)二维码标签打印功能。
选择数据库中任一或多个仪器设备,点击打印标签功能按钮,系统自动根据设备ID号、设备名称、设备规格型号、实验室、启用时间和单位名称生成对应的二维码标签,并提供打印预览。
测试结果表明,与原先的纸质标签相比,通过二维码标签能得到更多的仪器设备信息,对巡检人员具有较好的指导意义,减少了仪器设备资料的查询时间。
(2)数据库同步功能。
更新服务器端的仪器设备信息,通过无线网与智能终端数据库进行同步,在智能终端数据库中查看服务端已更新的仪器设备信息,显示更新后信息,表明同步成功;更新智能终端数据库仪器设备信息,查看服务器端数据库,也可实现数据库的实时同步。
测试结果表明,服务端和智能终端数据库的实时同步,避免了先手工记录,然后录入系统的弊端,提高了仪器设备信息更新的及时性与准确性。
(3)智能终端APP应用功能。
打开智能终端APP,通过扫码功能扫描仪器设备二维码标签,在APP界面显示数据库中该仪器设备相关信息,在操作界面可对信息进行补充或更新,可拍照记录仪器设备状态,点击“保存”按钮更新仪器设备信息至数据库。
测试结果表明,智能终端APP的应用方便了仪器设备信息的采集和录入,保证了日常巡视及定期检查工作的质量和效率,解决了仪器设备管理低效的问题,提高了仪器设备管理水平。
针对目前高校实验室仪器设备管理中的实际问题,在对仪器设备管理信息系统的结构模型、网络和数据库设计、功能模块进行分析的基础上,提出了一种基于二维码和智能终端的仪器设备管理方法,实现了仪器设备管理工作的标准化、智能化,强化了全过程管控,有效提高了仪器设备管理工作的质量和效率,是实验室仪器设备管理信息系统的一次重要升级。