Manual Referencia de Programacion Logix5000 PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 388

Controladores Logix5000

1756 ControlLogix, 1769 CompactLogix, 1789 SoftLogix,


1794 FlexLogix, PowerFlex 700S con DriveLogix

Referencia del sistema


2

Información importante para el usuario


Debido a la variedad de usos de los productos descritos en esta publicación, las personas responsables de la aplicación y uso de estos productos deben asegurarse de que se
hayan seguido todos los pasos necesarios para que cada aplicación y uso cumpla con todos los requisitos de rendimiento y seguridad, incluyendo leyes, reglamentos, códigos y
normas aplicables. En ningún caso se responsabilizará a Allen-Bradley por daños indirectos o resultantes del uso o aplicación de estos productos.
Los ejemplos de ilustraciones, gráficos, programas y esquemas mostrados en esta publicación tienen la única intención de ilustrar el texto. Debido a las muchas variables y
requisitos asociados con cualquier instalación particular, Allen-Bradley no puede asumir responsabilidad u obligación (incluyendo responsabilidad de propiedad intelectual) por
el uso real basado en los ejemplos mostrados en esta publicación.
Está prohibida la reproducción total o parcial del contenido de esta publicación de propiedad exclusiva, sin el permiso escrito de Rockwell Automation.
En esta publicación hacemos estas anotaciones para informarle de consideraciones de seguridad Las siguientes anotaciones y sus declaraciones ayudarán a identificar un posible
peligro, evitar un posible peligro y reconecer las consecuencias de un posible peligro.
Resumen de cambios
Esta versión del Manual de referencia del sistema de controladores Logix5000 corresponde a la versión 13 de los controladores. Los cambios hechos a este
manual incluyen:
• Adición de controladores 1769-L31, -L32E, -L35E CompactLogix
• Adición del controlador 1756-L60M03SE ControlLogix con interface de control de movimiento SERCOS incorporada
• Adición de las instrucciones de control de movimiento MCCD, MCCM, MCLM, MCS, MCSD, MCSR y MCSV

Publicación 1756-QR107B-ES-P - Marzo 2004


Resumen de cambios

Notas:

Publicación 1756-QR107B-ES-P - Marzo 2004


Contenido - 1

Controladores Logix 1
Controladores de la familia Logix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-1
Controladores ControlLogix (1756-Lx, -LxMx) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-2
Controladores CompactLogix (1769-Lxx) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-4
Controladores FlexLogix (1794-L33, -L34) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-8
Controladores SoftLogix5800 (1789-L10, -L30, -L60) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-10
PowerFlex 700S con DriveLogix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-12
Comparación de controladores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-14
Seleccionar el modo operativo del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-17
Memoria no volátil . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-18
Crear un proyecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-20
Organizador del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-21
Tareas del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-22
Tags del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-26
Aliases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-29
Seleccionar un lenguaje de programación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1-30

Diagramas de funciones secuenciales 2


Diagrama de funciones secuenciales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-1
Cómo editar un SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-4
Calificadores de acción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-10
¿Cómo desea usar la acción? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-12
Configurar la ejecución de un SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2-13

Publicación 1756-QR107B-ES-P - Marzo 2004


Contenido - 2

Texto estructurado 3
Sintaxis del texto estructurado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-1
Asignaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-4
Expresiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-6
Cómo determinar el orden de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-12
Instrucciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-13
Construcciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-15
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3-25

Diagrama de bloques de función 4


Diagrama de bloques de función . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-1
Cómo editar un diagrama de bloques de función. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-2
Orden de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-5
Resolución de un lazo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-7
Resolver el flujo de datos entre dos bloques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-9
Crear un retardo de escán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10
Resumen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-10
Definir el control de programa/operador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4-11

Publicación 1756-QR107B-ES-P - Marzo 2004


Contenido - 3

Lógica de escalera de relé 5


Lógica de escalera de relé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-1
Edición de la lógica de escalera de relé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-3
Condición de renglón . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5-4

Acceso a valores del sistema 6


Valores del sistema almacenados por el controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-1
Monitoreo de los indicadores de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-2
Obtener y establecer datos del sistema (información de estado) . . . . . . . . . . . . . . . . . . . . . . . 6-3
Información de estado disponible – objetos GSV/SSV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6-5
Cómo determinar la información de memoria del controlador . . . . . . . . . . . . . . . . . . . . . . . 6-26

Comunicación con otros controladores 7


Opciones de comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-1
Producir y consumir un tag . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-2
Enviar un mensaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-9
Asignar direcciones PLC/SLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-13
Enviar un mensaje a múltiples dispositivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7-15

Forzados 8
Elementos que se pueden forzar . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-1
Forzado de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-4
Efectuar paso a paso en una transición . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7
Forzar un SFC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8-7

Publicación 1756-QR107B-ES-P - Marzo 2004


Contenido - 4

Fallos del sistema 9


Fallos del controlador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-1
Fallos mayores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-2
Códigos de fallo mayor . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-7
Fallos menores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-10
Códigos de fallos menores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-12
Fallos definidos por el usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9-14

Estructuras de datos 10
Estructuras comunes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-1

Conjunto de instrucciones 11

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1
Controladores de la familia Logix
Las plataformas Logix de Rockwell Automation proporcionan una arquitectura de control integrada única para el control de procesos, movimiento,
variadores y discreto.
La arquitectura integrada Logix ofrece una máquina de control, un entorno de software de programación y compatibilidad para comunicaciones común a
través de varias plataformas de hardware. Todos los controladores Logix funcionan con un sistema operativo de multitarea y multiprocesamiento y admiten
el mismo conjunto de instrucciones en varios lenguajes de programación. El paquete de software de programación RSLogix 5000 sirve para programar
todos los controladores Logix. Además, todos los controladores Logix se comunican a través de redes EtherNet/IP, ControlNet y DeviceNet gracias a que
incorporan la arquitectura NetLinx.
ControlLogix
Plataforma de control de
multiprocesamiento de alto rendimiento

SoftLogix5800
Control basado en PC de alto
PowerFlex 700S con DriveLogix rendimiento
Una solución integrada para control y
variadores

FlexLogix
Aplicaciones de
control pequeñas a
medianas que usan
FLEX I/O CompactLogix
Compact I/O y control para
aplicaciones más simples

Publicación 1756-QR107B-ES-P - Marzo 2004


1-2 Controladores Logix

Controladores ControlLogix (1756-Lx, -LxMx)


Panel frontal: Indicador: Color: Descripción:
RUN apagado El controlador está en el modo Programación o Prueba.
verde fijo El controlador está en el modo marcha.
I/O apagado Uno de los siguientes:
• No hay dispositivos en la configuración de E/S del controlador.
• El controlador no contiene un proyecto (la memoria del controlador está vacía).

verde fijo El controlador se está comunicando con todos los dispositivos en su configuración de E/S.
verde Uno o más dispositivos en la configuración de E/S del controlador no responden.
parpadeante
rojo parpadeante El chasis está defectuoso. Reemplace el chasis.
FORCE apagado No hay tags que contengan valores de forzados.
Los forzados de E/S están inactivos (inhabilitados).
ámbar fijo Los forzados de E/S están activos (habilitados).
Pueden o no existir valores de forzados de E/S.
ámbar Una o más direcciones de entrada o salida han sido forzadas al estado activado o desactivado, pero lo
parpadeante forzados no se han habilitado
RS232 apagado No hay actividad.
verde fijo recibiendo o transmitiendo datos

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1-3

Panel frontal: Indicador: Color: Descripción:


BAT apagado La batería respalda a la memoria.
rojo fijo La batería:
• no está instalada.
• está 95% descargada y debe reemplazarse.

OK apagado No hay alimentación eléctrica conectada.


rojo parpadeante Si el controlador es: Entonces:
un nuevo controlador el controlador requiere una actualización de firmware
no es un nuevo controlador Ocurrió un fallo mayor. Para borrar el fallo, ya sea:
- Gire el interruptor de llave de PROG a RUN a PROG
- Conéctese con el software RSLogix 5000.
rojo fijo El controlador detectó un fallo no recuperable, por lo tanto borró el proyecto de la memoria. Para
recuperarse:
1. Desconecte y vuelva a conectar la alimentación eléctrica del chasis.
2. Descargue el proyecto.
3. Cambie al modo Marcha.
Si el indicador LED OK continúa de color rojo fijo, comuníquese con el representante o distribuidor
regional de Rockwell Automation.
verde fijo El controlador está en buen estado.
verde El controlador está almacenando o cargando un proyecto hacia o desde la memoria no volátil.
parpadeante

Publicación 1756-QR107B-ES-P - Marzo 2004


1-4 Controladores Logix

Controladores CompactLogix (1769-Lxx)


Panel frontal: Indicador: Color: Descripción:
RUN apagado El controlador está en el modo Programación o Prueba.
verde fijo El controlador está en el modo marcha.
FORCE apagado No hay tags que contengan valores de forzados.
Los forzados de E/S están inactivos (inhabilitados).
ámbar fijo Los forzados de E/S están activos (habilitados).
Pueden o no existir valores de forzados de E/S.
ámbar Una o más direcciones de entrada o salida han sido forzadas al estado activado o desactivado, pero lo
parpadeante forzados no se han habilitado
BAT apagado La batería respalda a la memoria.
rojo fijo La batería:
• no está instalada.
• está 95% descargada y debe reemplazarse.

I/O apagado Uno de los siguientes:


• No hay dispositivos en la configuración de E/S del controlador.
• El controlador no contiene un proyecto (la memoria del controlador está vacía).

verde fijo El controlador se está comunicando con todos los dispositivos en su configuración de E/S.
verde Uno o más dispositivos en la configuración de E/S del controlador no responden.
parpadeante
rojo parpadeante El controlador no se esta comunicando con ningún dispositivo.
El controlador está en fallo.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1-5

Panel frontal: Indicador: Color: Descripción:


OK apagado No hay alimentación eléctrica conectada.
rojo parpadeante Si el controlador es: Entonces:
un nuevo controlador el controlador requiere una actualización de firmware
no es un nuevo controlador Ocurrió un fallo mayor. Para borrar el fallo, ya sea:
- Gire el interruptor de llave de PROG a RUN a PROG
- Conéctese con el software RSLogix 5000.
rojo fijo El controlador detectó un fallo no recuperable, por lo tanto borró el proyecto de la memoria. Para
recuperarse:
1. Desconecte y vuelva a conectar la alimentación eléctrica del chasis.
2. Descargue el proyecto.
3. Cambie al modo Marcha.
Si el indicador LED OK continúa de color rojo fijo, comuníquese con el representante o distribuidor
regional de Rockwell Automation.
verde fijo El controlador está en buen estado.
verde El controlador está almacenando o cargando un proyecto hacia o desde la memoria no volátil.
parpadeante
DCH0 apagado Comunicación configurada por el usuario activa.
(RS-232)
verde fijo Comunicación predeterminada activa.
Canal 1 apagado No hay actividad.
(RS-232)
(1769-L31, -L30 verde fijo Se reciben o transmiten datos.
solamente)

Publicación 1756-QR107B-ES-P - Marzo 2004


1-6 Controladores Logix

Controladores CompactLogix (1769-L31, -L32E, -L35E) – CompactFlash


Indicador: Color: Descripción:
CompactFlash apagado No hay actividad.
CF
verde El controlador está leyendo la tarjeta CompactFlash o escribiendo a ésta.
parpadeante
rojo parpadeante La tarjeta CompactFlash no tiene un sistema de archivos válido.

Controladores CompactLogix (1769-L32E, -L35E) – EtherNet/IP


Indicador: Color: Descripción:
EtherNet/IP MS apagado No hay actividad.
verde El puerto EtherNet/IP no tiene una dirección IP y está funcionando en el modo BOOTP.
parpadeante
verde fijo La comunicación EtherNet/IP está activa.
rojo fijo Ocurrió una de las siguientes situaciones:
• El controlador está reteniendo el puerto EtherNet/IP en restablecido, o el controlador está en fallo.
• El puerto EtherNet/IP está realizando su autoprueba de encendido.
• Ocurrió un fallo irrecuperable. Desconecte y vuelva a conectar la alimentación eléctrica del controlador.

rojo parpadeante El firmware se está actualizando.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1-7

Indicador: Color: Descripción:


EtherNet/IP NS apagado No hay actividad. El puerto EtherNet/IP no tiene una dirección IP y está funcionando en el modo
BOOTP.
verde El puerto EtherNet/IP tiene una dirección IP, pero no hay conexiones CIP establecidas.
parpadeante
verde fijo El puerto EtherNet/IP tiene una dirección IP y las conexiones CIP están establecidas.
rojo fijo La dirección IP asignada ya está en uso.
rojo/verde El puerto EtherNet/IP está realizando su autoprueba de encendido.
parpadeante
EtherNet/IP LNK apagado El puerto EtherNet/IP no está correctamente conectado a la red EtherNet/IP. Asegúrese de que todos
los cables Ethernet estén conectados y que el interruptor Ethernet tenga alimentación eléctrica.
verde Ocurrió una de las siguientes situaciones:
parpadeante • El puerto EtherNet/IP está realizando su autoprueba de encendido.
• El puerto EtherNet/IP se está comunicando en la red.

verde fijo El puerto EtherNet/IP está correctamente conectado a la red EtherNet/IP.

Publicación 1756-QR107B-ES-P - Marzo 2004


1-8 Controladores Logix

Controladores FlexLogix (1794-L33, -L34)


Panel frontal: Indicador: Color: Descripción:
RUN apagado El controlador está en el modo Programación o Prueba.
verde fijo El controlador está en el modo marcha.
OK apagado No hay alimentación eléctrica conectada.
rojo parpadeante Si el controlador es: Entonces:
un nuevo controlador el controlador requiere una actualización de firmware
no es un nuevo controlador Ocurrió un fallo mayor. Para borrar el fallo, ya sea:
- Gire el interruptor de llave de PROG a RUN a PROG
- Conéctese con el software RSLogix 5000.
rojo fijo El controlador detectó un fallo no recuperable, por lo tanto borró el proyecto de la
memoria. Para recuperarse:
1. Desconecte y vuelva a conectar la alimentación eléctrica del chasis.
2. Descargue el proyecto.
3. Cambie al modo Marcha.
Si el indicador LED OK continúa de color rojo fijo, comuníquese con el representante o
distribuidor regional de Rockwell Automation.
verde fijo El controlador está en buen estado.
verde El controlador está almacenando o cargando un proyecto hacia o desde la memoria no
parpadeante volátil.
BATTERY apagado La batería respalda a la memoria.
rojo La batería:
• no está instalada.
• está 95% descargada y debe reemplazarse.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1-9

Panel frontal: Indicador: Color: Descripción:


I/O apagado Uno de los siguientes:
• El proyecto del controlador no está descargado (la condición después del encendido)
• no se configuraron las E/S o las comunicaciones
verde fijo El controlador se esta comunicando con todos los dispositivos.
verde No responden uno o más dispositivos.
parpadeante
LOCAL apagado El riel está inhibido.
y
LOCAL2 verde fijo El controlador se esta comunicando con todos los dispositivos en dicho riel.
verde Uno o más dispositivos en ese riel no están respondiendo.
parpadeante
rojo parpadeante No existen módulos en ese riel.
RS232 apagado No hay actividad.
verde fijo Se reciben o transmiten datos.
FORCE apagado No hay tags que contengan valores de forzados.
Los forzados de E/S están inactivos (inhabilitados).
ámbar fijo Los forzados de E/S están activos (habilitados).
Pueden o no existir valores de forzados de E/S.
ámbar Una o más direcciones de entrada o salida han sido forzadas al estado activado o
parpadeante desactivado, pero lo forzados no se han habilitado

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 10 Controladores Logix

Controladores SoftLogix5800 (1789-L10, -L30, -L60)


Panel frontal: Indicador: Color: Descripción:
RUN apagado El controlador está en el modo Programación o Prueba.
verde fijo El controlador está en el modo marcha.
I/O apagado Uno de los siguientes:
• No hay dispositivos en la configuración de E/S del controlador.
• El controlador no contiene un proyecto (la memoria del controlador está vacía).

verde fijo El controlador se está comunicando con todos los dispositivos en su configuración de E/S.
verde Uno o más dispositivos en la configuración de E/S del controlador no responden.
parpadeante
rojo parpadeante Se detectó un error de chasis virtual. Comuníquese con su representante de Rockwell Automation o
distribuidor regional.
FRC apagado No hay tags que contengan valores de forzados.
Los forzados de E/S están inactivos (inhabilitados).
verde Por lo menos un tag contiene un valor forzado de E/S.
parpadeante Los valores forzados de E/S están inactivos (inhabilitados).
verde fijo Los forzados de E/S están activos (habilitados).
Pueden o no existir valores de forzados de E/S.

RS232(1) apagado No se seleccionó el puerto COM.


verde fijo El puerto COM seleccionado se asignó correctamente al canal 0 del controlador.
rojo fijo Hay un conflicto con el puerto COM, o usted seleccionó un número de puerto COM no válido.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 11

Panel frontal: Indicador: Color: Descripción:

BAT (1) apagado Operación normal.


ámbar El controlador está en modo de encendido.
parpadeante
rojo fijo Falló almacenamiento persistente para el controlador.
OK rojo parpadeante Si el controlador es: Entonces:
un nuevo controlador el controlador requiere una actualización de firmware
no es un nuevo controlador Ocurrió un fallo mayor. Para borrar el fallo, ya sea:
- Gire el interruptor de llave de PROG a RUN a PROG
- Conéctese con el software RSLogix 5000.
rojo fijo El controlador detectó un fallo no recuperable, por lo tanto borró el proyecto de la memoria. Para recuperarse:
1. Desconecte y vuelva a conectar la alimentación eléctrica del chasis.
2. Descargue el proyecto.
3. Cambie al modo Marcha.
Si el indicador LED OK continúa de color rojo fijo, comuníquese con el representante o distribuidor regional de
Rockwell Automation.
verde fijo El controlador está en buen estado.
(1)
Tome nota de que estos indicadores LED funcionan de manera ligeramente diferente que los mismos indicadores LED en un controlador ControlLogix.

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 12 Controladores Logix

PowerFlex 700S con DriveLogix


Panel frontal: Indicador: Color: Descripción:
RUN apagado El controlador está en el modo Programación o Prueba.
verde fijo El controlador está en el modo marcha.
FORCE apagado No hay tags que contengan valores de forzados.
Los forzados de E/S están inactivos (inhabilitados).
ámbar Por lo menos un tag contiene un valor forzado de E/S.
parpadeante Los valores forzados de E/S están inactivos (inhabilitados).
ámbar fijo Los forzados de E/S están activos (habilitados).
Pueden o no existir valores de forzados de E/S.
BAT apagado La batería respalda a la memoria.
rojo fijo La batería:
• no está instalada.
• está 95% descargada y debe reemplazarse.

I/O apagado Uno de los siguientes:


• No hay dispositivos en la configuración de E/S del controlador.
• El controlador no contiene un proyecto (la memoria del controlador está vacía).

verde fijo El controlador se está comunicando con todos los dispositivos en su configuración de E/S.
verde Uno o más dispositivos en la configuración de E/S del controlador no responden.
parpadeante
rojo parpadeante No se pueden realizar las conexiones de E/S requeridas, el controlador está en el modo Marcha.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 13

Panel frontal: Indicador: Color: Descripción:


RS232 apagado No se seleccionó el puerto COM.
verde fijo El puerto COM seleccionado se asignó correctamente al canal 0 del controlador.
rojo fijo Hay un conflicto con el puerto COM, o usted seleccionó un número de puerto COM no válido.
OK rojo parpadeante Si el controlador es: Entonces:
un nuevo controlador el controlador requiere una actualización de firmware
no es un nuevo controlador Ocurrió un fallo mayor. Para borrar el fallo, ya sea:
- Gire el interruptor de llave de PROG a RUN a PROG
- Conéctese con el software RSLogix 5000.
rojo fijo El controlador detectó un fallo no recuperable, por lo tanto borró el proyecto de la memoria. Para recuperarse:
1. Desconecte y vuelva a conectar la alimentación eléctrica del chasis.
2. Descargue el proyecto.
3. Cambie al modo Marcha.
Si el indicador LED OK continúa de color rojo fijo, comuníquese con el representante o distribuidor regional de
Rockwell Automation.
verde fijo El controlador está en buen estado.
verde El controlador está almacenando o cargando un proyecto hacia o desde la memoria no volátil.
parpadeante

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 14 Controladores Logix

Comparación de controladores
Características comunes 1756 ControlLogix 1769 CompactLogix 1789 SoftLogix 1794 FlexLogix PowerFlex 700S con
DriveLogix
tareas del controlador • 32 tareas (sólo 1 continua) • 1769-L35E: 8 tareas • 32 tareas (sólo 1 continua) • 8 tareas (sólo 1 continua) • 8 tareas (sólo 1 continua)
• continua • tareas de evento: acepta todos • 1769-L32E: 6 tareas • tareas de evento: • tareas de evento: • tareas de evento:
• periódico los disparos de evento. • 1769-L31: 4 tareas compatible con todos los compatible con disparo de compatible con tag
• evento • 1769-L20, -L30: 4 tareas disparos de evento, más tag consumido y con la consumido, ejes y disparos
• sólo 1 tarea puede ser eventos Windows y de instrucción EVENT de evento de movimiento
continua salida
• tareas de evento:
compatible con disparo de
tag consumido y con la
instrucción EVENT
memoria del usuario 1756-L55M12 750 Kbytes 1769-L20 64 Kbytes 1789-L10 2 Mbytes 1794-L33 64 Kbytes 256 Kbytes
1756-L55M13 1.5 Mbytes 1769-L30 256 Kbytes 3 ranuras 1794-L34 512 Kbytes 768 Kbytes con expansión
1756-L55M14 3.5 Mbytes 1769-L31 512 Kbytes ningún de memoria movimiento
1756-L55M16 7.5 Mbytes 1769-L32E 750 Kbytes 1789-L30 64 Mbytes
1756-L55M22 750 Kbytes 1769-L35E 1.5 Mbytes 5 ranuras
1756-L55M23 1. 5 Mbytes 1789-L60 64 Mbytes
1756-L55M24 3.5Mbytes 16 ranuras
1756-L60M03SE 750 Kbytes
1756-L61 2 Mbytes
1756-L62 4 Mbytes
1756-L63 8 Mbytes

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 15

Características comunes 1756 ControlLogix 1769 CompactLogix 1789 SoftLogix 1794 FlexLogix PowerFlex 700S con
DriveLogix
memoria de usuario no volátil 1756-L55M12 ninguno 1769-L20 sí ninguna 1794-L33 sí sí (memoria de expansión)
1756-L55M13 ninguno 1769-L30 sí 1794-L34/B sí
1756-L55M14 ninguno 1769-L31 CompactFlash
1756-L55M16 ninguno 1769-L32E CompactFlash
1756-L55M22 sí 1769-L35E CompactFlash
1756-L55M23 sí
1756-L55M24 sí
1756-L60M03SE CompactFlash
1756-L61 CompactFlash
1756-L62 CompactFlash
1756-L63 CompactFlash
puertos de comunicación • 1 puerto RS232 en serie • 1769-L20: 1 puerto RS-232 depende de la computadora • 1 puerto RS-232 en serie • 1 puerto RS-232 en serie
incorporados (DF1 ó ASCII) en serie (DF1 ó ASCII) personal (DF1 ó ASCII) (DF1 ó ASCII)
• 1769-L30, -L31: 2 puertos • 2 ranuras para tarjetas de • 1 ranura para tarjetas de
RS-232 (uno DF1 solamente, comunicación 1788 comunicación 1788
el otro DF1 ó ASCII)
• 1769-L32E, -L35E: 1 puerto
EtherNet/IP y 1 puerto
RS-232 en serie (DF1 ó
ASCII)

opciones de comunicación (existen EtherNet/IP EtherNet/IP EtherNet/IP EtherNet/IP EtherNet/IP


productos y perfiles específicos en ControlNet DeviceNet ControlNet ControlNet ControlNet
las plataformas para estas opciones. DeviceNet en serie DeviceNet DeviceNet DeviceNet
También hay otras opciones Data Highway Plus Modbus vía rutina de en serie en serie en serie
disponibles que requieren productos E/S remotas universales lógica de escalera Modbus vía rutina de Modbus vía rutina de
de otras compañías y perfiles en serie DH-485 lógica de escalera lógica de escalera
genéricos) Modbus vía rutina de lógica DH-485 DH-485
de escalera
DH-485
SynchLink

redundancia compatible con redundancia total no aplicable no aplicable copia de seguridad (backup) no aplicable
vía DevciceNet

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 16 Controladores Logix

Características comunes 1756 ControlLogix 1769 CompactLogix 1789 SoftLogix 1794 FlexLogix PowerFlex 700S con
DriveLogix
E/S nativas ControlLogix I/O 1756 1769 Compact I/O ninguna 1794 FLEX I/O 1794 FLEX I/O
1797 FLEX Ex I/O 1797 FLEX Ex I/O
control de movimiento simple motor paso a paso motor paso a paso motor paso a paso motor paso a paso motor paso a paso
servo vía DeviceNet servo vía DeviceNet servo vía DeviceNet servo vía DeviceNet servo vía DeviceNet
variador de CA analógico variador de CA analógico variador de CA analógico variador de CA analógico variador de CA analógico
control de movimiento integrado SERCOS Interface no aplicable SERCOS Interface no aplicable 1 servo total
interface analógica interface analógica 1 eje de retroalimentación
interface hidráulica
interface SSI
opciones de montaje y/o chasis 1756 montaje en panel ninguna montaje en panel incorporado en el
instalación riel DIN riel DIN PowerFlex 700S
Lenguajes de programación • lógica de escalera de relé • lógica de escalera de relé • lógica de escalera de relé • lógica de escalera de relé • lógica de escalera de relé
• texto estructurado • texto estructurado • texto estructurado • texto estructurado • texto estructurado
• Bloque de función • Bloque de función • Bloque de función • Bloque de función • Bloque de función
• diagrama de funciones • diagrama de funciones • diagrama de funciones • diagrama de funciones • diagrama de funciones
secuenciales secuenciales secuenciales secuenciales secuenciales
• rutinas externas (DLL de
Windows desarrolladas con
C/C++)

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 17

Seleccionar el modo operativo del controlador


Use la tabla siguiente para determinar el modo de operación del controlador:

Si usted desea: Seleccione uno de los modos siguientes:


Run Remote Program
Run Test Program
cambiar las salidas al estado ordenado por la lógica del proyecto X X
cambiar las salidas a su estado configurado para el modo de programación X X X
ejecutar (escanear) tareas X X X
cambiar el modo del controlador a través del software X X X
descargar un proyecto X X X X
programar una red ControlNet X X
editar el proyecto en línea X X X X
enviar mensajes X X X
enviar y recibir datos en respuesta a un mensaje de otro controlador X X X X X
producir y consumir tags X X X X X

Use la llave ubicada en el panel frontal del controlador para seleccionar el modo.

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 18 Controladores Logix

Memoria no volátil
Los siguientes controladores tienen memoria no volátil para el almacenamiento de proyectos.
Tipo de controlador: Número de catálogo: Revisión de firmware:

CompactLogix5332E 1769-L32E(1) 13.x o posterior

CompactLogix5335E 1769-L35E(1) 12.x o posterior

CompactLogix5331 1769-L31(1) 13.x o posterior

CompactLogix5330 1769-L30 10.x o posterior

CompactLogix5320 1769-L20 10.x o posterior

ControlLogix5555 1756-L55M22 10.x o posterior

1756-L55M23 8.x o posterior

1756-L55M24 8.x o posterior

ControlLogix5560M03SE 1756-L60M03SE(1) 13.x o posterior

ControlLogix5561 y ControlLogix5562 1756-L61, -L62 (1) 12.x o posterior

ControlLogix5563 1756-L63 (1) 11.x o posterior

DriveLogix5720 varios 10.x o posterior

FlexLogix5433 1794-L33 10.x o posterior

FlexLogix5434 Serie B 1794-L34/B 11.x o posterior

(1)
Requiere una tarjeta de memoria 1784-CF64 Industrial CompactFlash.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 19

En propiedades del controlador, usted selecciona guardar/cargar un proyecto a/desde la memoria no volátil.

El proyecto que actualmente está en la memoria no volátil del El proyecto que actualmente está en la memoria de usuario (RAM) del
controlador (si hay un proyecto allí). controlador.

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 20 Controladores Logix

Crear un proyecto
En el software RSLogix 5000, seleccione File → New.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 21

Organizador del controlador


El software de programación usa el organizador del controlador para definir un proyecto.

Tarea continua
Tarea

Programa

Rutina

Tarea periódica

Rutina principal

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 22 Controladores Logix

Tareas del controlador


Una tarea proporciona información de programación y prioridades para un conjunto de uno o más programas que se ejecutan según criterios específicos.
Una vez que se activa una tarea, todos los programas asignados (programados) a la tarea se ejecutan en el orden en el cual se muestran en el organizador del
controlador.

Tarea: Definición:
tarea continua La tarea continua se ejecuta en el segundo plano. Cualquier tiempo de CPU no asignado a otras operaciones (tales tareas
de control de movimiento, comunicaciones y tareas periódicas o de evento) se puede usar para ejecutar los programas
dentro de la tarea continua.
• La tarea continua se ejecuta todo el tiempo. Cuando la tarea continua realiza un escán completo, se reinicia inmediatamente.
• Un proyecto no requiere una tarea continua. Si se usa, sólo puede haber una tarea continua.

tarea periódica Una tarea periódica realiza una función según un régimen específico.
• Cada vez que expira el tiempo de la tarea periódica, la tarea periódica interrumpe cualquier tarea de menor prioridad, se ejecuta una vez
y luego devuelve el control en el lugar donde se interrumpió la tarea previa.
• El período de tiempo se puede configurar de 1 ms a 2000 s. El valor predeterminado es 10 ms. El rendimiento de las tareas periódicas
depende del tipo de controlador Logix y de la lógica en la tarea.
Usted asigna un nivel de prioridad (1 es el más alto, 15 es el más bajo) a cada tarea periódica:
• La tarea de mayor prioridad interrumpe a todas las tareas de menor prioridad.
• Una tarea de mayor prioridad puede interrumpir una tarea de menor prioridad múltiples veces.
• Las tareas que tienen la misma prioridad se ejecutan según una base de segmento de tiempo a intervalos de 1 ms.

tarea de evento Una tarea de evento realiza una función sólo cuando ocurre un evento (desencadenador) específico. Cada vez que ocurre el
desencadenador de la tarea de evento, la tarea de evento interrumpe cualquier tarea de menor prioridad, se ejecuta una
vez y luego devuelve el control en el lugar donde se interrumpió la tarea previa.
Los desencadenadores o disparos disponibles son cambio de estado de datos del módulo de entrada, tag consumido,
registro de eje 1 ó 2, observación de eje, ejecución de grupo de control de movimiento, instrucción EVENT.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 23

El número de tareas aceptadas depende del controlador.


Controlador: Número de tareas aceptadas:
ControlLogix 32 tareas, una de las cuales puede ser continua
Hay 15 niveles de prioridad configurables para las tareas periódicas (1 – 15), 1 es la prioridad más alta y 15 es la prioridad más baja.
CompactLogix 1769-L35E: 8 tareas, una de las cuales puede ser continua
1769-L32E: 6 tareas, una de las cuales puede ser continua
1769-L31, -L30, -L20: 4 tareas, una de las cuales puede ser continua
Hay 15 niveles de prioridad configurables para las tareas periódicas (1 – 15), 1 es la prioridad más alta y 15 es la prioridad más baja. El controlador
CompactLogix usa una tarea periódica dedicada a prioridad 7 para procesar los datos de E/S. Esta tarea periódica se ejecuta al RPI más rápido que
se ha programado para el sistema. El tiempo de ejecución total es igual al tiempo necesario para escanear los módulos de E/S configurados.
FlexLogix 8 tareas, una de las cuales puede ser continua
y
PowerFlex 700S con DriveLogix Hay 15 niveles de prioridad configurables para las tareas periódicas (1 – 15), 1 es la prioridad más alta y 15 es la prioridad más baja.
El controlador usa una tarea periódica dedicada a prioridad 7 para procesar los datos de E/S. Esta tarea periódica se ejecuta al RPI más rápido que
se ha programado para el sistema. El tiempo de ejecución total es igual al tiempo necesario para escanear los módulos de E/S configurados.
SoftLogix5800 32 tareas, una de las cuales puede ser continua
Hay 3 niveles de prioridad configurables para las tareas periódicas (1 – 3), 1 es la prioridad más alta y 3 es la prioridad más baja.

Una tarea puede tener hasta 32 programas distintos y cada uno consta de sus propias rutinas ejecutables y tags de programas cubiertos. Una vez activada una
tarea, todos los programas asignados a la tarea se ejecutan en el orden en que se agrupan. Los programas pueden aparecer solamente una vez en el Controller
Organizer y no pueden ser compartidos por múltiples tareas.

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 24 Controladores Logix

Cuando se activa una tarea, los programas programados dentro de la tarea se ejecutan hasta completarse, desde el primero al último. Cada programa contiene
tags del programa, una rutina principal, otras rutinas y una rutina de fallo opcional. Cuando un programa se ejecuta, su rutina principal se ejecuta primero.
Use la rutina principal para llamar (ejecutar) otras rutinas (subrutinas). Para llamar a otra rutina dentro del programa, use una instrucción Jump to Subroutine
(JSR).

Detalles de la tarea de evento


No todos los controladores Logix aceptan todos los activadores o desencadenadores de tarea de evento:
Si tiene este controlador: Puede usar estos disparos de tarea de evento:
Cambio de estado de datos Tag consumido Registro de eje 1 ó 2 Observación de Ejecución de grupo de Instrucción EVENT
del entrada del modulo ejes control de movimiento
CompactLogix X X
FlexLogix X X
ControlLogix X X X X X X
DriveLogix X X X X
SoftLogix5800 X (1) X(2) X X X X

(1)
Requiere un módulo de E/S 1756 ó un backplane virtual.
(2) Un controlador SoftLogix5800 produce y consume tags mediante una red ControlNet solamente.

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 25

Para usar un módulo de entrada para activar una tarea de evento, el módulo debe ser compatible con activación de tarea de evento. Si el módulo está en un
lugar remoto, los módulos de comunicación asociados también deben ser compatibles con activación de evento. Estos módulos pueden activar una tarea de
evento.
Categoría Módulo Categoría Módulo Categoría Módulo
1756 discreto 1756-IA8D 1756 analógico 1756-IF16 1756 de comunicación 1756-CNB/A, -CNB/B,
-CNB/D
1756-IA16, -IA16I 1756-IF4FXOF2F/A 1756-CNBR/A, -CNBR/B,
-CNBR/D
1756-IA32 1756-IF6CIS 1756-DNB
1756-IB16, -IB16D, -IB16I 1756-IF6I 1756-ENBT/A
1756-IB16ISOE 1756-IF8 1756-SYNCH/A
1756-IB32/A, -IB32/B 1756-IR6I 1756 genérico 1756-MODULE
1756-IC16 1756-IT6I SoftDNB 1784-PCIDS/A
1756-IG16 1756-IT6I2 1789 genérico 1789-MODULE
1756-IH16I, -IH16ISOE 1756 especial 1756-CFM/A
1756-IM16I 1756-HSC
1756-IN16 1756-PLS/B
1756-IV16/A
1756-IV32/A

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 26 Controladores Logix

Tags del controlador


Los tipos de datos más comunes son.
Para: Seleccione: Para: Seleccione:
dispositivo analógico en modo de punto flotante (coma REAL punto de E/S digital BOOL
flotante)
dispositivo analógico en modo de entero (para velocidades INT número de punto flotante (coma flotante) REAL
de muestreo muy rápidas)
caracteres ASCII cadena entero (número entero) DINT
bit BOOL secuenciador CONTROL
contador COUNTER temporizador TIMER

Para organizar los datos:


Para un: Use un:
grupo de atributos comunes usados por más de una máquina tipo de datos definido por el
usuario
grupo de datos con el mismo tipo de datos matriz
valor único tag de un elemento único
dispositivo de E/S

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 27

Crear un tag
En el menú Logic, seleccione Edit Tags.

Los tags se pueden configurar para comunicarse directamente con otros controladores:
Para: Use un:
enviar datos por el backplane y la red ControlNet a un intervalo especificado tag producido
recibir datos de otro controlador por el backplane o la red ControlNet a un intervalo tag consumido
especificado

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 28 Controladores Logix

Crear un tipo de datos definido por el usuario

haga clic con el botón


derecho del mouse en

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 29

Aliases
Un tag de alias le permite crear un tag que representa otro tag.
• Ambos tags comparten el (los) mismo(s) valor(es).
• Cuando el (los) valor(es) de uno de los tags cambia(n), el otro tag también refleja el cambio.

drill_1_depth_limit es un alias para


Local:2:I.Data.3 (un punto de entrada digital).
Cuando la entrada se activa, el tag de alias
también se activa.

drill_1_on es un alias para


Local:0:O.Data.2 (un punto de salida
digital). Cuando el tag de alias se
activa, el tag de salida también se
activa.

La (C) indica que el tag está dentro del alcance del controlador.

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 30 Controladores Logix

Seleccionar un lenguaje de programación


En general, si la función o grupo de funciones representa: Entonces use este lenguaje:
ejecución continua o paralela de múltiples operaciones (que no tienen secuencia) lógica de escalera
operaciones booleanas o basadas en bit
operaciones lógicas complejas
procesamiento de comunicación y mensajes
enclavamiento de máquina
el personal de mantenimiento u operaciones de servicio quizás tengan que efectuar interpretaciones para resolver problemas
de la máquina o el proceso
control de variador y proceso continuo diagrama de bloques de funciones
control de lazo
cálculos en flujo de circuito
administración de alto nivel de múltiples operaciones diagrama de función secuencial (SFC)
secuencias de operaciones repetitivas
proceso de lote
control de movimiento usando texto estructurado
estado de operación de máquina
continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


Controladores Logix 1 - 31

En general, si la función o grupo de funciones representa: Entonces use este lenguaje:


operaciones matemáticas complejas texto estructurado
procesamiento de lazo o matriz especial
manejo de cadenas ASCII o procesamiento de protocolo

Publicación 1756-QR107B-ES-P - Marzo 2004


1 - 32 Controladores Logix

Notas:

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagramas de funciones secuenciales 2
Diagrama de funciones secuenciales
Un diagrama de funciones secuenciales (SFC) es similar a un diagrama de flujo. Utiliza pasos y transiciones para realizar operaciones o acciones específicas.
Un paso representa una función principal del Una acción es una de las funciones
proceso. Contiene las acciones que ocurren en que realiza un paso.
un tiempo, fase o estación específica.

Una transición es una condición verdadera o falsa que le


indica al SFC cuándo ir al siguiente paso.
Un calificador determina cuándo
comienza y se detiene una acción.

INICIO

Una bifurcación simultánea ejecuta


más de 1 paso simultáneamente.

FIN continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


2-2 Diagramas de funciones secuenciales

Ejemplo de SFC, continuación

INICIO

Una bifurcación de selección selecciona entre


rutas de ejecución diferentes.

FIN

Un cuadro de texto le permite añadir texto descriptivo o notas a su SFC.

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagramas de funciones secuenciales 2-3

Ejemplo de SFC, continuación

Un cable conecta un elemento a otro


elemento en cualquier lugar del diagrama.

Un paro le permite parar y esperar que se reinicie un comando.

Publicación 1756-QR107B-ES-P - Marzo 2004


2-4 Diagramas de funciones secuenciales

Cómo editar un SFC

Este botón de la barra de Crea este elemento de SFC: Descripción:


herramientas:
pareja de paso y transición Añada una pareja de paso y transición. Vea las descripciones de paso y transición a continuación.

paso Añada un paso.


Un paso representa una función principal de un proceso. Contiene los eventos que ocurren en un
momento, fase o estación específica.
transición Añada una transición.
Una transición es una condición o condiciones verdaderas o falsas que determinan cuándo ir al
siguiente paso.
acción Añada una acción o una acción booleana al paso seleccionado. Haga clic en el paso y luego
presione este botón.
Una acción representa una división funcional de un paso. Varias acciones constituyen un paso.
acción booleana Cada acción realiza una función específica, como por ejemplo, controlar un motor, abrir una
válvula o colocar un grupo de dispositivos en un modo específico.
Cada acción incluye un calificador. Cuando un paso está activo (se está ejecutando) el calificador
determina cuándo comienza y se detiene la acción.

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagramas de funciones secuenciales 2-5

Este botón de la barra de Crea este elemento de SFC: Descripción:


herramientas:
divergencia de bifurcación de selección Inicia una bifurcación de selección. Use el botón de nueva ruta para añadir rutas a la estructura
de la bifurcación.

divergencia de bifurcación de simultánea Inicie una bifurcación de simultánea. Use el botón de nueva ruta para añadir rutas a la estructura
de la bifurcación.

elementos de convergencia de SFC Termine la bifurcación actual. Seleccione el último paso de cada ruta en la bifurcación y luego
presione este botón.
Una bifurcación simultánea termina con una línea horizontal doble y sin transición. Una
bifurcación de selección termina con una transición para cada ruta y una sola línea horizontal.
bifurcación de extensión Añada una ruta a una bifurcación. Haga clic en el primer paso de la ruta que está a la izquierda de
donde desea añadir la nueva ruta y luego presione este botón.

paro Termine una ruta en una bifurcación sin hacer conexión a otros elementos del SFC.

subrutina/retorno Añada una llamada de subrutina.

cuadro de texto Cree un cuadro de texto. Una vez que aparece el cuadro de texto, usted puede hacer clic y
arrastrar y colocar el cuadro de texto en el lugar que desea. Haga doble clic en el cuadro de texto
para añadir texto.

Publicación 1756-QR107B-ES-P - Marzo 2004


2-6 Diagramas de funciones secuenciales

Estructura SFC_STEP
Miembro: Tipo de datos: Detalles:
T DINT Cuando un paso se activa, el valor del temporizador (T) se restablece y luego comienza a contar progresivamente en
milisegundos. El temporizador continúa contando progresivamente hasta que el paso se desactiva, independientemente del valor
preseleccionado (PRE).
PRE DINT Introduzca el tiempo en el miembro preseleccionado (PRE). Cuando el temporizador (T) llega al valor preseleccionado, el bit de
efectuado (DN) se activa y permanece activado hasta que el paso vuelva a activarse.

Como opción, introduzca una expresión numérica que calcule el tiempo durante la ejecución.
DN BOOL Cuando el temporizador (T) llega al valor preseleccionado (PRE), el bit de efectuado (DN) se activa y permanece activado hasta
que el paso vuelva a activarse.
LimitLow DINT Introduzca el tiempo en el miembro LimitLow (milisegundos).
• Si el paso se desactiva antes que el temporizador (T) llegue al valor de LimitLow, se activa el bit AlarmLow.
• El bit AlarmLow permanecerá activado hasta que usted lo restablezca.
• Para usar esta función de alarma, active (seleccione) el bit AlarmEnable (AlarmEn).
AlarmEn BOOL Para usar los bits de alarma, active (seleccione) el bit AlarmEnable (AlarmEn).
AlarmLow BOOL Si el paso se desactiva antes que el temporizador (T) llegue al valor de LimitLow, se activa el bit AlarmLow.
• Este bit permanecerá activado hasta que usted lo restablezca.
• Para usar esta función de alarma, active (seleccione) el bit AlarmEnable (AlarmEn).
LimitHigh DINT Introduzca el tiempo en el miembro LimitHigh (milisegundos).
• Si el temporizador (T) llega al valor de LimitHigh, se activará el bit AlarmHigh.
• El bit AlarmHigh permanecerá activado hasta que usted lo restablezca.
• Para usar esta función de alarma, active (seleccione) el bit AlarmEnable (AlarmEn).
AlarmEn BOOL Para usar los bits de alarma, active (seleccione) el bit AlarmEnable (AlarmEn).

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagramas de funciones secuenciales 2-7

Miembro: Tipo de datos: Detalles:


AlarmHigh BOOL Si el temporizador (T) llega al valor de LimitHigh, se activará el bit AlarmHigh.
• Este bit permanecerá activado hasta que usted lo restablezca.
• Para usar esta función de alarma, active (seleccione) el bit AlarmEnable (AlarmEn).
X BOOL El bit X está activado todo el tiempo que el paso está activo (ejecutándose).
FS BOOL El bit FS se activa durante el primer escán del paso.
SA BOOL El bit SA está activo cuando el paso está activo, excepto durante el primer y último escán del paso.
LS BOOL El bit LS se activa durante el último escán del paso. Use este bit sólo si hace lo siguiente: En el cuadro de diálogo Controller
Properties, ficha SFC Execution, establezca Last Scan of Active Step en Don’t Scan o Programmatic reset.
Reset BOOL Una instrucción SFC Reset (SFR) restablece el SFC en un paso o paro que la instrucción especifica.
• El bit de restablecimiento indica a cuál paso o paro irá el SFC para comenzar la ejecución nuevamente.
• Una vez que el SFC se ejecuta, el bit de restablecimiento se restablece.
TMax DINT Úselo para fines de diagnóstico. El controlador restablece este valor sólo cuando usted selecciona Restart Position de Restart at
initial step y el controlador cambia de modo o se desconecta y se vuelve a conectar la alimentación eléctrica.
OV BOOL Úselo para fines de diagnóstico.
Count DINT Esto no es un conteo de escanes del paso.
• El conteo incrementa cada vez que se activa el paso.
• Se incrementa nuevamente sólo después que el paso se desactiva y se vuelve a activar.
• El conteo se restablece sólo si usted configura el SFC para que se reinicie en el paso inicial. Con esa configuración, se
restablece cuando el controlador cambia del modo Programa al modo Marcha.

Publicación 1756-QR107B-ES-P - Marzo 2004


2-8 Diagramas de funciones secuenciales

Miembro: Tipo de datos: Detalles:


Status DINT Para este miembro: Use este bit:
Reset 22
AlarmHigh 23
AlarmLow 24
AlarmEn 25
OV 26
DN 27
LS 28
SA 29
FS 30
X 31

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagramas de funciones secuenciales 2-9

Estructura SFC_ACTION
Miembro: Tipo de datos: Detalles:
Q BOOL El estado del bit Q depende de si la acción es una acción booleana o una acción no booleana:
Si la acción es: Entonces el bit Q está:
booleana activado (1) durante todo el tiempo que la acción está activa, incluyendo el último
escán de la acción
no booleana activado (1) mientras la acción está activa, pero
desactivado (0) en el último escán de la acción
Si va a usar un bit para determinar cuándo está activa una acción, use el bit Q.
A BOOL El bit A está activado todo el tiempo que la acción está activa.
T DINT Cuando una acción activa, el valor del temporizador (T) se restablece y luego comienza a contar progresivamente en
milisegundos. El temporizador continúa contando progresivamente hasta que la acción se desactiva, independientemente del
valor preseleccionado (PRE).
PRE DINT Introduzca el tiempo límite o el retardo en el miembro preseleccionado (PRE). La acción comienza o se detiene cuando el
temporizador (T) llega al valor preseleccionado.
Count DINT Esto no es un conteo de escanes de la acción.
• El conteo incrementa cada vez que se activa la acción.
• Se incrementa nuevamente sólo después que la acción se desactiva y se vuelve a activar.
• El conteo se restablece sólo si usted configura el SFC para que se reinicie en el paso inicial. Con esa configuración, se
restablece cuando el controlador cambia del modo Programa al modo Marcha.
Status DINT Para este miembro: Use este bit:
Q 30
A 31

Publicación 1756-QR107B-ES-P - Marzo 2004


2 - 10 Diagramas de funciones secuenciales

Calificadores de acción
Si desea que la acción: Y: Asigne este Lo cual significa:
calificador:
comience cuando el paso se active se detenga cuando el paso se desactive N No almacenado
(predeterminado)
se ejecute sólo una vez P1 Pulso (flanco
ascendente)
se detenga antes de que se desactive el paso o cuando se desactive el L Tiempo limitado
paso
permanezca activa hasta que una acción Reset desactive esta acción S Almacenado
permanezca activa hasta que una acción Reset desactive esta acción SL Almacenado y tiempo
o caduque un tiempo específico, aunque el paso se desactive limitado
comience un tiempo específico después que el paso se active y el paso se detenga cuando el paso se desactive D Retardo de tiempo
continúe activo
permanezca activa hasta que una acción Reset desactive esta acción DS Retardado y
almacenado
comience un tiempo específico después que el paso se active, aunque el permanezca activa hasta que una acción Reset desactive esta acción SD Almacenado y retardo
paso se desactive antes de este tiempo de tiempo
se ejecute una vez cuando el paso se active se ejecute una vez cuando el paso se desactive P Pulso
comience cuando el paso se desactive se ejecute sólo una vez P0 Pulso (flanco
descendente)
desactive (restablezca) una acción almacenada: R Reset
• S Almacenado
• SL Almacenado y tiempo limitado
• DS Retardado y almacenado
• SD Almacenado y retardo de tiempo

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagramas de funciones secuenciales 2 - 11

Estructura SFC_STOP
Miembro: Tipo de Detalles:
datos:
X BOOL • Cuando el SFC llega al paro, el bit X se activa.
• El bit X se restablece si usted configura los SFC para que se reinicien en el paso inicial y el controlador cambia del
modo Programa al modo Marcha.
• En un SFC anidado, el bit X también se restablece si usted configura los SFC para restablecimiento automático, y el SFC
sale del paso que llama al SFC anidado.
Reset BOOL Una instrucción SFC Reset (SFR) restablece el SFC en un paso o paro que la instrucción especifica.
• El bit de restablecimiento indica a cuál paso o paro irá el SFC para comenzar la ejecución nuevamente.
• Una vez que el SFC se ejecuta, el bit de restablecimiento se restablece.
Count DINT Esto no es un conteo de escanes del paro.
• El conteo incrementa cada vez que se activa el paro.
• Se incrementa nuevamente sólo después que el paro se desactiva y se vuelve a activar.
• El conteo se restablece sólo si usted configura el SFC para que se reinicie en el paso inicial. Con esa configuración, se
restablece cuando el controlador cambia del modo Programa al modo Marcha.
Status DINT Para este miembro: Use este bit:
Reset 22
X 31

Publicación 1756-QR107B-ES-P - Marzo 2004


2 - 12 Diagramas de funciones secuenciales

¿Cómo desea usar la acción?


Hay dos tipos de acciones:
Si usted desea: Entonces use un/una:

ejecutar texto estructurado directamente en el SFC acción no booleana

llamar a una subrutina

usar la opción de restablecimiento automático para restablecer datos después de salir de un paso

solamente establecer un bit y programar otra lógica para monitorear el bit a fin de determinar cuándo ejecutar. acción booleana

Usar una acción no booleana


Una acción no booleana contiene la lógica para la acción. Utiliza texto estructurado para ejecutar asignaciones e instrucciones o llamar a una subrutina. Con las acciones no
booleanas, usted también tiene la opción de post-escán (restablecer automáticamente) las asignaciones e instrucciones antes de salir de un paso:
• Durante el post-escán el controlador ejecuta las asignaciones e instrucciones como si todas las condiciones fueran falsas.
• El controlador post-escanea tanto el texto estructurado incorporado como cualquier subrutina llamada por la acción.

Usar una acción booleana


Una acción booleana no contiene la lógica para la acción. Simplemente establece un bit en su tag (estructura SFC_ACTION). Para realizar la acción, otra lógica debe
monitorear el bit y ejecutarse cuando el bit se active. Con las acciones booleanas usted tiene que restablecer las asignaciones e instrucciones asociadas con la acción. Puesto que
no existe vínculo entre la acción y la lógica que realiza la acción, la opción de restablecimiento automático no afecta las acciones booleanas. Se puede reutilizar una acción
booleana múltiples veces dentro del mismo SFC.

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagramas de funciones secuenciales 2 - 13

Configurar la ejecución de un SFC


Desde el cuadro Controller Properties:

Publicación 1756-QR107B-ES-P - Marzo 2004


2 - 14 Diagramas de funciones secuenciales

Notas:

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3
Sintaxis del texto estructurado
El texto estructurado es un lenguaje de programación textual que utiliza comandos para definir lo que se va a ejecutar.
• El texto estructurado no distingue entre mayúsculas y minúsculas.
• Use tabulaciones y retornos de carro (líneas separadas) para facilitar la lectura del texto estructurado. Éstos no tienen efecto en la ejecución del texto
estructurado.
Este es un ejemplo de una rutina de texto estructurado.

Publicación 1756-QR107B-ES-P - Marzo 2004


3-2 Texto estructurado

El texto estructurado puede contener estos componentes:


Término: Definición: Ejemplos:
asignación Use un comando de asignación para asignar valores a los tags. tag := expression;
(vea la página 3-4) El := operador es el operador de asignación.
Termine la asignación con un signo de punto y coma “;”.
expresión Una expresión es una parte de una asignación completa o un comando de construcción. Una expresión
(vea la página 3-6) evalúa a un número (expresión numérica) o a un estado de verdadero o falso (expresión BOOL). Una
expresión contiene:
tags Un área con nombre de la memoria, donde se almacenan datos (BOOL, value1
SINT,INT,DINT, REAL, cadena).
inmediatos Un valor constante. 4
operadores Un símbolo o mnemónico que especifica una operación dentro de una tag1 + tag2
expresión. tag1 >= value1
funciones Cuando se ejecuta, una función produce un valor. Use paréntesis para function(tag1)
contener el operando de una función.
Aunque su sintaxis es similar, las funciones se diferencian de las
instrucciones en que las funciones sólo se pueden usar en expresiones. Las
instrucciones no se pueden usar en expresiones.
instrucción Una instrucción es un comando autónomo. instruction();
(vea la página 3-13) Una instrucción usa paréntesis para contener sus operandos.
Dependiendo de la instrucción, puede haber cero, uno o múltiples operandos. instruction(operand);
Cuando se ejecuta, una instrucción produce uno o más valores que son parte de una estructura de datos.
Termine la instrucción con un signo de punto y coma “;”. instruction(operand1, operand2,operand3);

Las instrucciones no se pueden usar en expresiones. Las funciones sólo se pueden usar en expresiones.

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3-3

Término: Definición: Ejemplos:


construcción Un comando condicional usado para activar el código de texto estructurado (por ej., otros comandos). IF...THEN
(vea la página 3-15) Termine la construcción con un signo de punto y coma “;”. CASE
FOR...DO
WHILE...DO
REPEAT...UNTIL
EXIT
comentario Texto que explica o aclara lo que hace una sección de texto estructurado. //comment
(vea la página 3-25) Use comentarios para facilitar la interpretación de texto estructurado.
Los comentarios no afectan la ejecución del texto estructurado. (*start of comment . . . end of comment*)
Los comentarios pueden aparecer en cualquier lugar del texto estructurado.
/*start of comment . . . end of comment*/

Introducir espacios en la sintaxis del texto estructurado es opcional. Los espacios no tienen efecto en la ejecución del texto estructurado. Por ejemplo, estas
dos instrucciones se ejecutan de la misma manera:

Tag_B:=Tag_A

Tag_B := tag_a

Publicación 1756-QR107B-ES-P - Marzo 2004


3-4 Texto estructurado

Asignaciones
Use una asignación para cambiar el valor almacenado en un tag. Una asignación tiene esta sintaxis:

tag := expression ;

donde:

Componente: Descripción:
tag representa el tag que obtiene el nuevo valor
el tag debe ser BOOL, SINT, INT, DINT o REAL
:= es el símbolo de la asignación
expresión representa el nuevo valor que se va a asignar al tag
Si el tag es este tipo de datos: Use este tipo de expresión:
BOOL expresión BOOL
SINT DINT expresión numérica
INT REAL
; finales de asignación

El tag retiene el valor asignado hasta que otra asignación cambia el valor.

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3-5

Cómo especificar una asignación no retentiva


Una asignación no retentiva se restablece a cero cada vez que el controlador:
• entra al modo MARCHA
• sale del paso de un SFC si usted configura el SFC para Automatic reset.
Una asignación no retentiva tiene esta sintaxis:

tag [:=] expression ;

donde:

Componente: Descripción:
tag representa el tag que obtiene el nuevo valor
el tag debe ser BOOL, SINT, INT, DINT o REAL
[:=] es el símbolo de la asignación no retentiva
expresión representa el nuevo valor que se va a asignar al tag
Si el tag es este tipo de datos: Use este tipo de expresión:
BOOL expresión BOOL
SINT DINT expresión numérica
INT REAL
; finales de asignación

Publicación 1756-QR107B-ES-P - Marzo 2004


3-6 Texto estructurado

Expresiones
Una expresión es una comparación, una ecuación o un nombre de tag. Para escribir una expresión, use cualquiera de los siguientes:
• el nombre del tag que almacena el valor (variable)
• el número que usted introduce directamente en la expresión (valor inmediato)
• funciones, tales como: ABS, TRUNC
• operadores, tales como: +, –, <, >, And, Or
Expresión BOOL: Una expresión que produce ya sea el valor BOOL de 1 (verdadero) o 0 (falso).
• Una expresión booleana usa tags bool, operadores de relación y operadores lógicos para comparar valores y verificar si las condiciones son
verdaderas o falsas. Por ejemplo, tag1>65.
• Una expresión booleana simple puede ser un tag BOOL simple.
• Normalmente se usan expresiones booleanas para condicionar la ejecución de la lógica.
Expresión numérica: Una expresión que calcula un valor entero o de punto flotante (coma flotante).
• Una expresión numérica usa operadores aritméticos, funciones aritméticas y operadores de bit. Por ejemplo, tag1+5.
• Generalmente se anida una expresión dentro de una expresión booleana. Por ejemplo, (tag1+5)>65.

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3-7

Operadores aritméticos
Los operadores aritméticos calculan valores nuevos.

Para: Use este operador: Tipo de datos óptimo:


sumar + DINT, REAL
restar/cambiar signo – DINT, REAL
multiplicar * DINT, REAL
exponente (x a la potencia de y) ** DINT, REAL
dividir / DINT, REAL
módulo-división MOD DINT, REAL

Publicación 1756-QR107B-ES-P - Marzo 2004


3-8 Texto estructurado

Funciones aritméticas
Las funciones aritméticas realizan operaciones matemáticas. Especifique una constante, un tag no booleano o una expresión para la función.

Para: Use esta función: Tipo de datos óptimo:


valor absoluto ABS (numeric_expression) DINT, REAL
arco coseno ACOS (numeric_expression) REAL
arco seno ASIN (numeric_expression) REAL
arco tangente ATAN (numeric_expression) REAL
coseno COS (numeric_expression) REAL
radianes a grados DEG (numeric_expression) DINT, REAL
logaritmo natural LN (numeric_expression) REAL
logaritmo base 10 LOG (numeric_expression) REAL
grados a radianes RAD (numeric_expression) DINT, REAL
seno SIN (numeric_expression) REAL
raíz cuadrada SQRT (numeric_expression) DINT, REAL
tangente TAN (numeric_expression) REAL
truncar TRUNC (numeric_expression) DINT, REAL

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3-9

Operadores de relación
Los operadores de relación comparan dos valores o cadenas para proporcionar un resultado verdadero o falso. El resultado de una operación de relación es
un valor BOOL:

Si la comparación es: El resultado es:


verdadero 1
falso 0

Para esta comparación: Use este operador: Tipo de datos óptimo:


igual = DINT, REAL, cadena
menor que < DINT, REAL, cadena
menor que o igual <= DINT, REAL, cadena
mayor que > DINT, REAL, cadena
mayor que o igual >= DINT, REAL, cadena
diferente <> DINT, REAL, cadena

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 10 Texto estructurado

Operadores lógicos
Los operadores lógicos permiten verificar si múltiples condiciones son verdaderas o falsas. El resultado de una operación lógica es un valor BOOL:

Si la comparación es: El resultado es:


verdadero 1
falso 0

Para: Use este operador: Tipo de datos:


logical AND &, AND BOOL
logical OR OR BOOL
logical exclusive OR XOR BOOL
logical complement NOT BOOL

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 11

Operadores de bit
Los operadores a nivel de bit manipulan los bits dentro de un valor basado en dos valores.

Para: Use este operador: Tipo de datos óptimo:


función AND &, AND DINT
función OR OR DINT
OR exclusivo, bit a bit XOR DINT
complemento bit a bit NOT DINT

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 12 Texto estructurado

Cómo determinar el orden de ejecución


Las operaciones que usted escribe en una expresión se realizan en un orden prescrito, no necesariamente de izquierda a derecha.
• Las operaciones de orden igual se realizan desde la izquierda hacia la derecha.
• Si una expresión contiene múltiples operadores o funciones, agrupe las condiciones en paréntesis “( )” para asegurar el orden correcto.

Orden: Operación:
1. ()
2. función (…)
3. **
4. − (cambiar signo)
5. NOT
6. *, /, MOD
7. +, – (restar)
8. <, <=, >, >=
9. =, <>
10. &, AND
11. XOR
12. OR

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 13

Instrucciones
Los comandos de texto estructurado también pueden ser instrucciones. Vea la tabla de ubicación al comienzo de este manual para obtener una lista de las
instrucciones disponibles en texto estructurado. Una instrucción de texto estructurado se ejecuta cada vez que se escanea. Una instrucción de texto
estructurado dentro de una construcción se ejecuta cada vez que las condiciones de la construcción son verdaderas. Si las condiciones de la construcción son
falsas, los comandos dentro de la construcción no se escanean. No hay condición de renglón ni transición de estado que active la ejecución.
Esto es diferente de las instrucciones de bloque de función que usan EnableIn para activar la ejecución. Las instrucciones de texto estructurado se ejecutan
como si EnableIn estuviera siempre establecido.
Esto también es diferente de las instrucciones de lógica de escalera de relé que usan la condición de entrada de renglón para activar la ejecución. Algunas
instrucciones de lógica de escalera de relé sólo se ejecutan cuando la condición de entrada de renglón cambia de falso a verdadero. Estas son instrucciones
de lógica de escalera de relé transitorias. En texto estructurado, las instrucciones se ejecutarán cada vez que se escaneen, a menos que usted condicione
previamente la ejecución de la instrucción de texto estructurado.
Por ejemplo, la instrucción ABL es una instrucción transitoria en la lógica de escalera de relé. En este ejemplo, la instrucción ABL sólo se ejecuta en un
escán cuando tag_xic cambia de restablecido a establecido. La instrucción ABL no se ejecuta cuando tag_xic permanece establecido ni cuando tag_xic se
restablece.

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 14 Texto estructurado

En texto estructurado, si usted escribe este ejemplo como:

IF tag_xic THEN ABL(0,serial_control);

END_IF;

La instrucción ABL se ejecutará en cada escán que tag_xic esté establecido, no sólo cuando tag_xic cambie de restablecido a establecido.
Si desea que la instrucción ABL se ejecute sólo cuando tag_xic cambia de restablecido a establecido, tiene que condicionar la instrucción de texto
estructurado. Use captación de un impulso para activar la ejecución.

osri_1.InputBit := tag_xic;
OSRI(osri_1);

IF (osri_1.OutputBit) THEN
ABL(0,serial_control);
END_IF;

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 15

Construcciones
Las construcciones pueden programarse de manera simple o anidadas dentro de otras construcciones.

Si usted desea: Use esta construcción: Vea la página:


hacer algo si o cuando ocurran condiciones específicas IF...THEN 3-16
seleccionar qué hacer basado en un valor numérico CASE...OF 3-17
hacer algo un número de veces específico antes de hacer algo diferente FOR...DO 3-19
continuar haciendo algo siempre que ciertas condiciones sean WHILE...DO 3-21
verdaderas
continuar haciendo algo hasta que una condición sea verdadera REPEAT...UNTIL 3-23

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 16 Texto estructurado

IF...THEN
Use IF…THEN para hacer algo si o cuando ocurran condiciones específicas. La sintaxis es:

IF bool_expression1 THEN
<statement >; comandos que se ejecutan cuando
bool_expression1 es verdadero
.
.
.
opcional ELSIF bool_expression2 THEN
<statement >; comandos que se ejecutan cuando
bool_expression2 es verdadero
.
.
.
opcional ELSE
<statement>; comandos que se ejecutan cuando
ambas expresiones son falsas
.
.
.
END_IF;

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 17

CASE...OF
Use CASE para seleccionar qué hacer basado en un valor numérico. La sintaxis es:
CASE numeric_expression OF
especifique la cantidad de selector1 : <statement>; comandos a ejecutar cuando
valores de selector alternativos . numeric_expression = selector1
(rutas) que necesite .
.
selector2 : <statement>; comandos a ejecutar cuando
. numeric_expression = selector2
.
.
selector3 : <statement>; comandos a ejecutar cuando
. numeric_expression = selector3
.
.
opcional ELSE

<statement>; comandos a ejecutar cuando


. numeric_expression ≠ cualquier selector
.
.

END_CASE;

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 18 Texto estructurado

La sintaxis para introducir los valores de selector es:

Cuando el selector es: Introduzca:


un valor value: statement
valores múltiples y diferentes value1, value2, valueN : <statement>

Use una coma (,) para separar cada valor.


un rango de valores value1..valueN : <statement>

Use dos puntos (..) para identificar el rango.


valores diferentes más un rango valuea, valueb, value1..valueN : <statement>
de valores

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 19

FOR…DO
Use el lazo FOR…DO para hacer algo un número de veces específico antes de hacer algo diferente. La sintaxis es:

FOR count := initial_ value


