Bối cảnh và vấn đề nghiên cứu

Trong môi trường giáo dục đại học, sự gia tăng nhanh chóng về quy mô đào tạo và số lượng sinh viên trên mỗi khóa học đặt ra nhiều thách thức cho công tác quản trị lớp học. Phương thức điểm danh truyền thống (gọi tên hoặc ký tên vào danh sách giấy) bộc lộ nhiều điểm hạn chế như làm mất thời gian giảng dạy trên lớp, dễ xảy ra sai sót khi tổng hợp dữ liệu chuyên cần thủ công vào cuối kỳ, và gây khó khăn cho sinh viên trong việc chủ động theo dõi tình trạng tham gia học tập của bản thân.

Xuất phát từ thực trạng đó, đồ án tốt nghiệp "Thiết kế hệ thống điểm danh sinh viên dùng công nghệ RFID" do sinh viên Huỳnh Thanh Tùng và Đặng Minh Duy thực hiện dưới sự hướng dẫn của ThS. Nguyễn Văn Hiệp tại Khoa Điện – Điện tử, Trường Đại học Sư phạm Kỹ thuật TP. Hồ Chí Minh (tháng 01/2017) đã đặt ra các mục tiêu và nhiệm vụ cụ thể:

  1. Mục tiêu tổng quát: Ứng dụng công nghệ nhận dạng qua sóng vô tuyến (RFID) kết hợp với thiết bị di động thông minh chạy hệ điều hành Android nhằm xây dựng một hệ thống điểm danh tự động, hỗ trợ giảng viên quản lý chuyên cần linh hoạt và giúp sinh viên tự tra cứu thông tin học tập.
  2. Nhiệm vụ nghiên cứu và thực hiện:
    • Nghiên cứu nguyên lý hoạt động của công nghệ RFID và khảo sát module đọc thẻ RFID RC522.
    • Nghiên cứu chuẩn truyền thông không dây Bluetooth và module Bluetooth HC-05.
    • Thiết kế, thi công khối xử lý trung tâm sử dụng vi điều khiển trên nền tảng bo mạch Arduino Uno R3 để kết nối đầu đọc thẻ và bộ truyền thông không dây.
    • Xây dựng phần mềm ứng dụng trên hệ điều hành Android dành cho giảng viên (nhận dữ liệu điểm danh, quản lý lớp học, thống kê) và ứng dụng cho sinh viên (tra cứu chuyên cần, điểm số, thông báo).
    • Tích hợp cơ sở dữ liệu thời gian thực Firebase để lưu trữ và đồng bộ hóa dữ liệu giữa các thiết bị.
  3. Đối tượng và phạm vi nghiên cứu:
    • Đối tượng nghiên cứu: Công nghệ nhận dạng thẻ RFID (tần số 13.56 MHz), chuẩn truyền thông Bluetooth, vi điều khiển ATmega328, hệ điều hành di động Android và dịch vụ đám mây Firebase.
    • Phạm vi áp dụng: Hệ thống được thiết kế phục vụ quy mô một giảng viên và các lớp học/sinh viên trực thuộc quyền quản lý của giảng viên đó.
    • Giới hạn hệ thống: Thiết bị nhận dạng thực hiện điểm danh dựa trên mã định danh của thẻ RFID, không có cơ chế sinh trắc học để xác thực người quẹt thẻ có chính xác là chủ thẻ hay không.

Cơ sở lý thuyết và phương pháp

Đồ án được xây dựng dựa trên việc tổng hợp các lý thuyết kỹ thuật chuyên ngành điện tử truyền thông và công nghệ phần mềm di động, bao gồm các mảng kiến thức sau:

