安装在门禁上的RFID读卡器读取到访客手持的射频标签后 , 将标签号码通过Wifi传输至机智云 , 云端通过一系列认证后下发开锁命令 , 控制开发板上的继电器吸合以达到开锁的目的 , 该方案设计具有以下优势:
? 访客射频标签成本极低 , 只有几毛钱 , 为每个访客发一张也不会有太大的成本负担;
? 访客射频标签是可写入的 , 这样我们就可以控制访客在楼宇中的到访时限 , 以及不同级别访客的开门权限;
? 访客到访的每个门禁都会将访客记录通过Wifi上传到云端 , 这样就可以监控每个访客到访的轨迹 。
视频教程及实物展示
视频演示教程:
文章图片
文章图片
下图是在机智云后台看到的RFID读卡数据:
文章图片
硬件端接线图
文章图片
材料清单
文章图片
硬件端完整源代码
--配置D3为普通输出 , 控制控制门锁的继电器LIB_GpioOutputConfig("D3","STANDARD")
LIB_GpioWrite("D3",1)--控制继电器断开
--设置R200读卡器模块占用TX1和RX1引脚 , EN引脚占用D7引脚 , 并开始扫描工作
--工作国家区域:China2区 (920.125~924.875MHz)
--工作信道:0通道 , 即工作频率为920.125MHz
--发射功率:设置为最大的20.00dBm
LIB_R200ReaderConfig("UART1","D7","CHINA2",0,2000)
--机智云平台为每个产品类别分配的唯一PK和PS , 一定要改成您自己的PK和PS
PK = "baa7394638a7427b931e3c84da5f2bdd"
PS = "437665aced3b46d9b8c416321b50a926"
--初始化Wifi模块
LIB_GizWifiConfig(PK,PS,6000,120,"UART0","D5","D10","D8")
--定义一个64元素的table用来向机智云发送HEX字节流数据
SendData = https://www.sohu.com/a/{0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
0,0,0,0,0,0,0,0,
【【十分钟开发物联网】楼宇访客门禁管理(Wifi版)】0,0,0,0,0,0,0,0,}
num = 0
while(GC(1) == true)
do
--扫描标签的演示程序
Cnt, R = LIB_R200GetCard
if Cnt >= 1 then --打印Cnt张扫描到的标签卡号
n = 0
--Print打印出扫描到的Cnt张标签的卡号
--[[for i=1, Cnt do
print(string.format("%02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x %02x",R[1+n],R[2+n],R[3+n],R[4+n],R[5+n],R[6+n],R[7+n],R[8+n],R[9+n],R[10+n],R[11+n],R[12+n]))
n = n + 12
end]]--
--这里我们只将扫描到的第一张标签的卡号(12字节)上传给机智云
--至于多张标签的去重 , 去重后的上传请发挥您的聪明才智
SendData[1] = R[1]
SendData[2] = R[2]
SendData[3] = R[3]
SendData[4] = R[4]
SendData[5] = R[5]
SendData[6] = R[6]
SendData[7] = R[7]
SendData[8] = R[8]
SendData[9] = R[9]
SendData[10] = R[10]
SendData[11] = R[11]
SendData[12] = R[12]
SendData[13] = num&0x000000ff --这里是为了确保每包发送的数据不同
num = num + 1
特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
