Bóson Treinamentos em Ciência e Tecnologia

Como acionar uma Lâmpada com Sensor de Movimento, Relé e Arduino

Como acender uma lâmpada automaticamente com sensor de movimento e arduino

Acender Lâmpada com Sensor de Movimento, Relé e Arduino

Neste projeto vamos aplicar nosso conhecimento sobre sensores infravermelhos de movimento (PIR) e Arduino para construir um circuito bastante útil: acendimento automático de uma lâmpada quando alguém entra em um recinto.

Esta é uma aplicação extremamente popular dos sensores PIR, pois permite que o ambiente seja iluminado assim que uma pessoa o adentra, e a iluminação é desligada depois de um tempo pré-programado (como por exemplo, 30 segundos), permitindo economizar muita energia elétrica ao impedir que as pessoas se esqueçam de apagar as luzes ao sair.

O sensor PIR que utilizaremos é o HC-SR501, sensor de custo muito baixo e bastante comum. Mais precisamente, utilizarei o módulo de sensor que pode ser visto na imagem a seguir:

Sensor de Movimento HC-SR501

Este sensor pode ser comprado com facilidade pela Internet em sites de venda de material para hobbystas e estudantes de eletrônica. O da foto foi adquirido no Ali Express.

Lista de Materiais

O circuito pode ser montado de duas formas: utilizando um relé discreto e componentes separados, ou empregando-se um módulo de relé. Nosso projeto será realizado usando o módulo, que simplifica o processo (e é, basicamente, o mesmo circuito). Neste caso, vamos precisar de:

Caso prefira utilizar um relé convencional em vez de um módulo integrado, irá precisar também de:

Módulo de Relé

O módulo de relé que utilizei no projeto é o Keyes SRD-05VDC-SL-C, que possui dois relés integrados (somente um será utilizado). Você pode utilizar qualquer módulo disponível, desde que atenda às especificações de tensão necessárias. É possível acionar diversas lâmpadas (ou outros dispositivos) usando módulos com múltiplos relés – veremos como fazer isso em um outro projeto.

A figura a seguir mostra o módulo de relé empregado:

Módulo de Relé Keyes Dual Keyes SRD-05VDC-SL-C

O diagrama esquemático a seguir mostra os componentes e interligações do módulo de relé utilizado (para um relé). Caso você opte por utilizar um relé discreto, deverá acrescentar o circuito conforme mostrado na ilustração:

Esquema do módulo de relé Keyes

Relés Normalmente Aberto e Normalmente Fechado

Aqui cabe uma rápida explanação sobre esse componente. Os relés possuem dois tipos diferentes de contatos elétricos – normalmente aberto – NA (NO – Normally Open) e normalmente fechado – NF (NC – Normally Closed).

A tensão de alimentação de 120-240V, que acionará a lâmpada, entra no relé pelo terminal comum (C) em ambas as configurações. Para usar os contatos normalmente abertos, usamos o terminal NO – assim, a lâmpada permanecerá apagada enquanto o sensor não ativar o circuito. Para usar os contatos normalmente fechados, usamos o terminal NC – neste caso, a lâmpada permaneceria acesa até o circuito ser ativado pelo sensor.

Qual será utilizado depende de como queremos que o interruptor seja empregado. Neste projeto queremos que a lâmpada seja acesa com o acionamento do relé, portanto queremos ligá-la, e por isso usaremos os contatos NO (NA) do relé.

O Circuito

A figura a seguir ilustra o circuito montado em uma matriz de contatos:

Clique na imagem para ampliá-la

Atenção: Tome muito cuidado ao construir esse circuito, pois a lâmpada e o relé estarão ligados à rede elétrica (110/220V), e você corre o risco de levar um choque potencialmente perigoso e danificar os componentes. Verifique cuidadosamente todas as ligações, e procure isolar todas as pontas de fios empregados com fita isolante. Todo cuidado é pouco!

O Código

Utilizaremos um código similar ao do nosso projeto de acionamento de LED com PIR, com uma diferença: o sinal de saída do Arduino irá acionar o módulo de relé, o qual por sua vez chaveará seus contatos NO para acendimento da lâmpada:

const int pinoRELE = 10;
const int pinoPIR = 4;

void setup() {
  pinMode(pinoRELE, OUTPUT);
  pinMode(pinoPIR, INPUT);
}

void loop() {
  int valor = digitalRead(pinoPIR);
  if (valor == HIGH) {
    digitalWrite(pinoRELE, HIGH);
    delay(5000);
    digitalWrite(pinoRELE, LOW);
  }
}

Vamos usar a seguinte temporização: ao detectar movimento, o Arduino manterá o relé ativado por 5 segundos, mantendo a lâmpada acesa por esse tempo, e depois a apagará. Você pode alterar esse tempo conforme sua necessidade.

Circuito em Funcionamento

Para testar o circuito, basta se movimentar em frente ao sensor para que a lâmpada seja acionada.

Na foto abaixo podemos ver o circuito em funcionamento, em um ambiente escuro, e com a lâmpada apagada:

Assim que um movimento é realizado em frente ao sensor (como passar por ele ou balançar a mão), a lâmpada é acesa, e assim permanece pelo tempo que foi programado no código do programa:

É isso aí! No próximo projeto vamos acionar mais de um dispositivo usando o Arduino e módulo de relés. Até mais!

 

Sair da versão mobile