寝室自制智能NFC门禁

起因

暑假申请了返校准备比赛,感觉疫情一个学期没有怎么锻炼了,晚上准备跑回宿舍。但是跑步的时候带钥匙太慢了,于是忙里抽闲,做了一个NFC的门禁(这样我就有理由买小米手环了hhh)

结果图

先上结果图

原理比较简单,寝室是老式的插销,所以可以直接通过MG90s的舵机来驱动(和SG90s舵机比起来力量更大)。

正好手里还有一块上个项目留下来的Arduino UNO R3的板子,由此电源和连接的问题就比较简单了(然而还是焊接了下RC522模块),电源可以使用移动电源(我用的是锂电池),连接部分就可以使用杜邦线了。

初版只有NFC,以后有时间可以用树莓派做个中控,加一下红外模块和摄像。


器件:
1.Arduino UNO R3模块
2.RC522模块(会用电烙铁的话没事,不会用电烙铁的话最好找商家焊好排针,不过可能要多收钱,焊接弯针最好)
3.杜邦线若干
4.锂电池和锂电池的线
5.MG90s舵机一个
6.蜂鸣器(可以不加)
7.胶枪,502,胶带

Tips1:其他单片机平台(stm32或者51)也可,RC522的代码很简单,也有官方的github仓库

Tips2:这里简单说一下,有不知道杜邦线和舵机是什么的小伙伴。简单讲一下,舵机就是一个机器,上面有可以旋转的轴,也因此可以拉动插销。杜邦线有公对母,母对母,公对公的区别,主要就是公的代表是插头,母的代表是插座,具体选什么还是要看寝室的具体情况,线的长度可能也需要具体情况具体讲,不过可以先买30cm的,我的是够用的。

连线图


如果不想加蜂鸣器的话可以选择不加蜂鸣器,就把最下面的那个东西的连线都去掉就可以了。

还是不知道怎么连线或者用其他单片机的小伙伴,可以参考RC522的官方github仓库,里面解释比较详细
https://github.com/miguelbalboa/rfid

代码

#include <SPI.h>
#include <MFRC522.h>
#include <Servo.h>
#define N 2
#define M 4static const unsigned char f[N][M] =
{{0x, 0x, 0x, 0x}, {0x, 0x, 0x2E, 0x},
};MFRC522 mfrc522(10, 9);
Servo mg90s;void setup()
{SPI.begin();mg90s.attach(6);mg90s.write(0);pinMode(5, OUTPUT);pinMode(6, OUTPUT);return;
}void loop()
{static int c;int i, j;if(mfrc522.PICC_IsNewCardPresent() && mfrc522.PICC_ReadCardSerial()){for(i = 0; i < N; i ++){for(j = 0; j < M; j ++)if(mfrc522.uid.uidByte[j] != f[i][j])break;if(j == M){mg90s.write(180);Serial.print("111");delay(250);delay(2750);mg90s.write(0);c += 3;break;}}}else{delay(100);c ++;}if(c >= 20){c = 0;SPI.end();SPI.begin();mfrc522.PCD_Init();}return;
}

简单解释一下代码,整体原理是RC522读取卡上的UID之后会和写死在代码里的UID进行比对,如果比对成功,就会驱动舵机,**f[N][M]**里面放的是所有人的UID,N是你写的卡的个数。
Tips:获取卡片UID的方式,比如校园卡,如果你有一个支持NFC的手机,可以下载一个软件查看UID,如果没有就复杂一些,建议借一个带NFC的手机。(比如我,惨兮兮,是通过实验室的门禁知道的,实验室门禁扫描到卡的时候,会在显示屏上显示UID)
另外,安全性确实是个大问题,不过介于本来就没啥安全性(上次忘了带钥匙,找开锁师傅,3s搞定,整的我都想去拜师学医了)和现在暑假疫情基本没啥人的情况,应该还是可以的

演示视频

CSDN上不能放演示视频
视频详见我的公众号:积淀智慧

