아두이노 나노 - RFID - 서보 모터 | Arduino Nano - RFID - Servo Motor
이 튜토리얼은 Arduino Nano와 RFID NFC RC522 모듈을 사용하여 서보 모터를 제어하는 방법을 안내합니다. 과정은 다음과 같이 작동합니다:
- 인증된 태그가 탭되면, 아두이노 나노는 서보 모터를 90도로 회전시킬 것입니다.
- 동일한 인증된 태그가 다시 탭되면, 아두이노 나노는 서보 모터를 다시 0도로 회전시킬 것입니다.
- 이 사이클은 지속적으로 반복될 것입니다.
이것은 캐비닛, 서랍, 문을 고정하거나 애완동물 사료통을 여닫는 데 사용될 수 있습니다...
준비물
1 | × | Arduino Nano | Amazon | |
1 | × | USB A to Mini-B USB cable | 쿠팡 | Amazon | |
1 | × | RFID/NFC RC522 Kit (reader + tags) | 쿠팡 | Amazon | |
1 | × | RFID Key Fob | 쿠팡 | Amazon | |
1 | × | Servo Motor | 쿠팡 | Amazon | |
1 | × | 5V Power Adapter | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) DC Power Jack | 쿠팡 | Amazon | |
1 | × | (Optional) 9V Power Adapter for Arduino Nano | Amazon | |
1 | × | (Recommended) Screw Terminal Expansion Board for Arduino Nano | 쿠팡 | Amazon |
RFID/NFC RC522 모듈 및 서보 모터에 대하여
RFID/NFC RC522 모듈과 서보 모터(핀 배치, 작동 원리 및 프로그래밍 방법 포함)에 익숙하지 않다면, 다음 튜토리얼에서 자세한 정보를 확인할 수 있습니다:
- Arduino Nano - RFID/NFC RC522 tutorial
- Arduino Nano - Servo Motor tutorial
작동 방식
- 아두이노 나노 코드는 미리 정의된 RFID/NFC 태그의 UID를 가지고 있습니다.
- RFID/NFC 태그가 리더기에 탭되면 UID가 읽힙니다.
- 아두이노 나노는 리더기로부터 UID를 받습니다.
- 그런 다음 읽힌 UID를 미리 정의된 UID와 비교합니다.
- UID가 미리 정의된 UID 중 하나와 일치하는 경우 아두이노 나노는 서보 모터를 90°로 제어합니다.
- 태그가 다시 탭되면 아두이노 나노는 서보 모터를 다시 0°로 제어합니다.
- 이 과정은 계속 반복됩니다.
선연결
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
간단함을 위해, 위의 배선도는 테스트나 교육 목적으로 사용되며, 소형 토크의 서보 모터에 사용됩니다. 실제로 서보 모터에 외부 전원원을 사용하는 것을 강력히 권장합니다. 아래의 배선도는 서보 모터를 외부 전원원에 연결하는 방법을 보여줍니다.
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
RFID RC522 모듈을 이용한 배선
연결 과정을 단순화하기 위해, RC522 모듈의 핀들은 아두이노의 핀들에 직접 연결됩니다. 그러나, 아두이노의 출력 핀들이 5V의 전압을 생성하는 동안 RC522 모듈의 핀들은 표준 전압 3.3V에서 작동하기 때문에, 특정 상황에서 아두이노가 오작동할 수 있습니다. 따라서, 아두이노 핀들과 RC522 모듈의 핀들 사이의 전압을 조절하는 것이 좋습니다. 자세한 내용은 아두이노 나노 - RFID RC522 튜토리얼을 참조하십시오. 다음 다이어그램은 저항을 사용하여 5V를 3.3V로 조절하는 방법을 설명합니다:
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
※ NOTE THAT:
핀의 배치는 제조 업체에 따라 다를 수 있습니다. 항상 모듈에 인쇄된 라벨을 사용하세요. 위의 이미지는 DIYables 제조사의 모듈 핀배열을 보여줍니다.
RFID/NFC RC522 모듈의 배선표
RFID/NFC RC522 | Arduino Nano |
---|---|
SS | → 10 |
SCK | → 13 |
MOSI | → 11 |
MISO | → 12 |
IRQ(not connected) | |
GND | → GND |
RST | → 9 |
VCC | → 3.3V |
서보 모터의 배선 표
Servo Motor | Arduino | 5V DC Adapter |
---|---|---|
VCC (red) | → positive | |
GND (brown) | → negative | |
SIG (yellow) | → A5 |
5V DC 어댑터 배선 표
5V DC Adapter | Servo Motor | Arduino Nano |
---|---|---|
Positive | → VCC | |
Positive | -> Vin | |
Negative | → GND | |
Negative | → GND |
아두이노 나노 코드 - 단일 RFID/NFC 태그
사용 방법
- Arduino IDE의 왼쪽 바에 있는 Libraries 아이콘을 클릭하세요.
- "MFRC522"를 검색하고 GithubCommunity에서 해당 라이브러리를 찾으세요.
- MFRC522 라이브러리를 설치하려면 Install 버튼을 누르세요.
RFID/NFC 태그의 UID를 결정하기 위해서 첫 번째 단계는 Arduino IDE에 코드를 업로드하는 것입니다. 이 작업은 다음과 같이 수행할 수 있습니다:
- 코드를 복사하고 아두이노 IDE에서 여는 것
- Upload 버튼을 클릭하는 것
- 시리얼 모니터를 여는 것
- RFID-RC522 모듈에 RFID/NFC 태그를 탭하는 것
- 시리얼 모니터에서 UID를 보는 것
UID를 획득한 후에:
코드의 20번째 줄에서 authorizedUID의 값을 얻은 UID로 변경하세요. 예를 들어, byte authorizedUID[4] = {0xFF, 0xFF, 0xFF, 0xFF};을 byte authorizedUID[4] = {0x3A, 0xC9, 0x6A, 0xCB};로 변경합니다.
- 코드를 다시 Arduino Nano 보드에 업로드하세요.
- RFID/NFC 태그를 RFID-RC522 모듈에 올리세요.
- 서보 모터가 90°로 회전할 것입니다.
- 시리얼 모니터에서 출력을 확인하세요.
- RFID-RC522 모듈에 RFID/NFC 태그를 한 번 더 탭하세요.
- 서보 모터가 0°로 회전하고 결과가 시리얼 모니터에 표시됩니다.
- RFID-RC522 모듈에 RFID 또는 NFC 태그를 탭하세요.
- 시리얼 모니터에서 출력을 확인하세요.
아두이노 나노 코드 - 다중 RFID/NFC 태그
RFID/NFC 태그 여러 개를 사용하여 서보 모터를 제어할 수 있습니다. 예를 들어, 아래 코드는 두 개의 태그를 사용합니다.
위와 같은 단계를 반복하고, 그런 다음 RFID-RC522 모듈의 각 태그를 한 번에 하나씩 탭하세요. 시리얼 모니터에 표시되는 출력은 다음과 같아야 합니다:
위에 작성된 코드를 세 개, 네 개 또는 그 이상의 태그를 포함하도록 확장할 수 있습니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.