亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Manufacturing Technology >> 制造工艺

高级RFID考勤系统v2.0:无需以太网的完整方案

元器件与材料

元器件数量
Arduino UNO1
跳线(通用)1套
RFID RC522模块1

所需软件与服务(仅限Windows)

项目详解

本系统是“在线RFID考勤系统(无需以太网)”的第二版。相比第一版,v2.0彻底消除了编程门槛——仅需按原理图接线,即可快速部署一套功能完整的在线考勤系统,包含LCD显示屏实时反馈。

工作流程

硬件连接

高级RFID考勤系统v2.0:无需以太网的完整方案

详细引脚定义请见原理图部分。

LCD1602接线(4位模式):

RFID RC522接线(SPI):

软件部署步骤

  1. 创建用户组与生成验证密钥
    访问 注册页面 创建考勤用户组并获取免费验证密钥(务必妥善保存)。
  2. 下载配套程序
    下载上述两个zip包,解压至电脑,根据系统架构(32/64位)选择对应exe文件。
  3. 连接硬件
    Arduino与RC522连接同一台PC(通过USB)。
  4. 上传Arduino固件
    将下方Arduino代码复制到IDE,编译上传。
  5. 录入RFID标签(运行addRFIDTagsProg.exe)
    • 程序启动后提示选择COM口
    • 输入步骤1获得的验证密钥,点击“Validate Key”
    • 验证通过后,将RFID卡靠近读卡器,UID自动显示
    • 输入持卡人姓名,点击添加
    • 成功后可在Web面板 查看用户列表
  6. Web端分配用户
    登录 Web管理后台,进入“Users → Pending User List”将录入的UID分配给具体员工/学生。
  7. 运行考勤程序(markOnlineAttendance.exe)
    程序显示“Status: Connected”,将RFID卡靠近读卡器数秒即可完成打卡,LCD显示结果。
  8. 查看考勤记录
    Web后台“Attendance Controls → View Attendance”选择年月点击“Show”导出记录。

Arduino核心代码

/* 
  基于MFRC522库示例修改
  LCD接线见上文,RFID接线标准SPI
*/
#include 
#include 
#include 

const int rs = A0, en = A1, d4 = 5, d5 = 4, d6 = 3, d7 = 2;
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);

#define SS_PIN 10
#define RST_PIN 9

int greenLedPin = A2;
int redLedPin = A3;
int orangeLedPin = 6;
int buzzerPin = A4;

MFRC522 rfid(SS_PIN, RST_PIN);
MFRC522::MIFARE_Key key;
byte nuidPICC[4];
boolean chkConn = false;
boolean isValidating = false;

void setup() {
  Serial.begin(9600);
  SPI.begin();
  rfid.PCD_Init();
  
  pinMode(greenLedPin, OUTPUT);
  pinMode(redLedPin, OUTPUT);
  pinMode(buzzerPin, OUTPUT);
  
  for (byte i = 0; i < 6; i++) key.keyByte[i] = 0xFF;
  
  lcd.begin(16, 2);
  lcd.print("GadgetProgrammer");
  delay(100);
  lcd.setCursor(0, 1);
  lcd.print(" Not Connected! ");
  establishConnection();
}

void loop() {
  // 处理PC端串口指令
  if (Serial.available() > 0) {
    char cmd = Serial.read();
    lcd.blink();
    if (cmd == 'A') { chkConn = true; analogWrite(orangeLedPin,0); lcd.print("Swipe Your Card!"); }
    if (cmd == 'V') { analogWrite(orangeLedPin,1000); lcd.print("Validating Group"); isValidating = true; delay(1000); }
    if (cmd == 'S') { lcd.print("Validation Done!"); glowGreenLed(1000); isValidating = false; delay(1000); }
    
    if (chkConn) {
      if (cmd == '1') { lcd.print("Attendance Done!"); glowGreenLed(1000); delay(4000); }
      else if (cmd == '0' || cmd == '5') { lcd.print("Network Error!"); glowRedLed(1000); delay(4000); }
      else if (cmd == '2') { lcd.print("User Not Found!"); glowRedLed(1000); delay(4000); }
    }
    if (!isValidating) { lcd.setCursor(0,1); analogWrite(orangeLedPin,0); lcd.print("Swipe Your Card!"); }
  }

  // 读卡逻辑
  if (!rfid.PICC_IsNewCardPresent()) return;
  if (!rfid.PICC_ReadCardSerial()) return;
  
  MFRC522::PICC_Type piccType = rfid.PICC_GetType(rfid.uid.sak);
  if (piccType != MFRC522::PICC_TYPE_MIFARE_MINI &&
      piccType != MFRC522::PICC_TYPE_MIFARE_1K &&
      piccType != MFRC522::PICC_TYPE_MIFARE_4K) return;
  
  // 发送4字节UID十六进制到串口
  for (byte i = 0; i < 4; i++) nuidPICC[i] = rfid.uid.uidByte[i];
  printHex(rfid.uid.uidByte, rfid.uid.size);
  Serial.println();
  
  lcd.setCursor(0,1); lcd.print("Reading Card...!");
  rfid.PICC_HaltA();
  rfid.PCD_StopCrypto1();
  delay(1000);
}

// 辅助函数:十六进制打印、LED蜂鸣器控制、建立连接握手等
void printHex(byte *buffer, byte bufferSize) { ... }
void glowGreenLed(int dt) { ... }
void glowRedLed(int dt) { ... }
void establishConnection() { while (Serial.available() <= 0 && !chkConn) { Serial.println("A"); glowOrangeLed(); delay(200); } }

原理图文件

注意:配套PC程序及Web后台目前仅支持Windows,作者称正在适配其他系统。部署前请确认网络可访问 parikshacrack.com 域名。

制造工艺

  1. 擀面杖:从伊特鲁里亚起源到现代工艺的演变
  2. 现代保龄球瓶的演变与工艺
  3. 太阳能供暖系统:从被动式到主动式的可持续家居供暖方案
  4. 从古老纤维到现代制造:安全别针全解析
  5. Primal Display:树莓派 LCD 温度监测仪
  6. 基于 Arduino 与 Python 的可靠 RFID 考勤系统
  7. 基于 Arduino 与 Google Sheets 的实时 RFID 考勤系统
  8. Arduino 指纹考勤系统:本地存储 + ThingSpeak 云端同步
  9. 输送系统全解析:工作原理、类型与核心优势
  10. 掌握车辆悬架系统:保护爱车与提升乘坐舒适的核心技术
  11. 革命性热电制冷系统提升电脑芯片与电池性能:双材料主动/被动模式
  12. Elkem Silicones发布LSR Select:低温固化与定制配方实现周期缩短50%