Difference between revisions of "Reloj LED"

From Wiki Makespace Madrid
Jump to: navigation, search
Line 1: Line 1:
{{Template:EstadoDeProyecto|NombreProyecto=Reloj LED|estado=En curso|miembro=Samuel}}
+
{{Template:EstadoDeProyecto|NombreProyecto=Reloj LED|estado=En curso|miembro=Samuel|colaboraciones=Proyecto personal}}
  
== Reloj LED ==
 
  
'''ESTADO:''' En construcción. Prototipo casi funcional con fallos. Nombre en clave "Aquila".
+
== Objetivo ==
 
+
'''Miembros:''' Samuel
+
 
+
 
+
=== Objetivo ===
+
  
 
Construir un reloj de pared utilizando luces LED para representar la hora en lugar de saetas. Además tendrá una alarma horaria que se podrá desactivar  
 
Construir un reloj de pared utilizando luces LED para representar la hora en lugar de saetas. Además tendrá una alarma horaria que se podrá desactivar  
Line 15: Line 9:
  
  
=== Motivación ===
+
== Motivación ==
  
 
Los relojes LED son muy estéticos y me gustan mucho y como primer proyecto con Arduino me parece un proyecto interesante que presenta varios desafíos.
 
Los relojes LED son muy estéticos y me gustan mucho y como primer proyecto con Arduino me parece un proyecto interesante que presenta varios desafíos.
Line 23: Line 17:
 
Este es un proyecto de aprendizaje, por lo que es más una exploración que un proceso industrial, aunque lo documentaré para que sea repetible, e incluso se pueda industrializar la producción del mismo si a alguien le interesa.
 
Este es un proyecto de aprendizaje, por lo que es más una exploración que un proceso industrial, aunque lo documentaré para que sea repetible, e incluso se pueda industrializar la producción del mismo si a alguien le interesa.
  
=== Antecedentes ===
+
== Antecedentes ==
  
 
Existen numerosos relojes LED, con distintos estilos., el que me ha inspirado a mi es el que aparece en el vídeo de la sección de otras referencias.
 
Existen numerosos relojes LED, con distintos estilos., el que me ha inspirado a mi es el que aparece en el vídeo de la sección de otras referencias.
  
  
=== Métodos y técnicas utilizadas ===
+
== Métodos y técnicas utilizadas ==
  
 
La parte electrónica ya est´a funcionando correctamente sobre Arduino UNO
 
La parte electrónica ya est´a funcionando correctamente sobre Arduino UNO
  
Para el soporte estoy utilizando una pieza de pástico impresa en 3D, pero estoy teniendo problemas para ensamblarla. Tengo que seguir trabajando en esta parte.
+
Para el soporte estoy utilizando una pieza de plástico impresa en 3D, pero estoy teniendo problemas para ensamblarla. Tengo que seguir trabajando en esta parte.
  
=== Detalles  generales ===
 
  
==== Electrónica ====
+
=== Electrónica ===
  
 
El cerebro del reloj está basado en Arduino UNO y no utilizo ningún otro componente que no se pueda encontrar en el Starter kit de Arduino a excepción de:
 
El cerebro del reloj está basado en Arduino UNO y no utilizo ningún otro componente que no se pueda encontrar en el Starter kit de Arduino a excepción de:
Line 44: Line 37:
 
* Una batería externa para alimentar los LED, ya que el Arduino no puede alimentar los LEDS.
 
* Una batería externa para alimentar los LED, ya que el Arduino no puede alimentar los LEDS.
  
===== LEDS RGB =====
+
==== LEDS RGB ====
 
