0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線(xiàn)課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

基于Arduino開(kāi)發(fā)板、指紋傳感器的考勤管理系統(tǒng)

454398 ? 來(lái)源:一板網(wǎng) ? 作者:風(fēng)箏 ? 2020-10-24 11:04 ? 次閱讀

眾所周知,適當(dāng)?shù)目记诠芾硐到y(tǒng)對(duì)任何類(lèi)型的機(jī)構(gòu)都至關(guān)重要。由于紙質(zhì)人工考勤方法涉及很多實(shí)際問(wèn)題,因此如今幾乎所有公司都已將其考勤管理流程自動(dòng)化。

在本篇文章中,我們將向您介紹如何使用Arduino開(kāi)發(fā)板、指紋傳感器SD卡模塊制作自己的考勤管理系統(tǒng)。如果您是工程專(zhuān)業(yè)的學(xué)生,那么這個(gè)項(xiàng)目可能是最佳選擇。而且,容易制作,時(shí)間短,預(yù)算不會(huì)太大。

所需組件

● Arduino Uno或Mega開(kāi)發(fā)板

● R305 / R307指紋模塊

● 帶I2C模塊的1602 LCD

● 2個(gè)按鈕

● 2個(gè)LED

● 2個(gè)10K歐姆電阻

● 面包板和跳線(xiàn)

所需的庫(kù)文件

Adafruit指紋傳感器庫(kù)

● LiquidCrystal I2C庫(kù)

● SD Arduino庫(kù)

接線(xiàn)硬件

即使接線(xiàn)圖看起來(lái)很復(fù)雜,制作起來(lái)也很簡(jiǎn)單。

為了獲得用戶(hù)輸入,指紋掃描儀直接與Arduino交互。 LCD模塊和LED指示輸出結(jié)果。 SD卡模塊將出勤記錄保存在SD卡上??梢允褂脙蓚€(gè)或多個(gè)按鈕來(lái)控制不同的過(guò)程。

讓我們研究一下每個(gè)模塊如何與Arduino進(jìn)行交互。

R305掃描儀與Arduino的連接

R305 / R307指紋掃描儀具有TTL UART接口,可以直接連接到Arduino的UART引腳。

SD卡模塊與Arduino的連接

SD卡模塊通過(guò)串行外圍接口(SPI)通信協(xié)議與Arduino通信。它可以簡(jiǎn)單地連接到Arduino的硬件SPI引腳。

帶I2C模塊的LCD與Arduino的連接

顧名思義,LCD模塊通過(guò)I2C通信與Arduino通信。

最后,可以如下圖所示連接兩個(gè)LED和按鈕。

指紋掃描儀系統(tǒng)概述

以下框圖顯示了系統(tǒng)的基本概述。

指紋傳感器和按鈕用作輸入模塊。在這里,我使用兩個(gè)按鈕進(jìn)行注冊(cè)和身份識(shí)別過(guò)程。當(dāng)我們要注冊(cè)新用戶(hù)時(shí),必須按下注冊(cè)按鈕以開(kāi)始注冊(cè)過(guò)程。按下考勤按鈕后,手指將被驗(yàn)證以標(biāo)記出勤。 LCD模塊和LED充當(dāng)輸出模塊。他們將打印消息和錯(cuò)誤以給出該過(guò)程的輸出。

指紋保存在指紋傳感器的閃存中。 R305模塊本身執(zhí)行指紋收集、比較和搜索。經(jīng)過(guò)驗(yàn)證的指紋的ID保存在SD卡上的文本文件中。我們可以通過(guò)從模塊中卸下microSD卡來(lái)使用該出勤報(bào)告。

Arduino代碼

該項(xiàng)目的Arduino代碼相當(dāng)長(zhǎng)。

我將基于兩個(gè)主要過(guò)程來(lái)解釋代碼:

● 指紋注冊(cè)

● 指紋識(shí)別和考勤

指紋注冊(cè)流程

