HC-SR501 är en populär passiv infraröd (PIR) rörelsessensormodul som upptäcker rörelse genom att mäta infraröda strålningsförändringar i omgivningen. Det används vanligtvis i rörelseaktiverad belysning, säkerhetssystem och IoT-projekt. Denna handledning kommer att vägleda dig genom att ställa in och använda HC-SR501 med Arduino.
Vad du behöver
- HC-SR501 PIR Motion Sensor Module
- Arduino Board (t.ex. Uno, Mega, Nano)
- Breadboard och jumpertrådar
- En dator med Arduino Ide installerad
Steg 1: Förstå HC-SR501-sensorn
HC-SR501-modulen har justerbar känslighet och fördröjningstidsinställningar, vilket gör den mångsidig för olika applikationer för rörelsedetektering. Den fungerar på 5V kraft och matar ut en hög signal när rörelse upptäcks.
HC-SR501 pinout
| Stift | Fungera | 
|---|---|
| Vcc | Strömförsörjning (5V) | 
| UT | Digital utsignal | 
| Gard | Jord | 
Justerbara inställningar
- Känslighet: Justera detekteringsområdet (upp till ~ 7 meter).
- Fördröjningstid: Justera varaktigheten för den höga signalen efter att rörelsen upptäcks (ca 5 sekunder till 5 minuter).
Steg 2: Kopplar HC-SR501 till Arduino
Så här ansluter du HC-SR501 till en Arduino Uno:
| HC-SR501-stift | Arduinosnål | 
|---|---|
| Vcc | 5V | 
| UT | Stift 2 | 
| Gard | Gard | 
Steg 3: Ladda upp koden
Här är ett exempelskiss för att övervaka rörelsedetektering och visa status på seriell monitor:
const int pirPin = 2; // Connect HC-SR501 OUT to pin 2
void setup() {
  pinMode(pirPin, INPUT);
  Serial.begin(9600);
  Serial.println("HC-SR501 PIR Motion Sensor Test");
}
void loop() {
  int motionStatus = digitalRead(pirPin); // Read the sensor output
  if (motionStatus == HIGH) {
    Serial.println("Motion detected!");
  } else {
    Serial.println("No motion detected.");
  }
  delay(500); // Update every 500ms
}
Steg 4: Testa installationen
- Anslut Arduino till din dator via USB.
- Öppna Arduino IDE och välj rätt Styrelse och Hamn under Verktyg meny.
- Ladda upp koden genom att klicka Ladda upp.
- Öppna seriell monitor (Verktyg > Serieövervakare) och ställ in baudhastigheten till 9600.
- Flytta inom sensorns sortiment och observera rörelsestatusen tryckt på seriell monitor.
Valfritt: Kontrollera en LED med rörelse
Du kan ändra koden för att slå på en LED när rörelse upptäcks:
Koppla av lysdioden
| LED -stift | Arduinosnål | 
|---|---|
| Anod (+) | Stift 13 | 
| Katod (-) | Gard | 
Modifierad kod
const int pirPin = 2; // Connect HC-SR501 OUT to pin 2
const int ledPin = 13; // Connect LED to pin 13
void setup() {
  pinMode(pirPin, INPUT);
  pinMode(ledPin, OUTPUT);
  Serial.begin(9600);
  Serial.println("HC-SR501 PIR Motion Sensor Test");
}
void loop() {
  int motionStatus = digitalRead(pirPin); // Read the sensor output
  if (motionStatus == HIGH) {
    digitalWrite(ledPin, HIGH); // Turn on LED
    Serial.println("Motion detected!");
  } else {
    digitalWrite(ledPin, LOW); // Turn off LED
    Serial.println("No motion detected.");
  }
  delay(500); // Update every 500ms
}
Applikationer av HC-SR501
- Rörelseaktiverad belysning
- Inkräktare larm
- Smart Home Automation
- Närhetsutlösade IoT-enheter
Felsökning
- Ingen rörelse upptäckt: Se till att sensorn drivs korrekt och känsligheten justeras på lämpligt sätt.
- Falska triggers: Minska miljöbuller (t.ex. värmekällor) och undvik direkt exponering för solljus.
- Instabila avläsningar: Kontrollera för korrekt jordning och stabil strömförsörjning.
Slutsats
Du har framgångsrikt blandat HC-SR501 PIR-rörelsessensor med Arduino. Denna mångsidiga sensor är perfekt för rörelsedetektering i olika projekt. Experimentera med ytterligare funktioner, till exempel att justera känsligheten eller integrera den med andra komponenter, för att skapa avancerade rörelsebaserade system!
 
            
 
      
 
      
 
      
 
      
 
      
 
       
         
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
             
   
   
   
   
   
   
   
   
   
   
   
   
  