Un módulo de código es un módulo de programa como una biblioteca de enlace dinámico de Microsoft Windows o un VI de LabVIEW que contiene una o más funciones que realizan una prueba específica u otra acción. Puede crear un módulo de código en una variedad de entornos de programación que contienen operaciones de conmutación, que a su vez se pueden llamar desde TestStand.
Figura 1: Inserte un nuevo paso desde la paleta de inserción
Figura 2: Especifique el módulo de código que se ejecutará en la pestaña Step Settings Module
Puede crear módulos de código para controlar los módulos de conmutación de NI utilizando las interfaces de programación de aplicaciones (API) de NI-Switch. En aplicaciones heredadas, la API de NI-DAQmx puede haber sido utilizada para operaciones de conmutación, pero las funciones de conmutación de NI-DAQmx no se recomiendan para nuevos diseños y ya no son compatibles con todos los módulos de conmutación de NI. Para conocer las diferencias entre las dos API, consulte:
Documento de soporte 43CFNUAY: Diferencias entre las APIs de conmutación de NI-SWITCH y NI-DAQmx para aplicaciones de conmutación
Figura 3: API de NI-Switch en LabVIEW
Si está controlando conmutadores de terceros, puede crear módulos de código que contengan llamadas a las funciones del controlador de instrumentos para su conmutador. Consulte la red de controladores de instrumentos en www.ni.com/idnet para obtener más información sobre controladores de instrumentos y para encontrar y descargar controladores de instrumentos compatibles con el software de NI.
Si su módulo de conmutación es compatible con IVI, puede crear módulos de código que contengan llamadas al controlador de clase de conmutación IVI. Todos los módulos NI Switch son compatibles con IVI. Consulte www.ni.com/ivi para obtener más información sobre IVI.
Nota: Debe utilizar el controlador específico del instrumento para llamar a las funciones del controlador que no son compatibles con el controlador de clase de conmutación IVI, cuando el instrumento no cumple con la clase IVI o cuando no existe un controlador IVI para el instrumento.
Además de usar el controlador de clase de conmutación IVI, si el hardware de su conmutador es compatible con IVI, se puede programar utilizando la API de NI Switch Executive. Para obtener más información sobre NI Switch Executive, consulte:
Tutorial de Developer Zone: ¿Qué es NI Switch Executive?
Figura 4: API de Switch Executive
El paso de conmutación IVI, que se muestra a la izquierda, proporciona una capa de programación de alto nivel para instrumentos compatibles con la clase IVI Switch y los dispositivos virtuales NI Switch Executive. Inserte un paso de conmutación IVI desde la paleta de inserción.
Figura 5: Insertar paso de conmutación IVI
Haga clic en el botón Edit Switch en la pestaña Switch del cuadro de diálogo Step Properties.
Figura 6: Seleccione el botón "Edit Switch..." del paso de conmutación IVI.
El tipo de paso de conmutación IVI también tiene los siguientes dos modos diferentes:
El modo que seleccione determina las operaciones disponibles cuando utiliza el tipo de paso de conmutación IVI.
El modo de conmutación IVI permite el uso de controladores de conmutación compatibles con IVI para controlar conmutadores de NI y de terceros. Puede utilizar este modo de conexión y desconexión de rutas, para determinar la conectividad de dos conmutadores o el estado de una ruta, y para consultar el estado del módulo de conmutación o dispositivo virtual. Para obtener más información sobre las operaciones de conmutación IVI compatibles con el tipo de paso de conmutación IVI: Modo de conmutación IVI, consulte:
Ayuda de NI TestStand: Cuadro de diálogo editar paso de conmutación IVI - modo de conmutación IVI
Figura 7: Paso de conmutación IVI: Modo de conmutación IVI
NI Switch Executive es una aplicación inteligente de enrutado y administración de conmutadores basada en IVI. Switch Executive le permite crear un dispositivo virtual Switch Executive preconfigurado que puede contener uno o más módulos de conmutación compatibles con IVI. Además, puede crear alias de canal y configurar rutas de extremo a extremo gráficamente (incluso a través de múltiples conmutadores) en un entorno de apuntar y hacer clic. Para obtener más información sobre las características de NI Switch Executive, consulte:
Tutorial de Developer Zone: ¿Qué es NI Switch Executive?
La compra e instalación del software NI Switch Executive le permite usar el modo Switch Executive del paso de conmutación IVI. Desde el cuadro de diálogo Edit IVI Switch Step, puede seleccionar un dispositivo virtual NI Switch Executive preconfigurado para conectar y desconectar rutas/grupos de rutas creados para su sistema de conmutación. Además, puede especificar si desea que la ruta exista hasta que se desconecte manualmente más tarde o hasta que se complete el paso, la secuencia, el hilo o la ejecución.
Nota: Para obtener más información sobre las operaciones de conmutación IVI compatibles con el tipo de paso de conmutación IVI: Modo Switch Executive, consulte:
Ayuda de NI TestStand: Cuadro de diálogo editar paso de conmutación IVI - Modo Switch Executive
Figura 8: Paso de conmutación IVI: Modo Switch Executive
Además de usar el modo Switch Executive del paso de conmutación IVI, la compra e instalación de NI Switch Executive le permite realizar acciones de conmutación en torno a la ejecución de un paso. Puede configurar las acciones de conmutación en el panel Switching en la pestaña Properties del panel Step Settings.
Figura 9: Inserte un paso desde la paleta de inserción. Switching Panel en la pestaña Properties de Step Settings.
Como se explica en este documento, hay varias opciones disponibles para controlar conmutadores desde TestStand. La siguiente sección describe las ventajas y desventajas de cada una.
1) Módulo de código
Escribir secuencias de prueba que realizan operaciones de conmutación desde módulos de código es el método recomendado para controlar conmutadores desde TestStand. Esta opción es el enfoque más modular, ya que los desarrolladores de pruebas pueden modificar el código que realiza las operaciones de conmutación con un efecto mínimo en el resto de la secuencia de prueba. Usar el controlador específico del instrumento o la API de Switch Executive en los módulos de código brinda acceso a sesiones IVI de bajo nivel, así como a funcionalidad adicional que las otras opciones no exponen. Utilice NI Switch Executive para simplificar y optimizar la configuración y el control de sus conmutadores compatibles con IVI.
Nota: La API de NI Switch Executive requiere la compra e instalación del software NI Switch Executive .
El uso de este método tiene la desventaja potencial de una mayor probabilidad de error del usuario. Los desarrolladores de pruebas deben estar familiarizados con el controlador de instrumentos o la API de NI Switch Executive y asegurarse de implementar la arquitectura adecuada del sistema de pruebas para crear secuencias de pruebas que se puedan mantener y expandir. Por ejemplo, niSE Connect and Disconnect debe usarse para disminuir el tiempo de conmutación y aumentar la vida útil del dispositivo en sistemas de pruebas automatizadas.
Figura 10: Usar niSE Connect and Disconnect para especificar qué rutas/grupos de rutas controlar desde los módulos de código
2) Propiedad de conmutación de pasos
Instalar NI Switch Executive brinda a los desarrolladores de pruebas la capacidad de agregar funcionalidad de conmutación a cualquier paso dentro de una secuencia de TestStand utilizando la propiedad de conmutación de pasos. Una clara ventaja de la propiedad de conmutación es la reutilización del código. Por ejemplo, imagine que tiene una prueba en particular que requiere que se conecten varias rutas. Si realiza esa prueba en varias rutinas de prueba diferentes, simplemente puede crear una plantilla de pasos y reutilizar ese paso en otra secuencia. Todas las propiedades que vienen con el paso (incluyendo el cambio) se incluyen en la plantilla de pasos. Para agregar un paso a la lista de plantillas, simplemente arrastre el paso desde el panel de pasos y suéltelo en la lista de plantillas.
Figura 11: La lista de plantillas es parte del panel de la paleta de inserción. Arrastre y suelte un paso desde el panel de pasos a la lista de plantillas para reutilizar el paso en otra secuencia.
Una posible desventaja de la propiedad de conmutación de pasos es la menor legibilidad de la secuencia de prueba. Al usar la propiedad de conmutación, asegúrese de documentar sus secuencias de TestStand . Al modificar las propiedades de los pasos desde el comportamiento predeterminado, TestStand documentará automáticamente este cambio en el panel de pasos. Por ejemplo, si habilita la conmutación para un paso de acción de LabVIEW, TestStand ingresará Switch en la categoría Settings para el paso en el panel de pasos.
Figura 12: Habilitar conmutación se ha marcado para este paso Action de LabVIEW. Observe que TestStand ha insertado automáticamente Switch en la categoría Settings para el paso Action en el panel de pasos.
También puede documentar sus secuencias utilizando el campo Comment del paso y los pasos Label.
Figura 13: Ingrese comentarios en el campo Comment en el panel general de la pestaña Properties para la configuración del paso.
Figura 14: Documente el paso con un paso Label anterior y los comentarios (aparecen encima del nombre del paso)
El paso de conmutación IVI en el modo Switch Executive tiene una funcionalidad muy similar a la propiedad de conmutación de pasos. Una ventaja que tiene el paso de conmutación IVI sobre la propiedad de conmutación de pasos es la capacidad de encontrar rutas y determinar si el dispositivo virtual se rebota utilizando la operación Get Information.
Figura 15: Obtener información de la operación del paso de conmutación IVI: Modo Switch Executive
Los desarrolladores de pruebas pueden especificar las mismas propiedades de paso disponibles para los otros tipos de pasos integrados (por ejemplo, condiciones previas, ciclos, etc.).
Nota: No puede usar la propiedad de conmutación de pasos con el tipo de paso de conmutación IVI.
Además, el paso de conmutación IVI tiene la ventaja de ser autodocumentado, ya que los usuarios pueden determinar de un vistazo si la secuencia de prueba implica conmutación. Sin embargo, la propiedad de conmutación de pasos generalmente se prefiere a paso de conmutación IVI. Utilice las prácticas de documentación discutidas en la sección anterior para crear secuencias de prueba legibles al usar la propiedad de conmutación de pasos.
La principal desventaja de las opciones de Switch Executive en TestStand (propiedad de conmutación de pasos y paso de conmutación IVI) es que no tiene acceso completo a la API de Switch Executive (como la capacidad de importar/exportar configuraciones de Switch Executive de manera programática y generar reportes XML). Para desarrollar secuencias de pruebas con la máxima personalización y capacidad de expansión, use módulos de código que llamen a la API NI Switch Executive.
El paso de conmutación IVI en el modo IVI Switching brinda acceso a las operaciones básicas compatibles con el controlador de clase de conmutación IVI. Para obtener más información sobre la funcionalidad disponible a través del paso de conmutación IVI en el modo de conmutación IVI, consulte:
Ayuda de NI TestStand: Cuadro de diálogo editar paso de conmutación IVI - modo de conmutación IVI
El modo de conmutación IVI para el paso de conmutación IVI tiene sus desventajas. Si su aplicación emplea múltiples conmutadores, debe usar un paso único para cada módulo de conmutación. Por lo tanto, no puede usar este método para crear rutas completas a través de múltiples conmutadores. También, crear una configuración de conmutación deseada requiere el uso de varios pasos. En general, se prefiere controlar conmutadores desde módulos de código o las opciones de Switch Executive en lugar de usar el paso de conmutación IVI: Modo de conmutación IVI.
Nota: Los controladores del instrumento que crean los tipos de pasos de TestStand IVI no se pueden usar dentro de los módulos de código que se ejecutan usando su respectivo entorno de desarrollo. El identificador subyacente basado en C solo se puede usar dentro del proceso de TestStand. Si su secuencia de pruebas incluye módulos de código que invocan la clase IVI y VIs o funciones específicos del controlador, NI no recomienda usar los tipos de pasos TestStand IVI al mismo tiempo.