Tabla de contenido:

Infinity Clock - Arduino - WS2813 y DS3231: 5 pasos (con imágenes)
Infinity Clock - Arduino - WS2813 y DS3231: 5 pasos (con imágenes)

Video: Infinity Clock - Arduino - WS2813 y DS3231: 5 pasos (con imágenes)

Video: Infinity Clock - Arduino - WS2813 y DS3231: 5 pasos (con imágenes)
Video: My new LEDs indicators for DIY clock #ws2812b #arduino 2024, Mes de julio
Anonim
Image
Image
Reloj infinito - Arduino - WS2813 y DS3231
Reloj infinito - Arduino - WS2813 y DS3231

Reloj infinito - Arduino - WS2813 y DS3231

Quería construir un reloj y me gustó la idea de intentar hacer un reloj infinito con un Arduino. Quería que lo construyera a partir de elementos comunes y que escribiera el programa yo mismo.

¿Qué es un reloj infinito?

El efecto de espejo de ilusión 3D se produce siempre que hay dos superficies reflectantes paralelas que pueden hacer rebotar un haz de luz hacia adelante y hacia atrás un número indefinido (teóricamente infinito) de veces. Los reflejos parecen retroceder en la distancia porque la luz en realidad está atravesando la distancia. Al agregar LED de colores al espejo Infinity, intentamos simular un reloj analógico utilizando la luz de color que se aleja como manecillas del reloj.

En este instructivo, lo guiaré a través de los pasos para crear el Reloj Infinito y luego revisaré algunos parámetros ajustables en el programa.

Paso 1: Piezas necesarias para este proyecto

Piezas necesarias para este proyecto
Piezas necesarias para este proyecto

Lista de partes:

  1. Arduino Uno $ 6 en taydaelectronics
  2. Protoshield para arduino uno. Puedes conseguir uno por 2,50 en Amazon aquí.
  3. Batería DS3231 plus. puede obtener uno por alrededor de 3.00 en Amazon aquí.
  4. WS2813 LED 144 para 1 metro. $ 20 en Amazon aquí.
  5. Resistencia de película de carbono de 470 OHM 1 W alrededor de 1 centavo en Taydaelectronics.
  6. Condensador electrolítico 1000uf 16V 9 centavos en Taydaelectronics
  7. Fuente de alimentación de 5v: utilicé un viejo cargador de Blackberry.
  8. Espejo redondo de 6 pulgadas. alrededor de $ 5 en Amazon
  9. Disco acrílico de 6 pulgadas alrededor de 10 en Amazon
  10. 2 aros de madera para bordar de 6 "(sí, eso es correcto) $ 2 cada uno en Amazon
  11. Película de espejo unidireccional plateada. Ebay parece ser el más barato.
  12. Alambres surtidos.
  13. HomeDepot con clavija cuadrada de madera de 3/8 "por $ 1.27
  14. base de reloj de madera vieja u otro soporte de exhibición.
  15. 2 pequeñas bridas.

El escudo prototipo no es necesario, pero si le gusta usar Arduino lo encontrará muy útil para construir estos proyectos. Cambie el escudo prototipo con una placa de pruebas si es necesario.

Es posible que también necesite un soldador.

Esperaría que el proyecto cueste alrededor de $ 40.00

Paso 2: Configure su PC

Configura tu PC
Configura tu PC
Configura tu PC
Configura tu PC
Configura tu PC
Configura tu PC

Si este es su primer proyecto arduino:

  1. Descargue el software arduino de arduino.cc
  2. Conecte el Arduino a la PC con un cable USB.
  3. Una vez que inicie el software, deberá instalar tres bibliotecas:

    • Haga clic en el menú "Sketch", luego haga clic en "Incluir bibliotecas" y luego en "Administrar bibliotecas …"
    • Instale las dos bibliotecas: FastLED y RTClib. Vea las imágenes para más detalles.
  4. Obtener el scketch de Arduino de mi github

    • Revisaré el código al final para que pueda modificarlo según sea necesario.
    • En este punto cargue el programa Infinity_Clock_DS3231_WS2813.ino
  5. Vaya a Sketch and Upload para cargar el Arduino.
  6. La última sección del Instructable cubre algunos de los parámetros configurables.

