Como integrar o Arduino Uno com o sensor de movimento PIR HC-SR501

 

 

COMO INTEGRAR O ARDUINO UNO COM O SENSOR DE MOVIMENTO PIR HC-SR501

 

 

Os sensores de movimento, tem por objetivo detectar o movimento de alguém em um determinado ambiente. Ele pode utilizar uma ou várias tecnologias para detectar o movimento e são utilizados principalmente na área de segurança eletrônica. Ainda assim, estes sensores podem ser implementados para outras finalidades, como por exemplo para o acionamento de uma lâmpada. Desta maneira quando uma pessoa se aproxima do raio de acionamento do sensor, a lâmpada será acionada. Na área de segurança eletrônica quando um sensor detecta movimento, ele envia um sinal para o painel de controle do sistema de segurança, que se conecta à uma central de monitoramento. Isso alerta o usuário e o centro de monitoramento sobre uma possível ameaça em sua residência ou empresa.

O sensor de movimento mais utilizado em sistemas de segurança doméstica é conhecido como sensor PIR, também conhecido como sensor infravermelho passivo. O sensor infravermelho passivo detecta o calor do corpo (energia infravermelha) procurando mudanças nas temperaturas.

Este artigo será responsável por detalhar o funcionamento e características do sensor de movimento PIR HC-SR501. Demonstraremos como integrar o sensor PIR com o Arduino Uno e como implementar um sistema de alarme dispondo de poucos componentes.

 

Princípio de funcionamento do sensor de movimento PIR HC-SR501

O sensor infravermelho passivo (PIR) HC-SR501 mede a luz infravermelha (IR) emitida por objetos que estão em seu campo de visão. O sensor permite detectar movimento por mudança na luz IR. Os sensores PIR são considerados “passivos”, pois não emitem ativamente nenhuma luz infravermelha. Isso significa que quando uma pessoa ou animal entrar no alcance do sensor, ele detectará um movimento em decorrência da energia térmica na forma de radiação infravermelha. É daí que vem o nome, sensor infravermelho passivo. E o termo “passivo” significa que o sensor não está utilizando nenhuma energia para fins de detecção, ele apenas funciona detectando a energia emitida pelos outros objetos. Normalmente, os sensores PIR são muito utilizados ??para instalações automáticas de iluminação doméstica (interna e externa) ou instalações de segurança.

 

 

O sensor HC-SR501 é um sensor PIR fácil de usar que pode ser usado com um microcontrolador Arduino. Em contraste com o (mais simples) sensor HC-SR505, o HC-SR501 permite ajustar sua sensibilidade e tempo de atraso do sinal.

O tempo de atraso define quanto tempo o pino de saída permanece “alto” após o movimento ser detectado. O tempo de atraso varia de 3 segundos a 300 segundos (5 minutos). O tempo de atraso pode ser aumentado girando o potenciômetro no sentido horário.

 

 

O sensor PIR HC-SR501 vem com uma placa de separação com o sensor PIR na parte superior. O sensor possui uma tampa em forma de “lente Fresnel” para proteger o sensor e ter um ângulo de detecção de cerca de 120°.

 

Pinagem e descrição do sensor de movimento PIR HC-SR501

O sensor de movimento PIR HC-SR501 conta com três pinos principais: VCC, GND e OUT.

 

 

O Sensor PIR trabalha com uma tensão de 5 à 20V, tem um baixo consumo de corrente e seu sinal de saída é de 3,3V. Sua faixa de detecção pode cobrir uma área de até 7 metros e um ângulo de abertura de aproximadamente 120 graus.

 

 

 

Como utilizar o sensor de movimento PIR HC-SR501 com o Arduino Uno

Como abordado anteriormente, podemos desenvolver diversos projetos dispondo do sensor de movimento PIR HC-SR501, principalmente projetos voltados para a área de segurança eletrônica.

A seguir, iremos demonstrar através da elaboração de um circuito como realizar a integração entre o Arduino e o sensor de movimento PIR HC-SR501 de forma prática. O objetivo do circuito será acionar um alarme sonoro quando o sensor identificar algum tipo de movimento. Este circuito pode ser implementado para proteger a sua residência contra invasores.

 

Materiais para montagem

 

Passos para a montagem do circuito

A montagem do circuito deve ser feita conforme imagem a seguir. Observe atentamente a posição correta dos terminais do sensor de movimento PIR.

 

 

Programação do Arduino

Inicialmente abra a IDE do Arduino para iniciar a programação. Em seguida digite o respectivo código conforme a imagem a seguir:

 

 

Após digitar o código, basta fazer o upload no Arduino Uno. O processo para fazer o upload do código no Arduino Uno é bem simples:

 

 - Conecte o seu Arduino Uno utilizando o cabo USB.

 - Vá em Ferramentas ? Placa ? Arduino Uno para selecionar sua placa no menu Arduino.

 - Em seguida escolha a porta serial correta para sua placa vá em ferramentas ? Porta serial ? COMx (Escolha a porta serial ao qual o seu Arduino estiver conectado).

 - Por fim, basta clicar no botão Carregar. 

 

Se não houver nenhum erro de digitação ou configuração, o código será gravado no Arduino. Caso contrário verifique se o código foi digitado corretamente e se as configurações estão corretas.

Após o código ser carregado com sucesso no Arduino, o buzzer irá emitir um sinal sonoro toda vez que o sensor identificar o movimento de uma pessoa ou animal.

 

Explicação do código

O código inicia com a definição de algumas varíaveis, a variável “BUZZER” indica o pino ao qual o buzzer será conectado (pino 13 do Arduino), a variável “SENSOR” indica o pino ao qual o sensor será conectado (pino 2 do Arduino), já para a variável “state” atribuimos o valor de LOW e para a variável “val” atribuimos o valor de 0.

 

 

No void setup(), definimos o “BUZZER”  como saída e o “SENSOR” como entrada. Além disso iniciamos o monitor serial com uma taxa de baud rate de 9600;

 

 

No void loop, efetuamos a leitura do “SENSOR” e guardamos o resultado na variável “val”. Desta maneira se a variável “val” for igual a HIGH (sensor ativado) o “BUZZER” receberá nível lógico alto(HIGH) e começará a apitar e a mensagem de movimento detectado irá aparecer no monitor serial da IDE do Arduino.

 

 

Ainda no void loop(), quando a variável “val” for igual a LOW (sensor desativado) o “BUZZER” receberá nível lógico baixo(LOW) e não emitirá nenhum sinal sonoro consequentemente a mensagem de movimento não detectado irá aparecer no monitor serial da IDE do Arduino.