○ 아두이노 IR 리모컨 수신기 활용
적외선 통신 IR (Infrared Ray Communication)??
■ 적외선 통신
적외선 통신은 우리 일상생활에서 아주 많이 사용되어지고 있는 것이죠.
주로, TV, 에어컨, IPTV를 위한 셋톱박스에도 많이 사용되고 있습니다. 이러한 가전제품들을 컨트롤 하는 방식이 모두 적외선 통신인데요.
각 브랜드마다 고유의 값을 지니고 있어, 중복되지 않고 컨트롤을 할 수 있습니다. 전자기파를 이용한 통신방식이라 생각하시면 됩니다~!
적외선 통신의 특징으로는
1. 근거리 통신용
2. 주파수 : 38kHz
3. 긴파장으로 인하여 공기중에 통신이 원활히 잘 일어남.
■ IR Receiver 를 활용하여 IR 값 읽어 내기
이번에는 아두이노를 활용해서 IR Receiver를 사용해 보려합니다.
IR Receiver역시 라이브러리가 잘 구축이 되어 있어 누구나 쉽게 리모컨의 값을 전달 받을 수 있습니다. 아래 있는 사진이 IR Receiver 네요~!
■ 회로연결 및 사용
IR 리시버는 다음과 같이 연결을 해주시면 됩니다. 10k옴 저항을 달아서 안정적으로 센싱을 받기 위함입니다.
■ 아두이노 코딩
메뉴 >> 예제 >> IRremote >> IRrevDemo를 선택해서 예제를 활용해보자~!
#include <IRremote.h> int RECV_PIN = 11; IRrecv irrecv(RECV_PIN); decode_results results; void setup() { Serial.begin(9600); irrecv.enableIRIn(); // Start the receiver } void loop() { if (irrecv.decode(&results)) { Serial.println(results.value, HEX); irrecv.resume(); // Receive the next value } delay(100); }
Serial 모니터를 활용해서 한번 값을 확인해보면, 내 리모컨이 누른 고유값을 확인 할 수 있다.
13EFBF14의 값이 나온것을 보면, HEX값으로 Rev받은 값을 볼 수가 있으며,
앞 네 자리 0x13EF는 커스텀 코드이며 리모컨의 ID, 그다음 두 자리(0xFB)는 실제 버튼 값이고 마지막 두 자리(0x14)는 버튼 값의 반전 값이 이다.
이제 해당 값을 가지고 다양한 아두이노 제어를 할 수 있다!!
'메이커 이야기 > 아두이노' 카테고리의 다른 글
[메이키메이키] 마리오 플래쉬 게임 (0) | 2019.03.15 |
---|---|
[아두이노] 무작위 LED 주사위 만들기 (0) | 2019.01.20 |
[Blynk] 아두이노 Blynk HC-06 연결 (0) | 2018.06.02 |
[아두이노] 아두이노로 점수판 만들어 보기 part 2 _ 세븐세그먼트 이해 (1) | 2018.02.21 |
[아두이노] 아두이노로 점수판 만들어 보기 part 1 (0) | 2018.02.20 |