Es mejor cargar el boceto ahora, porque una vez que se agrega la energía externa, es mejor no conectarlo a su PC.

Paso 3: Cableado del proyecto

Cableado del proyecto
Cableado del proyecto
Cableado del proyecto
Cableado del proyecto

Si está utilizando ProtoType Shield, colóquelo en Arduino.

El cableado es la parte más compleja del proyecto. Incluí imágenes para ayudarlo a ver lo que hice. Recomiendo comprobar todas las conexiones antes de encenderlo.

DS3231 - Módulo de reloj en tiempo real

Coloque el módulo DS3231 en la placa de pruebas y conéctelo como se muestra en la imagen.

  • Arduino Ground a GND
  • Arduino 5V a VCC
  • Arduino A4 a SDA
  • Arduino A5 a SCL

En la imagen, conecto el 5v y la tierra a su propia ejecución en la placa de pruebas porque luego querremos conectar la alimentación externa.

Coloque la tira de LED WS2813

  • arduino 5V a su potencia de 5V.
  • Los dos conectores del medio son pines de datos redundantes. van al pin 7

    Asegúrese de colocar una resistencia de 470 OHM entre el pin 7 y dos cables de datos

  • Arduino Ground hasta el último conector.

Conecte la fuente de alimentación externa de 5 V (no se recomienda ejecutar la tira de LED desde la alimentación del arduino durante períodos prolongados).

  • Coloque un condensador electrolítico de 1000 uf entre los cables.
  • Conecte la alimentación y la tierra al Arduino Power (5V) y Ground (GND)

No recomiendo conectar la alimentación externa y el USB al Arduino al mismo tiempo.

Paso 4: Construye el Infinity Mirror

Construye el espejo infinito
Construye el espejo infinito

Pasos para construir el Infinity Mirror:

  1. Aplicar la película sobre los dics acrílicos. Esto hará que su espejo unidireccional.
  2. Coloque el disco acrílico en el bastidor de bordado. Apriete el tornillo para evitar que se deslice
  3. Coloque el espejo en el otro aro de Embroiery. Apriete el tornillo.
  4. Corta la clavija cuadrada en secciones pequeñas. aproximadamente 1/2"
  5. Enrolle la tira de LED con los LED apuntando dentro del círculo.

    1. Utilice las bridas para sujetar el led en su lugar.
    2. Es posible que deba cortar una muesca en la brida.
  6. Pon el lazo en el espejo

    1. Use bloques de madera como espaciadores
    2. Pega los bloques en su lugar. Deben ser lo suficientemente seguros para sostener el led en su lugar.
  7. Coloque el espejo acrílico encima del espejo / LED y péguelo en su lugar.

Paso 5: el código

El código
El código
El código
El código

El programa utiliza la biblioteca Real Time Clock y la biblioteca Fastled.

A continuación, se muestran algunos fragmentos de código para personalizar el comportamiento.

  • OFFSET - es la superposición. El programa espera que la superposición sea de LED0. Tengo un desplazamiento de 3 LED.
  • CLOCKSTART: es el mediodía en el reloj. El LED 30 lo pone en oposición a las conexiones eléctricas.

Escribí el programa para usar colores HTML. Puede obtenerlos en https://htmlcolorcodes.com/ Simplemente cambie el # por 0x en el programa.

Puede cambiar el fondo de am / pm

  • backgroundAM = 0x070707;
  • backgroundPM = 0x646D7E;

Manecillas LED del reloj:

  • hourHand = 0x000FFF;
  • minHand = 0x00CC00;
  • secHand = 0xcc0000;

Para que se destaque, agregué una opción para tener 3 LED para la manecilla de las horas, pero le permite cambiar el color en ambos lados del medio para que se destaque.

  • theelshour = verdadero; // puedes hacerlo verdadero o falso
  • extraHourHand = 0x00001F;

Otra característica interesante es que RTClib detectará que se le ha quitado la batería a su DS3231 y establecerá el tiempo de compilación de la PC. Es una buena característica para el nuevo DS3231.

Si no obtuvo el boceto al comienzo del documento, se puede encontrar en GitHub

Gracias por leer este Instructable. Mi hijo ayudó y fue un proyecto divertido para nosotros. Espero que seamos considerados en el concurso de óptica.

Recomendado: