ชื่อโปรเจกต์: ระบบลงเวลาด้วย Arduino และ RFID Tag
การบันทึกข้อมูล: ระบบลงเวลา RFID
ในขณะที่ RFID Race Timer ติดตามนักกีฬาความเร็วสูง Attendance System จะเน้นหนักไปที่การจัดการฐานข้อมูล การแยกวิเคราะห์สตริง (string parsing) และการจัดเก็บข้อมูลแบบ non-volatile ที่เชื่อถือได้ในระยะยาว เป็นโปรเจกต์ที่สมบูรณ์แบบสำหรับการเรียนรู้วิธีการเขียนไฟล์ลง SSD/SD โดยตรงจาก C++

การจัดการ Database Array
ระบบจะต้องจดจำพนักงานได้หลายร้อยคน
- The Hash Table: โค้ด Arduino มี array ขนาดใหญ่ที่เชื่อมโยง UID กับชื่อบุคคล
String userUIDs[3] = {"04EAF12B", "1A2B3C4D", "9F8E7D6C"};String userNames[3] = {"Alice", "Bob", "Charlie"}; - การสแกน: บ็อบแตะการ์ดสีขาวของเขาที่โมดูลอ่าน MFRC522
- Arduino จะวนลูปผ่าน array
userUIDsมันพบการจับคู่ที่ index1มันรู้ว่าเป็นบ็อบ!
การสร้าง CSV Log (MicroSD)
Arduino จะต้องบันทึกข้อมูลนี้อย่างถาวร เพื่อให้ฝ่ายทรัพยากรบุคคล (HR) สามารถอ่านได้ใน Microsoft Excel
- มันจะสอบถาม DS3231 RTC Module เพื่อรับ timestamp:
2026-10-25 08:55:00 - โค้ดใช้ไลบรารี
<SD.h>ดั้งเดิมเพื่อเปิดlog.csvบน MicroSD card - การสร้าง:
dataFile.print(userNames[1]); dataFile.print(","); dataFile.println(timestamp); - ผลลัพธ์: ไฟล์จะเก็บบรรทัด
Bob, 2026-10-25 08:55:00ไว้อย่างปลอดภัย ไร้ที่ติ และไม่สามารถลบได้ - Arduino จะส่งเสียงบี๊บที่น่าพอใจ, กระพริบ green LED และเขียน "Welcome Bob" ไปยัง 16x2 Text LCD
ฮาร์ดแวร์ที่จำเป็นสำหรับสำนักงาน
- Arduino Uno/Nano/Mega
- MFRC522 RFID 13.56MHz SPI Module + Keychain Tags
- DS3231 RTC I2C Module
- MicroSD Card SPI Breakout Module
- 16x2 I2C LCD Display
- Piezo Buzzer สำหรับการยืนยันด้วยเสียงเมื่อสแกนสำเร็จ