Taula de continguts:
- Pas 1: recollida de les parts
- Pas 2: Muntatge del circuit
- Pas 3: Configuració de la pantalla i el rellotge LCD
- Pas 4: Codificació
- Pas 5: temps per fer les proves
- Pas 6: Configuració de l'aplicació Bluetooth
- Pas 7: construir el cas
- Pas 8: acabat
Vídeo: Rellotge despertador Sunrise amb pantalla LCD i aplicació Bluetooth: 8 passos
2024 Autora: John Day | [email protected]. Última modificació: 2024-01-30 08:14
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
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
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
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ó
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
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
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
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:
Rellotge despertador intel·ligent: un despertador intel·ligent fabricat amb Raspberry Pi: 10 passos (amb imatges)
Rellotge despertador intel·ligent: un rellotge despertador intel·ligent fet amb Raspberry Pi: Heu volgut mai un rellotge intel·ligent? Si és així, aquesta és la solució per a vosaltres. He creat Smart Alarm Clock (Rellotge despertador intel·ligent), aquest és un rellotge que permet canviar l’hora de l’alarma segons el lloc web. Quan l’alarma s’activi, hi haurà un so (brunzidor) i 2 llums
Com fer un rellotge en temps real amb la pantalla Arduino i TFT - Arduino Mega RTC amb pantalla TFT de 3,5 polzades: 4 passos
Com fer un rellotge en temps real amb pantalla Arduino i TFT | Arduino Mega RTC amb pantalla TFT de 3,5 polzades: visiteu el meu canal de Youtube. Introducció: - En aquest post vaig a fer "Rellotge en temps real" amb LCD TFT tàctil de 3,5 polzades, Arduino Mega Mòdul RTC 2560 i DS3231 … Abans de començar … comproveu el vídeo del meu canal de YouTube … Nota: - Si utilitzeu Arduin
Rellotge despertador LED Sunrise: 5 passos (amb imatges)
Rellotge despertador LED Sunrise: teniu problemes per llevar-vos al matí? Odieu el dur so penetrant d’una alarma? Prefereixes fer alguna cosa pel teu compte i que puguis comprar per menys diners i temps? Mireu aquest rellotge despertador LED Sunrise. Les alarmes Sunrise estan dissenyades per
Rellotge despertador Sunrise amb Arduino: 9 passos (amb imatges)
Rellotge despertador amb Arduino: l’hivern pot ser trist. Et despertes, és fosc i has de sortir del llit. L'últim que voleu escoltar és el soroll del vostre despertador. Visc a Londres i em costa despertar-me al matí. A més, trobo a faltar despertar per
Rellotge despertador LED Sunrise amb alarma de cançó personalitzable: 7 passos (amb imatges)
Rellotge despertador LED Sunrise amb alarma de cançó personalitzable: la meva motivació Aquest hivern, la meva xicota tenia molts problemes per despertar-se al matí i semblava patir un trastorn afectiu estacional. Fins i tot noto el molt més difícil que es desperta a l’hivern, ja que el sol no ha vingut