Tabla de contenido:

Termómetro de tubo Nixie controlado por Arduino: 14 pasos
Termómetro de tubo Nixie controlado por Arduino: 14 pasos

Video: Termómetro de tubo Nixie controlado por Arduino: 14 pasos

Video: Termómetro de tubo Nixie controlado por Arduino: 14 pasos
Video: PiroTech - Arduino 2024, Noviembre
Anonim
Termómetro de tubo Nixie controlado por Arduino
Termómetro de tubo Nixie controlado por Arduino

Hace años compré un montón de tubos IN-14 Nixie de Ucrania y los tuve por ahí desde entonces. Siempre quise usarlos para un dispositivo personalizado, así que finalmente decidí abordar este proyecto y construir algo que utiliza esta forma casi antigua de mostrar dígitos, pero por ahora no quería construir un reloj de tubo Nixie (pensé que era un cliché y, por ahora, ya he tenido suficientes proyectos de relojes elegantes), así que pensé: ¿Por qué no construir un termómetro para mi habitación que se pueda activar aplaudiendo? Hice que se activara el aplauso para que no estuviera encendido todo el tiempo, porque pensé que era una gran pérdida de energía y tampoco quería que iluminara la habitación, especialmente durante la noche.

Los tubos Nixie están controlados por un Arduino, que también se encarga de leer la temperatura del conocido sensor de temperatura DHT-11.

Esta es una copia abreviada de mi serie original publicada en mi sitio web. Échale un vistazo, si estás interesado en otros artículos técnicos y proyectos que todavía no edité para Instructables.

Paso 1: Tubos Nixie y alto voltaje

Tubos Nixie y alto voltaje
Tubos Nixie y alto voltaje

Los tubos Nixie son tubos de cátodo frío que se llenan con un gas específico. Además, contienen un ánodo (o cátodo) común y cátodos (o ánodos) separados para cada dígito o carácter que pueden mostrar (Ver fig. 1.1).

En mi caso, los tubos tienen un ánodo común y los dígitos son cátodos separados. A diferencia de otros tubos de esa época (transistores, diodos, …) los tubos Nixie generalmente no necesitan calentarse para funcionar correctamente (de ahí el nombre: tubo de cátodo frío).

Lo único que necesitan es un voltaje bastante alto, normalmente entre 150 y 180 V CC. Este suele ser el problema principal al manipular estos dispositivos de visualización porque significa que necesitará una fuente de alimentación personalizada o un circuito de aumento y controladores, que sean capaces de encender y apagar los cátodos sin usar demasiadas líneas GPIO.

Paso 2: Convertidor elevador de CC de 12 V a 170 V

Convertidor elevador de 12V a 170V DC
Convertidor elevador de 12V a 170V DC

Comencemos creando de alguna manera el voltaje necesario para hacer que los tubos brillen. Afortunadamente, el tubo Nixie típico necesita un voltaje alto pero una corriente muy baja, lo que significa que es bastante fácil y económico construir un convertidor de este tipo.

Tenga cuidado al utilizar este circuito y los altos voltajes en general. No son un juguete y recibir un zap duele mucho en el mejor de los casos y puede potencialmente matarte en el peor de los casos. Siempre apague la fuente de alimentación antes de cambiar / dar servicio al circuito y asegúrese de usar un estuche adecuado, para que nadie lo toque accidentalmente cuando esté en uso.

Usé el conocido circuito integrado MC34063 para el convertidor elevador. Este pequeño IC combina todo lo necesario para cualquier tipo de convertidor de conmutación. Sin embargo, en lugar de usar el transistor incorporado del IC, decidí usar un transistor externo, que ayudó a mantener el IC frío y también me permitió tener un consumo de corriente más alto en la salida. Además, debido a que era sorprendentemente difícil encontrar los valores correctos para todos estos componentes para obtener una salida de 170V, me di por vencido después de algunos días de cálculos y pruebas (lo más alto que obtuve de 12V fue 100V) y decidí no reinventar la rueda. En su lugar, compré un kit en eBay, que sigue en gran medida el esquema de esta hoja de datos con algunos ajustes (consulte la figura 2.1. También agregué descripciones a la imagen).

Paso 3: controlar los tubos con un Arduino

Controlando los tubos con un Arduino
Controlando los tubos con un Arduino

Entonces, como vio anteriormente, los tubos requieren un alto voltaje para encenderse. “Entonces, ¿cómo se pueden encender y apagar los tubos con un microcontrolador, como un Arduino?”, Podría preguntar.

Hay algunas rutas alternativas que puede tomar para lograr este objetivo. Por ejemplo, controladores de tubo Nixie dedicados. Todavía puede obtener piezas nuevas y antiguas y circuitos integrados usados, pero pueden ser difíciles de encontrar y pueden ser costosos y no espero que sean más fáciles de encontrar en el futuro, porque ya no se producen.

Así que no usaré un controlador de tubo de Nixie. En su lugar, usaré transistores y decodificadores binarios a decimales, para no tener que usar 10 líneas GPIO por tubo nixie. Con estos decodificadores, necesitaré 4 líneas GPIO por tubo y una línea para seleccionar entre dos tubos.

Además, para no tener que cambiar entre los tubos todo el tiempo con una frecuencia alta, usaré flip-flops (que necesitarán una línea GPIO adicional para reiniciar) para retener la última entrada el tiempo que sea necesario (Consulte la Fig. 3.1, haga clic aquí para ver el circuito de control completo en alta resolución).

Paso 4: consideraciones de diseño

Mientras diseñaba este circuito, encontré decodificadores con R / S-Flip-Flops incorporados, que aún se están produciendo (por ejemplo, el CD4514BM96). Pero, desafortunadamente, no pude obtenerlos rápidamente porque el tiempo de entrega era de dos semanas y no quería esperar tanto. Entonces, si su objetivo es hacer una PCB pequeña (o si desea tener una pequeña cantidad de circuitos integrados diferentes), entonces definitivamente debería optar por un chip de este tipo, en lugar de usar Flip-Flops externos.

También hay variantes invertidas de estos decodificadores. Por ejemplo, el CD4514BM965 es la variante invertida del IC mencionado anteriormente, donde el número seleccionado será bajo en lugar de alto, que no es lo que queremos en este caso. Así que preste atención a este detalle al realizar el pedido de sus piezas. (No se preocupe: ¡se incluirá una lista completa de piezas más adelante en este Instructable!)

Puede usar cualquier tipo de transistor para su matriz, siempre que las clasificaciones coincidan con el voltaje y el consumo de corriente de sus tubos. También hay circuitos integrados de matriz de transistores disponibles, pero de nuevo, no pude encontrar ninguno que tuviera una potencia nominal superior a 100 V o que estuviera disponible rápidamente.

Paso 5: la matriz de transistores

La matriz de transistores
La matriz de transistores

En el paso 3 no mostré la matriz de transistores para mantener los gráficos simples y fácilmente comprensibles. La figura 5.1 muestra la matriz de transistores que falta en detalle.

Como puede ver, cada salida digital del decodificador está conectada a la base de un transistor npn a través de una resistencia limitadora de corriente. Eso es todo, realmente simple.

Solo asegúrese de que los transistores que utilice puedan soportar un voltaje de 170 V y una corriente de 25 mA. Para averiguar cuál debe ser el valor de su resistencia base, use la calculadora vinculada al final de este Instructable en "Más lecturas".

Paso 6: lectura de la temperatura

Leer la temperatura
Leer la temperatura
Leer la temperatura
Leer la temperatura

Es posible que ya haya oído hablar del sensor combinado de temperatura y humedad DHT-11 (o DHT-22) (consulte la figura 6.1). La única diferencia entre este sensor y el DHT-22 es la precisión y el rango de medición. El 22 tiene un rango más alto y mejor precisión, pero para medir la temperatura ambiente, el DHT-11 es más que suficiente y más económico, aunque solo puede ofrecer resultados enteros.

El sensor requiere tres conexiones: VCC, GND y una sola línea para la comunicación en serie. Simplemente conéctelo a la fuente de voltaje y conecte el cable único para la comunicación a un pin GPIO del Arduino. La hoja de datos sugiere agregar una resistencia pull-up entre la línea de comunicación y VCC, de modo que la línea de comunicación esté en un estado alto cuando no se use (consulte la figura 6.2).

Afortunadamente, ya existe una biblioteca para el DHT-11 (y un montón de bibliotecas bien documentadas para el DHT-22), que manejará la comunicación entre el Arduino y el sensor de temperatura. Entonces, una solicitud de prueba para esta parte es bastante corta:

Paso 7: Complete Arduino Sketch

Entonces, después de que se realizaron las lecturas de los sensores, el último paso fue tomar la información de los sensores y mostrar la temperatura con los tubos Nixie.

Para encender un cierto número en un tubo, debe transmitir un código de 4 bits al decodificador, que encenderá el transistor correcto. Además, también necesita transmitir un bit que indique cuál de los dos tubos desea configurar en este momento.

Decidí agregar un R / S-Latch justo en frente de cada entrada del decodificador. Para aquellos de ustedes que no saben cómo funciona uno de estos pestillos, aquí hay una explicación rápida:

Básicamente, te permite almacenar un poco de información. El pestillo se puede configurar y reiniciar (de ahí el nombre R / S-Latch, también conocido como S / R-Latch o R / S-Flip-Flop). Al activar la entrada SET del pestillo, la salida Q se establece en 1. Al activar la entrada RESET, Q se convierte en 0. Si ambas entradas no están activas, el estado anterior de Q se retiene. Si ambas entradas se activan al mismo tiempo, tiene un problema, porque el pestillo se fuerza a un estado inestable, lo que básicamente significa que su comportamiento será impredecible, así que evite este estado a toda costa.

Entonces, para mostrar el número 5 en el primero (el izquierdo) y el número 7 en el segundo tubo Nixie, debe:

  • RESTABLECER todos los pestillos
  • Activar el tubo izquierdo (enviar 0 a través de la línea EN)
  • Configure las entradas del decodificador (D, C, B y A): 0101
  • Establezca D, C, B y A todos en 0, de modo que se mantenga el último estado (no es necesario hacerlo si ambos tubos deben mostrar el mismo número)
  • Activar el tubo correcto
  • Configure las entradas del decodificador (D, C, B y A): 0111
  • Establezca D, C, B y A todos en 0, de modo que se mantenga el último estado

Para apagar los tubos, puede transmitir un valor no válido (como 10 o 15). El decodificador apagará todas las salidas y, por lo tanto, no se activará ninguno de los transistores disponibles y no fluirá corriente a través del tubo Nixie.

Puede descargar el firmware completo aquí

Paso 8: Solicitar la PCB

Pedir el PCB
Pedir el PCB
Pedir el PCB
Pedir el PCB
Pedir el PCB
Pedir el PCB

Quería combinar todo (excepto el circuito de aumento) en una PCB, lo que creo que resultó bastante bien (Ver fig. (8.1).

Uno de mis objetivos principales era mantener el tamaño de la placa de circuito impreso lo más pequeño posible, pero aún así proporcionar algo de espacio, donde podría montarse en la carcasa. También quería usar componentes SMD, para poder mejorar mi técnica de soldadura y también ayudarían a mantener el PCB delgado para que la carcasa personalizada no tenga que ser grande y voluminosa (Ver fig. 8.2).

Debido al uso de componentes SMD, la mayoría de las conexiones tuvieron que realizarse en el lado del componente. Intenté utilizar la menor cantidad de vías posible. La capa inferior realmente solo tiene las líneas GND, VCC y + 170V y algunas conexiones que tuvieron que hacerse entre diferentes pines del mismo IC. Esa es también la razón por la que utilicé los dos circuitos integrados DIP-16 en lugar de sus variantes SMD.

Puede descargar los archivos de diseño de PCB y los esquemas EAGLE aquí.

Debido a que este es un diseño pequeño con tolerancias y trazas muy pequeñas, era importante encontrar un buen fabricante para los PCB para que salieran bien y funcionen correctamente.

Decidí hacer un pedido en PCBWay y no puedo estar más satisfecho con el producto que me enviaron (Ver fig. 8.3).

Puede obtener un presupuesto instantáneo para sus prototipos en línea sin necesidad de registrarse. Si decide hacer un pedido: También tienen este práctico convertidor en línea que convertirá archivos EAGLE al formato gerber correcto. Aunque EAGLE también tiene un convertidor, me gustan mucho los convertidores en línea de los fabricantes, porque de esta manera puedes estar 100% seguro de que no habrá problemas de compatibilidad con la versión gerber.

Paso 9: solución de problemas

Solución de problemas
Solución de problemas

Cuando probé por primera vez mi PCB recién soldado, nada funcionó. Los tubos no mostrarían nada en absoluto (los decodificadores alcanzaron un valor> 9) o los números aleatorios permanecerían encendidos constantemente o parpadearían y se apagarían, lo que se veía bien pero no era deseable en este caso.

Al principio, culpé al software. Así que se me ocurrió este probador Nixie para Arduino (Ver fig. 9.1).

Este script le permite ingresar un número de pin GPIO (0-8) cuyo estado desea cambiar. Luego pregunta por el estado. Al ingresar el pin número 9, los pestillos se restablecen.

Así que continué mi prueba e hice una tabla de verdad con todas las entradas posibles para A, B, C y D. Noté que los números 4, 5, 6 y 7 no se podían mostrar con ninguno de los dos tubos. Además, reaccionarían de manera diferente a la misma combinación de entradas.

Pensé que también debía haber un problema eléctrico. No pude encontrar ningún problema técnico en el diseño, pero luego pensé en algo que había aprendido hace mucho tiempo (pero nunca tuve un problema desde entonces): el flujo puede ser conductor. Es posible que esto no sea un problema para las aplicaciones digitales y de bajo voltaje habituales, pero parece que fue un problema aquí. Así que limpié la tabla con alcohol y luego se comportó correctamente.

Mas o menos. Otra cosa que noté: la parte que usé en EAGLE al crear mi diseño de PCB era incorrecta (al menos para mis tubos). Mis tubos parecen tener un pinout diferente.

Solo algunas cosas a tener en cuenta cuando su circuito no funciona de inmediato.

Paso 10: un estuche personalizado

Un caso personalizado
Un caso personalizado
Un caso personalizado
Un caso personalizado
Un caso personalizado
Un caso personalizado

Después de que todo lo demás estuviera resuelto, quería construir un buen estuche para albergar mi circuito. Afortunadamente, me quedaba mucha madera de mi proyecto de reloj de palabras, que quería usar para construir una cuadrícula en el interior (Ver fig. 10.1).

Construí la carcasa usando las siguientes medidas:

Cantidad Medidas [mm] Descripción
6 40 x 125 x 5 Parte inferior, superior, frontal y posterior
2 40 x 70 x 5 Pequeñas piezas laterales
2 10 x 70 x 10 Piezas estructurales en el interior (Ver fig. 8).
2 10 x 70 x 5 Piezas estructurales en la tapa (Ver fig. 11).

Después de cortar las piezas, las coloqué juntas para crear la caja que se muestra en la fig. 10.2.

La figura 10.3 muestra el caso desde un ángulo diferente.

La parte superior de la caja es exactamente igual que la inferior, solo que sin paredes y con partes estructurales menos altas (ver fig. 10.4). Actúa como una tapa y se puede quitar para reparar los componentes en el interior. La PCB se montará en la tapa con los dos tubos sobresaliendo de la carcasa.

Después de que estuve satisfecho con cómo encajaba todo, simplemente pegué todas las piezas y dejé secar durante algunas horas.

Quizás se esté preguntando cómo fijé la PCB a la tapa cuando no hay tornillos visibles en la parte superior. Simplemente perforé un agujero para el tornillo en la parte estructural de la tapa y luego hice un avellanado para que entrara la cabeza del tornillo (ver fig. 10.5).

Paso 11: Finalización de la compilación

Terminando la construcción
Terminando la construcción
Terminando la construcción
Terminando la construcción

Una vez que se montó la PCB principal en la tapa, todos los demás componentes simplemente tuvieron que colocarse en la caja, como se puede ver en la fig. 11.1.

Como puede ver, intenté organizar los cables lo mejor que pude y creo que resultó bastante bueno. Todo encaja perfectamente en el estuche, como puede ver en la fig. 11.2.

También agregué un DC-Jack al estuche (y me volví un poco loco con el pegamento caliente allí). Pero de esta manera es posible alimentar el termómetro con cualquier cargador de teléfono genérico y un cable apropiado. Sin embargo, también puede agregar una batería de 5V, si lo desea.

Paso 12: Piezas utilizadas en esta compilación

Para la electrónica:

Cantidad Producto Precio Detalles
1 DHT-11 4, 19€ Lo conseguí en una tienda cara. Puede obtenerlos por menos de 1 $ en China.
2 CD4028BM 0, 81€ Descifrador
2 74HCT00D 0, 48€ NAND
1 74HCT04D 0, 29€ Inversor
1 Pinheader 0, 21€ 2x5 pines
1 Terminal de tornillo 0, 35€ 2 conexiones
20 SMBTA42 0, 06€ npn-transistor
20 Resistencia SMD 0, 10€ 120K
2 74LS279N 1, 39€ Chanclas R / S
1 tarjeta de circuito impreso 4, 80€ Ordene aqui
2 IN-14 Nixies 2, 00€
1 Convertidor elevador 6, 79€

También necesitará algún tipo de microcontrolador. Usé un Arduino Pro Micro.

Para el caso:

Cantidad Producto Precio Detalles
N / A. Madera ~2€ Véase más arriba
4 Tornillos M3x16 0, 05€
4 Tuercas M3 0, 07€
1 botella Pegamento de madera 1, 29€
1 lata Pintura para madera 5, 79€

Paso 13: Conclusión

Conclusión
Conclusión
Conclusión
Conclusión

Estoy muy contento con el resultado de esta construcción. Por una vez, logré cortar las piezas de madera con precisión y tampoco me olvidé de los orificios de montaje para la PCB. Y en realidad también luce magnífico (Ver fig. 13.1).

Además de eso, fue interesante trabajar con tubos y altos voltajes en general y hay algunas cosas a considerar al hacerlo.

En conclusión, diría que es bueno, que tenemos formas más convenientes de mostrar los números hoy, pero por otro lado, no hay nada comparable al brillo y la apariencia general de los tubos nixie, que realmente disfruto mirando, especialmente, cuando está oscuro (Ver fig. 13.2).

Espero que les haya gustado este instructivo. Si lo hizo, asegúrese de echar un vistazo a mi sitio web para ver más artículos y proyectos interesantes.

Paso 14: Atribuciones, fuentes y lecturas adicionales

Más lecturas Detalles de la aplicación MC34063 - ti.com Ficha técnica MC4x063 - ti.com IC de controlador de tubo Nixie - tubehobby.com Biblioteca Arduino DHT-11 - Arduino.ccA Transistor como interruptor - petervis.com Teoría de resistencias base, fórmulas y calculadora en línea - petervis.com

Fuentes de imagen [Fig. 1.1] Tubos Nixie IN-14, coldwarcreations.com [Fig. 2.1] Circuito elevador, auto-dibujado pero tomado de ebay.com [Fig. 6.1] sensor de temperatura DHT-11 - tinytronics.nl

Recomendado: