Font Size

O objetivo de qualquer tecnologia é resolver problemas, dos mais simples aos mais complexos. Pessoas idosas principalmente as que moram só, ou passam a maior parte do tempo só, tem dificuldade em lembrar os horários de suas medicações, causando problemas de saúde.

Esse tutorial lhe ajudará a construir uma caixa time automatizada com arduino. A cultura do faça você mesmo (cultura maker), vem popularizando-se no Brasil, com conhecimento básico de arduino  e eletrônica você poderá montar sua caixa para uso próprio ou de algum familiar ou amigo.

O que é a Caixa Time ?

A caixa time é uma caixa onde você pode guardar seus medicamentos e em um horário pré programado, a caixa avisa a hora de tomar seus remédios. É acionado uma sirene que só para quando a tampa é aberta.

 

Caixa-TimeComponentes:01 x Caixa de primeiros socorros;

  1. 01 x Arduino Uno R3 ou Arduino Nano;
  2. 01 x Módulo RTC DS3231;
  3. 01 x Buzzer;
  4. 01 x Chave fim de Curso;
  5. 01 x Fonte de 9v (no caso de UNO);
  6. 01 x Resistor de 22 ohms;
  7. 01 x Cabos tipo Jumper

 

 

 

Ligação Elétrica

Caixa-Time

Código

// by Gean Viana Rodrigues

//email: geancomp@gmail.com



#include <DS3231.h> //biblioteca do RTC

#include <NewTone.h> //biblioteca do SOM do Buzzer

DS3231  rtc(A4, A5); // RTC - Shield RTC nas porta A4 e A5

Time hora;

int minuto; //variável para armazenar os minutos

int segundo; //variável para armazenar os segundos

int cont = 0; //conta a quantidade de vezes que a luz vai piscar

int botao = 0; //chave na tampa da caixa de remédios



//Dados do buzzer

int frequencia = 2000;

int Pinofalante = 10; //Buzzer na porta 10

int comando;



void setup() {



pinMode (botao, INPUT);

pinMode(Pinofalante, OUTPUT); //Pino do buzzer

delay (1000);

Serial.begin(9600);

rtc.begin();

}





void loop() {

comando = Serial.read();

hora = rtc.getTime(); //variável hora recebe a hora do RTC

minuto = hora.min;

segundo = hora.sec;

botao = digitalRead (6); //faz a leitura para saber qual estado da chave (tampa aberta ou fechada

Serial.println (rtc.getTimeStr());  //mostra a hora atual no monitor serial



if ((hora.hour == 7) && (minuto == 00) && (segundo == 00)) { //primeiro horário

while (botao == LOW) {

NewTone(Pinofalante, frequencia); // inicia o som do buzzer. Só para quando a tampa é aberta

botao = digitalRead (6);

}

if (botao == HIGH) {

noNewTone(Pinofalante); // para o som do Buzzer

}

}

//--------------------bloco para acetar o horário-------------

if (comando == 'A') {

rtc.setTime(22, 15, 0);

rtc.setDate(10, 05, 2017);

Serial.println (rtc.getTimeStr());

}

}//final



//Replicar o IF do primeiro horário para os demais horários

Vídeo Demonstração

E aí galera, curtiram esse post? Se sim, continue acompanhando nosso blog, teremos muitas postagens interessante toda semana! Se você ficou com alguma dúvida, nos envie sua pergunta, teremos enorme prazer em contribuir com seu aprendizado!

Gean Viana Rodrigues

Trabalha há 15 anos com tecnologia da informação, é um amante de Arduino e robótica, encara o Arduino como a oportunidade perfeita de aflorar sua criatividade ao mesmo tempo que treina suas habilidades em eletrônica e programação.

0.00 avg. rating (0% score) - 0 votes