아두이노 나노 ESP32 - IR 리모컨 | Arduino Nano ESP32 - IR Remote Control
집에서 TV나 에어컨과 같은 기기를 사용할 때 적외선 리모컨, 또는 IR 리모컨이라고도 불리는 것을 아마 접해보셨을 것입니다... 이 가이드에서는 적외선(IR) 리모컨과 적외선 수신기를 사용하여 Arduino Nano ESP32를 제어하는 방법을 배우게 됩니다. 구체적으로, 우리는 다음을 배우게 됩니다:
- 아두이노 나노 ESP32 보드에 IR 수신기를 연결하는 방법
- IR 수신기를 통해 IR 리모트 컨트롤러의 명령을 읽기 위해 아두이노 나노 ESP32를 프로그래밍하는 방법
준비물
1 | × | Arduino Nano ESP32 | Amazon | |
1 | × | USB Cable Type-C | 쿠팡 | Amazon | |
1 | × | IR Remote Controller and Receiver Kit | Amazon | |
1 | × | CR2025 Battery | Amazon | |
1 | × | Breadboard | 쿠팡 | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Recommended) Screw Terminal Expansion Board for Arduino Nano | 쿠팡 | Amazon |
IR 리모컨에 관하여
IR 제어 시스템에는 두 가지 구성 요소가 있습니다: IR 리모컨과 IR 수신기.
- IR 원격 제어기는 적외선 신호를 사용하여 명령을 보내는 데 사용됩니다.
- IR 수신기는 이러한 신호를 포착하고 해석하여 장치를 제어합니다.
IR 키트는 일반적으로 위에서 언급한 두 가지 구성 요소로 구성됩니다: IR 리모컨과 IR 수신기.
IR 리모컨
IR 리모컨은 적외선 신호를 발사하는 휴대용 장치입니다. 여러 버튼이 있는 키패드로 디자인되었습니다:
- 리모컨의 각 버튼은 특정 기능이나 명령에 할당됩니다.
- 버튼을 누르면 눌린 버튼에 연결된 고유 코드 또는 패턴을 포함하는 적외선 신호를 리모컨이 방출합니다.
- 이러한 적외선 신호는 적외선 스펙트럼 내에 있으며 인간의 눈에는 보이지 않습니다.
IR 수신기
IR 수신 모듈은 리모컨이 발사하는 적외선 신호를 감지하고 수신하는 센서입니다.
적외선 수신기는 들어오는 적외선 신호를 감지하여 리모콘에 눌린 버튼을 대표하는 코드(명령어)로 변환합니다.
IR 수신기는 센서 또는 모듈일 수 있습니다. 다음 선택 사항을 사용할 수 있습니다:
- IR 수신 모듈만
- IR 수신 센서만
- IR 수신 센서 + 어댑터
IR 수신기 핀배열
IR 수신기 모듈 또는 센서에는 세 개의 핀이 있습니다:
- VCC 핀: 이 핀을 아두이노 나노 ESP32의 3.3V 또는 5V 핀 또는 외부 전원원과 연결하세요.
- GND 핀: 이 핀을 아두이노 나노 ESP32의 GND 핀 또는 외부 전원원과 연결하세요.
- OUT(출력) 핀: 이 핀은 IR 수신 모듈의 출력 핀입니다. 아두이노 나노 ESP32의 디지털 입력 핀에 연결됩니다.
작동 방식
사용자가 IR 리모컨의 버튼을 누를 때
- IR 리모컨은 특정 프로토콜을 통해 버튼에 해당하는 명령을 적외선 신호로 인코딩합니다.
- IR 리모컨은 인코딩된 적외선 신호를 방출합니다.
- IR 수신기는 인코딩된 적외선 신호를 수신합니다.
- IR 수신기는 인코딩된 적외선 신호를 명령으로 디코딩합니다.
- 아두이노 나노 ESP32는 IR 수신기에서 명령을 읽습니다.
- 아두이노 나노 ESP32는 명령을 눌린 키에 매핑합니다.
IR 리모컨의 버튼을 누르면 다음과 같은 일련의 사건이 발생합니다:
- IR 리모컨은 버튼의 명령을 특정 프로토콜을 사용하여 적외선 신호로 인코딩합니다.
- 인코딩된 적외선 신호는 IR 리모컨에 의해 방출됩니다.
- IR 수신기는 인코딩된 적외선 신호를 포착하고 수신합니다.
- IR 수신기는 적외선 신호를 디코딩하여 원래의 명령으로 다시 변환합니다.
- 아두이노 나노 ESP32는 IR 수신기로부터 명령을 읽고 검색합니다.
- 아두이노 나노 ESP32는 받은 명령을 IR 리모컨에서 눌린 해당 버튼과 연결합니다.
본질적으로 이 단계들은 IR 리모컨의 버튼 누름이 아두이노 나노 ESP32가 이해하고 처리할 수 있는 인식 가능한 명령으로 변환되는 방법을 개요로 설명합니다.
응답을 재생성하세요
복잡해 보일 수 있지만 걱정하지 마세요. 사용자 친화적인 DIYables_IRcontroller 라이브러리 덕분에 이를 달성하는 것이 믿을 수 없을 만큼 쉬워집니다.
선연결
아두이노 나노 ESP32와 IR 리시버 모듈 간의 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노 나노 ESP32와 IR 수신 센서 간의 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
아두이노 나노 ESP32와 적외선 수신 센서 및 어댑터 간의 배선도
IR 수신기 센서를 ESP32에 연결하기 전에, 어댑터에 연결할 수 있는 옵션이 있습니다. 이를 통해 IR 수신기 센서를 아두이노 나노 ESP32와 더 쉽게 통합하고 설정할 수 있습니다.
IR 원격 컨트롤러 프로그래밍 방법
라이브러리를 포함시키세요:
17키 또는 21키 IR 리모컨에 해당하는 DIYables_IRcontroller_17 또는 DIYables_IRcontroller_21 객체를 선언하십시오.
IR 컨트롤러를 초기화합니다.
반복문에서 키가 눌렸는지 확인하세요. 만약 그렇다면, 키를 가져오세요.
키 입력을 감지한 후에는 각 키에 따라 동작을 수행할 수 있습니다.
아두이노 나노 ESP32 코드
- DIYables 17키 IR 리모컨을 위한 Arduino Nano ESP32 코드
Arduino Nano ESP32 코드 DIYables 21키 IR 리모컨
사용 방법
아두이노 나노 ESP32를 처음 사용하는 경우, 아두이노 IDE에서 아두이노 나노 ESP32 환경 설정 방법을 보려면 아두이노 나노 ESP32 소프트웨어 설치를 참조하세요.
아두이노 IDE의 왼쪽 네비게이션 바에서 Library Manager 아이콘을 클릭하여 라이브러리 관리자를 엽니다.
"DIYables_IRcontroller"를 검색한 다음, DIYables의 DIYables_IRcontroller 라이브러리를 찾습니다.
Install 버튼을 클릭하여 DIYables_IRcontroller 라이브러리를 설치합니다.
아래 이미지와 같이 라이브러리 의존성을 설치하라는 요청을 받게 됩니다:
- 의존성을 설치하려면 Install All 버튼을 클릭하세요.
- 위의 코드를 복사하고 Arduino IDE로 열기
- 코드를 Arduino Nano ESP32에 업로드하려면 Arduino IDE에서 Upload 버튼을 클릭하세요.
- 원격 제어기의 키를 하나씩 누르세요.
- 시리얼 모니터에서 결과를 확인하세요.
- 21키 IR 컨트롤러의 키를 하나씩 누를 때 결과는 다음과 같습니다:
이제 IR 리모컨을 사용하여 LED, 팬, 펌프, 구동기 등 다양한 장치를 제어하고 코드를 사용자 정의할 수 있는 능력을 갖게 되었습니다. 이는 리모컨을 통해 보낸 명령에 이러한 장치들이 반응하도록 코드를 변경할 수 있다는 의미입니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.