https://www.youtube.com/watch?v=gAdXyfof19A&feature=youtu.be 

Este projeto simula no Proteus um timer com RTC, o mesmo a cada quarto de hora (15 minutos) coloca uma entrada em HIGH e outra em LOW, na simulação usei as saídas para ativar dois reles que por sua vez ativam dois motores, na implementação real os dois reles ativariam duas bobinas de contatoras para controlar uma carga de potencia,  me inspirei em um tópico deste fórum e criei um programa próprio, simples e muito didático em minha opinião para principiantes, já que esta é minha intenção ao publicar videos e conteúdos desta natureza.

Implementei o mesmo também na proto board.

o programa a simulação, e toda documentação esta a disposição de todos que tenham interesse, bastando me avisar que compartilho no Google Drive.

Abs.

Exibições: 1558

Responder esta

Respostas a este tópico

Fui ver video somente agora...kkk

Eu estava mudando a hora nesse campo, para adiantar RTC e simular ele fora do horário...

byte segundos = 01; // Valores de 0 a 59
byte minutos = 44; // Valores de 0 a 59
byte horas = 06; // Valores de 0 a 23
byte diadasemana = 4; // Valores de 0 a 6 (0=Domingo, 1 = Segunda...)
byte diadomes = 20; // Valores de 1 a 31
byte mes = 8; // Valores de 1 a 12
byte ano = 15; // Valores de 0 a 99

Oi Argel,

Não continuei o assunto do menu por falta de tempo, mas tem um outro projeto que esta terminado por outro colega, não o vejo a muito tempo aqui, mas em todo caso..

http://labdegaragem.com/forum/topics/ajuda-com-timer?commentId=6223...

Abs,

Muito obrigado Carlos, e deu certo o download

De nada Horst.

Abs.

Olá,

Acabo de subir um arquivo .ino e compartilhei com vocês, é um Update do programa, introduzindo algumas melhoras.

 PRIMEIRO UPDATE VERSAO ANTERIOR: VERSAO ATUAL: 1.0.1 
 
 Melhoras introduzidas nesta versão:

 Poder informar por quanto tempo cada ciclo bomba ficara ligada mudando apenas o valor na variável.

 Poder informar hora e minuto que deseja que comece e  hora e minuto que termine o ciclo completo do dia.

 Antes do if estão comentadas todas  as mudanças.

Abs.

Carlos Kwiek, está dando um erro aqui ao carregar. 

In file included from LCD_RTC_TIMER01.ino:40:
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:48: error: 'time_t' does not name a type
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:49: error: 'time_t' does not name a type
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:61: error: 'time_t' has not been declared
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:67: error: 'time_t' has not been declared
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:69: error: 'time_t' has not been declared
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:71: error: expected ',' or '...' before 'DOW'
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:71: error: ISO C++ forbids declaration of 'timeDayOfWeek_t' with no type
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:73: error: 'time_t' has not been declared
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:75: error: expected ',' or '...' before 'DOW'
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:75: error: ISO C++ forbids declaration of 'timeDayOfWeek_t' with no type
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:77: error: 'time_t' has not been declared
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:80: error: 'time_t' has not been declared
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:94: error: 'time_t' has not been declared
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:95: error: 'time_t' does not name a type
C:\Users\Paulo\Documents\Arduino\libraries\TimeAlarms/TimeAlarms.h:103: error: 'time_t' does not name a type

Paulo,

O erro esta com uma biblioteca que você talvez não tenha, (TimeAlarms) mas por favor faça o seguinte, delete ela no include no começo do código, porque na verdade ela não esta sendo usada, ficou apenas porque eu estava fazendo alguns testes, delete  #include <TimeAlarms> e tente, me avise depois por favor.

Abs.

Ok, vou fazer isso... 

A biblioteca tenho ela sim!

Agora carregou e com ajuste hora fora do período já desligada o Relay duplo, ao contrario do que ocorria com a primeira versão...

Vou fazer os teste completos e amanha, digo como está...Vlw

Pretende incluir os Menu para editar as variáveis via Button ?

Sim, estou trabalhando nisto.

A única coisa que pode ocorrer é que:

por exemplo, ao ligar as 06 e desligar as 18, começaria com a bomba01 ligada por 15 minutos,

e depois inverteria para a bomba2 por mais 15 minutos.

 

agora com essa nova possibilidade de poder informar horas e minutos iniciais, a primeira bomba,

na primeira execução, poderia não executar 15 minutos inteiros (mas isso apenas no primeiro ciclo, 

nos próximos vai executar dentro do tempo normalmente).

 

vou te dar um exemplo, vamos supor que ao invés de começar as 06:00 você colocasse pra iniciar

as 05:58. Nesse caso, a bomba a ser ligada inicialmente seria a bomba2, quer seria ligada por dois minutos apenas

e ao dar 06:00 ligaria a bomba1. a partir dai, cada uma ligaria 15 minutos.

 

isso acontece, pois a lógica se baseia matematicamente e executa em horas multiplas de 15.

Abs.

Sim entendi, foi por isso que gostei desse teu projeto, ao contrário do Millis ele trabalha dentro da hora....

Só estou apanhando nessa questão do RTC...fui ver teu video agora, não tinha visto...Porém essa ultima versão ao contrario da primeira fica só desligada para mim...kkkk

como já disse, estou testando alterando a hora nesse campo abaixo, e colocando horário dentro e fora do período cadastrado para funcionar as bombas, + em uma versão não desliga fora horário (fica sempre ligada em qualquer horário é na outra não liga....kkk : 

byte segundos = 01; // Valores de 0 a 59
byte minutos = 44; // Valores de 0 a 59
byte horas = 06; // Valores de 0 a 23
byte diadasemana = 4; // Valores de 0 a 6 (0=Domingo, 1 = Segunda...)
byte diadomes = 20; // Valores de 1 a 31
byte mes = 8; // Valores de 1 a 12
byte ano = 15; // Valores de 0 a 99

Vou ver teu video novamente e ver onde devo mudar, pelo que entendi as alterações de hora não são onde estou efetuando...

Sim esta colocando no lugar errado.

onde você mexeu, use somente a primeira vez para sincronizar o relógio, ou seja, coloque hora, minuto e segundo do tempo atual, e data, dia, mês. ano, assim o RTC começa com a hora igual a do teu PC por exemplo.

Depois altere nas variáveis, horas, minutos, ou segundos,vendo o comentário que coloquei ao lado de cada linha, se tiver duvidas faço um video.

Abs.

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço