Como usar o sensor de movimento MH-SR602 PIR com Arduino

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

O MH-SR602 é um sensor de movimento compacto PIR (Passive Infravery) usado para detectar o movimento dentro de seu alcance. Seu tamanho pequeno, baixo consumo de energia e atraso ajustável o tornam ideal para projetos de iluminação ativada por movimento, alarmes e IoT. Neste tutorial, o guiaremos através da interface do MH-SR602 com o Arduino.


O que você precisará

  1. Sensor de movimento MH-SR602 PIR
  2. Board Arduino (por exemplo, Uno, Mega, Nano)
  3. Fios de pão e jumper
  4. Um computador com o Arduino IDE instalado

Etapa 1: Compreendendo o sensor MH-SR602

O MH-SR602 detecta o movimento sentindo as mudanças de radiação infravermelha em seus arredores. Quando o movimento é detectado, produz um sinal alto; Caso contrário, permanece baixo.

Pinagem MH-SR602

Alfinete Função
VCC Fonte de alimentação (3.3V-5V)
FORA Sinal de saída digital
Gnd Chão

Recursos ajustáveis

  • Tempo de atraso: O potenciômetro a bordo ajusta o tempo em que a saída permanece alta após a detecção de movimento (aproximadamente 2-100 segundos).

Etapa 2: Fiação do MH-SR602 para Arduino

Veja como conectar o sensor ao Arduino:

Pino MH-SR602 Pino Arduino
VCC 5V
FORA Pino 2
Gnd Gnd

Etapa 3: Carregue o código

Aqui está um exemplo de esboço para monitorar a detecção de movimento e exibir o status no monitor 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
}

Etapa 4: teste a configuração

  1. Conecte o Arduino ao seu computador via USB.
  2. Abra o Arduino IDE e selecione o correto Quadro e Porta sob o Ferramentas menu.
  3. Faça o upload do código para o Arduino clicando Carregar.
  4. Abra o monitor serial (Ferramentas > Monitor serial) e definir a taxa de transmissão como 9600.
  5. Mova dentro da faixa do sensor e observe o status de movimento impresso no monitor serial.

Opcional: controlar um LED com movimento

Você pode modificar o código para ativar um LED quando o movimento for detectado:

Ligando o LED

Pino de LED Pino Arduino
Ânodo (+) Pino 13
Catodo (-) Gnd

Código modificado

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ções do MH-SR602

  1. Iluminação ativada por movimento
  2. Alarmes de invasor
  3. Automação residencial inteligente
  4. Dispositivos IoT acionados por proximidade

Solução de problemas

  • Nenhum movimento detectado: Verifique se o sensor está alimentado corretamente e o potenciômetro de atraso não está definido muito alto.
  • Gatilhos falsos: Reduza o ruído ambiental (por exemplo, fontes de calor em movimento) e proteja o sensor da luz solar direta.
  • Leituras instáveis: Garanta energia estável e evite vibrações excessivas.

Conclusão

Você interfigurou com sucesso o sensor de movimento MH-SR602 PIR com Arduino. Esse sensor versátil é perfeito para detecção de movimento em vários projetos. Experimente recursos adicionais, como ajustar o tempo de atraso ou integrá -lo com outros componentes para aplicações mais avançadas!

Deixe um comentário

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.