Los LEDS están basados en el controlador WS2801 ([http://www.world-semi.com/uploads/soft/120505/1-120505110Q7.rar datasheet]). Se controlan muy fácilmente con la librería [http://fastled.io fastLED].
 
Los LEDS están basados en el controlador WS2801 ([http://www.world-semi.com/uploads/soft/120505/1-120505110Q7.rar datasheet]). Se controlan muy fácilmente con la librería [http://fastled.io fastLED].
  
===== Reloj de tiempo real =====
+
==== Reloj de tiempo real ====
 
Para obtener el tiempo se utiliza un reloj de tiempo real (RTC) basado en el chip DS1307. Hay otros más precisos, a base de incrementar el precio.
 
Para obtener el tiempo se utiliza un reloj de tiempo real (RTC) basado en el chip DS1307. Hay otros más precisos, a base de incrementar el precio.
  
===== Sketch de Arduino =====
+
==== Sketch de Arduino ====
  
 
La versión actual del sketch se puede descargar del [https://gitlab.com/dardoware/Arduino_LEDClock/tree/master repositorio del proyecto del Reloj LED en GitLab].  
 
La versión actual del sketch se puede descargar del [https://gitlab.com/dardoware/Arduino_LEDClock/tree/master repositorio del proyecto del Reloj LED en GitLab].  
  
==== Bricolaje ====
+
=== Bricolaje ===
  
 
El prototipo inicial estaba construido sobre una caja de cartón. Ahora estoy utilizando piezas de plástico moldeado mediante impresión 3D.
 
El prototipo inicial estaba construido sobre una caja de cartón. Ahora estoy utilizando piezas de plástico moldeado mediante impresión 3D.
Line 64: Line 57:
 
Son necesarias doce piezas para formar la esfera.
 
Son necesarias doce piezas para formar la esfera.
  
== Progeso del proyecto y roadmap ==
+
== Progreso del proyecto y roadmap ==
  
 
=== Nomenclatura ===
 
=== Nomenclatura ===

Revision as of 11:04, 21 April 2015

Reloj LED
Sin foto (aún)
Estado: En curso
Miembros: Samuel
Colaboraciones: Proyecto personal
Este es un fantástico proyecto que se está desarrollando por alguno de los simpáticos makers de la comunidad Makespace Madrid


Objetivo

Construir un reloj de pared utilizando luces LED para representar la hora en lugar de saetas. Además tendrá una alarma horaria que se podrá desactivar

automáticamente en horario nocturno (configurable).


Motivación

Los relojes LED son muy estéticos y me gustan mucho y como primer proyecto con Arduino me parece un proyecto interesante que presenta varios desafíos.

Además así practico un poco de bricolaje y manualidades.

Este es un proyecto de aprendizaje, por lo que es más una exploración que un proceso industrial, aunque lo documentaré para que sea repetible, e incluso se pueda industrializar la producción del mismo si a alguien le interesa.

Antecedentes

Existen numerosos relojes LED, con distintos estilos., el que me ha inspirado a mi es el que aparece en el vídeo de la sección de otras referencias.


Métodos y técnicas utilizadas

La parte electrónica ya est´a funcionando correctamente sobre Arduino UNO

Para el soporte estoy utilizando una pieza de plástico impresa en 3D, pero estoy teniendo problemas para ensamblarla. Tengo que seguir trabajando en esta parte.


Electrónica

El cerebro del reloj está basado en Arduino UNO y no utilizo ningún otro componente que no se pueda encontrar en el Starter kit de Arduino a excepción de:

  • Tira de LEDs basada en leds RGB controlados mediante el chip ws2801 (dos tiras de 50, aunque sólo usamos 60 LEDS en total)
  • Módulo TinyRTC (Reloj de tiempo real basado en DS1307)
  • Una batería externa para alimentar los LED, ya que el Arduino no puede alimentar los LEDS.

LEDS RGB

Los LEDS están basados en el controlador WS2801 (datasheet). Se controlan muy fácilmente con la librería fastLED.

Reloj de tiempo real

Para obtener el tiempo se utiliza un reloj de tiempo real (RTC) basado en el chip DS1307. Hay otros más precisos, a base de incrementar el precio.

Sketch de Arduino

La versión actual del sketch se puede descargar del repositorio del proyecto del Reloj LED en GitLab.

Bricolaje

El prototipo inicial estaba construido sobre una caja de cartón. Ahora estoy utilizando piezas de plástico moldeado mediante impresión 3D.

La pieza del modelo 3D que estoy usando ahora es el de este fichero (STL).

Los ficheros para poder modificar y generar el sólido están en el repositorio del proyecto (SCAD).

Son necesarias doce piezas para formar la esfera.

Progreso del proyecto y roadmap

Nomenclatura

A continuación dejo notas sobre la nomenclatura

Prototipos

Cada prototipo es un reloj funcional en si mismo, es decir, un objeto del mundo real.

Para cada prototipo del reloj tiene un nombre clave que empieza cada vez por una letra diferente del alfabeto, comenzando por la A. Ese nombre siempre es el nombre latino de una constelación. Si no hay constelación por esa letra paso a la siguiente.

Hitos

Cada hito es una fase en la escritura del firmware del reloj, es decir una funcionalidad o mejora.

Para cada hito utilizo un nombre en clave que cada vez comienza por la letra siguiente del alfabeto. La secuencia comienza en la A.

De esta manera si pongo un firmwara para descarga y su nombre empieza por una letra que alfabéticamente va más atrás en el diccionario se trata de un Firmware más avanzado.

Cada hito tiene una serie de asuntos que tienen que completarse para considerarse finalizado.


Roadmap

  1. Prototipo actual: AQUILA (Águila) (Abril 2014)
    1. Estructura: de plástico impreso en 3D
    2. Píxeles: basados en LEDs RGB con chipset WS2801
  2. Próximo prototipo: BOÖTES (Boyero, pastor de bueyes) (fecha y características finales por determiar)


Lista de hitos:

  1. Altair: Reescritura desde cero de lo que ya tenía
    1. Sustitución de las librerías Time y DS1307 por RTClib
    2. Todos los parámetros de configuración en el mismo punto.
  2. Betelgeuse: Paletas de color
    1. Inclusión de paletas de color que se pueden cambiar al pulsar un boton
  3. Capella: Multiples modos de representar la hora
    1. Modo normal (ya implementado)
    2. Sectores (ya implementado)
    3. Estelas (implementado, pero no funciona de la manera esperada)
    4. Circulos
    5. Invertido (implementado)
  4. Deneb: Posibilidad de cambiar la hora manualmente con un encoder
  5. Etamin: Soporte para display con la fecha
  6. Fomalhaut: Sensores ambientales para la temperarura

¡Construye tu reloj!

Seguramente esto es lo que más te interesa.

En las siguientes secciones se especifica que te hace falta para construir cada modelo.

Aquila

Lista de materiales

(Pendiente)

Montaje

Instrucciones asequibles para que cualquiera pueda monmtarse su reloj.

Instrucciones para montar un reloj como el prototipo "Aquila":

  1. Descargar todos los ficheros del repositorio:
  2. Conectar el arduino y cargar los programas que aparecen en el directorio arduino
  3. Imprimir las doce piezas que aparecen en el directorio 3D/STL)
  4. Unir las piezas con adhesivo para plásticos y usar bridas para mantenerlas juntas hasta que se sequen
  5. Montar los LED
  6. Conectar las cosas como pone en el sketch de Arduino (pendiente de especificar)
  7. Dar corriente al arduino y a los LEDs. ¡EL ARDUINO NO PUEDE ALIMENTAR LOS LEDS! Necesitan su propia fuente de alimentación.

Uso

El prototipo Aquila tiene un único botón.

Funciones del botón 1.

  • Pulsación corta: Cambio de paleta de colores
  • Pulsación larga: Modo de visualización


Conclusiones

La realización de este proyecto hasta su estado actual me ha proporcionado las siguientes experiencias:

Experiencias de aprendizaje técnicas:

  • Aprendizaje de la plataforma Arduino
  • Aprendizaje de diseño 3D para impresión 3D
  • Aprendizaje de reparación básica de impresoras 3D
  • Recuperación de los conocimientos de electrónica que creía olvidados y mejora de los mismos.
  • Aprendizaje de soldadura eledctrónica básdica
  • Aprendizaje de manejo de gran cantidad de LEDs

Experiencias de autodescubrimiento:

  • Puesta en práctica de metodologías de gestión del tiempo y el esfuerzo
  • Descubrimiento de mi gusto por la iluminación artística.


Referencias