0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于Arduino开发板、指纹传感器的考勤管理系统

454398 来源:一板网 作者:风筝 2020-10-24 11:04 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

众所周知,适当的考勤管理系统对任何类型的机构都至关重要。由于纸质人工考勤方法涉及很多实际问题,因此如今几乎所有公司都已将其考勤管理流程自动化。

在本篇文章中,我们将向您介绍如何使用Arduino开发板、指纹传感器SD卡模块制作自己的考勤管理系统。如果您是工程专业的学生,那么这个项目可能是最佳选择。而且,容易制作,时间短,预算不会太大。

所需组件

● Arduino Uno或Mega开发板

● R305 / R307指纹模块

● 带I2C模块的1602 LCD

● 2个按钮

● 2个LED

● 2个10K欧姆电阻

● 面包板和跳线

所需的库文件

Adafruit指纹传感器库

● LiquidCrystal I2C库

● SD Arduino库

接线硬件

即使接线图看起来很复杂,制作起来也很简单。

为了获得用户输入,指纹扫描仪直接与Arduino交互。 LCD模块和LED指示输出结果。 SD卡模块将出勤记录保存在SD卡上。可以使用两个或多个按钮来控制不同的过程。

让我们研究一下每个模块如何与Arduino进行交互。

R305扫描仪与Arduino的连接

R305 / R307指纹扫描仪具有TTL UART接口,可以直接连接到Arduino的UART引脚。

SD卡模块与Arduino的连接

SD卡模块通过串行外围接口(SPI)通信协议与Arduino通信。它可以简单地连接到Arduino的硬件SPI引脚。

带I2C模块的LCD与Arduino的连接

顾名思义,LCD模块通过I2C通信与Arduino通信。

最后,可以如下图所示连接两个LED和按钮。

指纹扫描仪系统概述

以下框图显示了系统的基本概述。

指纹传感器和按钮用作输入模块。在这里,我使用两个按钮进行注册和身份识别过程。当我们要注册新用户时,必须按下注册按钮以开始注册过程。按下考勤按钮后,手指将被验证以标记出勤。 LCD模块和LED充当输出模块。他们将打印消息和错误以给出该过程的输出。

指纹保存在指纹传感器的闪存中。 R305模块本身执行指纹收集、比较和搜索。经过验证的指纹的ID保存在SD卡上的文本文件中。我们可以通过从模块中卸下microSD卡来使用该出勤报告。

Arduino代码

该项目的Arduino代码相当长。

我将基于两个主要过程来解释代码:

● 指纹注册

● 指纹识别和考勤

指纹注册流程

指纹传感器的所有功能均由Adafruit指纹传感器库控制。该库包含驱动指纹扫描仪的方法和功能。

在这里,我创建了一个名为getFingerprintEnroll()的函数来注册新的指纹。调用此函数后,传感器将接收两次指纹扫描(指纹图片)。然后,通过将这两次扫描合并到内置数据库中的256个条目之一来保存指纹图像。如果由于手指放置错误而无法正确捕获图像,您将一直收到错误消息。

在存储指纹时,我们必须在考虑传感器存储的同时确定数据库位置。

如您所见,我们首先必须找到已存储在传感器中的指纹数量。我们可以使用getTemplateCount()函数获得该数字。由于存储位置编号从0开始,因此通过将数字增加1来设置ID。ID号是全局变量。因此,存储指纹时,分配的ID号将在getFingerprintEnroll()函数中使用。

指纹识别与标记考勤过程

在考勤标记过程中,将调用getFingerprintIDez()函数。此函数接收用户的指纹并使用已存储的指纹进行检查。

如果手指不在数据库中,则扫描仪将返回错误代码。如果手指匹配,它将返回用户ID号。

我已将ID号转换为字符串变量,以将其存储在SD卡中。最后,您将获得如下的出勤报告:

指纹考勤系统演示

如您所见,该项目的最终产品可以制作为便携式设备。在注册过程中,用户必须提供两次指纹。这意味着每个用户都必须将手指从扫描仪上移开,然后再次放回原处才能进行记录。

在出勤过程中,我们需要按下开始按钮(蓝色按钮)以开始该过程。 LCD显示屏提示“Place the Finger”消息,以使我们知道该过程已开始。然后,用户必须将手指放在扫描仪上以标记出勤。指纹匹配后,将提示“ Present”消息,并且蓝色LED指示灯将亮起。如果不匹配,则红色LED指示灯将闪烁并亮起,并显示错误消息“Finger not Found.”。

