Solución de problemas de fallas de LabVIEW

Actualizado el Jul 16, 2021

Reportado en

Software

  • LabVIEW

Detalles del problema

  • Mientras navegaba por el entorno de desarrollo de LabVIEW, LabVIEW falló y mostró el siguiente error: LabVIEW 20xx encontró un problema y necesita cerrarse. Puede ayudarnos a diagnosticar y solucionar este problema enviando este informe directamente a National Instruments.
  • LabVIEW falla sin indicar el error cuando cierro un VI que he escrito.

Solución

Pasos iniciales para la resolución de problemas de fallos y errores internos de LabVIEW:

  1. Envíe el informe de fallas a NI a través del cuadro de diálogo LabVIEW Crash Reporter. Agregue cualquier información relevante que ayude a NI a diagnosticar el incidente.
  2. Determina si puedes reproducir el bloqueo de forma coherente. Esto facilitará el diagnóstico de la fuente del incidente. Si puede reproducir el bloqueo, intente buscar en Documentos de soporte y en la comunidad de NI para detectar bloqueos similares. Incluya el código hexadecimal y lo que está haciendo cuando ocurre el bloqueo.
  3. Instale el último parche de LabVIEW(en inglés) .
  4. Consulte la lista de problemas conocidos de LabVIEW(en inglés) para su versión de LabVIEW.

Más pasos para solucionar problemas:

  • Intente delimitar la fuente de la advertencia. Reduzca el código y la cantidad de hardware utilizado para crear el caso más pequeño que reproduzca el bloqueo. Si puede eliminar las partes que no están relacionadas con el bloqueo, es más probable que encuentre la causa principal de este bloqueo específico. Consulte los siguientes pasos de solución de problemas para ayudarse a hacer esto:
    • Si el bloqueo ocurre con un ejecutable, verifique si ocurre el mismo comportamiento al ejecutar el VI desde el entorno de desarrollo de LabVIEW. Hacer esto puede indicar un problema con Run-Time Engine.
    • Intente usar una Diagram Disable Structure (en inglés) para deshabilitar partes de su código. Esto puede ayudar a reducir en qué parte de su código está ocurriendo el bloqueo.
    • Intente quitar todo el hardware. Si aún ve el bloqueo, puede continuar con la solución de problemas del software. Si quitar el hardware soluciona el bloqueo, entonces puede limitar la causa al hardware. Intente utilizar un tipo de hardware diferente para ver si el bloqueo es específico del tipo de hardware.
    • Compruebe si observa el mismo comportamiento en una computadora diferente. El incidente podría tener algo que ver con el entorno de la computadora.
    • Monitoreé el uso de la memoria para comprobar si hay pérdidas.
  • Utilice WinDbg para solucionar el problema (en inglés) . Si el bloqueo es reproducible, conecte esta herramienta al proceso de LabVIEW y haga que el bloqueo vuelva a ocurrir. Esta herramienta puede brindarle una visión más profunda del origen del incidente.
  • Si está utilizando hardware, asegúrese de cerrar todas las referencias de memoria. Cualquier uso indebido de las referencias podría provocar una pérdida de memoria.
  • Asegúrese de que todos los clústeres de errores estén conectados y supervisados. Es posible que se haya producido un error antes del que no se haya dado cuenta. Los números de error están ahí para especificar qué salió mal y se pueden buscar en el cuadro de diálogo Explain error ( help »Explain error ... ) para encontrar una explicación sobre el error.
  • Si está utilizando .NET framework o DLL, intente eliminarlos para ver si el bloqueo aún ocurre. La DLL podría ser el lugar donde está ocurriendo el bloqueo .
  • Si el bloqueo ocurre consistentemente con un solo VI, intente copiar todo el contenido de su diagrama de bloques a un nuevo VI. A veces, esto puede eliminar las corrupciones que pueden causar bloqueos.
  • Compile masivamente sus VIs (Mass compile) . Si actualizó LabVIEW desde una versión anterior, es posible que tenga algunos VIs más antiguos que no fueron actualizados.
  • El bloqueo también podría estar ocurriendo debido a un error de Insane Object o fsane.cpp(en inglés) en su código.
  • Mire el LabVIEW Error Log o el Real-Time Error Log si se trata de un sistema en tiempo real.
  • Si se produce un bloqueo en un ejecutable, asegúrese de que todos los controladores necesarios estén instalados en la máquina de implementación.
  • Implemente su propio login (en inglés) para obtener más información sobre dónde puede estar ocurriendo el bloqueo.
  • Apague el firewall e intente ejecutar su proyecto. Algunos programas antivirus, como SentielOne, contienen dlls que hacen que LabVIEW falle.
  • Asegúrese de no exceder el tamaño máximo del block diagram o el front panel (en inglés).
  • Use LabVIEW Desktop Execution Trace Toolkit , para realizar depuración avanzada usando análisis de código dinámico.

Pasos adicionales para la solución de problemas:

Si se puede determinar la causa principal del bloqueo, el siguiente paso es encontrar una solución alternativa o reproducir el bloqueo en la escala más pequeña posible. Si es un error de LabVIEW, entonces se puede presentar una Solicitud de Acción Correctiva (CAR, por sus siglas en inglés) comunicándose con el Soporte Técnico de National Instruments . Adjunte un VI de ejemplo que demuestre el bloqueo, así como cualquier archivo complementario obtenido de los pasos anteriores. Esto ayudará a nuestros ingenieros de soporte técnico a replicar y comprender mejor el problema.

Es posible que el problema esté relacionado con una corrupción del software o incluso del sistema operativo. Si ha intentado los pasos de solución de problemas mencionados anteriormente y no pudo resolver esto, es posible que deba considerar volver a crear una imagen de la computadora.

Información adicional

¿Qué es un error interno de LabVIEW?

Un error interno de LabVIEW es una indicación de que ha ocurrido algo incorrecto o inesperado dentro de LabVIEW. Dependiendo del nivel de severidad, puede recibir un diálogo de error inmediatamente o posiblemente más tarde, cuando salga o reinicie LabVIEW. Los tres niveles de gravedad son DAbort , DWarn y DWarnInternal .
  • Un DAbort es irrecuperable y LabVIEW se cierra inmediatamente. Esto evita posibles daños adicionales y verá un LabVIEW Crash Report dialog box similar al anterior.
  • DWarn y DWarnInternal son errores recuperables y no harán que LabVIEW se cierre, pero aún son inesperados y deben informarse. Es posible que vea un cuadro de diálogo Informe de advertencia interno al salir de LabVIEW, dependiendo de su configuración de LabVIEW.