“非法“走线寝室自制智能NFC门禁相关推荐

  1. 有关宿舍NFC门禁系统的开发

    有关宿舍NFC门禁系统的开发 咕咕咕 文章目录 **有关宿舍NFC门禁系统的开发** 前言 一.需要的设备 二.写入代码 1.安装arduino IDE 2.安装rc522库文件 2.上传代码 将es ...

  2. 智能门禁(3)---汉王智能人脸门禁系统

    汉王智能人脸门禁系统方案

  3. 智能云门禁解决方案来了

    传统门禁存在的问题 01.安全性差:传统门禁卡易被复制和盗用无法精准识别进出人员身份造成较大安全隐患. 02.通行不便:要求人员近距离操作,当使 用者双手被占用时通行不便 门禁卡丢失或密码遗忘造成 无 ...

  4. STM32——NFC门禁模块(RC522)

    文章目录 1. 前言(包括一些个人理解) 2. RC522门禁工作过程 3. CubeMx配置 3.1 SPI通讯的配置 3.2 SDA和REST引脚的配置 4. 外设代码函数编写 4.1 主函数能调 ...

  5. java开发门磁系统,你一定听过智能家居门禁,但它的系统门磁原理你知道吗?...

    原标题:你一定听过智能家居门禁,但它的系统门磁原理你知道吗? 随着家居智能化的快速兴起,现代家居中的监视.对讲.安防.管理及控制等更多地功能被集成应用,从而使得可视对讲.家庭安防到家居的灯光.电器的智 ...

  6. 基于stm32的智能防疫门禁管理系统

    1.选题背景与意义 经过了疫情的开端与发展,就目前我国已经处在疫情的常态化管理中.在疫情常态化管理下,与人们日常生活中的出行,总离不开测温.通行证明等等. 针对当前的疫情形式,我们设计一款智能防疫门禁 ...

  7. #智能宿舍门禁 esp8266+RC522模块+DFPlay Mini Mp3模块实现宿舍智能门锁//NFC//物联网

    esp8266+RC522模块+DFPlay Mini Mp3模块实现宿舍智能门锁//NFC//物联网 提示: 提示: 文章目录 esp8266+RC522模块+DFPlay Mini Mp3模块实现 ...

  8. html调用手机NFC,NFC门禁模拟-教你用NFC手机模拟门禁卡

    注意,本文针对未加密门禁模拟,加密门禁请看这里: 使用本程序可以让手机的NFC模拟各种门禁卡片,从而可以用手机代替门禁卡,文末提供演示.我默认用户朋友都是IT高手,所以小白请学习相关知识后再入坑. 使 ...

  9. 霍尼韦尔门禁说明书_霍尼韦尔智能家居 门禁密码锁怎么改密码

    招商地区: 全国 资金要求:30万-50万 门店数量:300-500 一般门禁密码锁里面都有使用说明书,万一哪天我们心血来潮想修改密码但是找不到使用说明书了,在这种情况下我们应该怎么修改密码呢?这时大 ...

最新文章

  1. 解决python中import时无法识别自己写的包和模块的方法
  2. JQuery + jquery插件
  3. php 强制返回,php – 我可以强制抽象类的方法返回一些东西吗?
  4. leetcode - 392. 判断子序列
  5. 广西桂林平均工资是多少?
  6. redis 应用场景和数据类型
  7. 学习oracle 入门第一课后的笔记记录
  8. Contki 相关链接备忘
  9. 2015-02-10
  10. 苹果机装w ndows糸统,苹果电脑安装win系统一键安装教程
  11. 巴特沃斯(Butterworth)滤波器(二)
  12. Wind安装程序出现x80070652错误问题
  13. 【香蕉oi】燃烧的火焰(最短路、状压)
  14. 互联网测试校招系列2:准备越充分,机会越大!
  15. python基础训练 day8
  16. 【KingbaseES】金仓数据库V8R3定时备份工具使用详解
  17. HTML5--使用css绘制鸡蛋
  18. mysql proxy集群_数据库集群中间件MySQL Proxy探讨
  19. 原生JS超级马里奥(第一天)
  20. 【二】2D测量 Metrology—— set_metrology_model_image_size()算子

热门文章

  1. 快速沃尔什变换(FWT) 学习笔记
  2. oracle 语句的妙用例子
  3. Qt5编程——word操作
  4. mac 切换root用户
  5. SpringCloud Alibaba——精读Nacos+CMDB+核心源码阅读(7w字长篇)
  6. 数据对账组件Data-Reconcile:高效可信对账利器
  7. Python计算机视觉_实现手写体识别
  8. 解决服务器不能复制粘贴的方法
  9. 2022安徽最新道路运输安全员模拟考试试题及答案
  10. 初探Java8lambda表达式