编辑:hfy

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 指纹识别
    +关注

    关注

    43

    文章

    1753

    浏览量

    104446
  • 指纹传感器
    +关注

    关注

    6

    文章

    197

    浏览量

    64398
  • 考勤系统
    +关注

    关注

    0

    文章

    41

    浏览量

    11510
  • Arduino
    +关注

    关注

    190

    文章

    6515

    浏览量

    195975
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    新品 | Unit Fingerprint2,高性能指纹识别传感器单元

    UnitFingerprint2是一款高性能指纹识别传感器单元,内部集成STM32核心主控与A-K323CP一体化指纹识别模组,采用半导体电容式传感器,具备指纹采集、特征提取、注册、比
    的头像 发表于 10-17 17:41 1067次阅读
    新品 | Unit Fingerprint2,高性能<b class='flag-5'>指纹识别传感器</b>单元

    STM32 Nucleo-144开发板技术解析与应用指南

    。 STMicroelectronics开发板支持多种连接选项,包括Arduino、ST Zio和Morpho,同时集成了开关模式电源(SMPS),可实现高效的电源管理。该非常适合
    的头像 发表于 10-17 14:40 532次阅读
    STM32 Nucleo-144<b class='flag-5'>开发板</b>技术解析与应用指南

    ‌STM32 Nucleo-64开发板技术解析与应用指南

    STMicroelectronics -C051C8 STM32 Nucleo-64开发板通过由STM32微控制为概念测试和原型创建提供了一种经济实惠且灵活的途径。该开发板支持ARDUINO
    的头像 发表于 10-16 10:50 411次阅读
    ‌STM32 Nucleo-64<b class='flag-5'>开发板</b>技术解析与应用指南

    ‌AVR-IoT蜂窝迷你开发板技术解析与应用指南

    、ATECC608B安全元件和Sequans Monarch 2 GM02S蜂窝模块。可以使用板载Adafruit Feather兼容边缘连接或Qwiic® I^2^C连接以添加传感器和执行
    的头像 发表于 10-14 14:57 363次阅读
    ‌AVR-IoT蜂窝迷你<b class='flag-5'>开发板</b>技术解析与应用指南

    ‌PIC32CZ CA70 Curiosity Ultra开发板用户指南总结

    微控制 (MCU)。该开发板集成编程或调试,无需额外硬件。PIC32CZ CA70开发板配备Ard
    的头像 发表于 09-28 14:43 448次阅读
    ‌PIC32CZ CA70 Curiosity Ultra<b class='flag-5'>开发板</b>用户指南总结

    如何用Arduino Nano/UNO R3开发板给另一个Arduino IDE不能下载的Arduino Nano/UNO R3开发板重新烧录引导程序bootlaoder

    本文介绍了如何用能够Arduino IDE下载的Arduino Nano/UNO R3开发板给另一个Arduino IDE不能下载的Arduino
    的头像 发表于 08-08 20:16 3064次阅读
    如何用<b class='flag-5'>Arduino</b> Nano/UNO R3<b class='flag-5'>开发板</b>给另一个<b class='flag-5'>Arduino</b> IDE不能下载的<b class='flag-5'>Arduino</b> Nano/UNO R3<b class='flag-5'>开发板</b>重新烧录引导程序bootlaoder

    【新品】远距离图传数传模块开发板、蓝牙模块开发板、无线模块开发板

    新品上市图传数传模块开发板蓝牙模块开发板国产无线模块开发板部分型号参与送样文末了解详情↓↓↓EWT611-900NW20S远距离图传数传模块开发板EWT611-900NW20S是一款入
    的头像 发表于 06-12 19:33 897次阅读
    【新品】远距离图传数传模块<b class='flag-5'>开发板</b>、蓝牙模块<b class='flag-5'>开发板</b>、无线模块<b class='flag-5'>开发板</b>

    第二章 开发板与芯片介绍 详解W55MH32芯片及开发板

    本章介绍了W55MH32芯片及开发板。该芯片采用Cortex-M3内核,主频216MHz,集成以太网功能,有L和Q两种型号。配套开发板L-EVB功能丰富、Q-EVB为最小系统,均含仿
    的头像 发表于 05-26 09:19 1037次阅读
    第二章 <b class='flag-5'>开发板</b>与芯片介绍  详解W55MH32芯片及<b class='flag-5'>开发板</b>

    《ESP32S3 Arduino开发指南》第二章 Arduino基础知识

    门槛很低。几乎任何人,即使不懂电脑编程也能用Arduino做出很酷的东西,比如点灯,控制马达,对传感器进行回应。简单来说,使用Arduino开发优势非常明显,可以归纳为一下5点:1、
    发表于 05-13 09:28

    明远智睿SSD2351开发板:仪器仪表与智慧农业的创新利器

    开发板同样发挥着重要作用。四核处理能够同时处理农田中各种传感器采集到的数据,如土壤墒情、气象信息、作物生长状况等。通过对这些数据的分析和处理,开发板可以控制灌溉
    发表于 05-09 19:09

    STM32开发板一般都会配置arduino接口,是不是基本上也都会支持arduino

    STM32开发板一般都会配置arduino接口,是不是基本上也都会支持arduino?这个在哪里可以查询开发板是否支持
    发表于 03-07 06:33

    用AI人脸识别开发板BW21-CBV-Kit驱动墨水屏

    试着用BW21-CBV-Kit点亮2.9寸墨水屏,开发板例程非常丰富,在arduino开发的话上手超级容易。
    的头像 发表于 03-04 18:24 1534次阅读
    用AI人脸识别<b class='flag-5'>开发板</b>BW21-CBV-Kit驱动墨水屏

    通过Arduino Nano Matter开发板构建智能卷帘系统

    在本指南中,您将学习如何通过Arduino NanoMatter开发板上的Silicon Labs(芯科科技)MGM240S多协议无线模块来构建一个智能卷帘系统。该
    的头像 发表于 02-28 09:46 917次阅读
    通过<b class='flag-5'>Arduino</b> Nano Matter<b class='flag-5'>开发板</b>构建智能卷帘<b class='flag-5'>系统</b>

    瑞芯微主板/开发板Linux系统播放音频方法,触觉智能RK3562开发板演示

    本文介绍瑞芯微方案主板/开发板Linux系统播放音频的方法,触觉智能RK3562开发板演示,通用RK3566、RK3568、RK3588等
    的头像 发表于 12-13 11:40 1402次阅读
    瑞芯微主板/<b class='flag-5'>开发板</b>Linux<b class='flag-5'>系统</b>播放音频方法,触觉智能RK3562<b class='flag-5'>开发板</b>演示

    Arduino Nano Matter开发板正式上市

    Silicon Labs(芯科科技)和Arduino在近日共同宣布Arduino Nano Matter开发板现已正式上市。这是延续今年3 月芯科科技和Arduino释出
    的头像 发表于 12-10 13:50 1430次阅读