IoT/아두이노

인체감지센서

안.들 2017. 5. 14. 16:40
센서감도와 delay시간 조절하여
인체감지시 led on/off


감지 전


감지 후


좌: delay시간조절
우: 센서 감도조절


GND / signal / VCC



스케치코드))

 

int ledPin = 13; // LED 연결핀

int inputPin = 2; // 센서 시그널핀

int pirState = LOW; // PIR 초기상태

int val = 0; // Signal 입력값


int LED_PIN = 4;


 

void setup() {

    pinMode(ledPin, OUTPUT); // LED Output 설정

    pinMode(inputPin, INPUT); // 센서 Input 설정

    pinMode(LED_PIN, OUTPUT);


 

    Serial.begin(9600);

}

 

void loop(){

    val = digitalRead(inputPin); // 센서값 읽기

    if (val == HIGH) { // 인체감지시

        digitalWrite(ledPin, HIGH); // LED ON

        digitalWrite(LED_PIN, LOW); 

           

        if (pirState == LOW) {

        // 시리얼모니터에 메시지 출력

        Serial.println("Motion detected!");

        pirState = HIGH;

        }

    } else {

        digitalWrite(ledPin, LOW); // LED OFF

        digitalWrite(LED_PIN, HIGH);

        

        if (pirState == HIGH){        

            // 시리얼모니터에 메시지 출력            

            Serial.println("Motion ended!");

            pirState = LOW;

        }

    }

}