Tabla de contenido:

Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth: 8 pasos
Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth: 8 pasos

Video: Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth: 8 pasos

Video: Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth: 8 pasos
Video: DESPERTADOR INTELIGENTE ⏰ Xiaomi Mi Smart Clock 2024, Noviembre
Anonim
Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth
Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth
Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth
Reloj despertador Sunrise con pantalla LCD y aplicación Bluetooth

El invierno puede ser triste. Te despiertas, está oscuro y tienes que levantarte de la cama. Lo último que quieres escuchar es el molesto sonido de tu despertador. Si usted, como yo, tiene problemas para despertarse por la mañana, este reloj despertador es justo lo que necesita.

En este tutorial, vamos a construir un despertador de amanecer. Es un reloj despertador como cualquier otro en el que puede configurar la hora y los minutos en que desea despertarse, pero con el beneficio de usar la luz para iluminar su dormitorio durante un período de tiempo como un amanecer para despertarlo en lugar de un molesto. ¡zumbador!

También usaremos un módulo bluetooth para crear una aplicación que le permitirá configurar la alarma a través de su teléfono en el reloj. La pantalla LCD mostrará la hora, la fecha y el día de la semana. Existen lámparas de salida del sol en el mercado, pero pueden ser caras (una búsqueda rápida en Google devuelve productos en el rango de € 100), frágiles y de aspecto bastante clínico. Por eso decidí hacer el mío propio para mi proyecto escolar Arduino. Todas las piezas se enumerarán en el siguiente paso. El código se puede descargar desde mi repositorio Github sunrise-alarm-clock. Vamos a empezar:)

todo el código se puede encontrar en:

Paso 1: reunir las piezas

Reunir las piezas
Reunir las piezas
Reunir las piezas
Reunir las piezas
Reunir las piezas
Reunir las piezas

Usaremos un reloj como entrada y un LED ultrabrillante como salida para simular nuestro amanecer.

Para construir el circuito necesitaremos:

- Arduino Uno- módulo de reloj RTC DS3231 - un MOSFET para controlar el brillo de la luz - un LED superbrillante (compré 2, uno caliente y uno frío) - Batería de 9V para alimentar el LED - una placa de pruebas - una pantalla LCD (16: 2) - Adaptador Bluetooth hc-05 para que podamos usar una aplicación para configurar la alarma.

Todo lo que necesita se puede comprar en www.martoparts.nl

Paso 2: Montaje del circuito

Montaje del circuito
Montaje del circuito
Montaje del circuito
Montaje del circuito

Puede consultar el boceto de mi circuito, desafortunadamente no pude encontrar el RTC DS3231 en el programa, así que tuve que ver con este. Las conexiones son un poco diferentes en la realidad, aquí están las conexiones. (el módulo bluetooth no está en el boceto, pero explicaré cómo funciona a continuación porque es bastante complicado)

RTC DS3231GND va a GND en el arduino

VCC va al 5v

SDA va a arduino

SCL pasa a arduino No usaremos SQW y 32KMOSFET

El pin de la puerta va al pin ~ 9 en el Arduino Uno porque su PWM El pin de drenaje va al lado negativo del pin de la fuente del LED va a GND en el ArduinoLCD-DisplayGND va a GND en el arduino

VCC va a 5VSDA va a A4 en el arduinoSKL va a A5 en el arduinoLED- va a mosfet + va a la batería de 5v9v Puede comprar una batería de 9v en cualquier tienda local, conéctela al arduino con una tira de conexión.

El módulo Bluetooth hc-055V pasa a 5V desde el arduino

GND va a GND en el arduino

Ahora hay 2 entradas más, pero aquí viene la parte complicada, tenemos que conectar las entradas opuestas de esas 2 en el arduinoTX de hc-05 va a RX en arduinoRX de hc-05 va a TX en arduino

Importante: asegúrese de DESCONECTAR el TX & RX del HC-05 cuando esté cargando código en su arduino o obtendrá un error diciendo "algo salió mal al cargar el código" en el compilador.

Paso 3: Configuración de la pantalla LCD y el reloj

Configuración de la pantalla LCD y el reloj
Configuración de la pantalla LCD y el reloj
Configuración de la pantalla LCD y el reloj
Configuración de la pantalla LCD y el reloj

La biblioteca utilizada para la pantalla LCD es de cristal líquido y se puede encontrar en: https://github.com/fdebrabander/Arduino-LiquidCrys … Descargue el archivo zip, guárdelo y colóquelo en la carpeta / bibliotecas de Arduino.

