Índice:
- Etapa 1: reunindo as peças
- Etapa 2: montagem do circuito
- Etapa 3: Configurando a tela LCD e o relógio
- Etapa 4: codificação
- Etapa 5: Hora do teste
- Etapa 6: configuração do aplicativo Bluetooth
- Etapa 7: Construindo o Caso
- Etapa 8: Concluído
Vídeo: Despertador do nascer do sol com tela LCD e aplicativo Bluetooth: 8 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:38
O inverno pode ser triste. Você acorda, está escuro e você tem que sair da cama. A última coisa que você quer ouvir é o som irritante do seu despertador. Se você, como eu, tem problemas para acordar de manhã, este despertador é exatamente o que você precisa.
Neste tutorial, vamos construir um Sunrise Alarm Clock. É um despertador como qualquer outro, pois você pode definir a hora e o minuto que deseja acordar, mas com a vantagem de usar a luz para iluminar seu quarto durante um período de tempo, como o nascer do sol para acordar, em vez de um incômodo campainha!
Também usaremos um módulo bluetooth para criar um aplicativo que permite definir o alarme do seu telefone para o relógio. O display LCD mostrará a hora, a data e o dia da semana. Existem lâmpadas solares no mercado, mas podem ser caras (uma busca rápida no Google retorna produtos na faixa de € 100), frágeis e de aparência bastante clínica. É por isso que decidi fazer o meu próprio para meu Projeto da Escola Arduino. Todas as peças serão listadas na próxima etapa. O código pode ser baixado do meu Github repo sunrise-alarm-clock. Vamos começar:)
todo o código pode ser encontrado em:
Etapa 1: reunindo as peças
Usaremos um relógio como entrada e um LED ultrabrilhante como saída para simular o nascer do sol.
Para construir o circuito, precisaremos de:
- Arduino Uno-clockmodule RTC DS3231 - um MOSFET para controlar o brilho da luz - um LED superbrilhante (comprei 2, um aquecido, um frio) - Bateria de 9V para alimentar o LED - uma placa de ensaio - um display LCD (16: 2) - Adaptador Bluetooth hc-05 para que possamos usar um aplicativo para definir o alarme.
Tudo o que você precisa pode ser comprado em www.martoparts.nl
Etapa 2: montagem do circuito
Você pode consultar o esboço do meu circuito, infelizmente não consegui encontrar o RTC DS3231 no programa, então tive que ver com este. As conexões são um pouco diferentes na vida real, aqui estão as conexões. (o módulo bluetooth não está no esboço, mas explicarei como funciona abaixo, porque é bastante complicado)
RTC DS3231GND vai para GND no arduino
VCC vai para 5v
SDA vai para o Arduino
SCL vai para o arduino; não usaremos SQW e 32KMOSFET
O pino da porta vai para o pino ~ 9 no Arduino Uno porque o pino PWMDrain vai para o lado negativo do pino da fonte de LED vai para GND no ArduinoLCD-DisplayGND vai para GND no arduino
VCC vai para 5VSDA vai para A4 no arduinoSKL vai para A5 no arduinoLED- vai para mosfet + vai para bateria 5v9v Você pode comprar uma bateria 9v em qualquer loja local, conecte no arduino com uma tira de conector.
Módulo Bluetooth hc-055V vai para 5V do arduino
GND vai para GND no arduino
Agora há mais 2 entradas, mas aqui vem a parte complicada, temos que conectar as entradas opostas dessas 2 no arduinoTX de hc-05 vai para RX em arduinoRX de hc-05 vai para TX em arduino
Importante: Certifique-se de DESCONECTAR o TX & RX do HC-05 ao fazer o upload do código em seu arduino ou receberá um erro dizendo "algo deu errado com o upload do código" no compilador.
Etapa 3: Configurando a tela LCD e o relógio
A biblioteca usada para o display LCD é de cristal líquido e pode ser encontrada em: https://github.com/fdebrabander/Arduino-LiquidCrys… Baixe o arquivo zip, salve-o e coloque-o na pasta / bibliotecas do seu Arduino
A biblioteca que estou usando para rodar o relógio pode ser encontrada em Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 e certifique-se de estar na página DS3231. Baixe o arquivo zip, salve-o e coloque-o na pasta de bibliotecas do seu Arduino.
Tempo
Inclua a biblioteca DS3231 ou DS1307 em seu código Arduino
Remova o comentário dessas 3 linhas de código para definir a hora:
// rtc.setDOW (SEGUNDA-FEIRA); // Defina o dia da semana como DOMINGO // rtc.setTime (23, 57, 0); // Defina a hora para 12:00:00 (formato de 24 horas) // rtc.setDate (14, 1, 2019); // Defina a data para 1º de janeiro de 2014
Tela de LCD
Inclua a biblioteca liqduicrystal_i2c em seu código Arduino
Para imprimir no visor LCD, use
lcd.setCursor (col, linha) // posição do texto impressolcd.print (~) // texto impresso
Etapa 4: codificação
Baixe o código em: github:
Remova o comentário dessas 3 linhas para ajustar o relógio em sua tela LCD:
// rtc.setDOW (SEGUNDA-FEIRA); // Defina o dia da semana como DOMINGO // rtc.setTime (23, 57, 0); // Defina a hora para 12:00:00 (formato de 24 horas) // rtc.setDate (14, 1, 2019); // Defina a data para 1º de janeiro de 2014
Use lcd.setCuros (col, linha); para definir a posição do texto em exibição
lcd.setCursor (0, 2);
e print () para imprimir algo no display
lcd.print (rtc.getDateStr ());
Altere essas variáveis se quiser
int fadeTime = 1; // Quanto tempo a luz vai diminuir para maxint setHour = 02; // Definir horas para despertar (horário militar) int setMin = 49; // Definir minuto para despertar int uled = 9; // Definir pinagem com PWM
Código do módulo bluetooth
String firstHalf = getValue (input, ':', 0); // verifique a primeira entrada até ":"
String secondHalf = getValue (input, ':', 1); // verifique a segunda entrada após ":"
// use este código se você não estiver usando o módulo bluetooth
// // if (t.hour == setHour && t.min == setMin) // Verifique se é hora de acordar! // { // começar(); //}
// verifique as entradas dos primeiros 2 dígitos e, em seguida, verifique os 2 segundos dígitos da entrada
if (t.hour == firstHalf.toInt () && t.min == secondHalf.toInt ()) {start (); }}
// lógica para separar strings
String getValue (dados de string, separador de caractere, índice interno) {int encontrado = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;
for (int i = 0; i <= maxIndex && found <= index; i ++) {if (data.charAt (i) == separador || i == maxIndex) {found ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} retorno encontrado> índice? data.substring (strIndex [0], strIndex [1]): ""; }
Etapa 5: Hora do teste
Compile seu código e teste se os componentes funcionam!
Etapa 6: configuração do aplicativo Bluetooth
Como achei chato pesquisar o código toda vez que queria definir um alarme, queria fazer um aplicativo que definiria o alarme, o que é muito mais fácil.
Vá para https://ai2.appinventor.mit.edu onde podemos fazer um aplicativo simples que nos permite definir o alarme, incluí a configuração de design simples (você sempre pode ajustar isso mais tarde) e o código usado para o conexão bluetooth. Você pode então publicar seu aplicativo e conectar-se a ele em seu telefone usando um código QR ou baixando o aplicativo diretamente em seu computador e, em seguida, transferindo-o com um cabo em seu telefone. (captura de tela)
Etapa 7: Construindo o Caso
Você sempre pode construir uma caixa diferente em torno do relógio do seu arduino. Usei madeira e acrílico fosco para construir minha própria caixa de despertador. Eu escolhi plexiglass fosco para que você possa ver a luz brilhando claramente através da caixa, mas você não pode ver o interior do relógio.
Etapa 8: Concluído
Agora que você carregou o código para o seu arduino, construa o case e verifique se você montou corretamente o seu relógio, você pode definir um alarme no aplicativo bluetooth e começar a acordar com mais naturalidade!:)
Recomendado:
Lâmpada do simulador de nascer do sol: 7 etapas (com imagens)
Lâmpada do Simulador Sunrise: Eu criei esta lâmpada porque estava cansado de acordar no escuro durante o inverno. Eu sei que você pode comprar produtos que fazem a mesma coisa, mas gosto da sensação de usar algo que criei. A lâmpada simula o nascer do sol aumentando gradualmente em
Despertador do nascer do sol (melhorar a vigília matinal): 13 etapas
Despertador do nascer do sol (melhorar a vigília matinal): programe seu próprio nascer do sol pessoal, melhore a vigília matinal Última invenção aleatória, programe seu próprio nascer do sol! Durante o dia, a luz azul da luz do sol aumenta nossa atenção, memória, níveis de energia, tempos de reação e humor geral . Luz azul s
UCL-lloT-Outdoor-light Disparado ao nascer do sol / pôr do sol: 6 etapas
UCL-lloT-Outdoor-light Triggered by Sunrise / Sundown .: Olá a todos! Com um pouco de trabalho, algumas partes e código eu montei este instrutível que irá mostrar a vocês do início ao fim exatamente como produzir essa luz para exteriores. A ideia partiu do meu pai, que durante o verão tinha que sair manualmente
Despertador do nascer do sol com Arduino: 9 etapas (com imagens)
Sunrise Alarm Clock com Arduino: O inverno pode ser triste. Você acorda, está escuro e você tem que sair da cama. A última coisa que você quer ouvir é o som estridente do seu despertador. Eu moro em Londres e tenho dificuldade em acordar de manhã. Além disso, sinto falta de acordar para
Despertador LED do nascer do sol com alarme de música personalizável: 7 etapas (com imagens)
Despertador LED do nascer do sol com alarme musical personalizável: minha motivação Neste inverno, minha namorada teve muitos problemas para acordar pela manhã e parecia estar sofrendo de SAD (transtorno afetivo sazonal). Eu até noto como é muito mais difícil acordar no inverno porque o sol ainda não apareceu