指纹解锁宝盒
无论是在公司、公共场合,还是在家里,个人物品的存放安全和隐私安全,已经成为很多人担心的问题。传统的安全方式,如钥匙、密码、IC卡等,都存在丢失、遗忘、被复制,甚至被盗用等诸多不利因素,现在将指纹识别技术运用到锁具中,可以大大增强个人物品的安全性。当然这种技术也可以运用在很多物品存放和一些保密场景中。本项目是柴火认证会员项目。
硬件介绍
SeeeduinoXIAO 是矽递科技推出的基于 SAMD21 的极小主控板,非常迷你,平面尺寸只有 20mm×17.5mm,接口丰富,性能强大,非常适用开发各种小体积装置。
Seeeduino XIAO 扩展板功能强大,而且大小只有树莓派 4 大小的一半。这个板子拥有丰富的板载设备,可以很好地支持 CircuitPython,非常适合快速搭建原型和制作项目。
Grove 灯 环(24-WS2813 Mini),有 RGB 灯效的 LED 灯环。
3.7V 可 充 电 锂 电 池, 型 号 为803040,锂电池可插在扩展板上给设备供电。
Grove 指纹识别传感器,用于录入和识别指纹。
Grove 舵机, 主要用来控制齿轮或者是其他机械杠杆装置等。
以上的硬件齐全后,我们就可以根据场景需求开始制作用指纹解锁的宝盒了。
制作过程
第一步:硬件连接
制作硬件连接如下图所示。只需将各个传感器用 Grove 连接线如图所示与SeeeduinoXIAO 扩展板对应的接口连接上,无须焊接,即插即用,这也是我喜欢选择 Seeed 产品的原因,搭建项目像搭积木一样简单,节省了很多时间。
第二步:盒子外形搭建
我用了一个 Seeed Grove Starter Kit 的盒子作为容器,将其他设备分别装在盒子的顶部和内部的顶端,将扩展板用亚克力外壳保护起来,并且将电池和多余的Grove 连接线缠绕在里面,通过电烙铁将盒子穿洞,让 Grove 连接线穿过去,然后用热熔胶把其他部件粘在盒子顶部,造型如题图和下图所示。
第三步:安装库和上传代码
我用的编程平台是 Arduino IDE,玩过 Arduino 的朋友应该对 Arduino IDE 不陌生,如果是第一次接触 Arduino,就可以到 Seeed 的官网查看,里面有非常详细的文档教程,这里就不赘述了。
本项目需要用到 4 个库。将包含库的压缩包下载下来后,在 Arduino IDE 上分别将每个压缩包添加到库,步骤如下图所示。
库 安 装 完 成 后, 将 主 程 序 代码 放 在 Arduino IDE 里 面, 选 择SeeeduinoXIAO 主板,然后上传到板子中即可。
功能演示
通电后,LED 灯环会依次点亮,最终呈现一个紫色的圈,提示录入指纹(见图1)。
在录入指纹后,LED 灯环会呈现出一个蓝色的光圈,表示你已经完成了指纹录入(见图 2)。
指纹录入成功后,就可以开始用指纹开锁了,当你使用已录入的指纹时,LED灯环的颜色会变为绿色,蜂鸣器会先响两声,然后盒子打开(见图 3)。
当你把盒子关上时,LED 灯环的颜色会变为红色。有两个行为会使灯环呈现红色:一是关上盒子,二是用未录入的指纹解锁(见图 4)。
功能拓展
这里说一下 SeeeduinoXIAO 扩展板的 OLED 显示功能。SeeeduinoXIAO 扩展版最大的亮点是自带一个 0.96 英寸的OLED 显示屏,这个 OLED 显示屏还可以加载一些其他的程序,不仅能显示文字,还可以显示图案,可以让制作更加有趣。
在指纹解锁制作中,OLED 显 示屏只用到了文字显示功能,它其实可以显 示 各 种 各 样 的 图 案, 图 5 所 示 是 用SeeeduinoXIAO 扩展板做的一个心跳检测器,上面就显示了心跳信息。
显示图案的方法很简单,只需要找一个可以将图片转化为数组的网站或转换软件,png 格式的图片上传并得到图片的显示数组,将显示数组粘贴到显示图案的主程序中的相应位置即可。
例如我将一个爱心的 png 格式图片上传到网站上,获得数组。只需将这段数组放入主程序中的 U8X8_PROGMEM 里即可。
显示该图案的相应代码如下所示。
其他方案
在 SeeeduinoXIAO 扩 展 板 上市 之 前, 我 还 用 了 Grove Shield for SeeeduinoXIAO 做了一个类似的作品(见图 6), 相 比 本 项 目, 它 需 要 外 接 一 个Grove 128 像素 ×64 像素的 RGB LCD屏幕作为显示,好处是屏幕更大并且可以调节颜色,喜欢的朋友们也可以尝试。我选择使用 Seeeduino XIAO 扩展板来做这个指纹解锁盒子项目,主要是因为它非常容易上手,接口丰富且即插即用,并且自带 OLED 显示屏,整体性价比更高,无论是有硬件基础的朋友还是初学者都能快速做出项目原型。除了 OLED 显示屏,Seeeduino XIAO 扩展板上还有扬声器、mini SD 卡内存扩展、RTC 实时时钟、自定义按钮等丰富的外设,搭配一些常用的传感器,可以用来做出生日贺卡、遥控小车、温控风扇、心率传感器、空气质量检测仪等好玩实用的项目,喜欢自己做项目的朋友们可以尽情探索。