Khung lý thuyết và công nghệ sử dụng

  • Công nghệ RFID (Radio Frequency Identification): Là công nghệ nhận dạng đối tượng bằng sóng vô tuyến. Hệ thống RFID bao gồm các thành phần: thẻ RFID (Tag), đầu đọc (Reader), anten đầu đọc, bộ điều khiển (Controller), cơ cấu chỉ thị/cảm biến và hạ tầng truyền thông/máy chủ. Thẻ RFID được phân loại theo nguồn nuôi (thụ động - passive, tích cực - active, bán tích cực - semi-active) và khả năng ghi dữ liệu (Read Only - RO, Write Once Read Many - WORM, Read Write - RW). Cơ chế giao tiếp giữa đầu đọc và thẻ thụ động sử dụng nguyên lý cảm ứng điện từ hoặc tán xạ ngược ở các dải tần LF, HF, UHF hoặc Microwave.
  • Hệ điều hành Android: Hệ điều hành mã nguồn mở cho thiết bị di động dựa trên nhân Linux 2.6. Kiến trúc Android gồm 5 tầng chính: Linux Kernel, Libraries (SQLite, WebKit, libc, SSL...), Android Runtime (máy ảo Dalvik VM tối ưu hóa cho Java và bộ thư viện lõi), Application Framework (các dịch vụ quản lý Activity, Window, Content Provider...), và tầng Applications. Vòng đời ứng dụng di động được quản lý qua các trạng thái của Activity (onCreate, onStart, onResume, onPause, onStop, onDestroy, onRestart).
  • Chuẩn truyền thông không dây Bluetooth: Mạng cá nhân không dây (WPAN) hoạt động trên băng tần ISM 2.4 GHz không cần cấp phép, phạm vi phủ sóng khoảng 10m đến 12m với tốc độ truyền dữ liệu danh định 1 Mbps. Chuẩn này sử dụng kỹ thuật nhảy tần thích ứng trên 79 kênh với tần số 1600 lần/giây để chống nhiễu. Cấu trúc gói tin Bluetooth gồm 3 phần: Access Code (72 bits), Header (54 bits, mã hóa từ 18 bits gốc bằng tỷ lệ 1/3 FEC), và Payload (0 đến 2744 bits). Cơ chế phát hiện và sửa lỗi sử dụng mã sửa lỗi Forward Error Correction (FEC), tự động gửi lại Automatic Repeat Request (ARQ), và kiểm tra độ dư tuần hoàn Cyclic Redundancy Check (CRC).
  • Nền tảng cơ sở dữ liệu thời gian thực Firebase: Dịch vụ cơ sở dữ liệu NoSQL trên nền tảng đám mây do Google cung cấp, lưu trữ dữ liệu dưới định dạng JSON. Firebase cung cấp khả năng đồng bộ dữ liệu thời gian thực (realtime) đến các ứng dụng khách thông qua kết nối mã hóa SSL chứng chỉ 2048-bit, đồng thời hỗ trợ bộ nhớ đệm cục bộ (local cache) giúp duy trì tương tác khi mất kết nối mạng và tự động đồng bộ khi có mạng trở lại.

Phương pháp nghiên cứu và nguồn dữ liệu

Tác giả sử dụng phương pháp thiết kế kỹ thuật thực nghiệm kết hợp phát triển hệ thống nhúng và phần mềm ứng dụng:

  • Thiết kế phần cứng: Phối ghép các module chức năng chuyên biệt (RFID RC522 giao tiếp SPI, Bluetooth HC-05 giao tiếp UART) với vi điều khiển trung tâm ATmega328 (bo mạch Arduino Uno R3).
  • Phát triển phần mềm: Lập trình firmware cho vi điều khiển bằng ngôn ngữ C/C++ trên Arduino IDE; phát triển ứng dụng di động trên hệ điều hành Android bằng ngôn ngữ Java; thiết kế cấu trúc cây dữ liệu JSON trên Firebase Realtime Database.
  • Nguồn dữ liệu: Tài liệu kỹ thuật linh kiện (datasheet vi điều khiển ATmega328, IC MFRC522 của Philips/NXP, module HC-05), tài liệu lập trình Android SDK và tài liệu kỹ thuật Firebase.

Thiết kế và triển khai hệ thống

Hệ thống điểm danh được xây dựng theo mô hình phân tán không dây gồm hai phân hệ chính: Phân hệ phần cứng đọc thẻ di động và Phân hệ phần mềm trên điện thoại Android kết nối đám mây.

[Thẻ RFID Mifare] 
                                         (Chuẩn UART)
                                    [Module Bluetooth HC-05]
                                        (Bluetooth 2.4GHz)
                                 [Smartphone Android Giảng viên]
                                      (Mạng Internet / SSL)
                                    [Firebase Realtime DB]
                                      (Mạng Internet / SSL)
                                 [Smartphone Android Sinh viên]

