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á
- Sensor de movimento MH-SR602 PIR
- Board Arduino (por exemplo, Uno, Mega, Nano)
- Fios de pão e jumper
- 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
- Conecte o Arduino ao seu computador via USB.
- Abra o Arduino IDE e selecione o correto Quadro e Porta sob o Ferramentas menu.
- Faça o upload do código para o Arduino clicando Carregar.
- Abra o monitor serial (Ferramentas > Monitor serial) e definir a taxa de transmissão como
9600
. - 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
- Iluminação ativada por movimento
- Alarmes de invasor
- Automação residencial inteligente
- 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!