본문 바로가기

아두이노우노 R4

RFID RC522 모듈 Arduino Uno R4 WIFI 인터페이스

반응형

 

RFID RC522 모듈을 사용한 Arduino Uno R4 WIFI 인터페이스

 

오늘의 튜토리얼에서는 Arduino Uno R4 WiFi를 RC522 RFID 모듈과 연결하는 방법을 보여드리겠습니다.

 

 

 

다음 방법을 배우게 됩니다.

  • RC522 모듈을 사용하여 RFID 태그 읽기
  • 각 태그의 UID 코드를 검색합니다.
  • RFID 기반 프로젝트 에서 UID를 사용하세요

 

이 가이드는 Arduino로 RFID 애플리케이션을 구축하려는 초보자에게 적합합니다.

 

RFID RC522 모듈

 

RFID RC522는 MFRC522 컨트롤러를 기반으로 하는 인기 모듈입니다. 13.56MHz 주파수로 작동하며, 이는 RFID 카드 및 태그와 통신하는 데 사용되는 무선 주파수입니다. 즉, 이 모듈은 초당 1,356만 사이클의 속도로 전자기파를 송수신합니다.

 

RC522 작동 원리

 

13.56MHz 전자기장은 배터리 없이도 수동 카드(RFID 카드 및 키 팹)에 전원을 공급할 수 있습니다.

이 모듈은 UHF 카드(860~960MHz)나 저주파 카드(125kHz)를 읽을 수 없습니다.

 

지원되는 통신 프로토콜

 

RC522 모듈은 여러 프로토콜을 사용하여 마이크로컨트롤러와 통신할 수 있습니다.

  • UART
  • SPI (가장 일반적으로 사용됨)
  • I2C

 

RC522 모듈을 구매하면 일반적으로 흰색 RFID 카드와 파란색 열쇠 고리가 함께 제공됩니다.

 

RC522 핀 구성

 

 

 

이 모듈에는 8개의 핀이 있지만 , 간단한 프로젝트에서는 모든 핀을 사용할 필요가 없을 수도 있습니다. 일반적인 핀 배치는 다음과 같습니다.

 

  • SDA / SS – Slave select for SPI
  • SCK – Clock
  • MOSI – Master Out Slave In
  • MISO – Master In Slave Out
  • IRQ – Interrupt (optional)
  • GND – Ground
  • RST – Reset
  • 3.3V – Power supply

 

대부분의 Arduino 프로젝트에는 SDA, SCK, MOSI, MISO, RST, GND, 3.3V 만 필요합니다.

 

Arduino와의 인터페이스 – 회로도

 

 

 

아두이노 코드

 

MFRC522 RFID 모듈을 사용하기 전에 라이브러리를 설치해야 합니다. GithubCommunity의 MFRC522 라이브러리 사용을 권장합니다.

 

 

 

1단계 - 라이브러리 설치

 

Arduino IDE를 엽니다.

스케치 → 라이브러리 포함 → 라이브러리 관리로 이동합니다.

도서관 관리자에서 MFRC522를 검색하세요.

 

GithubCommunity에서 해당 버전을 설치하세요.

 

2단계 - 예제 스케치 열기

 

라이브러리가 설치되면:

 

파일 → 예제 → MFRC522로 이동합니다.

DumpInfo 예를 선택하세요.

 

 

 

 

이 스케치를 사용하면 Arduino가 RFID 태그를 읽고 UID 및 데이터 블록과 같은 자세한 정보를 직렬 모니터에 표시할 수 있습니다.

 

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

#define RST_PIN         9          // Configurable, see typical pin layout above
#define SS_PIN          10         // Configurable, see typical pin layout above

MFRC522 mfrc522(SS_PIN, RST_PIN);  // Create MFRC522 instance

void setup() {
	Serial.begin(9600);		// Initialize serial communications with the PC
	while (!Serial);		// Do nothing if no serial port is opened (added for Arduinos based on ATMEGA32U4)
	SPI.begin();			// Init SPI bus
	mfrc522.PCD_Init();		// Init MFRC522
	delay(4);				// Optional delay. Some board do need more time after init to be ready, see Readme
	mfrc522.PCD_DumpVersionToSerial();	// Show details of PCD - MFRC522 Card Reader details
	Serial.println(F("Scan PICC to see UID, SAK, type, and data blocks..."));
}

