코코아팹은 누구나 창의적 아이디어를 현실로 만들어 낼 수 있도록
만들고, 공유하고, 배울 수 있는 터전이
되고자 합니다.
아이디와 비밀번호를 잊으셨나요?아이디 / 비밀번호 찾기
코코아팹 회원이 아니신가요? 회원가입
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) | 브레드보드 | 점퍼케이블 |
파트 |
* 이 코드는 스케치를 사용하여 작성 / 업로드 합니다. 스케치에 대한 사용법은 링크를 참고하시기 바랍니다.
#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
항상 진취적이고, 새로운 것을 추구하는 코코아팹 에디터입니다!