FB_GetDiagnosticData: descripción funcional
Tipo: |
Bloque de funciones |
Disponible desde: |
V1.0.0.0 |
El bloque de funciones FB_GetDiagnosticData se utiliza para proporcionar el diagnóstico específico del sistema de una aplicación de M262.
Se admiten las funciones siguientes:
oRecuperación de los mensajes de registro enviados por el componente MotionKernel del controlador al registro predeterminado del controlador.
oRecuperación de la información de diagnóstico proporcionada por el controlador.
oCreación de un archivo con los mensajes de diagnóstico recuperados.
oLimpieza de la tabla de datos.
Solo se permite una instancia del bloque de funciones en una aplicación. Si existe más de una instancia, las instancias inicializadas más tarde indican el resultado AnotherInstanceOfFbExistsInApp en q_etResult.
Recuperación de mensajes de registro de MotionKernel
En cuanto se crea una instancia del bloque de funciones en la aplicación, la recuperación de los mensajes de registro de MotionKernel está en curso. Cada mensaje que envía el componente MotionKernel al registro predeterminado del controlador se detecta y almacena en la tabla de datos GVL.G_astDiagTable. El origen de estos mensajes se especifica como MotionKernel.
Los mensajes de registro de MotionKernel se recuperan y almacenan en GVL.G_astDiagTable, aunque no se llame al bloque de funciones en la aplicación.
Recuperación de información de diagnóstico del sistema del controlador
Al ejecutar el bloque de funciones con el comando GetDiagData se inicia un diagnóstico del sistema del controlador. Los mensajes de diagnóstico recopilados se almacenan en la tabla de datos GVL.G_astDiagTable. El origen de estos mensajes se especifica como FbGetDiag. En cada ejecución, los mensajes de diagnóstico existentes cuyo origen es FbGetDiag se eliminan de la tabla de datos. La marca de hora de los mensajes de diagnóstico nuevos se establece en la fecha en la que se ejecuta el bloque de funciones.
Creación del archivo de mensajes de diagnóstico en el controlador
La ejecución del bloque de funciones con el comando CreateFileFromDiagTable se utiliza para crear un archivo en el sistema de archivos del controlador.
La ruta del archivo creado en el controlador es usr/Syslog/M262Diagnostic.txt.
El archivo contiene los mensajes de diagnóstico de la tabla de datos GVL.G_astDiagTable. Las columnas se separan con comas.
Los mensajes de diagnóstico se escriben en la tabla de datos GVL.G_astDiagTable, a la que se puede acceder con la aplicación para realizar más análisis.
El mensaje más reciente se proporciona en el índice más bajo de la matriz.
Si la matriz está llena, se elimina el mensaje más antiguo por cada nuevo mensaje (búfer de anillo).
Entrada |
Tipo de datos |
Descripción |
---|---|---|
i_xExecute |
BOOL |
En un flanco ascendente, el bloque de funciones ejecuta el comando especificado. |
i_etCommand |
STRING(255) |
Especifica el comando que se va a ejecutar. |
i_stParamters |
ST_ParamFbGetDiag |
Parámetros de la ejecución del bloque de funciones. |
Los elementos de ST_ParamFbGetDiag se inicializan de la siguiente manera:
otimTimeoutGetDiagData := T#10S, el límite inferior del valor es T#1s
otimTimeoutCreateFile := T#10S, el límite inferior del valor es T#1s
obyPlcDiagOptEthItfToCheck := 2#11
Salida |
Tipo de datos |
Descripción |
---|---|---|
q_xDone |
BOOL |
Si esta salida está configurada en TRUE, la ejecución se ha completado correctamente. |
q_xBusy |
BOOL |
Si esta salida está configurada en TRUE, la ejecución del bloque de funciones está en curso. |
q_xError |
BOOL |
Si esta salida se establece en TRUE, se ha detectado un error. Para obtener información detallada, consulte q_etResult y q_etResultMsg. |
q_etResult |
ET_Result |
Proporciona información de diagnóstico y estado en forma de valor numérico. |
q_sResultMsg |
STRING (80) |
Proporciona información adicional de diagnóstico y estado en forma de mensaje de texto. |
q_uiNumOfDiagEntries |
UINT |
Indica el número de mensajes de diagnóstico añadidos a GVL.G_astDiagTable. |
q_stInfoEthernetDevices |
Ofrece información sobre los dispositivos Ethernet configurados en el proyecto. |