CENTRAL DE ATENDIMENTO
De segunda à sexta das 8:00 às 17:30
(11) 3522-7626 / vendas@robocore.net
Retornar
ao topo

Real Time Clock - Relé com Hora Marcada



Introdução

Agora que já sabemos como funciona um RTC, iremos, a partir dele, acionar um relé em um horário predeterminado. Por exemplo, na sua cidade escurece às 18h. Que tal fazer com que todos os dias, nesse mesmo horário, o relé que liga uma lâmpada na sua garagem acione e permaneça ligado até o amanhecer?

Lista de Materiais

Circuito

Siga o esquema de ligação abaixo, onde o relé é usado como um interruptor automático para a lâmpada. Lembrando que a lâmpada é apenas uma demonstração de acionamento de carga utilizando os contatos do relé.

Alerta: Caso você não tenha conhecimento adequado para mexer na rede elétrica, peça auxílio a um profissional. A RoboCore não se responsabiliza por danos à rede elétrica e/ou à integridade física do praticante do experimento, bem como quaisquer pessoas que possam vir a ser lesionadas.

RTC DS1307 e Módulo Relé conectados à BlackBoard
RTC DS1307 e Módulo Relé conectados à BlackBoard

Programação

O código para o acionamento do relé é parecido com o código do tutorial Primeiros Passos, porém adicionando alguns comandos.

Entendendo o Código

No trecho abaixo foram declaradas as variáveis PINO_RELE, que indica o pino para controlar o relé, HORA e MINUTO. Essas duas últimas variáveis são determinadas pelo usuário para definir o horário de acionamento do relé.

Após fazer a inicialização do RTC na função setup(), definimos o pino do relé como uma saída e executamos um comando para definir o estado padrão desse pino (desligado - LOW).

Na primeira parte da função loop() se cria a sequência em que serão impressas as informações do RTC (dia, mês, ano, hora, minuto e segundo). Esses dados serão atualizados em um intervalo de um segundo.

Por fim, cria-se a lógica do acionamento. Quando as horas e os minutos atuais forem iguais aos respectivos valores predeterminados (HORAe MINUTO), o pino do relé é configurado em nível lógico alto (HIGH). Senão, o pino é mantido em nível lógico baixo (LOW).

O Que Deve Acontecer

Como pode-se ver no vídeo abaixo, o acionamento do relé foi programado para às 10 horas e 53 minutos. De acordo com o circuito acima, o relé fecha o contato, assim conduzindo a fase da rede elétrica e por fim energizando a lâmpada.

Rele acionando e energizando a lampada
Relé acionando e energizando a lâmpada
Avatar


Para fazer comentários é necessário estar logado. Efetuar login.

Você ainda nao é cadastrado? Cadastre-se agora!


edinhodias
date Enviado: 2020-06-11 18:59:13
Olá Matheus, boa noite. Como eu posso usar esse sketch com o modulo RTC DS-1302?

Giovanni5
date Enviado: 2020-06-12 08:25:56
edinhodias
Infelizmente não é possível aproveitar este código para o RTC DS1302, pois o mesmo não é compatível com a biblioteca usada neste tutorial. Você pode utilizar um dos exemplos da biblioteca do seu RTC (https://github.com/msparks/arduino-ds1302), para adaptá-la, e executar a mesma função deste tutorial.

lucascrestani_
date Enviado: 2019-12-06 13:48:49
teria algum tutorial para fazer esse timer programado atravez do blink?

Giovanni5
date Enviado: 2019-12-06 16:56:36
lucascrestani_
Infelizmente não temos um tutorial específico para essa aplicação, porém agradecemos pela sugestão, iremos analisar a possibilidade de desenvolvimento deste tutorial.

wjesus
date Enviado: 2019-11-11 16:23:57
Tem algum tutorial utilizando esse módulo como temporizador?

Giovanni5
date Enviado: 2019-11-11 16:53:41
wjesus
Esse tutorial utiliza esse módulo com um funcionamento similar à um cronômetro/alarme, onde o relé somente é acionado em uma determinada hora. Infelizmente não temos um tutorial específico para usar esse módulo como um temporizador, porém você pode utilizar esse tutorial como base para o desenvolvimento de seu projeto.

wjesus
date Enviado: 2019-11-11 17:00:48
wjesus
Entendi, obrigado!

turtelli
date Enviado: 2019-07-10 00:07:35
Preciso de um circuito que ao detectar uma tensão acima de 70 Vcc acione uma fechadura elétrica de portão (essas comuns). Com o Kit V8 consigo montar esse sistema?

Giovanni5
date Enviado: 2019-07-10 11:26:10
turtelli
Para que uma placa da plataforma Arduino seja capaz de realizar leituras de tensões acima 5 V, é necessário realizar um circuito divisor de tensão para a tensão seja compatível com a placa. Para isso, é necessário ter uma precisão muito grande para não danificar o sistema, calculando corretamente os resistores do divisor de tensão para o máximo de tensão possível, já que a leitura deve ser acima de 70 Vcc, é necessário saber o valor de tensão máximo, além de utilizar resistores com baixa tolerância, para aumentar a precisão do circuito, que não é muito confiável.

Giovanni5
date Enviado: 2019-07-10 11:36:55
turtelli
Para acionamento de cargas superiores à 5 V, é necessário utilizar um relé, como, por exemplo, o Módulo Relé (https://www.robocore.net/loja/itens-eletronicos/modulo-rele), porém, é necessário que a carga do circuito que será acionado pelo relé seja compatível com o relé do módulo. O ideal seria utilizar um relé para acionar um contator através de um "snubber" (por se tratar de uma carga indutiva).

Giovanni5
date Enviado: 2019-07-10 11:37:49
turtelli
O Kit Iniciante V8 (https://www.robocore.net/loja/kits/arduino-kit-iniciante/blackboard-uno-r3), não possui todos os componentes necessário para desenvolver esse sistema. Entretanto, você pode utilizá-lo para aprender sobre o básico da plataforma Arduino e obter conhecimento suficiente para desenvolver esse sistema corretamente.