TLos legendarios tubos Nixie son retro y frescos: pequeñas lámparas de neón que muestran números o símbolos (Figura A). Lástima que ya no se produzcan en masa, y los pocos que todavía se están fabricando son bastante caros. Además, requieren sofisticados circuitos controladores de alto voltaje. La buena noticia: al utilizar LED multicolor y placas de acrílico grabadas con un cortador láser, puede recrear el encanto retro de Nixies, ampliarlas y personalizar el diseño a su gusto. En este proyecto, le mostraremos cómo hacer una pantalla numérica de "LED Nixie" de gran apariencia con dígitos iluminados, conducida por un Arduino a una temperatura segura y fresca de 5V.
El principio de funcionamiento de la réplica de Nixie es simple, pero efectivo: diez placas transparentes hechas de lámina acrílica extruida (polimetacrilato de metilo o PMMA, también conocido como Lucite, plexiglás o plexiglás) están grabados con los números del 0 al 9. Apilados uno encima de otro, cada placa se ilumina desde el borde mediante LED multicolores. Debido a la refracción interna de la luz dentro de la placa acrílica, solo se iluminará realmente el número seleccionado, mientras que las superficies de las placas y todos los demás números de la pila permanecerán transparentes e incoloros.
No se nos ocurrió esta idea, la hemos visto demostrada en Maker Faires en los EE. UU. Y Europa. Connor Nishijima, un fabricante en Utah, acuñó el nombre "Lixie" para sus proyectos, inspirando a muchos otros fabricantes.
Nuestro propio diseño tiene como objetivo mostrarle lo fácil que es construir LED Nixies y crear sus propias creaciones. Solo necesitarás habilidades básicas de Arduino, además de cierta capacidad de soldadura para rellenar el PCB desnudo.
Construyendo un LED Nixie
La luz de los LED en la placa de circuito brilla en las pestañas de la placa de acrílico, que está grabada con un número. La máscara de espuma en el tablero evita que la luz se irradie hacia los lados y se desvíe hacia las placas adyacentes.
Debido a que la luz ingresa al acrílico desde el borde, se produce una reflexión interna total y el acrílico se comporta como un tubo de luz. La trayectoria de la luz se rompe solo en las líneas grabadas (y en los bordes de la placa) de modo que solo estos puntos se iluminan, y el dígito brilla.
Corte por láser
Las plantillas de corte incluyen 10 placas de numeración y una placa de sujeción (de uno o dos dígitos) para mantenerlas todas juntas. Cortarás las líneas rojas y grabarás las líneas verdes (números). Elegimos dos tipos de letra que creemos que funcionan bien. El tipo delgado nos recuerda a los clásicos tubos Nixie, mientras que el tipo de doble movimiento es más legible en entornos con mucha luz, pero oculta un poco más los números más atrás en la pila.
Estamos construyendo un reloj con nuestros LED Nixies, por lo que necesitamos números, pero no hay límite para el tipo de letras, símbolos o diseños que puede usar. Supongamos que desea crear una estación meteorológica que recupere sus datos a través de Wi-Fi. La visualización de la temperatura podría mejorarse utilizando una gama de colores (por ejemplo, azul a rojo), y podría usar símbolos personalizados para la lluvia, las nubes, el sol y las tormentas eléctricas.
Electrónica
Casi todos los LED Nixies están basados en LEDs RGB tipo WS2812B, o el equivalente SK6812. Estas piezas son populares, ya que se pueden controlar fácilmente usando muy poco hardware y código. Asegúrese de buscar la "B" en WS2812B: esta es una parte rediseñada con solo cuatro en lugar de seis conectores en el paquete SMD. Adafruit ofrece varios tableros pequeños que utilizan estos LED en su línea NeoPixel, y proporcionan una biblioteca de software para controlarlos desde un Arduino.
Mientras que los Lixies que encontramos en Tindie solo tienen un solo capacitor electrolítico de 1,000µF en paralelo a la fuente de alimentación del LED, nos limitamos a la hoja de datos (Figura B, arriba) y le dimos a cada LED su propia tapa de 100nF (0.1µF), ya que estas partes No solo son simples LEDs sino que también contienen circuitos lógicos. Überguide NeoPixel de Adafruit proporciona una explicación de cómo funcionan los LED WS2812B y por qué debe incluir absolutamente una resistencia de 220Ω a 500Ω en la línea de datos entre su microcontrolador y el primer LED (Figura C, a continuación). Esta resistencia no forma parte de la placa de circuito, por lo que necesita conectarla a la línea de datos.
Para iluminar los números de manera uniforme, usamos dos LED RGB para cada uno, separados de manera apropiada en el tablero: dos LED para el 0, otros dos para el 1, y así sucesivamente. Esta configuración difiere del diseño de Lixie, por lo que el código es incompatible. (Si bien cada LED puede controlarse individualmente, usualmente usamos el mismo color para los dos LED en cada número). Los 20 LED que comprenden un "dígito" de Nixie forman una unidad, con un conector en el lado donde se puede conectar la siguiente unidad . Utilizando este tipo de cascada, puede conectar fácilmente 500 LED (25 LED Nixies), posiblemente incluso más.
Sin embargo, la corriente dibujada por un gran número de LED puede plantear un problema. Cada LED RGB puede requerir hasta 60 mA si los tres componentes de color están configurados a la intensidad máxima. Esto agrega hasta 1.2 A para un único Nixie LED, demasiado para las salidas en un Arduino. Pero normalmente solo encenderemos un símbolo por Nixie, por lo que solo se encenderán dos LED a la vez, lo que representa hasta 120 mA. En estas condiciones, un Arduino puede conducir dos Nixies LED. Si su pantalla necesita más dígitos que eso, tendrá que proporcionar una fuente de alimentación de 5 V con suficiente corriente de salida.
Construcción mecánica
Los conectores de cabecera macho y hembra en el lado de cada LED Nixie están dispuestos de modo que se puedan unir fácilmente en una fila. El pin de salida de datos del último LED está conectado tanto al encabezado masculino de "entrada" como al encabezado femenino de "salida", para que se conecte a la entrada del próximo Nixie. Si está construyendo una pantalla con más de unos pocos Nixies, puede mejorar su estabilidad mecánica uniéndolos a una placa posterior.
Como el ángulo del haz de los LED es demasiado amplio para nuestras finas placas de acrílico, debemos enfocarlas utilizando una rejilla de luz hecha de espuma (Figura RE). Las pestañas de las placas de numeración encajan en las aberturas de la cuadrícula. Todos ellos están sujetos por una placa de sujeción con cuatro tornillos M3; tenga cuidado de no dejar que las pestañas presionen directamente los LED sensibles.
En nuestros primeros intentos, utilizamos espuma antiestática ESD que formamos con un cortador láser. (La plantilla para cortar la espuma se incluye en las descargas). Nos tomó bastante tiempo notar que este tipo de espuma hacía que nuestro prototipo se comportara de forma errática: las señales que controlaban los LED eran tan delicadas que incluso tocar la espuma conductora causar mal funcionamiento. Ahora utilizamos espuma simple (no conductora) y nuestro dispositivo funciona bien (Figura E).
Arduino Driver
Para conducir el LED Nixies, utilizamos el Adafruit_NeoPixel.h biblioteca, que puede descargar e instalar utilizando el administrador de biblioteca de Arduino IDE. Esta biblioteca proporciona todo lo que necesita para conducir los LED de tipo WS2812B encadenados individualmente. Al inicializar una nueva instancia, el constructor (ver el aviso (1) en la imagen del listado de código a continuación) se llama con tres argumentos: el número de LED conectados, el número del pin de E / S para usar como entrada de datos y qué velocidad de reloj usar para la transmisión de datos. Añadimos dos funciones que hacen todo el trabajo de controlar los LED individuales para mostrar un número en una cadena de unidades Nixie, para que no tenga que hacerlo.
El código de ejemplo en led-nixie.ino muestra lo fácil que es mostrar números. Dos Nixies LED encadenados están conectados a un Arduino. los DÍGITOS constante (2) debe establecerse en el número de unidades Nixie encadenadas que está utilizando. Es utilizado por el código de configuración del controlador y por el código que maneja los cálculos para la visualización del número. El control ALFILER para ser utilizado se establece en (3) y puede ser elegido arbitrariamente (el valor predeterminado es el pin 7). Tan pronto como el código haya sido compilado y flasheado en el Arduino, verá una pantalla de bucle que va de cero a 99, utilizando colores aleatorios.
los Superar numéricamente() La función toma tres argumentos: el número a mostrar, el color a usar y una bandera que controla si deben mostrarse los ceros iniciales. Luego divide el número en dígitos individuales y los envía a la salida, mientras comprueba cuántos dígitos se pueden mostrar. .
En nuestro esquema en la Figura C, incluimos un módulo de reloj en tiempo real (RTC) DS3231. Tutorial de Adafruit describe el uso de este módulo y por qué es superior al DS1307. Para configurar el reloj, codificarás la hora actual en led-nixie_clock.ino, compilar y flash. El Arduino pasará el tiempo al RTC, que lo almacena localmente a partir de entonces. Luego querrá comentar la parte del código que establece el reloj, por lo que el RTC no se restablecerá al tiempo anterior en cada reinicio. Su reloj de dos dígitos mostrará horas y minutos alternativamente, usando colores cambiantes.
Recortando números
Al mostrar números, a menudo se encontrará con el problema de que muchas pantallas no pueden tomar directamente números de varios dígitos como entrada. El número debe dividirse para que cada pantalla individual se ilumine con el valor del dígito respectivo para cada posición (unidades, decenas, centenas, etc.). Para lograr esto, usaremos un truco simple que involucra la división.
Dividamos un número de tres dígitos en sus tres dígitos: centenas, decenas y unidades. Primero dividimos el valor original por 100. (4) y luego dividir el resultado por 10 para encontrar el recordatorio (Esto se conoce como modulo operación, utilizando el % operador) (5). Entonces, para dividir el número 201, la división por 100 da 2.01, y este módulo 10 da 2, el último dígito antes del punto decimal, y el valor correcto para las centenas. Este resultado se pasa a la rutina de salida (6). En el siguiente paso (decenas), el número original se divide por 10 (7) (20.1), y el resultado de este módulo 10 (8) Nos da 0 por las decenas. Para obtener los unos, solo se toma el número original módulo 10 (9), lo que da como resultado el valor del dígito 1. (Hemos usado decimales aquí con fines ilustrativos; el Arduino en realidad hace los cálculos solo con números enteros).
Juega con tu pantalla digital
¡Tus Nixies LED están listos para el mundo! Úsalos para relojes y cuentas regresivas, contadores de visitas y marcadores, medidores y medidores de todo tipo, o cualquier idea que tengas. Y si no está interesado en construirlos desde cero, puede ordenarlos ya hechos de fabricantes como Connor Nishijima y LED-Genial e incorpóralos a tus proyectos de esa manera.
Esperamos escuchar sus ideas sobre el uso de LED Nixies y ver sus diseños para los símbolos de visualización personalizados, ¡especialmente los muy pequeños o muy grandes! Comparte tus proyectos en makershare.com, y luego háganoslo saber en los comentarios a continuación..
Publicado originalmente en Hacer: Edición alemana, número 4/2018. Este artículo apareció en Make: Vol 66. Traducción de Niq Oltman.