单片机交流
直播中

陈艳

7年用户 920经验值
私信 关注
[问答]

请问怎样去设计一种基于Arduino Nano的智能门禁控制系统

基于Arduino Nano的智能门禁控制系统的硬件是怎样构成的?
基于Arduino Nano的智能门禁控制系统的软件模块是怎样构成的?
怎样去设计一种基于Arduino Nano的智能门禁控制系统?

回帖(1)

张琳

2021-8-23 09:26:56
项目简介
利用Arduino Nano开发板和大然科技的智能舵机外加任意外设以实现特定的使用功能。在仔细考虑之后,我最终选择了在此基础上外加三种外设实现工作在两种可选模式下的智能门禁仿真系统。
功能说明
本设计为以Arduino Nano开发板为核心驱动的智能门禁控制系统,主要功能有:根据上位机串口输入数据选择门禁系统工作模式;
外部门禁状态:使用RFID卡作为识别依据开启门禁,一定延时之后操控智能舵机关门,并将IC卡的UID通过串口发送给上位机存储;
内部门禁状态:使用压力传感器和红外传感器判断并驱动智能舵机开门,一定延时之后操控智能舵机关门,并将门禁开启信息通过串口发送至计算机端记录。
系统包含外设:大然科技智能舵机;
压力传感器FSR406;
RC522 RFID射频识别器和传感器;
HC-SR501 人体红外传感器;
原理说明
智能门禁控制系统分为控制模块和功能模块两个部分,其中控制模块以Arduino Nano单片机开发板为控制系统核心,功能模块包含大然科技智能舵机、压力传感器FSR406、RC522 RFID射频识别器和传感器、HC-SR501人体红外传感器、舵机电池、由杜邦线和面包板组成的威廉希尔官方网站 系统。
系统存在向内开门和向外开门两个工作模式,由计算机串口输入数据决定工作模式。
向内开门模式工作时,RFID作为门禁系统向内开启的判断依据,当识别到符合要求的IC卡时,RC522模块向单片机发送信号,单片机控制智能舵机向内转动开门,并向计算机通过串口发送记录数据,设置延时4s后,单片机控制智能舵机复位,门禁系统关闭;
向外开门模式开始工作时,FSR406和HC-SR501红外传感器同时工作,当同时检测到压力输入和红外人体识别时,单片机控制智能舵机向外转动开门,单片机同时向计算机输出数据,设置延时4s后,单片机控制智能舵机复位,门禁系统关闭。
硬件结构图

功能模块各元件介绍
大然科技智能舵机A03-MM
压力传感器FSR-406
RC522-RFID射频识别传感器
HC-SR501人体红外传感器
软件流程设计
软件模块介绍。
门禁系统的运行代码基于Arduino IDE进行编写,头文件引用了《m_servo.h》用于智能舵机;《SPI.h》和《MFRC522.h》用于RFID读卡器的设备控制
在软件的loop循环中,根据上位机串口发送的信息选择门禁系统的两种工作模式:
① 采用RFID控制的外部门禁
软件思路:已预先设定符合要求的IC卡UID,当RFID感应到符合要求的门禁卡时,将UID串口发送给上位机,同时控制智能舵机向外开门。
② 采用压力传感器和红外传感器综合控制的内部通行门禁
压力传感器和红外传感器设置在门的另一侧,当同时检测到输入信号时,即发现有人经过时,单片机控制舵机转动向内开门,同时串口发送给上位机记录。
部分代码展示
RFID外部门禁模式



系统完整结构图
拓展功能与设计
实际工作时,可基于实际工作环境的需要自由选择门禁系统的工作模式,或选用其他类型的传感器作为门禁系统的工作传感器(如指纹传感器或密码锁等形式),故此处不再赘述。
对复杂的门禁系统设计,可采用双舵机形式辅助开门,或选择扭矩更大的舵机用于开门动作。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分