MAKER:CodersCafe/译:趣无尽 Cherry(转载请注明出处)
“滴”的一声,和启动汽车一样,只要指尖轻轻一按,家中的指纹门锁就打开了。生物识别门锁在日常生活中也很常见,它可以提高家庭的安全等级还可以起到保护门锁的作用。但有两个因素阻碍了生物识别锁的使用。一个是锁的成本,一个是缺乏远程访问的功能。
本项目将攻克这些难题,运用 IoT 技术来解决这一问题,会非常的有意思。
项目理念
使用手机作为开锁设备,它既可以确保安全性又方便远程访问。它们可以实现 MQTT 和其他可用协议控制智能门锁。因此,我们还可以在此基础上添加生物识别防火墙。
现在几乎所有的手机都带有指纹传感器的功能,可以验证授权人的生物特征识别。它可以克服智能门锁的缺点,提高安全级别。
使用 App 从指纹传感器中读取的数据与存储在设备中的真实指纹进行比较,并确定是否被授权。验证数据从移动设备发送到合适的云数据库,智能门锁系统再从数据库中检索数据。如果判定是授权的指纹,就自动芝麻开锁……
对比之前我们介绍过的《用 Arduino DIY 一套智能门锁》,这个具有网络功能的生物识别门锁是不是更有趣呢?
材料清单
NodeMCU ×1
电子锁模块×1
继电器×1
12V 电源适配器×1
电源插孔×1
电线×1
NodeMCU 介绍
NodeMCU 是一个开源的物联网平台。它是基于 ESP8266 模块的带 WiFi 的 SOC。在这个项目中,NodeMCU 是智能门锁的主控。 NodeMCU 从云数据库中检索数据,并根据数据去开关继电器。
电子门锁模块
运行电子门锁模块需要 12V 的电源。电源关闭时关锁,电源打开时开锁。它是智能门锁的实体部分。
继电器
继电器作为开关,用于控制门锁电路的通断。根据 NodeMCU 给出的数据,继电器将决定是否给电子门锁模块供电。
组装硬件
组装所有的硬件。如图焊接好它们,我使用微型焊台来控制温度,以免在焊接时损坏 NodeMCU。同时也要注意高温会损坏 IC 芯片。
3D打印外壳
3D设计是使用 Fusion 360 制作的,打印所有的 3D 部件,并下载代码。然后将硬件安装到外壳内。3D打印文件请在项目文件库中下载。
https://make.quwj.com/project/125
启动
使用 12V 1A 电源为 NodeMCU 和电子门锁模块供电。但 NodeMCU 无法长时间的承受 12V 的直流电源,它可能会损坏 MCU。所以我只是使用 12V 电源作为原型。在构建你的项目时,请使用 5V 电源,以确保电路工作正常。
软件部分
1、移动应用程序
移动应用程序用于扫描指纹、验证指纹和授权使用用户。验证指纹后,解锁密钥将发送到 Firebase 实时数据库。该应用程序使用 kodular。
这是设计应用程序截图和代码块的截图。软件这个部分让项目灵动起来。在项目文件库中下载。
https://make.quwj.com/project/125
2、Firebase 实时数据库
Firebase 是一个手机和 Web 应用程序的开发平台。 Firebase 可以让开发者专注于研发用户体验而不需要管理服务器和编写 API。Firebase 是服务器、API和数据的存储器,你可以根据自己的需求对其进行修改。
在该项目中,我们使用 Firebase 实时数据库即时发布和检索数据,没有时间延迟。在设计移动应用程序时,需要填写 Firebase URL。
查找 Firebase 网址。
1)访问 Firebase,需自备梯子。
2)打开你的项目。
3)转到数据库中的实时数据库。
4)如图选定 Firebase 网址。
查找 Firebase 认证。
1)访问 Firebase。
2)转击设置>项目设置。
3)再转至服务帐户。
4)在 Database secrets 选项中,找到 Firebase 认证密钥。
了解关于设置 Firebase 的更多信息,请点击此处,查看详细指南。
3、NodeMCU 代码
NodeMCU 的代码是用 C 语言开发的,使用 Arduino IDE 上传。请点击此处下载 NodeMCU 的 Firebase 扩展库,并添加到 Arduino IDE 中。
在项目文件库中下载 NodeMCU 的代码。
https://make.quwj.com/project/125
并将 Firebase 网址和 Firebase 认证替换为你的代码。然后使用 Arduino IDE 上传代码并验证是否工作正常。
开始运转
现在它可以正常运转了。请打开移动应用程序,按下开锁按钮,验证身份并解锁开门。
项目的优点
1、低成本
该项目中使用的所有组件都非常便宜,成本很低。
2、快速解锁
手机上的指纹传感器反应非常快,而且 Firebase 实时数据库具有很高的操作速度,因此关锁和解锁过程将短于 0.5 秒。
3、高级安全性
Android 应用程序提供了加密算法,确保传输数据的安全性,从而实现锁的多层安全性。
4、可分享
通过共享 Android 应用程序和 Firebase 凭据,可多人访问同一扇智能门。
5、便携性
这种生物识别门锁可以替换任何锁,只需替换一套设备就可以变成一扇智能门。