Cara menggunakan modul RFID RC522 dengan Arduino

How to Use the RC522 RFID Module with Arduino

RC522 adalah modul RFID populer yang digunakan untuk komunikasi dan identifikasi nirkabel. Ini banyak digunakan dalam sistem kontrol akses, sistem pembayaran tanpa kontak, dan pelacakan inventaris. Tutorial ini akan memandu Anda melalui interfacing modul RFID RC522 dengan Arduino untuk membaca tag dan kartu RFID.


Apa yang Anda Butuhkan

  1. Modul RFID RC522
  2. Dewan Arduino (mis., Uno, mega, nano)
  3. Tag atau kartu RFID (13,56 MHz)
  4. Papan tempat memotong papan dan kabel jumper
  5. Komputer dengan IDE Arduino diinstal

Langkah 1: Memahami modul RFID RC522

Modul RFID RC522 beroperasi pada 13,56 MHz dan berkomunikasi dengan mikrokontroler menggunakan protokol SPI. Muncul dengan antena RFID dan mendukung operasi membaca dan menulis.

RC522 Pinout

Pin Fungsi
SDA SPI SS (Slave Select)
Sck Jam spi
Mosi Input Data SPI
Miso Output data SPI
Irq Permintaan interupsi (opsional)
Gnd Tanah
Pertama Mengatur ulang
3.3v Catu daya

Catatan: RC522 beroperasi pada logika 3.3V; Pastikan koneksi Anda sesuai dengan persyaratan tegangan dewan Anda.


Langkah 2: Pengkabelan RC522 ke Arduino

Inilah cara menghubungkan modul RFID RC522 ke Arduino UNO:

Pin RC522 Pin Arduino
SDA Pin 10
Sck Pin 13
Mosi Pin 11
Miso Pin 12
Irq Tidak terhubung
Gnd Gnd
Pertama Pin 9
3.3v 3.3v

Catatan: Untuk papan Arduino lainnya, pastikan Anda memetakan pin SPI dengan benar.


Langkah 3: Instal perpustakaan yang diperlukan

Untuk bekerja dengan modul RC522, instal perpustakaan "MFRC522".

Langkah untuk menginstal:

  1. Buka Ide Arduino.
  2. Pergi ke Sketsa > Sertakan perpustakaan > Kelola Perpustakaan.
  3. Cari "MFRC522" dan klik Memasang.

Langkah 4: Unggah kode

Inilah contoh sketsa untuk membaca data tag RFID:

#include <SPI.h>
#include <MFRC522.h>

#define RST_PIN 9  // Reset pin
#define SS_PIN 10  // Slave select pin

MFRC522 rfid(SS_PIN, RST_PIN); // Create an instance of the MFRC522 library

void setup() {
  Serial.begin(9600);
  while (!Serial);

  SPI.begin();      // Initialize SPI bus
  rfid.PCD_Init();  // Initialize RFID reader

  Serial.println("RC522 RFID Reader Initialized");
}

void loop() {
  // Check for a new card
  if (!rfid.PICC_IsNewCardPresent() || !rfid.PICC_ReadCardSerial()) {
    return;
  }

  Serial.println("Card detected:");

  // Print the UID of the card
  Serial.print("UID: ");
  for (byte i = 0; i < rfid.uid.size; i++) {
    Serial.print(rfid.uid.uidByte[i] < 0x10 ? " 0" : " ");
    Serial.print(rfid.uid.uidByte[i], HEX);
  }
  Serial.println();

  rfid.PICC_HaltA(); // Halt the card
}

Langkah 5: Uji pengaturan

  1. Hubungkan Arduino ke komputer Anda melalui USB.
  2. Buka IDE Arduino dan pilih yang benar Papan Dan Pelabuhan di bawah Peralatan menu.
  3. Unggah kode ke Arduino dengan mengklik Mengunggah.
  4. Buka monitor serial (Peralatan > Monitor serial) dan atur baud rate ke 9600.
  5. Tempatkan tag atau kartu RFID di dekat modul. UID kartu akan ditampilkan di monitor serial.

Opsional: Menulis data ke tag RFID

Untuk menulis data ke tag RFID, Anda dapat menggunakan PICC_Write Fungsi di pustaka MFRC522. Lihat contoh perpustakaan untuk operasi penulisan terperinci.


Aplikasi RC522

  1. Sistem Kontrol Akses
  2. Sistem pembayaran tanpa kontak
  3. Pelacakan dan manajemen inventaris
  4. Sistem kehadiran yang cerdas

Pemecahan masalah

  • Tidak ada tanggapan dari modul: Periksa kabel dan pastikan koneksi SPI benar.
  • Uid tidak terdeteksi: Pastikan tag berada dalam kisaran antena RFID.
  • Kesalahan Perpustakaan: Verifikasi pustaka MFRC522 diinstal dengan benar.

Kesimpulan

Anda telah berhasil menghubungkan modul RFID RC522 dengan Arduino, memungkinkan Anda membaca data tag RFID. Modul serbaguna ini sangat cocok untuk proyek yang membutuhkan komunikasi dan identifikasi nirkabel. Eksperimen dengan fitur tambahan seperti menulis data ke tag atau mengintegrasikannya ke dalam sistem yang lebih besar untuk aplikasi canggih!

Tinggalkan komentar

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.