Un reloj voltímetro mejor
(lcamtuf.substack.com)- El nuevo reloj voltímetro muestra horas, minutos y segundos con 3 voltímetros analógicos de panel, y está documentado de una forma más simple y agradable a la vista que los diseños previos en internet
- Se desmontó un medidor de panel Baomain 65C5 de 5V para medir las dimensiones frontales, y se imprimió una carátula alternativa en papel adhesivo para convertirlo en una visualización de reloj
- La aguja de las horas está dividida en 13 segmentos de 0 a 12, y las de minutos y segundos en 61 segmentos de 00 a 60, de modo que las agujas se mueven continuamente entre los números
- El gabinete se mecanizó en arce con una fresadora CNC, y las paredes laterales redondeadas se curvaron con muescas internas, humedad y abrazaderas para crear una forma sin uniones visibles
- El circuito es simple, con un AVR128DB28, un cristal, 2 botones y 3 pines digitales, y maneja los medidores con el ciclo de trabajo de un tren de pulsos de 1 bit sin DAC
Diseño y fabricación
- El primer reloj voltímetro, hecho en 2019, mostraba la hora con voltímetros analógicos de panel en lugar de una carátula tradicional; esta nueva versión se construyó con el objetivo de ser más simple y más estética que los diseños existentes en internet
- El nuevo diseño comenzó con una maqueta preliminar en Rhino3D y usa 3 voltímetros de panel genéricos de 90° comprados en Amazon
- El medidor de panel Baomain 65C5 de 5V es una pieza de unos $9; tras desmontarlo, se midieron las dimensiones frontales y se personalizó imprimiendo una carátula alternativa en papel adhesivo
- La plantilla PDF imprimible está disponible como meter_clock2.pdf
- El indicador de horas está compuesto por 13 segmentos de 0 a 12, mientras que los indicadores de minutos y segundos usan 61 segmentos de 00 a 60
- Esta elección permite que cada aguja se mueva de manera continua, sin saltos
- Por ejemplo, a las 11:30 la aguja horaria no debe quedarse fija en 11, sino avanzar hacia el segmento 12
- Para ocultar el reborde plástico de los medidores Baomain 65C5 de bajo costo y evitar que el panel frontal se viera monótono, se aplicó un patrón decorativo hundido
- En vez de fabricar el gabinete a mano como en la primera versión, el frente y la parte trasera se mecanizaron con una fresadora CNC
- El material fue madera de arce reacondicionada en el taller, escuadrada y cepillada
- Las paredes laterales redondeadas se fabricaron curvando una pieza plana de madera sobre una plantilla de forma para lograr una apariencia sin uniones
- Para evitar usar un jig de doblado a vapor, se cortaron varias muescas internas en la cara interior de la pared lateral para que la madera se curvara con más facilidad
- La madera se humedeció, se sujetó con abrazaderas y se dejó secar; unos días después, las paredes laterales curvadas se pegaron al frente y a la parte trasera
- Para un ajuste preciso, se usó una plantilla exterior hecha de contrachapado de descarte, evitando tener que lidiar otra vez con abrazaderas y correas de carraca de forma complicada
- El cuerpo ensamblado se lijó y luego se recubrió con laca de nitrocelulosa, completando así el estado de montaje inicial
Circuito y funcionamiento
- El circuito es una configuración sencilla que tomó alrededor de una hora, usa un MCU AVR128DB28 y se alimenta con un adaptador de pared
- El MCU está conectado a un cristal de 8MHz ECS-80-18-4X-CKM, aunque también se puede usar un cristal de 32.768kHz
- Los tres medidores de panel están conectados a los pines de salida digital PC0, PC1, PC2
- Dos pequeños pulsadores en la parte trasera están conectados a los pines de entrada PD6, PD7 y se usan para ajustar la hora
- Para manejar los medidores no se necesita DAC ni componentes adicionales
- Se usa un tren de pulsos digitales de 1 bit de frecuencia relativamente alta
- La inercia del medidor y la inductancia de la bobina interna se encargan del resto, estabilizándolo en posiciones intermedias según el ciclo de trabajo controlado por software
- El código puede verse en meter_clock2.c y es corto y está bien comentado
- La clave del funcionamiento es un temporizador con interrupciones sincronizado con el cristal que incrementa un contador de 10Hz
- Después, el bucle principal de eventos calcula el ciclo de trabajo adecuado y conmuta manualmente los pines de salida
- El chip tiene módulos de PWM por hardware, pero como la aplicación es simple, usar el circuito PWM no aporta una ventaja real
- Un video del rollover grabado cerca de las 11:59:59 está disponible como Video 3
1 comentarios
Comentarios de Hacker News
Alrededor de 2014 vi un reloj con voltímetros basado en Arduino hecho por alguien; creo que probablemente era este: https://maniacallabs.com/2014/07/08/meter-clock-pt1/
Me pareció bastante genial, pero era un poco caro para lo que era
Así que hice uno yo mismo con un chip PIC: https://www.n1kdo.com/meter-clock/index.html
El mío es menos un reloj preciso y más un adorno curioso para el escritorio que sirve para iniciar conversaciones
Este tipo de proyectos siempre son divertidos. Son artísticamente geniales y me gusta que te hagan imaginar todo tipo de ideas
También es una forma de hacer que varias partes del cerebro trabajen al mismo tiempo
Curiosamente, yo también estaba jugando con medidores de panel
Ahora mismo estoy terminando una computadora analógica, y como quería convertir valores analógicos a digital para mostrarlos en una LCD, le conecté un ADC. Usé una placa de desarrollo ESP32, y resultó más flexible que un medidor de panel y más barata que un osciloscopio
Pero ver un medidor de panel “simulado” me parecía que desvirtuaba un poco la idea de una computadora analógica, así que hice una pequeña PCB para conectarla desde mi computadora analógica a medidores de panel reales como los que se usan en este reloj
Al correr una simulación de resorte+misa en la computadora analógica y ver al mismo tiempo moverse la representación del medidor de panel en la LCD/ESP32 y el medidor de panel real, todo terminó de hacer clic
¡Está buenísimo! Los circuitos electrónicos probablemente podría hacerlos sin problema, pero para proyectos así hacen falta herramientas de carpintería y no tengo espacio para ellas en mi pequeño departamento tipo estudio
Además, sospecho que a mi esposa no le gustaría que comprara esas herramientas, y ese ya es otro problema
En el peor de los casos, quizá tengas que aprender FreeCAD y comprar un collet ($10~$50) y fresas (unas dos por alrededor de $50~$75). Con suerte, puede que ya tengan el software y las herramientas que necesitas
Lo digo por experiencia haciendo muebles profesionalmente, habiendo trabajado en un makerspace y habiendo hecho con su Shopbot proyectos de complejidad similar
Además, si omites el rebaje alrededor de los medidores en el panel frontal, se puede hacer con CNC de una sola cara y se vuelve mucho más fácil. Si trabajas con cuidado, incluso podría hacerse con un router manual y una fresa para rebajes
Hace poco Princess Auto vendía estos medidores excedentes a precios ridículamente bajos, así que hice uno. Costaban poco más de 1 dólar cada uno, así que compré varios
El mío no es tan bonito como este, pero como forma de mostrar la hora está realmente bueno y a la gente le parece curiosamente llamativo cuando lo ve
¡Está bueno! Solo haría falta un pequeño ajuste para evitar el overshoot y rebote al pasar de un valor alto a uno bajo
Como dijo otra persona, el overshoot puede verse bien, pero me preocupa que un voltímetro de panel barato no vaya a soportar muchísimos golpes así
;-)
¡Genial! Aun así, esperaba que hubiera al menos uno o dos amplificadores operacionales en el circuito ;)
Idea al azar:
usar voltaje para las horas y corriente para los minutos,
y que el resultado haga funcionar un foco arcoíris
Acabo de enterarme de que en inglés se usa más ammeter que ‘amperemeter’, pero como no me parece tan intuitivo, a mí me gusta más ‘amperemeter’
Me gusta la idea de manejar un dispositivo analógico como este con una salida digital. Fue inteligente usar PWM
¡La construcción en sí está excelente! Esto ya es un bloqueo totalmente personal, pero la forma en que se reinicia el segundero me resultaría infinitamente irritante :/