面向社区的智慧门禁系统设计

2021-01-14 07:10杨彩凤谭明成
湖南邮电职业技术学院学报 2020年4期
关键词:门禁系统服务器端遥控

刘 涛,杨彩凤,谭明成

(安徽工程大学计算机与信息学院,安徽芜湖241000)

随着社会经济与物联网技术的快速发展,人们对社区居住环境有了更高的要求,要求社区设计更加人性化、智能化,而其中最重要的是社区安全性问题[1],所以设置小区智能门禁系统是不可缺少的重要措施,有助于大大提高社区的安全性[2]。现代门禁系统采用硬件系统与互联网相连的方式,方便管理人员对门禁系统进行管理控制,还可以获得门禁系统硬件产生的信息反馈,这不但加强了对社区的安全管理,还有效减少了社区人力物力的浪费,门禁系统将会与互联网紧密结合[3-4]。门禁系统经过不断地发展,形成了三大类型:刷卡门禁,生物识别门禁,互联网门禁[5]。

本文所设计的系统是由多种门禁系统结合而成,解决了各个单一门禁系统的不足,同时采用物联网技术,将门禁硬件系统与互联网进行连接,使管理人员能够实时观察社区出入情况、管理社区人员信息,用户可以在网络上进行遥控开门和卡片挂失,这样的设计可以在满足社区安全的同时,增加用户的使用舒适感,更能满足当前社区的需要[6]。

1 相关技术介绍

本系统硬件模块基于Arduino 平台,Arduino 是一个开放源代码平台,拥有成熟的开发环境[7],Arduino也可以同时支持不同的插件一起工作,从而能够很好地实现门禁系统的各个功能模拟,比如门禁卡数据的上传和红外遥控等功能,操作方便,只要将各个模块的器件连接到开发板上,再使用编程工具进行模块代码的编写,最后将各个模块的器件进行组合工作。同时使用基于HTML(超文本标记语言)、CSS(层叠样式表)、JavaScript(Java 脚本)开发的Bootstrap 前端开源框架,其界面简洁、功能丰富、使用方便,可以运行在不同内核的浏览器上,支持各种分辨率和屏幕大小,同时支持HTML5,让编码更加灵活,Web 前端的开发更加便捷和快速。

本系统在硬件端和服务器端都添加了加密算法,保障了门禁系统在数据传输过程中的安全性。采用的加密算法是DES 加密算法,这是一种对称加密,发送端和接收端都采用相同的密钥,加密过程将原文分成两部分,前一部分与子密钥进行循环,然后与后一部分进行异或运算,之后再进行交换,这样一共循环十六次,最后得到密文,解密过程与加密过程相反。

2 设计思路与功能概述

2.1 设计思路

通过对系统的详细分析,确定了系统总体功能模块的设计,系统分为硬件端、服务器端以及Web 端,详细结构分为管理员、用户、网站、数据库、刷卡识别、单元门、社区大门、服务器八大部分。硬件端使用Arduino 开发板和不同元器件,对门禁系统的各个开门模块进行模拟,然后通过Wi- Fi 模块上传数据到服务器端;服务器端对硬件上传的数据进行比对,比对成功则下发开门指令,同时将数据存入数据库;Web端管理员可以对用户信息进行管理以及对社区进入记录进行查看,用户可以在Web 端进行门禁卡的挂失和远程遥控开门。

2.2 功能概述

基于系统功能需求分析以及系统设计思路,系统主要包括以下功能:门禁卡开门,指纹开门,红外遥控开门以及Web 遥控开门,Web 端分为用户和管理员两大部分,对应不同的功能需求。门禁卡开门:读卡器将读取到的用户数据上传到服务器,系统将该数据与数据库中所存储的门禁卡数据进行比对,比对成功则系统会向开发板发送开门的指令,最终执行开门指令;指纹开门:指纹模块可以对指纹进行识别,如果识别到的用户指纹在存储器中,并且比对成功,则进行开门;红外遥控开门:使用红外遥控器对Arduino 进行控制,达到开门的目的;Web 遥控开门:用户可以在Web 端上进行操作开门,同时管理门禁卡,可以对门禁卡进行挂失和恢复,管理员可以在Web 上进行人员信息管理和进入记录查看[8]。功能模块如图1 所示。

图1 系统功能模块图

3 系统设计

3.1 硬件端设计

