Beckhoff TwinCAT 2 Automation Interface
12 códigos de falla documentados
Acceso Denegado
La operación falló debido a permisos insuficientes o un recurso bloqueado. Esto ocurre si el documento actual en la instancia del system manager está bloqueado (p. ej., al llamar a NewConfiguration() o OpenConfiguration()) porque hay una referencia abierta al objeto del system manager o a un elemento del árbol. Para DeleteChild(), indica que no se permite eliminar el elemento secundario debido a protección o restricciones operativas.
Fallo General de Función
La operación falló por una razón no especificada, indicando un fallo general. Esto podría ocurrir durante NewConfiguration() o ActivateConfiguration(), StartRestartTwinCAT() si el sistema TwinCAT no puede iniciarse, o ConsumeXml() si la cadena XML proporcionada no es un documento válido.
Argumento no válido proporcionado
Se suministró un argumento no válido a la función. Para OpenConfiguration(), la ruta bstrFile no se refiere a un archivo de configuración TwinCAT válido. Para SaveConfiguration(), la ruta bstrFile no es válida para guardar. Para LinkVariables(), los parámetros offs1, offs2 o size no coinciden con la estructura o el rango de las variables.
Operación No Soportada en Modo Actual
La operación intentada, específicamente NewConfiguration(), OpenConfiguration(), o SaveConfiguration(), no está soportada en el modo operativo actual de la TwinCAT Automation Interface. Estos métodos están exclusivamente disponibles cuando la Automation Interface se está ejecutando en Compatibility Mode.
Invalid Pointer
Se proporcionó un Invalid Pointer a la función. Para ProduceXml(), esto se aplica al parámetro de salida pXML, indicando que la variable para almacenar la cadena XML no está asignada correctamente. Para CreateChild(), esto significa que el puntero pipItem, destinado a recibir la interfaz del nuevo elemento hijo, es Invalid Pointer, impidiendo la creación y devolución exitosa del elemento hijo.
Firma de Archivo de Importación Inválida
El archivo especificado para importar no contiene un elemento de árbol válido o tiene una firma corrupta (0x80090006). Este error ocurre cuando ImportChild() intenta leer el archivo pero determina que su contenido no es un formato de exportación de elemento de árbol TwinCAT reconocido.
Archivo de Importación No Encontrado
El archivo especificado para importar un elemento secundario no se puede encontrar o abrir (0x80090011). Esto indica un problema con la ruta al archivo de importación o su accesibilidad, impidiendo que la operación ImportChild() se complete.
Enlace de Variable Corrupto
Las variables especificadas no se pueden desvincular, posiblemente debido a una definición de enlace corrupta o inválida en la configuración de TwinCAT (0x98510005). Esto indica un problema con la integridad de los datos de vinculación de variables dentro del sistema.
Subtipo de Elemento Inválido para Creación
El parámetro nSubType proporcionado para crear un elemento hijo es inválido o no compatible con el tipo de elemento padre (0x98510003). El subType utilizable depende de la categoría del elemento de árbol padre; por ejemplo, un PLC Functionblock solo puede ser añadido a un elemento PLCFOLDER, no a un elemento DEVICE.
Tipo de elemento de árbol inválido para la operación
Uno o ambos de los elementos de árbol especificados no son válidos para la operación intentada (0x98510002). Para LinkVariables() o UnlinkVariables(), esto significa que uno o ambos elementos de árbol no son de tipo variable, impidiendo operaciones de vinculación.
Elemento del árbol TwinCAT no encontrado
El elemento del árbol especificado no pudo ser encontrado utilizando el identificador proporcionado (0x98510001). Esto puede ocurrir con LookupTreeItem() (absolute path name), LookupTreeItemById() (itemType/itemId combination), LookupChild() (relative path name), CreateChild() (bstrBefore item not found), DeleteChild() (bstrName item not found), ExportChild() (bstrName item not found), o ChangeChildSubType() (bstrChild item not found).
Elementos Incompatibles para la Operación
Los elementos involucrados en la operación son incompatibles (0x98510004). Para LinkVariables(), esto ocurre cuando dos variables no pueden ser enlazadas debido a tipos de datos incompatibles, al intentar enlazar dos salidas, al enlazar una salida de una tarea a una entrada de un dispositivo, o al enlazar variables del mismo propietario. Para ImportChild(), esto significa que el elemento de árbol contenido en el archivo de importación no es un elemento hijo válido para el padre actual, o su estructura es incompatible.