Programa atualizado! 26/03/2016.
Fiz outro programa atualizado pra configurar a data/hora do RTC, bem como, outro programa para o simulador de presença, incluindo alguns recursos que antes nao tinha, como Sistema de Alarme, acionamento da bomba da piscina, e acesso remoto. Segue links:
Data/Hora RTC DS1307: http://labdegaragem.com/forum/topics/configurando-data-hora-do-seu-...
Sistema de Monitoramento Completo: http://labdegaragem.com/forum/topics/sistema-de-monitoramento-remot...
-----------------------------------------------
Versao antiga:
Pessoal,
Vi que o Sidney e outros estiveram tentando configurar o arduino para acionar algum rele/praticar alguma ação em determinado horario.
Segue abaixo o codigo que consegui testar e ficou redondinho.
Espero que ajude alguem. Abraço!
// Modificated by SoBraL - mr.sobral@hotmail.com
// Font: http://arduino.cc/forum/index.php/topic,8833.0.html
// Before you need to install the library DS1307: http://bricofoy.free.fr/forums/arduino/DS1307.zip#include <WProgram.h> //é um recurso para referenciar a biblioteca Wiring
#include <Wire.h> //inclui a biblioteca Wire necessaria para comunicaçao i2c
#include <DS1307.h> //inclui a biblioteca de comandos do DS1307 utilizada neste programa. Necessário baixá-la no link acimaint rtc[7];
int rele = 10;
int led = 13;void setup()
{
Serial.begin(9600);
pinMode(rele, OUTPUT); //define o pino 10 como saída
pinMode(led, OUTPUT); //define o led (pino 13) do arduino como como saída
digitalWrite (rele, LOW); //desliga relé
digitalWrite(led, LOW); //desliga led/*
Esta sequencia de comandos deve ser escrita apenas uma vez, para
configurar a hora do Shield RTC 1307. Troque os numeros pela hora atualRTC.stop();
RTC.set(DS1307_SEC,1); //define o segundo
RTC.set(DS1307_MIN,20); //define o minuto
RTC.set(DS1307_HR,12); //define a hora
RTC.set(DS1307_DOW,1); //define o dia da semana
RTC.set(DS1307_DATE,28); //define o dia
RTC.set(DS1307_MTH,4); //define o mes
RTC.set(DS1307_YR,13); //define o ano
RTC.start();
*/
}void loop()
{
RTC.get(rtc,true);/*
Comando utilizado apenas pra ficar enviando via USB a hora atual
para que possam monitorar no "serial monitor" do simulador Arduino
e ver se esta tudo funcionando de acordo
*/for(int i=0; i<7; i++)
{
Serial.print(rtc[i]);
Serial.print(" ");
}
Serial.println();/*
O codigo abaixo significa que, quando o RTC estiver no segundo 22,
ele irá acionar o relé e o led. Para utilizar o minuto como referencia,
alterar rtc[0] para rtc[1], e assim sussecivamente
*/if (rtc[0] == 22) {
digitalWrite(rele, HIGH);
digitalWrite(led, HIGH);
}
delay(1000);}
Tags:
As respostas para este tópico estão encerradas.
acacio,
Eu mexi recentemente com essa biblioteca, só não tô entendendo o que vocês estão tentando fazer, tipo, vocês querem criar falsos alarmes em horarios definidos é isso ?
Me explica o que vocês desejam e se eu tiver condições eu ajudo.
Weider, Bom Dia !
Creio que antes de qualquer coisa, preciso agradecer pela sua disponibilidade e, ao mesmo tempo. deixar claro que sou tecnico em eletrotécnica e comecei a me apaixonar pelo mundo de eletrônica e programação agora....logo, minha ignorância irá realmente me levar a fazer perguntas que para você e os demais mais instruídos sejam imbecis ou básicas demais...já peço desculpas por elas...:)
Na questão eletrônica, desconheço muita coisa mas consigo até navegar ( em ventos calmos e mar de almirante ) pois tive a cadeira básica quando fiz o técnico e pelo menos uma parte considerável dos elementos mais usados e conheço e sei para que servem de modo geral ( fakta a criatividade de aplicação pois nunca necessitei até então de aplicá-los em ckts ).
Em programação é que sou um zero à esquerda e estou tetando aprender de forma autodidata mas confesso que estou passando muito sufoco em coisas básicas....
Bom....esclarecida e evidenciada a minha ignorância no assunto almejo conseguir fazer um projeto de irrigação para um jardim suspenso de temperos que possuo onde ficam 20 vasos de temperos diversos....
Minha intenção ( sonho no momento ) é colocar um sensor de humidade em cada vaso e através da leitura destes sensores, acionar quando necessário uma bomba de água 12 V e uma vávula solenóide correspondente a cada sensor para que a planta em questão seja regada.
Como para mim este projeto é gigantesco e não detenho AINDA os conhecimentos....comecei a ler muita coisa na web e achei este código que, se não atende minha expectativa futura, garante que as plantas não morram no período de carnaval e de eventuais férias escolares/ viagens de final de semana sem água.
desta forma, gostaria de fazer o arduino ligar uma bomba dagua em horários programados para que eu possa passar uma mangueira comum à todos os vasos e regar por gotejamento os temperos....o que para mim já é um excelente caminho de iniciante....enquanto aprendo a evoluir e quem sabe conseguir realizar meu sonho incluindo até o acionamento/monitoramento via web ?
Já liguei o RTC no arduino e usando sua biblioteca e um código que achei na WEB ( e entendi o funcionamento ), já configurei o relógio com dia e data atuais, conseguindo ler no monitor as informações.
Quando fui tentar usar este código publicado pelo Sobral, deu o erro que mencionei e empaquei não sabendo como resolver.
Mermão! vc me salvou! foi o único exemplo que realmente caiu como uma luva para o meu projeto!! somente tive q editar o Wprogram para arduino.h e editar os outputs para o meu projeto!! valeu mesmo!!
Vocês baixaram e instalaram a Biblioteca DS1307 ???
http://bricofoy.free.fr/forums/arduino/DS1307.zip
#include <DS1307.h> //inclui a biblioteca de comandos do DS1307 utilizada neste programa. Necessário baixá-la no link acima
Como instalar uma Biblioteca na IDE do Arduino :
Obrigado pela atenção Jose Gustavo, mas já havia instalado esta biblioteca varias vezes e não deu certo! tbm declarei a variavel no codigo. oque mais poderia causar este erro?
Oi MB, bom dia,
qual versão do código você está usando?
Poste aqui anexando o código como arquivo, ou no www.pastbin,com.
Rui
Então Rui Viana, tentei todas as versoes do codigo disponibilizadas . estou usando a versão 1.6.7 da IDE arduino, mas ja tentei a 1.0.5 que tinha e ocorreu o mesmo erro, tbm baixei e instalei a biblioteca ds1307 de varias fontes e continua ocorrendo o erro
Aqui funcionou normal.
só apaguei esse linha
#include <WProgram.h> //é um recurso para referenciar a biblioteca Wiring
Fiz outro programa atualizado pra configurar a data/hora do RTC, bem como, outro programa para o simulador de presença, incluindo alguns recursos que antes nao tinha, como Sistema de Alarme, acionamento da bomba da piscina, e acesso remoto. Segue links:
Data/Hora RTC DS1307: http://labdegaragem.com/forum/topics/configurando-data-hora-do-seu-...
Sistema de Monitoramento Completo: http://labdegaragem.com/forum/topics/sistema-de-monitoramento-remot...
Bem-vindo a
Laboratorio de Garagem (arduino, eletrônica, robotica, hacking)
© 2024 Criado por Marcelo Rodrigues. Ativado por