void loop() {
	// Reset the loop if no new card present on the sensor/reader. This saves the entire process when idle.
	if ( ! mfrc522.PICC_IsNewCardPresent()) {
		return;
	}

	// Select one of the cards
	if ( ! mfrc522.PICC_ReadCardSerial()) {
		return;
	}

	// Dump debug info about the card; PICC_HaltA() is automatically called
	mfrc522.PICC_DumpToSerial(&(mfrc522.uid));
}

 

 

MFRC522 모듈로 태그 읽기

 

Arduino와 MFRC522 RFID 모듈을 연결한 후(위의 연결 다이어그램 참조), 스케치를 업로드하고 RFID 카드를 읽을 준비가 되었습니다.

 

참고: Arduino 코드에 작성되지 않았더라도 MFRC522 RFID 모듈의 MISO, MOSI 및 SCK 핀은 SPI라는 하드웨어 통신 프로토콜에 속하므로 반드시 연결해야 합니다.

 

Arduino Uno R4 WiFi 보드는 이미 내부적으로 이러한 핀들을 사용하는 방법을 알고 있습니다. 이 핀들은 마이크로컨트롤러 내부의 전용 SPI 하드웨어 모듈에 연결되어 모든 SPI 통신을 자동으로 관리합니다.

 

이러한 핀을 수동으로 제어할 수 없습니다 . Arduino 내부의 SPI 하드웨어가 이를 처리합니다.

 

1단계 - Arduino에 스케치 업로드

 

Arduino IDE를 엽니다.

 

이 튜토리얼에서 제공하는 RFID 스케치를 로드합니다.

코드를 컴파일하려면 '확인'을 클릭하세요.

업로드를 클릭하여 Arduino 보드로 전송합니다.

 

업로드가 완료되면 Arduino가 MFRC522 모듈과 통신할 준비가 됩니다.

 

2단계 - 직렬 모니터 열기

실시간으로 카드 정보를 보려면:

도구 → 직렬 모니터로 이동하세요.

또는 키보드에서 Ctrl + Shift + M을 누르세요.

 

통신 속도가 코드의 값과 일치하는지 확인하세요(보통 스케치에 따라 9600 또는 115200).

 

3단계 - RFID 카드 또는 태그 스캔

RFID 카드나 태그(PICC - 근접식 집적 회로 카드라고도 함)를 MFRC522 안테나 근처에 놓습니다.

직렬 모니터에 다음 정보가 나타납니다.

 

  • 카드의 UID(고유 식별자)
  • 카드 종류(MIFARE Classic, MIFARE Ultralight 등)
  • 태그 유형 및 권한에 따라 읽을 수 있는 데이터 블록

 

이를 통해 각 태그를 식별하고 모듈이 올바르게 작동하는지 확인할 수 있습니다.

 

Key fob UID 읽기

 

 

 

 

RFID 태그 읽기

 

 

 

반응형

캐어랩 고객 지원

취업, 창업의 막막함, 외주 관리, 제품 부재!

당신의 고민은 무엇입니까? 현실과 동떨어진 교육, 실패만 반복하는 외주 계약, 아이디어는 있지만 구현할 기술이 없는 막막함.

우리는 알고 있습니다. 문제의 원인은 '명확한 학습, 실전 경험과 신뢰할 수 있는 기술력의 부재'에서 시작됩니다.

이제 고민을 멈추고, 캐어랩을 만나세요!

코딩(펌웨어), 전자부품과 디지털 회로설계, PCB 설계 제작, 고객(시장/수출) 발굴과 마케팅 전략으로 당신을 지원합니다.

제품 설계의 고수는 성공이 만든 게 아니라 실패가 만듭니다. 아이디어를 양산 가능한 제품으로!

귀사의 제품을 만드세요. 교육과 개발 실적으로 신뢰할 수 있는 파트너를 확보하세요.

지난 30년 여정, 캐어랩이 얻은 모든 것을 함께 나누고 싶습니다.

카카오 채널 추가하기

카톡 채팅방에서 무엇이든 물어보세요

당신의 성공을 위해 캐어랩과 함께 하세요.

캐어랩 온라인 채널 바로가기

캐어랩