La biblioteca que estoy usando para ejecutar el reloj se puede encontrar en Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 y asegúrese de estar en la página DS3231. Descarga el archivo zip, guárdalo y colócalo en la carpeta de bibliotecas de tu Arduino.

Tiempo

Incluya la biblioteca DS3231 o DS1307 en su código arduino

Descomente estas 3 líneas de código para establecer la hora:

// rtc.setDOW (LUNES); // Establecer el día de la semana en DOMINGO // rtc.setTime (23, 57, 0); // Establezca la hora en 12:00:00 (formato de 24 horas) // rtc.setDate (14, 1, 2019); // Establecer la fecha al 1 de enero de 2014

Pantalla LCD

Incluya la biblioteca liqduicrystal_i2c en su código arduino

Para imprimir en la pantalla LCD utilice

lcd.setCursor (col, row) // posición del texto impreso lcd.print (~) // texto impreso

Paso 4: codificación

Codificación
Codificación

Descarga el código en: github:

Descomente estas 3 líneas para configurar el reloj en su pantalla LCD:

// rtc.setDOW (LUNES); // Establecer el día de la semana en DOMINGO // rtc.setTime (23, 57, 0); // Establezca la hora en 12:00:00 (formato de 24 horas) // rtc.setDate (14, 1, 2019); // Establecer la fecha al 1 de enero de 2014

Utilice lcd.setCuros (columna, fila); para establecer la posición del texto en pantalla

lcd.setCursor (0, 2);

e imprimir () para imprimir algo en la pantalla

lcd.print (rtc.getDateStr ());

Cambie estas variables si lo desea

int fadeTime = 1; // Cuánto tiempo se desvanecerá la luz hasta maxint setHour = 02; // Establecer horas para despertar (hora militar) int setMin = 49; // Establecer minuto para despertar int uled = 9; // Establecer pinout con PWM

Código del módulo Bluetooth

Cadena firstHalf = getValue (input, ':', 0); // comprobar la primera entrada hasta ":"

String secondHalf = getValue (entrada, ':', 1); // verifica la segunda entrada después de ":"

// usa este código si no estás usando el módulo bluetooth

// // if (t.hour == setHour && t.min == setMin) // ¡Comprueba si es hora de despertar! // { // comienzo(); //}

// verifique las entradas de los 2 primeros dígitos, luego verifique los 2 dígitos de la entrada

if (t.hour == firstHalf.toInt () && t.min == secondHalf.toInt ()) {start (); }}

// lógica para separar cadenas

String getValue (datos de cadena, separador de caracteres, índice int) {int encontrado = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;

for (int i = 0; i <= maxIndex && encontrado <= índice; i ++) {if (data.charAt (i) == separador || i == maxIndex) {encontrado ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} retorno encontrado> índice? data.substring (strIndex [0], strIndex [1]): ""; }

Paso 5: ¡Hora de realizar la prueba

¡Compile su código y pruebe si los componentes funcionan!

Paso 6: configuración de la aplicación Bluetooth

Configuración de la aplicación Bluetooth
Configuración de la aplicación Bluetooth
Configuración de la aplicación Bluetooth
Configuración de la aplicación Bluetooth
Configuración de la aplicación Bluetooth
Configuración de la aplicación Bluetooth

Como me resultaba molesto profundizar en el código cada vez que quería configurar una alarma, quería crear una aplicación que estableciera la alarma, lo cual es mucho más fácil.

Vaya a https://ai2.appinventor.mit.edu, donde podemos crear una aplicación simple que nos permita configurar la alarma, he incluido la configuración de diseño simple (siempre puede modificar esto más tarde) y el código utilizado para el Conexión bluetooth. Luego puede publicar su aplicación y conectarse con ella en su teléfono usando un código QR o descargando directamente la aplicación en su computadora, luego transfiriéndola con un cable en su teléfono. (captura de pantalla)

Paso 7: construcción del caso

Construyendo el caso
Construyendo el caso
Construyendo el caso
Construyendo el caso
Construyendo el caso
Construyendo el caso

Siempre puedes construir una carcasa diferente alrededor de tu reloj arduino. Usé madera y plexiglás mate para construir mi propia caja de reloj despertador. Elegí plexiglás mate para que puedas ver la luz brillando claramente a través de la caja, pero no puedes ver el interior del reloj.

Paso 8: ¡Terminado

¡Finalizado!
¡Finalizado!
¡Finalizado!
¡Finalizado!
¡Finalizado!
¡Finalizado!

Ahora que ha subido el código a su arduino, construye la carcasa y verifica si ensambló correctamente su reloj, puede configurar una alarma en la aplicación bluetooth y comenzar a despertarse de forma más natural.:)

Recomendado: