Tabla de contenido:
- Paso 1: herramientas necesarias
- Paso 2: Se requieren piezas electrónicas
- Paso 3: Piezas impresas
- Paso 4: archivo de ensamblaje completo
- Paso 5: instalar las bibliotecas
- Paso 6: instalación del firmware
- Paso 7: Aplicación para teléfono inteligente
- Paso 8: construcción del ensamblaje de la placa Vero
- Paso 9: Montaje del reloj
- Paso 10: Colocación de la cubierta frontal para terminar
Video: Reloj NeoPixel: 10 pasos (con imágenes)
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:43
*********************************************************************************************************
ESTA ES UNA ENTRADA EN EL CONCURSO DE MICRO CONTROLADORES, POR FAVOR VOTE POR MI
********************************************************************************************************
Construí un espejo infinito NeoPixel hace algunos años mientras estaba en Tailandia y se puede ver AQUÍ.
Lo hice por las malas, sin usar un Arduino, sino un microprocesador independiente, un PIC18F2550. Esto implicó profundizar en los registros y tiempos del Micro para escribir el código, algunos de los cuales contenían ensamblado.
Todo esto es un gran conocimiento para tener y me ha sido de gran utilidad, ya que hace que trabajar con Arduino sea un juego de niños. La mayor parte del trabajo se ha realizado mediante el uso de bibliotecas de terceros, mientras que antes escribía mi propio código de biblioteca.
Este reloj fue diseñado para emitir luz desde la periferia hacia la pared a la que está conectado usando LEDs RGB direccionables individualmente WS2812B espaciados a 144 por metro. Esto me dio un diámetro de reloj de 200 mm, algo que podía hacer yo mismo en mi impresora 3D.
Tiene un efecto deslumbrante, especialmente de noche o en una habitación oscura, la luz brilla alrededor de 500 mm dando un deslumbramiento total de más de un metro de diámetro. Los patrones son asombrosos.
El reloj muestra horas (azul), minutos (verde) y segundos (rojo). También se muestra la fecha en una pantalla de 8 dígitos y 7 segmentos y el día de la semana en forma de lista.
El reloj se controla mediante un teléfono inteligente a través de WiFi mediante la aplicación Blynk y un servidor Blynk local que se ejecuta en un RPi 3.
El uso de un servidor local para Blynk es opcional y configurar esto no es parte de este instructivo. El Blynk alojado en la web se puede utilizar después de crear una cuenta en www.blynk.cc y descargar la aplicación.
Hay una gran cantidad de información sobre el uso de Blynk en su sitio web, por lo que no es parte de este instructivo.
En un paso posterior en este instructivo, hay un código QR para escanear, luego tendrá mi aplicación en su teléfono.
La aplicación tiene controles para mostrar el reloj o los patrones (con retroalimentación LCD en la aplicación), la capacidad de configurar su zona horaria en cualquier lugar del mundo y obtener la hora a través de un servidor NTP. También se puede configurar para dormir.
Hay un módulo de reloj en tiempo real con respaldo de batería que proporciona funciones de fecha y hora al Arduino.
El firmware del NodeMCU-E12 en el reloj se puede actualizar por aire (OTA).
Ahora comencemos …
Paso 1: herramientas necesarias
Un buen soldador y soldador.
pelacables
cortadores de alambre pequeños
pequeños alicates de punta larga
sierra pequeña para cortar tabla vero
cuchillo afilado
tijeras
pegamento de papel
Paso 2: Se requieren piezas electrónicas
1 x módulo NodeMCE-12E de AQUÍ
1 x módulo de reloj RTC AQUÍ
1 módulo Max7219 de 7 segmentos de 8 dígitos aquí
1 x conector de alimentación de CC aquí
2 x cambiadores de nivel (requeridos ya que Arduino es 3.3vy RTC y la pantalla de 7 segmentos es 5v) aquí
68 LED de una tira de LED WS2812B 114 / mtr aquí.
Fuente de alimentación DC 5v 10A aquí.
Resistencia de 10kOhm 1 / 4W.
Según sea necesario, cable de conexión.
Aproximadamente 77 mm x 56 mm placa Vero para ensamblar todos los módulos y cablear.
De hecho, utilicé un cambiador de nivel Adafruit para las líneas I2c del módulo RTC, ya que se suponía que era seguro para I2c.
Sin embargo, creo que la mayoría de los cambiadores de nivel lógicos bidireccionales de 3.3v a 5v deberían funcionar.
Cortar la tira de LED desperdició un LED ya que se requerían las almohadillas para soldar ambos extremos de la tira de 60 LED y las almohadillas en la tira de 7 LED.
Paso 3: Piezas impresas
Hay tres partes impresas en 3D; el cuerpo del reloj principal, la tapa frontal y la tapa de la batería en la parte posterior.
La tapa de la batería podría omitirse.
También hay una 'Máscara' impresa debajo de la portada con los días de la semana. Imprimí esto en papel ordinario. He proporcionado un archivo.dwg y.dxf de este.
Hay 2 portadas disponibles, una no tiene nombre, en caso de que no pueda editar la pieza.
Mi impresora 3D (boquilla de 0,4 mm) tenía la siguiente configuración con Slic3r:
altura de la primera capa = 0,2 mm
altura de las capas = 0,2 mm
temperatura de la cama = 60 C
temperatura de la boquilla = 210 C
perímetros verticales = 2
conchas horizontales = 3
relleno = estrellas rectilíneas a 45 grados
sin ala
sin material de soporte
Se recomienda encarecidamente que tenga un método de nivelación de la cama
Archivos impresos en 3D y dibujo de máscara aquí:
Paso 4: archivo de ensamblaje completo
A continuación se muestra un archivo IGS del ensamblaje completo para cualquiera que desee modificar el reloj.
Paso 5: instalar las bibliotecas
INSTALE LAS TARJETAS ESP
Necesitará el IDE de Arduino. La instalación no es parte de este instructivo, pero se puede descargar desde AQUÍ.
Una vez que el IDE de Arduino esté instalado, si aún no lo ha hecho, deberá copiar / pegar el texto a continuación en el cuadro de texto en Archivo> Preferencias - URL adicionales del Administrador de tableros:
arduino.esp8266.com/stable/package_esp8266com_index.json
Reinicie el IDE.
Una vez hecho esto, vaya a Herramientas> Tablero> Administrador de tableros. Deje que termine de actualizarse y debería ver la versión de la comunidad ESP8266 en la lista de placas instaladas.
INSTALAR BIBLIOTECAS
Instalar todas las bibliotecas en su carpeta Documentos / Arduino / Bibliotecas como de costumbre, excepto las instaladas por el administrador de la placa.
Después de instalar las bibliotecas, reinicie Arduino IDE, vaya a Sketch> Incluir biblioteca> Administrar bibliotecas, deje que termine de actualizarse, debería ver sus nuevas bibliotecas en la lista.
RTClib - disponible aquí Adafruit_NeoPixel - disponible aquí
HCMAX7219 desde aquí
Blynk: disponible aquí. siga las instrucciones de instalación CUIDADOSAMENTE.
Todos los demás 'incluye' en el archivo NeoPixelClock son instalados por Board Manager o están empaquetados con la instalación de Arduino IDE.
Paso 6: instalación del firmware
En esta etapa, es una buena idea conectar todo junto en una placa de pruebas para fines de prueba.
Verifique todo el cableado cuidadosamente antes de conectar la fuente de alimentación de 5v y / o el cable USB.
Navega a tu carpeta Sketch Documentos> Arduino.
Cree una carpeta "NeopixelClock".
coloque el archivo.ino a continuación en la carpeta.
Abra el IDE de Arduino.
Configure el IDE para que muestre los números de línea, vaya a Archivo> Preferencias y marque la casilla "Mostrar números de línea", haga clic en Aceptar.
Conecte su placa NodeMCU a un puerto USB.
Vaya a Herramientas> Placa y seleccione NodeMCU 1.0 (Módulo ESP-12E)
Vaya a Herramientas> Puerto y seleccione el puerto al que está conectada su placa.
INSTALAR FIRMWARE OTA
Para utilizar la actualización OTA, primero debe grabar una pieza especial de firmware en NodeMCU.
vaya a Archivo> Ejemplos> ArduinoOTA> BasicOTA.
se cargará un programa en el IDE, complete la parte para ssid con el SSID de su enrutador. Puede ver este nombre si pasa el mouse sobre el ícono de WiFi en la bandeja del sistema.
Complete la contraseña con su contraseña de red (generalmente escrita en la parte inferior del enrutador inalámbrico.
Ahora cárguelo en su placa NodeMCU a través de USB.
Cuando termine, presione el botón de reinicio en la placa NodeMCU.
INSTALE EL FIRMWARE NEOPIXELCLOCK
Vaya a Archivo> Cuaderno de bocetos> NeoPixelClock y abra el archivo NeoPixelClock.
Complete su 'auth', 'ssid' y 'pass' debe estar en la línea 114.
Nota; cómo obtener el token de autoridad se explica en el siguiente paso
También puede configurar su zona horaria local en la línea 121, esto puede ser cualquier 1/4 de hora entre -12 y +14 según las zonas horarias de todo el mundo. Esto también se puede configurar en la aplicación si lo prefiere. Actualmente está programado para Queensland, Australia.
En la línea número 332 debe configurar la dirección IP para su servidor local si lo está utilizando.
Una nota sobre el puerto del servidor local. Debido a una actualización reciente del software Blynk, el puerto ahora es 8080, no 8442.
Si está utilizando el nuevo software actualizado, cámbielo.
O si usa el servidor web Blynk, comente la línea 332 y elimine el comentario de la línea 333.
Esa es toda la edición que se necesita hacer.
Ahora cargue esto en su placa NodeMCU a través de USB.
Cuando esto se haya cargado correctamente, desconecte el cable USB de la placa.
Verá en Herramientas> Portar un nuevo puerto (parece una dirección IP), seleccione este como su puerto para comunicarse con NodeMCU para futuras actualizaciones que pueda hacer.
Si todo salió bien, el reloj debería comenzar, de lo contrario, presione el botón 'reiniciar' en el módulo NodeMCU.
Nota: He notado que a veces no se inicia la primera vez, descubrí que desenchufar la fuente de alimentación y volver a conectar funciona la mayoría de las veces. Estoy trabajando en una solución para que este error se inicie correctamente.
Paso 7: Aplicación para teléfono inteligente
Para empezar a usarlo:
1. Descargue la aplicación Blynk: https://j.mp/blynk_Android o https://j.mp/blynk_iOS si aún no está instalada.
2. abra la aplicación o inicie sesión, si es nuevo, deberá crear una cuenta.
NOTA, esto no es lo mismo que la cuenta en línea.
3. Toque el ícono QR en la aplicación en la parte superior y apunte la cámara al código QR arriba, o abra el enlace a continuación:
tinyurl.com/yaqv2czw
4. Se debe enviar un código de autoridad a su correo electrónico designado, que debe ingresar en el código Arduino donde se indica en un paso posterior. Si presiona el ícono de la tuerca, podrá enviar un correo electrónico nuevamente si es necesario.
Como se mencionó anteriormente, debe crear una cuenta en línea en www. Blynk.cc. antes de hacer esto.
Perdóname por la vaguedad, no puedo probar esto porque ya tengo la aplicación y no uso el servidor web.
Paso 8: construcción del ensamblaje de la placa Vero
Decidí poner todos los tableros y módulos en un trozo de tablero vero.
Esto mantiene todo limpio y ordenado.
El esquema se puede ver en el archivo.pdf a continuación.
Los encabezados de la placa se quitaron después de la prueba, conecté todos los periféricos directamente a la placa vero ya que no había suficiente espacio para los encabezados y conectores asociados.
Lo siento, no tomé ninguna foto de la parte inferior del tablero, pero no debería ser difícil resolverlo. Incluso puedes mejorar mi diseño. Mantenga la placa Vero del mismo tamaño; de lo contrario, no se ajustará a la base impresa en 3D.
Con los cambiadores de nivel lógico, el LV (+ 3.3v) va a 3.3v en cualquiera de los pines 3v en el módulo Arduino, el HV (+ 5v) va al pin VIN en la placa Arduino.
Todos los Grounds provienen de cualquiera o todos los pines GND de Arduino y deben estar todos conectados para evitar bucles.
Realice el cableado con algo como un cable de un solo núcleo aislado de calibre 26, el aislamiento de PTFE sería bueno ya que no se derrite.
Revise todo su cableado cuidadosamente 2 o 3 veces.
Revíselo con un multímetro para verificar la continuidad, verifique que todos los Gnds estén conectados nuevamente al VIN GND.
Verifique todas las conexiones de + 5v en el módulo RTC, los pines HV de los módulos de cambio de dos niveles y el pin VIN + 5v en el módulo NodeMCU.
Es buena idea comprobar también el resto del cableado.
Paso 9: Montaje del reloj
Una vez que haya impreso las piezas, limpie cualquier tapajuntas y grumos y protuberancias con un cuchillo afilado.
Como solo tenía filamento azul y negro, pinté el interior de las cavidades del LED con pintura modelo plateada.
Creo que esto debería ayudar a reflejar mejor la luz y también ayudar a prevenir el sangrado de luz a través de las paredes hacia las cavidades adyacentes.
El conjunto de la placa vero debe estar cableado:
a la tira de LED + 5v, Gnd y DIN del conjunto de la placa vero.
a la pantalla de 7 segmentos del conjunto de la placa vero.
al conector de CC del conjunto de la placa vero.
Un cable a la tira de LED de 7 vías (DIN) separada desde el extremo (número 60) de la tira de LED principal de 60 vías (DOUT).
Solo soldé la salida de datos (DOUT) del extremo (LED número 60) de la tira de LED de 60 vías, el + 5v y Gnd para la tira de LED de 7 vías que conecté desde el ensamblaje de la placa vero.
Para evitar cortocircuitos, coloqué un pequeño trozo de tarjeta delgada entre el principio y el final de la tira de LED de 60 vías, ya que estaban muy cerca.
Mida y corte todos los cables a las longitudes adecuadas, agregué 5 o 6 mm para proporcionar un poco de margen.
No quité el papel de respaldo de la cinta adhesiva de las tiras de LED, esto habría dificultado la colocación en la base y muy difícil de quitar si fuera necesario.
Encontré que las tiras encajaban bien y cómodas, luego empujaba hasta el fondo de la cavidad.
Coloque el conjunto de la placa Vero en la cavidad, hay separadores para mantenerlo alejado de la parte inferior en 2 mm.
Coloque la pantalla de 7 segmentos de 8 vías en la cavidad; hay postes separadores para montarla.
El conector de CC encaja perfectamente en su cavidad, suelde los cables a esto en el interior de las etiquetas. Quite la etiqueta lateral si lo desea.
Todos los cables deben colocarse cuidadosamente en las cavidades provistas.
Por último, pase el conector de alimentación de la fuente de alimentación a través del orificio y colóquelo en el conector de CC, presione el cable en la ranura que se encuentra debajo.
Revise todo su cableado cuidadosamente 2 o 3 veces. Vea el diagrama de cableado a continuación.
Paso 10: Colocación de la cubierta frontal para terminar
El bloque de la base tiene varias clavijas pequeñas que sobresalen del anillo exterior, que deben alinearse con los orificios de la cubierta frontal.
La máscara de papel debe imprimirse en negro, recortarse y pegarse a la portada con algo como una barra de pegamento.
Los agujeros se perforarán a través del papel cuando esté, con la cubierta frontal, presionada sobre la base.
Estamos listos para comenzar, enchúfelo, el reloj debería comenzar automáticamente, si no lo hace, como descubrí varias veces, desenchufe la alimentación y vuelva a enchufarlo.
Si no tiene batería en el módulo RTC, deberá configurar la hora y la fecha.
Haga esto con la aplicación, configure la zona horaria con el control arriba / abajo y luego presione el botón 'SET NTP TIME'.
Verá en el terminal de la aplicación si tiene éxito o no, si no, vuelva a intentarlo.
Cuando se muestra HECHO, se puede presionar el botón Reloj y el reloj debe funcionar y mostrar la hora, la fecha y el día de la semana.
Los patrones se pueden ejecutar presionando el botón Patrones, esto se puede interrumpir en cualquier momento presionando el botón Reloj o el botón Patrones nuevamente.
El brillo de los LED del reloj y la pantalla de 7 segmentos se puede ajustar para el brillo con los controles deslizantes asociados.
Todos los LED se pueden apagar presionando el botón de apagado del reloj.
Cuélguelo en la pared y la luz brillará hacia afuera en la pared, particularmente hermosa en una habitación oscura.
Cualquier pregunta estaré encantada de intentar y responder.
DISFRUTA y no olvides votar por mí.
************************************************ ************************************************ ***** ESTA ES UNA ENTRADA EN EL CONCURSO DE MICRO CONTROLADORES, VOTE POR MI ***************************** ************************************************ ***********************
Recomendado:
Reloj de jubilación / Cuenta ascendente / Reloj Dn: 4 pasos (con imágenes)
Reloj de jubilación / Count Up / Dn Clock: Tenía algunas de estas pantallas de matriz de puntos LED de 8x8 en el cajón y estaba pensando qué hacer con ellas. Inspirado por otros instructables, tuve la idea de construir una pantalla de cuenta regresiva / ascendente para contar regresivamente hasta una fecha / hora futura y si el tiempo objetivo p
Reloj despertador inteligente: un reloj despertador inteligente hecho con Raspberry Pi: 10 pasos (con imágenes)
Reloj despertador inteligente: un reloj despertador inteligente hecho con Raspberry Pi: ¿Alguna vez has querido un reloj inteligente? Si es así, ¡esta es la solución para usted! Hice Smart Alarm Clock, este es un reloj que puede cambiar la hora de la alarma de acuerdo con el sitio web. Cuando suene la alarma, habrá un sonido (zumbador) y 2 luces
Reloj Vortex: un reloj de pulsera con espejo infinito: 10 pasos (con imágenes)
Vortex Watch: un reloj de pulsera con espejo infinito: el objetivo de este proyecto era crear una versión portátil de un reloj con espejo infinito. Utiliza sus LED RGB para indicar el tiempo asignando horas, minutos y segundos a las luces roja, verde y azul respectivamente y superponiendo estos tonos t
Reloj de red ESP8266 sin ningún RTC - Reloj Nodemcu NTP Sin RTC - PROYECTO RELOJ DE INTERNET: 4 Pasos
Reloj de red ESP8266 sin ningún RTC | Reloj Nodemcu NTP Sin RTC | PROYECTO DE RELOJ DE INTERNET: En el proyecto se realizará un proyecto de reloj sin RTC, se tomará tiempo de Internet usando wifi y lo mostrará en la pantalla st7735
C51 Reloj Electrónico de 4 Bits - Reloj de Madera: 15 Pasos (con Imágenes)
Reloj electrónico C51 de 4 bits - Reloj de madera: tuve algo de tiempo libre este fin de semana, así que seguí adelante y monté este reloj digital electrónico DIY de 4 bits de AU $ 2.40 que compré en AliExpress hace un tiempo