基于Arduino的门禁系统
简介
以Arduino UNO板为核心控制器驱动蜂鸣器以及舵机,在任一方式通过的情况下打开舵机并峰鸣提示,同时APP会接收到相关通知。
- 红外遥控
- 用家里的随便一个遥控器,在代码中设置好键位的id即可,当然可以是手机的遥控器APP了,;
- 控制距离有限,而且没人会随身带遥控器,实际上没什么用;
- IC卡
- 在代码中设置好卡ID即可,卡数没有限制,可以配合校园卡使用,当然可以模拟到手机了;
- 可用性极高;
- WiFi
- ESP01S连接寝室WiFi,手机有网络即可随时随地操控,不必在同一网络下,当然可以语音控制了;
- 懒得下床开门;忘带钥匙了舍友却在教室,懒人福利,模范舍友;
代码分为UNO端和ESP01S端,后者配合UNO实现手机随时随地控制,难点在于二者的通讯,网上资料大多都是基于NodeMCU等其他ESP8266集成开发版系列的,而类如ESP01S等的ESP8266串口WiFi模块的资料少之又少,大部分又是基于AT固件开发,初学时容易分不清楚开发板与模块而走弯路。UNO实现主要逻辑与控制,简单明了。
ESP01S在烧录过程序后使用AT功能需重新刷AT固件。
硬件
- Arduino UNO 开发板
- ESP01S 无线模块
- MF RC522 读卡芯片
- VS1838B 红外接收器
- 面包板、杜邦线、舵机(SG90 9g)、遥控器、校园卡、蜂鸣器(有源、可选)
- 其他必要附件
软件
Serial Tool 串口助手
Blinker 手机APP
IRremote、MFRC522、Blinker库
其他必要库及驱动
以上参考官方文档进行安装,有遗漏之处自行补充。
接线
注意以上接线配套程序使用。
源码
代码已在Github开源,有详细注释一看就懂,欢迎Star支持。https://github.com/Ldufan/AcessControlSystem
本作品采用知识共享署名 4.0 国际许可协议进行许可。