
IR 리모컨을 사용하면 아두이노 프로젝트를 간단하고 재미있게 만들 수 있습니다. IR 기술은 집에서 물건을 제어하는 데 도움이 됩니다. 직접 리모컨을 만들거나 다른 리모컨의 신호를 읽을 수 있습니다. 아두이노 적외선 리모컨 시스템을 사용하면 장치를 제어하는 새로운 방법을 만들 수 있습니다. 나만의 특별한 리모컨을 만들 수도 있습니다. 아두이노 IR 리모컨 설정은 프로젝트에 무선 제어 기능을 추가하는 간편한 방법입니다.
어플리케이션 유형 | 기술설명 |
|---|---|
가전제품 제어 | 집에서 TV나 다른 기기를 조작할 때는 IR 리모컨을 사용하세요. |
맞춤형 리모컨 | 다양한 기기를 더 쉽게 제어할 수 있는 리모컨을 만들어보세요. |
디코딩 신호 | 신호를 다시 사용하여 새로운 장치를 제어합니다. |
사용자 정의 컨트롤 구축 | 아두이노 적외선 리모컨 작업에서 특수한 요구 사항에 맞는 제어를 만들어 보세요. |
기본적인 IR 수신기를 연결하는 것부터 시작해 보세요. 그런 다음 아두이노 적외선 리모컨에 대한 새로운 아이디어를 시도해 볼 수 있습니다.
IR 커뮤니케이션 기본
IR이란 무엇입니까?
IR은 기기 간에 신호를 전송할 수 있도록 합니다. IR은 우리가 볼 수 없는 빛인 적외선을 의미합니다. IR 통신은 이 보이지 않는 빛을 이용하여 정보를 전송합니다. 리모컨과 수신기는 IR LED와 센서를 사용하여 정보를 전송합니다. IR은 주로 점대점 방식과 확산 방식 두 가지로 작동합니다. 점대점 방식은 리모컨이 수신기를 향하도록 합니다. 확산 방식은 기기가 직접 연결되지 않고도 통신할 수 있도록 합니다. IR은 300GHz에서 400THz까지의 주파수 범위에서 작동합니다. TV, 헤드폰, 홈 보안 시스템 등에서 IR을 찾아볼 수 있습니다.
팁: IR 신호는 단단한 물체를 통과하지 않습니다. 리모컨과 수신기 사이를 막는 것이 없는지 확인하세요.
IR 통신은 적외선 펄스를 사용합니다.
IR 신호는 방해가 없는 곳에서 가장 잘 작동합니다.
IR 기술은 많은 가전제품에 사용됩니다.
IR 리모컨 및 IR 수신기
IR을 사용하려면 IR 리모컨과 IR 수신기가 모두 필요합니다. 리모컨은 적외선 펄스 형태로 데이터를 전송하고, 수신기는 이 펄스를 받아 디코딩합니다. Arduino IR 프로젝트에서는 SunFounder Uno 보드, USB 케이블, 적외선 수신기 모듈, 리모컨, 그리고 3핀 케이블을 사용하는 경우가 많습니다.
구성 요소 | 함수 |
|---|---|
IR 원격 | 적외선 신호를 보냅니다 |
IR 수신기 모듈 | 신호를 가져오고 디코딩합니다. |
Arduino 보드 | 수신된 데이터를 처리합니다 |
IR 리모컨은 Consumer IR이라는 특수 인코딩 방식을 사용합니다. 이 방식은 명령을 최대 32비트, 초당 4000비트까지 느리게 전송합니다. 수신기는 IR 광 펄스와 스페이스가 얼마나 오래 지속되는지 확인합니다. 38kHz 변조 방식은 수신기가 다른 빛을 무시하는 데 도움이 됩니다.
IR 프로토콜
IR 장치를 제어하려면 프로토콜을 사용합니다. 프로토콜은 IR 신호를 보내고 읽는 규칙입니다. NEC 프로토콜은 전자 기기에서 매우 널리 사용됩니다. 다른 인기 프로토콜로는 JVC, Sony SIRC, Philips RC5, RC6 등이 있습니다. 이러한 프로토콜은 38kHz 반송파를 사용하여 이진 신호를 전송합니다.
NEC 원격 프로토콜
RC5 원격 프로토콜
JVC 프로토콜
소니 SIRC 프로토콜
필립스 RC6 프로토콜
IR 리모컨의 각 버튼은 고유한 코드를 전송합니다. 수신기는 이 코드를 명령과 매칭합니다. 프로토콜과 인코딩을 통해 각 버튼이 서로 다른 동작을 하도록 합니다. 각 코드는 고유하므로 정확한 제어가 가능합니다.
아두이노 IR 리모컨 설정

