Skip to main content

La coherencia de los datos en combinación con la CODESYS Gerente de comunicación

Importante

La información de esta página se aplica exclusivamente a los objetos, datos y métodos que se han publicado a través del CODESYS Los editores de Communication Manager (los conjuntos de símbolos IEC, los modelos de información OPC UA y la configuración de símbolos), y no al servidor OPC UA en general.

El servidor OPC UA es un servicio que se ejecuta en segundo plano en el PLC. Las tareas del servidor OPC UA tienen una prioridad inferior a las tareas de las aplicaciones IEC. Debido a los sistemas multitarea y multinúcleo, las tareas del servidor OPC UA pueden verse interrumpidas por otras tareas. También puede ocurrir que las tareas del IEC se ejecuten en paralelo con las del servidor OPC UA, lo que puede provocar incoherencias en los datos al leer o editar los datos. El objetivo de este capítulo es ofrecer una visión general de dónde se puede garantizar la coherencia y

Acceso a los datos (lectura, escritura y muestreo)

Datos cuya coherencia está garantizada

Todos los tipos de datos escalares de hasta un tamaño de 8 bytes se leen y escriben de forma coherente a partir de los datos de IEC.

Datos cuya coherencia no está garantizada

Cuerdas

Las cadenas se leen y escriben carácter por carácter. Por lo tanto, no se puede garantizar la coherencia de una cadena leída o escrita.

Matrices

Las matrices de lectura o escritura se manejan elemento por elemento. Se utiliza la lógica básica de lectura o escritura del tipo de datos base de la matriz. Si el elemento base se puede procesar de forma coherente, todos los elementos de la matriz también serán coherentes. Sin embargo, no se puede garantizar que los elementos de la matriz ya procesados no hayan cambiado durante el procesamiento de la matriz completa.

Tipos de datos estructurados (STRUCT y FB)

lectura o escritura de los miembros de una estructura o de un bloque funcional se hace elemento por elemento. Esto usa la lógica básica de lectura y escritura del tipo de datos base del miembro. Si el elemento base se puede procesar de forma coherente, el miembro también lo será. Sin embargo, no se puede garantizar que los miembros ya procesados no hayan cambiado mientras se procesaba la estructura completa del bloque de funciones.

Combinaciones

Si se combinan matrices y estructuras, las reglas anteriores se aplican al miembro de la estructura o al elemento de la matriz. Se utiliza la lógica de lectura y escritura del tipo de datos base de los elementos de la matriz o de los miembros de la estructura. Esto da como resultado el siguiente comportamiento general:

  1. Valores de tipos de datos simples (excepto STRING) y WSTRING) siempre serán consistentes, independientemente de dónde se coloquen.

  2. STRING y WSTRING no se garantiza que sean consistentes.

  3. No se garantiza la coherencia de las estructuras y matrices. Sin embargo, los valores individuales que contienen son consistentes si son de un tipo de datos simple

Llamadas a métodos

Los parámetros de entrada y salida (independientemente del tipo de datos, las matrices o las estructuras) se transfieren de manera uniforme desde el servidor OPC UA a la llamada al método o desde las salidas de la llamada al método al servidor OPC UA. Esto se garantiza mediante el uso de la memoria de pila del subproceso que ejecuta la llamada al método. Sin embargo, no se garantiza que el acceso a los datos desde el código del método a la aplicación IEC sea coherente. Como estos métodos se ejecutan simultáneamente con las tareas de las aplicaciones IEC, se pueden utilizar los mecanismos normales para sincronizar el acceso a los datos (por ejemplo, mutex, semáforo