1. 引言
电子元器件是电子信息类创新实践活动的必备物料,具有种类多、体积小、易损耗和价格昂贵等特点 [1]。实验室电子元器件管理工作一般设立专人负责,通过人工记录电子元器件的领取和余量等信息,便于后期的使用统计分析与及时补给。基于人工的电子元器件管理模式存在着耗时耗力、维护难、效率低和成本高等问题,亟需开发一套电子元器件智能管理系统,提高元器件管理的智能化水平和工作效率。
基于物联网和计算机技术的智能管理系统已经广泛应用于工业 [2]、农业 [3]、交通 [4] 和教育 [5] 等领域,基于硬件数据采集的智能管理系统 [6] 是完全可行的。刘升涛 [7] 利用RFID射频识别技术实现了工具智能管理系统,采用QT语言和SQLite数据库开发了上位机应用软件,完成了工具的盘点、借用归还管理等功能。刘婷等 [8] 利用RFID超高频技术完成了基于C/S架构的药品生产管理,具有药品错误流通检测等功能。基于RFID的目标识别技术主要是在发射天线范围内目标电子标签被激活,进而实现信息的读写和解析,该模式受目标数量、天线范围等影响较大,且开发成本较高,不适合电子元器件的智能管理。以电子信息类实验室常用电子元器件为对象,开发电子元器件智能管理系统,通过自动获取用户身份及其元器件领用和存放信息,实时显示元器件的库存信息,实现电子元器件的智能化管理,提高电子信息类实验室管理效率。
2. 电子元器件智能管理系统的开发
2.1. 系统开发整体方案
设计并开发一套电子元器件智能管理系统,该系统主要由电子元器件智能存储柜、云服务器端和电子元器件远程管理平台三部分组成。其中电子元器件智能存储柜由STM32F103ZET6主控电路、基于称重传感器的元件自动计数电路、HX711高精度A/D转换、RFID身份识别电路、M3语音播报电路、本地交互与显示终端、ESP8266无线传输电路和系统电源模块组成,具有电子元器件自动计数、用户身份识别、本地显示、语音播报、数据无线传输和柜门自动控制等功能。电子元器件智能存储柜负责采集用户身份和电子元器件领、存信息,并将数据上传至服务端;服务端负责电子元器件智能存储柜数据接收,调用MySQL数据库进行数据保存,同时作为网络服务端负责对Web客户端的HTTP请求进行处理;Web客户端负责信息可视化,向服务端发起请求实现信息获取并渲染用户操作页面。系统总体设计框图如图1所示。
Figure 1. Overall block diagram of electronic components intelligent management system
图1. 电子元器件智能管理系统总体框图
2.2. 云服务器的建立
2.2.1. 应用服务器的搭建
应用服务器端用于处理Web端的请求、更新元器件数据等。所有用户数据、元器件信息、存取历史等数据都存放在数据库中,用户登录、元器件信息的浏览和查询等操作都需要读取数据库,应用服务器需要不断地处理大量数据以完成对用户请求的响应。本文采用SSM框架搭建在Tomcat服务器 [9] 上作为Web的后端服务器。
SSM框架是Spring、Spring MVC和Mybatis框架的整合 [10] [11],是标准的MVC模式。SSM框架结构由Dao层(mapper)、Service层、Controller层和View层组成。SSM框架使用Spring实现对象管理,使用Spring MVC负责请求的转发和视图管理,Mybatis作为数据对象的持久化引擎 [12]。
本系统使用项目依赖管理工具Maven搭建项目,引入Mybatis核心、junit测试、MySQL驱动、spring-webmvc、serlvet等依赖,同时加入Tomcat、与maven相匹配的JDK插件,引入Spring容器和SpringMVC的配置文件,以实现在web.xml中读取Spring和SpringMVC的配置文件。
2.2.2. 数据库的建立
本文选择使用MySQL搭建电子元器件智能管理系统数据库,该数据库对用户使用智能元件柜操作信息进行记录管理。电子元器件数据库主要实体包含了用户、元器件和取用单。其中用户信息包括用户ID、管理权限、姓名、性别、联系电话和所属部门等信息;元件信息包含元件ID、元件名称和元件数量;取用单信息包含取用单ID、元件ID、取用数量、用户ID和取用日期等。具体E-R关系图如图2所示。
2.3. 电子元器件远程管理系统的开发
2.3.1. 电子元器件远程管理系统整体设计方案
电子元器件远程管理系统主要包括用户权限管理、基础信息维护模块和信息查询统计模块,远程管理系统的框架结构如图3所示。
用户权限管理:采用二级管理模式,分为普通员工和管理员。普通员工仅能查询元器件库存情况,管理员还具备对员工信息和元件信息进行增删改的操作。在成功登录后,跳转至系统主页界面,根据用户权限显示不同的主界面。
基础信息维护:主要包括人员的添删和元件的信息维护;可以在管理员模式下对使用系统的用户信息进行更改,同时也能对元件货柜中的元件个数进行查询维护,并及时将数据与云服务器进行同步。
信息查询统计:在服务器中存储的元件领取信息、人员信息可以在该模块中调用显示,做到电子元器件查询和用户领取数据可追溯。
Figure 2. Database E-R diagram of electronic components intelligent management system
图2. 电子元器件智能管理系统数据库E-R图
Figure 3. Structure diagram of electronic components remote management system
图3. 电子元器件远程管理系统结构图
2.3.2. Web端具体实现
电子元器件远程管理系统使用Web搭建,基于Vue [13] 框架设计前端界面。使用技术栈还包括:Vue-router实现界面路由跳转,Vuex状态管理模式库实现子组件之间的互相控制,Element-UI作为网页UI主题设计以及布局,Ecahrts表格实现数据可视化,axios实现拦截后端返回数据,二次封装axios提高使用的便利性。通过Token保存元件信息,减少不必要的交互信息数量,提升系统健壮性。开发时使用 Mock模拟数据,实现前、后端开发完全分离,高度降低整个系统的耦合性。
3. 电子元器件智能管理柜的开发
电子元器件智能管理柜硬件部分主要由称重计数电路、RFID射频识别电路、语音播报电路、可控柜门电路、本地数据显示电路、无线传输电路、MCU等部分组成。MCU同时接收三个称重传感器产生的数据并处理分析,控制RFID射频识别电路判别用户身份启动管理柜,控制可控柜门并且检测柜门的状态来判断用户取用进程,并且控制语音播报电路告知用户系统状态,用户通过触摸屏与系统交互,取用操作结束后MCU控制无线传输电路将数据上传到云服务器。称重计数电路用线性电源供电,其他硬件部分用开关电源供电。具体结构示意图如图4所示。
Figure 4. Hardware block diagram of intelligent management cabinet for electronic components
图4. 电子元器件智能管理柜硬件框图
3.1. 基于称重传感器与HX711的元器件计数电路设计
3.1.1. 电子元器件自动计数电路的理论分析
目前称重传感器 [14] 的种类主要有电阻应变式、光电式、液压式、电容式、电磁力式、磁极变形式、板环式等类型,其中电阻应变式传感器具有准确度高,测量范围广,生产成本低廉等优点,故本系统选用该类型传感器作为称重传感器。
针对电阻应变式传感器存在零漂和应变极限,导致输出信号较弱的问题,本系统采用了双孔平行梁式传感器 [15],以扩大传感器线性测量范围,提高传感器测量精度,其结构如图5所示。金属梁上开有两个孔,在上下对称位置贴有四个应变片A、B、C、D,传感器在受到由元器件重力产生的压力时,四个应变片会分别产生应变,其应变量会相互累加输出,从而达到扩大应变的效果。
将传感器上的四个应变片电路简化成如图6所示的全桥差动电路,该电路中四个应变电阻R1、R2、R3、R4初始值相等,当传感器受到压力产生形变之后,电阻产生应变,电阻改变量记作ΔR1、ΔR2、ΔR3和ΔR4,此时该电桥的输出电压为:
(1)
Figure 5. Structure diagram of the double-hole parallel beam sensor
图5. 双孔平行梁式传感器结构图
Figure 6. Full-bridge differential circuit diagram
图6. 全桥差动电路图
通过测量B-D之间的电压输出,结合公式1分析计算得到应变电阻改变量,再根据应变电阻特性可以得到此时传感器受到的压力大小。
3.1.2. AD转换模块的设计
HX711是一款24位A/D转换芯片,专门为高精度电子秤设计,具有集成度高、响应速度快、抗干扰能力强等优点 [16]。HX711芯片内置低噪声可编程放大器,可对输入信号进行不同增益的放大处理,以满足微弱差分信号的测量要求,降低称重电路成本。因此,本系统采用该芯片作为A/D转换模块的主芯片,以提高系统的测量精度和可靠性。
电子元器件智能管理柜需要对多个不同种类的电子元器件进行称重计数处理,故需要设计多路传感器输入,以实现数据的分路处理。使用多片HX711芯片集成,每路芯片A通道输入该通道传感器数据,片外置三极管S8550稳定输入参考电压,通过R1、R2两颗电阻分压输入VFB管脚作为基准电压,通过DOUT数据管脚、PD_SCK时钟管脚与单片机进行数据通信。AD转换模块原理图设计如图7所示。
Figure 7. Schematic diagram of AD conversion module based on single-chip HX711
图7. 基于单片HX711的AD转换模块原理图
3.2. 电子元器件智能管理柜的制作与控制
用户识别部分主要采用射频识别技术 [17] (Radio Frequency Identification, RFID)进行用户身份的判别。RFID的读写器将无线电载波信号经过内置的发射天线向外发射。用户将含有自身信息的射频卡靠近RFID读写器,当进入到发射天线的可读写范围时,射频卡内部的电子标签被激活,此时射频卡和读写器进行信息交换,读写器对接收到含有用户身份信息的信号进行识别解码,送往主控MCU,MCU根据特定的用户识别码给予操作权限。
为提高系统的可交互性,本系统采用M3语音播放模块作为语音播报电路,在5 V电压下最高可驱动8 Ω 3 W的喇叭进行语音播放,能将预存在TF卡内的语音提示进行实时播报,用于提示系统使用状态。使用淘晶驰X5系列10寸电容串口屏作为显示屏幕,利用USART HMI开发设计了六个界面可显示库存信息、用户身份信息和元件领用信息等。
为了实现电子元器件柜和云端服务器相互连通,本系统选择使用ESP8266通过WiFi与互联网相连,将本地数据通过HTTP协议传输到服务器,并保存在数据库中。
本系统中,语音播报电路、可控柜门电路、本地数据显示电路的运行电流较大,但对电源纹波要求不高,所以采用开关电源进行供电。称重计数电路属于高精度AD转换电路,电源纹波会直接影响基准电压,从而使采集结果不准确,故使用电源纹波较小的线性电源为称重计数电路供电。电子元器件智能管理柜实物图如图8所示。
Figure 8. Physical drawing of intelligent management cabinet for electronic components
图8. 电子元器件智能管理柜实物图
智能元件柜MCU使用单片STM32F03ZET6芯片作为主控,当智能管理柜上电启动后,首先对各个硬件设备初始化,初始化完成后控制RFID射频识别用户身份IC卡信息,成功识别后MCU获得用户信息标识码,之后等待用户使用元器件柜,用户使用完成后,系统自动统计用户取用元件信息,将更新本地信息至串口屏显示,并将数据上传至云服务器。主程序流程图如图9所示。
4. 系统测试与结果分析
4.1. 电子元器件称重计数电路测量与分析
称重计数电路的测量精度直接影响系统的应用价值。利用已校准过的数字电子秤对FR307二极管、SMA头和接线端子三种常见电子元器件进行多次不重复的个体测量发现,FR307二极管、SMA头和接线端子三种电子元器件的平均重量为1.1 g、1.7 g和3.1 g。系统测试时分别采用5个、20个和50个元器件进行测量,并根据自动测量结果与实际数据计算计数准确率,测量结果如表1所示。
Table 1. The results of weighing counting circuit measurement
表1. 称重计数电路测量结果表
由表1可知,称重计数电路在5.5 g~62 g量程内计数准确率可达100%,但随着元器件数量的增加,称重传感器的测量累计误差变大,使得称重计数电路的计数准确率有所下降。称重计数电路在155 g量程内计数准确率为98.8%,可以满足电子元器件的智能管理需求。
4.2. RFID射频识别电路的测量与分析
RFID射频识别电路是用户与电子元器件管理系统交互的主要部分之一,其响应速度和准确率直接影响了用户的使用体验。使用系统授权卡和非授权卡分别进行RFID识别测试,记录刷卡到柜门打开的响应时间,并统计与授权权限相对应的柜门打开或未打开的准确次数,计算平均响应时间和识别成功率,测试结果如表2所示。由表2可得,RFID授权卡的平均响应时间为2.43秒,对于授权卡和非授权卡识别成功率均为100%,满足系统设计需求。
4.3. 电子元器件智能管理系统功能测试
对电子元器件智能管理系统进行整机测试,测试内容主要包括系统功能、系统提示信息的准确性和系统响应时间等方面。系统测试结果如表3所示,远程管理系统部分功能示意图如图10所示。由表3所示的系统测量结果可知,电子元器件智能存储柜具有RFID身份识别、柜门自动控制、语音播报、元器件自动计数、数据上传等功能。
待用户存放或领用电子元器件后,系统将数据通过WIFI实时传输至远程服务器,并将用户信息、元器件种类、数量和时间等信息存于数据库中。开发的电子元器件远程管理系统具有用户管理、数据存储、元器件查询、历史数据可追溯可导出等功能。系统数据上传并显示的平均响应时间为3秒,可满足系统的实时性要求。
Figure 10. Schematic diagram of the electronic components remote management system
图10. 电子元器件远程管理系统部分功能示意图
5. 总结
本文设计与开发了一个电子元器件智能管理系统,该系统由电子元器件智能管理柜、数据云服务器端和远程管理系统构成。采用SSM框架搭建后端服务器,系统数据库使用MySQL;利用Vue框架开发Web端;利用单片机应用开发与传感器技术制作了电子元器件智能存储柜。当RFID识别用户信息后,智能柜柜门自动打开。用户可通过本地人机交互屏查询电子元器件当前库存,待用户领取电子元器件并关闭柜门后,系统自动进行计数并语音播报用户领取信息,数据更新至本地显示终端,同时通过无线传输将数据发送至服务器的数据库,记录领取用户的身份、时间和领取信息等。关闭柜门后,系统进行本地数据更新和远程数据更新的平均响应时间为3秒,系统在155 g量程范围内平均计数准确率为98.8%。
该系统实现了电子元器件的自动计数、信息查询和领用信息记录等功能,系统响应时间短,页面简单友好,易扩展,移植性较强,为电子元器件智能管理提供思路,后期可通过增加元器件种类和优化系统集成度来提高系统的应用价值。
基金项目
浙江省高等教育“十三五”教学改革研究项目(jg20190138);国家级大学生创新训练项目(202110338020)。