반응형

 

 

 

아두이노(Arduino)에서 자주 사용하는 센서 및 모듈을 소개하는 시간으로 오늘은 적외선 센서에 대해 알아보겠습니다. 적외선 PIR (Passive Infrared Sensor) 센서는 외부에서 발생하는 적외선을 감지하는 센서입니다. 여기서 Passive가 붙은 이유는 센서가 수동적으로 주변의 적외선을 detecting하여 주변을 감지하기 때문입니다. 이와 반대로 센서에서 적외선을 방출하여 주변을 감지하는 적외선 센서도 있습니다.

 

지난 포스팅에서 초음파 센서 HC-SR04를 이용하여 사람의 동작을 감지할 수 있는 것을 살펴보았는데요. 초음파 센서에 비해 적외선 PIR 센서가 view angle이 더 넓습니다. 즉, 주변을 감지할 수 있는 범위가 더 넓은데, 이는 초음파 센서는 센서에서 초음파가 발생하여 물체에 반사되어 다시 센서가 detecting하기까지 경로가 있기 때문에 적외선 센서에 비해 좁은 영역을 감지할 수밖에 없습니다.

 

Arduino 아두이노 초음파(거리) 센서(ultrasounds sensor) 사용방법

앞서 포스팅에서 온습도 센서(Temperature and Humidity sensor)만 가지고 아두이노의 기본적인 동작법이나 파일 저장법, 그래프 그리기, 엑셀(Excel)과 연동하는 방법들을 알아보았습니다. 그리고 인터넷(

it-g-house.tistory.com


 

1. 적외선 PIR (Passive InfraRed) 센서 HC-SR501

 

아두이노에서 자주 사용되고 온라인에서 쉽게 구할 수 있는 HC-SR501 적외선 PIR 센서 모듈입니다. 가격도 저렴한 편인데 사용하기도 편하고 생각보다 많은 설정이 가능해서 널리 사용되는 듯 합니다. 오늘 예시는 이 HC-SR501 모듈로 진행하겠습니다.

 

 

아두이노 적외선 PIR 센서 (HC-SR501)

 

동작전압 (Operating voltage) 5~12VDC
출력전압 (Output voltage) 0 V (Low) / 3.3V (High)
감지각도 (View angle) 110~120도
설정 기능 (Setting option) 감도(거리), 지연시간, 신호방식

설정 기능은 아래 사진에서 볼 수 있듯이 돌릴 수 있는 나사 두개와 접선을 해주는 점퍼대로 여러 가지 조절이 가능합니다.

 

 

감도(거리, Distance) 조절 : 시계방향으로 돌리면 감도가 낮아져 적외선을 sensing할 수 있는 거리가 줄어듭니다.

 

지연시간 (Delay Time) 조절 : 적외선 감지후 감지된 신호(High)를 얼마간 유지할지 조절이 가능합니다. 시계방향으로 돌릴수록 신호를 유지하고 있는 시간이 짧아집니다.  

 

신호방식 조절 : 좌측의 점퍼대를 옮겨 연결하면 감지신호를 한번만 보내주는 모드이고, 다른 모드는 감지신호를 계속해서 보내 주는 모드입니다.  

 

▶ 적외선 센서 사러가기  smartstore.naver.com/storeplant/products/5347527847

 

 

2. 아두이노 (Arduino) 적외선 PIR (Passive InfraRed) 센서 배선

 

 

아두이노 적외선 PIR 센서 (HC-SR501) 배선

 


 

 

3. 아두이노 (Arduino) 프로그램 코딩

 

int inputPIN = 3;    
int PIRstatus = 0;    
int Readinput = 0;  
  
void setup() {  
   pinMode(inputPIN, INPUT);   
   Serial.begin(9600);    
}  
  
void loop(){  
  Readinput = digitalRead(inputPIN);    
  if(Readinput == 1 && PIRstatus == 0){
      Serial.println("Action!");    
      PIRstatus = 1;    
     }  
  if(Readinput == 0 && PIRstatus == 1){  
        Serial.println("End!");    
        PIRstatus = 0;  
       }  
    delay(1000);  
   }  
   

pinMode와 if 명령어를 사용하여 프로그램을 코딩합니다. 센서가 적외선을 감지(사람을 인지)하면 연결된 digital 3번 pin으로 High 신호를 보내고 아두이노가 신호를 읽어 시리얼 모니터에 "Action"이라고 메시지를 보냅니다. 사람이 지나가고 적외선 감지가 없으면 센서에 설정해놓은 감지시간이 지나고 아두이노에 Low 신호를 보내 "End" 메시지를 볼 수 있습니다.

 

pinMode와 if 명령어가 처음이신 분은 아래 링크 참조 부탁드립니다.

 

아두이노(Arduino) 프로그램 코딩 초급 (pinMode, digitalWrite, if 명령어)

지난 시간 스케치로 프로그램을 코딩할 때 자주 사용되는 꼭 필요한 명령어 몇 가지를 알아보았습니다. IT 비전공자가 프로그램 언어를 기본부터 완전히 이해하면서 배우는 것은 쉬운 일은 아닙

it-g-house.tistory.com

 


  이번 포스팅에서는 아두이노(Arduino)에서 많이 사용하는 적외선 PIR 센서에 대해 알아보고 사용방법에 대해 살펴보았습니다. 다음 포스팅에서는 적외선을 응용하여 자동센서등이나 자동문 등을 만들 수 있는 방법에 대해 공부해 보겠습니다.

 

오늘도 긴 글 읽어주셔서 감사합니다. 궁금하신 부분이나 조언주실 내용은 댓글로 언제든지 남겨주세요 ^^

 


 

▽ 적외선 FIR 센서를 이용한 홈 IoT 무드등 만들기 응용편!! 

 

아두이노(Arduino) 응용, 적외선 FIR센서를 이용한 무드등 만들기

아두이노(Arduino)를 이용한 홈 IoT (생활응용)에 적용하는 시간으로 적외선 FIR센서를 이용하여 무드등을 만들어보겠습니다. 최근 집에 머무르는 시간이 길어지면서 인테리어에 많은 관심이 생겼

it-g-house.tistory.com

 

 

 

반응형

+ Recent posts