1. Thiết kế phần cứng

Phần cứng là một thiết bị cầm tay sử dụng nguồn pin độc lập, bao gồm các khối chức năng được liên kết chặt chẽ:

Khối chức năng Linh kiện / Module sử dụng Thông số kỹ thuật và chuẩn giao tiếp
Xử lý trung tâm Arduino Uno R3 (Vi điều khiển ATmega328 họ 8-bit) Tần số xung nhịp 16 MHz; Điện áp hoạt động 5V DC; 14 chân Digital I/O (6 chân PWM); 6 chân Analog 10-bit; Dòng tối đa mỗi chân I/O là 30 mA; Dòng ra 5V tối đa 500 mA.
Đọc thẻ RFID Module RFID RC522 (IC Philips MFRC522) Tần số sóng mang 13.56 MHz; Giao tiếp chuẩn SPI; Khoảng cách đọc 0 – 60 mm; Tốc độ truyền tối đa 10 Mbit/s; Dòng chờ 10 – 13 mA; Dòng nghỉ < 80 µA; Kích thước 40 mm × 60 mm; Hỗ trợ thẻ Mifare1 S50, S70, UltraLight, Mifare Pro, DESFire.
Truyền thông không dây Module Bluetooth HC-05 Băng tần ISM 2.4 GHz; Tốc độ chuẩn 2.0+EDR; Giao tiếp nối tiếp UART (chân 0 RX, chân 1 TX trên Arduino); Bán kính hoạt động ~12m; Điện áp hoạt động 3.3V – 5V; Hỗ trợ chế độ tự động kết nối và chế độ lệnh AT; 3 chế độ: Master, Slave, Loopback.
Báo hiệu & Nguồn Còi chip (Buzzer), LED chỉ thị, Bộ pin di động Báo hiệu âm thanh/ánh sáng khi đọc thẻ thành công; Bộ pin di động cấp nguồn 7 – 12V DC qua giắc nguồn của Arduino để đảm bảo tính lưu động.

Cấu hình kết nối phần cứng chính:

  • Kết nối SPI giữa Arduino Uno và Module RC522: Chân SDA(SS) nối chân D10, SCK nối D13, MOSI nối D11, MISO nối D12, RST nối D9, nguồn cấp 3.3V và GND.
  • Kết nối UART giữa Arduino Uno và Module HC-05: Chân TX của HC-05 nối chân 0 (RX) của Arduino, chân RX của HC-05 nối chân 1 (TX) của Arduino, chân KEY cấu hình chế độ, nguồn cấp 5V và GND.

2. Thiết kế phần mềm và cấu trúc dữ liệu

  • Ứng dụng trên thiết bị giảng viên:

    • Giao diện được tổ chức dạng menu trượt (NavigationView).
    • Chức năng kết nối Bluetooth: Quét tìm, ghép nối và nhận luồng dữ liệu (chuỗi mã thẻ UID) từ module HC-05.
    • Chức năng điểm danh: Khi có dữ liệu mã thẻ gửi về, ứng dụng đối soát với danh sách sinh viên đã lưu; nếu hợp lệ, trạng thái điểm danh được cập nhật kèm thời gian thực và tự động phát tín hiệu phản hồi.
    • Chức năng quản lý: Tạo mới và chỉnh sửa môn học, khóa học, danh sách lớp, thông tin cá nhân sinh viên và thông tin tài khoản.
    • Chức năng thống kê: Tổng hợp tỷ lệ chuyên cần theo từng buổi hoặc toàn khóa, xuất dữ liệu đánh giá quá trình học tập.
    • Đồng bộ dữ liệu: Đẩy toàn bộ dữ liệu lớp học, kết quả điểm danh và thông báo lên cơ sở dữ liệu đám mây Firebase thông qua giao thức bảo mật SSL.
  • Ứng dụng trên thiết bị sinh viên:

    • Cho phép sinh viên đăng nhập bằng tài khoản cá nhân.
    • Tra cứu thông tin cá nhân, cập nhật dữ liệu tài khoản.
    • Theo dõi kết quả điểm danh theo thời gian thực của các môn học đang tham gia để nắm bắt tình trạng chuyên cần.
    • Xem điểm số, thời khóa biểu và nhận các thông báo trực tiếp từ giảng viên.

