중급 예제

약간은 익숙하시거나 익숙해지셨나요? 그렇다면 조금더 깊이 다뤄볼까요?

적외선 송수신기(2) - 수신

2014-08-06 17:56:14

개요


적외선은 빛을 프리즘으로 분산시켜 보았을 때 적색선보다 더 바깥쪽에 있는 전자기파를 말합니다. 

사진 출처 : 옥션 - 초정밀 위조감식기k7000

적외선을 이용하여 위조 지폐 검출을 할수 있고,

 

 

적외선 통신을 이용해서 리모콘을 만드는 등 다양한 분야에서 사용되고 있습니다.

이번 컨텐츠에서는 적외선 통신을 이용하여 적외선 송신기 / 수신기를 만들어서 데이터를 전송해 보겠습니다.

(본 컨텐츠는 2편으로(1편은 송신기, 2편은 수신기) 되어 있습니다.) 

 

 

 

 

부품 목록

 

NO 부품명 수량 상세설명
1 오렌지보드 (아두이노 우노 R3) 1 아두이노
2 적외선 리모트 컨트롤 모듈(KY-022) 1 포터 트랜지스터(IC receiver) 만 있어도 됩니다.
3 브레드보드 1 브레드보드
4 점퍼케이블 3 점퍼케이블

 

부품명 오렌지보드 (아두이노 우노 R3) 적외선 리모트 컨트롤 모듈(KY-022) 브레드보드 점퍼케이블
파트
 

 

 

하드웨어 making 및 소프트웨어 Coding

 

회로도

 

브레드보드 레이아웃

 

 

소프트웨어 Coding

 * 이 코드는 스케치를 사용하여 작성 / 업로드 합니다. 스케치에 대한 사용법은 링크를 참고하시기 바랍니다.

 

#include <IRremote.h> 

// 적외선 수신과 연결된 핀 선언(!1번)
int RECV_PIN = 11; 

// IRrecev 객체 생성
IRrecv irrecv(RECV_PIN); 

// 수신받은 데이터 저장
decode_results results; 

void setup() {
	Serial.begin(9600);
	irrecv.enableIRIn();
}

void loop() {
	// 적외선 수신받았을 경우
	if (irrecv.decode(&results)) {  
		// 받은 값을 16진수로 출력한다.
		Serial.println(results.value, HEX); 
		irrecv.resume(); 
	}
}

 

 

 

적외선 송수신을 하기 위해서는 IRremote 라이브러리를 사용해야 합니다. (라이브러리 설치 및 사용법)
(IRremote 라이브러리는 링크에서 받으실 수 있습니다.)

IRremote의 함수들을 사용하기 위해 개체를 하나 생성하고, setup에서 연결된 핀을 세팅해줍니다.

그 후 loop() 안에서 적외선 수신을 받았을 경우 받은 값을 16진수로 출력합니다.

 

 

kocoafabeditor

항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!

적외선 리모트 컨트롤 모듈, 아두이노, 오렌지보드