Taula de continguts:

Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth: 8 passos
Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth: 8 passos

Vídeo: Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth: 8 passos

Vídeo: Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth: 8 passos
Vídeo: Wake Up Light LED Despertador, 2021 Luz Despertador Simulación de Amanecer y Atardece, Para habitaci 2024, Juliol
Anonim
Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth
Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth
Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth
Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth

L’hivern pot ser trist. Et despertes, és fosc i t’has de llevar del llit. L’últim que voleu escoltar és el molest so del despertador. Si, com jo, teniu problemes per despertar-vos al matí, aquest despertador és el que necessiteu.

En aquest tutorial, crearem un rellotge despertador Sunrise. És un despertador com qualsevol altre, ja que podeu configurar l’hora i el minut que voleu despertar, però amb l’avantatge d’utilitzar la llum per il·luminar el vostre dormitori durant un període de temps, com una sortida del sol, per despertar-vos en lloc d’un molest. timbre!

També farem servir un mòdul bluetooth per crear una aplicació que us permeti configurar l’alarma a través del telèfon al rellotge. A la pantalla LCD es mostrarà el temps, la data i el dia de la setmana. Existeixen làmpades Sunrise al mercat, però poden ser cares (una cerca ràpida a Google proporciona productes de la gamma de 100 €), fràgils i d’aspecte clínic. Per això, vaig decidir fer el meu propi projecte Arduino School. Totes les parts es mostraran al següent pas. El codi es pot descarregar des del meu repositori Github sunrise-despertador. Anem a començar:)

es pot trobar tot el codi a:

Pas 1: recollida de les parts

Recollida de les parts
Recollida de les parts
Recollida de les parts
Recollida de les parts
Recollida de les parts
Recollida de les parts

Utilitzarem un rellotge com a entrada i un LED ultra-brillant com a sortida per simular la nostra sortida del sol.

Per construir el circuit necessitarem:

- Arduino Uno- clockmodule RTC DS3231 - un MOSFET per controlar la brillantor de la llum - un LED súper brillant (he comprat 2, un de calent i un de fred) - bateria de 9 V per alimentar el LED - una placa de pantalla - una pantalla LCD (16: 2) - Adaptador Bluetooth hc-05 perquè puguem utilitzar una aplicació per configurar l'alarma.

Tot el que necessiteu es pot comprar a www.martoparts.nl

Pas 2: Muntatge del circuit

Muntatge del circuit
Muntatge del circuit
Muntatge del circuit
Muntatge del circuit

Podeu consultar l'esbós del meu circuit, per desgràcia, no trobo el RTC DS3231 al programa, així que vaig tenir a veure amb aquest. Les connexions són una mica diferents en realitat, aquí hi ha les connexions. (el mòdul bluetooth no es troba a l'esbós, però explicaré com funciona a continuació perquè sigui bastant complicat)

RTC DS3231GND va a GND a l’arduino

VCC va als 5v

SDA va a arduino

SCL va a arduino No utilitzarem SQW i 32KMOSFET

El pin de porta passa al pin ~ 9 de l'Arduino Uno perquè és PWM;

VCC va a 5VSDA va a A4 a l’arduino SKL va a A5 a l’arduino LED- va a mosfet + va a la bateria de 5v9v Podeu comprar una bateria de 9v a qualsevol botiga local, connecteu-la a l’arduino amb una tira de connectors.

El mòdul Bluetooth hc-055V passa a 5V des de l'arduino

GND va a GND a l'arduino

Ara hi ha 2 entrades més, però aquí arriba la part complicada, hem de connectar les entrades oposades de les 2 a l’arduinoTX d’hc-05 passa a RX a arduinoRX d’hc-05 va a TX a arduino

Important: Assegureu-vos de DESCONECTAR el TX & RX de l'HC-05 quan pengeu codi al vostre arduino o apareixerà un error dient "S'ha produït un error en carregar el codi" al compilador.

Pas 3: Configuració de la pantalla i el rellotge LCD

Configuració de la pantalla i el rellotge LCD
Configuració de la pantalla i el rellotge LCD
Configuració de la pantalla i el rellotge LCD
Configuració de la pantalla i el rellotge LCD

La biblioteca que s’utilitza per a la pantalla LCD és de cristall líquid i es pot trobar a: https://github.com/fdebrabander/Arduino-LiquidCrys… Descarregueu el fitxer zip, deseu-lo i col·loqueu-lo a la carpeta / biblioteques d’Arduino.

La biblioteca que estic utilitzant per executar el rellotge es troba a Rinky-Dinky Electronics https://www.rinkydinkelectronics.com/library.php?id=73 i assegureu-vos que esteu a la pàgina DS3231. Baixeu-vos el fitxer zip, deseu-lo i col·loqueu-lo a la carpeta de biblioteques d'Arduino.