Nội dung chính theo từng chương

Bố cục đồ án tốt nghiệp gồm 6 chương với các nội dung trọng tâm như sau:

  • Chương 1: Tổng quan: Đặt vấn đề nghiên cứu về thực trạng điểm danh sinh viên; phân tích ưu điểm của công nghệ RFID; nêu rõ mục tiêu đề tài, nhiệm vụ kỹ thuật, phạm vi áp dụng (hệ thống phục vụ một giảng viên) và giới hạn hệ thống (điểm danh theo mã thẻ, không xác thực sinh trắc học chủ thẻ); phân tích sự khác biệt so với các đề tài nghiên cứu trước đó.
  • Chương 2: Cơ sở lý thuyết: Trình bày toàn diện lý thuyết về công nghệ nhận dạng sóng vô tuyến RFID (khái niệm, các thành phần hệ thống, phân loại thẻ thụ động/tích cực/bán tích cực, phân loại thẻ theo khả năng ghi RO/WORM/RW, cấu tạo vi mạch thẻ, các loại đầu đọc serial/network, cơ chế truyền dữ liệu và dải tần hoạt động); lý thuyết hệ điều hành Android (lịch sử phát triển, kiến trúc 5 tầng, vòng đời Activity, các thành phần ứng dụng Activity, Intent, Service, Broadcast Receiver, Content Provider, Notification); lý thuyết chuẩn truyền thông Bluetooth (đặc điểm, kỹ thuật nhảy tần 79 kênh trên dải ISM 2.4 GHz, cấu trúc gói tin, cơ chế sửa lỗi FEC/ARQ/CRC); tổng quan nền tảng Firebase Realtime Database.
  • Chương 3: Thiết kế: Trình bày chi tiết sơ đồ khối hệ thống toàn cục; thiết kế sơ đồ nguyên lý mạch phần cứng; tính toán và lựa chọn linh kiện (bo mạch Arduino Uno R3 dùng chip ATmega328, module RFID RC522 dùng IC MFRC522, module Bluetooth HC-05, khối nguồn pin và khối báo hiệu); thiết kế sơ đồ chân kết nối SPI và UART; thiết kế kiến trúc và giao diện đồ họa cho ứng dụng Android của giảng viên (sử dụng NavigationView, màn hình điểm danh, màn hình quản lý môn học, màn hình thống kê) và ứng dụng Android của sinh viên.
  • Chương 4: Thi công: Trình bày quá trình lắp ráp, gia công phần cứng hoàn chỉnh thành thiết bị điểm danh cầm tay; cấu hình các thông số truyền thông cho module Bluetooth HC-05; nạp chương trình điều khiển cho bo mạch Arduino; lập trình mã nguồn các Activity và Service trên Android Studio; cấu hình dịch vụ cơ sở dữ liệu trên bảng điều khiển Firebase.
  • Chương 5: Kết quả, nhận xét và đánh giá: Báo cáo kết quả thử nghiệm thực tế của mô hình phần cứng đọc thẻ; đánh giá độ ổn định của kết nối không dây Bluetooth giữa thiết bị đọc thẻ và điện thoại di động; kiểm thử các chức năng điểm danh, quản lý dữ liệu, thống kê chuyên cần trên ứng dụng giảng viên và tra cứu dữ liệu trên ứng dụng sinh viên; đánh giá tốc độ đồng bộ thời gian thực của cơ sở dữ liệu Firebase.
  • Chương 6: Kết luận và hướng phát triển: Đánh giá mức độ hoàn thành so với các mục tiêu ban đầu đã đề ra; tổng kết các ưu điểm và mặt còn tồn tại của hệ thống; đề xuất các hướng mở rộng kỹ thuật trong tương lai.

Kết quả và đóng góp

