MH-SR602 este un senzor de mișcare compact PIR (pasiv cu infraroșu) utilizat pentru detectarea mișcării în raza sa de acțiune. Dimensiunile sale mici, consumul redus de energie și întârzierea reglabilă îl fac ideal pentru iluminatul activat de mișcare, alarme și proiecte IoT. În acest tutorial, vă vom ghida prin interfațarea MH-SR602 cu Arduino.
Ce vei avea nevoie
- MH-SR602 Senzor de mișcare PIR
- Arduino Board (de exemplu, Uno, Mega, Nano)
- Tablă de pâine și jumper
- Un computer cu IDE Arduino instalat
Pasul 1: Înțelegerea senzorului MH-SR602
MH-SR602 detectează mișcarea prin detectarea modificărilor de radiații infraroșii în împrejurimile sale. Când este detectată mișcarea, acesta produce un semnal ridicat; În caz contrar, rămâne scăzut.
MH-SR602 PINOUT
Ac | Funcţie |
---|---|
VCC | Sursă de alimentare (3.3V-5V) |
Afară | Semnal de ieșire digitală |
GND | Sol |
Caracteristici reglabile
- Timp de întârziere: Potențiometrul de la bord ajustează timpul în care ieșirea rămâne ridicată după detectarea mișcării (aprox. 2-100 secunde).
Pasul 2: Cablarea MH-SR602 către Arduino
Iată cum să conectați senzorul la Arduino:
Pin MH-SR602 | Pinul Arduino |
---|---|
VCC | 5V |
Afară | Pin 2 |
GND | GND |
Pasul 3: Încărcați codul
Iată un exemplu de schiță pentru a monitoriza detectarea mișcării și afișarea stării pe monitorul serial:
const int pirPin = 2; // Connect MH-SR602 OUT to pin 2
void setup() {
pinMode(pirPin, INPUT);
Serial.begin(9600);
Serial.println("MH-SR602 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
}
Pasul 4: Testați configurarea
- Conectați Arduino la computer prin USB.
- Deschideți IDE Arduino și selectați corect Bord şi Port sub Instrumente meniu.
- Încărcați codul la Arduino făcând clic pe Încărcați.
- Deschideți monitorul în serie (Instrumente > Monitor în serie) și setați rata de transfer la
9600
. - Mutați -vă în intervalul senzorului și observați starea mișcării tipărită pe monitorul în serie.
Opțional: controlul unui LED cu mișcare
Puteți modifica codul pentru a porni un LED la detectarea mișcării:
Cablarea LED -ului
Pinul LED | Pinul Arduino |
---|---|
Anod (+) | Pinul 13 |
Catod (-) | GND |
Cod modificat
const int pirPin = 2; // Connect MH-SR602 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("MH-SR602 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
}
Aplicațiile MH-SR602
- Iluminare activată în mișcare
- Alarme intrus
- Automatizare inteligentă pentru casă
- Dispozitive IoT declanșate de proximitate
Depanare
- Nu a fost detectată nicio mișcare: Asigurați -vă că senzorul este alimentat corect și potențiometrul de întârziere nu este setat prea mare.
- Declanșatori falși: Reduceți zgomotul de mediu (de exemplu, sursele de căldură în mișcare) și protejați senzorul de lumina directă a soarelui.
- Citiri instabile: Asigurați o putere stabilă și evitați vibrațiile excesive.
Concluzie
Ați interfațat cu succes senzorul de mișcare MH-SR602 PIR cu Arduino. Acest senzor versatil este perfect pentru detectarea mișcării în diferite proiecte. Experimentați cu caracteristici suplimentare, cum ar fi reglarea timpului de întârziere sau integrarea acestuia cu alte componente pentru aplicații mai avansate!