TO final_value
opcional { BY increment Si no se especifica un incremento, el lazo incrementa
un valor de 1.
DO
<statement >;
opcional IF BOOL_expression THEN
EXIT; Si existen condiciones cuando usted desea salir del
lazo anticipadamente, use otros comandos, tales
END_IF; como una construcción IF...THEN, para condicionar un
comando EXIT.

END_FOR;

Ocurrirá un fallo mayor si: Tipo de fallo: Código de fallo:


los lazos de la construcción son demasiado largos 6 1

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 20 Texto estructurado

Los siguientes diagramas muestran cómo se ejecuta un lazo FOR...DO y cómo un comando EXIT deja el lazo anticipadamente.
¿Efectuado x sí ¿Efectuado x sí
número de veces? número de veces?

no no

comando 1 comando 1
comando 2 comando 2
comando 3 comando 3
comando 4 comando 4
… …
¿Salir? sí
resto de la rutina
no

resto de la rutina

El lazo FOR…DO se ejecuta un número específico de veces. Para detener el lazo antes que el conteo llegue al último valor, use
un comando EXIT.

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 21

WHILE…DO
Use el lazo WHILE…DO para continuar haciendo algo, siempre que ciertas condiciones sean verdaderas. La sintaxis es:

WHILE bool_expression1 DO
<statement>; comandos que se ejecutan mientras
bool_expression1 es verdadero
opcional IF bool_expression2 THEN
EXIT; Si existen condiciones cuando usted desea salir del
lazo anticipadamente, use otros comandos, tales
END_IF; como una construcción IF...THEN, para condicionar un
comando EXIT.

END_WHILE;

Ocurrirá un fallo mayor si: Tipo de fallo: Código de fallo:


los lazos de la construcción son demasiado largos 6 1

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 22 Texto estructurado

Los siguientes diagramas muestran cómo se ejecuta un lazo WHILE...DO y cómo un comando EXIT deja el lazo anticipadamente.
falso falso
expresión BOOL expresión BOOL
verdadero verdadero

comando 1 comando 1
comando 2 comando 2
comando 3 comando 3
comando 4 comando 4
… …
¿Salir? sí
resto de la rutina
no

resto de la rutina

Mientras que bool_expression es verdadero, el controlador Para detener el lazo antes de que las condiciones sean
ejecuta sólo los comandos dentro del lazo WHILE…DO. verdaderas, use un comando EXIT.

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 23

REPEAT…UNTIL
Use el lazo REPEAT…UNTIL para continuar haciendo algo hasta que las condiciones sean verdaderas. La sintaxis es:

REPEAT
<statement>; comandos que se ejecutan mientras
bool_expression1 es falso
opcional IF bool_expression2 THEN
EXIT; Si existen condiciones cuando usted desea salir del
lazo anticipadamente, use otros comandos, tales
END_IF; como una construcción IF...THEN, para condicionar un
comando EXIT.

UNTIL bool_expression1
END_REPEAT;

Ocurrirá un fallo mayor si: Tipo de fallo: Código de fallo:


los lazos de la construcción son demasiado largos 6 1

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 24 Texto estructurado

Los siguientes diagramas muestran cómo se ejecuta un lazo REPEAT...UNTIL y cómo un comando EXIT deja el lazo anticipadamente.
comando 1 comando 1
comando 2 comando 2
comando 3 comando 3
comando 4 comando 4
… …
¿Salir? sí
verdadero
expresión BOOL
no
falso
verdadero
expresión BOOL
resto de la rutina
falso

resto de la rutina

Mientras que bool_expression es falso, el controlador Para detener el lazo antes de que las condiciones sean falsas, use
ejecuta sólo los comandos dentro del lazo REPEAT…UNTIL. un comando EXIT.

Publicación 1756-QR107B-ES-P - Marzo 2004


Texto estructurado 3 - 25

Comentarios
Para añadir comentarios al texto estructurado:
Para añadir un comentario: Use uno de estos formatos:
en una sola línea //comment
al final de una línea de texto estructurado (*comment*)

/*comment*/
dentro de una línea de texto estructurado (*comment*)

/*comment*/
que abarque más de una línea (*start of comment . . . end of comment*)

/*start of comment . . . end of comment*/

Publicación 1756-QR107B-ES-P - Marzo 2004


3 - 26 Texto estructurado

Notas:

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagrama de bloques de función 4
Diagrama de bloques de función
Los diagramas de bloques de función son programas visuales que pueden contener los siguientes elementos. Cada bloque de función es una instrucción que
define una acción de control.
referencia de entrada (IREF) bloque de función referencia de salida (OREF)

conector de cable de
salida (OCON)

conector de cable de entrada (ICON)

Publicación 1756-QR107B-ES-P - Marzo 2004


4-2 Diagrama de bloques de función

Cómo editar un diagrama de bloques de función.

Este botón de la barra de Crea este elemento de lógica de Descripción:


herramientas: escalera:
IREF Añadir una referencia de entrada para suministrar un valor desde un tag o dispositivo de entrada.

OREF Añadir una referencia de salida para enviar un valor a un tag o dispositivo de salida.

ICON Añadir conectores de cables de entrada y salida. Use conectores de cables para transferir datos
entre bloques de función cuando éstos están:
• bastante separados en la misma hoja
• en hojas diferentes dentro de la misma rutina
OCON
Usar conectores de cable para dispersar datos a varios puntos en la rutina, asignando un OCON a
múltiples ICON.

instrucción Seleccionar un bloque de función específico para realizar una operación con un valor o valores de
entrada y producir un valor o valores de salida
Usar las fichas ubicadas en la parte inferior de la barra de herramientas para mostrar otros
bloques de función.

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagrama de bloques de función 4-3

Enclavamiento de datos
Condición: Ejemplo:
Si usted usa una IREF para especificar datos de entrada para una instrucción de bloque de función, los datos en la
IREF se enclavan para el escán de la rutina del bloque de función. La IREF enclava datos desde los tags cubiertos por
el programa y tags cubiertos por el controlador. El controlador actualiza todos los datos IREF al comienzo de cada
escán. IREF

En este ejemplo, el valor de tagA se almacena al comienzo de la ejecución de la rutina. El valor almacenado se usa
cuando se ejecuta Block_01. El mismo valor almacenado también se usa cuando se ejecuta Block_02. Si el valor de
tagA cambia durante la ejecución de la rutina, el valor almacenado de tagA en IREF no cambia hasta la siguiente
ejecución de la rutina. tagA Block_01

Block_02

Publicación 1756-QR107B-ES-P - Marzo 2004


4-4 Diagrama de bloques de función

Condición: Ejemplo:
Este ejemplo es igual al anterior. El valor de tagA se almacena sólo una vez al comienzo de la ejecución de la rutina.
La rutina usa este valor almacenado en toda la rutina.
tagA
Block_01

tagA
Block_02

Puede usar el mismo tags en múltiples IREF y un OREF en la misma rutina. Puesto que los valores de los tags en las
IREF se enclavan en cada escán en toda la rutina, todas las IREF usarán el mismo valor, aunque una OREF obtenga un
valor de tag diferente durante la ejecución de la rutina. En este ejemplo, si tagA tiene un valor de 25.4 cuando la
rutina comienza a ejecutar este escán, y Block_01 cambia el valor de tagA a 50.9, la segunda IREF cableada en
Block_02 seguirá usando un valor de 25.4 cuando Block_02 ejecute este escán. El nuevo valor de tagA de 50.9 no
será usado por ninguna IREF en esta rutina hasta el comienzo del siguiente escán.

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagrama de bloques de función 4-5

Orden de ejecución
El software de programación RSLogix 5000 determina automáticamente el orden de ejecución de los bloques de función en una rutina cuando usted:
• verifica una rutina de bloque de función
• verifica un proyecto que contiene una rutina de bloque de función
• descarga un proyecto que contiene una rutina de bloque de función
El orden de ejecución se define cableando bloques de función juntos e indicando el flujo de datos de los cables de retroalimentación, si es necesario.
Si los bloques de función no están cableados juntos, no importa cuál bloque se ejecuta primero. No existe un flujo de datos entre los bloques.
Si usted cablea los bloques de manera secuencial, el orden de ejecución va de entrada a salida. Las entradas de un bloque requieren que los datos estén
disponibles para que el controlador pueda ejecutar dicho bloque. Por ejemplo, el bloque 2 tiene que ejecutarse antes que el bloque 3 porque las salidas del
bloque 2 alimentan a las entradas del bloque 3.
1 2 3

Publicación 1756-QR107B-ES-P - Marzo 2004


4-6 Diagrama de bloques de función

El orden de ejecución se relaciona sólo a los bloques que están cableados juntos. El siguiente es un buen ejemplo porque los dos grupos de bloques no están
cableados juntos. Los bloques dentro de un grupo específico se ejecutan en el orden apropiado en relación con los bloques de dicho grupo.
1 3 5

2 4 6

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagrama de bloques de función 4-7

Resolución de un lazo
Para crear un lazo de retroalimentación alrededor de un bloque, cablee un pin de salida de un bloque a un pin de entrada del mismo bloque. El siguiente es
un buen ejemplo. El lazo contiene un solo bloque, por lo tanto el orden de ejecución no es importante.

Este pin de entrada usa una salida que el


bloque produjo en el escán anterior.

Si hay un grupo de bloques en un lazo, el controlador no puede determinar cuál bloque debe ejecutarse primero. En otras palabras, no puede resolver el lazo.
? ? ?

Publicación 1756-QR107B-ES-P - Marzo 2004


4-8 Diagrama de bloques de función

Para identificar cuál bloque debe ejecutarse primero, marque el cable de entrada que crea el lazo (el cable de retroalimentación) con el indicador Assume Data
Available . En el siguiente ejemplo, el bloque 1 usa la salida del bloque 3 que se produjo en la ejecución previa de la rutina.
1 2 3

Este pin de entrada usa la salida que el bloque


3 produjo en el escán anterior.

Indicador “Assume Data Available”

El indicador Assume Data Available define el flujo de datos dentro del lazo. La flecha indica que el dato sirve como entrada para el primer bloque en el lazo.
No marque todos los cables de un lazo con el indicador Assume Data Available.
Esto es correcto Esto no es correcto
El controlador no puede resolver el lazo porque los cables usan el indicador Assume
1 2 Data Available.

? ?

Indicador “Assume Data Available”

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagrama de bloques de función 4-9

Resolver el flujo de datos entre dos bloques


Si usted usa dos o más cables para conectar dos bloques, use los mismos indicadores de flujo de datos para todos los cables entre los dos bloques.
Esto es correcto Esto no es correcto
Un cable usa el indicador Assume Data Available y el otro cable no.

Ningún cable usa el indicador Assume Data Available.

Indicador “Assume Data Available”

Ambos cables usan el indicador Assume Data Available.

Publicación 1756-QR107B-ES-P - Marzo 2004


4 - 10 Diagrama de bloques de función

Crear un retardo de escán


Para producir un retardo de escán entre bloques, use el indicador Assume Data Available. En el siguiente ejemplo, el bloque 1 se ejecuta primero. Utiliza la
salida del bloque 2 que se produjo en el escán anterior de la rutina.

2 1

Indicador “Assume Data Available”

Resumen
En resumen, una rutina de bloque de función se ejecuta en este orden:
1. El controlador enclava todos los valores de datos en IREF.
2. El controlador ejecuta los otros bloques de función en el orden determinado según su cableado.
3. El controlador escribe salidas en OREF.

Publicación 1756-QR107B-ES-P - Marzo 2004


Diagrama de bloques de función 4 - 11

Definir el control de programa/operador


Hay varias instrucciones compatibles con el concepto de control de programa/operador. Estas instrucciones incluyen:
• Enhanced Select (ESEL)
• Totalizer (TOT)
• Enhanced PID (PIDE)
• Ramp/Soak (RMPS)
• Discrete 2-State Device (D2SD)
• Discrete 3-State Device (D3SD)
El control de programa/operador permite controlar estas instrucciones simultáneamente desde el programa de usuario y desde un dispositivo de interface
de operador. En control de programa, la instrucción es controlada por las entradas del programa a la instrucción; En control de operador, la instrucción es
controlada por las entradas del operador a la instrucción.
El control de programa u operador se determina mediante el uso de estas entradas:

Entrada: Descripción:
.ProgProgReq Una petición del programa para ir a control de programa.
.ProgOperReq Una petición del programa para ir a control de operador.
.OperProgReq Una petición del operador para ir a control de programa.
.OperOperReq Una petición del operador para ir a control de operador.

Publicación 1756-QR107B-ES-P - Marzo 2004


4 - 12 Diagrama de bloques de función

Para determinar si una instrucción está en control de programa o de operador, examine la salida ProgOper. Si ProgOper está establecido, la instrucción está
en control de programa; Si ProgOper está restablecido, la instrucción está en control de operador.
Control: Descripción:
programa Las entradas de petición de programa tienen precedencia sobre las entradas de petición de operador. Esto proporciona la capacidad de
usar las entradas ProgProgReq y ProgOperReq para “bloquear” una instrucción en un control deseado.
El establecer constantemente ProgProgReq puede “bloquear” la instrucción en control de programa. Esto es útil para las secuencias de
puesta en marcha automática cuando usted desea que el programa controle la acción de la instrucción sin preocuparse de que un
operador tome control accidentalmente de la instrucción. En este ejemplo el programa establece la entrada ProgProgReq durante la
puesta en marcha y luego restablece la entrada ProgProgReq una vez que concluye la puesta en marcha. Una vez que se restablece la
entrada ProgProgReq, la instrucción permanece en control de programa hasta que recibe una petición de cambiar. Por ejemplo, el
operador podría establecer la entrada OperOperReq desde la carátula para asumir el control de esa instrucción.
Las entradas de petición de programa normalmente no son restablecidas por la instrucción porque éstas normalmente están cableadas
como entradas en la instrucción. Si la instrucción establece estas entradas, la entrada sería establecida nuevamente por la entrada
cableada. Pueden haber situaciones en las que usted desee usar otra lógica para establecer las peticiones del programa de manera tal
que desee que las peticiones del programa sean restablecidas por la instrucción. En este caso puede establecer la entrada
ProgValueReset y la instrucción siempre restablecerá las entradas de petición del modo programa cuando ésta se ejecute.
operador Las entradas de petición de operador a una instrucción siempre son restablecidas por la instrucción cuando ésta se ejecuta. Esto permite
que las interfaces de operador funcionen con estas instrucciones simplemente estableciendo el bit de petición del modo deseado. No es
necesario programar la interface de operador para restablecer los bits de petición.
El control de operador tiene precedencia sobre el control de programa si ambos bits de petición de entrada están establecidos. Por
ejemplo, si ProgProgReq y ProgOperReq están establecidos, la instrucción pasa a control de operador.

Publicación 1756-QR107B-ES-P - Marzo 2004


Lógica de escalera de relé 5
Lógica de escalera de relé
La lógica de escalera de relé coloca instrucciones de entrada y salida en los renglones.
instrucciones de entrada instrucciones de salida

bifurcaciones

Publicación 1756-QR107B-ES-P - Marzo 2004


5-2 Lógica de escalera de relé

No hay un límite del número de niveles de bifurcación en paralelo que usted puede introducir. La figura siguiente muestra una bifurcación en paralelo con
cinco niveles. El renglón principal es el primer nivel de bifurcación, seguido por cuatro bifurcaciones adicionales.

Se pueden anidar las bifurcaciones hasta en 6 niveles. La figura siguiente muestra una bifurcación anidada. La instrucción de salida inferior se encuentra en
una bifurcación anidada que tiene tres niveles.

Publicación 1756-QR107B-ES-P - Marzo 2004


Lógica de escalera de relé 5-3

Edición de la lógica de escalera de relé

Este botón de la barra de Crea este elemento de lógica de Descripción:


herramientas: escalera:
renglón de lógica de escalera Un renglón determina el orden de ejecución de las instrucciones de entrada y salida.

bifurcación Una bifurcación consta de dos o más instrucciones en paralelo.

un nivel de bifurcación No hay un límite del número de niveles de bifurcación en paralelo que usted puede introducir.
Se pueden anidar las bifurcaciones hasta en 6 niveles.

instrucción Instrucción de entrada: Una instrucción que verifica, compara o examina condiciones
específicas de la máquina o proceso.
Instrucción de salida: Una instrucción que realiza una acción, tal como encender un
dispositivo, apagar un dispositivo, copiar datos o calcular un valor.
Usar las fichas ubicadas en la parte inferior de la barra de herramientas para mostrar otras
instrucciones disponibles.

Publicación 1756-QR107B-ES-P - Marzo 2004


5-4 Lógica de escalera de relé

Condición de renglón
El controlador evalúa las instrucciones de lógica de escalera según la condición de renglón que precede a la instrucción (condición de entrada del renglón).

instrucción de entrada instrucción de salida

condición de entrada de renglón condición de salida del renglón

Sólo las instrucciones de entrada afectan la condición de entrada de renglón de instrucciones subsiguientes en el renglón.
• Si la condición de entrada del renglón a una instrucción de entrada es verdadera, el controlador evalúa la instrucción y establece la condición de
salida del renglón para que coincida con los resultados de la evaluación.
– Si la instrucción se evalúa como verdadera, la condición de salida del renglón es verdadera.
– Si la instrucción se evalúa como falsa, la condición de salida del renglón es falsa.
• Una instrucción de salida no cambia la condición de salida del renglón.
– Si la condición de entrada del renglón a una instrucción de salida es verdadera, la condición de salida del renglón se establece como verdadera.
– Si la condición de entrada del renglón a una instrucción de salida es falsa, la condición de salida del renglón se establece como falsa.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6
Valores del sistema almacenados por el controlador
El controlador almacena automáticamente información de estado diferente:

Si usted desea: Vea la página:


usar contraseñas específicas en la lógica para monitorear condiciones de estado 6-2
específicas
obtener o establecer datos del sistema (información de estado) 6-3
la información de estado disponible – objetos GSV/SSV 6-5
obtener información sobre la memoria del controlador 6-26

Publicación 1756-QR107B-ES-P - Marzo 2004


6-2 Acceso a valores del sistema

Monitoreo de los indicadores de estado


El controlador acepta contraseñas de estado que usted puede usar en la lógica para monitorear eventos específicos:

Para determinar si: Use:


el valor que va a almacenar no cabe en el destino por cualquiera de las siguientes razones: S:V
• es mayor que el valor máximo para el destino
• es menor que el valor mínimo para el destino

Importante: Cada vez que S:V cambia de restablecido a establecido, se genera un fallo menor (tipo 4, código 4)
el valor de destino de la instrucción es 0 S:Z
el valor de destino de la instrucción es negativo S:N
una operación aritmética causa un acarreo o un acarreo negativo que trata de usar bits que están fuera del tipo de datos S:C
éste es el primer escán normal de las rutinas en el programa actual S:FS
por lo menos se generó un fallo menor: S:MINOR
• El controlador establece este bit cuando ocurre un fallo menor debido a la ejecución del programa.
• El controlador no establece este bit por fallos menores que no están relacionados con la ejecución del programa,
como por ejemplo batería baja.

Las contraseñas de estado no distinguen entre mayúsculas y minúsculas. Debido a que los indicadores de estado pueden cambiar rápidamente, el software RSLogix 5000
no muestra el estado de los indicadores. No es posible definir un alias de tag en relación con una contraseña.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6-3

Obtener y establecer datos del sistema (información de estado)


El controlador almacena datos de sistema en los objetos. No hay un archivo de estado, a diferencia del controlador PLC-5. Use las instrucciones GSV/SSV
para obtener y establecer datos de sistema del controlador almacenados en los objetos. Para obtener o establecer un valor del sistema:

1. Seleccione el objeto del sistema que desea.

Para obtener o establecer: Seleccione: Para obtener o establecer: Seleccione:


eje de un servomódulo AXIS estado, fallos y modo de un módulo MODULE
tiempo de procesamiento interno del sistema CONTROLLER grupo de ejes MOTIONGROUP
hardware físico de un controlador CONTROLLERDEVICE información de fallo o tiempo de escán para un PROGRAM
programa
tiempo coordinado del sistema para los dispositivos en CST número de instancia de una rutina ROUTINE
un chasis
driver de comunicación DF1 para el puerto en serie DF1 configuración del puerto en serie SERIALPORT
historial de fallos para un controlador FAULTLOG propiedades o tiempo transcurrido de una tarea TASK
atributos de una instrucción de mensaje MESSAGE hora del reloj de un controlador WALLCLOCKTIME

2. En la lista de atributos del objeto, identifique el atributo al que desea acceder.

Publicación 1756-QR107B-ES-P - Marzo 2004


6-4 Acceso a valores del sistema

3. Cree un tag para el valor del atributo:


Si el tipo de datos del atributo es: Entonces:
un elemento (por ej., DINT) Cree un tag para el atributo.
más de un elemento (por ej., DINT[7] ) A. Cree un tipo de datos definido por el usuario con una organización de datos igual a la
usada por el atributo.
B. Cree un tag para el atributo.

4. En la lógica, use una instrucción GSV para obtener el valor de un atributo o una instrucción SSV para establecer el valor de un atributo.

5. Asigne los operandos requeridos para la instrucción:

Para este operando: Seleccione:


Class name nombre del objeto
Instance name nombre del objeto específico (por ej., nombre del módulo de E/S, tarea, mensaje requerido)
No todos los objetos requieren esta entrada.
Para especificar la tarea, programa o rutina actual, seleccione THIS.
Attribute Name nombre del atributo
Dest (GSV) tag que almacenará el valor recuperado
Si el tag es un tipo de datos definido por el usuario, o una matriz, seleccione el primer miembro o
elemento.
Source (SSV) tag que almacena el valor que se va a establecer
Si el tag es un tipo de datos definido por el usuario, o una matriz, seleccione el primer miembro o
elemento.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6-5

Información de estado disponible – objetos GSV/SSV

Atributos de CONTROLLER
Atributo: Tipo de datos: Instrucción: Descripción:
TimeSlice INT GSV El porcentaje de la CPU disponible que se asigna a las comunicaciones. Los valores válidos son 10-90. Este
SSV valor no puede cambiarse cuando el interruptor de llave se encuentra en la posición de marcha.

Atributos de CONTROLLERDEVICE
Atributo: Tipo de datos: Instrucción: Descripción:
DeviceName SINT[33] GSV La cadena ASCII que identifica el número de catálogo del controlador y tarjeta de memoria. El primer byte
contiene un conteo del número de los caracteres ASCII retornados en la cadena de matriz.
ProductCode INT GSV Identifica el tipo de controlador:
Valor: Significado:
3 ControlLogix5550
15 SoftLogix5860
41 FlexLogix5433
43 FlexLogix5434
48 PowerFlex 700S con DriveLogix5720
50 CompactLogix5320
51 ControlLogix5555
52 PowerFlex 700S con DriveLogix5730

Publicación 1756-QR107B-ES-P - Marzo 2004


6-6 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


ProductRev INT GSV Identifica la revisión de producto actual. La visualización debe ser hexadecimal. El byte inferior contiene la
revisión mayor; El byte superior contiene la revisión menor.
SerialNumber DINT GSV Nombre de serie del dispositivo. Se asigna el número de serie cuando se construye el dispositivo.
Status INT GSV Bits de estado del dispositivo Bits de estado del controlador
Bits 7-4: Significado: Bits 13-12: Significado:
0000 reservado 01 interruptor de llave en marcha
0001 actualización de flash
en curso 10 interruptor de llave en programa
0010 reservado 11 interruptor de llave en remoto
0011 reservado
0100 flash defectuosa Bits 15-14 Significado:
0101 con fallo 01 el controlador está cambiando de modo
0110 marcha 10 modo de depuración si el controlador está en
el modo marcha
0111 programa

Bits de estado de fallo


Bits 11-8: Significado:
0001 fallo menor recuperable
0010 fallo menor no recuperable
0100 fallo mayor recuperable
1000 fallo mayor no recuperable
Type INT GSV Identifica el dispositivo como controlador. Controlador = 14
Vendor INT GSV Identifica el suministrador del dispositivo. Allen-Bradley = 0001

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6-7

Atributos de CST
Atributo: Tipo de datos: Instrucción: Descripción:
CurrentStatus INT GSV El estado actual de la hora coordinada del sistema.
Bit: Significado:
0 hardware del temporizador en fallo: El hardware del temporizador interno del dispositivo está en
un estado de fallo
1 rampa habilitada: El valor actual de los 16+
bits inferiores del temporizador aumentan al valor solicitado en lugar de ubicarse en el valor
inferior.
2 maestro de la hora del sistema: el objeto CST es el origen de la hora del maestro en el sistema
ControlLogix
3 sincronizado: un objeto de CST maestro sincroniza el CurrentValue de 64 bits del objeto CST
mediante una actualización de la hora del sistema
4 maestro de red local: el objeto CST es el origen de la hora del maestro de la red local
5 en el modo relé: el objeto CST funciona en un modo de relé de tiempo
6 se detectó un maestro duplicado: se ha detectado un maestro de hora duplicado de la red local.
Este bit siempre es 0 para los nodos dependientes del tiempo.
7 no se usa
8-9 00 = nodo dependiente del tiempo
01 = nodo maestro de tiempo
10 = nodo de relé de tiempo
11 = no se usa
10-15 no se usa
CurrentValue DINT[2] GSV El valor actual del temporizador. DINT[0] contiene los 32 bits inferiores; DINT[1] contiene los 32 bits
superiores. El origen del temporizador se ajusta para coincidir con el valor suministrado en los servicios de
actualización y la sincronización de red de comunicación local. El ajuste representa un aumento al valor
solicitado o un establecimiento inmediato en el valor solicitado, según se indica en el atributo CurrentStatus.

Publicación 1756-QR107B-ES-P - Marzo 2004


6-8 Acceso a valores del sistema

Atributos de DF1
Atributo: Tipo de datos: Instrucción: Descripción:
ACKTimeout DINT GSV La cantidad de tiempo necesaria para esperar una confirmación de una transmisión de mensaje (punto a
punto y maestro solamente). Los valores válidos son 0-32,767. Retardo en conteos de períodos de 20 mseg.
El valor predeterminado es 50 (1 segundo).
DiagnosticCounters INT[19] GSV Matriz de contadores diagnósticos para el variador de comunicación DF1.
Offset de palabra punto a punto DF1 esclavo DF1 maestro
0 firma (0x0043) firma (0x0042) firma (0x0044)
1 bits de módem bits de módem bits de módem
2 paquetes enviados paquetes enviados paquetes enviados
3 paquetes recibidos paquetes recibidos paquetes recibidos
4 paquetes no entregados paquetes no entregados paquetes no entregados
5 no se usa reintentos de mensajes reintentos de mensajes
6 NAK recibidos NAK recibidos no se usa
7 ENQ enviados paquetes de encuesta recibidos no se usa
8 paquetes deficientes NAK paquetes deficientes sin ACK paquetes deficientes sin ACK
9 memoria no enviada sin NAK ninguna memoria sin ACK no se usa
10 paquetes duplicados recibidos paquetes duplicados recibidos paquetes duplicados recibidos
11 caracteres deficientes recibidos no se usa no se usa
12 conteo de recuperaciones DCD conteo de recuperaciones DCD conteo de recuperaciones DCD
13 conteo de módem perdido conteo de módem perdido conteo de módem perdido
14 no se usa no se usa máximo de tiempo de escán de prioridad
15 no se usa no se usa último tiempo de escán de prioridad
16 no se usa no se usa máximo de tiempo de escán normal
17 no se usa no se usa último tiempo de escán normal
18 ENQ enviados no se usa no se usa

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6-9

Atributo: Tipo de datos: Instrucción: Descripción:


DuplicateDetection SINT GSV Habilita la detección de mensajes duplicados.
Valor: Significado:
0 detección de mensajes duplicados inhabilitada
no cero detección de mensajes duplicados habilitada
EmbeddedResponseEnable SINT GSV Habilita la funcionalidad de respuesta incorporada (punto a punto solamente).
Valor: Significado:
0 se inicia solamente después de que se recibe uno
(como opción predeterminada) 1 habilitación sin condiciones
ENQTransmitLimit SINT GSV El número de indagaciones (ENQ) que se envían después del tiempo de espera ACK (punto a punto
solamente). Los valores válidos son 0-127. El establecimiento predeterminado es 3.
EOTSuppression SINT GSV Habilita la supresión de transmisiones EOT como respuesta a los paquetes de encuesta (esclavo
solamente).
Valor: Significado:
0 supresión EOT inhabilitada
sin cero supresión EOT habilitada
ErrorDetection SINT GSV Especifica el esquema de detección de errores.
Valor: Significado:
0 BCC (predeterminado)
1 CRC
MasterMessageTransmit SINT GSV El valor actual de la transmisión del maestro de mensaje (maestro solamente).
Valor: Significado:
0 entre encuestas de estación (predeterminado)
1 en secuencia de encuesta (en lugar del número de estación del maestro)
NAKReceiveLimit SINT GSV El número de NAK recibidos como respuesta a un mensajes antes de detener la transmisión (comunicación
de punto a punto solamente). Los valores válidos son 0-127. El valor predeterminado es 3.

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 10 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


NormalPollGroupSize INT GSV El número de estaciones que se encuestan en la matriz de nodos de encuesta normal después de
encuestarse todas las estaciones en la matriz de nodos de encuesta de prioridad (maestro solamente).
Los valores válidos son 0-255. El valor predeterminado es 0.
PollingMode SINT GSV El modo de encuesta actual (maestro solamente). El establecimiento predeterminado es 1.
Valor: Significado:
0 basado en mensajes; no permite esclavos para iniciar mensajes
1 basado en mensajes; permite que los esclavos inicien mensajes (predeterminado)
2 transferencia de estándar de mensaje único por escán de nodo
3 transferencia de estándar de múltiples mensajes por escán de nodo
ReplyMessageWait DINT GSV El tiempo (actuando como maestro) que se debe esperar después de recibirse un ACK antes de encuestarse
el esclavo en busca de una respuesta (maestro solamente). Los valores válidos son 0-65,535. Retardo en
conteos de períodos de 20 mseg. El establecimiento predeterminado es 5 períodos (100 mseg).
StationAddress INT GSV Dirección de estación actual del puerto en serie. Los valores válidos son 0-254. El valor predeterminado es
0.
SlavePollTimeout DINT GSV La cantidad de tiempo en mseg que espera el esclavo hasta que el maestro realiza una encuesta antes de
que el esclavo indique que no puede transmitir debido a la inactividad del maestro (esclavo solamente). Los
valores válidos son 0-32,767. Retardo en conteos de períodos de 20 mseg. El establecimiento
predeterminado es 3000 períodos (1 minuto).
TransmitRetries SINT GSV El número de veces que se puede volver a enviar un mensaje sin obtenerse una confirmación (maestro y
esclavo solamente).
Los valores válidos son 0-127. El valor predeterminado es 3.
PendingACKTimeout DINT SSV Valor pendiente para el atributo ACKTimeout.
PendingDuplicateDetection SINT SSV Valor pendiente para el atributo DuplicateDetection.
PendingEmbeddedResponseEnable SINT SSV Valor pendiente para el atributo EmbeddedResponse.
PendingENQTransmitLimit SINT SSV Valor pendiente para el atributo ENQTransmitLimit.
PendingEOTSuppression SINT SSV Valor pendiente para el atributo EOTSuppression.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 11

Atributo: Tipo de datos: Instrucción: Descripción:


PendingErrorDetection SINT SSV Valor pendiente para el atributo ErrorDetection.
PendingNormalPollGroupSize INT SSV Valor pendiente para el atributo NormalPollGroupSize.
PendingMasterMessageTransmit SINT SSV Valor pendiente para el atributo MasterMessageTransmit.
PendingNAKReceiveLimit SINT SSV Valor pendiente para el atributo NAKReceiveLimit.
PendingPollingMode SINT SSV Valor pendiente para el atributo PollingMode.
PendingReplyMessageWait DINT SSV Valor pendiente para el atributo ReplyMessageWait.
PendingStationAddress INT SSV Valor pendiente para el atributo StationAddress.
PendingSlavePollTimeout DINT SSV Valor pendiente para el atributo SlavePollTimeout.
PendingTransmitRetries SINT SSV Valor pendiente para el atributo TransmitRetries.

Atributos de FAULTLOG
Atributo: Tipo de datos: Instrucción: Descripción:
MajorEvents INT GSV Cuántos fallos mayores han ocurrido desde la última vez que se restableció este contador.
SSV
MinorEvents INT GSV Cuántos fallos menores han ocurrido desde la última vez que se restableció este contador.
SSV

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 12 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


MajorFaultBits DINT GSV Los bits individuales indican la razón del fallo mayor actual.
SSV Bit: Significado:
1 corte de energía
3 E/S
4 ejecución de instrucción (programa)
5 administrador de fallos
6 temporizador de control (watchdog)
7 pila
8 cambio de modo
11 movimiento
MajorFaultBits DINT GSV Los bits individuales indican la razón del fallo menor actual.
SSV Bit: Significado:
4 ejecución de instrucción (programa)
6 temporizador de control (watchdog)
9 puerto en serie
10 batería

Atributos de MESSAGE
Atributo: Tipo de datos: Instrucción: Descripción:
ConnectionPath SINT[130] GSV Los datos necesarios para configurar la ruta de conexión. Los dos primeros bytes (byte inferior y byte superior)
SSV representan la longitud en bytes de la ruta de conexión.
ConnectionRate DINT GSV Régimen de paquete solicitado de la conexión.
SSV

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 13

Atributo: Tipo de datos: Instrucción: Descripción:


MessageType SINT GSV Especifica el tipo de mensaje.
SSV Valor: Significado:
0 no inicializado
Port SINT GSV Indica el puerto en que se debe enviar el mensaje.
SSV Valor: Significado:
1 backplane
2 puerto en serie
TimeoutMultiplier SINT GSV Determina cuándo una conexión se debe considerar como que ha sobrepasado el tiempo de espera y cerrado.
SSV Valor: Significado:
0 la conexión sobrepasará el tiempo de espera en un lapso igual a 4 veces el régimen de
actualización
(predeterminado)
1 la conexión sobrepasará el tiempo de espera en un lapso igual a 8 veces el régimen de
actualización 2 la conexión sobrepasará el tiempo de espera en un lapso igual a 16 veces el
régimen de actualización
UnconnectedTimeout DINT GSV El tiempo de espera en microsegundos para todos los mensajes no conectados. La opción predeterminada es
SSV 30,000,000 microsegundos (30 seg.).

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 14 Acceso a valores del sistema

Atributos de MODULE
Atributo: Tipo de datos: Instrucción: Descripción:
EntryStatus INT GSV Especifica el estado actual de la entrada de mapa especificada. Los 12 bits inferiores se deben
enmascarar cuando se realiza una operación de comparación. Solamente los bits 12-15 son válidos.
Valor: Significado:
16#0000 Reserva: el controlador se enciende.
16#1000 Con fallo: cualquiera de las conexiones del objeto MODULE al módulo asociado entran en
fallo. No se debe usar este valor para determinar si el módulo ha entrado en fallo puesto que
el objeto MODULE sale periódicamente de este estado cuando intenta volver a conectarse al
módulo. En lugar de ello, realice una prueba para ver si hay un Estado de marcha (16#4000).
Verifique si hay un FaultCode que no sea igual a 0
para determinar si un módulo ha entrado en fallo. Una vez que han entrado en fallo, los
atributos FaultCode y FaultInfo son válidos hasta que se corrige la condición de fallo.
16#2000 Validación: el objeto MODULE está verificando la integridad del objeto MODULE antes de
establecer las conexiones al módulo.
16#3000 Conexión: el objeto MODULE inicia las conexiones al módulo.
16#4000 Se ejecuta: todas las conexiones al módulo han sido establecidas y los datos se están
transfiriendo.
16#5000 Desactivación: el objeto MODULE está en proceso de desactivar todas las conexiones al
módulo.
16#6000 Inhibido: el objeto MODULE se inhibe (el bit de inhibición está establecido en el atributo de
Modo).
16#7000 En espera: no funciona el objeto MODULE primario del cual depende este objeto MODULE.
FaultCode INT GSV Un número que identifica un fallo del módulo, si ocurre.
FaultInfo DINT GSV Especifica información específica acerca del código de fallo del objeto MODULE.
ForceStatus INT GSV Especifica el estado de los forzados.
Bit: Significado:
0 forzados instalados (1=sí, 0=no)
1 forzados habilitados (1=sí, 0=no)
Instance DINT GSV Proporciona el número de instancia de este objeto MODULE.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 15

Atributo: Tipo de datos: Instrucción: Descripción:


LEDStatus INT GSV Especifica el estado actual del indicador LED de E/S en la parte frontal del controlador.
Valor: Significado:
0 Indicador LED apagado: No hay objetos MODULE configurados para el controlador
(no hay módulos en la sección I/O Configuration del Controller Organizer).
1 Rojo parpadeante: No se ejecutan los objetos MODULE.
2 Verde parpadeante: No se ejecuta por lo menos un objeto MODULE.
3 Verde fijo: Se ejecutan todos los objetos del módulo.
Nota: No introduzca un nombre de objeto con este atributo puesto que el atributo se aplica a toda la
recolección de módulos.
Mode INT GSV Especifica el modo actual del objeto MODULE.
SSV Bit: Significado:
0 Si se establece, causa que se genere un fallo mayor si cualquiera de las conexiones del
objeto MODULE entran en fallo mientras el controlador esté en el modo marcha.
2 Si se establece, causa que el objeto MODULE entre en el estado inhibido después de
desactivar todas las conexiones al módulo.

Atributos de PROGRAM
Atributo: Tipo de datos: Instrucción: Descripción:
DisableFlag SINT GSV Controla la ejecución de este programa.
SSV Valor: Significado:
0 ejecución habilitada
1 ejecución inhabilitada
Instance DINT GSV Proporciona el número de instancia de este objeto PROGRAM.

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 16 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


LastScanTime DINT GSV El tiempo necesario para ejecutar este programa desde la última vez que se ejecutó. El tiempo se representa
SSV en microsegundos.
MajorFaultRecord DINT[11] GSV Registra los fallos mayores para este programa
SSV Recomendamos que usted cree una estructura definida por el usuario para simplificar el acceso al atributo
MajorFaultRecord:
Nombre: Tipo de datos: Estilo: Descripción:
TimeLow DINT Decimal los 32 bits inferiores de un valor de sello de hora de fallo
TimeHigh DINT Decimal los 32 bits superiores de un valor de sello de hora de fallo
Type INT Decimal tipo de fallo (programa, E/S, etc.)
Code INT Decimal código único para el fallo (depende del tipo de fallo)
Info DINT[8] Hexadecimal información acerca de un fallo específico (depende del tipo y código de fallo)
MaxScanTime DINT GSV El tiempo de ejecución máximo registrado para este programa. El tiempo se representa en microsegundos.
SSV
MinorFaultRecord DINT[11] GSV Registra los fallos menores para este programa
SSV Recomendamos que usted cree una estructura definida por el usuario para simplificar el acceso al atributo
MinorFaultRecord:
Nombre: Tipo de datos: Estilo: Descripción:
TimeLow DINT Decimal los 32 bits inferiores de un valor de sello de hora de fallo
TimeHigh DINT Decimal los 32 bits superiores de un valor de sello de hora de fallo
Type INT Decimal tipo de fallo (programa, E/S, etc.)
Code INT Decimal código único para el fallo (depende del tipo de fallo)
Info DINT[8] Hexadecimal información acerca de un fallo específico (depende del tipo y código de fallo)
SFCRestart INT GSV no se usa – reservado para uso futuro
SSV

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 17

Atributos de REDUNDANCY
Atributo: Tipo de datos: Instrucción: Descripción:
ChassisRedundancyState INT GSV Estado de redundancia de todo el chasis.
Valor: Significado:
16#1 encendido o indeterminado
16#2 primario con secundario calificado
16#3 primario con secundario no calificado
16#4 primario sin secundario
CompatibilityResults INT GSV Los resultados de las verificaciones de compatibilidad con el controlador homólogo.
Valor: Significado:
0 indeterminado
1 sin homólogo compatible
2 homologo totalmente compatible
KeyswitchAlarm DINT GSV Los ajustes del interruptor de llave del controlador y su homólogo coinciden o no coinciden.
Valor: Significado:
0 los interruptores de llave coinciden o no hay un homólogo presente
1 los interruptores de llave no coinciden
ModuleRedundancyState INT GSV Estado de redundancia del controlador.
Valor: Significado:
16#1 encendido o indeterminado
16#2 primario con secundario calificado
16#3 primario con secundario no calificado
16#4 primario sin secundario
16#6 primario con secundario con calificación

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 18 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


PartnerChassisRedundancyState INT GSV Estado de redundancia del chasis homólogo.
Valor: Significado:
16#8 secundario calificado
16#9 secundario no calificado con primario
PartnerKeyswitch DINT GSV Posición del interruptor de llave del homologo.
Valor: Significado:
0 desconocido
1 RUN
2 PROG
3 REM
PartnerMinorFaults DINT GSV Fallos menores del homólogo (si ModuleRedundancyState indica que hay un homólogo presente).
Valor: Significado:
4 problema con una instrucción (programa)
6 superposición de tarea periódica (watchdog)
9 problema con puerto en serie
10 batería baja

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 19

Atributo: Tipo de datos: Instrucción: Descripción:


PartnerMode DINT GSV Modo del homólogo.
Valor: Significado:
16#0 encendido
16#1 programa
16#2 marcha
16#3 prueba
16#4 en fallo
16#5 marcha a programa
16#6 prueba a programa
16#7 programa a marcha
16#8 prueba a marcha
16#9 marcha a prueba
16#A programa a prueba
16#B entrada a fallo
16#C en fallo a programa
PartnerModuleRedundancyState INT GSV Estado de redundancia del homólogo.
Valor: Significado:
16#7 secundario con calificación
16#8 secundario calificado
16#9 secundario no calificado con primario
PhysicalChassisID INT GSV En una pareja de chasis redundantes, identifica a un chasis específico independientemente del estado del
chasis.
Valor: Significado:
0 desconocido
1 Chasis A
2 Chasis B

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 20 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


QualificationInProgress INT GSV Estado del proceso de calificación.
Valor: Significado:
–1 la calificación no está en curso
0 incompatible
1 – 99 para módulos que pueden medir su porcentaje de integridad, el porcentaje de calificación
completo; para módulos que no pueden medir su porcentaje de integridad, 50 = calificación en
curso y 100 = calificación completa.
SRMSlotNumber INT GSV El número de ranura del módulo 1757-SRM en este chasis
LastDataTransferSize DINT GSV Este atributo sólo es válido en un controlador primario configurado para redundancia.
Si: Entonces ese valor es:
un homólogo sincronizado está cantidad de datos últimamente
presente transferidos al homólogo, especificados en DINT

no hay un homólogo presente o cantidad de datos que últimamente se hubieran transferido a un homólogo
sincronizado, un homólogo no especificado en DINT
calificado está presentes
MaxDataTransferSize DINT GSV Valor máximo del atributo LastDataTransferSize. Este atributo sólo es válido en un controlador primario
SSV configurado para redundancia. Para restablecer este valor, use una instrucción SSV con un valor de origen de
0.

Atributos de ROUTINE
Atributo: Tipo de datos: Instrucción: Descripción:
Instance DINT GSV Proporciona el número de instancia de este objeto ROUTINE. Los valores válidos son 0-65,535.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 21

Atributos de SERIALPORT
Atributo: Tipo de datos: Instrucción: Descripción:
BaudRate DINT GSV Especifica la velocidad en baudios. Los valores válidos son 110, 300, 600, 1200, 2400, 4800, 9600 y
19200 (predeterminados).
DataBits SINT GSV Especifica el número de bits de datos por carácter.
Valor: Significado:
7 7 bits de datos (ASCII solamente)
8 8 bits de datos (opción predeterminada)
Parity SINT GSV Especifica la paridad.
Valor: Significado:
0 sin paridad (sin paridad predeterminada)
1 imparidad (ASCII solamente)
2 paridad
RTSOffDelay INT GSV La cantidad de tiempo necesario para retardar la desconexión de la línea RTS después de la transmisión del
último carácter. Los valores válidos son 0-32,767. Retardo en conteos de períodos de 20 mseg. El valor
predeterminado es 0 mseg.
RTSSendDelay INT GSV La cantidad de tiempo necesario para retardar la transmisión del primer carácter de un mensaje después de
activar la línea RTS. Los valores válidos son 0-32,767. Retardo en conteos de períodos de 20 mseg. El valor
predeterminado es 0 mseg.
StopBits SINT GSV Especifica el número de bits de paro.
Valor: Significado:
1 1 bit de paro (opción predeterminada)
2 2 bits de paro (ASCII solamente)
PendingBaudRate DINT SSV Valor pendiente para el atributo BaudRate.
PendingDataBits SINT SSV Valor pendiente para el atributo DataBits.
PendingParity SINT SSV Valor pendiente para el atributo Parity.

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 22 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


PendingRTSOffDelay INT SSV Valor pendiente para el atributo RTSOffDelay.
PendingRTSSendDelay INT SSV Valor pendiente para el atributo RTSSendDelay.
PendingStopBits SINT SSV Valor pendiente para el atributo StopBits.

Atributos de TASK
Atributo: Tipo de datos: Instrucción: Descripción:
DisableUpdateOutputs DINT GSV Habilita o inhabilita el procesamiento de salidas al final de una tarea.
SSV Valor: Significado:
0 habilita el procesamiento de salidas al final de una tarea
no cero inhabilita el procesamiento de salidas al final de una tarea
InhibitTask DINT GSV Evita que se ejecute la tarea. Si se inhibe una tarea, el controlador igualmente preescanea la tarea cuando el
SSV controlador cambia del modo programa a marcha o prueba.
Valor: Significado:
0 habilita la tarea 0 (predeterminado)
no cero inhibe (inhabilita) la tarea
Instance DINT GSV Proporciona el número de instancia de este objeto TASK. Los valores válidos son 0-31.
LastScanTime DINT GSV El tiempo necesario para ejecutar esta tarea desde la última vez que se ejecutó. El tiempo se representa en
SSV microsegundos.
MaxInterval DINT[2] GSV El intervalo de tiempo máximo entre las ejecuciones sucesivas de la tarea. DINT[0] contiene los 32 bits
SSV inferiores del valor; DINT[1] contiene los 32 bits superiores del valor. Un valor de 0 indica 1 ó menos
ejecuciones de la tarea.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 23

Atributo: Tipo de datos: Instrucción: Descripción:


MaxScanTime DINT GSV El tiempo de ejecución máximo registrado para este programa. El tiempo se representa en microsegundos.
SSV
MinxInterval DINT[2] GSV El intervalo de tiempo mínimo entre las ejecuciones sucesivas de la tarea. DINT[0] contiene los 32 bits
SSV inferiores del valor; DINT[1] contiene los 32 bits superiores del valor. Un valor de 0 indica 1 ó menos
ejecuciones de la tarea.
OverlapCount DINT GSV El número de veces que se activó la tarea mientras se estaba ejecutando. Válido para un evento o una tarea
SSV periódica. Para borrar el conteo, establezca el atributo a 0.
Priority INT GSV La prioridad relativa de esta tarea comparada con las otras tareas. Los valores válidos son 0-15.
Rate DINT GSV El intervalo de tiempo entre las ejecuciones de la tarea. El tiempo se representa en microsegundos.
StartTime DINT[2] GSV El valor WALLCLOCKTIME cuando se inició la última ejecución de la tarea. DINT[0] contiene los 32 bits
SSV inferiores del valor; DINT[1] contiene los 32 bits superiores del valor.
Status DINT GSV Información de estado acerca de la tarea. Una vez que el controlador establece uno de estos bits, usted puede
SSV restablecer el bit manualmente.
Bit: Significado:
0 una instrucción EVNT activó la tarea (tarea de evento solamente)
1 un tiempo de espera sobrepasado activó la tarea (tarea de evento solamente)
2 ocurrió una superposición de esta tarea

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 24 Acceso a valores del sistema

Atributo: Tipo de datos: Instrucción: Descripción:


Timeout DINT GSV El valor de tiempo de espera de una tarea de evento. El tiempo se representa en microsegundos.
SSV
EnableTimeOut DINT GSV Habilita o inhabilita la función de tiempo de espera de una tarea de evento.
SSV Valor: Significado:
0 inhabilita la función de tiempo de espera
no cero habilita la función de tiempo de espera
Watchdog DINT GSV El límite de tiempo para la ejecución de todos los programas asociados con esta tarea. El tiempo se
SSV representa en microsegundos.
Si se introduce 0, se asignan estos valores:
Tiempo: Tipo de tarea:
0.5 seg. periódico
5.0 seg. continuo

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 25

Atributos de WALLCLOCKTIME
Atributo: Tipo de datos: Instrucción: Descripción:
CSTOffset DINT[2] GSV El offset positivo del CurrentValue del objeto CST (hora coordinada del sistema; vea la
SSV página 6-7). DINT[0] contiene los 32 bits inferiores del valor; DINT[1] contiene los 32 bits
superiores del valor. Valor en µseg. El valor predeterminado es 0.
CurrentValue DINT[2] GSV El valor actual de la hora del reloj. DINT[0] contiene los 32 bits inferiores del valor; DINT[1]
SSV contiene los 32 bits superiores del valor. El valor es el número de microsegundos que han
transcurrido desde 0000 horas, 1 de enero de 1972. Los objetos CST y WALLCLOCKTIME tienen
una relación matemática con el controlador. Por ejemplo, si se suman CST CurrentValue y
WALLCLOCKTIME CTSOffset, el resultado es WALLCLOCKTIME CurrentValue.
DateTime DINT[7] GSV La fecha y hora en un formato legible.
SSV DINT[0] año
DINT[1] la representación de número entero del mes (1-12)
DINT[2] la representación de número entero del mes (1-31)
DINT[3] hora (0-23)
DINT[4] minuto (0-59)
DINT[5] segundos (0-59)
DINT[6] microsegundos (0-999,999)

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 26 Acceso a valores del sistema

Cómo determinar la información de memoria del controlador


Dependiendo del tipo de controlador, la memoria del controlador puede estar dividida en varias áreas:
Si tiene este controlador: Entonces almacene lo siguiente: En esta memoria:
ControlLogix tags de E/S memoria de E/S
tags producidos
tags consumidos
comunicación mediante instrucciones Message (MSG)
comunicación con estaciones de trabajo

comunicación con tags encuestados (OPC/DDE) que usan el software RSLinx(1)


tags que no son tags de E/S, producidos ni consumidos datos y memoria de lógica(2)
rutinas de lógica

comunicación con tags encuestados (OPC/DDE) que usan el software RSLinx(1)


CompactLogix Estos controladores no dividen la memoria. Almacenan todos los elementos en un área común de la memoria.
FlexLogix Cuando se usa el siguiente procedimiento para obtener los valores de la memoria de estos controladores, los valores aparecen
PowerFlex 700S con DriveLogix como memoria de E/S.
SoftLogix

(1)
Para comunicarse con tags encuestados, el controlador usa la memoria de E/S y la memoria de datos y lógica.
(2)
Los controladores 1756-L55M16 tienen una sección de memoria adicional para la lógica.

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 27

Para obtener información del controlador sobre la memoria, use una instrucción MSG:
Ficha MSG Configuration:
Para este ítem: Escriba o seleccione: Lo cual significa:
Message Type CIP Generic Ejecutar un comando del protocolo de control e información
Service Type Custom Crear un mensaje CIP Generic que no está disponible en la lista desplegable.
Service Code 3 Use el servicio GetAttributeList. Éste le permite leer información específica acerca del
controlador.
Class 72 Obtener información del objeto memoria de usuario
Instance 1 Este objeto contiene sólo 1 instancia.
Attribute 0 Valor nulo

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 28 Acceso a valores del sistema

Para este ítem: Escriba o seleccione: Lo cual significa:


Source Element source_array de tipo SINT[12]
En este elemento: Introduzca: Lo cual significa:
source_array[0] 5 Obtener 5 atributos
source_array[1] 0 Valor nulo
source_array[2] 1 Obtener memoria disponible
source_array[3] 0 Valor nulo
source_array[4] 2 Obtener el total de memoria
source_array[5] 0 Valor nulo
source_array[6] 5 Obtener el bloque contiguo más grande de memoria de lógica disponible
adicional
source_array[7] 0 Valor nulo
source_array[8] 6 Obtener el bloque contiguo más grande de memoria de E/S disponible
source_array[9] 0 Valor nulo
source_array[10] 7 Obtener el bloque contiguo más grande de memoria de datos y lógica disponible
source_array[11] 0 Valor nulo
Source Length 12 Escribir 12 bytes (12 SINT).
Destination INT_array de tipo INT[29]

Publicación 1756-QR107B-ES-P - Marzo 2004


Acceso a valores del sistema 6 - 29

Ficha MSG Communication:


Para este ítem: Tipo:
Path 1, slot_number_of_controller

La instrucción MSG devuelve la siguiente información a INT_array (tag de destino de MSG):


Si usted desea: Entonces copie estos elementos de Descripción:
matriz:
cantidad de memoria de E/S disponible (palabras de 32 bits) INT_array[3] los 16 bits inferiores del valor de 32 bits
INT_array[4] los 16 bits superiores del valor de 32 bits
cantidad de memoria de datos y lógica disponible (palabras de 32 bits) INT_array[5] los 16 bits inferiores del valor de 32 bits
INT_array[6] los 16 bits superiores del valor de 32 bits
controladores 1756-L55M16 solamente—cantidad de memoria de lógica disponible INT_array[7] los 16 bits inferiores del valor de 32 bits
adicional (palabras de 32 bits)
INT_array[8] los 16 bits superiores del valor de 32 bits
tamaño total de memoria de E/S (palabras de 32 bits) INT_array[11] los 16 bits inferiores del valor de 32 bits
INT_array[12] los 16 bits superiores del valor de 32 bits
tamaño total de memoria de datos y lógica (palabras de 32 bits) INT_array[13] los 16 bits inferiores del valor de 32 bits
INT_array[14] los 16 bits superiores del valor de 32 bits
controladores 1756-L55M16 solamente—memoria de lógica adicional (palabras de INT_array[15] los 16 bits inferiores del valor de 32 bits
32 bits)
INT_array[16] los 16 bits superiores del valor de 32 bits

Publicación 1756-QR107B-ES-P - Marzo 2004


6 - 30 Acceso a valores del sistema

Si usted desea: Entonces copie estos elementos de Descripción:


matriz:
controladores 1756-L55M16 solamente—bloque contiguo más grande de memoria INT_array[19] los 16 bits inferiores del valor de 32 bits
de lógica disponible adicional (palabras de 32 bits)
INT_array[20] los 16 bits superiores del valor de 32 bits
bloque contiguo más grande de memoria de E/S disponible (palabras de 32 bits) INT_array[23] los 16 bits inferiores del valor de 32 bits
INT_array[24] los 16 bits superiores del valor de 32 bits
bloque contiguo más grande de memoria de datos y lógica disponible (palabras de INT_array[27] los 16 bits inferiores del valor de 32 bits
32 bits)
INT_array[28] los 16 bits superiores del valor de 32 bits

La instrucción MSG devuelve cada valor de memoria como dos INT separados.
• El primer INT representa los 16 bits inferiores del valor.
• El segundo INT representa los 16 bits superiores del valor.
Para convertir los INT separados en un valor utilizable, use una instrucción Copy (COP), donde:
En este operando: Especifique: Lo cual significa:
Source el primer INT de la pareja de 2 elementos (16 bits Comenzar con los 16 bits inferiores
inferiores)
Destination el tag DINT en donde se va a almacenar el valor de 32 Copiar el valor al tag DINT.
bits
Length 1 Copiar 1 vez el número de bytes en el tipo de datos de destino. En este caso, la instrucción copia 4
bytes (32 bits), lo cual combina los 16 bits inferiores y superiores en un valor de 32 bits.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7
Opciones de comunicación
Seleccione un método para transferir los datos entre controladores:
Si los datos: Entonces: Vea la página:
necesitan transmisión regular a una velocidad que usted especifica (por ej. determinista) producir y consumir un tag 7-2
se envían cuando ocurre una condición específica en la aplicación enviar un mensaje 7-9
se transmiten entre controladores Logix y procesadores PLC o SLC asignar direcciones PLC/SLC 7-13
se recolectan de múltiples controladores (y los tags consumidos no son una opción o no se enviar un mensaje a múltiples controladores 7-13
desean)

Publicación 1756-QR107B-ES-P - Marzo 2004


7-2 Comunicación con otros controladores

Producir y consumir un tag


Usted puede producir y consumir tags con las siguientes combinaciones de controladores y redes.
Este controlador: Puede producir y consumir tags mediante esta red:
Backplane Logix ControlNet EtherNet/IP
SLC 500 X
PLC-5 X
ControlLogix X X X
1769-L32E, -L35E CompactLogix X
FlexLogix X X
PowerFlex 700S con DriveLogix X X
SoftLogix X

Los tags producidos y consumidos funcionan de la siguiente manera:


• Una conexión transfiere los datos entre controladores:
– Múltiples controladores pueden consumir (recibir) los datos.
– Los datos se actualizan en el intervalo entre paquetes solicitados (RPI), según lo configurado por los tags de consumo.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7-3

• Cada tag producido o consumido usa el siguiente número de conexiones:


Cada: Usa esta cantidad de conexiones en el controlador local: Usa esta cantidad de conexiones en el dispositivo de
comunicación:
tag producido number_of_consumers + 1 number_of_consumers
tag consumido 1 1

Siga estas pautas:


• Cree los datos dentro del alcance del controlador. Sólo se pueden compartir tags del controlador cubierto.
• Use uno de estos tipos de datos:
– DINT
– REAL
– matriz de DINT o REAL
– definido por el usuario
• Use el mismo tipo de datos para el tag producido y el tag (s) consumido correspondiente.
• Para compartir tags con un controlador PLC-5C, use un tipo de datos definido por el usuario.
• Limite el tamaño del tag a 500 bytes o menos. Si tiene que transferir más de 500 bytes, transfiera los datos en paquetes.
• Si desea producir varios tags para el mismo controlador:
– Agrupe los datos en uno o más tipos de datos definidos por el usuario. (Esto utiliza menos conexiones que producir cada tag separadamente).
– Agrupe los datos según velocidades de actualización similares. (Para conservar el ancho de banda de la red, use un RPI mayor para datos menos
críticos).

Publicación 1756-QR107B-ES-P - Marzo 2004


7-4 Comunicación con otros controladores

Producir un tag Consumir un tag

Si una conexión del tag consumido entra en fallo, todos los otros
IMPORTANTE tags consumidos desde el controlador remoto dejan de recibir
nuevos datos.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7-5

Producir tags para un controlador PLC-5C


1. Cree un tipo de datos definido por el usuario que contenga una matriz de INT con un número par de elementos, tal como INT[2]. (Cuando se
producen INT, se deben producir dos o más).

2. Cree un tag producido y seleccione el tipo de datos definido por el usuario.

3. En la configuración ControlNet para el controlador PLC-5C de destino:


• Inserte un Mensaje programado de recepción.
• En el Tamaño de mensaje, introduzca el número de enteros en el tag producido.

4. En el software RSNetWorx para ControlNet, programe la red.

Publicación 1756-QR107B-ES-P - Marzo 2004


7-6 Comunicación con otros controladores

Producir datos tipo REAL para un controlador PLC-5C


1. ¿Cuántos valores desea producir?
Si desea producir: Entonces:
Sólo un valor REAL Cree un tag producido y seleccione el tipo de datos REAL.
Más de un valor REAL A. Cree un tipo de datos definido por el usuario que contenga una matriz de REAL.
B. Cree un tag producido y seleccione el tipo de datos definido por el usuario del paso A.

2. En la configuración ControlNet para el controlador PLC-5C de destino:


• Inserte un Mensaje programado de recepción.
• En el Tamaño de mensaje, introduzca dos veces el número de REAL en el tag producido. Por ejemplo, si el tag producido contiene 10 REAL,
introduzca 20 para el tamaño de mensaje.
Cuando un controlador PLC-5C consume un tag producido por un controlador Logix5000, almacena los datos en números enteros consecutivos de
16 bits. El PLC-5C almacena los datos de punto flotante (coma flotante), los cuales requieren 32 bits independientemente del tipo de controlador,
según lo siguiente:
• El primer número entero contiene los bits superiores (del extremo izquierdo) del valor.
• El segundo número entero contiene los bits inferiores (del extremo derecho) del valor.
• Esta configuración continúa para cada valor de punto flotante (coma flotante).
3. En el controlador PLC-5C, vuelva a construir los datos de punto flotante (coma flotante) según se ilustra en el siguiente ejemplo:
4. En el software RSNetWorx para ControlNet, programe la red.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7-7

Consumir enteros desde un controlador PLC-5C


1. En la configuración ControlNet del controlador PLC-5C, inserte Enviar mensaje programado.
2. En el Organizador del controlador, añada el controlador PLC-5C a la configuración de E/S.
3. Cree un tipo de datos definido por el usuario que contenga los siguientes miembros:
Tipo de datos: Descripción:
DINT Estado
INT[x], donde “x” es el tamaño de salida de los datos del controlador Datos producidos por un controlador PLC-5C
PLC-5C. (Si consume solamente un INT, no se requieren dimensiones.)

4. Cree un tag consumido con las propiedades siguientes:


Para esta propiedad de Escriba o seleccione:
tag:
Tipo de tag Consumido
Controlador El PLC-5C que produce los datos
Instancia remota El número de mensaje de la configuración ControlNet del controlador
PLC-5C.
RPI Una potencia de dos veces el NUT de la red ControlNet. Por ejemplo, si
el NUT es 5 ms, seleccione un RPI de 5, 10, 20, 40, etc.
Tipo de datos El tipo de datos definido por el usuario que creó.

5. En el software RSNetWorx para ControlNet, programe la red.

Publicación 1756-QR107B-ES-P - Marzo 2004


7-8 Comunicación con otros controladores

Ajuste para limitaciones de amplitud de banda


Cuando comparte un tag mediante una red ControlNet, el tag también debe se apropiado para el ancho de banda de la red:
• A medida que aumenta el número de conexiones, es posible que varias conexiones necesiten compartir el tiempo de actualización de red (NUT).
• Puesto que una red ControlNet puede pasar solamente 500 bytes durante un NUT, los datos de cada conexión deben tener menos de 500 bytes.
Dependiendo del tamaño del sistema, es posible que no tenga suficiente ancho de banda. Puede hacer los siguientes ajustes:
• Reduzca el NUT. Un NUT más rápido reduce el número de conexiones que deben compartir una ranura de actualización.
• Aumente el RPI de las conexiones. Los RPI más altos permiten que las conexiones se alternen en el envío de datos durante una ranura de
actualización.
• Para un módulo puente ControlNet (CNB) en un chasis remoto, seleccione el formato de comunicación más eficaz para dicho chasis:
¿Son la mayoría de los módulos en el chasis Entonces seleccione este formato de la
módulos de E/S digitales no diagnósticos? comunicación para el módulo CNB remoto:
Sí Optimización de rack
No ninguna
El formato de optimización de racks usa 8 bytes adicionales para cada ranura en su chasis. Los módulos analógicos o los módulos que están
enviando o recibiendo datos de diagnóstico, fusible, sello de hora o de priorización requieren conexiones directas y no pueden aprovechar el
formato de rack optimizado. Al seleccionar “Ninguno” se liberan 8 bytes por ranura para otros usos, como por ejemplo, tags producidos y
consumidos.
• Separe el tag en dos o más tags:
– Agrupe los datos según velocidades de actualización similares.
– Asigne un RPI diferente a cada tag.
• Cree lógica para transferir los datos en secciones más pequeñas (paquetes).

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7-9

Enviar un mensaje
Para cada mensaje, cree un tag para controlar el mensaje:
• Cree el tag dentro del alcance del controlador.
• Use el tipo de datos MESSAGE.
• En el controlador Logix5000, use el tipo de datos DINT para enteros siempre que sea posible: Los controladores Logix5000 se ejecutan más
eficientemente y usan menos memoria cuando trabajan con enteros de 32 bits (DINT).
• Si su mensaje se dirige o proviene de un controlador PLC-5® o SLC 500™ y transfiere enteros (no REAL), use un búfer de INTs:
– Cree un búfer para los datos (alcance del controlador) usando el tipo de datos INT[x].
– Use una instrucción FAL para mover los datos entre el búfer y la aplicación.
Para enviar el mismo mensaje a múltiples controladores, reconfigure una instrucción MSG durante el tiempo de ejecución, escriba nuevos valores a los
miembros del tipo de datos MESSAGE.
Después de introducir la instrucción MSG y especificar la estructura MESSAGE, use el cuadro de diálogo Message Configuration para especificar los
detalles del mensaje.

Haga clic aquí para configurar la instrucción MSG

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 10 Comunicación con otros controladores

Los detalles que usted configura dependen del tipo de mensaje que selecciona.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7 - 11

Especifique el tipo de mensaje:


Si el dispositivo receptor es un: Seleccione uno de estos tipos de mensaje:
Controlador Logix CIP Data Table Read/Write
Módulo de E/S que usted configura usando el software RSLogix 5000 Module Reconfigure
CIP Generic
Controlador PLC-5 TypedRead/Write PLC5
PLC Word Range Read/Write
Controlador SLC TypedRead/Write SLC
Controlador MicroLogix
Módulo de transferencia en bloques Block-Transfer Read/Write
Procesador PLC-3 PLC3 TypedRead/Write
PLC3 Word Range Read/write
Procesador PLC-2 PLC2 Unprotected Read/Write

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 12 Comunicación con otros controladores

Luego, especifique esta información de configuración:


Para esta propiedad: Especifique:
Elemento de origen • Si selecciona un tipo de mensaje de lectura, el Elemento de origen es la dirección de los datos que desea leer en el dispositivo
receptor. Use la sintaxis del dispositivo receptor.
• Si selecciona un tipo de mensaje de escritura, el tag de origen es el primer elemento del tag que usted desea enviar al
dispositivo receptor.
Número de elementos El número de elementos que lee/escribe depende del tipo de datos que usa. Un elemento se refiere a un segmento de datos asociados.
Por ejemplo, el tag timer1 es un elemento que consiste en una estructura de control del temporizador.
Elemento de destino • Si selecciona un tipo de mensaje de lectura, el elemento de destino es el primer elemento del tag en el controlador Logix5000
donde desea almacenar los datos que lee desde el dispositivo receptor.
• Si selecciona un tipo de mensaje de escritura, el Elemento de destino es la dirección del lugar en el dispositivo receptor donde
desea escribir los datos.

Cuando usted configura una instrucción MSG, configura estos detalles en la ficha Communication.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7 - 13

Asignar direcciones PLC/SLC


Sólo se asignan direcciones PLC/SLC si se envía un mensaje desde un procesador PLC o SLC 500 a un controlador Logix y el procesador PLC/SLC no es
compatible con direccionamiento ASCII lógico. Para usar una dirección lógica (por ej., N7:0) para especificar un valor (tag) en un controlador Logix, usted
debe asignar archivos a los tags:
• Sólo tiene que asignar los números de archivo que se usan en los mensajes; los otros números de archivo no necesitan asignarse.
• La tabla de asignaciones se carga en el controlador y se usa cada vez que una dirección “lógica” tiene acceso a los datos.
• Usted sólo puede tener acceso a tags que están dentro del controlador cubierto (datos globales).

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 14 Comunicación con otros controladores

Por cada archivo al que se hace referencia en un comando PLC o SLC, haga una entrada de asignación:

• Escriba el número de archivo de la dirección lógica.


• Escriba o seleccione el tag dentro del controlador cubierto (global) que suministra o recibe datos para el número de archivo. (Puede asignar múltiples
archivos al mismo tag.)
• Para los comandos PLC-2, especifique el tag que suministra o recibe los datos.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7 - 15

Enviar un mensaje a múltiples dispositivos


Para enviar un mensaje a múltiples dispositivos:
• Defina los elementos de origen y destino
• Cree el tipo de datos MESSAGE_CONFIGURATION
• Cree la matriz de configuración
• Obtenga el tamaño de la matriz local
• Cargue las propiedades del mensaje para un dispositivo
• Configure el mensaje
• Vaya al siguiente dispositivo

Definir los elementos de origen y destino


Una matriz almacena los datos que se leen desde, o se escriben hacia, cada controlador remoto. Cada elemento en la matriz corresponde a un dispositivo
remoto diferente. Cree el tag local_array que almacena los datos en este controlador.

Nombre del tag Tipo


local_array data_type [length]
donde:
data_type es el tipo de datos que el mensaje envía o recibe, tal como DINT, REAL o STRING.
length es el número de elementos en la matriz local.

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 16 Comunicación con otros controladores

Crear el tipo de datos MESSAGE_CONFIGURATION


Cree un tipo de datos definido por el usuario para almacenar las variables de configuración para el mensaje a cada dispositivo.
• Algunos de los miembros requeridos del tipo de datos, usan el tipo de datos de cadena.
• El tipo de datos STRING predeterminado almacena 82 caracteres.
• Si las rutas de acceso o nombres de tags remotos o direcciones tienen menos de 82 caracteres, usted tiene la opción de crear un nuevo tipo de cadena
que almacena menos caracteres. Esto permite conservar la memoria.
• Para crear un nuevo tipo de cadena, seleccione File ⇒ New Component ⇒ String Type…
• Si usted crea un nuevo tipo de cadena, úselo en lugar del tipo de datos STRING en este procedimiento.
Para almacenar las variables de configuración para el mensaje a cada controlador, cree el siguiente tipo de datos definido por el usuario.

Tipo de datos: MESSAGE_CONFIGURATION

Nombre MESSAGE_CONFIGURATION
Descripción Propiedades de configuración para un mensaje a otro controlador
Miembros
Nombre Tipo de datos Estilo Descripción

+ Access Path STRING

+ RemoteElement STRING

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7 - 17

Crear la matriz de configuración


Almacene las propiedades de configuración para cada dispositivo en una matriz. Antes de cada ejecución de la instrucción MSG, la lógica carga nuevas
propiedades en la instrucción. Esto envía el mensaje a un controlador diferente.

1. Cree esta matriz:

Nombre del tag Tipo Aislamiento


message_config MESSAGE_CONFIGURATION[number] cualquiera

donde number es el número de controladores a dónde enviar el mensaje.

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 18 Comunicación con otros controladores

2. En la matriz message_config introduzca la ruta de acceso al primer controlador que recibe el mensaje.

Nombre del tag Valor

− message_config {…}

− message_config[0] {…} Haga clic con el botón derecho del mouse y seleccione
Go to Message Path Editor.
+ message_config[0].Path

+ message_config[0].RemoteElement

Escriba la ruta de Message Path Browser


acceso al controlador
remoto. Ruta de
acceso:
o bien peer_controller

Desplácese hasta el Configuración de E/S


controlador remoto.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7 - 19

3. En la matriz message_config, introduzca el nombre del tag o dirección de los datos en el primer controlador que va a recibir el mensaje.

Nombre del tag Valor

− message_config {…}

− message_config[0] {…}

+ message_config[0].Path

+ message_config[0].RemoteElement ...

− message_config[1] {…}

+ message_config[1].Path

+ message_config[1].RemoteElement

Escriba el nombre del tag o dirección de los


datos en el otro controlador.

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 20 Comunicación con otros controladores

4. Introduzca la ruta de acceso y elemento remoto para cada controlador adicional.

Nombre del tag Valor

− message_config {…}

− message_config[0] {…}

+ message_config[0].Path

+ message_config[0].RemoteElement

− message_config[1] {…}

+ message_config[1].Path

+ message_config[1].RemoteElement

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7 - 21

Obtener el tamaño de la matriz local

Cargar las propiedades del mensaje para un dispositivo

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 22 Comunicación con otros controladores

Configurar el mensaje
Aunque la lógica controla el elemento remoto y la ruta de acceso para el mensaje, el cuadro de diálogo Message Properties requiere una configuración inicial.
Asegúrese de borrar la selección Cache Connections.
En esta ficha: Si usted desea: Para este ítem: Escriba o seleccione:
Configuration leer (recibir) datos desde otros Message Type el tipo de lectura que corresponde a los otros controladores
controladores
Elemento de origen tag o dirección que contiene los datos en el primer controlador
Number Of Elements 1
Destination Tag local_array[*]
Index 0
escribir (enviar) datos a otros Message Type el tipo de escritura que corresponde a los otros controladores
controladores
Source Tag local_array[*]
Index 0
Number Of Elements 1
Destination Element tag o dirección que contiene los datos en el primer controlador
Communication Access Path ruta de acceso al primer controlador
Cache Connections Borre la casilla de verificación Cache Connection. Puesto que este procedimiento
continuamente cambia la ruta de acceso al mensaje, es más eficiente borrar esta
casilla de verificación.

Publicación 1756-QR107B-ES-P - Marzo 2004


Comunicación con otros controladores 7 - 23

Ir al siguiente controlador

Reiniciar la secuencia

Publicación 1756-QR107B-ES-P - Marzo 2004


7 - 24 Comunicación con otros controladores

Notas:

Publicación 1756-QR107B-ES-P - Marzo 2004


Forzados 8
Elementos que se pueden forzar
Use un forzado para anular datos que la lógica usa o produce. Por ejemplo, use forzados en las siguientes situaciones:
• probar y depurar la lógica
• revisar el cableado a un dispositivo de salida
• mantener funcionando temporalmente el proceso cuando un dispositivo de entrada tuvo un fallo
Use los forzados sólo como una medida temporal. No se han diseñado para ser parte permanente de la aplicación.
Se pueden forzar los siguientes elementos:
Si usted desea: Entonces:
anular un valor de entrada, un valor de salida, un tag producido o un tag consumido Añadir un forzado de E/S
anular las condiciones de una transición una vez para ir de un paso activo al siguiente paso Avanzar un paso en una transición o forzado de una ruta
de acceso
anular una vez el forzado de una ruta simultánea y ejecutar los pasos de la ruta
anular las condiciones de una transición en un diagrama de funciones secuenciales Añadir un forzado de SFC
ejecutar algunas pero no todas las rutas de una bifurcación simultánea de un diagrama de funciones secuenciales

Publicación 1756-QR107B-ES-P - Marzo 2004


8-2 Forzados

Antes de usar un forzado, determine el estado de los forzados para el controlador.

Use este método: Para determinar el estado Descripción:


de:
barra de herramientas forzados de E/S
en línea forzados de SFC
Ficha Forces

LED FORCE forzados de E/S


Si el indicador LED FORCE Entonces:
está:
apagado • No hay tags que tengan valores forzados.
• Los forzados de E/S están inactivos (inhabilitados).
parpadeando • Por lo menos un tag contiene un valor forzado.
• Los forzados de E/S están inactivos (inhabilitados).
fijo • Los forzados de E/S están activos (habilitados).
• Los valores forzados pueden o no existir.

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


Forzados 8-3

Use este método: Para determinar el estado Descripción:


de:
instrucción GSV forzados de E/S

Force_Status es un tag DINT.

Para determinar si: Examine este bit: Para verificar la existencia de


este valor:
los forzados están instalados 0 1
no hay forzados instalados 0 0
los forzados están habilitados 1 1
los forzados están inhabilitados 1 0

Publicación 1756-QR107B-ES-P - Marzo 2004


8-4 Forzados

Forzado de E/S
Use un forzado de E/S para realizar lo siguiente:
• anular un valor de entrada desde otro controlador (por ej., un tag consumido)
• anular un valor de entrada desde un dispositivo de entrada
• anular la lógica y especificar un valor de salida para otro controlador (por ej., un tag producido)
• anular la lógica y especificar el estado de un dispositivo de salida

El forzado aumenta el tiempo de ejecución de la lógica. A más valores forzados, más tiempo se
IMPORTANTE
requiere para ejecutar la lógica.

Los forzados de E/S son retenidos por el controlador y no por la estación de trabajo de
IMPORTANTE
programación. Los forzados permanecen igual si se desconecta la estación de trabajo de
programación.

Publicación 1756-QR107B-ES-P - Marzo 2004


Forzados 8-5

Cuando usted fuerza un valor de E/S:


• Puede forzar todos los datos de E/S, excepto los datos de configuración.
• Si el tag es una matriz o una estructura, tal como un tag de E/S, fuerce un elemento o miembro BOOL, SINT, INT, DINT o REAL.
• Si el dato es un valor SINT, INT o DINT, puede forzar todo el valor o puede forzar bits individuales dentro del valor.
• También puede forzar un alias de un miembro de estructura de E/S, de un tag producido o de un tag consumido. Un tag alias comparte el mismo
valor de dato que su tag base, por lo tanto al forzar un tag alias también se fuerza al tag base asociado.
El forzar una entrada o tag consumido:
• anula el valor independientemente del valor del dispositivo físico o tag producido
• no afecta el valor recibido por otros controladores que monitorean esa entrada o tag producido
El forzar una salida o un tag producido anula la lógica para el dispositivo físico u otro(s) controlador(es). Otros controladores que monitorean ese módulo
de salida en capacidad de sólo recepción verán también el valor forzado.
Para forzar E/S:

1. ¿Cuál es el estado del indicador de forzados de E/S?


Si: Entonces, tome nota de lo siguiente:
apagado Actualmente no existen forzados de E/S.
parpadeando No hay forzados de E/S activos. Pero existe por lo menos un forzado en el proyecto. Cuando usted habilita los forzados de
E/S, todos los forzados de E/S existentes también se hacen efectivos.
fijo Los forzados de E/S están habilitados (activos). Cuando usted instala (añade) un forzado, éste se hace efectivo
inmediatamente.

Publicación 1756-QR107B-ES-P - Marzo 2004


8-6 Forzados

2. Abra la rutina que contiene el tag que desea forzar.

3. Haga clic con el botón derecho del mouse en el tag y seleccione Monitor… Si es necesario, expanda el tag para mostrar el valor que desea forzar.

4. Instale el valor forzado:


Para forzar un: Haga lo siguiente:
valor BOOL Haga clic con el botón derecho del mouse en el tag y seleccione Force ON o Force OFF.
valor que no es BOOL En la columna Force Mask para el tag, escriba el valor al cual desea forzar el tag. Luego presione la tecla Enter.

5. ¿Están habilitados los forzados de E/S? (Consulte el paso 1.)


Si: Entonces:
no En el menú Logic, seleccione I/O Forcing ⇒ Enable All I/O Forces. Luego seleccione Yes para confirmar.
sí Detenerse.

Publicación 1756-QR107B-ES-P - Marzo 2004


Forzados 8-7

Efectuar paso a paso en una transición


Para anular una transición falsa una vez y ir de un paso activo al siguiente paso, use la opción Step Through.
Con la opción Step Through:
• Usted no tiene que añadir, habilitar, inhabilitar o eliminar forzados.
• La próxima vez que el SFC llegue a la transición, se ejecutará según las condiciones de la transición.
Para efectuar paso a peso en un paso en la transición de un paso activo o un forzado de una ruta simultánea:

1. Abra la rutina SFC.

2. Haga clic con el botón derecho del mouse en la transición o en la ruta forzada y seleccione Step Through.

Forzar un SFC
Para anular la lógica de un SFC, existen las siguientes opciones:

Si usted desea: Entonces:


anular las condiciones de una transición cada vez que el SFC llegue a la transición Forzar una transición
evitar la ejecución de una o más rutas de una bifurcación simultánea Forzar una ruta simultánea

Publicación 1756-QR107B-ES-P - Marzo 2004


8-8 Forzados

Forzado de una transición


Para anular las condiciones de una transición a través de ejecuciones repetidas de un SFC, fuerce la transición. El forzado permanecerá hasta que usted lo
elimine o hasta que inhabilite los forzados.

Si usted desea: Entonces:


evitar que el SFC vaya al siguiente paso fuerce la transición al estado falso
que el SFC vaya al siguiente paso independientemente de las condiciones de la transición fuerce la transición al estado verdadero

Si usted fuerza a falso una transición dentro de una bifurcación simultánea, el SFC permanecerá en la bifurcación simultánea, siempre que el forzado esté
activo (instalado y habilitado).
• Para salir de una bifurcación simultánea, el último paso de cada ruta debe ejecutarse por lo menos una vez y la transición debajo de la bifurcación
debe ser verdadera.
• Al forzar una transición a falso se evita que el SFC llegue al último paso de una ruta.

Publicación 1756-QR107B-ES-P - Marzo 2004


Forzados 8-9

• Cuando se elimina o inhabilita el forzado, el SFC puede ejecutar el resto de los pasos en la ruta.

Por ejemplo, para salir de esta bifurcación, el SFC debe:


• ejecutar Step_011 por lo menos una vez
• pasar Tran_011 y ejecutar Step_012 por lo menos una vez
• determinar que Tran_012 es verdadera

Publicación 1756-QR107B-ES-P - Marzo 2004


8 - 10 Forzados

Forzado de una ruta simultánea


Para evitar la ejecución de una ruta de una bifurcación simultánea, fuerce la ruta a falso. Cuando el SFC llegue a la bifurcación, ejecutará sólo las rutas no
forzadas.

Esta ruta se ejecuta. Esta ruta no se ejecuta.

Si usted fuerza a falso una ruta de una bifurcación simultánea, el SFC permanecerá en la bifurcación simultánea, siempre que el forzado esté activo (instalado
y habilitado).
• Para salir de una bifurcación simultánea, el último paso de cada ruta debe ejecutarse por lo menos una vez y la transición debajo de la bifurcación
debe ser verdadera.
• El forzar una ruta a falso evita que el SFC entre a una ruta y ejecute sus pasos.
• Cuando se elimina o inhabilita el forzado, el SFC puede ejecutar los pasos en la ruta.

Publicación 1756-QR107B-ES-P - Marzo 2004


Forzados 8 - 11

Para forzar un SFC:


1. ¿Cuál es el estado del indicador de forzados de SFC?
Si: Entonces, tome nota de lo siguiente:
apagado Actualmente no existen forzados de SFC.
parpadeando No hay forzados de SFC activos. Pero existe por lo menos un forzado en el proyecto. Cuando usted habilita los forzados de
SFC, todos los forzados de SFC existentes también se hacen efectivos.
fijo Los forzados de SFC están habilitados (activos). Cuando usted instala (añade) un forzado, éste se hace efectivo
inmediatamente.

2. Abra la rutina SFC.

3. Haga clic con el botón derecho del mouse en la transición o inicio de una ruta simultánea que usted desee forzar, y seleccione ya sea Force TRUE
(sólo para una transición) o Force FALSE.

4. ¿Están habilitados los forzados de SFC?


Si: Entonces:
no En el menú Logic, seleccione SFC Forcing ⇒ Enable All SFC Forces. Luego seleccione Yes para confirmar.
sí Detenerse.

Publicación 1756-QR107B-ES-P - Marzo 2004


8 - 12 Forzados

Notas:

Publicación 1756-QR107B-ES-P - Marzo 2004


Fallos del sistema 9
Fallos del controlador
El controlador almacena información de fallos diferentes:

Tipo de fallo: Descripción: Vea la página:


fallo mayor Una condición de fallo que es suficientemente severa para que el controlador se desactive, a menos 9-2
que se borre una condición. Cuando ocurre un fallo mayor, el controlador:
1. Establece un bit de fallo mayor.
2. Ejecuta la lógica de fallo proporcionada por el usuario, si existe.
3. Si la lógica de fallo proporcionada por el usuario no puede borrar el fallo, el controlador entra
en el modo fallo.
4. Establece las salidas según su estado de salida durante el modo de programación.
5. El indicador LED parpadea de color rojo.
fallo menor Una condición de fallo no es suficientemente severa para que el controlador se desactive. 9-10
fallos definidos por el usuario Si desea suspender (desactivar) el controlador según condiciones específicas de la aplicación, cree un 9-14
fallo mayor definido por el usuario. Con un fallo mayor definido por el usuario:
• Usted define un valor para el código de fallo.
• El controlador maneja el fallo de la misma manera que otros fallos mayores:
– El controlador cambia al modo con fallo (fallo mayor) y detiene la ejecución de la lógica.
– Las salidas se establecen en su estado configurado o valor para el modo de fallo.

Publicación 1756-QR107B-ES-P - Marzo 2004


9-2 Fallos del sistema

Fallos mayores
Si ocurre una condición de fallo que es suficientemente severa para que el controlador se desactive, el controlador genera un fallo mayor y detiene la
ejecución de la lógica.

1. Cree el siguiente tipo de datos definido por el usuario. Éste almacena información acerca del fallo.

Tipo de datos: FAULTRECORD


Nombre FAULTRECORD
Descripción Almacena el atributo MajorFaultRecord o el atributo MinorFaultRecord del objeto PROGRAM.
Miembros
Nombre Tipo de datos Estilo Descripción
Time_Low DINT Decimal los 32 bits más bajos del valor de sello de hora del fallo

Time_High DINT Decimal los 32 bits más altos del valor de sello de hora del fallo

Type INT Decimal tipo de fallo (programa, E/S, etc.)


Code INT Decimal código único del fallo

Info DINT[8] Hex información específica del fallo

Publicación 1756-QR107B-ES-P - Marzo 2004


Fallos del sistema 9-3

2. Cree una rutina de fallo para borrar fallos específicos a fin de que el controlador continúe la ejecución. El lugar donde se coloca la rutina depende del
tipo de fallo que desea borrar:

En el caso de un fallo Haga lo siguiente:


debido a:
ejecución de una instrucción Cree una rutina de fallo para el programa:
• En el organizador del controlador, haga clic con el botón derecho del mouse en el programa y seleccione New Routine.
a. En el cuadro de nombre, escriba un nombre para la rutina de fallo .
b. De la lista desplegable Type, seleccione Ladder.
• Haga clic con el botón derecho del mouse en el programa y seleccione Properties.
a. Haga clic en la ficha Configuration.
b. De la lista desplegable Fault, seleccione la rutina de fallo
corte de energía Cree un programa y una rutina principal para el Controller Fault Handler:
• En el organizador del controlador, haga clic con el botón derecho del mouse en Controller Fault Handler y seleccione New
E/S Program.
a. Introduzca el nombre del programa y una descripción.
watchdog de tarea • Haga clic en el signo + ubicado junto a Controller Fault Handler.
• Haga clic con el botón derecho del mouse en el programa y seleccione la nueva rutina.
cambio de modo a. Introduzca el nombre de la rutina y una descripción.
eje de movimiento b. De la lista desplegable Type, seleccione el lenguaje de programación para la rutina.
c. Haga clic con el botón derecho del mouse en el programa y seleccione Properties.
d. Haga clic en la ficha Configuration.
e. De la lista desplegable Main seleccione la rutina

Publicación 1756-QR107B-ES-P - Marzo 2004


9-4 Fallos del sistema

3. Para borrar un fallo mayor que ocurre durante la ejecución del proyecto, use la siguiente lógica para:
• Obtener el tipo y código de fallo

1.
2.

1. La instrucción GSV tiene acceso al atributo MAJORFAULTRECORD de este programa.


2. La instrucción GSV almacena la información de fallo en el tag major_fault_record.

Publicación 1756-QR107B-ES-P - Marzo 2004


Fallos del sistema 9-5

• Verificación de un fallo específico


1. 2.

3. 4.
1. Esta instrucción EQU verifica un tipo de fallo específico, tal como programa, E/S. En el Origen B, introduzca el valor para el tipo de fallo que
desea borrar.
2. Esta instrucción EQU verifica un código de fallo especifico. En el Origen B, introduzca el valor para el código que desea borrar.
3. Esta instrucción CLR establece en cero el valor del tipo de fallo en el tag major_fault_record.
4. Esta instrucción CLR establece en cero el valor del código de fallo en el tag major_fault_record.

Publicación 1756-QR107B-ES-P - Marzo 2004


9-6 Fallos del sistema

• Cómo borrar el fallo

1.
2.

1. La instrucción SSV escribe nuevos valores al atributo MAJORFAULTRECORD de este programa.


2. La instrucción SSV escribe los valores contenidos en el tag major_fault_record. Puesto que los miembros Type y Code se establecen en cero, el fallo
se borra y el controlador continúa con la ejecución.

Publicación 1756-QR107B-ES-P - Marzo 2004


Fallos del sistema 9-7

Códigos de fallo mayor


Tipo: Código: Causa: Método de recuperación:
1 1 El controlador se activo en el modo Run. Ejecute el administrador de pérdida de alimentación eléctrica.
1 60 Al momento del encendido ocurrió un fallo no recuperable Descargue el programa al controlador.
que resultó en pérdida de integridad de la memoria del Comuníquese con Rockwell Automation a fin de obtener ayuda para diagnosticar el fallo.
controlador. El controlador se restableció y se borró la
memoria.
1 61 Al momento del encendido ocurrió un fallo no recuperable Descargue el programa al controlador.
que resultó en pérdida de integridad de la memoria del Comuníquese con Rockwell Automation a fin de obtener ayuda para diagnosticar el fallo.
controlador. El controlador se restableció y se borró la
memoria. Se guardó la información de diagnósticos
extendidos.
3 16 Falló una conexión de módulo de E/S requerida. Verifique que el módulo de E/S esté en el chasis. Verifique los requisitos de codificación
electrónica.
Vea la ficha Major Fault del cuadro de diálogo Controller Properties y la ficha Connection del
cuadro de diálogo Module Properties para obtener más información sobre el fallo.
3 20 Es posible que exista un problema con el chasis ControlBus. No recuperable – reemplace el chasis.
3 23 No se estableció por lo menos una conexión requerida Espere que la luz de E/S del controlador cambie a color verde antes de cambiar al modo Run.
antes de ir al modo Run.
4 16 Se encontró una instrucción desconocida. Elimine la instrucción desconocida. Esto probablemente sucedió debido a un proceso de
conversión del programa.
4 20 Subíndice de matriz demasiado grande, la estructura de Ajuste el valor para que esté dentro del rango válido. No exceda el tamaño de la matriz ni
control .POS o .LEN es no válida. sobrepase las dimensiones definidas.
4 21 Estructura de control .LEN o .POS < 0. Ajuste el valor para que sea > 0.
4 31 Los parámetros de la instrucción JSR no son iguales a los Pase el número apropiado de parámetros. Si se pasan demasiados parámetros, el exceso de
de la instrucción SBR o RET asociada. parámetros se ignora sin que ocurra ningún error.

Publicación 1756-QR107B-ES-P - Marzo 2004


9-8 Fallos del sistema

Tipo: Código: Causa: Método de recuperación:


4 34 Una instrucción de temporizador tiene un valor acumulado o Corrija el programa para que no cargue un valor negativo en un valor acumulado o
preseleccionado negativo. preseleccionado de temporizador.
4 42 JMP a una etiqueta que no existe o fue eliminada. Corrija el receptor de JMP o añada la etiqueta que falta.
4 82 Un diagrama de función secuencial (SFC) llamó a una Elimine el salto al SFC que llamó a la subrutina.
subrutina y la subrutina trató de saltar nuevamente al SFC
que la llamó. Esto ocurre cuando el SFC usa una instrucción
JSR o FOR para llamar a la subrutina.
4 83 Los datos probabos no estaban dentro de los límites Modifique el valor para que esté dentro de los límites.
requeridos.
4 84 Overflow de pila. Reduzca los niveles de anidamiento de subrutinas o el número de parámetros pasados.
4 89 En una instrucción SFR, la rutina receptora no contiene el Corrija el receptor de SFR o añada el paso que falta.
paso específico.
4 definido Un fallo definido por el usuario
por el
usuario
6 1 Caducó el temporizador de control (watchdog) de la tarea. Aumente el temporizador de control (watchdog) de la tarea, reduzca el tiempo de ejecución,
La tarea del usuario no se terminó en el período de tiempo aumente la prioridad de esta tarea, simplifique las tareas de prioridad más alta, o mueva parte de
especificado. Un error del programa causó un lazo infinito, o los códigos a otro controlador.
el programa es demasiado complejo para ejecutarse tan
rápidamente como se especificó, o una tarea de mayor
prioridad está impidiendo que termine esta tarea.
7 40 Falló el almacenamiento en la memoria no volátil. 1. Vuelva a intentar guardar el proyecto en la memoria no volátil.
2. Si el proyecto no se guarda en la memoria no volátil, reemplace la tarjeta de memoria.
7 42 La carga desde la memoria no volátil falló porque la Actualice el firmware del controlador al mismo nivel de revisión que el proyecto que se encuentra
revisión de firmware del proyecto en la memoria no volátil en la memoria no volátil.
es diferente a la revisión de firmware del controlador.

Publicación 1756-QR107B-ES-P - Marzo 2004


Fallos del sistema 9-9

Tipo: Código: Causa: Método de recuperación:


8 1 Se intentó colocar el controlador en el modo Run con el Espere que concluya la descarga y borre el fallo.
interruptor de llave durante la descarga.
11 1 La posición actual excedió el límite de fin de carrera Mueva el eje en dirección negativa hasta que la posición esté dentro del límite de fin de carrera y
positivo. luego ejecute el comando Motion Axis Fault Reset.
11 2 La posición actual excedió el límite de fin de carrera Mueva el eje en dirección positiva hasta que la posición esté dentro del límite de fin de carrera y
negativo. luego ejecute el comando Motion Axis Fault Reset.
11 3 La posición actual excedió la tolerancia de error de Mueva la posición dentro del límite de tolerancia y luego ejecute el comando Motion Axis Fault
posición. Reset.
11 4 Se interrumpió la conexión de canal A, B o Z de encoder. Vuelva a conectar el canal de encoder y luego ejecute el comando Motion Axis Fault Reset.
11 5 Se detectó evento de ruido de encoder o las señales de Corrija el cableado de encoder y luego ejecute el comando Motion Axis Fault Reset.
encoder no están en cuadratura.
11 6 Se activó entrada de fallo del variador. Borre el fallo del variador y luego ejecute el comando Motion Axis Fault Reset.
11 7 Fallo en la conexión síncrona. Primero ejecute el comando Motion Axis Fault Reset. Si esto no funciona, desenchufe el
servomódulo y vuelva a enchufarlo. Si el fallo persiste, reemplace el servomódulo.
11 8 El servomódulo detectó un fallo grave de hardware. Reemplace el módulo.
11 9 Fallo de conexión asíncrona. Primero ejecute el comando Motion Axis Fault Reset. Si esto no funciona, desenchufe el
servomódulo y vuelva a enchufarlo. Si el fallo persiste, reemplace el servomódulo.
11 32 Superposición en la tarea de control de movimiento. El régimen aproximado de actualización del grupo es demasiado alto para mantener una
operación correcta. Borre el tag de fallo del grupo, eleve el régimen de actualización del grupo y
luego borre el fallo mayor.

Publicación 1756-QR107B-ES-P - Marzo 2004


9 - 10 Fallos del sistema

Fallos menores
Si se produce una condición de fallo que no es lo suficiente grave para que el controlador se apague, el controlador genera un fallo menor.
• El controlador continúa ejecutándose.
• No es necesario borrar un fallo menor.
• Para optimizar el tiempo de ejecución y asegurar la precisión del programa, usted debe monitorear y corregir los fallos menores.
Para usar lógica de escalera para capturar información sobre un fallo menor:
Para determinar un/una: Haga lo siguiente:
superposición de tareas periódicas 1. Introduzca una instrucción GSV que obtenga el objeto FAULTLOG, atributo MinorFaultBits.
2. Monitoree el bit 6.
carga desde la memoria no volátil 1. Introduzca una instrucción GSV que obtenga el objeto FAULTLOG, atributo MinorFaultBits.
2. Monitoree el bit 7.
problema con el puerto en serie 1. Introduzca una instrucción GSV que obtenga el objeto FAULTLOG, atributo MinorFaultBits.
2. Monitoree el bit 9.
situación de batería débil 1. Introduzca una instrucción GSV que obtenga el objeto FAULTLOG, atributo MinorFaultBits.
2. Monitoree el bit 10.

Publicación 1756-QR107B-ES-P - Marzo 2004


Fallos del sistema 9 - 11

Para determinar un/una: Haga lo siguiente:


problema con una instrucción 1. Cree un tipo de datos definido por el usuario que almacenará la información de fallo. Especifique el nombre FaultRecord para el tipo
de datos y asígnele los miembros siguientes:
Nombre: Tipo de datos: Estilo:

TimeLow DINT Decimal

TimeHigh DINT Decimal

Type INT Decimal

Code INT Decimal

Info DINT[8] Hex

2. Cree un tag que almacenará los valores del atributo MinorFaultRecord.


3. Monitoree S:MINOR.
4. Si S:MINOR está activado, use una instrucción GSV para obtener los valores del atributo MinorFaultRecord.
5. Para detectar un fallo menor causado por otra instrucción, restablezca S:MINOR. (S:MINOR permanece establecido hasta el final del
escán).

Publicación 1756-QR107B-ES-P - Marzo 2004


9 - 12 Fallos del sistema

Códigos de fallos menores


Tipo: Código: Causa: Método de recuperación:
4 4 Ocurrió un overflow aritmético en una instrucción. Corrija el programa examinando las operaciones aritméticas (orden) o ajustando
los valores.
4 7 El tag de destino GSV/SSV era demasiado pequeño para contener Corrija el destino para que tenga espacio suficiente.
todos los datos.
4 35 Tiempo PID delta ≤ 0. Ajuste el tiempo PID delta para que sea > 0.
4 36 El punto de ajuste PID está fuera de rango Ajuste el punto de ajuste para que esté dentro del rango.
4 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag 1. Verifique que ninguna instrucción esté escribiendo al miembro LEN del
de cadena. tag de cadena.
2. En el valor LEN, introduzca el número de caracteres que la cadena
contiene.
4 52 La cadena de salida es mayor que el destino. Cree un nuevo tipo de datos de cadena que sea suficientemente grande para la
cadena de salida. Use el nuevo tipo de datos de cadena como tipo de datos par el
destino.
4 53 El número de salida se encuentra fuera de los límites del tipo de datos Haga esto:
de destino. • Reduzca el tamaño del valor ASCII.
• Use un tipo de datos mayor para el destino.
4 56 El valor de inicio o cantidad no es válido. 1. Verifique que el valor de inicio es entre 1 y el tamaño DATA del origen.
2. Verifique que el valor de inicio así como el valor de cantidad son menores
o iguales al tamaño DATA del origen.
4 57 La instrucción AHL no se ejecutó porque el puerto en serie está Haga esto:
establecido en la opción sin handshaking. • Cambie el parámetro Control Line del puerto en serie.
• Elimine la instrucción AHL.
6 2 Superposición de tareas periódicas Simplifique el (los) programa(s), o aumente el período o eleve la prioridad relativa,
La tarea periódica no concluyó antes de que sea tiempo de que se etc.
ejecute nuevamente.

Publicación 1756-QR107B-ES-P - Marzo 2004


Fallos del sistema 9 - 13

Tipo: Código: Causa: Método de recuperación:


7 49 Proyecto cargado desde la memoria no volátil.
9 0 Ocurrió un error desconocido mientras se realizaba el servicio del Comuníquese con el grupo de Soporte Técnico.
puerto en serie.
9 1 La línea CTS no es la correcta para la configuración actual. Desconecte y vuelva a conectar el cable del puerto en serie al controlador.
Asegúrese de que el cable esté correctamente conectado.
9 2 Error de lista de encuestas (poll). Verifique si existe alguno de los siguientes errores en la lista de encuestas:
Se detectó un problema con la lista de encuestas del maestro, tal • número total de estaciones mayor que el espacio en el tag de lista de
como especificación de más estaciones que el tamaño del archivo, encuestas
especificación de más de 255 estaciones, tratar de indizar más allá • número total de estaciones mayor que 255
del final de la lista o encuestar la dirección de difusión (STN #255). • el puntero de la estación actual es mayor que el tag fin de la lista de
encuestas
• se encontró un número de estación mayor que 254
9 5 Tiempo de espera de encuestas DF1 esclavo. Determine y corrija el retardo de la encuesta.
Expiró el temporizador de control (watchdog) de encuestas para el
esclavo. El maestro no encuestó este controlador en el período de
tiempo especificado.
9 9 Se perdió contacto con el módem. Corrija la conexión del módem al controlador.
Las líneas de control DCD y/o DSR no se están recibiendo en la
secuencia y/o estado correctos.
10 10 No se detectó la batería, o ésta necesita reemplazarse. Instale una batería nueva.

Publicación 1756-QR107B-ES-P - Marzo 2004


9 - 14 Fallos del sistema

Fallos definidos por el usuario


Si desea suspender (desactivar) el controlador según condiciones específicas de la aplicación, cree un fallo mayor definido por el usuario. Con un fallo mayor
definido por el usuario:
• El tipo de fallo siempre es 4.
• Usted define un valor para el código de fallo. Asegúrese de que no haya un código ya utilizado por los fallos mayores predefinidos.

Si utiliza un código de fallo que ya es un código de fallo predefinido, ocurrirá un fallo mayor.

• El controlador maneja el fallo de la misma manera que otros fallos mayores:


– El controlador cambia al modo con fallo (fallo mayor) y detiene la ejecución de la lógica.
– Las salidas se establecen en su estado configurado o valor para el modo de fallo.

En la rutina principal del programa, introduzca el renglón siguiente:


JSR
las condiciones bajo las cuales Jump to Subroutine
debe desactivarse el Routine name name_of_fault_routine
controlador Input par x

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10
Estructuras comunes
Las siguientes estructuras son estructuras comunes usadas por varias instrucciones de lógica de escalera de relé. Las instrucciones de bloques de función
también usan estructuras, pero éstas son más específicas para tipos particulares de instrucciones.

Estructura COMPARE
Mnemónico: Tipo de datos: Descripción:
.EN BOOL El bit de habilitación indica que la instrucción está habilitada.
.DN BOOL El bit de efectuado se establece cuando la instrucción ha efectuado la operación en el último elemento (.POS = .LEN).
.FD BOOL El bit de encontrado se establece cada vez que la instrucción registra una desigualdad (operación uno a la vez) o después
de registrar todas las desigualdades (operación todos por escán).
.IN BOOL El bit de inhibición indica el modo de búsqueda.
0 = modo todos
1 = modo una desigualdad a la vez
.ER BOOL El bit de error se establece si .POS < 0 o .LEN < 0. La instrucción ya no se ejecuta hasta que el programa restablece el bit
.ER.
.LEN DINT La longitud especifica el número de elementos en la matriz.
.POS DINT La posición contiene la posición del elemento actual.

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 2 Estructuras de datos

Estructura CONTROL
Mnemónico: Tipo de datos: Descripción:
.EN BOOL El bit de habilitación indica que la instrucción está habilitada.
.DN BOOL El bit de efectuado se establece cuando la instrucción ha efectuado la operación en el último elemento (.POS = .LEN).
.ER BOOL El bit de error se establece si la expresión genera un overflow (se establece S:V). La instrucción ya no se ejecuta hasta que
el programa restablece el bit .ER. El valor .POS contiene la posición del elemento que causó el overflow.
.LEN DINT La longitud especifica el número de elementos en la matriz.
.POS DINT La posición contiene la posición del elemento actual.

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10 - 3

Estructura COUNTER
Mnemónico: Tipo de datos: Descripción:
.CD BOOL El bit de habilitación de conteo regresivo indica que la instrucción CTD está habilitada.
.CU BOOL El bit de habilitación de conteo progresivo indica que la instrucción CTU está habilitada.
.DN BOOL El bit de efectuado indica que .ACC ≥ .PRE.
.OV BOOL El bit de overflow indica que el contador excedió el límite superior de 2,147,483,647. Luego el contador regresa a
–2,147,483,648 y comienza el conteo progresivo nuevamente.
.UN BOOL El bit de underflow indica que el contador excedió el límite inferior de –2,147,483,648. Luego el contador regresa a
2,147,483,647 y comienza el conteo regresivo nuevamente.
.PRE DINT El valor preseleccionado especifica el valor al que debe llegar el valor acumulado para que la instrucción establezca el
bit .DN.
.ACC DINT El valor acumulado especifica el número de transiciones que contó la instrucción.

Estructura EXT_ROUTINE_CONTROL (controlador SoftLogix5800 solamente)


Mnemónico: Tipo de datos: Descripción:
ErrorCode SINT Si ocurre un error, este valor identifica el error. Los valores válidos son 0-255.
NumParams SINT Este valor indica el número de parámetros asociados con esta instrucción.
ParameterDefs EXT_ROUTINE_ Esta matriz contiene definiciones de los parámetros que se van a pasar a la rutina externa. La instrucción puede pasar
PARAMETERS[10] hasta 10 parámetros.

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 4 Estructuras de datos

Mnemónico: Tipo de datos: Descripción:


ReturnParamDef EXT_ROUTIN_ Este valor contiene definiciones del parámetro de retorno de la rutina externa. Sólo hay un parámetro de retorno.
PARAMETERS
EN BOOL Cuando se establece, el bit de habilitación indica que la instrucción JXR está habilitada.
ReturnsValue BOOL Si se establece, este bit indica que se introdujo un parámetro de retorno para la instrucción. Si se restablece, este bit
indica que no se introdujo un parámetro de retorno para la instrucción.
DN BOOL El bit de efectuado se establece cuando la rutina externa se ha ejecutado una vez completamente.
ER BOOL El bit de error se establece si ocurre un error. La instrucción ya no se ejecuta hasta que el programa restablece el bit de
error.
FirstScan BOOL Este bit identifica si éste es el primer escán después de que el controlador pasó al modo Marcha. Use FirstScan para
inicializar la rutina externa, si es necesario.
EnableOut BOOL Habilitación de salida.
EnableIn BOOL Entrada de habilitación.
User1 BOOL Estos bits están disponibles para el usuario. El controlador no inicializa estos bits.
User0 BOOL
ScanType1 BOOL Estos bits identifican el tipo de escán actual:
Valores de bit: Tipo de escán:
ScanType0 BOOL 00 Normal
01 Preescán
10 Post-escán (no aplicable a programas de lógica de escalera de relé)

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10 - 5

Estructura MESSAGE
Mnemónico: Tipo de Descripción:
datos:
.FLAGS INT El miembro .FLAGS proporciona acceso a los miembros de estado (bits) en una palabra de 16 bits.
Este bit: Es este miembro:
2 .EW
4 .ER
5 .DN
6 .ST
7 .EN
8 .TO
9 .EN_CC
Importante: El restablecimiento de cualquiera de los bits de estado MSG cuando está habilitado un MSG puede interrumpir las
comunicaciones.
.ERR INT Si el bit .ER está establecido, la palabra de código de error identifica los códigos de error para la instrucción MSG.
.EXERR INT La palabra de código de error extendida especifica información adicional para algunos códigos de error.
.REQ_LEN INT La longitud solicitada especifica cuántas palabras la instrucción de mensaje intentará transferir.
.DN_LEN INT La longitud efectuada identifica cuántas palabras se transfirieron con éxito.

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 6 Estructuras de datos

Mnemónico: Tipo de Descripción:


datos:
.EW BOOL El bit de habilitación/espera se establece cuando el controlador detecta que una solicitud de mensaje ha entrado en la cola. El
controlador restablece el bit .EW cuando se establece el bit .ST.
.ER BOOL Se establece el bit de error cuando el controlador detecta el fallo de una transferencia. El bit .ER se restablece la próxima vez que la
condición de entrada de renglón va de falsa a verdadera.
.DN BOOL Se establece el bit de efectuado cuando se transfiere con éxito el último paquete del mensaje. El bit .DN se restablece la próxima
vez que la condición de entrada de renglón va de falsa a verdadera.
.ST BOOL Se establece el bit de arranque cuando el controlador comienza a ejecutar la instrucción MSG. El bit .ST se restablece cuando se
establece el bit .DN o .ER.
.EN BOOL Se establece el bit de habilitación cuando la condición de entrada de renglón se hace verdadera y permanece establecida hasta que
se establece el bit .DN o .ER y la condición de entrada de renglón es falsa. Si la condición de entrada de renglón se hace falsa, pero
los bits .DN y .ER se restablecen, el bit .EN permanece establecido.
.TO BOOL Si se establece manualmente el bit .TO, el controlador interrumpe el procesamiento del mensaje y establece el bit .ER.
.EN_CC BOOL El bit de habilitación de caché determina cómo administrar la conexión MSG. Las conexiones para instrucciones MSG a través del
puerto en serie no se guardan en la memoria caché aunque se establezca el bit .EN_CC.
.ERR_SRC SINT Usado por el software RSLogix 5000 para mostrar la ruta de error en el cuadro de diálogo Message Configuration
.DestinationLink INT Para cambiar el vínculo de destino de un DH+ o CIP con mensaje ID de origen, establezca este miembro en el valor requerido.
.DestinationNode INT Para cambiar el nodo de destino de un DH+ o CIP con mensaje ID de origen, establezca este miembro en el valor requerido.
.SourceLink INT Para cambiar el vínculo de origen de un DH+ o CIP con mensaje ID de origen, establezca este miembro en el valor requerido.
.Class INT Para cambiar el parámetro Class de un mensaje genérico CIP, establezca este miembro en el valor requerido.

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10 - 7

Mnemónico: Tipo de Descripción:


datos:
.Attribute INT Para cambiar el parámetro Attribute de un mensaje genérico CIP, establezca este miembro en el valor requerido.
.Instance DINT Para cambiar el parámetro Instance de un mensaje genérico CIP, establezca este miembro en el valor requerido.
.LocalIndex DINT Si usted usa un asterisco [*] para eliminar el número de elemento de la matriz local, el LocalIndex proporciona el número de elemento. Para
cambiar el número de elemento, establezca este miembro en el valor requerido.
Si el mensaje: Entonces la matriz local es el:
lee datos Elemento de destino
escribe datos Elemento de origen
.Channel SINT Para enviar el mensaje a través de un canal diferente del módulo 1756-DHRIO, establezca este miembro en el valor requerido. Use el carácter
ASCII A o B.
.Rack SINT Para cambiar el número de rack para un mensaje de transferencia en bloques, establezca este miembro en el número de rack requerido (octal).
.Group SINT Para cambiar el número de grupo para un mensaje de transferencia en bloques, establezca este miembro en el número de grupo requerido
(octal).
.Slot SINT Para cambiar el número de ranura para un mensaje de transferencia en bloques, establezca este miembro en el número de ranura requerido.
Si la red es: Entonces especifique el número de ranura en:
E/S remotas universales octal
ControlNet decimal (0-15)
.Path STRING Para enviar el mensaje a un controlador diferente, establezca este miembro en la nueva ruta.
• Introduzca la ruta en valores decimales.
• Omita las comas [,]

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 8 Estructuras de datos

Mnemónico: Tipo de Descripción:


datos:
.RemoteIndex DINT Si usted usa un asterisco [*] para eliminar el número de elemento de la matriz remota, el RemoteIndex proporciona el número de
elemento. Para cambiar el número de elemento, establezca este miembro en el valor requerido.
Si el mensaje: Entonces la matriz remota es el:
lee datos Elemento de origen
escribe datos Elemento de destino
.RemoteElement STRING Para especificar un tag o dirección diferente en el controlador al cual se envía el mensaje, establezca este miembro en el valor
requerido. Introduzca el tag o dirección en caracteres ASCII.
Si el mensaje: Entonces la matriz remota es el:
lee datos Elemento de origen
escribe datos Elemento de destino
.UnconnnectedTimeout DINT El tiempo de espera para los mensajes no conectados. El valor predeterminado es 30 segundos.
.ConnectionRate DINT El valor de ConnectionRate por el valor de TimeoutMultiplier produce el tiempo de espera para los mensajes conectados.
• el valor predeterminado de ConnectionRate es 7.5 segundos
.TimeoutMultiplier SINT • el valor predeterminado de TimeoutMultiplier es 0 (igual al factor de multiplicación de 4)
• el tiempo de espera predeterminado para los mensajes conectados es 30 segundos (7.5 segundos x 4 = 30 segundos)
• para cambiar el tiempo de espera, cambie el valor de ConnectionRate y deje el valor de TimeoutMultiplier en el valor
predeterminado

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10 - 9

Estructura RESULT
Mnemónico: Tipo de datos: Descripción:
.DN BOOL El bit de efectuado se establece cuando la matriz Resultado está llena.
.LEN DINT El valor de longitud identifica el número de ubicaciones de almacenamiento en la matriz Resultado.
.POS DINT El valor de posición identifica la posición actual en la matriz Resultado.

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 10 Estructuras de datos

Estructura SERIAL_PORT_CONTROL
Mnemónico: Tipo de datos: Descripción:
.EN BOOL El bit de habilitación indica que la instrucción está habilitada.
.EU BOOL El bit de cola indica que la instrucción entró a la cola ASCII.
.DN BOOL El bit de efectuado indica cuando se ha efectuado la instrucción, pero es asíncrono al escán de la lógica.
.RN BOOL El bit de ejecución indica que la instrucción se está ejecutando.
.EM BOOL El bit de vacío indica que se efectuó la instrucción, pero es síncrono al escán de la lógica.
.ER BOOL El bit de error indica cuándo la instrucción entra en fallo (errores).
.FD BOOL El bit de encontrado indica que la instrucción encontró el carácter o caracteres de terminación.
.POS DINT La posición determina el número de caracteres en el búfer hasta e incluso el primer conjunto de caracteres de terminación.
La instrucción sólo retorna este número después que encuentra el carácter o caracteres de terminación.
.ERROR DINT El error contiene un valor hexadecimal que identifica la causa del error.

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10 - 11

Estructura STRING
Cada tipo de datos de cadena incluye estos miembros:
Nombre: Tipo de datos: Descripción: Notas:
LEN DINT número de caracteres en la cadena El LEN se actualiza automáticamente al nuevo conteo de los caracteres cuando usted:
• usa el cuadro de diálogo String Browser para introducir caracteres.
• usa las instrucciones que leen, convierten o manipulan una cadena.
El LEN muestra la longitud de la cadena actual. El miembro DATA puede contener caracteres adicionales
antiguos, los cuales no se incluyen en el conteo LEN.
DATA Matriz SINT caracteres ASCII de la cadena Para obtener acceso a los caracteres de la cadena, direccione el nombre del tag. Cada elemento de la matriz
DATA contiene un carácter. Usted puede crear nuevos tipos de datos de cadena que almacenen menos o más
caracteres.

Los caracteres ASCII se almacenan en tags que usan un tipo de datos de cadena.
• Puede usar el tipo de datos STRING predeterminado. Almacena hasta 82 caracteres.
• Usted puede crear un nuevo tipo de datos de cadena que almacene menos o más caracteres.

Tenga cuidado cuando cree un nuevo tipo de datos de cadena. Si posteriormente decide cambiar el tamaño del tipo de datos de cadena, puede perder datos en cualquier tag
IMPORTANTE que actualmente use ese tipo de datos.

Si usted: Entonces:
hace un tipo de datos de cadena más pequeño • Los datos se truncan.
• LEN no se cambia.
hace un tipo de datos de cadena más grande El dato y LEN se restablecen a cero.

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 12 Estructuras de datos

Para crear un tipo de datos de cadena:

O BIEN
Use el tipo de datos STRING Cree un nuevo tipo de datos de cadena para
predeterminado. Éste almacena almacenar el número de caracteres definido.
hasta 82 caracteres

Si crea un nuevo tipo de datos de cadena, defina el número de caracteres en la cadena:

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10 - 13

Estructura TIMER
Mnemónico: Tipo de datos: Descripción:
.EN BOOL El bit de habilitación indica que la instrucción está habilitada.
.TT BOOL El bit de temporización indica que una operación de temporización está en proceso.
.DN BOOL El bit de efectuado se establece cuando .ACC ≥ .PRE.
.PRE DINT El valor preseleccionado especifica el valor (unidades de 1 mseg) al que debe llegar el valor acumulado para que la instrucción
establezca el bit .DN.
.ACC DINT El valor acumulado especifica el número de milisegundos que han transcurrido desde que se habilitó la instrucción.

Estructura definida por el usuario


Usted también puede crear sus propias estructuras, las cuales se denominan tipo de datos definido por el usuario. Un tipo de datos definido por el usuario agrupa
diferentes tipos de datos en una sola entidad.
• Dentro de un tipo de datos definido por el usuario se definen los miembros.
• Al igual que los tags, los miembros tienen un nombre y un tipo de datos.
• También se pueden incluir matrices y estructuras.
• Una vez que se ha creado un tipo de datos definido por el usuario, se puede crear uno o más tags usando ese tipo de datos.
• Reduzca al mínimo el uso de estos tipos de datos porque éstos generalmente aumentan los requisitos de memoria y el tiempo de ejecución de la lógica.
– INT
– SINT

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 14 Estructuras de datos

• Si incluye miembros que representan dispositivos de E/S, debe usar la lógica de escalera para copiar los datos entre los miembros en la estructura y
los tags de E/S correspondientes.
• Cuando use los tipos de datos BOOL, SINT o INT, coloque los miembros que usan el mismo tipo de datos en secuencia:
más eficiente menos eficiente

BOOL BOOL
BOOL DINT
BOOL BOOL
DINT DINT
DINT BOOL

• Puede usar matrices de una dimensión.


• Puede crear, editar y eliminar los tipos de datos definidos por el usuario solamente cuando programa fuera de línea.
• Si modifica un tipo de datos definido por el usuario y cambia el tamaño del mismo, los valores existentes de los tags que usan el tipo de datos se
ponen en cero (0).
• Para copiar datos a una estructura, use la instrucción COP.

Publicación 1756-QR107B-ES-P - Marzo 2004


Estructuras de datos 10 - 15

Para crear un tipo de datos definido por el usuario:

Publicación 1756-QR107B-ES-P - Marzo 2004


10 - 16 Estructuras de datos

Notas:

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11
Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ABL no disponible ABL(Channel La instrucción ABL cuenta los caracteres en el búfer hasta e
ASCII Test for SerialPortControl); incluso el primer carácter de terminación.
Buffer Line

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

Serial Port SERIAL_PORT_ tag el tag que controla la operación


Control Control

Character Count DINT valor inmediato muestra el número de caracteres en el búfer, incluso el primer conjunto de caracteres de terminación (lógica de escalera de
relé solamente)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 2 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ABS dest := ABS(source); La instrucción ABS halla el valor absoluto del origen y
absolute value coloca el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato valor desde el cual se extrae el valor absoluto
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
ABS tag FBD_MATH_ estructura Estructura ABS (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL valor desde el cual se extrae el valor absoluto

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 3

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ACB no disponible ACB(Channel La instrucción ACB cuenta los caracteres en el búfer.


ASCII Characters in SerialPortControl);
Buffer

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

Serial Port SERIAL_PORT_ tag el tag que controla la operación


Control Control

Character Count DINT valor inmediato muestra el número de caracteres en el búfer (lógica de escalera de relé solamente)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 4 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ACL no disponible ACL(Channel, La instrucción ACL borra inmediatamente el búfer y la cola


ASCII Clear Buffer ClearSerialPortRead, ASCII.
ClearSerialPortWrite);

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

Clear Serial Port BOOL valor inmediato Para borrar el búfer y eliminar las instrucciones ARD y ARL de la cola, introduzca Sí.
Read tag

Clear Serial Port BOOL valor inmediato Para eliminar las instrucciones AWA y AWT de la cola, introduzca Sí.
Write tag

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 5

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ACS dest := ACOS(source); La instrucción ACS halla el arco coseno del valor de origen
Arc Cosine (en radianes) y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar el arco coseno de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
ACS tag FBD_MATH_ estructura Estructura ACS (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 6 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ADD dest := sourceA + sourceB; La instrucción ADD suma el origen A al origen B y coloca el
Add resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor que se suma al origen B
estructurado INT REAL tag

Source B SINT DINT valor inmediato valor que se suma al origen A


INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
ADD tag FBD_MATH estructura Estructura ADD (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor que se suma a SourceB.

SourceB REAL valor que se suma a SourceA.

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 7

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

AFI no disponible no disponible La instrucción AFI establece su condición de salida de


Always False renglón como falsa.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 8 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

AHL no disponible AHL(Channel,ANDMask La instrucción AHl obtiene el estado de las líneas de control
ASCII Handshake ORMask, y activa o desactiva las señales DTR y RTS.
Lines SerialPortControl);

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

ANDMask DINT valor inmediato


tag Para poner Y poner Valor de Valor de Para poner Y poner Valor de Valor de
DTR en el RTS en el ANDMask: ORMask: DTR en el RTS en el ANDMask: ORMask:
ORMask DINT valor inmediato estado estado estado estado
tag siguiente: siguiente: siguiente: siguiente:

desactivado desactivado 3 0 sin cambio desactivado 2 0

activado 1 2 activado 0 2

sin cambio 1 0 sin cambio 0 0

activado desactivado 2 1

activado 0 3

Serial Port Control SERIAL_PORT_ tag el tag que controla la operación


CONTROL

Channel Status DINT valor inmediato muestra el estado de las líneas de control (lógica de escalera de relé solamente)

Indicadores de estado aritmético: Fallos mayores:

afectados Type 4 Código 57 La instrucción AHL no se ejecutó porque el puerto en serie está establecido en la opción sin
handshaking.
Cambie el parámetro Control Line del puerto en serio o elimine la instrucción AHL.

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 9

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ALM no disponible ALM(ALM_tag); La instrucción ALM proporciona alarmas para cualquier


Alarm señal analógica.

Operando: Tipo: Formato: Descripción:

ALM tag ALARM estructura Estructura ALM (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica

HHAlarm BOOL indicador de alarma alta-alta

HAlarm BOOL indicador de alarma alta

LAlarm BOOL indicador de alarma baja

LLAlarm BOOL indicador de alarma baja-baja

ROCPosAlarm BOOL indicador de alarma de régimen de cambio positivo

ROCNegAlarm BOOL indicador de alarma de régimen de cambio negativo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 10 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

AND dest := sourceA AND sourceB La instrucción AND realiza una función Y bit a bit usando
Bitwise AND los bits en los orígenes A y B y coloca el resultado en el
destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor en que se realiza la función Y con el origen B
estructurado INT tag

Source B SINT DINT valor inmediato valor en que se realiza la función Y con el origen A
INT tag

Destination SINT DINT tag tag para almacenar el resultado


INT

Bloque de Operando: Tipo: Formato: Descripción:


función
AND tag FBD_LOGICAL estructura Estructura AND (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA DINT valor en que se realiza la función Y con el origen B

SourceB DINT valor en que se realiza la función Y con el origen A

Dest DINT resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 11

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ARD no disponible ARD(Channel, La instrucción retira caracteres del búfer y los almacena en
ASCII Read Destination, el destino.
SerialPortControl);

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

Destination cadena tag el tag al cual se transfieren los caracteres (lectura):


SINT DINT • para un tipo de datos de cadena, introduzca el nombre del tag.
INT • para una matriz SINT, INT o DINT, introduzca el primer elemento de la matriz.

Serial Port SERIAL_PORT_ tag el tag que controla la operación


Control Control

Serial Port DINT valor inmediato muestra el número de caracteres a transferir al destino (lógica de escalera de relé solamente)
Control Length

Characters Read DINT valor inmediato durante la ejecución, muestra el número de caracteres leídos (lógica de escalera de relé solamente)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 12 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ARL no disponible ARL(Channel, La instrucción ARL retira los caracteres especificados del
ASCII Read Line Destination, búfer y los almacena en el destino.
SerialPortControl);

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

Destination cadena tag el tag al cual se transfieren los caracteres (lectura):


SINT DINT • para un tipo de datos de cadena, introduzca el nombre del tag.
INT • para una matriz SINT, INT o DINT, introduzca el primer elemento de la matriz.

Serial Port SERIAL_PORT_ tag el tag que controla la operación


Control Control

Serial Port Control DINT valor inmediato muestra el número máximo de caracteres a leer si no se encuentran caracteres de terminación (lógica de escalera de relé
Length solamente)

Characters Read DINT valor inmediato durante la ejecución, muestra el número de caracteres leídos (lógica de escalera de relé solamente)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 13

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ASN dest := ASIN(source); La instrucción ASN halla el arco seno del valor de origen
Arc Sine (en radianes) y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar el arco seno de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
ASN tag FBD_MATH_ estructura Estructura ASN (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 14 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ATN dest := ATAN(source); La instrucción ATN halla el arco tangente del valor de
Arc Tangent origen (en radianes) y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar el arco tangente de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
ATN tag FBD_MATH_ estructura Estructura ATN (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 15

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

AVE no disponible SIZE(array,0,length); La instrucción AVE calcula el promedio de un conjunto de


Average sum := 0; valores.
FOR position = 0 TO length-1
DO
sum := sum +
array[position];
END_FOR;
destination := sum / length;

Operando: Tipo: Formato: Descripción:

Array SINT DINT tag de matriz hallar el promedio de los valores en este matriz especificar el primer elemento del grupo de elementos que se va a
INT REAL promediar
no use CONTROL.POS en el subíndice

Dimension to vary DINT valor inmediato qué dimensión usar


(0, 1, 2) el orden es: array[dim_0,dim_1,dim_2] luego array[dim_0,dim_1] luego array[dim_0]

Destination SINT DINT tag resultado de la operación


INT REAL

Control Control tag estructura de control para la operación

Length DINT valor inmediato número de elementos en el matriz que se va a promediar

Position DINT valor inmediato elemento actual en el matriz; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Type 4 Código 20 La dimensión que se va a variar no existe para el matriz especificado

Type 4 Código 21 .POS < 0 ó .LEN < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 16 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

AWA no disponible AWA(Channel,Source, La instrucción AWA envía un número especificado de


ASCII Write SerialPortControl); caracteres del tag de origen a un dispositivo en serie y
Append añade uno o dos caracteres predefinidos.

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

Source cadena tag tag que contiene los caracteres a enviar:


SINT DINT • para un tipo de datos de cadena, introduzca el nombre del tag.
INT • para una matriz SINT, INT o DINT, introduzca el primer elemento de la matriz.

Serial Port SERIAL_PORT_ tag el tag que controla la operación


Control Control

Serial Port Control DINT valor inmediato muestra el número de caracteres a enviar (lógica de escalera de relé solamente)
Length

Characters Sent DINT valor inmediato muestra el número de caracteres enviados (lógica de escalera de relé solamente)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 17

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

AWT no disponible AWT(Channel, La instrucción AWT envía un número especificado de


ASCII Write Source, caracteres del tag de origen a un dispositivo en serie.
SerialPortControl);

Operando: Tipo: Formato: Descripción:

Channel DINT valor inmediato 0


tag

Source SINT DINT tag tag que contiene los caracteres a enviar:
INT cadena • para un tipo de datos de cadena, introduzca el nombre del tag.
• para una matriz SINT, INT o DINT, introduzca el primer elemento de la matriz.

Serial Port SERIAL_PORT_ tag el tag que controla la operación


Control Control

Serial Port Control DINT valor inmediato número de caracteres a enviar (lógica de escalera de relé solamente)
Length

Characters Sent DINT valor inmediato muestra el número de caracteres enviados (lógica de escalera de relé solamente)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 18 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BAND vea AND IF operandA AND operandB La instrucción BAND une lógicamente mediante AND hasta
Boolean AND THEN 8 entradas booleanas.
<statement>;
END_IF;

Operando: Tipo: Formato: Descripción:

BAND tag FBD_BOOLEAN_ estructura Estructura BAND (parámetros predeterminados):


AND
Parámetro: Tipo: Descripción:

Inx BOOL entrada booleana; donde x = 1-8

Out BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 19

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BNOT vea NOT IF NOT operand THEN La instrucción BNOT complementa a una entrada booleana.
Boolean NOT <statement>;
END_IF;

Operando: Tipo: Formato: Descripción:

BNOT tag FBD_BOOLEAN_B estructura Estructura BNOT (parámetros predeterminados):


NOT
Parámetro: Tipo: Descripción:

In BOOL entrada booleana

Out BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 20 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BOR vea OR IF operandA OR operandB THEN La instrucción BOR une lógicamente mediante el símbolo
Boolean OR <statement>; OR hasta 8 entradas booleanas.
END_IF;

Operando: Tipo: Formato: Descripción:

BOR tag FBD_BOOLEAN_ estructura Estructura BOR (parámetros predeterminados):


OR
Parámetro: Tipo: Descripción:

Inx BOOL entrada booleana; donde x = 1-8

Out BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BRK no disponible EXIT; La instrucción BRK interrumpe la ejecución de una rutina


Break que fue llamada por una instrucción FOR.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 21

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BSL no disponible no disponible La instrucción BSL desplaza los bits especificados dentro de
Bit Shift Left la matriz una posición a la izquierda.

Operando: Tipo: Formato: Descripción:

Array DINT tag de matriz matriz que se modifica; especificar el primer elemento del grupo de elementos
no use CONTROL.POS en el subíndice

Control Control tag estructura de control para la operación

Source Bit BOOL tag bit que se desplaza

Length DINT valor inmediato número de bits en la matriz que se desplazan

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 22 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BSL no disponible no disponible La instrucción BSR desplaza los bits especificados dentro
Bit Shift Right de la matriz una posición a la derecha.

Operando: Tipo: Formato: Descripción:

Array DINT tag de matriz matriz que se modifica; especificar el primer elemento del grupo de elementos
no use CONTROL.POS en el subíndice

Control Control tag estructura de control para la operación

Source Bit BOOL tag bit que se desplaza

Length DINT valor inmediato número de bits en la matriz que se desplazan

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 23

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BTD vea BTDT vea BTDT La instrucción BTD copia los bits especificados desde el
Bit Field Distribute origen, desplaza los bits en la posición apropiada y escribe
los bits al destino.

Operando: Tipo: Formato: Descripción:

Source SINT DINT valor inmediato tag que contiene los bits que se mueven
INT tag

Source Bit DINT valor inmediato número del bit (el número de bit menor de todos) desde el cual se inicia el movimiento
debe estar dentro del rango válido para el tipo de datos de origen (0-31 DINT, 0-15 INT, 0-7 SINT)

Destination SINT DINT valor inmediato tag al cual se mueven los bits
INT tag

Destination bit DINT valor inmediato el número del bit (el número de bit menor de todos) donde se inicia el copiado de los bits del origen
debe estar dentro del rango válido para el tipo de datos de destino (0-31 DINT, 0-15 INT, 0-7 SINT)

Length DINT tag número de bits que se van a transferir (1-32)

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 24 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BTDT vea BTD BTDT(BTDT_tag); La instrucción BTDT primero copia el receptor al destino. La
Bit Field Distribute instrucción BTD copia los bits especificados desde el
with Target origen, desplaza los bits a la posición apropiada y escribe
los bits al destino. El receptor y el destino no cambian.

Operando: Tipo: Formato: Descripción:

BTDT tag FBD_BIT_FIELD_ estructura Estructura BTDT (parámetros predeterminados):


DISTRIBUTE
Parámetro: Tipo: Descripción:

Source DINT El valor de entrada que contiene los bits que se transfieren al destino.

SourceBit DINT La posición de bit en el origen (el número de bit más bajo desde el cual se inicia
la transferencia).

Length DINT número de bits que se van a transferir (1-32)

DestBit DINT la posición de bit en el destino (el número de bit más bajo al cual se comienza a
copiar bits).

Target DINT valor de entrada que se transfiere al destino antes de transferir los bits del
origen.

Dest DINT resultado de la operación de transferencia de bit.

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 25

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

BXOR vea XOR IF operandA XOR operandB La instrucción BXOR realiza una operación O exclusivo en
Boolean Exclusive THEN dos entradas booleanas.
XOR <statement>;
END_IF;

Operando: Tipo: Formato: Descripción:

BXOR tag FBD_BOOLEAN_X estructura Estructura BXOR (parámetros predeterminados):


OR
Parámetro: Tipo: Descripción:

In1 BOOL entrada booleana

In2 BOOL entrada booleana

Out BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

CLR no disponible dest := 0; La instrucción CLR restablece todos los bits del destino.
Clear

Operando: Tipo: Formato: Descripción:

Destination SINT DINT tag tag que se borra


INT REAL

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 26 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:


CMP no disponible IF BOOL_expression THEN La instrucción CMP realiza una comparación de las operaciones
Compare <statement>; aritméticas que se especifican en la expresión.
END_IF;

Operando: Tipo: Formato: Descripción:

Expresión SINT REAL valor inmediato una expresión que consiste en tags y/o valores inmediatos separados por operadores.
INT cadena tag
DINT

Indicadores de estado aritmético: Fallos mayores:

afectados si las expresiones usan ninguna


operadores que afectan los indicadores de
estado aritmético

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

CONCAT no disponible CONCAT(SourceA,SourceB, La instrucción CONCAT añade caracteres ASCII al fin de una
String Concatenate Dest); cadena.

Operando: Tipo: Formato: Descripción:

Source A cadena tag tag que contiene los caracteres iniciales

Source B cadena tag tag que contiene los caracteres finales

Destination cadena tag tag para almacenar el resultado

Indicadores de estado aritmético: Fallos mayores:

no afectados Type 4 Código 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena.
Verifique que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena y que en el valor LEN,
usted introdujo el número de caracteres que contiene la cadena.

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 27

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

COP no disponible COP(Source,Dest La instrucción COP copia los valores del origen al destino. El
Copy File Length); origen no se cambia.
Los datos pueden cambiar durante la operación de copiar

Operando: Tipo: Formato: Descripción:

Source SINT REAL tag elemento inicial que se copia


INT cadena Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados
DINT
estructura

Destination SINT REAL tag el elemento inicial que va a ser sobrescrito por el origen
INT cadena Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados
DINT
estructura

Length DINT valor inmediato número de elementos de destino que se copian


tag

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 28 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

COS dest := COS(source); La instrucción COS halla el coseno del valor de origen (en
Cosine radianes) y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar el coseno de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
COS tag FBD_MATH_ estructura Estructura COS (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 29

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

CPS no disponible CPS(Source,Dest La instrucción CPS copia los valores del origen al destino. El
Synchronous Copy Length); origen no se cambia.
File
Los datos no pueden cambiar durante la operación de
copiar

Operando: Tipo: Formato: Descripción:

Source SINT REAL tag elemento inicial que se copia


INT cadena Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados
DINT
estructura

Destination SINT REAL tag el elemento inicial que va a ser sobrescrito por el origen
INT cadena Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados
DINT
estructura

Length DINT valor inmediato número de elementos de destino que se copian


tag

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 30 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

CPT no disponible destination := La instrucción CPT realiza las operaciones aritméticas que
Compute numeric_expresion; se definen en la expresión.

Operando: Tipo: Formato: Descripción:

Destination SINT DINT valor inmediato tag para almacenar el resultado


INT REAL tag

Expresión SINT DINT valor inmediato una expresión que consiste en tags y/o valores inmediatos separados por operadores.
INT REAL tag

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

CTD vea CTUD vea CTUD La instrucción CTD cuenta regresivamente.


Counter Down

Operando: Tipo: Formato: Descripción:

Counter COUNTER tag estructura Counter

Preset DINT valor inmediato valor inferior hasta donde contar

Accum DINT valor inmediato número de veces que contó el contador; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 31

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

CTU vea CTUD vea CTUD La instrucción CTU cuenta progresivamente.


Counter Up

Operando: Tipo: Formato: Descripción:

Counter COUNTER tag estructura Counter

Preset DINT valor inmediato valor superior hasta donde contar

Accum DINT valor inmediato número de veces que contó el contador; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 32 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

CTUD vea CTU y CTD CTUD(CTUD_tag); La instrucción CTUD cuenta progresivamente un valor de
Count Up/Down uno cuando CUEnable cambia de restablecido a
establecido. La instrucción cuenta regresivamente un valor
de uno cuando CDEnable cambia de restablecido a
establecido.

Operando: Tipo: Formato: Descripción:

CTUD tag FBD_COUNTER estructura Estructura CTUD (parámetros predeterminados):

Parámetro: Tipo: Descripción:

CUEnable BOOL habilita el conteo progresivo


Cuando la entrada cambia de restablecido a establecido, el acumulador cuenta
progresivamente un valor de uno.

CDEnable BOOL habilita el conteo regresivo


Cuando la entrada cambia de restablecido a establecido, el acumulador cuenta
regresivamente un valor de uno.

PRE DINT valor preseleccionado del contador

Reset BOOL petición para restablecer el temporizador

ACC DINT valor acumulado

DN BOOL conteo efectuado.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 33

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

D2SD no disponible D2SD(D2SD_tag); La instrucción D2SD controla un dispositivo discreto que


Discrete 2-State tiene sólo dos estados posibles tales como
Device activado/desactivado, abierto/cerrado, etc.

Operando: Tipo: Formato: Descripción:

Tag D2SD DISCRETE_ estructura Estructura D2SD (parámetros predeterminados):


2STATE
Parámetro: Tipo: Descripción:

ProgCommand BOOL comando de estado de programa.

StatexPerm BOOL estado x permitido, donde x = 0 ó 1


A menos que esté en el modo manual (Hand) o de anular (Overrride), esta entrada
se debe establecer para que el dispositivo entre al estado 0.

FBx BOOL entrada de retroalimentación, donde x = 0 ó 1

HandFB BOOL entrada de retroalimentación manual.


cuando se establece, se pide al dispositivo de campo que entre al estado 1;
cuando se restablece, se pide al dispositivo de campo que entre al estado 0;

ProgProgReq BOOL petición de programa del programa.

ProgOperReq BOOL petición del operador del programa.

ProgOverrideReq BOOL petición de anular de programa.

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 34 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

D2SD Parámetro: Tipo: Descripción:


Discrete 2-State
Device ProgHandReq BOOL petición de modo manual del programa
(continúa)
Out BOOL salida de la instrucción

DevicexState BOOL dispositivo x salida de estado, donde x = 0 ó 1

CommandStatus BOOL salida de estado de comando

FaultAlarm BOOL salida de alarma de fallo

ModeAlarm BOOL Salida de alarma de modo

ProgOper BOOL indicador de control del programa/operador

Override BOOL Indicador del modo Override

Hand BOOL Indicador del modo Hand

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 35

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

D3SD no disponible D3SD(D3SD_tag); La instrucción D3SD controla un dispositivo discreto que


Discrete 3-State tiene tres estados posibles tales como
Device rápido/lento/desactivado, avance/paro/retroceso, etc.

Operando: Tipo: Formato: Descripción:

D3SD tag DISCRETE_ estructura Estructura D3SD (parámetros predeterminados):


3STATE
Parámetro: Tipo: Descripción:

ProgxCommand BOOL estado de programa x comando, donde x = 0, 1 ó 2

StatexPerm BOOL estado x permitido, donde x = 0, 1ó 2


A menos que esté en el modo manual (Hand) o de anular (Overrride), esta entrada
se debe establecer para que el dispositivo entre al estado 0.

FBx BOOL entrada de retroalimentación; donde x = 0, 1, 2 ó 3

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 36 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

D3SD Parámetro: Tipo: Descripción:


Discrete 3-State
Device HandFBx BOOL entrada de retroalimentación manual, donde x = 0, 1 ó 2
(continúa) cuando se establece, se pide al dispositivo de campo que entre al estado 1;
cuando se restablece, se pide al dispositivo de campo que entre a otro estado

ProgProgReq BOOL petición de programa del programa.

ProgOperReq BOOL petición del operador del programa.

ProgOverrideReq BOOL petición de anular de programa.

ProgHandReq BOOL petición de modo manual del programa

Outx BOOL salida de la instrucción, donde x = 0, 1 ó 2

DevicexState BOOL dispositivo x salida de estado, donde x = 0, 1 ó 2

CommandxStatus BOOL salida de estado de comando, donde x = 0, 1 ó 2

FaultAlarm BOOL salida de alarma de fallo

ModeAlarm BOOL Salida de alarma de modo

ProgOper BOOL indicador de control del programa/operador

Override BOOL Indicador del modo Override

Hand BOOL Indicador del modo Hand

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 37

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DDT no disponible no disponible La instrucción DDT compara los bits en una matriz de origen
Diagnostic Detect con los bits en una matriz de referencia para determinar
cambios de estado.

Operando: Tipo: Formato: Descripción:

Source DINT tag de matriz matriz que se va a comparar con la referencia; no use CONTROL.POS en el subíndice

Reference DINT tag de matriz matriz que se va a comparar con el origen; no use CONTROL.POS en el subíndice

Result DINT tag de matriz matriz para almacenar los resultados; no use CONTROL.POS en el subíndice

Cmp control Control estructura estructura de control para la comparación

Length DINT valor inmediato número de bits que se va a comparar

Position DINT valor inmediato posición actual en el origen; el valor inicial es típicamente 0

Result control Control estructura estructura de control para los resultados

Length DINT valor inmediato número de ubicaciones de almacenamiento en el resultado

Position DINT valor inmediato posición actual en el resultado; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Type 4 Código 20 result.POS > tamaño de matriz de resultado

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 38 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DEDT no disponible DEDT(DEDT_tag,storage); La instrucción DEDT realiza un retardo de una sola entrada.
DEADTIME Usted selecciona la cantidad de retardo de tiempo muerto.

Operando: Tipo: Formato: Descripción:

DEDT tag DEADTIME estructura Estructura DEDT (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

storage REAL matriz búfer de tiempo muerto

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 39

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DEG dest := DEG(source); La instrucción DEG convierte el origen (en radianes) a


Degrees grados y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato valor que se va a convertir a grados
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
DEG tag FBD_MATH_ estructura Estructura DEG (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción de conversión.

Dest REAL resultado de la instrucción de conversión.

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 40 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DELETE no disponible DELETE(Source,Qty, La instrucción DELETE elimina los caracteres ASCII de una
String Delete Start,Dest); cadena.

Operando: Tipo: Formato: Descripción:

Source cadena tag el tag que contiene la cadena de la cual se desea eliminar los caracteres

Quantity SINT DINT valor inmediato el número de caracteres que se desea eliminar; el inicio así como la cantidad deben ser menores o iguales al tamaño DATA
INT tag del origen.

Start SINT DINT valor inmediato la posición del primer carácter que se debe eliminar; introduzca un número entre 1 y el tamaño DATA del origen
INT tag

Destination cadena tag tag para almacenar el resultado

Indicadores de estado aritmético: Fallos mayores:

no afectados 4 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

4 56 El valor de inicio o cantidad no es válido. Verifique que:


• el valor de inicio es entre 1 y el tamaño DATA del origen.
• el valor de inicio así como el valor de cantidad son menores o iguales al tamaño DATA del
origen.

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 41

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DERV no disponible DERV(DERV_tag); La instrucción DERV calcula la cantidad de cambio con el


Derivative tiempo de una señal en unidades por segundo.

Operando: Tipo: Formato: Descripción:

DERV tag DERIVATIVE estructura Estructura DERV (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada a la instrucción

ByPass BOOL petición para evitar el algoritmo; cuando se establece, la instrucción establece
Out = In

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 42 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DFF no disponible DFF(DFF_tag); La instrucción DFF establece la salida Q en el estado de la


D FLip-Flop entrada D en una transición de restablecido a establecido
de la entrada Clock. La salida QNot se establece en el
estado opuesto al de la salida Q.

Operando: Tipo: Formato: Descripción:

DFF tag FLIP_FLOP_D estructura Estructura DFF (parámetros predeterminados):

Parámetro: Tipo: Descripción:

D BOOL entrada a la instrucción

Clear BOOL entrada de restablecimiento para la instrucción; si se establece, la instrucción


restablece Q y establece QNot

Clock BOOL Entrada de reloj para la instrucción

Q BOOL salida de la instrucción

QNot BOOL complemento de la salida Q.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 43

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DIV dest := sourceA / sourceB; La instrucción DIV divide el origen A entre el origen B y
Divide coloca el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor del dividendo
estructurado INT REAL tag

Source B SINT DINT valor inmediato valor del divisor


INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
DIV tag FBD_MATH estructura Estructura DIV (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor del dividendo

SourceB REAL valor del divisor

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados Type 4 Código 4 el divisor es 0

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 44 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DTOS no disponible DTOS(Source,Dest); La instrucción DTOS produce la representación ASCII de un


DINT to String valor.

Operando: Tipo: Formato: Descripción:

Source SINT DINT tag el tag que contiene el valor; Si el origen es un valor REAL, la instrucción lo convierte a un valor DINT.
INT REAL

Destination cadena tag el tag en que se almacena el valor ASCII

Indicadores de estado aritmético: Fallos mayores:

no afectados 4 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

4 52 La cadena de salida es mayor que el destino. Cree un nuevo tipo de datos de cadena que sea
suficientemente grande para la cadena de salida. Use el nuevo tipo de datos de cadena como tipo de
datos par el destino.

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 45

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

DTR no disponible no disponible La instrucción DTR pasa el valor de origen a través de una
Data Transitional máscara y compara el resultado con el valor de referencia.

Operando: Tipo: Formato: Descripción:

Source DINT valor inmediato matriz que se va a comparar con la referencia.


tag

Mask DINT valor inmediato qué bits se bloquean o se pasan


tag

Reference DINT tag matriz que se va a comparar con el origen.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

EOT no disponible EOT(data_bit); La instrucción EOT retorna un estado booleano a una


End of Transition transición SFC.

Operando: Tipo: Formato: Descripción:

data bit BOOL tag estado de la transición (0=en ejecución, 1=completada)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 46 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

EQU IF sourceA = sourceB THEN La instrucción EQU determina si el origen A es igual al


Equal to <statements>; origen B.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT REAL valor inmediato valor que se prueba contra el origen B
estructurado INT cadena tag
DINT

Source B SINT REAL valor inmediato valor que se prueba contra el origen A
INT cadena tag
DINT

Bloque de Operando: Tipo: Formato: Descripción:


función
EQU tag FBD_COMPARE estructura Estructura EQU (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor que se prueba contra SourceB

SourceB REAL valor que se prueba contra SourceA

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 47

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ESEL no disponible ESEL(ESEL_tag); La instrucción ESEL permite seleccionar una de un máximo


Enhanced Select de seis entradas. Las opciones de selección incluyen:
• selección manual (ya sea por el operador o por el
programa)
• selección alta
• selección baja
• selección mediana
• selección promedio (media)

Operando: Tipo: Formato: Descripción:

ESEL tag SELECT_ estructura Estructura ESEL (parámetros predeterminados):


ENHANCED
Parámetro: Tipo: Descripción:

Inx REAL entradas de señal analógica a la instrucción, donde x = 1-6

ProgSelector DINT entrada de selector de programa.

ProgProgReq BOOL petición de programa del programa.

ProgOperReq BOOL petición del operador del programa.

ProgOverrideReq BOOL petición de anular de programa.

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 48 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ESEL Parámetro: Tipo: Descripción:


Enhanced Select
(continuación) Out REAL salida calculada del algoritmo

SelectedIn DINT número de entradas seleccionadas; si el modo selector es selección promedio, la


instrucción establece SelectedIn = 0.

ProgOper BOOL indicador de control del programa/operador; se establece cuando está en control
del programa; se restablece cuando está en control del operador

Override BOOL modo Override (anular); se establece cuando la instrucción está en el modo
Override (anular)

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

EVENT no disponible EVENT(Task); La instrucción EVENT activa una ejecución de una tarea de
Trigger Event Task evento.

Operando: Tipo: Formato: Descripción:

TASK na nombre de tarea tarea de evento que se va a ejecutar

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 49

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FAL no disponible SIZE(destination,0 La instrucción FAL realiza operaciones de copia,


File Arithmetic and length-1); aritméticas, lógicas y función en los datos almacenados en
Logic FOR position = 0 TO length una matriz.
DO
destination[position]
:= numeric_expression;
END_FOR;

Operando: Tipo: Formato: Descripción:

Control Control tag estructura de control para la operación

Length DINT valor inmediato número de elementos en el matriz que se manipulan

Position DINT valor inmediato elemento actual en la matriz; el valor inicial es típicamente 0

Mode DINT valor inmediato cómo distribuir la operación; seleccione INC, TODOS o introduzca un número

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Expresión SINT DINT valor inmediato una expresión que consiste en tags y/o valores inmediatos separados por operadores.
INT REAL tag

Indicadores de estado aritmético: Fallos mayores:

afectados Type 4 Código 20 el subíndice está fuera de rango

Type 4 Código 21 .POS < 0 ó .LEN < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 50 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FBC no disponible no disponible La instrucción FBC compara los bits en una matriz de origen
File Bit Compare con los bits en una matriz de referencia.

Operando: Tipo: Formato: Descripción:

Source DINT tag de matriz matriz que se va a comparar con la referencia; no use CONTROL.POS en el subíndice

Reference DINT tag de matriz matriz que se va a comparar con el origen; no use CONTROL.POS en el subíndice

Result DINT tag de matriz matriz para almacenar el resultado; no use CONTROL.POS en los subíndices

Cmp control Control estructura estructura de control para la comparación

Length DINT valor inmediato número de bits que se va a comparar

Position DINT valor inmediato posición actual en el origen; el valor inicial es típicamente 0

Result control Control estructura estructura de control para los resultados

Length DINT valor inmediato número de ubicaciones de almacenamiento en el resultado

Position DINT valor inmediato posición actual en el resultado


el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Type 4 Código 20 result.POS > tamaño de matriz de resultado

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 51

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FFL no disponible no disponible La instrucción FFL copia el valor de origen a FIFO.


FIFO Load

Operando: Tipo: Formato: Descripción:

Source SINT DINT valor inmediato datos que se almacenan en FIFO


INT REAL tag
cadena
estructura

FIFO SINT DINT tag de matriz FIFO que se va a modificar; especificar el primer elemento FIFO
INT REAL no use CONTROL.POS en el subíndice
cadena
estructura

Control Control tag estructura de control para la operación; generalmente se usa el mismo CONTROL que el FFU asociado

Length DINT valor inmediato número máximo de elementos que FIFO puede contener a la vez

Position DINT valor inmediato la próxima ubicación en FIFO donde la instrucción carga datos; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Type 4 Código 20 (elemento inicial + .POS) > tamaño de la matriz FIFO

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 52 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FFU no disponible no disponible La instrucción FFU descarga el valor desde la posición 0


FIFO Unload (primera posición) de FIFO y almacena dicho valor en el
destino. El resto de los datos en l FIFO se desplaza hacia
abajo una posición.

Operando: Tipo: Formato: Descripción:

FIFO SINT DINT tag de matriz FIFO que se va a modificar; especificar el primer elemento FIFO
INT REAL no use CONTROL.POS en el subíndice
cadena
estructura

Destination SINT DINT tag valor que sale del FIFO


INT REAL
cadena
estructura

Control Control tag estructura de control para la operación; generalmente se usa el mismo CONTROL que el FFL asociado

Length DINT valor inmediato número máximo de elementos que FIFO puede contener a la vez

Position DINT valor inmediato la próxima ubicación en FIFO donde la instrucción descarga datos; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Type 4 Código 20 Longitud > tamaño de la matriz FIFO

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 53

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FGEN no disponible FGEN(FGEN_tag,X1,Y1,X2,Y2); La instrucción FGEN convierte una entrada basada en una
Function Generator función lineal a nivel de pieza.

Operando: Tipo: Formato: Descripción:

FGEN tag FUNCTION_ estructura Estructura FGEN (parámetros predeterminados):


GENERATOR
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

X1 REAL matriz matriz de eje X, tabla uno


combine con la matriz de eje Y, tabla uno para definir los puntos de la primera curva lineal a nivel de pieza.

Y1 REAL matriz matriz de eje Y, tabla uno


combine con la matriz de eje X, tabla uno para definir los puntos de la primera curva lineal a nivel de pieza.

X2 REAL matriz (opcional) matriz de eje X, tabla dos.


combine con la matriz de eje Y, tabla dos para definir los puntos de la segunda curva lineal a nivel de pieza

Y2 REAL matriz (opcional) matriz de eje Y, tabla dos.


combine con la matriz de eje X, tabla dos para definir los puntos de la segunda curva lineal a nivel de pieza

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 54 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FIND no disponible FIND(Source,Search, La instrucción FIND localiza la posición de una cadena


Find String Start,Result); especificada dentro de otra cadena.

Operando: Tipo: Formato: Descripción:

Source cadena tag cadena en que se debe buscar

Search cadena tag la cadena que se debe buscar

Start SINT DINT valor inmediato la posición en el origen en la cual se debe iniciar la búsqueda; Introduzca un número entre 1 y el tamaño DATA del origen.
INT tag

Result SINT DINT tag el tag que almacena la posición inicial de la cadena que se debe buscar
INT

Indicadores de estado aritmético: Fallos mayores:

no afectados 4 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

4 56 El valor de inicio no es válido. Verifique que el valor de inicio es entre 1 y el tamaño DATA del origen.

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 55

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FLL no disponible SIZE(destination,0 La instrucción FLL llena los elementos de una matriz con el
File Fill length); valor de origen. El origen no se cambia.
FOR position = 0 TO length-1
DO
destination[position]
:= source;
END_FOR;

Operando: Tipo: Formato: Descripción:

Source SINT DINT valor inmediato elemento que se copia


INT REAL tag Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados

Destination SINT DINT tag el elemento inicial que va a ser sobrescrito por el origen
INT REAL Los operandos de origen y destino deben ser del mismo tipo, de lo contrario pueden ocurrir resultados inesperados
estructura el método preferido de inicializar una estructura es usar la instrucción COP.

Length DINT valor inmediato número de elementos que se llenan

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 56 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FOR no disponible FOR count := initial_value La instrucción FOR ejecuta una rutina repetidamente.
For TO final_value BY increment
DO
<statement>;
END_FOR;

Operando: Tipo: Formato: Descripción:

Rutine name ROUTINE nombre de rutina rutina que se ejecuta

Index DINT tag cuenta cuántas veces la rutina se ha ejecutado

Initial value SINT DINT valor inmediato valor en que se comienza el índice
INT tag

Terminal value SINT DINT valor inmediato valor en que se detiene la ejecución de la rutina
INT tag

Step size SINT DINT valor inmediato cantidad que se añade al índice cada vez que la instrucción FOR ejecuta la rutina
INT tag

Indicadores de estado aritmético: Fallos mayores:

no afectados 4 31 la rutina principal contiene una instrucción RET

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 57

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FRD no disponible La instrucción FRD convierte un valor BCD (origen) a un


Convert to Integer valor entero y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
Source SINT DINT valor inmediato valor que se va a convertir
INT tag

Destination SINT DINT tag tag para almacenar el resultado


INT

Bloque de Operando: Tipo: Formato: Descripción:


función
FRD tag FBD_CONVERT estructura Estructura FRD (parámetros predeterminados):

Parámetro: Tipo: Descripción:

Source DINT Entrada a la instrucción de conversión.

Dest DINT Resultado de la instrucción matemática.

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 58 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

FSC no disponible no disponible La instrucción FSC compara valores en una matriz,


File Search and elemento por elemento.
Compare

Operando: Tipo: Formato: Descripción:

Control Control tag estructura de control para la operación

Length DINT valor inmediato número de elementos en el matriz que se manipulan

Position DINT valor inmediato offset en la matriz; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

afectados 4 21 .POS < 0 ó .LEN < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 59

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

GEQ IF sourceA >= sourceB THEN La instrucción GEQ determina si el origen A es mayor o
Greater Than or <statements>; igual que el origen B.
Equal To

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT REAL valor inmediato valor que se prueba contra el origen B
estructurado INT cadena tag
DINT

Source B SINT REAL valor inmediato valor que se prueba contra el origen A
INT cadena tag
DINT

Bloque de Operando: Tipo: Formato: Descripción:


función
GEQ tag FBD_COMPARE estructura Estructura GEQ (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor que se prueba contra SourceB

SourceB REAL valor que se prueba contra SourceA

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 60 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

GRT IF sourceA > sourceB THEN La instrucción GRT determina si el origen A es mayor que el
Greater Than <statements>; origen B.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT REAL valor inmediato valor que se prueba contra el origen B
estructurado INT cadena tag
DINT

Source B SINT REAL valor inmediato valor que se prueba contra el origen A
INT cadena tag
DINT

Bloque de Operando: Tipo: Formato: Descripción:


función
GRT tag FBD_COMPARE estructura Estructura GRT (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor que se prueba contra SourceB

SourceB REAL valor que se prueba contra SourceA

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 61

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

GSV no disponible GSV(ClassName, Las instrucciones GSV obtienen datos de sistema del
Get System Value InstanceName, controlador almacenados en los objetos.
AttributeName,Dest);

Operando: Tipo: Formato: Descripción:

Class name na nombre nombre del objeto

Instance name na nombre nombre de objeto específico cuando el objeto requiere un nombre

Attribute Name na nombre atributo del objeto; el tipo de datos depende del atributo que usted selecciona

Destination SINT DINT tag destino para los datos del atributo
INT REAL

Indicadores de estado aritmético: Fallos mayores:

no afectados Type 4 Código 5 dirección de objeto no válida

Type 4 Código 6 • se especificó un objeto que no es compatible con GSV/SSV


• atributo no válido
• no se proporcionó suficiente información para una instrucción SSV

Type 4 Código 7 el destino GSV no es suficientemente grande para retener los datos solicitados

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 62 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

HLL no disponible HLL(HLL_tag); La instrucción HLL limita una entrada analógica entre dos
High/Low Limit valores. Usted puede seleccionar límites alto/bajo, alto o
bajo.

Operando: Tipo: Formato: Descripción:

HLL tag HL_LIMIT estructura Estructura HLL (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

HighAlarm BOOL indicador de alarma alta; se establece cuando ≥ HighLimit

LowAlarm BOOL indicador de alarma baja; se establece cuando In ≤ LowLimit

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 63

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

HPF no disponible HPF(HPF_tag); La instrucción HPF proporciona un filtro para atenuar


High Pass Filter frecuencias de entrada que están debajo de la frecuencia
de corte.

Operando: Tipo: Formato: Descripción:

HPF tag FILTER_HIGH_ estructura Estructura HPF (parámetros predeterminados):


PASS
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 64 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

INSERT no disponible INSERT(SourceA,SourceB, La instrucción INSERT añade caracteres ASCII a un lugar


Insert String Start,Dest); especificado dentro de una cadena.

Operando: Tipo: Formato: Descripción:

Source A cadena tag la cadena a la cual se deben añadir los caracteres

Source B cadena tag la cadena que contiene los caracteres que se deben añadir

Start SINT DINT valor inmediato la posición en el origen A a la cual se deben añadir los caracteres; Introduzca un número entre 1 y el tamaño DATA del
INT tag origen.

Result cadena tag cadena para almacenar el resultado

Indicadores de estado aritmético: Fallos mayores:

no afectados 4 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

4 56 El valor de inicio no es válido. Verifique que el valor de inicio es entre 1 y el tamaño DATA del origen.

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 65

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

INTG no disponible INTG(INTG_tag); La instrucción INTG realiza una operación integral. Esta
Integrator instrucción está diseñada para ejecutarse en una tarea
donde el régimen de escán permanece constante.

Operando: Tipo: Formato: Descripción:

INTG tag INTEGRATOR estructura Estructura INTG (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

IOT no disponible IOT(output_tag); La instrucción IOT actualiza inmediatamente los datos de


Immediate Output salida especificados (tag de salida o tag producido).

Operando: Tipo: Formato: Descripción:

Output tag nombre de tag tag el tag que usted desea actualizar, ya sea un  tag de salida de un módulo de E/S o un tag producido.
no seleccione un miembro o elemento de un tag.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 66 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

JKFF no disponible JKFF(JKFF_tag); La instrucción JKFF complementa las salidas Q y QNot


JK FLip-Flop cuando la entrada Clock cambia de restablecido a
establecido.

Operando: Tipo: Formato: Descripción:

JKFF tag FLIP_FLOP_JK estructura Estructura JKFF (parámetros predeterminados):

Parámetro: Tipo: Descripción:

Clear BOOL entrada de restablecimiento para la instrucción; si se establece, la instrucción


restablece Q y establece QNot

Clock BOOL Entrada de reloj para la instrucción

Q BOOL salida de la instrucción

QNot BOOL complemento de la salida Q.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

JMP no disponible no disponible Las instrucciones JMP y LBL saltan porciones de la lógica
Jump de escalera.

Operando: Tipo: Formato: Descripción:

Label name na nombre nombre de la instrucción LBL asociada

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 42 la etiqueta no existe

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 67

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

JSR JSR(RoutineName La instrucción JSR salta la ejecución a una rutina diferente.


Jump to Subroutine InputCount,
InputPar,ReturnPar);

Operando: Tipo: Formato: Descripción:

Routine name ROUTINE nombre rutina que se ejecuta

Input parameter BOOL DINT valor inmediato datos de esta rutina que desea copiar a un tag en la subrutina
SINT REAL tag • los parámetros son opcionales
INT tag de matriz • introduzca múltiples parámetros, si es necesario
estructura

Return parameter BOOL DINT tag el tag en esta rutina al cual desea copiar un resultado de la subrutina
SINT REAL tag de matriz • los parámetros son opcionales
INT • introduzca múltiples parámetros, si es necesario
estructura

Input count SINT DINT valor inmediato número de parámetros de entrada (texto estructurado solamente)
INT REAL

Indicadores de estado aritmético: Fallos mayores:

afectados 4 31 • la instrucción JSR tiene menos parámetros de entrada que la instrucción SBR
• la instrucción RET tiene menos parámetros de retorno que la instrucción JSR
• la rutina principal contiene una instrucción RET

4 0 la instrucción JSR salta a una rutina de fallo

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 68 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:


JXR no disponible no disponible La instrucción JXR ejecuta una rutina externa. Esta instrucción
Jump to External sólo es compatible con los controladores SoftLogix5800.
Routine

Operando: Tipo: Formato: Descripción:

External routine ROUTINE nombre rutina externa que se va a ejecutar


name

External routine EXT_ROUTINE_ tag estructura CONTROL


name CONTROL

Parameter BOOL DINT valor inmediato datos de esta rutina que desea copiar a una variable en la rutina externa
SINT REAL tag • los parámetros son opcionales
INT tag de matriz • introduzca múltiples parámetros, si es necesario
estructura • puede tener hasta 10 parámetros

Return parameter BOOL DINT tag el tag en esta rutina al cual desea copiar un resultado de la rutina externa
SINT REAL • El parámetro de retorno es opcional
INT • Sólo puede tener un parámetro de retorno

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LBL no disponible no disponible Las instrucciones JMP y LBL saltan porciones de la lógica de
Label escalera.

Operando: Tipo: Formato: Descripción:

Label name na nombre la ejecución salta a la instrucción LBL con el nombre de etiqueta al cual se hizo referencia

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 42 la etiqueta no existe

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 69

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LDL2 no disponible LDL2(LDL2_tag); La instrucción LDL2 proporciona un filtro con una pareja de
Second-Order polos y una pareja de ceros. La frecuencia y amortiguación
Lead Lag de las parejas de polos y ceros son ajustables. Las parejas
de polos o ceros puede ser compleja (amortiguación menor
que unidad) o real (amortiguación mayor o igual que
unidad).

Operando: Tipo: Formato: Descripción:

LDL2 tag LEAD_LAG_SEC_ estructura Estructura LDL2 (parámetros predeterminados):


ORDER
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 70 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LDLG no disponible LDLG(LDLG_tag); La instrucción LDLG proporciona una compensación de


Lead Lag avance-retardo de fase para una señal de entrada. Esta
instrucción generalmente se usa para control PID de
prealimentación o para simulaciones del proceso.

Operando: Tipo: Formato: Descripción:

LDLG tag LEAD_LAG estructura Estructura LDLG (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 71

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LEQ IF sourceA <= sourceB THEN La instrucción LEQ determina si el origen A es menor que o
Less than or equal <statements>; igual al origen B.
to

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT REAL valor inmediato valor que se prueba contra el origen B
estructurado INT cadena tag
DINT

Source B SINT REAL valor inmediato valor que se prueba contra el origen A
INT cadena tag
DINT

Bloque de Operando: Tipo: Formato: Descripción:


función
LEQ tag FBD_COMPARE estructura Estructura LEQ (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor que se prueba contra SourceB

SourceB REAL valor que se prueba contra SourceA

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 72 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LES IF sourceA < sourceB THEN La instrucción LES determina si el origen A es menor que el
Less Than <statements>; origen B.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT REAL valor inmediato valor que se prueba contra el origen B
estructurado INT cadena tag
DINT

Source B SINT REAL valor inmediato valor que se prueba contra el origen A
INT cadena tag
DINT

Bloque de Operando: Tipo: Formato: Descripción:


función
LES tag FBD_COMPARE estructura Estructura LES (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor que se prueba contra SourceB

SourceB REAL valor que se prueba contra SourceA

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 73

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LFL no disponible no disponible La instrucción LFL copia el valor de origen a LIFO.


LIFO Load

Operando: Tipo: Formato: Descripción:

Source SINT DINT valor inmediato datos que se almacenan en LIFO


INT REAL tag
cadena
estructura

LIFO SINT DINT tag de matriz LIFO que se modifica; especificar el primer elemento de LIFO
INT REAL no use CONTROL.POS en el subíndice
cadena
estructura

Control Control tag estructura de control para la operación; generalmente se usa el mismo CONTROL que el LFU asociado

Length DINT valor inmediato número máximo de elementos que LIFO puede contener a la vez

Position DINT valor inmediato la próxima ubicación en LIFO donde la instrucción carga datos; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 20 (elemento inicial + .POS) > tamaño de la matriz LIFO

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 74 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LFU no disponible no disponible La instrucción LFU descarga el valor en .POS de LIFO y


LIFO Unload almacena 0 en ese lugar.

Operando: Tipo: Formato: Descripción:

LIFO SINT DINT tag de matriz LIFO que se modifica; especificar el primer elemento de LIFO
INT REAL no use CONTROL.POS en el subíndice
cadena
estructura

Destination SINT DINT tag valor que sale del LIFO


INT REAL
cadena
estructura

Control Control tag estructura de control para la operación; generalmente se usa el mismo CONTROL que el LFL asociado

Length DINT valor inmediato número máximo de elementos que LIFO puede contener a la vez

Position DINT valor inmediato la próxima ubicación en LIFO donde la instrucción descarga datos; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 20 Longitud > tamaño de la matriz LIFO

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 75

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LIM IF (LowLimit <= HighLimit La instrucción LIM determina si el valor de prueba se


Limit AND encuentra dentro del rango de los límites inferior y superior.
(Test >= LowLimit AND
Test <= HighLimit)) OR
(LowLimit >= HighLimit
AND
(Test <= LowLimit OR
Test >= HighLimit)) THEN
<statement>;
END_IF;

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Low Limit SINT DINT valor inmediato valor del límite inferior
estructurado INT REAL tag

Test SINT DINT valor inmediato valor que se prueba


INT REAL tag

High Limit SINT DINT valor inmediato valor del límite superior
INT REAL tag

Bloque de Operando: Tipo: Formato: Descripción:


función
LIM tag FBD_LIMIT estructura Estructura LIM (parámetros predeterminados):

Parámetro: Tipo: Descripción:

LowLimit REAL valor del límite inferior

Test REAL valor que se prueba contra límites

HighLimit REAL valor del límite superior

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 76 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LN dest := LN(source); La instrucción LN halla el logaritmo natural del origen y


Natural Log almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar el logaritmo natural de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
LN tag FBD_MATH_ estructura Estructura LN (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 77

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LOG dest := LOG(source); La instrucción LOG halla el logaritmo base 10 del origen y
Log Base 10 almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar el logaritmo de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
LOG tag FBD_MATH_ estructura Estructura LOG (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 78 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LOWER no disponible LOWER(Source,Dest); La instrucción LOWER convierte los caracteres alfabéticos


Lower Case en una cadena a caracteres en minúsculas.

Operando: Tipo: Formato: Descripción:

Source cadena tag el tag que contiene los caracteres que usted desea convertir a minúsculas

Destination cadena tag el tag para almacenar los caracteres en minúsculas

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

LPF no disponible LPF(LPF_tag); La instrucción LPF proporciona un filtro para atenuar


Low Pass Filter frecuencias de entrada que están arriba de la frecuencia de
corte.

Operando: Tipo: Formato: Descripción:

LPF tag FILTER_LOW_ estructura Estructura LPF (parámetros predeterminados):


PASS
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 79

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAAT no disponible MAAT(Axis,MotionControl); La instrucción MAAT calcula un conjunto completo de


Motion Apply ganancias servo y límites dinámicos en base a los
Axis Tuning resultados de una instrucción MRAT ejecutada previamente
y actualiza el módulo de control de movimiento con estos
nuevos parámetros de ganancia.

Operando: Tipo: Formato: Descripción:

Axis AXIS_SERVO tag nombre del eje


AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 80 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAFR no disponible MAFR(Axis,MotionControl); La instrucción MAFR borra todos los fallos de control de
Motion Axis Fault movimiento del eje. Éste es el único método de borrar los
Reset fallos de control de movimiento del eje.

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 81

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAG no disponible MAG(SlaveAxis,MasterAxis, La instrucción MAG proporciona sincronización digital


Motion Axis Gear MotionControl,Direction, electrónica entre dos ejes en una dirección especificada y a
Ratio,SlaveCounts, una relación especificada
MasterCounts,
MasterReference,
RatioFormat,Clutch,
AccelRate,AccelUnits);

Operando: Tipo: Formato: Descripción:

Slave Axis AXIS_VIRTUAL tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Master axis AXIS_FEEDBACK tag el eje que el eje esclavo sigue


AXIS_CONSUME
D
AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_DRI
VE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 82 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAG Direction UINT32 valor inmediato dirección relativa en que el eje esclavo sigue al eje maestro:
Motion Axis Gear tag • 0 = el eje esclavo se mueve en la misma dirección que el eje maestro
(continúa) • 1 = el eje esclavo se mueve en la dirección opuesta a su dirección actual
• 2 = el eje esclavo se mueve en dirección opuesta a la actual o previa
• 3 = el eje esclavo continúa en su dirección actual o previa

Ratio REAL valor inmediato valor Real con signo que establece la relación de transmisión en unidades de usuario esclavo por unidad de usuario maestro
tag

Slave counts UINT32 valor inmediato conteos de esclavo


tag

Master counts UINT32 valor inmediato conteos de maestro


tag

Master Reference BOOL valor inmediato referencia de posición de maestro: 0 = posición actual, 1 = posición de comando

Ratio format BOOL valor inmediato formato de relación:


• 0 = relación de transmisión real
• 1 = fracción entera de conteos de encoder esclavo a conteos de encoder maestro

Clutch BOOL valor inmediato determina si el embrague está habilitado o inhabilitado

Accel rate BOOL valor inmediato la velocidad de aceleración del eje esclavo en % o unidades de aceleración
tag

Accel units DINT valor inmediato unidades usadas para mostrar el valor de aceleración: 0 = unidades por seg.2; 1 =% de aceleración máxima

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 83

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAH no disponible MAH(Axis,MotionControl); La instrucción MAH hace que un eje vuelva a la posición
Motion Axis Home inicial.

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 84 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAHD no disponible MAHD(Axis,MotionControl, La instrucción MAHD aplica los resultados de una


Motion Apply DiagnosticTest, instrucción MRHD ejecutada previamente para generar un
Hookup ObservedDirection); nuevo conjunto de polaridades de encoder y servo basado
Diagnostics en la dirección de movimiento observada durante la prueba.

Operando: Tipo: Formato: Descripción:

Axis AXIS_SERVO tag nombre del eje


AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Diagnostic test UDINT valor inmediato prueba para que el módulo de control de movimiento ejecute:
• 0 = prueba de conexión de motor/encoder
• 1 = prueba de conexión de encoder
• 2 = prueba de marcador de encoder

Observed BOOL valor inmediato dirección de movimiento de la prueba: 0 = avance; 1 = retroceso


direction

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 85

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAJ no disponible MAJ(Axis,MotionControl, La instrucción MAJ inicia un perfil de movimiento por


Motion Axis Jog Direction,Speed,SpeedUnits, impulsos para el eje especificado.
AccelRate,AccelUnits,
DecelRate,DecelUnits,
Profile,Merge,MergeSpeed);

Operando: Tipo: Formato: Descripción:

Axis AXIS_VIRTUAL tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Direction UDINT valor inmediato dirección del impulso: 0 = impulso de avance; 1 = impuso de retroceso
tag

Speed REAL valor inmediato la velocidad de movimiento del eje en % o en unidades de velocidad
tag

Speed units UDINT valor inmediato unidades de ingeniería para el valor de velocidad: 0 = unidades por seg.; 1 =% de velocidad máxima

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 86 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAJ Accel units UDINT valor inmediato unidades de ingeniería para el valor de aceleración: 0 = unidades por seg.2; 1 =% de aceleración máxima
Motion Axis Jog
(continúa) Accel rate REAL valor inmediato la velocidad de aceleración del eje en % o unidades de aceleración
tag

Decel rate REAL valor inmediato o la velocidad de desaceleración del eje en % o unidades de desaceleración
tag

Decel units UDINT valor inmediato unidades de ingeniería para el valor de desaceleración: 0 = unidades por seg.2; 1 =% de desaceleración máxima

Profile UDINT valor inmediato seleccione el perfil de velocidad para ejecutar el movimiento por impulso: 0 = trapezoidal; 1 = Curva S

Merge UDINT valor inmediato instruye al control de movimiento que cambie el movimiento actual de todos los ejes

Merge speed UDINT valor inmediato determina si la velocidad es el valor de velocidad especificado de esta instrucción o la velocidad actual del eje:
• 0 = valor programado en el campo de velocidad
• 1 = velocidad actual del eje

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 87

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAM no disponible MAM(Axis,MotionControl, La instrucción MAM inicia un perfil de movimiento para el


Motion Axis Move MoveType,Position,Speed, eje especificado.
SpeedUnits,AccelRate,
AccelUnits,DecelRate,
DecelUnits,Profile,Merge,
MergeSpeed);

Operando: Tipo: Formato: Descripción:

Axis AXIS_VIRTUAL tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Move type UDINT valor inmediato o tipo de operación de control de movimiento: 0 = Movimiento absoluto; 1 = Movimiento incremental; 2 = Movimiento rotativo
tag de ruta más corta;
3 = Movimiento rotativo positivo; 4 = Movimiento rotativo negativo; 5 = Offset de maestro absoluto; 6 = Offset de maestro
incremental

Position/Distance REAL valor inmediato valor de posición de comando absoluto al cual moverse, o para movimiento incremental, el valor de la distancia desde donde
tag moverse de la posición de comando actual.

Speed REAL valor inmediato la velocidad de movimiento del eje en % o en unidades de velocidad.
tag

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 88 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

continúa

MAM Speed Units BOOL valor inmediato unidades para el valor de velocidad: 0 =unidades por seg.; 1 =% de velocidad máxima
Motion Axis Move
(continúa) Accel rate REAL valor inmediato o la velocidad de aceleración del eje en % o unidades de aceleración
tag

Accel units BOOL valor inmediato unidades para el valor de aceleración: 0 = unidades por seg.2; 1 =% de aceleración máxima

Decel rate REAL valor inmediato o la velocidad de desaceleración del eje en % o unidades de desaceleración
tag

Decel units BOOLEAN valor inmediato unidades para el valor de desaceleración: 0 = unidades por seg.2; 1 =% de aceleración máxima

Profile UDINT valor inmediato perfil de velocidad a ejecutar para el movimiento: 0 = trapezoidal; 1 = Curva S

Merge BOOL valor inmediato instruye al control de movimiento que cambie el movimiento actual de todos los ejes, independientemente de las
instrucciones de control de movimiento actualmente en proceso, a un movimiento puro definido por esta instrucción.

Merge speed DINT valor inmediato determina si la velocidad del perfil de movimiento va a ser valor de velocidad especificado de esta instrucción o la velocidad
actual del eje:
• 0 = valor programado en el campo de velocidad
• 1 = velocidad actual del eje

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 89

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAOC no disponible MAOC(Axis,ExecutionTarget, La instrucción MAOC establece y restablece los bits de


Motion Arm MotionControl,Output,Input, salida en base a una posición de eje.
Output Cam OutputCam,CamStartPosition,
CamEndPosition,
OutputCompensation,
ExecutionMode,
ExecutionSchedule,
AxisArmPosition,
CamArmPosition,Reference);

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_CONSUME
D
AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Execution Target UNIT32 valor inmediato define la leva de salida específica:


tag • 0...8 – Levas de salida ejecutadas en el controlador Logix.
• 9...31 – Reservado para uso futuro.

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 90 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAOC Output DINT tag 32 bits de salida que se establecen o restablecen en base a la leva de salida especificada
Motion Arm
Output Cam Input DINT tag 32 bits de entrada que pueden usarse como bits de habilitación, dependiendo de la leva de salida especificada
(continúa)
Output Cam OUTPUT_CAM tag de matriz matriz de elementos de OUTPUT_CAM

Cam Start SINT DINT valor inmediato la posición de arranque de leva con la posición final de leva definen los límites izquierdo y derecho del rango de la leva de
Position INT REAL tag salida

Cam End Position SINT DINT valor inmediato la posición final de leva con la posición de arranque de leva definen los límites izquierdo y derecho del rango de la leva de
INT REAL tag salida

Output OUTPUT_ tag de matriz matriz de 1 a 32 elementos de OUTPUT_COMPENSATION


Compensation COMPENSATION

Execution Mode UINT32 valor inmediato modo de ejecución: una vez (0); continuo (1); persistente (2)

Execution UINT32 valor inmediato cuándo activar la leva de salida: 0 = inmediato; 1 = pendiente; 2 = avance solamente; 3 = retroceso solamente;
Schedule 4 = bidireccional

Axis Arm Position SINT DINT valor inmediato posición del eje donde la leva de salida se activa cuando el programa de ejecución está establecido en avance solamente,
INT REAL tag retroceso solamente o bidireccional, y el eje se mueve en la dirección especificada

Cam Arm Position SINT DINT valor inmediato posición de leva asociada con la posición de activación del eje cuando la leva de salida se activa
INT REAL tag

Reference UINT32 valor inmediato determina si la leva de salida se conecta a 0 = posición actual, 1 = posición de comando

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 91

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAPC no disponible MAPC(SlaveAxis,MasterAxis, La instrucción MAPC proporciona posicionados por tablas


Motion Axis MotionControl,Direction, de posición entre dos ejes, de acuerdo con el perfil de levas
Position Cam CamProfile,SlaveScaling, especificado.
MasterScaling,
ExecutionMode,
ExecutionSchedule,
MasterLockPosition,
CamLockPosition,
MasterReference,
MasterDirection);

Operando: Tipo: Formato: Descripción:

Slave Axis AXIS_VIRTUAL tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Master axis AXIS_FEEDBACK tag eje que el eje esclavo sigue de acuerdo con el perfil de levas
AXIS_CONSUME
AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 92 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAPC Direction UINT32 valor inmediato dirección relativa del eje esclavo: la misma, opuesta, retroceso o sin cambio
Motion Axis tag
Position Cam
(continúa) Cam Profile CAM_PROFILE matriz matriz de perfil de levas calculado, usado para establecer la relación de posición de maestro/esclavo

Slave Scaling REAL valor inmediato escala la distancia total cubierta por el eje esclavo a través del perfil de levas
tag

Master Scaling REAL valor inmediato escala la distancia total cubierta por el eje maestro a través del perfil de levas
tag

Execution Mode UINT32 valor inmediato determina si se ejecuta el perfil de levas: 0 = una vez, 1 = continuo, 2 = persistente

Execution UINT32 valor inmediato método para ejecutar el perfil de levas: 0 = inmediato, 1 = pendiente, 2 = avance solamente, 3 = retroceso solamente,
Schedule 4 = bidireccional

Master Lock REAL valor inmediato posición absoluta del eje maestro donde el eje esclavo se enclava al eje maestro.
Position tag

Cam Lock Position REAL valor inmediato ubicación de inicio en el perfil de leva
tag

Master Reference UINT32 valor inmediato referencia de posición de maestro: 0 = posición actual, 1 = posición de comando

Master Direction UINT32 valor inmediato dirección del eje maestro que genera movimiento de esclavo de acuerdo con el perfil de levas: bidireccional (0), avance
solamente (1), retroceso solamente (2)

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 93

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAR no disponible MAR(Axis,MotionControl, La instrucción MAR activa la verificación de evento de


Motion Arm TriggerCondition, registro del servomódulo para el eje especificado.
Registration WindowedRegistration,
MinimumPosition,
MaximumPosition,
InputNumber);

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Trigger condition BOOL valor inmediato activación de transición de entrada de registro: 0 = en flanco positivo, 1 = en flanco negativo

Windowed BOOL valor inmediato determina si el registro estará dentro de los límites, es decir si la posición de registro calculada debe estar dentro de los
registration límites de posición mínimo y máximo

Minimum position REAL valor inmediato o la posición de registro debe ser mayor que el límite mínimo de posición.
tag

Maximum REAL valor inmediato o la posición de registro debe ser menor que el límite máximo de posición.
position tag

Input Number UINT32 1ó2 entrada de registro: 1 = Posición de registro 1, 2 = Posición de registro 2

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 94 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAS no disponible MAS(Axis,MotionControl, La instrucción MAS inicia un paro controlado de cualquier


Motion Axis Stop StopType,ChangeDecel, proceso de movimiento en el eje designado.
DecelRate,DecelUnits);

Operando: Tipo: Formato: Descripción:

Axis AXIS_VIRTUAL tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Stop type UNIT32 valor inmediato determina el proceso del control de movimiento: 0 = parar todo el movimiento; 1 = parar el movimiento por impulsos;
2 = parar el movimiento; 3 = parar la sincronización digital; 4 = parar el regreso a la posición inicial;
5 = parar el ajuste; 6 = parar la prueba; 7 = parar las levas de posición; 8 = parar las levas de tiempo; 9 = parar un movimiento
de offset maestro

Change decel BOOL valor inmediato se establece para habilitar el uso del valor de deceleración en lugar de la velocidad máxima de desaceleración actual
configurada.

Decel rate REAL valor inmediato la velocidad de desaceleración del eje en % o unidades de desaceleración
tag

Decel units BOOL valor inmediato unidades de ingeniería para el valor de desaceleración: 0 = unidades por seg.2; 1 =% del máximo

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 95

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MASD no disponible MASD(Axis,MotionControl); La instrucción MASD fuerza un eje especificado al estado


Motion Axis de desactivación. El estado de desactivación de un eje es
Shutdown cuando la salida del variador se desactiva, el lazo del servo
se desactiva, y cualquier contacto de relé de estado sólido
en buen estado, disponible o asociado, se abre. El eje
permanece en el estado desactivado hasta que se ejecute
un restablecimiento de desactivación de eje o de grupo.

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 96 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MASR no disponible MASR(Axis,MotionControl); La instrucción MASR cambia un eje del estado de


Motion Axis desactivación existente al estado de eje listo.
Shutdown Reset

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 97

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MATC no disponible MATC(Axis,MotionControl, La instrucción MATC proporciona posicionados por tablas


Motion Axis Direction,CamProfile, de posición de un eje como función de tiempo, de acuerdo
Time Cam DistanceScaling, con el perfil de levas especificado.
TimeScaling,
ExecutionMode,
ExecutionSchedule);

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

Direction UINT32 valor inmediato dirección relativa del eje esclavo al eje maestro: la misma, opuesta, retroceso o sin cambio
tag

Cam Profile CAM_PROFILE matriz matriz de perfil de levas calculada

Distance Scaling REAL valor inmediato escala la distancia total cubierta por el eje a través del perfil de levas
tag

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 98 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MATC Time scaling REAL valor inmediato escala el intervalo de tiempo cubierto por el perfil de levas
Motion Axis tag
Time Cam
(continúa) Execution Mode UINT32 valor inmediato cómo se comporta el movimiento de levas cuando el tiempo pasa más allá del punto final del perfil de levas: una vez (0),
continuo (1)

Execution UNIT32 valor inmediato método para ejecutar el perfil de levas: 0 = inmediato, 1 = pendiente
Schedule

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 99

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAVE no disponible MAVE(MAVE_tag,storage, La instrucción MAVE calcula un valor promedio de tiempo


Moving Average weight); para la señal In. Opcionalmente, esta instrucción funciona
con valores relativos especificados por el usuario.

Operando: Tipo: Formato: Descripción:

MAVE tag MOVING_ estructura Estructura MAVE (parámetros predeterminados):


AVERAGE
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

storage REAL matriz retiene las muestras de promedio en movimiento. esta matriz debe ser por lo menos tan grande como NumberOfSamples.

weight REAL matriz (opcional) usado para promedios ponderados; esta matriz debe ser por lo menos tan grande como NumberOfSamples.
el elemento [0] se usa para la muestra más nueva; el elemento [n] se usa para la muestra más antigua

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 100 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAW no disponible MAW(Axis,MotionControl, La instrucción MAW activa la verificación de evento de


Motion Arm Watch TriggerCondition,Position); posición de control para el eje especificado.

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Trigger condition BOOL valor inmediato condición de activación de evento de control: 0 = avance; 1 = retroceso

Position REAL valor inmediato valor nuevo para la posición de control


tag

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 101

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MAXC no disponible MAXC(MAXC_tag); La instrucción MAXC halla el máximo de la señal de


Maximum Capture entrada con el tiempo.

Operando: Tipo: Formato: Descripción:

MAXC tag MAXIMUM_ estructura Estructura MAXC (parámetros predeterminados):


CAPTURE
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Reset BOOL petición para restablecer el algoritmo de control


la instrucción establece Out = ResetValue siempre que Reset esté establecido.

ResetValue REAL valor de restablecimiento para la instrucción


la instrucción establece Out = ResetValue siempre que Reset esté establecido.

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 102 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCCD no disponible MCCD(CoordinateSystem, La instrucción MCCD inicia un cambio en la dinámica de la


Motion MotionControl,MotionType, ruta de acceso para coordinar el movimiento activo en el
Coordinated ChangeSpeed,Speed, sistema coordinado especificado
SpeedUnits);
Change Dynamics

Operando: Tipo: Formato: Descripción:

Coordinate COORDINATE_ tag grupo coordinado de ejes


System SYSTEM

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

Motion type SINT DINT valor inmediato 1 = movimiento coordinado


INT

Change speed SINT DINT valor inmediato si se cambia la velocidad: 0 = no; 1 = sí


INT tag

Speed SINT DINT valor inmediato unidades de coordinación


INT REAL tag

Speed Units SINT DINT valor inmediato 0 = unidades por segundo; 1 = % del máximo
INT

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 103

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCCM no disponible MCCM(CoordinateSystem, La instrucción MCCM inicia un movimiento circular


Motion MotionControl,MotionType, coordinado de 2 ó 3 dimensiones para los ejes
Coordinated Position); especificados dentro del sistema de coordinación
Circular Move

Operando: Tipo: Formato: Descripción:

Coordinate COORDINATE_ tag grupo coordinado de ejes


System SYSTEM

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

Motion type SINT DINT valor inmediato tipo de movimiento: 0 = absolute; 1 = incremental
INT tag

Position REAL matriz unidades de coordinación

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 104 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCCP no disponible MCCP(MotionControl,Cam, La instrucción MCCP calcula un perfil de levas basado en


Motion Calculate Length,StartSlope,EndSlope, una matriz de puntos de levas.
Cam Profile CamProfile);

Operando: Tipo: Formato: Descripción:

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Cam CAM matriz matriz de levas

Length UINT valor inmediato número de elementos de levas en la matriz


tag

Start Slope REAL valor inmediato condición límite para la pendiente inicial del perfil
tag

End slope REAL valor inmediato condición límite para la pendiente final del perfil
tag

Cam Profile CAM_PROFILE matriz matriz de perfil de levas calculada

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 105

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCD no disponible MCD(Axis,MotionControl, La instrucción MCD cambia selectivamente la velocidad, el


Motion Change MotionType,ChangeSpeed, régimen de aceleración o el régimen de desaceleración de
Dynamics Speed,ChangeAccel, un perfil de movimiento o de un perfil de movimiento por
AccelRate,ChangeDecel,
DecelRate,SpeedUnits, impulsos en un proceso
AccelUnits,DecelUnits);

Operando: Tipo: Formato: Descripción:

Axis AXIS_VIRTUAL tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Motion type UDINT valor inmediato perfil de movimiento a cambiar: 0 = movimiento por impulsos; 1 = movimiento

Change speed BOOL valor inmediato determina si se habilita un cambio de velocidad

Speed REAL valor inmediato nueva velocidad de movimiento del eje en % o en unidades de velocidad
tag

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 106 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCD Change accel BOOL valor inmediato determina si se habilita un cambio de aceleración
Motion Change
Dynamics Accel rate REAL valor inmediato la velocidad de aceleración del eje en % o unidades de aceleración
(continúa) tag

Change decel BOOL valor inmediato determina si se habilita un cambio de desaceleración

Decel rate REAL valor inmediato la velocidad de desaceleración del eje en % o unidades de desaceleración
tag

Speed units BOOL valor inmediato unidades usadas para mostrar el valor de velocidad: 0 = unidades por seg.; 1 =% de velocidad máxima

Accel units BOOL valor inmediato unidades usadas para mostrar el valor de aceleración: 0 = unidades por seg.2; 1 =% de aceleración máxima

Decel units BOOL valor inmediato unidades usadas para mostrar el valor de desaceleración: 0 = unidades por seg.2; 1 =% de aceleración máxima

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 107

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCLM no disponible MCLM(CoordinateSystem, La instrucción MCLM inicia un movimiento lineal


Motion MotionControl,MotionType, coordinado de una o varias dimensiones para los ejes
Coordinated Linear Position); especificados dentro del sistema de coordinación
Move

Operando: Tipo: Formato: Descripción:

Coordinate COORDINATE_ tag grupo coordinado de ejes


System SYSTEM

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

Motion type SINT DINT valor inmediato tipo de movimiento: 0 = absolute; 1 = incremental
INT tag

Position REAL matriz unidades de coordinación

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCR no disponible no disponible La instrucción MCR, usada en parejas, crea una zona de
Master Control programa que puede inhabilitar todos los renglones dentro
Reset de las instrucciones MCR.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 108 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCS no disponible MCS(CoordinateSystem, La instrucción MCS inicia un paro controlado del perfil de
Motion MotionControl,StopType); movimiento coordinado.
Coordinated Stop

Operando: Tipo: Formato: Descripción:

Coordinate COORDINATE_ tag grupo coordinado de ejes


System SYSTEM

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

Stop Type SINT DINT valor inmediato tipo de paro: 2 = movimiento coordinado
INT

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 109

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCSD no disponible MCSD(CoordinateSystem, La instrucción MCSD inicia una desactivación controlada de


Motion MotionControl); todos los ejes en el sistema de coordinacion especificado.
Coordinated
Shutdown

Operando: Tipo: Formato: Descripción:

Coordinate COORDINATE_ tag grupo coordinado de ejes


System SYSTEM

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCSR no disponible MCSR(CoordinateSystem, La instrucción MCSR restablece todos los ejes en el


Motion MotionControl); sistema de coordinacion especificado.
Coordinated
Shutdown Reset

Operando: Tipo: Formato: Descripción:

Coordinate COORDINATE_ tag grupo coordinado de ejes


System SYSTEM

Motion Control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 110 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MCSV no disponible MCSV(MotionControl, La instrucción MCSV calcula el valor del esclavo, el valor de
Motion Calculate CamProfile,MasterValue, pendiente y la derivada de la pendiente para un perfil de
Slave Value SlaveValue,SlopValue, levas y valor de maestro dados.Como extensión a la
SlopeDerivative
funcionalidad de levas de tiempo y posición suministra los
valores esenciales para la recuperación de fallos durante
operaciones de levas

Operando: Tipo: Formato: Descripción:

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Cam Profile CAM_PROFILE matriz define el perfil de levas usado para calcular los valores de esclavos

Master value SINT DINT valor inmediato o valor a lo largo del eje maestro del perfil de levas usado para calcular los valores de esclavos
INT REAL tag

Slave value REAL tag valor a lo largo del eje esclavo del perfil de levas con el maestro en el valor de maestro especificado

Slope value REAL tag primera derivada del valor a lo largo del eje esclavo del perfil de levas con el maestro en el valor de maestro especificado

Slope derivative REAL tag segunda derivada del valor a lo largo del eje esclavo del perfil de levas con el maestro en el valor de maestro especificado

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 111

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MDF no disponible MDF(Axis,MotionControl); La instrucción MDF desactiva el servodrive y establece el


Motion Direct Drive voltaje de salida del servo en el voltaje de offset de salida.
Off

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_SERVO

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 112 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MDO no disponible MDO(Axis,MotionControl, La instrucción MDO funciona en conjunto con los módulos
Motion Direct Drive DriveOutput,DriveUnits); de control de movimiento compatibles con una interface de
On servodrive analógica externa. La instrucción MDO activa la
función Drive Enable del módulo, habilitando el servodrive
externo, y también establece el voltaje de salida del
servomódulo del drive al nivel de voltaje especificado.

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_SERVO

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Drive Output REAL tag voltaje de salida en % del límite de salida del servo o en voltios

Drive Units BOOL tag unidades del valor de salida del variador: 0 = volts, 1 = %

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 113

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MDOC no disponible MDOC(Axis,ExecutionTarget,M La instrucción MDOC inicia la desactivación de una o más


Motion Disarm otionControl,DisarmType); levas de salida conectadas al eje especificado.
Output Cam

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_CONSUME
AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Execution Target SINT DINT valor inmediato leva de salida del conjunto conectado al eje especificado:
INT tag • 0...8 – Levas de salida ejecutadas en el controlador Logix.
• 9...31 – Reservado para uso futuro.

Motion Conmtrol MOTION_ tag estructura de movimiento


INSTRUCTION

Disarm Type DINT valor inmediato levas(s) de salida que van a desactivarse: 0 = todas, 1 = específica

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 114 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MDR no disponible MDR(Axis,MotionControl, La instrucción MDR desactiva la verificación de evento de


Motion Disarm InputNumber); entrada de registro para el eje especificado.
Registration

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Input Number UINT32 1ó2 entrada de registro: 1 = Posición de registro 1, 2 = Posición de registro 2

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 115

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MDW no disponible MDW(Axis,MotionControl); La instrucción MDW desactiva la verificación de evento de


Motion Disarm posición de control para un eje.
Watch

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 116 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MEQ IF (Source AND Mask) = La instrucción MEQ pasa los valores de origen y
Mask Equal To (Compare AND Mask) THEN comparación a través de una máscara y compara los
<statement>; resultados.
END_IF;

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato valor que se prueba contra la comparación
estructurado INT tag

Mask SINT DINT valor inmediato define qué bloques se deben bloquear o pasar
INT tag

Compare SINT DINT valor inmediato valor que se prueba contra el origen
INT tag

Bloque de Operando: Tipo: Formato: Descripción:


función
MEQ tag" FBD_MASK_ estructura Estructura MEQ (parámetros predeterminados):
EQUAL
Parámetro: Tipo: Descripción:

Source DINT valor que se prueba contra la comparación

Mask DINT Define qué bits se deben bloquear (enmascarar).

Compare DINT valor de comparación.

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 117

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MGS no disponible MGS(Group,MotionControl, La instrucción MGS inicia un paro de todo el movimiento en


Motion Group Stop StopMode); progreso en todos los ejes en el grupo especificado por un
método configurado individualmente para cada eje o como
grupo mediante el modo de paro de la instrucción MSG.

Operando: Tipo: Formato: Descripción:

Group MOTION_ tag grupo de ejes


GROUP

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Stop Mode UDINT valor inmediato cómo se paran los ejes en el grupo: 0 = programado, 1 = paro rápido, 2 = inhabilitación rápida

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MGSD no disponible MGSD(Group,MotionControl); La instrucción MGSD fuerza todos los ejes del grupo
Motion Group designado al estado de desactivación.
Shutdown

Operando: Tipo: Formato: Descripción:

Group MOTION_ tag grupo de ejes


GROUP

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 118 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MGSP no disponible MGSP(Group,MotionControl); La instrucción MGSP enclava el comando actual y la


Motion Group posición de todos los ejes en el grupo especificado en un
Strobe Position punto único en el tiempo.

Operando: Tipo: Formato: Descripción:

Group MOTION_ tag grupo de ejes


GROUP

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MGSR no disponible MGSR(Group,MotionControl); La instrucción MGSR cambia un grupo de ejes del estado de
Motion Group operación desactivada al estado de operación de ejes
Shutdown Reset listos.

Operando: Tipo: Formato: Descripción:

Group MOTION_ tag grupo de ejes


GROUP

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 119

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MID no disponible MID(Source,Qty, La instrucción MID copia un número especificado de


Middle String Start,Dest); caracteres ASCII de una cadena y los almacena en otra
cadena.

Operando: Tipo: Formato: Descripción:

Source cadena tag la cadena de la cual se deben copiar los caracteres

Quantity SINT DINT valor inmediato el número de caracteres que se desea copiar; el inicio así como la cantidad deben ser menores o iguales al tamaño DATA
INT tag del origen.

Start SINT DINT valor inmediato la posición del primer carácter que se debe copiar; introduzca un número entre 1 y el tamaño DATA del origen
INT tag

Destination cadena tag la cadena a la cual se deben copiar los caracteres

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

Tipo 4 Código 56 El valor de inicio o cantidad no es válido. Verifique que el:


• Valor de inicio es entre 1 y el tamaño DATA del origen.
• Valor de inicio así como el valor de cantidad son menores o iguales al tamaño DATA del
origen.

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 120 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MINC no disponible MINC(MINC_tag); La instrucción MINC halla el mínimo de la señal de entrada


Minimum Capture con el tiempo.

Operando: Tipo: Formato: Descripción:

MINC tag" MINIMUM_ estructura Estructura MINC (parámetros predeterminados):


CAPTURE
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Reset BOOL petición para restablecer el algoritmo de control


la instrucción establece Out = ResetValue siempre que Reset esté establecido.

ResetValue REAL valor de restablecimiento para la instrucción


La instrucción establece Out = ResetValue siempre que Reset esté establecido.

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 121

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MOD dest := sourceA MOD sourceB; La instrucción MOD divide el origen A entre el origen B y
Modulo coloca el resto en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor del dividendo
estructurado INT REAL tag

Source B SINT DINT valor inmediato valor del divisor


INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
MOD tag FBD_MATH estructura Estructura MOD (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor del dividendo

SourceB REAL valor del divisor

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados Tipo 4 Código 4 el divisor es 0

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 122 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MOV no disponible dest := source; La instrucción MOV copia el origen al destino. El origen no
Move se cambia.

Operando: Tipo: Formato: Descripción:

Source SINT DINT valor inmediato valor que se mueve (se copia)
INT REAL tag

Destination SINT DINT tag una expresión que consiste en tags y/o valores inmediatos separados por operadores.
INT REAL

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MRAT no disponible MRAT(Axis,MotionControl); La instrucción MRAT ordena al módulo de control de


Motion Run movimiento que ejecute un perfil de ajuste para el eje
Axis Tuning especificado.

Operando: Tipo: Formato: Descripción:

Axis AXIS_SERVO tag nombre del eje


AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 123

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MRHD no disponible MRHD(Axis,MotionControl, La instrucción MRHD ordena al módulo de control de


Motion Run DiagnosticTest); movimiento que ejecute cualquiera de tres diagnósticos
Hookup diferentes en el eje especificado.
Diagnostics

Operando: Tipo: Formato: Descripción:

Axis AXIS_SERVO tag nombre del eje


AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Diagnostic test DINT valor inmediato prueba para que el módulo de control de movimiento ejecute:
• 0 = prueba de conexión de motor/encoder
• 1 = prueba de conexión de encoder
• 2 = prueba de marcador de encoder

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 124 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MRP no disponible MRP(Axis,MotionControl, La instrucción MRP cambia el comando o posición de un


Motion Redefine Type,PositionSelect, eje.
Position Position);

Operando: Tipo: Formato: Descripción:

Axis AXIS_FEEDBACK tag nombre del eje


AXIS_VIRTUAL
AXIS_GENERIC
AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Type BOOL valor inmediato cómo debe funcionar la operación de redefinición: 0 = absoluto, 1 = relativo

Position select BOOL valor inmediato en qué posición realizar la operación de redefinición: 0 = posición actual, 1 = posición de comando

Position REAL valor inmediato valor a usar para cambiar la posición del eje u offset a la posición actual
tag

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 125

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MSF no disponible MSF(Axis,MotionControl); La instrucción MSF desactiva la salida del variador para el
Motion Servo Off eje especificado y para desactivar el lazo servo del eje.
Si usted ejecuta una instrucción MSF mientras que el eje se
está moviendo, el eje realiza un paro no controlado.

Operando: Tipo: Formato: Descripción:

Axis AXIS_GENERIC tag nombre del eje


AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MSG no disponible MSG(MessageControl); La instrucción MSG lee o escribe asíncronamente un bloque


Message de datos a otro módulo en una red.

Operando: Tipo: Formato: Descripción:

Message control Message tag estructura del mensaje

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 126 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MSO no disponible MSO(Axis,MotionControl); La instrucción MSO activa el amplificador del variador para
Motion Servo On el eje especificado y para activar el lazo de control servo
del eje.

Operando: Tipo: Formato: Descripción:

Axis AXIS_GENERIC tag nombre del eje


AXIS_SERVO
AXIS_SERVO_
DRIVE

Motion control MOTION_ tag estructura de movimiento


INSTRUCTION

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 127

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MSTD no disponible MSTD(MSTD_tag,storage); La instrucción MSTD calcula una desviación estándar en


Moving Standard movimiento y realiza un promedio para la señal In.
Deviation

Operando: Tipo: Formato: Descripción:

MSTD tag MOVING_STD_ estructura Estructura MSTD (parámetros predeterminados):


DEV
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

SampleEnable BOOL se habilita para tomar un muestreo de In.


cuando se establece, la instrucción introduce el valor de In en la matriz de
almacenamiento y calcula un nuevo valor de Out y Average.
Cuando se restablece y Initialize se restablece, la instrucción retiene los valores
actuales de Out y Average.

Out REAL salida calculada del algoritmo

storage REAL matriz retiene los muestreos de In; esta matriz debe ser por lo menos tan grande como NumberOfSamples.

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 128 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MUL dest := sourceA * sourceB; La instrucción MUL multiplica el origen A por el origen B y
Multiply coloca el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor del multiplicando
estructurado INT REAL tag

Source B SINT DINT valor inmediato valor del multiplicador


INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
MUL tag FBD_MATH estructura Estructura MUL (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor del multiplicando

SourceB REAL valor del multiplicador

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 129

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MUX no disponible no disponible La instrucción MUX selecciona una de ocho entradas


Multiplexer basado en la entrada selector.

Operando: Tipo: Formato: Descripción:

MUX tag MULTIPLEXER estructura Estructura MUX (parámetros predeterminados):

Parámetro: Tipo: Descripción:

Inx REAL entrada de señal analógica a la instrucción, donde x = 1-8

Selector DINT entrada de selector a la instrucción

Out REAL salida seleccionada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 130 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MVM vea MVMT dest := (Dest AND NOT La instrucción MVM copia el origen a un destino y permite
Masked Move (Mask)) que se enmascaren porciones de los datos.
OR (Source AND Mask);

Operando: Tipo: Formato: Descripción:

Source SINT DINT valor inmediato valor que se mueve


INT tag

Mask SINT DINT valor inmediato qué bits se bloquean o se pasan


INT tag

Destination SINT DINT tag una expresión que consiste en tags y/o valores inmediatos separados por operadores.
INT

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 131

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

MVMT vea MVM MVMT(MVMT_tag); La instrucción MVMT primero copia el receptor al destino.
Masked Move with La instrucción compara el origen con máscara contra el
Target destino y hace los cambios necesarios del destino. El
receptor y el destino no cambian.

Operando: Tipo: Formato: Descripción:

MVMT tag FBD_MASKED_ estructura Estructura MVMT (parámetros predeterminados):


MOVE
Parámetro: Tipo: Descripción:

Source DINT valor de entrada que se transfiere al destino según el valor de la máscara.

Mask DINT Máscara de los bits que se transfieren desde el origen al destino. Todos los bits
establecidos en uno hacen que los bits correspondientes se transfieran desde el
origen al destino. Todos los bits establecidos en cero hacen que los bits
correspondientes se transfieran desde el origen al destino.

Target DINT valor de entrada que se transfiere al destino antes de transferir los bits de origen
a través de la máscara.

Dest DINT Resultado de la instrucción de mover con máscara

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 132 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

NEG dest := -source; La instrucción NEG cambia el signo del origen y coloca el
Negate resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato valor del cual se cambia el signo
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
NEG tag FBD_MATH_ estructura Estructura NEG (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL valor del cual se cambia el signo

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 133

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

NEQ IF sourceA <> sourceB THEN La instrucción NEQ determina si el origen A es diferente
Not equal to <statements>; que el origen B.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT REAL valor inmediato valor que se prueba contra el origen B
estructurado INT cadena tag
DINT

Source B SINT REAL valor inmediato valor que se prueba contra el origen A
INT cadena tag
DINT

Bloque de Operando: Tipo: Formato: Descripción:


función
NEQ tag FBD_COMPARE estructura Estructura NEQ (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor que se prueba contra SourceB

SourceB REAL valor que se prueba contra SourceA

Dest BOOL resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 134 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

NOP no disponible no disponible La instrucción NOP funciona como marcador de posición


No Operation
Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

NOT dest := NOT source La instrucción NOT realiza una función NO bit a bit usando
Bitwise NOT los bits en el origen y coloca el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato valor en que se realiza la función NO
estructurado INT tag

Destination SINT DINT tag tag para almacenar el resultado


INT

Bloque de Operando: Tipo: Formato: Descripción:


función
NOT tag FBD_LOGICAL estructura Estructura NOT (parámetros predeterminados):

Parámetro: Tipo: Descripción:

Source DINT valor en que se realiza la función NO

Dest DINT resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 135

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

NTCH no disponible NTCH(NTCH_tag); La instrucción NTCH proporciona un filtro para atenuar


Notch Filter frecuencias de entrada que están en la frecuencia de
atenuación.

Operando: Tipo: Formato: Descripción:

NTCH tag FILTER_NOTCH estructura Estructura NTCH (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

ONS no disponible IF BOOL_expression AND NOT La instrucción ONS habilita o inhabilita el resto del renglón,
One Shot storage_bit THEN dependiendo del estado del bit de almacenamiento.
<statement>;
END_IF;
storage_bit :=
BOOL_expression;

Operando: Tipo: Formato: Descripción:

storage bit BOOL tag bit de almacenamiento interno


almacena la condición de entrada del renglón desde la última vez que se ejecutó la instrucción

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 136 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OR dest := sourceA OR sourceB La instrucción OR realiza una función O bit a bit usando los
Bitwise O bits en los orígenes A y B y coloca el resultado en el
destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor en que se realiza la función O con el origen B
estructurado INT tag

Source B SINT DINT valor inmediato valor en que se realiza la función O con el origen A
INT tag

Destination SINT DINT tag tag para almacenar el resultado


INT

Bloque de Operando: Tipo: Formato: Descripción:


función
OR tag FBD_LOGICAL estructura Estructura OR (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA DINT valor en que se realiza la función O con el origen B

SourceB DINT valor en que se realiza la función O con el origen A

Dest DINT resultado de la instrucción

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 137

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OSF vea OSFI vea OSFI La instrucción OSF establece o restablece el bit de salida
One Shot Falling dependiendo del estado del bit de almacenamiento.

Operando: Tipo: Formato: Descripción:

storage bit BOOL tag bit de almacenamiento interno


almacena la condición de entrada del renglón desde la última vez que se ejecutó la instrucción

output bit BOOL tag bit que se va a establecer

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OSFI vea OSF OSFI(OSFI_tag); La instrucción OSFI establece OutputBit por un ciclo de
One Shot Falling ejecución cuando InputBit cambia de establecido a
with Input restablecido.

Operando: Tipo: Formato: Descripción:

OSFI tag FBD_ONESHOT estructura Estructura OSFI (parámetros predeterminados):

Parámetro: Tipo: Descripción:

InputBit BOOL bit de entrada

OutputBit BOOL bit de salida

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 138 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OSR vea OSRI vea OSRI La instrucción OSR establece o restablece el bit de salida,
One Shot Rising dependiendo del estado del bit de almacenamiento.

Operando: Tipo: Formato: Descripción:

storage bit BOOL tag bit de almacenamiento interno


almacena la condición de entrada del renglón desde la última vez que se ejecutó la instrucción

output bit BOOL tag bit que se va a establecer

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OSRI vea OSR OSRI(OSRI_tag); La instrucción OSRI establece el bit de salida por un ciclo
One Shot Rising de ejecución cuando el bit de entrada cambia de
with Input restablecido a establecido.

Operando: Tipo: Formato: Descripción:

OSRI tag FBD_ONESHOT estructura Estructura OSRI (parámetros predeterminados):

Parámetro: Tipo: Descripción:

InputBit BOOL bit de entrada

OutputBit BOOL bit de salida

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 139

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OTE no disponible data_bit [:=] La instrucción OTE establece o restablece el bit de datos.
Output Energize BOOL_expression;

Operando: Tipo: Formato: Descripción:

data bit BOOL tag bit que se va a establecer o restablecer

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OTL no disponible IF BOOL_expression THEN La instrucción OTL establece (enclava) el bit de datos.
Output Latch data_bit := 1;
END_IF;

Operando: Tipo: Formato: Descripción:

data bit BOOL tag bit que se va a establecer

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

OTU no disponible IF BOOL_expression THEN La instrucción OTU restablece (desenclava) el bit de datos.
Output Unlatch data_bit := 0;
END_IF;

Operando: Tipo: Formato: Descripción:

data bit BOOL tag bit que se va a restablecer

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 140 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

PI no disponible PI(PI_tag); La instrucción PI proporciona dos métodos de operación. El


Proportional + primer método sigue el algoritmo PI convencional en el cual
Integral las ganancias proporcional e integral permanecen
constantes en todo el rango de la señal de entrada (error).
El segundo método usa un algoritmo no lineal donde las
ganancias proporcional e integral varían en el rango de la
señal de entrada. La señal de entrada es la desviación entre
el punto de ajuste y la retroalimentación del proceso.

Operando: Tipo: Formato: Descripción:

PI tag PROP_INT estructura Estructura PI (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal de error del proceso.

Out REAL salida calculada del algoritmo PI

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 141

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

PID no disponible PID(PID, La instrucción PID controla una variable del proceso, tal
Proportional, ProcessVariable,Tieback, como flujo, presión, temperatura o nivel.
Integral, Derivative ControlVariable,
PIDMasterLoop,
InholdBit,
InHoldValue);

Operando: Tipo: Formato: Descripción:

PID PID estructura estructura PID

Process variable SINT DINT tag valor que desea controlar


INT REAL

Tieback SINT DINT valor inmediato (opcional) salida de una estación manual/automática que está pasando por alto la salida del controlador
INT REAL tag Introduzca 0 si no desea usar este parámetro.

Control variable SINT DINT tag valor que va al dispositivo de control final (válvula, regulador, etc.)
INT REAL Si usted está usando la banda muerta, la variable Control debe ser REAL o se forzará a 0 cuando el error esté dentro de la
banda muerta.

PID master loop PID estructura (opcional) tag PID para el PID maestro
Introduzca 0 si no desea usar este parámetro.

Inhold bit BOOL tag (opcional) estado actual del bit mantenido desde un canal de salida analógica 1756 para un reinicio sin problemas.
Introduzca 0 si no desea usar este parámetro.

Inhold value SINT DINT tag (opcional) valor de repetición de lectura de datos desde un canal de salida analógica 1756 para un reinicio sin problemas
INT REAL Introduzca 0 si no desea usar este parámetro.

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 142 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

PID Setpoint na na muestra el valor actual del punto de ajuste


Proportional,
Integral, Derivative Process variable na na muestra el valor actual de la variable del proceso escalada
(continúa)
Output % na na muestra el valor de porcentaje de la salida actual

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 35 .UPD =0

Tipo 4 Código 36 el punto de ajuste está fuera de rango

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 143

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

PIDE no disponible PIDE(PIDE_tag); La instrucción PIDE proporciona capacidades optimizadas


Enhanced PID con respecto a la instrucción PID estándar. La instrucción
usa el formato de velocidad del algoritmo PID. Los términos
de ganancia se aplican al cambio en el valor de error o PV,
no al valor de error o PV.

Operando: Tipo: Formato: Descripción:

PIDE tag PIDE_ENHANCED estructura Estructura PIDE (parámetros predeterminados):

Parámetro: Tipo: Descripción:

PV REAL entrada de variable de proceso escalada.

SPProg REAL valor de programa SP, escalado en unidades de PV.

SPCascade REAL valor de SPCascade, escalado en unidades de PV.

RatioProg REAL multiplicador de programa de relación.

CVProg REAL valor manual de programa CV.

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 144 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

PIDE Parámetro: Tipo: Descripción:


Enhanced PID
(continuación) FF REAL valor de prealimentación.

HandFB REAL valor de retroalimentación de CV en modo Hand.

ProgProgReq BOOL petición de programa del programa

ProgOperReq BOOL petición del operador del programa

ProgCasRatReq BOOL petición de modo Cascade/Ratio del programa.

ProgAutoReq BOOL petición de modo Auto del programa.

ProgManualReq BOOL petición de modo Manual del programa

ProgOverrideReq BOOL petición de modo Override del programa.

ProgHandReq BOOL petición de modo Hand del programa.

CVEU REAL salida de variable de control escalada.

SP REAL valor actual del punto de ajuste

PVHHAlarm BOOL indicador de alarma alta-alta de PV.

PVHAlarm BOOL indicador de alarma alta de PV.

PVLAlarm BOOL indicador de alarma baja de PV.

PVLLAlarm BOOL indicador de alarma baja-baja de PV.

PVROCPosAlarm BOOL indicador de alarma de régimen de cambio positivo de PV.

PVROCNegAlarm BOOL indicador de alarma de régimen de cambio negativo de PV.

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 145

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

PIDE Parámetro: Tipo: Descripción:


Enhanced PID
(continuación) DevHHAlarm BOOL indicador de alarma alta-alta de desviación.

DevHAlarm BOOL indicador de alarma alta de desviación.

DevLAlarm BOOL indicador de alarma baja de desviación.

DevLLAlarm BOOL indicador de alarma baja-baja de desviación.

ProgOper BOOL indicador de control del programa/operador


se establece cuando está en modo de programa; se restablece cuando está en
modo de operador

CasRat BOOL indicador del modo Cascade/Ratio

Auto BOOL indicador del modo Auto

Manual BOOL indicador del modo Manual

Override BOOL indicador del modo Override

Hand BOOL indicador del modo Hand

autotune PIDE_AUTOTUNE estructura (opcional) estructura de autoajuste (bloque de función solamente)

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro CVEU ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 146 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

PMUL no disponible PMUL(PMUL_tag); La instrucción PMUL proporciona una interface desde un


Pulse Multiplier módulo de entrada de posición, tal como un dispositivo de
resolución o un encoder, al sistema digital calculando el
cambio en entrada de un escán al siguiente. Al seleccionar
un tamaño de palabra específico, usted configura la
instrucción PMUL para diferenciar a través del límite de
reinicio en modo continuo y lineal.

Operando: Tipo: Formato: Descripción:

Tag PMUL PULSE_ estructura Estructura PMUL (parámetros predeterminados):


MULTIPLIER
Parámetro: Tipo: Descripción:

In DINT entrada de señal analógica para la instrucción

MULTIPLIER DINT multiplicador; divida este valor entre 100,000 para controlar la relación de In con
respecto a Out.

Out REAL salida de la instrucción

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 147

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

POSP no disponible POSP(POSP_tag); La instrucción POSP abre o cierra un dispositivo abriendo o


Position cerrando los contactos con un tiempo de ciclo definido por
Proportional el usuario con una anchura de impulso proporcional a la
diferencia entre las posiciones deseada y real.

Operando: Tipo: Formato: Descripción:

POSP tag POSITION_PROP estructura Estructura POSP (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SP REAL valor del punto de ajuste; debe usar las mismas unidades de ingeniería que
Position.

Position REAL retroalimentación de posición

OpenedFB BOOL retroalimentación abierta; cuando se establece, la salida abierta no puede


activarse.

ClosedFB BOOL retroalimentación cerrada; Cuando se establece, la salida cerrada no puede


activarse.

OpenOut BOOL esta salida es pulsada para abrir el dispositivo.

CloseOut BOOL esta salida es pulsada para cerrar el dispositivo.

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro ninguna


PositionPercent

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 148 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RAD dest := RAD(source); La instrucción RAD convierte el origen (en grados) a


Radians radianes y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato valor que se va a convertir a radianes
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
RAD tag FBD_MATH_ estructura Estructura RAD (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción de conversión

Dest REAL resultado de la instrucción de conversión

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 149

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RES no disponible no disponible La instrucción RES restablece una estructura TIMER,


Reset COUNTER o CONTROL.

Operando: Tipo: Formato: Descripción:

estructura TIMER tag estructura que se va a restablecer


CONTROL
COUNTER

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 150 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RESD no disponible RESD(RESD_tag); La instrucción RESD usa las entradas Set y Reset para
Reset Dominant controlar salidas enclavadas. La entrada Reset tiene
precedencia sobre la entrada Set.

Operando: Tipo: Formato: Descripción:

RESD tag DOMINANT_ estructura Estructura RESD (parámetros predeterminados):


Reset
Parámetro: Tipo: Descripción:

Set BOOL entrada de establecimiento para la instrucción

Reset BOOL entrada de restablecimiento para la instrucción

Out BOOL salida de la instrucción

OutNot BOOL Salida invertida de la instrucción.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 151

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RET RET(ReturnPar); La instrucción RET es una instrucción opcional que


Return intercambia datos con la instrucción JSR.

Operando: Tipo: Formato: Descripción:

Return parameter BOOL DINT valor inmediato datos de esta rutina que usted desea copiar al parámetro de retorno correspondiente en la instrucción JSR.
SINT REAL tag
INT tag de matriz
estructura

Indicadores de estado aritmético: Fallos mayores:

afectados 4 31 • la instrucción JSR tiene menos parámetros de entrada que la instrucción SBR
• la instrucción RET tiene menos parámetros de retorno que la instrucción JSR
• la rutina principal contiene una instrucción RET

4 0 la instrucción JSR salta a una rutina de fallo

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 152 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RLIM no disponible RLIM(RLIM_tag); La instrucción RLIM limita la cantidad de cambio de una


Rate Limiter señal con el tiempo.

Operando: Tipo: Formato: Descripción:

RLIM tag RATE_LIMITER estructura Estructura RLIM (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

ByPass BOOL petición para evitar el algoritmo; Cuando se establece, Out = In.

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 153

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RMPS no disponible RMPS(RMPS_tag,RampValue, La instrucción RMPS proporciona un número de segmentos


Ramp/Soak SoakValue,SoakTime); de períodos de rampa e inmersión alternativos.

Operando: Tipo: Formato: Descripción:

RMPS tag RAMP_SOAK estructura Estructura RMPS (parámetros predeterminados):

Parámetro: Tipo: Descripción:

PV REAL entrada de señal de temperatura analógica escalada para la instrucción.

CurrentSegProg DINT valor de programa de segmento actual.

OutProg REAL valor de programa de salida

SoakTimeProg REAL valor de programa de tiempo de inmersión.

ProgProgReq BOOL petición de programa del programa

ProgOperReq BOOL petición del operador del programa

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 154 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RMPS Parámetro: Tipo: Descripción:


Ramp/Soak
(continuación) ProgAutoReq BOOL petición de modo Auto del programa.

ProgManualReq BOOL petición de modo Manual del programa

ProgHoldReq BOOL Petición de modo de retención del programa

Out REAL salida de la instrucción

CurrentSeg DINT número de segmento actual

SoakTimeLeft REAL tiempo de inmersión restante

GuarRampOn BOOL estado de rampa garantizada

GuarSoakOn BOOL estado de inmersión garantizada

ProgOper BOOL indicador de control del programa/operador

Auto BOOL indicador del modo Auto

Manual BOOL indicador del modo Manual

Hold BOOL indicador del modo de retención

RampValue REAL matriz matriz de valor de rampa; introduzca un valor de rampa (tiempo en minutos) para cada segmento (0 a NumberOfSegs-1)

SoakValue REAL matriz matriz de valor de inmersión; introduzca un valor de inmersión para cada segmento (0 a NumberOfSegs-1); La matriz debe
ser por lo menos tan grande como NumberOfSegs.

SoakTime REAL matriz matriz de tiempo de inmersión; introduzca un valor de tiempo de inmersión (tiempo en minutos) para cada segmento (0 a
NumberOfSegs-1)

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 155

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RTO vea RTOR vea RTOR La instrucción RTO es un temporizador retentivo que
Retentive Timer On acumula tiempo cuando la instrucción está habilitada.

Operando: Tipo: Formato: Descripción:

Timer TIMER tag estructura Timer

Preset DINT valor inmediato el período de retardo (acumular tiempo)

Accum DINT valor inmediato número de mseg que contó el temporizador; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 34 • .PRE < 0


• .ACC < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 156 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RTOR vea RTO RTOR(RTOR_tag); La instrucción RTOR es un temporizador retentivo que


Retentive Timer On acumula tiempo cuando TimerEnable está establecido.
with Reset

Operando: Tipo: Formato: Descripción:

RTOR tag FBD_TIMER estructura Estructura RTOR (parámetros predeterminados):

Parámetro: Tipo: Descripción:

TimerEnable BOOL si se restablece, permite que el temporizador se ejecute y acumule tiempo.

PRE DINT valor preseleccionado del temporizador en unidades de 1 mseg

Reset BOOL petición para restablecer el temporizador

ACC BOOL tiempo acumulado en milisegundos.

DN BOOL Salida de efectuado de temporización. Indica cuando ACC ≥ PRE

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 157

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

RTOS no disponible RTOS(Source,Dest); La instrucción RTOS produce la representación ASCII de un


REAL to String valor REAL.

Operando: Tipo: Formato: Descripción:

Source REAL tag el tag que contiene el valor REAL

Destination cadena tag el tag en que se almacena el valor ASCII

Indicadores de estado aritmético: Fallos mayores:

no afectados 4 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

4 52 La cadena de salida es mayor que el destino. Cree un nuevo tipo de datos de cadena que sea
suficientemente grande para la cadena de salida. Use el nuevo tipo de datos de cadena como tipo de
datos par el destino.

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 158 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SBR SBR(InputPar); La instrucción SBR es una instrucción opcional que


Subroutine intercambia datos con la instrucción JSR.

Operando: Tipo: Formato: Descripción:

Input parameter BOOL DINT tag el tag en esta rutina al cual desea copiar el parámetro de entrada correspondiente proveniente de la instrucción JSR.
SINT REAL tag de matriz
INT
estructura

Indicadores de estado aritmético: Fallos mayores:

afectados 4 31 • la instrucción JSR tiene menos parámetros de entrada que la instrucción SBR
• la instrucción RET tiene menos parámetros de retorno que la instrucción JSR
• la rutina principal contiene una instrucción RET

4 0 la instrucción JSR salta a una rutina de fallo

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 159

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SCL no disponible SCL(SCL_tag); La instrucción SCL convierte un valor de entrada no


Scale escalado a un valor de punto flotante (coma flotante) en
unidades de ingeniería.

Operando: Tipo: Formato: Descripción:

SCL tag Scale estructura Estructura SCL (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida que representa el valor escalado de la entrada analógica.

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 160 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SCRV no disponible SCRV(SCRV_tag); La instrucción SCRV realiza una función de rampa con un
S-Curve régimen de curva en S añadido. El régimen de curva en S es
el máximo régimen de cambio del régimen usado para
cambiar salida a entrada mediante rampa.

Operando: Tipo: Formato: Descripción:

SCRV tag S_CURVE estructura Estructura SCRV (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida de la instrucción

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 161

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SEL no disponible no disponible La instrucción SEL usa una entrada digital para seleccionar
Selector una de dos entradas.

Operando: Tipo: Formato: Descripción:

SEL tag SELECT estructura Estructura SEL (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In1 REAL primera entrada de señal analógica para la instrucción

In2 REAL segunda entrada de señal analógica para la instrucción

SelectorIn BOOL entrada que selecciona entre In1 and In2.

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 162 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SETD no disponible SETD(SETD_tag); La instrucción SETD usa las entradas Set y Reset para
Set Dominant controlar salidas enclavadas. La entrada Set tiene
precedencia sobre la entrada Reset.

Operando: Tipo: Formato: Descripción:

SETD tag DOMINANT_SET estructura Estructura SETD (parámetros predeterminados):

Parámetro: Tipo: Descripción:

Set BOOL entrada de establecimiento para la instrucción

Reset BOOL entrada de restablecimiento para la instrucción

Out BOOL salida de la instrucción

OutNot BOOL salida invertida de la instrucción.

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 163

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SFP no disponible SFP(SFCRoutineName, La instrucción SFP detiene temporalmente una rutina SFC.
Pause SFC TargetState);

Operando: Tipo: Formato: Descripción:

SFCRoutine Name ROUTINE nombre rutina SFC que se va a detener temporalmente

TargetState DINT valor inmediato seleccione ejecutando (introduzca 0) o en pausa (introduzca 1)


tag

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 85 el tipo de rutina no es una rutina SFC

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SFR no disponible SFR(SFCRoutineName La instrucción SFR restablece la ejecución de una rutina


Reset SFC StepName); SFC en un paso especificado.

Operando: Tipo: Formato: Descripción:

SFCRoutine Name ROUTINE nombre rutina SFC que se va a restablecer

Step Name SFC_STEP tag paso especificado donde va a continuar la ejecución

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 85 el tipo de rutina no es una rutina SFC

Tipo 4 Código 89 el paso especificado no existe en la rutina SFC

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 164 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SIN dest := SIN(source); La instrucción SIN halla el seno del valor de origen (en
Sine radianes) y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar el seno de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
SIN tag FBD_MATH_ estructura Estructura SIN (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 165

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SIZE no disponible no disponible La instrucción SIZE encuentra el tamaño de una dimensión


Size in Elements de una matriz.

Operando: Tipo: Formato: Descripción:

Source SINT DINT tag de matriz la matriz en la cual la instrucción realizará la operación
INT REAL
estructura
cadena

Dimension to vary DINT valor inmediato qué dimensión usar


(0, 1, 2) introduzca 0 (primera dimensión), 1 (segunda dimensión) o 2 (tercera dimensión)

SIZE SINT DINT tag tag para guardar el número de elementos en la dimensión especificada de la matriz.
INT REAL

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 166 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SNEG no disponible SNEG(SNEG_tag); La instrucción SNEG usa una entrada digital para
Selected Negate seleccionar entre el valor de entrada y el negativo del valor
de entrada.

Operando: Tipo: Formato: Descripción:

SNEG tag SELECTABLE_ estructura Estructura SNEG (parámetros predeterminados):


NEGATE
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

NegateEnable BOOL cuando NegateEnable se establece, la instrucción establece Out en el valor


negativo de In.

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 167

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SOC no disponible SOC(SOC_tag); La instrucción SOC está designada para uso en sistemas de
Second-Order control de lazo cerrado de manera similar a la instrucción
Controller PI. La instrucción SOC proporciona un término de ganancia,
un retardo de primer orden y un avance de segundo orden.

Operando: Tipo: Formato: Descripción:

SOC tag SEC_ORDER_ estructura Estructura SOC (parámetros predeterminados):


CONTROLLER
Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 168 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SQI no disponible no disponible La instrucción SQI detecta cuando ha concluido un paso en


Sequencer input una pareja de instrucciones de secuencia SQO/SQI.

Operando: Tipo: Formato: Descripción:

Array DINT tag de matriz matriz de secuenciador; especificar el primer elemento de la matriz de secuenciador
no use CONTROL.POS en el subíndice

Mask SINT DINT tag qué bits se bloquean o se pasan


INT valor inmediato

Source SINT DINT tag datos de entrada en la matriz de secuenciador


INT

Control CONTROL tag estructura de control para la operación; normalmente, use el mismo CONTROL que para las instrucciones SQO y SQL

Length DINT valor inmediato número de elementos en la matriz (tabla de secuenciador) que se va a comparar

Position DINT valor inmediato posición actual en la matriz; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 169

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SQL no disponible no disponible La instrucción SQL carga condiciones de referencia en una


Sequencer Load matriz de secuenciador.

Operando: Tipo: Formato: Descripción:

Array DINT tag de matriz matriz de secuenciador; especificar el primer elemento de la matriz de secuenciador
no use CONTROL.POS en el subíndice

Source SINT DINT tag datos de entrada que se van a cargar en la matriz de secuenciador
INT valor inmediato

Control CONTROL tag estructura de control para la operación; normalmente, use el mismo CONTROL que para las instrucciones SQI y SQO

Length DINT valor inmediato número de elementos en la matriz (tabla de secuenciador) que se va a cargar

Position DINT valor inmediato posición actual en la matriz; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 20 Longitud > tamaño de la matriz

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 170 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SQO no disponible no disponible La instrucción SQO establece condiciones de salida para el


Sequencer Output siguiente paso de una pareja de instrucciones SQO/SQI de
secuencia.

Operando: Tipo: Formato: Descripción:

Array DINT tag de matriz matriz de secuenciador; especificar el primer elemento de la matriz de secuenciador
no use CONTROL.POS en el subíndice

Mask SINT DINT tag qué bits se bloquean o se pasan


INT valor inmediato

Destination DINT tag datos de salida provenientes de la matriz de secuenciador

Control CONTROL tag estructura de control para la operación; normalmente, use el mismo CONTROL que para las instrucciones SQI y SQL

Length DINT valor inmediato número de elementos en la matriz (tabla de secuenciador) que se va a establecer como salida

Position DINT valor inmediato posición actual en la matriz; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 171

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SQR dest := SQRT(source); La instrucción SQR calcula la raíz cuadrada del origen y
Square Root coloca el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar la raíz cuadrada de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
SQR tag FBD_MATH_ estructura Estructura SQR (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL hallar la raíz cuadrada de este valor

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 172 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SRT no disponible SRT(Array,Dimtovary, La instrucción SRT clasifica un conjunto de valores en una


File Sort Control); dimensión (dimensión para variar) de la matriz en orden
ascendente.

Operando: Tipo: Formato: Descripción:

Array SINT DINT tag de matriz matriz que se clasifica; especificar el primer elemento del grupo de elementos que se clasifica
INT REAL no use CONTROL.POS en el subíndice

Dimension to vary DINT valor inmediato qué dimensión usar


(0, 1, 2) el orden es: array[dim_0,dim_1,dim_2] luego array[dim_0,dim_1] luego array[dim_0]

Control CONTROL tag estructura de control para la operación

Length DINT valor inmediato número de elementos en el matriz que se clasifica

Position DINT valor inmediato elemento actual en el matriz; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

afectados Tipo 4 Código 20 • La instrucción intenta obtener acceso a los datos fuera de los límites de la matriz.
• La dimensión que se va a variar no existe para el matriz especificado

Tipo 4 Código 21 .POS < 0 ó .LEN < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 173

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SRTP no disponible SRTP(SRTP_tag); La instrucción SRTP toma la salida 0-100% de un lazo PID y
Split Range activa los contactos de salida digital de calentamiento y
Proportional enfriamiento con un pulso periódico. Esta instrucción
controla aplicaciones tales como control de temperatura de
barril en máquinas de extrusión.

Operando: Tipo: Formato: Descripción:

SRTP tag *SPLIT_RANGE estructura Estructura SRTP (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica solicitando calentamiento o enfriamiento.

HeatOut BOOL pulso de salida de calentamiento.

CoolOut BOOL pulso de salida de enfriamiento.

HeatTimePercent REAL porcentaje calculado del ciclo de corriente de HeatOut

CoolTimePercent REAL porcentaje calculado del ciclo de corriente de CoolOut

Indicadores de estado aritmético: Fallos mayores:

establecer para los parámetros ninguna


HeatTimePercent y CoolTimePercent

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 174 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SSUM no disponible SSUM(SSUM_tag); La instrucción SSUM usa entradas booleanas para


Selected Summer seleccionar entradas reales a fin de que sean sumadas
alegebraicamente.

Operando: Tipo: Formato: Descripción:

SSUM tag SELECTABLE_ estructura Estructura SSUM (parámetros predeterminados):


SUMMER
Parámetro: Tipo: Descripción:

Inx REAL entrada, donde x = 1-4

Selectx BOOL señal de selector para entrada asociada, donde x = 1-4

Out REAL salida calculada del algoritmo

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 175

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SSV no disponible SSV(ClassName, Las instrucciones GSV/SSV reciben y envían datos de


Set system value InstanceName, sistema del controlador que se almacenan en los objetos.
AttributeName,Source);

Operando: Tipo: Formato: Descripción:

Class name na nombre nombre del objeto

Instance name na nombre nombre de objeto específico cuando el objeto requiere un nombre

Attribute Name na nombre atributo del objeto; el tipo de datos depende del atributo que usted selecciona

Source SINT DINT tag el tag que contiene los datos que desea copiar al atributo
INT REAL

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 5 dirección de objeto no válida

Tipo 4 Código 6 • se especificó un objeto que no es compatible con GSV/SSV


• atributo no válido
• no se proporcionó suficiente información para una instrucción SSV

Tipo 4 Código 7 el destino GSV no es suficientemente grande para retener los datos solicitados

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 176 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

STD no disponible no disponible La instrucción STD calcula la desviación estándar de un


Standard Deviation conjunto de valores en una dimensión de la matriz y
almacena el resultado en el destino.

Operando: Tipo: Formato: Descripción:

Array SINT DINT tag de matriz hallar la desviación estándar de los valores en este matriz
INT REAL especificar el primer elemento del grupo de elementos que se usan para calcular la desviación estándar
no use CONTROL.POS en el subíndice

Dimension to vary DINT valor inmediato qué dimensión usar


(0, 1, 2) el orden es: array[dim_0,dim_1,dim_2] luego array[dim_0,dim_1] luego array[dim_0]

Destination REAL tag resultado de la operación

Control CONTROL tag estructura de control para la operación

Length DINT valor inmediato el número de elementos de la matriz que se usan para calcular el desviación estándar

Position DINT valor inmediato elemento actual en el matriz; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

afectados Tipo 4 Código 20 La dimensión que se va a variar no existe para el matriz especificado

Tipo 4 Código 21 .POS < 0 ó .LEN < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 177

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

STOD no disponible STOD(Source,Dest); La instrucción STOD convierte la representación ASCII de


String to DINT un número entero a un valor de número entero o REAL.

Operando: Tipo: Formato: Descripción:

Source cadena tag el tag que contiene el valor en ASCII

Destination SINT DINT tag el tag en que se almacena el valor de número entero; Si el valor de origen es un número de punto flotante (coma flotante), la
INT REAL instrucción convierte solamente la parte no fraccionaria del número (independientemente del tipo de datos de destino).

Indicadores de estado aritmético: Fallos mayores:

afectados Tipo 4 Código 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

Tipo 4 Código 53 El número de salida se encuentra fuera de los límites del tipo de datos de destino. Haga esto:
• reduzca el tamaño del valor ASCII
• use un tipo de datos mayor para el destino

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 178 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

STOR no disponible STOR(Source,Dest); La instrucción STOR convierte la representación ASCII de


String to REAL un valor de punto flotante (coma flotante) a un valor REAL.

Operando: Tipo: Formato: Descripción:

Source cadena tag el tag que contiene el valor en ASCII

Destination REAL tag el tag en que se almacena el valor REAL

Indicadores de estado aritmético: Fallos mayores:

afectados Tipo 4 Código 51 El valor LEN del tag de cadena es mayor que el tamaño DATA del tag de cadena. Verifique:
• que ninguna instrucción esté escribiendo al miembro LEN del tag de cadena.
• que en el valor LEN, usted introdujo el número de caracteres que la cadena contiene.

Tipo 4 Código 53 El número de salida se encuentra fuera de los límites del tipo de datos de destino. Haga esto:
• reduzca el tamaño del valor ASCII
• use un tipo de datos mayor para el destino

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 179

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SUB dest := sourceA - sourceB; La instrucción SUB resta el origen B del origen A y coloca el
Subtract resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor del cual se resta el origen B
estructurado INT REAL tag

Source B SINT DINT valor inmediato valor que se resta del origen A
INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
SUB tag FBD_MATH estructura Estructura SUB (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA REAL valor del cual se resta el origen B

SourceB REAL valor que se resta del origen A

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 180 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

SWPB no disponible SWPB(Source,OrderMode, La instrucción SWPB reacomoda los bytes de un valor.


Swap Byte Dest);

Operando: Tipo: Formato: Descripción:

Source INT REAL tag el tag que contiene los bytes que desea reacomodar
DINT

Order Mode na REVERSE la manera en que usted desea cambiar el orden de los bytes
WORD
HIGH/LOW

Destination INT REAL tag tag para almacenar los bytes en el nuevo orden
DINT

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 181

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TAN dest := TAN(source); La instrucción TAN halla la tangente del valor de origen (en
Tangent radianes) y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source SINT DINT valor inmediato hallar la tangente de este valor
estructurado INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
TAN tag FBD_MATH_ estructura Estructura TAN (parámetros predeterminados):
ADVANCED
Parámetro: Tipo: Descripción:

Source REAL entrada a la instrucción matemática

Dest REAL resultado de la instrucción matemática

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TND no disponible TND(); La instrucción TND sirve como límite.


Temporary End
Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 182 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TOD no disponible La instrucción TOD convierte un valor decimal (0 ≤ Origen


Convert to BCD ≤ 99,999,999) a un valor BCD y almacena el resultado en el
destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
Source SINT DINT valor inmediato valor que se va a convertir
INT tag

Destination SINT DINT tag tag para almacenar el resultado


INT

Bloque de Operando: Tipo: Formato: Descripción:


función
TOD tag FBD_CONVERT estructura Estructura TOD (parámetros predeterminados):

Parámetro: Tipo: Descripción:

Source DINT entrada a la instrucción de conversión

Dest DINT resultado de la instrucción de conversión

Indicadores de estado aritmético: Fallos mayores:

afectados Tipo 4 Código 4 Origen < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 183

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TOF vea TOFR vea TOFR La instrucción TOF es un temporizador no retentivo que
Timer Off Delay acumula el tiempo cuando la instrucción está habilitada (la
condición de entrada del renglón es falsa).

Operando: Tipo: Formato: Descripción:

Timer TIMER tag estructura Timer

Preset DINT valor inmediato el período de retardo (acumular tiempo)

Accum DINT valor inmediato número de mseg que contó el temporizador; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 34 • .PRE < 0


• .ACC < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 184 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TOFR vea TOF TOFR(TOFR_tag); La instrucción TOFR es un temporizador no retentivo que


Timer Off Delay acumula tiempo cuando TimerEnable está restablecido.
with Reset

Operando: Tipo: Formato: Descripción:

TOFR tag FBD_TIMER estructura Estructura TOFR (parámetros predeterminados):

Parámetro: Tipo: Descripción:

TimerEnable BOOL si se restablece, permite que el temporizador se ejecute y acumule tiempo

PRE DINT valor preseleccionado del temporizador en unidades de 1 mseg

Reset BOOL petición para restablecer el temporizador

ACC BOOL tiempo acumulado en milisegundos

DN BOOL Salida de efectuado de temporización. Indica cuando ACC ≥ PRE

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 185

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TON vea TONR vea TONR La instrucción TON es un temporizador no retentivo que
Timer On Delay acumula el tiempo cuando la instrucción está habilitada (la
condición de entrada del renglón es verdadera).

Operando: Tipo: Formato: Descripción:

Timer TIMER tag estructura Timer

Preset DINT valor inmediato el período de retardo (acumular tiempo)

Accum DINT valor inmediato número de mseg que contó el temporizador; el valor inicial es típicamente 0

Indicadores de estado aritmético: Fallos mayores:

no afectados Tipo 4 Código 34 • .PRE < 0


• .ACC < 0

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 186 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TONR vea TON TONR(TONR_tag); La instrucción TONR es un temporizador no retentivo que


Timer On Delay acumula tiempo cuando TimerEnable está establecido.
with Reset

Operando: Tipo: Formato: Descripción:

TONR tag FBD_TIMER estructura Estructura TONR (parámetros predeterminados):

Parámetro: Tipo: Descripción:

TimerEnable BOOL si se restablece, permite que el temporizador se ejecute y acumule tiempo

PRE DINT valor preseleccionado del temporizador en unidades de 1 mseg

Reset BOOL petición para restablecer el temporizador

ACC BOOL tiempo acumulado en milisegundos

DN BOOL Salida de efectuado de temporización. Indica cuando ACC ≥ PRE

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 187

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TOT no disponible TOT(TOT_tag); La instrucción TOT proporciona la acumulación con escala


Totalizer de tiempo de un valor de entrada analógica.

Operando: Tipo: Formato: Descripción:

TOT tag TOTALIZER estructura Estructura TOT (parámetros predeterminados):

Parámetro: Tipo: Descripción:

In REAL entrada de señal analógica para la instrucción

ProgProgReq BOOL petición de programa del programa

ProgOperReq BOOL petición del operador del programa.

ProgStartReq BOOL petición de inicio del programa

ProgStopRequest BOOL petición de paro del programa

ProgResetReq BOOL petición de restablecimiento del programa

continúa

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 188 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TOT Parámetro: Tipo: Descripción:


Totalizer
(continuación) Total REAL el valor totalizado si In

OldTotal REAL el valor del total antes que ocurriera un restablecimiento

ProgOper BOOL indicador de control del programa/operador

RunStop BOOL el indicador del estado de operación del totalizador

ProgResetDone BOOL el indicador de que la instrucción TOT ha completado una petición de


restablecimiento del programa.

TargetFlag BOOL el indicador de Total; se establece cuando Total ≥ Target.

TargetDev1Flag BOOL el indicador de TargetDev1; se establece cuando Total ≥ Target - TargetDev1

TargetDev2Flag BOOL el indicador de TargetDev2; se establece cuando Total ≥ Target - TargetDev2

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Total ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 189

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

TRN dest := TRUNC(source); La instrucción TRN retira (trunca) la parte fraccionaria del
Truncate origen y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source REAL valor inmediato valor que se va a truncar
estructurado tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
TRN tag FBD_ estructura Estructura TRN (parámetros predeterminados):
TRUNCATE
Parámetro: Tipo: Descripción:

Source REAL Entrada a la instrucción de conversión.

Dest DINT Resultado de la instrucción matemática.

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

UID no disponible UID(); La instrucción UID y la instrucción UIE funcionan juntas para
User Interrupt evitar que otras tareas interrumpan una cantidad pequeña
Disable UIE(); de renglones críticos.

UIE Indicadores de estado aritmético: Fallos mayores:


User Interrupt
Enhable no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 190 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

UPDN no disponible UPDN(UPDN_tag); La instrucción UPDN suma y resta dos entradas a un valor
Up/Down acumulado.
Accumulator

Operando: Tipo: Formato: Descripción:

UPDN tag UP_DOWN_ estructura Estructura UPDN (parámetros predeterminados):


Accum
Parámetro: Tipo: Descripción:

InPlus REAL entrada sumada al acumulador.

InMinus REAL entrada restada del acumulador.

Out REAL salida de la instrucción

Indicadores de estado aritmético: Fallos mayores:

establecer para el parámetro Out ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 191

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

UPPER no disponible UPPER(Source,Dest); La instrucción UPPER convierte los caracteres alfabéticos


Upper Case en una cadena a caracteres en mayúsculas.

Operando: Tipo: Formato: Descripción:

Source cadena tag el tag que contiene los caracteres que usted desea convertir a mayúsculas

Destination cadena tag el tag para almacenar los caracteres en mayúsculas

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

XIC no disponible IF data_bit THEN La instrucción XIC examina el bit de datos para ver si está
Examine If Closed <statement>; establecido.
END_IF;

Operando: Tipo: Formato: Descripción:

data bit BOOL tag bit que se va a probar

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 192 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

XIO no disponible IF NOT data_bit THEN La instrucción XIO examina el bit de datos para ver si está
Examine If Open <statement>; restablecido.
END_IF;

Operando: Tipo: Formato: Descripción:

data bit BOOL tag bit que se va a probar

Indicadores de estado aritmético: Fallos mayores:

no afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


Conjunto de instrucciones 11 - 193

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

XOR dest := sourceA XOR sourceB La instrucción XOR realiza una función O exclusivo bit a bit
Bitwise Exclusive usando los bits en los orígenes A y B y coloca el resultado
OR en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source A SINT DINT valor inmediato valor en que se realiza la función XOR con el origen B
estructurado INT tag

Source B SINT DINT valor inmediato valor en que se realiza la función XOR con el origen A
INT tag

Destination SINT DINT tag tag para almacenar el resultado


INT

Bloque de Operando: Tipo: Formato: Descripción:


función
XOR tag FBD_LOGICAL estructura Estructura XOR (parámetros predeterminados):

Parámetro: Tipo: Descripción:

SourceA DINT valor en que se realiza la función XOR con el origen B

SourceB DINT valor en que se realiza la función XOR con el origen A

Dest DINT resultado de la instrucción.

Indicadores de estado aritmético: Fallos mayores:

afectados ninguna

Publicación 1756-QR107B-ES-P - Marzo 2004


11 - 194 Conjunto de instrucciones

Instrucción: Lógica de escalera de relé: Bloque de función: Texto estructurado: Descripción:

XPY dest := sourceX ** sourceY; La instrucción XPY eleva el origen A (X) a la potencia del
X to the Power of Y origen B (Y) y almacena el resultado en el destino.

Lógica de Operando: Tipo: Formato: Descripción:


escalera de relé
y texto Source X SINT DINT valor inmediato base value
estructurado INT REAL tag

Source Y SINT DINT valor inmediato exponente


INT REAL tag

Destination SINT DINT tag tag para almacenar el resultado


INT REAL

Bloque de Operando: Tipo: Formato: Descripción:


función
XPY tag FBD_MATH estructura Estructura LOXPY (parámetros predeterminados):

Parámetro: Tipo: Descripción:

Source X REAL valor inmediato base value


tag

Source Y REAL valor inmediato exponente


tag

Dest REAL tag tag para almacenar el resultado

Indicadores de estado aritmético: Fallos mayores:

afectados Tipo 4 Código 4 Source X es negativo y Source Y no es un valor entero

Publicación 1756-QR107B-ES-P - Marzo 2004


Servicio de soporte de Rockwell Automation
Rockwell Automation proporciona información técnica en la web para ayudarle a usar nuestros productos. En http://support.rockwellautomation.com,
usted puede encontrar manuales técnicos, respuestas a preguntas formuladas frecuentemente, notas técnicas y de aplicación, ejemplo de códigos y vínculos a
paquetes de servicio de software, además de la función MySupport que usted puede personalizar para aprovechar al máximo estas herramientas.
Para un nivel adicional de soporte técnico por teléfono para instalación, configuración y resolución de problemas, ofrecemos los programas TechConnect
Support. Para obtener más información, comuníquese con el distribuidor regional o con el representante de Rockwell Automation, o visite
http://support.rockwellautomation.com.

Asistencia para la instalación


Si tiene un problema con un módulo de hardware durante las primeras 24 horas de instalación, por favor revise la información contenida en este manual.
También puede comunicarse con un número especial de Soporte al Cliente para obtener ayuda inicial para la puesta en marcha de su módulo:

Estados Unidos 1.440.646.3223


Lunes – Viernes, 8 am – 5 pm, hora oficial del Este
Fuera de los Estados Por favor comuníquese con el representante local de Rockwell Automation para obtener soporte técnico.
Unidos

Publicación 1756-QR107B-ES-P - Marzo 2004


Devolución de producto nuevo
Rockwell prueba todos nuestros productos para asegurar que estén totalmente operativos cuando se envían de la fábrica. Sin embargo, si el producto no
funciona y necesita devolverlo:

Estados Unidos Comuníquese con el distribuidor. Usted debe proporcionar un número de caso de soporte al cliente (llame al número de teléfono
proporcionado anteriormente para obtenerlo) a su distribuidor para completar el proceso de devolución.
Fuera de los Estados Por favor comuníquese con el representante regional de Rockwell Automation para obtener información sobre el procedimiento de
Unidos devolución.

Publicación 1756-QR107B-ES-P - Marzo 2004 PN 957867-83


Reemplaza a la publicación 1756-QR107A-ES-P - Junio de 2003 Copyright © 2004 Rockwell Automation. Todos los derechos reservados. Impreso en EE.UU.

También podría gustarte