Temps

Incloeu la biblioteca DS3231 o DS1307 al vostre codi arduino

Descomenteu aquestes 3 línies de codi per definir l'hora:

// rtc.setDOW (DILLUNS); // Estableix el dia de la setmana a DIUMENGE // rtc.setTime (23, 57, 0); // Estableix l’hora a les 12:00:00 (format 24 h) // rtc.setDate (14, 1, 2019); // Estableix la data a l'1 de gener de 2014

Pantalla LCD

Incloeu la biblioteca liqduicrystal_i2c al vostre codi arduino

Per imprimir a la pantalla LCD utilitzeu

lcd.setCursor (col, fila) // posició del text imprès LCD.print (~) // text imprès

Pas 4: Codificació

Codificació
Codificació

Baixeu-vos el codi a: github:

Descomenteu aquestes 3 línies per configurar el rellotge a la pantalla LCD:

// rtc.setDOW (DILLUNS); // Estableix el dia de la setmana a DIUMENGE // rtc.setTime (23, 57, 0); // Estableix l’hora a les 12:00:00 (format 24 h) // rtc.setDate (14, 1, 2019); // Estableix la data a l'1 de gener de 2014

Utilitzeu lcd.setCuros (col, fila); per definir la posició del text a la pantalla

lcd.setCursor (0, 2);

i print () per imprimir alguna cosa a la pantalla

lcd.print (rtc.getDateStr ());

Canvieu aquestes variables si voleu

int fadeTime = 1; // Quant de temps s’esvairà la llum fins a màxint setHour = 02; // Estableix les hores per despertar (hora militar) int setMin = 49; // Estableix el minut per despertar int uled = 9; // Estableix el pinout amb PWM

Codi del mòdul Bluetooth

String firstHalf = getValue (entrada, ':', 0); // comproveu la primera entrada fins que ":"

String secondHalf = getValue (entrada, ':', 1); // comprova la segona entrada després de ":"

// utilitzeu aquest codi si no utilitzeu el mòdul bluetooth

// // if (t.hour == setHour && t.min == setMin) // Comproveu si és hora de despertar! // { // començar(); //}

// comproveu les primeres entrades de 2 dígits i, a continuació, comproveu els 2 dígits de l'entrada

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

// lògica per separar les cadenes

String getValue (dades de cadenes, separador de caràcters, índex int) {int found = 0; int strIndex = {0, -1}; int maxIndex = data.length () - 1;

for (int i = 0; i <= maxIndex && found <= index; i ++) {if (data.charAt (i) == separator || i == maxIndex) {found ++; strIndex [0] = strIndex [1] + 1; strIndex [1] = (i == maxIndex)? i + 1: i; }} retorn trobat> índex? data.substring (strIndex [0], strIndex [1]): ""; }

Pas 5: temps per fer les proves

Compileu el vostre codi i proveu si els components funcionen.

Pas 6: Configuració de l'aplicació Bluetooth

Configuració de l'aplicació Bluetooth
Configuració de l'aplicació Bluetooth
Configuració de l'aplicació Bluetooth
Configuració de l'aplicació Bluetooth
Configuració de l'aplicació Bluetooth
Configuració de l'aplicació Bluetooth

Com que em va resultar molest aprofundir en el codi cada vegada que volia configurar una alarma, volia crear una aplicació que configurés l'alarma, cosa que és molt més fàcil.

Aneu a https://ai2.appinventor.mit.eduhi podem fer una aplicació senzilla que ens permeti configurar l’alarma, he inclòs la configuració de disseny senzilla (sempre podeu modificar-la més endavant) i el codi utilitzat per a la connexió bluetooth. A continuació, podeu publicar l’aplicació i connectar-vos-la al telèfon mitjançant un codi QR o descarregant directament l’aplicació a l’ordinador i portant-la amb un cable al telèfon. (captura de pantalla)

Pas 7: construir el cas

Construint el cas
Construint el cas
Construint el cas
Construint el cas
Construint el cas
Construint el cas

Sempre podeu crear un cas diferent al voltant del vostre rellotge arduino. Vaig utilitzar fusta i plexiglàs mat per construir la meva pròpia funda de despertador. He escollit plexiglàs mat perquè pugueu veure la llum que brilla clarament a través de la caixa, però no es pot veure l’interior del rellotge.

Pas 8: acabat

Acabat!
Acabat!
Acabat!
Acabat!
Acabat!
Acabat!

Ara que heu carregat el codi al vostre arduino, heu creat la funda i heu comprovat si heu muntat correctament el rellotge. Podeu configurar una alarma a l’aplicació Bluetooth i començar a despertar amb més naturalitat.:)

Recomanat: