Arduino RFID khóa điện từ
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách chế tạo hệ thống khóa cửa dựa trên RFID bằng cách sử dụng Arduino, đầu đọc RFID RC522 và khóa điện từ.
Phần cứng cần chuẩn bị
| 1 | × | Arduino Uno R3 | ||
| 1 | × | USB 2.0 cable type A/B (for USB-A PC) | ||
| 1 | × | USB 2.0 cable type C/B (for USB-C PC) | ||
| 1 | × | RFID/NFC RC522 Kit (reader + tags) | ||
| 1 | × | RFID Key Fob | ||
| 1 | × | RFID Card | ||
| 1 | × | Electromagnetic Lock | ||
| 1 | × | Relay | ||
| 1 | × | 12V Power Adapter | ||
| 1 | × | DC Power Jack | ||
| 1 | × | (Khuyến nghị) Screw Terminal Block Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Breadboard Shield for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Enclosure for Arduino Uno | ||
| 1 | × | (Khuyến nghị) Prototyping Base Plate & Breadboard Kit for Arduino UNO |
Or you can buy the following kits:
| 1 | × | DIYables STEM V3 Starter Kit (Arduino included) | ||
| 1 | × | DIYables Sensor Kit (30 sensors/displays) | ||
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Về mô-đun RFID/NFC RC522 và khóa điện từ
Bạn chưa biết về mô-đun RFID/NFC RC522 và khóa điện từ (sơ đồ chân, cách hoạt động, cách lập trình ...), hãy tìm hiểu về chúng trong các bài hướng dẫn sau:
Sơ đồ đấu dây

This image is created using Fritzing. Click to enlarge image
Để đơn giản hóa quá trình thiết lập, các pin của mô-đun RC522 được kết nối trực tiếp với các pin của Arduino. Tuy nhiên, kết nối trực tiếp này có thể gây ra sự cố, vì các pin ngõ ra của Arduino cung cấp 5V, trong khi các chân của mô-đun RC522 được thiết kế để hoạt động ở 3.3V. Nên điều chỉnh điện áp giữa các pin của Arduino và các chân của mô-đun RC522 để ngăn ngừa các vấn đề có thể xảy ra. Để được hướng dẫn chi tiết hơn, hãy tham khảo Arduino - RFID/NFC (nhận diện bằng tần số vô tuyến / giao tiếp trường gần). Sơ đồ được cung cấp cho thấy cách sử dụng các điện trở để điều chỉnh 5V xuống 3.3V:

This image is created using Fritzing. Click to enlarge image
※ Lưu ý:
Thứ tự các chân có thể thay đổi tùy theo nhà sản xuất. Hãy LUÔN SỬ DỤNG nhãn in trên module. Hình ảnh ở trên cho thấy sơ đồ chân (pinout) của các module từ nhà sản xuất DIYables.
Mã Arduino - Một thẻ RFID
Hướng dẫn từng bước
Vì UID thường không được in trên thẻ RFID, bước đầu tiên chúng ta cần làm là tìm UID của thẻ. Điều này có thể được thực hiện bằng cách:
- Sao chép mã ở trên và mở bằng Arduino IDE
- Nhấp vào nút Tải lên trên Arduino IDE để nạp mã vào Arduino
- Mở Serial Monitor
- Chạm một thẻ RFID lên mô-đun RFID-RC522
- Lấy UID trên Serial Monitor
Sau khi có UID:
- Cập nhật UID ở dòng 18 của mã ở trên. Ví dụ, đổi byte authorizedUID[4] = {0xFF, 0xFF, 0xFF, 0xFF}; thành byte authorizedUID[4] = {0x51, 0x3D, 0xC1, 0xAC};
- Tải lại mã lên Arduino
- Chạm một thẻ RFID lên module RFID-RC522
- Xem đầu ra trên Serial Monitor
- Chạm thêm một thẻ RFID khác lên mô-đun RFID-RC522
- Xem đầu ra trên Serial Monitor
Mã Arduino - Nhiều thẻ RFID
Chúng tôi có thể cho phép nhiều thẻ RFID/NFC kích hoạt khóa điện từ. Đoạn mã dưới đây sử dụng hai thẻ làm ví dụ.
Thực hiện các bước tương tự như ở trên, sau đó lần lượt chạm từng thẻ lên mô-đun RFID-RC522. Kết quả trên Serial Monitor trông như dưới đây:
Video Tutorial
Việc sản xuất video tốn rất nhiều thời gian. Nếu video hướng dẫn hữu ích cho việc học của bạn, hãy đăng ký kênh YouTube để ủng hộ. Nếu nhu cầu đủ cao, chúng tôi sẽ cố gắng làm thêm nhiều video.