Olá galera, tudo beleza? Hoje estaremos utilizando o nosso sensor de presença PIR com Arduino. Assim, estaremos mostrando uma pequena interação entre ambos.
Primeiramente, o foco desse post é o Sensor de Presença PIR HC-SR501 , que é um cara bacana de se trabalhar e amplamente utilizado em projetos e /ou sistemas que envolvam a detecção de movimento, consequentemente, presença.
Além disso, é importante saber que ele trabalha nos 5V fornecidos pelo próprio Arduino. Portanto, vamos agora conhecer algumas informações técnicas sobre o sensor:
- Tensão de Operação: 5V ~ 20V
- Corrente de Operação: <50mA
- Tempo de retardo Ajustável: 2s ~ 200s
- Distância detectável: 3~7m (Ajustáveis – (Reguláveis através dos potenciômetros presente na parte traseira do sensor).
- Tempo de Bloqueio: 2,5s (Padrão)
- Ângulo de de detecção: <= 100°
- Temperatura de Trabalho: -15 ~ +70°C
- Dimensões: 32mm x 24mm x18mm
E galera, apesar de ser uma implementação simples, ela está aqui pra atiçar sua curiosidade de maneiras DIY de integrar esse sensor bacanérrimo.
Ainda assim, vamos atiçar sua imaginação, e dar algumas dicas de onde aplicar ele :
- Sistemas de segurança;
- Controle de consumo de energia elétrica;
- Automação de ambientes.
Mas agora, chegou o momento de colocar a mão na massa!
Componentes Utilizados
- 01x Arduino Uno R3;
- 1x Protoboard;
- 1x Sensor de Presença PIR;
- 02x LEDs ;
- 02x Resistores de 220
- Alguns Jumpers
Montagem do Circuito
Código do Projeto Comentado
Então, o código desenvolvido tem o intuito de que, quando fosse detectado algum movimento, o LED vermelho acenderia e, quando não houvesse movimento, o LED Verde acenderia.
/*Autocore Robótica - Código Desenvolvido por : Iago A.Pereira
*/
//Declaração de portas digitais aos quais os led e a entrada digital do sensor vão estar conectados.
int ledverde = 6;
int ledvermelho = 7;
int pinoSensor = 4;
//Inicia o sensor em estado 0, ou seja desligado.
int iniciaSensor = 0;
//Variável para calibração do sensor
int calibracao = 45;
void setup() {
Serial.begin(9600);
//Declaração de que os LED's serão usados como saída.
pinMode(ledvermelho,OUTPUT);
pinMode(ledverde,OUTPUT);
pinMode(pinoSensor,INPUT); //E o sensor uma entrada.
Serial.print("Calibrando o sensor...");
for(int i = 0; i < calibracao; i++){
Serial.print(".");
delay(1000);
}
Serial.println("Sensor Ativado");
delay(500);
}
void loop() {
//A cada ciclo, ele faz uma nova leitura do estado do sensor de presença
iniciaSensor = digitalRead(pinoSensor);
Serial.print("Valor do Sensor PIR: ");
Serial.println(iniciaSensor);
////Verificando se ocorreu detecção de movimentos
if (iniciaSensor == 1) {
alarme_on();
} else {
alarme_off();
}
}
void alarme_on() { //Função que ativa o alarme - Detectou presença, o LED Vermelho fica acende
//E o LED VERDE apaga.
digitalWrite(ledvermelho, HIGH);
digitalWrite(ledverde, LOW);
}
void alarme_off() { //Função que desativa o alarme - N foi detectado presença, o LED Vermelho apaga
//E o LED VERDE acende.
digitalWrite(ledvermelho, LOW);
digitalWrite(ledverde, HIGH);
}
Resultado do Projeto
Por fim, seguindo a linha de projetos de segurança, não percam o próximo post – Integração do Sensor Óptico-Reflexivo TCRT 5000 e Arduino!
Quem sabe não façamos um projeto de monitoramento online (local) com todos os sensores aplicáveis à área de segurança. :O
Opniões? Dúvidas?Sugestões de projetos?Deixem nos comentários abaixo!
O mais breve responderemos!
CYA! 😀