Kết quả kỹ thuật đạt được

  1. Về phần cứng:
    • Chế tạo thành công thiết bị đọc thẻ RFID cầm tay, nhỏ gọn, hoạt động độc lập bằng pin di động.
    • Giao tiếp thành công giữa vi điều khiển ATmega328 và module RC522 qua chuẩn SPI ở tần số 13.56 MHz, đọc chính xác mã thẻ Mifare trong cự ly 0 – 60 mm.
    • Thiết lập truyền nhận dữ liệu nối tiếp không dây ổn định qua module Bluetooth HC-05 tới smartphone trong phạm vi bán kính cho phép (~12m).
  2. Về phần mềm và cơ sở dữ liệu:
    • Xây dựng hoàn chỉnh ứng dụng Android dành cho giảng viên với đầy đủ các phân hệ: nhận mã thẻ Bluetooth, điểm danh tự động, quản lý thông tin sinh viên, quản lý môn học, thống kê tình trạng chuyên cần.
    • Xây dựng ứng dụng Android dành cho sinh viên cho phép theo dõi trực tiếp kết quả điểm danh, lịch học và thông báo.
    • Tích hợp cơ chế đồng bộ dữ liệu thời gian thực trên nền tảng đám mây Firebase Realtime Database, cho phép lưu trữ dưới định dạng JSON và duy trì khả năng hoạt động ngay cả khi ngắt kết nối mạng tạm thời.

Đóng góp so với các nghiên cứu trước

Trong phần tổng quan, tác giả đã tiến hành đối chiếu với các công trình nghiên cứu cùng hướng trước đó tại Việt Nam:

Tiêu chí so sánh Các nghiên cứu trước (ví dụ: đề tài [3], [4]) Đồ án của nhóm tác giả
Vị trí thiết bị đọc Đặt cố định tại cửa lớp hoặc bàn giảng viên. Thiết bị cầm tay, di động, hoạt động bằng pin.
Giao tiếp quản lý Kết nối trực tiếp với máy tính để bàn (PC) qua dây cáp nối tiếp hoặc mạng LAN. Kết nối không dây qua Bluetooth với điện thoại thông minh (smartphone) của giảng viên.
Tính linh hoạt Kém linh hoạt; phụ thuộc vào vị trí cố định và hạ tầng máy tính tại phòng học. Tính di động cao; giảng viên có thể cầm thiết bị di chuyển trong lớp để điểm danh theo nhu cầu.
Khả năng tương tác của người học Sinh viên thường không có kênh theo dõi trực tiếp kết quả điểm danh tức thời. Sinh viên có ứng dụng di động riêng để kiểm tra chuyên cần và nhận thông báo từ giảng viên theo thời gian thực.

Hạn chế và hướng nghiên cứu tiếp

Hạn chế của hệ thống

  • Nhận dạng danh tính: Hệ thống chỉ thực hiện điểm danh dựa trên mã định danh của thẻ RFID được quét vào đầu đọc; chưa có cơ chế kiểm tra sinh trắc học để xác định chính xác người đang quẹt thẻ có phải là chủ sở hữu hợp pháp của thẻ hay không (hiện tượng điểm danh hộ).
  • Quy mô triển khai: Thiết kế phần mềm hiện tại được xây dựng cho mô hình một giảng viên quản lý các lớp học và sinh viên thuộc các khóa học của giảng viên đó; chưa liên kết tập trung vào hệ thống quản lý đào tạo chung toàn trường.

Hướng nghiên cứu tiếp

  • Tích hợp thêm các phương thức nhận dạng sinh trắc học (như cảm biến vân tay hoặc nhận diện khuôn mặt) vào thiết bị đọc hoặc ứng dụng di động nhằm loại bỏ tình trạng quẹt thẻ hộ.
  • Nâng cấp phần mềm và cơ sở dữ liệu để mở rộng quy mô phục vụ nhiều giảng viên, hỗ trợ phân quyền quản trị theo khoa/phòng ban và tích hợp với hệ thống phần mềm quản lý đào tạo (SIS/ERP) của nhà trường.

Giá trị tham khảo

Đồ án là tài liệu tham khảo chuyên môn phù hợp cho sinh viên, học viên kỹ thuật và kỹ sư thuộc các ngành:

  • Công nghệ Kỹ thuật Điện tử – Truyền thông & Kỹ thuật Máy tính: Cung cấp tài liệu chi tiết về sơ đồ nguyên lý ghép nối phần cứng vi điều khiển (ATmega328/Arduino) với module sóng vô tuyến RFID (RC522 - SPI) và module không dây (HC-05 - UART); lập trình xử lý luồng dữ liệu định dạng nhị phân/chuỗi.
  • Công nghệ Thông tin & Kỹ thuật Phần mềm: Cung cấp cấu trúc tham khảo cho việc phát triển ứng dụng di động Android kết nối thiết bị ngoại vi qua Bluetooth Profile (SPP), tổ chức giao diện người dùng theo chuẩn Material Design (NavigationView), và triển khai lưu trữ/đồng bộ dữ liệu đám mây thời gian thực với Firebase Realtime Database.

