Arduino Circuits – PIR sensor
HC-SR501 PIR Sensor
PIR-sensor (Passiv Infraröd sensor) reagerar på värmen (IR strålning) från människor och djur. Sensorn är en elektronisk sensor som läser av infrarött ljus som strålar från objekt i sitt synfält. PIR-sensorn upptäcker rörelse, men inte vem eller vad som rörde sig. Om man ska kunna se det så krävs det att man har en aktiv IR-sensor. Alla objekt avger IR-strålning men på olika sätt. PIR-sensorn kan känna av rörelser i ca 5-6 minuter. Den används ofta i säkerhetslarm och automatiska belysningsapplikationer.
Om någon vill göra på liknande sätt som min koppling från PIR-sensorn till Arduinon så gör du så här. Man behöver en kopplingsplatta, en Arduino, en PIR- sensor och sladdar. Det är viktigt att PIR-sensorn blir kopplad till rätt ställen på Arduinon så att allt fungerar som det ska göra. Man ansluter power till 5V, ground till ground och signal till valfri pin. Man behöver också skriva in en kod. Efter det så kan man testa att starta och se om det fungerar.
Koden till kretsen
/*
- PIR sensor tester
*/
int ledPin = 13; // choose the pin for the LED
int inputPin = 2; // 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;
}
}
}
Källor:
https://learn.adafruit.com/pir-passive-infrared-proximity-motion-sensor/using-a-pir-w-arduino