2017년 8월 8일 화요일

인체감지 센서(PIR)를 활용한 전등 On/Off

PIR 센서는 인체적외선을 감지여부에 따라 On/Off  디지털 신호를 보내주므로 사용하기 편합니다.

아래 코드는 PIR 센서의 신호를 받아서 LED를 On/Off 해주는 코드입니다.

LED 대신에 릴레이를 연결하고 여기에 전등을 연결하면 화장실 같은 곳에 설치하면

사람이 있는지에 따라 전등이 자동으로 소등되니 전기 절약도 되지 않을까 싶네요. ^^ 

감도는 저항을 돌려서 조절 가능합니다.



/*
 * PIR sensor tester
 */
int ledPin = 13;                // choose the pin for the LED
int inputPin = 12;               // choose the input pin (for PIR sensor)
int pirState = LOW;             // we start, assuming no motion detected
int val = 0;                    // variable for reading the pin status
void setup() {
  pinMode(ledPin, OUTPUT);      // declare LED as output
  pinMode(inputPin, INPUT);     // declare sensor as input
  Serial.begin(9600);
}
void loop(){
  val = digitalRead(inputPin);  // read input value
  if (val == HIGH) {            // check if the input is HIGH
    digitalWrite(ledPin, HIGH);  // turn LED ON
    if (pirState == LOW) {
      // we have just turned on
      Serial.println("Motion detected!");
      // We only want to print on the output change, not state
      pirState = HIGH;
    }
  } else {
    digitalWrite(ledPin, LOW); // turn LED OFF
    if (pirState == HIGH){
      // we have just turned of
      Serial.println("Motion ended!");
      // We only want to print on the output change, not state
      pirState = LOW;
    }
  }
}


댓글 없음:

댓글 쓰기