指紋傳感器的所有功能均由Adafruit指紋傳感器庫(kù)控制。該庫(kù)包含驅(qū)動(dòng)指紋掃描儀的方法和功能。

在這里,我創(chuàng)建了一個(gè)名為getFingerprintEnroll()的函數(shù)來(lái)注冊(cè)新的指紋。調(diào)用此函數(shù)后,傳感器將接收兩次指紋掃描(指紋圖片)。然后,通過(guò)將這兩次掃描合并到內(nèi)置數(shù)據(jù)庫(kù)中的256個(gè)條目之一來(lái)保存指紋圖像。如果由于手指放置錯(cuò)誤而無(wú)法正確捕獲圖像,您將一直收到錯(cuò)誤消息。

在存儲(chǔ)指紋時(shí),我們必須在考慮傳感器存儲(chǔ)的同時(shí)確定數(shù)據(jù)庫(kù)位置。

如您所見(jiàn),我們首先必須找到已存儲(chǔ)在傳感器中的指紋數(shù)量。我們可以使用getTemplateCount()函數(shù)獲得該數(shù)字。由于存儲(chǔ)位置編號(hào)從0開(kāi)始,因此通過(guò)將數(shù)字增加1來(lái)設(shè)置ID。ID號(hào)是全局變量。因此,存儲(chǔ)指紋時(shí),分配的ID號(hào)將在getFingerprintEnroll()函數(shù)中使用。

指紋識(shí)別與標(biāo)記考勤過(guò)程

在考勤標(biāo)記過(guò)程中,將調(diào)用getFingerprintIDez()函數(shù)。此函數(shù)接收用戶(hù)的指紋并使用已存儲(chǔ)的指紋進(jìn)行檢查。

如果手指不在數(shù)據(jù)庫(kù)中,則掃描儀將返回錯(cuò)誤代碼。如果手指匹配,它將返回用戶(hù)ID號(hào)。

我已將ID號(hào)轉(zhuǎn)換為字符串變量,以將其存儲(chǔ)在SD卡中。最后,您將獲得如下的出勤報(bào)告:

指紋考勤系統(tǒng)演示

如您所見(jiàn),該項(xiàng)目的最終產(chǎn)品可以制作為便攜式設(shè)備。在注冊(cè)過(guò)程中,用戶(hù)必須提供兩次指紋。這意味著每個(gè)用戶(hù)都必須將手指從掃描儀上移開(kāi),然后再次放回原處才能進(jìn)行記錄。

在出勤過(guò)程中,我們需要按下開(kāi)始按鈕(藍(lán)色按鈕)以開(kāi)始該過(guò)程。 LCD顯示屏提示“Place the Finger”消息,以使我們知道該過(guò)程已開(kāi)始。然后,用戶(hù)必須將手指放在掃描儀上以標(biāo)記出勤。指紋匹配后,將提示“ Present”消息,并且藍(lán)色LED指示燈將亮起。如果不匹配,則紅色LED指示燈將閃爍并亮起,并顯示錯(cuò)誤消息“Finger not Found.”。

編輯:hfy

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 指紋識(shí)別
    +關(guān)注

    關(guān)注

    43

    文章

    1738

    瀏覽量

    102017
  • 指紋傳感器
    +關(guān)注

    關(guān)注

    6

    文章

    193

    瀏覽量

    63417
  • 考勤系統(tǒng)
    +關(guān)注

    關(guān)注

    0

    文章

    40

    瀏覽量

    11179
  • Arduino
    +關(guān)注

    關(guān)注

    187

    文章

    6453

    瀏覽量

    185931
