esp8266单片机透传_基于WeMos D1(ESP8266)的校园卡门禁系统
刷卡https://www.zhihu.com/video/1107591334902345728
电脑端控制https://www.zhihu.com/video/1107591363079733248
手机端控制https://www.zhihu.com/video/1107591388040052736
一、项目背景
随着网络技术和嵌入式技术的发展,物联网开始引领新一波热潮。制作这个项目的想法起源于我的宿舍生活。每次进入宿舍都需要找钥匙非常不方便,在网络上看到关于智能门锁的介绍,于是便想制作一个门禁系统,利用随身携带的校园卡或者手机进行解锁开门。
二、硬件平台
根据项目目标,本项目硬件上有以下要求:
- 单片机能进行数据处理
- 实现对舵机的控制
- 接入wifi,并通过HTML接收信息
- 对射频卡进行扫描
根据以上要求,项目选型如下
(一)开发板与wifi模块
项目使用卡发版WeMos D1,其核心使用ESP-8266,具有11个I/O引脚,除D0引脚,均支持PWM、IIC、中断等,具有1个模拟量输入I/O。由于核心为ESP8266,因此具备wifi功能,可以在AP模式、station模式和混合模式下运行。符合要求。
项目开发使用arduino IDE,开发验证简单。
(二)射频读卡模块
PN532是一个高度集成的非接触读写芯片,它包含80C51微控制器内核,集成了13.56MHz下的各种主动/被动式非接触通信方法和协议。支持SPI、IIC、UART通讯方式,支持校园卡标准,性价比高,适合本次项目开发。
本次使用该模块的UART通信方式与单片机连接。
(三)舵机等
机械传动部分使用舵机,选用90g舵机,其功率较小,可以使用单片机I/O直接驱动,扭矩能满足拉开门锁的要求。
三、开发环境
(一)开发板
WeMos D1开发板使用Arduino IDE进行开发,使用C++语言,面向对象的开发方式。
本次项目在windows平台开发,使用Arduino IDE 1.8.5,调试使用串口猎人。系统串口通信运行在比特率115200、无校验位、数据位8bit、停止位1bit状态。
(二)终端控制平台
由于本次使用HTML与架设在路由器内网的路由器进行通信,因此终端设备只需要支持HTML即可。手机等设备可以直接使用浏览器进行控制,因此项目的通用性很强。
(三)网络环境
本系统在学校宿舍wifi环境下测试。我的宿舍使用小米路由器路由校园网络。WeMos D1连接宿舍wifi后会被分配到内网ip,由于未做内网透传并且没有设计校园网登陆部分,因此只有同样连接在宿舍wifi下的设备,才能对系统进行控制。
四、基本原理
(一)物联网
物联网是互联网、传统电信网等信息承载体,让所有能行使独立功能的普通物体实现互联互通的网络。随着网络的快速发展,越来越多的设备开始接入互联网,为人们的生活带来了极大的便利。
(二)射频标签
射频识别,RFID(Radio Frequency Identification)技术,又称无线射频识别,是一种通信技术,可通过无线电讯号识别特定目标并读写相关数据,而无需识别系统与特定目标之间建立机械或光学接触。
我们的校园卡是工作在13.56MHZ的IC非接触式射频卡,资料显示,这种射频卡有8KB储存空间,分为16个扇区,每个扇区分为4个块。序号从第0块到第63块,其中第0块未加密,保存着射频卡的序列号(UID),根据UID可以识别射频卡。
(三)HTML 1.1
HTML是用来在Internet上传送超文本的传送协议,运行在TCP/IP协议簇之上的HTTP应用协议,它可以使浏览器更加高效,使网络传输减少。使用此协议,可以很方便开发不同=平台之间的文本传输。
(四)项目目标
本次设计计划制作校园卡门禁系统,可以接入宿舍wifi,当识别到特定校园卡时,或者当使用手机发送固定内容时,控制舵机进行响应。
五、程序实现
六、调试
本项目通过串口进行调试。串口打印状态信息。
有两种开锁方式,扫描学生卡和网页端控制。
我在程序中提前写入了舍友的校园卡UID,当扫描到已知卡放在读卡器上时,串口输出“你好,XXX”,XXX为舍友的名字。此时舵机旋转,表示拉动门锁完成开门。
网页端控制通过HTML1.1协议,可以在手机或电脑等终端运行。当系统以客户端的形式接入宿舍的wifi时,路由器会分配一个局域网ip给ESP8266,如果统一局域网下的设备登陆“10.15.8.42/gpio/0”(10.15.8.42为分配的ip),相当于向设备发送gpio/0的信息,经过识别可以控制舵机运转,同时ESP8266可以通过HTML1.1协议传回一个信息,程序中设计的是传回锁头状态。
七、代码
#if defined(ARDUINO) && ARDUINO >= 100
esp8266单片机透传_基于WeMos D1(ESP8266)的校园卡门禁系统相关推荐
- 智能门禁(4)---基于face++和Onenet平台的人脸门禁系统
基于face++和Onenet平台的人脸门禁系统 前言 第一次见识人脸解锁是在iPhoneX,前两天安卓8.0的小米6把我的手机也可以做到人脸结果.各大公司都推出了自己的人脸识别Api,因为个人兴趣, ...
- 基于WeMos D1+esp8266的智能垃圾桶和智能家居
1.环境搭建 本次主要是用ArduinoIDE平台来进行开发,可以去官网进行下载:Arduino - Home 也可去网盘下载,在这里为大家准备了网盘连接: 链接:https://pan.baidu. ...
- esp8266单片机透传_ESP8266通过MQTT接入Home Assistant
1.简介 ESP8266是一款串口WiFi模块,内部集成MCU能实现单片机之间串口通信, 这款模块简单易学,体积小,便于嵌入式开发. 本文介绍的是ESP8266系列中的ESP-01,这款芯片使用了3. ...
- id nfc模拟_手机NFC也可以刷ID卡门禁?无聊测试居然成功了
前段时间换了个K20pro,有NFC功能后手又痒了,就想折腾一下NFC的日常使用. 小区的门禁前几个月刚换成了亲邻开门,可以用微信小程序开门,但每次都要拿手机出来点几下(特别是手机提着东西的时候),还 ...
- 基于区块链的二维码门禁系统成品演示视频
视频演示链接:https://www.bilibili.com/video/av49528235?from=search&seid=9311233092198623454
- 基于百度人脸识别的小区人脸门禁系统
又是一年毕业季,自己转眼间也毕业一年了!!!前段时间帮学妹指导了一个小区人脸识别门禁系统,整个的实现思路在此记录下,感兴趣的可以参考一下. 整个项目沟通后情况如下: 需求功能: 人脸录入 人脸更新 人 ...
- 在龙芯1C单片机上使用ESP8266 wifi透传模块
龙芯1C既可以运行linux,也可以当作单片机用.当用作linux时,可以通过USB wifi模块RTL8192C,RTL8188ETV等,当作单片机用时,可以像STM32那样使用串口透传wifi模块 ...
- java程序报告门禁系统_基于JAVA的门禁管理系统(含源文件).doc
基于JAVA的门禁管理系统 学 生 姓 名: 学 院: 专 业: 班 级: 学 号: 指 导 教 师: 完 成 日 期: 摘 要 随着社会经济和科技的发展,IC卡技术已广泛地应用于各种行业,特别是公共 ...
- 基于wemos D1的无线遥控灯(433m无线模块)
参考:基于wemos D1的无线遥控灯(433m无线模块) 作者:一只小阿大:) 发布时间: 2021-04-16 09:25:53 网址:https://blog.csdn.net/qq_44610 ...
最新文章
- SAP QM 含有Long-term检验特性的检验批UD完成后还能继续录入检验结果?
- hackerrank杂记
- 公司GitHub被封号,只因员工在伊朗开电脑,官方:将撤销被美制裁国家限制
- JAVA 实现扫码二维码登录
- css的checkbox样式变化
- 树莓派4B设置静态IP
- 关于 Math.pow 的一个坑
- OpenCV人脸识别之一:数据收集和预处理
- antd vue form表单 子组件调用父组件的方法没反应_前几天推了Vue,今天给React疯狂打call...
- python容易出错的地方_Python中try-except出错后如何从try出错地方继续执行?
- NSTimer 的正确用法你真的知道吗?
- C中常量数组不能修改
- 【Java算法】Java抽奖算法,适用于各种抽奖
- google浏览器常用插件整理
- 如何在一个月内高效地备考教师资格证?
- elementUi——table表格中字段内容超过2行后,省略号...展示,不超过两行不处理。超过两行再显示全部。
- 备战双十一!自动刷喵币靠这一个脚本就够了!
- 单片机工程师如何继续提升自己?
- 成本管理体系具体业务解决方案说明(三 合约规划)
- HR面试问题-离职原因
热门文章
- c#生成一组不同的随机数的方法
- 安卓第一次搭建C/S架构
- ASP.NET MVC 上传图片到项目目录中的文件夹并显示
- 面试题:MySQL的innodb和myisam
- 拖动卡顿_四招教你解决PS软件卡顿问题!
- python爬取b站排行榜_实时爬取B站排行榜并保存为表格——每周一个爬虫小教程系列...
- 如果用户计算机已接入,01计算机基础知识题(50道)
- mysql没加引号导致全表扫描_mysql隐蔽的索引规则导致数据全表扫描
- 微软为Win11用户更新了剪贴工具、计算器以及邮件和日历应用
- Android平台如何实现屏幕数据采集并推送至RTMP服务器