本系统硬件端使用Arduino 平台进行开发,利用各种不同模块来实现系统功能,使用了MFRC522 模块作为刷卡模块、非接触卡作为红外遥控器、红外接收器作为红外遥控模块、AS608 作为指纹模块、ESP8266 作为无线保真(Wi- Fi)模块。刷卡模块是读卡器对IC 卡的信息进行读取,将读取的信息通过Wi- Fi 模块上传到服务器,服务器将上传的信息进行比对,比对成功后查看卡片是否挂失,如果不是挂失状态则服务器向硬件发送开门指令,硬件舵机转动开门;指纹模块可以通过上位机软件录入和删除指纹信息,然后用户进入社区时指纹模块进行实时指纹采集,将采集的指纹信息和内部指纹信息进行比对,比对成功则开门;红外遥控模块通过红外遥控器对红外接收器进行控制,按下按键发送指令进行开门[9]。其中刷卡门禁流程图如图2 所示,红外遥控门禁流程图如图3 所示,指纹门禁流程图如图4 所示。

图2 刷卡门禁流程图

图3 红外遥控门禁流程图

图4 指纹门禁流程图

3.2 服务器端设计

服务器端的具体功能为:收到硬件端的门禁卡信息,然后与数据库中所存储的相应用户门禁卡信息进行对比,对比成功后查看门禁卡状态,如果门禁卡状态为正常,则服务器向硬件发送开门指令,同时将此信息录入数据库的记录表中,也可以接受Web 端的指令,直接向硬件发送指令。为了保证系统的安全性,在硬件端和服务器端的数据传输中使用了DES 加密,每经过一次刷卡开门,系统的秘钥就改变一次,保证系统的安全性[10]。服务器端流程图如图5 所示、数据加密流程图如后面图6 所示。

3.3 Web 端设计

Web 端使用JSP(Java 服务器页面)技术进行开发,管理员可以对社区的进入记录进行查看,对用户信息进行管理,如增、删、改、查等操作,用户可以向硬件发送开门指令,进行远程遥控开门和门禁卡的挂失和恢复。管理员进入该门禁系统的“用户管理”界面,系统将显示“管理员信息”“用户信息”以及“小区进入记录”目录,可对这些信息进行相应的操作;当管理员点击“小区进入记录”时,系统会显示所有的人员进入记录,包括卡号、用户名、进入日期,管理员可以编辑或删除其中的某些记录。

图5 服务器端流程图

图6 数据加密流程图

用户可以通过“用户卡片管理”栏对个人信息进行卡片挂失和恢复操作,该栏存储用户的用户名、密码、卡号、门牌号、电话号码以及用户门卡状态;用户需要开门时,可进入“用户远程开门界面”,首先选择单元号,系统界面将显示出所选单元号的单元地址,当用户确定地址正确时,可滑动界面的开门按钮,系统执行开门指令,打开门锁。

4 结论与展望

通过系统测试,所设计的功能基本都能实现。刷卡门禁能够正常读取数据并上传,服务器对上传的数据能够进行快速比对,然后下发指令;指纹模块可以正确识别指纹信息;管理员可以在Web 端进行信息管理,用户可以在Web 端进行卡片的挂失和遥控开门。虽然已经完成了基本的系统任务要求,但是该系统还是有很多地方有待完善。

本系统在设计的时候有一个没有考虑的问题。设计的单元门有三种开门方式,都是利用网络或者生物识别方式进行开门的,但是当这三种方式都无法进行开门时,住户就无法进入,所以在后续的完善当中应该添加密码解锁,这种开门方式受环境的影响很低,用户可以在无法使用其他方式进入时,采用这种最简单直接的开门方式。本系统还存在比如临时人员的进入登记、Web 界面不够美观等问题,所以在后续的完善中,将会对这些问题进行解决,并相应添加更多的门禁功能,例如面部识别等,以使系统能够更加完善。

猜你喜欢
门禁系统服务器端遥控
基于多种生物特征识别的RFID门禁系统设计
“遥控”老师
Linux环境下基于Socket的数据传输软件设计
基于AI智慧人脸门禁系统的硬件系统设计
基于单片机的安全门禁系统研究设计
他是如何遥控引爆的
地铁线网门禁系统集成方案研究
基于Qt的安全即时通讯软件服务器端设计
基于Qt的网络聊天软件服务器端设计
基于C/S架构的嵌入式监控组态外设扩展机制研究与应用