基于STM32的门禁控制系统设计

2020-01-16 05:57任肖丽王骥许学礼
电子技术与软件工程 2019年21期
关键词:门禁系统显示屏上位

文/任肖丽 王骥 许学礼

1 引言

随着信息技术与网络技术的飞速发展,门禁控制系统更具集成化、智能化和网络化。为了社区和建筑的智能防护,门禁系统已由从单一门禁功能发展到综合多功能的系统。本文主要研究基于STM32单片机和RFID技术的门禁控制系统,连接oneNET,通过上位机即手机APP实现系统远程控制。

2 系统总体设计

本系统由STM32最小系统、RFID读卡识别模块、WiFi模块、显示屏、继电器、电磁锁组成。以STM32最小系统为核心,最小系统与显示屏通信实现显示屏控制;上位机通过网络与服务器相互通信,服务器下发信息与STM32通信,实现远程的控制,利用模块识别RFID卡,通过最小系统的处理,从而实现最小系统控制继电器打开与关闭电磁锁。系统结构框图如图1所示。

2 硬件设计

2.1 ARM主控芯片

主控芯片采用STM32F103系列单片机,内核为Cortex-M3,工作频率高达72MHz,程序存储器容量高达256KB,支持I2C, SDIO,SPI,USART等接口模式,可满足不同条件下的通信需求。芯片采用3.3V供电,多重电容滤波稳定电压,外部接有8MHz晶振及复位电路,其组成的最小系统电路主要由晶振电容组成的时钟电路、主控芯片、电容电阻按键组成的复位电路、SWD调试接口电路组成。最小系统如图2所示。

图1:系统结构框图

图2:STM32最小系统电路

2.2 RFID模块

门禁系统无需远距离识别卡号信息,且不需通过插卡形式读取卡片,所以本系统适合采用高频段的13.56MHz射频读写芯片,选用RC-522 IC卡感应模块为RFID模块,其主控芯片为MFRC522,是一款高度集成的读/写卡芯片,具有低电压、低成本和尺寸小的特点,集成了所有的非接触式的通信协议,本设计采用SPI通信方式。

2.3 人机交互界面模块

本系统人机交互界面模块,采用集成DGUS软件的智能屏DMT10600C070_05W,能快速灵活开发高触摸屏人机交互界面,用户界面体验好,具有极强的使用性和可靠性。同时,该智能屏采用K600+内核,是7.0英寸的1024×600图形点阵屏,模块采用5V供电,通过串口与主机通信。

2.4 网络模块

图3:软件主要流程框图

图4:门禁系统

图5:安卓APP主界面

图6:显示屏主界面

图7:网页应用图

网络模块选用ESP8266-01 Wi-Fi模块,外观小巧,性能强大,同时集成了多种Wi-Fi协议,其搭建的最小运行电路如图3所示,将CH_PD和VCC接高电平,GND接地,串口输出的UTXD和URXD与串口连接,同时将串口与STM32通信,通过Wi-Fi模块内置的 TCP/IP 协议,实现STM32串口通过Wi-Fi模块实现与服务器之间的通信。

ESP8266-01通过AT指令配置连接网络Wi-Fi热点,作为客户端,而上位机作为服务端,即,可通过网络对上位机发送数据,实现远程网络通信。本系统使用oneNET的服务器作为服务端,Wi-Fi模块作为客户端连接服务器,为透传模式,实现与oneNET的服务器通信。

3 软件设计

本文门禁系统软件主要流程图如图3所示,门禁系统启动后,首先初始化系统各个硬件,如果网络模块与预设好的网络连接成功,模块开始对RFID模块进行监听,查询是否有卡,如果识别到RFID卡,读取卡片信息,和系统中存有的信息进行比较,如果信息匹配成功,驱动继电器,打开电磁锁,从而实现开门,将开门信息通过网络上传到oneNET服务器,最终可在上位机查看信息;同时监听显示屏模块发送过来的串口信息,实时解析信息,实现显示屏对系统的控制。

本系统软件设计采用模块化方式,可分为主程序、RFID识别程序、显示屏串口解析操作程序、ESP8266-01操作程序、STM32flash操作程序和随机码解锁程序。系统采用的上位机是基于安卓设计的手机APP,利用易安卓(E4A)开发设计安卓手机APP。通过利用E4A实现调用oneNET的API即使用GET和POST在onenet服务器获取数据,同时对硬件系统发送命令,实现手机APP通过oneNET服务器控制硬件系统。

4 系统测试

通过各模块的实际测试,最终实现如图4所示的门禁系统,烧录完整程序完成硬件测试:通过显示屏添加用户和RFID卡片信息,保存在STM32内部flash,重启读取保存的信息,放置录入的RFID卡片,可以开启门禁系统。STM32每过10s更新随机码,同时通过ESP8266-01上传到服务器,可以在显示屏输入随机码打开门禁系统,同时,每一次读取到RFID卡片开启门禁系统的信息,发送到服务器,可以在网页和手机APP中查看。

安卓APP主界面如图5,可查看接收的随机码,通过显示屏输入随机码即可打开电磁锁。通过点击门禁的“开”和“关”控制门禁系统,在主界面通过实时的折线图观察门锁状态。点击“下一页”可显示门禁系统中记录的用户开门次数。

通过DUGS软件实现的显示屏控制设计,如图6所示显示屏主界面,当通过串口连接STM32后,可传输串口信号到STM32,也可以接收STM32传输的反馈信息做出相应控制。

在oneNET网站利用其开发工具实现网络应用,如图7所示,设计的应用发布在网络上,当硬件接入到oneNET时,可通过该网页应用实现与硬件系统通信。

5 结语

本门禁系统以STM32单片机为核心,结合人机交互界面和上位机,最终实现门禁控制系统。通过测试,本系统具有良好的识别率,可以准确快速识别RFID卡片,适合小区、居民住宅等一系列地方的门禁管理,具有良好的稳定性和实用性。

猜你喜欢
门禁系统显示屏上位
基于多种生物特征识别的RFID门禁系统设计
一块布就是一个显示屏?
基于AI智慧人脸门禁系统的硬件系统设计
基于单片机的安全门禁系统研究设计
苍蝇迷恋显示屏
特斯拉 风云之老阿姨上位
“三扶”齐上位 决战必打赢
基于ZigBee和VC上位机的教室智能监测管理系统
未来五年LED显示屏出货将保持16%增长
基于单片机的小区门禁系统设计