Información adicional acerca de la integración de la lógica de control en plantillas de dispositivos
Puede incluir una lógica de control en una plantilla de dispositivos si la lógica contiene una o más secciones de código que intercambian datos con este dispositivo de campo de una de las siguientes formas:
oUna sección de código usa una nueva variable definida en la asignación de E/S del dispositivo de campo.
oUna sección de código y la asignación de E/S del dispositivo de campo usan una variable común que se define en una GVL o un programa del controlador contenido por la aplicación a la que pertenece la sección del código.
NOTA: Si usa estructuras o matrices, asegúrese de que sólo estén relacionadas con un dispositivo de campo.
oUna sección de código y el dispositivo de campo usan una variable fija específica del dispositivo (por ejemplo, las variables de referencia del eje usadas con las unidades Altivar o Lexium).
Llamadas interconectadas de secciones de código
Las secciones de código están formadas por una secuencia de llamadas interconectadas de bloques de funciones, funciones y operadores.
Si existe una de las siguientes relaciones entre las llamadas individuales, se considera que están conectadas:
oHay una conexión gráfica entre las llamadas individuales en CFC, FBD y LD.
oHay una variable conectada a la salida de una llamada y a la entrada de la otra llamada.
oUna llamada usa el parámetro de la otra llamada.
Selección individual de bloques de funciones
Puede seleccionar individualmente los bloques de funciones incluidos en estas secciones de código que intercambian datos con el dispositivo de campo que se incluirá en la plantilla de dispositivos. Esto permite crear otras plantillas de dispositivos que proporcionan distintas funciones para el mismo dispositivo de campo.
NOTA: El tipo de bloque de funciones debe estar definido en una biblioteca.
Inclusión de expresiones en las plantillas de dispositivos
Las expresiones, así como las variables usadas en estas expresiones, que están conectadas a los parámetros de un bloque de funciones, una función o un operador, se guardan automáticamente en la plantilla de dispositivos.
Recomendaciones generales para la creación de la lógica de control
Incluya sólo una lógica de control simple en una plantilla de dispositivos.
De este modo, las secciones de código trabajan de forma idéntica aunque se creen en diferentes lenguajes IEC.
NOTA: Para la lógica de control compleja, es preferible crear una plantilla de funciones.
Recomendaciones para la creación de la lógica de control en FBD/LD
Evite los elementos de detección de flancos, ya que no existen en otros lenguajes IEC.
Si es posible, use los bloques de funciones R_TRIG o F_TRIG.
Recomendaciones para la creación de la lógica de control en CFC
Use el comando Orden de ejecución > Ordenar conforme al flujo de datos para ordenar los elementos CFC que pertenecen a la misma sección de código, de acuerdo con su posición en el flujo de datos. Esto proporciona una mejor compatibilidad con otros lenguajes IEC.
Deje espacio (en dirección horizontal) entre los elementos CFC individuales, ya que debido al cambio de nombre, los nombres de las variables se ampliarán al crear un dispositivo a partir de una plantilla.
En la siguiente figura se muestra un ejemplo típico de una sección de código para un dispositivo de E/S distribuidas Advantys OTB en una aplicación de transporte:
La sección de código está formada por los siguientes bloques de funciones:
Nombre |
Tipo |
Función |
---|---|---|
InOTB_Conv20 |
Bloque de entrada |
Conversión de datos procedentes de OTB al formato necesario para el bloque de control |
Conv20 |
Bloque de control |
Datos de procesamiento |
OutOTB_Conv20 |
Bloque de salida |
Conversión de datos procedentes del bloque de control al formato necesario para OTB |
Las variables InByte1_Conv20, InByte2_Conv20 y OutByte_Conv20 están definidas en la asignación de E/S de OTB. Esto significa que la sección de código intercambia datos con el dispositivo OTB. De esta forma, se convierte en parte de la plantilla de dispositivos.