收藏 人收藏

    評(píng)論

    相關(guān)推薦

    CW32模塊使用 指紋識(shí)別傳感器

    光學(xué)指紋識(shí)別傳感器采用了國(guó)內(nèi)著名指紋識(shí)別芯片公司杭州晟元芯片技術(shù)有限公司(Synochip) 的 AS608 指紋識(shí)別芯片。芯片內(nèi)置 DSP 運(yùn)算單元,集成了指紋識(shí)別算法,能高效快速采
    的頭像 發(fā)表于 09-18 15:15 ?127次閱讀
    CW32模塊使用 <b class='flag-5'>指紋識(shí)別傳感器</b>

    Linux環(huán)境Arduino開(kāi)發(fā)板管理器中安裝esp32模塊提示操作系統(tǒng)沒(méi)有openocd-esp32工具如何解決?

    Linux環(huán)境下Arduino開(kāi)發(fā)板管理器中安裝esp32模塊提示你的操作系統(tǒng)沒(méi)有 openocd-esp32 工具,這個(gè)問(wèn)題如何解決?
    發(fā)表于 06-06 08:11

    RK3568開(kāi)發(fā)板支持AMP雙系統(tǒng)

    RK3568開(kāi)發(fā)板支持AMP雙系統(tǒng)
    的頭像 發(fā)表于 06-04 15:33 ?428次閱讀
    RK3568<b class='flag-5'>開(kāi)發(fā)板</b>支持AMP雙<b class='flag-5'>系統(tǒng)</b>

    SiliconLabs攜手Arduino演示基于MGM240模塊的新型Nano Matter開(kāi)發(fā)板

    Arduino Nano Matter開(kāi)發(fā)板,從而將Matter協(xié)議引入Arduino生態(tài)系統(tǒng),為廣大的開(kāi)發(fā)人員提供一個(gè)快速涉足Matte
    的頭像 發(fā)表于 04-11 17:35 ?484次閱讀
    SiliconLabs攜手<b class='flag-5'>Arduino</b>演示基于MGM240模塊的新型Nano Matter<b class='flag-5'>開(kāi)發(fā)板</b>

    如何用Arduino開(kāi)發(fā)STM32G070?

    如何用Arduino開(kāi)發(fā)STM32G070,各位大神有相關(guān)教程嗎。我如何在Arduino開(kāi)發(fā)板管理器中添加STM32G070
    發(fā)表于 04-07 08:22

    指紋掛鎖方案——采用ACH512或ACM32FP4指紋芯片和88*112傳感器,指紋識(shí)別速度快,BOM成本低

    :ACH512或ACM32FP4? 傳感器分辨率:88*112點(diǎn)陣(推薦)? 指紋識(shí)別速度:平均0.8秒? 指紋庫(kù)大?。?0枚指紋? 待機(jī)電流(手指檢測(cè)):10uA? 工作電流(
    發(fā)表于 03-12 11:46

    指紋傳感器的定義 指紋傳感器的應(yīng)用

    指紋傳感器的定義 指紋傳感器的應(yīng)用? 指紋傳感器是一種生物識(shí)別技術(shù),通過(guò)檢測(cè)和分析人體
    的頭像 發(fā)表于 03-05 17:35 ?2740次閱讀

    fpga開(kāi)發(fā)板與linux開(kāi)發(fā)板區(qū)別

    (Field-Programmable Gate Array)是一種可編程邏輯器件,它可以通過(guò)編程改變硬件邏輯電路的功能和結(jié)構(gòu)。FPGA采用了可編程的門(mén)極,可以根據(jù)需要重新配置內(nèi)部電路,從而實(shí)現(xiàn)不同的功能和邏輯關(guān)系。而Linux開(kāi)發(fā)板則是一種嵌入式計(jì)算機(jī)平臺(tái),其核心是Linux操作
    的頭像 發(fā)表于 02-01 17:09 ?1683次閱讀

    51單片機(jī)開(kāi)發(fā)板的主要功能 51單片機(jī)開(kāi)發(fā)板能做什么

    具有多個(gè)通用輸入輸出引腳,可以連接各種外部設(shè)備和傳感器,實(shí)現(xiàn)數(shù)據(jù)的輸入和輸出。 時(shí)鐘管理開(kāi)發(fā)板通常會(huì)集成時(shí)鐘電路,包括晶振、時(shí)鐘發(fā)生等,可以提供穩(wěn)定的時(shí)鐘信號(hào)給單片機(jī)使用。 存儲(chǔ)
    的頭像 發(fā)表于 01-23 15:52 ?2678次閱讀

    【ELF 1開(kāi)發(fā)板試用】板載資源測(cè)試4:體驗(yàn)溫濕度傳感器

    飛凌嵌入式ELF1開(kāi)發(fā)板(以下簡(jiǎn)稱(chēng)為“開(kāi)發(fā)板”)將溫濕度傳感器AHT20集成在了底板上,此次依舊做最基礎(chǔ)的測(cè)試,以下是測(cè)試過(guò)程記錄。一、實(shí)驗(yàn)名稱(chēng)ELF 1
    發(fā)表于 12-18 11:09

    【ELF 1開(kāi)發(fā)板試用】板載資源測(cè)試2:體驗(yàn)六軸傳感器

    飛凌嵌入式ELF1開(kāi)發(fā)板(以下簡(jiǎn)稱(chēng)為“開(kāi)發(fā)板”)將六軸傳感器ICM-20607集成在了底板上,最直接的感覺(jué)是:如果配上顯示屏就可以開(kāi)發(fā)一款
    發(fā)表于 12-15 00:02

    小安派Arduino開(kāi)發(fā)板 ,全新支持以太網(wǎng)口

    前面幾款小安派出來(lái)的時(shí)候,經(jīng)常有粉絲詢(xún)問(wèn)是否支持Arduino?其它款小安派也是支持的,大家可以去安信可社區(qū)搜索查看,小安派-UNO-ET485 Arduino開(kāi)發(fā)板來(lái)了,兼容UNO的經(jīng)典外形,易
    的頭像 發(fā)表于 12-06 16:00 ?620次閱讀
    小安派<b class='flag-5'>Arduino</b><b class='flag-5'>開(kāi)發(fā)板</b> ,全新支持以太網(wǎng)口

    基于全志XR806開(kāi)發(fā)板的家用環(huán)境監(jiān)測(cè)傳感器設(shè)計(jì)

    本文來(lái)自全志XR806開(kāi)發(fā)板評(píng)測(cè)活動(dòng)文章,作者使用XR806開(kāi)發(fā)板制作一個(gè)簡(jiǎn)單的家用環(huán)境監(jiān)測(cè)傳感器,可以獲取當(dāng)前的溫度、濕度、氣壓、海拔這四個(gè)參數(shù),同時(shí)能夠通過(guò)外部的屏幕實(shí)時(shí)顯示刷新。
    的頭像 發(fā)表于 12-03 10:20 ?564次閱讀
    基于全志XR806<b class='flag-5'>開(kāi)發(fā)板</b>的家用環(huán)境監(jiān)測(cè)<b class='flag-5'>傳感器</b>設(shè)計(jì)

    【ELF 1開(kāi)發(fā)板試用】+傳感器檢測(cè)

    ELF 1開(kāi)發(fā)板通過(guò)幾種傳感器的測(cè)試,如溫濕度、六軸傳感器等,而在配備功能擴(kuò)展板的情況下,還能進(jìn)行光照強(qiáng)度的檢測(cè)。 溫濕度檢測(cè) ELF1 開(kāi)發(fā)板所配置的溫濕度
    發(fā)表于 11-29 11:59

    Arduino IDE打開(kāi)開(kāi)發(fā)板管理器搜索Arduino SAM的開(kāi)發(fā)板不能找到怎么解決?

    Arduino IDE打開(kāi)開(kāi)發(fā)板管理器搜索Arduino SAM的開(kāi)發(fā)板不能找到怎么解決 可能被墻 也沒(méi)有其他源可以替換 或者手動(dòng)安裝這個(gè)
    發(fā)表于 11-10 08:29