IR 수신기 핀아웃
시작하기 전에 핀아웃을 알아야 합니다. 아두이노 IR 리모컨 설정대부분의 IR 수신기에는 핀이 세 개 있습니다. 각 핀은 특정 역할을 합니다. 각 핀을 아두이노 보드의 올바른 위치에 연결해야 합니다. 이렇게 하면 설정이 원활하게 작동합니다.
IR 수신기 핀 | 아두이노 핀 |
|---|---|
- | GND |
+ (가운데 핀) | 5V |
S | 디지털 핀 11 |
마이너스 핀은 GND에 연결됩니다. 플러스 핀은 5V에 연결됩니다. 신호 핀은 디지털 핀(대개 11번 핀)에 연결됩니다. IR 수신기의 데이터시트를 항상 확인하세요. 수신기에 따라 핀 이름이 다르지만, 대부분은 이 패턴을 따릅니다.
아두이노에 배선하기
아두이노 IR 리모컨을 제대로 설정하려면 IR 수신기를 아두이노에 연결해야 합니다. 다음을 사용하세요. 간편한 설정을 위한 점퍼 와이어수신기를 올바른 핀에 연결했는지 확인하세요. 이 단계는 하드웨어 연결을 원활하게 하는 데 중요합니다.
IR 수신기 | 아두 이노 |
|---|---|
OUT (왼쪽) | 핀 2 |
GND(중간) | 접지(-) |
Vcc(오른쪽) | 5V(+) |
설정을 위해 다음 단계를 따르세요.
IR 수신기를 브레드보드에 놓습니다.
OUT 핀을 아두이노의 디지털 핀 2에 연결합니다.
GND 핀을 보드의 GND에 연결합니다.
Vcc 핀을 5V 핀에 연결합니다.
팁: 전원을 켜기 전에 각 전선을 다시 한번 확인하세요. 연결이 잘못되면 아두이노 IR 리모컨 설정이 작동하지 않을 수 있습니다.
하드웨어 점검
수신기를 연결한 후에는 설정을 확인해야 합니다. 각 전선이 단단히 조여져 있는지 확인하세요. 느슨한 전선이나 구부러진 핀이 있는지 확인하세요. 아두이노 IR 리모컨 설정에는 견고한 하드웨어 연결이 필요합니다. 수신기 표시등이 깜빡이면 설정이 제대로 된 것입니다. 그렇지 않으면 배선을 다시 확인하세요.
멀티미터를 사용하여 수신기의 전압을 테스트할 수 있습니다. 5V 핀은 5V에 가까워야 합니다. GND 핀은 0을 나타내야 합니다. IR 리모컨의 버튼을 누르면 신호 핀이 바뀌어야 합니다. 이는 다음 단계를 진행할 준비가 되었다는 것을 의미합니다.
아두이노 프로그래밍 및 코드 읽기
IRremote 라이브러리 설치
IR 수신기를 프로그래밍하려면 IRremote 라이브러리가 필요합니다. 이 라이브러리는 리모컨의 신호를 읽는 데 도움이 됩니다. 설치하려면 다음 단계를 따르세요. Arduino IDE를 엽니다. "스케치", "라이브러리 포함", "라이브러리 관리"로 이동합니다. 라이브러리 관리자에서 'Arduino-IRremote'를 검색합니다. "설치"를 클릭합니다.
'TCCR2B가 선언되지 않았습니다' 또는 재배치 오류와 같은 오류가 표시되면 칩 불일치가 원인일 수 있습니다. 이러한 문제는 Attiny 마이크로컨트롤러에서 발생합니다. Arduino IDE 버전 1.0.5를 사용하여 해결할 수 있습니다. 라이브러리 파일이 올바른 폴더에 있는지 확인하세요.
라이브러리를 설치하면 IR 수신기 프로그래밍을 시작할 수 있습니다. IRremote 라이브러리에는 코드를 읽고 장치를 제어하는 데 도움이 되는 예제가 포함되어 있습니다.
IR 코드 읽기
IRremote 라이브러리 예제를 사용하여 리모컨의 코드를 읽을 수 있습니다. "IRrecvDemo" 예제 스케치를 열고 아두이노에 업로드하세요. IR 수신기를 보드에 연결하세요. 아두이노 IDE에서 시리얼 모니터를 실행하세요.
리모컨의 버튼을 누르면 수신기가 신호를 수신합니다. 아두이노는 신호를 디코딩하여 16진수 형식으로 코드를 표시합니다. 각 버튼을 눌러 해당 코드를 찾으세요. 나중에 사용할 수 있도록 코드를 적어 두세요.
팁: 모든 버튼의 코드를 기록하려면 각 버튼을 누르고 직렬 모니터에 코드를 기록하세요. 이렇게 하면 리모컨의 코드를 찾는 데 도움이 됩니다.
리모컨이 어떤 프로토콜을 사용하는지 알고 싶으실 수도 있습니다. 여러 가지 방법으로 확인할 수 있습니다. 오실로스코프를 사용하여 신호를 확인합니다. 아두이노와 함께 IR 수신기를 사용하여 프로토콜을 디코딩합니다. 펄스 폭 변조(PWM)나 양방향 인코딩과 같은 인코딩 방식을 시도해 보세요.
IRremote 라이브러리 예제는 종종 프로토콜 이름과 코드를 함께 표시합니다. 이를 통해 코드를 올바른 프로토콜에 연결하는 데 도움이 됩니다.
지도 코드를 작업으로
리모컨 코드를 찾으면 아두이노 스케치에서 동작에 매핑할 수 있습니다. IRremote 라이브러리 예제를 사용하여 LED, 모터 또는 기타 장치를 제어하세요. 아두이노에 코드를 업로드하세요. 시리얼 모니터를 열고 리모컨을 IR 수신기에 대고 버튼을 누르세요. 아두이노가 코드를 읽고 설정한 동작을 실행합니다.
IR 키 코드를 사용하여 출력을 제어할 수 있습니다. 예를 들어, 버튼 하나로 LED를 켜고, 다른 버튼으로는 끕니다. 코드를 사용하여 모터나 릴레이를 제어할 수도 있습니다. 스케치에서 사용할 각 코드에 대한 동작을 설정하세요.
각 버튼의 코드를 캡처합니다.
아두이노 스케치의 코드를 사용하여 출력을 제어합니다.
각 코드에 대한 기능을 설정하여 맞춤형 리모컨을 만듭니다.
다양한 기기에 코드를 사용하는 방법을 배우려면 다양한 예를 시도해 보세요.
코드를 새 동작에 매핑해 볼 수 있습니다. 이를 통해 프로젝트에 맞는 사용자 지정 컨트롤을 만들 수 있습니다. 새 리모컨에 대한 코드가 필요하면 이 과정을 반복하고 스케치를 업데이트하세요. 아두이노로 IR 수신기를 프로그래밍하면 무선 제어를 다양하게 활용할 수 있습니다.
IR 리모컨을 사용한 제어 출력
LED 및 장치
IR 리모컨을 사용하여 아두이노로 사물을 제어할 수 있습니다. 가장 일반적으로 제어하는 것은 LED와 가전제품입니다. 먼저 IR 수신기를 설정하고 아두이노에 연결합니다. 리모컨의 각 버튼은 자체 신호를 보냅니다. 아두이노는 이 신호를 읽고 사용자가 원하는 것을 제어합니다.
LED가
가전 제품
무선으로 제어할 수 있는 다양한 기기
여러 개의 LED를 동시에 켤 수 있습니다. 코드에서 각 LED에 연결할 핀을 선택하세요. 스위치 케이스를 사용하여 각 버튼을 특정 LED나 장치에 연결하세요. 버튼을 누르면 아두이노의 출력이 켜지거나 꺼집니다.
팁: 리모컨을 사용하면 전선 없이도 조명, 선풍기 또는 기타 물건을 제어할 수 있습니다.
다음은 여러 개의 LED를 제어하는 간단한 코드 예입니다.
#include <IRremote.h>
int IR_Recv = 3;
int ledPins[] = {5, 6, 9, 10};
void setup() {
for (int i = 0; i < 4; i++) {
pinMode(ledPins[i], OUTPUT);
}
IrReceiver.begin(IR_Recv, ENABLE_LED_FEEDBACK);
}
void loop() {
if (IrReceiver.decode()) {
switch (IrReceiver.decodedIRData.command) {
case 0x10: digitalWrite(ledPins[0], HIGH); break;
case 0x11: digitalWrite(ledPins[1], HIGH); break;
case 0x12: digitalWrite(ledPins[2], HIGH); break;
case 0x13: digitalWrite(ledPins[3], HIGH); break;
}
IrReceiver.resume();
}
}
프로젝트에 맞게 핀 번호와 코드를 변경할 수 있습니다. 이 방법은 모든 리모컨과 호환됩니다.
다양한 리모컨에 맞게 사용자 정의
다양한 종류의 IR 리모컨을 사용해 보세요. 아두이노 코드를 약간 수정해야 할 수도 있습니다. 먼저 리모컨이 사용하는 IR 프로토콜을 확인하세요. 각 버튼의 명령을 적어 두세요. 각 작업의 신호를 확인하고 메모하세요. 한 번에 하나씩 변경하면서 어떤 일이 일어나는지 기록하세요.
리모컨의 IR 프로토콜을 찾아보세요.
각 버튼의 명령을 적어 두세요.
각 신호와 작업에 대한 메모를 확인하고 보관하세요.
한 번에 한 가지씩 바꾸고 무슨 일이 일어나는지 기록하세요.
IR 리모컨을 사용하면 아두이노 프로젝트를 여러 리모컨으로 변경할 수 있습니다. 이를 통해 다양한 기능을 제어할 수 있습니다. 새로운 명령과 프로토콜로 코드를 업데이트하면 어떤 리모컨이든 사용할 수 있습니다.
IR 수신기 및 코드 문제 해결

