Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial Internet of Things >> Incrustado

Cuando la vida no proporciona una interfaz de depuración, parpadea un LED RGB

Sí, lo sé; si queremos crear productos de buena calidad, necesitamos las herramientas adecuadas, incluidos los puertos de depuración adecuados, pero la vida, como saben, a veces se vuelve desagradable.

Recientemente, en mi carrera como autónomo, descubrí que dos de mis clientes no habían podido agregar ningún tipo de depuración textual a sus productos. En una ocasión, los ingenieros de diseño de hardware simplemente se olvidaron de agregar un canal de este tipo, y solo se dieron cuenta de su error después de haberse comprometido con un gran stock de placas. En otro ejemplo, el producto estaba tan miniaturizado que no había espacio. Afortunadamente, en ambos casos había un LED RGB (tricolor) disponible para que lo usara como ayuda para la depuración. Sobre la base de que a veces cuando te dan limones lo único que puedes hacer es hacer limonada, terminé usando el LED RGB para implementar un sistema de mensajería intermitente.

A partir de esta experiencia, me sorprendió descubrir que la depuración basada en LED RGB puede ser extremadamente práctica e inesperadamente rica en funciones, siempre que se emplee un esquema de modulación amigable para los humanos.

La forma en que se modularon mis mensajes fue seleccionando diferentes colores para representar el contexto del código y eligiendo un conteo de parpadeos y un estilo para representar un mensaje específico en ese contexto. Los parpadeos se ponen en cola y se muestran secuencialmente en el LED, de manera similar a la forma en que un canal de registro textual básico manejaría los mensajes de texto cortos.

El módulo de depuración de LED tenía cuatro tipos de ritmos de parpadeo implementados usando las siguientes funciones:

Cada una de estas funciones creará un proceso de parpadeo único. Los parpadeos normales están activos durante un segundo separados por intervalos de medio segundo, mientras que los parpadeos amplios están activos durante dos segundos separados por intervalos de medio segundo. Los mensajes de error se indican con el color rojo seguido de parpadeos de color de contexto como se ilustra en la Figura 1.


Diagramas de tiempo de parpadeo para las cuatro funciones estándar y de depuración de errores
(Haga clic aquí para ver una imagen más grande. Fuente:Felipe Lavratti)

Tenga en cuenta que las áreas amarillas en la Figura 1 se utilizan para indicar el contexto seleccionado. Si decidimos simplemente encender o apagar los LED RGB, entonces las áreas amarillas en la Figura 1 podrían ser verde, azul, amarillo, cian, magenta o blanco; es decir, cualquier color disponible al encender o apagar los LED RGB, excepto el negro (todo apagado) y el rojo (utilizado para indicar una condición de error). Si decidimos utilizar la modulación de ancho de pulso (PWM), podemos lograr una gama de colores más amplia. Sin embargo, los LED RGB baratos no son excelentes cuando se trata de mezclar colores, por lo que puede ser difícil distinguir ciertas combinaciones, mientras que otras, como el naranja, parecen funcionar razonablemente bien.

Los períodos de parpadeo y la metodología se eligieron cuidadosamente para facilitar la legibilidad humana, lo que resultó ser suficiente para los ingenieros durante la fase de desarrollo y también para el técnico de campo durante las pruebas, siempre que se evitara la mensajería excesiva a través del LED.

La depuración con un LED no es ideal, pero en los sistemas en los que estaba trabajando ayudó a acelerar el desarrollo y las pruebas en el campo al proporcionar una forma rápida de observar el estado del sistema sin ningún tipo de aparato conectado a los productos. Se requirió un poco de entrenamiento para que el equipo se acostumbrara al significado de cada contexto de color y ritmo de parpadeo, pero no tomó mucho tiempo aprender. Lo más importante era que cada uno distinguía entre mensajes informativos y mensajes de error, y nuestro esquema proporcionaba información suficiente para permitirnos determinar rápidamente qué parte del código había fallado.

Creo que este es un ejemplo en el que un pequeño esfuerzo para ajustar el sistema a las capacidades de los humanos que lo utilizan transformó una interfaz de depuración potencialmente difícil de usar en una sorprendentemente efectiva.

Felipe Lavratti ha desarrollado dispositivos conectados a Internet para la automatización del hogar, ha creado aplicaciones y controladores Linux integrados para máquinas portátiles de punto de venta, e implementado algoritmos matemáticos integrados para el control de procesos y registradores de datos para las aplicaciones industriales. Al principio de su carrera, Felipe se dio cuenta de la importancia de la calidad, por lo que adopta todas las técnicas modernas necesarias para dar vida a productos robustos; cada parte del proceso de desarrollo se gestiona para garantizar la calidad:codificación, pruebas, aceptación, implementación, integración e implementación. Actualmente, Felipe trabaja como consultor y desarrollador autónomo. Puede ser contactado en


Incrustado

  1. Cuándo se usó por primera vez el tungsteno en bombillas
  2. Tipos de colores en la industria de tintes Difundir el tono en la vida cotidiana
  3. Filosofía y documentación
  4. Cuando un DSP supera a un acelerador de hardware
  5. Viaje por carretera a Voltera
  6. Cuando la vida no proporciona una interfaz de depuración, parpadea un LED RGB
  7. Los controladores LED compactos de Maxim brindan alta eficiencia y baja EMI
  8. Adiós Sir Clive Sinclair
  9. ¿Cuándo una puerta de garaje no abre una gran crisis?
  10. 4 señales clave de que su motor está llegando al final de su vida útil
  11. ¿Cuándo se inventó el torno para trabajar metales?