ESP8266 - IR 리모컨 제어 | ESP8266 - IR Remote Control
당신은 아마도 집에서 TV나 에어컨과 같은 기기를 사용할 때 적외선 리모컨, 또는 IR 리모컨을 접해본 적이 있을 것입니다... 이 튜토리얼은 적외선(IR) 리모컨과 적외선 수신기를 사용하여 ESP8266을 제어하는 방법을 안내합니다. 구체적으로, 우리는 다음을 배우게 될 것입니다:
- ESP8266 보드에 IR 수신기를 연결하는 방법
- IR 수신기를 통해 IR 리모컨에서 명령을 읽기 위해 ESP8266을 프로그램하는 방법
준비물
1 | × | ESP8266 NodeMCU | Amazon | |
1 | × | Micro USB Cable | Amazon | |
1 | × | IR Remote Controller and Receiver Kit | Amazon | |
1 | × | CR2025 Battery | Amazon | |
1 | × | Jumper Wires | Amazon | |
1 | × | (Optional) 5V Power Adapter | Amazon | |
1 | × | (Optional) Screw Terminal Expansion Board for ESP8266 | 쿠팡 | Amazon |
IR 리모컨에 대하여
IR 제어 시스템은 두 부분으로 구성됩니다: IR 리모콘과 IR 수신기.
- IR 리모컨은 적외선 신호를 사용하여 명령을 보내는 데 사용됩니다.
- IR 수신기는 이러한 신호를 캡처하고 해석하여 장치를 제어합니다.
IR 키트는 일반적으로 위에서 언급한 두 가지 구성요소로 이루어져 있습니다: IR 리모컨과 IR 수신기.
IR 리모컨
IR 리모컨은 적외선 신호를 전송하는 휴대용 장치입니다. 여러 버튼이 있는 키패드로 장착되어 있습니다:
- 리모컨의 각 버튼은 구별되는 기능이나 명령을 수행합니다.
- 버튼이 눌리면, 리모컨은 보이지 않는 적외선 신호를 발산합니다. 이 신호는 눌린 버튼과 연결된 특별한 코드나 패턴을 포함합니다.
- 이러한 적외선 신호는 적외선 스펙트럼에 속하기 때문에, 인간의 눈으로는 볼 수 없습니다.
IR 수신기
IR 수신 모듈은 리모컨이 방출하는 적외선 신호를 감지하고 수신하는 센서입니다.
적외선 수신기는 들어오는 적외선 신호를 감지하여 리모콘에 눌린 버튼을 나타내는 코드(명령)로 변환합니다.
IR 리시버는 센서 또는 모듈일 수 있습니다. 다음 선택 사항을 사용할 수 있습니다:
- IR 리시버 모듈만
- IR 리시버 센서만
- IR 리시버 센서 + 어댑터
IR 리시버 핀배열
IR 수신 모듈 또는 센서에는 세 개의 핀이 있습니다:
- VCC 핀: 이 핀을 ESP8266의 3.3V 또는 5V 핀 또는 외부 전원원에 연결하세요.
- GND 핀: 이 핀을 ESP8266의 GND 핀 또는 외부 전원원에 연결하세요.
- OUT(출력) 핀: 이 핀은 IR 수신 모듈의 출력 핀입니다. ESP8266의 디지털 입력 핀에 연결됩니다.
작동 원리
사용자가 IR 리모컨의 버튼을 누를 때 다음과 같은 동작이 일어납니다:
- IR 리모컨은 버튼의 명령을 특정 프로토콜을 사용하여 적외선 신호로 변환합니다.
- IR 리모컨은 인코딩된 적외선 신호를 방출합니다.
- IR 수신기는 방출된 적외선 신호를 수신합니다.
- IR 수신기는 적외선 신호를 디코드하여 원래의 명령으로 다시 변환합니다.
- ESP8266은 IR 수신기로부터 명령을 읽고 수신합니다.
- ESP8266은 수신된 명령을 IR 리모컨에 눌린 해당 버튼에 매핑합니다.
요약하자면, 이러한 단계들은 IR 리모컨의 버튼 누름이 ESP8266에서 활용될 수 있는 이해할 수 있는 명령으로 어떻게 변환되는지를 보여줍니다.
복잡해 보여도 걱정하지 마세요. DIYables_IRcontroller 라이브러리의 도움으로 굉장히 쉬워집니다.
선연결
ESP8266과 IR 수신 모듈 간의 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266의 핀 배치 및 ESP8266 및 다른 구성 요소에 전원을 공급하는 방법에 대해 더 많이 보십시오.
ESP8266과 IR 수신 센서 간의 배선도
이 이미지는 Fritzing을 사용하여 만들어졌습니다. 이미지를 확대하려면 클릭하세요.
ESP8266과 적외선 수신 센서 및 어댑터 간의 배선도
IR 수신 센서를 ESP8266에 연결하기 전에, 어댑터에 연결할 수 있는 옵션이 있습니다. 이를 통해 설정이 더 쉬워지고 IR 수신 센서와 ESP8266 사이의 올바른 연결이 보장됩니다.
IR 리모컨 프로그래밍 방법
도서관을 포함합니다:
17키 또는 21키 IR 리모컨에 해당하는 DIYables_IRcontroller_17 또는 DIYables_IRcontroller_21 객체를 선언하십시오.
IR 컨트롤러를 초기화하십시오.
루프에서 키가 눌렸는지 확인하세요. 만약 그렇다면, 키를 가져오세요.
키 입력을 감지한 후, 각 키에 따라 특정 작업을 수행할 수 있습니다.
ESP8266 코드
ESP8266 코드 DIYables 17키 IR 리모컨
DIYables 21키 IR 리모컨을 위한 ESP8266 코드
사용 방법
ESP8266를 Arduino IDE에서 시작하려면 다음 단계를 따르세요:
- ESP8266을 처음 사용하는 경우, Arduino IDE에서 ESP8266 환경 설정하는 방법 튜토리얼을 확인하세요.
- 다이어그램에 표시된 대로 구성 요소를 연결하세요.
- USB 케이블을 사용하여 컴퓨터에 ESP8266 보드를 연결하세요.
- 컴퓨터에서 Arduino IDE를 엽니다.
- 올바른 ESP8266 보드를 선택하세요, 예를 들어 (NodeMCU 1.0 (ESP-12E Module))과 그에 해당하는 COM 포트를 선택합니다.
- Arduino IDE의 왼쪽 바에 있는 Libraries 아이콘을 클릭하세요.
- "DIYables_IRcontroller"를 검색한 다음, DIYables에 의한 DIYables_IRcontroller 라이브러리를 찾으세요.
- DIYables_IRcontroller 라이브러리를 설치하려면 Install 버튼을 클릭하세요.
아래 이미지와 같이 라이브러리 의존성을 설치하라는 요청을 받게 됩니다:
- Install All 버튼을 클릭하여 종속성을 설치하세요
- 위의 코드를 복사하고 Arduino IDE로 엽니다
- 코드를 ESP8266에 업로드 하려면 Arduino IDE에서 Upload 버튼을 클릭하세요
- 리모컨의 버튼을 하나씩 누르세요
- 시리얼 모니터에서 결과를 확인하세요.
- 17키 IR 컨트롤러의 버튼을 하나씩 누를 때, 다음과 같은 결과가 나타납니다:
이제 IR 리모컨을 사용하여 LED, 팬, 펌프, 액추에이터 등 다양한 장치를 제어하고 코드를 사용자 정의할 수 있는 능력을 가지게 되었습니다. 이는 리모컨을 통해 전송된 명령에 이러한 장치들이 반응하도록 코드를 변경할 수 있다는 의미입니다.
동영상
비디오 제작은 시간이 많이 걸리는 작업입니다. 비디오 튜토리얼이 학습에 도움이 되었다면, YouTube 채널 을 구독하여 알려 주시기 바랍니다. 비디오에 대한 높은 수요가 있다면, 비디오를 만들기 위해 노력하겠습니다.