하드웨어 문제
IR 수신기 설정에 문제가 발생할 수 있습니다. 하드웨어 문제로 인해 아두이노 프로젝트가 제대로 작동하지 않는 경우가 많습니다. 휴대폰 카메라를 사용하여 IR LED를 확인할 수 있습니다. 카메라는 눈으로 볼 수 없는 빛을 볼 수 있습니다. 빛이 보이지 않으면 LED 방향을 반대로 바꿔 보세요. LED가 반대 방향으로 향하는 경우도 있습니다. TV 리모컨을 수신기 쪽으로 향하게 하고 상태 LED를 확인하세요. LED가 깜빡이면 수신기에 신호가 수신되고 있는 것입니다. 빔을 차단해도 상태 LED가 계속 켜져 있다면 IR 신호를 차단하고 수신기가 반응하는지 확인하세요.
느슨한 전선이나 구부러진 핀은 문제를 일으킬 수 있습니다. 감지기가 아두이노에 제대로 연결되었는지 확인하세요. 멀티미터를 사용하여 수신기 핀의 전압을 확인하세요. GND 핀은 0을 나타내야 합니다. 5V 핀은 5V에 가까워야 합니다. 리모컨의 버튼을 누르면 신호 핀이 바뀌어야 합니다. 변화가 없으면 배선을 다시 확인하세요.
팁: 그늘진 곳에서 시스템을 테스트하세요. 직사광선이나 강한 빛은 수신기에 영향을 줄 수 있습니다. 실내나 어두운 곳에서 테스트하면 더 좋은 결과를 얻을 수 있습니다.
휴대폰 카메라를 사용하여 LED를 확인하세요.
LED가 켜지지 않으면 LED를 반대로 켜보세요.
TV 리모컨을 수신기에 대고 깜빡이는 불빛을 살펴보세요.
검출기 전선이 아두이노에 연결되어 있는지 확인하세요.
IR 신호를 차단하고 상태 LED를 확인하세요.
수신기 핀의 전압을 테스트합니다.
소프트웨어 및 신호 문제
소프트웨어 문제로 인해 IR 수신기가 작동하지 않을 수 있습니다. IR 신호를 보내고 받는 데 IRremote 또는 IRLib 라이브러리 중 하나를 선택할 수 있습니다. 이 라이브러리의 모든 예제 스케치를 사용해 보세요. 예제를 테스트하면 수신기 또는 리모컨의 문제를 찾는 데 도움이 됩니다. 수신기가 특정 리모컨의 신호를 디코딩하지 못하는 경우가 있습니다. 라이브러리가 리모컨의 프로토콜을 지원하는지 확인하세요.
주변광이나 기타 적외선 광원이 수신기에 간섭을 일으킬 수 있습니다. 하드웨어 필터는 원치 않는 빛을 줄이는 데 도움이 됩니다. 수신기를 밝은 조명에서 멀리 두세요. 어두운 방에서 시스템을 테스트하여 수신기가 더 잘 작동하는지 확인하세요. 그래도 문제가 지속되면 근처에 다른 적외선 광원이 있는지 확인하세요.
IRremote나 IRLib 등 다양한 라이브러리를 사용해보세요.
모든 예제 스케치를 테스트하여 소프트웨어 문제를 찾습니다.
수신기가 리모컨 신호를 디코딩하는지 확인하세요.
원치 않는 빛을 차단하려면 하드웨어 필터를 사용하세요.
수신기를 밝은 조명에서 멀리 옮기세요.
더 나은 성능을 위해 어두운 방에서 테스트하세요.
간섭을 일으킬 수 있는 다른 IR 소스를 찾아보세요.
참고: 다양한 유형의 IR 리모컨 신호를 디코딩하면 호환성 문제를 찾는 데 도움이 됩니다. 각 버튼의 코드를 항상 기록하고 아두이노 스케치에서 해당 동작과 연결하세요.
IR 리모컨으로 아두이노를 사용하는 방법을 배웠습니다. 다음 단계를 따라 해보세요.
IRremote 라이브러리를 설치하세요. IR 센서를 올바른 핀에 연결하세요.
예제 코드를 사용하여 리모컨에서 신호를 받아보세요. 모니터에서 출력을 확인하세요.
리모컨의 각 버튼을 프로젝트의 제어 동작에 맞춰 조정하세요.
다양한 리모컨을 사용해 제어력을 높이고 문제를 해결해 보세요.
도움이 필요하면 다음 커뮤니티 리소스를 살펴보세요.
토론 제목 | 기술설명 |
|---|---|
도움말 센터 | IR 리모컨 문제에 대해 질문해 보세요. |
IR 코드에 대한 모니터의 원시 데이터를 어떻게 해석합니까? | IR 코드 데이터를 읽고 사용하는 방법을 알아보세요. |
sendSamsungLG()가 내 LG HX906에서 작동하지 않습니다. | 기기 호환성 문제에 대한 답변을 찾아보세요. |
ESP32 채널 0이 이미 디스플레이에 사용됨 문제 | ESP32 및 IR 리모컨 문제에 대한 팁을 얻으세요. |
bootloop | 다른 사람들도 같은 IR 리모컨 문제를 겪고 있는지 살펴보세요. |
문제 해결은 학습의 일부입니다. 새로운 제어 방법을 시도하고 다양한 리모컨을 테스트해 보세요.
FAQ
IR 수신기가 작동하는지 어떻게 알 수 있나요?
리모컨을 IR 수신기에 대고 LED가 깜빡이는지 확인하면 됩니다. 버튼을 눌렀을 때 LED가 깜빡이면 수신기에 신호가 수신되고 있는 것입니다. 휴대폰 카메라를 사용하여 IR 불빛을 확인할 수도 있습니다.
아두이노가 IR 코드를 읽지 못하는 이유는 무엇인가요?
당신은 배선 문제 또는 라이브러리 문제모든 연결을 확인하고 올바른 핀을 사용하고 있는지 확인하세요. IRremote 라이브러리를 설치하세요. 예제 스케치를 통해 설정을 테스트해 보세요. 아두이노 보드에 전원이 공급되는지 확인하세요.
아두이노 IR 수신기와 함께 어떤 리모컨이든 사용할 수 있나요?
대부분의 IR 수신기는 여러 리모컨과 호환됩니다. 각 버튼의 코드를 찾아야 합니다. 일부 리모컨은 특수 프로토콜을 사용합니다. IRremote 라이브러리를 사용하여 리모컨을 테스트해 보세요. 코드를 적어두고 스케치에 있는 동작과 연결해 보세요.
IR 신호가 수신기에 도달하지 않으면 어떻게 해야 하나요?
리모컨과 수신기 사이의 경로에 있는 물체를 치우세요. IR 신호는 선명한 선로를 필요로 합니다. 햇빛이 적은 방에서 사용해 보세요. 수신기가 리모컨을 직접 향하고 있는지 확인하세요.
아두이노 IR 리모컨으로 여러 장치를 어떻게 제어하나요?
스케치에서 다양한 코드를 다양한 출력에 매핑할 수 있습니다. 각 버튼 코드에 스위치 케이스를 사용하세요. 아두이노에 더 많은 장치를 연결하고 각 장치에 동작을 설정하세요. 각 버튼이 제대로 작동하는지 테스트해 보세요.




