Skip to main content

Ejemplo: Herramienta de asignación de E/S

Producto: CODESYS Development System

Puede utilizar la biblioteca IEC IO Mapping Tool reasignar las entradas y salidas de un programa entre sí a través de una visualización en modo de tiempo de ejecución.

_example_img_io_mapping_tool1.png

Descripción

Las entradas y salidas se asignan a través de bloques de funciones y las visualizaciones correspondientes. Al hacerlo, los bloques de funciones simplemente se activan entre las entradas deseadas y nuestras salidas.

. La biblioteca contiene los siguientes bloques de funciones:
  • Bloques de funciones con ocho entradas y salidas:

  • Bloque de función básico

    • Bloque de funciones para entradas y salidas BOOL

    • Bloque de funciones para entradas y salidas BYTE

    • Bloque de funciones para entradas y salidas WORD

  • Bloques de funciones con un número variable de entradas y salidas

  • Bloque de función básico

    • Bloque de funciones para entradas y salidas BOOL

    • Bloque de funciones para entradas y salidas BYTE

    • Bloque de funciones para entradas y salidas WORD

Bloques de funciones con ocho entradas y salidas

En el IOMappingBool, IOMappingByte, y IOMappingWord bloques de funciones, ocho variables cada una del tipo correspondiente se utilizan para las entradas y salidas.

Bloques de funciones con entradas y salidas variables

En el VarIOMappingBool, VarIOMappingByte, y VarIOMappingWord bloques de funciones, las entradas y salidas se asignan a través de matrices de longitud g_iMaxIOs. El g_iMaxIOs El parámetro se puede configurar a través del Param lista de parámetros y puede ser un máximo de 256.

Bloques de funciones básicas

En el IOMappingBaseFB y VarIOMappingBaseFB bloques de funciones, se crea una matriz de valores enteros para cada uno. Los índices de la matriz representan las entradas y los valores en las posiciones correspondientes representan las salidas de estas entradas. Solo una entrada puede apuntar a una salida a la vez. Al cambiar la asignación de entradas y salidas, se comprueba si la salida ya se ha asignado o no a una entrada. Si este es el caso, entonces el valor de la entrada anterior se establece en -1. La matriz que guarda la asignación de entradas a salidas se almacena con el PersistenceManager.

Información adicional

Visualización

En la biblioteca se incluyen dos visualizaciones. Una visualización muestra un número fijo de entradas y salidas y la otra visualización muestra un número variable de entradas y salidas.

Las ocho entradas y salidas en el IOMappingVisu visualización están representados cada uno por ocho botones de opción. Cuando se selecciona un botón de radio en el lado izquierdo, la salida correspondiente se selecciona automáticamente en el lado derecho. Por defecto, las salidas se ordenan según las entradas. Después de cambiar la asignación, la nueva asignación se guarda haciendo clic en el botón "Establecer". Al hacer clic en el botón "Restablecer", se descartan todos los cambios realizados después de la última vez que se guardó.

En el VarIOMappingVisu visualización, el mapeo se muestra y se puede editar mediante cuadros combinados. El campo de la izquierda representa las entradas y el campo de la derecha representa las salidas. El mapeo actual se muestra claramente en la tabla adyacente.

Los botones "Set" y "Reset" funcionan de la misma manera que para IOMappingVisu.

proyecto de muestra

El IOMappingExample proyecto de muestra muestra cómo utilizar el IOMappingBoolFB, y VarIOMappingBoolFB bloques de funciones El mapeo de valores se guarda mediante el Administrador de persistencia. Para este propósito, el AC_Persistence La biblioteca debe vincularse en el grupo de POU y agregarse como una instancia de módulo (consulte también: "Administrador de persistencia" en la Ayuda de CODESYS).

Requisitos y restricciones del sistema

Sistema de programación

CODESYS Development System (versión 3.5.17.0 o superior)

Sistema de tiempo de ejecución

CODESYS Control Win (versión 3.5.17.0)

Componentes adicionales

-

Aviso

_example_icon.png DESCARGAR Proyecto