Câu hỏi thường gặp

1. Khối đọc thẻ RFID trong đồ án sử dụng module gì và hoạt động ở tần số nào?
Hệ thống sử dụng module RFID RC522 (tích hợp vi mạch Philips MFRC522), hoạt động ở dải tần số cao HF 13.56 MHz, giao tiếp với vi điều khiển qua chuẩn truyền thông nối tiếp SPI và có khoảng cách nhận dạng hiệu dụng từ 0 đến 60 mm đối với các loại thẻ Mifare.

2. Giao thức truyền thông giữa thiết bị đọc thẻ cầm tay và điện thoại thông minh của giảng viên được thực hiện như thế nào?
Dữ liệu mã thẻ sau khi vi điều khiển ATmega328 tiếp nhận sẽ được truyền qua giao tiếp nối tiếp không đồng bộ UART (chân TX/RX) sang module Bluetooth HC-05. Module HC-05 phát tín hiệu không dây trên băng tần 2.4 GHz đến điện thoại Android của giảng viên trong bán kính hoạt động khoảng 12m.

3. Cơ chế lưu trữ và đồng bộ dữ liệu của hệ thống trên nền tảng đám mây hoạt động ra sao?
Hệ thống sử dụng Firebase Realtime Database của Google. Dữ liệu được cấu trúc dưới định dạng JSON và đồng bộ thời gian thực qua kết nối bảo mật SSL (mã hóa chứng chỉ 2048-bit). Firebase hỗ trợ lưu trữ tạm thời trên bộ nhớ cục bộ (local cache) của thiết bị Android khi mất mạng và tự động đồng bộ lên máy chủ ngay khi có kết nối trở lại.

4. Điểm khác biệt cốt lõi của đồ án này so với các hệ thống điểm danh RFID cố định trước đây là gì?
Các nghiên cứu trước đây đặt đầu đọc cố định và kết nối trực tiếp với máy tính để bàn (PC). Đồ án này cải tiến thành thiết bị đọc thẻ cầm tay di động dùng nguồn pin, truyền dữ liệu không dây qua Bluetooth trực tiếp vào smartphone của giảng viên, giúp quá trình điểm danh linh hoạt và không phụ thuộc vào hạ tầng máy tính cố định trong phòng học.

5. Hệ thống xử lý thế nào đối với vấn đề sinh viên điểm danh hộ bằng thẻ của người khác?
Trong phần giới hạn đề tài, tác giả xác nhận hệ thống hiện tại mới chỉ nhận dạng và điểm danh theo mã của thẻ RFID, chưa tích hợp công nghệ xác thực sinh trắc học nên chưa thể ngăn chặn triệt để hành vi sinh viên mang nhiều thẻ đi điểm danh hộ. Đây là nội dung được đề xuất tiếp tục hoàn thiện trong hướng phát triển tương lai.


Kết luận

Đồ án tốt nghiệp "Thiết kế hệ thống điểm danh sinh viên dùng công nghệ RFID" đã giải quyết thành công bài toán tự động hóa quy trình điểm danh trong môi trường đại học thông qua việc kết hợp phần cứng nhúng (Arduino, RFID RC522, Bluetooth HC-05) với ứng dụng di động Android và cơ sở dữ liệu thời gian thực Firebase. Hệ thống đạt được ưu thế nổi bật về tính di động, tiết kiệm thời gian quản lý cho giảng viên và cung cấp kênh theo dõi chuyên cần minh bạch cho sinh viên. Mặc dù vẫn còn giới hạn về khả năng xác thực chủ thẻ và quy mô triển khai cho một giảng viên, công trình đã thể hiện rõ tính ứng dụng thực tiễn và cung cấp nền tảng kỹ thuật vững chắc để mở rộng nâng cấp trong tương lai.