基于STM32的智能门禁系统:集成人脸识别与多种解锁方式

您所在的位置:网站首页 stm32智能门锁 基于STM32的智能门禁系统:集成人脸识别与多种解锁方式

基于STM32的智能门禁系统:集成人脸识别与多种解锁方式

2024-07-16 22:00| 来源: 网络整理| 查看: 265

文章目录 项目属性项目简介硬件设计

请添加图片描述 项目视频链接:【还在制作中,制作好会发在哔哩哔哩:化作尘my,记得先关注】 项目实物链接:【可以看看某鱼:化作尘my】 有需要可以购买一个实物,会提供相应的参考资料学习

项目属性 作者化作尘是否开源否(需付费)开发难易程度8.6分复刻难易程度4.0分毕业设计、课程设计、学习适用视频教程暂无(看网友需求)文档教程此篇博客技术支持方式作者扣扣 项目简介

人脸识别门禁密码锁是一种既可以通过密码输入,指纹识别也可以通过识别IC卡来实现门禁的开启关闭功能。在日常生活种它的种类很多,有简易的电路产品,也有基于芯片的性价比较高的产品。现在应用较广的门禁密码锁是以芯片为核心,通过编程来实现的。 利用单片机灵活的编程设计和丰富的I/O端口,及其控制的准确性通过软件程序来控制整个系统实现门禁密码锁的基本功能,其主要具有如下功能: ●人脸识别 ●指纹识别 ●手机蓝牙控制 ●密码通过键盘输入,若密码正确,则将锁打开 ●密码输入错误,蜂鸣器将报警提示 ●用户可以自由设定密码 ●RC522射频卡识别 ●OLED显示 ●步进电机控制电路

人脸识别模块使用的是海凌科FR1002人脸识别模块,以下是模块简介

FR1002是海凌科(Hi-Link)推出的一款双目3D红外人脸识别模块,专为智能门锁、智能门禁系统、考勤机等场景设计。这款模块具备以下特点: 高性能算法芯片:FR1002采用了高性能的应用处理器作为硬件平台,能够提供快速的人脸识别能力。 双目3D摄像头模组:配备双目摄像头,支持3D活体检测,可以有效防止照片、视频和假人攻击,确保识别的安全性。 广角低畸变镜头:摄像头模组具有广角视野,能够覆盖更广的识别范围,适应不同身高的用户。 金融支付级别识别算法:FR1002的识别算法达到了金融支付级别的准确性,误识率极低。 低功耗设计:模块在工作时的峰值功耗低于2.0W,适合长时间运行的应用场景。 快速识别速度:从启动到识别结果输出,单次解锁时间最快可达1秒内,提供流畅的用户体验。 易用性:模块支持非接触式解锁,简化了用户的开门流程,同时摄像头模组的设计使得门锁能够适应不同身高的用户。 系统集成:FR1002支持UART等接口,便于集成到各种系统中。同时,海凌科提供配套的测试套件、测试软件、产品资料和技术支持,帮助开发者快速开发应用。 数据存储:FR1002能够存储100名用户的人脸数据,适合中小规模的应用场景。 应用场景:FR1002广泛应用于智能门锁、智能门禁系统、考勤机、3D人脸支付系统、智能设备解锁与人机交互应用,以及低功耗电池人脸识别系统等。 技术支持:海凌科拥有专业的技术团队,可以为用户提供技术支持和售后服务。 FR1002模块的设计注重安全性、易用性和集成性,使其成为智能门禁和安全系统中的理想选择。 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

这个人脸识别的特点就是没用到彩屏显示摄像头获取的视频信息,直接用OLED显示提示信息就可以了,可以节约很多成本,因为一个带屏幕的人脸识别模块超级贵,模块一个就要200元

硬件设计

首先考虑的就是电源,我一开始用5V供电通信很不稳定,于是把电源改到了9V左右,使用了一个开关电源,果然更换电源之后通信就稳定多了 在这里插入图片描述 然后考虑到外设比较多,直接上64脚的MCU STM32F103RBT6

