Vous êtes sur la page 1sur 353

GE Fanuc Automation

Productos de control programables

PLC Series 90™-30/20/Micro


Juego de instrucciones de la CPU

Manual de referencia
GFK-0467M-SP Mayo 2002
GFL-002
Notas de Aviso, Precaución y Notas utilizadas en esta
publicación

Aviso
Las notas de aviso se utilizan en esta publicación para resaltar que en este equipo existen
voltajes, intensidades, temperaturas u otras condiciones peligrosas que podrían ocasionar
lesiones físicas o que la utilización de tal equipo puede conllevar tales riesgos.
En situaciones en que la falta de atención pudiera ocasionar lesiones físicas o daños al
equipo se utiliza una nota de aviso.

Precaución
Las notas de precaución se utilizan allí donde el equipo pudiera resultar dañado si no
se adoptan las debidas precauciones.

Nota
Las notas simplemente llaman la atención sobre información especialmente significativa para
comprender y manejar el equipo.

Este documento está basado en información disponible en el momento de su publicación. Pese a


habernos esforzado en ser lo más exactos posibles, la información contenida en el presente
documento no pretende abarcar todos los detalles o variaciones del hardware o software, ni tener
presente cualquier contingencia posible en relación con la instalación, utilización o
mantenimiento. Es posible que se describan prestaciones no incluidas en todos los sistemas de
hardware y software. GE Fanuc Automation no asume ninguna obligación de avisar a los
titulares de este documento en lo que respecta a modificaciones realizadas con posterioridad.

GE Fanuc Automation no realiza ninguna manifestación o garantía, expresa, implicita o


establecida por la ley, ni asume ninguna responsabilidad en cuanto a la exactitud, integridad,
suficiencia o utilidad de la información aquí contenida. No se aplicará ninguna garantía de
comerciabilidad o de aptitud para la finalidad prevista.

Las siguientes son marcas registradas de GE Fanuc Automation North America, Inc.
Alarm Master Genius PROMACRO Series Six
CIMPLICITY Helpmate PowerMotion Series Three
CIMPLICITY 90–ADS Logicmaster PowerTRAC VersaMax
CIMSTAR Modelmaster Series 90 VersaPro
Field Control Motion Mate Series Five VuMaster
GEnet ProLoop Series One Workmaster

©Copyright 1989-2002 GE Fanuc Automation North America, Inc.


Reservados todos los derechos.
Prólogo

Este manual describe la operación del sistema, el tratamiento de fallos y las instrucciones de
programación del Logicmaster 90™ para los controladores lógicos programables de las Series
90™-30, Series 90-20 y Series 90 Micro. Los PLCs de las Series 90-30, Series 90-20 y Series 90
Micro son miembros de la familia de las Series 90 de controladores lógicos programables de GE
Fanuc Automation.

Revisiones del manual


• Se ha añadido la CPU Modelo 374, que soporta la conexión a una red Ethernet a través de dos
puertos Ethernet 10BaseT/100BaseTx integrados de dúplex completo autonegociado. Los
Modelos 364 (versión 9.10 y posteriores) y 374 son las únicas CPUs de las Series 90-30 que
soportan los Datos Globales de Ethernet. Observe que la CPU374 sólo es soportada por los
programadores basados en Windows®.
• Otras correcciones y aclaraciones oportunas.

Publicaciones relacionadas
Logicmaster™ 90 Software de programación de las Series 90™30/20/Micro Manual del usuario
(GFK0466).
Software de programación de VersaPro™ Guía del usuario (GFK-1670)

CIMPLICITY® Machine Edition Guía de iniciación (GFK-1868)

Manual de instalación del controlador programable de las Series 90™30 (GFK0356)


Manual de instalación del controlador programable de las Series 90™20 (GFK0551)
Manual de especificaciones de los Módulos de E/S de las Series 90™30 (GFK0898)
Software de soporte y Módulo coprocesador programable de las Series 90™ Manual del usuario
(GFK0255)
Software de desarrollo (PCOP) PCM de las Series 90™ Manual del usuario (GFK-0487)
Sistema de visualización alfanumérico CIMPLICITY™ 90ADS Manual del usuario (GFK-0499)
Sistema de visualización alfanumérico CIMPLICITY™ 90ADS Manual de referencia (GFK-0641)
Programador portátil de PLC de las Series 90™30 y 9020 Manual del usuario (GFK0402)
Power Mate APM para el PLC de las Series 90™30 —Modo estándar Manual del usuario (GFK-
0840)

GFK-0467M-SP iii
Prólogo

Power Mate APM para el PLC de las Series 90™30 —Modo seguidor Manual del usuario (GFK-
0781)
Motion Mate™ DSM302 para los PLCs de las Series 90™-30 Manual del usuario (GFK-1464)
Contador de alta velocidad de las Series 90™30 Manual del usuario (GFK-0293)
Módulo de comunicaciones Genius para las Series 90™30 Manual del usuario (GFK-0412)
Controlador de bus Genius para las Series 90™30 Manual del usuario (GFK1034)
Controlador de bus FIP para las Series 90™70 Manual del usuario (GFK1034)
Explorador de E/S remotas FIP para las Series 90™30 Manual del usuario (GFK1037)
Control de campo™ E/S distribuidas e Interfaz de bus del sistema de control Genius™ Manual del
usuario (GFK0825)
PLC de las Series 90™ Micro Manual del usuario (GFK1065)

Comunicaciones serie del PLC de las Series 90™ Manual del usuario (GFK0582)

iv PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido

Capitulo 1 Introducción........................................................................................................... 1-1

Capitulo 2 Operación del sistema ........................................................................................... 2-1


Sección 1: Resumen del barrido del PLC ....................................................... 2-2
Barrido de programa estándar........................................................................................... 2-2
Cálculo del tiempo de barrido .................................................................................... 2-9
Detalles del barrido del PLC .................................................................................... 2-10
Comunicaciones del PCM con el PLC (Modelos 331 y superiores)........................ 2-15
Comunicaciones del módulo servo digital (DSM) con el PLC ...................................... 2-16
Variaciones del barrido de programa estándar ............................................................... 2-16
Modo de tiempo de barrido constante ...................................................................... 2-16
Barrido del PLC en modo STOP.............................................................................. 2-17
Modos de ventana de comunicaciones ..................................................................... 2-18
Interruptor con llave en las CPUs de las Series 35x, 36x y 37x: cambio de
modo y protección de la memoria Flash....................................................................... 2-19
Sección 2: Organización del programa y datos/referencias del usuario .... 2-21
Bloques de subrutina ...................................................................................................... 2-23
Ejemplos del uso de bloques de subrutina ............................................................... 2-23
Cómo se llama a los bloques de subrutina ............................................................... 2-24
Secuencia de ejecución en programas que contienen subrutinas ............................. 2-24
Subrutinas periódicas ............................................................................................... 2-25
Referencias de usuario.................................................................................................... 2-25
Alias ......................................................................................................................... 2-27
Transiciones y overrides .......................................................................................... 2-27
Capacidad retentiva de datos.................................................................................... 2-28
Tipos de datos................................................................................................................. 2-29
Referencias de estados del sistema ................................................................................. 2-30
Estructura del bloque de función .................................................................................... 2-33
Formato de relés lógicos de contactos ..................................................................... 2-33
Formato de los bloques de función del programa (instrucciones)........................... 2-33
Parámetros de los bloques de función (instrucción) ....................................................... 2-35
Entrada y salida de flujo de energía de una función ................................................ 2-36
Sección 3: Secuencias de conexión y desconexión ........................................ 2-38
Conexión......................................................................................................................... 2-38
Desconexión ................................................................................................................... 2-41
Sección 4: Relojes y temporizadores ............................................................. 2-42
Reloj de tiempo transcurrido .......................................................................................... 2-42
Reloj de la hora del día ................................................................................................... 2-42
Temporizador watchdog ................................................................................................. 2-43
Temporizador de tiempo desde la desconexión.............................................................. 2-43
Temporizador de barrido constante ................................................................................ 2-43

GFK-0467M-SP v
Contenido

Contactos del bloque de tiempo...................................................................................... 2-44


Sección 5: Seguridad del sistema ................................................................... 2-45
Contraseñas..................................................................................................................... 2-45
Peticiones de cambio de nivel de protección .................................................................. 2-46
Bloqueo/desbloqueo de subrutinas ................................................................................. 2-46
Bloqueo permanente de una subrutina ..................................................................... 2-47
Sección 6: Sistema de E/S de las Series 90-30, 90-20 y Micro ..................... 2-48
Módulos de E/S de las Series 90-30 ............................................................................... 2-49
Formatos de datos de E/S ............................................................................................... 2-51
Condiciones por defecto para módulos de salida de las Series 90-30 ............................ 2-51
Datos de diagnóstico....................................................................................................... 2-52
Datos globales................................................................................................................. 2-52
Datos globales de Genius ......................................................................................... 2-52
Comunicaciones de Ethernet.................................................................................... 2-52
Módulos de E/S de las Series 90-20......................................................................... 2-53
Configuración y programación ....................................................................................... 2-53

Capitulo 3 Explicación y corrección de fallos ........................................................................ 3-1


Sección 1: Tratamiento de fallos...................................................................... 3-2
Procesador de alarmas ...................................................................................................... 3-2
Clases de fallos ................................................................................................................. 3-2
Reacción del sistema a los fallos ...................................................................................... 3-3
Tabla de fallos ............................................................................................................ 3-3
Acción de los fallos.................................................................................................... 3-4
Referencias de los fallos ................................................................................................... 3-4
Referencias de los estados del sistema ............................................................................. 3-5
Efectos de fallo adicionales .............................................................................................. 3-5
Pantalla de la tabla de fallos del PLC ............................................................................... 3-6
Pantalla de la tabla de fallos de E/S.................................................................................. 3-6
Acceso a información adicional de fallos ......................................................................... 3-7
Sección 2: Explicaciones de la tabla de fallos del PLC .................................. 3-8
Acciones de los fallos ....................................................................................................... 3-9
Pérdida o ausencia de módulo opcional ..................................................................... 3-9
Módulo opcional: reinicialización, adición o extra.................................................... 3-9
Discordancia en la configuración del sistema .......................................................... 3-10
Avería del software del módulo opcional ................................................................ 3-11
Avería de la suma de comprobación del programa .................................................. 3-11
Señal de pila baja ..................................................................................................... 3-11
Tiempo de barrido constante excedido..................................................................... 3-12
Fallo de aplicación ................................................................................................... 3-12
No existe programa de usuario................................................................................. 3-13

vi PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido

Programa de usuario corrompido en la conexión..................................................... 3-13


Avería de acceso por contraseña .............................................................................. 3-13
Avería en el software del sistema de la CPU del PLC ............................................. 3-14
Avería en las comunicaciones durante el almacenamiento ...................................... 3-16
Sección 3: Explicaciones de la tabla de fallos de E/S ................................... 3-17
Pérdida de un módulo de E/S.......................................................................................... 3-17
Adición de un módulo de E/S......................................................................................... 3-18

Capitulo 4 Funciones de relé ................................................................................................... 4-1


Uso de los contactos ......................................................................................................... 4-1
Uso de las bobinas ............................................................................................................ 4-2
Contacto normalmente abierto —| |— ............................................................................. 4-3
Contacto normalmente cerrado —|/|— ............................................................................ 4-3
Bobina —( )— ................................................................................................................. 4-3
Ejemplo ...................................................................................................................... 4-3
Bobina inversa —(/)— .................................................................................................... 4-4
Ejemplo ...................................................................................................................... 4-4
Bobina retentiva —(M)—................................................................................................ 4-4
Bobina retentiva inversa —(/M)—.................................................................................. 4-4
Bobina de transición positiva —(↑)— ............................................................................ 4-4
Bobina de transición negativa —(↓)—............................................................................ 4-5
Ejemplo ...................................................................................................................... 4-5
Bobina SET —(S) —....................................................................................................... 4-5
Bobina RESET —(R)— .................................................................................................. 4-5
Ejemplo ...................................................................................................................... 4-6
Bobina SET retentiva —(SM)— ..................................................................................... 4-6
Bobina RESET retentiva —(RM)—................................................................................ 4-7
Enlaces.............................................................................................................................. 4-7
Ejemplo ...................................................................................................................... 4-7
Bobinas (———<+>) y contactos (<+>———) de continuación ................................... 4-8

Capitulo 5 Temporizadores y contadores .............................................................................. 5-1


Datos de bloques de función requeridos para temporizadores y contadores .................... 5-1
ONDTR ............................................................................................................................ 5-3
Parámetros.................................................................................................................. 5-4
Tipos de memorias válidas......................................................................................... 5-5
Ejemplo ...................................................................................................................... 5-5
TMR ................................................................................................................................. 5-5
Parámetros.................................................................................................................. 5-7
Tipos de memorias válidas......................................................................................... 5-7
Ejemplo ...................................................................................................................... 5-8
OFDT................................................................................................................................ 5-9

GFK-0467M-SP Contenido vii


Contenido

Parámetros................................................................................................................ 5-10
Tipos de memorias válidas....................................................................................... 5-11
Ejemplos................................................................................................................... 5-11
UPCTR ........................................................................................................................... 5-12
Parámetros................................................................................................................ 5-12
Tipos de memorias válidas....................................................................................... 5-13
Ejemplos................................................................................................................... 5-13
DNCTR........................................................................................................................... 5-14
Parámetros................................................................................................................ 5-14
Tipos de memorias válidas....................................................................................... 5-15
Ejemplos................................................................................................................... 5-15
Ejemplos de cómputos de existencias ...................................................................... 5-16

Capitulo 6 Funciones matemáticas ......................................................................................... 6-1


Funciones matemáticas estándar....................................................................................... 6-2
Parámetros.................................................................................................................. 6-3
Tipos de memorias válidas......................................................................................... 6-3
Ejemplos de funciones matemáticas .......................................................................... 6-4
Tipos de datos y funciones matemáticas .................................................................... 6-5
Ejemplo ...................................................................................................................... 6-6
MOD (INT, DINT) ....................................................................................................... 6-8
Parámetros.................................................................................................................. 6-8
Tipos de memorias válidas......................................................................................... 6-9
Ejemplo ...................................................................................................................... 6-9
SQRT (INT, DINT, REAL)........................................................................................ 6-10
Parámetros................................................................................................................ 6-10
Tipos de memorias válidas....................................................................................... 6-11
Ejemplos................................................................................................................... 6-11
Funciones trigonométricas (SIN, COS, TAN, ASIN, ACOS, ATAN)........................... 6-12
Parámetros................................................................................................................ 6-13
Tipos de memorias válidas....................................................................................... 6-13
Ejemplo .................................................................................................................... 6-13
Funciones logarítmicas/exponenciales (LOG, LN, EXP, EXPT)................................... 6-14
Parámetros................................................................................................................ 6-14
Tipos de memorias válidas....................................................................................... 6-15
Ejemplo .................................................................................................................... 6-15
Conversión a radianes (RAD, DEG) ........................................................................... 6-16
Parámetros................................................................................................................ 6-16
Tipos de memorias válidas....................................................................................... 6-16
Ejemplo .................................................................................................................... 6-17

Capitulo 7 Funciones relacionales........................................................................................... 7-1

viii PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido

Funciones relacionales estándar (EQ, NE, GT, GE, LT, LE)........................................... 7-2
Parámetros.................................................................................................................. 7-2
Descripción ampliada................................................................................................. 7-3
Tipos de memorias válidas......................................................................................... 7-3
Ejemplo ...................................................................................................................... 7-3
RANGE (Intervalo) (INT, DINT, WORD) .................................................................. 7-4
Parámetros.................................................................................................................. 7-5
Tipos de memorias válidas......................................................................................... 7-5
Ejemplo 1 ................................................................................................................... 7-5
Ejemplo 2 ................................................................................................................... 7-6

Capitulo 8 Funciones de operaciones con bits ....................................................................... 8-1


AND y OR (WORD) ........................................................................................................ 8-3
Parámetros.................................................................................................................. 8-3
Tipos de memorias válidas......................................................................................... 8-4
Ejemplo ...................................................................................................................... 8-4
XOR (WORD).................................................................................................................. 8-5
Parámetros.................................................................................................................. 8-5
Tipos de memorias válidas......................................................................................... 8-6
Ejemplo de un circuito de alarma que utiliza la función XOR .................................. 8-6
NOT (WORD) .................................................................................................................. 8-8
Parámetros.................................................................................................................. 8-8
Tipos de memorias válidas......................................................................................... 8-8
Ejemplo ...................................................................................................................... 8-8
SHL y SHR (WORD) ....................................................................................................... 8-9
Parámetros................................................................................................................ 8-10
Tipos de memorias válidas....................................................................................... 8-10
Ejemplo .................................................................................................................... 8-10
ROL y ROR (WORD) .................................................................................................... 8-11
Parámetros................................................................................................................ 8-11
Tipos de memorias válidas....................................................................................... 8-12
Ejemplo .................................................................................................................... 8-12
BTST (WORD)............................................................................................................... 8-13
Parámetros................................................................................................................ 8-13
Tipos de memorias válidas....................................................................................... 8-14
Ejemplo .................................................................................................................... 8-14
BSET y BCLR (WORD) ................................................................................................ 8-15
Parámetros................................................................................................................ 8-15
Tipos de memorias válidas....................................................................................... 8-16
Ejemplos................................................................................................................... 8-16
BPOS (WORD) .............................................................................................................. 8-17
Parámetros................................................................................................................ 8-17

GFK-0467M-SP Contenido ix
Contenido

Tipos de memorias válidas....................................................................................... 8-18


Ejemplo .................................................................................................................... 8-18
MSKCMP (WORD, DWORD) ...................................................................................... 8-19
Parámetros................................................................................................................ 8-20
Tipos de memorias válidas....................................................................................... 8-20
Ejemplo 1 – Instrucción MSKCMP ......................................................................... 8-21
Ejemplo 2 - Detección de fallos con una función de comparación enmascarada .... 8-22

Capitulo 9 Funciones de movimiento de datos ...................................................................... 9-1


MOVE (BIT, INT, WORD, REAL) ................................................................................. 9-2
Parámetros.................................................................................................................. 9-3
Ejemplo 1 - Direcciones de solapamiento (sólo para CPUs 311-341) ...................... 9-4
Ejemplo 2 – para todas las CPUs ............................................................................... 9-4
BLKMOV (INT, WORD, REAL) .................................................................................... 9-5
Parámetros.................................................................................................................. 9-5
Tipos de memorias válidas......................................................................................... 9-6
Ejemplo ...................................................................................................................... 9-6
BLKCLR (WORD)........................................................................................................... 9-7
Parámetros.................................................................................................................. 9-7
Tipos de memorias válidas......................................................................................... 9-7
Ejemplo ...................................................................................................................... 9-7
SHFR (BIT, WORD) ........................................................................................................ 9-8
Parámetros.................................................................................................................. 9-9
Tipos de memorias válidas......................................................................................... 9-9
Ejemplo 1 ................................................................................................................. 9-10
Ejemplo 2 ................................................................................................................. 9-10
BITSEQ (BIT) ............................................................................................................ 9-11
Memoria de bloque de control requerida para un secuenciador de bits ................... 9-12
Parámetros................................................................................................................ 9-13
Tipos de memorias válidas....................................................................................... 9-13
Ejemplo .................................................................................................................... 9-14
COMMREQ.................................................................................................................... 9-15
Bloque de comando.................................................................................................. 9-15
Parámetros................................................................................................................ 9-16
Tipos de memorias válidas....................................................................................... 9-17
Ejemplo .................................................................................................................... 9-17

Capitulo 10 Funciones de tablas.............................................................................................. 10-1


ARRAY_MOVE (mover tabla) (INT, DINT, BIT, BYTE, WORD) ............................. 10-2
Tablas y elementos de datos definidos..................................................................... 10-2
Números de índice ................................................................................................... 10-2
La instrucción mover tabla....................................................................................... 10-2

x PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido

Parámetros................................................................................................................ 10-4
Tipos de memorias válidas....................................................................................... 10-4
Ejemplo 1 ................................................................................................................. 10-5
Ejemplo 2 ................................................................................................................. 10-5
Ejemplo 3 ................................................................................................................. 10-6
Funciones de búsqueda ................................................................................................... 10-7
Parámetros................................................................................................................ 10-8
Tipos de memorias válidas....................................................................................... 10-8
Ejemplo 1 ................................................................................................................. 10-9
Ejemplo 2 ............................................................................................................... 10-10

Capitulo 11 Funciones de conversión ..................................................................................... 11-1


—>BCD-4 (INT) ............................................................................................................ 11-2
Parámetros................................................................................................................ 11-2
Tipos de memorias válidas....................................................................................... 11-2
Ejemplo .................................................................................................................... 11-2
—>INT (BCD-4, REAL)............................................................................................ 11-3
Parámetros................................................................................................................ 11-3
Tipos de memorias válidas....................................................................................... 11-3
Ejemplo 1 – BCD4 a entero .................................................................................... 11-4
Ejemplo 2 – Real a entero ........................................................................................ 11-4
—>DINT (REAL) .......................................................................................................... 11-5
Parámetros................................................................................................................ 11-5
Tipos de memorias válidas....................................................................................... 11-5
Ejemplo .................................................................................................................... 11-6
—>REAL (INT, DINT, BCD-4, WORD) ..................................................................... 11-7
Parámetros................................................................................................................ 11-7
Tipos de memorias válidas....................................................................................... 11-7
Ejemplo 1 - Conversión de entero a real .................................................................. 11-8
Ejemplo 2 – Conversión de entero doble a real ....................................................... 11-8
—>WORD (REAL)........................................................................................................ 11-9
Parámetros................................................................................................................ 11-9
Tipos de memorias válidas....................................................................................... 11-9
Ejemplo – Conversión de real a palabra................................................................. 11-10
TRUN (INT, DINT) ..................................................................................................... 11-11
Parámetros.............................................................................................................. 11-11
Tipos de memorias válidas..................................................................................... 11-11
Ejemplo 1 – Truncar real a entero con bobina de salida para CPU352.................. 11-12
Ejemplo 2 – Truncar real a entero doble con bobina de salida para CPU352........ 11-12

Capitulo 12 Funciones de control............................................................................................ 12-1


CALL (LLAMADA) ...................................................................................................... 12-2

GFK-0467M-SP Contenido xi
Contenido

Ejemplo .................................................................................................................... 12-2


DOIO (EJECUTAR E/S)................................................................................................ 12-3
Parámetros................................................................................................................ 12-4
Tipos de memorias válidas....................................................................................... 12-5
Ejemplo de entrada 1................................................................................................ 12-5
Ejemplo de entrada 2................................................................................................ 12-6
Ejemplo de salida 1 .................................................................................................. 12-6
Ejemplo de salida 2 .................................................................................................. 12-7
Función DO I/O avanzada para las CPUs 331 y posteriores .......................................... 12-8
SER (REGISTRO DE SUCESOS SECUENCIALES) ................................................ 12-10
Parámetros.............................................................................................................. 12-11
Tipos de memorias válidas..................................................................................... 12-12
Bloque de control de función ................................................................................. 12-12
Estados de los datos adicionales de estado............................................................. 12-15
Formato de bloque de datos SER ........................................................................... 12-16
Operación SER....................................................................................................... 12-16
Modos de muestreo ................................................................................................ 12-17
Formatos de marca de hora del activador del bloque de función SER................... 12-20
Ejemplo de SER ..................................................................................................... 12-21
END (FIN).................................................................................................................... 12-26
Ejemplo .................................................................................................................. 12-26
MCRN/MCR (RELÉ DE CONTROL MAESTRO)..................................................... 12-27
Descripción general de MCR y MCRN ................................................................. 12-27
Compatibilidad de la CPU ..................................................................................... 12-28
Anidamiento de MCRN ......................................................................................... 12-28
Operación MCR ..................................................................................................... 12-29
Parámetros.............................................................................................................. 12-29
Diferencias entre MCR/MCRN y JUMP ............................................................... 12-30
Ejemplo 1 ............................................................................................................... 12-31
Ejemplo 2 ............................................................................................................... 12-31
ENDMCRN/ENDMCR (FIN DE RELÉ DE CONTROL MAESTRO)....................... 12-33
Ejemplo .................................................................................................................. 12-33
JUMP (SALTO) ........................................................................................................... 12-34
Ejemplos................................................................................................................. 12-35
LABEL (ETIQUETA) .................................................................................................. 12-36
Ejemplo .................................................................................................................. 12-36
COMMENT (COMENTARIO).................................................................................... 12-37
SVCREQ (PETICIÓN DE SERVICIO) ....................................................................... 12-39
Descripción general de SVC REQ ......................................................................... 12-40
SVCREQ #1: Modificar/leer el temporizador de barrido constante ..................... 12-42
SVCREQ #2: Leer los valores de la ventana ........................................................ 12-45

xii PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido

SVCREQ #3: Modificar el modo de la ventana de comunicaciones del


programador y el valor del temporizador............................................................. 12-47
SVCREQ #4: Modificar el modo de la ventana de comunicaciones del
sistema y el valor del temporizador...................................................................... 12-49
SVCREQ #6: Modificar/leer número de palabras para suma de comprobación.. 12-51
SVCREQ #7: Modificar/leer el reloj calendario ................................................... 12-53
SVCREQ #8: Reinicializar el temporizador watchdog......................................... 12-57
SVCREQ #9: Leer el tiempo de barrido desde el comienzo del barrido............... 12-58
SVCREQ #10: Leer el nombre de carpeta ............................................................ 12-59
SVCREQ #11: Leer ID del PLC ........................................................................... 12-60
SVCREQ #12: Leer el estado Run del PLC.......................................................... 12-61
SVCREQ #13: Parada (Stop) del PLC.................................................................. 12-62
SVCREQ #14: Borrar tablas de fallos .................................................................. 12-63
SVCREQ #15: Leer la última entrada registrada en la tabla de fallos .................. 12-64
SVCREQ #16: Leer el reloj de tiempo transcurrido ............................................. 12-68
SVCREQ #18: Leer el estado de sobrecontrol (override) de E/S ......................... 12-69
SVCREQ #23: Leer la suma de comprobación maestra ....................................... 12-70
SVCREQ #24: Reinicializar el módulo inteligente............................................... 12-71
SVCREQ #26/30: Interrogar E/S .......................................................................... 12-72
SVCREQ #29: Leer tiempo transcurrido con la corriente desconectada .............. 12-73
SVCREQ #45: Saltar la siguiente exploración de entradas y salidas.................... 12-74
SVCREQ #46: Acceso rápido al estado de la placa de fondo............................... 12-75
SVCREQ #48: Reinicializar auto reset tras fallo fatal .......................................... 12-81
SVCREQ #49: Estadística de Auto Reset ............................................................. 12-83
PID................................................................................................................................ 12-84
Parámetros.............................................................................................................. 12-85
Tipos de memorias válidas..................................................................................... 12-85
Bloque de parámetros de PID ................................................................................ 12-86
Funcionamiento de la instrucción PID ................................................................... 12-88

Anexo A Tiempos de ejecución de las instrucciones ......................................................... A-1


Tiempos de ejecución booleana de la CPU............................................................. A-15
Tamaño de las instrucciones para las CPUs 350 - 374 ........................................... A-15

Anexo B Interpretación de las tablas de fallos ...................................................................B-1


Tabla de fallos del PLC ....................................................................................................B-1
Ejemplo ......................................................................................................................B-2
Tabla de fallos de E/S .......................................................................................................B-8

Anexo C Mnemotécnico de las instrucciones..................................................................... C-1

Anexo D Funciones del teclado ........................................................................................... D-1

GFK-0467M-SP Contenido xiii


Contenido

Anexo E Utilización de números de coma flotante.............................................................E-1


Números de coma flotante ......................................................................................... E-1
Terminología de números reales ................................................................................ E-2
Formato interno de números de coma flotante........................................................... E-3
Valores de números de coma flotante ........................................................................ E-4
Introducción y visualización de números de coma flotante ....................................... E-5
Errores en números y operaciones de coma flotante.................................................. E-6

Anexo F Comparación de software de programación.......................................................F-1

xiv PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido

Figura 2-1. Barrido del PLC......................................................................................................................... 2-3


Figura 2-2. Diagrama de flujo de la ventana de comunicaciones del programador ................................... 2-12
Figura 2-3. Diagrama de flujo de la ventana de comunicaciones del sistema............................................ 2-13
Figura 2-4. Comunicaciones del PCM con el PLC .................................................................................... 2-15
Figura 2-5. Secuencia de conexión............................................................................................................. 2-39
Figura 2-6. Diagrama de temporización del contacto bloque de tiempo.................................................... 2-44
Figura 2-7. Estructura de E/S de las Series 90-30 ...................................................................................... 2-48
Figura 2-8. Módulos de E/S de las Series 90-30 ........................................................................................ 2-49
Figura 12-1. Ejemplo de muestreo SER de preactivación (para 512 muestras) ....................................... 12-18
Figura 12-2. Ejemplo de muestreo SER de media activación (para 512 muestras) ................................. 12-19
Figura 12-3. Muestreo SER posactivación (para 512 muestras) ............................................................ 12-19
Figura 12-4. Algoritmo de término independiente (PIDIND).................................................................. 12-93

GFK-0467M-SP Contenido xv
Contenido

Tabla 2-1. Contribución al tiempo de barrido ............................................................................................... 2-4


Tabla 2-2. Contribuciones del tiempo de exploración de E/S (en mseg) para las CPUs 35x,
36x y 37x de las Series 90-30.............................................................................................. 2-6
Tabla 2-3. Contribuciones del tiempo de exploración de E/S (en mseg) para las CPU311
hasta CPU341 de las Series 90-30....................................................................................... 2-8
Tabla 2-4. Referencias de registro............................................................................................................... 2-25
Tabla 2-5. Referencias digitales .................................................................................................................. 2-26
Tabla 2-6. Tipos de datos ............................................................................................................................ 2-29
Tabla 2-7. Referencias de estados del sistema ............................................................................................ 2-31
Tabla 2-8. Módulos de E/S de las Series 90-30 - Continuación.................................................................. 2-50
Tabla 2-8. Módulos de E/S de las Series 90-30 - Continuación.................................................................. 2-51
Tabla 3-1. Resumen de fallos ........................................................................................................................ 3-3
Tabla 3-2. Acciones de los fallos .................................................................................................................. 3-4
Tabla 4-1. Tipos de contactos........................................................................................................................ 4-1
Tabla 4-2. Tipos de bobinas .......................................................................................................................... 4-2
Tabla 12-1. Bloque de control de función para el ejemplo SER ............................................................... 12-22
Tabla 12-2. Contenido de una muestra para el ejemplo de SER ............................................................... 12-24
Tabla 12-3. Bloque de datos para el ejemplo de bloque de control de SER ............................................. 12-24
Tabla 12-4. Funciones de petición de servicio .......................................................................................... 12-39
Tabla 12-5. Bloque de parámetros para la función leer datos adicionales ................................................ 12-76
Tabla 12-6. Bloque de parámetros para la función escribir datos ............................................................. 12-77
Tabla 12-7. Bloque de parámetros para la función leer/escribir datos ...................................................... 12-78
Tabla 12-8. Códigos de error..................................................................................................................... 12-79
Tabla 12-9. Bloque de parámetros para reinicializar tras fallo fatal ......................................................... 12-82
Tabla 12-10. Definiciones del estado de retorno para la reinicialización tras un fallo fatal ..................... 12-82
Tabla 12-11. Bloque de parámetros para la estadística de Auto Reset...................................................... 12-83
Tabla 12-12. Definiciones de estado de retorno para la estadística de Ato Reset ..................................... 12-83
Tabla 12-13. Descripción general de los parámetros PID ......................................................................... 12-86
Tabla 12-13. Descripción general de los parámetros PID - Continuación ................................................ 12-87
Tabla 12-14. Detalles de los parámetros PID............................................................................................ 12-89
Tabla 12-14. Detalles de los parámetros PID - Continuación ................................................................... 12-90
Tabla 12-14. Detalles de los parámetros PID - Continuación ................................................................... 12-91
Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar................................................... A-2
Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar - Continuación.......................... A-3
Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar - Continuación.......................... A-4
Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar - Continuación.......................... A-5

xvi PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Contenido

Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x .................................................. A-6
Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación ......................... A-7
Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación ......................... A-8
Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación ......................... A-9
Tabla A-3. Tiempos de ejecución del bloque de función SER................................................................... A-10
Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x ....................................................... A-11
Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x - Continuación............................... A-12
Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x - Continuación............................... A-13
Tabla A-4. iempos de ejecución de las instrucciones, Modelos 37x - Continuación ................................. A-14
Tabla A-5. Tiempos de ejecución booleana de la CPU.............................................................................. A-15
Tabla B-1. Grupos de fallos del PLC ............................................................................................................B-4
Tabla B-2. Acciones de fallos del PLC .........................................................................................................B-5
Tabla B-3. Códigos de error de alarma para los fallos del software de la CPU del PLC ..............................B-5
Tabla B-4. Códigos de error de alarma para fallos del PLC..........................................................................B-6
Tabla B-5. Datos de fallos del PLC – Detectado código de operaciones booleanas ilegal ...........................B-7
Tabla B-6. Marca de la hora de fallos del PLC .............................................................................................B-7
Tabla B-7. Byte indicador del formato de la tabla de fallos de E/S ..............................................................B-9
Tabla B-8. Dirección de referencia de E/S....................................................................................................B-9
Tabla B-9. Tipo de memoria de la dirección de referencia de E/S................................................................B-9
Tabla B-10. Grupos de fallos de E/S...........................................................................................................B-10
Tabla B-11. Acciones de fallos de E/S........................................................................................................B-11
Tabla B-12. Datos específicos de fallos de E/S...........................................................................................B-11
Tabla B-13. Marca de la hora de fallos de E/S............................................................................................B-12
Tabla E-1. Caso general de flujo de energía para operaciones matemáticas de coma flotante ..................... E-8

GFK-0467M-SP Contenido xvii


Capítulo Introducción
1

Los PLCs de las Series 90-30, 90-20 y Micro son miembros de la familia de las Series 90 de
controladores lógicos programables (PLCs) de GE Fanuc. Son fáciles de instalar y de configurar,
ofrecen funciones de programación avanzadas y son compatibles con los PLCs de las Series 90-70.

Los PLCs 341 e inferiores de las Series 90-30 y el PLC de las Series 90-20 utilizan un
microprocesador 80188. Los PLCs 35x y 36x de las Series 90-30 utilizan un microprocesador
80386EX. El PLC 37x de las Series 90-30 utiliza un microprocesador 586. El PLC de la Serie 90
Micro utiliza un microprocesador H8. La operación incluye la ejecución de programas y tareas
internas, tales como diagnóstico de rutinas, exploraciones de entrada/salida y procesamiento de
alarmas. El firmware del sistema contiene también rutinas para la comunicación con el
programador. Estas rutinas permiten la carga y descarga de los programas de aplicación, retorno
de la información del estado y el control del PLC.

En las Series 90-30 de PLCs, el programa de aplicación (lógica del usuario) que controla el
proceso final al que se aplica el PLC, es controlado por un Coprocesador Secuencial de
Instrucciones (ISCP). El ISCP es implementado mediante hardware en el Modelo 313 y superiores
y mediante software en los sistemas del Modelo 311, y del PLC Micro. El microprocesador y el
ISCP basado en hardware pueden ejecutarse simultáneamente, permitiendo al microprocesador
servir a las comunicaciones mientras que el ISCP está ejecutando el grueso del programa de
aplicación; sin embargo, el microprocesador debe ejecutar los bloques de funciones no booleanas.

Los fallos se producen en los PLCs de las Series 90-30, Series 90-20 y Micro cuando se dan ciertas
condiciones o anomalías que afectan a la operación y a las prestaciones del sistema. Estas
condiciones pueden afectar a la capacidad del PLC para controlar una máquina o un proceso.
Otras condiciones pueden producir solamente un aviso de alarma, como una señal de batería baja,
para indicar que la tensión de la pila que protege la memoria está baja y debe ser sustituida. La
condición o avería se denomina fallo.
Los fallos son tratados por una función de procesamiento de alarmas del software que los registra
en la tabla de fallos del PLC o en la tabla de fallos de E/S. (Las CPUs del Modelo 331 y superiores
marcan también los fallos con la hora en que se producen.) Dichas tablas pueden visualizarse en
las pantallas Tabla de fallos del PLC y Tabla de fallos de E/S en el software Logicmaster 90-
30/20/Micro utilizando las funciones de control y de estado.

GFK-0467M-SP 1-1
1

Nota
Las operaciones de coma flotante sólo son soportadas en las CPUs de las series
35x y 36x versión 9 o posterior, y en todas las versiones de las CPU352 y
CPU374.

La CPU364 (versión 9.10 o posterior) y la CPU374 son las únicas CPUs de las
Series 90-30 que soportan los Datos Globales de Ethernet (EGD).

La Serie 90-20 de PLCs proporciona una plataforma rentable para aplicaciones de contador de E/S
inferiores. Los objetivos principales de los PLCs de las Series 90-20 son los siguientes:
• Proporcionar un PLC pequeño que sea fácil de usar, instalar, actualizar y mantener.
• Proporcionar un PLC rentable compatible dentro de la familia.
• Proporcionar una integración de sistema más fácil mediante protocolos y equipos (hardware)
de comunicación estándar.
La Serie 90 Micro de PLC también proporciona una plataforma rentable para aplicaciones de
contador de E/S más bajas. Los objetivos primarios de los PLCs Micro son los mismos que los de
las Series 90-20. Además, el Micro ofrece lo siguiente:
• El PLC Micro tiene la CPU, fuente de alimentación y las entradas y salidas incorporadas todas
en un dispositivo compacto.
• La mayoría de los modelos dispone de un contador de alta velocidad.
• Debido a que la CPU, la fuente de alimentación y las entradas y salidas, están todas
incorporadas en un dispositivo, resulta muy fácil de configurar.

Nota
Para información adicional consulte los anexos al final de este manual.

• El Anexo A lista los tamaños de memoria en bytes y el tiempo de ejecución


en microsegundos para cada una de las instrucciones de programación.

• El Anexo B describe cómo interpretar el formato de la estructura de


mensajes al leer las tablas de fallos del PLC y de E/S.

• El Anexo C lista los mnemónicos de instrucciones para buscar o editar un


programa.

• El Anexo D lista las asignaciones especiales del teclado usadas con el


software Logicmaster 90-30/20/Micro.

• El Anexo E describe cómo utilizar las operaciones matemáticas de coma


flotante.

1-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
1

Nota para los usuarios del software de programación del PLC basado en
Windows
Este manual ha sido escrito para los usuarios de Logicmaster (software de programación del PLC
basado en DOS). Los productos de software de PLC basados en Windows, tales como
CIMPLICITY® Machine Edition Logic Developer y VersaPro®, proporcionan la información del
juego de instrucciones del PLC en el sistema de ayuda en línea integrado en el software, en lugar
de hacerlo en un manual. Los usuarios del software de programación basado en Windows deberán
tener en cuenta que las instrucciones aparecen de modo diferente a como aparecen en una pantalla
Logicmaster (aunque operan del mismo modo en el PLC). El sistema de ayuda en línea dispone de
la más precisa información sobre el uso del juego de instrucciones en el software de programación
basado en Windows. En el Anexo F encontrará un resumen de las principales diferencias entre los
dos tipos de software.

GFK-0467M-SP Capítulo 1 Introducción 1-3


Capítulo Operación del sistema
2

Este capítulo describe determinadas operaciones de los sistemas de PLC de las Series 90-30, 90-20
y Micro. Estas operaciones del sistema incluyen:
• Un resumen de las secuencias del barrido del PLC (Sección 1) ..............................2-2
• Organización del programa y datos/referencias del usuario (Sección 2) ...............2-21
• Secuencias de conexión y desconexión de la alimentación (Sección 3) ................2-38
• Relojes y temporizadores (Sección 4)....................................................................2-42
• Seguridad del sistema mediante la asignación de una contraseña (Sección 5) ......2-45
• Módulos de E/S de las Series 90-30 (Sección 6) ...................................................2-48

GFK-0467M-SP 2-1
2

Sección 1: Resumen del barrido del PLC

El programa lógico de los PLCs de las Series 90-30, 90-20 y Micro se ejecuta de modo repetitivo
hasta que es interrumpido por un comando procedente del programador o de otro dispositivo. La
secuencia de operaciones necesaria para ejecutar un programa una vez se denomina barrido.
Además de ejecutar el programa lógico, el barrido incluye la obtención de datos procedentes de los
dispositivos de entrada, el envío de datos a los dispositivos de salida, la ejecución de las tareas
internas, el servicio del programador y otras comunicaciones.
Los PLCs de las Series 90-30, 90-20 y Micro operan normalmente en modo BARRIDO DE
PROGRAMA ESTÁNDAR. Otros modos operativos incluyen el modo PARADA CON E/S
DESHABILITADAS, PARADA CON E/S HABILITADAS, y el modo BARRIDO
CONSTANTE. Cada uno de estos modos, descritos en este capítulo, está controlado por sucesos
externos y por la configuración de la aplicación. El PLC toma la decisión considerando su modo de
operación al comienzo de cada barrido.

Barrido de programa estándar


El modo de BARRIDO DE PROGRAMA ESTÁNDAR se ejecuta normalmente en todas las
condiciones. La CPU funciona ejecutando un programa de aplicación, actualizando las E/S y
efectuando las comunicaciones y otras tareas. Esto tiene lugar en un ciclo repetitivo llamado
barrido de la CPU. La secuencia de ejecución del barrido de programa estándar consta de siete
partes:
1. Tareas internas de comienzo de barrido
2. Exploración de entradas (leer entradas)
3. Solución lógica del programa de aplicación
4. Exploración de salidas (actualizar salidas)
5. Comunicaciones del programador
6. Comunicaciones del sistema
7 Diagnóstico

2-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Todos estos pasos se ejecutan en cada barrido. Aunque la ventana de comunicaciones del
programador se abre en cada barrido, el servicio del programador sólo tiene lugar si se ha
detectado un fallo en una tarjeta o si el dispositivo programador emite una petición de servicio; es
decir, la ventana de comunicaciones del programador comprueba primeramente si existe alguna
tarea a realizar, y en caso negativo sale. En la siguiente figura se muestra la secuencia del barrido
de programa estándar.

a43064A

INICIO DE BARRIDO
TAREAS INTERNAS TAREAS INTERNAS

E/S
HABILITADAS NO
?

SI
EXPLORACION DATOS
DE ENTRADAS DE ENTRADA

MODO
NO
RUN
?

SI
SOLUCION DE TIEMPO DE
EJECUCIÓN EXPLORACIÓN
LOGICA
DEL PROGRAMA DEL
PLC

E/S
HABILITADAS NO
?

SI DATOS
EXPLORACION DE SALIDA
DE SALIDAS

COMUNICACIONES
COMUNICACIONES DEL
PROGRAMADOR PROGRAMADOR

COMUNICACIONES COMUNICACIONES
SISTEMA DEL SISTEMA

RECONFIGURACION
PROGR. USUARIO
CALCULO DE
SUMA COMPROB. CALCULO DE LA
INICIAR EL SUMA DE
SIGUIENTE BARRIDO COMPROBACION

Figura 2-1. Barrido del PLC

GFK-0467M-SP Capítulo 2 Operación del sistema 2-3


2

Según se muestra en la secuencia de barrido del PLC, en cada barrido se incluyen varios
elementos. Estos contribuyen al tiempo total de barrido, como se muestra en la siguiente tabla.

Tabla 2-1. Contribución al tiempo de barrido


Elemento del Contribución en tiempo (milisegundos) 4
Descripción
barrido Micro 211 311/313 331 34x 35x/36x 37x
• Calcular el tiempo de barrido
• Programar el comienzo del
siguiente barrido
• Determinar el modo del
siguiente barrido
Tareas internas 0.368 0.898 0.714 0.705 0.424 0.279 0.027
• Actualizar las tablas de
referencias de fallos
• Reinicializar el temporizador
watchdog

Los datos de entrada se reciben de Véanse las Tablas 2-2 y 2-3 para las contribuciones de los
Entrada de datos Nota 5
los módulos opcionales y de entrada tiempos de exploración
El tiempo de ejecución depende de la longitud del programa y del tipo
Ejecución de
Se ejecuta la lógica del usuario de instrucciones usadas en el mismo. Los tiempos de ejecución de las
programa
instrucciones están listados en el Anexo A.
Los datos de salida se envían a los Véanse las Tablas 2-2 y 2-3 para las contribuciones de los
Salida de datos 1.656
módulos de salida y opcionales tiempos de exploración
Se procesan las HHP 1.93 6.526 4.426 4.524 2.476 0.334 N/D
peticiones de
Programador 0.380 3.536 2.383 2.454 1.248 0.517 0.026
servicio
Comunicaciones
procedentes de los
del programador
dispositivos de
y del sistema
programación y de PCM2 N/D N/D N/D 3.337 1.943 0.482 0.029
los módulos
inteligentes 1
Se supervisan los slots con módulos
Reconfiguración N/D6 N/D 0.458 0.639 0.463 0.319 0.243
defectuosos y los slots vacíos
Verifica la integridad del programa
del usuario (la contribución en
Diagnóstico tiempo es el tiempo requerido por N/D7 0.083 0.050 0.048 0.031 0.010 0.022
palabra sumada y comprobada en
cada barrido) 3

2-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

1. La contribución en tiempo de la exploración del servicio de un dispositivo externo depende del modo de la ventana de
comunicaciones en la que se procesa el servicio. Si la ventana está en modo LIMITADO (LIMITED), se consumirá un
máximo de 8 milisegundos para las CPUs 311, 313, 323 y 331, y 6 milisegundos para la CPU 340 y superiores durante
esa ventana. Si la ventana está en modo EJECUTAR HASTA TERMINAR (RUN-TO-COMPLETION), se consumirá
un máximo de 50 milisegundos con esta ventana, dependiendo del número de peticiones que se presenten
simultáneamente.
2. Estas medidas fueron tomadas con el PCM físicamente presente pero no configurado y sin ninguna tarea de aplicación
ejecutándose en el PCM.
3. El número de palabras sumadas por comprobación en cada barrido puede cambiarse con el bloque de función
SVCREQ.
4. Estas medidas fueron tomadas con un programa vacío y la configuración por defecto. Los PLCs de las Series 90-30
estaban en un rack de 10 slots vacío, sin racks de expansión conectados. De igual modo, los tiempos de esta tabla
presuponen que no existe ninguna subrutina periódica activa; los tiempos serían mayores en caso de existir una
subrutina periódica activa.
5. El tiempo de entrada de datos para el PLC Micro puede determinarse del siguiente modo: 0.365ms (exploración fija) +
0.036ms (tiempo de filtro) x (tiempo total de barrido) / 0.5ms.
6. Dado que el PLC Micro tiene un grupo estático de E/S, la reconfiguración no es necesaria.
7. Dado que el programa del usuario para el PLC Micro está en memoria Flash, no se comprobará su integridad.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-5


2

Tabla 2-2. Contribuciones del tiempo de exploración de E/S (en mseg) para las CPUs 35x, 36x y 37x de
las Series 90-30
CPUs de las series 35x y 36x CPUs de las series 37x
Tipo de módulo
Rack Rack de Rack Rack Rack de Rack
principal expansión remoto principal expansión remoto
Entrada digital de 8 puntos .030 .055 .206 .030 .055 .206
Entrada digital de 16 puntos .030 .055 .206 .030 .055 .206
Entrada digital de 32 puntos .043 .073 .269 .048 .075 .272
Salida digital de 8 puntos .030 .053 .197 .024 .052 .198
Salida digital de 16 puntos .030 .053 .197 .030 .052 .199
Salida digital de 32 puntos .042 .070 .259 .047 .069 .258
Combinación de entradas/salidas digitales .060 .112 .405 .052 .110 .408
Entrada analógica de 4 canales .075 .105 .396 .085 .109 .403
Salida analógica de 2 canales .058 .114 .402 .046 .101 .393
Entrada analógica de 16 canales .978 1.446 3.999 .423 .700 1.741
(intensidad o tensión)
Salida analógica de 8 canales 1.274 1.988 4.472 .873 1.492 3.635
Combinación de entradas/salidas 1.220 1.999 4.338 .862 1.487 4.103
analógicas
Contador de alta velocidad 1.381 2.106 5.221 1.142 1.808 5.234
Procesador de E/S 1.574 2.402 6.388 1.270 2.125 6.269
Interfaz Ethernet (sin conexión) .7129 2.067 3.681 .426 .795 2.302
Power Mate APM (1 eje) 1.527 2.581 6.388 1.236 2.073 6.032
Power Mate APM (2 eje) 1.807 2.864 7.805 1.539 2.439 7.369
DSM 302 * 40 AI, 6 AQ 2.143 3.315 9.527 1.801 2.963 9.275
50 AI, 9 AQ 2.427 3.732 11.092 2.075 3.373 10.840
64 AI, 12 AQ 2.864 4.317 13.138 2.441 3.931 12.881
DSM314 * 1 eje configurado 1.6 2.6 6.9 1.330 2.337 6.905
2 ejes configurados 2.2 3.8 9.9 1.888 3.148 9.917
3 ejes configurados 2.8 4.3 13.0 2.421 3.953 12.929
4 ejes configurados 3.3 5.2 15.9 2.969 4.761 15.982

GCM 8 dispositivos de 32 bits 8.826 16.932 21.179 7.386 9.520 20.591


GCM+ sin dispositivos .567 .866 1.830 .457 .759 1.743
32 dispositivos de 64 19.497 25.588 80.871 17.036 24.390 80.044
palabras
GBC sin dispositivos .798 1.202 2.540 .544 .908 2.209
16 dispositivos de 64 29.976 40.570 131.702 26.976 38.564 130.639
palabras
PCM 311 no configurado, o sin .476 N/D N/D .195 N/D N/D
tarea de aplicación
ejecutando un programa 1.746 N/D N/D .538 N/D N/D
de aplicación de 20Kb
ADC (sin tarea) .476 N/D N/D .193 N/D N/D
I/O Link sin dispositivos .569 .865 1.932 .996 1.618 3.749
maestro 16 dispositivos de 64 4.948 7.003 19.908 5.924 8.240 26.637
puntos
I/O Link 32 puntos .087 .146 .553 .095 .149 .540
esclavo 64 puntos .154 .213 .789 .165 .219 .803

2-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

* Para aplicaciones en las que las contribuciones al tiempo de exploración de DSM afecten al
funcionamiento de la máquina, podría tener que utilizar el bloque de función Do I/O y las
peticiones de servicio Suspender E/S y Acceso al estado de la placa de fondo rápida para transferir
los datos necesarios hacia y desde el módulo de movimiento sin obtener todos los datos en cada
exploración. Para detalles acerca del DSM302, consulte el Motion Mate DSM302 para PLCs de las
Series 90-30 Manual del usuario, GFK1464. Para detalles acerca del DSM314, consulte el Motion
Mate DSM314 para PLCs de las Series 90-30 Manual del usuario, GFK1742. Nota: El DSM314
sólo operará con las CPUs 350, 352, 360, 363, 364 y 374 y sólo con firmware de CPU versión
10.00 o posterior.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-7


2

Tabla 2-3. Contribuciones del tiempo de exploración de E/S (en mseg) para las CPU311 hasta CPU341
de las Series 90-30
Modelo de CPU
Tipo de módulo 331 340/341
311/313 Rack Rack de Rack Rack Rack de Rack
/323 principal expansión remoto principal expansión remoto
Entrada digital de 8 puntos .076 .054 .095 .255 .048 .089 .249
Entrada digital de 16 puntos .075 .055 .097 .257 .048 .091 .250
Entrada digital de 32 puntos .094 .094 .126 .335 .073 .115 .321
Salida digital de 8 puntos .084 .059 .097 .252 .053 .090 .246
Salida digital de 16 puntos .083 .061 .097 .253 .054 .090 .248
Salida digital de 32 puntos .109 .075 .129 .333 .079 .114 .320
Combinación de e/s de 8 puntos .165 .141 .218 .529 .098 .176 .489
Entrada analógica de 4 canales .151 .132 .183 .490 .117 .160 .462
Salida analógica de 2 canales .161 .138 .182 .428 .099 .148 .392
Contador de alta velocidad 2.070 2.190 2.868 5.587 1.580 2.175 4.897
Power Mate APM (1 eje) 2.330 2.460 3.175 6.647 1.750 2.506 5.899
Power Mate APM (2 ejes) 3.181 3.647 4.497 9.303 2.154 3.097 7.729
DSM 302 * 40 AI, 6 AQ 3.613 4.081 5.239 11.430 2.552 3.648 9.697
50 AI, 9 AQ 4.127 4.611 5.899 13.310 2.911 4.170 11.406
64 AI, 12 AQ 4.715 5.276 6.759 15.747 3.354 4.840 13.615
GCM sin dispositivos .041 .054 .063 .128 .038 .048 .085
8 disp. de 64 ptos. 11.420 11.570 13.247 21.288 9.536 10.648 19.485
GCM+ sin dispositivos .887 .967 1.164 1.920 .666 .901 1.626
32 disp. de 64 pts. 4.120 6.250 8.529 21.352 5.043 7.146 20.052
PCM 311 no configurado, o N/D 3.350 N/D N/D 1.684 N/D N/D
sin tarea de aplic.
leer 128 %R tan N/D 4.900 N/D N/D 2.052 N/D N/D
rápido como sea
posible
ADC 311 N/D 3.340 N/D N/D 1.678 N/D N/D
Entrada analógica de 16 canales 1.370 1.450 1.937 4.186 1.092 1.570 3.796
(intensidad o tensión)
I/O Link sin dispositivos 1.910 2.030 1.169 1.925 .678 .904 1.628
maestro 16 dispositivos de 6.020 6.170 8.399 21.291 4.992 6.985 20.010
64 puntos
I/O Link 32 puntos .206 .222 .289 .689 .146 .226 .636
esclavo 64 puntos .331 .350 .409 1.009 .244 .321 .926
* Para aplicaciones en las que las contribuciones al tiempo de exploración de DSM
afecten al funcionamiento de la máquina, podría tener que utilizar el bloque de función
Do I/O y las peticiones de servicio Suspender E/S y Acceso al estado de la placa d
fondo rápida para transferir los datos necesarios hacia y desde el módulo de
movimiento sin obtener todos los datos en cada exploración. Para detalles acerca del
DSM302, consulte el Motion Mate DSM302 para PLCs de las Series 90-30 Manual del
usuario, GFK1464. Nota:El DSM314 no es soportado por las CPUs 311 hasta 341.

2-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Cálculo del tiempo de barrido


La Tabla 2-1 lista los siete elementos que contribuyen al tiempo de barrido del PLC. El tiempo de
barrido consta de tiempos fijos (tareas internas y diagnóstico) y tiempos variables. Los tiempos
variables varían de acuerdo a la configuración de las E/S, al tamaño del programa de usuario y al
tipo de dispositivo de programación conectado al PLC.

Ejemplo de cálculo del tiempo de barrido


En la siguiente tabla se muestra un ejemplo de los cálculos para determinar el tiempo de barrido
para un PLC modelo 331 de las Series 90-30.
A continuación se listan los módulos e instrucciones usados para dichos cálculos:
• Módulos de entrada: Cinco módulos de entrada de 16 puntos Series 90-30.
• Módulos de salida: Cuatro módulos de salida de 16 puntos Series 90-30.
• Instrucciones de programación: Un programa de 1200 pasos consistente en 700 instrucciones
booleanas (LD, AND, OR, etc.), 300 bobinas de salida (OUT, OUTM, etc.) y 200 funciones
matemáticas (ADD, SUB, etc.).

Contribución en tiempo
Componente
Cálculo Sin Con HHP Con
del barrido
programador Logicmaster

Tareas internas 0.705ms 0.705ms 0.705ms 0.705ms

Entrada de datos 0.055 x 5 = 0.275ms 0.275ms 0.275ms 0.275ms

Ejecución del 1000 x 0.4µs* + 200 x 89µs** + 18.2ms 18.2ms 18.2ms 18.2ms
programa

Salida de datos 0.061 x 4 = 0.244ms 0.244ms 0.244ms 0.244ms

Servicio del 0.4ms + tiempo del programador + 0.6ms 0ms 4.524ms 2.454ms
programador

Servicio distinto Ninguno en este ejemplo 0ms 0ms 0ms


del programador

Reconfiguración 0.639ms 0.639ms 0.639ms 0.639ms

Diagnóstico 0.048ms 0.048ms 0.048ms 0.048ms

Tiempo de Tareas internas + Entrada de datos + 12.611ms 17.135ms 15.065ms


barrido del PLC Ejecución del programa + Salida de datos
+ Servicio del programador + Servicio
distinto del programador + Diagnóstico

GFK-0467M-SP Capítulo 2 Operación del sistema 2-9


2

Detalles del barrido del PLC


En esta sección se exponen los detalles de las partes principales del barrido del PLC:
1. Tareas internas
2. Exploración de entradas
3. Ejecución de la lógica del programa de aplicación
4. Exploración de salidas
5. Servicio del programador
6. Comunicaciones del sistema
7. Reconfiguración
8. Calculo de la suma de comprobación

1. Tareas internas
La parte de tareas internas del barrido realiza todas las tareas necesarias para preparar el comienzo
del mismo. Si el PLC está en el modo BARRIDO CONSTANTE, el barrido se retarda hasta que
transcurra el tiempo de barrido necesario. Si ya ha transcurrido el tiempo necesario, se activa el
contacto OV_SWP %SA0002, y el barrido continúa sin retardo. Después, los valores del
temporizador (centésimas, décimas y segundos) son actualizados calculando la diferencia desde el
comienzo del barrido anterior y el tiempo del nuevo barrido. Con objeto de no perder precisión, el
comienzo real del barrido se registra en incrementos de 100 microsegundos. Cada temporizador
tiene un campo residual que contiene el número de incrementos de 100 microsegundos que han
transcurrido desde la última vez que se incrementó el valor del temporizador.

2. Exploración de entradas
La exploración de las entradas se produce durante la parte de la exploración de entradas del
barrido, justo antes de la solución lógica. Durante esta parte del barrido, todos los módulos de
entrada de las Series 90-30 son explorados y sus datos almacenados en la memoria %I (entradas
digitales) o %AI (entradas analógicas), según corresponda. Los datos de entrada globales recibidos
por un módulo de comunicaciones Genius (GCM), un módulo de comunicaciones ampliado Genius
(GCM+) o un controlador de bus Genius (GBC) son almacenados en la memoria %G.
Los módulos son explorados por orden de dirección de referencia ascendente, comenzando por
cualquier módulo Genius instalado, después los módulos de entrada digitales, y por último los
módulos de entradas analógicas.
Si la CPU está en el modo STOP y está configurada para no explorar las E/S en el modo STOP, se
salta la exploración de las entradas.

3. Solución o exploración de la lógica del programa de aplicación


La exploración de la lógica del programa de aplicación tiene lugar inmediatamente después de
finalizar la exploración de las entradas. La exploración de la lógica del programa de aplicación

2-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

realiza dos tareas principales: (1) solución/ejecución de la lógica del programa y (2) actualización
de las memorias de salida %Q, %AI y %AQ. (Los módulos de salida, sin embargo, no se actualizan
hasta que no se produce la exploración de las salidas). En general, la lógica de contactos se
soluciona de izquierda a derecha y de arriba a abajo, aunque esta dirección puede ser
temporalmente modificada por llamadas de subrutinas o saltos. La solución de la lógica finaliza
cuando aparece la instrucción END o cuando se alcanza la instrucción por defecto END OF
PROGRAM LOGIC.
Las CPUs 313 y superiores disponen de un coprocesador de secuencias de instrucciones (ISCP)
que ejecuta las instrucciones booleanas, y un microprocesador 80C188,80386 o AMD SC 520
ejecuta el temporizador, contador y los bloques de funciones. En las CPUs Modelo 311 y 90-20 , el
80C188 ejecuta todas las instrucciones de temporizador, contador y bloques de funciones. En el
Micro, el procesador H8 ejecuta todos los bloques booleanos y de funciones.
En el Anexo A se encuentra una lista de los tiempos de ejecución para cada función de
programación.

4. Exploración de salidas
Las salidas se exploran durante la fase de exploración de salidas del barrido, a continuación de la
solución de la lógica. Las salidas se actualizan usando los datos procedentes de la memoria %Q
(para salidas digitales) y %AQ (para salidas analógicas), según corresponda. Si dispone de un
módulo de comunicaciones Genius o un controlador de bus Genius configurado para transmitir
datos globales, entonces los datos procedentes de la memoria %G se envían al GCM, GCM+ o
GBC. Las exploraciones de salidas de las Series 90-20 y Micro incluyen sólo salidas digitales.
Durante la exploración de salidas, todos los módulos de salida de las Series 90-30 se exploran en
orden de dirección de referencia ascendente. La exploración de salidas finaliza cuando todos los
datos de salida se han enviado a todos los módulos de salida de las Series 90-30.
Si la CPU está en el modo STOP y el parámetro IPScan-Stop de la pantalla de configuración de la
CPU se ha configurado como NO, la exploración de salidas se salta.

Precaución
Si el parámetro IPScan-Stop de la pantalla de configuración de la CPU se ha
configurado como YES, las salidas de palabra real pueden activarse (ON)
incluso aunque el PLC esté en modo STOP, ya que el PLC escribirá los
valores actuales de las tablas de salida en los módulos de salida durante la
exploración de salidas.

5. Ventana de comunicaciones del programador

Esta fase del barrido esta dedicada a la comunicación con el programador. Si hay un programador
acoplado, la CPU ejecuta la ventana de comunicaciones del programador. La ventana de
comunicaciones del programador no se ejecutará si no existe un programador acoplado, ni módulo
para configurar en el sistema. En cada barrido sólo se configura un módulo.
Se proporciona soporte para el programador portátil y para otros programadores que se puedan
conectar al puerto serie y utilicen el protocolo Series Ninety Protocol (SNP). También se
proporciona soporte para las comunicaciones con módulos opcionales inteligentes.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-11


2

Modos de la ventana de comunicaciones del programador


• Modo limitado. En el modo por defecto de ventana limitada, la CPU realiza una operación
para cada barrido del programador, es decir, satisface una petición de servicio o respuesta al
pulsar una tecla. Si el programador hace una petición que requiera un proceso de más de 6 (u
8 dependiendo de la CPU—véase Nota) milisegundos, el procesamiento de la petición se
reparte en varios barridos de modo que ninguno de ellos sobrepase los 6 (u 8 dependiendo de
la CPU—véase Nota) milisegundos.

Nota
El límite de tiempo para la ventana de comunicaciones es de 6 milisegundos para
las CPUs 340 y superiores y de 8 milisegundos para los modelos 311, 313, 323 y
331.

• Modo terminar. En el modo terminar, la CPU lleva a cabo comunicaciones con el


programador hasta que éstas finalizan o hasta que han transcurrido 50 milisegundos.
La siguiente figura es un diagrama de flujo de la fase del barrido correspondiente a las
comunicaciones del programador .

INICIO a45659

PROGRAMADOR
PROGRAMADOR ESTADO PORTÁTIL
ACOPLADO ACOPLADO ACOPLADO
PROGRAMADOR

ESTADO ESTADO
ANTERIOR NO ANTERIOR ACOPLADO
ACOPLADO ACOPLADO
? NO ?
ACOPLADO
NO PETICIÓN TECLA NO
PROGRAMADOR ABANDONAR AJUSTE PARA PULSADA
OPERACIÓN PROGRAMADOR ?
? EN PROCESO PORTÁTIL
SI SI
PETICIÓN DE PROCESO AJUSTE PARA ENVIAR TECLA DEL PROCESO
PROTOCOLO PANTALLA
SERIES 90 INICIAL
ENVIAR NUEVA PANTALLA

STOP

Figura 2-2. Diagrama de flujo de la ventana de comunicaciones del programador

2-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

6. Ventana de comunicaciones del sistema (Modelos 331 y superiores)

Esta es la parte del barrido donde se procesan las peticiones de comunicaciones procedentes de los
módulos opcionales inteligentes, tales como PCM o DSM (véase el diagrama de flujo). El servicio
a las peticiones se efectúa en base al orden de llegada. Sin embargo, ya que los módulos opcionales
inteligentes se muestrean de una manera circular ningún módulo opcional inteligente tiene
prioridad sobre ningún otro.
En el modo por defecto Ejecutar hasta terminar, la longitud de la ventana de
comunicaciones está limitada a 50 milisegundos. Si un módulo opcional inteligente efectúa una
petición que requiere más de 50 milisegundos de proceso, la petición se reparte en varios barridos
de modo que ninguno de ellos quede afectado en más de 50 milisegundos.
a43066
INICIO

HAY
NO
PETICIONES
EN FILA
?

SI

RETIRAR PETICIÓN FILA

PROCESAR LA PETICIÓN

NO TIEMPO LIMITE
TEMPORIZADOR
VENTANA
?

SI

MUESTREO NO
PARADO
?
SI

REINICIAR MUESTREO

STOP

Figura 2-3. Diagrama de flujo de la ventana de comunicaciones del sistema

GFK-0467M-SP Capítulo 2 Operación del sistema 2-13


2

7. Reconfiguración
Durante esta parte del barrido, la CPU comprueba la alineación actual del hardware con respecto a
la alineación de hardware configurada. Slots que está configurados para un módulo pero que se
encuentran físicamente vacíos, o slots que contienen módulos defectuosos, no serán explorados por
la CPU (es decir, la CPU no leerá ningún dato de los mismos, ni enviará ningún dato de salida a
dichos módulos o slots). Durante la reconfiguración, si la CPU detecta que un slot donde
previamente se había identificado un módulo defectuoso, contiene ahora un módulo correcto, o que
un módulo configurado se ha añadido físicamente al PLC, comenzará a explorar dicho módulo.
La reconfiguración permite a la CPU realizar lo siguiente:
• Reconocer un cambio autorizado que se haya realizado en la configuración.
• Ignorar datos de entrada potencialmente corrompidos o inexactos procedentes de módulos
defectuosos o ausentes.
• Evitar el envío de datos de salida que pudieran corromperse a causa de un módulo de salida
defectuoso.

8. Cálculo de la suma de comprobación


En el programa del usuario se ejecuta un cálculo de la suma de comprobación al final de cada
barrido. Dado que llevaría demasiado tiempo calcular la suma de comprobación del programa
completo, se puede especificar el número de palabras de 0 a 32 para que se efectúe la suma de
comprobación en la pantalla de configuración de la CPU.
Si la suma de comprobación calculada no coincide con la suma de comprobación de referencia, se
activa el indicador (flag) de excepción por fallo de suma de comprobación del programa. Esto
provoca que se introduzca una entrada de fallo en la tabla de fallos del PLC y que el modo del PLC
cambie a STOP. Si falla el cálculo de la suma de comprobación, no se ve afectada la ventana de
comunicaciones del programador. El número de palabras por defecto para la suma de
comprobación es 8.

2-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Comunicaciones del PCM con el PLC (Modelos 331 y superiores)

No hay manera de que los módulos opcionales inteligentes (IOM), tales como el PCM,
interrumpan la CPU cuando necesitan servicio. La CPU debe efectuar el muestreo (comprobación
periódica) de cada módulo opcional inteligente relativo a peticiones de servicio. Este muestreo
tiene lugar asíncronamente de modo no visible durante el barrido (véase el diagrama de flujo
inferior).
Cuando se efectúa el muestreo de un módulo opcional inteligente y se envía una petición de
servicio a la CPU, la petición es colocada a la espera para su procesamiento durante la ventana de
comunicaciones del sistema.

a43067
INICIO

TODOS
IOMS SI
EXPLORADOS
?

NO

EXPLORAR PRÓX. IOM STOP MUESTREO

NO PETICIÓN
RECIBIDA
?

SI

PETICIÓN A FILA

Figura 2-4. Comunicaciones del PCM con el PLC

GFK-0467M-SP Capítulo 2 Operación del sistema 2-15


2

Comunicaciones del módulo servo digital (DSM) con el PLC


El DSM302 y DSM314 son módulos opcionales inteligentes que operan asíncronamente con el
módulo de CPU de las Series 90-30. Los datos se intercambian automáticamente entre la CPU y un
DSM a través de la memoria %Q, %I, %AQ y %AI. Una CPU del PLC requiere tiempo para leer y
escribir los datos intercambiados a través de la placa posterior del PLC con el módulo DSM. La
Tabla 2-2 lista el impacto de barrido para las diferentes configuraciones de DSM posibles. Para
consideraciones de temporización adicionales relacionadas con los módulos DSM, consulte los
siguientes manuales:
• Motion Mate™ DSM302 para PLCs de las Series 90™-30 Manual del usuario GFK-1464
• Motion Mate™ DSM314 para PLCs de las Series 90™-30 Manual del usuario GFK-1742

Variaciones del barrido de programa estándar


Además de la ejecución normal del barrido del programa estándar, pueden encontrarse o forzarse
ciertas variaciones. Estas variaciones, descritas en los párrafos siguientes, pueden visualizarse y/o
cambiarse desde el software de programación.

Modo de tiempo de barrido constante


En el barrido del programa estándar, cada barrido se ejecuta tan rápidamente como sea posible con
una cantidad de tiempo variable consumido en cada barrido. Una alternativa a esto es el modo
TIEMPO DE BARRIDO CONSTANTE, donde cada barrido consume la misma cantidad de
tiempo. Esto se puede realizar seleccionando el modo de barrido constante configurado, que se
convertirá entonces en el modo de barrido por defecto, efectuándose de ese modo cada vez que el
PLC pase del modo STOP al modo RUN. Se puede configurar un valor de TIEMPO DE
BARRIDO CONSTANTE entre 5 y 200 milisegundos para las CPUs 311-341 o entre 5 y 500
milisegundos para las CPUs 350-364 y 374.
Debido a las variaciones en el tiempo requerido para las distintas partes del barrido del PLC, el
tiempo de barrido constante debe ajustarse por lo menos 10 milisegundos por encima del tiempo de
barrido indicado en la línea de estado cuando el PLC está en el modo BARRIDO NORMAL. Esto
evita que ocurran fallos de sobrebarridos extraños.
Use el modo TIEMPO DE BARRIDO CONSTANTE cuando los puntos de E/S o los valores
registrados deben explorarse a una frecuencia constante, tal como los algoritmos de control. Otra
razón podría ser el asegurar que transcurra una cierta cantidad de tiempo entre la exploración de las
salidas y la exploración de las entradas del siguiente barrido, permitiendo que se estabilicen las
entradas después de recibir los datos de salida procedentes del programa.
Si el tiempo de barrido constante expira antes de que finalice el barrido, se completa el barrido
entero, incluidas las ventanas de comunicaciones. Sin embargo, al comienzo del siguiente barrido
se registra un fallo de sobrebarrido.

2-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Configuración del modo de barrido constante


Existen dos modos de configurar el modo de barrido constante:

• En el software de configuración Logicmaster, la pantalla de configuración de la


CPU contiene parámetros configurables del modo de barrido y temporizador de
barrido. Tras realizar la selección, debe almacenar la configuración desde el
programador al PLC durante el modo STOP antes de que los cambios surtan efecto.
Una vez almacenada, está configuración se convierte en el modo de barrido por
defecto.

• En el software de programación Logicmaster, la selección de la tabla de barrido del PLC en


el menú de control y estado del PLC contiene opciones para la selección de parámetros de
modo de barrido y temporización. Los parámetros de esta pantalla sólo pueden ser editados
en el modo RUN. Los cambios efectuados desde esta pantalla sólo se almacenan en el PLC,
no en la carpeta de su PC, y sólo son efectivos mientras el PLC permanece en el modo Run.
Una vez de que el PLC se para, vuelve a asumir el modo de barrido por defecto, que se hará
efectivo la próxima vez que el PLC pase al modo Run. Este método para la configuración
temporal del modo de barrido resulta útil para el diseño del sistema y para operaciones de
depurado.

Barrido del PLC en modo STOP


Cuando el PLC está en modo STOP, no se ejecuta el programa de aplicación. Las comunicaciones
con el dispositivo programador y los módulos opcionales inteligentes continúan. Además, el
muestreo de módulos defectuosos y la ejecución de la reconfiguración de los módulos continúan
mientras se está en el modo STOP. Por eficiencia, el sistema operativo usa valores de fracción de
tiempo mayores que los usados en el modo RUN (generalmente alrededor de 50 milisegundos por
ventana). Se puede elegir si se exploran o no las E/S. Las exploraciones de E/S se pueden ejecutar
en modo STOP si el parámetro IOScan-Stop en la pantalla de detalles de la CPU está puesto en
YES.

Precaución
Si el parámetro IPScan-Stop de la pantalla de detalles de la CPU se ha
configurado como YES, las salidas de palabra real pueden activarse (ON)
incluso aunque el PLC esté en modo STOP, ya que el PLC escribirá los
valores actuales de las tablas de salida en los módulos de salida durante la
exploración de salidas.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-17


2

Modos de ventana de comunicaciones


El modo por defecto de la ventana de comunicaciones del programador es el modo “Limitado”.
Esto significa que si el procesamiento de una petición dura más de 6 milisegundos, ésta es
procesada en varios barridos, de modo que ningún barrido exceda el tiempo de 6 milisegundos.
Para las CPUs 313, 323 y 331, el impacto de barrido puede ser de hasta 12 milisegundos durante el
almacenamiento en modo RUN. El modo de ventana activa puede cambiarse mediante la pantalla
“Control de barrido” en Logicmaster—para instrucciones acerca del cambio del modo de ventana
activa, consulte el Capítulo 5, “Control y estado del PLC” en el manual Software de programación
Logicmaster 90™ de las Series 90™-30/20/Micro Manual del usuario (GFK-0466).

Nota
Si el modo de la ventana del sistema se cambia a Limitado, los módulos
opcionales, tales como PCM o GBC que se comunican con el PLC mediante la
ventana del sistema tendrán un impacto menor en el tiempo de barrido, pero la
respuesta a sus peticiones será más lenta.

2-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Interruptor con llave en las CPUs de las Series 35x, 36x y 37x:
cambio de modo y protección de la memoria Flash
Todas las CPUs 350—374 disponen de un interruptor con llave (las CPUs 311-341 no); sin
embargo, algunas versiones de firmware de la CPU no soportan todas las funciones de interruptor
con llave. En esta sección se exponen dichas diferencias. Observe que los interruptores con llave
en algunas de estas CPUs poseen la etiqueta ON/RUN y OFF/STOP, y otras la etiqueta ON y OFF.
Independientemente del etiquetado, todos estos interruptores con llave funcionan como se describe
a continuación.

Protección de la memoria Flash (cableada)

Esta función cableada y no configurable puede utilizarse para evitar que la memoria Flash sea
modificada por personas no autorizadas (personas que carecen de la llave). Cuando el interruptor
con llave se encuentra en la posición ON, no se puede escribir en la memoria Flash. Sólo se puede
escribir en la memoria Flash cuando el interruptor está en OFF. Esta función de interruptor con
llave está siempre activa, independientemente de cómo se definan las dos funciones configurables
siguientes.

Run/Stop (configurable)

Esta función configurable se introdujo en el firmware de CPU versión 7.00. Se configura mediante
el parámetro Interruptor R/S en la pantalla de configuración de la CPU. El parámetro del
Interruptor R/S está configurado como Deshabilitado por defecto. Si el parámetro del
Interruptor R/S se configura como Habilitado, se puede parar el PLC girando el interruptor con
llave a OFF, y arrancar el PLC girando el interruptor a ON (si no existen fallos). Si existen fallos,
podrá ocurrir lo siguiente:

• Si el PLC no tiene un fallo fatal, al girar el interruptor con llave de OFF a ON el PLC
pasará al modo run, y la luz RUN se encenderá de forma permanente, pero las tablas de
fallos no se borrarán.

• Si el PLC tiene un fallo fatal, al girar el interruptor con llave de OFF a ON la luz RUN
parpadeará durante cinco segundos y el PLC no pasará a modo run. Esta luz parpadeante
indica la presencia de uno o más fallos fatales en la tabla de fallos. Puede intentar borrar los
fallos de la tabla de fallos girando de nuevo el interruptor con llave de OFF a ON durante el
periodo de cinco segundos. (Si el periodo de cinco segundos ha transcurrido, al girar el
interruptor con llave de OFF a ON se iniciará otro periodo de cinco segundos.) So los fallos
no se borran por este método, deberá solucionar las causas de los fallos fatales antes de
poder reanudar la operación. Véase el Capítulo 3 para más detalles sobre fallos.

Otras consideraciones sobre el interruptor con llave Run/Stop


• Si el parámetro del Interruptor R/S está en Habilitado y el interruptor está en la posición
OFF, el PLC estará en el modo STOP, y el software de programación no puede utilizarse
para poner el PLC en el modo RUN.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-19


2

• Si el parámetro del Interruptor R/S está en Habilitado, el interruptor está en la posición ON


y no existen fallos fatales, el software de programación puede utilizarse para conmutar el
PLC entre los modos RUN y STOP.

• Si el parámetro del Interruptor R/S está en Habilitado, el interruptor está en la posición


ON, pero el PLC está parado, puede poner el PLC en el modo RUN bien girando el
interruptor con llave a la posición OFF y después volver a ON, o bien utilizando el software
de programación.

Protección de memoria RAM y override (configurable)


Esta función se introdujo en el firmware de CPU versión 8.00. Se configura mediante el parámetro
Protección Mem en la pantalla de configuración de la CPU. El parámetro de Protección Mem
está configurado como Deshabilitado por defecto.
Si el parámetro Protección Mem. está en Habilitado, y el interruptor con llave está en la posición
ON, se cumple lo siguiente:
• La memoria RAM de usuario (programa y configuración) no puede modificarse.
• Los puntos digitales no pueden sobrescribirse.
• El reloj de la Hora del Día (TOD) no puede modificarse con el programador portátil (sin
embargo, el reloj TOD sigue pudiendo modificarse mediante el software de configuración).

Guarde en lugar seguro sus llaves


Cada nueva CPU 350—374 es suministrada con dos llaves para el interruptor con llave. Si utiliza
una o más de las funciones de protección del interruptor con llave descritas más arriba, le
aconsejamos guardar sus llaves en lugar seguro. Si se pierden, se colocan en lugar equivocado o
son sustraídas, no podrá trabajar con su PLC y personas no autorizadas podrían tener acceso al
mismo. Puede que desee adquirir llaves de repuesto con fines de seguridad, o en el caso de que
más de dos personas deban tener acceso al PLC. Se puede adquirir un juego de llaves para el
interruptor con llave, conteniendo tres juegos de llaves, en su distribuidor de GE Fanuc. Al hacer
el pedido utilice el número de referencia 44A736756-G01. Todas las CPUs 350—374 utilizan la
misma llave.

Deshabilitar las funciones del interruptor con llave


Si no necesita las funciones de protección del interruptor con llave, puede deshabilitar todas ellas.
Para ello, deje el interruptor en la posición OFF, y configure los parámetros Interruptor R/S y
Protección Mem. (descritos más arriba) como Deshabilitados (su configuración por defecto). En
este estado, todas las funciones de protección serán deshabilitadas, y no necesitará utilizar la llave
para acceder al PLC.

2-20 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Sección 2: Organización del programa y datos/referencias del


usuario

El tamaño de la memoria de usuario de los controladores programables de las Series 90-30 está
listada en la siguiente tabla.
Tamaño de memoria de usuario
Modelos de CPU Memoria de usuario
(Kbytes)
CPU311 6
CPU313, CPU323 12
CPU331 16
CPU340 32
CPU341 80
CPU350 80 (versión 9.00 y
posteriores)
32 (anterior a la versión
9.00)
CPU351, CPU352, 240 (versión 9.00 y
CPU360, CPU363, posteriores)
CPU364, CPU374 80 (anterior a la versión
9.00)
Comenzando con las CPUs de firmware versión 9.00, los tamaños de las memorias %R, %AI y
%AQ para las CPUs 351, 352, 360, 363, 364 y 374 son configurables. (Para detalles, consulte el
manual Software de programación Logicmaster 90™ para las Series 90™-30/20/Micro Manual
del usuario, GFK-0466K o posterior, o el manual del usuario de su software de programación).
Un programa para el autómata programable de las Series 90-20 puede tener un tamaño de hasta 2
KB para una CPU Modelo 211, y el número máximo de escalones permitidos por bloque lógico
(principal o subrutina) es 3000. Para los PLCs de las Series 90-30 el tamaño máximo de bloque es
80 kilobytes para bloques C y 16 kilobytes para bloques LD y SFC; sin embargo, en un bloque
SFC, algunos de los 16 KB se utilizan para el bloque de datos interno. Como se muestra en la
siguiente figura, la lógica del programa de usuario es ejecutada repetidamente por el PLC mientras
éste está en modo Run normal.
a45660A

Leer entradas

Ejecutar lógica
del programa

Escribir salidas

GFK-0467M-SP Capítulo 2 Operación del sistema 2-21


2

Consulte en el Manual de instalación y hardware del autómata programable de las Series 90-30,
GFK-0356, o en el Manual del usuario del autómata programable de las Series 90-20, GFK-0551,
el listado de tamaños de programas y límites de referencia para cada modelo de CPU.
Todos los programas tienen una tabla de declaración variable que lista las variables y descripciones
de referencia que se hayan asignado en el programa del usuario.
El editor de declaración de bloque lista los bloques de subrutina declarados en el programa
principal.

2-22 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Bloques de subrutina
Un programa puede “llamar” a bloques de subrutina durante su ejecución. Una subrutina debe
declararse a través del editor de declaración de bloques antes de que una instrucción CALL
(llamar) pueda utilizarse para esa subrutina. Para cada bloque lógico en el programa se permite un
máximo de 64 declaraciones de bloques de subrutina en el programa y 64 instrucciones CALL. El
tamaño máximo de un bloque de subrutina es de 16 KB o 3000 escalones, pero el programa
principal y todas las subrutinas deben encajar dentro de los límites de tamaño de la lógica para ese
modelo de CPU.

Nota
Los bloques de subrutina no están disponibles en los PLCs de las Series 90-20 o
Micro.

El uso de subrutinas es opcional. El dividir un programa en subrutinas más pequeñas puede


simplificar la programación y reducir la cantidad total de lógica necesaria para el programa.

Ejemplos del uso de bloques de subrutina


A modo de ejemplo, la lógica para un programa puede dividirse en tres subrutinas, cada una de las
cuales podría ser llamada cuando fuera necesario desde el programa. En este ejemplo, el programa
podría contener una lógica pequeña, sirviendo principalmente para secuenciar los bloques de
subrutina.

a45661

SUBRUTINA
2

PROGRAMA SUBRUTINA
3

SUBRUTINA
4

Un bloque de subrutina puede llamarse repetidas veces a medida que se ejecuta el programa. La
lógica que necesite repetirse varias veces en un programa puede introducirse en un bloque de
subrutina. Las llamadas se harían entonces a ese bloque de subrutina para tener acceso a la lógica.
De este modo se reduce el tamaño total del programa.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-23


2

a45662

PROGRAMA SUBRUTINA
2

Además de llamar a los bloques de subrutina desde el programa, éstos pueden ser llamados desde
otros bloques de subrutina. Un bloque de subrutina puede llamarse incluso a sí mismo.
a45663

Subrutina
2

Programa Subrutina
4
Subrutina
3

Sin embargo, el PLC sólo permitirá ocho llamadas anidadas antes de indicar un fallo de
“Desbordamiento de pila de la aplicación” y que el PLC pase al modo STOP/Fault
(Parada/Fallo). El anidamiento de nivel de llamadas cuenta el programa como nivel 1.

Cómo se llama a los bloques de subrutina


Un bloque de subrutina se ejecuta cuando se le llama desde una lógica de programa en un
programa de contactos o desde otro bloque de subrutina.

|
|%I0004 %T0001
|——| |—————————————————————————————————————————————————————————————————————( )—
| ______________
|%I0006 | |
|——| |—————| CALL ASTRO |—
| | (SUBRUTINA) |
| |______________|
|
|%I0003 %I0010 %Q0010
|——| |—————| |—————————————————————————————————————————————————————————————( )—
|

Este ejemplo muestra la instrucción CALL (llamar) de subrutina tal como aparecerá en la pantalla
de lógica de contactos.

Secuencia de ejecución en programas que contienen subrutinas


Si una subrutina es llamada desde un programa u otra subrutina, la subrutina llamada se ejecutará
hasta que finalice, entonces devuelve el control al programa o subrutina desde donde ha sido
llamada. El control se devuelve al escalón que sigue al que contiene la llamada a la subrutina. En
el ejemplo inferior, la línea gruesa de puntos muestra el flujo del programa (el orden en el que se
ejecuta la lógica). En este ejemplo, una subrutina simple de dos escalones es llamada desde el
escalón 4 del programa principal. Después de que los dos escalones de subrutina han sido
ejecutados, el flujo del programa vuelve al programa principal, comenzando con el escalón 5.

2-24 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Programa principal
Escalón 1
Escalón 2
Escalón 3 Flujo del programa
Escalón 4, llamar subrutina 1
Escalón 5 Subrutina 1
Escalón 6 Escalón 1
Escalón 7 Escalón 2

Retorno
Fin

Subrutinas periódicas
La versión 4.20 o posteriores de las CPUs 340 y superiores soportan subrutinas periódicas.
Observe las siguientes restricciones:
1. Los bloques de función de temporizador (TMR, ONDTR y OFDTR) no se ejecutarán
correctamente dentro de una subrutina periódica. Un bloque de función DOIO dentro de una
subrutina periódica cuyo rango de referencia incluye referencias asignadas a un Módulo E/S
inteligente (HSC, APM, DSM, Genius, etc.) hará que la CPU pierda la comunicación con el
módulo. Los contactos FST_SCN y LST_SCN (%S1 y %S2) tendrán un valor indeterminado
durante la ejecución de la subrutina periódica. Una subrutina periódica no puede llamar o ser
llamada por otras subrutinas.
2. El estado latente para la subrutina periódica (es decir, el intervalo máximo entre el tiempo que
la subrutina periódica debiera haberse ejecutado y el tiempo en que realmente se ejecuta)
puede ser alrededor de 0.35 milisegundos si no hay ningún módulo PCM, CMM o ADC en el
rack principal. Si en el rack principal hay un módulo PCM, CMM o ADC —incluso si no está
configurado o usado—el estado latente puede ser casi de 2.25 milisegundos. Por esta razón, no
se recomienda el uso de la rutina periódica con productos basados en PMC.

Referencias de usuario
Los datos usados en un programa de aplicación se almacenan como referencias de registro
digitales.

Tabla 2-4. Referencias de registro


Tipo Descripción
%R El prefijo %R se usa para asignar las referencias de registro del sistema el cual almacenará datos
del programa, tales como resultados de cálculos.
%AI El prefijo %AI representa un registro de entradas analógicas. Este prefijo va seguido por la
dirección del registro de la referencia (por ejemplo, %AI0015). Un registro de entradas
analógicas mantiene el valor de una entrada analógica u otro valor.
%AQ El prefijo %AQ representa un registro de salidas analógicas. Este prefijo va seguido por la
dirección del registro de la referencia (por ejemplo, %AI0056). Un registro de salidas analógicas
mantiene el valor de una salida analógica u otro valor.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-25


2

Nota
Todas las referencias de registro se retienen durante un ciclo de
desconexión/conexión de la CPU.

Tabla 2-5. Referencias digitales


Tipo Descripción
%I El prefijo %I representa referencias de entrada. Este prefijo va seguido por la dirección de
referencia en la tabla de entradas (por ejemplo, %I00121). Las referencias %I están localizadas
en la tabla de estado de entrada, la cual almacena el estado de todas las entradas recibidas de los
módulos de entrada durante la última exploración de entradas. A los módulos de entrada
digitales se les asigna una dirección de referencia mediante el software de configuración o el
programador portátil. Hasta que no se asigne una dirección de referencia, no se recibirá ningún
dato del módulo. Los datos %I pueden ser retentivos o no retentivos.
%Q El prefijo %Q representa las referencias físicas de las salidas. La función de comprobación de
bobina del software
Logicmaster 90-30/20/Micro comprueba usos múltiples de las referencias %Q con bobinas de
relé o salidas en funciones. A partir de la versión 3 del software, se puede seleccionar el nivel
de comprobación de bobina deseado (SIMPLE, MULTIPLE AVISO o MULTIPLE). Para más
información acerca de esta función consulte el Manual del usuario del Software de
programación, GFK-0466.
El prefijo %Q va seguido por la dirección de referencia en la tabla de salidas (por ejemplo,
%Q00016). Las referencias %Q se colocan en la tabla de estado de salidas, la cual almacena el
estado de las referencias de salida como la última puesta por el programa de aplicación. Los
valores de esta tabla de estado de salidas se envían a los módulos de salida durante la
exploración de salidas.
A los módulos de salida digitales se les asigna una dirección de referencia mediante el software
de configuración o el programador portátil. Hasta que no se asigne una dirección de referencia,
no se envía ningún dato al módulo. Una referencia %Q concreta puede ser retentiva o no
retentiva. *
%M El prefijo %M representa referencias internas. La función de comprobación de bobina
comprueba usos múltiples de las referencias %M con las bobinas de relé o salidas en funciones.
A partir de la versión 3 del software, se puede seleccionar el nivel de comprobación de bobina
deseado (SIMPLE, MULTIPLE AVISO o MULTIPLE). Consulte el manual GFK-0466 para
más información acerca de esta función. Una referencia %M concreta puede ser retentiva o no
retentiva.*
%T El prefijo %T representa referencias temporales. Debido a que estas referencias nunca se
comprueban para el uso de bobina múltiple, pueden utilizarse muchas veces en el mismo
programa, aún cuando la comprobación de uso de bobina esté habilitada. %T puede usarse para
evitar los conflictos de uso de bobina mientras se estén usando las funciones cortar/pegar y
escribir/incluir fichero. Debido a que esta memoria está destinada a un uso temporal, no se
retiene en una pérdida de energía o por transiciones RUN-A-STOP-A-RUN y no puede usarse
con bobinas retentivas.

2-26 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Tipo Descripción
%S El prefijo %S representa las referencias de estado del sistema. Estas referencias se usan para
tener acceso a datos especiales del PLC, como temporizadores, información de exploración e
información de fallos. Las referencias del sistema incluyen las referencias %S, %SA, %SB y
%SC.
%S, %SA, %SB y %SC pueden usarse en cualquier contacto.
%SA, %SB y %SC pueden emplearse para bobinas retentivas –(M)–.
%S puede usarse como argumento de entrada o salida de cadena de bits o de palabras a
funciones y bloques de función.
%SA, %SB y %SC pueden usarse como argumentos de entrada o salida de cadenas de bits o de
palabras a funciones y bloques de función.
%G El prefijo %G representa las referencias de datos globales. Estas referencias se utilizan para
acceder a los datos compartidos entre varios PLCs. Las referencias %G pueden usarse en
contactos y bobinas retentivas porque la memoria %G siempre es retentiva. %G nunca puede
usarse en bobinas no retentivas.
* El carácter retentivo depende del tipo de bobina. Para más información consulte la “Capacidad retentiva de datos” en
la página siguiente.

Alias
El usuario puede asignar, opcionalmente, un alias a una dirección de referencia. Un alias es útil
porque puede proporcionar información al usuario sobre la finalidad o función de la dirección. Por
ejemplo, en un PLC instalado en una fábrica, la bobina de salida %Q0001 se utiliza para transmitir
energía a un relé de reóstato del motor que controla una bomba física, a la que los empleados dan
el nombre de “Bomba número 1”. Asignando el alias BOMBA1 a %Q0001 se le puede facilitar la
tarea de reconocer la finalidad de %Q0001 a un empleado que esté realizando un diagnóstico de
fallos del sistema.
Los alias deben comenzar por una letra y tener una longitud de uno a siete caracteres. Con el fin
de distinguir las direcciones de memoria (referencias) de los alias, se utiliza el signo de porcentaje
(%) al comienzo de la dirección de memoria. Por ejemplo, el PLC considerará M1 como un alias,
pero %M1 será considerado como una dirección de memoria. Para más información sobre los
alias, consulte el manual GFK-0466 (manual del usuario de Logicmaster para el PLC de las Series
90-30).

Transiciones y overrides
Las referencias de usuario %I, %Q, %M y %G llevan asociados bits de transición y de override.
Las referencias %T, %S, %SA, %SB y %SC llevan asociados sólo bits de transición. La CPU
utiliza bits de transición para los contadores y las bobinas de transición. Observe que los
contadores no usan la misma clase de bits de transición que las bobinas. Los bits de transición para
contadores se almacenan dentro de la referencia de localización.
En las CPUs Modelo 331 y superiores, los bits de override pueden configurarse. Cuando éstos se
configuran, las referencias asociadas no pueden modificarse desde el programa o desde el
dispositivo de entrada; sólo pueden cambiarse mediante comando desde el programador. Las CPUs
Modelos 323, 321, 313 y 311y las CPUs Micro no soportan referencias digitales de override.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-27


2

Capacidad retentiva de datos


Se dice que los datos son retentivos si son almacenados por el PLC cuando éste se para. El PLC de
las Series 90 preserva la lógica del programa, las tablas de fallos y diagnóstico, overrides y fuerzas
de salida, datos de palabras (%R, %AI, %AQ), datos de bits (%I, %SC, %G, bits de fallos y bits
reservados), datos %Q y %M (a menos que se usen con bobinas no retentivas) y datos de palabras
almacenados en %Q y %M. Los datos %T no se guardan. Aunque, como se ha indicado
anteriormente, los datos de bit %SC son retentivos, los valores por defecto de %S, %SA y %SB
son no retentivos.
Las referencias %Q y %M son no retentivas (es decir, son borradas en la conexión cuando el PLC
cambia de STOP a RUN) siempre que se usen con bobinas no retentivas. Las bobinas no
retentivas incluyen bobinas —( )—, bobinas negadas —(/)—, bobinas SET —(S)—, y bobinas
RESET —(R)—.
Cuando las referencias %Q o %M se usan con bobinas retentivas, ose usan como salidas de bloque
de función, el contenido se retiene durante la pérdida de energía y de las transiciones RUN-A-
STOP-A-RUN. Las bobinas retentivas incluyen bobinas retentivas —(M)—, bobinas retentivas
negadas —(/M)—, bobinas SET retentivas —(SM)—, y bobinas RESET retentivas —(RM)—.
La última vez que se programa una referencia %Q o %M en una instrucción de bobina determina si
la referencia %Q o %M es retentiva o no retentiva en base al tipo de bobina. Por ejemplo, si
%Q0001 se programó la última vez como referencia de una bobina retentiva, el dato %Q0001 será
retentivo. Sin embargo, si %Q0001 se programó la última vez en una bobina no retentiva, entonces
el dato %Q0001 será no retentivo.

2-28 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Tipos de datos
Tabla 2-6. Tipos de datos
Tipo Nombre Descripción Formato de datos
INT Entero con Los enteros con signo usan localizaciones
signo de datos de memoria de 16 bits y están Registro 1
representados en notación de complemento S| (posiciones 16 bits)
de 2. (El bit 16 es el bit de signo.) El
16 1
rango válido de un tipo de datos INT es –
32,768 hasta +32,767.
DINT Entero con Los enteros con signo de doble precisión
signo de se almacenan en posiciones de memoria de Registro 2 Registro 1
doble datos de 32 bits (realmente dos posiciones
S|
precisión consecutivas de memoria de 16 bits) y se
representan en notación de complemento 32 17 16 1
de 2. (El bit 32 es el bit de signo.) El (Valor complemento a dos)
rango válido de un tipo de datos DINT es
–2,147,483,648 hasta +2,147,483,647.
BIT Bit El tipo de datos Bit es la unidad más
pequeña de memoria. Tiene dos estados, 1
ó 0. Una cadena de BITs puede tener la
longitud N.
BYTE Byte El tipo de datos Byte tiene un valor de 8
bits.
El intervalo válido es de 0 hasta 255 (0
hasta FF en hexadecimal).
WORD Palabra El tipo de datos Palabra emplea 16 bits
consecutivos de memoria de datos; pero,
Registro 1
en lugar de los bits en la posición de datos (posiciones 16 bits)
que representan un número, los bits son
independientes entre sí. Cada bit 16 1
representa su propio estado binario (1 ó
0), y los bits no hay que considerarlos
juntos para que representen un número
entero. El intervalo válido de valores de
palabra es 0 hasta FFFF.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-29


2

Tipo Nombre Descripción Formato de datos


DWORD Doble El tipo de datos de doble palabra tiene las
palabra mismas características que un tipo de datos Registro 2 Registro 1
de palabra simple, a excepción de que usa
32 bits consecutivos en la memoria de
datos en lugar de 16 bits. El intervalo 32 17 16 1
válido de valores de palabra es 0 hasta (32 bits estado)
FFFFFFFF.
BCD-4 Decimal Los números BCD de 4 dígitos utilizan
codificado posiciones de memoria de 16 bits. Cada Registro 1
binario 4 dígito BCD utiliza 4 bits y permite 4 |3 | 2 | 1 (4 dígitos BCD)
dígitos representar números entre 0 y 9. Esta
codificación BCD de los 16 bits tiene un 16 13 9 5 1
intervalo legal de valores de 0 hasta 9999.
REAL Coma Los números reales usan 32 bits
flotante consecutivos (realmente dos posiciones de Registro 2 Registro 1
memoria consecutivas de 16 bits). El S|
intervalo de números que puede
32 17 16 1
almacenarse en este formato es ±
1.401298E-45 hasta ± 3.402823E+38. (Valor complemento a dos)
S = Bit de signo (0 = positivo, 1 = negativo).

Referencias de estados del sistema


Las referencias de estado del sistema en el PLC de la Serie 90 se asignan a la memoria %S, %SA,
%SB y %SC. Cada una de ellas tiene un alias. Por ejemplo, las referencias de impulsos de tiempo
incluyen T_10MS, T_100MS, T_SEC y T_MIN. Como ejemplos de referencias prácticas caben
destacar FST_SCN, ALW_ON y ALW_OFF.

Nota
Los bits %S son bits de sólo lectura; no escriba en estos bits. Se puede, sin
embargo, escribir en los bits %SA, %SB y %SC.

A continuación se listan las referencias disponibles de estados del sistema que pueden utilizarse en
un programa de aplicación. Al introducir la lógica, puede usarse tanto la referencia, como el alias.
Consulte el Capítulo 3, “Explicaciones y corrección de fallos,” para descripciones más detalladas
de los fallos e información acerca de su corrección. No se pueden utilizar estos alias especiales
para nombrar otras referencias de memoria.

2-30 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Tabla 2-7. Referencias de estados del sistema


Referencia Alias Definición
%S0001 FST_SCN Poner a 1 cuando el barrido actual sea el primer barrido.
%S0002 LST_SCN Reset de 1 a 0 cuando el barrido actual sea el último barrido.
%S0003 T_10MS Contacto de temporizador de 0.01 segundos.
%S0004 T_100MS Contacto de temporizador de 0.1 segundos.
%S0005 T_SEC Contacto de temporizador de 1.0 segundos.
%S0006 T_MIN Contacto de temporizador de 1.0 minutos.
%S0007 ALW_ON Siempre CON (ON).
%S0008 ALW_OFF Siempre DES (OFF).
%S0009 SY_FULL Activada cuando se llena la tabla de fallos del PLC. Se borra cuando se
elimina una entrada de la tabla de fallos del PLC y cuando se borra la tabla
de fallos del PLC.
%S0010 IO_FULL Activada cuando se llena la tabla de fallos de E/S. Borrada cuando se
elimina una entrada de la tabla de fallos de E/S o cuando se borra la tabla
de fallos de E/S.
%S0011 OVR_PRE Activada cuando existe un override en la memoria %I, %Q, %M o %G.
%S0013 PRG_CHK Activada cuando está activa la comprobación de programa en background.
%S0014 PLC_BAT Se activa para indicar una batería en mal estado en una CPU de versión 4
o posterior. La referencia de contacto se actualiza una vez por barrido.
%S0017 SNPXACT El SNP-X principal está acoplado activamente a la CPU.
%S0018 SNPX_RD El SNP-X principal ha leído los datos de la CPU.
%S0019 SNPX_WT El SNP-X principal ha escrito datos en la CPU.
%S0020 Se ACTIVA cuando una función relacional que utiliza datos REALES se
ejecuta con éxito. Se borra cuando una de las entradas es NaN (no un
número).
%S0032 Reservado para el uso del software de programación.
%SA0001 PB_SUM Activada cuando una suma de comprobación calculada en el programa de
aplicación no coincide con la suma de comprobación de referencia. Si el
fallo se ha debido a un fallo temporal, el bit digital puede borrarse
almacenando de nuevo el programa en la CPU. Si el fallo ha sido debido a
un fallo de hardware de la RAM, debe sustituirse la CPU.
%SA0002 OV_SWP Activada cuando el PLC detecta que el barrido anterior ha tardado más
tiempo que el especificado por el usuario. Se borra cuando el PLC detecta
que el barrido anterior no ha tardado más tiempo del especificado. También
se borra durante la transición del modo STOP a RUN. Sólo es válido si el
PLC está en modo de BARRIDO CONSTANTE.
%SA0003 APL_FLT Activada cuando se produce un fallo en la aplicación. Se borra cuando el
PLC pasa del modo STOP a RUN.
%SA0009 CFG_MM Se activa cuando se detecta una discrepancia en la configuración durante la
conexión o durante el almacenamiento de la configuración. Se borra
conectando el PLC sin que haya discrepancias presentes o durante el
almacenamiento de la configuración que coincide con el hardware.
%SA0010 HRD_CPU Activada cuando el diagnóstico detecta un problema en el hardware de la
CPU. Borrada al sustituir el módulo de la CPU.
%SA0011 LOW_BAT Activada cuando se produce un fallo de pila descargada. Se borra cuando
se sustituye la pila y se asegura que el PLC se conecta sin un estado de pila
baja.
%SA0014 LOS_IOM Activada cuando un módulo de E/S deja de comunicar con la CPU.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-31


2

Referencia Alias Definición


Borrada al sustituir el módulo y desconectar y volver a conectar la
corriente del rack principal.
%SA0015 LOS_SIO Activada cuando un módulo opcional deje de comunicar con la CPU.
Borrada al sustituir el módulo y desconectar y volver a conectar la
corriente del rack principal.
%SA0019 ADD_IOM Se activa cuando se añade un módulo de E/S a un rack. Se borra
desconectando y volviendo a conectar la corriente del rack principal y
cuando la configuración coincide con el hardware tras una operación de
guardar datos.
%SA0020 ADD_SIO Se activa cuando se añade un módulo opcional a un rack. Se borra
desconectando y volviendo a conectar la corriente del rack principal y
cuando la configuración coincide con el hardware tras una operación de
guardar datos.
%SA0027 HRD_SIO Activada cuando se detecta un fallo del hardware en un módulo opcional.
Se borra al sustituir el módulo y desconectar y volver a conectar la
corriente del rack principal.
%SA0031 SFT_SIO Activada cuando se detecta un fallo de software irrecuperable en un
módulo opcional. Se borra desconectando y volviendo a conectar la
corriente del rack principal y cuando la configuración coincide con el
hardware.
%SB0010 BAD_RAM Se activa cuando la CPU detecta una memoria RAM corrompida en la
conexión. Se borra cuando la CPU detecta que la memoria RAM es válida
en la conexión.
%SB0011 BAD_PWD Activada cuando se produce una violación de acceso por contraseña.
Borrada cuando se borra la tabla de fallos del PLC.
%SB0013 SFT_CPU Activada cuando la CPU detecta un error irrecuperable en el software. Se
borra borrando la tabla de fallos del PLC.
%SB0014 STOR_ER Activada cuando se produce un error durante una operación de guardar
datos con el equipo programador. Borrada cuando se termina
satisfactoriamente una operación de guardar datos.
%SC0009 ANY_FLT Activada cuando se produce cualquier fallo. Borrada cuando ninguna de las
dos tablas de fallos tiene entradas.
%SC0010 SY_FLT Activada cuando se produce cualquier fallo que provoque la inserción de
una entrada en la tabla de fallos de E/S. Borrada cuando la tabla de fallos
del PLC no tiene ninguna entrada.
%SC0011 IO_FLT Activada cuando se produce cualquier fallo que provoque la inserción de
una entrada en la tabla de fallos de E/S. Borrada cuando la tabla de fallos
de E/S no tiene ninguna entrada.
%SC0012 SY_PRES Activada mientras haya al menos una entrada en la tabla de fallos del PLC.
Borrada cuando la tabla de fallos del PLC no tenga ninguna entrada.
%SC0013 IO_PRES Activada mientras haya al menos una entrada en la tabla de fallos de E/S.
Borrada cuando la tabla de fallos de E/S no tiene ninguna entrada.
%SC0014 HRD_FLT Activada cuando se produzca un fallo de hardware. Borrada cuando
ninguna de las dos tablas de fallos tiene entradas.
%SC0015 SFT_FLT Activada cuando se produzca un fallo de software. Borrada cuando ninguna
de las dos tablas de fallos tiene entradas.
Nota: Cualquier referencia %S no listada aquí está reservada y no debe utilizarse en la lógica del programa.

2-32 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Estructura del bloque de función


Cada escalón de lógica está compuesto de una o más instrucciones de programación. Estas pueden
ser simples relés o funciones más complejas.

Formato de relés lógicos de contactos


El software de programación incluye varios tipos de funciones de relé. Estas funciones
proporcionan un flujo y control básicos de la lógica en el programa. Los ejemplos incluyen un
contacto de relé normalmente abierto y una bobina negada. Cada uno de estos contactos y bobinas
tiene una entrada y una salida. Juntos, proporcionan el flujo de la lógica a través del contacto o de
la bobina.
A cada bobina o contacto de relé se le debe dar una referencia que se introduce al seleccionar el
relé. Para un contacto, la referencia representa una posición en la memoria que determina el flujo
de energía al contacto. En el ejemplo siguiente, si la referencia %I0122 es ON, la corriente pasará a
través de ese contacto de relé.
%I0122
–| |–
Para una bobina, la referencia representa una posición en la memoria que está controlada por el
paso de la corriente a la bobina. En este ejemplo, si fluye corriente por el lado izquierdo de la bobina,
la referencia %Q0004 se activa (ON).
%Q0004

El software de programación y el programador portátil tienen, ambos, una función de


comprobación de bobina que comprueba los usos múltiples de las referencias %Q o %M con las
bobinas de relé o las salidas en las funciones.

Formato de los bloques de función del programa (instrucciones)


Algunas funciones son muy sencillas, como la función relé de control maestro (MCR), que se
muestra con el nombre abreviado de la función entre corchetes:
–[ MCR ]–

Otras funciones son más complejas. Pueden tener varios lugares donde se introducirá la
información (datos de los parámetros) que va a ser utilizada por la función.
El bloque de función ilustrado a continuación es la instrucción de multiplicación (MUL). Sus
partes son típicas de muchos bloques de funciones. Sin embargo, el número y tipo de parámetros
usados puede variar ampliamente entre los diferentes tipos de bloques de funciones. La parte
superior del bloque de función muestra el nombre de la función. También puede mostrar el tipo de
datos, en este caso, entero con signo.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-33


2

Muchas funciones del programa (instrucciones) permiten seleccionar el tipo de datos para la
función después de seleccionar la función. Por ejemplo,el tipo de datos para la función MUL
podría cambiarse a entero con signo de doble precisión (D_INT). Al principio de este capítulo se
proporciona información adicional sobre los tipos de datos.

Tipo de datos Tipo de instrucción

MUL
INT

??????? I1 Q ???????

??????? I2

2-34 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Parámetros de los bloques de función (instrucción)


Cada línea que entra por el lado izquierdo de un bloque de función representa una entrada para esa
función. Existen dos formas de entrada que pueden utilizarse con bloques de función, digital y
analógica. Las entradas digitales pueden estar ACTIVADAS (ON) o DESACTIVADAS (OFF).
En la figura inferior, el contacto habilitado %I0001 es un ejemplo de entrada digital. Las entradas
analógicas pueden ser constantes y referencias. Una constante es un valor explícito. Una referencia
es la dirección de memoria de un valor. Generalmente, una referencia se utiliza si el dato de
entrada está sujeto a cambios. Por ejemplo, una referencia puede ser la dirección de una entrada de
un dispositivo de medida analógico.
En el siguiente ejemplo, el parámetro de entrada I1 para un bloque de función ADD es una
constante, y el parámetro de entrada I2 es una referencia.
%I0001 %Q0001
ADD
IN
T
CONST I1 Q %R0002
+00010

%AI0001 I2

Cada línea que sale por el lado derecho del bloque de función representa una salida. Las salidas
pueden ser digitales o analógicas. Si son analógicas, el valor es colocado en un registro
(referencia). En el ejemplo anterior, la salida OK del bloque de función es digital y controla la
bobina %Q0001. Su salida Q, sin embargo, retiene el valor resultante de la operación matemática,
colocándolo en un registro, en este ejemplo %R0002.
Cuando los signos de interrogación aparecen en el lado izquierdo de un bloque de función, se
introducirá bien el mismo dato, la posición de referencia donde se ha encontrado el dato, o una
variable que represente la posición de referencia donde se ha encontrado el dato. Cuando los
signos de interrogación aparecen en el lado derecho de un bloque de función, se introducirá
generalmente una posición de referencia para el dato que va a salir mediante el bloque de función o
una variable que represente la posición de referencia para el dato que va a salir mediante el bloque
de función.

MUL
INT

??????? I1 Q ???????

??????? I2

GFK-0467M-SP Capítulo 2 Operación del sistema 2-35


2

La mayoría de los bloques de función no cambian los datos de entrada; en su lugar, utilizan los
datos de entrada en una operación y colocan el resultado de la misma en una referencia de salida.
Para funciones que operan en grupos de direcciones de memoria (referencias), se puede seleccionar
una longitud para la función. En el bloque de función siguiente, el operando LEN especifica el
número de palabras de entrada a mover (3 en este ejemplo).

(Habilitar) MOVE_ (OK)


WORD

??????? I1 Q ???????

LEN
00003

El temporizador, contador, BITSEQ y las funciones ID requieren una dirección para la localización
de tres palabras (registros) que almacenen el valor actual, el valor predefinido y una palabra de
control o “instancia” de la función. La primera palabra de las tres palabras consecutivas aparece en
pantalla debajo del bloque de función, indicada en la figura siguiente como “(Dirección).”

ONDTR
(Habilitar) Q
1.00s

(Reset) R

??????? PV

(Dirección)

Entrada y salida de flujo de energía de una función


La energía fluye a la entrada Habilitar de un bloque de función por la parte superior izquierda
mediante la lógica de habilitación. La mayoría de los bloques de función tienen una salida de
flujo de energía, denominada salida “OK”. Si el bloque de función se ejecuta correctamente, la
salida OK se activa y pasa flujo de energía. Si se conecta otro dispositivo a la salida OK, tal como
la bobina de salida mostrada más abajo, el dispositivo es habilitado. Sin embargo, el uso de la
salida OK es opcional para numerosos bloques de función, ya que su finalidad principal es obtener
el resultado de la operación (multiplicación en el ejemplo inferior) en la salida Q.

2-36 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Flujo de energía
Habilitar que sale de la
lógica instrucción

%Q0001

MUL
(Habilitar) INT (OK)

%R0123 I1 Q %R0124

CONST
0002 I2

Nota
Si se utiliza el software de programación Logicmaster, los bloques de función no
pueden ser directamente enlazados a la guía izquierda de energía. Puede utilizar
%S7, el bit ALW_ON (siempre on) con un contacto abierto enlazado a la guía de
energía para llamar a una función en cada barrido.

La energía fluye fuera del bloque de función en la parte superior derecha. Puede pasarse a otra
lógica del programa o a una bobina (opcional). Los bloques de función dejan pasar energía cuando
se ejecutan satisfactoriamente.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-37


2

Sección 3: Secuencias de conexión y desconexión

Existen dos secuencias de conexión posibles en el PLC de las Series 90-30; una conexión en frío y
una conexión en caliente. La CPU utiliza normalmente la secuencia de conexión en frío. Sin
embargo, en un PLC Modelo 331 o superior, si el tiempo que transcurre entre una desconexión y la
siguiente conexión es de menos de cinco segundos, se utiliza la secuencia de conexión en caliente.

Conexión
Una conexión en frío consta de la siguiente secuencia de sucesos. La secuencia de conexión en
caliente se salta el paso 1.
1. La CPU ejecutará un autodiagnóstico. Esto incluye la comprobación de una porción de la
RAM mantenida por pila para determinar si la RAM contiene o no datos válidos.
2. Si existe una memoria EPROM, EEPROM o Flash y la opción de conexión PROM en la
PROM especifica que debe usarse el contenido de la PROM, el contenido de la PROM se
copia en la memoria RAM. Si no existe EPROM, EEPROM o Flash, la memoria RAM
permanece igual y no se sobrescribirá con el contenido de la PROM.
3. La CPU interroga cada slot en el sistema para determinar qué tarjetas están presentes.
4. La configuración del hardware se compara con la del software para asegurar que son iguales.
Las discrepancias detectadas se consideran fallos y activan una alarma. Por ejemplo, si un
módulo está especificado en la configuración del software pero en la configuración real del
hardware existe un módulo diferente, esta condición es un fallo y se activa una alarma.
5. Si no hay ninguna configuración de software, la CPU utilizará su configuración por defecto.
6. La CPU establece el canal de comunicaciones entre ella y cualquier módulo inteligente.
7. En el paso final de la ejecución, el modo del primer barrido se determina en función de la
configuración de la CPU. La figura 2-5 en la página siguiente muestra la secuencia de
decisión para la CPU cuando ésta decide si copiar de la PROM o efectuar la conexión en el
modo STOP o RUN.

Nota
Los pasos 2 hasta el 7 anteriores no conciernen al PLC Micro de la Serie 90. Para
más información acerca de las secuencias de conexión y desconexión para el
Micro, consulte la sección “Secuencias de conexión y desconexión” del Capítulo
5, “Operación del sistema,” En el Manual del usuario del PLC Micro de la Serie
90 (GFK-1065).

2-38 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

a45680

*Ir a Borrar todo el proceso


INICIO

1 VERDA-
TECLAS
DERO
*
HHP BORRAR
CLR M T TODO

FALSO

2
VERDADERO USD FALSO
PRESENTE Y
VALIDO
3 USD
4 URAM
FALSO FALSO
PRG SRC = PRG SRC =
PROM PROM

VERDA- VERDADERO 11 VERDA-


DERO URAM DERO BORRAR
CORROMPIDA * TODO

5 USD
FALSO FALSO TR
REG SRC =
PROM
12 VERDA- 13
URAM USD
DERO
VERDA- PRG SRC =
NO PRESENTE
DERO PROM

6 VERDA- VERDA- 7
TECLAS DERO TECLAS FALSO FALSO
DERO
HHP MODO STOP HHP
LD NOT LD NOT
FALSO 14
FALSO VERDA-
TECLAS
8 9 DERO
MODO STOP
HHP
COPIAR CFG,PRG COPIAR
Y REGS DE NOT RUN
PRG Y CFG DE
USD A URAM USD A URAM FALSO

15 VERDA-
URAM
DERO
MODO PU = MODO RUN
10 RUN
PRG o CFG FALSO
SUMA COMPR FALSO
MAL
16 VERDA-
TR DERO
Borrar todo el proceso BATT BAJA MODO STOP

*
BORRAR
TODO BORRAR
TODO FALSO

19 17 VERDA-
URAM DERO
BORRAR PRG, CFG,
MODO PU = MODO STOP
Y REGS
STOP

FALSO
18
MODO STOP
PU MODO ES IGUAL
A DESCONEXION

MODO STOP FIN MODO RUN

Figura 2-5. Secuencia de conexión


Antes de ir al punto INICIO del diagrama de flujo de la conexión, la CPU realiza el diagnóstico de
conexión, que comprueba los diferentes dispositivos periféricos usados por la CPU, así como la
RAM. Tras finalizar el diagnóstico, se inicializan las estructuras internas de datos y los
dispositivos periféricos usados por la CPU. La CPU determina entonces si la Ram de usuario ha
sido corrompida. Si la Ram de usuario ha sido corrompida, el programa de usuario y la

GFK-0467M-SP Capítulo 2 Operación del sistema 2-39


2

configuración se borran y se establecen los valores por defecto, y todos los registros de usuario se
borran.
TÉRMINOS DEL DIAGRAMA DE FLUJO:
PRG = Programa de usuario (PRG SRC = Fuente del programa)
CFG = Configuración de usuario
REGS = Registros de usuario (referencias %I, %Q, %M, %G, %R, %AI y %AQ).
USD = Dispositivo de almacenamiento de usuario, un dispositivo EPROM, EEPROM o Flash.
URAM = Ram de usuario no volátil que contiene PRG, CFG y REGS.
HHP = Programador portátil
PU = Conexión
CLR = Borrar
BATT = Pila
TEXTO COMPLETO DEL DIAGRAMA DE FLUJO:
(1) ¿Se han pulsado las teclas <CLR> y <M_T> del HHP (Programador portátil) durante la
conexión para borrar toda la URAM?
(2) ¿Está el USD (dispositivo de almacenamiento del usuario) presente y es válida la
información en el USD?
(3) ¿Está el parámetro PRG SRC en el USD configurado a Prom que significa cargar PRG
(lógica del programa) y CFG (configuración) del dispositivo USD?
(4) ¿Está el parámetro PRG SRC en URAM configurado a Prom que significa cargar PRG y
CFG del dispositivo USD?
(5) ¿Está el parámetro REG SRC en USD configurado a Prom que significa cargar REGS
(registros) del dispositivo USD?
(6 y 7)¿Se han pulsado las teclas <LD> y <NOT> en el HHP durante la conexión para que no se
carguen PRG, CFG y REGS del USD?
(8) Copiar PRG, CFG y REGS del USD a la URAM.
(9) Copiar PRG y CFG del USD a la URAM.
(10) ¿Son las sumas de comprobación de PRG o CFG que se acaban de cargar del USD no
válidas?
(11) ¿Está la URAM corrompida? Puede deberse a que se ha realizado la desconexión sin tener
la pila acoplada o con la pila baja. También puede deberse a la actualización del firmware.
(12) ¿Está el parámetro PRG SRC en URAM configurado a Prom que significa cargar PRG y
CFG del dispositivo USD?
(13) ¿Está el USD presente? Esta comprobación sólo se refiere a las CPUs 311-341. Se
presupone que el USD está presente en las CPUs 350-364 y 374.
(14) ¿Se han pulsado las teclas <NOT> y <RUN> del HHP durante la conexión para efectuar una
conexión incondicional en modo Stop?
(15) ¿Se ha configurado el parámetro PWR UP en URAM a RUN?
(16) ¿Está la pila baja?
(17) ¿Se ha configurado el parámetro PWR UP en URAM a STOP?
(18) Ponga el modo de conexión igual que estaba el modo de desconexión.
(19) Borrar PRG, CFG y REGS.

2-40 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Nota
La primera parte del diagrama de la página anterior no se refiere al PLC Micro
de la Serie 90. Para más información acerca de las secuencias de conexión y
desconexión para el Micro, consulte la sección “Secuencias de conexión y
desconexión” del Capítulo 5, “Operación del sistema,” En el Manual del usuario
del PLC Micro de la Serie 90 (GFK-1065).

Desconexión
La desconexión del sistema se produce cuando la fuente de alimentación detecta que la corriente
AC de entrada ha caído en más de un ciclo de conexión o que la salida de la fuente de alimentación
de 5 voltios ha caído a menos de 4.9 voltios de DC.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-41


2

Sección 4: Relojes y temporizadores

Los relojes y temporizadores proporcionados por los PLCs de las Series 90-30 PLC incluyen un
reloj de tiempo transcurrido, un reloj de la hora del día (Modelos 331, 340/341, 350-374 y el Micro
de 28 puntos), un temporizador watchdog y un temporizador de barrido constante. Tres tipos de
bloques de función de temporizador incluyen un temporizador de retardo a la conexión, un
temporizador de retardo a la desconexión y un temporizador de retardo a la conexión retentivo
(también denominado temporizador watch clock). Cuatro contactos de bloque de tiempo se
conectan y desconectan cíclicamente a intervalos de 0.01 segundo, 0.1 segundo, 1.0 segundo y 1
minuto.

Reloj de tiempo transcurrido


El reloj de tiempo transcurrido usa “bloques” de 100 microsegundos para seguir el tiempo
transcurrido desde que se conectó la CPU. El reloj no mantiene los datos durante un fallo de la
alimentación; se reinicia en cada conexión. Una vez por segundo el hardware interrumpe la CPU
para activar el registro del cómputo de segundos. El cómputo de segundos continúa
aproximadamente 100 años desde que el reloj comienza a medir el tiempo.
Debido a que el reloj de tiempo transcurrido proporciona la base para los bloques de función de
temporizador y las operaciones de software del sistema, no puede ser reinicializado desde el
programador o el programa de usuario. Sin embargo, el programa de aplicación puede leer el valor
actual del reloj de tiempo transcurrido mediante la función Petición de Servicio 16.

Reloj de la hora del día


La hora del día en el PLC Micro de 28 puntos y el Modelo 331 de las Series 90-30 y superiores es
mantenida por un reloj de hora del día del hardware. Este reloj mantiene siete funciones de tiempo:
• Año (dos dígitos)
• Mes
• Día del mes
• Hora
• Minuto
• Segundo
• Día de la semana
El reloj de la hora del día (TOD) está protegido por pila y mantiene su estado actual en el caso de
un fallo en la alimentación. Sin embargo, los valores que contiene no tienen ningún valor, a menos
que se inicialice el reloj. El programa de aplicación puede leer y ajustar el reloj de la hora del día
mediante la función Petición de Servicio #7.
El reloj de la hora del día también se puede leer y ajustar mediante el software de configuración de
la CPU y con el programador portátil (HHP). Sin embargo, a partir de la versión 8.00 de firmware
de CPU (350-364), si el parámetro Protección Mem. está Habilitado, el HHP no puede modificar

2-42 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

el reloj TOD si el interruptor de llave de la CPU está en la posición ON. Observe que las funciones
de protección con llave sólo se refieren a las CPUs 350—374 (otras CPUs no poseen el interruptor
con llave).
El reloj de la hora del día está diseñado para realizar transiciones de mes a mes y de año a año.
Compensa automáticamente los años bisiestos hasta el año 2079.

Temporizador watchdog
El PLC de las Series 90-30 está diseñado para captar condiciones de fallos catastróficos que dan
como resultado un barrido extraordinariamente largo. El valor del temporizador para el
temporizador watchdog es de 200 milisegundos para las CPUs 311-341, y de 500 milisegundos
para las CPUs 350—374; este es un valor fijo que no puede ser cambiado. El temporizador
watchdog parte siempre de cero al comienzo de cada barrido.
Para las CPUs del Modelo 331 e inferiores de las Series 90-30, si se sobrepasa el valor del tiempo
límite del watchdog, el LED OK se apaga; la CPU se pone en reset y se desconecta completamente;
y las salidas pasan al estado por defecto. No es posible la comunicación en forma alguna, y los
microprocesadores de todas las tarjetas se paran. Para recuperarse, debe efectuarse un ciclo de
desconexión/conexión en el rack que contiene la CPU. En las CPUs 90-20, Micro Series 90 y
Series 90-30 340 y superiores, si se excede el tiempo límite del temporizador watchdog la CPU se
reinicializa, ejecuta su lógica de conexión, genera un fallo de watchdog y cambia su modo a
STOP.

Temporizador de tiempo desde la desconexión


El temporizador del tiempo transcurrido desde la desconexión se utiliza para determinar el tiempo
que el PLC ha estado desconectado. Cuando el PLC está desconectado, se reinicializa a 0 y
comienza el cómputo de tiempo. Cuando el PLC es conectado, se detiene el cómputo de tiempo y
el valor medido se retiene. La Petición de Servicio #29, descrita en el Capítulo 12, puede utilizarse
para leer el valor de este temporizador.

Nota
Esta función sólo está disponible en las CPUs 331 o superiores de las
Series 90-30.

Temporizador de barrido constante


El temporizador de barrido constante controla la longitud del barrido de un programa cuando el
PLC de las Series 90-30 opera en el modo TIEMPO DE BARRIDO CONSTANTE. En este modo
de operación, cada barrido consume la misma cantidad de tiempo. El valor del temporizador de
barrido constante es configurado por el programador y puede ser cualquier valor desde 5 al valor
del temporizador watchdog. El valor por defecto del tiempo de barrido constante es de 100
milisegundos. Normalmente, en la mayoría de los programas de aplicación, la exploración de
entradas, exploración de la lógica del programa de aplicación y la exploración de salidas no
requieren exactamente la misma cantidad de tiempo de ejecución en cada barrido.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-43


2

Si el temporizador de barrido constante expira antes de finalizar el barrido, y el barrido anterior no


fue un sobrebarrido, el PLC coloca una alarma de sobrebarrido en la tabla de fallos del PLC. Al
comienzo del barrido siguiente, el PLC activa el contacto de fallo OV_SWP %SA0002. El contacto
OV_SWP se reinicializa cuando el PLC no está en modo TIEMPO DE BARRIDO CONSTANTE
o el tiempo del último barrido no excedió el temporizador de barrido constante.

Contactos del bloque de tiempo


El PLC de la Serie 90 proporciona cuatro contactos de bloque de tiempo con duraciones de 0.01
segundo, 0.1 segundo, 1.0 segundo y 1 minuto. El estado de estos contactos no cambia durante la
fase de tareas internas del barrido del PLC. Estos contactos generan un tren de impulsos con una
duración idéntica de las fases on y off. Los contactos se denominan T_10MS (0.01 s), T_100MS
(0.1 s), T_SEC (1.0 s) y T_MIN (1 minuto).
El siguiente diagrama cronológico representa la duración de la fase on/off de estos contactos.

a43071
X
T XXXXX SEC

X/2 X/2
SEC SEC

Figura 2-6. Diagrama de temporización del contacto bloque de tiempo

2-44 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Sección 5: Seguridad del sistema

La seguridad de los PLCs de las Series 90-30, Series 90-20 y PLCs Micro está diseñada para evitar
cambios no autorizados en el contenido de un PLC. Existen cuatro niveles de seguridad disponibles
en el PLC. El primer nivel, que está siempre disponible, proporciona sólo la capacidad de leer los
datos del PLC; no se permiten cambios en la aplicación. Los otros tres niveles tienen acceso a cada
nivel protegido por una contraseña.
Cada nivel de protección más elevado permite capacidades de cambio mayores que los de los
niveles inferiores. Los niveles de protección se acumulan de manera que las autorizaciones
otorgadas a un nivel son una combinación de ese nivel, más todos los niveles inferiores. Los
niveles y sus autorizaciones son:

Nivel de
protección Descripción
Nivel 1 Puede leerse cualquier dato excepto las contraseñas. Esto incluye todas las memorias de
datos (%I, %Q, %AQ, %R, etc.), tablas de fallos y todos los tipos de bloques del programa
(datos, valores y constantes).
No se puede modificar ningún valor en el PLC.
Nivel 2 Este nivel permite escribir accesos a las memorias de datos (%I, %R, etc.).
Nivel 3 Este nivel permite escribir accesos al programa de aplicación en modo STOP solamente.
Nivel 4 Este el nivel por defecto para los sistemas que no tienen establecidas contraseñas. El nivel
por defecto para un sistema con contraseñas es el nivel desprotegido más alto. Este nivel,
el más alto, permite leer y escribir accesos a todas las memorias, así como contraseñas en
los modos RUN y STOP. (Los datos de configuración no pueden modificarse en modo
RUN.)

Contraseñas
Existe una contraseña para cada nivel de protección en el PLC. (No puede establecerse ninguna
contraseña para el acceso al nivel 1.) Cada contraseña puede ser única; sin embargo, la misma
contraseña puede usarse para más de un nivel. Las contraseñas tienen una longitud de uno hasta
cuatro caracteres ASCII. sólo pueden introducirse o cambiarse con el software de programación o
el programador portátil.
Un cambio de nivel de protección permanece vigente mientras las comunicaciones entre el PLC y
el programador estén intactas. No necesitan tener ninguna actividad, pero el enlace de las
comunicaciones no debe romperse. Si durante 15 minutos no hay comunicación, el nivel de
protección vuelve al nivel desprotegido más alto.
Al efectuarse la conexión del PLC, el software de programación solicita desde el estado de
protección de cada nivel de protección del PLC. El software de programación solicita entonces al
PLC acceso al nivel desprotegido más alto, dando al programador, de ese modo, acceso al nivel
desprotegido más alto sin tener que solicitar ningún nivel en particular. Cuando el programador
portátil se conecta al PLC, el PLC revierte al nivel desprotegido más alto.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-45


2

Peticiones de cambio de nivel de protección


Un programador solicita un cambio de nivel de protección proporcionando el nuevo nivel y la
contraseña para el mismo. Un cambio de nivel de protección es denegado si la contraseña enviada
por el programador no coincide con la contraseña almacenada en la tabla de acceso de contraseñas
del PLC para el nivel solicitado. El nivel de protección actual se mantiene y no se producirá ningún
cambio. Si se intenta acceder o modificar la información en el PLC mediante el programador
portátil sin el nivel de protección adecuado, el programador portátil responderá con un mensaje de
error indicando que el acceso ha sido denegado.

Bloqueo/desbloqueo de subrutinas
Los bloques de subrutinas pueden ser bloqueados y desbloqueados mediante la función de bloqueo
de bloques del software de programación. Se dispone de dos tipos de bloqueo:
Tipo de Descripción
bloqueo
Ver Una vez bloqueada, no se puede usar el zoom en esa subrutina.
Editar Una vez bloqueada, no se puede editar la información en esa subrutina.
Una subrutina de ver o editar previamente bloqueada puede desbloquearse en el editor de
declaración de bloques, a menos que esté permanentemente bloqueada en ver o editar.
Se puede efectuar una función de buscar o buscar y reemplazar en una subrutina de ver bloqueada.
Si el objetivo de la búsqueda se encuentra en una subrutina de ver bloqueada, en pantalla aparece
uno de los mensajes siguientes, en lugar de la lógica:
Encontrado en bloque bloqueado <nombre_bloque> (Continuar/Salir), o

No se puede escribir en bloque bloqueado <nombre_bloque> (Continuar/Salir)

Se puede continuar o abandonar la búsqueda.


Las carpetas que contienen subrutinas bloqueadas pueden borrarse o eliminarse. Si una carpeta
contiene subrutinas bloqueadas, estos bloques permanecerán bloqueados cuando se usen las
funciones de carpeta Copiar, Reservar y Restaurar del software de programación.

2-46 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Bloqueo permanente de una subrutina


Ademas de BLOQUEOVER y BLOQUEOEDITAR, existen dos tipos de bloqueos permanentes. Si
se selecciona un bloque BLOQUEO VER PERMANENTE, se niega todo efecto zoom a una
subrutina. Si se selecciona BLOQUEO EDITAR PERMANENTE, se deniega todo intento de
editar el bloque.

Precaución
Los bloques permanentes difieren de los BLOQUEOVER y BLOQUEOEDITAR
regulares en que una vez seleccionados no pueden eliminarse.
Una vez que se ha seleccionado BLOQUEO EDITAR PERMANENTE, éste sólo puede cambiarse
a BLOQUEO VER PERMANENTE. El BLOQUEO VER PERMANENTE no puede cambiarse a
ningún otro tipo de bloqueo.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-47


2

Sección 6: Sistema de E/S de las Series 90-30, 90-20 y Micro

Los sistemas de E/S del PLC proporcionan una interfaz entre el PLC de las Series 90-30 y el
equipo y dispositivos proporcionados por el usuario. Los módulos de E/S de las Series 90-30 están
directamente enchufados en los slots de las placas base de las Series 90-30. El número de módulos
de E/S soportados depende del modelo de CPU:
• Las CPUs modelos 350—374 soportan hasta 79 módulos de E/S. Estas CPUs soportan hasta
ocho racks, que incluyen el rack de la CPU más un total de siete racks de expansión y/o racks
remotos.
• Las CPUs modelos 331, 340 y 341 soportan hasta 49 módulos de E/S. Estas CPUs soportan
hasta cinco racks, que incluyen el rack de la CPU más un total de cuatro racks de expansión
y/o racks remotos.
• Las CPUs modelos 311 y 313 (placas base de 5 slots) soportan hasta 5 módulos de E/S de las
Series 90-30. La CPU modelo 323 (placa base de 10 slots) soporta hasta 10 módulos de E/S
de las Series 90-30. Estas tres CPUs no soportan racks de expansión o remotos.
La siguiente figura muestra la estructura de E/S del PLC de las Series 90-30.
Sistema de E/S del PLC
RAM MEMORIA a43072
DE APLICACIÓN CACHE
% AI %I
% AQ
%T
%R
%G
%S
EXPLORADOR %Q
DATOS
CONFIGURACIÓN E/S DE E/S
%M

16 BITS 1 BIT

PLACA POSTERIOR
SERIES 90-30

MODULOS
MÓDULO MODULO MODULO GENIUS
ENTRADA SALIDA E/S
SERIES
DIGITAL DIGITAL ANALOGICAS
MODELO 30 MODELO 30 MODELO 30 90-30
(GCM y GBC)

BUS
GENIUS
GBC GBC GBC
GENIUS
SERIES SERIES SERIES
SEIS 90-30 GLOBAL
CINCO

CPU CPU CPU CPU


SERIES SERIES SERIES SERIES
CINCO SEIS 90-70 90-30

Figura 2-7. Estructura de E/S de las Series 90-30

2-48 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Nota
La figura mostrada más arriba es específica para la estructura de E/S 90-30. Los
módulos inteligentes y opcionales no forman parte de la exploración de E/S;
éstos utilizan la ventana de comunicaciones del sistema. Para información sobre
de la estructura E/S 90-20, consulte el Manual del usuario del PLC de las Series
90™-20 (GFK-0551). Para información acerca de la estructura E/S del PLC
Micro, consulte el Manual del usuario del PLC de las Series 90™ (GFK-1065).

Módulos de E/S de las Series 90-30


Los módulos de E/S de las Series 90-30 están disponibles en cinco tipos, módulos de entrada
digital, salida digital, entrada analógica, salida analógica y opcionales. La siguiente tabla lista los
módulos de E/S de las Series 90-30 por número de catálogo, número de puntos de E/S y una breve
descripción de cada módulo.
Nota
Consulte a su distribuidor local de GE Fanuc la disponibilidad de los módulos
listados. Consulte en la columna “Número de publicación” las publicaciones
que contienen las especificaciones e información del cableado de cada módulo de
E/S de las Series 90-30.

Figura 2-8. Módulos de E/S de las Series 90-30


Número de Número de
catálogo Puntos Descripción publicación
Módulos digitales - Entrada
IC693MDL230 8 Aislado 120 VAC GFK-0898
IC693MDL231 8 Aislado 240 VAC GFK-0898
IC693MDL240 16 120 VAC GFK-0898
IC693MDL241 16 Lógica positiva/negativa 24 VAC/DC GFK-0898
IC693MDL630 8 Lógica positiva 24 VDC GFK-0898
IC693MDL632 8 Lógica positiva/negativa 125 VDC GFK-0898
IC693MDL633 8 Lógica negativa 24 VDC GFK-0898
IC693MDL634 8 Lógica positiva/negativa 24 VDC GFK-0898
IC693MDL640 16 Lógica positiva 24 VDC GFK-0898
IC693MDL641 16 Lógica negativa 24 VDC GFK-0898
IC693MDL643 16 Lógica positiva 24 VDC, FAST (rápido) GFK-0898
IC693MDL644 16 Lógica negativa 24 VDC, FAST (rápido) GFK-0898
IC693MDL645 16 Lógica positiva/negativa 24 VDC GFK-0898
IC693MDL646 16 Lógica positiva/negativa 24 VDC, FAST (rápido) GFK-0898
IC693MDL652 32 Lógica positiva/negativa 24 VDC GFK-0898
IC693MDL653 32 Lógica positiva/negativa 24 VDC, FAST (rápido) GFK-0898
IC693MDL654 32 Lógica positiva/negativa 5 12 VDC (TTL) GFK-0898
IC693MDL655 32 Lógica positiva/negativa 24 VDC GFK-0898
IC693ACC300 8/16 Simulador de entradas GFK-0898

GFK-0467M-SP Capítulo 2 Operación del sistema 2-49


2

Tabla 2-8. Módulos de E/S de las Series 90-30 - Continuación


Número de Número de
catálogo Puntos Descripción publicación
Módulos digitales - Salida
IC693MDL310 12 120 VAC, 0.5A GFK-0898
IC693MDL330 8 120/240 VAC, 2A GFK-0898
IC693MDL340 16 120 VAC, 0.5A GFK-0898
IC693MDL390 5 Aislado 120/240 VAC, 2A GFK-0898
IC693MDL730 8 Lógica positiva 12/24 VDC, 2A GFK-0898
IC693MDL731 8 Lógica negativa 12/24 VDC, 2A GFK-0898
IC693MDL732 8 Lógica positiva 12/24 VDC, 0.5A GFK-0898
IC693MDL733 8 Lógica negativa 12/24 VDC, 0.5A GFK-0898
IC693MDL734 6 Lógica positiva /negativa 125 VDC, 2A GFK-0898
IC693MDL740 16 Lógica positiva 12/24 VDC, 0.5A GFK-0898
IC693MDL741 16 Lógica negativa 12/24 VDC, 0.5A GFK-0898
IC693MDL742 16 Lógica positiva 12/24 VDC, 1A GFK-0898
IC693MDL750 32 Lógica negativa 12/24 VDC GFK-0898
IC693MDL751 32 Lógica positiva 12/24 VDC, 0.3A GFK-0898
IC693MDL752 32 Lógica negativa 5/24 VDC (TTL), 0.5A GFK-0898
IC693MDL753 32 Lógica positiva /negativa 12 24 VDC, 0.5A GFK-0898
IC693MDL760 16 11 neumático y 5 lógica positiva 24VDC, 0.5 A GFK-1881
IC693MDL930 8 Relé, N.O., aislado 4A GFK-0898
IC693MDL931 8 Relé BC, aislado GFK-0898
IC693MDL940 16 Relé, N.O., aislado 2A GFK-0898
Módulos de entrada/salida
IC693MDR390 8/8 Salida de relé, entrada 24 VDC GFK-0898
IC693MAR590 8/8 Salida de relé, entrada 120 VDC GFK-0898
Módulos analógicos
IC693ALG220 4 car Entrada analógica, tensión GFK-0898
IC693ALG221 4 car Entrada analógica, corriente GFK-0898
IC693ALG222 16 Entrada analógica, tensión GFK-0898
IC693ALG223 16 Entrada analógica, corriente GFK-0898
IC693ALG390 2 car Salida analógica, tensión GFK-0898
IC693ALG391 2 car Salida analógica, corriente GFK-0898
IC693ALG392 8 car Salida analógica, corriente/tensión GFK-0898
IC693ALG442 4/2 Análogico, combinación entrada/salida corriente/tensión GFK-0898

2-50 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Tabla 2-8. Módulos de E/S de las Series 90-30 - Continuación


Número de Número de
catálogo Descripción publicación
Módulos opcionales
IC693APU300 Contador de alta velocidad GFK-0293
IC693APU301 Módulo APM Motion Mate, 1-Eje–Modo seguidor GFK-0781
IC693APU301 Módulo APM Motion Mate, 1-Eje–Modo estándar GFK-0840
IC693APU302 Módulo APM Motion Mate, 2-Ejes–Modo seguidor GFK-0781
IC693APU302 Módulo APM Motion Mate, 2-Ejes–Modo estándar GFK-0840
IC693MCS001/002* Sistema de control Motion Power Mate J (1 y 2 ejes) GFK-1256
IC693DSM302 Módulo servo digital Motion Mate GFK-1464
IC693DSM314 Módulo servo digital Motion Mate GFK-1742
IC693APU305 Módulo procesador de E/S GFK-1028
IC693CMM321 Módulo de comunicaciones Ethernet GFK-1541
IC693ADC311 Coprocesador de pantalla alfanumérica GFK-0521
IC693BEM331 Controlador de bus Genius GFK-1034
IC693BEM320 Módulo de interfaz I/O Link (esclavo) GFK-0631
IC693BEM321 Módulo de interfaz I/O Link (maestro) GFK-0823
IC693CMM311 Módulo coprocesador de comunicaciones GFK-0582
IC693CMM301 Módulo de comunicaciones Genius GFK-0412
IC693CMM302 Módulo de comunicaciones ampliado Genius GFK-0695
IC693PBM200 Módulo maestro Profibus GFK-2121
IC693PBS201 Módulo esclavo Profibus GFK-2193
IC693PCM300 PCM, 160K Bytes (35Kbytes programa de usuario GFK-0255
MegaBasic)
IC693PCM301 PCM, 192K Bytes (47Kbytes programa de usuario GFK-0255
MegaBasic)
IC693PCM311 PCM, 640K Bytes (190Kbytes programa de usuario GFK-0255
MegaBasic)
IC693PTM100/101 Módulo transductor de potencia (PTM) GFK-1734
IC693TCM302/303 Módulo de control de temperatura (TCM), ocho canales GFK-1466
* Absoleto. Listado sólo como referencia.

Formatos de datos de E/S


Las entradas y salidas digitales se almacenan como bits en la memoria caché (tabla de estado). Los
datos de entradas y salidas analógicas son residentes en memoria en una porción de la memoria
RAM de aplicación asignada para este propósito.

Condiciones por defecto para módulos de salida de las Series 90-30


En la conexión, los módulos de salidas digitales de las Series 90-30 van por defecto a salidas
desconectadas. Mantendrán esta condición por defecto hasta la primera exploración de salidas
procedente del PLC. Los módulos de salidas analógicas pueden configurarse con un puente situado
en el bloque de bornes desmontable del módulo para ir por defecto cero o para retener su último
estado. Además, a los módulos de salidas analógicas se les puede aplicar energía desde una fuente

GFK-0467M-SP Capítulo 2 Operación del sistema 2-51


2

de alimentación externa de modo que, aunque el PLC no tenga suministro, los módulos de salidas
analógicas continúen operando en su estado seleccionado por defecto.

Datos de diagnóstico
Los bits de diagnóstico están disponibles en la memoria %S que indicará la pérdida de un módulo
de E/S o una discrepancia en la configuración de E/S. La información de diagnóstico no está
disponible para puntos de E/S individuales. En el Capítulo 3 encontrará más información sobre el
tratamiento de fallos, “Explicaciones y corrección de fallos.”

Datos globales

Datos globales de Genius

El PLC de las Series 90-30 soporta compartir muy rápidamente los datos entre múltiples CPUs
utilizando los datos globales de Genius. El Controlador de bus Genius, IC693BEM331 en la CPU
versión 5 y posterior, y el Módulo de comunicaciones Genius ampliado, IC693CMM302, pueden
emitir hasta 128 bytes de datos a otros PLCs u ordenadores. Se pueden recibir hasta 128 bytes de
cada uno de los hasta 30 controladores Genius que puede haber en la red. Los datos pueden ser
emitidos o recibidos en cualquier tipo de memoria, no únicamente bits globales %G.

El Módulo de comunicaciones Genius original, IC693CMM301, está limitado a direcciones %G


fijas y sólo puede intercambiar 32 bits por dirección de bus serie desde SBA 16 hasta 23.
Recomendamos no utilizar este módulo en las instalaciones nuevas; en su lugar, use el GCM
ampliado recientemente, que posee una capacidad considerablemente mayor.
Los datos globales pueden compartirse entre PLCs de las Series Cinco, Series Seis y Series 90
conectados a un mismo bus de E/S Genius.

Comunicaciones de Ethernet
La CPU Modelo 364 (versión 9.0 y posteriores) soporta la conexión a una red Ethernet a través de
uno (pero no de ambos) de los puertos integrados de Ethernet. Se proporcionan los puertos AAUI y
10BaseT. La CPU Modelo 374 soporta la conexión a una red Ethernet a través de los puertos
10BaseT/100BaseTx integrados de dúplex completo autonegociado.
Las dos CPU364 y CPU374 soportan los Datos Globales de Ethernet (EGD), que se asemejan a los
Datos Globales de Genius en que permiten a un dispositivo (el productor) transferir datos a uno o
más dispositivos (los consumidores) en la red. Los EGD no son soportados por el software
Logicmaster 90 (se requiere un programador basado en Windows para los PLCs de la Series 90.)

2-52 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
2

Módulos de E/S de las Series 90-20


Los siguientes módulos de E/S están disponibles para los PLCs de las Series 90-20.Cada módulo
está listado con su número de catálogo, número de puntos de E/S y una breve descripción. El
módulo de E/S está integrado en una placa base junto a la fuente de alimentación. Para la
información sobre las especificaciones y cableado de cada módulo, consulte el capítulo 5 en el
Manual del usuario del PLC de las Series 90-20, GFK-0551.
Número de Descripción Puntos de E/S
catálogo
IC692MAA541 Módulo base de E/S y fuente de alimentación, 16 Entradas/12
Entrada 120 VAC/ Salida 120 VAC/ Fuente de alimentación Salidas
120 VAC
IC692MDR541 Módulo base de E/S y fuente de alimentación, 16 Entradas/12
Entrada 24 VAC/ Salida relé/ Fuente de alimentación 120 Salidas
VAC
IC692MDR741 Módulo base de E/S y fuente de alimentación, 16 Entradas/12
Entrada 24 VAC/ Salida relé/ Fuente de alimentación 240 Salidas
VAC
IC692CPU211 Módulo de CPU, Modelo de CPU 211 No aplicable

Configuración y programación
Se llama configuración al proceso de asignar direcciones lógicas, así como otras características, a
los módulos de hardware del sistema. Puede ser realizado antes o después de la programación,
utilizando el software de programación o el programador portátil; sin embargo, se recomienda
realizar la configuración en primer lugar. Consulte el Manual del usuario de su software de
programación para detalles sobre cómo crear, transferir, editar e imprimir programas. Los capítulos
4 hasta el 12 describen las instrucciones de programación que se pueden utilizar para crear
programas de lógica de contactos para los PLCs de las Series 90-30 y Series 90-20.

GFK-0467M-SP Capítulo 2 Operación del sistema 2-53


Capítulo Explicación y corrección de fallos
3

Este capítulo sirve de ayuda para la localización de fallos de los sistemas de PLC de las Series 90-
30, 90-20 y Micro. Se explica la descripción de los fallos, que aparecen en la tabla de fallos del
PLC, y las categorías de fallos, que aparecen en la tabla de fallos de E/S.
La explicación de cada fallo en este capítulo lista la descripción del fallo para la tabla de fallos del
PLC o la categoría del fallo para la tabla de fallos de E/S. Localice la descripción del fallo o la
categoría del fallo de la entrada en la tabla de fallos correspondiente visualizada en la pantalla de su
programador. Debajo está la descripción de la causa del fallo junto con instrucciones para
corregirlo.

El Capítulo 3 contiene las siguientes secciones:

Sección Título Descripción Página


1 Tratamiento de fallos Describe el tipo de fallos que pueden producirse en las 3-2
Series 90-30 y como se presentan en las tablas de fallos.
También se incluyen descripciones de las pantallas de las
tablas de fallos del PLC y E/S.
2 Explicaciones de la Proporciona una descripción de cada fallo del PLC y las 3-8
tabla de fallos del PLC instrucciones para corregirlo.
3 Explicaciones de la Describe las categorías de los fallos de pérdida de 3-17
tabla de fallos de E/S módulo de E/S y adición de módulo de E/S.

GFK-0467M-SP 3-1
3

Sección 1: Tratamiento de fallos


Nota
Esta información sobre el tratamiento de fallos corresponde a los sistemas
programados mediante el software Logicmaster 90-30/20/Micro.

Los fallos se producen en los sistemas de PLC de las Series 90-30, Series 90-20, o Series 90 Micro
cuando se dan ciertas condiciones o anomalías que afectan a la operación y a las prestaciones del
sistema. Estas condiciones, tales como la pérdida de un módulo de E/S o del rack, pueden afectar a
la capacidad del PLC para controlar una máquina o un proceso. O, estas condiciones pueden sólo
actuar como una alerta, tal como una señal de pila baja, que indica que la pila que protege la
memoria debe ser sustituida. Sin embargo, algunas condiciones notificadas a la tabla de fallos no
son notificaciones de fallos. Por ejemplo, si deseara añadir un nuevo módulo al PLC, éste será
listado en la tabla de fallos de E/S como “Adición de un módulo de E/S.”

Procesador de alarmas
La condición o avería en si misma se denomina fallo. Cuando la CPU recibe un fallo y lo procesa
recibe el nombre de alarma. El firmware de la CPU que manipula estas condiciones se llama
Procesador de alarmas. La interfaz de usuario para el Procesador de alarmas se realiza a través del
software de programación. Cualquier fallo detectado se registra en una tabla de fallos y se visualiza
bien en la pantalla de la tabla de fallos del PLC o en la pantalla de la tabla de fallos de E/S, según
corresponda.

Clases de fallos
Los PLCs de las series 90-30, 90-20, y Micro detectan varias clases de fallos. Estos incluyen
averías internas, averías externas y averías de funcionamiento.

Clase de fallo Ejemplos:


Averías internas Módulos que no responden.
Condición de pila baja.
Errores de suma de comprobación de
la memoria.
Averías de E/S externas Pérdida de rack o de módulo.
Adición de rack o de módulo.
Averías de funcionamiento Averías de comunicaciones.
Averías de configuración.
Averías de acceso por contraseña.

Nota
Para información específica sobre el tratamiento de fallos del PLC Micro,
consulte el Manual del usuario del PLC Micro de las Series 90 (GFK-1065).

3-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

Reacción del sistema a los fallos


Las averías del hardware requieren que o bien se desconecte el sistema o que se tolere la avería.
Las averías de E/S pueden ser toleradas por el PLC, pero pueden no ser toleradas por la aplicación
o el proceso que se esté controlando. Las averías de funcionamiento son normalmente toleradas.
Los fallos del PLC de las Series 90-30, 90-20 y Micro tienen dos atributos:

Atributo Descripción
Tabla de fallos afectada Tabla de fallos de E/S
Tabla de fallos del PLC
Acción del fallo Fatal
Diagnóstica
Informativa

Tabla de fallos
Para registrar los fallos se mantienen dos tablas de fallos en el PLC, la tabla de fallos de E/S para
registrar los fallos relacionados con el sistema de E/S y la tabla de fallos del PLC para registrar
todos los demás fallos. La siguiente tabla lista los grupos de fallos, las acciones de sus fallos, las
tablas de fallos afectadas y el “nombre” para los puntos %S digitales del sistema que han sido
afectados.

Tabla 3-1. Resumen de fallos

Grupo de fallos Acción del Tabla Referencias digitales especiales del


fallo fallos fallo
Pérdida o ausencia de módulo de E/S Diagnóstico E/S io_flt any_flt io_pres los_iom
Pérdida o ausencia de módulo Diagnóstico PLC sy_flt any_flt sy_pres los_sio
opcional
Discordancia en la configuración del Fatal PLC sy_flt any_flt sy_pres cfg_mm
sistema
Avería en el hardware de la CPU del Fatal PLC sy_flt any_flt sy_pres hrd_cpu
PLC
Avería de la suma de comprobación Fatal PLC sy_flt any_flt sy_pres pb_sum
del programa
Pila baja Diagnóstico PLC sy_flt any_flt sy_pres low_bat
Tabla de fallos del PLC llena Diagnóstico — sy_full
Tabla de fallos de E/S llena Diagnóstico — io_full
Fallo de aplicación Diagnóstico PLC sy_flt any_flt sy_pres apl_flt
No hay programa de usuario Informativo PLC sy_flt any_flt sy_pres no_prog
RAM de usuario corrompida Fatal PLC sy_flt any_flt sy_pres bad_ram
Avería de acceso por contraseña Diagnóstico PLC sy_flt any_flt sy_pres bad_pwd
Avería del software del PLC Fatal PLC sy_flt any_flt sy_pres sft_cpu
Avería de almacenamiento del PLC Fatal PLC sy_flt any_flt sy_pres stor_er
Tiempo de barrido constante excedido Diagnóstico PLC sy_flt any_flt sy_pres ov_swp
Fallo del PLC desconocido Fatal PLC sy_flt any_flt sy_pres
Fallo de E/S desconocido Fatal E/S io_flt any_flt io_pres

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-3


3

Acción de los fallos


Los fallos pueden ser fatales, de diagnóstico o informativos.
Los fallos fatales hacen que el fallo se registre en la tabla apropiada, se establezcan las variables de
diagnóstico y se pare el sistema. Los fallos de diagnóstico se registran en la tabla apropiada y se
establecen las variables de diagnóstico. Los fallos informativos sólo se registran en la tabla
apropiada.
La siguiente tabla contiene las acciones posibles de los fallos.

Tabla 3-2. Acciones de los fallos

Acción del fallo Respuesta de la CPU


Fatal Registra el fallo en la tabla de fallos.
Establece las referencias del fallo.
Va al modo STOP.
Diagnóstico Registra el fallo en la tabla de fallos.
Establece las referencias del fallo.
Informativo Registra el fallo en la tabla de fallos.

Cuando se detecta un fallo, la CPU usa la acción del fallo para ese fallo. Las acciones de fallo no
son configurables en el PLC de las Series 90-30, Series 90-20, o Micro de las Series 90.

Referencias de los fallos


Las referencias de los fallos en el PLC de las Series 90-30 son de un tipo: referencias de resumen
del fallo. Estas referencias se establecen para indicar qué fallo se ha producido. La referencia del
fallo permanece activa hasta que se borra el PLC o hasta que ésta es borrada por el programa de
aplicación.
Un ejemplo de un bit de fallo del sistema activado y después borrado se muestra en la siguiente
figura. En este ejemplo, la luz de la bobina, Light_01, se enciende cuando se cierra el contacto del
sistema OV_SWP (%SA0002), lo cual indica que se ha producido un sobrebarrido. El contacto
OV_SWPt y la luz de la bobina Light_01 se apagan si el contacto %I0359 se cierra, ya que al cerrar
%I0359 se activa la bobina de reinicialización OV_SWP.

| ov_swp Light_01
|——] [————————————————————————————————————————————————————————————————————( )—
|
|%I0359 ov_swp
|——] [————————————————————————————————————————————————————————————————————(R)—
|

3-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

Referencias de los estados del sistema


El procesador de alarmas mantiene los estados de los 128 bits de estado del sistema en la memoria
%S. Muchas de estas referencias de estado indican dónde se ha producido el fallo y el tipo del
mismo. Las referencias de estado están asignadas a la memoria %S, %SA, %SB y %SC, y cada
referencia posee un nombre abreviado o alias. Por ejemplo, el bit de estado %SA0009 tiene el alias
CFG_MM, y se activa para indicar una discordancia en la configuración. Estas referencias están
disponibles para su uso en el programa de aplicación, cuando sea necesario. Consulte en el Capítulo
2, “Operación del sistema” la lista de las referencias de estado del sistema.

Efectos de fallo adicionales


Dos fallos que se describirán más adelante en este capítulo tienen efectos adicionales asociados a
los mismos. Estos efectos se exponen en la siguiente tabla.

Fallo Descripción del efecto


Avería en el software de la CPU Cuando se registra un fallo de software de la CPU del PLC, la CPU de
del PLC las Series 90-30 ó 90-20 pasa inmediatamente al modo especial
BARRIDO DE ERROR. En este modo no se permite ninguna actividad.
El único método de borrar esta condición es reinicializar el PLC
realizando un ciclo de desconexión/conexión.
Avería de almacenamiento de Si durante el almacenamiento en el PLC se interrumpe la comunicación
secuencia del PLC entre el PLC y el programador o se produce cualquier otra avería que
interrumpe la descarga (almacenamiento), se registra el fallo de avería
de almacenamiento de secuencia del PLC. Mientras ese fallo exista en
el sistema, el PLC no pasará al modo RUN. Para reanudar la operación,
debe eliminarse el error. Esto se puede llevar a cabo borrando el fallo de
la pantalla de la tabla de fallos correspondiente del software de
programación.

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-5


3

Pantalla de la tabla de fallos del PLC


La pantalla de la tabla de fallos del PLC muestra los fallos del PLC, tales como violaciones de
contraseñas, discordancias en la configuración, errores de paridad y errores de comunicaciones.
Los fallos se almacenan en el PLC, de manera que si el software de programación está en el modo
FUERA DE LÍNEA, no se visualizan fallos en esta tabla de fallos. Si el software de programación
está en el modo EN LÍNEA o MONITOR, se visualizan los datos de fallos del PLC. En el modo EN
LÍNEA, se pueden borrar los fallos, si bien esta función puede estar protegida por contraseña.
Una vez borrados, los fallos que todavía existan no se registran otra vez en la tabla (a excepción del
fallo “Pila baja”), a menos que no se efectúe un ciclo de desconexión/conexión o se almacene una
nueva configuración.

Pantalla de la tabla de fallos de E/S


La pantalla de la tabla de fallos de E/S muestra los fallos de E/S, tales como fallos de circuito,
conflictos de direcciones, circuitos forzados y fallos del bus de E/S.

Los fallos se almacenan en el PLC, de manera que si el software de programación está en el modo
FUERA DE LÍNEA, no se visualizan fallos en esta tabla de fallos. Si el software de programación
está en el modo EN LÍNEA o MONITOR, se visualizan los datos de fallos de E/S. En el modo EN
LÍNEA, se pueden borrar los fallos, si bien esta función puede estar protegida por contraseña.
Una vez borrados, los fallos que todavía existan no se registran otra vez en el tabla, a menos que
no se efectúe un ciclo de desconexión/conexión o se almacene una nueva configuración .

3-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

Acceso a información adicional de fallos


Las tablas de fallos contienen información básica relativa a los mismos. Se puede visualizar
información adicional de cada fallo a través del software de programación. Además, el software de
programación proporciona un código de fallos hexadecimal para cada fallo.
El último elemento, “Corrección”, en la explicación de cada fallo en este capítulo contiene las
acciones que hay que emprender para corregirlo. Observe que la acción correctiva para algunos de
los fallos incluye este mensaje:
Visualice la tabla de fallos del PLC en el programador. Póngase en
contacto con el Servicio de GE Fanuc, proporcionándole toda la
información contenida en la entrada del fallo.
La segunda indicación significa que debe comunicar al Servicio de GE Fanuc la información que se
puede leer directamente de la tabla y el código de fallos hexadecimal. El personal de servicio le
proporcionará instrucciones adicionales para emprender la acción apropiada.
La siguiente figura de la pantalla de detalles de fallos de Logicmaster muestra la información
adicional de fallos y el código de fallos hexadecimal mencionado anteriormente. (El código de
fallo viene representado por los dos primeros dígitos hexadecimales en el quinto grupo de números
de la izquierda.) Para acceder a esta pantalla, seleccione un fallo de la tabla de fallos (Pérdida de
un módulo de E/S) mediante las teclas de manejo del cursor, y después aplique el “zoom” mediante
la tecla F10. Para volver a la pantalla de tabla de fallos, pulse la tecla Escape, o bien la
combinación de teclas Mayúsculas y F10.

Código de fallos hexadecimal

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-7


3

Sección 2: Explicaciones de la tabla de fallos del PLC

Cada explicación de fallo contiene una descripción del fallo e instrucciones para corregirlo.Muchas
descripciones de fallos tienen múltiples causas. En estos casos, el código de error, visualizado con
la información adicional del fallo, se utiliza para distinguir las diferentes condiciones de fallo que
comparten la misma descripción. El código de error lo constituyen los dos primeros dígitos
hexadecimales en el quinto (por la izquierda) grupo de números, como se muestra en el siguiente
ejemplo.

01 000000 01030100 0902 0200 000000000000


|
|_____ Código de error (los primeros dos
dígitos hexadecimales en el quinto grupo)

Algunos fallos se pueden producir porque ha fallado la memoria de acceso aleatorio (RAM) en la
tarjeta de la CPU del PLC. Estos mismos fallos pueden ocurrir también porque se haya
desconectado la alimentación del sistema y la tensión de la pila es (o era) insuficiente mantener el
contenido de la memoria. Para evitar una duplicación excesiva de las instrucciones cuando la
memoria corrompida pueda ser una causa de error, la corrección simplemente indica:
Efectuar las correcciones por memoria corrompida.
Esto significa:
1. Si se ha desconectado la alimentación del sistema, debe sustituir la pila. La tensión de la pila
puede ser insuficiente para mantener el contenido de la memoria.
2. Debe sustituir la tarjeta de la CPU del PLC. Puede que el circuito impreso de la tarjeta de la
CPU del PLC esté fallando.
La siguiente tabla permite encontrar rápidamente la explicación de un fallo determinado del PLC
en esta sección. Cada entrada está listada tal como aparece en la pantalla del programador.

Descripción de fallo Página


Pérdida o ausencia de módulo opcional 3-9
Módulo opcional: reinicialización, adición o extra 3-9
Discordancia en la configuración del sistema 3-10
Avería del software del módulo opcional 3-11
Avería de la suma de comprobación del programa 3-11
Señal de pila baja 3-11
Tiempo de barrido constante excedido 3-12
Fallo de aplicación 3-12
No hay programa de usuario 3-13
Programa de usuario corrompido en la conexión 3-13
Avería de acceso por contraseña 3-13
Avería en el software del sistema de la CPU del PLC 3-14
Avería en las comunicaciones durante el almacenamiento 3-16

3-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

Acciones de los fallos


• Los fallos fatales hacen que el PLC introduzca una forma de modo STOP al final del barrido
en que se produce el error.
• Los fallos de diagnóstico se registran y se activan los contactos de fallo correspondientes; El
PLC permanece en el modo RUN.
• Los fallos informativos simplemente se registran en la tabla de fallos del PLC; El PLC
permanece en el modo RUN.

Pérdida o ausencia de módulo opcional

El grupo de fallos Pérdida o ausencia de módulo opcional se produce cuando un módulo


opcional no responde. La avería puede ocurrir en la conexión si el módulo falta, o durante la
operación si el módulo no responde.La acción de fallo para este grupo es Diagnóstico.

Código de error 1, 42
Nombre Reinicialización soft de módulo opcional fallida
Descripción CPU del PLC incapaz de restablecer las comunicaciones con el módulo opcional
después de intentar la reinicialización soft (como pulsar el botón Reset).
Corrección: (1) Repita el procedimiento de reinicialización soft recomendada para este
módulo.
(2) Sustituya el módulo opcional.
(3) Desconecte el sistema. Asegúrese de que el módulo está correctamente
fijado en el rack y que todos los cables están correctamente conectados y
colocados.
(4) Compruebe o sustituya los cables.
Código de error Todos los demás
Nombre Avería del módulo durante la configuración
Descripción El software de operación del PLC genera este error cuando un módulo falla
durante la conexión o almacenamiento de la configuración.
Corrección: (1) Desconecte el sistema. Sustituya el módulo situado en el rack y el slot
.

Módulo opcional: reinicialización, adición o extra

El grupo de fallos Módulo opcional: reinicialización, adición o extra se produce cuando un


módulo opcional (PCM, ADC, etc.) se conecta a la línea, se reinicializa o se encuentra un módulo
en el rack, pero no está especificado en la configuración. La acción de fallo para este grupo es
Diagnóstico.

Corrección: (1) Actualice el fichero de configuración para incluir el módulo.


(2) Extraiga el módulo del sistema.

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-9


3

Discordancia en la configuración del sistema

El grupo de fallos Discordancia en la configuración ocurre cuando el módulo que ocupa un slot
es diferente del especificado en el fichero de configuración. La acción del fallo es Fatal.

Código de error 1
Nombre Discordancia en la configuración del sistema
Descripción El software de operación del PLC genera este fallo cuando el módulo que ocupa
un slot no es del mismo tipo que el que el fichero de configuración indica que
debería estar en ese slot, o cuando el tipo de rack configurado no coincide con el
rack presente.
Corrección: Identifique la discordancia y reconfigure el módulo o el rack.
Código de error 6
Nombre Discordancia en la configuración del sistema
Descripción Es semejante al código de error 1 en cuanto que este fallo ocurre cuando el
módulo que ocupa un slot no es del mismo tipo que el que el fichero de
configuración indica que debería estar en ese slot, o cuando el tipo de rack
configurado no coincide con el rack presente.
Corrección: Identifique la discordancia y reconfigure el módulo o el rack.
Código de error 18
Nombre Hardware no soportado
Descripción Un módulo PCM o del tipo PCM está presente en el sistema de la CPU 311, 313
ó 323, o en un rack de expansión o remoto.
Corrección: Corrija la situación físicamente extrayendo el módulo PCM o del tipo PCM o
bien instale una CPU que soporte este módulo. Nota: Estos módulos deben
residir únicamente en una rack de la CPU y sólo en una CPU que los soporte.
Código de error 26
Nombre Módulo ocupado, configuración todavía no aceptada por el módulo
Descripción El módulo no puede aceptar la nueva configuración en este momento porque está
ocupado con un proceso diferente.
Corrección: Permita al módulo finalizar la operación actual y vuelva a almacenar la
configuración.
Código de error 51
Nombre Función END ejecutada del diagrama de función secuencial (SFC)
Descripción La posición de la función una función END en la lógica SFC o en una lógica
llamada por SFC provoca este fallos.
Corrección: Elimine la función END de la lógica SFC o de la lógica llamada por SFC.

3-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

Avería del software del módulo opcional

El grupo de fallos Avería del software del módulo opcional ocurre cuando hay una avería del
software no recuperable en un módulo PCM o ADC. La acción de fallo para este grupo es Fatal.

Código de error Todos


Nombre Frecuencia de COMMREQ demasiado alta
Descripción Se están enviando COMMREQs a un módulo más rápidamente que lo que éste
puede procesarlas.
Corrección: Cambie el programa del PLC para enviar las COMMREQs al módulo afectado a
menor velocidad.

Avería de la suma de comprobación del programa

El grupo de fallos Avería de la suma de comprobación del programa se produce cuando la CPU
del PLC detecta condiciones de error en los bloques del programa recibido por el PLC (descargado
por el software de programación). También ocurrre cuando la CPU del PLC detecta errores de
suma de comprobación durante la comprobación de la memoria en la conexión o durante la
comprobación no prioritaria en modo RUN. La acción de fallo para este grupo es Fatal.

Código de error Todos


Nombre Avería de la suma de comprobación de los bloques del programa
Descripción El software de operación del PLC genera este error cuando se corrompe un
bloque del programa.
Corrección: (1) Borre la memoria del PLC y reintente el almacenamiento.
(2) Visualice la tabla de fallos del PLC en el programador. Póngase en
contacto con el Servicio de GE Fanuc, proporcionándole toda la
información contenida en la entrada del fallo.

Señal de pila baja

El grupo de fallos Señal de pila baja se produce cuando la CPU del PLC detecta una pila baja en
la fuente de alimentación o un módulo, tal como el PCM, informa de una condición de pila baja. La
acción de fallo para este grupo es Diagnóstico.

Código de error 0
Nombre Señal de pila averiada
Descripción La pila de la CPU (u otro módulo que contenga una pila) está agotada.
Corrección: Sustituya la pila. No desconecte la alimentación del rack.
Código de error 1
Nombre Señal de pila baja
Descripción Una pila en la CPU, u otro módulo tiene una señal baja.
Corrección: Sustituya la pila. No desconecte la alimentación del rack.

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-11


3

Tiempo de barrido constante excedido

El grupo de fallos Tiempo de barrido constante excedido se produce cuando la CPU del PLC
opera en el modo BARRIDO CONSTANTE, y detecta que el barrido ha excedido al temporizador
de barrido constante. Los datos adicionales del fallo contienen el tiempo real del barrido en los dos
primeros bytes y el nombre del programa en los ocho bytes siguientes. La acción de fallo para este
grupo es Diagnóstico.

Corrección: (1) Aumente el tiempo de barrido constante.


(2) Suprima la lógica del programa de aplicación.

Fallo de aplicación

El grupo de fallos Fallo de aplicación se produce cuando la CPU del PLC detecta un fallo en el
programa de usuario. La acción del fallo para este grupo es Diagnóstica, excepto cuando se trata de
un error de Excedida la pila de llamadas a subrutina, en cuyo caso es Fatal.

Código de error 7
Nombre Excedida la pila de llamadas a subrutina
Descripción Las llamadas a subrutina están limitadas a una profundidad de 8. Una subrutina
puede llamar a otra subrutina que, a su vez, puede llamar a otra subrutina hasta
que se alcance un nivel de 8 llamadas.
Corrección: Modifique el programa de modo que la profundidad de llamadas de subrutina no
exceda de 8.
Código de error 1B
Nombre Petición de comunicaciones no procesada debido a limitaciones en la memoria del
PLC
Descripción Las peticiones de comunicaciones sin espera puede colocarse en fila más
rápidamente de lo que pueden ser procesadas (por ej., una por barrido). En una
situación como esta, cuando las peticiones de comunicaciones se acumulan hasta
el punto de que el PLC tiene menos de una cantidad de memoria mínima
disponible, la petición de comunicaciones resultará fallida y no se procesará.
Corrección: Emita menos peticiones de comunicaciones, o si no reduzca la cantidad de
correspondencia que se está intercambiando en el sistema.
Código de error 5A :
Nombre Solicitada la interrupción de usuario
Descripción El software de operación del PLC (bloques de función) genera esta alarma
informativa cuando la petición de servicio #13 (interrupción de usuario) se
ejecuta en el programa de aplicación.
Corrección: No se requiere ninguna. La alarma es sólo informativa.

3-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

No existe programa de usuario

El grupo de fallos No existe programa de usuario se produce cuando se da la instrucción a la


CPU del PLC de que pase del modo STOP al modo RUN o a un almacenamiento del PLC y no
existe ningún programa de usuario en el PLC. La CPU del PLC detecta la ausencias de programa
de usuario en la conexión. La acción de fallo para este grupo es Informativa.

Corrección: Transfiera un programa de aplicación antes de tratar de ir al modo RUN.

Programa de usuario corrompido en la conexión

El grupo de fallos Programa de usuario corrompido en la conexión se produce cuando la CPU


del PLC detecta la RAM de usuario corrompida. La CPU del PLC permanecerá en modo STOP
hasta que sean descargados un programa de usuario y un fichero de configuración válidos. La
acción de fallo para este grupo es Fatal.

Código de error 1
Nombre RAM de usuario corrompida en la conexión
Descripción El software de operación del PLC genera este error cuando detecta la RAM
corrompida en la conexión.
Corrección: (1) Vuelva a cargar el fichero de configuración, programa de usuario y las
referencias (si las hay).
(2) Sustituya la pila en la CPU del PLC.
(3) Sustituya la tarjeta de memoria de expansión en la CPU del PLC.
(4) Sustituya la CPU del PLC.
Código de error 2
Nombre Detectado código de operaciones booleanas ilegal
Descripción El software de operación del PLC genera este error cuando detecta una
instrucción deficiente en el programa de usuario.
Corrección: (1) Restaure el programa de usuario y las referencias (si las hay).
(2) Sustituya la tarjeta de memoria de expansión en la CPU del PLC.
(3) Sustituya la CPU del PLC.

Avería de acceso por contraseña

El grupo de fallos Avería de acceso por contraseña se produce cuando la CPU del PLC recibe
una petición para cambiar a un nuevo nivel de protección y la contraseña incluida en la petición no
es válida para ese nivel. La acción de fallo para este grupo es Informativa.

Corrección: Intente la petición de nuevo con la contraseña correcta.

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-13


3

Avería en el software del sistema de la CPU del PLC


Los fallos en el grupo de fallos Avería en el software del sistema de la CPU del PLC son generados
por el firmware de operación de la CPU del PLC de las Series 90-30, 90-20 o Micro. Pueden
producirse en muchos puntos diferentes de la operación del sistema. Cuando se produce un fallo Fatal,
la CPU del PLC pasa inmediatamente a un modo BARRIDO DE ERROR especial. No está permitida
ninguna actividad cuando el PLC se encuentra en este modo. La única forma de borrar esta condición es
efectuar un ciclo de desconexión/conexión en el PLC. La acción de fallo para este grupo es Fatal.

Código de error 1 hasta B


Nombre No se ha podido asignar la memoria de usuario
Descripción El software de operación del PLC (administrador de memoria) genera estos
errores cuando el software solicita al administrador de memoria asignar o dejar de
asignar un bloque o bloques de memoria de la RAM de usuario que no son
legales. Estos errores no deberían producirse en productos ya listos para el
mercado; normalmente sólo se encuentran durante el proceso de desarrollo del
firmware en fábrica.
Corrección: Visualice la tabla de fallos del PLC en el programador. Póngase en contacto con
el Servicio de GE Fanuc, proporcionándole toda la información contenida en la
entrada del fallo.
Código de error D
Nombre Memoria del sistema no disponible
Descripción El software de operación del PLC (explorador de E/S) genera este error cuando su
petición de un bloque de la memoria del sistema es denegada por el administrador
del sistema porque no hay memoria disponible en la memoria libre del sistema.
Es Informativo si el error se produce durante la ejecución del bloque de función
DO I/O. Es Fatal si ocurre durante la inicialización en la conexión o en la
autoconfiguración.
Corrección: Visualice la tabla de fallos del PLC en el programador. Póngase en contacto con
el Servicio de GE Fanuc, proporcionándole toda la información contenida en la
entrada del fallo.
Código de error E
Nombre La memoria del sistema no ha podido ser liberada
Descripción El software de operación del PLC (explorador de E/S) genera este error cuando
solicita al administrador de memoria que deje de asignar un bloque de memoria
del sistema y esta acción falla. Este error sólo puede producirse durante la
ejecución de un bloque de función
DO I/O.
Corrección: 1 Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información contenida en
la entrada del fallo.
2 Efectúe las correcciones por memoria corrompida.
Código de error 10
Nombre Petición de exploración invalidada del explorador de E/S
Descripción El software de operación del PLC (explorador de E/S) genera este error cuando el
sistema operativo o la exploración del bloque de función DO I/O no solicita un
barrido completo ni uno parcial de E/S. Esto no debería ocurrir en un sistema de
producción.
Corrección: Visualice la tabla de fallos del PLC en el programador. Póngase en contacto con
el Servicio de GE Fanuc, proporcionándole toda la información contenida en la
entrada del fallo.

3-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

Código de error 13
Nombre Error del software de operación del PLC
Descripción El software de operación del PLC genera este error cuando se producen ciertos
problemas del software de operación del PLC. Estos errores no deberían
producirse en productos ya listos para el mercado; normalmente sólo se
encuentran durante el proceso de desarrollo del firmware en fábrica.
Corrección: (1) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.
(2) Efectúe las correcciones por memoria corrompida.
Código de error 14, 27
Nombre Memoria del programa del PLC corrompida
Descripción El software de operación del PLC genera estos errores cuando se producen ciertos
problemas del software de operación del PLC. Estos errores no deberían
producirse en productos ya listos para el mercado; normalmente sólo se
encuentran durante el proceso de desarrollo del firmware en fábrica.
Corrección: (1) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.
(2) Efectúe las correcciones por memoria corrompida.
Código de error 27 hasta 4E
Nombre Error del software de operación del PLC
Descripción El software de operación del PLC genera estos errores cuando se producen ciertos
problemas del software de operación del PLC. Estos errores no deberían
producirse en productos ya listos para el mercado; normalmente sólo se
encuentran durante el proceso de desarrollo del firmware en fábrica.
Corrección: Visualice la tabla de fallos del PLC en el programador. Póngase en contacto con
el Servicio de GE Fanuc, proporcionándole toda la información contenida en la
entrada del fallo.
Código de error 4F
Nombre Comunicaciones fallidas
Descripción El software de operación del PLC (procesador de petición de servicio) genera este
error cuando intenta obedecer a una petición que requiere de la comunicación con
la placa posterior y recibe una respuesta denegada.
Corrección: (1) Compruebe si hay actividad anormal en el bus.
(2) Sustituya el módulo opcional inteligente al que iba dirigida la petición.
Código de error 50, 51, 53
Nombre Errores de la memoria del sistema
Descripción El software de operación del PLC genera estos errores cuando su petición de un
bloque de memoria del sistema es denegada por el administrador del sistema
porque no hay memoria disponible o contiene errores.
Corrección: (1) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.
2 Efectúe las correcciones por memoria corrompida.
Código de error 52
Nombre Comunicaciones de la placa posterior fallidas
Descripción El software de operación del PLC (procesador de petición de servicio) genera este
error cuando intenta obedecer a una petición que requiere de la comunicación con
la placa posterior y recibe una respuesta de correspondencia rechazada.
Corrección: (1) Compruebe si hay actividad anormal en el bus.
(2) Sustituya el módulo opcional inteligente al que iba dirigida la petición.
(3) Compruebe la conexión correcta del cable paralelo del programador.

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-15


3

Código de error Todos los demás


Nombre Error del sistema interno de la CPU del PLC
Descripción Se ha producido un error en el sistema interno que no debería ocurrir en un
sistema de producción.
Corrección: Visualice la tabla de fallos del PLC en el programador. Póngase en contacto con
el Servicio de GE Fanuc, proporcionándole toda la información contenida en la
entrada del fallo.

Avería en las comunicaciones durante el almacenamiento

El grupo de fallos Avería en las comunicaciones durante el almacenamiento se produce durante


el almacenamiento de los bloques del programa y otros datos en el PLC. Este fallo se registrará si
las comunicaciones con el dispositivo programador que realiza el almacenamiento se interrumpen o
se produce cualquier otro fallo que interrumpe la carga. Mientras ese fallo exista en el sistema, el
PLC no pasará al modo RUN.
Este fallo no se borra automáticamente en la conexión; el usuario debe ordenar específicamente la
condición para que se borre. La acción de fallo para este grupo es Fatal. Para más información
sobre este fallo, consulte la sección “Efectos adicionales de los fallos” anteriormente expuesta en
este capítulo.

Corrección: Borre el fallo y reintente la transferencia del programa o del fichero de


configuración.

3-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
3

Sección 3: Explicaciones de la tabla de fallos de E/S

La tabla de fallos de E/S presenta los datos de los fallos en tres clasificaciones:
• Categoría del fallo
• Tipo de fallo
• Descripción de fallo
Los fallos descritos en la página siguiente tienen una categoría de fallo, pero no un tipo de fallo o
grupo de fallo.
La explicación de cada fallo contiene una descripción del fallo e instrucciones para
corregirlo.Muchas descripciones de fallos tienen múltiples causas.En estos casos, el código de
error, visualizado con la información adicional del fallo y que se obtiene pulsando CTRL-F, se
utiliza para distinguir las diferentes condiciones de fallo que comparten la misma descripción. (Para
más información sobre la utilización de CTRL-F, consulte el Anexo B, “Interpretación de las
tablas de fallos,” de este manual.) La categoría de fallo corresponde a los dos primeros dígitos
hexadecimales en el quinto grupo de números, como se muestra en el ejemplo siguiente.

02 1F0100 00030101FF7F 0302 0200 84000000000003


|
|_____ Categoría de fallo (primeros dos
dígitos hexadecimales en el quinto grupo)

La siguiente tabla permite encontrar rápidamente la explicación de un fallo determinado del E/S en
esta sección. Cada entrada está listada tal como aparece en la pantalla del programador.

Pérdida de un módulo de E/S


La categoría de fallo Pérdida de un módulo de E/S se aplica a los módulos de E/S digitales y
analógicos del Modelo 30. No hay tipos de fallos o descripciones de fallos asociados a esta
categoría. La acción del fallo es Diagnóstica.

Descripción El software de operación del PLC genera este error cuando detecta que un módulo
de E/S Modelo 30 ya no responde a los comandos procedentes de la CPU del
PLC, o cuando el fichero de configuración indica que un módulo de E/S debe
estar ocupando un slot y no existe ningún módulo en ese slot.
Corrección: (1) Sustituya el módulo.
(2) Corrija el fichero de configuración.
(3) Visualice la tabla de fallos del PLC en el programador. Póngase en contacto
con el Servicio de GE Fanuc, proporcionándole toda la información
contenida en la entrada del fallo.

GFK-0467M-SP Capítulo 3 Explicación y corrección de fallos 3-17


3

Adición de un módulo de E/S


La categoría de fallo Adición de un módulo de E/S se aplica a los módulos de E/S digitales y
analógicos del Modelo 30. No hay tipos de fallos o descripciones de fallos asociados a esta
categoría. La acción del fallo es Diagnóstica.

Descripción El software de operación del PLC genera este error cuando un módulo de E/S que
se había averiado vuelve a funcionar.
Corrección: (1) No es necesaria ninguna acción si el módulo se ha desmontado o sustituido,
o se ha efectuado un ciclo de desconexión/conexión del rack remoto.
(2) Actualice el fichero de configuración o extraiga el módulo.
Descripción El software de operación del PLC genera este error cuando detecta un módulo de
E/S del Modelo 30 en un slot que el fichero de configuración indice que debe
estar vacío.
Corrección: (1) Extraiga el módulo si está en un slot erróneo.
(2) Actualice y restaure el fichero de configuración para incluir el módulo extra
si debe encontrarse en ese lugar.

3-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de relé
4

Este capítulo explica el uso de contactos, bobinas y enlaces en los escalones de la lógica de
contactos.

Función Página
Bobinas y bobinas negadas. 4-2
Contactos normalmente abiertos y normalmente 4-1
cerrados.
Bobinas retentivas y retentivas negadas. 4-4
Bobinas de transición positiva y negativa. 4-5
Bobinas SET y RESET. 4-6
Bobinas retentivas SET y RESET. 4-7
Enlaces horizontales y verticales. 4-7
Bobinas y contactos de continuación 4-8

Uso de los contactos


Un contacto se utiliza para monitorizar el estado de una referencia. El que el contacto transfiera
flujo de energía depende del estado de la referencia que se está monitorizando y del tipo de
contacto. Una referencia está ACTIVADA si el estado es 1; está DESACTIVADA si el estado es 0.

Tabla 4-1. Tipos de contactos


Tipo de contacto Pantalla El contacto transfiere energía hacia la
derecha:
Normalmente abierta –| |– Cuando la referencia está ACTIVADA.
Normalmente cerrado -|/|- Cuando la referencia está DESACTIVADA.
Contacto de continuación <+>––– Si la bobina de continuación precedente está
ACTIVADA.

GFK-0467M-SP 4-1
4

Uso de las bobinas


Las bobinas se utilizan para controlar referencias digitales tales como tipos de memoria %Q y %M.
Debe utilizarse lógica condicional para controlar el flujo de energía a la bobina. Las bobinas
provocan acciones directamente; no transfieren flujo de energía hacia la derecha. Si debe
ejecutarse lógica adicional en el programa como consecuencia del estado de la bobina, debe
emplearse una referencia interna (contacto) para esa bobina, o una combinación bobina/contacto de
continuación. Las bobinas están siempre situadas en la posición extrema derecha de una línea de
lógica: Un escalón puede contener hasta ocho bobinas. El tipo de bobina utilizado dependerá del
tipo de acción del programa deseado. Los estados de las bobinas retentivas se guardan cuando se
desconecta y vuelve a conectar la alimentación o cuando el PLC cambia del modo STOP a RUN.
Los estados de las bobinas no retentivas se ponen a cero cuando se desconecta y se vuelve a
conectar la alimentación o cuando el PLC cambia del modo STOP a RUN.

Tabla 4-2. Tipos de bobinas

Tipo de Pantalla Alimentación Resultado


bobina bobina
Normalmente —()— ON ACTIVA la referencia.
Abierta OFF DESACTIVA la referencia.
Negada —(/)— ON DESACTIVA la referencia.
OFF ACTIVA la referencia.
Retentiva —(M)— ON ACTIVA la referencia, retentiva.
OFF DESACTIVA la referencia, retentiva.
Negada —(/M)— ON DESACTIVA la referencia, retentiva.
Retentiva OFF ACTIVA la referencia, retentiva.
Transición —(↑)— OFF→ON Si la referencia está DESACTIVADA, la ACTIVA
positiva durante un barrido.
Transición —(↓)— ON←OFF Si la referencia está DESACTIVADA, la ACTIVA
negativa durante un barrido.
SET —(S)— ON ACTIVA la referencia hasta que reset se
DESACTIVA mediante —(R)—.
OFF No varía el estado de la bobina.
RESET —(R)— ON DESACTIVA la referencia hasta que se reinicializa el
estado ACTIVADO mediante —(S)—.
OFF No varía el estado de la bobina.
SET retentivo —(SM)— ON ACTIVA la referencia hasta que reset se
DESACTIVA mediante —(RM)—, retentiva.
OFF No varía el estado de la bobina.
RESET —(RM)— ON DESACTIVA la referencia hasta que se reinicializa
al estado ACTIVADO mediante —(SM)—, retentiva.
retentivo OFF No varía el estado de la bobina.
Bobina ——<+> ON ACTIVA el contacto de continuación siguiente.
continuación OFF DESACTIVA el contacto de continuación siguiente.

4-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
4

Contacto normalmente abierto —| |—


Un contacto normalmente abierto actúa como interruptor que transfiere flujo de energía si la
referencia asociada está ACTIVADA (lógica 1).

Contacto normalmente cerrado —|/|—


Un contacto normalmente cerrado actúa como interruptor que transfiere flujo de energía si la
referencia asociada está DESACTIVADA (lógica 0).

Ejemplo
El siguiente ejemplo muestra un escalón con 10 elementos que poseen los alias (véase en el
Capítulo 2 la información sobre los alias) desde E1 hasta E10. La bobina E10 está ACTIVADA
cuando las referencias E1, E2, E5, E6 y E9 están ACTIVADAS y las referencias E3, E4, E7 y E8
están DESACTIVADAS.

|
| E1 E2 E3 E4 E5 E6 E7 E8 E9 E10
|——| |—————| |—————|/|—————|/|—————| |—————| |—————|/|—————|/|—————| |—————( )—
|

Bobina —( )—
Una bobina ACTIVA una referencia digital mientras recibe flujo de energía. Es no retentiva; por
lo tanto, no puede utilizarse con referencias de estado del sistema (%SA, %SB, %SC o %G) o
referencias Genius globales (%G).

Ejemplo
En este ejemplo, la bobina E3 está ACTIVADA cuando la referencia E1 está ACTIVADA y la
referencia E2 está DESACTIVADA.

|
| E1 E2 E3
|——| |—————|/|—————————————————————————————————————————————————————————————( )—
|

GFK-0467M-SP Capítulo 4 Funciones de relé 4-3


4

Bobina negada —(/)—


Una bobina negada ACTIVA una referencia digital cuando no recibe flujo de energía. Es no
retentiva; por lo tanto, no puede utilizarse con referencias de estado del sistema (%SA, %SB, %SC
o %G) o referencias Genius globales (%G).

Ejemplo
En este ejemplo, la bobina E3 está ACTIVA cuando la referencia E1 está DESACTIVADA.
|
| E1 E2
|——| |—————————————————————————————————————————————————————————————————————(/)—
|
| E2 E3
|——| |—————————————————————————————————————————————————————————————————————( )—
|

Bobina retentiva —(M)—


Al igual que una bobina normalmente abierta, la bobina retentiva ACTIVA una referencia digital
mientras recibe flujo de energía. El estado de la bobina retentiva se conserva después de un corte
de corriente. Por tanto, no puede utilizarse con referencias desde memoria estrictamente no
retentiva (%T).

Bobina retentiva negada —(/M)—


La bobina retentiva negada ACTIVA una referencia digital cuando no recibe flujo de energía. El
estado de la bobina retentiva negada se conserva durante un corte de corriente. Por tanto, no puede
utilizarse con referencias desde memoria estrictamente no retentiva (%T).

Bobina de transición positiva —(↑)—


Si la referencia asociada a una bobina de transición positiva está DESACTIVADA, cuando la
bobina recibe flujo de energía se ACTIVA. Los contactos asociados a esa bobina cambiarán el
estado durante una exploración (barrido) del PLC. (Si el circuito o escalón que contiene la bobina
se salta en barridos sucesivos, dicha bobina permanece ACTIVADA.) Esta bobina puede
emplearse como de una única ejecución.
Cada referencia deberá ser utilizada como bobina de transición solamente una vez en el programa
de aplicación, para preservar el carácter de una única ejecución de la bobina.
Las bobinas de transición pueden emplearse con referencias bien desde memoria retentiva o no
retentiva (%Q, %M, %T, %G, %SA, %SB o %SC).

4-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
4

Bobina de transición negativa —(↓)—


Si la referencia asociada a esta bobina es DESACTIVADA, cuando la bobina deja de recibir flujo
de energía, la referencia se ACTIVA y los contactos asociados a dicha bobina cambiarán el estado
durante un barrido.
Una referencia utilizada con una bobina de transición deberá ser utilizada como bobina de
transición solamente una vez en el programa de aplicación, para preservar el carácter de una única
ejecución de la bobina.
Las bobinas de transición pueden emplearse con referencias bien desde memoria retentiva o no
retentiva (%Q, %M, %T, %G, %SA, %SB o %SC).

Ejemplo
En este ejemplo, cuando la referencia E1 pasa de OFF a ON, las bobinas E2 y E3 reciben flujo de
energía, activando E2 durante un barrido de la lógica. Cuando E2 pasa de ON a OFF, el flujo de
energía de retira de E2 y E3, activando la bobina E3 durante un barrido.

|
| E1 E2
|——| |—————————————————————————————————————————————————————————————————(↑)—
|
| E1 E3
|——| |———————————————————————————————————————(↓)—
|

Bobina SET —(S) —


SET y RESET son bobinas no retentivas que pueden utilizarse para guardar (“encerrojar”) el
estado de una referencia que puede ser ON u OFF. Cuando la bobina SET recibe flujo de energía,
su referencia permanece en ON (independientemente de si la bobina misma continúa recibiendo
flujo de energía) hasta que se reinicialice la referencia mediante otra bobina.

Bobina RESET —(R)—


La bobina RESET desactiva una referencia digital si la bobina recibe flujo de energía. Esta
referencia permanece DESACTIVADA hasta que la referencia es activada por otra bobina. La
última bobina SET o RESET resuelta de un par tiene prioridad.

GFK-0467M-SP Capítulo 4 Funciones de relé 4-5


4

Ejemplo
En el siguiente ejemplo, la bobina representada por E1(S) se ACTIVA si E2 se ACTIVA. Incluso
si E2 se DESACTIVA, la bobina E1 permanece ACTIVADA hasta que la bobina E1(R ) recibe
energía de E3.
Nota: Si E2 y E3 estuvieran ACTIVADAS al mismo tiempo, la bobina E1 estaría
DESACTIVADA. Esto se debe a que los escalones se exploran de arriba hacia abajo, de modo que
el estado de la bobina reset en el segundo escalón es el último que se escribirá en la tabla de salida.
Si se invirtiese el orden de los escalones, la bobina set sería la última en ser explorada, de modo
que E1 estaría ACTIVADA si E2 y E3 estuvieran ACTIVADAS al mismo tiempo.

|
| E2 E1
|——| |———————————————————————————————————————————————————————————————————(S)—
|
|
|
|
| E3 E1
|——| |———————————————————————————————————————————————————————————————————(R)—
|
|
|
|

Nota
Cuando el nivel de comprobación de una bobina se configura como
INDIVIDUAL, puede utilizar una referencia %M o %Q específica con sólo una
bobina, pero puede utilizar dicha referencia con una bobina SET y una bobina
RESET simultáneamente.Cuando el nivel de comprobación de la bobina es
AVISO MULTIPLE o MULTIPLE, cada referencia puede utilizarse con
múltiples bobinas, bobinas SET y bobinas RESET.Cuando se hace un uso
múltiple, podría activarse una referencia bien mediante una bobina SET, o una
bobina normal y podría desactivarse mediante una bobina RESET, o una bobina
normal.

Bobina SET retentiva —(SM)—


Las bobinas SET y RESET retentivas son semejantes a las bobinas SET y RESET, pero se retienen
durante un corte de corriente o cuando el PLC efectúa una transición del modo STOP a RUN.
Una bobina SET retentiva ACTIVA una referencia digital si la bobina recibe flujo de energía. La
referencia permanece ACTIVADA hasta que se produce un reset mediante una bobina de RESET
retentiva.
Las bobinas RESET retentivas escriben un resultado indefinido del bit de transición para la
referencia dada. (Consulte la información en “Transiciones y overrides” en el Capítulo 2,
“Operación del sistema.”)

4-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
4

Bobina RESET retentiva —(RM)—


Esta bobina DESACTIVA una referencia digital mientras recibe flujo de energía. La referencia
permanece DESACTIVADA hasta que se activa mediante una bobina de SET retentiva. El estado
de esta bobina se retiene durante un fallo de la alimentación o cuando el PLC cambia del modo
STOP a RUN.
La bobinas RESET retentivas escriben un resultado indefinido del bit de transición para la
referencia dada. (Consulte la información en “Transiciones y overrides” en el Capítulo 2,
“Operación del sistema.”)

Enlaces
Los enlaces horizontales y verticales, que aparecen como líneas rectas en la pantalla, se usan para
conectar elementos de una línea de la lógica de contactos entre funciones. Su finalidad es la de
llevar a cabo el flujo de la lógica (“energía”) desde la izquierda a la derecha en una línea de lógica.

Nota
No se puede utilizar un enlace horizontal para conectar una función o bobina a la
línea de energía izquierda. Puede, sin embargo, utilizar %S7, el bit del sistema
ALW_ON (siempre on) con un contacto abierto enlazado a la línea de energía
para llamar a una función en cada barrido.

Ejemplo
En el siguiente ejemplo se utilizan varios enlaces:
• Los enlaces horizontales conectan el contacto E2 con el contacto E5, y el contacto E5 con la
bobina E1.
• Los enlaces verticales conectan el contacto E8 a un lado del contacto E6, el contacto E9 a un
lado del contacto E7, y el lado derecho de los contactos E7/E9 a la unión de los contactos E2
y E5.

Enlaces horizontales

E2 E5 E1

E3 E6 E7

E8 E9

Enlaces verticales

GFK-0467M-SP Capítulo 4 Funciones de relé 4-7


4

Bobinas (———<+>) y contactos (<+>———) de continuación


Las bobinas de continuación (—————<+>) y los contactos de continuación (<+>———) se usan para
continuar la lógica de relés en escalones más allá del límite de diez columnas. El estado de la
última bobina de continuación ejecutada es el estado de flujo que se empleará en el siguiente
contacto de continuación ejecutado. Debe de haber una bobina de continuación antes de que la
lógica ejecute un contacto de continuación. El estado del contacto de continuación se borra cuando
el PLC pasa de Stop a Run, y no habrá flujo a menos que se haya activado una bobina de
continuación después de ir al modo Run.
Puede haber únicamente una bobina y un contacto de continuación por circuito o escalón; el
contacto de continuación debe estar en la columna 1, y la bobina de continuación debe estar en la
columna 10. A continuación se muestra un ejemplo de un contacto y una bobina de continuación:

4-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Temporizadores y contadores
5

En este capítulo se explica como utilizar los temporizadores de retardo de conexión,


temporizadores de tipo cronómetro, contadores incrementales y contadores decrementales. Los
datos asociados a estas funciones son retentivos a través de los ciclos de conexión/desconexión.
Abreviaturas Función Página
ONDTR Temporizador de retardo a la 5-3
conexión, retentivo
TMR Temporizador de retardo a la 5-5
conexión, simple
OFDT Temporizador retardo a la 5-9
desconexión
UPCTR Contador incremental 5-12
DNCTR Contador decremental 5-14

Datos de bloques de función requeridos para temporizadores y


contadores
Cada temporizador o contador utiliza tres palabras (registros) de la memoria %R para almacenar la
siguiente información:
Valor actual (CV) Palabra
1
Valor predefinido Palabra
(PV) 2
Palabra de control Palabra
3
Cuando introduzca un temporizador o un contador, debe introducir una dirección inicial (la
dirección para la palabra 1) para este bloque de tres palabras directamente debajo del gráfico que
representa la función. En el siguiente ejemplo, esta dirección inicial es %R00100.

Habilitar ONDTR Q
0.10s

Reset R

Valor PV
predefinido

%R00100

GFK-0467M-SP 5-1
5

Nota
Asegúrese de que la dirección del bloque de tres palabras no es utilizada en
ninguna otra parte de su programa (el uso duplicado de la misma se denomina
“solapamiento”). Logicmaster no comprueba ni le avisa si los bloques registrados
están solapados. Los temporizadores y contadores no funcionarán correctamente
si se solapan sus bloques de tres palabras.

La palabra de control (la tercera palabra en el bloque de tres palabras) almacena el estado de las
entradas booleanas y las salidas de su bloque de función asociado, como se muestra en el siguiente
formato:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

Reservado

Reservado
Entrada reset
Entrada habilitar,
ejecución previa
Q (salida estado
tempr/contador)
EN (entrada habilitar)

Los bits 0 hasta 11 están reservados por el PLC para mantener la precisión de los temporizadores;
estos bits (0 hasta 11) no se utilizan para bloques de función de contadores.

Nota
Preste atención si utiliza la misma dirección para el parámetro de entrada del
valor predefinido (PV) de la función que para la segunda palabra en el bloque de
tres palabras. Si PV no es una constante, se le asigna normalmente una dirección
de la memoria distinta de la de la segunda palabra. Algunos programadores
eligen la dirección de la segunda palabra para la entrada del valor predefinido
(PV), utilizando por ejemplo %R0102 cuando el bloque de tres palabras
comienza con %R0101. Esto permite cambiar el PV en la aplicación mientras el
temporizador o el contador están en funcionamiento. Las aplicaciones pueden
leer la primera palabra (CV) o la tercera palabra (Control), pero no pueden
escribir en estos valores, ya que si se escribe en ellos la función no se ejecutará.

Nota especial sobre ciertas operaciones de bits


Cuando se utilizan las funciones de test de bits, configuración de bits, borrar
bits o posicionamiento de bits, los bits están numerados de 1 hasta 16, NO de 0
hasta 15 como se muestra más arriba.

5-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

ONDTR
Un temporizador de retardo de conexión retentivo (ONDTR) incrementa su cómputo mientras
recibe flujo de energía y detiene su valor cuando se interrumpe el flujo de energía. El tiempo puede
contarse en décimas de segundo (la selección por defecto), centésimas de segundo o milésimas de
segundo. El intervalo va de 0 hasta +32,767 unidades de tiempo: por tanto, el intervalo de
temporización es de 0.001 hasta 3,276.7 segundos. El estado de este temporizador es retentivo
cuando se produce un corte de corriente; en el arranque no se produce una reinicialización
automática.
Cuando el ONDTR recibe flujo de energía por primera vez, comienza a acumular tiempo (valor
actual). Cuando este temporizador se encuentra en la lógica de esquema de contactos, se actualiza
su valor actual.

Nota
Si durante un barrido de la CPU está habilitado el mismo temporizador múltiples
veces con idéntica dirección de referencia, los valores actuales de los
temporizadores será los mismos.

Cuando el valor actual es igual o superior al valor predefinido PV, se activa la salida Q. Mientras
el temporizador continúa recibiendo flujo de energía, continúa acumulando tiempo hasta que se
alcanza el valor máximo. Una vez se ha alcanzado el valor máximo, se conserva y la salida Q
permanece activada independientemente del estado de la entrada habilitar.
a42931

HABILITAR

RESET

A B C D E F G H

A = HABILITAR pasa a nivel alto; el temporizador comienza a acumular tiempo


B = CV alcanza PV; Q pasa a nivel alto.
C = RESET pasa a nivel alto; Q pasa al nivel bajo, el tiempo acumulado se reinicia.
D = RESET pasa a nivel bajo; luego, el temporizador comienza de nuevo a acumular
E = HABILITAR pasa a nivel bajo; el temporizador deja de acumular. El tiempo acumulado
permanece invariable
F = HABILITAR pasa de nuevo a nivel alto; el temporizador continúa acumulando tiempo
G = CV se hace igual a PV; Q pasa a nivel alto. El temporizador continúa acumulando
tiempo hasta que HABILITAR pasa a nivel bajo, RESET pasa a nivel alto o el valor
actual se hace igual al tiempo máximo
H = HABILITAR pasa a nivel bajo; el temporizador deja de acumular tiempo.

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-3


5

Cuando se detiene el flujo de energía hacia el temporizador, el valor actual deja de aumentar y se
retiene. La salida Q, si está activada, permanecerá activada. Cuando la función recibe de nuevo
flujo de energía, el valor actual aumenta de nuevo, comenzando por el valor retenido. Cuando reset
R recibe flujo de energía, el valor actual se reinicializa a cero y la salida Q se desactiva. En los
PLCs de las series 35x, 36x y 37x, si habilitar de ONDTR está en nivel bajo, PV = 0 y reset R
recibe flujo de energía, la salida estará en nivel bajo. Sin embargo, en los PLCs 311–341, en estas
mismas condiciones, la salida estará en nivel alto.

Habilitar Q
ONDTR
0.10s

Reset R Tiempo base

Valor PV
predefinido
Dirección del
bloque de
tres palabras

Parámetros

Parámetro Descripción
Dirección del La función ONDTR utiliza tres palabras consecutivas (registros) de memoria %R para
bloque de tres almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.

Cuando se introduce un ONDTR, se debe introducir una dirección para la localización de


la primera de estas tres palabras consecutivas (registros) directamente debajo del gráfico
que representa la función (el uso de las otras dos palabras está implícito).

Precaución: No utilice esta dirección con otras instrucciones. El solapamiento de las


referencias provocará un funcionamiento errático del temporizador.
Habilitar Cuando habilitar recibe flujo de energía, el temporizador comienza a funcionar.
R Entrada reset Cuando R recibe flujo de energía, restablece el valor actual a cero. La
entrada R, si es utilizada, debe conectarse mediante uno o más contactos a la líneas de
alimentación. Esto requiere que se coloque la instrucción ONDTR en la primera
posición (posición más a la izquierda) en el escalón.
PV Entrada valor predefinido. PV es el valor copiado como valor predefinido del
temporizador al habilitar o reinicializar el temporizador. El temporizador activará la
salida Q cuando acumula el tiempo del valor predefinido.
Q La salida Q se activa cuando el valor actual (CV) es mayor o igual que el valor
predefinido (PV).
Tiempo base Este parámetro puede programarse para incrementos de tiempo de décimas (0.1),
centésimas (0.01) o milésimas (0.001) de segundos. El valor del tiempo base se
multiplica por el número en el parámetro del valor predefinido (PV) para determinar el
valor predefinido actual.

5-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
dirección •
habilitar •
R •
PV • • • • • • • • • •
Q • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo
En este ejemplo, se utiliza un temporizador de retardo de desconexión retentivo para producir una
salida (%Q0011) que se activa 8.0 segundos después de que se active %Q0010 y se desactiva en el
momento en que se desactiva %Q0010. Esto es debido a que cuando %Q0010 se desactiva, su
contacto normalmente cerrado pasa flujo de energía a la entrada reset (R). El valor de tiempo de
8.0 segundos se obtiene multiplicando el valor PV (80) por el valor del tiempo base (0.1s).

| _____
| %Q0010 | | %Q0011
|——| |———|ONDTR|———————————————————————————————————————————————————————————( )—
| | 0.1s|
| %Q0010 | |
|——|/|———|R |
| | |
| | |
| CONST —|PV |
| +00080 |_____|
|
| %R0004

TMR
La función de temporizador de retardo de conexión simple (TMR) incrementa su cómputo de
tiempo mientras recibe flujo de energía y se reinicializa a cero cuando se detiene el flujo de
energía. El tiempo puede contarse en décimas de segundo (la selección por defecto), centésimas de
segundo o milésimas de segundo. El intervalo va de 0 hasta +32,767 unidades de tiempo, por tanto
el intervalo de temporización es de 0.001 hasta 3,276.7 segundos. El estado de este temporizador
es retentivo cuando se produce un corte de corriente; en el arranque no se produce una
reinicialización automática.
Cuando el TMR recibe flujo de energía por primera vez, el temporizador comienza a acumular
tiempo (valor actual). El valor actual se actualiza cuando se encuentra en la lógica con el fin de
reflejar el tiempo total transcurrido que ha estado habilitado el temporizador desde que se
reinicializó por última vez.

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-5


5

Nota
Si durante un barrido de la CPU está habilitado el mismo temporizador múltiples
veces con idéntica dirección de referencia, los valores actuales de los
temporizadores será los mismos.

El valor de tiempo transcurrido del temporizador (CV - valor actual) continúa acumulándose
mientras la lógica habilitar permanezca activada. Cuando el valor actual (CV) es igual o superior al
valor predefinido (PV), la función comienza a pasar flujo de energía hacia la derecha. El
temporizador continúa acumulando tiempo hasta que se alcanza el valor máximo (32,767 unidades
de tiempo). Cuando la entrada habilitar pasa de ON a OFF, el temporizador deja de acumular
tiempo y el valor actual se reinicializa a cero.
a42933
HABILITAR

A B C D E

A = HABILITAR pasa a nivel alto; el temporizador comienza a acumular tiempo.


B = El valor actual alcanza el valor predefinido PV; Q pasa al nivel alto y el temporizador continúa
acumulando tiempo.
C = HABILITAR pasa a nivel bajo; Q pasa a nivel bajo; el temporizador deja de acumular tiempo y se
borra el tiempo actual.
D = HABILITAR pasa a nivel alto; el temporizador comienza a acumular tiempo.
E = HABILITAR pasa a nivel bajo antes de que el valor actual alcance el valor predefinido PV; Q
permanece a nivel bajo; el temporizador deja de acumular tiempo y se pone a cero.

Habilitar Q
TMR
0.10s

Tiempo
base
Valor PV
predefinido
Dirección del
bloque de
tres palabras

5-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

Parámetros
Parámetro Descripción
Dirección del La función TMR utiliza tres palabras consecutivas (registros) de memoria %R para
bloque de tres almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.

Cuando se introduce un ONDTR, se debe introducir una dirección para la localización de


la primera de estas tres palabras consecutivas (registros) directamente debajo del gráfico
que representa la función (el uso de las otras dos palabras está implícito).

Precaución: No utilice esta dirección con otras instrucciones. El solapamiento de las


referencias provocará un funcionamiento errático del temporizador.
Habilitar Cuando habilitar recibe flujo de energía, el temporizador comienza a funcionar. Cuando
la entrada habilitar se desactiva, el valor actual se reinicializa a cero y Q se desactiva.
PV Entrada valor predefinido. PV es el valor copiado como valor predefinido del
temporizador al habilitar o reinicializar el temporizador. El temporizador activará la
salida Q cuando acumula el tiempo del valor predefinido.
Q La salida Q se activa cuando el valor actual (CV) es mayor o igual que el valor
predefinido (PV).
Tiempo base Este parámetro puede programarse para incrementos de tiempo de décimas (0.1),
centésimas (0.01) o milésimas (0.001) de segundos. El valor del tiempo base se
multiplica por el número en el parámetro del valor predefinido (PV) para determinar el
valor predefinido actual.

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
dirección •
habilitar •
PV • • • • • • • • • •
Q • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-7


5

Ejemplo
En el siguiente ejemplo, se usa un temporizador TMR para controlar el periodo de tiempo que la
bobina DWELL (tiempo de espera) está activada. El proceso de temporización comienza cuando el
contacto DO_DWL normalmente abierto (momentáneo) se activa, lo cual activa la bobina
DWELL. Un contacto DWELL mantiene la bobina DWELL activada (“encerrojada”) cuando el
contacto DO_DWL se abre; de igual modo, otro contacto DWELL habilita el temporizador.
Cuando el temporizador alcanza su valor preseleccionado de medio segundo, la bobina REL se
activa. El contacto REL, normalmente cerrado, se abre interrumpiendo la condición de encerrojada
de la bobina DWELL, que se desactiva. El contacto DWELL de la entrada habilitar del
temporizador se abre, lo cual interrumpe el flujo de energía al temporizador, reinicializa su valor
actual y desactiva la bobina REL. A continuación, el circuito está listo para otra activación del
contacto DO_DWL.

|
| DO_DWL REL DWELL
|——| |——+——|/|—————————————————————————————————————————————————————————————( )—
| |
| DWELL |
|——| |——+
| _____
| DWELL | | REL
|——| |———| TMR |———————————————————————————————————————————————————————————( )—
| | 0.1s|
| | |
| CONST —|PV |
| +00005 |_____|
|
| TMRID

5-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

OFDT
El valor acumulado del temporizador de retardo a la desconexión (OFDT) incrementa el cómputo
de tiempo mientras está desactivado el flujo de energía o se reinicializa a cero cuando el flujo de
energía está activado. El tiempo puede contarse en décimas de segundo (la selección por defecto),
centésimas de segundo o milésimas de segundo. El intervalo va de 0 hasta +32,767 unidades de
tiempo, por tanto el intervalo de temporización es de 001 hasta 3,276.7 segundos. El estado de este
temporizador es retentivo cuando se produce un corte de corriente; en el arranque no se produce
una reinicialización automática.
Cuando el temporizador de retardo a la desconexión (OFDT) recibe por primera vez flujo de
energía, pasa la energía hacia la derecha, y el valor actual (CV) se reinicializa a cero. (El OFDT
utiliza la palabra 1 [registro] como posición de almacenamiento de CV—encontrará más
información al respecto en la sección “Parámetros” de la página siguiente.) La salida permanece
activada mientras la función recibe flujo de energía. Si la función deja de recibir flujo de energía
de la izquierda, su salida permanece activada temporalmente, y el temporizador comienza a
acumular tiempo en el valor actual; una vez que el valor acumulado alcanza el valor predefinido, la
salida se desactiva.
Nota
Si durante un barrido de la CPU está habilitado el mismo temporizador múltiples
veces con idéntica dirección de referencia, los valores actuales de los
temporizadores será los mismos.

El temporizador de retardo a la desconexión no pasa flujo de energía si el valor predefinido es cero


o negativo. Cada vez que se llama a esta función desactivando la lógica de habilitación (en la
entrada habilitar), el valor actual se actualiza para reflejar el tiempo transcurrido desde que se
desactivó el temporizador. Cuando el valor actual (CV) es igual al valor predefinido (PV), la
función deja de a pasar flujo de energía hacia la derecha. Cuando esto ocurre, el temporizador deja
de acumular tiempo—véase la Parte C más abajo.
Cuando la función recibe flujo de energía de nuevo, el valor actual se reinicializa a cero.
a42932
HABILITAR

A B C D E F G H

A =HABILITAR y Q, ambas, pasan a nivel alto; el temporizador se reinicializa (CV = 0).


B = HABILITAR pasa a nivel bajo; el temporizador comienza a acumular tiempo.
C = El valor CV iguala al valor PV; Q pasa a nivel bajo y el temporizador deja de acumular tiempo.
D = HABILITAR pasa a nivel alto; el temporizador se reinicializa (CV = 0), Q pasa a nivel alto.
E = HABILITAR pasa a nivel bajo; el temporizador comienza a acumular tiempo, Q permanece en
nivel alto.
F = HABILITAR pasa a nivel alto; el temporizador se reinicializa (CV = 0), Q permanece en nivel
alto.
G = HABILITAR pasa a nivel bajo; el temporizador comienza a acumular tiempo, Q permanece en
nivel alto.
H = El valor CV iguala al valor PV; Q pasa a nivel bajo y el temporizador deja de acumular tiempo.

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-9


5

Habilitar Q
OFDT
0.10s

Tiempo
base
Valor PV
predefinido
Dirección del
bloque de
tres palabras

Cuando el OFDT se utiliza en un bloque de programa al cual no se llama en cada barrido, el


temporizador acumula tiempo entre llamadas al bloque de programa a no ser que se reinicialice.
Esto significa que funciona como un temporizador que trabaja dentro de un programa con un
barrido muy inferior al temporizador del bloque del programa principal. Para los bloques de
programa que permanecen inactivos durante un tiempo prolongado, el temporizador debería
programarse para permitir esta característica de captura. Por ejemplo, si el temporizador en un
bloque de programa se reinicializa y el bloque de programa no es llamado (está inactivo) durante 4
minutos, cuando se llama al bloque de programa, ya se habrán acumulado cuatro minutos de
tiempo. Este tiempo se aplica al temporizador al habilitarlo, a no ser que primero se reinicialice el
temporizador.

Parámetros
Parámetro Descripción
Dirección del El temporizador OFDT utiliza tres palabras consecutivas (registros) de memoria %R
bloque de tres para almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.

Cuando se introduce un OFDT, se debe introducir una dirección para la localización de


la primera de estas tres palabras consecutivas (registros) directamente debajo del gráfico
que representa la función (el uso de las otras dos palabras está implícito).

Precaución: No utilice esta dirección con otras instrucciones. El solapamiento de las


referencias provocará un funcionamiento errático del temporizador.
Habilitar Cuando la entrada habilitar está activada, la salida Q permanece activada y el valor
actual (CV) se mantiene en cero. Cuando la entrada habilitar se desactiva, el
temporizador comienza el cómputo. Cuando el valor actual (CV) alcanza el valor
predefinido (PV), el temporizador deja de acumular tiempo y Q se desactiva.
PV Entrada valor predefinido. PV es el valor copiado como valor predefinido del
temporizador al habilitar o reinicializar el temporizador. El temporizador desactivará la
salida Q cuando acumula el tiempo del valor predefinido.
Q La salida Q se activa (1) cuando la entrada habilitar está activada y (2) mientras el valor
actual (CV) sea menor que el valor predefinido (PV) después de que la entrada habilitar
se desactive.
Tiempo base Este parámetro puede programarse para incrementos de tiempo de décimas (0.1),
centésimas (0.01) o milésimas (0.001) de segundos. El valor del tiempo base se
multiplica por el número en el parámetro del valor predefinido (PV) para determinar el
valor predefinido actual.

5-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
dirección •
habilitar •
PV • • • • • • • • • • •
Q • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplos
En el ejemplo siguiente, un temporizador OFDT activa una bobina de salida %Q0001 siempre que
el contacto %I0001 esté cerrado. Después de abrirse %I0001, %Q0001 permanece activada
durante 2 segundos y después se desactiva.

%I0001 %Q0001

OFDT
0.10s

CONST PV
+00020
%R0019

En el siguiente ejemplo, la acción de salida se invierte por medio de una bobina de salida inversa.
En este circuito, un temporizador OFDT desactiva una bobina inversa de salida %Q0001 siempre
que el contacto %I0001 esté cerrado. Después de abrirse %I0001, %Q0001 permanece activada
durante 2 segundos y después se desactiva.

%I0001 %Q0001

OFDT
0.10s

CONST PV
+00020
%R0019

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-11


5

UPCTR
La función de contador incremental (UPCTR) se utiliza para contar de modo ascendente hasta un
valor designado. El intervalo de valores va de 0 hasta +32,767 unidades de cómputo. Cuando la
reinicialización (reset) del contador incremental está ACTIVADA, el valor actual de contador se
reinicializa a cero. Cada vez que la entrada habilitar pasa de OFF a ON, el valor actual se
incrementa en 1. El valor actual puede incrementarse más allá del valor predefinido PV. La salida
está ACTIVA siempre que el valor actual sea mayor o igual que el valor predefinido.
El estado del contador UPCTR es retentivo cuando se produce un corte de corriente; en el arranque
no se produce una reinicialización automática.

Habilitar UPCTR Q

Reset R

Valor PV
predefinido
Dirección del
bloque de
tres palabras

Parámetros
Parámetro Descripción
Dirección del El contador incremental UPCTR utiliza tres palabras consecutivas (registros) de
bloque de tres memoria %R para almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.

Cuando se introduce un UPCTR, se debe introducir una dirección para la localización de


la primera de estas tres palabras consecutivas (registros) directamente debajo del gráfico
que representa la función (el uso de las otras dos palabras está implícito).

Precaución: No utilice esta dirección con otras instrucciones. El solapamiento de las


referencias provocará un funcionamiento errático del temporizador.
Habilitar En cada transición positiva (de off a on) de la entrada habilitar, el valor actual del
contador (CV) se incrementa en 1.
PV Entrada valor predefinido. PV es el valor copiado al valor predefinido del contador
cuando se habilita o reinicializa el contador. El contador activará la salida Q cuando
acumula el tiempo del valor predefinido. Si el valor predefinido es una constante, deberá
ser un número positivo entre 0 y 32,767.
Q La salida Q se activa cuando el valor actual del contador (CV) es mayor o igual que el
valor predefinido (PV).
R Entrada reset. Cuando la entrada R se activa, el valor actual del contador (CV) se
reinicializa a cero.

5-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
dirección •
habilitar •
R •
PV • • • • • • • • • •
Q • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplos
Circuito del contador básico
En el siguiente ejemplo, el UPCTR incrementará su valor actual (CV) en uno cada vez que %I0001
efectúe una transición de off a on. La entrada PV configura el valor predefinido a 100. Cuando el
contador cuenta hasta 100, la bobina %Q0001 se activa. El contador seguirá contando transiciones
%I0001 más allá de su valor predefinido (de 100) bien hasta alcanzar su valor de cómputo máximo
(32, 767), o hasta que %I0020 se cierra y reinicializa el contador. %Q0001 estará activada siempre
que el valor CV sea igual o superior al valor PV.

%I0001 %Q0001
UPCTR

%I0020
R

CONST PV
+00100
%R0019

Circuito del contador de autorreinicialización


En este ejemplo, cada vez que la entrada %I0012 pasa de OFF a ON, el contador UPCT aumenta en
1 el cómputo; la bobina interna %M0001 se activa siempre que se hayan contado 100 transiciones
%I0012. Una vez que %M0001 se ACTIVA, el cómputo acumulado se reinicializa a cero mediante
el contacto %M0001 en la entrada R, y %M0001 se desactiva.

%I0012 %M0001
UPCTR

%M0001
R

CONST PV
+00100
%R0019

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-13


5

DNCTR
La función de contador decremental (DNCTR) se utiliza para contar en sentido descendente desde
un valor predefinido. El valor predefinido mínimo es cero; el valor actual máximo es +32,767
unidades de cómputo. El valor actual mínimo es –32,768. Cuando está reinicializado, el valor
actual del contador se configura al valor predefinido PV. Cada vez que la entrada habilitar pasa de
OFF a ON, el valor actual se decrementa en 1. La salida se ACTIVA siempre que el valor actual
sea menor o igual que cero.
El valor actual del DNCTR es retentivo cuando se produce un corte de corriente; en el arranque no
se produce una reinicialización automática.

Habilitar DNCTR Q

Reset R

Valor PV
predefinido

Dirección del
bloque de tres
palabras

Parámetros
Parámetro Descripción
Dirección del El contador decremental DNCTR utiliza tres palabras consecutivas (registros) de
bloque de tres memoria %R para almacenar lo siguiente:
palabras • • Valor actual (CV) = palabra 1.
• • Valor predefinido (PV) = palabra 2.
• • Palabra de control = palabra 3.

Cuando se introduce un DNCTR, se debe introducir una dirección para la localización de


la primera de estas tres palabras consecutivas (registros) directamente debajo del gráfico
que representa la función (el uso de las otras dos palabras está implícito).

Precaución: No utilice esta dirección con otras instrucciones. El solapamiento de las


referencias provocará un funcionamiento errático del contador.
Habilitar En cada transición positiva (de off a on) de la entrada habilitar, el valor actual del
contador (CV) se decrementa en 1.
PV Entrada valor predefinido. PV es el valor copiado en los registros del valor predefinido
(PV) y el valor actual (CV) del contador cuando éste se habilita o reinicializa. El
contador activará la salida Q cuando cuenta decrementalmente desde el valor actual a
cero.
Q La salida Q se activa cuando el valor actual del cómputo (CV) es menor o igual a cero.
R Entrada reset. Cuando la entrada R se activa, el valor actual del cómputo (CV) se
reinicializa al valor predefinido (PV), y la salida Q se desactiva.

5-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
dirección •
habilitar •
R •
PV • • • • • • • • • •
Q • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplos
En este ejemplo, el contador decremental identificado como COUNTP cuenta 5000 nuevas piezas
antes de activar la salida %Q0005.

| _____
|NEW_PRT | | %Q0005
|——| |—— >DNCTR|———————————————————————————————————————————————————————————( )—
| | |
|NXT_BAT | |
|——| |———|R |
| | |
| | |
| CONST —|PV |
| +05000 | |
| |_____|
| COUNTP
|

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-15


5

Ejemplos de cómputos de existencias


El siguiente ejemplo, el PLC se utiliza para efectuar un seguimiento del número de piezas
contenidas en una zona de almacenamiento temporal. Existen dos modos de llevar a cabo esta
función utilizando el juego de instrucciones de las Series 90-30/20/Micro. El primer método
consiste en utilizar un par de contadores incremental/decremental con un registro compartido para
el valor acumulado o actual. Cuando las piezas entran en el área de almacenamiento, el contador
incremental se incrementa en 1 (%I0001 se cierra), aumentando el valor actual de las piezas
almacenadas en 1. Cuando una pieza sale de la zona de almacenamiento, el contador decremental
disminuye en 1 su cómputo (%I0002 se cierra), reduciendo en uno el valor de almacenamiento de
existencias. Para evitar conflictos con el registro compartido, ambos contadores utilizan diferentes
direcciones de registro. Cuando un registro efectúa una operación de cómputo, su valor actual se
transfiere al registro de valor actual del otro contador. En el siguiente ejemplo, %I0001 incrementa
el cómputo, %I0002 decrementa el cómputo, %I0009 reinicializa el cómputo a cero y %I0003,
cuando está activada, mantiene el cómputo en su valor actual independientemente de lo que hagan
%I0001 y %I0002. El valor del cómputo puede leerse de %R0100.

|
| _____
|%I0003 | |
|——| |——+————————————————>UPCTR|
| | | |
|%I0001 | | |
+——| |——+ +————————+R |
| | | |
|%I0009 | | |
+——| |——————————+ CONST -+PV |
| +00005 | |
| +_____+
|
| %R0100
|
| _____
|%I0003 | |
|——| |——+—————————+MOVE_+
| | |INT |
|%I0001 | | |
+——| |——+ %R0100 -+IN Q|–%R0104
| | LEN |
| |00001|
| |_____|
|
| _____
|%I0003 | |
|——| |——+————————————————>DNCTR|
| | | |
|%I0002 | | |
+——| |——+ +————————+R |
| | | |
|%I0009 | | |
+——| |——————————+ CONST -+PV |
| +00005 | |
| +_____+
|
| %R0104
|
| _____
|%I0002 | |
|——| |——+—————————+MOVE_+
| | |INT |
|%I0003 | | |
+——| |——+ %R0104 -+IN Q|-%R0100
| | LEN |
| |00001|
| |_____|
|

5-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
5

Un segundo método para realizar el seguimiento de las existencias, mostrado más abajo, utiliza las
funciones ADD y SUB que comparten un registro común, %R00201, en sus salidas. Cuando el
cómputo aumenta ($I0004 se cierra), la instrucción ADD incrementa el valor en %R00201.
Cuando el cómputo decrementa (%I0005 se cierra), la instrucción SUB decrementa el valor en
%R00201. En este caso, las bobinas de transición se utilizan para proporcionar entradas “de una
ejecución” a las funciones ADD y SUB. Si las entradas habilitar no fueran del tipo de una
ejecución, las funciones ADD y SUB se ejecutarían una vez en cada barrido en que estuvieran
habilitadas. (Las bobinas de transición no son necesarias con las funciones UPDTR y DNCTR ya
que sus entradas habilitadas poseen una función de transición integrada.) En el Capítulo 6
encontrará más detalles sobre las funciones ADD y SUB.

|
|
|%I0004 %M0001
+———| |—————————————————————————————————————————————————————————————————————(↑)—
|
|
|%I0005 %M0002
+——| |——————————————————————————————————————————————————————————————————————(↑)—
|
|
| _____
|%M0001 | |
|——| |———| ADD_|—
| | |
| | INT |
| | |—
|%R0201 —|I1 Q|—%R00201
| | |
| | |
| CONST —|I2 |
| +00001 |_____|
|
|
|
| _____
|%M0002 | |
|——| |———| SUB_|—
| | |
| | INT |
| | |
|%R0201 —|I1 Q|—%R00201
| | |
| | |
| CONST —|I2 |
| +00001 |_____|
|

GFK-0467M-SP Capítulo 5 Temporizadores y contadores 5-17


Capítulo Funciones matemáticas
6

Este capítulo describe las funciones matemáticas del juego de instrucciones de las Series 90-
30/20/Micro:

Abreviaturas Función Descripción Página


ADD Adición Suma dos números. 6-2
SUB Sustracción Sustrae un número de otro. 6-2
MUL Multiplicación Multiplica dos números. 6-2
DIV División Divide un número entre otro, obteniéndose un 6-2
cociente.
MOD División por módulo Divide un número entre otro, obteniéndose un 6-8
resto.
SQRT Raíz cuadrada Determina la raíz cuadrada de un valor entero 6-10
o real.
SIN, COS, TAN, Funciones trigonométricas Realiza la función apropiada con un valor real 6-12
ASIN, ACOS, en la entrada IN.
ATAN
LOG, LN Funciones Realiza la función apropiada con un valor real 6-14
EXP, EXPT logarítmicas/exponenciales † en la entrada IN.
RAD, DEG Conversión a radianes † Realiza la función apropiada con un valor real 6-16
en la entrada IN.

† Las funciones trigonométricas, funciones logarítmicas/exponenciales y funciones de conversión a


radianes sólo están disponibles en el modelo de CPU de las series 35x y 36x, versión 9.00 o posterior, y
en todas las versiones de la CPU352 y CPU37x.

Nota
La división y la división por módulo son funciones similares que difieren en su
salida; la división calcula un cociente, mientras que la división por módulo
calcula un resto.

GFK-0467M-SP 6-1
6

Funciones matemáticas estándar (ADD, SUB, MUL, DIV)


Las funciones matemáticas incluyen la adición, sustracción, multiplicación y división. Cuando una
función matemática recibe flujo de energía, la función matemática correspondiente se ejecuta con
los parámetros de entrada I1 y I2. Estos parámetros deben ser del mismo tipo de datos. La salida Q
es del mismo tipo de datos que I1 y I2.

Reglas para las funciones matemáticas


Signo del Las reglas matemáticas estándar para la aritmética de números con signo se
resultado aplican para determinar el signo del resultado.

Adición La instrucción ADD utiliza la fórmula I1 + I2 = Q.

Sustracción La instrucción SUB utiliza la fórmula I1 – I2 = Q.

Multiplicación La instrucción MUL utiliza la fórmula I1 x I2 = Q.

División La instrucción DIV utiliza la fórmula I1 ÷ I2 = Q.


Para los tipos INT y DINT. DIV redondea por defecto a un cociente número
entero (los restos se desprecian) para los tipos INT o DINT; no redondea al
entero más próximo. Por ejemplo, 53 dividido entre 5 = 10 (el resto 3 se
desprecia).
Para el tipo REAL. DIV produce un resultado de número real para el tipo
Real

División por La instrucción MOD sólo, puede utilizar los tipos INT y DINT (REAL no es
módulo soportado). La instrucción MOD utiliza la fórmula I1 ÷ I2 = Q. Sin embargo,
MOD produce sólo el resto de la operación de división y desprecia el cociente.
Por ejemplo, 53 dividido entre 5 = 3 (el cociente 10 se desprecia).

Tipos de datos para funciones matemáticas


Después de programar una función matemática, se puede seleccionar el tipo de datos. El tipo de
datos aparecerá en la función justo debajo del nombre de la misma (véase el ejemplo de la siguiente
figura). Los tres tipos de datos disponibles para las funciones matemáticas están listados en la
siguiente tabla:
Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo de doble precisión.
REAL* Coma flotante
* El tipo de datos REAL sólo está disponible en las CPUs de las
series 35x y 36x, versión del firmware 9.00 o posterior, y en todas
las versiones de la CPU352 y CPU37X.

6-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

El tipo de datos por defecto es el entero con signo. Para más información acerca de los tipos de
datos, consulte el Capítulo 2, Sección 2, “Organización del programa y datos/referencias del
usuario.”
Si el resultado de la operación INT o DINT excede la capacidad, la referencia de salida toma su
mayor valor posible para este tipo de datos. Para números con signo, el signo se pone para indicar
el sentido del exceso. Si el resultado de la operación no excede la capacidad (y las entradas son
números válidos), la salida ok se ACTIVA; de no ser así, se DESACTIVA. Si se utilizan enteros
con signo o de doble precisión, el signo del resultado dependerá de los signos de las entradas I1 e
I2.

Habilitar ADD OK

INT Tipo de
datos
Entrada 1 I1 Q Salida

Entrada 2 I2

Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para el primer valor utilizado en la operación.
(I1 está en el lado izquierdo de la ecuación matemática, como en I1 — I2).
I2 I2 contiene una constante o referencia para el segundo valor utilizado en la operación.
(I1 está en el lado derecho de la ecuación matemática, como en I1 — I2).
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser que se
produzca una operación no válida.
Q La salida Q contiene el resultado de la operación.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
I1 o o o o o • • • •†
I2 o o o o o • • • •†
ok • •
Q o o o o o • • •
• Lugar o referencia válida donde la energía puede fluir a través de la función.
o Referencia válida sólo para los datos INT; no válida para DINT o REAL.
† Si se utiliza Logicmaster, sólo se podrán introducir valores entre –32,768 y +32,767 para las operaciones con enteros con signo
de doble precisión. Con VersaPro, se pueden introducir todos los valores de doble precisión.

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-3


6

Nota
El tipo por defecto es INT para operandos de 16 bits u operandos de registro
simple. En Logicmaster, pulse F10 para cambiar la selección de los Tipos a
DINT, palabra doble de 32 bits, o REAL (sólo para las CPUs de las series 35x,
36x y 37x). Los valores INT del PLC ocupan un registro simple de 16 bits, %R,
%AI o %AQ. Los valores DINT requieren dos registros consecutivos con los 16
bits bajos en la primera palabra y los 16 bits altos con el signo en la segunda
palabra. Los valores de tipo REAL, en la CPU de las series 35x y 36x (versión
9.00 o posterior) y todas las versiones de la CPU352 y CPU37x, ocupan también
un registro doble de 32 bits con el signo en el bit alto seguido del exponente y la
mantisa.

Ejemplos de funciones matemáticas

Circuito ADD con un problema


En el siguiente ejemplo, se ha intentado crear un circuito contador para contar el número de veces
que se cierra el interruptor %I0001. El cómputo total se almacena en el registro %R0002. La
finalidad de este diseño es que cuando %I0001 se cierre, la instrucción ADD añada uno al valor en
%R0002 (la entrada en I2) y coloque el nuevo valor nuevamente en %R0002 (la salida en Q). El
problema de este diseño es que la instrucción ADD se ejecutará en cada exploración del PLC
mientras %I0001 está cerrado. Por ejemplo, si %I0001 permanece cerrado durante cinco
exploraciones, la salida se incrementará cinco veces, a pesar de que %I0001 sólo se cierre una vez
durante ese periodo. Para solucionar este problema la entrada habilitar de la instrucción ADD
deberá provenir de una bobina de transición (“de una sola ejecución”), como se muestra en la
segunda figura inferior.

%I0001 %Q0001
ADD

INT

%R0002 I1 Q %R0002
+00095 +00095

CONST I2
+00001

En el siguiente circuito mejorado, el interruptor de entrada %I0001 controla una bobina de


transición (“de una sola ejecución”), %M0001, cuyo contacto activa la entrada habilitar de la
función ADD durante sólo una exploración cada vez que el contacto %I0001 se cierra. Para que el
contacto %M0001 se cierre de nuevo, el contacto %I0001 debe abrirse y cerrarse otra vez.

6-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

Diseño del circuito ADD corregido

%I0001 %M0001

%M0001 %Q0001
ADD

INT

%R0002 I1 Q %R0002
+00095 +00095

CONST I2
+00001

Tipos de datos y funciones matemáticas

Función Operación Se indica como


ADD INT Q(16 bit) = I1(16 bit) + I2(16 bit) Número de base 10 de 5 dígitos con signo

ADD DINT Q(32 bit) = I1(32 bit) + I2(32 bit) Número de base 10 de 8 dígitos con signo

ADD REAL* Q(32 bit) = I1(32 bit) + I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal

SUB INT Q(16 bit) = I1(16 bit) – I2(16 bit) Número de base 10 de 5 dígitos con signo

SUB DINT Q(32 bit) = I1(32 bit) – I2(32 bit) Número de base 10 de 8 dígitos con signo

SUB REAL* Q(32 bit) = I1(32 bit) – I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal

MUL INT Q(16 bit) = I1(16 bit) * I2(16 bit) Número de base 10 de 5 dígitos con signo

MUL DINT Q(32 bit) = I1(32 bit) * I2(32 bit) Número de base 10 de 8 dígitos con signo

MUL REAL* Q(32 bit) = I1(32 bit) * I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal

DIV INT Q(16 bit) = I1(16 bit) / I2(16 bit) Número de base 10 de 5 dígitos con signo

DIV DINT Q(32 bit) = I1(32 bit) / I2(32 bit) Número de base 10 de 8 dígitos con signo

DIV REAL* Q(32 bit) = I1(32 bit) / I2(32 bit) Número de base 10 de 7 dígitos, signo y decimal

* Sólo CPUs de las series 35x y 36x, versión 9 o posterior, y todas las versiones de la CPU352 y CPU37x.

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-5


6

Nota
Los tipos de datos de entrada y salida deben de ser iguales en las funciones
matemáticas. Las funciones MUL y DIV no soportan un modo mixto como lo
hacen los PLCs de las Series 90-70. Por ejemplo, la MUL INT de dos entradas de
16 bits produce un producto de 16 bits, no un producto de 32 bits. Si se utiliza
MUL DINT para un producto de 32 bits ambas entradas deberán ser de 32 bits.
La DIV INT divide una I1 de 16 bits entre una I2 de 16 bits para obtener un
resultado de 16 bits, mientras que DIV DINT divide una I1 de 32 bits entre una
I2 de 32 bits para obtener un resultado de 32 bits.

Cuando están habilitadas, estas funciones dejan pasar energía si no existe un


desbordamiento matemático. Si se produce un desbordamiento matemático, el
resultado es el valor máximo con el signo adecuado y sin flujo de energía.

Tenga cuidado para evitar los desbordamientos cuando utilice las funciones MUL y DIV. Si debe
convertir valores INT a DINT, recuerde que la CPU utiliza el complemento a 2 estándar con el
signo extendido al bit más alto de la segunda palabra (la más significativa). Debe comprobar el
signo de la palabra de 16 bits menor y extenderlo a la segunda palabra de 16 bits. Si el bit más
significativo de una palabra baja INT de 16 bits vale 0 (indicado valor positivo), mueva un 0 a la
segunda palabra. Si el bit más significativo de una palabra de 16 bits es –1 (indicando un valor
negativo), mueva un –1 o 0FFFFh (hexadecimal) a la segunda palabra. La conversión de DINT a
INT es más fácil ya que la palabra de 16 bits bajos (primer registro) es la parte INT de una palabra
DINT de 32 bits. Los 16 bits superiores o la segunda palabra deben tener un valor 0 (positivo) o –1
(negativo) o el DINT será excesivamente grande para convertirlo a 16 bits.
Ejemplo
Una aplicación común es convertir valores de entrada analógicos con una operación MUL seguida
de una operación DIV y posiblemente de una operación ADD. Una entrada analógica de 0 a ± 10
voltios colocará valores de 0 a ± 32,000 en su correspondiente registro de entrada %AI.
Multiplicando este registro de entrada mediante una función INT MUL se obtendrá como resultado
un desbordamiento, ya que una instrucción de tipo INT tiene un intervalo de entrada y salida de
32,767 hasta –32,768. Si se utiliza el valor %AI como una entrada para la función MUL DINT
tampoco será correcto, ya que la I1 de 32 bits combinará 2 entradas analógicas al mismo tiempo.
Para resolver este problema, se puede mover la entrada analógica a la palabra inferior de un registro
doble, entonces comprobar el signo y poner el segundo registro a 0 si el signo es positivo o a –1 si
es negativo. A continuación utilice el doble registro que acaba de crear con una función MUL
DINT que proporciona un resultado de 32 bits, y que puede ser utilizado con la siguiente función
DINT DIV.
Por ejemplo, la siguiente lógica puede emplearse para convertir una %AI1 de entrada de ± 10
voltios a ± 25000 unidades de ingeniería en %R5.

6-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

| _____ _____ _____


|ALW_ON | | | | | |
|——] [———| MOVE|—————————————————| MOVE|—————————————————| LT_ | |——————————<+>
| | | | | | | |
| | INT | | INT | | INT | |
| | | | | | | |
|%AI0001–|IN Q|–%R0001 CONST –|IN Q|–%R0002 %R0001 –|I1 Q|-
| | LEN | +00000 | LEN | | |
| |00001| |00001| | |
| |_____| |_____| CONST –|I2 |
| +00000 |_____|
|
| _____
| | |
|<+>—————|MOVE_|–
| | |
| | INT |
| | |
| CONST –|IN Q|–%R0002
| –00001 | LEN |
| |00001|
| |_____|
|
|
| _____ _____
|ALW_ON | | | |
|——] [———————————| MUL_|—————————————————————————————————| DIV_|–
| | | | |
| | DINT| | DINT|
| | | | |
| %R0001 –|I1 Q|–%R0003 %R0003 –|I1 Q|–%R0005
| | | | |
| CONST –|I2 | CONST –|I2 |
| +0000025000 |_____| +0000032000 |_____|
|

Un modo alternativo, pero menos preciso, de programar este circuito utilizando las instrucciones
INT conlleva colocar primeramente la instrucción DIV, seguida de la instrucción MUL. El valor
de I2 para la instrucción DIV sería 32, y el valor de 12 para la instrucción MUL sería 25. Esto
mantiene la proporción de conversión del circuito anterior y mantiene los valores dentro del
intervalo de trabajo de las instrucciones del tipo INT. Sin embargo, la instrucción DIV desprecia
inherentemente cualquier valor de resto, de modo que cuando la salida DIV es multiplicada por la
instrucción MUL, el error introducido por el resto despreciado se multiplica. El porcentaje de error
es no lineal en todo el intervalo de valores de entrada y es mayor a menores valores de entrada.
En contraste, en el ejemplo superior, los resultados son más precisos ya que la operación DIV se
efectúa en último lugar, de modo que el resto despreciado no se multiplica. Si se necesita una
exactitud aún mayor, sustituya las instrucciones matemáticas de tipo REAL de este ejemplo, para
que el resto no sea despreciado.

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-7


6

MOD (INT, DINT)


La función Módulo (MOD) se utiliza para dividir un valor entre otro del mismo tipo y obtener el
resto. El signo del resultado es siempre el mismo que el signo del parámetro de entrada I1.
La función MOD actúa sobre los siguientes tipos de datos:

Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo de doble precisión.

El tipo de datos por defecto es el entero con signo; sin embargo, puede cambiarse tras seleccionar
la función. Para más información acerca de los tipos de datos, consulte el Capítulo 2, Sección 2,
“Organización del programa y datos/referencias del usuario.”
Cuando la función recibe flujo de energía, divide el parámetro de entrada I1 entre el parámetro de
entrada I2. Estos parámetros deben ser del mismo tipo de datos. La salida Q se calcula utilizando la
fórmula:
Q = I1 - ([I1 DIV I2] * I2)
donde DIV produce un número entero. La salida Q es del mismo tipo de datos que los parámetros
de entrada I1 y I2.
OK está siempre ACTIVADA cuando la función recibe flujo de energía, a no ser que se intente
dividir entre cero. En tal caso, se DESACTIVA.

Habilitar MOD OK

INT Tipo de
datos
Entrada 1 I1 Q Salida

Entrada 2 I2

Parámetros

Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o una referencia para el valor que debe dividirse entre I2.
I2 I2 contiene una constante o referencia para el valor que debe dividirse entre I1.
OK La salida ok se activa cuando la función se ejecuta sin desbordamiento.
Q La salida Q contiene el resto, si lo hay, que resulta de dividir I1 entre I2. Si el valor en
I2 es un múltiplo par de I1, la salida Q será cero, indicando que no hay resto.

6-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
I1 o o o o o • • • •†
I2 o o o o o • • • •†
ok • •
Q o o o o o • • •
• Lugar o referencia válida donde la energía puede fluir a través de la función.
o Referencia válida sólo para los datos INT; no válida para DINT.
† Las constantes están limitadas a los valores entre –32,768 y +32,767 para las operaciones de enteros con signo de doble
precisión.

Ejemplo
En el siguiente ejemplo, se están llenando automáticamente cajas con piezas. Una caja contiene
seis piezas. Este circuito determina el estado de la caja que está siendo actualmente llenada
utilizando la división de módulo. Cuando está habilitada, la función MOD divide el registro
(PIEZAS) que contiene el número de piezas producidas, entre seis. La salida (ESTADO) de la
instrucción MOD indica cuántas piezas (entre 1 y 5) han sido cargadas en la caja actual. Cuando la
caja actual está llena, la salida en Q se iguala a cero; Si la caja actual está sólo parcialmente llena,
la salida indicará el número de piezas que hay ya en la caja. Los valores del ejemplo muestran que
se han producido un total de 17 piezas y que la caja actual contiene cinco piezas. (Las otras 12
piezas llenan dos cajas.)

%I0001

MOD

INT

PIEZAS I1 Q ESTADO
+0017 +0005

CONST I2
+0006

Para determinar el número de cajas llenas, se puede usar la instrucción DIV en el siguiente circuito.
%I0001

DIV

INT

PIEZAS I1 Q CAJAS
+0017 +0002

CONST I2
+0006

Un posible problema con estos circuitos es que el registro denominado con el alias PIEZAS puede
contener sólo un máximo de 32,767 unidades. Si se desea realizar un cómputo mayor, se necesitará
lógica adicional para (1) reinicializar el registro PIEZAS antes de que alcance su valor máximo, (2)
para detectar el número de cajas llenas antes de reinicializar el registro PIEZAS y (3) para
reinicializar el registro PIEZAS cuando el registro ESTADO es cero, de modo que el cómputo
mantenga la exactitud.

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-9


6

SQRT (INT, DINT, REAL)


La función raíz cuadrada (SQRT) se utiliza para hallar la raíz cuadrada de un valor. Cuando la
función recibe flujo de energía, el valor de la salida Q se configura a la parte entera de la raíz
cuadrada de la entrada IN. La salida Q debe ser del mismo tipo de datos que IN.
La función SQRT actúa sobre los siguientes tipos de datos:
Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo de doble precisión.
REAL Coma flotante

Para los tipos de datos INT y DINT, sólo se obtendrá la parte entera del número resultante de la
raíz cuadrada. La parte fraccionaria se elimina. Por ejemplo, la raíz cuadrada de 2 ó 3 será 1, y la
raíz cuadrada de 5, 6, 7 ó 8 será 2.

Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9.00 o posterior, y en todas las versiones de la CPU352 y CPU37X.

El tipo de datos por defecto es el entero con signo; sin embargo, puede cambiarse tras seleccionar
la función. Para más información acerca de los tipos de datos, consulte el Capítulo 2, Sección 2,
“Organización del programa y datos/referencias del usuario.”
OK se ACTIVA si la función se realiza sin desbordamiento. Si se realiza alguna de las siguientes
operaciones no válidas, OK se DESACTIVA:
• IN < 0
• IN es un NaN (No un Número)
Habilitar SQRT OK

INT Tipo de
datos
Entrada IN Q Salida

Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene una constante o una referencia para el valor cuya raíz cuadrada se desea
calcular. Si IN es menor que cero, la función no pasará flujo de energía.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser que se
produzca una operación no válida.
Q La salida Q contiene la raíz cuadrada de IN. Sin embargo, para INT y DINT, sólo se
retendrá la parte entera del número; las partes fraccionarias serán eliminadas.

6-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
IN o o o o o • • • •†
ok • •
Q o o o o o • • •
• Lugar o referencia válida donde la energía puede fluir a través de la función.
o Referencia válida sólo para los datos INT; no válida para DINT y REAL.
† Las constantes están limitadas a los valores entre –32,768 y +32,767 para las operaciones de enteros con signo de doble
precisión.

Ejemplos
En este ejemplo, la raíz cuadrada del número entero situada en %R0008 se coloca en el registro
%R0009 siempre que %I0001 esté ACTIVADO.

%I0001
SQRT OK

INT

%R0008 IN Q %R0009
+00019 +00004

Como alternativa al ejemplo anterior, la misma función puede realizarse con una instrucción SQRT
de tipo REAL, que proporciona un resultado más exacto como se muestra en la siguiente figura.
%I0001

SQRT OK

REAL

%R0008 IN Q %R0009
+19.00000 +4.358899

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-11


6

Funciones trigonométricas (SIN, COS, TAN, ASIN, ACOS, ATAN)


Las funciones SIN, COS y TAN se utilizan para hallar el seno, el coseno y la tangente
trigonométrica respectivamente de la entrada. Cuando una de estas funciones recibe flujo de
energía, calcula el seno (o coseno o tangente) de IN, cuyas unidades son radianes y almacena el
resultado en la salida Q. Tanto IN como Q son valores de coma flotante.
Las funciones ASIN, ACOS y ATAN se utilizan para hallar la inversa del seno, del coseno y de la
tangente trigonométrica respectivamente de la entrada. Cuando una de estas funciones recibe flujo
de energía, aplica la función designada al valor en la entrada IN y almacena el resultado en la salida
Q, cuyas unidades son radianes. Tanto IN como Q son valores de coma flotante.
Las funciones SIN, COS y TAN aceptan un amplio intervalo de valores de entrada, donde
–263 < IN <+263, (263 ≈ 9.22x1018).
Las funciones ASIN y ACOS aceptan un pequeño intervalo de valores de entrada, donde – 1 ≤ IN ≤
1. Dado un valor válido para el parámetro IN, la ASIN_REAL produce un resultado Q que:

π π
ASIN (IN) = ≤ Q ≤
2 2

La función ACOS_REAL producirá un resultado en Q que:

ACOS (IN) = 0 ≤ Q ≤ π

La función ATAN acepta el intervalo mayor de valores de entrada, donde – ∞ ≤ IN ≤ + ∞. Dado


un valor válido del parámetro IN, la función ATAN_REAL producirá un resultado Q que:

π π
ATAN (IN) = ≤ Q ≤
2 2
_____
| |
(habilitar) —| SIN_|— (ok)
| |
| REAL|
| |
(parámetro de entrada IN) —|IN Q|— (parámetro de salida Q)
|_____|

Nota
Las funciones TRIG sólo están disponibles en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37x.

6-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene el valor real constante o de referencia al que debe aplicarse la función.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento,
a no ser que se produzca una operación no válida y/o IN sea un NaN.
Q La salida Q contiene un valor trigonométrico de IN.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • •
ok • •
Q • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo
En este ejemplo, el coseno del valor almacenado en %R0001 se coloca en %R0033.
| _____
|ALW_ON | |
|——] [—————————| COS_|—
| | |
| | REAL|
| | |
| %R0001—|IN Q|—%R0033
| | |
| +3.141500|_____| -1.000000
|

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-13


6

Funciones logarítmicas/exponenciales (LOG, LN, EXP, EXPT)


Las funciones LOG, LN y EXP poseen dos parámetros de entrada y dos parámetros de salida.
Cuando la función recibe flujo de energía, ejecuta la operación logarítmica/exponencial apropiada
con un valor real de la entrada IN y coloca el resultado en la salida Q.
• En el caso de la función logaritmo decimal LOG, el logaritmo decimal de IN se coloca en Q.
• En el caso de la función logaritmo natural LN, el logaritmo natural de IN se coloca en Q.
• En el caso de la función potencia de E EXP, e se eleva a la potencia especificada por IN y el
resultado se coloca en Q. (Nota: e es una constante utilizada en los cálculos logarítmicos.
Tiene un valor aproximado de 2.71828.)
• En el caso de la función potencia de X EXPT, el valor de la entrada I1 se eleva a la potencia
especificada por el valor I2 y el resultado se coloca en Q. (La función EXPT tiene tres
parámetros de entrada y dos parámetros de salida.)
La salida ok recibirá flujo de energía a no ser que la entrada sea un NaN (No un Número) o sea
negativa.
_____
| |
(habilitar) —| LOG_|— (ok)
| |
| REAL|
| |
| |
(parámetro de entrada IN) —|IN Q|— (parámetro de salida Q)
|_____|

Parámetros

Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene el valor al que debe aplicarse la operación.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser que se
produzca una operación no válida y/o IN sea NaN o negativa.
Q La salida Q contiene el valor logarítmico/exponencial de IN.

Nota
Las funciones LOG, LN, EXP y EXPT sólo están disponibles en las CPUs de las
series 35x y 36x, versión 9 o posterior, y en todas las versiones de la CPU352 y
CPU37x.

6-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

Nota
Cuando el valor de entrada, IN, para la función EXP es infinito negativo (-∞), la
función devuelve el valor cero, como se esperaba. En tal caso,en la CPU352 la
función no pasa flujo de energía. Para todas las demás CPUs 90-30, la función
pasa flujo de energía, aunque la salida sea cero. (El valor -∞ resulta de dividir
un valor negativo entre cero. En la pantalla de Logicmaster aparecerá como
−DESBORDAMIENTO.)

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
IN* • • • •
ok • •
Q • • •
I1* • • • •
I2* • • • •
* Para la función EXPT, la entrada IN es sustituida por los parámetros I1 e I2.
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo
En este ejemplo, el valor de %AI001, +3.000000, se eleva a la potencia de +2.500000 y el
resultado, +15.58846, se coloca en %R0001.

| _____
|ALW_ON | |
|——] [—————————|EXPT_|—
| | |
| | REAL|
| | |
| | |
| %AI0001—|I1 Q|—%R0001
| +3.000000 | | +15.58846
| | |
| | |
| CONST —|I2 |
| +2.500000 |_____|
|

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-15


6

Conversión a radianes (RAD, DEG)


Cuando la función conversión grados/radianes recibe flujo de energía, se ejecuta la conversión
correspondiente ( RAD_TO_DEG o DEG_TO_RAD, es decir, radianes a grados o grados a
radianes) sobre el valor real existente en la entrada IN y el resultado se coloca en la salida Q.
La salida ok recibirá flujo de energía a no ser que IN sea un NaN (No un Número).
_____
| |
(habilitar) —| RAD_|— (ok)
| |
| TO_ |
| |
| DEG |
| |
(parámetro de entrada IN) —|IN Q|— (parámetro de salida Q)
|_____|

Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
IN IN contiene el valor al que debe aplicarse la operación.
ok La salida ok se activa cuando la función se ejecuta sin desbordamiento, a no ser de que IN
sea una NaN.
Q La salida Q contiene el valor convertido de IN.

Nota
Las funciones de conversión a radianes sólo están disponibles en las CPUs de las
series 35x y 36x, versión 9 o posterior, y en todas las versiones de la CPU352 y
CPU37x.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • •
ok • •
Q • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

6-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
6

Ejemplo
En el ejemplo, +1500 se convierte a DEG y se coloca en %R0001.

| _____
|ALW_ON | |
|——] [———————————————————————————| RAD_|
| | |
| | TO_|
| | |
| | DEG |
| CONST | |
| +1500.000 —|IN Q|— %R0001
| |_____| 85943.66

GFK-0467M-SP Capítulo 6 Funciones matemáticas 6-17


Capítulo Funciones relacionales
7

Las funciones relacionales se utilizan para determinar la relación de dos valores. Este capítulo
describe las siguientes funciones relacionales:
Abreviaturas Función Descripción Página
EQ Igual que Comprueba si existe igualdad entre dos números 7-2
NE Distinto de Comprueba si existe desigualdad entre dos números 7-2
GT Mayor que Comprueba si un número es mayor que otro 7-2
GE Mayor o igual Comprueba si un número es menor o igual que otro. 7-2
que
LT Menor que Comprueba si un número es menor que otro 7-2
LE Menor o igual Comprueba si un número es menor o igual que otro. 7-2
que
RANGE Intervalo Determina si un número se encuentra dentro de un 7-4
intervalo especificado (disponible para CPUs versión
4.5 o superior).

GFK-0467M-SP 7-1
7

Funciones relacionales estándar (EQ, NE, GT, GE, LT, LE)


Cuando la función recibe flujo de energía, compara el parámetro de entrada I1 con el parámetro de
entrada I2, que debe ser del mismo tipo de datos. Las funciones relacionales se aplican a los
siguientes tipos de datos:
Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo de doble precisión.
REAL Coma flotante (no disponible para la
función RANGE)

Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37X. El bit
del sistema %S0020 se ACTIVA cuando una función relacional que utiliza datos
reales se ejecuta satisfactoriamente. Se borra cuando una de las entradas es NaN
(no un número). El bloque de función de intervalo no acepta el tipo REAL.
El tipo de datos por defecto es el entero con signo. Para comparar enteros con signo, enteros con
signo de doble precisión o números reales seleccione el nuevo tipo de datos tras haber seleccionado
la función relacional. Para comparar datos de otros tipos o de dos tipos diferentes, utilice
primeramente la función de conversión correspondiente (descrita en el Capítulo 11, “Funciones de
conversión”) para cambiar los datos a uno de los tipos soportados.
Si los parámetros de entrada I1 e I2 coinciden con la relación especificada, la salida Q recibe flujo
de energía y se ACTIVA (1); de no ser así, se DESACTIVA (0).
_____
| |
(habilitar) —| EQ_ |
| |
| INT |
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
(parámetro de entrada I2) —|I2 |
|_____|

Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para el primer valor que se desea comparar.
(I1 está en el lado izquierdo de la ecuación relacional, como en I1 < I2).
I2 I2 contiene una constante o referencia para el segundo valor que se desea comparar.
(I1 está en el lado derecho de la ecuación relacional, como en I1 < I2).
Q La salida Q se activa cuando I1 e I2 cumplen la relación especificada.

Nota
I1 e I2 deben ser números válidos, es decir, no pueden ser NaN (No un Número).

7-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
7

Descripción ampliada
Función Descripción
Igual que Cuando está habilitada, si el valor en la entrada I1 es igual al valor en la entrada I2, la
salida Q se activa.
Distinto de Cuando está habilitada, si el valor en la entrada I1 NO es igual al valor en la entrada I2,
la salida Q se activa.
Mayor que Cuando está habilitada, si el valor en la entrada I1 es mayor que el valor en la entrada I2,
la salida Q se activa.
Mayor o igual Cuando está habilitada, si el valor en la entrada I1 es mayor o igual que el valor en la
que entrada I2, la salida Q se activa.
Menor que Cuando está habilitada, si el valor en la entrada I1 es menor que el valor en la entrada I2,
la salida Q se activa.
Menor o igual Cuando está habilitada, si el valor en la entrada I1 es menor o igual que el valor en la
que entrada I2, la salida Q se activa.

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
I1 o o o o o • • • •†
I2 o o o o o • • • •†
Q • •
• Lugar o referencia válida donde la energía puede fluir a través de la función.
o Referencia válida sólo para los datos INT; no válida para DINT o REAL.
† Las constantes están limitadas a valores enteros (+32,767 hasta –32,768) para las operaciones de entero con signo de doble
precisión cuando se programa con el software de PLC Logicmaster. Cuando se programa con el software VersaPro, están
permitidos todos los valores de enteros con signo de doble precisión.

Ejemplo
En el siguiente ejemplo, dos enteros con signo de doble precisión, %R00100/101 y %R00102/103,
son comparados siempre que el contacto habilitar %I0001 esté activado. Si el valor en la entrada I1
es menor o igual que el valor en la entrada I2, la bobina %Q00002 se activará. En el siguiente
ejemplo, la bobina %Q00002 está desactivada, ya que I1 es mayor que I2.

| _____
|%I0001 | |
|——| |——————————| LE_ |
| | |
| | DINT|
| %R00100 | | %Q00002
| +0000134689—|I1 Q|————————————————————————————————————————————————————( )—
| | |
| %R00102 | |
| +0000134600—|I2 |
| |_____|
|

GFK-0467M-SP Capítulo 7 Funciones relacionales 7-3


7

RANGE (Intervalo) (INT, DINT, WORD)


La función RANGE (intervalo) se utiliza para determinar si un valor se encuentra en el intervalo
entre dos números.

Nota
Esta función sólo está disponible para las CPUs versión 4.41 o posteriores.

La función RANGE opera en estos tipos de datos (el tipo REAL no es soportado para la función
RANGE):

Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo de doble precisión.
WORD Tipo de datos palabra.

El tipo de datos por defecto es el entero con signo; . sin embargo, puede cambiarse tras seleccionar
la función. Para más información acerca de los tipos de datos, consulte el Capítulo 2, Sección 2,
“Organización del programa y datos/referencias del usuario.”
Cuando la función está habilitada, el bloque de función RANGE compara el valor en el parámetro
de entrada IN con el intervalo especificado por los parámetros límite L1 y L2. Cuando el valor está
dentro del intervalo especificado por L1 y L2, inclusive, el parámetro de salida Q se ACTIVA (1).
De lo contrario, se DESACTIVA (0).

_____
| |
(habilitar) –|RANGE|
| |
| INT |
| |
(parámetro límite L1) –|L1 Q|– (parámetro de salida Q)
| |
(parámetro límite L2) –|L2 |
| |
(valor a comparar) –|IN |
|_____|

Nota
Los parámetros límite L1 y L2 representan los puntos extremos del intervalo. No
hay ninguna connotación de mínimo/máximo o alto/bajo asignada a estos
parámetros. De este modo, un intervalo deseado de 0 hasta 100 podría
especificarse asignando 0 a L1 y 100 a L2, o bien 0 a L2 y 100 a L1.

7-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
7

Parámetros
Parámetro Descripción
Habilitar Cuando está función está habilitada, la operación se ejecuta.
L1 L1 contiene el punto inicial del intervalo.
L2 L2 contiene el punto final del intervalo.
IN IN contiene el valor que debe compararse con el intervalo especificado por L1 y L2.
Q La salida Q se activa cuando el valor en IN está dentro del intervalo especificado por L1
y L2, inclusive.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
L1 o o o o o • • • •‡
L2 o o o o o • • • •‡
IN o o o o o • • •
Q • •
• Lugar o referencia válida donde la energía puede fluir a través de la función.
o Referencia válida sólo para los datos INT o WORD; no válida para DINT.
† Las constantes están limitadas a valores enteros para las operaciones de enteros con signo de doble precisión.

Ejemplo 1
En el siguiente ejemplo, se comprueba si %AI0001 está en el intervalo especificado por dos
constantes, 0 y 100.

| _____
|%I0001 | |
|——| |———+RANGE|
| | INT |
| | | %Q0002
| 100 —+L1 Q+—————————————————————————————————————————————————————————( )—
| | |
| 0 —+L2 |
| | |
|%AI0001—+IN |
| |_____|
|

Tabla de definición de RANGE para el ejemplo 1


Estado Valor Valor Valor IN Estado Q
habilitar constante L1 constante L2 %AI0001 %Q0001
%I0001
ACTIVADO 100 0 <0 DESACTIVADO
ACTIVADO 100 0 0 — 100 ACTIVADO
ACTIVADO 100 0 > 100 DESACTIVADO
DESACTIVADO 100 0 Cualquier valor DESACTIVADO

GFK-0467M-SP Capítulo 7 Funciones relacionales 7-5


7

Ejemplo 2
En el siguiente ejemplo, se comprueba si %AI0001 está en el intervalo especificado por dos
valores registrados.

| _____
|%I0001 | |
|——| |———+RANGE|
| | INT |
| | | %Q0002
|%R0001 —+L1 Q|—————————————————————————————————————————————————————————( )—
| | |
|%R0002 —+L2 |
| | |
|%AI0001—+IN |
| |_____|
|

Tabla de definición de RANGE para el ejemplo 2


Estado Valor L1 Valor L2 Valor IN Estado Q
habilitar %R0001 %R0002 %AI0001 %Q0001
%I0001
ACTIVADO 500 0 <0 DESACTIVADO
ACTIVADO 500 0 0 — 500 ACTIVADO
ACTIVADO 500 0 > 500 DESACTIVADO
DESACTIVADO 500 0 Cualquier valor DESACTIVADO

7-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de operaciones con bits
8

Las funciones de operaciones con bits realizan operaciones de comparación, lógicas y de


movimiento con cadenas de bits. Las funciones AND, OR, XOR y NOT están limitadas a operar
con una palabra única. El resto de las operaciones con bits puede operar con múltiples palabras,
con una longitud de cadena máxima de 256 palabras. Todas las funciones de operaciones con bits
requieren datos tipo palabra (WORD).
Aunque los datos deben especificarse en incrementos de 16 bits, estas funciones operan con los
datos como una cadena continua de bits, siendo el bit 1 de la primera palabra el bit menos
significativo (LSB). El último bit de la última palabra es el bit más significativo (MSB). Por
ejemplo, si ha especificado tres palabras de datos que comienzan en la referencia %R0100, la
operación se aplicaría a 48 bits contiguos.

%R0100 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 ← bit 1 (LSB)


%R0101 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17

%R0102 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33


(MSB)

Nota
El solapamiento de los rangos de las direcciones de las referencias de las entradas
y salidas puede producir resultados inesperados.

GFK-0467M-SP 8-1
8

En este capítulo se describen las siguientes funciones de operaciones con bits:


Abreviatura Función Descripción Página
AND Y lógica Si un bit en la cadena de bits I1 y el bit 8-3
correspondiente en la cadena de bits I2 son 1, coloca
un 1 en la posición correspondiente de la cadena de
salida Q.
OR O lógica Si un bit en la cadena de bits I1 y/o el bit 8-3
correspondiente en la cadena de bits I2 son 1, coloca
un 1 en la posición correspondiente de la cadena de
salida Q.
XOR O exclusiva lógica Si un bit en la cadena de bits I1 y el bit 8-5
correspondiente en la cadena de bits I2 son diferentes,
coloca un 1 en la posición correspondiente de la
cadena de bits de salida.
NOT Inversión lógica Pone el estado de cada bit en la cadena de bits de 8-8
salida Q al lado opuesto al del bit correspondiente en
la cadena de bits I1.
SHL Desplazar a la Desplaza hacia la izquierda todos los bits de una 8-9
izquierda palabra o cadena de palabras un número especificado
de posiciones.
SHR Desplazar a la Desplaza hacia la derecha todos los bits de una 8-9
derecha palabra o cadena de palabras un número especificado
de posiciones.
ROL Girar a la izquierda Gira todos los bits de una cadena un número 8-11
especificado de posiciones hacia la izquierda.
ROR Girar a la derecha Gira todos los bits de una cadena un número 8-57
especificado de posiciones hacia la derecha.
BTST Test de bits Verifica un bit dentro de una cadena de bits para 8-13
determinar si dicho bit vale actualmente 1 ó 0.
BSET Activar bits Pone un bit de una cadena de bits a 1. 8-15
BCLR Borrar bits Borra un bit dentro de una cadena poniendo éste a 0. 8-15
BPOS Posición de bit Localiza un bit puesto a 1 en una cadena de bits. 8-17
MSKCMP Comparar con Compara el contenido de dos cadenas de bits 8-19
máscara separadas con la capacidad de enmascarar los bits
seleccionados (disponible para las CPUs versión 4.5 o
superior).

8-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

AND y OR (WORD)
En cada exploración que se recibe energía, una función Y lógica (AND) u O lógica (OR) compara
el estado de cada bit de la cadena de bits I1 con el bit correspondiente en la cadena de bits I2,
comenzando por el bit menos significativo en cada una de ellas.
Si ambos bits comparados por la función Y lógica valen 1, se coloca un 1 en la posición
correspondiente de la cadena de salida Q. Si cualquiera o ambos bits valen 0, entonces se coloca
un 0 en la cadena Q en dicha posición.
La AND puede utilizarse para crear máscaras o pantallas en las cuales se permite el paso de sólo
determinados bits (los opuestos a 1 en la máscara), y todos los demás se configuran a 0. La función
puede utilizarse también para borrar una zona de la memoria de palabras ejecutando una función
AND de los bits de dicha zona con otra cadena de bits que se sepa que contiene todo ceros. Las
cadenas de bits I1 y I2 bit especificadas pueden solaparse.
Si cualquiera de los dos bits examinados por la función OR valen 1, se coloca un 1 en la posición
correspondiente de la cadena de salida Q. Si ambos bits valen 0, entonces se coloca un 0 en la
cadena Q en dicha posición.
La función OR es útil para combinar cadenas y para controlar numerosas salidas mediante un solo
bloque de función. Esta función es equivalente a dos contactos de relé en paralelo para cada
posición de bit en la cadena. Puede emplearse para accionar lámparas indicadoras directamente
desde estados de entradas o para superponer condiciones de parpadeo en indicadores de estado.
La función pasa el flujo de energía hacia la derecha siempre que se recibe energía.

_____
| |
(habilitar) —| AND_|— (ok)
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
| |
(parámetro de entrada I2) —|I2 |
|_____|

Parámetros

Parámetro Descripción
habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para la primera palabra de la primera cadena.
I2 I1 contiene una constante o referencia para la primera palabra de la segunda cadena.
ok La salida ok se activa siempre que habilitar esté activada.
Q La salida Q contiene el resultado de la operación.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-3


8

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
I1 • • • • • • • • • •
I2 • • • • • • • • • •
ok • •
Q • • • • •† • • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† %SA, %SB o %SC solamente; %S no se puede utilizar.

Ejemplo
En este ejemplo, siempre que se activa la entrada %I0001 se examinan las cadenas de 16 bits
representadas por los alias WORD1 y WORD2. Los resultados de la función Y lógica se colocan
en la cadena de salida RESULT.

| _____
|%I0001 | |
|——| |———| AND_|—
| | WORD|
| | |
| WORD1 —|I1 Q|—RESULT
| | |
| | |
| | |
| | |
| WORD2 —|I2 |
| |_____|
|

WORD1 (I1) 0 0 0 1 1 1 1 1 1 1 0 0 1 0 0 0
WORD2 (I2) 1 1 0 1 1 1 0 0 0 0 0 0 1 1 1 1

RESULT (Q) 0 0 0 1 1 1 0 0 0 0 0 0 1 0 0 0

8-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

XOR (WORD)
La función O exclusiva (XOR) se utiliza para comparar cada bit de la cadena de bit de la entrada I1
con el bit correspondiente en la cadena de bits de la entrada I2. Si los bits son diferentes, se coloca
un 1 en la posición correspondiente de la cadena de bits de salida.

La función O exclusiva resulta práctica para comparar con rapidez dos cadenas de bits o para
destellar un grupo de bits a un ritmo de un estado ACTIVADO por cada dos exploraciones.

En cada exploración en que XOR está habilitada, la función compara cada bit de la cadena I1 con el
bit correspondiente de la cadena I2, comenzando por el bit menos significativo de cada cadena. En
una comparación, si sólo uno es 1, entonces se coloca un 1 en la posición correspondiente en la
cadena de bits Q. La función XOR pasa el flujo de energía hacia la derecha siempre que se recibe
energía.
Si la cadena I2 y la cadena de salida comienzan por idéntica referencia, un 1 colocado en la cadena
I1 provocará que el bit correspondiente en la cadena I2 alterne entre 0 y 1, cambiando de estado en
cada exploración, siempre que se reciba energía. Pueden programarse ciclos más largos
conmutando la entrada habilitar a dos veces la frecuencia de intermitencia; para esta aplicación, la
entrada habilitar deberá activarse durante una exploración (utilice un contacto del tipo bobina de
una sola ejecución o un circuito de temporizador autorreiniciable).

_____
| |
(habilitar) —| XOR_|— (ok)
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
| |
| |
(parámetro de entrada I2) —|I2 |
|_____|

Parámetros

Parámetro Descripción
habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para la primera palabra a la que se va a aplicar
XOR.
I2 I1 contiene una constante o referencia para la segunda palabra a la que se va a aplicar
XOR.
ok La salida ok se activa siempre que habilitar esté activada.
Q La salida Q contiene el resultado de aplicar la función XOR a I1 con I2.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-5


8

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
I1 • • • • • • • • • •
I2 • • • • • • • • • •
ok • •
Q • • • • •† • • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† %SA, %SB o %SC solamente; %S no se puede utilizar.

Ejemplo de un circuito de alarma que utiliza la función XOR


En el siguiente ejemplo, siempre que el contacto habilitar %M0001 esté activado, la cadena de 16
bits de alias INTERRUPTOR se compara con una cadena de bits de referencia de alias REFER. La
cadena de bits INTERRUPTOR es un grupo de bits que representa el estado
conectado/desconectado de contactos de interruptor de alarma. La cadena de bits REFER
representa el estado normal o de no alarma de estos bits. Si el estado de cualquier bit de
INTERRUPTOR es diferente del de su correspondiente bit en REFER, su salida correspondiente en
Q se pone a 1. En condiciones normales (de no alarma), el valor de la palabra de alias ESTADO
será cero.

|%M0001 | |
|——| |———| XOR_|
| | WORD|
| | |
| INTER.—|I1 Q|—ESTADO
| | |
| | |
| | |
| | |
| REFER —|I2 |
| |_____|
|

Posición de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
I1 0 1 0 1 1 1 1 0 1 1 0 0 0 0 0 0
(INTERRUP-
TOR)
I2 (REFER) 0 0 0 1 1 1 1 1 1 1 0 0 1 0 0 0

Q (ESTADO) 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0

8-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

Los datos en ESTADO se pueden usar como una entrada para la función No Igual (NE), que
comparará la palabra de alias ESTADO con una constante cero. Si ESTADO no es igual a cero, la
función NE activa su salida, indicando la presencia de una alarma.
Los bits en ESTADO que son iguales a la lógica 1 pueden ser identificados con la función BPOS
(Posición de bit), que buscará los bits en ESTADO y notificará la posición (un número entre 1 y
16) del primer bit (comenzando por el bit 1) que encuentre en la lógica 1. En el ejemplo anterior, la
función BPOS dará como resultado el número 4, indicando que el cuarto bit está en la lógica 1.
Para comprobar más de un bit, se puede almacenar un registro de 4 bits, utilice la función BCLR
(Borrar bits) para borrar el bit 4, repita entonces el test BPOS para encontrar el siguiente bit igual a
la lógica 1 (bit 9 en el ejemplo anterior). Este proceso se puede repetir hasta que no se encuentren
más bits distintos de cero. Observe que las funciones BCLR y BPOS se exponen en detalle en otro
punto de este capítulo.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-7


8

NOT (WORD)
La función inversión lógica NOT se utiliza para poner el estado de cada bit de la cadena de bits de
salida Q al opuesto del estado del bit correspondiente de la cadena de bits I1.
La función NOT se ejecuta y pasa flujo de energía en cada exploración en que su entrada habilitar
esté activada.

_____
| |
(habilitar) —| NOT_|— (ok)
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 Q|— (parámetro de salida Q)
| |
| |
| |
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando está función está habilitada, la operación se ejecuta.
I1 I1 contiene una constante o referencia para la palabra que se va a negar.
ok La salida ok se activa siempre que habilitar esté activada.
Q La salida Q contiene la NOT (negación) de I1.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
I1 • • • • • • • • • •
ok • •
Q • • • • •† • • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† %SA, %SB o %SC solamente; %S no se puede utilizar.

Ejemplo
En el siguiente ejemplo, siempre que la entrada %I0001 esté activada, la cadena de bits
representada por el alias NOTCAT se coloca en sentido inverso a la cadena de bits CAT, como se
muestra en la tabla de decisión lógica inferior.
| _____
|%I0001 | |
|——| |———| NOT_|—
| | WORD|
| | |
| CAT —|I1 Q|—NOTCAT
| | |
| | |
| | |
| |_____|
|

CAT 1 1 0 1 0 1 0 0 1 1 0 1 0 0 0 1
NOTCAT 0 0 1 0 1 0 1 1 0 0 1 0 1 1 1 0

8-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

SHL y SHR (WORD)


La función desplazar hacia la izquierda (SHL) se emplea para desplazar todos los bits de una
palabra o grupo de palabras un número especificado de posiciones hacia la izquierda. Cuando se
produce el desplazamiento, el número especificado de bits se desplaza hacia afuera de la cadena de
salida, hacia la izquierda. A medida que los bits se desplazan hacia afuera del extremo superior de
la cadena, en el extremo inferior se desplaza idéntico número de bits.
MSB LSB
B2 ← 1 1 0 1 1 1 1 1 1 1 0 0 1 0 0 0 ←B1

La función desplazar hacia la derecha (SHR) se emplea para desplazar todos los bits de una palabra
o grupo de palabras un número especificado de posiciones hacia la derecha. Cuando se produce el
desplazamiento, el número especificado de bits se desplaza hacia afuera de la cadena de salida,
hacia la derecha. A medida que los bits se desplazan hacia afuera del extremo inferior de la
cadena, en el extremo superior se desplaza idéntico número de bits.
MSB LSB
→B1 1 1 0 1 1 1 1 1 1 1 0 0 1 0 0 0 →B2

Para cualquiera de estas funciones puede seleccionarse una longitud de cadena de 1 hasta 256
palabras. Si el número de bits a desplazar (N) es mayor que el número de bits en la matriz (LEN) *
16, o si el número de bits a desplazar es cero, entonces la matriz (Q) se llena con copias del bit de
entrada (B1), y el bit de entrada se copia en la salida B2. Si el número de bits que debe desplazarse
es cero, no se realiza ningún desplazamiento; el bloque de entradas se copia en el bloque de salidas;
y el bit de entrada B1 se copia en la salida B2.
Los bits que se van a desplazar al comienzo de la cadena se especifican mediante un parámetro de
entrada B1, que requiere un contacto a la línea de alimentación. Si como número de bit para
desplazamiento se ha especificado una longitud mayor que 1, cada uno de los bits se rellena de
idéntico valor (0 ó 1) de B1. La entrada B1 se puede controlar mediante
• Un contacto ALW_ON (%S07), que mantiene B1 permanentemente en la lógica 1.
• Un contacto ALW_OFF (%S06), que mantiene B1 permanentemente en la lógica 0.
• Un contacto de una bobina interna como %M o %Q que le permite cambiar el valor.
• Un contacto A %I que le permite cambiar el valor desde un contacto de entrada.
La función SHL o SHR pasa el flujo de energía hacia la derecha, a no ser que el número de bits
especificado para desplazar sea cero.
La salida Q es la copia desplazada de la cadena de entrada. Si desea desplazar la cadena de
entrada, el parámetro de salida Q debe utilizarse en idéntica posición de memoria que el parámetro
de entrada IN. Las instrucciones SHL/SHR se ejecutan en cada exploración en que su entrada
habilitar esté activada. La salida B2 mantiene el valor del último bit desplazado afuera; por
ejemplo, si cuatro bits han sido desplazados, B2 contendrá el valor (1 ó 0) del cuarto bit
desplazado.
_____
| |
(habilitar) —| SHL_|
| |
| WORD|
| |
(palabras a desplazar) |IN B2|— (último bit desplazado afuera)
| LEN |
|00001|
| |
| |
(número de bits) —|N Q|— (parámetro de salida Q)
| |
(bit desplazado adentro) —|B1 |
|_____|

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-9


8

Parámetros
Parámetro Descripción
habilitar Cuando habilitar es 1, se ejecutará el desplazamiento.
IN IN contiene la dirección de la primera palabra a desplazar.
N N contiene el número de posiciones (bits) que debe desplazarse el bloque.
B1 B1 contiene el valor del bit (0 ó 1) que debe desplazarse hacia el bloque.
B2 B2 contiene el valor (0 ó 1) del último bit desplazado fuera del bloque.
Q La salida Q contiene la primera palabra del bloque desplazado.
LEN LEN es el número de palabras (1 – 256) en el bloque a desplazar.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • • • • • • •
N • • • • • • • • •
B1 •
B2 • •
Q • • • • •† • • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† %SA, %SB o %SC solamente; %S no se puede utilizar.

Ejemplo
En el siguiente ejemplo, cuando la entrada %M0001 está activada, la función SHL hace una copia
de la cadena de bits en IN (de alias WORD1). A continuación, en la copia, desplaza todos los bits a
la izquierda 8 posiciones de bit (especificado por el valor en N). Los bits en las posiciones 9-16
son desplazados fuera (desechados), y los bits que estaban en las posiciones 1-8 ocupan ahora las
posiciones de bit 9-16. Las posiciones de bit 1-8, que estaban “desocupadas” cuando los bits 1-8
fueron desplazados, están llenos de unos ya que, en este ejemplo, el contacto %M0002 está cerrado,
haciendo la entrada B1 igual a la lógica 1. Por último, la palabra desplazada/llenada se escribe en
la dirección en la salida Q (de alias WORD2). La WORD1 en IN no ha cambiado. La salida B2 es
igual a cero ya que el último bit desplazado fuera tenía la lógica cero (el bit que ocupaba la
posición 9), y la bobina %M0003 está activada ya que la función se ha ejecutado correctamente y
ha producido, por tanto, flujo de energía a su salida OK.

%M0001 %M0003
OK
SHL_
WORD

WORD1 IN B2 OUTBIT
LEN
00001 Pos. bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
LONG.
+00008 N Q WORD2 WORD1 0 0 0 0 0 0 0 0 0 1 0 1 0 1 0 1
%M0002
B1
WORD2 0 1 0 1 0 1 0 1 1 1 1 1 1 1 1 1

8-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

ROL y ROR (WORD)


La función rotar a la izquierda (ROL) rota todos los bits en una cadena un número especificado de
lugares hacia la izquierda. Cuando se produce la rotación, el número especificado de bits se rota
hacia afuera de la cadena de entrada, hacia la izquierda y de nuevo hacia dentro de la cadena, hacia
la derecha.
La función rotar a la derecha (ROR) hace girar todos los bits de una cadena un número especificado
de posiciones hacia la derecha. Cuando se produce la rotación, el número especificado de bits se
rota hacia afuera de la cadena de entrada, por la derecha y de nuevo hacia dentro de la cadena, por
la izquierda.
Para cualquiera de estas funciones puede seleccionarse una longitud de cadena de 1 hasta 256
palabras.
El número de lugares especificado para la rotación en la entrada N debe ser mayor que cero y
menor que el número de bits de la cadena. De otro modo, no se produce movimiento, y no se
genera flujo de energía.
El resultado de la rotación se coloca en la cadena de salida Q. Si desea desplazar la cadena de
entrada, el parámetro de salida Q debe utilizarse en idéntica posición de memoria que el parámetro
de entrada IN. La función rotación se ejecuta en cada exploración en que la entrada habilitar está
activada.
_____
| |
(habilitar) —| ROL_|— (ok)
| |
| WORD|
| |
(palabra a rotar) —|IN Q|— (parámetro de salida Q)
| |
| LEN |
|00001|
| |
(número de bits) —|N |
|_____|

Parámetros

Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la rotación.
IN IN contiene la dirección de la primera palabra a rotar.
N N contiene el número de posiciones (bits) que debe rotarse el bloque.
ok La salida ok recibe energía cuando la función de rotación está habilitada y la longitud de
rotación (en N) es mayor que cero pero no es mayor que el tamaño del bloque.
Q La salida Q contiene la primera palabra del bloque rotado.
LEN LEN es el número de palabras (1 – 256) en el bloque a rotar.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-11


8

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
IN • • • • • • • • •
N • • • • • • • • •
ok • •
Q • • • • •† • • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† %SA, %SB o %SC solamente; %S no se puede utilizar.

Ejemplo
En el siguiente ejemplo, siempre que la entrada habilitar %I0001 esté activada, la función ROL
hace una copia de la cadena de entrada en IN. A continuación, en la copia, rota la cadena de bits de
entrada 3 bits (especificados por el valor de la entrada N) y coloca el resultado en %R0002. Tras la
ejecución de esta función, la cadena de bits de entrada %R0001 no ha cambiado. Sin embargo, si se
desea rotar la cadena de entrada, se debe utilizar la misma dirección de referencia para IN y Q.

| _____
|%I0001 | |
|——| |———| ROL_|—
| | WORD|
| | |
| %R0001—|IN Q|—%R0002
| | |
| | LEN |
| |00001|
| | |
| CONST —|N |
| +00003 |_____|
|

%R0001:

MSB LSB
1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 ←

%R0002 (después de producirse la rotación):

MSB LSB
1 1 0 0 0 0 0 0 0 0 0 0 0 1 1 1

8-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

BTST (WORD)
La función test de bit (BTST) se usa para verificar un bit dentro de una cadena de bits, para
determinar si dicho bit vale actualmente 1 ó 0. El resultado del test se coloca en la salida Q.
En cada barrido en que se recibe energía, la función BTST pone la salida Q en el mismo estado que
el bit especificado. Si para especificar el número de bit se emplea un registro en lugar de una
constante, el mismo bloque de función puede realizar un test de diferentes bits en barridos
sucesivos. Si el valor de BIT está fuera del intervalo especificado por la siguiente fórmula,
entonces Q se DESACTIVA.
Fórmula: 1 ≤ BIT ≤ (16 * LEN)
Se puede seleccionar una longitud de cadena de 1 hasta 256 palabras.

_____
| |
(habilitar) —| BIT_|
| |
|TEST_|
| WORD|
| |
(palabra 1 a verificar) —|IN Q|— (parámetro de salida Q)
| LEN |
|00001|
| |
(número de bits de IN) —|BIT |
|_____|

Parámetros

Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta el test de bit.
IN IN contiene la primera palabra de datos a que debe aplicarse la operación.
Bit BIT contiene el número de bits de IN que debe verificarse. El intervalo válido es (1 ≤ BIT
≤ (16 * LEN) ).
Q La salida Q está activada si el bit verificado valía 1.
LEN LEN es el número de palabras en el bloque a verificar.

Nota
Cuando se utilizan las funciones de test de bits, configuración de bits, borrar
bits o posicionamiento de bits, los bits están numerados de 1 hasta 16, NO de 0
hasta 15.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-13


8

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
IN • • • • • • • • •
BIT • • • • • • • • •
Q • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo
En el siguiente ejemplo, siempre que la entrada habilitar %M0001 esté activada, se verifica el bit
14 en la palabra %R0001 (el bit 14 está especificado por el valor en %R0002). Dado que el bit 14
es cero en el valor mostrado para %R0001 (5C7C), la salida Q no se activa. Observe que esta
función sólo puede ser del tipo WORD; por tanto, cualquier dirección de la memoria usada en IN
aparecerá en la pantalla de Logicmaster en formato hexadecimal. Sin embargo, el valor en BIT
aparecerá en formato de entero independientemente de si se usa una constante o una dirección de
memoria.

%M0001
BIT_
TEST_
WORD %M0003
%R0001 IN Q
5C7C LEN
00001 Núm. de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
%R0002 BIT %R0001 0 1 0 1 1 1 0 0 0 1 1 1 1 1 0 0
+00014

8-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

BSET y BCLR (WORD)


La función activar bit (BSET) se utiliza para poner un bit en una cadena de bits a 1. La función
borrar bit (BCLR) se utiliza para borrar un bit dentro de una cadena poniendo dicho bit a 0.
En cada barrido en que se recibe energía, la función pone el bit especificado a 1 para la función
BSET o a 0 para la función BCLR. Si para especificar el número de bits se emplea una variable
(registro) en lugar de una constante, el mismo bloque de función puede activar diferentes bits en
barridos sucesivos.
Se puede seleccionar una longitud de cadena de 1 hasta 256 palabras. Esta función pasa el flujo de
energía hacia la derecha, a no ser que el valor de BIT esté fuera del intervalo (1 ≤ BIT ≤ (16 *
LEN)). A continuación, ok se DESACTIVA. Por ejemplo, si LEN se pone a 1, la longitud de la
cadena de bits a verificar será 16. Si, en este caso, el número en BIT es 17 o superior, estaría fuera
de rango, de modo que la salida ok no se activaría.

_____
| |
(habilitar) —| BIT_|— (ok)
| |
| SET_|
| WORD|
| |
(primera palabra) —|IN |
| |
| LEN |
|00001|
| |
(número de bits en IN) —|BIT |
|_____|

Parámetros

Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación de bits.
IN IN contiene la dirección de la primera palabra de la cadena de bits con la que se va a
operar.
Bit BIT contiene el número de bit de IN que debe activarse o borrarse.
El intervalo válido es (1 ≤ BIT ≤ (16 * LEN) ).
ok La salida ok está activada siempre que habilitar esté activada, a menos que el valor en la
entrada BIT esté fuera del intervalo válido.
LEN LEN es el número de palabras en la cadena de bits cuya dirección inicial está
configurada en IN.

Nota
Cuando se utilizan las funciones de test de bits, configuración de bits, borrar
bits o posicionamiento de bits, los bits están numerados de 1 hasta 16, NO de 0
hasta 15.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-15


8

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
IN • • • • † • • • •
BIT • • • • • • • • •
ok • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† %SA, %SB o %SC solamente; %S no se puede utilizar.

Ejemplos
Observe que las funciones activar bit y borrar bit sólo pueden ser del tipo WORD; por tanto,
cualquier dirección de la memoria usada en IN aparecerá en la pantalla de Logicmaster en formato
hexadecimal. Sin embargo, el valor en BIT aparecerá en formato de entero tanto si se usa una
constante, como una dirección de memoria.
En el siguiente ejemplo, cuando la entrada %M0001 está activada, el bit 12 (especificado en la
entrada BIT) de la cadena que comienza en la referencia %R0001 (la dirección en la entrada IN) se
pone a 1 (activado).

%M0001 %M0003
BIT_
SET_
WORD
%R0001 IN
0800 LEN
00001 Núm. de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
%R0002 BIT %R0001 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
+00012

En el siguiente ejemplo, cuando la entrada %M0001 está activada, el bit 5 (el valor de la entrada
BIT) de la cadena que comienza en la referencia %R0001 (la dirección en la entrada IN) se pone a
0 (borrado).

%M0001 %M0003
BIT_
CLR_
WORD
%R0001 IN
7FEF LEN
00001 Núm. de bit 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
%R0002 BIT %R0001 0 1 1 1 1 1 1 1 1 1 1 0 1 1 1 1
+00005

8-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

BPOS (WORD)
La función posición de bit (BPOS) se utiliza para localizar en una cadena de bits, un bit cuyo valor
es 1.
Cada barrido en que la función está habilitada, ésta explora la cadena de bits comenzando por IN.
Cuando la función detiene la exploración, bien se ha encontrado un bit que es igual a 1 o se ha
explorado toda la longitud de la cadena.
POS está configurada a la posición dentro de la cadena de bits del primer bit distinto de cero; POS
está puesto a cero si no se detecta ningún bit distinto de cero.
Se puede seleccionar una longitud de cadena de 1 hasta 256 palabras. La función pasa el flujo de
energía hacia la derecha siempre que habilitar esté ACTIVADA.

_____
| |
(habilitar) —| BIT_|— (ok)
| POS |
| WORD|
| |
| |
(primera palabra) —|IN |
| |
| LEN |
|00001|
| POS|— (posición de bit no-cero o 0)
|_____|

Parámetros

Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación de búsqueda de bits.
IN IN contiene la primera palabra de la cadena de bits a que debe aplicarse la operación.
ok La salida ok se activa siempre que habilitar esté activada.
POS La posición del primer bit distinto de cero encontrado o cero si no se encuentra un bit
distinto de cero.
LEN LEN es el número de palabras en la cadena de bits.

Nota
Cuando se utilizan las funciones de test de bits, configuración de bits, borrar
bits o posicionamiento de bits, los bits están numerados de 1 hasta 16, NO de 0
hasta 15.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-17


8

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
IN • • • • • • • • •
POS • • • • • • • •
ok • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo
Observe que la función posición de bit sólo puede ser del tipo WORD; por tanto, cualquier
dirección de la memoria usada en IN aparecerá en la pantalla de Logicmaster en formato
hexadecimal. Sin embargo, el valor en POS aparecerá en formato de entero. Logicmaster muestra
los primeros 16 bits en IN en formato hexadecimal.
En el siguiente ejemplo, si %I0001 está activada, se busca en la cadena de bits que comienza en
%M0001 hasta que se encuentra un bit igual a 1, o hasta que se ha buscado en toda la cadena de
bits. La bobina %M0100 se activa. Si se encuentra un bit igual a 1, su posición dentro de la
cadena de bits se escribe en %R0002; de lo contrario el valor 0 se escribe en %R0002. En el
ejemplo mostrado, el bit 5 es la primera lógica 1 encontrada en la búsqueda (que comienza en el bit
1), de modo que el valor escrito en %R0002 es 5.

%I0001 %M0100
BIT_
POS_
WORD
%M0001 IN
6910 LEN
00001
%R0002
POS +00005

Bits %M 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Valor de bit 0 1 1 0 1 0 0 1 0 0 0 1 0 0 0 0

8-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

MSKCMP (WORD, DWORD)


La función comparación enmascarada (MSKCMP) (disponible para las CPUs versión 4.41 o
posteriores) se usa para comparar el contenido de dos cadenas de bits separadas con capacidad para
enmascarar bits seleccionados. La longitud de las cadenas de bits que van a ser comparadas está
especificada por el parámetro LEN (donde el valor de LEN especifica el número de palabras de 16
bits para la función MSKCMP de tipo palabra o palabras de 32 bits para la función MSKCMP del
tipo doble palabra).
Cuando su entrada habilitar está activada, la función compara los bits de la primera cadena con los
bits correspondientes de la segunda cadena. La comparación continúa hasta que se detecta una
discordancia en la comparación y hasta que se alcanza el final de la cadena. La función se ejecuta
en cada exploración en que la entrada habilitar esté activada, así, en numerosas aplicaciones se
utiliza un contacto de "una sola ejecución" para la entrada habilitar. La entrada BIT se utiliza para
almacenar el número de bit en que debe comenzar la siguiente comparación (donde un 0 indica el
primer bit de la cadena). La salida BN se utiliza para almacenar el número de bit en que se produce
la última comparación (indicando 1 el primer bit de la cadena). La utilización de la misma
referencia para BIT y BN hace que la comparación comience en la siguiente posición de bit
después de detectarse una discordancia de comparación; o, si todos los bits arrojan un resultado de
comparación satisfactorio en la siguiente llamada al bloque de función, la comparación arranca por
el comienzo. Si desea iniciar la siguiente comparación en una posición distinta de la cadena, puede
introducir diferentes referencias para BIT y BN. Si el valor de BIT es una posición que está más
allá del final de la cadena, BIT se reinicializa a cero antes de iniciar la siguiente comparación.

Si todos los bits en I1 y I2 son iguales


Si todos los bits correspondientes de las cadenas I1 y I2 coinciden, la función configura la salida
MC “discordancia de comparación” a cero y BN al número de bit más alto de las cadenas de
entrada. A continuación, se detiene la comparación. En la próxima llamada de MSKCMP, BN se
volverá a poner a 0.

Si se detecta una diferencia


Cuando los dos bits actualmente comparados no son iguales, esta función verifica el bit numerado
correspondientemente en la cadena M (la máscara). Si el bit de máscara vale 1, la diferencia es
ignorada y la comparación continúa hasta que alcanza otra discordancia de comparación o hasta el
final de las cadenas de entrada.
Si se detecta una discordancia de comparación y el bit de máscara correspondiente vale cero, la
función hace lo siguiente:
1. Pone a 1 el bit de máscara correspondiente en M.
2. Pone a 1 la salida de discordancia de comparación (MC).
3. Actualiza la cadena de bits de salida Q para hacer coincidir el nuevo contenido de M de la
cadena de la máscara
4. Configura la salida del número de bit (BN) al número de bit con discordancia en la
comparación.
5. Detiene la comparación.

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-19


8

_____
| |
(habilitar) —|MASK_|-
| |
|COMP_|
| |
| WORD|
| |
(parámetro de entrada I1) —|I1 MC|— (discordancia)
| LEN |
|00001|
| |
(parámetro de entrada I2) —|I2 Q|— (parámetro de salida Q)
| |
| |
(máscara de cadena de bits) —|M BN|— (número de bit de la última
discordancia)
| |
| |
(número de bit) —|BIT |
|_____|

Parámetros
Parámetro Descripción
habilitar Lógica de permiso para habilitar la función.
I1 Referencia de la primera cadena de bits que se desea comparar.
I2 Referencia de la segunda cadena de bits que se desea comparar.
M Referencia de la máscara para la cadena de bits.
Bit Referencia del número de bit en que debe iniciarse la siguiente comparación.
MC Va a lógica 1 durante una exploración si se ha producido una discordancia. Se puede
utilizar una bobina set en esta salida si se desea “capturar” la salida más allá de una
exploración.
Q Copia de salida de cadena de bits de máscara (M).
BN Número de bit donde se ha producido la última comparación.
LEN LEN es el número de palabras en la cadena de bits.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
I1 o o o o o o • • •
I2 o o o o o o • • •
M o o o o o† o • • •
Bit • • • • • • • • • •
LEN •‡
MC • •
Q o o o o o† o • • •
BN • • • • • • • • •
• Lugar o referencia válida donde la energía puede fluir a través de la función.
o Referencia válida sólo para los datos WORD; no válida para DWORD.
† %SA, %SB o %SC solamente; %S no se puede utilizar.
‡ Valor máximo constante de 4095 para WORD y 2047 para DWORD.

8-20 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

Ejemplo 1 – Instrucción MSKCMP


Cuando %M0200 se cierra, el contacto de la bobina de transición %M0201 se cierra durante una
exploración, lo cual habilita la función MSKCMP para que se ejecute una vez. Las %M0001 hasta
%M0016 (I1) se comparan con las %M0017 hasta %M0032 (I2). %M0033 hasta %M0048 (M)
contiene el valor de la máscara. El valor en %R0001 (BIT) determina en qué posición de bit (0)
comienza la comparación dentro de las dos cadenas de entrada en I1 e I2.
%M0200 %M0201

%M0201
MASK_
COMP
WORD %M0202
%M0001 I1 MC
6C6C LEN
00001
%M0017 I2 Q %M0033
606F 000F

%M0033 M BN %R0001
000F 00000
%R0001 BIT
00000

Estado antes de la primera ejecución de MSKCMP


El contenido de las referencias de entrada antes de que MSKCMP se ejecute es el siguiente:
%M Bits 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
Entrada 1(I1) 0 1 1 0 1 1 0 0 0 1 1 0 1 1 0 0

%M Bits 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17
Entrada 2(I2) 0 1 1 0 1 1 0 1 0 1 1 0 1 1 1 1

%M Bits 48 47 46 45 44 43 42 41 40 39 38 37 36 35 35 33
Máscara 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1
(M/Q)
BIT/BN (%R0001) = 0
MC (%M0202) = OFF

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-21


8

Estado después de la primera ejecución de MSKCMP


La siguiente tabla muestra el contenido de las referencias de la Máscara (M/Q) después de que
MSKCMP se haya ejecutado una vez. (I1 e I2 tienen aún los valores mostrados anteriormente.)
Dado que el noveno bit ha producido una discordancia, el noveno bit (%M0041) en la cadena de
máscara se pone en lógica 1, BIT/BN contiene el valor 9, y la salida MC se activa durante una
exploración. Aunque la primera y segunda posiciones de bit no son iguales, no produce ninguna
discordancia porque los bits de máscara son 1 para estas posiciones.
%M Bits 48 47 46 45 44 43 42 41 40 39 38 37 36 35 35 33
Máscara 0 0 0 0 0 0 0 1 0 0 0 0 1 1 1 1
(M/Q)
BIT/BN (%R0001) = 9
MC (%M0202) = ON (durante una exploración)

Ejemplo 2 - Detección de fallos con una función de comparación enmascarada


Los problemas que se producen de modo intermitente pueden ser difíciles de localizar. Un ejemplo
es cuando varios interruptores están dispuestos en un circuito serie que activa un relé de fallo. En
condiciones normales, todos los interruptores están cerrados y el relé de fallo está activado (un
dispositivo de “seguro contra fallos”). Cuando se produce un fallo, uno de los contactos se abre y
el relé de fallo se retira. Si el contacto defectuoso permanece abierto, un localizador de fallos podrá
determinar fácilmente qué interruptor ha sido el causante del fallo. Sin embargo, a veces un
contacto sólo se abre un breve espacio de tiempo, tal vez menos de un segundo, y se vuelve a
cerrar. Esto ocasiona que el relé de fallo se retire brevemente e interrumpa el proceso. Después de
que el contacto se vuelve a cerrar, todo parece normal.
Para solucionar este tipo de problemas, el siguiente circuito actúa como “captador de fallos”
detectando que contacto se abre y almacenando su número en un registro. En el primer escalón, los
contactos de los interruptores de entrada, que están conectados a un punto de módulo de entrada
(%I1 – %I9), están programados en series para activar %M0021, una bobina de transición negativa.
El segundo escalón inicializa la función MSKCMP de modo que esté preparada para capturar el
fallo. La primera instrucción mover escribe todos los unos en la entrada I2 de MSKCMP. La
segunda instrucción mover escribe los valores de 1 en los bits 10—16 de la palabra de máscara (de
modo que estos bits sean ignorados), ya que sólo los primeros nueve bits de las palabras
comparadas (la función MSKCMP usa palabras completas) son necesarios para los interruptores
%I0001—%I0009. La tercera instrucción mover pone a cero el registro de salida, %R0001, de
modo que está preparado para notificar el último fallo.
Durante el funcionamiento normal, los primeros nueve bits en la entrada I1 de la MSKCMP tienen
lógica 1 ya que todos los interruptores están cerrados. La entrada I2 se inicializa cuando toda la
lógica es 1 dado que está es la condición normal en la que se comparan todos los interruptores de
entrada. La máscara tiene unos en los bits 10—16, ya que al ser nueve interruptores de entrada
estos bits no se usan. Cuando un interruptor se abre, el contacto de %M0201 se cierra durante una
exploración. Esto ocasiona que la inicialización se produzca en el segundo escalón, y en el tercer
escalón MSKCMP esté habilitada. La función MSKCMP compara los interruptores de entrada con
la lógica 1 en su entrada I2, identifica qué interruptor tiene lógica 0 (abierto), y escribe el número
de bit del interruptor abierto en la salida BN (%R0001). Los bits están numerados de 1—9
comenzando por %I1. Por ejemplo, si %I4 estuviese abierto, %R0001 contendría el número 4.
Observe que en este circuito, si un interruptor se abre y se vuelve a cerrar, la bobina %M0201 se
retira y vuelve a captar, pero el número del interruptor que se ha abierto se almacenará en %R0001.

8-22 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
8

Sin embargo, si el interruptor se abre de nuevo, por ejemplo, el operador de la máquina pulsa el
botón de parada de emergencia o abre la puerta de seguridad, la comparación enmascarada se
activa nuevamente y escribe el número del último interruptor abierto en %R0001. Esto significa
que el equipo no debe manipularse tras producirse el fallo, hasta que pueda examinarse el valor en
%R0001. Si esto no es práctico, se podría utilizar una instrucción mover adicional.

%I0001 %I0002 %I0003 %I0004 %I0005 %I0006 %I0007 %I0008 %I0009 %M0201

%M0201
MOVE_ MOVE_ MOVE_
WORD WORD WORD
CONST %M0017 CONST %M0033 CONST %R0001
IN Q FFFF FE00 IN Q FE00 0000 IN Q 0000
FFFF
LEN LEN LEN
00001 00001 00001

%M0201
MASK_
COMP
WORD %M0202
%I0001 I1 MC
01FF LEN
00001
%M0017 I2 Q %M0033
FFFF FE00

%M0033 M BN %R0001
FE00 00000
CONST BIT
00000

GFK-0467M-SP Capítulo 8 Funciones de operaciones con bits 8-23


Capítulo Funciones de movimiento de datos
9

Las funciones de mover datos proporcionan la capacidad de movimiento de datos básicos. Este
capítulo describe las siguientes funciones de movimiento de datos:

Abreviatura Función Descripción Página


MOVE Mover Copia los datos como bits individuales. La 9-2
longitud máxima permitida es de 256 palabras,
excepto MOVE_BIT que es de 256 bits. Los
datos pueden moverse a un tipo de datos diferente
sin conversión previa.
BLKMOV Mover bloque Copia un bloque de siete constantes a una posición 9-5
especificada de la memoria. Las constantes son
introducidas como parte de la función.
BLKCLR Borrar bloque Sustituye el contenido de un bloque de datos por 9-7
ceros. Esta función puede usarse para borrar un
área de memoria de bits (%I, %Q, %M, %G o
%T) o palabras (%R, %AI o %AQ). La longitud
máxima permitida es de 256 palabras.
SHFR Desplazar registro Desplaza una o más palabras de datos a una tabla. 9-8
La longitud máxima permitida es de 256 palabras.
BITSEQ Secuenciador de Efectúa un desplazamiento de secuencia de bits a 9-11
bits través de una tabla de bits. La longitud máxima
permitida es de 256 palabras.
COMMREQ Petición de Permite al programa comunicarse con un módulo 9-15
comunicaciones inteligente, tal como un módulo de
comunicaciones Genius o un módulo
coprocesador programable.

GFK-0467M-SP 9-1
9

MOVE (BIT, INT, WORD, REAL)


La función mover (MOVE) se usa para copiar datos como bits individuales de una posición a otra.
Dado que los datos se copian en formato de bits, la nueva posición no tiene por qué ser del mismo
tipo de datos que la original.
La función MOVE tiene dos parámetros de entrada y dos parámetros de salida. Cuando la función
mover está habilitada, copia los datos del parámetro de entrada IN al parámetro de salida Q en
forma de bits. Si los datos se mueven de una posición situada en la memoria digital a otra, (por
ejemplo, desde la memoria %I a la memoria %T), la información de transición asociada a los
elementos de memoria digitales se actualiza para indicar si la operación mover ha ocasionado o no
el cambio de estado de los elementos de memoria digitales. Los datos en el parámetro de entrada
no varían a no ser que exista un solapamiento en las referencias de entrada y salida.
Para el tipo BIT existe otra consideración. Si una tabla de tipo BIT especificado en el parámetro Q
no incluye todos los bits de un byte, los bits de transición asociados a dicho byte (que no están en la
tabla) se borran cuando la función MOV_BIT recibe flujo de energía.
La entrada IN puede ser una referencia de los datos que se desea mover o una constante. Si se
especifica una constante, el valor de la constante se coloca en la posición especificada por la
referencia de salida. Por ejemplo, si se especifica un valor constante de 4 para IN, y la longitud
(LEN) es igual a 1, entonces se coloca 4 en la posición de memoria especificada por Q. Si la
longitud es mayor que 1 y se especifica una constante, la constante se coloca en la posición de
memoria especificada por Q y en las posiciones siguientes a ésta, hasta la longitud especificada.
Por ejemplo, si para IN se especifica un valor constante 9 y la longitud es 4, entonces se coloca 9
en la posición de memoria especificada por Q y también en las tres posiciones siguientes:
El operando LEN especifica el número de:
• Palabras a ser movidas por MOVE_INT y MOVE_WORD.
• Bits a ser movidos por MOVE_BIT.
• Números reales a ser movidos por MOVE_REAL.

Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y 37x.

La función transfiere energía a hacia la derecha siempre que recibe energía.

_____
| |
(habilitar) —|MOVE_|— (ok)
| |
| INT |
| |
(valor a mover) —|IN Q|— (parámetro de salida Q)
| |
| LEN |
|00001|
|_____|

9-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

Parámetros

Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la operación de mover.
IN IN contiene el valor que debe copiarse (moverse). Para MOVE_BIT, puede utilizarse
cualquier referencia digital ; no tiene por qué estar alineada a ningún byte. Sin embargo,
un valor de 16 bits, comenzando por la dirección de referencia especificada, se visualiza
en la pantalla de Logicmaster.
ok La salida ok está activada siempre que la función esté habilitada.
Q Cuando se ejecuta la operación de mover, el valor en IN se copia en Q. Para
MOVE_BIT, puede utilizarse cualquier referencia digital ; no tiene por qué estar
alineada a ningún byte. Sin embargo, un valor de 16 bits, comenzando por la dirección
de referencia especificada, se visualiza en la pantalla de Logicmaster.
LEN LEN especifica el número de palabras o bits a mover. Para MOVE_WORD y
MOVE_INT, LEN debe estar entre 1 y 256 palabras. Para MOVE_BIT, cuando IN es
una constante, LEN debe estar entre 1 y 16 bits; de otro modo, LEN debe estar entre 1 y
256.

Nota
En las CPUs de las series 351, 352, 36x y 37x, las funciones MOVE_INT y
MOVE_WORD no soportan el solapamiento de los parámetros IN y Q, donde la
referencia IN es menor que la referencia Q. Por ejemplo, con los siguientes
valores:
IN=%R0001, Q=%R0004, LEN=5 (palabras), el contenido de %R0007 y
%R0008 será indeterminado; sin embargo, usando los siguientes valores:
Q=%R0001, IN=%R0004, LEN=5 (palabras) se obtendrán contenidos válidos.

Observe, asimismo, que sólo las CPUs de las series 35x y 36x (versión 9.00 y
posterior) y todas las versiones de la CPU35 y 37x poseen capacidad de coma
flotante y son, por tanto, las únicas CPUs de las Series 90-30 capaces de ejecutar
MOVE_REAL.

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
IN • • • • o • • • • •
ok • •
Q • • • • o† • • • •
Nota: Para datos de tipo REAL, los únicos tipos válidos son %R, %AI y %AQ.
• Referencia válida para los datos BIT, INT o WORD, o lugar donde la energía puede fluir a través de la función.
Para MOVE_BIT, las referencias digitales del usuario %I, %Q, %M y %T no necesitan estar alineadas a ningún byte.
o Referencia válida sólo para los datos BIT o WORD; no válida para INT.
† %SA, %SB, %SC solamente; %S no se puede utilizar.

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-3


9

Ejemplo 1 - Direcciones de solapamiento (sólo para CPUs 311-341)


Cuando el contacto de entrada habilitar %Q0014 está ACTIVADO, 48 bits se mueven desde la
posición de la memoria %M0001 a la posición %M0033. Aún cuando el destino solape la fuente
para 16 bits, el movimiento se realiza correctamente (excepto para las CPUs 35x y 35x como se ha
mencionado anteriormente).

| _____
|%Q0014 | |
|——| |———|MOVE_|—
| | |
| | WORD|
| | |
|%M0001 —|IN Q|—%M0033
| | |
| | LEN |
| |00003|
| |_____|
|

Antes de utilizar la función mover:


ENTRADA (%M0001 hasta %M0048)
1
%M0016 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
%M0032 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
%M0048 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Después de utilizar la función mover:


SALIDA (%M0033 hasta %M0080)
33
%M0048 1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0
%M0064 0 0 0 0 1 1 1 1 0 0 0 0 1 1 1 1
%M0080 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

Ejemplo 2 – para todas las CPUs


En este ejemplo, siempre que %I0003 está activada, los valores en los tres bits %M0001, %M0002
y %M0003 se mueven a %M0100, %M0101 y %M0102, respectivamente, y la bobina %Q0001 se
activa.

| _____
|%I0003 | | %Q0001
|——| |———|MOVE_|——————————————————————————————————————————————————————————( )—
| | |
| | BIT |
| | |
| %M0001—|IN Q|—%M0100
| | |
| | LEN |
| |00003|
| |_____|
|

9-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

BLKMOV (INT, WORD, REAL)


Utilice la función mover bloque (BLKMOV) para copiar un bloque de siete constantes a una
posición especificada.

Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y 37x.

La función BLKMOV tiene ocho parámetros de entrada y dos parámetros de salida. Cuando esta
función recibe flujo de energía, copia los valores constantes a posiciones consecutivas a partir del
destino especificado en la salida Q. La salida Q no puede ser la entrada de otra función del
programa.

Nota
Para BLKMOV_INT, los valores de IN1 — IN7 son indicados como decimales
con signo. Para BLKMOV_WORD, IN1 — IN7 son indicados en hexadecimal.
Para BLKMOV_REAL, IN1— IN7 son indicados en formato Real.

La función transfiere energía hacia la derecha siempre que está habilitada.


_____
| |
(habilitar) —|BLKMV|— (ok)
| |
| INT |
| |
(valor constante) —|IN1 Q|— (parámetro de salida Q)
| |
| |
(valor constante) —|IN2 |
| |
| |
(valor constante) —|IN3 |
| |
| |
(valor constante) —|IN4 |
| |
| |
(valor constante) —|IN5 |
| |
| |
(valor constante) —|IN6 |
| |
| |
(valor constante) —|IN7 |
|_____|

Parámetros

Parámetro Descripción
habilitar Cuando esta función está habilitada, se ejecuta la operación de mover bloque.
IN1— IN7 IN1 hasta IN7 contienen siete valores constantes.
ok La salida ok está activada siempre que la función esté habilitada.
Q La salida Q contiene el primer entero del bloque movido. IN1 se mueve a Q.

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-5


9

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN1— IN7 •
ok • •
Q • • • • o† • • • •
Nota: Para datos de tipo REAL, los únicos tipos válidos son %R, %AI y %AQ.
• Referencia válida para el lugar donde la energía puede fluir a través de la función.
o Referencia válida sólo para datos WORD; no válida para INT o REAL.
† %SA, %SB, %SC solamente; %S no se puede utilizar.

Nota
La capacidad de coma flotante sólo está disponible en las CPUs de las series 35x
y 36x, versión 9 o posterior, y en todas las versiones de la CPU352 y 37x. Estas
CPUs 90-30 son las únicas capaces de ejecutar BLKMV_REAL.

Ejemplo
En el siguiente ejemplo, cuando el contacto de entrada habilitar %M0201 está activado, la función
BLKMOV copia las siete constantes de entrada en las posiciones de la memoria %R0001
(especificada en la salida Q) hasta %R0007. Si la función BLKMV se ejecuta correctamente, se
activa su salida OK, la cual activa %M0202. A su vez, un contacto %M0202 habilita la función de
petición de servicio en el siguiente escalón, que utiliza %R0001 hasta %R0007 como su bloque de
parámetros. (Véanse en el Capítulo 12 las instrucciones de petición de servicio.)

%M0201 %M0202
BLKMV_
WORD

CONST
IN1 Q %R0001
0001 0001 Address Value
CONST
0000
IN2 %R0001 0001
%R0002 0000
CONST
IN3 %R0003 0000
0000
CONST %R0004 0204
IN4
0204 %R0005 0000
CONST %R0006 0000
IN5
0000 %R0007 0000
CONST IN6
0000
CONST IN7
0000

%M0202 %M0204
SVC_
REQ

CONST FNC
0046
%R0001
PARM
0001

9-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

BLKCLR (WORD)
Utilice la función borrar bloque (BLKCLR) para llenar un bloque especificado de datos con ceros.
La función BLKCLR tiene dos parámetros de entrada y un parámetro de salida. Cuando la función
recibe flujo de energía, escribe ceros en la posición de memoria a partir de la referencia
especificada por IN. Cuando los datos deban borrarse de una memoria digital (%I, %Q, %M, %G o
%T), también se borra la información de transición asociada a las referencias. La función pasa
energía hacia la derecha.
_____
| |
(habilitar) —| BLK_|— (ok)
| CLR_|
| WORD|
| |
| |
| |
(palabra a borrar) —|IN |
| LEN |
|00001|
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, el bloque se borra.
IN IN contiene la primera palabra del bloque que se desea borrar.
ok La salida ok está activada siempre que la función esté habilitada.
LEN LEN debe estar entre 1 y 256 palabras.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • • •† • • • •
ok • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† %SA, %SB, %SC solamente; %S no se puede utilizar.

Ejemplo
En el siguiente ejemplo, en la conexión se rellenan de ceros 32 palabras de la memoria %Q (512
puntos) comenzando por %Q0001.
| _____
|FST_SCN | |
|——| |———| BLK_|—
| | |
| | CLR_|
| | WORD|
| | |
| %Q0001—|IN |
| | LEN |
| |00032|
| |_____|
|

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-7


9

SHFR (BIT, WORD)


Utilice la función registro de desplazamiento (SHFR) para desplazar una o más palabras de datos o
bits de datos de una posición de referencia a un área especificada de la memoria. Por ejemplo, una
palabra podía desplazarse a una zona de memoria con una longitud especificada de cinco palabras.
Como resultado de este desplazamiento, otra palabra de datos se desplazaría saliendo fuera del final
de la zona de memoria.

Nota
Cuando se asignan direcciones de referencia, el solapamiento de los rangos de las
direcciones de referencia de las entradas y salidas en funciones multipalabras
podría producir resultados inesperados.

La función SHFR tiene cuatro parámetros de entrada y dos parámetros de salida. La entrada reset
(R) tiene prioridad sobre la entrada de habilitar función. Cuando reset está activa, todas las
referencias que comienzan en el registro de desplazamiento (ST) hasta la longitud especificada en
LEN, se rellenan de ceros.
Si la función recibe flujo de energía y reset no está activado, cada bit o palabra del registro de
desplazamiento se desplazan a la referencia inmediata superior. El último elemento del registro de
desplazamiento se desplaza hacia Q Si Q tiene una única dirección, los datos desplazados fuera de
Q se rechazan. Sin embargo, si se asigna a IN y a Q la misma dirección, los datos será recirculados
en el registro de desplazamiento. La referencia más alta del elemento del registro de
desplazamiento de IN se desplaza al elemento vacante que comienza por ST. El contenido del
registro de desplazamiento está accesible a través del programa, ya que éste se encuentra en la
memoria direccionable.
La función pasa el flujo de energía a la derecha siempre que se reciba energía de la lógica habilitar.
La función se ejecutará una vez cada exploración mientras esté habilitada; por lo que podría ser útil
utilizar un contacto habilitar del tipo de “una sola ejecución” desde una bobina de transición si sólo
se desea desplazar una vez para un determinado cierre.

_____
| |
(habilitar) —|SHFR_|— (ok)
| |
| WORD|
| |
(reset) —|R Q|— (parámetro de salida Q)
| LEN |
|00001|
| |
| |
| |
(valor a desplazar) —|IN |
| |
| |
| |
(primer bit o palabra) —|ST |
|_____|

9-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

Parámetros

Parámetro Descripción
habilitar Cuando la entrada habilitar está activada y la entrada R está desactivada, se efectúa el
desplazamiento. Observe que la función SHFR se ejecutará en cada exploración que esté
habilitada.
R Cuando la entrada R está activada, el registro de desplazamiento situado en ST se rellena
de ceros.
IN IN contiene el valor que debe desplazarse hacia el primer bit o palabra del registro de
desplazamiento. Para SHFR_BIT, puede utilizarse cualquier referencia digital; no tiene
por qué estar alineada a ningún byte. Sin embargo, se muestran en línea 16 bits a partir
de la dirección de referencia especificada.
ST ST contiene el primer bit o palabra del registro de desplazamiento. Para SHFR_BIT,
puede utilizarse cualquier referencia digital; no tiene por qué estar alineada a ningún
byte. Sin embargo, se muestran en línea 16 bits a partir de la dirección de referencia
especificada.
ok La salida ok está activada siempre que la entrada habilitar esté activada y la entrada R
esté desactivada.
Q La salida Q contiene el bit o palabra desplazado fuera del registro de desplazamiento.
Para SHFR_BIT, puede utilizarse cualquier referencia digital; no tiene por qué estar
alineada a ningún byte. Sin embargo, se muestran en línea 16 bits a partir de la dirección
de referencia especificada.
LEN LEN determina la longitud del registro de desplazamiento. Para SHFR_WORD, LEN
debe estar entre 1 y 256 palabras. Para SHFR_BIT, LEN debe estar entre 1 y 256 bits.

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
R •
IN • • • • • • • • • •
ST • • • • •† • • • •
ok • •
Q • • • • •† • • • •
• Referencia válida para los datos BIT o WORD, o lugar donde la energía puede fluir a través de la función.
Para SHFR_BIT, las referencias digitales del usuario %I, %Q, %M y %T no necesitan ser alineadas.
† %SA, %SB, %SC solamente; %S no se puede utilizar.

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-9


9

Ejemplo 1
En este ejemplo, el registro de desplazamiento opera sobre tres (LEN=3) posiciones de la memoria,
%R0002 hasta %R0004. Cuando el contacto de reset %I0002 está activo, las tres palabras del
registro de desplazamiento se ponen a cero.
Cuando el contacto %I0001 se cierra, el contacto %M0201 en la entrada habilitar de SHFR se
cierra durante una exploración. Esto desplaza los datos de %R0004 a la dirección de la salida Q,
%R0005 (el dato que estaba en %R0005 es rechazado). Los datos de %R0003 se desplazan a
%R0004; el dato de %R0002 se desplaza a %R0003, y el dato de %R0001 (IN) se desplaza a
%R0002 (ST). Este flujo de datos se muestra en la figura inferior. Si se desea, los datos pueden
ser recirculados utilizando la misma dirección en IN y Q.

%I0001 %M0201

%M0201 %M0202
SHFR_
WORD
%I0002 Flujo de datos a través de SHFR
R Q %R0005 %R0001 (IN)
LEN
00003 %R0002 (ST)
Registro de
desplaza-
%R0003 miento
%R0001 IN
(LEN=3)
%R0004
%R0002 ST
%R0005 (Q)

Rechazada

Ejemplo 2
En el ejemplo 2, el registro de desplazamiento es del tipo BIT. Con una LEN de 100, opera en
posiciones de memoria %M0001 hasta %M0100. Cuando la referencia de reset CLEAR está
activa, la función SHFR rellena de ceros desde %M0001 hasta %M0100. Cuando NXT_CYC (un
contacto de “una sola ejecución” de la bobina de transición) está activo y CLEAR está desactivado,
la función SHFR desplaza los datos de %M0001 hasta %M0100 un bit. El bit en %Q0033 se
desplaza a %M0001 mientras que el bit desplazado fuera de %M0100 se escribe en Q (%M0200).
El valor anterior de Q es rechazado.
| _____
|NXT_CYC | |
|——| |———|SHFR_|—
| | |
| | BIT |
| CLEAR | |
|——| |———|R Q|—%M0200
| | LEN |
| |00100|
| | |
| | |
| | |
| %Q0033—|IN |
| | |
| | |
| %M0001—|ST |
| |_____|
|

9-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

BITSEQ (BIT)
La función secuenciador de bits (BITSEQ) desplaza un único bit de lógica 1 secuencialmente en un
canal circular a través de una tabla de bits. Cuando el bit es desplazado al final de la tabla, éste
vuelve al otro extremo de la tabla en el siguiente desplazamiento y continúa desde allí. La función
BITSEQ tiene cinco parámetros de entrada y un parámetro de salida.
| |
(habilitar) —| BIT_|— (ok)
| |
| SEQ |
| |
(reset) —|R |
| LEN |
|00001|
(dirección) —|DIR |
| |
| |
(número) —|STEP |
| |
| |
(dirección inicial) —|ST |
| |
|_____|
(dirección) - Introduzca aquí la dirección
inicial.

Requisitos de la entrada habilitar


La entrada habilitar del secuenciador de bits requiere una transición de la lógica cero a la lógica
uno para que la función pueda ejecutar un desplazamiento, y no se ejecutará de nuevo hasta que
reciba otra transición positiva de la entrada habilitar. Por tanto, no es necesario el uso del contacto
de una bobina de transición positiva para la entrada habilitar.

Entrada R (Reset)
Cuando esta entrada está activada, la función secuenciador de bits no se ejecutará.
La entrada reset (R) fuerza la entrada habilitar (EN) y siempre reinicializa el secuenciador. Cuando
R está activada, el número de pasos actual se pone en un valor especificado en el parámetro de
número STEP y todos los demás bits se ponen a cero. Si no se especifica el número STEP
(STEP=0), el paso se pone a bit 1 y todos los demás bits se ponen a 0.
Cuando EN está activado y R no está activado, el bit a que apunta el número de paso actual se
borra. El número de paso actual se incrementa o decrementa en base al parámetro DIR (dirección).
A continuación, el bit a que apunta el nuevo número de paso se pone a 1.

Entrada STEP
• Cuando el número de paso se incrementa y sale del intervalo de (1 ≤ número de paso
≤ LEN), se pone nuevamente a 1.
• Cuando el número de paso se decrementa y sale del intervalo de (1 ≤ número de paso
≤ LEN), se pone a LEN.
El parámetro ST es opcional. Si no se utiliza (se deja igual a su valor por defecto cero), la función
BITSEQ opera como se ha descrito anteriormente, excepto que no se pone o borra ningún bit.
Básicamente la función BITSEQ simplemente incrementa el número de paso actual hasta llegar a
su límite permitido.

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-11


9

Entrada DIR (Dirección)


El sentido de la rotación de bits puede modificarse activado o desactivando la entrada DIR. Si está
activada, el bit se incrementa a través de la tabla. Si está desactivada, el bit se decrementa.

Entrada ST (Dirección inicial) y parámetro LEN (Longitud)


La entrada ST contiene una posición de memoria para la dirección inicial de la tabla del
secuenciador. La longitud de la tabla, en bits, está definida por el parámetro LEN. Por ejemplo, si
ST es %M0001 y LEN es igual a 16, la tabla está compuesta por %M0001 hasta %M0016. Si ST
es una dirección %R, entonces LEN determina cuántos bits consecutivos de la memoria %R están
incluidos en la tabla. Por ejemplo, si ST es %R0004, y LEN es igual a ocho, sólo los primeros
ocho bits del registro %R será usados en la tabla; los últimos ocho bits de %R0004 serán ignorados
por el secuenciador de bits.

Memoria de bloque de control requerida para un secuenciador de bits


Cada secuenciador de bits utiliza tres palabras (registros) de la memoria %R para almacenar la
siguiente información:

Número de pasos actual Palabra 1


Longitud de secuencia (en bits) Palabra 2
Palabra de control Palabra 3

Cuando se programa un secuenciador de bits con Logicmaster, se debe introducir una dirección
inicial para estas tres palabras (registros) directamente debajo del gráfico que representa la función
(véase el ejemplo en la siguiente página).
La palabra de control almacena el estado de las entradas y salidas lógicas de sus bloques de función
asociados, como se muestra en el siguiente formato:

15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0

R es erv a d o

R es erv a d o

O K ( e n tr a d a e s t a d o )
E N ( e n t r a d a h a b ilit a r )

Nota
Los bits 0 hasta 13 no se usan en el bloque de control. Observe también, que los bits deben
introducirse de 1 hasta 16, NO de 0 hasta 15 en el parámetro STEP.

9-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

Parámetros

Parámetro Descripción
dirección La dirección es la posición del paso actual del secuenciador de bits, la longitud y los
últimos estados de habilitar y ok.
habilitar Cuando la función está habilitada, si no estaba habilitada en el barrido previo y si R no
está activada, se ejecuta el desplazamiento de secuencia de bits.
R Cuando R está activada, el número de paso del secuenciador de bits se configura al valor
definido en STEP (valor por defecto = 1), y el secuenciador de bits se rellena de ceros,
excepto el bit de número de paso actual.
DIR Cuando DIR está activada, el número de paso del secuenciador de bits se aumenta antes
del desplazamiento. De no ser así, se decrementa.
STEP Cuando R está activada, el número de pasos se asigna a este valor.
ST ST contiene la primera palabra del secuenciador de bits.
ok La salida ok está activada siempre que la función esté habilitada.
LEN LEN debe estar entre 1 y 256 bits.
Nota
La comprobación de la bobina para la función BITSEQ comprueba los 16 bits
desde el parámetro ST, aun cuando LEN sea menor que 16.

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
dirección •
habilitar •
R •
DIR •
STEP • • • • • • • • • •
ST • • • • •† • • • • •
ok • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
† SA, %SB, %SC solamente; %S no se puede utilizar.

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-13


9

Ejemplo
En el siguiente ejemplo, el secuenciador de bits opera en los bits %M0011 (especificado en la
entrada ST) hasta %M0022 (dado que LEN es igual a doce). Su bloque de control de tres palabras
se almacena en los registros %R0010, %R0011 y %R0012. Cuando %I0002 (en la entrada R) está
activada, el secuenciador se reinicializa, lo que significa que el bit para el paso tres (especificado en
la entrada STEP) se pondrá a lógica uno y todos los demás bits se pondrán a cero.
Cuando %I0001 pasa a lógica 1 (con %I0002 desactivado), el bit para el paso número tres se borra
y el bit para el paso número 4 se activará si DIR está activada, o bien se activará el bit para el paso
número 2 si DIR está desactivada.

%I0001 %M0100
BIT_
%I0002 SEQ

R
LEN
%I0003 00012
DIR
Bits %M 22 21 20 19 18 17 16 15 14 13 12 11
CONST Núm. de paso 12 11 10 9 8 7 6 5 4 3 2 1
STEP
00003 0 0 0 0 0 0 0 0 0 1 0 0
%M0011 ST
Dirección de desplazamiento mostrada para DIR=ACTIVADA
%R0010

9-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

COMMREQ
Utilice la función petición de comunicaciones (COMMREQ) si el programa necesita comunicarse
con un módulo inteligente, tal como un Módulo de Comunicaciones Genius o un Módulo
Coprocesador Programable.

Nota
La información presentada en las páginas siguientes muestra el formato general
de la función COMMREQ. Necesitará información adicional para programar
COMMREQ para cada tipo de dispositivo. Los requisitos de programación para
cada módulo que usa la función COMMREQ están descritos en la documentación
del módulo.

La función COMMREQ tiene tres parámetros de entrada y un parámetro de salida. Cuando la


función COMMREQ recibe flujo de energía, se envía un bloque de datos de comando al módulo
inteligente. El bloque de comando comienza en la referencia especificada mediante el parámetro
IN. El rack y el slot # del módulo inteligente están especificados en SYSID.
La función COMMREQ puede enviar un mensaje y esperar una respuesta, o enviar un mensaje y
continuar sin esperar respuesta. Si el bloque de comando especifica que el programa no espere una
respuesta, el contenido del bloque de comando se envía al dispositivo receptor y la ejecución del
programa se reanuda inmediatamente. (El valor de tiempo de espera límite es ignorado.) Esto se
denomina modo NOWAIT (sin espera).
Si el bloque de comando especifica que el programa espere una respuesta, el contenido del bloque
de comando se envía al dispositivo receptor y la CPU espera una respuesta. El máximo espacio de
tiempo que el PLC esperará a que el dispositivo responda está especificado en el bloque de
comando. Si el dispositivo no responde en ese tiempo, la ejecución del programa se reanuda. Esto
se denomina modo WAIT (espera).
La salida función fallida (FT) puede ACTIVARSE si:
1. El objeto especificado (SYSID) no está presente en esa posición.
2. El número de tarea especificada (TASK) no es válida para el dispositivo.
3. La longitud de datos es 0 (en el bloque de comando).
4. La dirección de puntero de estado de dispositivo (parte del bloque de comando) no existe.
Esto puede ser debido a una selección incorrecta del tipo de memoria, o a que una dirección
dentro de ese tipo de memoria está fuera de rango.

Bloque de comando
El bloque de comando proporciona información al módulo inteligente de destino. Contiene el
número de comando que se va a ejecutar, así como los datos que se van a transferir.
La dirección del bloque de comando está especificada en la entrada IN de la función COMMREQ.
Esta dirección puede estar en un área de memoria orientada a palabra (%R, %AI o %AQ). La
longitud del bloque de comando depende del tipo de módulo de destino de COMMREQ y de la
cantidad de datos que se van a enviar.

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-15


9

El bloque de comando presenta la siguiente estructura:


Longitud (en palabras) dirección
Indicador (flag) de esperar/no esperar dirección + 1
Memoria de puntero de estado dirección + 2
Offset de puntero de estado dirección + 3
Valor tiempo límite inactivo dirección + 4
Tiempo máx. comunicaciones dirección + 5
dirección + 6
Bloque de datos hasta
dirección + 133
La información solicitada para el bloque de comando puede colocarse en la memoria del bloque de
comando mediante una función de programación adecuada, tal como mover bloque o una serie de
la función mover.
_____
| |
(habilitar) —|COMM_|—
| |
| REQ |
| |
(palabra 1 bloque comando) —|IN FT|—
| |
(número de rack/slot) —|SYSID|
| |
(ID de tarea) —|TASK |
|_____|

Parámetros
Parámetro Descripción
habilitar Mientras la entrada habilitar esté activada, la petición de comunicaciones se realiza una
vez por exploración. Si no se desea enviar la COMMREQ múltiples veces, la entrada
habilitar deberá ser un contacto de una bobina de transición.
IN IN contiene la dirección inicial de la primera palabra del bloque de comando.
SYSID SYSID contiene el número de rack (byte más significativo) y el número de slot (byte
menos significativo) del módulo destino.
TASK TASK contiene el identificador de tarea del proceso en el módulo destino.
FT La salida FT (fallo) se activa si se ha detectado un error en el procesamiento de la
función COMMREQ:

Nota
La COMMREQ de las Series 90-30 no tiene salida OK.

9-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
9

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • •
SYSID • • • • • • • • •
TASK • • • •
FT • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo
En el siguiente ejemplo, cuando la entrada habilitar %I0001 está activada, un bloque de comando
que comienza en %R0100 (especificado en la entrada IN) es enviado a la tarea de comunicaciones
1 (entrada TASK = 1) en el módulo situado en el rack 0, slot 8 (SYSID=0008) del PLC. Si se
produce un error durante el procesamiento de COMMREQ, la salida fallo (FT) se activa, lo cual
activa %M0100.
Observe que la dirección en la entrada IN especifica la dirección inicial del bloque de comando.
Asimismo, el número hexadecimal en SYSID especifica el número de rack y slot del módulo
destino; el byte alto corresponde al número de rack y el byte bajo al número de slot. Por tanto, el
SYSID de 0008 en el ejemplo corresponde al rack 00 y slot 08, como se muestra. El rack 0 (cero)
corresponde siempre al rack principal o rack de la CPU, de modo que si el módulo destino era un
rack de expansión o un rack remoto, el byte alto de SYSID contendrá un número distinto de cero
que corresponde al número del rack configurado donde está situado el módulo destino.

%I0001
COMM_
REQ
%M0100
%R0100 IN FT
LEN
00001
CONST
SYSID
0008
CONST
TASK
00001

PLC de las Series 90-30, Rack 0


Bloque de comando
Fuente CPU
%R0100 de
%R0101 alimen-
tación
%R0102
%R0103 Número de slot: 1 2 3 4 5 6 7 8 9 10
Etc.

GFK-0467M-SP Capítulo 9 Funciones de movimiento de datos 9-17


Capítulo Funciones de tablas
10

Las instrucciones de tablas se utilizan para realizar las siguientes funciones:

Abreviatura Función Descripción Página


ARRAY_MOVE Mover tabla Copia un número especificado de elementos de datos de 10-2
una tabla origen a una tabla destino.
SRCH_EQ Buscar igual que Busca todos los valores de la tabla iguales a un valor 10-7
especificado.
SRCH_NE Buscar distinto de Busca todos los valores de la tabla distintos a un valor 10-7
especificado.
SRCH_GT Buscar mayor que Busca todos los valores de la tabla mayores que un valor 10-7
especificado.
SRCH_GE Buscar mayor o Busca todos los valores de la tabla mayores o iguales 10-7
igual que que un valor especificado.
SRCH_LT Buscar menor que Busca todos los valores de la tabla menores que un valor 10-7
especificado.
SRCH_LE Buscar menor o Busca todos los valores de la tabla menores o iguales 10-7
igual que que un valor especificado.
La longitud máxima permitida para estas funciones es de 32.767 bytes o palabras, o 262.136 bits
(los bits están disponibles sólo para ARRAY_MOVE).
Las funciones de tablas se aplican a los siguientes tipos de datos:
Tipo de Descripción
datos
INT Entero con signo
DINT Entero con signo doble precisión.
BIT * Tipo de datos bit
BYTE Tipo de datos byte
WORD Tipo de datos palabra.
* Sólo disponible para ARRAY_MOVE.

El tipo de datos por defecto es el entero con signo. El tipo de datos puede cambiarse tras
seleccionar la función de tabla de datos específicos en el software de lógica de contactos. Para
comparar datos de otros tipos o de dos tipos diferentes, utilice primeramente la función de
conversión correspondiente (descrita en el Capítulo 11, “Funciones de conversión”) para cambiar
los datos a uno de los tipos de datos listado más arriba.

GFK-0467M-SP 10-1
10

ARRAY_MOVE (mover tabla) (INT, DINT, BIT, BYTE, WORD)

Tablas y elementos de datos definidos

En la presente exposición, denominamos tabla a un grupo de áreas de memoria direccionables


contiguas del PLC, tales como %R0100 hasta %R0120. Un elemento de dato es el dato situado en
una unidad de la tabla de memoria. Por ejemplo, si una tabla es del tipo Bit, cada elemento de dato
está situado en un único bit de la memoria, tal como %M0001 (o podría ser un bit único en una
memoria de tipo registro). O, si una tabla es del tipo Palabra, cada elemento de dato estará situado
en una palabra de 16 bits de memoria, tal como %R0100 (o podrían ser 16 bits %I consecutivos).
Véase la tabla “Tipos de memoria válidos” para más información al respecto.

Números de índice

Cada elemento de datos de una tabla posee un número de referencia llamado número de índice, que
es automáticamente asignado por el PLC. El número de índice indica la posición del elemento de
datos en la tabla. Los elementos de datos están numerados en orden ascendente, empezando por la
dirección de memoria más baja de la tabla, a la que se ha asignado el número de índice uno.

Por ejemplo, la siguiente tabla de tipo palabra tiene una dirección inicial de %R0105. Tiene diez
elementos de datos, cuyos números de índice son 1 hasta 10.
Número
Dirección de índice
%R0105 1
%R0106 2
%R0107 3
%R0108 4
%R0109 5
%R0110 6
%R0111 7
%R0112 8
%R0113 9
%R0114 10

La instrucción mover tabla

Utilice la función mover tabla para copiar un número especificado de elementos de datos desde una
tabla origen a una tabla destino. Cada tabla relacionada en una instrucción mover tabla posee igual
número de elementos de datos. La función mover tabla permite que las posiciones
correspondientes implicadas en el movimiento sean diferentes en las tablas origen y destino. Por

10-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10

ejemplo, tres elementos de datos, que comienzan en el índice 5 en la tabla origen, pueden copiarse
a tres elementos de datos en la tabla destino que comiencen en el índice 7.
La función ARRAY_MOVE tiene cinco parámetros de entrada y dos parámetros de salida.
Cuando la función está habilitada, el número de elementos de datos en el indicador del contador
(N) son copiados de la tabla de entrada comenzando por la posición de índice especificada en la
entrada SNX. Los elementos de datos se escriben en la tabla de salida comenzando por la posición
de índice especificada en DNX. El operando LEN especifica el número de elementos que
constituyen cada tabla.
Para ARRAY_MOVE_BIT, cuando la memoria orientada a palabras se selecciona para los
parámetros de la dirección inicial de la tabla de origen y/o de la tabla destino, el bit menos
significativo de la palabra especificada es el primer bit de la tabla. El valor indicado en la pantalla
del Logicmaster contiene 16 bits, independientemente de la longitud de la tabla.
Los índices de una instrucción ARRAY_MOVE tienen por base 1. Cuando se utiliza una
instrucción ARRAY_MOVE, no puede hacerse referencia a ningún elemento que esté fuera de las
tablas origen o destino (especificadas por su dirección inicial y su longitud).
La salida ok recibe flujo de energía a no ser que se produzca una de las siguientes situaciones:
• Habilitar está DESACTIVADA.
• (N + SNX – 1) es mayor que LEN. Esta fórmula es usada por el PLC para asegurar que no se
considere ningún elemento fuera de la tabla origen.
• (N + DNX – 1) es mayor que LEN. Esta fórmula es usada por el PLC para asegurar que no se
considere ningún elemento fuera de la tabla destino.
• SNX o DXN = 0.

_____
| |
(habilitar) —|ARRAY|— (ok)
| |
|MOVE_|
| |
| BIT |
| |
(dirección de la tabla origen) —|SR DS|— (dirección de la tabla destino)
| LEN |
|00001|
(índice de la tabla origen) —|SNX |
| |
| |
(índice de la tabla destino) —|DNX |
| |
| |
(elementos a transferir ) —|N |
|_____|

GFK-0467M-SP Capítulo 10 Funciones de tablas 10-3


10

Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación mover tabla.
SR SR contiene la dirección inicial de la tabla origen. Para ARRAY_MOVE_ BIT, puede
utilizarse cualquier referencia; no tiene por qué estar alineada a ningún byte. Sin
embargo, 16 bits, comenzando por la dirección de referencia especificada, se visualizan
en la pantalla de Logicmaster.
SNX SNX contiene el índice en la tabla origen del primer elemento de datos que va a
copiarse.
DNX DNX contiene el índice en la tabla destino del primer elemento de datos que va a
copiarse.
N El número de elementos de datos que va a copiarse.
ok La salida ok se activa siempre que habilitar esté activada.
DS DR contiene la dirección inicial de la tabla destino. Para ARRAY_MOVE_ BIT, puede
utilizarse cualquier referencia; no tiene por qué estar alineada a ningún byte. Sin
embargo, se muestran en línea 16 bits a partir de la dirección de referencia especificada.
LEN LEN especifica el número de elementos que comienza en SR y DS que componen cada
tabla.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
SR o o o o ∆† o • • •
SNX • • • • • • • • •
DNX • • • • • • • • •
N • • • • • • • • •
ok • •
DS o o o o † o • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.
Para ARRAY_MOVE_BIT, las referencias digitales del usuario %I, %Q, %M y %T no necesitan estar alineadas a ningún byte.
o Referencia válida sólo para los datos INT, BIT, BYTE o WORD; no válida para DINT.
∆ Tipo de datos válido sólo para los datos BIT, BYTE o WORD; no válido para INT o DINT.
† %SA, %SB, %SC solamente; %S no se puede utilizar.

10-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10

Ejemplo 1
En este ejemplo, las dos tablas son del tipo INT con una longitud de 10 elementos (enteros),
especificada por LEN=10. Sus direcciones iniciales están especificadas en SR y DS. Cuando el
contacto habilitar %M0201 está activado, cinco elementos de datos (especificados por N=5) son
copiados de la tabla origen a la tabla destino. Los cinco elementos de datos copiados de la tabla
origen comienzan con el número de índice 3, ya que SNX=3. Las posiciones copiadas en la tabla
destino comienzan por el número de índice 5, ya que DNX=5. Así %R0003 hasta %R0007 de la
tabla origen son leídos y después copiados en %R0104 hasta %R0108 de la tabla destino.

%M0201 %M0202
ARRAY
MOVE_
INT Tabla origen Tabla destino
%R0001 SR DS %R0100 %R0001 %R0100
LEN %R0002 %R0101
00010 %R0003 %R0102
CONST SNX %R0004 %R0103
+00003 %R0005 %R0104
CONST DNX %R0006 %R0105
+00005 %R0007 %R0106
CONST N %R0008 %R0107
+00005 %R0009 %R0108
%R0010 %R0109

Ejemplo 2
En este ejemplo, las dos tablas son del tipo BIT con una longitud de 10 elementos (bits),
especificada por LEN=10. Sus direcciones iniciales están especificadas en SR y DS. Cuando el
contacto habilitar %M0201 está activado, cuatro elementos de datos (especificados por N=4) son
copiados de la tabla origen a la tabla destino. Los cuatro elementos de datos copiados de la tabla
origen comienzan con el número de índice 4, ya que SNX=4. Las posiciones copiadas en la tabla
destino comienzan por el número de índice 2, ya que DNX=2. Así, %M0012 hasta %M0015 de la
tabla origen son leídos y después copiados en %Q0023 hasta %Q0026 de la tabla destino.

%M0201 %M0202
ARRAY
MOVE_
BIT Tabla origen Tabla destino
%M0009 SR DS %Q0022 %M0009 %Q0022
LEN %M0010 %Q0023
00010 %M0011 %Q0024
CONST SNX %M0012 %Q0025
+00004 %M0013 %Q0026
CONST DNX %M0014 %Q0027
+00002 %M0015 %Q0028
CONST N %M0016 %Q0029
+00004
%M0017 %Q0030
%M0018 %Q0031

GFK-0467M-SP Capítulo 10 Funciones de tablas 10-5


10

Ejemplo 3
En este ejemplo, las dos tablas son del tipo BIT con una longitud de 20 elementos 20 (bits),
especificada por LEN=10. Sus direcciones iniciales están especificadas en SR y DS. Cuando el
contacto habilitar %M0201 está activado, doce elementos de datos 12 (especificados por N=12) son
copiados de la tabla origen a la tabla destino. Los doce elementos de datos copiados de la tabla
origen comienzan con el número de índice 6, ya que SNX=6. Las posiciones copiadas en la tabla
destino comienzan por el número de índice 8, ya que DNX=8. Así %R0001, bit 6 hasta %R0002,
bit 1 de la tabla origen son leídos y después copiados en %R0100, bit 8 hasta %R0101, bit 3 de la
tabla destino.

%M0201 %M0202
ARRAY
MOVE_
BIT Tabla origen Tabla destino
%R0001 SR DS %R0100 %R0001, bit 1 %R0100, bit 1
LEN %R0001, bit 2 %R0100, bit 2
00020 %R0001, bit 3 %R0100, bit 3
CONST SNX %R0001, bit 4 %R0100, bit 4
00006 %R0001, bit 5 %R0100, bit 5
CONST DNX %R0001, bit 6 %R0100, bit 6
00008 %R0001, bit 7 %R0100, bit 7
CONST N %R0001, bit 8 %R0100, bit 8
00012
%R0001, bit 9 %R0100, bit 9
%R0001, bit 10 %R0100, bit 10
%R0001, bit 11 %R0100, bit 11
%R0001, bit 12 %R0100, bit 12
%R0001, bit 13 %R0100, bit 13
%R0001, bit 14 %R0100, bit 14
%R0001, bit 15 %R0100, bit 15
%R0001, bit 16 %R0100, bit 16
%R0002, bit 1 %R0101, bit 1
%R0002, bit 2 %R0101, bit 2
%R0003, bit 3 %R0101, bit 3
%R0003, bit 4 %R0101, bit 4

10-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10

Funciones de búsqueda
Utilice la función buscar apropiada, entre las listadas a continuación, para buscar todos los valores
de la tabla para esa determinada operación.

Abreviatura Función Descripción


SRCH_EQ Buscar igual que Busca todos los valores de la tabla iguales a un valor
especificado.
SRCH_NE Buscar distinto de Busca todos los valores de la tabla distintos de un valor
especificado.
SRCH_GT Buscar mayor que Busca todos los valores de la tabla mayores que un valor
especificado.
SRCH_GE Buscar mayor o Busca todos los valores de la tabla mayores o iguales que un
igual que valor especificado.
SRCH_LT Buscar menor que Busca todos los valores de la tabla menores que un valor
especificado.
SRCH_LE Buscar menor o Busca todos los valores de la tabla menores o iguales que un
igual que valor especificado.

Cada función tiene cuatro parámetros de entrada y dos parámetros de salida. Cuando la función
recibe energía, se realiza la búsqueda en la tabla comenzando en (AR + entrada NX). Esta es la
dirección inicial de la tabla (AR) más el índice dentro de esa tabla (entrada NX).
La búsqueda continúa hasta que se encuentra el elemento de tabla del objeto buscado (IN) o hasta
que se alcanza el final de la tabla. Si se encuentra un elemento de tabla, se ACTIVA el parámetro
de salida (FD) y el parámetro de salida (salida NX) se configura a la posición relativa de este
elemento dentro de la tabla. Si no se encuentra ningún elemento de tabla antes de llegar al final de
éste, se DESACTIVA el parámetro de salida (FD) y se pone a cero el parámetro de salida (salida
NX).
Los valores válidos de la entrada NX van de 0 a LEN- 1. NX debe configurarse a cero para iniciar
la búsqueda en el primer elemento. Este valor aumenta en uno en el momento de la ejecución. Por
este motivo, los valores de NX de salida van de 1 hasta LEN. Si el valor de la entrada NX está
fuera de rango, (< 0 o ≥ LEN), su valor se pone al valor por defecto de cero.

_____
| |
(habilitar) —|SRCH_|
| |
| EQ_ |
| |
| WORD|
| |
(dirección inicial) —|AR FD|—
| LEN |
|00001|
(entrada índice) —|NX NX|— (salida índice)
| |
| |
(objeto de la búsqueda) —|IN |
|_____|

GFK-0467M-SP Capítulo 10 Funciones de tablas 10-7


10

Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la operación.
AR AR contiene la dirección inicial de la tabla donde se va a buscar (tabla destino).
Entrada NX Entrada NX contiene un número de índice (en la tabla destino) donde ha de comenzar la
búsqueda.
IN IN contiene el objeto que se va a buscar.
Salida NX Si se encuentra el objeto de la búsqueda, si posición en la tabla (su número de índice) se
escribirá aquí.
FD Esta salida se activa para indicar que el objeto buscado ha sido encontrado en la tabla.
LEN LEN especifica el número de elementos que comienza en AR que componen la tabla
buscada. Pueden ser 1 hasta 32,767 bytes o palabras.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
AR o o o o ∆ o • • •
entrada NX • • • • • • • • •
IN o o o o ∆ o • • • •
salida NX • • • • • • • •
FD • •
• Lugar o referencia válida donde la energía puede fluir a través de la función.
o Referencia válida sólo para los datos INT,BYTE o WORD; no válida para DINT.
∆ Tipo de datos válido sólo para los datos BYTE o WORD; no válido para INT o DINT.

10-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
10

Ejemplo 1
La función SRCH_EQ (tipo INT) en este ejemplo busca el bloque de memoria que comienza en
%R0001 (especificado en AR) y continúa hasta %R0010 (LEN=10). El valor que se va a buscar,
definido en IN, es +16566. La entrada NX, con un valor de 3, indica que la búsqueda ha de
comenzar en el cuarto elemento de datos en la tabla, ya que el valor de NX se incrementa en 1
cuando se ejecuta la función.
Cuando el contacto habilitar %M0201 está activado, la función SRCH_EQ busca en la tabla
especificada, comenzando por el número de índice 4, un valor igual al valor en IN, +16566.
Encuentra este valor en %R0007, que tiene un número de índice de 7, de modo que escribe el
número 7 en la salida NX en %R0100. También activa la salida FD, que indica que ha encontrado
el objeto buscado en la tabla. Observe que aunque la dirección %R0002 también contiene el valor
buscado +16566, este elemento de datos no estaba incluido en la búsqueda ya que el valor 3 del
parámetro de la entrada NX especifica que la búsqueda comience por el cuarto elemento de datos,
que es %R0004.

%M0201 %M0202
SRCH_
EQ_
INT
TABLA DESTINO
%R0001 AR FD Número de índice Dirección Valor
LEN 1 %R0001 00000
00010 2 %R0002 +16566
CONST NX NX
3 %R0003 +12345
%R0100
00003 4 %R0004 +32000
00007
5 %R0005 +07870
%R0100 6 %R0006 -00550
IN
+16566
7 %R0007 +16566
8 %R0008 -12343
9 %R0009 +00058
10 %R0010 +19238

GFK-0467M-SP Capítulo 10 Funciones de tablas 10-9


10

Ejemplo 2
La tabla de este ejemplo comienza en %AI0001 (especificado en AR) y continúa hasta %AI0016
(LEN=16). El valor que se va a buscar, definido en IN, es 00000. La entrada NX, con un valor
inicial de 0, indica que la búsqueda ha de comenzar en el primer elemento de datos en la tabla, ya
que el valor de NX se incrementa en 1 cuando se ejecuta la función.
Cuando %M0200 se cierra por primera vez, la función ejecuta su primera búsqueda, comenzando
por el elemento de datos 1, de un valor igual al valor en IN, 00000. Encuentra este valor en
%AI0003, que tiene un número de índice de 3, de modo que escribe el número 3 en la salida NX y
la entrada NX, las cuales tienen la dirección de referencia de %R0001. También activa la salida
FD, que indica que ha encontrado el objeto buscado en la tabla.
Cuando %M0200 se cierra por segunda vez, el valor de la entrada NX, que ahora es 3, se
incrementa en 1, de modo que la segunda búsqueda comienza en el cuarto elemento de la tabla,
%AI0004. El valor objetivo de 00000 se ha encontrado ahora en %AI0007, el séptimo elemento de
datos, de modo que el número 7 se escribe en %R0001. Cada búsqueda consecutiva sigue este
modelo, hasta la quinta búsqueda, en la que no se encuentra ningún objeto. Dado que no se
encuentra ningún objeto, se escribe un 0 en %R0001, que asegurará que la búsqueda comience al
inicio de la tabla la próxima vez que ésta se inicie.
La búsqueda Resultado de
comienza en el la búsqueda
Búsqueda nº elemento de datos (en %R0001)
1 1 3
2 4 7
3 8 11
4 12 15
5 16 0
%M0200 %M0201

%M0201 %M0202
SRCH_
EQ_
TABLA DESTINO
INT Número de índice Dirección Valor
%AI0001 AR FD 1 %AI0001 00100
2 %AI0002 +16566
LEN
00016 3 %AI0003 00000
%R0001 %R0001 4 %AI0004 +32000
NX NX
00000 00000 5 %AI0005 +07870
6 %AI0006 -00550
CONST 7 %AI0007 00000
IN
00000 8 %AI0008 -12343
9 %AI0009 +00058
10 %AI0010 +19238
11 %AI0011 00000
12 %AI0012 +16566
13 %AI0013 +12345
14 %AI0014 +32000
15 %AI0015 00000
16 %AI0016 -00550

10-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de conversión
11

Utilice las funciones de conversión para convertir un elemento de datos de un tipo de número a
otro. Numerosas instrucciones de programación, tales como las funciones matemáticas deben
utilizarse con datos de un tipo determinado. Esta sección describe las siguientes funciones de
conversión:

Abreviatura Función Descripción Página


BCD-4 Convertir a BCD-4 Convierte un entero con signo al formato 11-2
BCD de 4 dígitos.
INT Convertir a entero con signo Convierte BCD-4 o REAL al formato de 11-3
entero con signo.
DINT Convertir a entero con signo Convierte REAL al formato de entero con 11-5
de doble precisión signo de doble precisión.
REAL Convertir a REAL Convierte INT, DINT, BCD-4 o WORD a 11-7
REAL.
WORD Convertir a WORD Convierte REAL al formato WORD. 11-9
TRUN Truncar Elimina la parte decimal del número real. 11-11

GFK-0467M-SP 11-1
11

—>BCD-4 (INT)
La función convertir a BCD-4 se usa para entregar el dato BCD de cuatro dígitos equivalente a un
valor entero con signo. El dato original no es modificado por esta función. Los datos pueden
convertirse a datos BCD para accionar LEDs codificados en BCD o valores preseleccionados para
dispositivos externos tales como contadores rápidos.
Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Esta función transfiere el flujo de energía cuando se recibe
energía a no ser que la conversión especificada diese como resultado un valor fuera del intervalo 0
hasta 9999.

Habilitar INT_ OK
A_
BCD4
Valor a convertir IN Q Valor convertido

Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene una referencia para el valor entero que debe convertirse a BCD-4.
ok La salida ok se activa cuando la función se ejecuta sin error.
Q La salida Q contiene la forma BCD-4 del valor original que hay en IN.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • • • • • • •
ok • •
Q • • • • • • • •

• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo
En el siguiente ejemplo, siempre que la entrada %I0002 está activada y no existen errores, el entero
disponible en la posición de entrada %M0017 hasta %M0032 se convierte a cuatro dígitos BCD y
el resultado se almacena en las posiciones de memoria %Q0033 hasta %Q0048. La bobina
%M0032 se activa para verificar si la conversión ha sido correcta.
| _____
|%I0002 | | %M0032
|——| |———| INT_|———————————————————————————————————————————————————————————( )—
| | TO_ |
| | |
| | BCD4|
| %M0017—|IN Q|—%Q0033
| |_____|
|

11-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11

—>INT (BCD-4, REAL)


La función convertir a entero con signo se utiliza para obtener el dato entero equivalente a BCD-4
o REAL. El dato original no es modificado por esta función.

Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37x.

Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Esta función transfiere siempre el flujo de energía cuando se
recibe energía a no ser que los datos estén fuera de los límites.

Habilitar BCD4_ OK
A_
INT
Valor a convertir IN Q Valor convertido

Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta la conversión.
IN IN contiene una referencia para convertir a número entero el valor en BCD-4, REAL o
Constante.
ok La salida ok se activa siempre que esté activada la entrada habilitar, a no ser que el dato
esté fuera de límites o sea del tipo NaN (No un Número).
Q La salida Q contiene la forma de entero del valor original en IN.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • • • • • • •
ok • •
Q • • • • • • • •
Nota: Para datos de tipo REAL, los únicos tipos válidos son %R, %AI y %AQ.
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

GFK-0467M-SP Capítulo 11 Funciones de conversión 11-3


11

Ejemplo 1 – BCD4 a entero


En el siguiente ejemplo, siempre que la entrada %I0002 está activada, el valor BCD-4 en PIEZAS
se convierte a un entero con signo y se coloca en %R0001. En la siguiente función ADD, %R0001
es sumado a un valor entero con signo representado por la referencia EJECUTANDO. La suma
calculada por la función ADD se entrega a la referencia TOTAL.

| _____ _____
|%I0002 | | | |
|——| |———|BCD4_|————————————————| ADD_|—
| | | | |
| | TO_ | | INT |
| | | | |
| | INT | | |
| PIEZAS -|IN Q|- %R0001 %R0001 |I1 Q|- TOTAL
| |_____| | |
| EJECUTANDO-|I2 |
| | |
—————

Ejemplo 2 – Real a entero


Este ejemplo muestra la conversión de un número real en %R0101 a un número entero en %R0200.
Cuando el contacto de la entrada habilitar %M0100 está activado, se realiza la conversión.
Observe que durante la conversión, el número real se redondea al entero más próximo. Si la parte
decimal de un número real es 0.5 o mayor, el entero resultante se redondea al valor de 1. Si la parte
decimal de un número real es menor de 0.5, esta parte decimal se rechaza y el número entero no se
redondea. En el ejemplo inferior, el valor real 378.9462 se redondea al valor entero 379.
Si no se desea el redondeo, utilice la función REAL_TRUN_INT, que trunca la parte decimal de un
número real, independientemente de su valor, durante la conversión.

%M0100 %M0101
REAL_
A_
INT
%R0101 %R0200
+378.9462
IN Q +00379

11-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11

—>DINT (REAL)
La función convertir a entero con signo de doble precisión se utiliza para obtener el entero con
signo de doble precisión equivalente al dato real. El dato original no es modificado por esta
función.

Nota
El tipo de datos REAL sólo está disponible en las CPUs de las series 35x y 36x,
versión 9 o posterior, y en todas las versiones de la CPU352 y CPU37x.

Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Esta función transfiere siempre el flujo de energía cuando se
recibe energía a no ser que el valor real esté fuera de los límites.
_____
| |
(habilitar) —| REAL|— (ok)
| |
| TO_ |
| |
| DINT|
valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene una referencia para el valor que debe convertirse a entero de doble precisión.
ok La salida ok se activa siempre que habilitar esté activado, a no ser que el valor real esté
fuera de límites.
Q Q contiene la forma de entero con signo de doble precisión del valor original en IN.

Nota
Es posible que se produzca una pérdida de precisión al convertir de REAL a
DINT ya que el REAL tiene 24 bits significativos.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN o o o o o • • • •
ok • •
Q • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

GFK-0467M-SP Capítulo 11 Funciones de conversión 11-5


11

Ejemplo
En el siguiente ejemplo, siempre que la entrada habilitar %M0100 esté activa, el valor real en la
posición de entrada %R0101 se convierte a un entero con signo de doble precisión y el resultado se
coloca en la posición %R0200. Observe que durante la conversión, el número real se redondea al
entero más próximo. Si la parte decimal de un número real es 0.5 o mayor, el entero resultante se
redondea al valor de 1. Si la parte decimal de un número real es menor de 0.5, esta parte decimal
se rechaza y el número entero no se redondea. En el ejemplo inferior, el valor real 7890.542 se
redondea al valor entero doble 7891.
Si no se desea el redondeo, utilice la función REAL_TRUN_DINT, que trunca la parte decimal de
un número real, independientemente de su valor, durante la conversión.

%M0100 %M0101
REAL_
A_
DINT
%R0101 %R0200
+7890.542
IN Q +0000007891

11-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11

—>REAL (INT, DINT, BCD-4, WORD)


La función convertir a real se utiliza para obtener el valor real del dato de entrada. El dato original
no es modificado por esta función.
Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Esta función transfiere el flujo de energía cuando recibe energía,
a no ser que la conversión especificada de como resultado un valor que esté fuera de límites.
Es posible que se produzca una pérdida de precisión al convertir de DINT a REAL ya que el
número de bits significativos se reduce a 24.

Nota
Esta función sólo está disponible en las CPUs de las series 35x y 36x, versión 9 o
posterior, y en todas las versiones de la CPU352 y CPU37x.
_____
| |
(habilitar) —| INT_|— (ok)
| |
| TO_ |
| |
| REAL|
(valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene la referencia para un valor entero que debe convertirse a real.
ok La salida ok se activa cuando la función se ejecuta sin error.
Q Contiene la forma REAL del valor original en IN.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN o o o o o • • • •
ok • •
Q • • •
• Referencia válida o lugar donde la energía puede fluir a través de la función.
o No válida para DINT_TO_REAL.

GFK-0467M-SP Capítulo 11 Funciones de conversión 11-7


11

Ejemplo 1 - Conversión de entero a real


En el siguiente ejemplo, el valor entero de la entrada IN es +07891. El valor resultante colocado en
%R0200 después de la conversión a formato real es +7891.000.

%M0100 %M0101
INT_
A_
REAL
%R0101 %R0200
IN Q
+07891 +7891.000

Ejemplo 2 – Conversión de entero doble a real


En el siguiente ejemplo, el valor entero doble de la entrada IN es +1234567891. El valor resultante
colocado en %R0200 después de la conversión a formato real es +1234568000. Observe que un
número entero doble tiene diez dígitos significativos, pero un número real sólo tiene 7 dígitos
significativos; por tanto, un número entero se redondea a 7 dígitos significativos durante la
conversión a número real. En el ejemplo mostrado, los cuatro dígitos menos significativos, 7891,
del número entero doble se redondean a 8000 en los cuatro dígitos menos significativos del número
real.

%M0100 %M0101
DINT_
A_
REAL
%R0101 %R0200
IN Q
+1234567891 +1234568000.

11-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11

—>WORD (REAL)
La función convertir a palabra (WORD) se utiliza para obtener el equivalente en palabra del dato
real. El dato original no es modificado por esta función.

Nota
Esta función sólo está disponible en las CPUs de las series 35x, 36x y 37x.

Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. La función transfiere el flujo de energía cuando recibe energía a
no ser que la conversión especificada diese como resultado un valor fuera de los límites 0 hasta
FFFFh.
_____
| |
(habilitar) —| REAL|— (ok)
| |
| TO_ |
| |
| WORD|
(valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN IN contiene la referencia para el valor que debe convertirse a WORD.
ok La salida ok se activa cuando la función se ejecuta sin error.
Q La salida Q contiene la forma de entero sin signo del valor original en IN.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • •
ok • •
Q • • • • • • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

GFK-0467M-SP Capítulo 11 Funciones de conversión 11-9


11

Ejemplo – Conversión de real a palabra


En este ejemplo, dado que la función RANGE no está disponible como tipo REAL, el valor real en
%R0001 se convierte primeramente a valor palabra (en %R0003), que es entonces utilizado como
la entrada de la siguiente función RANGE WORD.
La tabla a continuación muestra los valores en las diferentes entradas y salidas para la siguiente
figura.

Elemento Valor o estado


%R0001 15767.83
%R0003 3A89h (15,768 decimal)
HI LIM 4E20h (20,000 decimal)
LOW LIM 2710h (10,000 decimal)
Q1 ON

| _____ _____
|%I0002 | | | |
|——| |———|REAL_|————————————————|RANGE|—
| | | | |
| | TO_ | | WORD|
| | | | |
| | WORD| | | %Q0001
| %R0001—|IN Q|-%R0003 HI_LIM-|L1 Q|———( )————
| |_____| | |
| | |
| LOW_LIM-|L2 |
| | |
| | |
| %R0003-|IN |
| —————

11-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
11

TRUN (INT, DINT)


La función truncar se utiliza para eliminar la parte decimal del número real. Durante la conversión,
todos los números a la derecha de la posición decimal son rechazados en el número de salida. El
dato original no es modificado por esta función.

Nota
Las CPUs de las series 35x y 36x (versión 9.00 o posterior y todas las versiones
de la CPU352) y 37x son las únicas CPUs de las Series 90-30 con capacidad de
coma flotante; por tanto, la función TRUN no es aplicable en otras CPUs 90-30.

Cuando la función recibe flujo de energía, ejecuta la conversión, haciendo que el resultado esté
disponible a través de la salida Q. Para la CPU 352, la función transfiere el flujo de energía cuando
se recibe energía, a no ser que la conversión especificada diera como resultado un valor fuera de los
límites o IN fuera NaN (No un Número). Para todas las demás CPUs de las series 35x y 36x/37x, la
función no pasa energía.
_____
| |
(habilitar) —|REAL_|— (ok)
| |
|TRUN_|
| |
| INT |
(valor a convertir) —|IN Q|— (parámetro de salida Q)
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando la función está habilitada, se ejecuta la conversión.
IN In contiene una referencia para el valor real que se desea truncar.
ok La salida ok se activa cuando la función se ejecuta sin error, a no ser que el valor esté fuera
de límites o IN sea NaN (No un Número).
Q Q contiene el valor INT o DINT truncado del valor original en IN.
Nota
Es posible que se produzca una pérdida de precisión al convertir de REAL a
DINT ya que el REAL tiene 24 bits significativos.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
IN • • • •
ok • •
Q o o o o o • • •
• Referencia válida o lugar donde la energía puede fluir a través de la función.
o Válida sólo para REAL_TRUN_INT.

GFK-0467M-SP Capítulo 11 Funciones de conversión 11-11


11

Ejemplo 1 – Truncar real a entero con bobina de salida para CPU352


En el siguiente ejemplo, el valor en %R0101 es truncado (la parte decimal se rechaza) y el valor
entero resultante +05432 se coloca en %R0200. Si se hubiera usado una CPU352, %M0101 se
habría activado indicando una conversión correcta. Si se usa cualquier otra CPU 35x, 36x o 37x,
no se produce flujo de energía en la salida ok, de modo que no se programará ninguna bobina de
salida.

%M0100 %M0101
REAL_
TRUN_
INT
%R0101 %R0200
IN Q
+5432.765 +05432

Ejemplo 2 – Truncar real a entero doble con bobina de salida para CPU352
En el siguiente ejemplo, el valor en %R0101 es truncado (la parte decimal se rechaza) y el valor
entero doble resultante +0000005432 se coloca en %R0200. . Si se hubiera usado una CPU352,
%M0101 se habría activado indicando una conversión correcta. Si se usa cualquier otra CPU 35x,
36x o 37x, no se produce flujo de energía en la salida OK, de modo que no se programará ninguna
bobina de salida.

%M0100 %M0101
REAL_
TRUN_
DINT
%R0101 %R0200
IN Q
+5432.765 +0000005432

11-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Capítulo Funciones de control
12

Este capítulo describe las funciones de control que pueden utilizarse para limitar la ejecución del
programa y para modificar la manera en que la CPU ejecuta el programa de aplicación. Consulte el
Capítulo 2, sección 1, “Resumen del barrido del PLC”, para más información sobre el barrido de la
CPU.
Función Descripción Página
CALL Hace que la ejecución del programa vaya a un bloque de subrutina especificado. 12-2
DOIO Durante un barrido, escanea inmediatamente un rango especificado de entradas y salidas. (Todas las 12-3
entradas o salidas en un módulo se escanean si cualquier posición de referencia en ese módulo está
incluida en la función DO I/O. No se realizan actualizaciones parciales del módulo de E/S.)
Opcionalmente, puede colocarse una copia de la E/S explorada en la memoria interna, en lugar de los
puntos de entrada reales.
SER El registro de sucesos secuenciales, recoge una serie de muestras. Un bloque de control de función 12-10
contiene la configuración suministrada por el usuario de la ejecución del bloque de función,
configuración de la muestra y parámetros de operación.
END Proporciona un fin temporal de la lógica. El programa ejecuta desde el primer escalón hasta el último 12-26
escalón o la instrucción END, lo que se encuentre primero. Esta instrucción es útil para fines de
depuración de errores, pero no está permitida en la programación SFC (véase la Nota de la página 12-
10).
MCR Programa un relé de control maestro. Un MCR hace que todos los escalones entre el MCR y su 12-27
y ENDMCR subsiguiente se ejecuten sin flujo de energía. El software Logicmaster 90-30/20/Micro
MCRN soporta dos formas de la función MCR, una forma anidada (MCRN) y una forma no anidada (MCR).
ENDMCR Indica que la lógica siguiente se va a ejecutar con flujo normal de energía. El software Logicmaster 90- 12-33
y 30/20/Micro soporta dos formas de la función ENDMCR, una forma anidada (ENDMCRN) y una
ENDMCRN forma no anidada (ENDMCR).
JUMP Hace que la ejecución del programa salte a una posición determinada (indicada por una LABEL, véase 12-34
y más abajo) de la lógica. El software Logicmaster 90-30/20/Micro soporta dos formas de la función
JUMPN JUMP, una forma no anidada (JUMP) y una forma anidada (JUMPN).
LABEL Especifica la ubicación destino de una instrucción JUMP (salto). El software Logicmaster 90- 12-36
y 30/20/Micro soporta dos formas de la función LABEL, una forma no anidada (LABEL) y una forma
LABELN anidada (LABELN).
COMMENT Coloca un comentario (explicación de escalón) en el programa. Tras la programación de la instrucción, 12-37
se puede introducir el texto ampliando mediante “zoom” la instrucción (use la tecla F10 para el zoom).
SVCREQ Solicita un servicio especial del PLC. (Véase la lista de peticiones de servicio en la página 12-39.) 12-39
PID Proporciona dos algoritmos de control del lazo cerrado PID (proporcional/integral/derivada): 12-74
• Algoritmo PID ISA estándar (PIDISA).
• Algoritmo de término independiente (PIDIND).

GFK-0467M-SP 12-1
12

CALL (LLAMADA)
La función llamada hace que la ejecución del programa pase al bloque de subrutina especificado.

————————————————
| |
-| CALL ??????? |-
| |
| (SUBRUTINA) |
| |
————————————————

Cuando la función llamada recibe flujo de energía, hace que la exploración pase inmediatamente al
bloque de subrutina especificado y lo ejecute. Después de terminar el bloque de subrutina
especificado, el control vuelve al escalón de la lógica inmediatamente siguiente a la instrucción de
llamada.

Ejemplo
En el siguiente ejemplo, la instrucción CALL está programada para llamar a la subrutina
denominada ROTAR cuando el contacto %I0006 está activado. (Observe que antes de poder
introducir el nombre de una subrutina en la instrucción CALL, el nombre de la subrutina debe
existir ya en la tabla de declaraciones de bloques.) Situando el cursor dentro de la instrucción
CALL, puede pulsar F10 para ampliar la subrutina y ver la lógica de la misma. Una vez que se ha
llamado a la subrutina, la ejecución del programa se desviará a la subrutina, que se ejecutará hasta
terminar, a continuación la ejecución del programa pasará al escalón que sigue al que realizó la
llamada. En el ejemplo inferior, la subrutina se llama del segundo escalón, de modo que cuando
finaliza la ejecución de la subrutina, la exploración del programa se reanudará en el tercer escalón.

|
|%I0004 %T0001
|——| |—————————————————————————————————————————————————————————————————————( )—
|
| ————————————————
| | |
|%I0006 | CALL ROTAR |-
|——| |———————| (SUBRUTINA) |
| | |
| | |
| ————————————————
|
|%I0003 %I0010 %Q0010
|——| |——+——| |—————————————————————————————————————————————————————————————( )—
| |
|%I0001 |
|——| |——+
|

Nota
Los PLCs Micro no aceptan subrutinas; por tanto, la función CALL no es
apropiada para usarla con un PLC Micro.

12-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

DOIO (EJECUTAR E/S)


La función DO I/O (DOIO) se utiliza para actualizar determinadas entradas y salidas durante una
exploración mientras se está ejecutando el programa. La función DOIO puede emplearse también
para actualizar E/S seleccionadas durante el programa además de la exploración normal de E/S. En
circunstancias normales, las tablas de entrada se actualizan durante la parte de exploración de
entradas del barrido del PLC y no se vuelven a actualizar hasta el siguiente barrido. Las tablas de
salida se actualizan durante la parte de solución de la lógica del barrido del PLC, pero los módulos
de salida no se actualizan hasta que la parte de solución de la lógica no ha finalizado. Con la
función DO I/O, se pueden forzar las actualizaciones de las tablas de entrada y de los módulos de
salida durante la parte de solución de la lógica de la exploración. Esta capacidad permite leer los
cambios de entradas y escribir las salidas más rápidamente de lo que es posible con una
exploración normal del PLC. Consulte el Capítulo 2 para más información sobre el barrido del
PLC.
Si las referencias de entrada están especificadas, la función permite obtener los valores más
recientes de las entradas (escritos en las tablas de entradas) para el programa lógico. Si las
referencias de salida están especificadas, DO I/O actualiza los módulos de salida basándose en los
valores más actuales almacenados en la memoria de E/S. Se realiza el servicio de todas las E/S en
incrementos de todos los módulos de E/S; el PLC ajusta las referencias, si es necesario, mientras se
ejecuta la función.

Uso con módulos de entrada


La función DOIO tiene cuatro parámetros de entrada y un parámetro de salida. Cuando la función
recibe flujo de energía y las referencias de entrada están especificadas, se exploran los puntos de
entrada en la referencia que comienza en (ST) y termina en END. Si se especifica una referencia
para ALT, se colocan en la memoria una copia de los nuevos valores de entrada a partir de dicha
referencia, y no se actualiza la tabla de entradas correspondiente. ALT debe tener idéntico tamaño
que el tipo de referencia explorado. Si se utiliza una referencia digital para ST y END, ALT
también debe ser digital. Si no se especifica ninguna referencia para ALT, se actualiza la tabla de
entradas correspondiente.

Uso con módulos de salida


Cuando la función DOIO recibe flujo de energía y las referencias de salida están especificadas, los
puntos de salida de la referencia inicial (ST) y que finalizan en END son escritos en los módulos de
salida. Si las salidas deben escribirse en los módulos de salida desde una memoria interna distinta
de %Q o %AQ, puede especificarse la referencia inicial para ALT. El rango de las salidas escritas
en los módulos de salida está especificado por la referencia inicial (ST) y la referencia final (END).
La ejecución de la función continúa hasta que se han comunicado todas las entradas dentro del
rango seleccionado o hasta que se ha realizado el servicio de todas las salidas en los módulos de
E/S. La ejecución del programa vuelve entonces a la siguiente función después de DO I/O.

Uso con módulos opcionales


Si el intervalo de referencias incluye un módulo opcional (HSC, APM, etc.), todos los datos de
entrada (%I y %AI) o todos los datos de salida (%Q y %AQ) de ese módulo serán explorados. El
parámetro ALT es ignorado mientras se exploran módulos opcionales. Además, si se desea utilizar
la función DOIO con un módulo GCM ampliado (IC693CMM302), se debe cumplir el requisito
mencionado en la siguiente nota.

GFK-0467M-SP Capítulo 12 Funciones de control 12-3


12

Nota
La función DOIO sólo puede ser utilizada con un módulo GCM avanzado
(IC693CMM302) en sistemas con CPUs de versión 9.0 o posterior.

La función pasa el flujo de energía hacia la derecha siempre que se recibe energía, a no ser que:
• No todas las referencias del tipo especificado se encuentren dentro de los límites
seleccionados.
• La CPU no pueda manejar correctamente la lista temporal de E/S creadas por la función.
• El intervalo especificado incluya módulos de E/S asociados a un fallo “Pérdida de E/S".

_____
| |
(habilitar) —|DO_IO|— (ok)
| |
| |
| |
(dirección inicial) —|ST |
| |
| |
(dirección final) -|END |
| |
| |
—|ALT |
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando la entrada habilitar está activada, se ejecuta una exploración limitada de entradas
o salidas.
ST ST es la dirección inicial de un grupo de puntos de entrada o salida o palabras a los que
se va a efectuar el servicio.
END END es la dirección final del grupo de puntos de entrada o salida o palabras a los que se
va a efectuar el servicio.
ALT Para la exploración de entradas, ALT especifica la dirección para almacenar los valores
de puntos de entradas exploradas/palabras. Para la exploración de salidas, ALT
especifica las direcciones de que se han de obtener los valores de puntos de
salida/palabras. Para las CPUs Modelo 331 y posteriores, el parámetro ALT puede tener
un efecto sobre la velocidad de la ejecución del bloque de función DOIO (véase la Nota
inferior y la sección sobre la función DO I/O avanzada para las CPUs 331 y posteriores
más adelante en este capítulo). Si la función ALT no se utiliza, esta entrada deberá
dejarse en blanco; si se programa un valor constante de 0 para ALT, la CPU puede
experimentar errores de tiempo límite de watchdog.
ok La salida ok se activa cuando la exploración de entrada o salidas concluye normalmente.

Nota
Una función DOIO avanzada está disponible para las CPUs Modelo 331 y posteriores. En la
función DOIO avanzada, el parámetro ALT puede usarse para introducir el número de slot de un
módulo de entrada o salida digital único en el rack principal. Esta función DOIO avanzada se
ejecutará en 80 microsegundos, en lugar de los 236 microsegundos requeridos cuando la DOIO es
programada sin el parámetro ALT. No se realiza ninguna comprobación de error para prevenir el
solapamiento de direcciones de referencia o discordancias del tipo de módulo. Para más detalles
véase la sección “Función DO I/O avanzada” más adelante en este capítulo.

12-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
ST • • • •
END • • • •
ALT • • • • • • • • •
ok • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Ejemplo de entrada 1
En el siguiente ejemplo, cuando la entrada habilitar %M0001 se ACTIVA, las referencias %I0001
(especificada en ST) hasta %I0064 (especificada en END) se exploran y %Q0001 se activa. Una
copia de las entradas exploradas se coloca en la memoria interna desde la referencia %M0001
(especificada en ALT) hasta %M0064. Debido a que una posición alternativa estaba especificada
en ALT, la tabla de entradas %I no se actualiza mediante DO_IO. Esta forma de la función puede
utilizarse para comparar los valores actuales de los puntos de entrada con los valores de los puntos
de entrada anteriores (es decir, con sus valores al comienzo de la exploración de la solución de la
lógica).

|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%I0001 -|ST |
| | |
| | |
|%I0064 -|END |
| | |
| | |
|%M0001 —|ALT |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-5


12

Ejemplo de entrada 2
En el siguiente ejemplo, cuando la entrada habilitar %M0001 está ACTIVADA, las referencias
%I0001 (especificada en ST) hasta %I0064 (especificada en END) se exploran y %Q0001 se
activa. Debido a que no se ha especificado ninguna posición de memoria alternativa en ALT, los
valores de entrada explorados son utilizados por DO_IO para actualizar la tabla de entrada desde la
referencia %I0001 a %I0064. Esta forma de la función permite explorar y actualizar los puntos de
entrada más de una vez durante la parte de la solución de la lógica del barrido de la CPU. Observe
que cuando no se utiliza la entrada ALT, debe dejarse en blanco, como se ha indicado. No ponga
un cero en la entrada ALT ya que producirá errores del temporizador watchdog.

|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%I0001 -|ST |
| | |
| | |
|%I0064 -|END |
| | |
| | |
| —|ALT |
| |_____|
|

Ejemplo de salida 1
En el siguiente ejemplo, cuando la entrada habilitar %M0001 esta ACTIVADA, los valores de los
canales de salidas analógicas %AQ001 (especificada en ST) hasta %AQ004 (especificada en END)
se escriben en las referencias %R0001 (especificada en ALT) hasta %R0004 respectivamente, y
%Q0001 se activa. Debido a que la posición alternativa %R0001 fue especificada en ALT, los
valores en %AQ001 hasta %AQ004 no son escritos en los módulos de salidas analógicas por la
DO_IO.

|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%AQ001 -|ST |
| | |
| | |
|%AQ004 -|END |
| | |
| | |
|%R0001 —|ALT |
| |_____|
|

12-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Ejemplo de salida 2
En el siguiente ejemplo, cuando la entrada habilitar %M0001 está ACTIVADA, los valores en las
referencias %AQ001 hasta %AQ004 son escritos en los canales de salidas analógicas %AQ001
hasta %AQ004 en los correspondientes módulos de salidas analógicas, y %Q0001 se activa. La
función DO_IO actualiza los módulos de salidas analógicas ya que en ALT no se ha especificado
ninguna posición de memoria alternativa. Observe que cuando no se utiliza la entrada ALT, debe
dejarse en blanco, como se ha indicado. No ponga un cero en la entrada ALT ya que producirá
errores del temporizador watchdog.

|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|—————————————————————————————————————————————————————————( )-
| | |
| | |
|%AQ001 -|ST |
| | |
| | |
|%AQ004 -|END |
| | |
| | |
| —|ALT |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-7


12

Función DO I/O avanzada para las CPUs 331 y posteriores


Precaución
Los programas que contienen la función DO I/O avanzada no deben ser
cargados por una versión del software Logicmaster 90-30/20 anterior a la
4.01.

La versión avanzada de la función DO I/O (DOIO) está disponible para la versión 4.20 o
posteriores de las CPUs Modelo 331 y posteriores. Esta versión avanzada de la función DOIO sólo
puede utilizarse en un módulo de entrada digital simple o en un módulo de salida digital de 8
puntos, 16 puntos o 32 puntos.
El parámetro ALT identifica el slot en el rack principal del módulo objeto. Por ejemplo, un valor
constante de 2 en ALT indica que el módulo en el slot 2 es el módulo objeto. Los parámetros ST y
END definen el rango de la memoria sobre el que actúa la función.

Nota
La única comprobación asociada al bloque de la función DOIO avanzada es una
comprobación básica del estado del módulo objeto.

La función DOIO avanzada sólo se aplica a los módulos situados en un rack de CPU modular. Por
tanto, el parámetro ALT debe estar entre 2 y 5 para un rack de 5 slots o entre 2 y 10 para un rack de
10 slots.
Las referencias iniciales (ST) y finales (AND) deben ser bien %I, o %Q. Estas referencias
especifican la primera y última referencia para las que se ha configurado el módulo. Por ejemplo, si
un módulo de entrada de 16 puntos se configura en %I0001 hasta %I0016 en el slot 7 de un rack
principal (CPU) de 10 slots, el parámetro ST debe ser %I0001, el parámetro END debe ser %I0016
y el parámetro ALT debe ser 10, como se muestra a continuación:

|
| _____
|%M0001 | | %Q0001
|——| |———|DO_IO|———————————————————————————————————————————————————————————( )-
| | |
| | |
|%I0001 -|ST |
| | |
| | |
|%I0016 -|END |
| | |
| | |
| 7 —|ALT |
| |_____|
|

12-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

La siguiente tabla compara los tiempos de ejecución de un bloque de función DOIO normal para un
módulo de entrada/salida digital de 8 puntos, 16 puntos o 32 puntos con aquellos del bloque de
función DOIO avanzada.

Módulo DOIO normal DOIO avanzada


Tiempo de ejecución Tiempo de ejecución
Módulo de entrada digital 8-Pt 224 microsegundos 67 microsegundos
Módulo de salida digital 8-Pt 208 microsegundos 48 microsegundos
Módulo de entrada digital 16-Pt 224 microsegundos 68 microsegundos
Módulo de salida digital 16-Pt 211 microsegundos 47 microsegundos
Módulo de entrada digital 32-Pt 247 microsegundos 91 microsegundos
Módulo de salida digital 32-Pt 226 microsegundos 50 microsegundos

GFK-0467M-SP Capítulo 12 Funciones de control 12-9


12

SER (REGISTRO DE SUCESOS SECUENCIALES)


Requiere CPUs 35x o 36x con Firmware 9.00 o posterior o CPU37x
• El bloque de función SER (registro de sucesos secuenciales) recoge una serie de muestras
digitales (sólo opera con datos digitales). Un bloque de función SER recoge hasta 32 bits
contiguos o no contiguos por muestra cuando la entrada habilitar recibe flujo de energía.
• Cada SER puede capturar hasta 1024 muestras, con hasta 32 bits por muestra.
• Si el bloque de función SER está incluido en una subrutina periódica, la velocidad de muestreo
es función de la velocidad de ejecución de la subrutina periódica.
• Sólo la muestra activadora lleva la marca de la hora. La muestra activadora puede llevar la
marca de la hora en el formato BCD (resolución máxima de 1 seg.) o POSIX (resolución
máxima de 10ms). La marca de la hora sólo se coloca una vez en el punto de activación. El
SER no soporta más de una marca de la hora por registro.
• El SER puede configurarse para los modos preactivación, media activación o posactivación.
(Véase la página 12-17.)
• La operación SER se configura mediante un bloque de control de función que se puede crear
utilizando una serie de comandos de mover bloque (BLKMV). (Véase la página 12-12.)
• Un módulo de entrada se puede especificar opcionalmente de modo que sea explorado cada
vez que se ejecute SER. Esto contribuye a asegurar que los datos capturados del módulo
especificado son los más recientes posibles.
Nota
No se soporta la sincronización de PLC-a-PLC.

El bloque de función SER tiene una salida y tres entradas: habilitar, reset (R) y activador (T).
| _____
|%T0003 | | %M0003
|——| |———| SER_|——————————————————————————————————————————————————————————( )—
| | |
| | |
|%T0001 | |
|——| |———|R |
| | |
|%T0002 | |
|——| |———|T |
| |_____|
|
| %R0100

12-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Como se muestra a continuación, los canales 8, 16, 24 ó 32 pueden configurarse, de modo que cada
canal represente un punto digital. Además, se pueden especificar hasta 1024 muestras.

Canales (hasta 32 bits)

32 1

1 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx


2
3
.
.
.
1024 xxxxxxxx xxxxxxxx xxxxxxxx xxxxxxxx

Parámetros
Parámetro Descripción
habilitar Siempre que la función esté habilitada y la entrada reset desactivada, el bloque de
función SER recoge una muestra de todos los canales configurados.
R Cuando la entrada reset recibe flujo de energía, la función SER se reinicializa
independientemente del estado de la entrada habilitar. El búfer de muestras, offset de
muestra de activación, hora de activación y offset de muestra actual se ponen a cero. El
bloque de función permanece en el estado reset hasta que se retira el flujo de energía de
la entrada reset. La salida OK se desactiva mientras el estado reset está activo. Cuando
se retira el flujo de energía de la entrada reset, se reanuda el muestreo.
T Si se selecciona el modo de entrada activador y el bloque de función está habilitado,
cuando la entrada activador se activa, la SER pasa al estado activador. La hora de
activación, el offset de muestra activadora y la muestra de datos son registrados.
La muestra activadora se registrará independientemente del número de muestras
tomadas. Una vez activado, el registro de sucesos continúa el muestreo hasta satisfacer el
número de muestras tras la activación, momento en el que deja de recoger muestras hasta
que el flujo de energía llega a la entrada reset.
Si el modo activador se pone en búfer completo, la señal activadora será ignorada.
Para más información sobre la configuración del modo activador, véase “Bloque de
control de función” en la página 12-12.
Referencia La tabla de bloque de control de función de 78 palabras comienza en esta referencia. El
inicial bloque de control de función define la ejecución del bloque de función, la configuración
de muestras y los parámetros de operación. Para más detalles, véase “Bloque de control
de función” en la página 12-12
ok La salida ok está activada cuando se satisfacen las condiciones de activación
(especificadas por el parámetro de modo activación), y todo el muestreo está completo.
La salida continúa recibiendo flujo de energía independientemente del estado de la salida
habilitar hasta que reset recibe flujo de energía.

GFK-0467M-SP Capítulo 12 Funciones de control 12-11


12

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
Bloque de •
control
R •
T •
ok • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

Bloque de control de función


El bloque de control de función es una tabla de 78 palabras que define la información sobre la
captura de datos y el mecanismo activador para la función SER. En un programa determinado, sólo
un bloque de función registro de sucesos secuenciales puede asociarse a cada bloque de comandos
de función y bloque de datos.
Efectúe los siguientes pasos para configurar los parámetros del bloque de función SER:
1. Establezca los valores almacenados para la tabla como se define en la tabla inferior. Puede
utilizar movimientos de bloques para inicializar los registros y almacenar la tabla antes de
activar la función SER.
2. Agregue el bloque de función SER a su lógica de contactos.
Nota
Si necesita x canales, donde x es distinto de 8, 16, 24, pero menor de 32, deberá
seleccionar un número de canales que sea mayor que x y múltiplo de 8, e
introducirlo en una descripción de canal nulo para los canales no utilizados. Una
descripción de canal nulo tiene un selector de segmentos de 0xFFh, un parámetro
de longitud igual al número de canales no utilizados y un offset 0.

Palabra Parámetro Descripción


0 Estado Variable de sólo lectura que indica el estado actual del bloque de función SER. Información
Referencia adicional se encuentra en Datos Adicionales de Estado, (Palabra 1). Nota: Si se detecta un
inicial error en el bloque de control, el estado se pondrá a 6, la salida OK se borrará y no se
producirá ninguna acción. Los ajustes para el estado incluyen:
0 = Reset
1 = Inactivo
2 = Activo
3 = Activado
4 = Completo
5 = Error de desbordamiento
6 = Error de parámetro
1 Datos Una variable de sólo lectura que proporciona información adicional sobre el estado de la
Adicionales de función SER. Véase “Estados de datos adicionales de estado” en la página 12-15 para los
Estado ajustes de este parámetro.

12-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Palabra Parámetro Descripción


2 Modo activador Define las condiciones para el bloque de función SER para pasar al estado de activación.
Ajustes válidos son:
0 = Modo entrada activador
1 = Modo búfer completo
En el modo entrada activador, si el bloque de función está habilitado, se genera una marca
de la hora cuando se activa la señal de activador. El muestreo continúa hasta que se alcanza
el valor definido para el número de muestras tras la activación. Cuando esto ocurre, la salida
OK se activa.
En el modo búfer completo, la señal de activador se ignora. Cuando el bloque de función
está habilitado, el muestreo continúa hasta que el búfer de muestras está lleno. Cuando esto
ocurre, la salida OK se activa. El parámetro número de muestras define el tamaño del búfer.
3 Formato de la Determina el modo de indicación del tiempo de activador. Para una indicación BCD, ponga
hora de este parámetro a 0. Para una indicación POSIX, ponga este parámetro a 1. Para más detalles
activación véase la página 12-20
4—7 Reservado Las palabras 4 hasta 7 están reservadas y deben ponerse a cero.
8 Número de Especifica el número de bits de datos que serán muestreados y copiados en el búfer de
canales (bits por muestras en cada ejecución del bloque de función. Opciones válidas son 8, 16, 24 ó 32 bits.
muestra) Los canales no utilizados deben configurarse con una descripción de canal nulo. (Véase
Palabras 14—77.) Por ejemplo, si se necesitan 19 bits, debe configura 24 y especificar que
los últimos cinco son nulos.
9 Número de Especifica el tamaño del búfer de muestras. Opciones válidas son 1 hasta 1024 muestras. (El
muestras tamaño actual del búfer en bits es el número de muestras por el número de canales.)
10 Número de Especifica el número de muestras recogidas a partir de que la condición de activación sea
muestras tras la verdadera. Este parámetro puede definirse como un valor entre 0 y el número de muestras.
activación Este parámetro es válido sólo cuando el modo activador se ha puesto a cero (entrada
activador).
11 Slot de módulo Especifica la posición en el rack principal (Rack 0) de un módulo de entrada que será
de entrada explorado cada vez que se ejecute SER. Si el valor es 0, no se explorará ningún módulo.
Cuando se explora un módulo de entrada, sus valores se almacenan localmente y los valores
de las direcciones de referencia configuradas por el módulo no resultan afectadas. Para
almacenar los valores del módulo de entrada explorado en el búfer de muestras de bloques
de datos, se debe disponer de una descripción de canal. Si el módulo no está presente o está
defectuoso en el momento de la exploración, los datos devueltos serán cero. Si esto sucede
el fallo no se registrará en la tabla de fallos; la indicación del fallo se dejará al explorador
E/S.
12 Selector de Especifica el tipo de datos asignado para el bloque de datos. Por ejemplo, si desea usar el
segmento de tipo de memoria %R, deberá introducir 08 para este parámetro. Los ajustes válidos para este
bloque de datos parámetro incluyen: %R (08h), %AI (0Ah), %AQ (0Ch). Para más detalles sobre el bloque
(Tipo de de datos, véase la página 12-16.
memoria)
13 Offset de bloque Especifica la referencia inicial para el bloque de datos. Este parámetro tiene base cero. Por
de datos ejemplo, si desea comenzar en %R0100, deberá introducir 99 para este parámetro.
Asegúrese de disponer de suficiente memoria para todo el bloque de datos.

GFK-0467M-SP Capítulo 12 Funciones de control 12-13


12

Palabra Parámetro Descripción


14—77 Descripciones de Especifica la posición de referencia (selector de segmento, longitud y offset) asociada a un
canal canal determinado. Puede haber de 1 hasta 32 descripciones de canal, dependiendo del
número de canales que están siendo muestreados y de la longitud de datos. Los datos se
devuelven según el orden definido en esta sección.
Selector de Introducido como valor hexadecimal, esta palabra define el selector de segmento y la
segmento/ longitud de datos (en bits). MSB = Selector de segmento. LSB = Longitud de datos. La
longitud de canal longitud de datos es útil para muestras que son contiguas.
El selector de segmento se puede definir en cualquier tipo de datos digital: %I (46h), %Q
(48h), %M (4Ch), %T (4Ah), %G (56h), %S (54h), %SA (4Eh), %SB (50h), %SC (52h),
selector nulo (FFh) y selector de módulo de entrada (00h).
El parámetro de longitud tiene un rango de 1—32, pero la suma de todas las longitudes no
debe ser mayor que el parámetro del número de canales. Una longitud mayor de 1 permite
configurar múltiples canales contiguos con una única descripción de canal.
Offset de canal Introducido como valor hexadecimal, esta palabra define el offset BIT para el tipo de datos
o módulo de entrada especificado en el selector de segmento. Este offset tiene base cero. El
rango para este parámetro varía, dependiendo del selector de segmento (tipo de datos y
longitud). El offset indica la posición dentro de la tabla de datos o módulo de entrada en el
que se va a realizar el muestreo.

12-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Estados de los datos adicionales de estado


Los datos adicionales de estado (palabra 1 en el bloque de control de función) proporcionan
información adicional del estado para la función SER.
Valor Estado Descripción
0 Estado reset La entrada reset recibe flujo de energía. El búfer de muestras, offset de muestra de
activación, hora de activación y offset de muestra actual se ponen a cero. La salida se
mantiene sin flujo de energía. La transición al Estado inactivo se produce cuando se retira el
flujo de energía de reset. Los datos adicionales de estado no son significativos y se pondrán a
cero.
1 Inactivo Estado entre el estado reset y el estado activo. En este estado no se realiza ninguna acción. La
salida SER se mantiene sin flujo de energía. La transición al estado activo se produce cuando
el bloque de función recibe flujo de energía de habilitar.
2 Activo La entrada habilitar ha recibido flujo de energía, pero el bloque de función no está en reset,
en error o activado. Se registra una muestra por cada ejecución cuando el bloque de función
está habilitado. La salida se mantiene sin flujo de energía. La condición de activador
(especificada en el parámetro de modo activador) es supervisada y provocará la transición al
estado activado si las condiciones son verdaderas. Si se han tomado más del “Número de
muestras”, los datos adicionales de estado se pondrán a 0x01, de lo contrario serán 0x00.
3 Activado Estado si la condición de activación definida en el modo activador es verdadera. Se toman
muestras adicionales dependiendo del modo activador y de los ajustes de los parámetros. La
salida se mantiene sin flujo de energía. La transición al estado completo se producirá cuando
todo el muestreo se haya concluido. Si se han tomado más del “Número de muestras”, los
datos adicionales de estado se pondrán a 0x01, de lo contrario serán 0x00.
4 Completo Se ha concluido el muestreo. La salida recibe flujo de energía. Sólo está permitida la
transición al estado reset. Si se han tomado más del “Número de muestras”, los datos
adicionales de estado se pondrán a 0x01, de lo contrario serán 0x00.
5 Error de El bloque de control/datos ha excedido el límite de su tipo de memoria. La salida se mantiene
desbordamiento sin flujo de energía. Sólo está permitida la transición al estado reset. Los datos adicionales de
estado no son significativos y se pondrán a cero.
6 Error de Existe un error en el bloque de control de función u otros parámetros de operación. La salida
parámetro se mantiene sin flujo de energía. Sólo está permitida la transición al estado reset. La palabra
de datos adicionales de estado contiene el offset en el bloque de control en el que se ha
producido el error de parámetro.
7 Error de estado El parámetro de estado no es válido. La salida se mantiene sin flujo de energía. Sólo está
permitida la transición al estado reset. El valor de estado no válido se almacenará en la
posición de los datos adicionales de estado en el bloque de control.

GFK-0467M-SP Capítulo 12 Funciones de control 12-15


12

Formato de bloque de datos SER


El bloque de datos SER contiene el búfer de muestras, offsets de muestras e información de
activación. Esta información es proporcionada por la CPU y sólo se deberá leer de este área de
datos. Será de su responsabilidad asignar suficiente espacio en el registro para el bloque de datos.
El formato del bloque de datos es el siguiente:
Palabra* Descripción del parámetro
0 Número de offset de la muestra actual. Da una referencia de la posición donde se ha
colocado la muestra más reciente. Este parámetro tiene base cero. El rango válido es –1
hasta 1023.
Posición de la muestra en el registro = (Núm. Bytes por muestra) * (Parámetro offset)/2 +
(Registro inicial del búfer de muestras).
Nota: Este valor no es válido hasta que no se haya tomado la muestra. Este valor se pone a
–1 cuando la función SER se reinicializa a través de la entrada reset.
1 Número de offset de la muestra de activación. Da una referencia de la posición de
almacenamiento de la muestra obtenida cuando la condición de activación pasa al estado de
verdadero. Este parámetro tiene base cero. El rango válido es –0 hasta 1023.
Posición de la muestra en el registro = (Núm. Bytes por muestra) * (Parámetro offset)/2 +
(Registro inicial del búfer de muestras).
Nota: Este valor no es válido hasta que no se cumpla la condición de activación. Este valor
se pone a –0 cuando la función SER se reinicializa a través de la entrada reset.
2 hasta 5 Hora de activación: Indica la hora, según el reloj calendario dentro del PLC, en que la
condición de activación pasa a estado verdadero dentro del bloque de función. El valor de la
hora puede indicarse en formato BCD (formato por defecto) o en formato POSIX. El
formato es determinado por el parámetro Formato de la hora de activación en el bloque de
control. Este valor se inicializa a cero tras la activación de la entrada reset.
6 hasta el final Búfer de muestras. El área de la memoria que contiene las muestras de datos. Este área se
del búfer de pone a cero cuando se activa el parámetro reset. El tamaño del búfer de muestras varía
muestras. dependiendo del número de canales y del tamaño de la muestra. El búfer de muestras es un
búfer circular, cuando se ha escrito en la última posición, la muestra siguiente sobrescribirá
la muestra en el primer registro.
Final del búfer de muestras = 5 + ({[(# de muestras a tomar) * (# de canales en que se va a
realizar el muestreo / 8)] +1} / 2
*Offset desde la posición inicial definida por el selector de segmento del bloque de datos (palabra 12) y el
offset del bloque de datos (palabra 13) en el bloque de control de función.

Operación SER
Si la función SER está habilitada durante la exploración, lee los puntos de muestra configurados y
los coloca en una lista circular. Después de que se ha tomado el número configurado de muestras,
la salida se activa. La transición de la salida puede usarse para registrar la hora en que se ha tomado
la última muestra o para iniciar un muestreo adicional. (Véase “Modos de muestreo.”)
El bloque de función SER debe estar en reset (habilite el flujo de energía a la entrada reset) antes de
comenzar el muestreo. Efectuando reset se inicializa el área de bloque de datos. Si el estado del
bloque de función no es reset, se ejecutará con los valores actuales en el bloque de datos,
ocasionando que el offset de muestra actual sea incorrecto y haya datos no válidos en el bloque de
datos.

12-16 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

El bloque de control del bloque de función SER es explorado cada vez que el bloque de función se
ejecuta en los estados Reset, Activo o Activado. Si modifica un parámetro de configuración en el
bloque de control durante la ejecución del programa, la modificación tendrá efecto la próxima vez
que se explore el bloque de función SER asociado con ese bloque de control. Si se encuentra un
error, la operación se interrumpe y el bloque de función pasa al estado de error correspondiente.
Debe corregir el error y reinicializar el bloque de función (habilite el flujo de energía de la entrada
reset) para comenzar de nuevo el muestreo.
Si selecciona un módulo de entrada para ser explorado, el PLC no verificará que el módulo es un
módulo de entrada digital, o que las descripciones de canal asociadas al módulo tienen longitudes y
offset válidos basados en el tamaño del módulo. Debe preparar correctamente el muestreo de un
módulo de entrada. A pesar de que múltiples descripciones de canal pueden corresponder a un
módulo de entrada, el módulo sólo será explorado una vez por ejecución del bloque de función.
El bloque de función SER puede colocarse en el programa lógico normal del usuario o dentro de
una subrutina periódica. Si se coloca en un programa lógico del usuario, la resolución del intervalo
entre exploraciones es la resolución del tiempo de exploración, el cual puede variar dependiendo
del número y tipo de funciones activas en una exploración determinada. Si se coloca en una
subrutina de interrupción, el intervalo puede definirse tan pequeño como 1ms, y la resolución se
podrá repetir con 1ms con pequeña fluctuación.
El tiempo de ejecución de un bloque de función con una subrutina periódica de 1ms puede
consumir hasta el 50% de los recursos de la CPU. No se deberá planificar la ejecución de más de
dos funciones SER dentro de una subrutina periódica de 1ms.

Modos de muestreo
El modo de muestreo SER es determinado por los parámetros del modo activador (Palabra 2 en el
bloque de control de función) y el número de muestras tras la activación (Palabra 10). Deberá
interpretar el contenido del búfer de muestras basándose en cómo ha configurado estos parámetros.
La siguiente tabla resume cómo se determinan los modos de muestreo.
Modo Palabra 2 Palabra 10
Preactivación 0 0
Media 0 Desde 1 hasta (número de muestras – 1)
activación
Posactivación 0 Igual al número de muestras (especificada en Palabra 9)
Búfer 1 Palabra 10 y la señal de entrada de activación son
completo ignoradas

Muestreo controlado por activación


Con el fin de configurar los modos de muestreo preactivación, media activación y posactivación,
debe seleccionarse el modo de activación (Palabra 2 = 0). El modo de muestreo es controlado por el
valor del número de muestras tras la activación (Palabra 10). En todos los casos, el muestreo
comienza cuando la señal habilitar se activa. Cuando la señal de activación se activa, el muestreo
continúa hasta que se recoge el número especificado en el parámetro número de muestras tras la
activación. La salida OK de SER se activa cuando finaliza el muestreo.

GFK-0467M-SP Capítulo 12 Funciones de control 12-17


12

Si se recogen más muestras que las configuradas en el número de muestras (Palabra 9) antes de que
se cumpla la condición del número de muestras tras la activación, el búfer se “enrrolla”, lo que
significa que la SER vuelve al comienzo del búfer y sobrescribe las muestras iniciales.
Cuando el activador pasa por primera vez de desactivado a activado, la hora del activador se coloca
en una posición configurada.

Preactivación
Recoge muestras continuamente hasta que de detecta el activador.
Para configurar este modo, ponga la Palabra 10 al valor 0, de modo que cuando se active la señal
del activador, el muestreo se detenga y se genere una marca de la hora. (Todas las muestras son
recogidas antes de la activación.)

Habilitar – comienza el
muestreo Muestra 1 Muestra 513
Muestra 2 Muestra 514
Muestra 3 Muestra 515
Muestra 4 Muestra 516

Cuando el búfer está lleno,


las nuevas muestras
sobrescriben las iniciales.

Muestra 506 Muestra 1018


Muestra 507 Muestra 1019
Activador - SER detiene el
muestreo y genera la marca Muestra 508 Muestra 1020
de la hora Muestra 509
(Número de muestras tras
la activación = 0) Muestra 510
Muestra 511

Fin del búfer Muestra 512


(Número de muestras)

Figura 12-1. Ejemplo de muestreo SER de preactivación (para 512 muestras)

Media activación
Recoge muestras continuamente hasta que se alcanza el número de muestras tras la
activación.
Para configurar este modo, ponga la Palabra 10 a un valor entre 1 y el (número de muestras – 1).
Cuando la señal de activador se activa, el muestreo continúa hasta que se alcanza el número
configurado. En el siguiente ejemplo, el número de muestras tras la activación es 12. Cuando
finalice el muestreo, el búfer contendrá 500 muestras de preactivación y 12 muestras de
posactivación.

12-18 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Habilitar – comienza el
muestreo Muestra 1 Muestra 513
Muestra 2 Muestra 514
Muestra 3 Muestra 515
El muestreo se detiene Muestra 4 Muestra 516
cuando se alcanza el
Número de muestras Muestra 5 Muestra 517
tras la activación (12) Muestra 6
Cuando el búfer está lleno,
las nuevas muestras
sobrescriben las iniciales.

Muestra 506
Muestra 507
Activador - SER genera la
marca de la hora y continúa Muestra 508
el muestreo Muestra 509
Muestra 510
Muestra 511

Fin del búfer Muestra 512


(Número de muestras)

Figura 12-2. Ejemplo de muestreo SER de media activación (para 512 muestras)

Posactivación
Recoge muestras continuamente hasta que se alcanza el número de muestras.
Para configurar este modo, ponga la Palabra 10 a un valor igual al número de muestras (Palabra 9).
Cuando la señal de activador se activa, el muestreo continúa hasta que se alcanza el número
configurado. (Nota: Todas las muestras son recogidas después de la activación.)

Habilitar – comienza el
muestreo Muestra 1 Muestra 513
Muestra 2 Muestra 514
Muestra 3 Muestra 515

Activador - SER genera la


marca de la hora y continúa
el muestreo
(Número de muestras tras Cuando el búfer está lleno,
la activación = 512, igual las nuevas muestras
al parámetro Número de sobrescriben las iniciales.
Muestra 505 Muestra 1017
muestras
Muestra 506
El muestreo se detiene
Muestra 507
cuando se alcanza el
Número de muestras Muestra 508
tras la activación
Muestra 509
Muestra 510
Muestra 511

Fin del búfer Muestra 512


(Número de muestras)

Figura 12-3. Muestreo SER posactivación (para 512 muestras)

GFK-0467M-SP Capítulo 12 Funciones de control 12-19


12

Búfer completo (el activador no controla el muestreo)


Si el modo activador se pone a 1, el parámetro número de muestras tras la activación (Palabra 10)
se ignora y la señal de entrada del activador no tiene efecto en la operación del bloque de función.
Cuando el bloque de función está habilitado, el muestreo continúa hasta que se recoge el número de
muestras (Palabra 9), llenando el búfer de muestras. Cuando el búfer está lleno, el muestreo se
detiene, se genera una marca de hora del activador y la salida OK del bloque de función se activa.

Formatos de marca de hora del activador del bloque de función SER

Formato BCD
Nº de palabra de bloque de Contenido Formato de
datos (Byte alto/Byte bajo) indicación sugerido
Palabra 2 Mes/Año Hex (MMYY)
Palabra 3 Horas/Día del mes Hex (HHDD)
Palabra 4 Segundos/Minutos Hex (SSMM)
Palabra 5 No usada Todo ceros

Formato POSIX
Nº de palabra de bloque de Contenido Formato de
datos indicación sugerido
Palabras 2 y 3 Número de segundos Dint
desde el 1 de Enero, 1970
Palabras 4 y 5 Número de nanosegundos Dint
en el siguiente segundo

Ejemplo
Las dos tablas siguientes muestran como se indicaría la hora de activación del 3 de Noviembre de
1998 a las 8:34:05.010 a.m. en los formatos BCD y POSIX en un bloque de datos que comienza en
%R0201 (Palabra 0).

3 de Noviembre 3, 1998 a las 8:34:05.010 a. m. en formato BCD


Registro Parámetro Valor (hex)
%R0203 Mes/Año 1198
%R0204 Horas/Día del mes 0803
%R0205 Segundos/Minutos 0534
%R0206 No usada 0000

3 de Noviembre 3, 1998 a las 8:34:05.010 a. m. en formato POSIX


Registro Parámetro VALOR (decimal) Valor (hex)
%R0203/R0204 Segundos 910,082,045 363EBFFD
%R0205/R0206 Nanosegundos 010,000,000 00989680

12-20 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Ejemplo de SER
A continuación se muestra la relación de la instrucción de la lógica de contactos, el bloque de
control en la memoria del PLC y el módulo de entrada afectado del PLC. El bloque de control se
ha configurado como se ha descrito en la Tabla 12-1.

%I0016 %M0100
SER
%M0002
R
%M0050
T
PLC Series 90-30, Rack 0
Fuente CPU
%R0100 de
alimen-
tación

Número de slot: 1 2 3 4 5 6 7 8 9 10

Bloque de control
Palabra #Dirección Valor Descripción
0 %R0100 0 Palabra de estado
1 %R0101 0 Datos adicionales de estado
2 %R0102 0 Modo activador (0 = entrada activador)
3 %R0103 0 Formato hora de activación (0 = BCD)
4 %R0104 0 Reservado
5 %R0105 0 Reservado
6 %R0106 0 Reservado
7 %R0107 0 Reservado
8 %R0108 24 Bits por canal
9 %R0109 512 Tamaño de búfer de muestras
10 %R0110 12 Número de muestras tras la activación
11 %R0111 4 Especifica módulo de entrada en slot 4
12 %R0112 8 Tipo de memoria bloque de datos (%R)
%R0201
13 %R0113 200 Offset memoria bloque de datos (201)
14 %R0104
Descripciones de canal

Bloque de datos
Palabra # Dirección Valor Descripción
0 %R0201 0 Número offset muestra actual
1 %R0202 0 Número offset muestra de activación
2 %R0203 0 Mes y año (MMYY)
3 %R0204 0 Hora y día (HHDD)
4 %R0205 0 Segundos y minutos (SSMM)
5 %R0206 0 No usada

6 %R0207
Búfer de muestras (tamaño especificado en
Palabra 9 de Bloque de Control)

GFK-0467M-SP Capítulo 12 Funciones de control 12-21


12

Ejemplo de bloque de control de función


En este ejemplo, se ha especificado un módulo de entrada digital de 16-puntos en el rack 0, slot 4,
(en Palabra 11) como objeto del muestreo. Se ha ejecutado el tiempo suficiente para recoger 572
muestras (512 + 60). La entrada habilitar recibe flujo de energía, pero no así las entradas reset y
activador.

Tabla 12-1. Bloque de control de función para el ejemplo SER


Palabra Registro Parámetro Valor Valor Descripción
(dec) (hex)
0 %R0100 Estado 2 0002 El bloque de función está en estado activo.
Esto significa que el bloque de función se está
ejecutando normalmente, y está tomando una
muestra cada vez que se encuentra el bloque
de función en la lógica del programa.
1 %R0101 Datos Adicionales de Estado 1 0001 El dato adicional de estado indica que se han
tomado más de 512 muestras y por tanto el
búfer ha vuelto al inicio al menos una vez.
2 %R0102 Modo activador 0 0000 El registro de sucesos se configura en base al
activador en la entrada activador.
3 %R0103 Formato de hora de activador 0 0000 0=BCD
4 %R0104 Reservado 0 0000 Los parámetros reservados se ponen siempre a
5 %R0105 Reservado 0 0000 0.
6 %R0106 Reservado 0 0000
7 %R0107 Reservado 0 0000
8 %R0108 # de canales 24 0018 Cada muestra consta de 24 bits (3 bytes) de
datos.
9 %R0109 # de muestras a tomar 512 0200 El tamaño del búfer de muestras es de 512
muestras. Observe que el búfer de muestras es
igual a 512 x (24/8) = 1536 bytes o 768
palabras. (Cada muestra tiene una longitud de
3 bytes como está especificado en la Palabra 8
más arriba.)
10 %R0110 # de muestras tras la activación 12 000C El número de muestras que se han de recoger
tras la activación es 12.
11 %R0111 Slot de módulo de entrada 4 0004 El módulo de entrada en el rack 0, slot 4 será
explorado cuando se ejecute SER y sus
valores actuales estén disponibles para el
muestreo con SER.
12 %R0112 Selector de segmento del bloque 8 0008 El segmento de datos es 0x08 (%R).
de datos
13 %R0113 Offset de bloque de datos 200 00C8 Este offset de 200 coloca el inicio del bloque
de datos en %R0201. El offset es un valor con
base cero, pero las tablas del registro
comienzan en %R0001. Por tanto, el punto
inicial del bloque de datos es %R0001 + 200 =
%R0201.

Continúa en la página siguiente

12-22 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Palabra Registro Parámetro Valor Valor Descripción


(dec) (hex)
Descripciones de canal Las palabras restantes contienen las descripciones del canal. En este ejemplo se han definido seis
descripciones de canal.
14 %R0114 Sel. Seg. : Longitud 17921 4601 Descripción de canal 1: La primera
15 %R0115 Offset 0 0000 descripción de canal selecciona el segmento
%I con una longitud de 1 y un offset de 0. Esta
elige %I0001 para el canal 1.
16 %R0116 Sel. Seg. : Longitud -253 FF03 Descripción de canal 2: La segunda
17 %R0117 Offset 0 0000 descripción de canal selecciona el selector
NULO con longitud de 3 y offset de 0. El
selector NULO hace que los canales 2 - 4 sean
ignorados o “saltados.” Estos canales
contendrán siempre un valor de muestra de
Cero.
18 %R0118 Sel. Seg. : Longitud 3 0003 Descripción de canal 3: La tercera descripción
19 %R0119 Offset 12 0012 de canal selecciona el selector de módulo de
entrada con una longitud de 3 y un offset de
12. El selector de módulo de entrada hace que
las muestras se tomen del módulo de entrada.
Esta descripción de canal elige los valores en
los puntos 13, 14 y 15 del módulo de entrada
para los canales 5 - 7.
20 %R0120 Sel. Seg. : Longitud 18434 4802 Descripción de canal 4: La cuarta descripción
21 %R0121 Offset 8 0008 de canal selecciona el segmento %Q con una
longitud de 2 y un offset de 8. Esta elige
%Q0009 y %Q0010 para los canales 8 y 9.
22 %R0122 Sel. Seg. : Longitud 8 0008 Descripción de canal 5: La quinta descripción
23 %R0123 Offset 0 0000 de canal es otro selector de módulo de entrada.
Tiene una longitud de 8 y un offset de 0. Hace
que los valores para los puntos 1 a 8 del
módulo de entrada se coloquen en los canales
10 - 17.
24 %R0124 Sel. Seg. : Longitud -249 FF07 Descripción de canal 6: La sexta descripción
25 %R0125 Offset 0 0000 de canal es otro selector NULO. Tiene una
longitud de 7 y un offset de 0. Esta descripción
de canal NULO hace que los canales 18 - 24
se llenen con ceros. Esta última descripción de
canal se requiere para rellenar el búfer de
muestras a los 24 bits especificados en el
parámetro de número de canales. Dado que los
24 canales están configurados, no se necesitan
más descripciones de canales.

Configuración de canales para el ejemplo anterior


32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1
U U U U U U U U N N N N N N N C8 C7 C6 C5 C4 C3 C2 C1 %Q %Q C15 C14 C13 N N N %I
10 09 01
U = No usado, N = Nulo, el prefijo C indica el número de canal en el módulo de entrada configurado (por ejemplo, C0 = entrada punto 1, C15 = entrada
punto 16)

GFK-0467M-SP Capítulo 12 Funciones de control 12-23


12

Ejemplo de contenido de una muestra


La Tabla 12-2 resume los valores contenidos en una única muestra basada en las descripciones de
canal en el bloque de control de la muestra. Está basada en la pantalla de ejemplo que se muestra
en la página siguiente. Observe en este ejemplo que los bits 1 – 16 están contenidos en %R00207 y
los bits 17 – 24 son parte de %R00208.

Tabla 12-2. Contenido de una muestra para el ejemplo de SER


Número de canal Contenido del canal Valor
1 %I0001 1
2-4 Ceros 000
5 Módulo de entrada Punto 13 1
6 Módulo de entrada Punto 14 1
7 Módulo de entrada Punto 15 1
8 %Q0009 0
9 %Q0010 0
10 - 17 Módulo de entrada Puntos 1 - 8 100100010
18 - 24 Ceros 0000000

Bloque de datos para el ejemplo de bloque de control


La Tabla 12-3 lista los formatos del bloque de datos resultante del bloque de control del ejemplo
expuesto en la página 12-22. Observe que comienza en el registro 201 como está descrito por los
parámetros de offset de segmento (Palabras 12 y 13) en el bloque de control.

Tabla 12-3. Bloque de datos para el ejemplo de bloque de control de SER


Offset Registro Descripción del parámetro Valor (dec) Valor (hex)
0 %R0201 # offset de la muestra actual 59 003B
1 202 # offset de la muestra de 0 0000
activación
2-5 203 – 206 Hora de activación (BCD) 0 0000
0 0000
0 0000
0 0000
6 - 768 207 – 975 Búfer de muestras. datos de la muestra datos de la muestra

El offset de la muestra actual es 59, lo que significa que la muestra número 59 es la última colocada
en el búfer de muestras. Con 3 bytes por muestra, el offset actual está en 59 * 3 = 177 bytes o el bit
alto del registro 89. Dado que las condiciones de activación no se han cumplido, la muestra de
activación y la hora de activación son 0 y la salida no está activada. El búfer de muestras contiene
512 muestras donde 59 es la muestra más reciente y 60 es la muestra más antigua.

12-24 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Ejemplo de captura de datos

Examen de los datos capturados


La siguiente instantánea de la pantalla fue tomada después de una activación. El bloque de control
comienza en %R00100, y el área de datos comienza en %R00201. El cursor está situado en
%R00207 cerca de la parte inferior y superior de la pantalla.

%R00207 es el primer registro en el bloque de datos que actualmente tiene los datos de entrada
medidos. Observe que su valor entero (-21855) no tiene mucho significado en este contexto; sin
embargo, colocando el cursor en %R00207, su valor es indicado en binario cerca de la parte
superior de la pantalla. Utilizando este formato binario, puede determinar los estados de los bits
configurados en la parte de las descripciones de los canales del bloque de control.

Los registros %R00203 hasta %R00205 proporcionan la hora y la fecha, en formato de 24-horas,
como 16:06 (y 57 segundos) el 15 de Mayo de 2001.
%R00207
Representado en
binario

%R00207 %R00205 %R00204 %R00203 %R00202 %R00201


Primer Segundos y Hora y día Mes y año Número de Número de
registro de minutos (HHDD) (MMYY) offset de offset de
datos actual (SSMM) muestra de muestra
activador actual

GFK-0467M-SP Capítulo 12 Funciones de control 12-25


12

END (FIN)
La función END proporciona un fin de lógica temporal. El programa se ejecuta desde el primer
escalón hasta el último escalón o hasta la función END, lo que se encuentre primero.
La función END finaliza incondicionalmente la ejecución del programa. No puede haber nada
después de la función de fin del circuito. No se ejecuta ninguna lógica más allá de la función END
y el control se transfiere al comienzo del programa para el siguiente barrido. Observe que en los
escalones después de la marca END, las entradas parecerán activarse y desactivarse, pero las
salidas no serán actualizadas. Aunque esto sea normal, aparecerá como un problema si no es
evidente que la marca END precede a los escalones afectados.
La función END es útil para depurar errores ya que permite aislar una parte de la lógica. Esto lo
consigue impidiendo que se ejecute cualquier lógica que esté detrás.
El software de programación Logicmaster proporciona por defecto una marca [ FIN DE LA
LOGICA DEL PROGRAMA ] tras el último escalón de la lógica para indicar el final de la
ejecución del programa. Esta marca se utiliza si en la lógica no se ha programado ninguna función
fin de lógica.

[ END ]

Ejemplo
En el siguiente ejemplo, el escalón que contiene el contacto %I0222 y la bobina %Q0017, y los
escalones tras de él, no se ejecutarán debido a la presencia de una instrucción END.

%M0100 %M0101

[ END ]

%I0222 %Q0017

Nota
Colocando una función END en la lógica SFC o en una lógica llamada por la
lógica SFC produce un fallo “Función END ejecutada por acción de SFC” en las
CPUs versión 7 o posteriores. (En CPUs de versiones anteriores a la 7, no
funcionará correctamente, pero no generará ningún fallo.) Para más información
sobre este fallo, consulte el apartado “Discordancia en la configuración del
sistema” del Capítulo 3, Sección 2.

12-26 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

MCRN/MCR (RELÉ DE CONTROL MAESTRO)

Descripción general de MCR y MCRN

Una función de relé de control maestro (MCR/MCRN) debe utilizarse con la correspondiente
función de fin de relé de control maestro (ENDMCR/ENDMCRN). Ambas funciones deben tener
el mismo nombre. La MCR/MCRN debe tener un contacto habilitar entre la misma y la línea de
alimentación. Todos los escalones entre una función MCR/MCRN habilitada y su correspondiente
función ENDMCR/ENDMCRN se ejecutan sin flujo de energía hacia las bobinas. La función
ENDMCR/ENDMCRN asociada a la MCR/MCRN hace que se reanude la ejecución normal del
programa. A diferencia de la instrucción JUMP (salto), una MCR/MCRN sólo puede producirse en
la dirección hacia adelante. Una instrucción ENDMCR/MCRN debe aparecer en el programa
después de su correspondiente función MCR/MCRN.
Los siguientes controles se imponen en la lógica controlada por una MCR/MCRN habilitada:
• Los temporizadores no incrementan o decrementan. Cualquier temporizador de tipo TMR se
reinicializa (el acumulador se pone a cero). Para un temporizador ONDTR, el acumulador se
“congela” en el valor que era el actual al habilitar MCR/MCRN.
• No se produce flujo de energía para ninguna instrucción. Las salidas normales están
desactivadas; las salidas inversas están activadas.
• Las instrucciones no actualizan sus salidas. Por ejemplo, una instrucción ADD no producirá la
suma actual en su registro de salida Q, una instrucción mover no copiará el valor de entrada
actual en su salida, el registro de desplazamiento no desplazará datos, etc. Los valores en estos
registros de salida quedarán congelados en los valores presentes cuando se habilitó
MCR/MCRN.
Nota
Cuando una MCR/MCRN recibe energía, la lógica que controla se evalúa y es
indicado el estado de contactos, pero las salidas no se activan. Si no es consciente
de que MCR/MCRN está controlando la lógica que está observando, esto puede
parecer un estado de fallo. Para indicar que un rango de lógica de contactos está
bajo el control de MCR/MCRN, Logicmaster indica una línea doble de
alimentación en la pantalla de la lógica de contactos. Esta línea doble de
alimentación aparecerá independientemente de que la MCR/MCRN esté
habilitada o no.

El software Logicmaster 90-30/20/Micro soporta dos formas de la función relé de control maestro,
una antigua, no anidada (MCR) y una más nueva, forma anidada (MCRN).

GFK-0467M-SP Capítulo 12 Funciones de control 12-27


12

Compatibilidad de la CPU
Tipo de CPU Forma soportada
CPU311 – CPU341, versión 1 Usa sólo la forma no anidada (MCR)
CPU311 – CPU341, versión 2 y posterior Usa sólo la forma anidada (MCRN)
CPUs de las series 35x 36x y 37x Usa sólo la forma anidada (MCRN)

Posible problema de compatibilidad de MCRN

En la conversión de un programa de CPU340 o CPU341 para ejecutarlo en una CPU de las series
35x/36x/37x, es posible que aparezca el error “Función no soportada” (“Niveles de anidamiento
excedidos”) del Logicmaster 90. Esto puede suceder cuando el programa convertido se almacena
en una CPU 35x/36x/37x si se utilizan más de ocho niveles de anidamiento MCRN en el programa
original.
Las instrucciones MCRN son en realidad instrucciones de bloque de función en la CPU340/341, lo
cual significa que se ejecutan en el firmware de la CPU y no en el Coprocesador Booleano
integrado (BCP). El límite de anidamiento para el bloque de función estaba establecido en 256.
Este límite comprende muchos más niveles de los que normalmente va a utilizar. Cuando se
diseñaron las series 35x/36x/37x de CPUs, las instrucciones MCRN se pasaron al BCP para
mejorar las prestaciones de la CPU (Las instrucciones del bloque de función se ejecutan más
lentamente que las copias del BCP). En aquel entonces se realizó una transacción de niveles de
anidamiento y prestaciones y el BCP3 utilizado en las CPUs 35x/36x/37x fue implementado con
ocho niveles de anidamiento, que son normalmente más de los que el usuario necesita. Así,
Logicmaster 90 posibilita la ejecución de ocho niveles de anidamiento cuando se realiza la
conversión del programa, y si se utilizan más de ocho niveles, se emite un mensaje de “Niveles de
anidamiento excedidos”.
Por tanto, si tiene más de ocho niveles de anidamiento MCR en un programa CPU340/341, será
necesaria una modificación para operar en una CPU 35x/36x/37x. En su lugar se podría considerar
el uso de sentencias Jump (salto).

Anidamiento de MCRN
Una función MCRN puede colocarse en cualquier parte dentro de un programa, siempre que esté
correctamente anidada con respecto a otras MCRNs, y no esté en el rango de MCR o JUMP no
anidadas.
Si un par MCRN/ENDMCRN está anidado dentro de otro par MCRN/ENDMCRN, debe estar
completamente contenida dentro del otro par. Están permitidos hasta ocho niveles de anidamiento.
Véase el ejemplo en la página 12-31.
Puede haber múltiples funciones MCRN correspondientes a una única ENDMCRN (excepto para
las CPUs de las series 35x/36x/37x como se menciona más abajo). Cada MCRN así como la
ENDMCRN deben tener el mismo nombre. Está es análoga a la JUMP anidada, donde se pueden
tener múltiples JUMPs para la misma LABEL. Encontrará la comparación de las funciones JUMP
y MCR en la sección “Diferencias entre MCRs y Jumps” más abajo.

Nota
Use sólo una MCRN por cada ENDMCRN con las CPUs 35x, 36x y 37x.

12-28 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Operación MCR
Sólo puede haber una instrucción MCR por cada instrucción ENDMCR. El rango para las MCRs y
ENDMCRs no anidadas no puede solapar o contener el rango de cualquier otro par de
MCR/ENDMCR o cualquier otro par de instrucciones JUMP/LABEL(salto/etiqueta).Las MCRs no
anidadas no pueden estar dentro del espacio de ningún otro par JUMP/LABEL.

Parámetros
Ambas formas de la función MCR tienen los mismos parámetros. Las dos tienen una entrada
booleana habilitar EN y un nombre que identifica a la MCR. Este nombre se usa de nuevo con la
instrucción ENDMCR. Ninguna de las funciones MCR o MCRN tiene salidas; después de una
MCR no puede haber nada en un circuito.

??????? ???????
[ M* C[ R ]M o --[[MMCCRRNN]

GFK-0467M-SP Capítulo 12 Funciones de control 12-29


12

Diferencias entre MCR/MCRN y JUMP


Con una función MCR, los bloques de función dentro del campo de aplicación de MCRN son
avaluados sin flujo de energía, y las bobinas no son activadas. En el siguiente ejemplo, cuando
%M0150 esta ACTIVADA, la MCRN está habilitada. Cuando MCRN está habilitada, aunque
%I004 esté ACTIVADA, el bloque de función ADD se evalúa sin flujo de energía (es decir, no
suma 100 a %R0001), y %M0210 no recibe flujo de energía. El estado de los contactos tales como
%I0004 y los valores de los registros usados en las entradas, tales como %R0001, se actualizarán
en la pantalla del Logicmaster, pero los registros en las salidas bajo el control de la MCRN, como
%R0010, se congelarán en sus valores actuales cuando la MCRN está habilitada.
%M0150 OPCIÓN
[ MCRN ]

%I0004 %M0210
add
INT
%R0001
I1
+13069 %R0010
Q
CONST +00878
I2
+00100

OPCIÓN
[ ENDMCRN ]

Con una función JUMP, no se evalúan los bloques de función entre el salto (JUMP) y la etiqueta
(LABEL), y las bobinas no se ven afectadas. En el siguiente ejemplo, cuando %I0001 está
ACTIVADA, el JUMP denominado TEST1 está habilitado. Dado que se salta la lógica entre el
salto (JUMP) y la etiqueta (LABEL), %M0210 no se ve afectada (si estaba ACTIVADA,
permanece ACTIVADA; si estaba DESACTIVADA, permanece DESACTIVADA). El estado de
los contactos tales como %M0004 y los valores de los registros usados en las entradas, tales como
%R0001, se actualizarán en la pantalla del Logicmaster, pero los registros en las salidas bajo el
control de JUMP, como %R0010, se congelarán en sus valores actuales cuando JUMP está
habilitado.
%I0001
N TEST1

%M0004 %M0210
ADD
INT
%R0001
I1
+13069 Q %R0010
CONST +00878
I2
+00100

TEST1 :

12-30 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Ejemplo 1
El siguiente ejemplo muestra una MCRN denominada “Segunda” anidada dentro de la MCRN
denominada “Primera.” Siempre que %I0002 permita el flujo de energía a la función MCRN, la
ejecución del programa continuará sin flujo de energía hacia las bobinas hasta que se alcance la
ENDMCRN asociada. Si %I0001 y %I0003 están ACTIVADAS, %Q0001 está DESACTIVADA y
%Q0003 permanece ACTIVADA.
Para facilitar la localización de fallos en los programas de contactos, una línea doble de
alimentación identifica la lógica que está dentro del rango de control de una MCR.

|
|%I0002 PRIMERA
|——| |———[ MCRN ]
|
||
||
||%I0004 SEGUNDA
||——| |———[ MCRN ]
||
||
||
||%I0001 %Q0001
||——| |————————————————————————————————————————————————————————————————————( )—
||
||
||
||%I0003 %Q0003
||——| |————————————————————————————————————————————————————————————————————(S)—
||
||
|| SEGUNDA
|+[ ENDMCRN ]
||
||
||
| PRIMERA
+[ ENDMCRN ]
|

Ejemplo 2
En el siguiente ejemplo, el primer escalón funciona con normalidad. Sin embargo, la MCRN de
nombre SKIP controla el resto de los escalones, que disponen de una línea doble de alimentación
que lo indica. En el primer escalón controlado por la MCRN, el valor acumulado del temporizador
ONDTR (%R0004) está congelado, y a pesar de que ha alcanzado su valor predefinido, su salida
(%M0200) no está activada. En el siguiente escalón, el TMR ha sido reinicializado por MCRN.
Su valor acumulado (%R0007) se mantiene a cero y su salida (%M02025) no está activada. En el
siguiente escalón, la salida de la instrucción ADD está congelada (su salida en %R0010 no es la
suma de sus entradas) y su bobina de flujo de energía (%M0210) no está activada. Observe, sin
embargo, que el estado de los contactos y los valores de los registros de entrada (como %R0001 en
la entrada I1 de la instrucción ADD) están actualizadas en pantalla dentro del área de control de
MCRN.

GFK-0467M-SP Capítulo 12 Funciones de control 12-31


12

%I0001 %M0100
ONDTR
0.10s
%M0001
R

CONST PV
+12000
%R0001
+13069

%M0150 SKIP
[ MCRN ]

%I0002 %M0200
ONDTR
0.10s
%M0001
R

CONST PV
+12000
%R0004
+12131

%I0003 %M0205
TMR
0.10s
%M0001
R

CONST PV
+12000
%R0007
+00000
%I0004 %M0210
ADD
INT
%R0001
I1
+13069 %R0010
Q
CONST +00878
I2
+00100

SKIP
[ ENDMCRN ]

12-32 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

ENDMCRN/ENDMCR (FIN DE RELÉ DE CONTROL MAESTRO)


Utilice la función fin de relé de control maestro ENDMCR/ENDMCRN para reanudar la ejecución
normal del programa después de una función MCR/MCRN. Cuando la MCR asociada con la
ENDMCR está activa, la ENDMCR hace que la ejecución del programa se reanude con flujo
normal de energía. Cuando la MCR asociada a la ENDMCR no está activa, la ENDMCR no tiene
ningún efecto.
El software Logicmaster 90-30/20/Micro soporta dos formas de la función ENDMCR, una forma
no anidada y otra anidada. La forma no anidada, ENDMCR, debe utilizarse con la función MCR no
anidada, MCR. La forma anidada, ENDMCR, debe utilizarse con la función MCR anidada,
MCRN.
La función ENDMCR tiene una entrada booleana inversa EN. La instrucción habilitar debe ser
proporcionada por la línea de energía; la ejecución no puede ser condicional. La función ENDMCR
tiene también un nombre que identifica la ENDMCR y la asocia a la(s) correspondiente(s) MCR(s).
La función ENDMCR no tiene salidas; antes o después de una instrucción ENDMCR no puede
haber nada en un escalón.

??????? ???????
-[ ENDMCR ] o -[ ENDMCRN ]

Ejemplo
En los siguientes ejemplos, una instrucción ENDMCR es programada para finalizar la MCR
denominada “BORRAR.”
Ejemplo de una ENDMCR no anidada

|
| BORRAR
|
|-[ ENDMCR ]
|

Ejemplo de una ENDMCR anidada

|
| BORRAR
|
|-[ ENDMCRN ]
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-33


12

JUMP (SALTO)
Utilice la instrucción JUMP (salto) para eludir una parte de la lógica del programa. La ejecución
del programa continúa en la etiqueta (LABEL) especificada. Cuando el salto está activo, todas las
bobinas dentro de su alcance quedan en sus estados previos. Esto incluye las bobinas asociadas a
temporizadores, contadores, cierres y relés.
El software Logicmaster 90-30/20/Micro soporta dos formas de la instrucción JUMP, una forma no
anidada y otra anidada. La forma no anidada está disponible a partir de la versión 1 del firmware
para las CPUs CPU311-CPU341, y tiene la forma ——————>>LABEL01, donde LABEL01
es el nombre de la correspondiente instrucción LABEL no anidada.
Para las instrucciones JUMPs no anidadas, sólo puede haber una única instrucción JUMP por cada
instrucción LABEL. El salto puede ser hacia adelante o hacia atrás.
El rango para las JUMPs y LABELs no anidadas no puede solapar o contener el rango de cualquier
otro par de JUMP/LABEL o cualquier otro par de instrucciones MCR/ENDMCR. Las
instrucciones JUMP no anidadas y sus LABEL correspondientes no pueden estar dentro del campo
de ningún otro par JUMP/LABEL o par MCR/ENDMCR. Además, un par MCR/ENDMCR u otro
par JUMP/LABEL no puede estar dentro del campo de un par JUMP/LABEL no anidado.

Nota
La forma no anidada de la instrucción JUMP es la única instrucción JUMP que
puede utilizarse en la versión 1 del PLC de las Series 90-30. La función JUMP
anidada puede utilizarse (y se sugiere su uso) para todas la aplicaciones nuevas.

Además, se ruega observar que las CPUs de las series 35x/36x/37x soportan sólo
saltos anidados.

La forma anidada de la instrucción JUMP presenta la forma ———N——>>LABEL01, donde


LABEL01 es el nombre de la instrucción LABEL y su correspondiente instrucción LABEL
anidada. La JUMP anidada está disponible en la versión 2 y posteriores del software Logicmaster
90-30/20/Micro y firmware del PLC.
Una instrucción JUMP anidada puede colocarse en cualquier parte dentro de un programa, siempre
que no sea en el rango de una MCR no anidada o una JUMP no anidada.
Puede haber múltiples instrucciones de salto anidadas correspondientes a una sola etiqueta anidada.
Los saltos anidados pueden ser saltos directos o inversos.
Ambas formas de la instrucción JUMP se colocan siempre en las columnas 9 y 10 de la línea de
escalones actual; no puede haber nada en el circuito o peldaño del esquema a continuación de la
instrucción salto. El flujo de energía salta directamente de la instrucción al circuito o peldaño que
contiene la etiqueta especificada.

12-34 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

JUMP no anidada:

——————————————————————— —————————>> ???????

JUMP anidada:

——————————————————————— ———N—————>> ???????

Precaución
Para evitar la creación de un lazo sin fin con instrucciones de salto hacia
atrás, un salto hacia atrás debe contener alguna manera de hacerlo
condicional.

Ejemplos
En el siguiente ejemplo, siempre que el contacto %I0001 se activa, el JUMP denominado TEST1
se habilita, y el flujo de energía se transfiere a LABEL TEST1. Dado que se salta la lógica entre el
salto (JUMP) y la etiqueta (LABEL), %M0210 no se ve afectada (si estaba ACTIVADA,
permanece ACTIVADA; si estaba DESACTIVADA, permanece DESACTIVADA). El estado de
los contactos tales como %M0004 y los valores de los registros usados en las entradas, tales como
%R0001, se actualizarán en la pantalla del Logicmaster, pero los registros en las salidas bajo el
control de JUMP, como %R0010, se congelarán en sus valores actuales cuando JUMP está
habilitado. Observe el uso de la doble línea de alimentación en la sección de la lógica situada entre
el JUMP y su LABEL.

%I0001
N TEST1

%M0004 %M0210
ADD
INT
%R0001
I1
+13069 Q %R0010
CONST +00878
I2
+00100

TEST1 :

GFK-0467M-SP Capítulo 12 Funciones de control 12-35


12

LABEL (ETIQUETA)
La instrucción LABEL (etiqueta) funciona como destino objetivo de una instrucción JUMP (salto).
Utilice la instrucción LABEL para reanudar la ejecución normal del programa después de una
instrucción JUMP.
En un programa puede aparecer sólo una etiqueta con un nombre de etiqueta determinado. Los
programas sin un par acoplado JUMP/LABEL pueden ser creados y almacenados en el PLC, pero
no pueden ejecutarse.
El software Logicmaster 90-30/20/Micro soporta dos formas de la función LABEL, una forma no
anidada y otra anidada. Por ejemplo, la forma no anidada, LABEL01 :, debe usarse con la función
JUMP no anidada, ——————>>LABEL01; la forma anidada, LABEL01 : (anidada), debe
usarse con la función JUMP anidada, ———N——>>LABEL01.
La instrucción LABEL no tiene entradas ni salidas; además, antes o después de una etiqueta
(LABEL) no puede haber nada en un escalón.
LABEL no anidada:

???????:
???????:

LABEL anidada:

???????:(anidada)

Ejemplo
En el siguiente ejemplo, cuando JUMP TEST1 está habilitada, la exploración salta hacia adelante a
TEST1 : LABEL (anidada), lo cual significa que el escalón entre JUMP y LABEL no es explorado.

%I0001
N TEST1

%M0004 %M0210
ADD
INT
%R0001
I1
+13069 %R0010
Q
CONST +00878
I2
+00100

TEST1 : (anidada)

12-36 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

COMMENT (COMENTARIO)
Los comentarios son de utilidad para añadir explicaciones, notas, información sobre revisiones, etc.
a sus programas de contactos. El uso de los comentarios es aconsejable ya que proporcionan
valiosa información a aquellos que tengan que localizar fallos o actualizar el sistema en el futuro.
Además, dado que la memoria humana no es perfecta, los comentarios son referencias valiosas
incluso para el creador del programa de contactos.

Nota
Para conservar la memoria del PLC, las anotaciones (comentarios, alias y
descripciones) no se escriben en el PLC. Por tanto, para poder ver estas
anotaciones deberá tener una copia de la carpeta original del programa (que
incluye las anotaciones) en su ordenador. Entonces, cuando conecte su ordenador
al PLC, los enlaces a las anotaciones será automáticamente realizados por su
software de programación.

Crear un comentario estándar


Un comentario puede tener un máximo de 2048 caracteres de texto. En Logicmaster está
representado en la lógica de esquema de contactos de la siguiente manera:
(* COMMENT *)

Crear un comentario
1. Cree un nuevo escalón. Un escalón COMMENT no puede contener otra lógica además de la
instrucción COMMENT.
2. Inserte COMMENT, que se encuentra en el grupo de instrucciones control.
3. Acepte el escalón pulsando la tecla Escape.
4. Mueva el cursor sobre la instrucción (* COMMENT *) que acaba de crear y pulse la tecla de
Zoom (F10) para entrar en la pantalla de editor de comentarios.
5. Introduzca el texto de su comentario. Observe que las líneas no pasan automáticamente en el
editor de comentario. Debe pulsar la tecla Intro al final de la línea para comenzar a escribir el
texto en la línea siguiente.
6. Una vez terminado, pulse Escape para salir del editor de comentario y guardarlo.
Una vez creado, el texto COMMENT puede ser leído o editado moviendo el cursor a (*
COMMENT *) y seleccionando el Zoom (F10). Los comentarios pueden también imprimirse
mediante el menú imprimir del Logicmaster.

GFK-0467M-SP Capítulo 12 Funciones de control 12-37


12

Crear un comentario largo para usarlo en salidas impresas de


Logicmaster
En Logicmaster puede incluirse un texto más largo en impresiones utilizando un fichero de texto de
anotaciones.
1. Cree el comentario (véase la sección anterior para los detalles de la creación del comentario):
A. Introduzca el texto del comentario en el punto donde debe comenzar el texto del otro
fichero.
B. En una nueva línea, introduzca \I (o \i), la unidad seguida de dos puntos, una barra
inversa, el subdirectorio o carpeta, una barra inversa y el nombre del fichero, como se
muestra en este ejemplo:
\I d:\text\commnt1
(La designación de la unidad no es necesaria si el fichero se encuentra en la misma unidad
que la carpeta del programa.)
C. Pulse Escape para salir del editor de comentarios y guardar el texto del comentario.
2. Abra un procesador de textos y cree un fichero de texto.
3. Guarde el fichero de texto en un formato .txt, dándole el nombre introducido en el comentario,
y guardándolo en la unidad y en la ruta especificada en el comentario.

12-38 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ (PETICIÓN DE SERVICIO)


La instrucción de petición de servicio es una instrucción de propósito general que puede realizar
una amplia variedad de instrucciones especiales (servicios) que no están disponibles como bloques
de función individuales. Utilice la función petición de servicio (SVCREQ) para solicitar uno de los
siguientes servicios especiales del PLC:

Tabla 12-4. Funciones de petición de servicio


Función Descripción
1 Modificar/leer el temporizador de barrido constante
2 Leer los valores de la ventana.
3 Modificar el modo de la ventana de comunicaciones del programador y el valor
del temporizador.
4 Modificar el modo de la ventana de comunicaciones del sistema y el valor del
temporizador.
6 Modificar/leer el estado de la tarea de suma de comprobación y el número de
palabras para suma de comprobación
7 Modificar/leer el reloj calendario
8 Reinicializar el temporizador watchdog
9 Leer el tiempo de barrido desde el comienzo del barrido
10 Leer el nombre de carpeta
11 Leer ID del PLC
12 Leer el estado Run del PLC.
13 Parada del PLC
14 Borrar tablas de fallos
15 Leer la última entrada registrada en la tabla de fallos
16 Leer el reloj de tiempo transcurrido
18 Leer el estado de sobrecontrol de E/S
23 Leer la suma de comprobación maestra
24 Reinicializar el módulo inteligente
26/30 Interrogar E/S
29 Leer tiempo transcurrido con la corriente desconectada
45 Saltar la siguiente exploración de entradas y salidas. (Suspender E/S.)
46 Acceso rápido al estado de la placa de fondo.
48 Reinicializar auto reset tras fallo fatal
49 Estadística de auto reset

GFK-0467M-SP Capítulo 12 Funciones de control 12-39


12

Descripción general de SVC REQ


La función SVCREQ tiene tres parámetros de entrada y un parámetro de salida. Cuando la
SVCREQ recibe flujo de energía, se pide al PLC que ejecute la función FNC indicada. Los
parámetros de esta función están situados al comienzo de la referencia indicada para PARM. La
función SVCREQ pasa el flujo de energía a no ser que se especifique un número de función
incorrecto, parámetros incorrectos o referencias fuera de límites. Las causas adicionales de fallo
están descritas en la páginas siguientes.
La referencia dada para PARM puede representar cualquier tipo de memoria de palabra (%R, %AI
o %AQ). Esta referencia es la primera de un grupo que constituye el “bloque de parámetros” para
la función. Posiciones de 16 bits sucesivas almacenan parámetros adicionales. El número total de
referencias requerido dependerá del tipo de función SVCREQ que se esté usando.
Los bloques de parámetros pueden utilizarse como entradas para la función y para la posición a que
pueden transferirse los datos después de ejecutarse la función. Por tanto, los datos obtenidos con
esta función están accesibles en idéntica posición a la especificada para PARM.
_____
| |
(habilitar) —| SVC_|— (ok)
| |
| REQ |
| |
(número de servicio) —|FNC |
| |
| |
(referencia inicial)-|PARM |
| |
|_____|

Parámetros
Parámetro Descripción
habilitar Cuando habilitar está activado, se ejecuta la petición de servicio.
FNC Cada tipo de petición de servicio tiene un único número de función, que debe
programarse en la entrada FNC. FNC puede contener una constante o una dirección de
referencia que contenga el número de función del servicio solicitado.
PARM PARM contiene la referencia inicial del bloque de parámetros para el servicio pedido.
ok La salida ok se activa cuando la función se ejecuta sin error.

Tipos de memorias válidas


Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-
guno
habilitar •
FNC • • • • • • • • •
PARM • • • • • • • •
ok • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

12-40 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Ejemplo
En el siguiente ejemplo, cuando el contacto habilitar %I0001 está ACTIVADO, la función
SVCREQ número 7, especificada en la entrada FNC, se ejecuta. El bloque de parámetros de la
función comienza en %R0001 (especificado en PARM). La bobina de salida %Q0001 se
ACTIVA, si la operación se ejecuta correctamente.

| _____
|%I0001 | | %Q0001
|——| |———| SVC_|———————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 00007 | |
| | |
| | |
|%R0001 —|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-41


12

SVCREQ #1: Modificar/leer el temporizador de barrido constante


A partir de la CPU 90-30 versión 8.0, utilice la función SVCREQ #1 para:
• Deshabilitar el modo de BARRIDO CONSTANTE.
• Habilitar el modo de BARRIDO CONSTANTE y usar el valor antiguo del temporizador.
• Habilitar el modo de BARRIDO CONSTANTE y usar el valor nuevo del temporizador.
• Definir sólo un nuevo valor del temporizador.
• Leer el estado del modo de BARRIDO CONSTANTE y el valor del temporizador.

Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 1, comenzando por la versión 8.0.

El bloque de parámetros tiene una longitud de dos palabras.


Para deshabilitar el modo de BARRIDO CONSTANTE, introduzca la función SVCREQ #1 con este
bloque de parámetros:

0 dirección
ignorada dirección + 1

Para habilitar el modo de BARRIDO CONSTANTE, introduzca la función SVCREQ #1 con este
bloque de parámetros:

1 dirección
0 o el valor del dirección + 1
temporizador

Nota
Si el temporizador debe utilizar un nuevo valor, introdúzcalo en la segunda
palabra. Si no desea modificar el valor del temporizador, introduzca 0 en la
segunda palabra. Si el valor del temporizador todavía no existe, al introducir 0 la
función pone la salida OK en OFF.

Para modificar el valor del temporizador sin modificar la selección para el estado de modo de
barrido, introduzca la función SVCREQ #1 con este bloque de parámetros:

2 dirección
nuevo valor de dirección + 1
temporizador

12-42 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Para leer el estado y valor actuales del temporizador sin modificar ninguno de ellos, introduzca la
función SVCREQ #1 con este bloque de parámetros:
3 dirección
ignorada dirección + 1

Nota
Después de utilizar la función SVCREQ #1 con el bloque de parámetros de la
página anterior, las CPUs de versión 8 y superior proporcionarán los valores de
retorno 0 para el barrido normal y 1 para el barrido constante. No confunda estos
valores con los valores de entrada que se muestran a continuación.

La función se ejecutará con éxito, a no ser que:


1. Como operación solicitada se introduzca un valor distinto de 0, 1, 2 ó 3:

0 Deshabilitar el modo de BARRIDO CONSTANTE.


1 Habilitar el modo de BARRIDO CONSTANTE.
2 Definir sólo un nuevo valor del temporizador.
3 Leer el modo de BARRIDO CONSTANTE y el valor del
temporizador. (Véase la Nota más arriba).

2 El valor de tiempo de barrido sea mayor que 2550ms (2.55 segundos).


3 El tiempo de barrido constante esté habilitado sin que se haya programado ningún valor de
temporizador o con un antiguo valor de 0 para el temporizador.
Después de ejecutar la función, la función devuelve el estado y el valor del temporizador en las
mismas referencias del bloque de parámetros:

0 = deshabilitada dirección
1 = habilitada
valor actual del dirección + 1
temporizador

Si la dirección de palabra + 1 contiene el valor hexadecimal FFFF, no se ha programado ningún


valor del temporizador.

GFK-0467M-SP Capítulo 12 Funciones de control 12-43


12

Ejemplo
Este ejemplo muestra la lógica en un bloque de programa. Cuando se habilita el contacto
OV_SWP, se lee el temporizador de barrido constante, se aumenta el temporizador en dos
milisegundos y se devuelve el nuevo valor del temporizador al PLC. El bloque de parámetros se
encuentra en la memoria local en la posición %R3050. Dado que las funciones MOVE y ADD
requieren tres posiciones de contacto horizontales, la lógica del ejemplo emplea una bobina interna
digital %M0001 como posición temporal para almacenar el resultado satisfactorio de la línea del
primer escalón. En cualquier barrido en el cual no se haya activado OV_SWP, se desactiva
%M0001.

| _____ _____ _____


|OV_SWP | | | | | | %M0001
|——| |———|MOVE_|—————————————————| SVC_|——————————| ADD_|——————————————————( )—
| | WORD| | REQ | | INT |
| | | | | | |
| CONST —|IN Q|—%R3050 CONST —|FNC | %R3051—|I1 Q|—%R3051
| 0003 | LEN | 0001 | | | |
| | 0001| | | | |
| |_____| %R3050—|PARM | CONST —|I2 |
| |_____| 0002 |_____|
| _____ _____
| M0001 | | | |
|——| |———|MOVE_|—————————————————|SVC_ |—
| |WORD | | REQ |
| | | | |
| CONST —|IN Q|—%R3050 CONST —|FNC |
| 0001 | LEN | 0001 | |
| | 0001| | |
| |_____| %R3050—|PARM |
| |_____|

12-44 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #2: Leer los valores de la ventana

Utilice la función SVCREQ #2 para obtener los valores del tiempo para el modo de ventana actual
para la ventana de comunicaciones con el programador y la ventana de comunicaciones con el
sistema.

Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 2, comenzando por la versión 8.0.

Existen tres modos para cada ventana:

Nombre modo Valor Descripción


Modo limitado 0 El tiempo de ejecución de la ventana está limitado a su respectivo valor
por defecto o a un valor definido mediante la función SVCREQ #3 para
la ventana de comunicaciones del programador o la función SVCREQ
#4 para la ventana de comunicaciones del sistema. La ventana finalizará
cuando no haya más tareas a realizar.
Modo constante 1 Cada ventana operará en un modo EJECUTAR HASTA TERMINAR y
el PLC alternará entre las dos ventanas durante un tiempo igual a la
suma de los valores de tiempo de cada ventana. Si una ventana se pone
en modo CONSTANTE , las dos ventanas restantes se pondrán
automáticamente en modo CONSTANTE. Si el PLC opera en modo
VENTANA CONSTANTE y el tiempo de ejecución de una ventana
determinada no se ha definido utilizando la función SVCREQ asociada,
el tiempo por defecto para esa ventana se usa en el cálculo del tiempo
de la ventana constante.
Modo ejecutar hasta 2 Independientemente del tiempo de ventana asociado a una ventana
terminar determinada, sea por defecto o definido mediante la función de petición
de servicio, la ventana se ejecutará hasta que todas las tareas dentro de
la ventana hayan finalizado.

Una ventana está deshabilitada cuando el valor de tiempo es cero.


El bloque de parámetros tiene una longitud de tres palabras:
Byte alto Byte bajo
Ventana de programador Modo Valor en ms dirección
Ventana de comunicaciones del sistema Modo Valor en ms dirección + 1
Reservado* *Véase la Nota *Véase la Nota dirección + 2
* Nota. La dirección + 2 palabra está reservada para el uso del sistema. Aquí se devolverá todo ceros.
Todos los parámetros son parámetros de salida. No es preciso introducir valores en el bloque de
parámetros para programar esta función. Los valores de salida para ambas ventanas vienen dados
en milisegundos.

GFK-0467M-SP Capítulo 12 Funciones de control 12-45


12

Ejemplo
En el siguiente ejemplo, cuando está activada la habilitación de la salida %Q0102, el sistema
operativo del PLC coloca los valores de tiempo actual de las tres ventanas en el bloque de
parámetros que comienza en la posición %R0100. Ejemplos adicionales que ilustran la función leer
los valores de la ventana están incluidos en las siguientes tres descripciones de la función SYS
REQ.
| _____
|%Q0102 | |
|——| |———| SVC_|
| | REQ |
| | |
| CONST —|FNC |
| 0002 | |
| | |
| %R0100—|PARM |
| |_____|
|

12-46 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #3: Modificar el modo de la ventana de comunicaciones del programador y el


valor del temporizador.

Utilice la función SVCREQ #3 para modificar el modo de la ventana de comunicaciones del


programador y el valor del temporizador. El cambio se producirá en el barrido de la CPU que sigue
al barrido en el que se llamó la función.

Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 3, comenzando por la versión 8.0.

La función SVCREQ #3 pasará flujo de energía hacia la derecha a menos que se seleccione un
modo distinto de 0 (Limitado), 1 (Constante) o 2 (Ejecutar hasta terminar).
El bloque de parámetros tiene una longitud de una palabra.
Para deshabilitar la ventana del programador, introduzca la función SVCREQ #3 con este bloque
de parámetros:

Byte alto Byte bajo

0 0 dirección

Para habilitar la ventana del programador, introduzca la función SVCREQ #3 con este bloque de
parámetros:

Byte alto Byte bajo

Modo Valor de 1 hasta 255 ms dirección

GFK-0467M-SP Capítulo 12 Funciones de control 12-47


12

Ejemplo
En el siguiente ejemplo, cuando %M0125 se activa, se habilita la ventana de comunicaciones del
programador y se le asigna un valor de 25ms. El bloque de parámetros se encuentra en la posición
de memoria %R5051.

| %I0001 %M0125
|——| |—————————————————————————————————————————————————————————————————(↑)—
|
| _____ _____
| %M0125 | | | | %T0002
|——| |———|MOVE_|———————————————————| SVC_|—————————————————————————————( )—
| | INT | | REQ |
| | | | |
| CONST —|IN Q|— %R5051 CONST —|FNC |
|+00025 | LEN | 00003 | |
| | 0001| | |
| |_____| %R5051—|PARM |
| |_____|

Para deshabilitar la ventana de comunicaciones del programador, utilice la petición de servicio 3


para asignar el valor cero (0). En este ejemplo, cuando %M0126 se activa, se habilita la ventana de
comunicaciones del programador y se le asigna un valor de 0 ms. El bloque de parámetros se
encuentra en la posición de memoria %R5051.

| %I0002 %M0126
|——| |—————————————————————————————————————————————————————————————————(↑)—
|
| _____ _____
| %M0126 | | | | %T0002
|——| |———|MOVE_|———————————————————| SVC_|—————————————————————————————( )—
| | INT | | REQ |
| | | | |
| CONST —|IN Q|— %R5051 CONST —|FNC |
|+00000 | LEN | 00003 | |
| | 0001| | |
| |_____| %R5051—|PARM |
| |_____|

12-48 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #4: Modificar el modo de la ventana de comunicaciones del sistema y el valor


del temporizador
Utilice la función SVCREQ #4 para modificar el modo de la ventana de comunicaciones del
sistema y el valor del temporizador. El cambio se producirá en el barrido de la CPU que sigue al
barrido en el que se llamó la función.
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 4, comenzando por la versión 8.0.

La función SVCREQ #4 pasará flujo de energía hacia la derecha a menos que se seleccione un
modo distinto de 0 (Limitado), 1 (Constante) o 2 (Ejecutar hasta terminar).
El bloque de parámetros tiene una longitud de una palabra.
Para deshabilitar la ventana de comunicaciones del sistema, introduzca la función SVCREQ #4 con
este bloque de parámetros:

Byte alto Byte bajo


0 0 dirección

Para habilitar la ventana de comunicaciones del sistema, introduzca la función SVCREQ #4 con
este bloque de parámetros:

Byte alto Byte bajo


Modo Valor de 1 hasta 255 ms dirección

GFK-0467M-SP Capítulo 12 Funciones de control 12-49


12

Ejemplo
En el siguiente ejemplo, cuando la salida habilitar %M0125 se activa, se lee el modo y el valor del
temporizador de la ventana de comunicaciones del sistema. Si el valor del temporizador es mayor o
igual a 25 ms, el valor no se modifica. Si es menor que 25 ms, el valor se modifica a 25 ms. En
ambos casos, cuando finaliza la ejecución del escalón la ventana se habilita. El bloque de
parámetros para las tres ventanas está en la posición %R5051. Dado que el modo y el temporizador
para la ventana de comunicaciones del sistema es el segundo valor en el bloque de parámetros
devuelto de la función leer los valores de ventana (función #2), la posición del tiempo de la ventana
existente para la ventana de comunicaciones del sistema está en el byte bajo de %R5052.

| %I0001 %M0125
|——| |——————————————————————————————————————————————————————————————(↑)—
|
| _____ _____ _____
| %M0125 | | | | | |
|——| |———| SVC_|——————————| AND_|——————————————————| AND_|
| | REQ | | WORD| | WORD|
| | | | | | |
| CONST —|FNC | %R5052—|I1 Q|— %R5060 %R5052—|I1 Q|—%R50061
| 0002 | | | | | |
| | | | | CONST —|I2 |
| %R5051—|PARM | CONST —|I2 | FF00 | |
| |_____| 00FF |_____| |_____|
|
|
| _____ _____ _____
| %M0125 | | | | | |
|——| |———| LT | +————————————| OR |————————————————|SVC_ |—
| |WORD | | |WORD | | REQ_|
| | | | | | | |
| %R5060—|I1 Q|———————+ %R5061—|I1 Q|— %R5052 CONST —|FNC |
| | | | | 0004 | |
| CONST —|I2 | CONST —|I2 | | |
| 0025 | | 0025 | | %R5052—|PARM |
| |_____| |_____| |_____|
|

12-50 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #6: Modificar/leer número de palabras para suma de comprobación

Utilice la función SVCREQ con el número de función 6 para:


• Leer el cómputo actual de palabras.
• Establecer un nuevo cómputo de palabras.
La ejecución será satisfactoria, a no ser que se introduzca como operación solicitada algún número
distinto de 0 o de 1 (véase más abajo).
Para las funciones de la tarea de suma de comprobación, el bloque de parámetros tiene una longitud
de dos palabras.

Para leer el cómputo actual de palabras.


Introduzca la función SVCREQ 6 con este bloque de parámetros:
0 dirección
ignorada dirección + 1

Después de que la función se haya ejecutado, ésta devuelve la suma de comprobación actual a la
segunda palabra del bloque de parámetros. No se especifica ningún rango para la función leer; el
valor devuelto es el número de palabras del que se está haciendo la suma de comprobación.
0 dirección
número de palabras actual dirección + 1

Para establecer un nuevo cómputo de palabras.


Introduzca la función SVCREQ 6 con este bloque de parámetros:
1 dirección
nuevo número de palabras dirección + 1
(0 - 32)

El introducir 1 hace que el PLC ajuste el número de palabras de la que va a efectuarse la suma de
comprobación al valor dado en la segunda palabra del bloque de parámetros. Para las CPUs de las
Series 90-30, el valor de la segunda palabra puede ser de 0 a 32. Si el valor está fuera del rango, se
generará un error. Para la CPU211 de las Series 90-20, el valor puede ser 0 ó 4.

Nota
Esta petición de servicio no está disponible en los PLCs Micro.

GFK-0467M-SP Capítulo 12 Funciones de control 12-51


12

Ejemplo
En el siguiente ejemplo, cuando se activa el contacto habilitar FST_SCN, se construyen los bloques
de parámetros para la función de tarea de suma de comprobación. Más adelante en el programa,
cuando la entrada %I0137 se activa, el número de palabras objeto de la suma de comprobación es
leído por el sistema operativo del PLC. Este número es aumentado en 16, colocándose los
resultados de la función ADD_INT en el parámetro “mantener el nuevo cómputo para ajuste”. El
segundo bloque de petición de servicio solicita al PLC establecer un nuevo cómputo de palabras.

| _____ _____
| FST_SCN | | | |
|———| |———| XOR_|—————————————————|MOVE_|
| | | | |
| | WORD| | INT |
| | | | |
| %R0150 —|I1 Q|— %R0150 CONST —|IN Q|— %R0152
| | | +00001 | LEN |
| | | |00001|
| %R0150 —|I2 | |_____|
| |_____|
|
.
.

| _____ _____ _____


| %I0137 | | | | | |
|———| |——————| SVC_|—————————| ADD_|—————————————————| SVC_|—
| | | | | | |
| | REQ | | INT | | REQ |
| | | | | | |
| CONST —|FNC | %R0151 —|I1 Q|— %R0153 CONST —|FNC |
| 00006 | | | | 00006 | |
| | | | | | |
| %R0150 —|PARM | CONST —|I2 | %R0152 —|PARM |
| |_____| +00016 |_____| |_____|
|

Los bloques de parámetros del ejemplo están situados en la dirección %R0150. Tienen el siguiente
contenido:
0 = leer el cómputo actual %R0150
Mantener cómputo actual %R0151

1 = definir cómputo actual %R0152


Mantener nuevo cómputo para ajuste %R0153

12-52 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #7: Modificar/leer el reloj calendario


Utilice la función SVCREQ con el número de función 7 para leer y ajustar el reloj calendario del
PLC.

Nota
Esta función está disponible sólo para la CPU 331 o CPUs 90-30 superiores y en
las CPUs del PLC Micro de las Series 90 de 28 puntos (IC693UDR005,
IC693UAA007 y IC693UDR010) y en las CPUs del PLC Micro de las Series 90
de 23 puntos (IC693UAL006).

La función se ejecutará con éxito, a no ser que:


1. Como operación solicitada se introduzca un número distinto de 0 ó 1 (véase más abajo).
2. Se especifique un formato de datos no válido.
3. Los datos proporcionados no estén en el formato especificado.
4. Se haya introducido un dato incorrecto, como 02/29/01, que erróneamente indica un día de año
bisiesto en el año 2001 (2001 no es un año bisiesto).

Para las funciones de fecha/hora, la longitud del bloque de parámetros depende del formato de
datos. El formato BCD requiere 6 palabras; ASCII comprimido requiere 12 palabras.

0 = leer hora y fecha dirección


1 = fijar hora y fecha
1 = formato BCD dirección + 1
3 = formato ASCII comprimido
Datos direcc. + 2 hasta el final

En la palabra 1, especifique si la función debe leer o modificar los valores.


0 = leer
1 = modificar

En la palabra 2, especifique el formato de datos:


1 = BCD
3 = ASCII comprimido con espacios y dos puntos intercalados

Las palabras 3 hasta el final del bloque de parámetros contienen datos de salida que se obtienen
mediante una función de lectura o nuevos datos proporcionados por una función de modificar. En
ambos casos, el formato de estas palabras de datos es el mismo. Cuando se lee la fecha y la hora,
las palabras (dirección + 2) hasta (dirección + 8) del bloque de parámetros son ignoradas al
introducirlas.

GFK-0467M-SP Capítulo 12 Funciones de control 12-53


12

Ejemplo
En el siguiente ejemplo, cuando lo ha llamado una lógica previa, se forma un bloque de parámetros
para el reloj calendario, para solicitar primero la fecha y la hora actuales, y después poner el reloj a
las 12 horas del mediodía usando el formato BCD. El bloque de parámetros se encuentra en la
posición de datos globales %R0300. La tabla NOON se ha configurado en algún otro punto del
programa para contener los valores 12, 0 y 0. (La tabla NOON también debe contener los datos en
%R0300.) El formato BCD requiere seis posiciones de memoria contiguas para el bloque de
parámetros.

|
|
| _____ _____
|FST_SCN | | | |
|——| |———+MOVE_+—————————————————+MOVE_+-
| | | | |
| | INT | | INT |
| | | | |
| CONST -|IN Q+- NOON CONST -+IN Q+- MIN_SEC
| | | | |
| +04608 | LEN | +00000 | LEN |
| |00001| |00001|
| |_____| |_____|
|
|
|
| _____ _____ _____
|%I0016 | | | | | | %T0001
|——| |———+MOVE_+—————————————————+MOVE_+—————————————————+ SVC_+—————————————( )-
| | | | | | |
| | INT | | INT | | REQ |
| | | | | | |
| CONST -+IN Q+- %R0300 CONST -+IN Q+- %R0301 CONST -+FNC |
| | | | | | |
| +00000 | LEN | +00001 | LEN | +00007 | |
| |00001| |00001| | |
| |_____| |_____| %R0300 -+PARM |
| |_____|
|
|
|
| _____ _____
|%T0001 %I0017 | | | |
|——| |————| |————+ AND_+—————————————————+ ADD_+-
| | | | |
| | WORD| | INT |
| | | | |
| %R0303 -+I1 Q+- %R0303 %R0303 -+I1 Q+- %R0303
| | | | |
| CONST -+I2 | NOON -+I2 |
| 00FF |_____| |_____|
|
|
|
| _____ _____ _____
|%T0001 %I0017 | | | | | |
|——| |—————| |———+MOVE_+—————————————————+MOVE_+—————————————————+ SVC_+–
| | INT | | INT | | REQ |
| | | | | | |
| MIN_SEC-+IN Q+- %R0304 CONST -+IN Q+- %R0300 CONST -+FNC |
| | LEN | +00001 | LEN | +00007 | |
| |00002| |00001| | |
| |_____| |_____| %R0300 -+PARM |
| |_____|
|

12-54 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Contenido del bloque de parámetros


En las siguientes páginas se muestra el contenido del bloque de parámetros para los diferentes
formatos de datos. Para ambos tipos de formatos:
• Las horas se almacenan en formato de 24 horas.
• El día de la semana es un valor numérico:

Valor Día de la semana


1 Domingo
2 Lunes
3 Martes
4 Miércoles
5 Jueves
6 Viernes
7 Sábado

Para modificar/leer la fecha y la hora mediante el formato BCD:


En el formato BCD, cada elemento de hora y fecha ocupa un único byte. Este formato requiere seis
palabras. El último byte de la sexta palabra no se utiliza. Cuando se fija la fecha y la hora, este byte
se ignora; cuando se lee la fecha y la hora, la función devuelve un carácter nulo (00).

Ejemplo de bloque de parámetros:


Leer fecha y hora en formato BCD
Byte alto Byte bajo (Domingo, 3 de julio, 1988, a las 2:45:30 p.m.)
1 = cambiar o 0 = leer dirección 0
1 dirección + 1 1
mes año dirección + 2 07 88
horas día del mes dirección + 3 14 03
segundos minutos dirección + 4 30 45
(cero) día de la semana dirección + 5 00 01

GFK-0467M-SP Capítulo 12 Funciones de control 12-55


12

Para modificar/leer la fecha y la hora mediante el formato ASCII


comprimido con dos puntos intercalados
En el formato ASCII comprimido, cada dígito de los datos de hora y fecha es un byte formateado
en ASCII. Además, los espacios y dos puntos están intercalados en los datos para permitir
transferirlos inalterados a un dispositivo de visualización o impresión. Este formato requiere doce
palabras.
Ejemplo de bloque de parámetros:
Leer fecha y hora en el formato ASCII comprimido
Byte alto Byte bajo (Lunes, 5 de octubre 2, 1989 a las 23:13:00)
1 = cambiar o 0 = leer dirección 0
3 dirección + 1 3
año año dirección + 2 39 38
mes (espacio) dirección + 3 31 20
(espacio) mes dirección + 4 20 30
día del mes día del mes dirección + 5 32 30
horas (espacio) dirección + 6 32 20
: horas dirección + 7 3A 33
minutos minutos dirección + 8 33 31
segundos : dirección + 9 30 3A
(espacio) segundos dirección + 10 20 30
día de la semana día de la semana dirección + 11 32 30

12-56 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #8: Reinicializar el temporizador watchdog


Utilice la función SVCREQ 8 para reinicializar el temporizador watchdog durante el barrido.
Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 8, comenzando por la versión 8.0.
Cuando el temporizador watchdog termina el cómputo, el PLC se para sin avisar. Esta función
permite al temporizador continuar funcionando durante una tarea que requiera mucho tiempo (por
ejemplo, mientras se espera una respuesta de una línea de comunicaciones).

Precaución
Asegúrese de que la reinicialización del temporizador no afecta
negativamente al proceso controlado.
Esta función no tiene ningún bloque de parámetros asociado; sin embargo, el software de
programación requiere que se realice una entrada para PARM. Introduzca aquí cualquier referencia
apropiada; no será utilizada.

Ejemplo
En el siguiente ejemplo, cuando %Q0127 se ACTIVA, el temporizador watchdog se reinicializa.

| _____
| %Q0127 | |
|——| |———-—————————| SVC_|—
| | REQ |
| | |
| CONST —|FNC |
| 0008 | |
| | |
| %AI001—|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-57


12

SVCREQ #9: Leer el tiempo de barrido desde el comienzo del barrido

Utilice la función SVCREQ #9 para leer el tiempo en milisegundos desde el comienzo del barrido.
Los datos se presentan en formato de palabra de 16 bits.

Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 9, comenzando por la versión 8.0.

El bloque de parámetros es sólo un bloque de parámetros de salida; tiene una longitud de una
palabra.

Tiempo desde el comienzo dirección


de barrido

Ejemplo
En el siguiente ejemplo, el tiempo transcurrido desde el comienzo del barrido se lee siempre en la
posición %R5200. Si es mayor que el valor en %R5201, la bobina interna %M0200 se activa.
| _____ _____
|%Q0102 | | | |
|——| |———| SVC_|——————————| GT_ |—
| | REQ | | WORD|
| | | | | %M0200
| CONST —|FNC | %R5200—|I1 Q|——————————————————————————————————————————( )—
| 0009 | | | |
| | | | |
| %R5200—|PARM | %R5201—|I2 |
| |_____| |_____|
|

12-58 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #10: Leer el nombre de carpeta

Utilice la función SVCREQ #10 para leer el nombre de la carpeta que está siendo actualmente
ejecutada.

Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 10, comenzando por la versión 8.0.

El bloque de parámetros de salida tiene una longitud de cuatro palabras. Este bloque devuelve ocho
caracteres ASCII; el último es un carácter cero (00h). Si el nombre de programa tiene menos de
siete caracteres, se añaden ceros al final.
Byte bajo Byte alto

carácter 1 carácter 2 dirección

carácter 3 carácter 4 dirección + 1

carácter 5 carácter 6 dirección + 2

carácter 7 00 dirección + 3

Ejemplo
En el siguiente ejemplo, cuando el contacto habilitar %I0301 se ACTIVA, se carga el valor 10 en la
posición del registro %R0099, que es el código de función correspondiente a la función leer
nombre de carpeta. En el siguiente escalón, cuando %I0102 está ACTIVADO, la petición de
servicio lee el nombre de la carpeta y lo almacena en el bloque de memoria de cuatro palabras que
comienza en %R0100 (especificado en PARM).

| %I0001 %I0301
|——| |——————————————————————————————————————————————————————————————(↑)—
|
| _____ __________
| %I0301 | |
|——| |———|MOVE_|—
| | WORD|
| | |
| CONST —|IN Q|— %R0099
| 0010 | LEN |
| | 0001|
| |_____|
|
|
|%I0102 | |
|——| |———| SVC_|—
| | REQ |
| | |
| %R0099—|FNC |
| | |
| | |
| %R0100—|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-59


12

SVCREQ #11: Leer ID del PLC

Utilice la función SVCREQ #11 para leer el nombre del PLC de las Series 90 que está ejecutando
el programa.

Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 11, comenzando por la versión 8.0.

El bloque de parámetros de salida tiene una longitud de cuatro palabras. Este bloque devuelve ocho
caracteres ASCII; el último es un carácter cero (00h). Si el ID del PLC tiene menos de siete
caracteres, se añaden ceros al final.
Byte bajo Byte alto

carácter 1 carácter 2 dirección

carácter 3 carácter 4 dirección + 1

carácter 5 carácter 6 dirección + 2

carácter 7 00 dirección + 3

Ejemplo
En el siguiente ejemplo, cuando el contacto habilitar %I0001 se DESACTIVA, se carga el valor 11
en la posición del registro %R0099, que es el código de función correspondiente a la función leer
ID del PLC. En el siguiente escalón, cuando %Q0102 está ACTIVADO, la petición de servicio lee
la ID del PLC y la almacena en el bloque de memoria de cuatro palabras que comienza en %R0100
(especificado en PARM).

| %I0001 %M0301
|——| |——————————————————————————————————————————————————————————————(↓)—
|
| _____ __________
| %M0301 | |
|——| |———|MOVE_|
| | WORD|
| | |
| CONST —|IN Q|— %R0099
| 0011 | LEN |
| | 0001|
| |_____|
|
| _____
|%Q0102 | |
|——| |———| SVC_|—
| | REQ |
| | |
| %R0099—|FNC |
| | |
| | |
| %R0100—|PARM |
| |_____|
|

12-60 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #12: Leer el estado Run del PLC.

Utilice la función SVCREQ #12 para leer el estado RUN actual de la CPU del PLC.

Nota
De las CPUs a que hace relación este manual, sólo las CPUs 90-30 soportan la
petición de servicio 12, comenzando por la versión 8.0.

El bloque de parámetros es sólo un bloque de parámetros de salida; tiene una longitud de una
palabra. Sólo se pueden obtener dos resultados válidos de la ejecución de esta petición de servicio:

1 = run/deshabilitado dirección
2 = run/habilitado

Ejemplo
En el siguiente ejemplo, cuando %I0102 se ACTIVA, la petición de servicio lee el estado de
ejecución del PLC y coloca el resultado en la dirección de memoria %R402. Si el PLC está en el
modo Run/Deshabilitado, %R402 contendrá el valor 1. Si el PLC está en el modo Run/Habilitado,
%R402 contendrá el valor 2.

| _____ _____
|%I0102 | |
|——| |———| SVC_|—
| | REQ | __________
| | |
| CONST —|FNC |
| 0012 | |
| | |
| %R402—|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-61


12

SVCREQ #13: Parada (Stop) del PLC

Utilice la función SVCREQ #13 para parar el PLC al final del próximo barrido. Todas las salidas
pasan a sus estados por defecto especificados cuando se llega al comienzo del siguiente barrido del
PLC. Un fallo informativo es colocado en la tabla de fallos del PLC, indicado que se ejecutó un
bloque de función “PARADA DEL PLC”. La exploración de E/S continuará como se ha
configurado.
Esta función no posee ningún bloque de parámetros.

Ejemplo
En el siguiente ejemplo, cuando se produce un fallo “Pérdida de módulo E/S", se ejecuta la función
SVCREQ # 13. Dado que no se necesita ningún bloque de parámetros, la entrada PARM no se
utiliza; sin embargo, el software de programación requiere que se realice una entrada para PARM.
Este ejemplo utiliza un JUMP (SALTO) hasta el final del programa para forzar una parada del PLC
si se ejecuta correctamente la función parada del PLC. Estos JUMP y LABEL son necesarios ya
que la transición al modo parada STOP no se produce hasta el final del barrido en que se ejecuta la
función. Una vez que el PLC recibe este comando STOP de la petición de servicio, ejecutará un
barrido más y después se parará (véase la Nota inferior).

|
|LOS_MD %T0001
|
|——| |——————————————————————————————————————————————————————————————————————(↑)—
|
| _____
|%T0001 | |
|——| |———————| SVC_|——————————————————————————————————————————————————>> END_PRG
| | |
| | REQ |
| | |
| CONST —|FNC |
| 0013 | |
| | |
| %R1001 —|PARM |
| |_____|
|
.
.
.
|
| END_PRG:
|
|
| [ FIN DE LA LOGICA DEL PROGRAMA ]
|

Nota
Para asegurar que el contacto %S0002 LST_SCN funcionará correctamente, el
PLC ejecutará un barrido adicional después del barrido en el que se ejecutó la
función SVCREQ #13.

12-62 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #14: Borrar tablas de fallos

Utilice la función SVCREQ #14 para borrar bien la tabla de fallos del PLC, o la tabla de fallos de
E/S. La salida SVCREQ se ACTIVA a no ser que se introduzca como operación solicitada algún
número distinto de 0 o de 1 (véase más abajo).
Para esta función, el bloque de parámetros tiene una longitud de una palabra. Se trata sólo de un
bloque de parámetros de entrada.
0 = borrar tabla de fallos del PLC. dirección
1 = borrar tabla de fallos de E/S.

Ejemplo
En el siguiente ejemplo, cuando los contactos %I0346 y %I0349 están activados, se borra la tabla
de fallos del PLC. Cuando los contactos %I0347 y %I0349 están activados, se borra la tabla de
fallos de E/S. Cuando los contactos %I0348 y %I0349 están activados, se borran ambas tablas de
fallos.
El bloque de parámetros para la tabla de fallos del PLC está situada en %R0500, y para la tabla de
fallos de E/S el bloque de parámetros está situado en %R0550. Ambos bloques de parámetros está
configurados en otra parte del programa (los dos deben estar en lógica 1 para borrar su respectivas
tablas).

| _____
|%I0349 %I0346 | |
|——| |——+——| |——+———————| SVC_|—
| | | | |
| | | | REQ |
| |%I0348 | | |
| +——| |——+CONST —|FNC |
| 0014 | |
| | |
| %R0500 —|PARM |
| |_____|
|
| _____
|%I0349 %I0347 | |
|——| |——+——| |——+———————| SVC_|-
| | | | |
| | | | REQ |
| |%I0348 | | |
| +——| |——+CONST -|FNC |
| 0014 | |
| | |
| %R0550 -|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-63


12

SVCREQ #15: Leer la última entrada registrada en la tabla de fallos

Utilice la función SVCREQ #15 para leer la última entrada registrada bien en la tabla de fallos del
PLC, o en la tabla de fallos de E/S. La salida SVCREQ se ACTIVA a no ser que como operación
solicitada se introduzca un número distinto de 0 o de 1 (véase más abajo), o la tabla de fallos esté
vacía. (Para más información acerca de las entradas de las tablas de fallos, consulte el Capítulo 3,
“Explicación y corrección de fallos.”)
Para esta función, el bloque de parámetros tiene una longitud de 22 palabras. El bloque de
parámetros de entrada tiene este formato:

0 = Leer tabla de fallos del PLC. dirección


1 = Leer tabla de fallos de E/S.
El formato para el bloque de parámetros de salida depende de si la función lee los datos de la tabla
de fallos del PLC o de la tabla de fallos de E/S.

Formato salida tabla fallos PLC Formato salida tabla fallos E/S
Byte bajo Byte alto Byte bajo Byte alto
0 1
largo/corto dirección + 1 largo/corto
reserva dirección + 2 dirección de referencia
dirección del fallo PLC dirección + 3
dirección + 4 dirección del fallo de E/S
grupo del fallo y acción dirección + 5
código de error dirección + 6 grupo del fallo y acción
dirección + 7 categoría fallo tipo de fallo
dirección + 8 descripción de fallo
dirección + 9
dirección + 10
dirección + 11
datos específicos fallo dirección + 12 datos específicos fallo
dirección + 13
dirección + 14
dirección + 15
dirección + 16
dirección + 17
dirección + 18
dirección + 19
marca de la hora dirección + 20 marca de la hora
dirección + 21

12-64 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

En el primer byte de la dirección de palabra + 1, el indicador de Largo/Corto define la cantidad de


datos específicos presentes en la entrada de fallo. Puede ser:

Tabla de fallos de PLC 00 = -8 bytes (corto)


01 = 24 bytes (largo)
Tabla de fallos de E/S 02 = -5 bytes (corto)
03 = 21 bytes (largo)

Ejemplo 1
En el siguiente ejemplo, cuando la entrada %I0251 %I0250 está activada, la última entrada en la
tabla de fallos del PLC es introducida en el bloque de parámetros. Cuando la entrada %I0251 está
desactivada y la entrada %I0250 está activada, la última entrada en la tabla de fallos de E/S es
introducida en el bloque de parámetros. El bloque de parámetros está situado en la posición
%R0600.

| _____
|%I0250 %I0251 | |
|——| |—————| |———|MOVE_|
| | |
| | INT |
| | |
| CONST —|IN Q|– %R0600
| 0000 | LEN |
| | 0001|
| |_____|
|
| _____
|%I0250 %I0251 | |
|——| |—————|/|———|MOVE_|
| | |
| | INT |
| | |
| CONST —|IN Q|— %R0600
| 0001 | LEN |
| | 0001|
| |_____|
|
| _____
|ALW_ON | |
|——| |———| SVC_|—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 0015 | |
| | |
|%R0600 —|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-65


12

Ejemplo 2
En el siguiente ejemplo, el PLC se para cuando se produce algún fallo en un módulo de E/S,
excepto cuando el fallo se produce en los módulos del rack 0, slot 9 y en el rack 1, slot 9. Si los
fallos se producen en estos dos módulos, el sistema continúa funcionando. El parámetro para el
“tipo de tabla” se define en el primer barrido. El contacto IO_PRES, cuando está activo, indica que
la tabla de fallos de E/S contiene una entrada. La CPU del PLC activa el contacto normalmente
abierto en el siguiente barrido después de que la lógica de fallos coloca un fallo en la tabla. Si los
fallos se colocan en la tabla en dos barridos consecutivos, el contacto normalmente abierto se activa
para dos barridos consecutivos.
El ejemplo usa un bloque de parámetros situado en %R0600. Después de ejecutarse la función
SVCREQ, la cuarta palabra del bloque de parámetros contiene la posición del rack y slot del
módulo de E/S que ha fallado:

1 %R0600
largo/corto %R0601
dirección de referencia %R0602
número de rack número de slot %R0603
nº de bus de E/S dirección de bus %R0604
dirección de punto %R0605
datos del fallo
En el programa, los bloques EQ_INT comparan la dirección de rack/slot en la tabla con constantes
decimales. La bobina interna %M0007 se activa cuando el rack/slot donde se ha producido el fallo
satisface el criterio especificado más arriba. Si la bobina %M0007 está activada, su contacto
normalmente cerrado está desactivado para prevenir la parada. De modo inverso, si la bobina
%M0007 está desactivada porque el fallo se ha producido en un módulo diferente, su contacto
normalmente cerrado se activa y se produce la parada.

12-66 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

| _____
|FST_SCN | |
|——| |———|MOVE_|—
| | |
| | INT |
| | |
| CONST —|IN Q|— %R0600
| 0001 | LEN |
| | 0001|
| |_____|
|
| _____
| IO_PRES| | %T0001
|——| |———| SVC_|————————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 0015 | |
| | |
|%R0600 —|PARM |
| |_____|
|
| _____
|%T0001 | |
|——| |———| EQ_ |—
| | |
| | INT |
| | | %M0007
|%R0603 —|I1 Q|————————————————————————————————————————————————————————————( )—
| | |
| | |
| CONST —|I2 |
| 0109 |_____|
|
| _____
|%T0001 | |
|——| |———| EQ_ |—
| | |
| | INT |
| | | %M0007
|%R0603 —|I1 Q|————————————————————————————————————————————————————————————( )—
| | |
| | |
| CONST —|I2 |
| 0265 |_____|
|
| _____
| IO_PRES %M0007 | |
|——| |———————|/|———| SVC_|—
| | |
| | REQ |
| | |
| | |
| CONST —|FNC |
| 0013 | |
| | |
| %R0001 —|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-67


12

SVCREQ #16: Leer el reloj de tiempo transcurrido

Utilice la función SVCREQ con el número de función 16 para leer el valor del reloj del tiempo
transcurrido del sistema. Este reloj marca el tiempo transcurrido en segundos desde que se conectó
el PLC. El reloj da la vuelta aproximadamente una vez cada 100 años.
Esta función tiene un solo bloque de parámetros de salida. El bloque de parámetros tiene una
longitud de 3 palabras.
segundos desde que se conectó la corriente (parte baja) dirección
segundos desde que se conectó la corriente (parte alta) dirección + 1
impulsos de 100 microsegundos dirección + 2
Las dos primeras palabras representan el tiempo transcurrido en segundos. La última palabra es el
número de impulsos de 100 microsegundos dentro del segundo actual.

Ejemplo
En el siguiente ejemplo, cuando la bobina interna %M0233 está activada, se lee el valor del reloj de
tiempo transcurrido y la bobina %M0234 se activa. Cuando está desactivada, el valor se vuelve a
leer. Se calcula entonces la diferencia entre los valores, y el resultado se almacena en la memoria
de registro en la posición %R0250.
El bloque de parámetros para la primera lectura está en %R0127; para la segunda lectura en
%R0131. El cálculo ignora el número de impulsos de cien microsegundos y el hecho de que el tipo
DINT es en realidad un valor con signo. El cálculo es correcto hasta que el tiempo desde la
conexión alcanza aproximadamente 50 años.

| _____
|%M0233 | | %M0234
|——| |———| SVC_|———————————————————————————————————————————————————————————(S)—
| | |
| | REQ |
| | |
| CONST —|FNC |
| 00016 | |
| | |
|%R0127 —|PARM |
| |_____|
|
| _____ _____
|%M0233 %M0234 | | | | %M0234
|——|/|———————| |———| SVC_|——————————————————| SUB_|————————————————————————(R)—
| | | | |
| | REQ | | DINT|
| | | | |
| CONST —|FNC | %R0131 —|I1 Q|— %R0250
| 00016 | | | |
| | | | |
| %R0131 —|PARM | %R0127 —|I2 |
| |_____| |_____|
|

12-68 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #18: Leer el estado de sobrecontrol (override) de E/S

Utilice la función SVCREQ #18 para leer el estado actual de sobrecontrol en la CPU.

Nota
Esta función está disponible sólo para las CPUs 331 o superiores.

Para esta función, el bloque de parámetros tiene una longitud de una palabra. Se trata sólo de un
bloque de parámetros de salida.

0 = No se ha definido ningún valor de sobrecontrol. dirección


1 = Se han definido valores de sobrecontrol.

Nota
SVCREQ #18 sólo notifica sobrecontroles de las referencias %I y %Q.

Ejemplo
En el siguiente ejemplo, el estado de sobrecontrol de E/S se lee siempre en la posición %R1003. Si
algún sobrecontrol presente, la salida %T0001 se activa.

| _____ _____
|%I0001 | | | |
|——|/|———| SVC_|——————————| EQ_ |–
| | | | |
| | REQ | | INT |
| | | | | %T0001
| CONST —|FNC | CONST —|I1 Q|——————————————————————————————————————————( )—
| 00018 | | 00001 | |
| | | | |
|%R1003 —|PARM | %R1003 —|I2 |
| |_____| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-69


12

SVCREQ #23: Leer la suma de comprobación maestra

Utilice la función SVCREQ #23 para leer las sumas de comprobación maestras del programa de
usuario y de la configuración. La salida SVCREQ está siempre ACTIVADA si la función está
habilitada, y el bloque de salidas de información (véase más abajo) comienza en la dirección dada
en el parámetro 3 (PARM) de la función SVCREQ.

Cuando un ALMACENAR MODO RUN está activo, las sumas de comprobación del programa no
pueden ser válidas hasta que no finalice el almacenamiento. Por tanto, se dispone de dos
indicadores (flags) al comienzo del bloque de parámetros de salida para indicar cuándo las sumas
de comprobación del programa y de la configuración son válidas.

Para esta función, el bloque de parámetros de salida tiene una longitud de 12 palabras con este
formato:

Suma comprobación programa maestro válida (0 = no válida, 1 = válida) dirección


Suma comprobación configuración maestra válida (0 = no válida, 1 = válida) dirección + 1
Número de bloques de programa (incluido _MAIN) dirección + 2
Tamaño de programa de usuario en bytes (tipo de datos DWORD) dirección + 3
Suma de comprobación aditiva de programa dirección + 5
Suma de comprobación CRC de programa (tipo de datos DWORD) dirección + 6
Tamaño de datos de configuración en bytes dirección + 8
Suma de comprobación aditiva de configuración dirección + 9
Suma de comprobación CRC de configuración (tipo de datos DWORD) dirección + 10

Ejemplo
En el siguiente ejemplo, cuando la entrada %I0251 está ACTIVADA, la información de suma de
comprobación maestra se coloca en el bloque de parámetros almacenado en %R0050 y se activa la
bobina de salida (%Q0001). El bloque de parámetros está situado en %R0050.

| _____
|%I0251 | | %Q0001
|——| |———| SVC_|——————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| +0023 | |
| | |
|%R0050 —|PARM |
| |_____|
|

12-70 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #24: Reinicializar el módulo inteligente

Utilice la función SVCREQ #24 para reinicializar una tarjeta secundaria o módulo inteligente. La
salida SVCREQ está ACTIVADA a menos que se introduzca un número no válido para el rack y/o
slot, como se muestra a continuación.
Para esta función, el bloque de parámetros tiene una longitud de una palabra. Se trata sólo de un
bloque de parámetros de entrada.
Slot del módulo (byte bajo) dirección
Rack del módulo (byte alto)

Nota: Rack 0 y Slot 1 indican que se va a enviar un reset a la tarjeta secundaria.

Ejemplo
En el siguiente ejemplo, cuando la entrada %I0346 está activada y la entrada %I0349 está activada,
el módulo indicado por Rack/Slot presente en %R0500 es reinicializado.
El bloque de parámetros que contiene el rack y el slot del módulo para la petición de servicio de
reinicialización del módulo está situado en %R0500. El bloque de parámetros está configurado en
otro punto del programa.

| _____
|%I0349 %I0346 | |
|——| |——+——| |——+———————| SVC_|—
| | | | |
| | | | REQ |
| |%I0348 | | |
| +——| |——+CONST —|FNC |
| 0024 | |
| | |
| %R0500 —|PARM |
| |_____|
|
| _____
|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-71


12

SVCREQ #26/30: Interrogar E/S

Utilice la función SVCREQ #26 (o #30—son idénticas; es decir, se puede usar cualquiera de los
números para conseguir lo mismo) para interrogar los módulos actuales presentes y compararlos
con la configuración de rack/slot, generando alarmas de adición, pérdida y discordancia, como si se
hubiera realizado una configuración de almacenamiento. Esta SVCREQ generará fallos en ambas
tablas de fallos, tabla de fallos del PLC y tabla de fallos de E/S, dependiendo del fallo.
Esta función no tiene bloque de parámetros y siempre da salida al flujo de energía.

Nota
El tiempo de ejecución de esta SVCREQ depende de cuántos fallos haya. Por
tanto, el tiempo de ejecución de esta SVCREQ será mayor en las situaciones en
que haya más módulos defectuosos.

Ejemplo
En el siguiente ejemplo, cuando la entrada %I0251 está ACTIVADA, los módulos actuales son
interrogados y comparados con la configuración del rack/slot. La salida %Q0001 se activa una vez
terminada la ejecución de la SVCREQ.

| _____
|%I0251 | | %Q0001
|——| |———| SVC_|——————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST —|FNC |
| +0026 | |
| | |
|%R0050 —|PARM |
| |_____|
|

Nota
Esta petición de servicio no está disponible en los PLCs Micro.

12-72 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #29: Leer tiempo transcurrido con la corriente desconectada

Utilice la función SVCREQ # 29 para leer el tiempo transcurrido entre la última desconexión de la
corriente y la conexión más reciente realizada. La salida SVCREQ está siempre ACTIVADA, y el
bloque de salidas de información (véase más abajo) comienza en la dirección dada en el parámetro
3 (PARM) de la función SVCREQ.

Nota
Esta función sólo está disponible en las CPUs 331 o superiores.

Esta función tiene un solo bloque de parámetros de salida. El bloque de parámetros tiene una
longitud de 3 palabras.

Segundos transcurridos con la corriente desconectada (parte baja) dirección


Segundos transcurridos con la corriente desconectada (parte alta) dirección + 1
Impulsos de 100 microsegundos dirección + 2

Las dos primeras palabras corresponden al tiempo transcurrido en segundos con la corriente
desconectada. La última palabra es el tiempo transcurrido restante con la corriente desconectada en
impulsos de 100 microsegundos (que es siempre 0). Siempre que el PLC no pueda calcular
correctamente el tiempo transcurrido desde la desconexión, el tiempo se pondrá a 0. Esto sucederá
cuando se conecte el PLC con CLR M/T pulsado en el HHP. También ocurrirá si el temporizador
watchdog excede el límite de tiempo antes de la desconexión.

Ejemplo
En el siguiente ejemplo, cuando la entrada %I0251 está ACTIVADA, el tiempo transcurrido con la
corriente desconectada se coloca en el bloque de parámetros, y se activa la bobina de salida
(%Q0001). El bloque de parámetros está situado en %R0050.

| _____
|%I0251 | | %Q0001
|——| |———| SVC_|——————————————————————————————————————————————————————————( )—
| | |
| | REQ |
| | |
| CONST -|FNC |
| +0029 | |
| | |
|%R0050 -|PARM |
| |_____|
|

GFK-0467M-SP Capítulo 12 Funciones de control 12-73


12

SVCREQ #45: Saltar la siguiente exploración de entradas y salidas


(Suspender E/S) Utilice la función SVCREQ #45 para saltar la siguiente exploración de entradas y
salidas. Los cambios efectuados en las tablas de referencia de salida durante el barrido en el que se
ha ejecutado la SVCREQ #45 no se reflejarán en las salidas físicas de los módulos
correspondientes. Los cambios efectuados en los datos de entradas físicas de los módulos no se
reflejarán en las correspondientes referencias de entrada durante el barrido después de aquel en que
se ha ejecutado la SVCREQ #45.
Esta función no posee ningún bloque de parámetros.

Nota
El bloque de función DOIO no se ve afectado por el uso de SVCREQ #45. Este
continuará actualizando las E/S cuando se use en el mismo programa lógico que
la SVCREQ #45.

Ejemplo
En el siguiente ejemplo, cuando el contacto “Idle” pasa flujo de energía, se saltan las exploraciones
siguientes de entradas y salidas.

IDLE
SVC_
REQ

CONST
00045 FNC

%R0001 PARAM

12-74 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #46: Acceso rápido al estado de la placa de fondo

Esta función es un método de comunicar varios bits hacia o desde uno o más módulos inteligentes a
través de la placa de fondo del PLC muy rápidamente en comparación con el método de
comunicación normal. Este aumento de la velocidad de comunicación se logra limitando la
cantidad de datos y el número de respuestas.

Utilice la función SVCREQ #46 para realizar una de las funciones de acceso rápido a la placa de
fondo:
• Leer una palabra de datos adicionales de estado de uno o más módulos inteligentes
especificados.
• Escribir una palabra de datos adicionales de estado de uno o más módulos inteligentes
especificados.
• Leer/Escribir: Leer una palabra de datos adicionales de estado de uno o más módulos
especificados y escribir el valor del dato entre 0 y 15 en el mismo módulo, todo ello en una
operación.

Notas
Actualmente, el único módulo diseñado para soportar esta petición de servicio es
el DSM314 (Módulo Servo Digital).

Un bloque de función COMM_REQ o DOIO no deberá ejecutarse con el o los


módulos especificados durante el mismo barrido de la lógica, durante el que se
ejecuten cualquiera de las funciones de escritura de datos, ya que ello podría
ocasionar la pérdida de los datos escritos.

No deberán ejecutarse dos funciones que escriben en un módulo (Escribir o


Leer/Escribir) con el mismo módulo durante el mismo barrido de la lógica ya que
ello podría ocasionar la pérdida del primer dato escrito.

Esta petición de servicio se conoce también como “SNAP.”

Esta petición de servicio tiene una longitud variable como se describe a continuación. La primera
palabra del bloque de parámetros determina qué función se va a utilizar y tiene el siguiente
formato:

1 = Leer datos adicionales dirección (palabra 1)


2 = Escribir datos adicionales
3 = Leer/Escribir datos adicionales

GFK-0467M-SP Capítulo 12 Funciones de control 12-75


12

Leer los datos adicionales de estado (Función #1)


La función leer datos adicionales lee una palabra de datos adicionales de estado de cada uno de los
módulos especificados en una lista en el bloque de parámetros y coloca los valores de los datos de
estado en el bloque de parámetros. El bloque de parámetros requiere (N + 4) palabras de la
memoria de referencia, donde N es el número de módulos en los que se van a escribir los datos.
Utilice la tabla de la página siguiente para interpretar los valores de salida.

Tabla 12-5. Bloque de parámetros para la función leer datos adicionales


Posición Campo Significado
Dirección Función 1 = leer datos adicionales de estado
Dirección + 1 Código de error Un código de error se coloca aquí si la función falla
debido a que algún módulo no está presente, es
inapropiado o no funciona. Para detalles véase
“Códigos de error” en la página 12-79.
Dirección + 2 Rack y slot de error El número de rack y slot en el que se ha producido el
error
Dirección + 3 Primer rack y slot Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y SS el
número de slot) del primer módulo del que se van a
leer los datos
Dirección + 4 Leer datos del primer Los datos leídos del primer módulo se colocan aquí
módulo
Dirección + 5 Segundo rack y slot Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y SS el
número de slot) del segundo módulo del que se van a
leer los datos
Dirección + 6 Leer datos del segundo Los datos leídos del segundo módulo se colocan aquí
módulo
Dirección + (I * 2) + 1 Rack y slot I Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y SS el
número de slot) del módulo I del que se van a leer los
datos
Dirección + (I * 2) + 2 Leer datos del módulo I Los datos leídos del módulo I se colocan aquí
Dirección + (N * 2) + 1 Último rack y slot Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y SS el
número de slot) del último módulo del que se van a
leer los datos
Dirección + (N * 2) + 2 Leer datos del último Los datos leídos del último módulo se colocan aquí
módulo
Dirección + (N * 2) + 3 Indicador de fin de lista Un cero en esta palabra indica el final de la lista de
módulos

12-76 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Escribir datos (Función #2)


La función escribir datos escribe un valor de dato entre 0 y 15 del bloque de parámetros en uno o
más módulos especificados en la lista en el bloque de parámetros. El bloque de parámetros requiere
(N + 4) palabras de la memoria de referencia, donde N es el número de módulos en los que se van a
escribir los datos.

Tabla 12-6. Bloque de parámetros para la función escribir datos


Posición Campo Significado
Dirección Función 2 = escribir datos
Dirección + 1 Código de error Un código de error se coloca aquí si la función
falla debido a que algún módulo no está
presente, es inapropiado o no funciona. El
código de error no se coloca si la función se
ejecuta pero alguno de los módulos no recibe
los datos escritos debidamente. Para detalles
véase “Códigos de error” en la página 12-79.
Dirección + 2 Rack y slot de error El número de rack y slot en el que se ha
producido el error
Dirección + 3 Primer rack y slot Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y
SS el número de slot) del primer módulo al que
se van a enviar los datos
Dirección + 4 Escribir datos para el Este valor de dato será escrito en el primer
primer módulo módulo
Dirección + 5 Segundo rack y slot Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y
SS el número de slot) del segundo módulo al
que se van a enviar los datos
Dirección + 6 Escribir datos para el Este valor de dato será escrito en el segundo
segundo módulo módulo
Dirección + (I * 2) + 1 Rack y slot I Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y
SS el número de slot) del módulo I al que se
van a enviar los datos
Dirección + (I * 2) + 2 Escribir datos para el Este valor de dato será escrito en el módulo I
módulo I
Dirección + (N * 2) + 1 Último rack y slot Número de rack y slot (en la forma RRSS en
hexadecimal, donde RR es el número de rack y
SS el número de slot) del último módulo al que
se van a enviar los datos
Dirección + (N * 2) + 2 Escribir datos para el Este valor de dato será escrito en el último
último módulo módulo
Dirección + (N * 2) + 3 Indicador de fin de lista Un cero en esta palabra indica el final de la lista
de módulos

GFK-0467M-SP Capítulo 12 Funciones de control 12-77


12

Leer/Escribir datos (Función #3)


La función leer/escribir lee una palabra de los datos adicionales de estado de un módulo
especificado en el bloque de parámetros y después escribe un valor de dato entre 0 y 15 del bloque
de parámetros en dicho módulo. Este proceso de lectura escritura se repite para cada módulo de la
lista del bloque de parámetros. El bloque de parámetros requiere (N * 3) + 3 palabras de la
memoria de referencia, donde N es el número de módulos con los que se van a intercambiar los
datos.

Tabla 12-7. Bloque de parámetros para la función leer/escribir datos


Posición Campo Significado
Dirección Función 3 = leer/escribir
Dirección + 1 Código de error Un código de error se coloca aquí si la función falla debido a
que algún módulo no está presente, es inapropiado o no
funciona. El código de error no se coloca si la función se
ejecuta pero alguno de los módulos no recibe los datos
escritos debidamente. Para detalles véase “Códigos de error”
en la página 12-79.
Dirección + 2 Rack y slot de error El número de rack y slot en el que se ha producido el error
Dirección + 3 Primer rack y slot Número de rack y slot (en la forma RRSS en hexadecimal,
donde RR es el número de rack y SS el número de slot) del
primer módulo con el que se van a intercambiar datos
Dirección + 4 Leer datos del primer Los datos leídos del primer módulo se colocan aquí
módulo
Dirección + 5 Escribir datos para el Este valor de dato será escrito en el primer módulo
primer módulo
Dirección + 6 Segundo rack y slot Número de rack y slot (en la forma RRSS en hexadecimal,
donde RR es el número de rack y SS el número de slot) del
segundo módulo con el que se van a intercambiar datos
Dirección + 7 Leer datos del segundo Los datos leídos del segundo módulo se colocan aquí
módulo
Dirección + 8 Escribir datos para el Este valor de dato será escrito en el segundo módulo
segundo módulo
Dirección + ((I-1) * 3) + 3 Rack y slot I Número de rack y slot (en la forma RRSS en hexadecimal,
donde RR es el número de rack y SS el número de slot) del
módulo I con el que se van a intercambiar datos
Dirección + ((I-1) * 3) + 4 Leer datos del módulo I Los datos leídos del módulo I se colocan aquí
Dirección + ((I-1) * 3) + 5 Escribir datos para el Este valor de dato será escrito en el módulo I
módulo I
Dirección + ((N-1) * 3) + 3 Último rack y slot Número de rack y slot (en la forma RRSS en hexadecimal,
donde RR es el número de rack y SS el número de slot) del
último módulo con el que se van a intercambiar datos
Dirección + ((N-1) * 3) + 4 Leer datos del último Los datos leídos del último módulo se colocan aquí
módulo
Dirección + ((N-1) * 3) + 5 Escribir datos para el Este valor de dato será escrito en el último módulo
último módulo
Dirección + (N * 3) + 3 Indicador de fin de lista Un cero en esta palabra indica el final de la lista de módulos

12-78 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Tabla 12-8. Códigos de error


Valor Descripción
1 Resultado satisfactorio — la función se ha ejecutado normalmente.
-1 Módulo no presente en el slot especificado.
-2 Módulo inapropiado — el módulo en el slot especificado no es un módulo inteligente o no soporta
esa funcionalidad.
-3 Módulo no operativo — el módulo en el slot especificado no se comunica debidamente con la
CPU.
-4 Error de paridad en lectura de datos — error de paridad producido durante la operación de lectura
de un rack de expansión o remoto.
-5 Se ha especificado una función no válida en el bloque de comandos.

Ejemplo 1
El siguiente ejemplo muestra la función leer (especificada en %R0001) de un único módulo,
situado en el rack 2, slot 4 (especificado en %R0004). Si la función se realiza correctamente, los
datos leídos se almacenarán en %R0005. Sin embargo, si se produce un error, se escribirá un
código de error en %R0002, y la posición del rack/slot del módulo que ha generado el error
aparecerá en %R0003. Observe que, dado que se trata de la función leer para un único módulo, la
Dirección + 5 y la Dirección + 6 no se utilizan. Por tanto, las correspondientes posiciones de la
memoria, %R0006 y %R0007, se llenan de ceros de las entradas IN6 e IN7 de la instrucción
BLKMV. Si tuviera que leerse un módulo adicional, %R0006 y %R0007 se utilizarían para el
módulo adicional. Para más información sobre la función leer, véase la Tabla 12-5 más arriba en
este capítulo.

%M0201 %M0202
BLKMV_
WORD

CONST
IN1 Q %R0001
0001 0001 Address Value Description
CONST
0000
IN2 %R0001 0001 1 = Read
%R0002 0000 Error Code
CONST
IN3 %R0003 0000 Error Location
0000
CONST %R0004 0204 Rack 2, Slot 4
IN4
0204 %R0005 0000 Read Data
CONST %R0006 0000 Not Used
IN5
0000 %R0007 0000 Not Used
CONST IN6
0000
CONST IN7
0000

%M0202 %M0204
SVC_
REQ

CONST FNC
0046
%R0001
PARM
0001

GFK-0467M-SP Capítulo 12 Funciones de control 12-79


12

Ejemplo 2
En este ejemplo las instrucciones BLKMV y dos MOVE escriben los datos requeridos en el bloque
de parámetros, que comienza en %R0001 (especificado por la entrada SVCREQ PARM). Cuando
está habilitada, la SVCREQ lee los datos de palabra de estado adicionales del módulo en el rack 0,
slot 4 y del módulo en el rack 1, slot 1. Escribe un valor de 0005 en el módulo en el rack 0, slot 4, y
un valor de 0009 en el módulo en el rack 1, slot 1. (Observe que los módulos no requieren ser
listados en el bloque de parámetros por orden de número de slot.) Los datos leídos del módulo en
el rack 0, slot 4 se colocarán en %R0008. Los datos leídos del módulo en el rack 1, slot 1 se
colocarán en %R0005.

%M0201

BLKMV_ MOVE_
WORD WORD

CONST %R0001
IN1 Q CONST %R0008
0003 0003 IN1 Q
0000 0000
CONST
IN2 LEN
0000 0001
CONST
0000 IN3
Bloque de parámetros
CONST Dirección Valor Descripción
0101 IN4
%R0001 0003 3 = Leer/Escribir
CONST
0000 IN5 %R0002 0000 Código de error
%R0003 0000 Posición de error (Rack/Slot)
CONST
0009 IN6 %R0004 0101 Rack 1, Slot 1 (1er módulo)
CONST
%R0005 0000 Leer datos del 1er módulo
IN7 %R0006 0009 Escribir datos 1er módulo
0004
%R0007 0004 Rack 0, Slot 4 (2º módulo)
%R0008 0000 Leer datos del 2º módulo
%M0201
%R0009 0005 Escribir datos 2º módulo
MOVE_
WORD

CONST %R0009
0005 IN1 Q 0000
LEN
0001

%M0201 %M0204
SVC_
REQ

CONST FNC
0046
%R0001
PARM
0003

12-80 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #48: Reinicializar auto reset tras fallo fatal

Compatibilidad para SVCREQ 48


CPU – Esta petición de servicio es soportada por el firmware versión 10.00 (o posterior) Para las
CPS 331, 340, 341, 350, 36x y 37x de las Series 90-30.
Software – Esta petición de servicio sólo es soportada por el software del PLC VersaPro versión
1.1 (o posterior). Logicmaster no soporta esta función.

Aviso
La función reinicializar auto reset tras fallo fatal no deberá utilizarse
(parámetro ignorar fallos fatales deshabilitado) en aplicaciones donde un
rearranque automático del PLC en condiciones de fallo pudiera producir
una condición de peligro en el equipo controlado. Es responsabilidad del
diseñador del sistema determinar si esta función puede utilizarse con
seguridad en su equipo. El incumplimiento de esta precaución puede
ocasionar lesiones o muerte al personal y/o daños al equipo.

Descripción
La petición de servicio reinicializar tras fallo fatal hace que el PLC reanude automáticamente el
funcionamiento normal tras producirse un fallo fatal. A continuación del fallo fatal, el PLC se
reinicializará automáticamente y reanudará la ejecución. Los fallos no serán borrados, pero serán
tratados como no fatales. Si hay fallos fatales presentes después de la conexión, el PLC seguirá
estando autorizado para pasar al modo run. Esta función está habilitada por el parámetro ignorar
fallos fatales (o anulación de fallos fatales) en la configuración del hardware de la CPU.
SVCREQ 48 establece el número máximo de reintentos y el periodo de tiempo durante el que
deben producirse dichos reintentos. Si el número de reintentos permitido dentro del periodo de
tiempo se excede, el modo de la CPU pasa a STOP/FALLO. Si el periodo es 0, el modo de la CPU
pasa a STOP/FALLO cuando se excede el número de reintentos permitido.
Si el operador efectúa un ciclo de desconexión/conexión, los fallos fatales se ignoran. El cómputo
actual de fallos y el periodo de tiempo se inicializan. El número total de fallos fatales no se altera,
pero el número total de reintentos se incrementa. El bit del sistema %S0021 se pone 1 siempre que
el reintento tiene éxito y permanece puesto hasta que se borran todos los fallos fatales, o el modo se
cambia a STOP/FALLO.

GFK-0467M-SP Capítulo 12 Funciones de control 12-81


12

Tabla 12-9. Bloque de parámetros para reinicializar tras fallo fatal


Posición Campo Significado
Palabra 1 Estado de petición Véanse las definiciones del estado de retorno, más abajo.
de servicio El programa de usuario debe inicializar esta palabra a cero.
Palabra 2 Reintentos 0 = Deshabilitar (el número de reintentos es definido por la palabra 3)
ilimitados 1 = Habilitar (palabras 3 y 4 ignoradas)
Palabra 3 Número de El rango es de 0 hasta 128
reintentos 0 = Reinicialización automática deshabilitada
permitidos
1 hasta 128 = Máximo número de reintentos permitidos dentro del
periodo establecido en la palabra 4.
Palabra 4 Periodo de El rango es de 0 hasta 5940 minutos (99 horas)
reintento (en 0 = No hay límite de tiempo para el número máximo de reintentos
minutos) definido en la palabra 3. La autoreinicialización es permitida para ese
número de reintentos.
1 hasta 5940 = La autoreinicialización es deshabilitada si se excede el
número de reintentos especificado dentro del periodo definido.

Tabla 12-10. Definiciones del estado de retorno para la reinicialización tras un fallo fatal
Estado Descripción Notas Flujo
de
energía
-5 Periodo de reintento no El rango válido es de 0 hasta 5940 No
válido
-4 Número de reintentos no El rango válido es de 0 hasta 128 No
válido
-3 Reintentos ilimitados no Debe ser 0 ó 1 No
válido
-2 Configuración deshabilitada La opción ignorar fallos fatales (Anulación de fallos No
fatales) debe estar habilitada en el software de
configuración.
0 Sin acción El comando no requiere ningún cambio Sí
1 Auto Reset habilitado Comando válido habilita la reinicialización tras un Sí
fallo fatal
2 Auto Reset deshabilitado Comando válido deshabilita la reinicialización tras un
fallo fatal. Ignorar fallos fatales permanece
habilitado.

12-82 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

SVCREQ #49: Estadística de Auto Reset


La petición de servicio 49 proporciona acceso a dos variables que registran el número total de
fallos fatales y retira los que se han producido. El rango de estas variables es de 0 hasta 65535.
Estas variables no vuelven a cero si se excede su valor máximo. (La petición de servicio 48 se
utiliza para configurar el número de reintentos permitidos y el límite de tiempo en el que se pueden
producir los reintentos.)

Tabla 12-11. Bloque de parámetros para la estadística de Auto Reset


Palabra 1 Estado de petición de servicio Véanse las definiciones del estado de retorno, más
abajo.
El programa de usuario debe inicializar esta palabra
a cero.
Palabra 2 Comando 0 = Devuelve el número total de fallos fatales y el
número de reintentos que se han producido.
1 = Inicializa a cero el número total de fallos fatales
y el número total de reintentos.
Palabra 3 Valor devuelto = Número total de El programa de usuario debe inicializar a cero.
fallos fatales que se han producido.
Palabra 4 Valor devuelto = Número total de El programa de usuario debe inicializar a cero.
reintentos de Auto Reset

Tabla 12-12. Definiciones de estado de retorno para la estadística de Ato Reset


Estado Descripción Notas Flujo de
energía
-2 Configuración deshabilitada La opción ignorar fallos fatales No
(Anulación de fallos fatales) debe estar
habilitada en el software de
configuración.
-1 Comando no válido El comando debe ser 0 ó 1. No
1 Estado normal Comando válido Sí

Compatibilidad de la CPU para SVCREQ 49


Esta petición de servicio es soportada por el firmware versión 10.00 para las CPUs 331, 340, 341,
350, 36x y 37x de las Series 90-30.

GFK-0467M-SP Capítulo 12 Funciones de control 12-83


12

PID
La función de control proporcional más integral más diferencial (PID) es el algoritmo de propósito
general más conocido para el control de procesos de lazo cerrado. El bloque de función PID de las
Series 90 compara la realimentación de una variable del proceso (PV) con una consigna deseada de
proceso (SP) y actualiza una salida de variable de control (CV) basándose en el error.
La función PID utiliza ganancias de lazo y otros parámetros almacenados en una matriz de 40
palabras de 16 bits (expuesta en la página 12-86) para resolver el algoritmo PID en el intervalo de
tiempo deseado. Todos los parámetros de la función PID son palabras de valores enteros de 16 bits
para compatibilidad con variables de proceso analógicas de 16 bits. Esto permite utilizar la
memoria %AI para variables de proceso de entrada y la memoria %AQ para variables de control de
salida. El ejemplo mostrado a continuación incluye entradas típicas.
_____
%S00007 | |
(habilitar) ——| |—— -| PID_|— (ok) Flujo de energía hacia afuera
| | si OK está habilitada
| |
| IND |
| |
(consigna de proceso) %R00010 —|SP CV|— %AQ0001 Variable de control
+21000 | | +25000
| |
(variable de proceso) %AI0001 —|PV |
+20950 | |
| |
%M0001 | |
——| |——— |MAN |
| |
| |
%M0002 | |
——| |——— |UP |
| |
| |
%M0002 |DN |
——| |——— | |
|_____|
%R00100 RefArray es 40 palabras %R

(dirección de la matriz de referencia RefArray)

Como números enteros de 16 bits escalados, numerosos parámetros deben definirse bien en
unidades de variable de proceso (PV) o en unidades de variable de control (CV). Por ejemplo, la
entrada de consigna (SP) debe escalarse a lo largo del mismo intervalo que la variable del proceso
ya que el bloque PID calcula el error restando estas dos entradas. Las unidades de la variable de
proceso y de la variable de control pueden ser –32000 ó 0 hasta 32000, equivaliendo a la escala
analógica, o desde 0 hasta 10000, para visualizar variables como 0.00% hasta 100.00%. Las
unidades de la variable de proceso y de la variable de control no tienen por qué tener idéntica
escala, en cuyo caso habrá factores de escala incluidos en las ganancias PID.

Nota
La función PID no debe ejecutarse más de una vez cada 10 milisegundos. Esto
podría modificar sus resultados si lo configura para ejecutarse en cada barrido y
el barrido dura menos de 10 ms. En tal caso, la función PID no se ejecutará hasta
que se hayan producido suficientes barridos para acumular un tiempo
transcurrido de 10 ms. Por ejemplo, si el tiempo de barrido es 9 ms, la función
PID se ejecutará cada dos barridos con un tiempo transcurrido de 18 ms cada vez
que se ejecute.

12-84 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Parámetros

Parámetro Descripción
habilitar Cuando se ha habilitado a través de un contacto, la función PID se ejecuta.
SP SP es la consigna del lazo de control o del proceso. Configúrela utilizando unidades de
PV, la función PID ajusta la salida CV de modo que PV coincida con SP (error cero).
PV Variable de proceso introducida del proceso que se esté controlando, con frecuencia una
entrada %AI.
MAN Cuando se activa al valor 1 (a través de un contacto), el bloque PID se encuentra en el
modo MANUAL. Si este parámetro no está activado (0), el bloque PID está en el modo
automático.
UP Si se activa junto con MAN, aumenta el ajuste de la variable de control en una unidad de
variable de control por cada solución.*
DN Si se activa junto con MAN, disminuye el ajuste de la variable de control en una unidad
de variable de control por cada solución.*
Dirección de Dirección es la ubicación de la información del bloque de control PID (parámetros de
RefArray usuario e internos). Utiliza 40 palabras %R que no pueden compartirse.

ok La salida OK se activa cuando la función se ejecuta sin error. Está desactivada si existen
errores.
CV CV es la salida de variable de control al proceso, con frecuencia una salida analógica
%AQ.
*Aumenta (parámetro UP) o disminuye (parámetro DN) en 1 por cada proceso de la función PID.

Tipos de memorias válidas

Parámetro flujo %I %Q %M %T %S %G %R %AI %AQ const nin-


guno
habilitar •
SP • • • • • • • • •
PV • • • • • • • •
MAN •
UP •
DN •
dirección •
ok • •
CV • • • • • • • •
• Lugar o referencia válida por donde puede pasar el flujo de energía a través de la función.

GFK-0467M-SP Capítulo 12 Funciones de control 12-85


12

Bloque de parámetros de PID


Además de las 2 palabras de entrada y los 3 contactos de control manual, el bloque PID utiliza 13
de los parámetros de la matriz de referencia (RefArray). Estos parámetros deben ser configurados
antes de llamar el bloque. Los otros parámetros son usados por el PLC y no son configurables. La
%Ref mostrada en la tabla inferior es la misma dirección de RefArray al final del bloque PID. El
número que sigue al signo más es el offset en la matriz. Por ejemplo, si la matriz de referencia
comienza en %R100, la %R113 contendrá el comando manual utilizado para configurar la variable
de control (CV) y el integrador en el modo manual.
Tabla 12-13. Descripción general de los parámetros PID
Registro Parámetro Unidades bit bajo Rango de valores
%Ref+0000 Número de lazo Enteros 0 hasta 255 (sólo para display de usuario)
%Ref+0001 Algoritmo N/D; Configurada y
mantenida por el No configurable
PLC
%Ref+0002 Período de muestreo 10 milisegundos 0 (cada barrido) hasta 65535 (10.9 min).
Use al menos 10 para PLCs 90-30(véase
Nota en la página 12-84).
%Ref+0003 Banda muerta + Unidades PV 0 hasta 32000 (nunca negativa)
%Ref+0004 Banda muerta — Unidades PV –32000 hasta 0 (nunca positiva)
%Ref+0005 Ganancia proporcional 0.01 CV%/PV% 0 hasta 327.67 %/%
–Kp
%Ref+0006 Ganancia diferencial 0.01 segundos 0 hasta 327.67 seg
–Kd
%Ref+0007 Coeficiente de acción Repeticiones/1000 0 hasta 32.767 repeticiones/seg
integral –Ki seg
%Ref+0008 Bias CV / Unidades de CV –32000 hasta 32000 (añadir a la salida de
Compensación salida integrador)
%Ref+0009 Límite superior Unidades de CV –32000 hasta 32000 (>%Ref+10) límite
de salida
%Ref+0010 Límite inferior Unidades de CV –32000 hasta 32000 (<%Ref+09) límite
de salida
%Ref+0011 Tiempo mínimo de Segundos/recorrido 0 (ninguno) hasta 32000 seg para
variación completo desplazar 32000 CV
%Ref+0012 Palabra Config Utilizados 5 bits Bit 0 hasta 2 para error +/–, polaridad
bajos salida, deriv.
%Ref+0013 Comando manual Unidades de CV Seguimiento de CV en modo automático o
definición de CV en manual
%Ref+0014 Palabra de control Mantenidas por el Mantenidas por el PLC a no ser que se
PLC, a no ser que se configuren de otro modo: el bit bajo
active el Bit 1. activa el sobrecontrol se es 1 (véase la
descripción en la tabla “Detalles de los
parámetros PID” de la página 12-89)
%Ref+0015 Consigna interna SP N/D; Configurada y No configurable
mantenida por el
PLC
%Ref+0016 CV interna N/D; Configurada y No configurable
mantenida por el
PLC

12-86 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Tabla 12-13. Descripción general de los parámetros PID - Continuación


Registro Parámetro Unidades bit bajo Rango de valores
%Ref+0017 PV interna N/D; Configurada y No configurable
mantenida por el PLC
%Ref+0018 Salida N/D; Configurada y No configurable
mantenida por el PLC
%Ref+0019 Almacenamiento N/D; Configurada y No configurable
término diferencial mantenida por el PLC
%Ref+0020 Almacenamiento N/D; Configurada y No configurable
y término int. mantenida por el PLC
%Ref+0021
%Ref+0022 Almacenamiento N/D; Configurada y No configurable
término variación mantenida por el PLC
%Ref+0023 Reloj N/D; configurada y
%Ref+0024 mantenida por No configurable
%Ref+0025 (última vez ejecutado) el PLC
%Ref+0026 Almacenamiento resto N/D; Configurada y
Y mantenida por el PLC No configurable
%Ref+0027 Rango inferior para Unidades PV –32000 hasta 32000 (>%Ref+28) para
SP, PV display
%Ref+0028 Rango superior para Unidades PV –32000 hasta 32000 (<%Ref+27) para
SP, PV display
%Ref+0029
+• Reservado para uso N/D No configurable
interno
%Ref+0034
%Ref+0035
• Reservado para uso N/D No configurable
externo
%Ref+0039

La matriz RefArray debe constar de registros %R en el PLC 90-30. Observe que cada llamada al
bloque PID debe utilizar una matriz de 40 palabras diferente, incluso si los 13 parámetros de
usuario son iguales, ya que otras palabras de la matriz se utilizan para el almacenamiento interno de
datos PID. Asegúrese de que la matriz no sobrepasa el límite de la memoria.
Para configurar los parámetros de funcionamiento, seleccione la función PID y pulse F10 para
ampliar la pantalla de los parámetros de usuario; utilice entonces las teclas de flecha parea
seleccionar los campos e introduzca los valores deseados. Puede tomar 0 para la mayoría de los
valores por defecto, excepto para el límite superior de CV, que debe ser mayor que el límite inferior
de CV para que el bloque PID pueda operar. Observe que el bloque PID no pasa flujo de energía si
existe un error en los parámetros de usuario, supervise por tanto, con una bobina temporal mientras
modifica los datos.
Una vez que se han seleccionado valores adecuados de PID, deberán definirse como constantes en
el BLKMOV, de modo que puedan utilizarse para volver a cargar los parámetros PID en caso
necesario.

GFK-0467M-SP Capítulo 12 Funciones de control 12-87


12

Funcionamiento de la instrucción PID


El funcionamiento normal automático consiste en llamar el bloque PID cada barrido con flujo de
energía a habilitar y sin flujo de energía a los contactos de entrada manual. El bloque compara el
reloj de tiempo transcurrido actual del PLC con el último tiempo de solución PID almacenado en la
matriz de referencia interna (RefArray). Si la diferencia de tiempo es mayor que el tiempo de
muestreo definido en la tercera palabra (%Ref+2) de la RefArray, el algoritmo PID se resuelve
utilizando la diferencia de tiempo y tanto el tiempo de la última resolución como la salida de la
variable de control, se actualizan. En el modo automático, la variable de control de salida se
almacena en el parámetro comando manual %Ref+13.
Si los contactos de entrada habilitar y manual reciben flujo de energía, el bloque PID se pone en el
modo manual y la variable de control de salida es definida por el parámetro comando manual
%Ref+13. Si cualquiera de las entradas UP o DN tiene flujo de energía, la palabra comando manual
aumenta o disminuye en una unidad de cómputo de CV en cada solución de la PID. Para provocar
modificaciones manuales más rápidas de la variable de control de salida, también es posible añadir
o deducir cualquier valor de cómputo de CV directamente a/de la palabra comando manual.
El bloque PID utiliza los parámetros límite superior CV y límite inferior CV para limitar la salida
de CV. Si se define un tiempo mínimo de variación positivo, se emplea para limitar la velocidad de
variación de la salida CV. Si se rebasa bien el límite de la amplitud o de velocidad de variación de
CV, el valor almacenado en el integrador se ajusta de modo que la CV esté en el límite. Esta
función de “anti-reset windup” (definida en la página 12-91) significa que aún cuando el error ha
intentado impulsar la CV por encima (o por debajo) de los límites durante un largo periodo de
tiempo, la salida de CV se apartará del límite tan pronto como el término de error cambie de signo.
Este modo de funcionamiento, con el comando manual efectuando un seguimiento de la CV en
modo automático y configurando la XCV en modo manual, asegura una transferencia sin
sobresaltos entre los modos automático y manual. Los límites superior e inferior de CV y el tiempo
mínimo de variación siguen siendo aplicables a la salida CV en modo manual y el valor interno
almacenado en el integrador se actualiza. Esto significa que si tuviera que incrementar el comando
manual en modo manual, la salida CV no variará con mayor rapidez que el límite de velocidad de
variación (Inversa) del tiempo mínimo de variación y no rebasará por exceso o por defecto el límite
superior de CV o el límite inferior de CV.

Nota
No debe llamarse a una función PID específica más de una vez por barrido.

La siguiente tabla proporciona más detalles acerca de los parámetros que se han expuesto
brevemente en la Tabla 12-3. El número entre paréntesis detrás de cada nombre de parámetro es el
offset en la RefArray.

12-88 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Tabla 12-14. Detalles de los parámetros PID


Elemento de Descripción
datos
Número de lazo Este es un parámetro opcional disponible para identificar el bloque PID. Es un entero sin signo que
(00) proporciona una identificación común en el PLC con el número de bloque definido por un dispositivo de
interfaz de operador. El número de lazo se visualiza debajo de la dirección del bloque cuando la lógica es
monitorizada desde el software Logicmaster 90-30/20/Micro.
Algoritmo (01) Un entero sin signo definido por el PLC para identificar el algoritmo que está siendo utilizado por el
bloque de función. El algoritmo ISA es definido como algoritmo 1, y el algoritmo independiente es
definido como algoritmo 2.
Periodo de El tiempo más corto, en incrementos de 10 milisegundos, entre soluciones del algoritmo PID. Por ejemplo,
muestreo (02) utilice un valor de 10 para un periodo de muestreo de 100 milisegundos. Si es 0, el algoritmo se resuelve
cada vez que el bloque es llamado (véase la sección inferior de planificación del bloque PID).
El algoritmo PID se resuelve únicamente si el reloj de tiempo transcurrido actual del PLC se encuentra o
está más allá del último tiempo de solución PID más este periodo de muestreo. Recuerde que el 90-30 no
usará un tiempo de solución menor de 10 milisegundos (véase la Nota en la página 12-84); de modo que
los barridos se saltarán para tiempos de barrido menores. Esta función compensa el tiempo real
transcurrido desde la última ejecución dentro de 100 microsegundos. Si este valor se configura a 0, la
función se ejecuta cada vez que está habilitada; sin embargo, está limitada a un mínimo de 10
milisegundos como se ha indicado más arriba.
Banda muerta Valores INT (enteros) que definen los límites superior (+) e inferior (–) de banda muerta en unidades de
(+/—) PV. Si no se requiere banda muerta, estos valores deben ser 0. Si el error de PID (SP – PV) o (PV – SP)
(03/04) está por encima del valor (–) o por debajo del valor (+), los cálculos de PID se resuelven con un error de 0.
Si el error es distinto de cero, el valor (+) debe ser mayor que 0 y el valor (–) menor que o, de lo contrario,
el bloque PID no funcionará. Deberá dejar estos a 0 hasta que se configuren o ajusten las ganancias del
lazo. Después de lo cual podría desear añadir banda muerta para evitar pequeños cambios de la CV de
salida debidos a pequeñas variaciones en el error, tal vez para reducir el desgaste mecánico.
Ganancia Este número INT, denominado ganancia de controlador, Kc, en la versión ISA, determina el cambio de
proporcional–Kp CV en unidades de CV para un cambio de 100 unidades de PV en el término de error. Se visualiza como
(05) 0.00 %/% con un punto decimal implícito de 2. Por ejemplo, una Kp introducida como 450 se visualizará
como 4.50 y dará como resultado una contribución Kp*Error/100 ó 450*Error/100 a la salida PID. Por
regla general, Kp es la primera ganancia definida al ajustar un lazo PID.
Ganancia Este número INT determina el cambio en CV en unidades de CV si el error o PV cambia una unidad de
diferencial–Kd PV cada 10 milisegundos. Introducido como un tiempo con un bit bajo que indica 10 milisegundos, se
(06) visualiza como 0.00 segundos con un punto decimal implícito de 2. Por ejemplo, una Kd introducida como
120 se visualizará como 1.20 seg y dará como resultado una Kd * delta error/delta tiempo o una
contribución de 120*4/3 a la salida PID, si el error estaba variando en 4 unidades de PV cada 30 ms. Kd
puede utilizarse para acelerar una respuesta lenta del lazo, pero es muy sensible a las interferencias en la
entrada PV.
Ganancia de Este número INT determina el cambio en CV en unidades de CV si el Error es una constante de una
proporción unidad de PV. Se visualiza como 0.000 repeticiones/seg con un punto decimal implícito de 3. Por ejemplo,
integral–Ki una Ki introducida como 1400 se visualizará como 1.400 repeticiones/seg y dará como resultado una Ki *
(07) Error *dt o una contribución de 1400 * 20 * 50/1000 a la salida PID para un error de 20 unidades de PV y
para un tiempo de barrido del PLC de 50 ms (periodo de muestreo 0). Normalmente, Ki es la segunda
ganancia configurada después de Kp.
Bias CV / Un valor INT en unidades de CV añadidas a la salida PID antes de que se bloquee la acción diferencial y
Offset salida la amplitud. Puede utilizarse para configurar valores CV distintos de cero si se emplean únicamente
(08) ganancias proporcionales Kp, o para control anticipativo de esta salida en lazo PID desde otro lazo de
control.

GFK-0467M-SP Capítulo 12 Funciones de control 12-89


12

Tabla 12-14. Detalles de los parámetros PID - Continuación


Elemento de Descripción
datos
Límites superior e Valores INT en unidades de CV que definen el valor más alto y el valor más bajo de CV. Estos valores
inferior de CV son necesarios y el límite superior debe tener un valor más positivo que el límite inferior o, de lo contrario,
(09/10) el bloque PID no funcionará. Normalmente, éstos se emplean para definir límites basados en límites
físicos de una salida CV. Se utilizan también para escalar la pantalla de gráfico de barras para CV para la
visualización de PID LM90 o ADS. El bloque tiene un “anti-reset windup” para modificar el valor del
integrador cuando se alcanza un límite de CV.
Tiempo mínimo Un valor positivo para definir el número mínimo de segundos para que la salida CV vaya de 0 a 100% o
de variación (11) 32000 unidades de CV. Se trata del límite de variación inverso de la rapidez con que puede variarse la
salida CV. Si es positivo, CV no puede variar más de 32000 unidades de CV multiplicado por delta tiempo
(segundos) dividido por el tiempo mínimo de variación. Por ejemplo, si el periodo de muestreo es 2.5
segundos y el tiempo mínimo de variación es 500 segundos, CV no puede variar más de 32000*2.5/500
ó160 unidades de CV por solución de PID. Al igual que en los límites de CV, existe una función de “anti-
reset windup” que ajusta el valor del integrador si se excede el límite de acción de CV. Si el tiempo de
variación mínimo es 0, no existe el límite de velocidad de variación de CV. Asegúrese de configurar el
tiempo mínimo de variación a 0 mientras está ajustando las ganancias del lazo PID.
Palabra Config Los 5 bits más bajos de esta palabra se utilizan para modificar tres valores estándar de PID. Los otros bits
deben configurarse a 0. Configure el bit más bajo a 1 para modificar el término de error de PID estándar
del normal (SP – PV) a (PV – SP), invirtiendo el signo del término de realimentación. Esto es para los
controles de actuación inversa en que la CV debe descender cuando la PV aumenta. Configure el segundo
bit a 1 para invertir la polaridad de salida de modo que la CV sea el negativo de la salida PID en lugar del
valor positivo normal. Configure el cuarto bit a 1 para modificar la acción diferencial pasando de utilizar
el cambio normal en el término de error al cambio en el término de realimentación de PV.
Los 5 bits más bajos de la palabra de configuración se definen detalladamente a continuación:
Bit 0 = Término de error. Cuando este bit vale 0, el término de error es SP — PV.
Cuando este bit vale 1, el término de error es PV — SP.
Bit 1 = Polaridad de salida. Cuando este bit vale 0, la salida CV representa la salida del cálculo PID.
Cuando está configurado a 1, la salida CV representa el negativo del cálculo de la salida
PID.
Bit 2 = Acción diferencial en PV. Cuando este bit vale 0, la acción diferencial se aplica al término
de error. Cuando está configurado a 1, la acción diferencial se aplica a PV. Todos los bits
restantes deben valer cero.
Bit 3 = Acción de banda muerta. Cuando el bit de acción de banda muerta vale 0, no se elige
ninguna acción de banda muerta. Si el error está dentro de los límites de banda muerta, el
error se fuerza al valor 0. De no ser así, el error no se ve afectado por los límites de la
banda muerta. Cuando el bit de acción de banda muerta vale 1, se elige la acción de
banda muerta. Si el error está dentro de los límites de banda muerta, el error se fuerza al
valor cero. Sin embargo, si el error está fuera de los límites de banda muerta, el error se
reduce en un valor igual al límite de banda muerta (error = error – límite de banda muerta).
Bit 4 = Acción de “anti-reset windup”. Cuando este bit vale 0, la acción de “anti-reset
windup” utiliza un cálculo inverso de integración. Cuando la salida está limitada, esta
acción sustituye al valor de resto Y acumulado (definido en la página 12-91) por cualquier
valor que sea necesario para obtener la salida limitada de manera exacta. Cuando este bit
vale 1, esto sustituye al término Y acumulado por el valor del término al comienza del
cálculo. Así, el valor Y previo al límite se mantiene mientras la salida está limitada.
NOTA: El bit de acción de “anti-reset windup” sólo está disponible en las CPUs 90-30
versión 6.50 o posteriores.
Recuerde que los bits se configuran en potencias de 2. Por ejemplo, para configurar la palabra de
configuración al valor 0 para la configuración PID por defecto, deberá añadir 1 para modificar el término
de error de SP–PV a PV–SP, o añadir 2 para modificar la polaridad de salida de CV = salida PID a CV = –
salida PID, o añadir 4 para modificar la acción diferencial de velocidad de variación de error a velocidad
de variación de PV, etc.

12-90 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Tabla 12-14. Detalles de los parámetros PID - Continuación


Elemento de Descripción
datos
Comando manual Es un valor INT configurado a la salida de CV actual mientras el bloque PID está en el modo automático.
(13) Al cambiar el bloque a modo Manual, este valor se utiliza para configurar la salida CV y el valor interno
del integrador dentro del límite superior y del límite inferior y del límite de tiempo de variación.
Palabra de control Este es un parámetro interno que normalmente se deja a 0.
(14) Si el bit más bajo de sobrecontrol (override) se configura a 1, esta palabra y otros parámetros consigna, PV
y CV internos deben utilizarse para control remoto de este bloque PID (véase a continuación). Esto
permite sacar el control fuera del programa del PLC a dispositivos con interfaz de operador remotos, tales
como un ordenador. Precaución: si no quiere que esto ocurra, asegúrese de que la palabra de control esté
configurada a 0. Si el bit más bajo vale 0, pueden leerse los 4 bits siguientes para efectuar un seguimiento
de los estados de contactos de entrada PID siempre que el contacto habilitar PID esté alimentado. Una
estructura de datos digitales con las posiciones de los 5 primeros bits en el formato siguiente:
Bit: Valor palabra: Función: Estado a acción externas si el bit de sobrecontrol vale 1:
0 1 Override Si es 0, contactos de bloque monitor inferiores. Si es 1, con-
figurarlos externamente.
1 2 Manual/ Si es 1, el bloque está en modo Manual; si es otros números
Auto está en modo Automático.
2 4 Habilitar Normalmente debe ser 1; de no ser así nunca se llama
al bloque.
3 8 UP/Subir Si es 1 y Manual (Bit 1) es 1, CV se incrementa
en cada solución.
4 16 DN/Bajar Si es 1 y Manual (Bit 1) es 1, CV se incrementa
en cada solución.
SP (15) (No configurable–configurado y mantenido por el PLC) Entrada de SP; debe configurarse externamente si
sobrecontrol = 1.
CV (16) (No configurable–configurado y mantenido por el PLC) Salida de CV.
PV (17) (No configurable–configurado y mantenido por el PLC) Entrada de PV; debe configurarse externamente si
sobrecontrol = 1.
Salida (18) (No configurable–configurado y mantenido por el PLC) Es un valor de palabra con signo que representa
la salida del bloque de función antes de la aplicación de la inversión opcional. Si no se configura ninguna
inversión de salida y el bit de polaridad de la salida en la palabra de control está configurado a 0, este valor
será igual a la salida CV. Si se selecciona la inversión y el bit de polaridad de la salida se configura a 1,
este valor será igual al negativo de la salida CV.
Almacenamiento Se utiliza internamente para almacenamiento de valores intermedios. No escriba en esta posición.
térm. diferencial
(19)
Almacenamiento Se utiliza internamente para almacenamiento de valores intermedios. No escriba en esta posición.
térm. integral
(20/21)
Almacenamiento Se utiliza internamente para almacenamiento de valores intermedios. No escriba en esta posición.
térm. variación
(22)
Reloj (23–25) Almacenamiento interno de tiempo transcurrido (tiempo en que se ejecutó la última PID). No escriba en
estas posiciones.
Resto Y (26) Almacena el resto para la escala de división de integrador para un error estacionario cero.
Rango inferior y Valores INT opcionales en unidades de CV que definen los valores mayor y menor visualizados para SP y
superior PV del gráfico de barras horizontal con tecla Zoom de Logicmaster y para visualización de la pantalla
(27/28) frontal ADS PID.
Reservado (29–34 29–34 están reservados para uso interno; 35–39 están reservados para uso externo. Están reservados para el
y 35–39) uso de GE Fanuc, y no se pueden utilizar con otros fines.

GFK-0467M-SP Capítulo 12 Funciones de control 12-91


12

Parámetros internos en RefArray (matriz de referencia)


Como se ha descrito en la Tabla 12-3 de las páginas anteriores, el bloque PID lee 13 parámetros de
usuario y utiliza el resto de la RefArray de 40 palabras para almacenamiento interno de PID.
Normalmente no necesitará cambiar ninguno de estos valores. Si está llamando al bloque PID en
modo auto después de un largo retardo, tal vez desee utilizar SVC_REQ #16 para cargar el reloj
actual de tiempo transcurrido del PLC en %Ref+23 para actualizar el tiempo de la última solución
PID con el fin de evitar un cambio tipo escalón en el integrador. Si ha configurado al valor 1 el bit
bajo de sobrecontrol (override) de la palabra de control (%Ref+14), los cuatro bits siguientes de la
palabra de control deben configurarse para controlar los contactos de entrada del bloque PID (como
se ha descrito en la Tabla 12-3 anteriormente), y las SP y PV internas deben configurarse cuando
haya retirado el control del bloque PID de la lógica de esquema de contactos.

Selección de algoritmo PID (PIDISA o PIDIND) y ganancias


El bloque PID puede programarse seleccionando bien la versión de término independiente
(PID_IND), o la versión ISA estándar (PID_ISA) del algoritmo PID. La única diferencia en los
algoritmos es como se definen las ganancias integral y diferencial. Para entender la diferencia,
deberá comprender lo siguiente:
Ambos tipos de PID calculan el término de error como SP – PV (acción inversa), que puede
modificarse al modo de acción directa (PV – SP) configurando el término de error al valor 1. El
término de error es el bit bajo (bit 0) en la palabra de configuración (%Ref+0012). En un lazo
proporcional (P) de acción directa, un aumento en la variable del proceso (PV) ocasiona un
aumento en la salida (CV). En un lazo proporcional (P) de acción inversa, un aumento en la
variable del proceso (PV) ocasiona una disminución en la salida (CV). Introduciendo el término
integral (I) se cambia el comportamiento. En un lazo de acción directa PI, la salida (CV) aumentará
cuando la variable de proceso (PV) es mayor que la consigna de proceso (SP). En un lazo de acción
inversa PI, la salida (CV) disminuirá cuando la variable de proceso (PV) es mayor que la consigna
de proceso (SP).
Acción directa: Error = medida – consigna (PV-SP), Término de error = 1
Acción inversa: Error = consigna – medida (SP-PV), Término de error = 0
Nota. La Acción directa se denomina también a veces Acción hacia adelante “Forward acting”.
La ganancia diferencial normalmente está basada en la variación del término de error desde la
última solución PID, lo cual puede ocasionar una importante variación de la salida si se modifica el
valor de consigna. Si esto no se desea, el tercer bit de la palabra de configuración puede
configurarse a 1 para calcular la ganancia diferencial en base a la variación de PV. El dt (o Delta de
tiempo) se determina deduciendo el tiempo de reloj de la última solución PID para este bloque del
reloj de tiempo actual transcurrido del PLC.
dt = Reloj de tiempo transcurrido del PLC actual – Reloj de tiempo transcurrido del PLC de la
última solución PID
Diferencial = (Error – Error anterior)/dt o (PV – PV anterior)/dt si el tercer bit de la
palabra de configuración vale 1
El algoritmo PID de término independiente (PID_IND) calcula la salida de la siguiente manera:

12-92 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Salida PID = Kp * Error + Ki * Error * dt + Kd * Ganancia diferencial + Bias CV


El algoritmo ISA estándar (PID_ISA) presenta una forma diferente:
Salida PID = Kc * (Error + Error * dt/Ti + Td * Ganancia diferencial) + Bias CV
en donde Kc es la ganancia del controlador y Ti es el tiempo de acción integral y Td es tiempo de
acción diferencial. La ventaja de ISA es que el ajuste Kc modifica la contribución de los términos
integral y diferencial, así como del término proporcional, lo cual facilita el ajuste del lazo. Si tiene
ganancias PID en términos o en Ti y Td, utilice
Kp = Kc Ki = Kc/Ti y Kd = Kc/Td
para convertirlos para su uso como entradas de parámetros de usuario PID.
El término Bias de CV anterior es un término aditivo independiente de los componentes PID.
Puede ser necesario si utiliza únicamente ganancia proporcional Kp y si desea que la CV sea un
valor distinto de cero cuando la PV iguale a la consigna y el error sea cero. En este caso, configure
el Bias de CV a la CV deseada cuando el PV haya alcanzado la consigna. El Bias de CV también
puede emplearse para control anticipativo cuando para ajustar la salida CV de este lazo PID se
utilice otro lazo o algoritmo de control PID.
Si se utiliza una ganancia integral Ki, normalmente, el Bias de CV sería 0 ya que el integrador
actúa de bias automático. Simplemente arranque el modo manual y utilice la palabra de comando
manual (%Ref+13) para configurar el integrador al CV deseado y luego cambie a modo
automático. Esto también funciona si Ki vale 0, excepto que el integrador no se ajustará en base al
error después de cambiar a modo automático.
El siguiente diagrama muestra como funcionan los algoritmos PID:
a43646
TÉRMINO BIAS
PROPORCIONAL - Kp
SP Signo del error

BANDA INTEGRAL - Ki LÍMITE LÍMITES POLARIDAD CV


MUERTA TIEMPO VARIACIÓN SUPERIOR/INFERIOR

PV Acción
diferencial VALOR TÉRMINO
TIEMPO DIFERENCIAL - Kd

Figura 12-4. Algoritmo de término independiente (PIDIND)


El algoritmo estándar ISA (PIDISA) es similar excepto que la ganancia Kp se obtiene a partir de
productos de Ki y Kd de modo que la ganancia integral es Kp * Ki y la ganancia diferencial es Kp
* Kd. El signo de error, la acción diferencial y la polaridad se configuran mediante bits en el
parámetro de usuario palabra de configuración.

Límites de amplitud y velocidad de variación de CV


El bloque no envía la salida PID calculada directamente a CV. Ambos algoritmos PID pueden
imponer límites de amplitud y de velocidad de variación a la variable de control de salida. La
velocidad máxima de variación se determina dividiendo el valor 100% CV máximo (32000) entre
el tiempo mínimo de variación, si se especifica mediante un valor mayor que 0. Por ejemplo, si el
tiempo mínimo de variación es 100 segundos, el límite de velocidad de variación será 320 unidades
de CV por segundo. Si dt de tiempo de solución fuese 50 milisegundos, la nueva salida de CV no
variará más de 320*50/1000 ó 16 unidades de CV respecto a la salida CV previa.

GFK-0467M-SP Capítulo 12 Funciones de control 12-93


12

A continuación, la salida CV se compara con los valores de límite superior CV y límite inferior
CV. Si se rebasa uno de estos límites, la salida CV se configura al valor limitado. Si se rebasa, bien
el límite de velocidad de variación, o de amplitud, modificando CV, el valor de integrador interno
se ajusta para adaptarse al valor limitado con el fin de evitar un “reset windup”.
Por último, el bloque verifica la polaridad de la salida (segundo bit de la palabra de configuración
%Ref+12) y cambia el signo de la salida si el bit vale 1.
CV = Salida PID limitada o – Salida PID limitada si el bit polaridad de salida está activado
Si el bloque está en modo automático, el CV final se coloca en el comando manual %Ref+13. Si el
bloque se encuentra en el modo manual, la ecuación PID se salta ya que CV está configurado por el
comando manual pero siguen verificándose todos los límites de velocidad de variación y de
amplitud. Esto significa que el comando manual no puede modificar la salida por encima del límite
superior CV o por debajo de los límites inferiores de CV y la salida no puede variar con mayor
rapidez que el tiempo mínimo de variación admisible.

Período de muestreo y organización del bloque PID


El bloque PID es una implementación digital de una función de control analógica, de modo que el
dt de tiempo de muestreo en la ecuación de salida de PID no es el tiempo de muestreo infinitamente
pequeño disponible en los controles analógicos. La mayoría de los procesos controlados pueden
aproximarse como una ganancia con una demora de primer o segundo orden, posiblemente con un
retardo de tiempo puro. El bloque PID aplica una salida CV al proceso y utiliza la PV de
realimentación del proceso para determinar un error para ajustar la siguiente salida CV. Un
parámetro clave del proceso es la constante de tiempo total, que representa la rapidez con que la PV
responde a las variaciones de la CV. Como se expone en la sección Ajuste de ganancias del lazo,
más adelante, la constante de tiempo total, Tp+Tc, para un sistema de primer orden es el tiempo
necesario para que la PV alcance 63% de su valor final cuando la CV registra un cambio tipo
escalón. El bloque PID no podrá controlar un proceso a no ser que su período de muestreo esté muy
por debajo de la mitad de la constante de tiempo total. Los períodos de muestreo mayores harán
que sea inestable.
El período de muestreo no debe ser mayor que la constante de tiempo total dividida entre 10 (o
entre 5 en el peor de los casos). Por ejemplo, si parece ser que PV alcanza aproximadamente 2/3 de
su valor final en 2 segundos, el período de muestreo debe ser inferior a 0.2 segundos, o 0.4
segundos en el peor de los casos. Por otro lado, el período de muestreo no debe ser demasiado
pequeño, tal como inferior a la constante de tiempo total dividida entre 1000, o el término Ki *
Error * dt del integrador PID se redondeará por defecto a 0. Por ejemplo, un proceso muy lento que
tarde 10 horas o 36000 segundos en alcanzar 63% del nivel debería tener un período de muestreo
de 40 segundos o superior.
A no ser que el proceso sea muy rápido, normalmente no es necesario utilizar un período de
muestreo de 0 para resolver el algoritmo PID en cada barrido PID. Si se utilizan muchos lazos PID
con un período de muestreo mayor que el tiempo de barrido, pueden darse amplias variaciones en
el tiempo de barrido del PLC si numerosos lazos terminan resolviendo el algoritmo al mismo
tiempo. La solución simple consiste en secuenciar uno o más bits 1 a través de una matriz de bits
configurada a cero que se utilice para habilitar el flujo de energía a los distintos bloques PID.

12-94 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Determinación de las características del proceso


Las ganancias de lazo PID, Kp, Ki y Kd, están determinadas por las características del proceso
controlado. Dos cuestiones clave a la hora de configurar un lazo PID son:
1. ¿Qué magnitud tiene la variación de PV al modificar CV en un valor fijo, o cuál es la ganancia
de lazo abierto?
2. ¿Con qué rapidez responde el sistema o con qué rapidez varía la PV después de que la salida
de CV registre un cambio tipo escalón?
Numerosos procesos pueden aproximarse mediante una ganancia del proceso, una demora de
primer o segundo orden y un retardo de tiempo puro. En el dominio de frecuencias, la función de
transferencia para un sistema con demora de primer orden con un retardo de tiempo puro es:
PV(s)/CV(s) = G(s) = K * e **(–Tp s)/(1 + Tc s)
Representando una respuesta en escalón en el instante t0 del dominio de tiempos se obtiene una
curva de reacción de la unidad en lazo abierto:

Salida de escalón unitario de CV al proceso Entrada de curva de reacción unitaria de PV del proceso a45709
1 K

0.632K

t0 t0
Tp Tc

Los siguientes parámetros de modelo del proceso pueden determinarse a partir de la curva de
reacción unitaria de PV:
K Ganancia de lazo abierto del proceso = variación final de PV/variación de CV en el
instante t0
(Observe que K no lleva subíndices)
Tp Tiempo de retardo de proceso o tiempo muerto después de t0 antes de que la PV de la
salida del proceso comience a moverse
Tc Constante de tiempo de proceso de primer orden, tiempo necesario después de Tp para
que PV alcance el 63.2% del PV final
Habitualmente, el método más rápido para medir estos parámetros es colocar el bloque PID en el
modo manual y realizar un pequeño incremento de la salida CV modificando el comando manual
%Ref+13, y representando la respuesta de PV en el tiempo. Para procesos lentos, esto puede
realizarse manualmente, pero para procesos más rápidos será de ayuda un registrador de gráficos o
un paquete de registro gráfico de datos por ordenador. El tamaño del escalón de CV debe ser
suficientemente grande para provocar una variación observable de PV pero no tan grande que
perturbe el proceso que se esté midiendo. Un buen tamaño podría ser del 2 al 10% de la diferencia
entre los valores del límite superior de CV y del límite inferior de CV.

GFK-0467M-SP Capítulo 12 Funciones de control 12-95


12

Configuración de parámetros de usuario incluido el ajuste de las


ganancias del lazo
Dado que todos los parámetros PID dependen totalmente del proceso que está siendo controlado,
no existen valores predeterminados que funcionen, sin embargo, normalmente es un proceso simple
e iterativo el encontrar ganancias de lazo aceptables.
1. Configure todos los parámetros del grupo funcional al valor 0, y luego configure los límites
superior e inferior de CV al Cv más alto y más bajo esperados. Configure el período de
muestreo a la constante de tiempo del proceso estimada (más arriba)/10 hasta 100.
2. Ponga el bloque en el modo manual y configure comando manual (%Ref+13) a diferentes
valores para comprobar si CV puede moverse al límite superior y al límite inferior. Registre el
valor de PV en algún punto de CV y cárguelo en consigna.
3. Configure una ganancia pequeña, tal como 100 * CV máximo/PV máximo, en Kp y desactive
el modo manual. Incremente la consigna en un 2 hasta un 10% del límite máximo de PV y
observe la respuesta de PV. Aumente Kp si la respuesta al incremento de PV es demasiado
lenta o reduzca Kp si PV rebasa los límites y oscila sin alcanzar un valor estacionario.
4. Una vez determinado Kp, comience a aumentar Ki para obtener un rebasamiento del límite de
recorrido que se amortigüe hasta alcanzar un valor estacionario en 2 hasta 3 ciclos. Esto podría
hacer necesario reducir Kp. Además, intente diferentes tamaños de escalón y de puntos de
trabajo de CV.
5. Después de haber determinado unas ganancias Kp y Ki adecuadas, intente añadir Kd para
obtener respuestas más rápidas a las variaciones de entrada siempre que no ocasione
oscilaciones. Kd, con frecuencia, no es necesaria y no funcionará con una PV que produzca
interferencias.
6. Compruebe las ganancias a lo largo de diferentes puntos de trabajo de consigna y añada un
tiempo de banda muerta y un tiempo mínimo de variación en caso necesario. Algunos procesos
de actuación inversa podrían necesitar que se activen los bits signo de error o polaridad en la
palabra de configuración.

12-96 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

Configuración de ganancias de lazo —Aproximación de ajuste Ziegler y


Nichols
Una vez se han determinado los tres parámetros de modelo de proceso K, Tp y Tc, pueden
utilizarse para estimar las ganancias de lazo PID iniciales. La siguiente aproximación, desarrollada
por Ziegler y Nichols en los años 1940, está diseñada para proporcionar una buena respuesta a las
perturbaciones del sistema con ganancias que producen una relación de amplitud de 1/4. La
relación de amplitud es la relación del segundo pico respecto al primer pico en la respuesta de lazo
cerrado.
1. Cálculo del coeficiente de variación:
R = K/Tc
2. Para sólo control proporcional, calcule Kp de la siguiente manera
Kp = 1/(R * Tp) = Tc/(K * Tp)
3. Para control proporcional e integral, utilice
Kp = 0.9/(R * Tp) = 0.9 * Tc/(K * Tp)
Ki = 0.3 * Kp/Tp
4. Para control proporcional, integral y diferencial, utilice
Kp = G/(R * Tp) donde G vale de 1.2 hasta 2.0
Ki = 0.5 * Kp/Tp
Kd = 0.5 * Kp * Tp
5. Asegúrese de que el período de muestreo está dentro del intervalo (Tp + Tc)/10 hasta (Tp +
Tc)/1000
Otra aproximación, el procedimiento “Ajuste ideal”, está diseñado para proporcionar la mejor
respuesta a cambios de SP, sólo retardado por el retardo del proceso Tp o tiempo muerto.
Kp = 2 * Tc/(3 * K * Tp)
Ki = Tc
Kd = Ki/4 si se utiliza el término diferencial
Una vez que se han determinado las ganancias iniciales, deben convertirse a Parámetros de usuario
enteros. Para evitar problemas de escala, la ganancia del proceso, K, deberá calcularse como
variación del número de unidades de PV de entrada dividido por la variación del escalón de la
salida en unidades de PV y no en unidades de ingeniería de PV o de CV del proceso. Todos los
tiempos deberán especificarse en segundos. Una vez determinadas Kp, Ki y Kd, Kp y Kd pueden
multiplicarse por 100 e introducirse como valor entero mientras que Ki puede multiplicarse por
1000 e introducirse en el parámetro de usuario %RefArray.

GFK-0467M-SP Capítulo 12 Funciones de control 12-97


12

Ejemplo de llamada a PID


El siguiente ejemplo tiene un periodo de muestreo de 100 milisegundos, una ganancia Kp de 4.00 y
una ganancia Ki de 1.500. La consigna está almacenada en %R1 con la salida de la variable de
control en %AQ2 y la variable del proceso se transfiere a %AI3. El límite superior de CV y el
límite inferior de CV deben configurarse, en este caso, a 20000 y 400, y se ha incluido una pequeña
banda muerta opcional de +5 y –5. La RefArray de 40 palabras comienza en %R100. Cerrando el
contacto %M0006 se habilita un par de instrucciones BLKMV, que configuran los valores de los
parámetros iniciales copiando constantes en las 14 palabras que comienzan en %R102 (%Ref+2).
(Nota: para optimizar los parámetros durante el proceso de ajuste, acceda a los parámetros
colocando el cursor de Logicmaster en la instrucción PID y pulsando la tecla F10, que es la tecla de
Zoom.)
El bloque puede cambiarse a modo manual con %M0001, de modo que pueda ajustarse el comando
manual, %R0113. Los bits %M0004 o %M0005 pueden utilizarse para aumentar o disminuir
%R0113 y el CV y el integrador PID en 1 por cada 100 milisegundos de tiempo de solución. Para
un funcionamiento manual más rápido, los bits %M0002 y %M0003 pueden utilizarse para añadir
y deducir el valor en %R0002 a/de %R0113 en cada barrido del PLC. La salida %T0001 está
activada cuando el PID es CORRECTO. Observe que algunos de los registros del bloque de
parámetros de 40 registros no están incluidos, bien porque no se utilizan en este ejemplo, o no son
configurables ya que son utilizados por el PLC. Para información adicional sobre los parámetros,
véase la Tabla 12-8.

Dirección Valor Descripción


%R0102 +00010 Periodo de muestreo
%R0103 +00005 Banda muerta +
%R0104 +00005 Banda muerta −
%R0105 +00400 Ganancia proporcional (Kp)
%R0106 +00000 Ganancia diferencial (Kd)
%R0107 +01500 Ganancia integral (Ki)
%R0108 +00000 Bias CV/Compensación salida
%R0109 +20000 Límite superior
%R0110 +00400 Límite inferior
%R0111 +00000 Tiempo mínimo de variación
%R0112 +00000 Palabra Config.
%R0113 +00000 Comando manual
%R0114 +00000 Palabra de control
%R0115 +00000 SP interna (No configurable)

12-98 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
12

| _____ _____ _____


| %M0006 | | | | | |
|——| |———| BLK_|—————————|BLKMV|—————————————————|BLKMV|–
| | | | | | |
| | CLR_| | INT | | INT |
| | WORD| | | | |
|%R00100—|IN | CONST —|IN1 Q|—%R00102 CONST —|IN1 Q|— %R00109
| | LEN | +00010 | | +20000 | |
| |00035| | | | |
| |_____| CONST —|IN2 | CONST —|IN2 |
| +00005 | | +00400 | |
| | | | |
| CONST —|IN3 | CONST —|IN3 |
| +00005 | | +00000 | |
| | | | |
| CONST —|IN4 | CONST —|IN4 |
| +00400 | | +00000 | |
| | | | |
| CONST —|IN5 | CONST —|IN5 |
| +00000 | | +00000 | |
| | | | |
| CONST —|IN6 | CONST —|IN6 |
| +01500 | | +00000 | |
| | | | |
| CONST —|IN7 | CONST —|IN7 |
| +00000 |_____| +00000 |_____|
|
| _____
|ALW_ON | | %T0001
|——| |———————————————————————————————————————————| PID_|——( )——
| | IND |
| | |
| %R0001—|SP CV|– %AQ002
| | |
| | |
| %AI0003—|PV |
| | |
|%M0001 | |
|——| |———————————————————————————————————————————|MAN |
| | | |
| | %M0004 | |
| |——| |————|UP |
| | | |
| | %M0005 | |
| ——| |————|DN |
| |_____|
|
| %R00100
| _____
|%M0002 | |
|——| |———| ADD_|————
| | INT |
| | |
|%R00113—|I1 Q|— %R00113
| | |
| | |
| %R0002—|I2 |
| | |
| |_____|
|
| _____
|%M0003 | |
|——| |———| SUB_|—
| | INT |
| | |
|%R00113—|I1 Q|— %R00113
| | |
| %R0002—|I2 |
| | |
| |_____|

GFK-0467M-SP Capítulo 12 Funciones de control 12-99


Anexo Tiempos de ejecución de las instrucciones
A

Los PLCs de las Series 90-30/20 y Micro soportan numerosas diferentes funciones y bloques de
función. Este anexo contiene tablas que muestran los tamaños de memoria en bytes y el tiempo de
ejecución en microsegundos para cada función . El tamaño de memoria es el número de bytes
requerido por la función en un programa de aplicación de esquema de contactos.
Para cada función se muestran dos tiempos de ejecución:

Tiempo de Descripción
ejecución
Habilitada Tiempo requerido para ejecutar la función o el bloque de función cuando el
flujo de energía entra y sale de la función. Normalmente, los mejores tiempos
se dan cuando los datos usados por el bloque están contenidos en la memoria
RAM de usuario (memoria orientada a palabra) y no en la memoria digital.
Deshabilitada Tiempo requerido para ejecutar la función cuando el flujo de energía entra en
la función o bloque de función; sin embargo, es un estado inactivo, como
cuando un temporizador se mantiene en el estado de reinicialización.

Nota
Los temporizadores y contadores se actualizan cada vez que son encontrados en
la lógica, los temporizadores en la cantidad de tiempo consumido por el último
barrido y los contadores en una unidad.

Nota
Para las CPUs de PLC 350, 351, 352 y 360, los tiempos son idénticos excepto
para la instrucción MOVE, que es diferente para la CPU 350, consulte la nota en
la parte inferior de la tabla de la página A-6.

GFK-0467M-SP A-1
A

Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar


Grupo de Habilitada Deshabilitada Incremento
funciones Función 311 313 331 340/41 311 313 331 340/41 311 313 331 340/41 Ta-
maño

Temporiza- Temporizador retardo a la 146 81 80 42 105 39 38 21 – – – – 15


dores conexión
Temporizador retardo a la 98 47 44 23 116 63 58 32 – – – – 9
desconexión
Temporizador 122 76 75 40 103 54 53 30 – – – – 15
Contadores Contador incremental 137 70 69 36 130 63 62 33 – – – – 11
Contador decremental 136 70 69 37 127 61 61 31 – – – – 11
Funciones Adición (INT) 76 47 46 24 41 0 1 0 – – – – 13
matemáticas Adición (DINT) 90 60 60 34 41 1 0 0 – – – – 13
Substracción (INT) 75 46 45 25 41 0 1 0 – – – – 13
Substracción (DINT) 92 62 62 34 41 1 0 0 – – – – 13
Multiplicación (INT) 79 49 50 28 41 0 1 0 – – – – 13
Multiplicación (DINT) 108 80 101 43 41 1 0 0 – – – – 13
División (INT) 79 51 50 27 41 0 1 0 – – – – 13
División (DINT) 375 346 348 175 41 1 0 0 – – – – 13
División por módulo (INT) 78 51 49 27 41 0 1 0 – – – – 13
División por módulo (DINT) 134 103 107 54 41 1 0 0 – – – – 13
Raíz cuadrada (INT) 153 124 123 65 42 0 1 0 – – – – 9
Raíz cuadrada (DINT) 268 239 241 120 42 0 0 1 – – – – 9
Funciones Igual que (INT) 66 35 36 19 41 1 1 0 – – – – 9
relacionales Igual que (DINT) 86 56 54 29 41 1 0 0 – – – – 9
Distinto de (INT) 67 39 35 22 41 1 1 0 – – – – 9
Distinto de (DINT) 81 51 51 28 41 1 0 0 – – – – 9
Mayor que (INT) 64 33 35 20 41 1 1 0 – – – – 9
Mayor que (DINT) 89 59 58 32 41 1 0 0 – – – – 9
Mayor o igual que (INT) 64 36 34 19 41 1 1 0 – – – – 9
Mayor o igual que (DINT) 87 58 57 30 41 1 0 0 – – – – 9
Menor que (INT) 66 35 19 41 1 1 0 – – – – 9
Menor que (DINT) 87 57 30 41 1 1 0 – – – – 9
Menor o igual que (INT) 66 36 34 21 41 1 1 0 – – – – 9
Menor o igual que (DINT) 86 57 56 31 41 1 1 0 – – – – 9
Intervalo (INT) 92 58 54 29 46 1 0 1 – – – – 15
Intervalo (DINT) 106 75 57 37 45 0 0 0 – – – – 15
Intervalo (WORD) 93 60 54 29 0 0 0 0 – – – – 15
Notas: 1. El tiempo (en microsegundos) está basado en la versión 5.01 del software Logicmaster 9030/20 para las CPUs Modelos 311, 313, 340 y 341 (versión 7 para la 331).
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits, microsegundos/bit.; para funciones de
desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.

A-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A

Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar - Continuación


Grupos de Habilitada Deshabilitada Incremento
funciones Función 311 313 331 340/41 311 313 331 340/41 311 313 331 340/41 Ta-
maño
Operaciones Y lógica 67 37 37 22 42 0 0 1 – – – – 13
con bits O lógica 68 38 38 21 42 0 0 1 – – – – 13
O exclusiva lógica 66 38 37 20 42 0 1 1 – – – – 13
Inversión lógica, NOT 62 32 31 17 42 0 1 1 – – – – 9
Desplazar bit a la izquierda 139 89 90 47 74 26 23 13 11.61 11.61 12.04 6.29 15
Desplazar bit a la derecha 135 87 85 45 75 26 24 13 11.63 11.62 12.02 6.33 15
Rotar bit a la izquierda 156 127 126 65 42 1 1 0 11.70 11.78 12.17 6.33 15
Rotar bit a la derecha 146 116 116 62 42 1 1 0 11.74 11.74 12.13 6.27 15
Posición de bit 102 72 49 38 42 1 0 0 – – – – 13
Borrar bits 68 38 35 21 42 1 1 1 – – – – 13
Test de bits 79 49 51 28 41 0 0 1 – – – – 13
Activar bits 67 37 37 20 42 0 0 0 – – – – 13
Comparación enmascarada 217 154 141 74 107 44 39 21 – – – – 25
(WORD)
Comparación enmascarada 232 169 156 83 108 44 39 22 – – – – 25
(DWORD)
Mover Mover (INT) 68 37 39 20 43 0 0 0 1.62 1.62 5.25 1.31 13
datos Mover (BIT) 94 62 64 35 42 0 0 0 12.61 12.64 12.59 6.33 13
Mover (WORD) 67 37 40 20 41 0 0 0 1.62 1.63 5.25 1.31 13
Mover bloque (INT) 76 48 50 28 59 30 30 16 – – – – 27
Mover bloque (WORD) 76 48 49 29 59 29 28 15 – – – – 27
Borrar bloque 56 28 27 14 43 0 0 0 1.35 1.29 1.40 0.78 9
Registro desplazamiento (BIT) 201 153 153 79 85 36 34 18 0.69 0.68 0.71 0.37 15
Registro desplazamiento 103 53 52 29 73 25 23 12 1.62 1.62 2.03 1.31 15
(WORD)
Secuenciador de bits 165 101 99 53 96 31 29 16 0.07 0.07 0.08 0.05 15
COMM_REQ 1317 1272 1489 884 41 2 0 0 – – – – 13
Tabla Mover tabla
INT 230 201 177 104 72 41 40 20 1.29 1.15 10.56 2.06 21
DINT 231 202 181 105 74 44 42 23 3.24 3.24 10.53 2.61 21
BIT 290 261 229 135 74 43 42 23 –.03 –.03 -0.01 0.79 21
BYTE 228 198 176 104 74 42 42 23 0.81 0.82 8.51 1.25 21
WORD 230 201 177 104 72 41 40 20 1.29 1.15 10.56 2.06 21
Buscar igual que
INT 197 158 123 82 78 39 37 20 1.93 1.97 2.55 1.55 19
DINT 206 166 135 87 79 38 36 21 4.33 4.34 4.55 2.44 19
BYTE 179 141 117 74 78 38 36 21 1.53 1.49 1.83 1.03 19
WORD 197 158 123 82 78 39 37 20 1.93 1.97 2.55 1.55 19
Notas: 1. El tiempo (en microsegundos) está basado en la versión 5.01 del software Logicmaster 9030/20 para las CPUs Modelos 311, 313, 340 y 341 (versión 7 para la 331).
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits, microsegundos/bit; para funciones de
desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
7. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.

GFK-0467M-SP Anexo A Tiempos de ejecución de las instrucciones A-3


A

Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar - Continuación


Grupos de Habilitada Deshabilitada Incremento
funciones Función 311 313 331 340/41 311 313 331 340/41 311 313 331 340/41 Ta-
maño

Buscar distinto de
INT 198 159 124 83 79 39 36 21 1.93 1.93 2.48 1.52 19
DINT 201 163 132 84 79 37 35 21 6.49 6.47 6.88 3.82 19
BYTE 179 141 117 73 79 38 36 19 1.54 1.51 1.85 1.05 19
WORD 198 159 124 83 79 39 36 21 1.93 1.93 2.48 1.52 19
Buscar mayor que
INT 198 160 125 82 79 37 38 19 3.83 3.83 4.41 2.59 19
DINT 206 167 135 88 78 38 36 20 8.61 8.61 9.03 4.88 19
BYTE 181 143 118 73 79 37 36 19 3.44 3.44 3.75 2.03 19
WORD 198 160 125 82 79 37 38 19 3.83 3.83 4.41 2.59 19
Buscar mayor o igual que
INT 197 160 124 83 77 38 36 20 3.86 3.83 4.45 2.52 19
DINT 205 167 136 87 80 39 36 21 8.62 8.61 9.02 4.87 19
BYTE 180 142 118 75 79 37 37 20 3.47 3.44 3.73 2.00 19
WORD 197 160 124 83 77 38 36 20 3.86 3.83 4.45 2.52 19
Buscar menor que
INT 199 159 124 84 78 38 36 20 3.83 3.86 4.48 2.48 19
DINT 206 168 135 87 79 38 38 19 8.62 8.60 -1.36 4.88 19
BYTE 181 143 119 75 80 38 37 20 3.44 3.44 3.75 2.00 19
WORD 199 159 124 84 78 38 36 20 3.83 3.86 4.45 2.48 19
Buscar menor o igual que
INT 200 158 124 82 79 38 37 21 3.79 3.90 4.45 2.55 19
DINT 207 167 137 88 78 39 37 19 8.60 8.61 9.01 4.86 19
BYTE 180 143 119 74 78 40 37 19 3.46 3.44 3.73 2.02 19
WORD 200 158 124 82 79 38 37 21 3.79 3.90 4.45 2.55 19
Conversión Convertir a INT 74 46 39 25 42 1 1 1 – – – – 9
Convertir a BCD–4 77 50 34 25 42 1 1 1 – – – – 9
Notas: 1. El tiempo (en microsegundos) está basado en la versión 5.01 del software Logicmaster 9030/20 para las CPUs Modelos 311, 313, 340 y 341 (versión 7 para la 331).
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits, microsegundos/bit; para funciones de
desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
7. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.

A-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A

Tabla A-1. Tiempos de ejecución de las instrucciones, modelos estándar - Continuación


Grupos de Habilitada Deshabilitada Incremento
funciones Función 311 313 331 340/41 311 313 331 340/41 311 313 331 340/41 Ta-
maño
Control Llamar a una subrutina 155 93 192 85 41 0 0 0 – – – – 7
Ejecutar E/S 309 278 323 177 38 1 0 0 – – – – 12
Algoritmo PID – ISA 1870 1827 1812 929 91 56 82 30 – – – – 15
Algoritmo PID – IND 2047 2007 2002 1017 91 56 82 30 – – – – 15
Instrucción fin – – – – – – – – – – – – –
Petición de servicio
#6 93 54 63 45 41 2 0 0 – – – – 9
#7 (Leer) – 37 309 161 – 2 0 0 – – – – 9
#7 (Configurar) – 37 309 161 – 2 0 0 – – – – 9
#14 447 418 483 244 41 2 0 0 – – – – 9
#15 281 243 165 139 41 2 0 0 – – – – 9
#16 131 104 115 69 41 2 0 0 – – – – 9
#18 – 56 300 180 – 2 0 0 – – – – 9
#23 1689 1663 1591 939 43 1 0 0 – – – – 9
#26//30* 1268 1354 6680 3538 42 0 0 0 – – – – 9
#29 – – 55 41 – – 1 0 – – – – 9
MCR/ENDMCR 135 73 68 39 75 25 21 12 – – – – 8
anidado combinado
*La petición de servicio #26/30 ha sido medida con un contador de alta velocidad, salida de 16 puntos, en un rack de 5 slots.
Notas: 1. El tiempo (en microsegundos) está basado en la versión 5.01 del software Logicmaster 9030/20 para las CPUs Modelos 311, 313, 340 y 341 (versión 7 para la 331).
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits, microsegundos/bit; para funciones de
desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
7. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.

GFK-0467M-SP Anexo A Tiempos de ejecución de las instrucciones A-5


A

Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x


Grupos de Habilitada Deshab. Incremento Habilitada Deshab Increm.
funciones Función 350/351/36x 350/351/36x 350/351/36x 352 352 352 Ta-
maño

Temporizadores Temporizador retardo a la 4 6 – 4 5 – 15


conexión
Temporizador 3 3 – 2 2 – 15
Temporizador retardo a la 3 3 – 3 2 – 15
desconexión
Contadores Contador incremental 1 3 – 2 2 – 13
Contador decremental 3 3 – 1 2 – 13
F. matemáticas Adición (INT) 2 0 – 1 0 – 13
Adición (DINT) 2 0 – 2 0 – 19
Adición (REAL) 52 0 – 33 0 – 17
Substracción (INT) 2 0 – 1 0 – 13
Substracción (DINT) 2 0 – 2 0 – 19
Substracción (REAL) 53 0 – 34 0 – 17
Multiplicación (INT) 21 0 – 21 0 – 13
Multiplicación (DINT) 24 0 – 24 0 – 19
Multiplicación (REAL) 68 1 – 38 1 – 17
División (INT) 22 0 – 22 0 – 13
División (DINT) 25 0 – 25 0 – 19
División (REAL) 82 2 – 36 2 – 17
División por módulo (INT) 21 0 – 21 0 – 13
División por módulo (DINT) 25 0 – 25 0 – 19
Raíz cuadrada (INT) 42 1 – 41 1 – 10
Raíz cuadrada (DINT) 70 0 – 70 0 – 13
Raíz cuadrada (REAL) 137 0 – 35 0 – 11
F. trigonométricas SIN (REAL) 360 0 – 32 0 – 11
COS (REAL) 319 0 – 29 0 – 11
TAN (REAL) 510 1 – 32 1 – 11
ASIN (REAL) 440 0 – 45 0 – 11
ACOS (REAL) 683 0 – 63 0 – 11
ATAN (REAL) 264 1 – 33 1 – 11
F. logarítmicas LOG (REAL) 469 0 – 32 0 – 11
LN (REAL) 437 0 – 32 0 – 11
F. exponenciales EXP 639 0 – 42 0 – 11
EXPT 89 1 – 54 1 – 17
Conversión Convertir RAD a GRADOS 65 1 – 32 1 – 11
a radianes Convertir GRADOS a RAD 59 0 32 0 11
Notas: 1. El tiempo (en microsegundos) está basado en la versión 7 del software Logicmaster 9030/20/Micro para las CPUs Modelos 351 y 352.
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits,
microsegundos/bit; para funciones de desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.

A-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A

Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación


Grupos de Habilitada Deshab. Incremento Habilit. Deshab. Incremento
funciones Función 350/351/36x 350/351/36x 350/351/36x 352 352 352 Ta-
maño
Funciones Igual que (INT) 1 0 – 1 0 – 10
relacionales Igual que (DINT) 2 0 – 2 0 – 16
Igual que (REAL) 57 0 – 28 0 – 14
Distinto de (INT) 1 0 – 1 0 – 10
Distinto de (DINT) 1 0 – 1 0 – 16
Distinto de (REAL) 62 0 – 31 0 – 14
Mayor que (INT) 1 0 – 1 0 – 10
Mayor que (DINT) 1 0 – 1 0 – 16
Mayor que (REAL) 57 0 – 32 0 – 14
Mayor o igual que (INT) 1 0 – 1 0 – 10
Mayor o igual que (DINT) 1 0 – 1 0 – 10
Mayor o igual que 57 1 – 31 1 – 14
(REAL)
Menor que (INT) 1 0 – 1 0 – 10
Menor que (DINT) 1 0 – 1 0 – 16
Menor que (REAL) 58 1 – 36 1 – 14
Menor o igual que (INT) 1 0 – 1 0 – 10
Menor o igual que (DINT) 3 0 – 3 0 – 16
Menor o igual que 37 0 – 37 0 – 14
(REAL)
Intervalo (INT) 2 1 – 2 1 – 13
Intervalo (DINT) 2 1 – 2 1 – 22
Intervalo (WORD) 1 0 – 1 0 – 13
Operaciones Y lógica 2 0 – 2 0 – 13
con bits O lógica 2 0 – 2 0 – 13
O exclusiva lógica 1 0 – 1 0 – 13
Inversión lógica, NOT 1 0 – 1 0 – 10
Desplazar bit a la 31 1 1.37 31 1 1.37 16
izquierda
Desplazar bit a la derecha 28 0 3.03 28 0 3.03 16
Rotar bit a la izquierda 25 0 3.12 25 0 3.12 16
Rotar bit a la derecha 25 0 4.14 25 0 4.14 16
Posición de bit 20 1 – 20 1 – 13
Borrar bits 20 0 – 20 0 – 13
Test de bits 20 0 – 20 0 – 13
Activar bits 19 1 – 19 1 – 13
Comparar con máscara 52 0 – 52 0 – 25
(WORD)
Comparar con máscara 50 0 – 49 0 – 25
(DWORD)
Notas: 1. El tiempo (en microsegundos) está basado en la versión 7 del software Logicmaster 9030/20/Micro para las CPUs Modelos 351 y 352.
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits,
microsegundos/bit; para funciones de desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
7. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.

GFK-0467M-SP Anexo A Tiempos de ejecución de las instrucciones A-7


A

Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación


Grupos de Habilitada Deshabilitada Incremento Habilit. Deshab. Increm.

funciones Función 350/351/36x 350/351/36x 350/351/36x 352 352 352 Ta-


maño
Mover Mover (INT) 2 0 0.41 2 0 0.41 10
datos Mover (BIT) 28 0 4.98 28 0 4.98 13
Mover (WORD) 2 0 0.41 2 0 0.41 10
Mover (REAL) 24 1 0.82 24 1 0.82 13
Mover bloque (INT) 2 0 – 2 0 – 28
Mover bloque (WORD) 4 4 – 3 0 – 28
Mover bloque (REAL) 41 0 – 41 0 – 13
Borrar bloque 1 0 0.24 1 0 0.24 11
Registro desplazamiento 49 0 0.23 46 0 0.23 16
(BIT)
Registro desplazamiento 27 0 0.41 27 0 0.41 16
(WORD)
Secuenciador de bits 38 22 0.02 38 22 0.02 16
COMM_REQ 765 0 – 765 0 – 13
Tabla Mover tabla
INT 54 0 0.97 54 0 0.97 22
DINT 54 0 0.81 54 0 0.81 22
BIT 69 0 0.36 69 0 0.36 22
BYTE 54 1 0.64 54 1 0.64 22
WORD 54 0 0.97 54 0 0.97 22
Buscar igual que
INT 37 0 0.62 37 0 0.62 19
DINT 41 1 1.38 41 1 1.38 22
BYTE 35 0 0.46 35 0 0.46 19
WORD 37 0 0.62 37 0 0.62 19
Buscar distinto de l
INT 37 0 0.62 37 0 0.62 19
DINT 38 0 2.14 38 0 2.14 22
BYTE 37 0 0.47 37 0 0.47 19
WORD 37 0 0.62 37 0 0.62 19
Buscar mayor que
INT 37 0 1.52 37 0 1.52 19
DINT 39 0 2.26 39 0 2.26 22
BYTE 36 1 1.24 36 1 1.24 19
WORD 37 0 1.52 37 0 1.52 19
Buscar mayor o igual que
INT 37 0 1.48 37 0 1.48 19
DINT 39 0 2.33 39 0 2.33 22
BYTE 37 1 1.34 37 1 1.34 19
WORD 37 0 1.48 37 0 1.48 19
Notas: 1. El tiempo (en microsegundos) está basado en la versión 7 del software Logicmaster 9030/20/Micro para las CPUs de las Series 350 y 360.
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits,
microsegundos/bit; para funciones de desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
7. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.

A-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A

Tabla A-2. Tiempos de ejecución de las instrucciones, Modelos 35x-36x - Continuación


Grupos de Habilitada Deshabilitada Incremento Habilit. Deshab. Incremento
funciones Función 350/351/36x 350/351/36x 350/351/36x 352 352 352 Ta-
maño
Buscar menor que
INT 37 0 1.52 37 0 1.52 19
DINT 41 1 2.27 41 1 2.27 22
BYTE 37 0 1.41 37 0 1.41 19
WORD 37 0 1.52 37 0 1.52 19
Buscar menor o igual que
INT 38 0 1.48 38 0 1.48 19
DINT 40 1 2.30 40 1 2.30 22
BYTE 37 0 1.24 37 0 1.24 19
WORD 38 0 1.48 38 0 1.48 19
Conversión Convertir a INT 19 1 – 19 1 – 10
Convertir a BCD-4 21 1 – 21 1 – 10
Convertir a REAL 27 0 – 21 0 – 8
Convertir a WORD 28 1 – 30 1 – 11
Truncar a INT 32 0 – 32 0 – 11
Truncar a DINT 63 0 – 31 0 – 11
Control Llamar a una subrutina 72 1 – 73 1 – 7
Ejecutar E/S 114 1 – 115 1 – 13
Algoritmo PID – ISA * 162 34 – 162 34 – 16
Algoritmo PID – IND* 146 34 – 146 34 – 16
Instrucción fin – – – – – – –
Petición de servicio
#6 22 1 – 22 1 – 10
#7 (Leer) 75 1 – 75 1 – 10
#7 (Configurar) 75 1 – 75 1 – 10
#14 121 1 – 121 1 – 10
#15 46 1 – 46 1 – 10
#16 36 1 – 36 1 – 10
#18 261 1 – 261 1 – 10
#23 426 0 – 426 0 – 10
#26//30** 2260 1 – 2260 1 – 10
#29 20 0 – 20 0 – 10
#43
MCR/ENDMCR anidado 1 1 – 1 1 – 4
combinado
Registro de sucesos Véase Tabla 26.50 Véase Tabla A-3
secuenciales (SER) A-3
*Los tiempos PID mostrados más arriba están basados en la versión 6.5 de la CPU 351.
** La petición de servicio #26/30 ha sido medida con un contador de alta velocidad, salida de 16 puntos, en un rack de 5 slots. .
Notas: 1. El tiempo (en microsegundos) está basado en la versión 7 del software Logicmaster 9030/20/Micro para las CPUs de las
Series 350 y 360.
2. Para funciones de tabla, el incremento está especificado en unidades de longitud; para funciones de operaciones de bits,
microsegundos/bit; para funciones de desplazamiento de datos, microsegundos/número de bits o palabras.
3. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
4. El tiempo COMMREQ ha sido medido entre CPU y HSC.
5. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
6. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
7. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.

GFK-0467M-SP Anexo A Tiempos de ejecución de las instrucciones A-9


A

Tabla A-3. Tiempos de ejecución del bloque de función SER


Configuración Ejemplo Tiempo (µseg)
Sin flujo de energía — 26.50
(deshabilitado)
Contiguos
8 canales %I1—8 79.94
16 canales %I1—16 80.58
24 canales %I1—24 81.56
32 canales %I1—32 81.73
8 + 8 canales contiguos %I1—8 y %Q1—8 111.03
8 + 8 + 8 canales contiguos %I1—8, %Q1—8 y 143.38
%M1—8
8 + 8 + 8 + 8 canales %I1—8, %Q1—8 y 175.79
contiguos %M1—8 y %T1—8
No contiguos %I1, %M10, %Q3, etc.
8 canales 299.64
16 canales 552.83
24 canales 806.35
32 canales 1059.85
Reset
con 8 canales — 162.63
con 16 canales — 267.51
con 24 canales — 372.73
con 32 canales — 477.95
Notas: Cuando se especifique un slot con un módulo de entrada sume un valor adicional
de 46 µsegs a cada tiempo contiguo y no contiguo.
Cuando se produce la activación, sume un valor adicional de 29 useg si usa el
formato BCD o 148 useg si usa el formato Posix.
Los tiempos indicados para reset son para el tamaño máximo de búfer de 1024
muestras. (Reset borra todas las muestras en el búfer de muestras.)

A-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A

Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x


Grupo de Habilitada Deshabilitada Incremento
funciones Función 37x 37x 37x Ta-
maño

Temporizadores Temporizador retardo a la 4 5 – 15


conexión
Temporizador 2 2 – 15
Temporizador retardo a la 3 2 – 15
desconexión
Contadores Contador incremental 2 2 – 13
Contador decremental 1 2 – 13
Funciones Adición (INT) 1 0 – 13
matemáticas Adición (DINT) 2 0 – 19
Adición (REAL) 5 0 – 17
Substracción (INT) 1 0 – 13
Substracción (DINT) 2 0 – 19
Substracción (REAL) 5 0 – 17
Multiplicación (INT) 5 0 – 13
Multiplicación (DINT) 5 0 – 19
Multiplicación (REAL) 5 0 – 17
División (INT) 5 0 – 13
División (DINT) 5 0 – 19
División (REAL) 5 0 – 17
División por módulo (INT) 5 0 – 13
División por módulo (DINT) 5 0 – 19
Raíz cuadrada (INT) 5 0 – 10
Raíz cuadrada (DINT) 10 0 – 13
Raíz cuadrada (REAL) 5 0 – 11
Funciones SIN (REAL) 10 0 – 11
trigonométricas COS (REAL) 10 0 – 11
TAN (REAL) 10 0 – 11
ASIN (REAL) 10 0 – 11
ACOS (REAL) 10 0 – 11
ATAN (REAL) 5 0 – 11
F. logarítmicas LOG (REAL) 5 0 – 11
LN (REAL) 5 0 – 11
F. exponenciales EXP 10 0 – 11
EXPT 10 0 – 17
Conversión a Convertir RAD a GRADOS 5 0 – 11
radianes Convertir de GRADOS a RAD 5 0 11
Notas: 1. Para funciones de tabla, el incremento está especificado en unidades de longitud; para
funciones de operaciones de bits, microsegundos/bit; para funciones de desplazamiento
de datos, microsegundos/número de bits o palabras.
2. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
3. El tiempo COMMREQ ha sido medido entre CPU y HSC.
4. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
5. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.

GFK-0467M-SP Anexo A Tiempos de ejecución de las instrucciones A-11


A

Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x - Continuación


Grupo de Habilitada Deshabilitada Incremento
funciones Función 37x 37x 37x Ta-
maño
Funciones Igual que (INT) 1 0 – 10
relacionales Igual que (DINT) 2 0 – 16
Igual que (REAL) 5 0 – 14
Distinto de (INT) 1 0 – 10
Distinto de (DINT) 1 0 – 16
Distinto de (REAL) 5 0 – 14
Mayor que (INT) 1 0 – 10
Mayor que (DINT) 1 0 – 16
Mayor que (REAL) 5 0 – 14
Mayor o igual que (INT) 1 0 – 10
Mayor o igual que (DINT) 1 0 – 10
Mayor o igual que (REAL) 5 0 – 14
Menor que (INT) 1 0 – 10
Menor que (DINT) 1 0 – 16
Menor que (REAL) 5 0 – 14
Menor o igual que (INT) 1 0 – 10
Menor o igual que (DINT) 3 0 – 16
Menor o igual que (REAL) 5 0 – 14
Intervalo (INT) 2 0 – 13
Intervalo (DINT) 2 0 – 22
Intervalo (WORD) 1 0 – 13
Operaciones Y lógica 2 0 – 13
con bits O lógica 2 0 – 13
O exclusiva lógica 1 0 – 13
Inversión lógica, NOT 1 0 – 10
Desplazar bit a la izquierda 5 0 1 16
Desplazar bit a la derecha 5 0 1 16
Rotar bit a la izquierda 5 0 1 16
Rotar bit a la derecha 5 0 1 16
Posición de bit 5 0 – 13
Borrar bits 5 0 – 13
Test de bits 5 0 – 13
Activar bits 5 0 – 13
Comparar con máscara 9 0 – 25
(WORD)
Comparar con máscara 10 0 – 25
(DWORD)
Notas: 1. Para funciones de tabla, el incremento está especificado en unidades de longitud; para
funciones de operaciones de bits, microsegundos/bit; para funciones de desplazamiento de
datos, microsegundos/número de bits o palabras.
2. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
3. El tiempo COMMREQ ha sido medido entre CPU y HSC.
4. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
5. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.

A-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A

Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x - Continuación


Grupos de Habilitada Deshabilitada Incremento

funciones Función 37x 37x 37x Ta-


maño
Mover Mover (INT) 2 0 1 10
datos Mover (BIT) 5 0 1 13
Mover (WORD) 2 0 1 10
Mover (REAL) 5 0 1 13
Mover bloque (INT) 2 0 – 28
Mover bloque (WORD) 3 0 – 28
Mover bloque (REAL) 11 1 – 13
Borrar bloque 1 0 1 11
Registro desplazamiento 10 0 1 16
(BIT)
Registro desplazamiento 15 0 1 16
(WORD)
Secuenciador de bits 14 10 1 16
COMM_REQ 200 200 – 13
Tabla Mover tabla
INT 10 0 1 22
DINT 15 0 1 22
BIT 10 0 1 22
BYTE 10 0 1 22
WORD 10 0 1 22
Buscar igual que
INT 5 0 1 19
DINT 5 0 2 22
BYTE 5 0 1 19
WORD 5 0 1 19
Buscar distinto de
INT 5 0 1 19
DINT 10 0 2 22
BYTE 5 0 2 19
WORD 5 0 2 19
Buscar mayor que
INT 5 0 1 19
DINT 5 0 2 22
BYTE 10 0 1 19
WORD 5 0 1 19
Buscar mayor o igual que
INT 5 0 1 19
DINT 5 0 2 22
BYTE 5 0 1 19
WORD 5 0 1 19
Notas: 1. Para funciones de tabla, el incremento está especificado en unidades de longitud; para
funciones de operaciones de bits, microsegundos/bit; para funciones de desplazamiento de
datos, microsegundos/número de bits o palabras.
2. Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
3. El tiempo COMMREQ ha sido medido entre CPU y HSC.
4. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
5. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
6. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1)
y sume ese valor al tiempo base.

GFK-0467M-SP Anexo A Tiempos de ejecución de las instrucciones A-13


A

Tabla A-4. Tiempos de ejecución de las instrucciones, Modelos 37x - Continuación


Grupos de Habilitada Deshabilitada Incremento
funciones Función 37x 37x 37x Ta-
maño
Buscar menor que
INT 5 0 1 19
DINT 10 0 2 22
BYTE 5 0 1 19
WORD 5 0 1 19
Buscar menor o igual que
INT 5 0 1 19
DINT 5 0 2 22
BYTE 5 0 1 19
WORD 5 0 1 19
Conversión Convertir a INT 5 0 – 10
Convertir a BCD-4 5 0 – 10
Convertir a REAL 5 0 – 8
Convertir a WORD 5 0 – 11
Truncar a INT 5 0 – 11
Truncar a DINT 5 0 – 11
Control Llamar a una subrutina 15 0 – 7
Ejecutar E/S 5 0 – 13
Algoritmo PID – ISA 14 10 – 16
Algoritmo PID – IND 14 10 – 16
Instrucción fin – – – –
Petición de servicio
#6 5 0 – 10
#7 (Leer) 10 0 – 10
#7 (Configurar) 5 0 – 10
#14 15 0 – 10
#15 5 0 – 10
#16 10 0 – 10
#18 255 0 – 10
#23 25 0 – 10
#26//30** 155 0 – 10
#29 5 0 – 10
MCR/ENDMCR anidado 1 0 – 4
combinado
Suceso secuencial 60 0 =
Registro (SER) 8 canales
Suceso secuencial 199 0 =
Registro (SER) 16
canales
** La petición de servicio #26/30 ha sido medida con un contador de alta velocidad,
salida de 16 puntos, en un rack de 5 slots. .
Notas: 1. Para funciones de tabla, el incremento está especificado en unidades de longitud;
para funciones de operaciones de bits, microsegundos/bit; para funciones de desplazamiento
de datos, microsegundos/número de bits o palabras.
2 Tiempo habilitado para unidades de longitud únicas del tipo %R, %AI y %AQ.
3. El tiempo COMMREQ ha sido medido entre CPU y HSC.
4. DOIO es el tiempo para dar salida a valores al módulo de salida digital.
5. Si existe más de un caso posible, el tiempo indicado más arriba representa el caso más desfavorable.
6. Para instrucciones que tienen un valor incremental, multiplique el incremento por (Longitud –1) y sume ese valor al tiempo base.

A-14 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
A

Tiempos de ejecución booleana de la CPU


Esta tabla lista los tiempos de ejecución de las bobinas y contactos para los módulos de CPU de las
Series 90-30.

Tabla A-5. Tiempos de ejecución booleana de la CPU


Tiempo de ejecución por
Modelo de CPU 1.000 contactos/bobinas
booleanas
Modelos 37x 0.15 milisegundos
Modelos 35x y 36x 0.22 milisegundos
Modelos 340/341 0.3 milisegundos
Modelo 331 0.4 milisegundos
Modelos 313/323 0.6 milisegundos
Modelo 311 18.0 milisegundos

Tamaño de las instrucciones para las CPUs 350 - 374


El tamaño de memoria en la siguiente tabla representa el número de bytes de la memoria de usuario
requeridos por una instrucción determinada en un programa de aplicación de esquema de contactos.

Tabla A-6. Tamaño de las instrucciones para las CPUs 350 – 374
Función Tamaño de
memoria
Pasar pila y AND a parte superior 1
Pasar pila y OR a parte superior 1
Duplicar parte superior de la pila 1
Pila de posición 1
Pila inicial 1
Etiqueta 5
Salto 5
Todas las demás funciones 3
Bloques de función, véase la varios
Tabla A-2

GFK-0467M-SP Anexo A Tiempos de ejecución de las instrucciones A-15


Anexo Interpretación de las tablas de fallos
B

Los PLCs de las Series 90-30, Series 90-20 y Series 90 Micro mantienen dos tablas de fallos, la
tabla de fallos de E/S generada por los dispositivos de E/S (incluyendo controladores de E/S) y la
tabla de fallos del PLC para los fallos internos del PLC. La información de este anexo le permitirá
interpretar el formato de la estructura del mensaje cuando lea dichas tablas de fallos. Ambas tablas
contienen información similar. Los datos de fallos de estas tablas sólo existen en el PLC, no en la
carpeta. Por tanto, si utiliza Logicmaster, deberá estar conectado en el modo ONLINE o en el
modo MONITOR para visualizar los fallos.
• La tabla de fallos del PLC contiene
Localización del fallo.
Descripción del fallo.
Fecha y hora del fallo.

La tabla de fallos de E/S contiene
Localización del fallo.
Dirección de referencia.
Categoría del fallo
Tipo de fallo
Fecha y hora del fallo.

Tabla de fallos del PLC


El acceso a la tabla de fallos del PLC se realiza a través del software de programación. Para
información sobre cómo acceder a las tablas de fallos consulte la ayuda en línea, Manual del
usuario del Software de programación Logicmaster 90 Series 90-30/20/Micro, GFK-0466.

GFK-0467M-SP B-1
B

Ejemplo
La siguiente figura muestra un ejemplo del fallo discordancia en la configuración del sistema que
ha sido ampliado a la pantalla de detalles del fallo.

El siguiente diagrama identifica cada campo de la entrada de fallo para el fallo discordancia en la
configuración del sistema mostrado más arriba:
00 3A0000 000373F2 0B03 0600 000000000000000000000000000000000000000000000000
Reserva Tarea Código
de error Datos adicionales
Largo/ Slot del fallo
Corto Grupo
Rack de fallo
Acción
del fallo

B-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B

A continuación se explica la entrada del fallo discordancia en la configuración del sistema. (Todos
los datos están en hexadecimal.)

Campo Valor Comentario


Largo/corto 00 00=Corto, lo cual indica que sólo se utilizan 8 bytes del campo de
datos adicionales del fallo
Rack 00 Rack principal (rack 0)
Slot 03 Slot 3
Tarea F2
Grupo de fallo 0B Fallo de discordancia en la configuración del sistema
Acción de fallo 03 Fallo FATAL
Código de error 06
Datos adicionales 00 No se han notificado datos adicionales del fallo en los 8 bytes
de fallo

Los siguientes parágrafos describen el contenido de cada campo de la entrada de fallo. Se incluyen
tablas que describen el intervalo de los valores que puede tener cada campo.

Indicador largo/corto
Este byte indica si se han utilizado 8 bytes o los 24 bytes del campo de datos adicionales del fallo.
Tipo Código Datos adicionales de fallo
Corto 00 8 bytes
Largo 01 24 bytes

Reserva
Estos seis bytes son bytes de relleno, que se utilizan para que la entrada de la tabla de fallos del
PLC tenga exactamente la misma longitud que la entrada de la tabla de fallos de E/S.

Rack
El número de rack comprende de 0 hasta 7. Cero es el rack principal, que contiene el PLC. Los
racks 1 hasta 7 son racks de expansión, conectados al PLC a través de un cable de expansión.

Slot
El número de slot comprende de 0 hasta 9. La CPU del PLC ocupa siempre el slot 1 en el rack
principal (rack 0).

Tarea
El número de tarea comprende de 0 hasta +65,535. En ocasiones el número de tarea proporciona
información adicional para ingenieros de PLC; normalmente se puede ignorar.

GFK-0467M-SP Anexo B Interpretación de las tablas de fallos B-3


B

Grupo de fallos del PLC


El grupo de fallos es la clasificación más alta de un fallo. Identifica la categoría general del fallo.
El texto de descripción del fallo mostrado por el software Logicmaster 90-30/20/Micro está basado
en el grupo de fallo y en los códigos de error.
La Tabla B-1 lista los grupos de fallos posibles en la tabla de fallos del PLC.
El último grupo de fallos no enmascarables, Códigos de fallos adicionales del PLC, está destinado
al tratamiento de nuevas condiciones de fallo del sistema sin que el PLC tenga que conocer
específicamente los códigos de alarma. Todos los códigos de alarma tipo PLC no reconocidos
pertenecen a este grupo.

Tabla B-1. Grupos de fallos del PLC

Número de grupo
Decimal Hexadecimal Nombre de grupo Acción del fallo
1 1 Pérdida o ausencia de rack Fatal
4 4 Pérdida o ausencia de módulo opcional Diagnóstico
5 5 Adición de rack o rack extra Diagnóstico
8 8 Adición de módulo opcional o extra Diagnóstico
11 B discordancia en la configuración del sistema Fatal
12 C Error del bus del sistema Diagnóstico
13 D Avería en el hardware de la CPU del PLC Fatal
14 E Avería no fatal del hardware del módulo Diagnóstico
16 10 Avería del software del módulo opcional Diagnóstico
17 11 Avería de la suma de comprobación del programa Fatal
18 12 Señal de pila baja Diagnóstico
19 13 Tiempo de barrido constante excedido Diagnóstico
20 14 Tabla de fallos del PLC llena Diagnóstico
21 15 Tabla de fallos de E/S llena Diagnóstico
22 16 Fallo de la aplicación de usuario Diagnóstico
– – Códigos de fallos adicionales del PLC Como
especificado
128 80 Avería del bus del sistema Fatal
129 81 No hay programa de usuario en la conexión Informativo
130 82 Detectada RAM de usuario corrompida Fatal
132 84 Avería de acceso por contraseña Informativo
135 87 Avería en el software de la CPU del PLC Fatal
137 89 Avería de almacenamiento de secuencia del PLC Fatal

B-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B

Acción del fallo


Cada fallo puede tener una de tres acciones asociadas al mismo. Estas acciones de fallo están
fijadas en el PLC de las Series 90-30 y no pueden ser modificadas por el usuario.

Tabla B-2. Acciones de fallos del PLC

Acción del fallo Acción realizada por la CPU Código


Informativo Registrar el fallo en la tabla de 1
fallos.
Diagnóstico Registrar el fallo en la tabla de 2
fallos
Establecer referencias del fallo
Fatal Registrar el fallo en la tabla de 3
fallos
Establecer referencias del fallo
Ir al modo STOP

Código de error
El código de error proporciona información adicional sobre el fallo. Cada grupo de fallos tiene su
propio conjunto de códigos de error. La Tabla B-3 muestra los códigos de error para el grupo de
errores del software del PLC (Grupo 87H).

Tabla B-3. Códigos de error de alarma para los fallos del software de la CPU del PLC

Decimal Hexadecimal Nombre


20 14 Memoria del programa del PLC corrompida
39 27 Memoria del programa del PLC corrompida
82 52 Comunicaciones de la placa posterior fallidas
90 5A : Solicitada la interrupción de usuario
Todos los demás Error del sistema interno de la CPU del PLC

La Tabla B-4 muestra los códigos de error para todos los demás grupos de fallos.

GFK-0467M-SP Anexo B Interpretación de las tablas de fallos B-5


B

Tabla B-4. Códigos de error de alarma para fallos del PLC


Decimal Hexadecimal Nombre
Códigos de error para el grupo de pérdida del módulo opcional del PLC (4)
44 2C Reinicialización soft de módulo opcional fallida
45 2D Reinicialización soft de módulo opcional fallida
255 FF Comunicación de módulo opcional fallida
79 4F Pérdida de tarjeta secundaria
Códigos de error para grupo de reset o adición de módulo opcional o módulo opcional extra (8)
2 2 Rearranque módulo completo
04 4 Adición de tarjeta secundaria
05 5 Reset de tarjeta secundaria
Todos los demás Módulo opcional: reinicialización, adición o extra
Códigos de error para grupo de averías del software del módulo opcional (10 hex)
1 1 Tipo de tarjeta no soportado
2 2 COMREQ – buzón lleno en mensaje de salida que inicia COMREQ
3 3 COMREQ – buzón lleno en respuesta
5 5 Comunicaciones del panel posterior con el PLC; petición perdida
11 B Error de recursos (distribución, desbordamiento, etc.)
13 D Error de programa de usuario
401 191 Software de módulo corrompido; petición de volver a cargar
Códigos de error para grupo de discordancia en la configuración del sistema (B hex)
8 8 discordancia de expansión analógica
10 A Función no soportada
23 17 El programa excede los límites de la memoria
58 3A discordancia en tarjeta secundaria
Códigos de error para el grupo de error del bus del sistema (C hex)
Todos los demás Error del bus del sistema
Códigos de error para el grupo de suma de comprobación de los bloques del programa (11 hex)
3 3 Fallo de la suma de comprobación del programa o bloques de programa
Códigos de error para señal de pila baja
0 0 Pila defectuosa en CPU del PLC u otro módulo
1 1 Pila baja en CPU del PLC u otro módulo
Códigos de error para grupo de fallos de aplicación de usuario (16 hex)
2 2 Temporizador watchdog de PLC fuera de límites
5 5 COMREQ – Modo ESPERA no disponible para este comando
6 6 COMREQ – ID de tarea incorrecta
7 7 Desbordamiento de pila de aplicación
Códigos de error para el grupo de avería del bus del sistema (80 hex)
1 1 Sistema operativo
Códigos de error para el grupo de RAM de usuario corrompida en la conexión (82 hex)
1 1 RAM de usuario corrompida en la conexión
2 2 Detectado código de operaciones booleanas ilegal
3 3 DESBORDAMIENTO_PLC_ISCP_PC
4 4 PRG_SYNTAX_ERR
Códigos de error para fallos del hardware de la CPU del PLC (D hex)
Todos los códigos Avería en el hardware de la CPU del PLC

B-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B

Datos adicionales de fallo


Este campo contiene detalles de la entrada del fallo. El siguiente ejemplo muestra qué datos
pueden aparecer:

Ejemplo - Grupo RAM de usuario corrompida

Cuatro de los códigos de error en el grupo discordancia en la configuración del sistema


proporcionan datos adicionales de los fallos:

Tabla B-5. Datos de fallos del PLC – Detectado código de operaciones booleanas ilegal
Datos adicionales Discordancia en el número
de fallo de modelo
[0] Contenido del registro de fallos de
ISCP
[1] OPCODE incorrecto
[2,3] Contador del programa ISCP
[4,5] Número de función
Para un fallo en la RAM de la CPU del PLC (uno de los fallos notificado como
fallo del hardware de la CPU del PLC), la dirección del fallo se almacena en los
cuatro primeros bytes del campo.

Marca de la hora de fallos del PLC


Fallo del hardware de la CPU del PLC (fallo RAM)
La marca de la hora de seis bytes es el valor del reloj del sistema cuando el fallo es registrado por
la CPU del PLC. (Los valores están codificados en formato BCD.)

Tabla B-6. Marca de la hora de fallos del PLC

Número de Descripción
byte
1 Segundos
2 Minutos
3 Horas
4 Día del mes
5 Mes
6 Año

GFK-0467M-SP Anexo B Interpretación de las tablas de fallos B-7


B

Tabla de fallos de E/S


La siguiente figura muestra el ejemplo de un fallo de pérdida de módulo de E/S que ha sido
ampliado a la pantalla de detalles del fallo.

El siguiente diagrama identifica la información hexadecimal que se visualiza en cada campo de la


entrada de fallo del ejemplo (discordancia en la configuración del sistema) mostrado en la figura
superior.

Dirección de referencia.
Bloque
Acción Tipo Datos adicionales
Slot del fallo de fallo del fallo

02 461100 00047F7FFF7F 0302 0E 00 00 0700000000000000000000000000000000000000000000


Largo/ Bus Grupo Descripción
Corto de de fallo del fallo
E/S
Rack Punto Categoría
del fallo

B-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B

Los siguientes parágrafos describen el contenido de cada campo de la tabla de fallos de E/S. Se
incluyen tablas que describen el intervalo de los valores que puede tener cada campo.

Indicador largo/corto
Este byte indica si un fallo determinado utiliza 5 bytes o 21 bytes del campo de datos específicos
del fallo.

Tabla B-7. Byte indicador del formato de la tabla de fallos de E/S

Tipo Código Datos específicos fallo


Corto 02 5 bytes
Largo 03 21 bytes

Dirección de referencia
La dirección de referencia es una dirección de tres bytes que contiene el tipo de memoria de E/S y
la posición (u offset) de la memoria que corresponde al punto que ha experimentado el fallo. O,
cuando se produce un fallo del bloque o un fallo del módulo analógico integral, la dirección de
referencia alude al primer punto del bloque donde se ha producido el fallo.

Tabla B-8. Dirección de referencia de E/S

Byte Descripción Intervalo


0 Tipo de memoria 0 – FF
1–2 Offset 0 – 7FF

El byte del tipo de memoria es uno de los valores siguientes.

Tabla B-9. Tipo de memoria de la dirección de referencia de E/S

Nombre Valor (hexadecimal)


Entrada analógica 0A
Salida analógica 0C
Analógica agrupada 0D
Entrada digital 10 ó 46
Salida digital 12 ó 48
Digital agrupada 1F

GFK-0467M-SP Anexo B Interpretación de las tablas de fallos B-9


B

Dirección de fallos de E/S


La dirección de fallos de E/S es una dirección de seis bytes que contiene la dirección del rack, slot,
bus, bloque del punto de E/S que ha generado el fallo. La dirección del punto es una palabra; las
demás direcciones son de un byte cada una. Puede ser que los cinco valores no estén presentes en
un fallo.
Cuando una dirección de fallo de E/S no contiene las cinco direcciones, aparece un 7F hexadecimal
en la dirección para indicar donde para el significado. Por ejemplo, si 7F aparece en el byte de
bus, el fallo es un fallo de módulo. Sólo los valores de rack y slot son significativos.

Rack
El número de rack comprende de 0 hasta 7. Cero es el rack principal, es decir aquel que contiene
la CPU. Los racks 1 hasta 7 son racks de expansión.

Slot
El número de slot comprende de 0 hasta 9. La CPU del PLC ocupa siempre el slot 1 en el rack
principal
(rack 0).

Punto
El punto comprende de 1 hasta 1024 (decimal). Refiere qué punto en el bloque tiene el fallo,
cuando el fallo es de tipo punto.

Grupo de fallos de E/S


El grupo de fallos es la clasificación más alta de un fallo. Identifica la categoría general del fallo.
El texto de descripción del fallo mostrado por el software Logicmaster 90-30/20/Micro está basado
en el grupo de fallo y en los códigos de error.
La Tabla B-10 lista los grupos de fallos posibles en la tabla de fallos de E/S. Los números de
grupo menores de 80 (Hex) son fallos enmascarables.
El último grupo de fallos no enmascarables, Códigos de fallos adicionales de E/S, está destinado
al tratamiento de nuevas condiciones de fallo del sistema sin que el PLC tenga que conocer
específicamente los códigos de alarma. Todos los códigos de alarma tipo E/S no reconocidos
pertenecen a este grupo.

Tabla B-10. Grupos de fallos de E/S

Número de Nombre de grupo Acción del fallo


grupo
3 Pérdida o ausencia de módulo de E/S Diagnóstico
7 Adición de módulo de E/S o extra Diagnóstico
9 Fallo de bus de IOC o E/S Diagnóstico
A Fallo del módulo de E/S Diagnóstico
– Códigos adicionales de fallos de E/S Como
especificado

B-10 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
B

Acción de fallos de E/S


La acción de fallos especifica que acción debe emprender la CPU del PLC cuando se produce un
fallo. La Tabla B-11 lista las acciones de fallos posibles.

Tabla B-11. Acciones de fallos de E/S

Acción del fallo Acción realizada por la CPU Código


Informativo Registrar el fallo en la tabla de 1
fallos.
Diagnóstico Registrar el fallo en la tabla de 2
fallos
Establecer referencias del fallo
Fatal Registrar el fallo en la tabla de 3
fallos
Establecer referencias del fallo
Ir al modo STOP

Datos específicos de fallos de E/S


Una entrada de la tabla de fallos de E/S puede contener hasta 5 bytes de datos específicos de fallos
de E/S.

Datos específicos de fallos simbólicos


La Tabla B-12 lista los datos requeridos para la configuración de un circuito de bloque.

Tabla B-12. Datos específicos de fallos de E/S

Número decimal Código hex Descripción


Configuración del circuito
1 El circuito es una entrada – tres
2 estados
3 El circuito es una entrada
El circuito es una salida

Acciones de fallos para fallos específicos


Los fallos de circuitos forzados/no forzados se notifican como fallos informativos. Todos los
demás están clasificados como diagnóstico o fatal.
Los fallos de no coincidencia del número de modelo, no coincidencia del tipo de E/S y módulo de
E/S no existente se notifican a la tabla de fallos del PLC bajo el grupo de discordancia en la
configuración del sistema. No se anotan en la tabla de fallos de E/S.

GFK-0467M-SP Anexo B Interpretación de las tablas de fallos B-11


B

Marca de la hora de fallos de E/S


La marca de la hora de seis bytes es el valor del reloj del sistema cuando el fallo es registrado por
la CPU del PLC. Los valores están codificados en formato BCD.

Tabla B-13. Marca de la hora de fallos de E/S

Número de byte Descripción


1 Segundos
2 Minutos
3 Horas
4 Día del mes
5 Mes
6 Año

B-12 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Anexo Mnemotécnico de las instrucciones
C

En el modo visualización/edición del programa, puede introducir o buscar rápidamente una


instrucción de programación tecleando el carácter (&) seguido del mnemotécnico de la misma.
Para algunas instrucciones se puede también especificar una dirección de referencia o alias, una
etiqueta o una dirección de referencia de localización.
Este anexo lista los mnemotécnicos de las instrucciones de programación para el software de
programación Logicmaster 90-30/20/Micro. El mnemotécnico completo se muestra en la columna
3 de esta tabla, y la entrada más corta que se puede hacer para cada instrucción en la columna 4.
En cualquier momento de la programación en Logicmaster se puede visualizar una pantalla de
ayuda con la lista de estos mnemotécnicos pulsando las teclas ALT e I.

Grupo de Mnemotécnico
función Instrucción
Todos INT DINT BIT BYTE WORD REAL
Contactos Cualquier contacto &CON &CON
Contacto normalmente abierto &NOCON &NOCON
Contacto normalmente cerrado &NCCON &NCCON
Contacto de continuación &CONC &CONC
Bobinas Cualquier bobina &COI &COI
Bobina normalmente abierta &NOCOI &NOCOI
Bobina negada &NCCOI &NCCOI
Bobina de transición positiva &PCOI &PCOI
Bobina de transición negativa &NCOI &NCOI
Bobina SET &SL &SL
Bobina RESET &RL &RL
Bobina SET retentiva &SM &SM
Bobina RESET retentiva &RM &RM
Bobina retentiva &NOM &NOM
Bobina retentiva negada &NCM &NCM
Bobina de continuación &COILC &COILC
Enlaces Enlace horizontal &HO &HO
Enlace vertical &VE &VE
Temporiza- Temporizador retardo a la &ON &ON
dores conexión &TM &TM
Temporizador tiempo &OF &OF
transcurrido
Temporizador retardo a la
desconexión
Contadores Contador incremental &UP &UP
Contador decremental &DN &DN

GFK-0467M-SP C-1
C

Grupo de Mnemotécnico
función Instrucción
Todos BCD-4 INT DINT BIT BYTE WORD REAL

Funciones Adición &AD &AD_I &AD_DI &AD_R


matemáticas Substracción &SUB &SUB_I &SUB_DI &SUB_R
&MUL_R
Multiplicación &MUL &MUL_I &MUL_DI &DIV_R
División &DIV &DIV_I &DIV_DI &MOD_R&SQ_R
Módulo &MOD &MOD_I &MOD_DI
Raíz cuadrada &SQ &SQ_I &SQ_DI
Seno &SIN
Coseno &COS
Tangente &TAN
Inversa de seno &ASIN
Inversa de coseno &ACOS
Inversa de tangente &ATAN
Logaritmo base 10 &LOG
Logaritmo natural &LN
Potencia de e &EXP
Potencia de X &EXPT
Funciones Igual que &EQ &EQ_I &EQ_DI &EQ_R
relacionales Distinto de &NE &NE_I &NE_DI &NE_R
&GT_R
Mayor que &GT &GT_I &GT_DI &GE_R
Mayor o igual que &GE &GE_I &GE_DI &LT_R
Menor que &LT &LT_I &LT_DI &LE_R

Menor o igual que &LE &LE_I &LE_DI


Operaciones Y &AN &AN_W
con bits O &OR &OR_W
O exclusiva &XO &XO_W
NO &NOT &NOT_W
Desplazar bit a la izquierda &SHL &SHL_W
Desplazar bit a la derecha &SHR &SHR_W
Rotar bit a la izquierda &ROL &ROL_W
Rotar bit a la derecha &ROR &ROR_W
Test de bits &BT &BT_W
Activar bits &BS &BS_W
Borrar bits &BCL &BCL_W
Posición de bit &BP &BP_W
Comparar con máscara &MCMP &MCM_W

Conversión Convertir a entero &TO_INT &TO_INT_BCD4


Convertir a entero doble &TO_DINT &BCD4_R
Convertir a BCD–4 &BCD4 &TO_REAL_DI
Convertir a REAL &TO_REAL &TO_REAL_W
Convertir a WORD &TO_W
Truncar a entero &TRINT
Truncar a entero doble &TRDINT

C-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
C

Grupo de Mnemotécnico
función Instrucción
Todos INT DINT BIT BYTE WORD REAL
Mover Mover &MOV &MOV_I &MOV_BI &MOV_W &MOV_R
datos
Mover bloque &BLKM &BLKM_I &BLKM_W &BLKM_R
Borrar bloque &BLKC
&SHF_BI
Registro de desplazamiento &SHF &AR_W
Secuenciador de bits &BI
Petición de comunicaciones &COMMR
Tabla Mover tabla &AR &AR_I &AR_DI &AR_BI &AR_BY &AR_W
Buscar igual que &SRCHE &SRCHE_I &SRCHE_DI &SRCHE_BY &SRCHE_W
Buscar distinto de &SRCHN &SRCHN_I &SRCHN_DI &SRCHN_BY &SRCHN_W
Buscar mayor que &SRCHGT &SRCHGT_I &SRCHGT_DI &SRCHGT_BY &SRCHGT_W
&SRCHGE_W
Buscar mayor o igual que &SRCHGE &SRCHGE_I &SRCHGE_DI &SRCHGE_BY &SRCHLT_W
Buscar menor que &SRCHLT &SRCHLT_I &SRCHLT_DI &SRCHLT_BY &SRCHLE_W_
Buscar menor o igual que &SRCHLE &SRCHLE_I &SRCHLE_DI &SRCHLE_BY
Control Llamar a una subrutina &CA
Ejecutar E/S &DO
SER &SER
Algoritmo PID – ISA &PIDIS
Algoritmo PID – IND &PIDIN
Reset SFC &SFCR
END &END
Explicación de escalón &COMME
(Comentario) &SV
Petición servicios sistema &MCR
Relé de control maestro &ENDMCR
Fin de relé de control maestro &MCRN
Relé de control maestro anidado &ENDMCRN
Fin de relé de control maestro &JUMP
anidado
&JUMPN
Salto
&LABEL
Salto anidado
&LABELN
Etiqueta
Etiqueta anidada

GFK-0467M-SP Anexo C Mnemotécnico de las instrucciones C-3


Anexo Funciones del teclado
D

Este anexo ofrece una relación de las funciones del teclado que están activas en el entorno del
software. Para visualizar esta información en la pantalla del Logicmaster, pulse ALT-K para
acceder a ayuda mediante teclado.

Secuencia de Descripción Secuencia de teclas Descripción


teclas
Teclas disponibles en todo el paquete de software
ALT-A Abandonar CTRL-Inter Salir del paquete.
ALT-C Borrar campo. Esc Desactivar zoom.
ALT-M Cambiar modo programador. CTRL-Inicio Comando anterior-contenido de línea.
ALT-R Cambiar estado Run/Stop del PLC. CTRL-Fin Comando siguiente-contenido de línea.
ALT-E Conmutar área de estado. CTRL- ← Cursor a izquierda dentro del campo.
ALT-J Conmutar línea de comando. CTRL-→ Cursor a derecha dentro del campo.
ALT-L Listar ficheros del directorio. CTRL-D Decrementar la dirección de referencia.
ALT-P Imprimir pantalla. CTRL-U Incrementar la dirección de referencia.
ALT-H Ayuda. Tab Cambiar/incrementar contenido campo.
ALT-K Ayuda en el teclado. Mayús-Tab Cambiar/decrementar contenido campo.
ALT-I Ayuda mnemotécnico de instrucciones. Intro Aceptar contenido campo.
ALT-N Conmutar opciones de visualización. CTRL-E Visualizar último error del sistema.
ALT-T Iniciar modo aprendizaje. F12 o teclado - Conmutar referencia digital.
ALT-Q Parar modo aprendizaje. F11 o teclado * Anular referencia digital.
ALT-N Reproducir fichero n (n = 0 a 9).
Teclas sólo disponibles en el editor del programa
ALT-B Conmutar campana de editor de textos Teclado + Aceptar escalón.
ALT-D Borrar un elemento de escalón/Borrar Intro Aceptar escalón.
un escalón.
ALT-S Almacenar bloque en PLC y disco. CTRL-Av Pág Escalón anterior.
ALT-X Visualizar nivel zoom. CTRL-Re Pág Siguiente escalón.
ALT-U Actualizar disco. ~ Desviación horizontal.
ALT-V Ventana de tabla variable. | Desviación vertical.
ALT-F2 Ir a tabla de referencias de operandos. Tab Ir al siguiente campo de operandos.
Teclas especiales
ALT-O Anulación de contraseña. Sólo disponible en la pantalla de contraseña del software de configuración.

GFK-0467M-SP D-1
D

La tarjeta de ayuda de la página siguiente contiene un listado con la ayuda principal y también
texto de ayuda para los mnemotécnicos de las instrucciones para el software Logicmaster 90-
30/20/Micro. Esta tarjeta está impresa por triplicado y perforada para poder extraerla fácilmente
del manual.

D-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
D

Lado impreso 1 de GFJ-055D en esta página.

GFK-0467M-SP Anexo D Funciones del teclado D-3


D

Lado impreso 2 de GFJ-055D en esta página.

D-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Anexo Utilización de números de coma flotante
E

Existen algunas consideraciones que deberá comprender cuando utilice números de coma flotante.
La primera sección expone estas consideraciones generales. Consulte en la página E-5 y siguientes
las instrucciones para la introducción y visualización de los números de coma flotante.

Nota
Las operaciones de coma flotante sólo son soportadas en las CPUs de las series
35x y 36x versión 9.00 o posterior, y en todas las versiones de las CPU352 y
series 37x.

Números de coma flotante

El software de programación proporciona la capacidad de editar, visualizar, almacenar y recuperar


números con valores reales. Algunas funciones operan con números de coma flotante. Sin
embargo, para usar números de coma flotante con el software de programación debe tener una
CPU de las series 35x, 36x o 37x (véase la Nota superior). Los números de coma flotante están
representados en notación científica decimal, con un indicador de seis dígitos significativos.

Nota
En este manual, los términos “coma flotante” y “real” se usan indistintamente
para describir la función de visualización /entrada de números de coma flotante
del software de programación.

Se utiliza el formato siguiente. Para números en el intervalo de 9999999 hasta .0001, la indicación
no tiene exponente y hasta seis o siete dígitos significativos. Por ejemplo:

Introducido Visualizado Descripción


.000123456789 +.0001234567 Diez dígitos, seis o siete significativos.
–12.345e-2 –.1234500 Siete dígitos, seis o siete significativos.
1234 +1234.000 Siete dígitos, seis o siete significativos.

Fuera del intervalo listado arriba, sólo se visualizan seis dígitos significativos y el indicador tiene
la siguiente forma +1.23456E+12

GFK-0467M-SP E-1
E

Terminología de números reales


Un número real se almacena en un registro de palabra doble de 32 bits. A continuación se exponen
los términos utilizados para las diferentes partes de un número real.

Mantisa Indicador del exponente

-1.23456E+12 Valor del


exponente

Signo Base Signo del


exponente

Signo – Más o menos. Almacenado en el bit más significativo (bit 32) de la


palabra doble. Un uno en el bit 32 indica un signo negativo. Un cero en el bit 32
i di signo
indica i positivo.
Base – Un símbolo de periodo (punto) que separa la parte entera del número de la
parte fraccionaria del número de la mantisa. Para los números decimales la base
se denominada normalmente punto decimal.
Exponente – (También denominado “Característica”). Se almacena en 8 bits, en
las posiciones de bits 31 hasta 24 de la palabra doble de 32 bits. El exponente
puede tener valores en el intervalo de +127 a –126; sin embargo, el exponente se
almacena siempre como número positivo, ya que la CPU suma automáticamente 127
a su valor antes de almacenarlo.
Mantisa – (También denominada “Significando”). El número base sin el signo y
el exponente. Se almacena en 23 bits, en bits de posición 23 hasta 1 de la palabra
de 32 bits.
Precisión – Hace referencia al número de dígitos significativos que se pueden
almacenar. Dado que un registro de entero doble utiliza 31 bits para almacenar un
número (el bit 32 se usa para el signo), puede potencialmente almacenar números
con mayor precisión que un registro real (coma flotante), que tan sólo utiliza 23
bits para almacenar la mantisa del número.

E-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
E

Formato interno de números de coma flotante

Los números de coma flotante se almacenan en el formato estándar IEEE de precisión simple. Este
formato requiere 32 bits que trasladan a dos registros adyacentes de 16 bits del PLC. La
decodificación de los bits se muestra en el diagrama inferior.

Bits 17-32 Bits 1-16

32 31 24 23 17 16 1

Mantisa 23 bits

Exponente 8 bits

Signo 1 bit (Bit 32)

El diagrama del registro utilizado por un número de coma flotante simple se muestra a
continuación. En este diagrama, si el número de coma flotante ocupa los registros %R0005 y
%R0006, por ejemplo, %R0005 es el registro menos significativo y el %R0006 es el registro más
significativo.

Registro menos significativo


Bits 1-16

16 1
Bit menos significativo: Bit 1

Bit más significativo: Bit 16

Registro más significativo


Bits 17-32

32 17
Bit menos significativo: Bit 17

Bit más significativo: Bit 32

GFK-0467M-SP Anexo E Utilización de números de coma flotante E-3


E

Valores de números de coma flotante

Use la siguiente tabla para calcular el valor de un número de coma flotante a partir de un número
binario almacenado en dos registros.

Exponente (e) Mantisa (f) Valor del número de coma flotante


255 No cero No un número válido (NaN).
255 0 –1s * ∞
0 < e < 255 Cualquier valor –1s * 2e–127 * 1.f
0 No cero –1s * 2–126 * 0.f
0 0 0
f = la mantisa. La mantisa es una fracción binaria.
e = el exponente. El exponente es un E entero tal que E+127 es la potencia de 2 por la que se debe
multiplicar la mantisa para dar como resultado el valor de coma flotante.
s = el bit de signo.
* = el operador de multiplicación.

Por ejemplo, considere el número de coma flotante 12.5. La representación binaria de coma
flotante IEEE del número es:
01000001 01001000 00000000 00000000

ó 41480000 hex. El bit más significativo (el bit de signo) es cero (s=0). Los siguientes ocho bits
más significativos son 10000010, ó 130 decimal (e=130).
La mantisa se almacena como número binario decimal con el punto decimal precediendo al más
significativo de los 23 bits. De este modo, el bit más significativo de la mantisa es un múltiplo de
2–1, el siguiente bit más significativo es un múltiplo de 2–2, y así sucesivamente hasta el bit menos
significativo, que es un múltiplo de 2–23. Los 23 bits finales (la mantisa) son:
1001000 00000000 00000000

El valor de la mantisa es entonces, .5625 (que es, 2–1 + 2–4).


Dado que e > 0 y e < 255, utilizamos la tercera fórmula de la tabla anterior:
número = –1s * 2e–127 * 1.f
= –10 * 2130–127 * 1.5625
= 1 * 23 * 1.5625
= 8 * 1.5625
= 12.5

De este modo se puede ver que la representación binaria anterior es correcta.


El intervalo de números que puede almacenarse en este formato va de ± 1.401298E–45 hasta
± 3.402823E+38 y el número cero.

E-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
E

Introducción y visualización de números de coma flotante

En la mantisa se pueden introducir y almacenar hasta seis o siete dígitos significativos de precisión;
sin embargo, el software de programación sólo mostrará los primeros seis de estos dígitos. La
mantisa puede ir precedida de un signo positivo o negativo. Si no se introduce ningún signo, se
presupone que el número de coma flotante es positivo.
Si se introduce un exponente, éste debe ir precedido de la letra E o e, y la mantisa debe contener
un punto decimal para evitar confundirlo con un número hexadecimal. El exponente puede ir
precedido por un signo; pero, si no se introduce ninguno, se presupone que éste es positivo. Si no
se introduce ningún exponente, se presupone que es cero. No se permiten espacios en un número
de coma flotante.
Para facilitar el uso, se aceptan varios formatos en la línea del comando y en el campo de entrada
de datos. Estos formatos incluyen un entero, un número decimal o un número decimal seguido de
un exponente. Estos números se convierten a la forma estándar para la visualización una vez que
el usuario ha introducido los datos y pulsado la tecla Intro.
A continuación se muestran ejemplos de entradas de números de coma flotante y su indicación
normalizada.

Introducido Visualizado en
Logicmaster
250 +250.0000
+4 +4.000000
–2383019 –2383019.
34. +34.00000
–.0036209 –.003620900
12.E+9 +1.20000E+10
–.0004E–11 –4.00000E–15
731.0388 +731.0388
99.20003e–29 +9.92000E–28

A continuación se muestran ejemplos de entradas incorrectas de números de coma flotante.

Entrada incorrecta Explicación/Resultado


–433E23 Falta el punto decimal. LM90 muestra el mensaje “Valor numérico
incorrecto.”
10E-19 Falta el punto decimal. LM90 muestra el mensaje “Valor numérico
incorrecto.”
1 0.e19 Hay un espacio entre el 1 y el 0 en la mantisa. Los números reales deben
introducirse sin espacios entre los dígitos o caracteres. Logicmaster
reconoce esta entrada como el valor incorrecto +1.000000.
4.1E19 Hay un espacio entre la e y el 19 en el exponente. Los números reales
deben introducirse sin espacios entre los dígitos o caracteres. Logicmaster
reconoce esta entrada como el valor incorrecto +4.100000.

GFK-0467M-SP Anexo E Utilización de números de coma flotante E-5


E

Errores en números y operaciones de coma flotante

Infinito positivo y negativo


En la CPU 352 ó 374, el desbordamiento se produce cuando una función REAL genera un número
mayor que 3.402823E+38 o menor que -3.402823E+38. En todos los demás modelos 90-30 que
soportan las operaciones de coma flotante, el intervalo es mayor que 216 o menor que –216. Cuando
su número está fuera del intervalo, la salida ok de la función se DESACTIVA, y el resultado se
pone a infinito positivo (para un número mayor que 3.402823E+38 en una CPU 352 ó 374 ó 216 en
todos los demás modelos) o infinito negativo (para un número menor que –3.402823E+38 ó –216 en
todos los demás modelos). Puede determinar dónde se produce esto comprobando el sentido de la
salida ok.

Valor de la Valor de la tabla


Mnemotécnico pantalla de de referencias Descripción
contactos (Hex)
POS_INF +DESBORDA- 7F80 0000 Representación de más infinito IEEE en
MIENTO hexadecimal
NEG_INF -DESBORDA- FF80 0000 Representación de menos infinito IEEE en
MIENTO hexadecimal

Nota
Si está utilizando software de coma flotante (todos los modelos con capacidad de
operar con coma flotante excepto la CPU 352 ó 374), los números se redondean a
cero (0) en ±1.175494E–38.

Si los infinitos que se producen por desbordamiento se utilizan como operandos de otras funciones
para números REALES, pueden arrojar un resultado no definido. Este resultado indefinido se
denomina NaN (no un número). Por ejemplo, el resultado de sumar más infinito y menos infinito
es indefinido. Cuando se invoca la función ADD_REAL con más infinito y menos infinito como
operandos de la misma, el resultado obtenido es NaN.

No un Número (NaN)
No un número es un número indefinido tal como el resultado de dividir cero entre cero. Infinito
positivo e infinito negativo no se consideran NaNs. Las siguientes secciones le ayudarán a
identificar cuando se ha obtenido un resultado NaN.

E-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
E

Códigos NaN para CPU 352 ó 374


En una CPU 352 ó 374, cada función REAL capaz de producir un NaN produce un código NaN
especializado que identifica la función y puede leerse en la correspondiente tabla de referencias.
La indicación en la pantalla de lógica de contactos de Logicmaster será el término
“DESBORDAMIENTO” sin signo. (Si el término “DESBORDAMIENTO" está precedido de un
sigo más o menos, indica infinito positivo o negativo.)

Códigos de No un Número (NaN) para las CPUs 352 y 374


Valor de la tabla
Mnemotécnico de referencias Descripción
(Hex)
NaN_ADD. 7F81 FFFF Valor en hex. de error de adición real
NaN_SUB 7F81 FFFF Valor en hex. de error de sustracción real
NaN_MUL 7F82 FFFF Valor en hex. de error de multiplicación real
NaN_DIV 7F83 FFFF Valor en hex. de error de división real
NaN_SQRT 7F84 FFFF Valor en hex. de error de raíz cuadrada real
NaN_LOG 7F85 FFFF Valor en hex. de error de logaritmo real
NaN_POW0 7F86 FFFF Valor en hex. de error de exponente real
NaN_SIN 7F87 FFFF Valor en hex. de error de seno real
NaN_COS 7F88 FFFF Valor en hex. de error de coseno real
NaN_TAN 7F89 FFFF Valor en hex. de error de tangente real
NaN_ASIN 7F8A FFFF Valor en hex. de error de seno inverso real
NaN_ACOS 7F8B FFFF Valor en hex. de error de coseno inverso real
NaN_BCD 7F8C FFFF Error de BCD-4 a real.
REAL_INDEF FFC0 0000 Real indefinido, error de dividir 0 entre 0.

Código NaN para las CPUs 35x, 36x, y 37x (exclusive la CPU 352)
Todas las CPUs de las Series 90-30 que soportan las operaciones de coma flotante basadas en
software (queda excluida la CPU 352, que está basada en hardware) producen sólo una salida NaN:
FFFF FFFF. La indicación en la pantalla de lógica de contactos de Logicmaster será el término
“DESBORDAMIENTO” sin signo.

Tipo de No un Número (NaN) para las CPUs 35x, 36x y 37x (exclusive la CPU 352)
Valor de la tabla
Mnemotécnico de referencias Descripción
(Hex)
NaN_SW FFFF FFFF Código de coma flotante de software para todos los
NaNs

GFK-0467M-SP Anexo E Utilización de números de coma flotante E-7


E

Propagación y flujo de energía para números NaN e infinito


Cuando un resultado NaN se introduce en otra función, pasa a través de la misma hasta el
resultado. Por ejemplo, si un NaN_ADD es el primer operando de la función SUB_REAL, el
resultado de SUB_REAL es NaN_ADD. Si los dos operandos de una función son NaNs, el primer
operando pasará a través de la función. Debido a esta característica de propagación de los NaNs a
través de las funciones, se puede identificar en qué función se ha originado el NaN.

Nota
Para NaN, la salida ok está DESACTIVADA (sin energía).

La siguiente tabla explica cuando el flujo de energía pasa o no pasa cuando se opera con números
que se toman como o iguales a infinito para operaciones binarias como adición, multiplicación, etc.
Como se ha mostrado anteriormente, las salidas que exceden los límites positivo o negativo se
toman como POS_INF o NEG_INF respectivamente.

Tabla E-1. Caso general de flujo de energía para operaciones matemáticas de coma flotante
Operación Entrada 1 Entrada 2 Salida Flujo de energía
Todas Número Número Infinito positivo o No
negativo
Todas excepto Infinito Número Infinito Sí
división
Todas Número Infinito Infinito Sí
División Infinito Número Infinito No
Todas Número Número NaN No

E-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Anexo Comparación de software de programación
F

Este manual ha sido escrito para los usuarios de Logicmaster (software de programación del PLC
basado en DOS). Los productos de software de PLC basados en Windows, tales como
CIMPLICITY® Machine Edition Logic Developer y VersaPro®, proporcionan la información del
juego de instrucciones del PLC en el sistema de ayuda en línea integrado en el software, en lugar de
hacerlo en un manual. Los usuarios del software de programación basado en Windows deberán
tener en cuenta que las instrucciones aparecen de modo diferente a como aparecen en una pantalla
Logicmaster (aunque operan del mismo modo en el PLC). El sistema de ayuda en línea dispone de
la más precisa información sobre el uso del juego de instrucciones en el software de programación
basado en Windows.
Además del sistema de ayuda en línea, puede remitirse a los siguientes manuales para informarse
sobre la utilización del software:
Software de programación de VersaPro™ Guía del usuario GFK-1670
Guía de iniciación de CIMPLICITY® Machine Edition, GFK-1868

Notas

Soporte para la instrucción secuenciador DRUM


Esta instrucción soportada por las CPUs 350-364 versión 10.00 y posteriores, y por todas las
versiones de la CPU37x, no es soportada por ninguna de las versiones de Logicmaster; por tanto,
no se expone en este manual. Esta instrucción es soportada en VersaPro, a partir de la versión 1.1,
y en todas las versiones de Logic Developer. La información acerca de esta instrucción puede
encontrarse en la ayuda en línea integrada en estos dos paquetes de software.

Inicio y fin de marcas de programa


Estas se utilizan en las pantalla de lógica de contactos de Logicmaster, pero no son visibles en las
pantallas de lógica de contactos de los programadores basados en Windows.

Instrucción posición de la dirección de la palabra de control


Determinadas instrucciones, tales como temporizadores, contadores y el secuenciador de bits
requieren un grupo de palabras consecutivas para almacenar ciertos cálculos internos. Este grupo
de palabras se denomina normalmente bloque de control. En Logicmaster, la dirección de la
primera palabra del bloque de control (así como cualquier valor almacenado en esa dirección)

GFK-0467M-SP F-1
F

aparece debajo de la instrucción en la pantalla de lógica de contactos (como %R00100 en la figura


inferior). Para programadores basados en Windows, esta dirección de referencia de la primera
palabra aparece dentro de la instrucción en la pantalla de la lógica de contactos (como %R00030 en
la figura inferior). VersaPro muestra también el nombre de la variable de la dirección de referencia
(Retardo en la figura inferior) dentro de la instrucción. Si nadie ha asignado un nombre de variable
a la dirección de referencia, la dirección misma será el nombre de variable por defecto (de modo
que la dirección de referencia aparecerá dentro de la instrucción en ambos lugares). Arriba a la
derecha de la palabra Retardo en la vista VersaPro está el valor 113, el cual representa el valor
actual almacenado en esa variable.

Habilitar ONDTR Q
0.10s
Valor actual
Reset R
Nombre de
Valor PV variable
predefinido
Dirección
%R00100 de
+00135 Dirección referencia
Valor actual de
referencia
VersaPro
Logicmaster

Diferencias de visualización de números reales


Existen diferencias en el modo en que los programas muestran los resultados indefinidos, como el
que se obtiene cuando se intenta realizar una división entre cero. El Anexo E de este manual
expone el modo en que Logicmaster muestra estos resultados en la pantalla de contactos y en las
tablas de referencias.

F-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia – Mayo 2002 GFK-0467M-SP
Indice
cálculo del tiempo de barrido, 2-9

( comunicaciones del DSM con el PLC, 2-16


comunicaciones del PCM con el PLC, 2-15
contribuciones del tiempo de exploración para
(PID)Proporcional Integral Diferencial (PID), las CPUs de las series 35x/36x/37x, 2-6, 2-8
12-84 exploración de entradas, 2-10
exploración de la lógica del programa de
A aplicación, 2-10
exploración de salidas, 2-11
Acceso rápido al estado de la placa de fondo., modo con tiempo de barrido constante, 2-43
12-75 modo de tiempo de barrido constante, 2-16
Acción del fallo modo de tiempo de barrido constante
configurado, 2-16
acción de fallo del PLC, B-5
modo STOP, 2-17
Acción del fallo, 3-4 solución de la lógica, 2-10
fallos de diagnóstico, 3-4
tareas internas, 2-10
fallos fatales, 3-4
variaciones del barrido de programa estándar, 2-
fallos informativos, 3-4
16
Acción fallo ventana de comunicaciones del programador, 2-
acción de fallos de E/S, B-11 11
Acciones de los fallos, 3-9 ventana de comunicaciones del sistema, 2-13
ACOS, 6-12 Barrido, PLC, 2-2
ADD, 6-2 barrido de programa estándar, 2-2
ADD_IOM, 2-32 cálculo del tiempo de barrido, 2-9
ADD_SIO, 2-32 comunicaciones del DSM con el PLC, 2-16
Adición de un módulo de E/S, 3-18 comunicaciones del PCM con el PLC, 2-15
Alarma, 3-2 contribuciones del tiempo de exploración para
las CPUs de las series 35x/36x/37x, 2-6, 2-8
Alias, 2-27
exploración de entradas, 2-10
AND, 8-3 exploración de la lógica del programa de
ANY_FLT, 2-32 aplicación, 2-10
APL_FLT, 2-31 exploración de salidas, 2-11
ARRAY_MOVE, 10-2 modo con tiempo de barrido constante, 2-43
ASIN, 6-12 modo de tiempo de barrido constante, 2-16
ATAN, 6-12 modo STOP, 2-17
Avería de acceso por contraseña, 3-13 solución de la lógica, 2-10
Avería de la suma de comprobación del tareas internas, 2-10
programa, 3-11 variaciones del barrido de programa estándar, 2-
16
Avería de la suma de comprobación, bloque ventana de comunicaciones del programador, 2-
del programa, 3-11 11
Avería del software del módulo opcional, 3-11 ventana de comunicaciones del sistema, 2-13
Avería del software, módulo opcional, 3-11 BCD-4, 2-30, 11-2
Avería en el software del sistema de la CPU BCLR, 8-15
del PLC, 3-14 Bit, 2-29
Avería en las comunicaciones durante el BITSEQ, 9-11
almacenamiento, 3-16 memoria requerida, 9-12
Averías de E/S externas, 3-2 BLKCLR, 9-7
Averías de funcionamiento, 3-2 BLKMOV, 9-5
Averías internas, 3-2 Bloque de programa
cómo se llama a los bloques de subrutina, 2-24
B Bloqueo/desbloqueo de subrutinas, 2-46
BLOQUEOEDITAR, 2-46
BAD_PWD, 2-32 BLOQUEOVER, 2-46
Barrido de la CPU, 2-2 Bobina
Barrido de programa estándar, 2-2 con comprobación de bobina múltiple e
Barrido de programa, estándar, 2-2 individual, 4-6
Barrido del PLC, 2-2 Bobina de continuación, 4-8
barrido de programa estándar, 2-2 Bobina de transición negativa, 4-5

GFK-0467M-SP Indice-1
Indice

Bobina de transición positiva, 4-4 Contador incremental, 5-12


Bobina inversa, 4-4 Contadores
Bobina RESET, 4-5 datos de bloques de función, 5-1
Bobina RESET retentiva, 4-7 DNCTR, 5-14
Bobina retentiva, 4-4 UPCTR, 5-12
Bobina retentiva inversa, 4-4 Contraseñas, 2-45
Bobina SET, 4-5 Contribuciones del tiempo de exploración para
Bobina SET retentiva, 4-6 las CPUs de las series 35x/36x/37x, 2-6,
Bobinas, 4-2, 4-3 2-8
bobina de continuación, 4-8 COS, 6-12
bobina de transición negativa, 4-5 CPUs de las series 35x y 3637x interruptor con
bobina de transición positiva, 4-4 llave, 2-19
bobina inversa, 4-4
bobina RESET, 4-5
bobina RESET retentiva, 4-7 D
bobina retentiva, 4-4
Bobina retentiva inversa, 4-4
Datos de diagnóstico, 2-52
bobina SET, 4-5 Datos globales, 2-52
bobina SET retentiva, 4-6 Datos Globales de Ethernet, 2-52
Borrar tablas de fallos, 12-63 Datos globales de Genius, 2-52
BPOS, 8-17 DEG, 6-16
BSET, 8-15 Desconexión, 2-41
BTST, 8-13 Descripción del fallo, 3-17
Buscar la función mover tabla, 10-2 DINT, 2-29, 11-5
Byte, 2-29 Discordancia en la configuración del sistema,
3-10
Discordancia en la configuración, sistema, 3-10
C DIV, 6-2
Cálculo del tiempo de barrido, 2-9 DNCTR, 5-14
CALL (LLAMADA), 12-2 Doble precisión con signo, 2-29
Capacidad retentiva de datos, 2-28 DOIO
DOIO avanzada para CPUs modelo 331 y
Capacidad retentiva de datos, 2-28
superiores, 12-8
Categoría fallo, 3-17
DOIO (EJECUTAR E/S), 12-3
CFG_MM, 2-31
Códigos de error, B-5
Códigos de error de alarma, B-5 E
COMMENT (COMENTARIO), 12-37
COMMREQ, 9-15 Efectos de fallo adicionales, 3-5
código, descripción y corrección de error, 3-11 Ejemplos
SER, 12-21
Comunicaciones con el PLC, 2-16
Comunicaciones de Ethernet, 2-52 END (FIN), 12-26
Comunicaciones del DSM con el PLC, 2-16 ENDMCR, 12-33
Comunicaciones del PCM con el PLC, 2-15 ENDMCR anidada, 12-33
Condiciones por defecto para los módulos de Enlace horizontal, 4-7
salida del Modelo 30, 2-51 Enlace vertical, 4-7
Conexión, 2-38 Enlaces, horizontales y verticales., 4-7
Contacto de continuación, 4-8 Entero con signo, 2-29
Contacto normalmente abierto, 4-3 EQ, 7-1
contacto normalmente cerrado, 4-3 Estadística de Auto Reset, 12-83
Contactos, 4-1 Estructura de E/S, PLC de las Series 90-30, 2-
contacto de continuación, 4-8 49
contacto normalmente abierto, 4-3 Estructura del bloque de función, 2-33
contacto normalmente cerrado, 4-3 parámetros de los bloques de función, 2-35
Contactos del bloque de tiempo, 2-44 Estructura del bloque de función
Contador decremental, 5-14 flujo de energía, 2-36

Indice-2 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice

formato de los bloques de función del programa, adición de un módulo de E/S, 3-18
2-33 avería de acceso por contraseña, 3-13
formato de relés, 2-33 avería de la suma de comprobación del
Estructura del programa programa, 3-11
cómo se llama a los bloques de subrutina, 2-24 avería del software del módulo opcional, 3-11
EXP, 6-14 avería en el software del sistema de la CPU del
Explicación y corrección de fallos, 3-1 PLC, 3-14
acceso a información adicional de fallos, 3-7 avería en las comunicaciones durante el
adición de un módulo de E/S, 3-18 almacenamiento, 3-16
avería de acceso por contraseña, 3-13 averías de E/S externas, 3-2
avería de la suma de comprobación del averías de funcionamiento, 3-2
programa, 3-11 averías internas, 3-2
avería del software del módulo opcional, 3-11 clases de fallos, 3-2
avería en el software del sistema de la CPU del códigos de error, B-5
PLC, 3-14 discordancia en la configuración del sistema, 3-
avería en las comunicaciones durante el 10
almacenamiento, 3-16 efectos de fallo adicionales, 3-5
categoría fallo, 3-17 explicaciones de la tabla de fallos de E/S, 3-17
descripción de fallo, 3-17 explicaciones de la tabla de fallos del PLC, 3-8
discordancia en la configuración del sistema, 3- fallo de aplicación, 3-12
10 grupo de fallos de E/S, B-10
explicaciones de la tabla de fallos de E/S, 3-17 grupo de fallos del PLC, B-4
explicaciones de la tabla de fallos del PLC, 3-8 interpretación de fallos, B-1
fallo de aplicación, 3-12 módulo opcional
fallos no configurables, 3-9 reinicialización, adición o extra, 3-9
grupo de fallos de E/S, B-10 no existe programa de usuario, 3-13
grupo de fallos del PLC, B-4 pérdida de un módulo de E/S, 3-17
interpretación de fallos, B-1 pérdida o ausencia de módulo opcional, 3-9
módulo opcional programa de usuario corrompido en la conexión,
reinicialización, adición o extra, 3-9 3-13
no existe programa de usuario, 3-13 reacción del sistema a los fallos, 3-3
pérdida de un módulo de E/S, 3-17 referencias, 3-4
pérdida o ausencia de módulo opcional, 3-9 señal de pila baja, 3-11
programa de usuario corrompido en la conexión, tabla de fallos de E/S, 3-3, 3-6
3-13 tabla de fallos de PLC, 3-3, 3-6
señal de pila baja, 3-11 tiempo de barrido constante excedido, 3-12
tabla de fallos de E/S, 3-6 Fallos de diagnóstico, 3-4
tabla de fallos de PLC, 3-6 adición de un módulo de E/S, 3-18
tiempo de barrido constante excedido, 3-12 fallo de aplicación, 3-12
tipo de fallo, 3-17 módulo opcional
tratamiento de fallos, 3-2 reinicialización, adición o extra, 3-9
Exploración de entradas, 2-10 pérdida de un módulo de E/S, 3-17
Exploración de la lógica del programa de pérdida o ausencia de módulo opcional, 3-9
señal de pila baja, 3-11
aplicación, 2-10
tiempo de barrido constante excedido, 3-12
Exploración de salidas, 2-11
Fallos fatales, 3-4
Exploración, entradas, 2-10 avería de la suma de comprobación del
Exploración, salidas, 2-11 programa, 3-11
EXPT, 6-14 avería del software del módulo opcional, 3-11
avería en el software del sistema de la CPU del
F PLC, 3-14
avería en las comunicaciones durante el
Fallo de aplicación, 3-12 almacenamiento, 3-16
Fallos, 3-2 discordancia en la configuración del sistema, 3-
10
acceso a información adicional de fallos, 3-7
programa de usuario corrompido en la conexión,
acción de fallo del PLC, B-5
3-13
acción de fallos de E/S, B-11
acción del fallo, 3-4 Fallos informativos, 3-4
acciones, 3-9 avería de acceso por contraseña, 3-13

GFK-0467M-SP Indice Indice-3


Indice

no existe programa de usuario, 3-13 Función No igual, 7-1


Fallos, interpretación, B-1 Función NO lógica, 8-8
Flujo de energía, 2-36 Función O exclusiva lógica, 8-5
Formatos de datos de E/S, 2-51 Función O lógica, 8-3
Función activar bit, 8-15 Función posición de bit, 8-17
Función arco coseno, 6-12 Función potencia de e, 6-14
Función arco seno, 6-12 Función potencia de X, 6-14
Función arco tangente, 6-12 Función raíz cuadrada, 6-10
Función borrar bit, 8-15 Función registro de desplazamiento, 9-8
Función borrar bloque, 9-7 Función rotar a la derecha, 8-11
Función buscar mayor o igual que, 10-7 Función rotar a la izquierda, 8-11
Función buscar menor o igual que, 10-7 Función secuenciador de bits, 9-11
Función comentario, 12-37 Función seno, 6-12
Función comparación enmascarada, 8-19 Función tangente, 6-12
Función convertir a BCD-4, 11-2 Función test de bit, 8-13
Función convertir a entero con signo, 11-3 Función truncar, 11-11
Función convertir a entero con signo de doble Función Y lógica, 8-3
precisión, 11-5 Funciones de control, 12-1
Función convertir a palabra, 11-9 CALL (LLAMADA), 12-2
Función convertir a real, 11-7 COMMENT, 12-37
Función coseno, 6-12 DOIO, 12-3
Función de adición, 6-2 DOIO avanzada para CPUs modelo 331 y
Función de bloqueo de bloques, 2-46 superiores, 12-8
bloqueo permanente de una subrutina, 2-47 END (FIN), 12-26
BLOQUEOEDITAR, 2-46 ENDMCR, 12-33
BLOQUEOVER, 2-46 JUMP, 12-34
Función de conversión a radianes, 6-16 LABEL, 12-36
Función de desplazamiento hacia la derecha, 8- PID, 12-84
Registro de sucesos secuenciales, 12-11
9 SER, 12-10
Función de desplazamiento hacia la izquierda, SVCREQ, 12-39
8-9 Funciones de conversión, 11-1
Función de división, 6-2 BCD-4, 11-2
Función de intervalo, 7-4 DINT, 11-5
Función de llamada, 12-2 INT, 11-3
Función de logaritmo natural, 6-14 REAL, 11-7
Función de multiplicación, 6-2 TRUN, 11-11
Función de petición de comunicaciones, 9-15 WORD, 11-9
código, descripción y corrección de error, 3-11 Funciones de operaciones con bits, 8-1
Función de sustracción, 6-2 AND, 8-3
Función Do I/O, 12-3 BCLR, 8-15
BPOS, 8-17
función DO I/O avanzada para las CPUs 331 y
BSET, 8-15
posteriores, 12-8
BTST, 8-13
Función DO I/O avanzada para las CPUs 331 y MCMP, 8-19
posteriores, 12-8 NOT, 8-8
Función End (Fin), 12-26 OR, 8-3
Función fin de relé de control maestro, 12-33 ROL, 8-11
Función Igual, 7-1 ROR, 8-11
Función Mayor o igual que, 7-1 SHL, 8-9
Función Mayor que, 7-1 SHR, 8-9
Funcíón Menor o igual que, 7-1 XOR, 8-5
Función Menor que, 7-1 Funciones de petición de servicio
Función Módulo, 6-8 Acceso rápido al estado de la placa de fondo.,
12-75
Función mover, 9-2 borrar tablas de fallos, 12-63
Función mover bloque, 9-5 estadística de auto reset (#49), 12-83

Indice-4 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice

interrogar E/S, 12-72 Funciones matemáticas, 6-1


Leer el estado de sobrecontrol de E/S, 12-69 ACOS, 6-12
leer el estado Run del PLC.12, 12-61 ASIN, 6-12
Leer el nombre de carpeta (#10), 12-59 ATAN, 6-12
leer el reloj de tiempo transcurrido, 12-68 COS, 6-12
Leer el tiempo de barrido (#9), 12-58 EXP, 6-14
Leer ID del PLC (#11), 12-60 EXPT, 6-14
leer la suma de comprobación maestra, 12-70 LN, 6-14
leer la última entrada registrada en la tabla de LOG, 6-14
fallos, 12-64 SIN, 6-12
leer tiempo transcurrido con la corriente TAN, 6-12
desconectada, 12-73 Funciones matemáticas
Leer valores de ventana (#2), 12-45 ADD, 6-2
lista, 12-39 DEG, 6-16
Modificar la ventana de comunicaciones del DIV, 6-2
programador (#3), 12-47 MOD, 6-8
Modificar la ventana de comunicaciones del MUL, 6-2
sistema (#4), 12-49 RAD, 6-16
modificar/leer el reloj calendario, 12-53 SQRT, 6-10
Modificar/leer el temporizador de barrido SUB, 6-2
constante (#1), 12-42 Funciones para mover datos, 9-1
Modificar/leer número de palabras para suma de BITSEQ, 9-11
comprobación, 12-51 BLKCLR, 9-7
parada del PLC, 12-62 BLKMOV, 9-5
reinicializar auto reset tras fallo fatal (#48), 12- COMMREQ, 9-15
81 MOVE, 9-2
reinicializar el módulo inteligente (#24), 12-71 SHFR, 9-8
Reinicializar el temporizador watchdog (#8), 12- Funciones relacionales, 7-1
57
EQ, 7-1
saltar la siguiente exploración de entradas y
GE, 7-1
salidas., 12-74
GT, 7-1
Funciones de relé, 4-1 Intervalo, 7-4
bobina de continuación, 4-8 IT, 7-1
bobina de transición negativa, 4-5 LE, 7-1
bobina de transición positiva, 4-4 NE, 7-1
bobina inversa, 4-4
bobina RESET, 4-5
bobina RESET retentiva, 4-7
bobina retentiva, 4-4
G
Bobina retentiva inversa, 4-4 GE, 7-1
bobina SET, 4-5 Grupo de fallos, B-4
bobina SET retentiva, 4-6 grupo fallo, B-10
bobinas, 4-3 GT, 7-1
Bobinas, 4-2
contacto de continuación, 4-8
contacto normalmente abierto, 4-3 H
contacto normalmente cerrado, 4-3
Contactos, 4-1 HRD_CPU, 2-31
enlaces, horizontales y verticales., 4-7 HRD_FLT, 2-32
Funciones de tablas, 10-1 HRD_SIO, 2-32
ARRAY_MOVE, 10-2
Función buscar menor o igual que, 10-7
SRCH_GE, 10-7 I
Funciones exponenciales, 6-14 Instrucción etiqueta, 12-36
potencia de e, 6-14
Instrucción salto, 12-34
potencia de X, 6-14
Instrucciones de programación
Funciones logarítmicas, 6-14
Logaritmo base 10, 6-14
funciones de relé, 4-1
Logaritmo natural, 6-14 mnemotécnico de las instrucciones, C-1

GFK-0467M-SP Indice Indice-5


Indice

Funciones de control, 12-1 Leer tras auto reset tras fallo fatal, 12-81
funciones de conversión, 11-1 LN, 6-14
funciones de operaciones con bits, 8-1 Localización de fallos, 3-1
funciones de tablas, 10-1 acceso a información adicional de fallos, 3-7
funciones matemáticas, 6-1 explicaciones de la tabla de fallos de E/S, 3-17
Funciones para mover datos, 9-1 explicaciones de la tabla de fallos del PLC, 3-8
funciones relacionales, 7-1 fallos no configurables, 3-9
Instrucciones, programación interpretación de fallos, B-1
funciones de relé, 4-1 tabla de fallos de E/S, 3-6
funciones matemáticas, 6-1 tabla de fallos de PLC, 3-6
funciones relacionales, 7-1 LOG, 6-14
funciones de operaciones con bits, 8-1 Logaritmo base 10, 6-14
Funciones para mover datos, 9-1 LOS_IOM, 2-31
funciones de tablas, 10-1 LOS_SIO, 2-32
funciones de conversión, 11-1 LOW_BAT, 2-31
Funciones de control, 12-1
mnemotécnico de las instrucciones, C-1
INT, 2-29, 11-3
M
Interrogar E/S, 12-72 Mantenimiento, 3-1
Interruptor con llave en las CPUs de las Series Manuales
35x, 36x y 37x:, 2-19 para módulos de E/S, 2-49
IO_FLT, 2-32 MCR anidado, 12-27
IO_PRES, 2-32 Memoria corrompida, 3-8
IT, 7-1 Memoria, corrompida, 3-8
Mnemotécnico de las instrucciones, C-1
J Mnemotécnico, instrucciones, C-1
MOD, 6-8
Juego de instrucciones Modificar el modo de la ventana de
Funciones de control, 12-1 comunicaciones del programador y el
funciones de conversión, 11-1 valor del temporizador., 12-47
funciones de operaciones con bits, 8-1 Modificar el modo de la ventana de
funciones de relé, 4-1 comunicaciones del sistema y el valor del
funciones de tablas, 10-1 temporizador, 12-49
funciones matemáticas, 6-1
funciones para mover datos, 9-1
Modificar/leer el reloj calendario, 12-53
funciones relacionales, 7-1 Modificar/leer el temporizador de barrido
JUMP (SALTO), 12-34 constante, 12-42
Modificar/leer número de palabras para suma
de comprobación, 12-51
L Modo con tiempo de barrido constante, 2-43
LABEL (ETIQUETA), 12-36 Modo de tiempo de barrido constante, 2-16
LE, 7-1 Modo STOP, 2-17
Leer el estado de sobrecontrol de E/S, 12-69 Modos de ventana de comunicaciones, 2-18
Leer el estado Run del PLC., 12-61 Módulo opcional
reinicialización, adición o extra, 3-9
Leer el nombre de carpeta, 12-59
Módulos de E/S del Modelo 30, 2-49
Leer el reloj de tiempo transcurrido, 12-68
Módulos de E/S Modelo 20, 2-53
Leer el tiempo de barrido desde el comienzo
MOVE, 9-2
del barrido, 12-58
MSKCMP, 8-19
Leer ID del PLC, 12-60
MUL, 6-2
Leer la suma de comprobación maestra, 12-70
Leer la última entrada registrada en la tabla de
fallos, 12-64 N
Leer los valores de la ventana, 12-45
Leer tiempo transcurrido con la corriente NaN, E-6
desconectada, 12-73 NE, 7-1

Indice-6 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice

Niveles de protección, 2-45 Pérdida de un módulo de E/S, 3-17


peticiones de cambio, 2-46 Pérdida o ausencia de módulo opcional, 3-9
Niveles, protección, 2-45 Petición de servicio
No existe programa de usuario, 3-13 Modificar/leer número de palabras para suma de
No un número, E-6 comprobación, 12-51
NOT, 8-8 Peticiones de cambio de nivel de protección, 2-
Números de coma flotante, E-1 46
errores en números y operaciones de coma PID, 12-84
flotante, E-6 Procesador de alarmas, 3-2
formato interno de números de coma flotante, E- Programa de usuario corrompido en la
3 conexión, 3-13
introducción y visualización de números de Protección de la memoria Flash en las CPUs de
coma flotante, E-5
valores de números de coma flotante, E-4
las series 35x/36x/37x, 2-19
Números reales
terminología, E-2 R
RAD, 6-16
O RANGE, 7-4
OFDT, 5-9 REAL
Convertir a REAL, 11-7
ONDTR, 5-3
Estructura de tipo de datos, 2-30
Operación del sistema, 2-1 Utilización de números de coma flotante, E-1
organización del programa y datos/referencias
Utilización de números reales, E-1
del usuario, 2-21
relojes y temporizadores, 2-42
referencias, 2-26
Resumen del barrido del PLC, 2-2 Referencias de datos globales, 2-27
secuencias de conexión y desconexión, 2-38 Referencias de entrada, digitales, 2-26
seguridad del sistema, 2-45 Referencias de estados del sistema, 2-27, 2-30
sistema de E/S del PLC de las Series 90-20, 2- ADD_IOM, 2-32
48 ADD_SIO, 2-32
sistema de E/S del PLC de las Series 90-30, 2- ANY_FLT, 2-32
48 APL_FLT, 2-31
Operación del sistema de PLC, 2-1 BAD_PWD, 2-32
OR, 8-3 CFG_MM, 2-31
Organización del programa y datos del usuario HRD_CPU, 2-31
HRD_FLT, 2-32
números de coma flotante, E-1
HRD_SIO, 2-32
organización del programa y datos/referencias IO_FLT, 2-32
del usuario IO_PRES, 2-32
referencias de usuario, 2-25 LOS_IOM, 2-31
Organización del programa y datos/referencias LOS_SIO, 2-32
del usuario LOW_BAT, 2-31
estado del sistema, 2-30 OV_SWP, 2-31
estructura del bloque de función, 2-33 PB_SUM, 2-31
tipos de datos, 2-29 SFT_CPU, 2-32
Organización del programa y datos/referencias SFT_FLT, 2-32
del usuario, 2-21 SNPX_RD, 2-31
capacidad retentiva de datos, 2-28 SNPX_WT, 2-31
transiciones y overrides, 2-27 SNPXACT, 2-31
OV_SWP, 2-31 STOR_ER, 2-32
Overrides, 2-27 SY_FLT, 2-32
SY_PRES, 2-32
Referencias de estados, sistema, 2-27, 2-30
P Referencias de los fallos, 3-4
Referencias de registro, 2-25
Palabra, 2-29 entradas analógicas, 2-25
Parámetros de los bloques de función, 2-35 registros del sistema, 2-25
PB_SUM, 2-31 salidas analógicas, 2-25

GFK-0467M-SP Indice Indice-7


Indice

Referencias de registro de entradas, analógicas, SFT_CPU, 2-32


2-25 SFT_FLT, 2-32
Referencias de registro de salidas, analógicas, SHFR, 9-8
2-25 SHL, 8-9
Referencias de registro del sistema, 2-25 SHR, 8-9
Referencias de salidas, digitales, 2-26 SIN, 6-12
Referencias de usuario, 2-25 Sistema de E/S del PLC de las Series 90-20, 2-
datos globales, 2-27 48
digitales internas, 2-26 módulos de E/S Modelo 20, 2-53
digitales temporales, 2-26 Sistema de E/S del PLC de las Series 90-30, 2-
entradas analógicas, 2-25 48
entradas digitales, 2-26 condiciones por defecto para los módulos de
estado del sistema, 2-27, 2-30 salida del Modelo 30, 2-51
referencias de registro, 2-25 datos de diagnóstico, 2-52
registros del sistema, 2-25 datos globales, 2-52
salidas analógicas, 2-25 estructura de E/S, 2-49
salidas digitales, 2-26 formatos de datos de E/S, 2-51
Referencias de usuario módulos de E/S del Modelo 30, 2-49
referencias digitales, 2-26 Sistema de E/S, PLC de las Series 90-20, 2-48
Referencias digitales, 2-26 módulos de E/S Modelo 20, 2-53
datos globales, 2-27 Sistema de E/S, PLC de las Series 90-30, 2-48
digitales internas, 2-26 condiciones por defecto para los módulos de
digitales temporales, 2-26 salida del Modelo 30, 2-51
entradas digitales, 2-26 datos de diagnóstico, 2-52
estado del sistema, 2-27, 2-30 datos globales, 2-52
salidas digitales, 2-26 formatos de datos de E/S, 2-51
Referencias internas, digitales, 2-26 módulos de E/S del Modelo 30, 2-49
Referencias temporales, digitales, 2-26 SNPX_RD, 2-31
Registro de sucesos secuenciales, 12-11. Véase SNPX_WT, 2-31
función SER SNPXACT, 2-31
Reinicializar el módulo inteligente, 12-71 Solución de la lógica, 2-10
Reinicializar el temporizador watchdog, 12-57 SQRT, 6-10
Reloj de la hora del día, 2-42 SRCH_GE, 10-7
Reloj de tiempo transcurrido, 2-42 SRCH_LE, 10-7
Relojes, 2-42 STOR_ER, 2-32
reloj de la hora del día, 2-42 SUB, 6-2
reloj de tiempo transcurrido, 2-42 Subrutinas periódicas, 2-25
ROL, 8-11 Subrutinas, bloqueo/desbloqueo, 2-46
ROR, 8-11 Suspender E/S., 12-74
SVCREQ. Véase Funciones de petición de
S servicio
SVCREQ parada del PLC, 12-62
Saltar la siguiente exploración de entradas y SY_FLT, 2-32
salidas, 12-74 SY_PRES, 2-32
Secuencias de conexión y desconexión, 2-38
conexión, 2-38
desconexión, 2-41 T
Seguridad del sistema, 2-45
Seguridad, sistema Tabla de fallos de E/S, 3-3, 3-6, B-8
acción fallo, B-11
bloqueo/desbloqueo de subrutinas, 2-46
acciones de fallos para fallos específicos, B-11
contraseñas, 2-45
datos específicos de fallos simbólicos, B-11
niveles de protección, 2-45
datos específicos fallo, B-11
peticiones de cambio de nivel de protección, 2-
dirección de fallos, B-10
46
dirección de referencia, B-9
Señal de pila baja, 3-11 explicaciones, 3-17
Señal de pila, baja, 3-11 grupo fallo, B-10

Indice-8 PLC Series 90™-30/20/Micro Juego de instrucciones de la CPU Manual de referencia–Mayo 2002 GFK-0467M-SP
Indice

indicador largo/corto, B-9 Palabra, 2-29


interpretación de fallos, B-1 REAL, 2-30
marca de la hora del fallo, B-12 TMR, 5-5
punto, B-10 Transiciones, 2-27
rack, B-10 Tratamiento de fallos, 3-2
slot, B-10 acción del fallo, 3-4
Tabla de fallos de PLC, 3-3, 3-6, B-1 procesador de alarmas, 3-2
acción del fallo, B-5 TRUN, 11-11
códigos de error, B-5
Datos adicionales de fallo, B-7
explicaciones, 3-8
grupo de fallos, B-4
U
indicador largo/corto, B-3 UPCTR, 5-12
interpretación de fallos, B-1
marca de la hora del fallo, B-7
rack, B-3 V
reserva, B-3 Variaciones del barrido de programa estándar,
slot, B-3
tarea, B-3
2-16
TAN, 6-12 Ventana
ventana de comunicaciones del programador, 2-
Tareas internas, 2-10 11
Teclas ALT, D-1 ventana de comunicaciones del sistema, 2-13
Teclas CTRL, D-1 Ventana de comunicaciones del programador,
Temporizador de barrido constante, 2-43 2-11
Temporizador de retardo a la desconexión, 5-9 Ventana de comunicaciones del sistema, 2-13
Temporizador de tiempo desde la desconexión, VersaPro
2-43 nota para los usuarios, 1-3
Temporizador retardo a la conexión, 5-3, 5-5
Temporizador watchdog, 2-43
Temporizadores, 2-42 W
contactos del bloque de tiempo, 2-44 WORD, 11-9
datos de bloques de función, 5-1
OFDT, 5-9
ONDTR, 5-3
temporizador de barrido constante, 2-43
X
Temporizador de tiempo desde la desconexión, XOR, 8-5
2-43
Temporizador watchdog, 2-43
TMR, 5-5
Tiempo de barrido constante excedido, 3-12
Tiempos de ejecución booleana de la CPU, A-
15
Tiempos de ejecución de las instrucciones, A-1
modelos 35x-36x, A-6
modelos estándar, A-2
SER, A-10
Tiempos de ejecución, instrucciones, A-1
modelos 35x-36x, A-6
modelos estándar, A-2
SER, A-10
Tipo de fallo, 3-17
Tipos de datos, 2-29
BCD-4, 2-30
Bit, 2-29
Byte, 2-29
DINT, 2-29
INT, 2-29

GFK-0467M-SP Indice Indice-9

Vous aimerez peut-être aussi