跳到主要内容

基于RFID的考勤系统 – 电路、工作原理、源代码

在本文中,我们实现了两个不同的基于RFID的考勤系统项目,分别使用 8051微控制器AVR(ATmega8)微控制器

高校中的考勤通常是基于纸质记录的,这有时可能会导致错误。手动点名会消耗大量时间。因此,本文提出的考勤系统使用 RFID 技术实现自动考勤。

在该系统中,每个学生都会被分配一个RFID标签。控制单元位于学院内部。当卡片放置在读卡器附近时,系统将自动记录考勤。本文将对此进行详细说明。

但在阅读本文之前,请先了解如何将 LCD与AVR微控制器接口连接,因为在本电路中也包含了这一部分。

1. 概述

  • 电路构建与输出视频

  • DIY项目套件:基于RFID的考勤系统

2. 基于RFID的考勤系统电路原理

基于RFID的考勤系统由 RFID读卡器RFID标签LCD显示屏微控制器单元 组成。RFID模块可以通过 USART 接口与微控制器连接。数据从RFID卡传输到读卡器,再从读卡器传输到微控制器。

射频识别技术被广泛应用于多种场景。RFID标签分为两种类型:

  1. 无源标签(Passive Tag)
  2. 有源标签(Active Tag)

无源标签内部存储一个13位数字ID,而有源标签是 可读写标签,即可以从标签读取数据,也可以向标签写入数据。本项目中使用的是 无源标签

在实际应用中,可以为学生分配 有源标签,并将其学号写入标签中。RFID读卡器内部包含一组 铜线圈,其作用相当于 天线

当标签靠近读卡器时,由于 互感能量的感应,数据会被传输到读卡器。然后,读卡器将数据传输到微控制器。微控制器会持续检测是否接收到数据,一旦接收到数据,就会将其与数据库进行比较。

如果标签被认证,微控制器将记录考勤。本文还提供了 基于RFID考勤系统的演示视频

3. 电路1:基于AVR的RFID考勤系统电路

3.1 电路原理图

alt text

3.2 电路元件

  • ATmega8微控制器

  • RFID读卡器

  • RFID标签

  • LCD显示屏

3.3 电路设计

该RFID考勤系统的电路设计非常简单。RFID读卡器包含 TX(发送)RX(接收) 引脚,这些引脚分别连接到微控制器的 PD0PD1 引脚。

  • VCC 连接到5V
  • GND 连接到地

如果模块没有可用的引脚,可以使用 DB9连接器 进行连接。

  • PD0 为接收引脚(RX)
  • PD1 为发送引脚(TX)

3.3.1 RFID与USART通信

RFID模块通过 USART 与微控制器通信。USART是 通用同步与异步接收/发送器(Universal Synchronous and Asynchronous Receiver and Transmitter)的缩写。

数据可以通过 UART 从RFID模块串行传输到微控制器。ATmega8 内部集成USART寄存器,必须在程序中声明这些寄存器以实现串行收发功能。

3.3.2 LCD显示屏接口

LCD显示屏通过 4位模式 连接到微控制器的 Port B

  • D4-D7 数据引脚 → PB0-PB3
  • RS引脚 → PB4
  • RW引脚 → PB5
  • Enable引脚 → PB6

为了在LCD上显示数据,需要执行以下步骤:

  1. 初始化LCD为4位模式

  2. 将RW引脚置低

  3. 将RS引脚置高

  4. 使能Enable引脚

  5. 发送数据到数据引脚

  6. 禁用Enable引脚

4. 如何操作基于RFID的考勤系统

  1. 完成所有连接后,接通电源

  2. LCD显示 “PLEASE SWIPE THE CARD”

  3. 将RFID标签靠近读卡器

  4. 读卡器读取标签内数据并传输给微控制器

  5. 微控制器将接收到的ID与数据库比对

  6. 如果认证成功,LCD显示 “authenticated” 并记录考勤

  7. 如果标签未注册,LCD显示 “Unauthorised”,且不会记录考勤

5. 电路2:基于8051的RFID考勤系统

5.1 电路原理图

alt text

5.2 元件清单

  • AT89C51微控制器

  • AT89C51编程板

  • 11.0592MHz石英晶体

  • 2×33pF陶瓷电容

  • 2×10KΩ电阻

  • 10µF电解电容

  • 2×按钮开关

  • 16×2 LCD显示屏

  • 3×1KΩ电阻

  • 10KΩ电位器

  • EM-18 RFID读卡器模块

  • RFID标签或卡片

  • 连接线

5.3 电路设计

5.3.1 8051微控制器基本连接

  • 晶振:11.0592MHz石英晶体接至微控制器 XTAL1(引脚19)与 XTAL2(引脚18),并各接一个33pF电容到地

  • 复位电路:

    • RST引脚(Pin 9) 通过10KΩ电阻接地
    • 10µF电容 接在正电源与RST引脚之间
    • 按钮开关并联在电容两端
  • 外部访问引脚(Pin 31)通过10KΩ电阻上拉至正电源

5.3.2 LCD显示屏连接

  • 对比度调节:LCD第3引脚接一个10KΩ电位器

  • 控制引脚:

    • RS → P3.6
    • RW → GND
    • E → P3.7
  • 数据引脚:LCD的8个数据引脚接至微控制器 PORT1

5.3.3 RFID读卡器连接

  • RFID TX → 微控制器 P3.0(RXD)
  • RFID RX → 微控制器 P3.1(TXD)
  • P3.3 接按钮用于查看考勤详情

最后,一个按钮连接到 P3.3 (IN) 引脚,用于查看考勤详情。

alt text
alt text
alt text
alt text
alt text

5.4 工作原理

  1. 电路上电后,LCD显示 “Swipe the card”

  2. RFID读卡器检测ID卡后,通过串口向微控制器发送唯一ID

  3. 程序将接收的ID与预存数据库比对

  4. 如果匹配,LCD显示持卡人姓名并记录考勤

  5. 按下按钮可关闭考勤记录并循环显示考勤详情

  6. 复位微控制器可重新开始考勤过程

6. 基于RFID的考勤系统的应用

  • 可用于学校、企业、工厂等

  • 适用于所有需要身份认证的场景

7. 基于RFID的考勤系统的局限性

  • 存在 代刷卡 风险,一人可替他人签到
  • 如果程序未优化,重复刷卡可能导致系统错误记录多天的考勤