Un gran desafío al que se enfrentan las compañías hoy en día es el aumento del costo de las pruebas. A medida que incrementa la complejidad de los dispositivos, también incrementa el costo de las pruebas de estos dispositivos. Si bien las pruebas siguen siendo fundamentales para la calidad de los productos, el costo de las pruebas no se ha mantenido a la altura de costo más bajo de fabricación, ya que los dispositivos electrónicos más complejos requieren instrumentación más nueva y avanzada.
A los ingenieros de pruebas se les presentan las siguientes realidades del entorno de desarrollo de productos:
Para enfrentar los desafíos de ciclos de desarrollo más cortos, carteras de productos más grandes, presupuestos reducidos y productos exponencialmente más complejos, los ingenieros de pruebas se ven obligados a abandonar los sistemas de pruebas monolíticos, específicos de la aplicación y listos para usar. Debido a la inflexibilidad de estos sistemas para adaptarse y agregar funcionalidad para probar productos más nuevos y complejos, las soluciones tradicionales como los instrumentos y apilamiento o los sistemas patentados de equipos de pruebas automatizadas (ATE) "big iron" ya no son una forma eficiente de mantenerse al día con los actuales y exigentes mercados.
En respuesta a estas demandas, los gerentes e ingenieros de pruebas están cambiando a una arquitectura de pruebas modular definida por software basada en estándares de la industria que puede proporcionar:
Diseñar sistemas de pruebas modulares y eficientes requiere una arquitectura que separa los diferentes componentes del sistema de prueba (Figura 1), principalmente la instrumentación desde el código de prueba y el código de prueba del framework de gestión de prueba general. Esta separación modular de diferentes componentes del sistema de pruebas junto con la capacidad de definir la funcionalidad en el software son clave para desarrollar sistemas de pruebas flexibles de forma más rápida y rentable.
Figura 1: Arquitectura del sistema de pruebas
Un sistema de prueba automatizado requiere la implementación de varias tareas y medidas, algunas específicas para el dispositivo bajo prueba (DUT) y otras repetidas para cada dispositivo probado. Los sistemas de prueba tradicionales por lo general combinan ambos tipos de operaciones en la misma capa de software. Este paradigma hace que los cambios de código en cualquiera de las partes y la reutilización del código entre proyectos sean tediosos.
Una arquitectura de sistema de pruebas modular establece una clara separación entre las tareas a nivel del sistema que son comunes para todos los dispositivos (software de administración de pruebas) y las tareas a nivel del DUT que son diferentes para cada dispositivo probado (código de prueba). Consulte la Tabla 1 para ver ejemplos de diferentes tareas a nivel de DUT y a nivel del sistema. Esta separación le permite reutilizar, mantener y modificar rápidamente los componentes del software de administración de pruebas sin afectar el código de prueba real y viceversa.
Operaciones diferentes para cada dispositivo | Operaciones comunes para cada dispositivo |
Configuración del instrumento | Interfaces del operador |
Medidas | Administración de usuarios |
Adquisición de datos | Rastreo de DUT |
Análisis de resultados | Control del flujo de la prueba |
Calibración | Almacenar resultados |
Módulos de prueba | Reportes de prueba |
Tabla 1: Comparación de tareas del software de administración de pruebas con tareas del software de desarrollo de pruebas
TestStand es el poderoso software de administración de pruebas de NI, listo para ejecutar, diseñado para desarrollar, implementar y ejecutar el software de sistema de prueba (Figura 2). En esencia, TestStand es un ejecutivo de pruebas que le permite secuenciar llamadas para probar código escrito en prácticamente cualquier lenguaje de programación. Además, desde el primer momento, TestStand proporciona una funcionalidad de software de administración de pruebas común, como:
Además, TestStand está construido sobre una arquitectura de software modular, que le permite usar de inmediato cada uno de estos componentes o personalizarlos para cumplir con los requisitos únicos del sistema.
Figura 2: Editor de secuencias de TestStand
Algunas empresas han escrito a sus propios ejecutivos de pruebas y han gastado valiosos recursos de ingeniería para desarrollar desde cero software de administración de pruebas. Esta estrategia por lo general resulta en una reducción de productividad y, con el tiempo, inmoviliza recursos para el mantenimiento del software. En su lugar, al utilizar software de administración de pruebas disponible comercialmente, como TestStand, puede maximizar la productividad reduciendo el desarrollo de funciones que son comunes para cada dispositivo y permite centrar sus esfuerzos de desarrollo en el código de pruebas, las operaciones que son diferentes para cada dispositivo. Vea el software de administración de pruebas TestStand en acción para obtener más información.
TestStand puede llamar a código de pruebas escrito en prácticamente cualquier entorno o lenguaje de programación, incluyendo LabVIEW, LabWindows™/CVI, C/C++ y .NET e incluso lenguajes de escritura. Sin embargo, la mayoría de los lenguajes de programación de uso general no están optimizados para aplicaciones de pruebas y medidas, lo que dificulta escribir código para comunicarse con instrumentos, analizar datos y mostrar esos datos en un formato significativo para los ingenieros.
Además de reducir el tiempo de desarrollo de pruebas a través de un entorno intuitivo de programación gráfica, LabVIEW mejora su productividad al proporcionar:
NI también ofrece herramientas para desarrollar código de pruebas en lenguajes más tradicionales basados en texto. LabWindows/CVI es un entorno de desarrollo ANSI C y Measurement Studio es un complemento de Visual Studio, que agrega funciones de análisis y control de interfaz de usuario específicas de pruebas y medidas para ANSI C, .NET y Microsoft Visual C++.
Al elegir un lenguaje de programación que esté optimizado para aplicaciones de pruebas y medidas, puede mejorar drásticamente su ROI reduciendo el tiempo y el esfuerzo necesarios para desarrollar el código de pruebas. Para aprender más, consulte la nota técnica sobre cómo elegir el entorno de desarrollo de aplicaciones de software adecuado.
La mayor complejidad de los dispositivos, los ciclos de desarrollo más cortos y los presupuestos reducidos brindan una oportunidad para que los equipos de ingeniería reevalúen sus estrategias actuales de pruebas automatizadas y busquen áreas para aumentar la eficiencia y reducir los costos. Al diseñar sistemas de pruebas de la próxima generación, es importante incorporar estrategias que aumenten la flexibilidad y escalabilidad del sistema, brinden un mayor rendimiento, reduzcan el costo del sistema de pruebas y amplíen la longevidad.
Los sistemas modulares de pruebas automatizadas definidos por software superan las deficiencias de las soluciones anteriores y basadas en instrumentación autónoma o sistemas ATE patentados con costos prohibitivos. Al separar los diferentes componentes del sistema de pruebas y poder definir el comportamiento en el software, los ingenieros pueden usar estos sistemas de prueba para proporcionar soluciones flexibles, escalables y de menor costo que se adapten mejor a los desafíos actuales. Se ha comprobado que las arquitecturas de software de pruebas modular, construidas con el software de administración de pruebas NI TestStand y el lenguaje de programación gráfica LabVIEW optimizan y reducen el costo de los sistemas de pruebas para aplicaciones que van desde los últimos teléfonos inteligentes y televisores 3D hasta la próxima generación de sistemas de defensa de misión crítica y dispositivos médicos.
The mark LabWindows is used under a license from Microsoft Corporation. Windows is a registered trademark of Microsoft Corporation in the United States and other countries.