인체감지센서 모듈은 적외선을 감지하는 센서를 장착하고 있으며 약 6미터 이내의 인간이나 동물의 움직임을 감지할 수 있다. 인체나 동물의 몸과 같이 열을 발산하는 곳에서 발생하는 적외선을 감지하는 원리이다.


<그림 1> 인체 감지 센서 모듈


  • 인체나 동물의 몸체에서 발산되는 열적외선을 감지한다.

  • 둥근 캡은 적외선을 증폭하는 효과가 있다.

  • 약 6m 이내의 인체의 움직임을 감지할 수 있다.

전원과 신호를 전달하는 세 핀을 가지고 있고 5V 전원을 받아서 인체가 감지되면 신호선은 약 3.3V 전압을 띠게된다. 따라서 신호선을 아두이노의 디지털 핀에 연결하면 쉽게 인체감지 여부를 알 수 있게 된다.


 또한 인체가 감지되었을 때 high 신호를 유지하는 시간을 설정하는 조절기가 내장되어 있어서 이 시간을 0,3초~18초 사이로 조절할 수 있다. 이 조절 기능을 이용하면 인체가 감지되었을 때 점등되는 시스템을 아주 간단하게 구현할 수 있다. 모델에 따라서 열적쇠선 센서의 감도를 조절하는 조절기가 내장된 경우도 있다.


 고휘도LED가 5번 핀에 연결되어 있고 인체 감지 센서 모듈의 신호선이 A0핀에 연결되어 있다고 가정하자. 이 예제에서는 아날로그 핀을 디지털 핀으로 사용하는 예제이다. 전술한 바와 같이 디지털 핀의 숫자가 모자랄 경우에는 아날로그 핀을 디지털 핀으로 사용할 수 있다.


#define HLED 5
void setup() {
   pinMode(A0, INPUT);
   pinMode(HLED, OUTPUT);
}
void loop() {
   digitalWrite(HLED, digitalRead(A0) );
   delay(100);
}


이 예제를 실행해 보면서 인체가 감지되는 거리 범위와 고휘도LED가 켜지는 시간을 조절하여 보자.


아두이노 강좌 전체 목록 (TOP) >>>

C++ 언어 전체 강좌 목록 >>>

c{ard},n{ad011}

Posted by 살레시오
,