这是我为我在大学的微处理器编程实验室制作的一个项目。项目目标是使用 RFID 卡或指纹扫描登录和退出我的 PC。
我非常重视隐私,因此无需输入密码即可在几秒钟内登录和退出,这对我来说是救命稻草。该接口完全开源,您可以随意使用和修改。
这里有两件非常重要的事情:
您可以仅将这个项目与 RFID 阅读器一起使用,而代码绝对不会发生任何变化,但仅将其与指纹扫描仪一起使用则需要完整的代码重建。
接线,尽管它看起来非常简单,并在下面解释。最重要的注意事项:
该项目的 Arduino Leonardo 引脚分配:
代码-在你开始之前
首先,您需要将 5 个库添加到您的 Arduino IDE(如果您还没有):
您可以在通过 Ctrl+Shift+I 访问的库管理器中执行此操作。然后将此项目代码复制到您的 IDE。
接下来,您要转到第 128 行并注释掉 logOut() 函数标注(这样您就不会在调试期间注销系统),并对第 190 行中的 passwd() 函数标注执行相同的操作。
完成后不要忘记取消注释这些,否则您将无法登录或退出!
最后一件事是在代码中设置您的密码,这样 Arduino 可以在登录时将其记下。您在第 23 行执行此操作,更改密码字符串变量。
所以首先要做的是确定你的RFID卡ID。为此,如下所示连接所有内容,并在 IDE 中打开该项目的代码。在第 184 行中,您已注释掉调试行,它将读取的卡 ID 转储到串行监视器。只需取消注释,上传到 Arduino,打开串行监视器并将卡靠近读卡器。
将 ID 复制到第 22 行的“logCard”字符串变量。
如果您只使用 RFID 阅读器,请注释掉第 184 行,取消注释第 128 和 190 行,将代码上传到 Arduino,就完成了。如果您使用指纹读取器,只需注释掉第 184 行,然后继续阅读。
CODE -使用Z70指纹读取器(或任何受Adafruit_Fingerprint库支持的)
所以现在您需要将您的手指保存到 Z70 内存中。为此,请在 IDE 中打开新项目,然后从文件 -> 示例 -> Adafruit 指纹传感器库打开“注册”示例。将其上传到 Arduino,打开串行监视器,然后按照说明进行操作。该示例非常不言自明,它将引导您添加任意数量的指纹扫描,并将它们分配给从 1 到 999 的 ID。
添加手指后,返回此项目的代码。现在你有两个选择:
CODE -仅用特定手指解锁PC _
好的,所以您让您的姐姐、妈妈、爸爸、奶奶和狗将手指保存到传感器中,并且不想清空整个内存,您还希望只有手指能够解锁 PC。太好了,所以您需要在代码中挖掘更多内容。在第 47 行和第 48 行(在 FingerID() 函数中)有更多注释掉的调试选项,您想取消注释。这些将读取手指的 ID 转储到串行监视器。与 RFID 卡 ID 非常相似,取消注释,上传,放置手指,然后从串行监视器读取其 ID。
现在你一直向下切换,从第 176 行开始。在那里你有“案例 0”,用 RFID 解锁你的 PC 和“默认”,用 Z70 内存中的任何手指解锁它。您要做的是添加另一个带有手指ID(从串行监视器读取)的案例,例如“案例1:”,将“默认”的内容复制到其中,并清空“默认”。
您可以根据需要添加任意数量的新案例,带有个性化的 LCD 消息,用于每个人的登录,例如“你好妈妈!”、“嗨爸爸!”、“拿出你的小...
不管怎样,现在注释掉第 47 行和第 48 行,你就完成了这个项目。
CODE -调整、提示和做你忘记做的事情,尽管我多次提醒它
首先 - 确保第 128 和 190 行未注释,第 47、48、184 行已注释掉!
现在进行不太重要的调整。我的电脑启动时间很长,所以我在第一个循环开始之前添加了 7 秒的延迟。它位于 setup() 中的第 110 和 116 行。当然,如果您的系统启动时间更长或更短,您可以更改它。请记住,它只会在出现锁定屏幕后将您记录到 Windows 10(如果您在启动过程中放置卡/手指,则必须单击按钮并重试)。
另一个调整。为了节省一点液晶显示器而不是让我因指纹扫描仪闪烁 LED 屏幕而发疯,Z70 会在 15 秒后关闭。发生这种情况时,您仍然可以使用 RFID 卡解锁,但要使用手指,您需要按下按钮来激活传感器。
您可以通过调整第 147 行中的 if 语句来更改关闭它们需要多长时间。为了完美测量,您需要转到第 160 行,取消注释,然后查看所需时间后的数字有多高(每个迭代次数屏幕上会增加,所以对我来说 15 秒后是 90)。有了号码后,只需将其粘贴到第 147 行而不是第 90 行,然后注释掉第 160 行。
3D打印案例
这是 Thingiverse 的链接,其中包含用于打印我的案例的 STL。要组装它,您需要氰基丙烯酸酯胶(如强力胶)和四个小家具螺丝。还有很大的耐心,打印需要永远,然后固化胶水。另外,您只想将胶水放在外壳内部,因为 CA 胶水会在 PLA 上留下令人讨厌的白色东西。
我将它打印在 Tevo Tarantula Pro 的玻璃加热床上。以下是参数(它们也在 Thingiverse 上):
正面、正面元素(针脚和指纹/按钮槽)和顶部:
挤出机/床温 200/50;层 0.2 毫米; 填充 10% 蜂窝;熨烫;速度 60 毫米/秒;Z 跳上
底部、背面、侧面:
挤出机/床温 200/50;层 0.3 毫米;填充 10% 蜂窝;熨烫;速度 60 毫米/秒;Z 跳上
我花了14个多小时才把它全部打印出来。
此外,在你把所有东西放在一起之后,在 LCD、RFID 阅读器和按钮后面的每个引脚上滴一滴热胶,将它们固定在适当的位置。您可以使用扎带或热胶将指纹传感器锁定到位。
就是这样,感谢您阅读本文,我希望您能够自己完成!_ _ _ _
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !