728x90
반응형
24.03.26 실행 여부 확인 안됨. 차후 테스트 후 다시 포스팅 할 예정.
적외선 발광 모듈
적외선 발광 센서는 적외선을 내보내는 센서로, 적외선 발광 센서의 사용은 TV나 에어컨을 켤 때 사용하는 리모컨에서와 같이 사용된다.
적외선 리모트 컨트롤 모듈이 TV에 장착이 되어 있는 부품이라면 적외선 발광 센서는 리모컨에 장착되어 있는 부품이며, 적외선 발광 센서로 내보내는 적외선의 신호 값에 따라 TV의 채널을 바꾸거나, 소리를 조절하는 기능을 할 수 있다.
회로도
핀 번호 | 핀명 | I/O | 기능 |
1 | X | TX | 송신 신호 |
2 | X | X | X |
3 | X | GND | GROUND |
라이브러리 다운
적외선 발광 센서를 사용하기 위해 먼저 아래의 IRremote 라이브러리를 추가해야한다.
코드 설명 : 발광
#include<IRremote.h>
IRsend irsend; //IRremote의 송신 객체 설정
void setup (){
}
void loop(){
for (int i= 0; i<3; i++) {//의 값이 0부터 2가 될때까지 반복
irsend.sendSony(0xa90, 12); //16진수인 A90 적외선 신호 내보냄 delay(40): //0.04초간 대기
}
delay (1000);
}
3번 줄의 코드 'IRremote irsend;'와 같이 IRremote의 송신 객체를 설정하도록 한다.
setup() 공간은 넘어가도록 하며, loop() 공간에서는 'irsend.sendSony(0x90, 12);'의 코드와 같이 16진수인 A90 신호값을 내보내도록 설정한다. 이때 12는 비트의 수를 말한다.
위의 코드는 for() 문안의 수행문이므로 for() 문의 조건을 따라야 한다. for() 문의 조건인 'for(int i=0; i<3; i++);'와 같이 i의 값이 0에서 2가 될 때까지 수행문을 반복한다.
적외선 발광 센서를 적외선 리모트 컨트롤 모듈에 갖다 대면 LED가 3번 깜빡 거렸다가 1초 쉬고, 3번 깜빡 거렸다가 1초 쉬는 모습을 볼 수 있다
위 코드가 아닌 아래의 코드도 사용이 가능하며, 아래의 코드를 기준으로 수신부를 다루도록 한다.
Arduino UNO R3 적용
핀 번호 | 핀명 | R3 |
1 | S | 9 |
2 | + | X |
3 | - | GROUND |
#include <IRremote.h>
IRsend irsend;
// 프로그램 시작 - 초기화 작업
void setup()
{
Serial.begin(9600); // 시리얼 통신 초기화
Serial.println("Arduino Examples - IR Send Module");
Serial.println(" https://docs.whiteat.com/?p=1294");
}
int i= 10;
void loop()
{
irsend.sendNEC(i++,32); delay(1000);
irsend.sendNEC(i++,32); delay(1000);
irsend.sendNEC(i++,32); delay(1000);
irsend.sendNEC(i++,32); delay(1000);
}
적외선 수신 모듈
핀 번호 | 핀명 | I/O | 기능 |
1 | G | GND | GROUND |
2 | R | VCC | VCC |
3 | Y | RX Signal | 수신 신호 |
Arduino UNO R3 적용
핀 번호 | 핀명 | R3 |
1 | G | GND |
2 | R | VCC |
3 | Y | 11 |
728x90
반응형
'Arduino > [2] Arduino Module' 카테고리의 다른 글
[Arduino Module] #22. 레이저 발광 (0) | 2024.04.01 |
---|---|
[Arduino Module] #21. 조이스틱 모듈 (0) | 2024.04.01 |
[Arduino Module] #19. 디지털 온도센서 모듈 (1) | 2024.03.26 |
[Arduino Module] #18. 아날로그 온도센서 모듈 (1) | 2024.03.25 |
[Arduino Module] #17. 사운드 센서 (1) | 2024.03.11 |