在这里插入图片描述 把人脸识别模块接到串口3上面 在这里插入图片描述 其他模块就随便接到单片机引脚先 在这里插入图片描述 然后考虑到有人脸识别模块电流会比较大,该用TYPEC接口,可以用快充去供电 接了1k电阻后,TYPEC-TYPEC直接接手机,手机就可以当充电宝给设备供电啦 在这里插入图片描述 然后绘制以下PCB图,这是我做的第一版本PCB, 在这里插入图片描述 还有点毛病,二级管和电感封装画大了,自己没有那么大的电感只好用器件管脚接起来了在这里插入图片描述 然后装上人脸识别模块才发现人脸模块是有方向的,必须横着放才能正常识别人脸,以下是错误接法 在这里插入图片描述 接下来就是写程序了,拿到人脸识别模块我开始找客服要程序,结果我懵逼了,压根没有历程 在这里插入图片描述 然后只得到两个PDF和一个上位机,没办法,不能偷懒了,硬着头皮干吧 在这里插入图片描述 打开上位机,用串口转TTL连接好人脸识别模块,发现发指令它没反应,怀疑是供电的问题,于是我用两节18650外接供电,这次是成功连接上了,然后开始用上位机录入人脸和删除人脸等操作,并记录串口数据。。。

1、获取模组当前状态 发送:ef aa 11 00 00 11 返回:EF AA 00 00 03 11 00 00 12 上位机 1、打开串口 发送:EF AA 30 00 00 30 EF AA 24 00 00 24 返回: 2、删除所有用户 发送:EF AA 21 00 00 21 返回: 删除所有用户成功 3、人脸注册 发送: EF AA 26 00 28 01 4D 42 53 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01 01 10 00 00 00 42 EF AA 26 00 28 01 48 5A 43 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01 01 10 00 00 00 4F ef aa 26 00 28 00 48 5a 43 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 01 00 0a 00 00 00 42 返回: [2023-12-01 11:40:13.250] RX:EF AA 01 00 11 01 06 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 17 [2023-12-01 11:40:14.713] RX:EF AA 00 00 05 26 00 00 01 01 23 EF AA 00 00 02 23 00 21 请直视摄像头 注册成功,已分配用户id为 1, 用户名为 MBS 4、删除选中的用户 发送: EF AA 20 00 02 00 01 23 返回: id为 01 的用户删除成功 5、人脸匹配 发送: EF AA 12 00 02 00 0A 1A 返回: RX:EF AA 01 00 11 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 EF AA 00 00 26 12 00 00 01 6D 62 73 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 01 00 48 [2023-12-01 11:41:18.814] RX:EF AA 01 00 11 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 [2023-12-01 11:41:20.012] RX:EF AA 01 00 11 01 01 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 10 [2023-12-01 11:41:21.414] RX:EF AA 00 00 02 12 05 15 EF AA 00 00 02 12 0D 1D [2023-12-01 11:41:37.276] 匹配成功,用户id为 01 用户名为 mbs 6、已获取所有已注册用户ID 发送: 0xEF 0xAA 0x24 0x00 0x00 0x24 返回: EF AA 00 00 22 30 00 23 58 53 31 30 30 31 5F 56 31 2E 31 2E 31 5F 31 2E 30 2E 33 2E 30 33 32 30 5F 30 30 30 30 30 30 1F EF AA 00 00 CB 24 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 EF

收集到一些数据后,再看看PDF,大概的通信原理已经搞清楚了,然后可以开始写人脸识别模块的通信驱动了 在这里插入图片描述 直接写代码在这里插入图片描述 在这里插入图片描述 断断续续写了一个多月,总算是可以正常一点的使用了 人脸识别可以正常识别,可以正常录入人脸 可以删除人脸。。 现在开发到这里,也只能识别人脸、添加人脸、删除所有人脸的功能 但是添加人脸还可更多功能,比如现在添加人脸并不能输入自己的名字,后续可以研究一下怎样可以显示自己的名字到上面,添加简易的输入法或者是借助外接设备输入等方式



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3