Jak używać czujnika ruchu MH-SR602 PIR z Arduino

How to Use the MH-SR602 PIR Motion Sensor with Arduino

MH-SR602 to kompaktowy czujnik ruchu PIR (pasywny w podczerwieni) używany do wykrywania ruchu w jego zakresie. Jego niewielki rozmiar, niskie zużycie energii i regulowane opóźnienie sprawiają, że jest idealny do oświetlenia aktywowanego ruchem, alarmów i projektów IoT. W tym samouczku poprowadzimy Cię przez interfejs MH-SR602 z Arduino.


Czego będziesz potrzebować

  1. Czujnik ruchu MH-SR602 PIR
  2. Arduino Board (np. UNO, Mega, Nano)
  3. Druty chleba i skoczków
  4. Komputer z zainstalowanym Arduino IDE

Krok 1: Zrozumienie czujnika MH-SR602

MH-SR602 wykrywa ruch, wykrywając zmiany promieniowania w podczerwieni w otoczeniu. Po wykryciu ruchu wyświetla wysoki sygnał; W przeciwnym razie pozostaje niski.

MH-SR602 Pinout

Szpilka Funkcjonować
VCC Zasilacz (3,3 V-5V)
NA ZEWNĄTRZ Cyfrowy sygnał wyjściowy
GND Grunt

Regulowane funkcje

  • Czas opóźnienia: Postanometr pokładowy dostosowuje czas, w którym wyjście pozostaje wysokie po wykryciu ruchu (około 2-100 sekund).

Krok 2: Okablowanie MH-SR602 do Arduino

Oto jak połączyć czujnik z Arduino:

Pin MH-SR602 PIN Arduino
VCC 5v
NA ZEWNĄTRZ Pin 2
GND GND

Krok 3: Prześlij kod

Oto przykład szkicu do monitorowania wykrywania ruchu i wyświetlania statusu w monitor szeregowych:

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
}

Krok 4: Przetestuj konfigurację

  1. Podłącz Arduino do komputera za pomocą USB.
  2. Otwórz Arduino IDE i wybierz poprawne Tablica I Port pod Narzędzia menu.
  3. Prześlij kod do Arduino, klikając Wgrywać.
  4. Otwórz monitor szeregowy (Narzędzia > Monitor szeregowy) i ustaw wskaźnik transmisji na 9600.
  5. Poruszaj się w zakresie czujnika i obserwuj status ruchu wydrukowany na monitorze szeregowym.

Opcjonalnie: kontrolowanie diody LED z ruchem

Możesz zmodyfikować kod, aby włączyć diodę LED po wykryciu ruchu:

Okablowanie diody LED

Pin LED PIN Arduino
Anoda (+) Pin 13
Katoda (-) GND

Zmodyfikowany kod

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
}

Zastosowania MH-SR602

  1. Oświetlenie aktywowane ruchem
  2. Alarmy intruzowe
  3. Automatyzacja inteligentnej domu
  4. Urządzenia IoT wyzwalane zbliżeniami

Rozwiązywanie problemów

  • Brak ruchu: Upewnij się, że czujnik jest prawidłowo zasilany, a potencjometr opóźnienia nie jest zbyt wysoki.
  • Fałszywe wyzwalacze: Zmniejsz szum środowiskowy (np. Poruszanie źródeł ciepła) i osłoną czujnik przed bezpośrednim światłem słonecznym.
  • Niestabilne odczyty: Zapewnij stabilną moc i unikaj nadmiernych wibracji.

Wniosek

Z powodzeniem połączyłeś czujnik ruchu MH-SR602 PIR z Arduino. Ten wszechstronny czujnik jest idealny do wykrywania ruchu w różnych projektach. Eksperymentuj z dodatkowymi funkcjami, takimi jak dostosowanie czasu opóźnienia lub zintegrowanie go z innymi komponentami dla bardziej zaawansowanych aplikacji!

Zostaw komentarz

Notice an Issue? Have a Suggestion?
If you encounter a problem or have an idea for a new feature, let us know! Report a problem or request a feature here.