Relamp

Controle de lâmpada AC com relé

Neste projeto iremos fazer o controle de uma lâmpada AC utilizando o Nanoshield Relay, mostrando passo a passo todas as etapas de montagem e configuração. Você pode utilizá-lo como guia para construir seu próprio projeto de automação residencial, lembrando que além de lâmpadas, também é possível controlar outros tipos de equipamentos AC, como ventiladores, portões de garagem, travas elétricas, válvulas solenóides, etc...

ATENÇÃO: este projeto utiliza conexão direta à rede elétrica, e não fazer as conexões de forma adequada causa riscos de CHOQUE ELÉTRICO e INCÊNDIO. Só execute este projeto caso você já tenha experiência prévia com instalações elétricas, e siga com cuidado as recomendações de segurança no final desta página.

Materiais utilizados

Vamos começar pelos materiais utilizados. A foto abaixo mostra todos os itens necessários:

Lista de materiais para o projeto Relamp

  1. Cabo de extensão. Nós utilizamos um cabo de extensão pronto, porque ele já vem com tomadas nas pontas e isso facilita a ligação com a rede elétrica e a lâmpada. O comprimento é de 2 metros com espessura de 0,75mm² pra cada fio. Você também pode montar seu próprio cabo, se preferir.
  2. Adaptador de tomada para bocal de lâmpada.
  3. Terminais tubulares (ou ilhós). Estes terminais são crimpados no cabo de extensão e são úteis para evitar que os fios se quebrem quando inseridos nos bornes, além de proporcionar uma melhor isolação, desse modo a montagem fica mais segura.
  4. Lâmpada AC. Nós usamos uma lâmpada colorida só para o projeto ficar mais "bonito", qualquer lâmpada AC funciona, inclusive as fluorescentes compactas.
  5. Placas Base Board L, Relay, USB, Alevino e cabo flat para programação. Esta é só uma sugestão de montagem, o módulo USB e o Alevino podem ser substituídos por um Arduino UNO, Duemilanove, Diecimila, Nano, Mega R3 ou similares.
  6. Fonte AC/DC para alimentação. Qualquer fonte de 7V até 12V com corrente mínima de 500mA serve. Se preferir, também é possivel alimentar o conjunto pela porta USB do seu computador, ao invés de usar a fonte.

Além destes materiais você também vai precisar de um alicate de corte, uma chave de fenda e um cabo Mini-USB.

Alicate de corte e chave de fenda

Montagem

Vamos começar com a fiação. Pegue o cabo de extensão e corte apenas um dos fios, tomando cuidado de não deixar exposto, ou comprometer a isolação do outro fio que ficou inteiro. Depois separe cada uma das pontas do fio cortado, deixando uma distância de aproximadamente 2,5cm para cada uma delas. Veja imagem abaixo:

Cortando o fio

Decape aproximadamente 1cm de cada extremidade do fio cortado:

Decapando o fio

Agora nós vamos crimpar os terminais em cada ponta decapada. Existem alicates específicos para crimpar esse tipo de terminal, mas não é uma ferramenta comum de se encontrar por aí e pouca gente o possui, por isso nós vamos fazer essa crimpagem utilizando o próprio alicate de corte, que também dá um bom resultado. Porem nós vamos utilizar a parte traseira do alicate, que foi feita justamente para esse fim, caso o seu alicate não tenha esse recurso, também é possivel utilizar um alicate universal ou de bico.

Simplesmente insira o fio decapado no interior do terminal e depois pressione com o alicate até que ele fique bem firme e compacto, para isso normalmente é necessário girar o terminal e pressionar várias vezes.

Crimpando o terminal no fio decapado

Após a crimpagem, corte o terminal para que ele fique com aproximadamente 0,6cm de comprimento, isso fará com que ele entre totalmente dentro do conector, eliminando possibilidades de curto-circuito.

Cortando o terminal crimpado

Pronto, a fiação já está concluída. Agora nós vamos montar o conjunto e fazer a configuração.

Configuração

Parafuse os terminais crimpados nos bornes NA e C do Nanoshield Relay, não importa a ordem, você pode conectar qualquer terminal em qualquer um dos bornes. Aperte bem o parafuso para que não haja perigo do terminal se soltar sozinho.

Parafusando os terminais

Verifique também se o seu Nanoshield Relay está configurado para acionamento através do pino D3 (isso é feito ajustando o jumper de configuração).

Configuração Nanoshield Relay

Agora é só montar o Alevino e o Relay na Base Board, encaixar o cabo flat de programação e conectar o cabo USB no seu computador (não ligue o cabo de extensão na tomada ainda). Todos os slots da Base Board são idênticos e você pode plugar qualquer um dos módulos em qualquer um dos slots sem problemas, o único cuidado a ser tomado é verificar se as marcas brancas localizadas nos cantos do Nanoshields estão alinhadas com as marcas brancas localizadas nos cantos de cada um dos slots (veja mais detalhes na página da Base Board).

Nós utilizamos o cabo flat para fazer a programação do Alevino porque o módulo USB não vai ser utilizado durante o funcionamento do projeto, e assim ele pode ser conectado e desconectado mais facilmente, porém você também pode plugá-lo em um dos slots da Base Board e programar da mesma maneira, sem a necessidade do cabo.

Montagem do conjunto

Código para Arduino

Para o primeiro teste nós vamos utilizar o exemplo "Blink", que já vem instalado com a IDE do Arduino. Apenas será necessário alterar o pino de saída 13 para o 3. Para isso abra a IDE, selecione "Open", depois "Basics" e "Blink". Após isso altere a seguinte linha de código:

int led = 13;

Modifique para:

int led = 3;

Essa modificação é simplesmente para fazer o software acionar o relé no pino D3 em vez do LED da placa que está conectado no pino D13. O seu código vai ficar assim:

/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.

  This example code is in the public domain.
 */

// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 3;

// the setup routine runs once when you press reset:
void setup() {                
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);     
}

// the loop routine runs over and over again forever:
void loop() {
  digitalWrite(led, HIGH);   // turn the LED on (HIGH is the voltage level)
  delay(1000);               // wait for a second
  digitalWrite(led, LOW);    // turn the LED off by making the voltage LOW
  delay(1000);               // wait for a second
}

Para fazer a programação selecione "Tools", depois "Board" e escolha a opção "Arduino Nano w/ ATmega328". Depois clique em "File", "Upload" e espere carregar o firmware.

Testando

Agora o projeto já está concluído e pronto pra ser testado. Encaixe a fonte AC/DC na entrada da Base Board (ou deixe o conjunto alimentado pela USB se você preferir), encaixe o adaptador e a lâmpada no cabo de extensão e ligue a tomada na energia.

Otimização do código para operações sensíveis ao tempo

A função delay() congela o Arduino e impede que ele execute qualquer outra instrução ou até mesmo o atendimento de interrupções. Para resolver este problema cria-se uma função que deve ser executada no loop() do Arduino. Ela é encarregada de checar se o tempo desejado foi atingindo e então pisca a lâmpada do relé. Para isto usamos a função millis() que retorna o tempo total de operação do Arduino. Veja o exemplo abaixo implementado este modo:

/*
  Blink
  Turns on an LED on for one second, then off for one second, repeatedly.
  To count time this example uses millis() instead of delay() so you can combine
  time-sensitive code in the loop function.

  This example code is in the public domain.
 */

// Time between blinking in milliseconds
#define waitTime  50

// Pin 13 has an LED connected on most Arduino boards.
// give it a name:
int led = 3;

// Time counter
unsigned long timeMs = millis();

// the setup routine runs once when you press reset:
void setup() {
  // initialize the digital pin as an output.
  pinMode(led, OUTPUT);
}

// the loop routine runs over and over again forever:
void loop() {
  blinkFunction();
  // Put your time-sensitive code here
}

// function responsable to check the waitTime and blink the LED
void blinkFunction(){
  if (millis() >= timeMs + waitTime){
    // refresh counter
    timeMs = millis();
    // blink the LED
    digitalWrite(led, !digitalRead(led));
  }
}

Recomendações de segurança

Siga as seguintes orientações antes de utilizar esse Nanoshield ou qualquer outro dispositivo que opere diretamente na rede elétrica:

  • Tenha em mente que a rede AC pode ser muito perigosa. Acidentes podem causar ferimentos e até a morte, portanto só utilize esse equipamento se você tiver conhecimento sobre instalações elétricas e certeza do que está fazendo. Se você é iniciante no ramo e está se aventurando com eletrônica não utilize esse Nanoshield e nenhum outro equipamento que tenha ligação direta com a rede AC.
  • Certifique-se de que a instalação elétrica do local segue as normas de segurança e possua disjuntor diferencial residual instalado.
  • Nunca manuseie o dispositivo com a rede elétrica ligada; sempre desligue o disjuntor antes de fazer a ligação dos fios e qualquer configuração manual no sistema.
  • Esse Nanoshield não possui dispositivos de proteção como fusíveis ou disjuntores; você deve instalá-los externamente de acordo com a necessidade do seu projeto.
  • Se você deseja incluir esse módulo em um produto comercial, verifique as exigências necessárias quanto aos processos de certificação de segurança junto aos órgãos competentes.