Académico Empresa Eventos Community Soporte Soluciones Productos y Servicios Comuníquese con NI MyNI

Manejar Errores en NI LabVIEW


No importa qué tanto confía en el VI que creó, no puede predecir cada problema que un usuario puede encontrar. Sin un mecanismo que verifica errores, solamente usted sabe que el VI no funciona adecuadamente. La detección de errores le dice por qué y donde ocurren los errores.

Cada error tiene un código numérico y un mensaje de error correspondiente.

LabVIEW maneja automáticamente, de forma pre determinada, cualquier error cuando se ejecuta un VI al suspender la ejecución, identificando el subVI o función donde ocurrió el error y mostrando una ventana de diálogo de error.

Para deshabilitar el manejo automático de errores para el VI actual, seleccione File»VI Properties y seleccione Execution en el menú de acceso directo Category. Para deshabilitar el manejo de errores automático para cualquier VI en blanco que usted crea, seleccione Tools»Options y seleccione Block Diagram en la lista Category. Para deshabilitar el manejo automático de errores para un subVI o función en un VI, cablee su parámetro error out al parámetro error in para otro subVI o función o a un indicador error out.

Puede escoger otros métodos de manejo de errores. Por ejemplo, si un VI de E/S en el diagrama de bloques se multiplica, usted no querrá que la aplicación completa se detenga y muestre una ventana de diálogo de error. También puede querer que el VI intente nuevamente en un cierto periodo de tiempo. En LabVIEW, puede realizar estas decisiones de manejo de error en el diagrama de bloques del VI.

Use los VIs del manejo de errores de LabVIEW y las funciones en la paleta Dialog & User Interface y los parámetros error in y error out de la mayoría de los VIs y las funciones para manejar errores. Por ejemplo, si LabVIEW encuentra un error, puede mostrar el mensaje de error en diferentes tipos de ventanas de diálogo. Utilice el manejo de errores con las herramientas de depuración para encontrar y manejar errores.

Cuando realice cualquier tipo de entrada y salida E/S, considere la posibilidad de que pueden ocurrir errores. Casi todas las funciones de E/S regresan información de error. Incluyendo la verificación de errores en los VIs, especialmente para operaciones de E/S (archivo, serial, instrumentación, adquisición de datos y comunicación) y proporciona un mecanismo para manejar errores apropiadamente.

Use los VIs del manejo de errores de LabVIEW, funciones y parámetros para manejar errores. Por ejemplo, si LabVIEW encuentra un error, puede mostrar el mensaje de error en una ventana de diálogo. O puede arreglar el error de forma programática y después borrar el error al cablear la salida error out del subVI o función a la entrada error in del VI Borrar Errores. Utilice el manejo de errores con las herramientas de depuración para encontrar y manejar errores.

El manejo de error en LabVIEW sigue el modelo del flujo de datos. De la misma manera que los valores de datos fluyen a través de un VI, también pueden fluir los errores. Cablee la información del error desde el inicio del VI hasta el final. Incluya un VI para manejo de error, como el Simple Error Handler VI, al final del VI para determinar si el VI se ejecutó sin errores. Use los clusters error in y error out en cada VI que utilice o construya para pasar la información del error a través del VI.

Conforme el VI se ejecuta, LabVIEW hace pruebas para errores en cada nodo de ejecución. Si LabVIEW no encuentra ningún error, el nodo se ejecuta normalmente. Si LabVIEW detecta un error, el nodo pasa el error al siguiente nodo sin ejecutar la parte del código. El siguiente código hace lo mismo y así sucesivamente. Al final del flujo de ejecución, LabVIEW reporta el error.

Use los controles e indicadores del cluster de error para crear entradas y salidas de error en los subVIs.

Los clusters error in y error out incluyen los siguientes componentes de información:

  • status es un valor Booleano que reporta TRUE si ocurre un error.
  • code es un entero firmado de 32 bits que identifica el error de forma numérica. Un código de error no igual a cero unido a un estatus FALSE emite una advertencia más que un error.
  • source es una cadena de caracteres que identifica donde ocurrió el error.

Cuando ocurre un error, haga clic con botón derecho en la orilla del cluster y seleccione Explain Error en el menú de acceso directo para abrir la ventana de diálogo de Explain Error. La ventana de diálogo de Explain Error contiene información sobre el error. El menú de acceso directo incluye una opción de Explicar Advertencia si el VI contiene advertencias pero no errores.

Usted también puede tener acceso a la ventana de diálogo Explain Error en el menú Help»Explain Error.

Puede cablear un cluster de error a la terminal condicional de un Ciclo While o un Ciclo For con una terminal condicional para detener la iteración del ciclo. Si cablea el cluster de error a la terminal condicional, solamente el valor TRUE o FALSE del parámetro de estatus del cluster de error pasa a la terminal. Si ocurre un error, el ciclo se detiene. En un Ciclo For con una terminal condicional, también debe cablear un valor a la terminal de conteo o auto-index un arreglo de entrada para establecer un número máximo de iteraciones. El Ciclo For se ejecuta hasta que ocurre un error o hasta que se completa el número de iteraciones establecido.

Si cablea un cluster de error a la terminal condicional, el menú muestra Stop if True y Continue if True cambia a Stop on Error y Continue while Error.

En la Figura 1, el cluster de error y un botón stop son usados juntos para determinar cuándo detener al ciclo. Este es el método recomendado para detener la mayoría de los ciclos mientras el ciclo se detiene cuando usted lo pide, o cuando algo anda mal (y se produce un error), cualquiera que suceda primero.

Figura 1. Detener un Ciclo While