企业智能无源锁管理APP的设计与实现

2023-07-17 09:30姜佳琪黄凯怡王成庆等
计算机应用文摘 2023年13期

姜佳琪 黄凯怡 王成庆等

摘要:在电力行业中,由于存在大量的锁具需要进行管理,传统的一把钥匙开一把锁的方式极其不便,管理部门无法及时了解维护人员是否对相关设备进行维护,设备的相关操作也无法得到及时的记录与统计。因此,需要综合利用智能硬件、无线通信和互联网技术开发一个智能无源锁管理APP,其通过授权分配开锁权限,蓝牙传送指令信息,并自动上传记录操作。该系统具有锁具易于安装维护、钥匙可授权开任意锁具和操作日志自动实现打卡管理等特点。

关键词:无源锁;蓝牙传输;Android

中图法分类号:TN925 文献标识码:A

1 引言

在企业管理和人们的日常生活中,锁具被广泛应用于保护贵重物品资料。尤其是在电力服务行业中,随着国家智能电网和移动通信基础建设的深入,以集团化运作、集约化发展、精益化管理和标准化建设为特征的管理框架已基本形成[1] ,为维护设备的安全,需频繁使用大量的锁具进行开关操作。随着信息技术和网络技术的发展,特别是Intenet 和多媒体通信需求爆炸式的增长,人们对通信的需求越来越集中在宽带网络和无线通信领域[2] 。而对于锁具庞大数量的需求,低成本、高安全也成为市场的主要考察指标,如何将无线技术融入锁具系统应用是目前主要研究方向。

2 开发背景

在电力服务行业公司中,经常需要管理“输电、配电、变电、送电”等众多设备,这些设备分布区域广,并且要定期对其进行巡检和维护。为保护这些设备的安全,通常需要对一些设备安装锁具。

传统市场大部分以机械锁为主,机械锁芯装配工艺复杂,通过转动钥匙机械带动锁芯齿轮完成开锁,容易被钢丝等工具盗开,结构安全性不高。

随着技术的发展与提升,在国内外市场上出现了利用信号采集和处理的电子锁,将人体的指纹和虹膜等唯一特征与锁具相结合,研制出保密安全性能较高的指纹锁、人脸识别锁等[3] 。但由于其成本较高、价格昂贵,其发展与推广也受到了一定程度的制约。

由于设备众多,传统的一把钥匙开一把锁的方式导致设备巡检人员需要随身携带众多钥匙,巡检过程非常不方便,管理部门也无法及时了解巡检人员的工作情况,给设备安全运行留下了隐患。因此企业急需一套新型锁具系统以解决上述问题,且通过中研网数据分析统计,智能无源锁正处于市场起步阶段,其拥有良好的市场前景。

3 技术介绍

本文企业智能无源锁管理APP 同时适用于Android 和iOS 系统,前端使用h5 语言以及MUI 框架实现页面,后台使用springboot 并结合MYSQL 数据库技术进行实现。

3.1 MUI 框架

MUI 是Dcloud 官方推出的一个基于“html5+”标准的框架,同时拥有h5 组件和原生组件,是最接近原生APP 体验的高性能前端框架。MUI 原生组件依赖于“ html5 +” 运行环境, 也就是原生APP 里面的webview 组件(能加载显示网页,可以将其视为一个浏览器),所以MUI 里面的原生组件不能用于浏览器环境[4] 。

开发者可以根据自己的需要进行代码适配,对于APP 使用增强的原生组件,以及普通浏览器里面运行的页面使用h5 组件。同时用户还可以使用mui.os.android,mui.os.ios 及mui.os.wechat 对平台进行检测,然后书写不同的逻辑代码。

3.2 Spring Boot 框架

Spring Boot 是由Pivotal 团队提供的全新框架,其设计目的是用来简化新Spring 应用的初始搭建以及开发过程。该框架使用特定的方式进行配置,从而使开发人员不再需要定义样板化的配置[5] 。Spring Boot基于Spring4.0 设计,不仅继承了Spring 框架原有的优秀特性,而且还进一步简化了Spring 应用的整个搭建和开发过程。另外,Spring Boot 通过集成大量的框架使依赖包的版本冲突以及引用的不稳定性等问题得到了很好地解决。

3.3 MySQL 數据库

MySQL 是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,以提升速度及灵活性。MySQL 所使用的SQL 语言是用于访问数据库的最常用标准化语言[6] 。MySQL 软件采用了双授权政策,分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型和大型网站的开发都将MySQL 作为网站数据库。

4 APP 的设计与实现

4.1 需求分析

企业智能无源锁管理APP 通过权限分配任务职责,通过蓝牙连接钥匙,主要实现人员管理、钥匙管理、锁具管理、任务管理、日志管理5 个模块功能。

系统结构由管理平台、移动端app 和智能无源锁具3 部分构成。管理平台负责集中控制,远程授权任务对象并查询相关记录;移动端app 下载任务指令于钥匙,完成开锁操作,并返回相关操作日志于后台;智能无源锁具校验指令正确后执行开关锁操作。系统结构如图1 所示。

4.2 APP 功能设计

根据需求分析,本系统核心功能如图2 所示。其主要实现人员管理、钥匙管理、锁具管理、任务管理、日志管理5 个模块功能。

4.3 系统功能

系统功能包括用户注册登录和个人设置2 部分。

在手机上点击企业智慧无源锁管理软件APP 就自动进入用户登录的界面,从这个界面中用户可以看到用户名和密码需要输入,此外还有记住密码、自动登录、忘记密码3 个选项。待账号密码输入完成后点击登录按钮,若二者匹配正确则进入系统进行操作。如果用户不能正确登录该软件,将无法正常使用软件。登录界面如图3 所示。

4.4 人员管理

人员管理页面显示当前登录用户所在部门的所有员工信息。在系统结构上,部门实行垂直化管理制度,一个系统只设置一个超级管理员,可增删普通管理员与员工,向下兼容具备下级所有职能。各个部门设置相应数量的普通管理员,实行平行化管理,具备相同权限。权限是联系结构的纽带,该系统本质上是实现无源锁芯的开锁与闭锁功能,而任务的授权则依赖于权限的分配。人员信息显示如图4 所示。

4.5 钥匙管理

钥匙管理页面显示当前可用钥匙的基本信息及实时状态。钥匙由管理员账号在移动端APP 添加或批量导入,并存入数据库进行信息存储。管理员可根据其执行权限对钥匙信息进行增删改操作,此外,APP 还提供了钥匙在线更新功能,管理员可通过点击下载文件,从服务器获取最新版本信息的二进制文件,在APP 端借助蓝牙技术对设备进行在线更新。钥匙信息显示如图5 所示。

4.6 锁具管理

锁具管理页面显示部门可用锁具的基本信息及实时位置。锁具信息由管理员账号在移动端添加或在平台上批量导入,APP 根据省市区规划自动生成锁具ID 唯一标识,借助地图插件,实现了对锁具的定位监控,以便企业对线下硬件设备的管理和后期维护。锁具信息显示如图6 所示。

4.7 任务管理

任务管理页面显示当前登录用户的所有任务信息以及完成进度。管理员按照规定步骤创建任务,并将其展示在对应操作人员的页面中,包括操作时间、授权钥匙、待开锁具等信息,对于已完成、已失效及未完成的任务信息将分别展示。操作人员执行任务时将收到后台发送的任务指令,随后通过APP 蓝牙连接,下发至钥匙完成。任务界面显示如图7 所示。

4.8 日志管理

日志管理页面显示当前登录用户的操作记录,根据权限设置不同用户的显示范畴,以及多项查询索引,可根据人员、日期、操作等筛选日志记录,方便查看。同时结合大数据技术对日志信息进行可视化分析。日志管理界面分为用户日志和操作日志。用户日志记录用户登录时间、修改密码、注销时间等信息;操作日志记录开锁、关锁、巡检等信息。日志信息自动上传并生成可视化界面。

普通用户只能看到自己的操作日志,管理员可看到管理部门的所有操作日志。日志首页展示操作时间、操作人、操作方式和执行结果4 项信息。日志管理界面如图8 所示。

4.9 功能实现

4.9.1 软件系统架构搭建

企业智能无源锁管理APP 借助MVC 开发架构,以及APP 端用户通过HTTP 通信方式,请求管理系统后台的相关应用接口通过服务层的处理事务提供相应的服务,在持久层中获取用户所需的数据[7] ,并通过前端页面渲染技术,采用简洁美观的显示方式进行信息展示,以提高整个应用系统的人性化水平。MVC架构如图9 所示。

4.9.2 Shiro 安全验证

针对当前交互主体提交请求,所有的Subject 都绑定到SecurityManager,与Subject 的所有交互最终都会委托给SecurityManager,SecurityManager 是安全管理器,它管理着所有Subject,是Shrio 的核心部件。随后Authenricator,Authorizer 完成对Subject 的验证或角色授权。而Realm 是一个安全实体数据源,用于获取安全实体[8] 。拥有realms,Shrio 就可以知道Subject的信息和数据库的信息是否匹配,它的作用就是得到数据库中的信息。由于对Subject 进行认证和授权都需要调用realm,因此realm 不仅仅相当于数据源,更加包含了认证和授权的一种逻辑。Shrio 处理认证&授权流程图如图10 所示。

4.9.3 ajax 前后端交互

本项目使用MUI 提供的Ajax 工具完成与服务器端的交互。MUI 框架基于htm5 plus 的XMLHttpRequest,封装了常用的Ajax 函数,支持GET,

POST 请求方式,支持返回json,xml,html,text,script数据类型。本着极简的设计原则,MUI 提供了mui.ajax 方法,并在此基础上,进一步简化出最常用的get,getJSON,post 三个方法[9] 。

如图11 所示,先声明服务器url 地址,在headers中声明内容的类型,固定格式为{'Content⁃Type ':'application/ json'},在data 参数中,声明要向服务器端传输的数据,前者为该数据在服务器端的名称,设置timeout 延时,若超过设定时间,则认为数据传输失败。

Success 对服务器端返回数据结果进行相应处理。

5 结束语

“企业智慧无源锁系统”由智能蓝牙钥匙、无源锁芯、手机APP 管理软件及在线管理平台4 部分组成。

系统以垂直模式分配管理权限,手机APP 与蓝牙钥匙进行连接,由管理员在平台创建任务指令并传输到APP,再通过蓝牙下发给钥匙,完成开锁操作,同时根据钥匙返回信息自动生成操作日志,以便后期查看。

结合3D 建模技术实时更新显示企业锁具位置状态,结合大数据统计分析技术对日志数据进行处理,以提供更直观简洁的可视化图形界面。本系统在满足企业需求的同时,提供了更高效快捷的管理模式。

与市面上现有产品相比,该系统存在以下优势。

(1)转移带电载体。将带电载体从锁具转移到钥匙,解决了户外安装不便的问题,且钥匙小巧方便携带。

(2)打破传统锁具与钥匙一对一的局限。通过任务授权,一把蓝牙钥匙可打开万把锁,而同一个锁具也可以被多把钥匙打开,解决了钥匙丢失换锁麻烦、钥匙偷窃安全不保障的问题。(3)自动巡检签到制度。任何操作记录都会自动上传,经处理后生成日志,并结合大数据技术做出分析,管理人员可通过后期查看检查工作人员是否懈工怠工或谎报操作。

参考文献:

[1] 闵雄,赵力.基于NFC 无源供电技术的防误锁具设计及应用[J].机电工程技术,2022,51(8):236⁃238+249.

[2] 郭宇平,郑育君,李平川.无源锁安全管控系统应用于港口行业特殊空间作业的可行性[J].科技资讯,2021,19(26):50⁃53.

[3] 齐永虎,汪娜娜,王帆,等.基于物联网的智能锁群管理系统[J].中国科技信息,2020(20):65⁃66.

[4] 刘旻.基于STM32 单片机的手机藍牙无源锁设计[J].电子世界,2021(15):194⁃195.

[5] 许鸿飞,林琪琪,魏海影.智能锁具的设计发展趋势研究[J].决策探索(中),2020(8):53⁃54.

[6] 张晓琳.民用锁具设计的发展现状及未来的发展趋势研究[J].全国商情(理论研究),2010(10):119⁃120.

[7] 刘霞,张玫.配电站智能锁管理系统设计与应用[J].科技与创新,2020(3):158⁃159.

[8] 韦静怡.基于NB⁃IOT 通信的无源机柜智能锁的设计与优化[D].长沙:湖南师范大学,2019.

[9] 黄莺.基于MUI 的跨平台移动App 开发研究———以“网页设计App”为例[J].职业,2020(2):92⁃94.

作者简介:

姜佳琪(2001—),本科,研究方向:计算机应用技术。

方建文(1972—),博士,教授,研究方向:计算机应用技术(通信作者)。