Está en la página 1de 727

Allen-Bradley

Juego de
instrucciones de
Manual de
SLC 500t y
MicroLogixt 1000
referencia
(Nos. de cat. 1747-L511,
1747-L514, 1747-L524,
1747-L532, 1747-L541,
1747-L542, 1747-L543, y
controladores de boletín 1761)
Información importante para el usuario
Debido a la variedad de usos de los productos descritos en esta publicación, las
personas responsables de la aplicación y uso de este equipo de control deben
asegurarse de que se hayan seguido todos los pasos necesarios para que cada
aplicación y uso cumplan con todos los requisitos de rendimiento y seguridad,
incluyendo leyes, reglamentaciones, códigos y normas aplicables.

Los ejemplos de ilustraciones, gráficos, programas y esquemas mostrados, en esta


guía tienen la única intención de ilustrar el texto. Debido a las muchas variables y
requisitos asociados con cualquier instalación particular, Allen-Bradley no puede
asumir responsabilidad u obligación (incluyendo responsabilidad de propiedad
intelectual) por el uso real basado en los ejemplos mostrados en esta publicación.

La publicación de Allen-Bradley SGI-1.1, Safety Guidelines for the Application,


Installation, and Maintenance of Solid State Control (disponible en la oficina de
Allen-Bradley local), describe algunas diferencias importantes entre equipos
transistorizados y dispositivos electromecánicos, las cuales deben tomarse en
consideración al usar productos tales como los descritos en esta publicación.

Está prohibida la reproducción total o parcial de los contenidos de esta publicación


de propiedad exclusiva sin el permiso escrito de Allen-Bradley Company, Inc.

En este manual hacemos anotaciones para advertirle sobre consideraciones de


seguridad:

Identifica información o prácticas o circunstancias que pueden producir


lesiones personales o incluso la muerte, daños materiales o pérdidas
económicas.

Las notas de “Atención” le ayudan a:


• identificar un peligro
• evitar un peligro
• reconocer las consecuencias

Nota Identifica información crítica para una correcta aplicación y entendimiento


del productol.
SLC 500, SLC 5/01, SLC 5/02, SLC 5/03, SLC 5/04, MicroLogix, PanelView, RediPANEL, Dataliner, DH+,
Data Highway Plus son marcas comerciales de Allen-Bradley Company, Inc.
Gateway 2000 es una marca comercial de Gateway 2000, Inc.
VERSA es una marca comercial de Nippon Electric Co. Information Systems Inc.
Tabla de contenido

Tabla de contenido

Prefacio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P-1
Quién debe usar este manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P-2
Propósito de este manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P-2
Contenido de este manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P-3
Documentación asociada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P-5
Técnicas comunes usadas en este manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . P-6

1 Instrucciones básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–1


Instrucciones de bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–1
Instrucciones del temporizador/contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–2
Acerca de las instrucciones básicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–2
Descripción general de las instrucciones de bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–3
Archivos de datos de salida y entrada (archivos O:0 e I:1) . . . . . . . . . . . . . . . . . . . . . . . 1–3
Archivo de estado (archivo S2:) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–4
Archivo de datos de bit (B3:) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–5
Archivos de datos de temporizador y contador (T4: y C5:) . . . . . . . . . . . . . . . . . . . . . . 1–5
Archivo de datos de control (R6:) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–6
Archivo de datos enteros (N7:) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–7
Examine si cerrado (XIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–9
Examine si abierto (XIO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–9
Active la salida (OTE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–10
Enclavamiento de salida (OTL) y desenclavamiento de salida (OTU) . . . . . . . . . . . . . . . . 1–11
Cómo usar OTL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–11
Cómo usar OTU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–11
One–Shot Rising (OSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–12
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–12
Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–12
Descripción general de las instrucciones de temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . 1–15
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–15
Valor del acumulador (.ACC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–15
Valor preseleccionado (.PRE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–15
Base de tiempo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–15
Precisión del temporizador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–16
Estructura de direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–16
Ejemplos de direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–17
Temporizador a la conexión (TON) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–18

i
Manual de referencia del juego de instrucción
Preface

Uso de los bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–18


Temporizador a la desconexión (TOF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–19
Uso de los bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–19
Temporizador retentivo (RTO) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–21
Uso de los bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–21
Uso de los contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–23
Elementos del archivo de datos del contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–23
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–23
Valor acumulado (.ACC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–23
Valor preseleccionado (PRE) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–24
Estructura de direccionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–24
Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–25
Cómo funcionan los contadores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–26
Conteo progresivo (CTU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–26
Uso de los bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–27
Conteo regresivo (CTD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–28
Uso de los bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–28
Contador de alta velocidad (HSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–29
Operación del contador de alta velocidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–29
Elementos de datos del contador de alta velocidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–31
Ejemplo de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–32
Ejemplo de aplicación – Archivo 2
(consulta del bit DN en el programa principal) . . . . . . . . . . . . . . . . . . . . . . 1–33
Ejemplo de aplicación – Archivo 3 (ejecución de lógica HSC) . . . . . . . . . . . . . . . 1–33
Restablecimiento (RES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–34
Instrucciones básicas del ejemplo de aplicación de la perforadora de papel . . . . . . . . . . . . 1–35
Cómo añadir archivo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–35
Cómo añadir el archivo 6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1–37

2 Instrucciones de comparación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–1


Instrucciones de comparación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–1
Acerca de las instrucciones de comparación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–2
Descripción general de las instrucciones de comparación . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–2
Uso de direcciones de palabra indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–2
Uso de direcciones de palabra indirectas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–2
Igual (EQU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–3
No igual (NEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–3
Menor que (LES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–4
Menor o igual que (LEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–4
Mayor que (GRT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–5
Mayor o igual que (GEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–5

ii
Tabla de contenido

Comparación con máscara para igual (MEQ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–6


Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–6
Prueba de límite (LIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–7
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–7
Estado verdadero/falso de la instrucción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–7
Ejemplo de aplicación de instrucciones de comparación en la perforadora de papel . . . . . . . 2–9
Cómo iniciar una subrutina en archivo 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2–9

3 Instrucciones matemáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–1


Instrucciones matemáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–1
Acerca de las instrucciones matemáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–3
Descripción general de las instrucciones matemáticas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–3
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–3
Uso de las direcciones de palabra indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–3
Uso de las direcciones de palabra indirectas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–4
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–4
Bit de interrupción por overflow, S:5/0 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–4
Cambios del registro matemático S:13 y S:14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–4
Uso del archivo de datos de punto (coma) flotante (F:8) . . . . . . . . . . . . . . . . . . . . . . . . 3–5
Añadir (ADD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–6
Actualizaciones de bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–6
Restar (SUB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–7
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–7
Adición y sustracción de 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–8
Bit de selección de overflow matemático S:2/14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–8
Ejemplo de adición de 32 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–9
Multiplicar (MUL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–11
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–11
Cambios del registro matemático, S:13 y S:14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–11
Dividir (DIV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–12
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–12
Cambios del registro matemático, S:13 y S:14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–12
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–12
División doble (DDV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–13
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–13
Cambios del registro matemático, S:13 y S:14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–13
Borrar (CLR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–14
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–14
Raíz cuadrada (SQR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–14
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–14
Cómo escalar con parámetros (SCP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–15

iii
Manual de referencia del juego de instrucción
Preface

Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–15


Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–16
Ejemplos de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–16
Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–16
Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–17
Escala de datos (SCL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–18
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–18
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–18
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–19
Ejemplo de aplicación 1 – Conversión de una señal de entrada analógica de
4 mA–20 mA en una variable de proceso PID . . . . . . . . . . . . . . . . . . . . . . . 3–19
Cómo calcular la relación lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–20
Ejemplo de aplicación 2 – Cómo escalar una entrada analógica para controlar
una salida analógica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–20
Cómo calcular la relación lineal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–21
Cómo calcular la relación lineal desplazada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–22
Absoluto (ABS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–24
Cómo introducir los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–24
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–24
Calcular (CPT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–25
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–25
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–25
Ejemplo de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–26
Intercambio (SWP) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–27
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–27
Arco seno (ASN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–28
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–28
Arco coseno (ACS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–29
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–29
Arco tangente (ATN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–29
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–29
Coseno (COS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–30
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–30
Logaritmo natural (LN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–30
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–30
Logaritmo a la base 10 (LOG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–31
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–31
Seno (SIN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–31
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–31
Tangente (TAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–32
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–32

iv
Tabla de contenido

X a la potencia de Y (XPY) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–33


Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–33
Instrucciones matemáticas en el ejemplo de aplicación de la perforadora de papel . . . . . . . 3–34
Cómo añadir el archivo 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3–35

4 Instrucciones de manejo de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–1


Instrucciones de manejo de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–1
Acerca de las instrucciones de manejo de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–2
Convertir en BCD (TOD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–3
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–3
Cambios del registro matemático, S:13 y S:14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–3
Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–4
Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–4
Convertir de BCD (FRD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–6
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–6
Cambios del registro matemático, S:13 y S:14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–7
Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–7
Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–8
Radianes en grados (DEG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–10
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–10
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–10
Grados en radianes (RAD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–11
Cómo introducir los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–11
Actaulizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–11
Descodificar 4 a 1 de 16 (DCD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–12
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–12
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–12
Codificar 1 de 16 a 4 (ENC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–13
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–13
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–14
Instrucciones para copiar el archivo (COP) y llenar el archivo (FLL) . . . . . . . . . . . . . . . . . 4–15
Uso de COP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–15
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–15
Uso de FLL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–17
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–17
Descripción general de las instrucciones de mover y lógicas . . . . . . . . . . . . . . . . . . . . . . . . 4–19
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–19
Uso de direcciones de palabra indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–19
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–19
Uso de direcciones de palabra indirectas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–19
Cambios del registro matemático, S:13 y S:14 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–19

v
Manual de referencia del juego de instrucción
Preface

Mover (MOV) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–20


Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–20
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–20
Mover con máscara (MVM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–21
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–21
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–21
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–22
Y (AND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–23
Tabla de verdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–23
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–23
O (OR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–24
Tabla de verdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–24
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–24
O exclusivo (XOR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–25
Tabla de verdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–25
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–25
No (NOT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–26
Tabla de verdad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–26
Actualizaciones de los bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–26
Negar (NEG) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–27
Actualizaciones de bits de estado aritmético . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–27
Descripción general de las instrucciones FIFO y LIFO . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–28
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–28
Efectos en el registro de índice S:24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–29
Carga FIFO (FFL)
Descarga FIFO (FFU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–30
Carga LIFO (LFL)
Descarga LIFO (LFU) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–32
Instrucciones de manejo de datos en el ejemplo de aplicación de la perforadora de papel . 4–34
Añadir el archivo 7 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4–34

5 Instrucciones de flujo de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–1


Instrucciones de control de flujo de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–1
Acerca de las instrucciones de control de flujo de programa . . . . . . . . . . . . . . . . . . . . . . . . . 5–2
Salto (JMP) y etiqueta (LBL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–3
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–3
Uso de JMP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–3
Uso de LBL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–4
Saltar a subrutina (JSR), subrutina (SBR), y retornar (RET) . . . . . . . . . . . . . . . . . . . . . . . . . 5–5
Cómo anidar archivos de subrutina . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–5
Uso de JSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–6

vi
Tabla de contenido

Uso de SBR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–7


Uso de RET . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–7
Restablecimiento de control maestro (MCR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–8
Operación del procesador SLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–9
Fin temporal (TND) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–10
Suspender (SUS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–11
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–11
Entrada inmediata con máscara (IIM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–12
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–12
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–12
Salida inmediata con máscara (IOM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–13
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–13
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–13
Regenerar I/S (REF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–14
Uso de un procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–14
Uso de procesadores SLC 5/03 y SLC 5/04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–14
Instrucciones de control de flujo de programa en el ejemplo de aplicación de la
perforadora de papel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–15
Cómo añadir el archivo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5–15

6 Instrucciones específicas de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–1


Instrucciones específicas de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–1
Acerca de las instrucciones específicas de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–2
Descripción general de las instrucciones de desplazamiento de bit . . . . . . . . . . . . . . . . . . . . 6–3
Cómo introducir los parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–3
Efectos en el registro de índice S:24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–4
Desplazamiento de bit izquierdo (BSL)
Desplazamiento de bit derecho (BSR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–5
Uso de BSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–5
Uso de BSR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–6
Descripción general de las instrucciones de secuenciador . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–8
Efectos en el registro de índice S:24 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–8
Aplicaciones que requieren más de 16 bits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–8
Salida de secuenciador (SQO)
Comparación de secuenciador (SQC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–9
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–9
Uso de SQO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–11
Uso de SQC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–12
Carga de secuenciador (SQL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–14
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–14
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–16

vii
Manual de referencia del juego de instrucción
Preface

Instrucciones específicas de aplicación en el ejemplo de aplicación de la


perforadora de papel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6–17

7 Cómo usar las instrucciones del contador de alta velocidad . . . . . . . . . . . . . . . . . 7–1


Instrucciones del contador de alta velocidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–1
Acerca de las instrucciones del contador de alta velocidad . . . . . . . . . . . . . . . . . . . . . . . . . . 7–2
Descripción general de las instrucciones del contador de alta velocidad . . . . . . . . . . . . . . . . 7–3
Elementos del archivo de datos del contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–3
Uso de bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–3
Contador de alta velocidad (HSC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–6
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–6
Uso del contador progresivo y el contador regresivo con restablecimiento
y retención . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–8
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–8
Contador progresivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–9
Contador progresivo con restablecimiento y retención . . . . . . . . . . . . . . . . . . . . . . 7–10
Uso del contador bidireccional y el contador bidireccional con restablecimiento y
retención . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–10
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–11
Contador bidireccional (impulso/dirección) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–12
Contador bidireccional con restablecimiento y retención (impulso/dirección) . . . . 7–13
Contador bidireccional (conteo progresivo/regresivo) . . . . . . . . . . . . . . . . . . . . . . 7–13
Contador bidireccional con restablecimiento y retención
(conteo progresivo/regresivo) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–14
Uso del contador bidireccional con restablecimiento y retención con codificador
(encoder) de cuadratura . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–14
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–15
Contador bidireccional (codificador [encoder]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–17
Contador bidireccional con restablecimiento y retención
(codificador [encoder]) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–17
Carga del contador de alta velocidad (HSL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–18
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–18
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–18
Restablecimiento del contador de alta velocidad (RES) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–21
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–21
Acumulador de restablecimiento del contador de alta velocidad (RAC) . . . . . . . . . . . . . . . 7–22
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–22
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–22
Habilitación (HSE) e inhabilitación (HSD) de interrupción del contador de alta velocidad 7–23
Uso de HSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–23
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–23

viii
Tabla de contenido

Uso de HSD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–24


Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–24
Actualización del acumulador de imagen del contador de alta velocidad (OTE) . . . . . . . . . 7–24
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–24
Lo que ocurre con el HSC cuando pasa al modo de marcha REM . . . . . . . . . . . . . . . . . . . . 7–25
Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–26
Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–27
Ejemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–28
Instrucciones del contador de alta velocidad en el ejemplo de aplicación de la
perforadora de papel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7–29

8 Instrucciones de comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–1


Instrucciones de comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–1
Acerca de las instrucciones de comunicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–2
Descripción general de la instrucción de mensaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–3
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–3
Bits del archivo de estado relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–4
Opciones de configuración disponibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–5
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–5
Uso de los bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–6
Diagrama de temporización para una instrucción MSG exitosa del SLC 5/02 . . . . . . . . . . . 8–7
Configuración del bloque de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–9
Ejemplos de aplicación para procesadores SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–11
Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–11
Ejemplo 2 – Archivo de programa 2 del procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . 8–12
Archivo de programa 2 del procesador SLC 5/01 a nodo 3 . . . . . . . . . . . . . . . . . . . 8–14
Ejemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–15
Ejemplo 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–16
Descripción general de la instrucción de mensaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–18
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–18
Bits del archivo de estado relacionados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–19
Opciones de configuración disponibles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–20
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–21
Uso de los bits de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–22
Configuraciones del bloque de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–24
Diagrama de temporización para una instrucción exitosa del SLC 5/03 ó SLC 5/04 . . . . . . 8–26
Códigos de error de la instrucción MSG . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–30

ix
Manual de referencia del juego de instrucción
Preface

Ejemplos de configuraciones usando la instrucción de mensaje . . . . . . . . . . . . . . . . . . . . . 8–32


Uso de la lógica de escalera . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–33
Ejemplo 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–33
Ejemplo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–35
Ejemplo 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–37
Ejemplo 4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–39
Uso de mensajes locales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–41
Ejemplo 1 – Lectura local de un 500CPU . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–41
Ejemplo 2 – Lectura local de un 485CIF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–42
Ejemplo 3 – Lectura local de un PLC-5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–43
Uso de mensajes remotos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–45
Ejemplo 1 – Comunicación con procesadores A–B usando un 1785-KA5 . . . . . . . 8–45
Procesador SLC 5/04 (A) a procesador SLC 5/03 (C) vía 1785-KA5 . . . . . . . . . . . 8–45
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–45
Procesador SLC 5/03 (C) a procesador SLC 5/04 (A) vía 1785-KA5 . . . . . . . . . . . 8–46
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–46
Procesador SLC 5/03 (C) a un PLC-5 (B) vía 1785-KA5 . . . . . . . . . . . . . . . . . . . . 8–47
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–47
Ejemplo 2 – Comunicación con procesadores A–B usando dos 1785-KA . . . . . . . 8–48
Procesador SLC 5/04 (B) a procesador PLC5 (C) vía dos 1785-KA . . . . . . . . . . . . 8–48
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–48
Procesador SLC 5/04 (B) a procesador SLC 5/04 (A) vía dos 1785-KA . . . . . . . . 8–49
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–49
Ejemplo 3 – Transferencia vía canal 0 DH-485 del procesador SLC 5/04 . . . . . . . 8–50
Procesador SLC 5/04 (A) a procesador SLC 5/03 (D) vía un procesador
SLC 5/04 (C) (transferencia usando canal 0 DH-485) . . . . . . . . . . . . . . . . . 8–50
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–50
Procesador SLC 5/03 (D) a procesador SLC 5/04 (A) vía un procesador
SLC 5/04 (C) (transferencia usando canal 0 DH-485) . . . . . . . . . . . . . . . . . 8–51
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–51
Procesador SLC 5/03 (D) a PLC-5 (B) vía un procesador SLC 5/04
(transferencia usando canal 0 DH-485) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–52
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–52
Mensajes remotos (SLC 5/03 a un SLC 500, SLC 5/01 ó SLC 5/02) . . . . . . . . . . . 8–53
Ejemplo 4 – Transferencia vía canal 0 DF1 del procesador SLC 5/04 . . . . . . . . . . 8–54
Procesador SLC 5/04 (A) a procesador SLC 5/04 (D) vía dos procesadores
SLC 5/04 (transferencia usando canal 0 DF1) . . . . . . . . . . . . . . . . . . . . . . . 8–54
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–54
Ejemplo 5 – Transferencia vía canal 0 DH+ del procesador SLC 5/04 . . . . . . . . . . 8–55
Procesador SLC 5/04 (A) a procesador SLC 5/04 (C) vía un solo procesador
SLC 5/04 (transferencia usando canal 0 DF1) . . . . . . . . . . . . . . . . . . . . . . . 8–55
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–55

x
Tabla de contenido

Procesador SLC 5/04 (C) a procesador SLC 5/04 (A) vía un solo procesador
SLC 5/04 (transferencia usando canal 0 DF1) . . . . . . . . . . . . . . . . . . . . . . . 8–56
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–56
Procesador SLC 5/04 (C) a procesador SLC 5/04 (B) cuando la transferencia
está habilitada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–56
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–56
Ejemplo 6 – Transferencia usando un integrado pirámide para encaminar
una instrucción de mensaje . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–57
Procesador SLC 5/04 (B) a procesador SLC 5/04 (A) via un integrador
de pirámide usando el encaminamiento PI . . . . . . . . . . . . . . . . . . . . . . . . . . 8–57
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–57
Ejemplo 7 – . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–58
Procesador SLC 5/03 a un procesador SLC 5/03
(transferencia usando dos 1785-KA5) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–58
Comentarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–58
Comunicaciones de servicio (SVC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–60
Uso de un procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–60
Uso de un procesador SLC 5/03 ó SLC 5/04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–60
Servicio de canal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–61
Ejemplo de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8–61

9 Instrucción proporcional integral derivativa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–1


Descripción general . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–1
El concepto PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–2
La ecuación PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–3
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–3
Indicadores de instrucción PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–9
Configuración del bloque de control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–11
Errores de tiempo de ejecución . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–12
Escala PID y E/S analógicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–14
Uso de la instrucción SCL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–14
Uso de la instrucción SCP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–15
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–15
Notas de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–18
Rangos de entrada/salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–18
Escalado a unidades de ingeniería . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–18
Banda muerta (DB) de intersección con cero . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–20
Alarmas de salida . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–20
Límite de salida con bloqueo de acción integral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–21
Modo manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–21
Estado de renglón PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–22
Alimentación hacia adelante o bias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–23

xi
Manual de referencia del juego de instrucción
Preface

Salidas de tiempo proporcional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–23


Ejemplo – Salidas de tiempo proporcional . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–24
Sintonización PID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–25
Procedimiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–25
Cómo verificar el escalado del sistema continuo . . . . . . . . . . . . . . . . . . . . . . . . . . . 9–27
Cómo determinar el tiempo de actualización del lazo inicial . . . . . . . . . . . . . . . . . 9–28

10 Instrucciones ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–1


Instrucciones ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–1
Descripción general de ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–2
Descripción general del parámetro de protocolo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–3
Cómo usar el tipo de archivo de datos ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–4
Cómo usar el tipo de archivo de datos de cadena (ST . . . . . . . . . . . . . . . . . . . . . . . 10–4
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–6
Prueba de búfer por línea (ABL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–7
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–7
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–7
Número de caracteres en búfer (ACB) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–8
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–8
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–9
Cadena a entero (ACI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–10
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–10
Borrado del búfer ASCII de recepción y/o transmisión (ACL) . . . . . . . . . . . . . . . . . . . . . 10–11
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–11
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–11
Concatenado de cadenas (ACN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–12
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–12
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–12
Extracción de cadena (AEX) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–13
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–13
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–13
Líneas de comunicación (AHL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–14
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–14
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–15
Entero a cadena (AIC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–16
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–16
Lectura de caracteres ASCII (ARD) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–17
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–17
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–17
Diagrama de temporización para una instrucción exitosa
ARD, ARL, AWA y AWT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–19

xii
Tabla de contenido

Lectura ASCII de línea (ARL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–20


Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–20
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–20
Búsqueda de cadena (ASC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–22
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–22
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–22
Comparación de cadena ASCII (ASR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–23
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–23
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–23
Escritura ASCII con anexo (AWA) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–24
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–24
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–24
Cómo usar la indirección en línea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–26
Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–26
Escritura ASCII (AWT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–27
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–27
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–27
Códigos de error de instrucción ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–29
Tabla de conversión ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10–31

11 Cómo comprender las rutinas de interrupción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–1


Rutinas de interrupción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–1
Descripción general de la rutina de fallo de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–2
Datos de archivo de estado guardados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–2
Cómo crear una subrutina de fallo de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–3
Operación del procesador SLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–3
Operación del procesador MicroLogix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–3
Ejemplo de aplicación de la rutina de interrupción de usuario . . . . . . . . . . . . . . . . . . . 11–4
Rutina de fallo – Archivo de subrutina 3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–4
Archivo de subrutina 4 – Ejecutado para error 0020 . . . . . . . . . . . . . . . . . . . . . . . . 11–5
Archivo de subrutina 5 – Ejecutado para error 0034 . . . . . . . . . . . . . . . . . . . . . . . . 11–6
Descripción general de la interrupción temporizada seleccionable . . . . . . . . . . . . . . . . . . . 11–7
Procedimiento de programación básico para la función STI . . . . . . . . . . . . . . . . . . . . . 11–7
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–8
Contenido de la subrutina STI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–8
Latencia de interrupción y coincidencias de interrupción . . . . . . . . . . . . . . . . . . . . . . . 11–9
Procesadores SLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–9
Microcontrolador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–9
Prioridades de interrupción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–10
Datos de archivo de estado guardados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–11
Parámetros STI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–11

xiii
Manual de referencia del juego de instrucción
Preface

Instrucciones STD y STE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–16


Inhabilitación temporizada seleccionable – STD . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–16
Habilitación temporizada seleccionable – STE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–16
Ejemplo de zona STD/STE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–16
Inicio temporizado seleccionable (STS) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–18
Descripción general de la interrupción de entrada discreta . . . . . . . . . . . . . . . . . . . . . . . . 11–19
Procedimiento de programación básico para la función DII . . . . . . . . . . . . . . . . . . . . 11–19
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–20
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–21
Modo de contador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–21
Modo de evento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–21
Contenido de la subrutina DII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–22
Latencia de interrupción y coincidencias de interrupción . . . . . . . . . . . . . . . . . . . . . . 11–22
Prioridades de interrupción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–23
Datos de archivo de estado guardados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–23
Reconfigurabilidad . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–24
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–24
Parámetros DII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–25
Ejemplo de aplicación de interrupción de entrada discreta . . . . . . . . . . . . . . . . . . . . . 11–28
Diagrama de escalera para la aplicación de embotelladora . . . . . . . . . . . . . . . . . . 11–29
Descripción general de interrupción de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–30
Procedimiento de programación básico para la función de interrupción de E/S . . . . . 11–30
Operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–31
Contenido de la subrutina de interrupción (ISR) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–31
Latencia de interrupción y coincidencias de interrupción . . . . . . . . . . . . . . . . . . . . . . 11–31
Prioridades de interrupción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–33
Datos de archivo de estado guardados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–34
Parámetros de interrupción de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–35
Inhabilitación de interrupción de E/S (IID) y habilitación de interrupción de E/S (IIE) . . 11–37
Inhabilitación de interrupción de E/S – IID Habilitación de interrupción
de E/S – IIE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–37
Operación IID . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–38
Operación IIE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–38
Ejemplo de zona IID/IIE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–39
Restablecimiento de interrupción pendiente (RPI) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–40
Cómo introducir parámetros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–40
Subrutina de interrupción (INT) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11–41

xiv
Tabla de contenido

12 Cómo comprender los protocolos de comunicación . . . . . . . . . . . . . . . . . . . . . . . . 12–1


Protocolo de comunicación DH-485 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–2
Protocolo de la red DH-485 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–2
Rotación del testigo DH-485 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–2
Inicialización de la red DH-485 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–3
Consideraciones de software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–3
Número de nodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–3
Establecimiento de direcciones de nodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–4
Establecimiento de la velocidad en baudios del procesador . . . . . . . . . . . . . . . . . . 12–4
Establecimiento de la dirección de nodo máxima . . . . . . . . . . . . . . . . . . . . . . . . . . 12–4
Número máximo de dispositivos de comunicación . . . . . . . . . . . . . . . . . . . . . . . . . 12–4
Parámetros de configuración DH-485 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–5
Protocolo de comunicación de Data Highway Plus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–7
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–7
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–8
Parámetros de configuración de canal 1 de DH+
(procesadores SLC 5/04 únicamente) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–9
Descripción general de la palabra de estado global . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–10
Bit de habilitación de transmisión de palabra de estado global S:34/3
(SLC 5/04 con OS401) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–11
Bit de habilitación de recepción de palabra de estado global S:34/4
(SLC 5/04 con OS401) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–12
Comunicación de PLC–5 a SLC 500 usando los comandos MSG de tipo PLC–2 . . . 12–14
Cómo los procesadores PLC-5 direccionan datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–15
Cómo usar el archivo CIF SLC 500 (emulación PLC-2) . . . . . . . . . . . . . . . . . . . . . . . 12–15
Programación para manejar las diferencias de direccionamiento de palabra/byte . . . 12–16
Cómo enviar un mensaje de tipo PLC-2 a un procesador PLC-5 usando el
direccionamiento SLC de “palabra” (S:2/8 = 0) . . . . . . . . . . . . . . . . . . . . . 12–16
Cómo enviar un mensaje de tipo PLC-2 a un procesador PLC-5 usando el
direccionamiento de “byte” (S:2/8 = 1) . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–16
Ejemplo – Cómo enviar un mensaje de tipo PLC-2 a procesadores PLC-5
usando procesadores SLC direccionados por “palabra” (S:2/8 = 0) . . . . . 12–17
Ejemplo – Cómo enviar un mensaje de tipo PLC-2 a un procesador PLC-5
usando procesadores direccionados por “byte) (S:2/8 = 1) . . . . . . . . . . . . 12–17
Procesadores SLC 5/03 y SLC 5/04 a comunicación PLC-5 usando comandos
MSG SLC 500 ó PLC-5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–18
Protocolo de comunicación RS-232 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–19
Protocolo de full–duplex DF1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–19
Parámetros de configuración de canal 0 de duplex total DF1 . . . . . . . . . . . . . . . . 12–20
Protocolo maestro/esclavo de half–duplex DF1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–23
Parámetros de configuración de canal 0 del esclavo de half–duplex DF1 . . . . . . . 12–24
Parámetros de configuración de canal 0 del maestro de half–duplex DF1 . . . . . . 12–25

xv
Manual de referencia del juego de instrucción
Preface

Consideraciones cuando comunica como esclavo DF1 en un vínculo de múltiples


conexiones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–30
Cómo usar módems que tienen capacidad para protocolos de comunicación DF1 . . . . . . 12–31
Módems de línea telefónica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–31
Módems manuales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–31
Módems de contestación automática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–31
Módems de desconexión automática . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–32
Módems de discado automático . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–32
Módems con líneas arrendadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–32
Módems con discado DTR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–32
Módems controladores de línea (corto alcance) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–33
Módems de radio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–34
Módems de vínculo por satélite . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–35
Operación de línea de control de módem en los procesadores SLC 5/03 y SLC 5/04 . . . . 12–35
Full–duplex DF1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–35
Half–duplex DF1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–36
Parámetros de retardo de transmisión RTS y retardo de desactivación RTS . . . . . . . . . . . 12–37
Protocolo de comunicación ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–38
Configuración de parámetro de canal 0 ASCII . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–38
Cómo usar las características de transferencia . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–39
Transferencia DH+ a DH-485 – (Todos los procesadores SLC 5/04) . . . . . . . . . . . . . 12–39
Transferencia DF1 a DH+ – (Procesadores SLC 5/04 OS401 y posteriores) . . . . . . . 12–39
Transferencia de E/S remota (Procesadores SLC 5/03 OS302 y SLC 5/04 OS401) . . 12–39
Consideraciones cuando la transferencia DF1 a DH+ se habilita . . . . . . . . . . . . . . . . 12–40
Cómo entrar en línea con un procesador SLC 5/04 usando el full–duplex DF1 . . 12–40
Cómo transmitir un mensaje usando el full–duplex DF1 hacia un procesador
SLC 5/04 con la transferencia DF1 a DH+ habilitada . . . . . . . . . . . . . . . . 12–40
Cómo transmitir un mensaje usando el full–duplex DF1 desde un procesador
SLC 5/04 con la transferencia DF1 a DH+ habilitada . . . . . . . . . . . . . . . . 12–40
Cómo comunicar desde un procesador SLC 5/04 usando
direccionamiento PLC-2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12–40

13 Cómo localizar y corregir fallos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–1


Cómo borrar fallos automáticamente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–1
Procesadores SLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–1
Controladores MicroLogix 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–2
Cómo borrar fallos manualmente (procesadores SLC) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–3
Cómo usar la rutina de fallo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–3
Mensajes de fallo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–4
Fallos del controlador MicroLogix 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–5
Errores de encendido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–6
Errores de ida a marcha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–7

xvi
Tabla de contenido

Errores de marcha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–8


Error de carga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–10
Fallos del procesador SLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–11
Errores de encendido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–11
Errores de ida a marcha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–12
Errores de marcha . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–13
Errores de instrucción de programa de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–17
Cómo localizar y corregir fallos de los procesadores SLC 5/03 y SLC 5/04 . . . . . . . . . . . 13–23
Cómo encender la pantalla LED . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–23
Cómo identificar errores del procesador durante la descarga de un
sistema de operación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13–23

A Archivo de estado del controlador MicroLogix 1000 . . . . . . . . . . . . . . . . . . . . . . . . A–1


Descripción general del archivo de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–2
Descripciones de archivo de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . A–3

B Archivo de estado SLC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–1


Descripción general del archivo de estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–2
Convenciones usadas en las pantallas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . B–5

C Uso de memoria y tiempos de ejecución de instrucción . . . . . . . . . . . . . . . . . . . . . C–1


Tiempos de ejecución de instrucción y uso de memoria de instrucción . . . . . . . . . . . . . . . . . C–2
Controladores MicroLogix 1000 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–2
Latencia de interrupción de usuario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–5
Cómo estimar el uso de memoria para el sistema de control MicroLogix 1000 . . . . . . . C–6
Hoja de trabajo de tiempo de ejecución del controlador MicroLogix 1000 . . . . . . . . . . C–7
Descripción general del uso de memoria para los procesadores SLC . . . . . . . . . . . . . . . . . . C–8
Tiempos de ejecución de instrucción y uso de memoria de instrucción . . . . . . . . . . . . . . . . . C–9
Procesadores fijos y SLC 5/01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–9
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–11
Cómo estimar el uso de memoria total del sistema usando un procesador
compacto o SLC 5/01 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–12
Continuación de procesadores fijos y SLC 5/01 . . . . . . . . . . . . . . . . . . . . . . . . . . . C–13
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–13
Continuación de procesadores fijos y SLC 5/01 . . . . . . . . . . . . . . . . . . . . . . . . . . . C–14
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–14
Procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–15
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–18
Continuación de procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–19
Cómo estimar el uso de memoria total del sistema usando un procesador
SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–19
Continuación de procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–20

xvii
Manual de referencia del juego de instrucción
Preface

Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–20
Continuación de procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–21
Instrucciones que tienen direcciones indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–21
Instrucciones que tienen direcciones de archivo de datos M0 y M1 . . . . . . . . . . . . . . . C–21
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–21
Procesador SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–22
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–27
Tiempos de ejecución de punto (coma) flotante del procesador SLC 5/03 . . . . . . . C–28
Continuación de procesador SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–30
Cálculo aproximado del uso de memoria del sistema usando un procesador
SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–30
Continuación de procesador SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–31
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–31
Continuación de procesador SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–32
Comparación de palabra de usuario entre el procesador SLC 5/03 ó
SLC 5/04 y el procesador SLC 5/02 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–32
Palabras de instrucción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–32
Continuación de procesador SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–33
Palabras de datos – Archivos 0 y 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–33
Palabras de datos – Archivo 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–33
Palabras de datos – Archivo 3 a 255 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–33
Continuación de procesador SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–34
Instrucciones con direcciones indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–34
Instrucciones con direcciones de archivo de datos M0 y M1 . . . . . . . . . . . . . . . . . . . . C–34
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–34
Procesador SLC 5/04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–35
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–40
Tiempos de ejecución de punto (coma) flotante del procesador SLC 5/04 . . . . . . . C–41
Continuación de procesador SLC 5/04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–43
Cálculo aproximado del uso de memoria del sistema usando un
procesador SLC 5/04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–43
SLC 5/04 Processor Continued . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–44
Instrucciones con direcciones indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–44
Instrucciones con direcciones de archivo de datos M0 y M1 . . . . . . . . . . . . . . . . . . . . C–44
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–44
Instrucciones con direcciones indirectas a nivel de palabra . . . . . . . . . . . . . . . . . . . . . C–45
Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–46
Instrucciones con direcciones a nivel de bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–47
Tiempos de ejecución de instrucción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–48
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C–48

xviii
Tabla de contenido

D Tiempo de escán estimado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–1


Ciclo de operación del procesador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–2
Tiempos de acceso para los datos M0/M1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–3
Latencia de interrupción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–4
Cómo calcular la latencia de interrupción para SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . D–5
Interrupción temporizada seleccionable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–5
Interrupción de entrada discreta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–5
Interrupción de evento de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–5
Cómo calcular la latencia de interrupción para SLC 5/04 . . . . . . . . . . . . . . . . . . . . . . . . D–6
Interrupción temporizada seleccionable . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–6
Interrupción de entrada discreta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–6
Interrupción de evento de E/S . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–6
Ejemplo – Interrupción temporizada seleccionable del procesador SLC 5/03 . . . . . . . . D–7
Ejemplo – Interrupción temporizada seleccionable del procesador SLC 5/04 . . . . . . . . D–7
Hojas de trabajo de tiempo de escán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–8
Definición de terminología de la hoja de trabajo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–8
Hoja de trabajo A – Cómo estimar el tiempo de escán del controlador fijo . . . . . . . . . . D–9
Hoja de trabajo B – Cómo estimar el tiempo de escán del procesador 1747-L511 ó
1747-l514 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–11
Hoja de trabajo C – Cómo estimar el tiempo de escán del procesador 1747-L524 . . . . D–13
Hoja de trabajo D – Cómo calcular el tiempo de escán del procesador 1747-L532 . . . D–16
Hoja de trabajo E – Cómo calcular el tiempo de escán del procesador 1747-L542 D–19
Procesador SLC 5/03 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–22
Procesador SLC 5/04 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–23
Ejemplo de cálculo de tiempo de escán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–24
Ejemplo: Hoja de trabajo B – Cómo calcular el tiempo de escán de una aplicación
del procesador 1747-L511 ó 1747-L514 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–26
Continúa en la página siguiente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . D–26

E Referencias de instrucciones de programación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E–1


Modos de direccionamiento válidos y tipos de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E–2
Cómo comprender los modos de direccionamientos diferentes . . . . . . . . . . . . . . . . . . . E–3
Direccionamiento directo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E–3
Direccionamiento indexado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E–3
Direccionamiento indirecto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E–3
Direccionamiento indirecto indexado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . E–3

F Organización y direccionamento del archivo de datos . . . . . . . . . . . . . . . . . . . . . . F–1


Descripción de la organización del archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–2
Descripción general del archivo de procesador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–2
Archivos de programa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–3
Archivos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–3

xix
Manual de referencia del juego de instrucción
Preface

Acceso y almacenamiento de los archivos de procesador . . . . . . . . . . . . . . . . . . . . . . . . . . . F–4


Descarga . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–5
Operación normal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–6
Apagado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–6
Encendido . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–7
Cómo direccionar los archivos de datos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–8
Cómo especificar direcciones lógicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–8
Direccionamiento de E/S para un controlador de E/S fijo . . . . . . . . . . . . . . . . . . . . F–10
Direccionamiento de E/S para un controlador modular . . . . . . . . . . . . . . . . . . . . . . F–12
Cómo especificar direcciones indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–13
Ejemplo de direccionamiento indexado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–13
Cómo crear datos para direcciones indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–14
Intersección de los límites de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–14
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–15
Cómo monitorizar las direcciones indexadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–15
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–16
Instrucciones de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–16
Efectos de interrupciones de programa en el registro de índice S:24 . . . . . . . . . . . F–16
Cómo especificar una dirección indirecta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–17
Ejemplos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–17
Cómo crear datos para direcciones indirectas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–18
Intersección de los límites de archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–18
Cómo monitorizar las direcciones indirectas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–18
Instrucciones de archivo de direccionamiento – Cómo usar el indicador
de archivo (#) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–19
Instrucciones de desplazamiento de bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–19
Instrucciones de secuenciador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–20
Instrucciones de copiar archivo y llenar archivo . . . . . . . . . . . . . . . . . . . . . . . . . . . F–21
Constantes numéricas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–22
Archivos de datos M0 y M1 – Módulos de E/S especiales . . . . . . . . . . . . . . . . . . . . . . . . . . F–23
Cómo direccionar los archivos M0–M1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–23
Restricciones relativas al uso de las direcciones de archvivo de datos M0-M1 . . . . . . F–23
Cómo monitorizar direcciones de bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–24
Procesadores SLC 5/02, SLC 5/03 y SLC 5/04 con la monitorización de
M0 y M1 inhabilitada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–24
Procesadores SLC 5/03 y SLC 5/04 con la monitorización de
M0 y M1 habilitada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–24
Cómo transferir datos entre los archivos de procesador y archivos M0 ó M1 . . . . . . . F–25
Tiempo de acceso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–26
Cómo minimizar el tiempo de escán . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–26
Cómo capturar los datos de archivo M0–M1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–27

xx
Tabla de contenido

Módulos de E/S especiales con memoria retentiva . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–28


Archivos de datos G – Módulos de E/S especiales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–29
Cómo editar los datos de archivo G . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . F–30

G Sistemas numéricos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–1


Números binarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–2
Valores decimales positivos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–2
Valores decimales negativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–3
Números hexadecimales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–5
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–5
Ejemplo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–6
Máscara hexadecimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–7
Aritmética de punto (coma) flotante binario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . G–8

H Programas de ejemplo de aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H–1


Ejemplo de aplicación de la perforadora de papel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H–2
Descripción general de la operación de la perforadora de papel . . . . . . . . . . . . . . . . . . . . . . H–3
Operación del mecanismo del taladro . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H–3
Operación del transportador . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H–3
Cálculo y advertencia de la broca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H–4
Programa de escalera de la perforadora de papel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . H–5
Ejemplo de aplicación del secuenciador activado por tiempo . . . . . . . . . . . . . . . . . . . . . . . H–20
Programa de escalera de secuenciador activado por tiempo . . . . . . . . . . . . . . . . . . . . . . . . . H–21
Ejemplo de aplicación del secuenciador activado por evento . . . . . . . . . . . . . . . . . . . . . . . . H–23
Programa de escalera de secuenciador activado por eventos . . . . . . . . . . . . . . . . . . . . . . . . H–24
Ejemplo de aplicación de activación/desactivación del circuito . . . . . . . . . . . . . . . . . . . . . . H–26
Programa de escalera de activación/desactivación del circuito . . . . . . . . . . . . . . . . . . . . . . H–27

xxi
Manual de referencia del juego de instrucción
Preface

xxii
Prefacio

Prefacio
Lea este prefacio para familiarizarse con el resto del manual. Proporciona
información acerca de:
• quién debe usar este manual
• el propósito de este manual
• las convenciones usadas en este manual

P-1
Juego de instrucciones del manual de referencia
Preface

Quién debe usar este manual


Use este manual si es responsable del diseño, instalación, programación o
localización y corrección de fallos los sistemas de control que emplean los pequeños
controladores de lógica de Allen-Bradley.

Debe poseer un entendimiento básico de los productos SLC 500t. Si no lo tiene,


póngase en contacto con su representante local Allen-Bradley para obtener la
instrucción técnica correcta antes de usar este producto.

Propósito de este manual


Este manual constituye una guía de referencia de los procesadores SLC 500 y los
controladores MicoLogix 1000. Este manual:
• proporciona el archivo de estado
• proporciona las instrucciones usadas en sus programas de lógica de escalera
• suplementa la ayuda en línea disponible en el terminal

P-2
Prefacio

Contenido de este manual


Capítulo Título Contenido
Describe el propósito, historia y alcance de este
Prefacio manual. También define el grupo de lectores para
que ha sido creado el manual.
Describe cómo usar las instrucciones de lógica de
1 Instrucciones básicas escalera para funciones de reemplazo de relés,
contaje y temporización.
Instrucciones de Describe las instrucciones de comparación las
2
comparación cuales le permiten comparar los valores de datos.
Describe las instrucciones matemáticas que le
3 Instrucciones matemáticas permiten realizar operaciones de cálculo y
matemáticas en palabras individuales.
Describe cómo realizar las instrucciones de manejo
Instrucciones de manejo de
4 de datos, incluyendo las instrucciones de mover y
datos
lógicas e instrucciones FIFO y LIFO.
Instrucciones de flujo de Describe las instrucciones de lógica de escalera
5
programa que afectan el flujo y ejecución del programa.
Instrucciones de aplicación Describe las instrucciones asociadas con el
6
específica desplazamiento de bit, secuenciador y STI.
Cómo usar las instrucciones
Describe los cuatro modos de la instrucción de alta
7 del contador de alta
velocidad y sus instrucciones asociadas.
velocidad
Instrucciones de Describe la instrucción de comunicación de
8
comunicación mensaje, servicio y sus parámetros asociados.
Describe el concepto, ecuación, parámetros
asociados y formato del bloque de control para los
9 Instrucción PID
procesadores SLC 5/02, SLC 5/03 y SLC
5/04.
10 Instrucciones ASCII Describe las instrucciones ASCII y sus usos.
Describe las interrupciones temporizadas
Descripción de las rutinas de seleccionables, la interrupción de entrada discreta
11
interrupción e interrupciones de E/S y sus parámetros
asociados.
Explica los tipos diferentes de protocolos de
Descripción de los protocolos
12 comunicación usados con los procesdores SLC
de comunicación
500.
Localización y corrección de Explica cómo el interpretar y corregir problemas
13
fallos con el software y procesador.

P-3
Juego de instrucciones del manual de referencia
Preface

Capítulo Título Contenido


Describe los fallos mayores y menores, información
diagnóstica, modos de procesador, tiempos de
Archivo de estado del
Apéndice A escán, velocidades de baudios y direcciones de
controlador MicroLogix 1000
nodo del sistema para los controladores MicroLogix
1000.
Describe los fallos mayores y menores, información
diagnóstica, modos de procesador, tiempos de
Apéndice B Archivo de estado SLC
escán, tasas de baudio y direcciones de nodo del
sistema para los procesadores SLC 500.
Proporciona la capacidad de memoria del usuario y
Tiempos de ejecución de
tiempos de ejecución de instrucción. También
Apéndice C instrucciones y uso de
describe cómo estimar el uso total de memoria de
memoria
un sistema.
Proporciona latencia de interrupción, información
Cómo calcular el tiempo de
Apéndice D del tiempo de acceso M0/M1 y hojas de cálculo
escán
para estimar los tiempos de escán.
Referencias de instrucción de Proporciona una lista de instrucciones con sus
Apéndice E
programación parámetros y tipos de archivo válidos.
Organización y Proporciona detalles acerca de archivos de datos
Apéndice F direccionamiento del archivo abarcando los formatos de archivo y cómo crear y
de datos eliminar datos.
Describe los sistemas de numeración hexadecimal,
Apéndice G Sistemas numéricos binaria y decimal además del formato de punto
(coma) flotante.
Proporciona ejemplos de aplicaciones avanzadas
Programas de ejemplo de
Apéndice H para instrucciones del contador de alta velocidad,
aplicación
secuenciador y desplazamiento de bit.

P-4
Prefacio

Documentación asociada
Los documentos siguientes contienen información adicional acerca de los productos
SLC de Allen-Bradley. Para obtener un ejemplar, póngase en contacto con su
oficina o distribuidor local de Allen-Bradley.

Para obtener Lea este documento


Una descripción general de la familia de productos SLC
Descripción general del sistema SLC 500
500
Una presentación de APS para los usuarios
principiantes, la cual contiene conceptos básicos con un Comienzo rápido de APS para usuarios
enfoque en tareas y ejercicios sencillos, y que permite al principiantes
lector comenzar a programar casi inmediatamente.
Una manual de procedimientos y referencia para el
personal técnico que usa la utilidad de importación/ Manual de usuario de
exportación APS para convertir los archivos APS a importación/exportación APS
ASCII y, a su vez, de ASCII a archivos APS
Guía de referencia rápida del programa- dor
Una guía de instrucción técnica y referencia rápida de de software SLC 500, no. de publicación
APS ABT-1747-TSJ50ES— disponible en
PASSPORT al precio de US$50.00
Guía de procedimientos comunes del
software SLC 500, no. de publicación
Una guía de procedimientos comunes usadas en APS
ABT-1747-TSJ50ES—disponible en
PASSPORT al precio de $50.00
Un manual de procedimientos para el personal técnico Manual del usuario del software de
que usa APS para desarrollar aplicaciones de control programación avanzada (APS) de Rockwell
Manual de instalación y operación para
Una descripción de cómo instalar y usar su controlador
controladores programables de tipo con
programable SLC 500 fijo
hardware fijo, no. de catálogo 1747-NM001
Manual de instalación y operación para
Una descripción de cómo instalar y usar su controlador controladores programables de tipo con
programable SLC 500 modular hardware modular, no. de publicación
1747-6.2ES
Una descripción de cómo instalar y usar sus controladores
Manual del usuario de controladores
MicroLogix 1000. Este manual también contiene datos de
MicroLogix 1000, no. de publicación
archivo de estado e información del juego de instrucciones
1761-6.3ES
para los microcontroladores
Una lista completa de documentación actual de
Allen-Bradley, incluyendo instrucciones de pedido. Allen-Bradley Publication Index, no. de
También indica la disponibilidad de los documentos en publicación SD499
CD-ROM o multilingües
Un glosario de términos y abreviaturas de la Glosario de automatización industrial
automatización industrial Allen-Bradley, no. de publicación AG-7.1ES

P-5
Juego de instrucciones del manual de referencia
Preface

Técnicas comunes usadas en este manual


Las convenciones siguientes se usan en todo este manual:
• Las listas con viñetas proporcionan información, no pasos de procedimento.
• Las listas numeradas proporcionan pasos secuenciales o información de
jerarquía.
• El texto que aperece en estos caracteres indica palabras o frases que
usted debe escribir.
• El texto itálico se usa para destacar.
• Los nombres de las teclas corresponden a los nombres indicados y aparecen en
letras negritas y mayúsculas dentro de corchetes (por ejemplo, [ENTER]). Un
icono de la tecla de función corresponde a el nombre de la tecla de función que
CONFIG
OFFLINE
SAVE &
debe presionar, tal como EXIT .
CONFIG
F8

La tabla siguiente resume las convenciones usadas para diferenciar entre las
posiciones del interruptor de llave SLC 5/03 y SLC 5/40, los modos del procesador
y la presentación en pantalla real en la línea de estado de APS.

Referencias de la posición Referencias al modo de Referencias a la línea de


del interruptor de llave procesador estado
Posición RUN Modo de marcha RUN
Modo de marcha REM RUN
Modo de programa REM PROG
Prueba – modo de paso único REM SRG
Posición REMote
Prueba – modo de escán único REM SSN
Prueba – modo de escán
REM CSN
continuo
Posición PROGram Modo de programa PROG

P-6
Instrucciones básicas

1 Instrucciones básicas
Este capítulo contiene información general acerca de las instrucciones generales y
explica cómo funcionan en su programa de aplicación. Cada una de estas
instrucciones básicas incluye información acerca de:
• cómo aparecen los símbolos de instrucción
• cómo usar la instrucción

Además, la última sección contiene un ejemplo de aplicación para una perforadora


de papel que muestra las instrucciones básicas en uso.

Instrucciones de bit

Instrucción
Propósito Página
Mnemónico Nombre

XIC Examine si cerrado Examina un bit para una condición activada. 1–9
XIO Examine si abierto Examina un bit para una condición desactivada. 1–9
OTE Conecte la salida Activa o desactiva un bit. 1–10
OTL y Enclav. de salida y OTL activa un bit cuando el renglón está ejecutado 1–11
OTU desenclavamiento y este bit retiene su estado cuando el renglón no
de salida está ejecutado u ocurre un ciclo de potencia. OTU
desactiva un bit cuando el renglón está ejecutado y
este bit retiene su estado cuando el renglón no está
ejecutado o cuando ocurre un ciclo de alimentación
eléctrica.
OSR Un frente ascen- Ocasiona un evento de una sola vez. 1–12
dente

continúa en la página siguiente

1–1
Manual de referencia del juego de instrucciones
Preface

Instrucciones del temporizador/contador

Instrucción
Propósito Página
Mnemónico Nombre
TON Temporizador Cuenta los intervalos de la base de tiempo cuando 1–18
a la conexión la instrucción es verdadera.
TOF Temporizador Cuenta los intervalos de la base de tiempo cuando 1–19
a la desconexión la instrucción es falsa.
RTO Temporizador re- Cuenta los intervalos de la base de tiempo cuando 1–21
tentivo la instrucción es verdadera y retiene el valor acumu-
lador cuando la instrucción se hace falsa o cuando
ocurre un ciclo de alimentación eléctrica.
CTU Conteo progresivo Incrementa el valor acumulador a cada transición 1–26
de falso a verdadero y retiene el valor acumulador
cuando la instrucción se hace falsa o cuando ocurre
un ciclo de alimentación eléctrica.
CTD Conteo regresivo Disminuye el valor acumulado a cada transición de 1–28
falso a verdadero y retiene el valor acumulador
cuando la instrucción se hace falsa o cuando ocurre
un ciclo de alimentación eléctrica.
HSC Contador de alta Cuenta los impulsos de alta velocidad de una 1–29
velocidad entrada de alta velocidad de controlador fijo.
RES Restablecimiento Pone a cero el valor acumulado y los bits de estado 1–34
de un temporizador o contador. No use con
temporizadores TOF.

Acerca de las instrucciones básicas


Estas instrucciones, cuando se usan en programas de escalera, representan circuitos
de lógica cableados usados para el control de una máquina o equipo.

Las instrucciones básicas se dividen en tres grupos: bit, temporizador y contador.


Antes de aprender acerca de las instrucciones en cada uno de estos grupos, le
recomendamos que lea la descripción general que precede dicho grupo:
• Descripción general de las instrucciones de bit
• Descripción general de las instrucciones de temporizador
• Descripción general de las instrucciones de contador

1–2
Instrucciones básicas

Descripción general de las instrucciones de bit


Estas instrucciones operan en un solo bit de datos. Durante la operación, el
procesador puede establecer o restablecer el bit, según la continuidad lógica de los
renglones de escalera. Puede direccionar un bit tantas veces como requiera su
programa.
Nota No se recomienda usar la misma dirección con instrucciones de salida múltiples.

Las instrucciones de bit se usan con los archivos de datos siguientes:

Archivos de datos de salida y entrada (archivos O:0 e I:1)

Estos representan salidas y entradas externas. Los bits en archivo 1 se usan para
representar las entradas externas. En la mayoría de los casos, una sola palabra de 16
bits en estos archivos corresponderá a una ubicación de ranura en su controlador con
los números de bit correspondientes a números de terminal de entrada o salida. Los
bits de la palabra no usados no están disponibles para su uso.

La tabla a continuación explica el formato de direccionamiento para salidas y


entradas. Anote que el formato especifica e como el número de ranura y s como el
número de palabra. Cuando trabaje con instrucciones de archivo, haga referencia al
elemento como e.s (ranura y palabra) tomados juntos.

Formato Explicación

O Salida

I Entrada

: Delimitador del elemento

Ranura 0, adyacente a la fuente de alimentación eléctrica en


Número de
el primer chasis, se aplica al módulo de procesador. Las
O:e.s/b e la ranura
ranuras posteriores son ranuras de E/S, numeradas desde 1
(decimal)
hasta un máximo de 30.

Delimitador de palabra. Requerido sólo si es necesario un número de palabra


I:e.s/b .
según lo indicado a continuación.

Requerido si el número de entradas o salidas exceden 16


Número de
s para la ranura. Rango: 0-255 (el rango acepta “tarjetas
palabra
especiales” de palabras múltiples)

/ Delimitador de bit

Número de Entradas: 0- 15
b
terminal Salidas: 0- 15

1–3
Manual de referencia del juego de instrucciones
Preface

Ejemplos (aplicables al controlador ilustrado en página F-12):

O:3/15 Salida 15, ranura 3


O:5/0 Salida 0, ranura 5
O:10/11 Salida 11, ranura 10
I:7/8 Entrada 8, ranura 7
I:2.1/3 Entrada 3, ranura 2, palabra 1

Direcciones de palabra:

O:5 Palabra de salida 0, ranura 5


O:5.1 Palabra de salida 1, ranura 5
I:8 Palabra de entrada, ranura 8

Valores predeterminados: Su dispositivo de programación mostrará una dirección de una


manera más formal. Por ejemplo, cuando asigna la dirección O:5/0, el dispositivo de
programación la mostrará como O:5.0/0 (archivo de salida, ranura 5, palabra 0, terminal 0).

Archivo de estado (archivo S2:)

No puede añadir ni eliminar elementos del archivo de estado. El archivo de estado


del controlador MicroLogix 1000 se explica en apéndice A y el archivo de estado
del procesador SLC 500 se explica en apéndice B. Puede direccionar varios bits y
palabras según lo siguiente:

Formato Explicación

S Archivo de estado

: Delimitador de elemento

S:e/b e Número de Rangos de 0-15 en un controlador fijo o SLC 5/01, 0-32 en un


elemento procesador SLC 5/02, 0-83 en un SLC 5/03 OS300, 0–96 en
un SLC 5/03 OS301 y posterior y 5/04 OS400 y 0-164 en un
SLC 5/04. Estos son elementos de 1 palabra. 16 bits por
cada elemento

/ Delimitador de bit

b Número de Ubicación del bit dentro del elemento. Rangos de 0-15.


bit

Ejemplos:
S:1/15 Elemento 1, bit 15. Este es el bit de “primer paso” que puede
usar para iniciar instrucciones en su programa.

S:3 Elemento 3. El byte inferior de este elemento es el tiempo de


escán actual. El byte superior es el tiempo de escán de control
(watchdog).

1–4
Instrucciones básicas

Archivo de datos de bit (B3:)

El archivo 3 constituye el archivo de bit, usado principalmente para instrucciones de


bit (lógica de relé), registros de desplazamiento y secuenciadores. El tamaño
máximo del archivo es 256 elementos de 1 palabra, un total de 4096 bits. Puede
direccionar los bits especificando el número de elemento (0 a 255) y el número de
bit (0 a 15) dentro del elemento. También puede direccionar los bits numerándolos
secuencialmente, 0 a 4095.

Además, puede direccionar los elementos de este archivo.

Formato Explicación Ejemplos

B Archivo de tipo de bit


Número de archivo. Número 3 es el archivo
predeterminado. Un número de archivo entre B3:3/14
Bf:e/b f
10-255 se puede usar si se requiere Bit 14, elemento 3
almacenamiento adicional.
: Delimitador de elemento
Rangos de 0-255. Estos son
Número de B3:252/00
e elementos de 1 palabra. 16 bits
elemento Bit 0, elemento 252
por cada elemento.
/ Delimitador de bit
Número de Ubicación del bit dentro del B3:9
b
bit elemento. Rangos de 0-15. Bits 0-15, elemento 9

Formato Explicación Ejemplos

B Idéntico a lo anterior.
B3/62
Bf/b f Idéntico a lo anterior.
Bit 62
/ Idéntico a lo anterior.
Número de Ubicación numérica del bit dentro B3/4032
b
bit del archivo. Rangos de 0-4095. Bit 4032

Archivos de datos de temporizador y contador (T4: y C5:)

Vea las páginas 1–16 y 1–24 respectivamente para obtener los formatos de
direccionamiento.

1–5
Manual de referencia del juego de instrucciones
Preface

Archivo de datos de control (R6:)

Estas instrucciones usan varios bits de control. Estos son elementos de 3 palabras
usados con desplazamiento de bit, FIFO, LIFO, instrucciones de secuenciador e
instrucciones ASCII ABL, ACB, AHL, ARD, ARL, AWA y AWT. La palabra 0 es
la palabra de estado, la palabra 1 indica la longitud de datos almacenados y la
palabra 2 indica la posición. Esto se muestra en la figura siguiente.

En el elemento de control hay ocho bits de estado y un byte de código de error. Un


controlador fijo y un elemento de control SLC 5/01 tienen seis bits. Los bits EU y
EM no son usados por el procesador.

Elemento de control
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 Pal.

EN EU DN EM ER UL IN FD Código de error 0
Longitud de arreglo de bit o archivo (LEN) 1
Indicador de bit o posición (POS) 2

Bits direccionables Palabras direccionables


EN = Habilitación LEN = Longitud
EU = Habilitación de descarga POS = Posición
DN = Efectuado
EM = Pila vacía
ER = Error
UL = Descarga (desplazamiento de bit solamente)
IN = Inhibición (Este es el bit de marcha [RN bit 9] para instrucciones ASCII)
FD = Encontrado (SQC solamente)
El código de error se muestra en HEX y no
es direccionable.

Asigne direcciones de control según lo siguiente:

Formato Explicación

R Archivo de control

Número de archivo. Número 6 es el archivo predeterminado. Se puede usar


Rf:e f un número de archivo entre 10-255 se puede usar si se requiere
almacenamiento adicional.

: Delimitador de elemento

Número de Rangos de 0-255. Estos son elementos de 3 palabras. Vea


e
elemento la figura anterior.

1–6
Instrucciones básicas

Ejemplo: R6:2 Elemento 2, archivo de control 6.


Direcione los bits y palabras usando el formato
Rf:e.s/b donde Rf:e se explica anteriormente y:
. es el delimitador de palabra
s indica el subelemento
/ es el delimitador de bit
b indica el bit
R6:2/15 ó R6:2/EN Bit habilitación
R6:2/14 ó R6:2/EU Bit de habilitación de descarga
R6:2/13 ó R6:2/DN Bit de efectuado
R6:2/12 ó R6:2/EM Bit de pila vacía
R6:2/11 ó R6:2/ER Bit de error
R6:2/10 ó R6:2/UL Bit de descarga
R6:2/9 ó R6:2/IN Bit de inhibición
R6:2/8 ó R6:2/FD Bit de encontrado

R6:2.1 ó R6:2.LEN Valor de longitud


R6:2.2 ó R6:2.POS Valor de posición

R6:2.1/0 Bit 0 del valor de longitud


R6:2.2/0 Bit 0 del valor positivo

Archivo de datos enteros (N7:)

Use estas direcciones (al nivel de bit) según las requiera su programa. Estos son
elementos de 1 palabra direccionables al nivel de elemento y bit.

1–7
Manual de referencia del juego de instrucciones
Preface

Asigne las direcciones de enteros según lo siguiente:

Formato Explicación

N Archivo de enteros

Número de archivo. Número 7 es el archivo predeterminado. Un número de


f
Nf:e/b archivo entre 10-255 se puede usar si se requiere almacenamiento adicional.

: Delimitador de elemento

Número de Rangos de 0-255. Estos son elementos de 1 palabra. 16 bits


e
elemento por cada elemento.
/ Delimitador de bit
Número de
b Ubicación del bit dentro del elemento. Rangos de 0-15.
bit

Ejemplos:

N7:2 Elemento 2, archivo de enteros 7


N7:2/8 Bit 8 en elemento 2, archivo de enteros 7
N10:36 Elemento 36, archivo de enteros 10 (archivo 10 designado como
un archivo de enteros por el usuario)

1–8
Instrucciones básicas

Examine si cerrado (XIC)

3 3 3 3 3 3

Use la instrucción XIC en su programa de escalera para determinar si un bit está


] [
activado. Cuando la instrucción se ejecuta, si la dirección de bit está activada (1),
Instrucción de entrada
entonces la instrucción es evaluada como verdadera. Cuando la instrucción se
ejecuta, si el bit direccionado está desactivado (0), entonces la instrucción evaluada
como falsa.

Estado de dirección de bit Instrucción XIC


0 Falsa
1 Verdadera

Ejemplos de dispositivos que se activan o desactivan incluyen:


• un botón pulsador cableado a una entrada (direccionado como I:0/4)
• una salida cableada a una luz piloto (direccionada como O:0/2)
• un temporizador que controla una luz (direccionado como T4:3/DN)

Examine si abierto (XIO)


3 3 3 3 3 3

Use una instrucción XIO en su programa de escalera para determinar si un bit está
]/[
desactivado. Cuando la instrucción se ejecuta, si el bit direccionado está
Instrucción de entrada
desactivado (0), entonces la instrucción es evaluada como verdadera. Cuando la
instrucción se ejecuta, si el bit direccionado está activado (1), entonces la
instrucción es evaluada como falsa.

Estado de dirección de bit Instrucción XIO


0 Verdadera
1 Falsa

Ejemplos de dispositivos que se activan o desactivan incluyen:


• sobrecarga del motor normalmente cerrada (N.C.) cableada a una entrada
(I:O/10)
• una salida cableada a una luz piloto (direccionada como O:0/4)
• un temporizador que controla una luz (direccionado como T4:3/DN)

1–9
Manual de referencia del juego de instrucciones
Preface

Active la salida (OTE)


3 3 3 3 3 3

Use una instrucción OTE en su programa de escalera para activar/desactivar un bit


( )
cuando las condiciones de renglón son evaluada como verdaderas/falsas
Instrucción de salida
respectivamente.

Un ejemplo de un dispositivo que se activa y desactiva es una salida cableada a una


luz piloto (direccionada como O:0/4).

Las instrucciones OTE se restablecen cuando:


• Entra o regresa al modo de marcha REM o prueba REM o cuando se restaura la
alimentación eléctrica.
• El OTE se programa dentro de una zona de restablecimiento de control maestro
(MCR) inactiva o falsa.

Nota Un bit que está establecido dentro de una subrutina usando una instrucción OTE
permanece establecido hasta que la subrutina se escanee nuevamente.

1–10
Instrucciones básicas

Enclavamiento de salida (OTL) y


desenclavamiento de salida (OTU) 3 3 3 3 3 3

OTL y OTU son instrucciones de salida retentivas. OTL sólo puede activar un bit,
(L)
en cambio, OTU sólo puede desactivar un bit. Estas instrucciones se usan
generalmente en parejas, con ambas instrucciones direccionando el mismo bit.
(U)
Su programa puede examinar un bit controlador por instrucciones OTL y OTU
Instrucciones de
salida tantas veces como sea necesariol.

Bajo las condiciones de error irrecuperable, las salidas físicas se desactivan.


Una vez corregidas las condiciones de error, el controlador reanuda la
operación usando el valor de la tabla de datos de la operación.

Cómo usar OTL

Cuando asigna una dirección a la instrucción OTL que corresponde a la dirección de


una salida física, el dispositivo de salida cableado a este terminal de tornillo está
activado cuando el bit está establecido (activado o habilitado).

Cuando las condiciones de renglón se convierten en falsas (después de ser


verdaderas), el bit permanece establecido y el dispositivo de salida correspondiente
permanece activado.

Una vez habilitada, la instrucción de enclavamiento indica al controlador que active


el bit direccionado. Desde ese momento en adelante, el bit permanece activado,
pese a la condición del renglón, hasta que el bit esté desactivado (típicamente por
una instrucción OTU en otro renglón).

Cómo usar OTU

Cuando asigna una dirección a la instrucción OTU que corresponde a la dirección de


una salida física, el dispositivo de salida cableado a este terminal de tornillo está
desactivado cuando el bit está restablecido (desactivado o inhabilitado).

La instrucción de desenclavamiento indica al controlador que desactive el bit


direccionado. Desde ese momento en adelante, el bit permanece desactivado, pese a
la condición del renglón, hasta que esté activado (típicamente por una instrucción
OTL en otro renglón).

1–11
Manual de referencia del juego de instrucciones
Preface

One–Shot Rising (OSR)


3 3 3 3 3 3

La instrucción OSR es una instrucción de entrada retentiva que ocasiona un evento


[OSR]
durante una sola vez. Use la instrucción OSR cuando un evento debe comenzar
Instrucción de entrada basado en el cambio de estado del renglón de falso a verdadero.

Cuando las condiciones de renglón precedentes de la instrucción OSR van de falsas


a verdaderas, la instrucción OSR será verdadera durante un escán. Después de
completarse un escán, la instrucción OSR se hace falsa, aun cuando las condiciones
de renglón precedentes permanecen verdaderas. La instrucción OSR sólo volverá a
hacerse verdadera si las condiciones de renglón precedentes efectúan una transición
de falso a verdadero.

El controlador le permite usar una instrucción OSR por cada salida en un renglón.

Cómo introducir parámetros

La dirección asignada a la instrucción OSR no es la dirección de ONE–SHOT


mencionada por su programa, ni indica el estado de la instrucción OSR. Esta
dirección permite que la instrucción OSR recuerde su estado de renglón anterior.

Use una dirección de bit desde el archivo de datos del bit o enteros. El bit
direccionado está establecido (1) durante un escán cuando las condiciones de
renglón precedentes de la instrucción OSR son verdaderas (aun cuando la
instrucción OSR se hace falsa); el bit está restablecido (0) cuando las condiciones de
renglón precedentes de la instrucción OSR se hacen falsas.
Nota La dirección de bit que usa para esta instrucción debe ser única. No la use en otros
lugares del programa.
No use una dirección de entrada o salida para programar el parámetro de dirección
de la instrucción OSR.

Ejemplos

Los renglones siguientes ilustran el uso de las instrucciones OSR. Los cuatro
primeros renglones se aplican a los procesadores SLC 500 y SLC 5/01. El quinto
renglón abarca la bifurcación de salida y se aplica a los procesadores SLC 5/02,
SLC 5/03 y SLC 5/04 y controladores MicroLogix 1000.

1–12
Instrucciones básicas

Procesadores SLC 600 y SLC 50/1


I:1.0 B3 O:3.0
] [ [OSR] ( )
0 0 0
Cuando la instrucción de entrada va de falso a verdadero, la
instrucción OSR acondiciona el renglón para que la salida vaya a
verdadero durante un escán de programa. La salida se hace
falsa y permanece falsa durante los escanes subsiguientes hasta
que la entrada efectúe otra transición de falso a verdadero.
I:1.0 B3 TOD
] [ [OSR] TO BCD
0 0 Source Tf:0.ACC

Dest O:3

En este caso, el valor acumulado de un temporizador se


convierte a BCD y se movió a una palabra de salida donde está
conectada una presentación LED. Cuando marcha el temporiza-
dor, el valor acumulado está cambiando rápidamente. Este valor
puede ser inmovilizado y mostrado para cada transición de falso
a verdadero de la condición de entrada del renglón.

Uso de una instrucción OSR en una bifurcación


(Procesadores SLC 500 y SLC 5/01)

I:1.0 B3 O:3.0
] [ [OSR] ( )
0 0 0
O:3.0
( )
1
En el renglón de arriba, la instrucción OSR no se permite
dentro de una bifurcación.

I:1.0 B3 O:3.0
] [ [OSR] ( )
0 0 0
O:3.0
( )
1
En este caso la instrucción OSR no está en la
bifurcación, por lo tanto, el renglón es válido.

Los procesadores SLC 500 y SLC 5/01 le permiten usar una instrucción OSR por
cada renglón.

1–13
Manual de referencia del juego de instrucciones
Preface

Cuando use un procesador SLC 500 ó SLC 5/01, no ubique condiciones de


entrada después de la instrucción OSR en un renglón. Puede ocurrir una
operación inesperada.

Procesadores SLC 5/02, SLC 5/03 y LSC 5/04 y controladores MicroLogix 1000
I:1.0 B3 B3 O:3.0
] [ ]/[ [OSR] ( )
0 1 0 0
B3 B3 O:3.0
] [ [OSR] ( )
2 3 1

Los procesadores SLC 5/02, SLC 5/03 y SLC 5/04 y controladores MicroLogix
1000 le permiten usar una instrucción OSR por cada salida en un renglón.

1–14
Instrucciones básicas

Descripción general de las instrucciones de temporizador


Cada dirección de temporizador se compone de un elemento de 3 palabras. Palabra
0 es la palabra de control, palabra 1 almacena el valor preseleccionado y palabra 2
almacena el valor acumulado.

15 14 13
Pal. 0 EN TT DN Uso interno
Pal. 1 Valor preseleccionado
Pal. 2 Valor de acumulador

Bits direccionables Palabras direccionables


EN = Bit 15 Habilitación PRE = Valor preseleccionado
TT = Bit 14 Temporización del tempor. ACC = Valor acumulado
DN = Bit 13 Efectuado
Los bits etiquetados como ”uso interno“ no son direccionables.

Cómo introducir parámetros

Valor del acumulador (.ACC)

Este es el tiempo transcurrido desde el último restablecimiento del temporizador.


Cuando está habilitado, el temporizador lo actualiza constantemente.

Valor preseleccionado (.PRE)

Especifica el valor que el temporizador debe alcanzar antes de que el controlador


establezca el bit de efectuado. Cuando el valor acumulado sea igual o mayor que el
valor preseleccionado, el bit de efectuado estará establecido. Puede usar este bit
para controlar un dispositivo de salida.

Los valores preseleccionados y acumulados para temporizadores tienen un rango


desde 0 hasta +32,767. Si el valor preseleccionado o acumulador de temporizador
es un número negativo, ocurre un error de tiempo de ejecución.

Base de tiempo

La base de tiempo determina la duración de cada intervalo de base de tiempo. Para


los procesadores fijos y SLC 5/02, la base de tiempo ha sido establecido a 0.01
segundo. Para los procesadores SLC 5/02, SLC 5/03, SLC 5/04 y los controladores
MicroLogix 1000, la base de tiempo es seleccionable como 0.01 (10 ms) segundo ó
1.0 segundo.

1–15
Manual de referencia del juego de instrucciones
Preface

Precisión del temporizador

La precisión del temporizador se refiere al tiempo transcurrido entre el momento en


que una instrucción de temporizador está habilitada y el momento en que el
intervalo temporizado se ha completado. La inexactitud causada por el escán de
programa puede ser mayor que la base de tiempo del temporizador. También debe
considerar el tiempo necesario para activar el dispositivo de salida.

La precisión de temporización es ± 0.01 a +0 segundos, con un escán de programa


de hasta 2.5 segundos. El temporizador de 1 segundo mantiene la precisión con un
escán de programa de hasta 1.5 segundos. Si sus programas pueden exceder 1.5 ó
2.5 segundos, repita el renglón de instrucción del temporizador para que el renglón
sea escaneado dentro de estos límites.
Nota La temporización podría resultar inexacta si las instrucciones de salto (JMP),
etiqueta (LBL), salto a subrutina (JSR) o subrutina (SBR) saltan el renglón que
contiene una instrucción de temporizador mientras que el temporizador esté
temporizando. Si la duración de salto es menor de 2.5 segundos, no se pierde
ningún tiempo; si la duración de salto excede 2.5 segundos, ocurre un error de
temporización no detectable. Cuando se usan subrutinas, es necesario que un
temporizador esté ejecutado a un mínimo de cada 2.5 segundos para evitar un error
de temporización.

Estructura de direccionamiento

Direccione bits y palabras usando el formato Tf:e.s/b

Explicación

T Archivo de temporizador

Número de archivo. Para los procesadores SLC 500, el número predetermi-


nado es 4. Se puede usar un número entre 10-255 para almacenamiento
f
adicional. El único número de archivo válido es 4 para los controladores
MicroLogix 1000.

: Delimitador de elemento

Estos son elementos de 3 palabras. Para los procesadores


Número de
e SLC 500 el rango es 0-255. Para los controladores
elemento
MicroLogix 1000 el rango es de 0-39.
. Elemento de palabras
s subelemento
/ delimitador de bit
b bit

1–16
Instrucciones básicas

Ejemplos de direccionamiento
• T4:0/15 ó T4:0/EN Bit de habilitación
• T4:0/14 ó T4:0/TT Bit de temporización del temporizador
• T4:0/13 ó T4:0/DN Bit de efectuado
• T4:0.1 ó T4:0.PRE Valor preseleccionado del temporizador
• T4:0.2 ó T4:0.ACC Valor acumulado del temporizador
• T4:0.1/0 ó T4:0.PRE/0 Bit 0 del valor preseleccionado
• T4:0.2/0 ó T4:0.ACC/0 Bit 0 del valor acumulado

1–17
Manual de referencia del juego de instrucciones
Preface

Temporizador a la conexión (TON)


3 3 3 3 3 3

TON
TIMER ON DELAY (EN)
Use la instrucción TON para activar o desactivar una salida después de que el
Timer
Time Base
T4:0
0.01 (DN)
temporizador haya estado activado durante un intervalo de tiempo preseleccionado.
Preset
Accum
120
0
La instrucción TON comienza a contar los intervalos de la base de tiempo cuando
las condiciones de renglón se hacen verdaderas. Con tal que las condiciones de
Instrucción de salida renglón permanezcan verdaderas, el temporizador ajusta su valor acumulado (ACC)
durante cada evaluación hasta alcanzar el vazor predeterminado (PRE). Cuando las
condiciones de renglón se hacen falsas, el valor acumulado se reinicializa sin
importar si el temporizador ha sobrepasado el límite de tiempo.
Uso de los bits de estado
Y permanece establecido
Este bit Se establece cuando hasta ocurrir uno de los
siguientes eventos
el valor acumulado es igual o
Bit de efectuado del las condiciones de renglón
mayor que el valor
temporizador DN (bit 13) se hacen falsas
preseleccionado
las condiciones de renglón las condiciones de renglón
Bit de temporización del son verdaderas y el valor se hacen falsas o cuando el
temporizador TT (bit 14) acumulado es menor que el bit de efectuado esté
valor preseleccionado establecido
Bit de habilitación del las condiciones de renglón las condiciones de renglón
temporizador EN (bit 15) son verdaderas se hacen falsas

Cuando el procesador cambia del modo de marcha REM o prueba REM al modo de
programa REM o la alimentación eléctrica del usuario se pierde durante la tempori-
zación de la instrucción, pero no ha alcanzado su valor preseleccionado, ocurre lo
siguiente:
• El bit de habilitación del temporizador (EN) permanece establecido.
• El bit de temporización del temporizador (TT) permanece establecido.
• El valor acumulado (ACC) permanece sin cambio.
Se puede ocurrir lo siguiente al regresar al modo de marcha REM o prueba REM:
Condición Resultado
El bit EN permanece establecido.
Si el renglón verdadero: El bit TT permanece establecido
El valor ACC está puesto a cero.
El bit EN está restablecido.
Si el renglón es falso: El bit TT está restablecido.
El valor ACC está puesto a cero.

1–18
Instrucciones básicas

Temporizador a la desconexión (TOF)


3 3 3 3 3 3

TOF
TIMER OFF DELAY (EN)
Use la instrucción TOF para activar o desactivar una salida después de que su
Timer T4:1
Time Base 0.01 (DN) renglón ha estado desactivado durante un intervalo de tiempo preseleccionado. La
Preset 120
Accum 0 instrucción TOF comienza a contar los intervalos de la base de tiempo cuando el
Instrucción de salida
renglón efectúa una transición de verdadero a falso. Con tal que las condiciones
permanezcan falsas, el temporizador incrementa su valor acumulado (ACC) durante
cada escán hasta alcanzar el valor preseleccionado (PRE). El valor acumulado se
restablecerá cuando las condiciones de renglón se hagan verdaderas, sin importar si
el tiempo en el temporizador se ha agotado.

Uso de los bits de estado


Y permanece establecido
Este bit Se establece cuando hasta ocurrir uno de los
siguientes eventos
Bit de efectuado del las condiciones de renglón las condiciones de renglón
temporizador DN (bit 13) son verdaderas se hacen falsas y el valor
acumulado es mayor o igual
que el valor preseleccionado
Bit de temporización del las condiciones de renglón las condiciones de renglón
temporizador TT (bit 14) son falsas y el valor se hacen verdaderas o
acumulado es menor que el cuando el bit de efectuado se
valor preseleccionado restablece
Bit de habilitación del las condiciones de renglón las condiciones de renglón
temporizador EN (bit 15) son verdaderas se hacen falsas

Cuando la operación del procesador cambia del modo de marcha REM o prueba
REM al modo de programa REM o cuando se pierde la alimentación eléctrica del
usuario durante la temporización de una instrucción de retardo con temporizador
desactivado, pero no ha alcanzado su valor preseleccionado, ocurre lo siguiente:
• El bit de habilitación del temporizador (EN) permanece establecido.
• El bit de temporización del temporizador (TT) permanece establecido.
• El bit de efectuado del temporizador (DN) permanece establecido.
• El valor acumulado (ACC) permanece sin cambio.

1–19
Manual de referencia del juego de instrucciones
Preface

Se puede ocurrir lo siguiente al regresar al modo de marcha REM o prueba REM:

Condición Resultado
El bit TT se restablece.
El bit DN permanece establecido.
Si el renglón es verdadero:
El bit EN se establece.
El valor ACC se restablece.
El bit TT se restablece.
El bit DN se restablece.
Si el renglón es falso: El bit EN se restablece.
El valor ACC se establece igual que el
valor preseleccionado.

La instrucción de restablecimiento (RES) no se puede usar con las


instrucciones TOF porque RES siempre pone a cero los bits de estado así como
el valor acumulado. (Vea la página 1-34.)

Nota El TOF temporiza dentro de una pareja MCR inactiva.

1–20
Instrucciones básicas

Temporizador retentivo (RTO)


3 3 3 3 3 3

RTO
RETENTIVE TIMER ON (EN)
Use la instrucción RTO para activar o desactivar una salida después que el
Timer T4:2
Time Base 0.01 (DN) temporizador haya estado desactivado durante un intervalo de tiempo
Preset 120
Accum 0 preseleccionado. La instrucción RTO es una instrucción retentiva que comienza a
Instrucción de salida
contar los intervalos de base de tiempo cuando las condiciones de renglón se hacen
verdaderas.

La instrucción RTO retiene su valor acumulado cuando ocurre cualquiera de los


eventos siguientes:
• Las condiciones de renglón se hacen falsas.
• Cambia la operación del procesador del modo de marcha REM o prueba REM
al modo de programa REM.
• Se corta la alimentación eléctrica del procesador (siempre que se mantenga una
batería auxiliar).
• Ocurre un fallo.

Cuando regresa el procesador al modo de marcha REM o prueba REM y/o las
condiciones de renglón se hacen verdaderas, la temporización continúa desde el
valor acumulado retenido. Los temporizadores retentivos miden el período
acumulativo durante el cual las condiciones de renglón son verdaderas mediante la
retención de su valor acumulado.
Uso de los bits de estado
Y permanece establecido
Este bit Se establece cuando hasta ocurrir uno de los
siguientes eventos
el valor acumulado es igual o
Bit de efectuado del la instrucción RES apropiada
mayor que el valor
temporizador DN (bit 13) se habilita
preseleccionado
las condiciones de renglón
las condiciones de renglón
Bit de temporización del son verdaderas y el valor
se hacen falsas o cuando se
temporizador TT (bit 14) acumulado es menor que el
establece el bit de efectuado
valor preseleccionado
Bit de habilitación del las condiciones de renglón las condiciones de renglón
temporizador EN (bit 15) son verdaderas se hacen falsas

Nota Para restablecer el valor acumulado del temporizador retentivo y los bits de estado
después de que el renglón RTO se hace falso, debe programar una instrucción de
restablecimiento (RES) con la misma dirección en otro renglón.

1–21
Manual de referencia del juego de instrucciones
Preface

Cuando el procesador cambia del modo de marcha REM o prueba REM al modo de
programa REM o fallo REM, o cuando se pierde la alimentación eléctrica del
usuario durante la temporización del temporizador, pero todavía sin alcanzar el valor
preseleccionado, ocurre lo siguiente:
• El bit de habilitación (EN) del temporizador permanece establecido.
• El bit de temporización (TT) del temporizador permanece establecido.
• El valor acumulado (ACC) permanece sin cambio.

Puede ocurrir lo siguiente al regresar al modo de marcha REM o prueba REM o


cuando se restaura la alimentación eléctrica:

Condición Resultado
El bit TT permanece establecido.
El bit EN permanece establecido.
Si el renglón es verdadero:
El valor ACC permanece sin cambio y
vuelve a incrementar.
El bit TT se restablece.
El bit DN permanece en su último estado.
Si el renglón es falso: El bit EN se restablece.
El valor ACC permanece en su último
estado.

1–22
Instrucciones básicas

Uso de los contadores

Elementos del archivo de datos del contador

Cada dirección de contador se compone de un elemento de archivo de datos de 3


palabras. Palabra 0 es la palabra de control y contiene los bits de estado de la
instrucción. Palabra 1 es el valor preseleccionado. Palabra 2 es el valor acumulado.

La palabra de control para las instrucciones de contador incluye seis bits de estado,
según lo indicado a continuación:

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Pal. 0 CU CD DN OV UN UA Uso interno
Pal. 1 Valor preseleccionado
Pal. 2 Valor acumulado

Bits direccionables Palabras direccionables


CU = Habilitación de conteo prog. PRE = Preseleccionado
CD = Habilitación de conteo reg. ACC = Acumulado
DN = Bit de efectuado
OV = Bit de overflow
UN = Bit de underflow
UA = Actualización del valor acumulado
(HSC en el controlador fijo solamente)

Los bits etiquetados como ”uso interno“ no son direccionables.

Para obtener información acerca de la instrucción del contador de alta velocidad del
controlador MicroLogix 1000, vea el capítulo 7.

Cómo introducir parámetros

Valor acumulado (.ACC)

Este es el número de transiciones de falso a verdadero que han ocurrido desde el


último restablecimiento del contador.

1–23
Manual de referencia del juego de instrucciones
Preface

Valor preseleccionado (PRE)

Especifica el valor que el contador debe alcanzar antes que el controlador establezca
el bit de efectuado. Cuando el valor del acumulador se hace igual o mayor que el
valor preseleccionado, se establece el bit de estado efectuado. Puede usar este bit
para controlar un dispositivo de salida.

Los valores preseleccionados y acumulados para los contadores oscilan entre


–32,768 hasta +32,767 y se almacen como enteros con signos. Los valores
negativos se almacenan en forma de complemento de dos.

Estructura de direccionamiento

Asigne direcciones de contador usando el formato Cf:e.s/b

Explicación

C Contador

Número de archivo. Para los procesadores SLC 500, el valor


predeterminado es 5. Un número de archivo entre 10–255 se
f puede usar para obtener almacenamiento adicional. El único
número de archivo válido es 5 para los controladores
MicroLogix 1000.

: Delimitador de elemento

Estos son elementos de 3 palabras.


Número de Para los procesadores SLC 500 el
e
elemento rango es 0-255. Para los controladores
MicroLogix 1000 el rango es de 0-39.
. Elemento de palabra
s Subelemento
/ Delimitador de bit
b Bit

1–24
Instrucciones básicas

Ejemplos
• C5:0/15 ó C5:0/CU Bit de habilitación de conteo progresivo
• C5:0/14 ó C5:0/CD Bit de habilitación de conteo regresivo
• C5:0/13 ó C5:0/DN Bit de efectuado
• C5:0/12 ó C5:0/OV Bit de overflow
• C5:0/11 ó C5:0/UN Bit de underflow
• C5:0/10 ó C5:0/UA Bit de actualización del valor acumulado (HSC en el
controlador fijo solamente)
• C5:0.1 ó C5:0PRE Valor preseleccionado del contador
• C5:0.2 ó C5:0.ACC Valor acumulado del contador
• C5:0.1/0 ó C5:0.PRE/0 Bit del valor preseleccionado
• C5:0.2/0 ó C5:0.ACC/0 Bit 0 del valor acumulado

1–25
Manual de referencia del juego de instrucciones
Preface

Cómo funcionan los contadores

La figura siguiente muestra cómo funciona un contador. El valor del contador debe
permanecer dentro del rango de ±32768 a +32767. Si el valor de conteo excede
+32767 ó desciende a menos de ±32768, se establece un bit de overflow (OV) o
underflow (UN) de estado del contador.

Un contador se puede poner a cero usando la instrucción de restablecimiento (RES).


–32,768 0 +32,767
(CTU)
Conteo progresivo

Valor acumulado del contador

Conteo regresivo
(CTD)

Underflow Overflow

Conteo progresivo (CTU)


3 3 3 3 3 3

CTU
COUNT UP (CU)
El CTU es una instrucción que cuenta las transiciones de renglón de falso a
Counter C5:0
Preset 120 (DN) verdadero. Las transiciones de renglón pueden ser provocadas por eventos
Accum 0
ocurriendo en el programa (de la lógica nterna o dispositivos de campo externos)
Instrucción de salida tales como piezas que pasan por un detector o que activan un interruptor de límite.

Cuando las condiciones de renglón para una instrucción CTU efectúan una
transición de falso a verdadero, el valor acumulado se incrementa en uno, siempre
que el renglón que contiene la instrucción CTU se evalúe entre estas transiciones.
La capacidad del contador para detectar transiciones de falso a verdadero depende
de la velocidad (frecuencia) de la señal de entrada.
Nota La duración activada y desactivada de un señal de entrada no debe ser más rápida
que el tiempo de escán 2x (se entiende un ciclo de trabajo de 50%).

El valor acumulado se retiene cuando las condiciones de renglón vuelven a hacerse


falsas. El conteo acumulado se retiene hasta que sea puesto a cero por una
instrucción de restablecimiento (RES) que tenga la misma dirección que el contador.

1–26
Instrucciones básicas

Uso de los bits de estado


Y permanece establecido
Este bit Se establece cuando hasta ocurrir uno de los
siguientes eventos
Bit de overflow de conteo el valor acumulado cambia a se ejecuta una instrucción
progresivo OV –32,768 (desde +32,767) y RES con la misma dirección
(bit 12) continúa contando desde ese que la instrucción CTU O
punto BIEN el conteo se reduce a
un valor menor o igual que
+32,767 con una instrucción
CTD
Bit de efectuado DN (bit 13) el valor acumulado es igual o el valor acumulado se hace
mayor que el valor menor que el valor
preseleccionado preseleccionado
Bit de habilitación de conteo las condiciones de renglón las condiciones de renglón
progresivo CU son verdaderas se hacen falsas O BIEN se
(bit 15) habilita una instrucción RES
con la misma dirección que la
instrucción CTU

El valor acumulado se retiene después que la instrucción CTU se hace falsa, o


cuando la alimentación eléctrica se corta y luego se restaura al controlador.
Además, el estado activado o desactivado de los bits de contador efectuado,
overflow y underflow es retentivo. El valor acumulado y los bits de control se
restablecen cuando se habilita la instrucción RES correcta. Los bits CU siempre se
establecen antes de introducir los modos de marcha REM o prueba REM.

1–27
Manual de referencia del juego de instrucciones
Preface

Conteo regresivo (CTD)


3 3 3 3 3 3

CTD
COUNT DOWN (CD)
El CTD es una instrucción que cuenta las transiciones de renglón de falso a
Counter
Preset
C5:1
120 (DN)
verdadero. Las transiciones de renglón pueden ser causadas por eventos que
Accum 0 ocurren en el programa, tales como piezas pasando por un detector o accionando un
final de carrera.
Instrucción de salida

Cuando las condiciones de renglón para una instrucción CTD han efectuado una
transición de falo a verdadeo, el valor acumulado se disminuye en un conteo,
siempre que el renglón que contiene la instrucción CTD se evalúe entre estas
transiciones.

Los conteos acumulados se retienen cuando las condiciones de renglón se hacen


falsas nuevamente. El conteo acumulado se retiene hasta que sea puesto a cero por
una instrucción de restablecimiento (RES) que tiene la misma dirección que el
contador restablecido.

Uso de los bits de estado


Y permanece establecido
Este bit Se establece cuando hasta ocurrir uno de los
siguientes eventos
Bit de underflow de conteo el valor acumulado cambia a una instrucción RES con la
regresivo UN –32,768 (desde +32,767) y misma dirección que la
(bit 11) continúa contando regresiva- instrucción CTD se ejecuta O
mente desde ese punto BIEN el conteo es
incrementado menor o igual
que +32,767 con una
instrucción CTU
Bit de efectuado DN (bit 13) el valor acumulado es igual o el valor acumulado se hace
mayor que el valor menor que el valor
preseleccionado preseleccionado
Bit de habilitación de conteo las condiciones de renglón las condiciones de renglón
regresivo CD son verdaderas se hacen falsas O BIEN se
(bit 14) habilita una instrucción RES
con la misma dirección que la
instrucción CTD

El valor acumulado se retiene después de que la instrucción CTD se hace falsa, o


cuando la alimentación eléctrica al controlador se corta y luego se restaura.
Además, el estado activado o desactivado de los bits de contador efectuado,
overflow y underflow es retentivo. El valor acumulado y los bits de control se
restablecen cuando se habilita la instrucción RES correcta. Los bits CD siempre se
establecen antes de introducir los modos de marcha REM o prueba REM.

1–28
Instrucciones básicas

Contador de alta velocidad (HSC)


3 3

HSC
HIGH SPEED COUNTER (CU)
El contador de alta velocidad constituye una variación del contador CTU. La
Counter C5:0
Preset 120 (DN) instrucción HSC se habilita cuando la lógica de renglón es verdadera y se inhabilita
Accum 0
cuando la lógica de renglón es falsa.
Instrucción de salida
Para obtener información acerca de la instrucción del contador de alta velocidad del
controlador MicroLogix 1000, vea el capítulo 7.

Nota La instrucción HSC cuenta transiciones que ocurren en el terminal de entrada I:0/0.
La instrucción HSC no cuenta las transiciones de renglón. Habilita o inhabilita el
renglón HSC para habilitar o inhabilitar el conteo de transiciones que ocurren en la
terminal de entrada I:0/0. Recomendamos colocar la instrucción HSC en un
renglón incondicional. No coloque la instrucción XIC con la dirección I:0/0 en
serie con la instrucción HSC ya que los conteos se perderán.

El HSC es una contador CTU especial para uso con los procesadores SLC fijos y
SLC 5/01 de 24 VCC. Los bits de estado y valores acumulados del HSC son no
retentivos.
Nota Esta instrucción proporciona el conteo de alta velocidad para los controladores de
E/S fijos con entradas de 24 VCC. Se permite una sola instrucción HSC por cada
controlador. Para usar la instrucción, debe cortar el puente según se indica a
continuación. Se recomienda un cable blindado para reducir el ruido a la entrada.

Operación del contador de alta velocidad

Para la operación del contador de alta velocidad, hay que realizar los pasos
siguientes:

1. Desconecte la alimentación eléctrica del controlador fijo.

2. Quite el envolvente del SLC 500.

3. Localice y corte el cable del puente J2. No lo quite completamente, pero


asegúrese que los extremos del cable del puente cortado no hagan contacto
entre sí.

1–29
Manual de referencia del juego de instrucciones
Preface
El puente del contador de alta velocidad se ubica debajo del
conectador de la batería O BIEN a la derecha del conector
de la batería.

J2 J2

4. Vuelva a poner la cubierta.


Nota Ahora la entrada I:0/0 funciona en modo de alta velocidad. La dirección del bit de
habilitación del contador de alta velocidad es C5:0/CU. Cuando las condiciones de
renglón son verdaderas, se establece C5:0/CU y se cuentan las transiciones que
ocurren en la entrada I:0/0.

Para comenzar el conteo de alta velocidad, cargue un valor preseleccionado en


C5:0.PRE y habilite el renglón de contador. Para contar un valor preseleccionado,
realice uno de los pasos siguientes:
• Cambie al modo de marcha REM o prueba REM de otro modo.
• Encienda el procesador en modo de marcha REM.
• Restablezca el HSC usando la instrucción RES.

La recarga automática ocurre cuando el HSC por sí mismo establece el bit DN a la


interrupción.

Cada transición de entrada que ocurre en entrada I:0/0 causa que el HSC acumulado
se incremente. Cuando el valor acumulado es igual que el valor preseleccionado, se
establece el bit de efectuado (C5:0/DN), el valor acumulado se pone a cero y el
valor preseleccionado (C5:0.PRE) se carga en el HSC como preparación para la
próxima transición de alta velocidad en la entrada I:0/0.

Su programa de escalera debe consultar el bit de efectuado (C5:0/DN) para


determinar el estado del HSC. Una vez que el bit de efectuado haya sido detectado
como establecido, el programa de escalera debe poner a cero el bit C5:0/DN (usando
la instrucción OTU de desenclavamiento) antes de que el HSC acumulado vuelva a
alcanzar el valor preseleccionado; en caso contrario, el bit de overflow (C5:0/OV) se
establecerá.

1–30
Instrucciones básicas

El HSC es diferente que los contadores CTU y CTD. El CTU y CTD son
contadores de software. El HSC es un contador de hardware y funciona
asincrónicamente al escán del programa de escalera. El valor acumulado HSC
(C5:0.ACC) normalmente se actualiza cada vez que el renglón HSC es evaluado en
el programa de escalera. Esto significa que el valor del acumulador de hardware
HSC se transfiere al acumulador de software HSC. Use solamente la instrucción
OTE para transferir este valor. La instrucción HSC pone a cero inmediatamente el
bit C5:0/UA a continuación de la actualización acumulada.

Muchos conteos HSC pueden ocurrir entre las evaluaciones HSC, los cuales
provocarían la inexactitud del bit C5:0.ACC cuando éste sea usado en un programa
de escalera. Para permitir un valor acumulado HSC exacto, el bit de acumulado de
actualización (C5:0/UA) causa que C5:0.ACC sea actualizado inmediatamente al
estado del acumulador de harware cuando se establece.

Use la instrucción RES para restablecer el contador de alta velocidad en dirección


C5:0. La instrucción HSC pone a cero el bit de estado, el acumulador y carga el
valor preseleccionado durante:
• el encendido
• entrada en el modo de marcha REM
• un restablecimiento

Elementos de datos del contador de alta velocidad

La dirección C5:0 es el elemento de 3 palabras del contador HSC.

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Pal. 0 CU CD DN OV UN UA No usado
Pal. 1 Valor preseleccionado
Pal. 2 Valor de acumulador

CU = Bit de habilitación de conteo progresivo


CD = Bit de habilitación de conteo regresivo
DN = Bit de efectuado
OV = Bit de overflow
UN = Bit de underflow
UA = Actualización de acumulador (HSC solamente)

1–31
Manual de referencia del juego de instrucciones
Preface

• La palabra 0 contiene los bits de estado siguientes de la instrucción HSC:

– El bit 10 (UA) actualiza la palabra de acumulador del HSC para reflejar el


estado inmediato del HSC cuando es verdadero.

– El bit 12 (OV) indica la ocurrencia de un overflow de HSC.

– El bit 13 (DN) indica si el valor preseleccionado de HSC ha sido alcanzado.

– El bit 15 (CU) muestra el estado de habilitación/inhabilitación de la


instrucción HSC.

• La palabra 1 contiene el valor preseleccionado que se carga en el HSC cuando


se ejecuta la instrucción RES, o cuando se establece el bit de efectuado o
cuando se efectúa el encendido inicial.
• La palabra 2 contiene el valor del acumulador HSC. Esta palabra es actualizada
cada vez que la instrucción HSC es evaluada y cuando el bit del acumulador de
actualización es establecido usando una instrucción OTE. Este acumulador es
de sólo lectura. Cualquier valor escrito en el acumulador resulta sobrescrito por
el contador de alta velocidad durante la evaluación de instrucción,
restablecimiento o introducción del modo de marcha REM.

Ejemplo de aplicación

En las figuras siguientes, cada uno de los renglones 1, 18 y 31 del archivo de


programa principal consiste en una instrucción XIC direccionada al bit de efectuado
HSC y una instrucción JSR. Estos renglones consultan el estado del bit de
efectuado HSC. Cuando el bit de efectuado es establecido a cualquiera de estos
puntos de encuesta, la ejecución del programa se mueve al archivo de subrutina 3,
ejecutando la lógica HSC. Después de la ejecución de la lógica HSC, el bit de
efectuado es puesto a cero por una instrucción de desenclavamiento y la ejecución
de programa retorna al archivo de programa principal.

1–32
Instrucciones básicas

Ejemplo de aplicación – Archivo 2 (consulta del bit DN en el programa principal)

JSR
C5:0
Rung 1 ] [ JUMP TO SUBROUTINE 3
DN
Rung 2 ] [ ] [ ] [ ( )

Rung 17 ] [ ] [ ] [ ( )
JSR
C5:0
Rung 18 ] [ JUMP TO SUBROUTINE 3
DN
Rung 19 ] [ ] [ ] [ ( )

Rung 30 ] [ ] [ ] [ ( )
JSR
C5:0
Rung 31 ] [ JUMP TO SUBROUTINE 3
DN

Rung 32 ] [ ] [ ] [ ( )

Ejemplo de aplicación – Archivo 3 (ejecución de lógica HSC)

Rung 0 ] [ ( )
Lógica de aplica-
Rung 1 ] [ ] [ ] [ ( ) ción

C5:0
Rung 20 (U) Desenclava-
DN miento del bit
RET DN
Rung 21 RETURN

1–33
Manual de referencia del juego de instrucciones
Preface

Restablecimiento (RES)
3 3 3 3 3 3

(RES) Use una instrucción RES para restablecer un temporizador o contador. Cuando se
Instrucción de salida habilita la instrucción RES, restablece la instrucción de retardo del temporizador a la
conexión (TON), temporizador retentivo (RTO), conteo progresivo (CTU) o conteo
regresivo (CTD) con la misma dirección que la instrucción RES.

Usando una instrucción RES para un: El procesador restablece el:


valor ACC a 0
Temporizador bit DN
(No use una instrucción RES con TOF.) bit TT
bit EN
valor ACC a 0
bit OV
bit UNt
Contador
bit DN
bit CU
bit CD
valor POS a 0
bit EN
bit EUt
bit DN
Control
bit EM
bit ER
bit UL
IN y FD van al último estado

Nota Si usa esta instrucción para restablecer el acumulador HSC del controlador
MicroLogix 1000, vea la página 7-21.

Cuando restablece un contador, si la instrucción RES está habilitada y el renglón de


contador está habilitado, se pone a cero el bit CU o CD.

Si el valor preseleccionado del contador es negativo, la instrucción RES establece el


valor acumulado a cero. Esto, a su vez, causa que el bit de efectuado sea establecido
por una instrucción de conteo regresivo o conteo progresivo.

Ya que la instrucción RES restablece el valor acumulado y los bits de


efectuado, temporización y habilitados, no use la instrucción RES para
restablecer una dirección de temporizador usada en una instrucción TOF. En
caso contrario, puede ocurrir la operación inesperada de la máquina o lesiones
al personal.

1–34
Instrucciones básicas

Instrucciones básicas del ejemplo de aplicación de la


perforadora de papel
Esta sección proporciona renglones de escalera para mostrar el uso de las
instrucciones básicas. Los renglones forman parte del ejemplo de aplicación de la
perforadora de papel descrito en el apéndice H. Usted añadirá el programa principal
en el archivo 2, además de añadir una subrutina al archivo 6.

Cómo añadir archivo 2

Los renglones ilustrados en la página siguiente son definidos como la lógica de


“arranque” del programa. Determinan las condiciones necesarias para arrancar la
máquina monitorizando los botones pulsadores de arranque y paro. Cuando se
presiona el botón pulsador de arranque, habilita al transportador a moverse e inicia
la rotación de la broca. Cuando se presiona el botón pulsador de paro, inhabilita el
movimiento del transportador y detiene el motor de la perforadora.

La lógica de arranque también verifica la retracción completa de la perforadora (a la


posición original) y el desgaste excesivo de la broca (determinado en otra parte del
programa) antes de permitir el movimiento del transportador.

Posición
Perforadora activada/desactivada O:3/1
original
I:1/5

1–35
Manual de referencia del juego de instrucciones
Preface
Renglón 2:0
Estos renglones iniciarán el movimiento del transportador cuando se presione el
botón pulsador. No obstante, hay otras condiciones que se deben cumplir antes de
iniciar el transportador. Estas son: la broca debe estar en su posición
completamente retraída (original) y la broca no debe sobrepasar su vida útil máxima.
Estos renglones también detendrán el transportador cuando se presione el botón
pulsador o cuando la vida útil de la broca haya sido excedida.
| Botón |Pos. BOTON Enclav. |
| ARRANQUE |orig. LS detención MARCHA |
| máquina |
| I:1.0 I:1.0 I:1.0 B3:0 |
|–+––––] [––––––––] [–––––+––––]/[–––––––––––––––––––––––––––––––––––––( )–––––|
| | 6 5 | 7 0 |
| | Enclav. | |
| | MARCHA | |
| | máquina | |
| | B3:0 | |
| +––––] [––––––––––––––––+ |
| 0 |
Renglón 2:1
| Enclav. Motor |
| MARCHA perf. ACTIV. |
| máquina |
| B3:0 O:3.0 |
|––––] [––––––––––––––––––––––––––––––––––––––––––––––––+––––––––––––( )–––––+–|
| 0 | 1 | |
| | Arranque/detención| |
| | transportador | |
| | | |
| | B3:0 O:3.0 | |
| +––[OSR]–––––(L)–––––+ |
| 1 0 |
Renglón 2:2
Detenga el transportador si existen condiciones que desenclaven el bit de
desenclavamiento de MARCHA de la máquina.
| Enclav. | Conveyor |
| MARCHA | Start/Stop |
| máquina | |
| B3:0 O:3.0 |
|––––]/[–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––(U)–––––|
| 0 0 |

1–36
Instrucciones básicas

Cómo añadir el archivo 6

Esta subrutina controla el movimiento ascendente y descendente de la broca para la


perforadora.

Posición
original Perf. act./desact. O:3/1
I:1/5 Retracción perf. O:3/2
Avance perf. O:3/3
Prof.
perforación
I:1/4

1–37
Manual de referencia del juego de instrucciones
Preface
Renglón 6:0
Esta sección de la lógica de escalera controla el movimiento ascendente/descendente
de la broca para la perforadora.
Cuando el transportador posiciona el libro debajo de la broca, se establece el bit
de INICIO DE LA SECUENCIA DE PERFORACION. Este renglón usa dicho bit para iniciar
la operación de perforación. Ya que el bit es establecido para la operación de
perforación completa, se requiere que el OSR pueda desactivar la señal de avance
para que la perforadora se retraiga.
| Inicio |Subr perf.| Avance |
| sec. | OSR | perforadora|
| perfor. | |
| B3:2 B3:3 O:3.0 |
|––––] [–––––––[OSR]–––––––––––––––––––––––––––––––––––––––––––––––––––(L)–––––|
| 0 0 3 |
Renglón 6:1
Cuando la broca haya perforado el libro, el cuerpo de la broca activará el final de
carrera de la PROFUNDIDAD DE PERFORACION. Al ocurrir esto, se desactiva la señal de
AVANCE DE LA PERFORADORA y se activa la señal de RETRACCION DE LA PERFORADORA.
| Prof. Avance |
| perforadora LS perforadora |
| I:1.0 O:3.0 |
|–+––––] [––––––––––––––––+–––––––––––––––––––––––––––––––––––––+––––(U)–––––+–|
| | 4 | | 3 | |
| | Primer |Posición | | Retracc. | |
| | paso |orig. LS | | perforadora|
| | S:1 I:1.0 | | O:3.0 | |
| +––––] [––––––––]/[–––––+ +––––(L)–––––+ |
| 15 5 2 |
Renglón 6:2
Cuando la broca se retrae (después de efectuar una perforación), el cuerpo de la
broca activará el final de carrera de POSICION ORIGINAL DE LA BROCA. Al ocurrir
esto, se desactiva la señal de RETRACCION DE LA BROCA, el bit de INICIO DE LA
SECUENCIA DE PERFORACION se activa para indicar el fin del proceso de perforación y
el transportador vuelve a iniciarse.
| Posición |Retracción Retracción |
| orig. LS |perforadora perforadora |
| I:1.0 O:3.0 O:3.0 |
|––––] [––––––––] [––––––––––––––––––––––––––––––––––+–––––––––––––––(U)–––––+–|
| 5 2 | 2 | |
| | Inicio | |
| | secuencia | |
| | perforadora| |
| | B3:2 | |
| +–––––––––––––––(U)–––––+ |
| | 0 | |
| | Enclav. |Arranque/ | |
| | MARCHA |detención | |
| | máquina |transport. | |
| | B3:0 O:3.0 | |
| +––––] [––––––––(L)–––––+ |
| 0 0 |

1–38
Instrucciones de comparación

2 Instrucciones de comparación
Este capítulo contiene información general acerca de instrucciones de comparación
y explica cómo funcionan en su programa de aplicación. Cada una de las
instrucciones de comparación incluye información acerca de:
• cómo debe aparecer el símbolo de instrucción
• cómo usar la instrucción

Además, la última sección contiene un ejemplo de aplicación para una perforadora


de papel que muestra el uso de instrucciones de comparación.

Instrucciones de comparación

Instrucción
Propósito Página
Mnemónico Nombre

EQU Igual Probar si dos valores son iguales. 2–3


NEQ No igual Probar si un valor no es igual que un segundo valor. 2–3

LES Menor que Probar si un valor es menor que un segundo valor. 2–4
LEQ Menor o Probar si un valor es menor o igual que un segundo 2–4
igual que valor.
GRT Mayor que Probar si un valor es mayor que otro. 2-4
GEQ Mayor o igual que Probar si un valor es mayor o igual que un segundo 2–5
valor.
MEQ Comparación Probar porciones de dos valores para saber si son 2–6
igualdad con iguales. Compara datos de 16 bits de una dirección
máscara de fuente contra datos de 16 bit en una dirección de
referencia mediante una máscara.
LIM Prueba de límite Probar si un valor se encuentra dentro del rango de 2–7
límite de otros dos valores.

2–1
Manual de referencia del juego de instrucciones
Preface

Acerca de las instrucciones de comparación


Las instrucciones de comparación se usan para probar parejas de valores para
establecer condiciones de la continuidad lógica de un renglón. Como ejemplo,
digamos que una instrucción LES se presenta con dos valores. Si el primer valor es
menor que el segundo, la instrucción de comparación es verdadera.

Para aprender más acerca de las instrucciones de comparación, le recomendamos


que lea la sección Descripción general de las instrucciones de comparación, a
continuación.

Descripción general de las instrucciones de


comparación
La información general siguiente se aplica a las instrucciones de comparación.

Uso de direcciones de palabra indexadas

Al usar las instrucciones de comparación, tiene la opción de usar direcciones de


palabra indexadas para parámetros de instrucción especificando direcciones de
palabra. El direccionamiento indexado se trata en el apéndice F de este manual.

Uso de direcciones de palabra indirectas

Tiene la opción de usar direcciones indirectas a nivel de palabra y a nivel de bit para
instrucciones especificando direcciones de palabra cuando usa los procesadores SLC
5/03 OS302 y SLC 5/04 OS401. Vea el apéndice F para obtener más información.

2–2
Instrucciones de comparación

Igual (EQU)
3 3 3 3 3 3

EQU
EQUAL Use la instrucción EQU para probar si dos valores son iguales. Si la fuente A y la
Source A
fuente B son iguales, la instrucción es lógicamente verdadera. Si estos valores no
Source B
son iguales, la instrucción es lógicamente falsa.
Instrucción de entrada
La fuente A debe ser una dirección. La fuente B puede ser una constante de
programa o una dirección. Los enteros negativos se almacenan de forma
complementaria de dos.

No igual (NEQ)
3 3 3 3 3 3

NEQ
NOT EQUAL Use la instrucción NEQ para probar si dos valores no son iguales. Si la fuente A y
Source A
la fuente B no son iguales, la instrucción es lógicamente verdadera. Si los dos
Source B
valores son iguales, la instrucción es lógicamente falsa.
Instrucción de entrada
La fuente A debe ser una dirección. La fuente B puede ser un constante de
programa o una dirección. Los enteros negativos se almacenan de forma
complementaria de dos.

2–3
Manual de referencia del juego de instrucciones
Preface

Menor que (LES)


3 3 3 3 3 3

LES
LESS THAN Use la instrucción LES para probar si un valor (fuente A) es menor que otro (fuente
Source A
B). Si la fuente A es menor que el valor en la fuente B, la instrucción es
Source B
lógicamente verdadera. Si el valor en la fuente A es mayor o igual que el valor en la
fuente B, la instrucción es lógicamente falsa.
Instrucción de entrada

La fuente A debe ser una dirección. La fuente B puede ser una constante de
programa o una dirección. Los enteros negativos se almacenan de forma
complementaria de dos.

Menor o igual que (LEQ)


3 3 3 3 3 3

LEQ
LESS THAN OR EQUAL Use la instrucción LEQ para probar si un valor (fuente A) es menor o igual que otro
Source A
(fuente B). Si la fuente A es menor o igual que el valor en la fuente B, la
Source B
instrucción es lógicamente verdadera. Si el valor en la fuente A es mayor que el
valor en la fuente B, la instrucción es lógicamente falsa.
Instrucción de entrada

La fuente A debe ser una dirección. La fuente B puede ser una constante de
programa o una dirección. Los enteros negativos se almacenan de forma
complementaria de dos.

2–4
Instrucciones de comparación

Mayor que (GRT)


3 3 3 3 3 3

GRT
GREATER THAN Use la instrucción GRT para probar si un valor (fuente A) es mayor que otro (fuente
Source A
B). Si la fuente A es mayor que el valor en la fuente B, la instrucción es
Source B
lógicamente verdadera. Si el valor en la fuente A es menor o igual que el valor en la
fuente B, la instrucción es lógicamente falsa.
Instrucción de entrada

La fuente A debe ser una dirección. La fuente B puede ser un constante de


programa o una dirección. Los enteros negativos se almacenan de forma
complementaria de dos.

Mayor o igual que (GEQ)


3 3 3 3 3 3

GEQ
GRTR THAN OR EQUAL Use la instrucción GEQ para probar si un valor (fuente A) es mayor o igual que otro
Source A
(fuente B). Si la fuente A es mayor o igual que el valor en la fuente B, la
Source B
instrucción es lógicamente verdadera. Si el valor en la fuente A es menor que el
valor en la fuente B, la instrucción es lógicamente falsa.
Instrucción de entrada

La fuente A debe ser una dirección. La fuente B puede ser un constante de


programa o una dirección. Los enteros negativos se almacenan de forma
complementaria de dos.

2–5
Manual de referencia del juego de instrucciones
Preface

Comparación con máscara


para igual (MEQ) 3 3 3 3 3 3

MEQ
MASKED EQUAL Use la instrucción MEQ para comparar datos en una dirección de fuente contra
Source
datos en una dirección de comparación. El uso de esta instrucción permite que una
Mask
palabra separada enmascare porciones de datos.
Compare

Instrucción de entrada

Cómo introducir parámetros


• Fuente es la dirección del valor que desea comparar.
• Máscara es la dirección de la máscara mediante la cual la instrucción mueve
datos. La máscara puede ser un valor hexadecimal.
• Comparación es un valor de entero or la dirección de la referencia.

Si los 16 bits de datos en la dirección de fuente son iguales a los 16 bits de datos en
la dirección de comparación (menos los bits con máscara), la instrucción es
verdadera. La instrucción se hace falsa en el momento en que detecta una
desigualdad. Los bits en la palabra de máscara enmascaran los datos al
restablecerse; transmiten datos al establecerse.

2–6
Instrucciones de comparación

Prueba de límite (LIM)


3 3 3 3 3 3

LIM
LIMIT TEST Use la instrucción LIM para probar los valores dentro o fuera de un rango
Low Lim
especificado, según cómo usted haya establecido los límites.
Test

High Lim

Instrucción de entrada

Cómo introducir parámetros

Los valores de límite bajo, prueba y límite alto pueden ser direcciones de palabra o
constantes restringidos a las combinaciones siguientes:
• Si el parámetro de prueba es una constante de programa, los parámetros de
límite bajo y límite alto deben ser direcciones de palabra.
• Si el parámetro de prueba es una dirección de palabra, los parámetros de límite
bajo y límite alto pueden ser una constante de programa o una dirección de
palabra.

Estado verdadero/falso de la instrucción

Si el límite bajo tiene un valor igual o menor que el límite alto, la instrucción es
verdadera cuando el valor de prueba se encuentra entre los límites o cuando es igual
a cualquiera de los límites. Si el valor de prueba se encuentra fuera de los límites, la
instrucción es falsa, según se indica a continuación.

Falso Verdadero Falso


–32,768 + 32,767
Límite bajo Límite alto

Ejemplo – límite bajo menor que el límite alto:


Límite Límite La instrucción es verdadera La instrucción es falsa
bajo alto cuando el valor de prueba es cuando el valor de prueba es
5 8 5a8 –32,768 a 4 y 9 a 32,767

2–7
Manual de referencia del juego de instrucciones
Preface

Si el límite bajo tiene un valor mayor que el límite alto, la instrucción es falsa
cuando el valor de prueba se encuentra entre los límites. Si el valor de prueba es
igual a cualquiera de los límites o se encuentra fuera de los límites, la instrucción es
verdadera, según se indica a continuación.

Verdadero Falso Verdadero


–32,768 + 32,767
Límite alto Límite bajo

Ejemplo – límite bajo mayor que el límite alto:


Límite Límite La instrucción es verdadera La instrucción es falsa
bajo alto cuando el valor de prueba es cuando el valor de prueba es
5 8 –32,768 a 5 y 8 a 32,767 6y7

2–8
Instrucciones de comparación

Ejemplo de aplicación de instrucciones de comparación


en la perforadora de papel
Esta sección proporciona renglones de escalera para demostrar el uso de
instrucciones de comparación. Los renglones son parte del ejemplo de aplicación de
la perforadora de papel descrito en el apéndice H.

Cómo iniciar una subrutina en archivo 7

Esta sección de la escalera registra las pulgadas totales de papel que ha perforado la
broca actual. A medida que vaya desgastándose la broca actual, una luz se ilumina
en el panel de operador (abajo) para advertirle al operador que debe cambiar la
broca.

OPERATOR PANEL

Start I:1/6 Stop I:1/7


Change Tool Soon Change Tool Now
O:3/4 O:3/6
Thumbwheel for
Tool Change Reset 5 Hole
Thickness in 1/4”

3 Hole 7 Hole

(Keyswitch)
I:1/11–I:1/14 I:1/8 I:1/9–I:1/10

2–9
Manual de referencia del juego de instrucciones
Preface
Renglón 7:0
Este renglón examina el número de milésimas de 1/4 pulg. que se han acumulado
durante la vida útil de la broca actual. Si la broca ha perforado entre
100,000–101,999 incrementos de 1/4 pulg. de papel, la bombilla de “cambiar la broca”
se ilumina constantemente. Cuando el valor es entre 102,000–103,999, la bombilla de
“cambiar la broca” parpadea cada 1.28 segundos. Cuando el valor alcanza 105,000, la
bombilla de “cambiar la broca” parpadea y la bombilla de “cambiar la broca ahora” se
ilumina.
| Milésimas 100,000 |
| de 1/4 pulg. incrementos |
| de 1/4 pulg. |
| han |
| ocurrido |
| +GEQ–––––––––––––––+ B3:1 |
|–––––––+–+GRTR THAN OR EQUAL+–––––––––––––––––––––––––––––––––––––––( )–––––+–|
| | |Source A N7:11| 0 | |
| | | 0| | |
| | |Source B 100| | |
| | | | | |
| | +––––––––––––––––––+ | |
| | Milésimas 102,000 | |
| | de 1/4 pulg. incrementos | |
| | de 1/4 pulg | |
| | han | |
| | ocurrido | |
| | +GEQ–––––––––––––––+ B3:1 | |
| +–+GRTR THAN OR EQUAL+–––––––––––––––––––––––––––––––––––––––( )–––––+ |
| | |Source A N7:11| 1 | |
| | | 0| | |
| | |Source B 102| | |
| | | | | |
| | +––––––––––––––––––+ | |
| | Milésimas cambiar la | |
| | de 1/4 pulg. broca | |
| | AHORA | |
| | +GEQ–––––––––––––––+ O:3.0 | |
| +–+GRTR THAN OR EQUAL+–––––––––––––––––––––––––––––––––––––––( )–––––+ |
| | |Source A N7:11| 6 | |
| | | 0| | |
| | |Source B 105| | |
| | | | | |
| | +––––––––––––––––––+ | |
| | 100,000 |102,000 cambiar | |
| | incrementos|incrementos la broca | |
| | de 1/4 pulg|de 1/4 pulg pronto | |
| | han |han | |
| | ocurrido |ocurrido | |
| | B3:1 B3:1 O:3.0 | |
| +–+–––––––––––––––––––––––] [––––––––]/[––––––––––––––––+––––( )–––––+ |
| | 0 1 | 4 |
| | 100,000 |102,000 |1.28 | |
| | incrementos|increm. |segundo | |
| | de 1/4 pulg|de 1/4 plg|bit de | |
| | han |han |reloj de | |
| | ocurridod |ocurrido |mar. libre | |
| | B3:1 B3:1 S:4 | |
| +–––––––––––––––––––––––] [––––––––] [––––––––] [–––––+ |
| 0 1 7 |

2–10
Instrucciones matemáticas

3 Instrucciones matemáticas
Este capítulo contiene información general acerca de instrucciones matemáticas y
explica cómo funcionan en su programa de lógica. Cada una de las instrucciones
matemáticas incluye información acerca de:
• cómo aparece el símbolo de instrucción
• cómo usar la instrucción

Además, la última sección contiene un ejemplo de aplicación para una perforadora


de papel que muestra el uso de las instrucciones matemáticas.

Instrucciones matemáticas

Instrucción
Propósito Page
Mnemónico Nombre
ADD Añadir Añade la fuente A a la fuente B y almacena el 3–6
resultado en el destino.
SUB Restar Resta la fuente B de la fuente A y almacena el 3–7
resultado en el destino.
MUL Multiplicar Multiplica la fuente A por la fuente B y almacena el 3–11
resultado en el destino.
DIV Dividir Divide la fuente A por la fuente B y almacena el 3–12
resultado en el destino y el registro matemático.
DDV División doble Divide el contenido del registro matemático por la 3–13
fuente y almacena el resultado en el destino y el
registro matemático.
CLR Borrar Pone todos los bits de una palabra a cero. 3–14
SQR Raíz cuadrada Calcula la raíz cuadrada de la fuente y coloca el 3–14
resultado de entero en el destino.
SCP Escalar con Produce un valor de salida escalado que tiene una 3–15
parámetros relación lineal entre los valores de entrada y escala-
dos.
continúa en la página siguiente

3–1
Manual de referencia del juego de instrucciones
Preface

Instrucción
Propósito Página
Mnemónico Nombre
SCL Datos de escala Multiplica la fuente por una tasa especificada, 3–18
añade a un valor offset y almacena el resultado en
el destino.
ABS Absoluto Calcula el valor absoluto de la fuente y coloca el 3–24
resultado en el destino.
CPT Calcular Evalúa una expresión y almacena el resultado en el 3–25
destino.
SWP Cambiar Cambia los bytes bajos y altos de un número espe- 3-27
cificado de palabras en un archivo de bit, entero,
ASCII o cadena.
ASN Arco seno Acepta el arco seno de un número y almacena el 3-28
resultado (en radianes) en el destino.
ACS Arco coseno Acepta el arco coseno de un número y almacena el 3–29
resultado (en radianes) en el destino.
ATN Arco tangente Acepta el arco tangente de un número y almacena 3-29
el resultado (en radianes) en el destino.
COS Coseno Acepta el coseno de un número y almacena el re- 3-30
sultado en el destino.
LN Logaritmo natural Acepta el logoritmo natural del valor en la fuente y 3-30
lo almacena en el destino.
LOG Logaritmo de base Acepta el logoritmo de la base 10 del valor en la 3–31
10 fuente y almacena el resultado en el destino.
SIN Seno Acepta el seno de un número y almacena el resulta- 3–31
do en el destino.
TAN Tangente Acepta la tangente de un número y almacena el 3–32
resultado en el destino.
XPY X a la potencia de Y Eleva un valor a la potencia y almacena el resultado 3-33
en el destino.

3–2
Instrucciones matemáticas

Acerca de las instrucciones matemáticas


La mayor parte de las instrucciones toman dos valores de entrada, realizan la
función matemática y colocan el resultado en un lugar de memoria asignado.

Por ejemplo, las instrucciones ADD y SUB toman un par de valores de entrada, los
añaden o los restan y colocan el resultado en el destino especificado. Si el resultado
de la operación excede el valor permitido, un bit de overflow o underflow se
establece.

Para aprender más acerca de las instrucciones matemáticas, le recomendamos que


lea la Descripción general de las instrucciones matemáticas que sigue.

Descripción general de las instrucciones matemáticas


La información general siguiente se aplica a las instrucciones matemáticas.

Cómo introducir parámetros


• La fuente es la(s) dirección(es) del(los) valor(es) en que se realiza una
operación matemática, lógica o de movimiento. Esto puede ser direcciones de
palabra o constantes de programa. Una instrucción que tiene dos operandos de
fuente no aceptan constantes de programa en ambos operandos.
• El destino es la dirección del resultado de la operación. Los enteros con signo
se almacenan de forma complementaria de dos y se aplican a los parámetros de
fuente y destino.
Al usar un procesador SLC 5/03 OS301, OS302 ó un procesador SLC 5/04
OS400, OS401, se pueden usar los valores del punto (coma) flotante y de
cadena (especificados al nivel de palabra). Refiérase al apéndice E para obtener
tipos adicionales de direccionamiento válido.

Uso de las direcciones de palabra indexadas

Tiene la opción de usar direcciones de palabra indexadas para parámetros de


instrucción especificando direcciones de palabra (excepto los procesadores fijos y
SLC 5/01). El direccionamiento indexado se trata en el apéndice F.

3–3
Manual de referencia del juego de instrucciones
Preface

Uso de las direcciones de palabra indirectas

Tiene la opción de usar direcciones indirectas a nivel de palabra y a nivel de bit para
instrucciones especificando direcciones de palabra cuando usa procesadores SLC
5/03 OS302 y SLC 5/04 OS401. Vea el apéndice C para obtener más información.

Actualizaciones de los bits de estado aritmético

Los bits de estado aritmético se encuentran en la palabra 0, bits 0–3 en el archivo de


estado del controlador. Después de la ejecución de una instrucción, los bits de
estado aritmético en el archivo de estado son actualizados:

Con este bit: El controlador:


se establece si el acarreo es generado; en caso contrario, se
S:0/0 Acarreo (C)
pone a cero.
indica que el resultado real de una instrucción matemática no
S:0/1 Overflow (V)
se puede colocar en el destino designado.
indica un valor 0 después de una instrucción matemática, de
S:0/2 Cero (Z)
movimiento o lógica.
indica un valor negativo (menor que 0) después de una
S:0/3 Signo (S)
instrucción matemática, de movimiento o lógica.

Bit de interrupción por overflow, S:5/0

El bit de error menor (S:5/0) se establece a la detección de un overflow matemático


o división entre 0. Si este bit se establece a la ejecución de una instrucción END o
una instrucción de fin temporal (TND) o una regeneración de E/S (REF), se
establece el código 0020 de error mayor recuperable.

En las aplicaciones donde ocurre un overflow matemático o una división entre 0,


puede evitar un fallo CPU usando la instrucción de desenclavamiento (OTU) con la
dirección S:5/0 en su programa. El renglón se debe encontrar entre el punto de
overflow y la instrucción END, TND o REF.

Cambios del registro matemático S:13 y S:14

La palabra de estado S:13 contiene la palabra de mínimo significado de los valores


de 32 bits de las instrucciones MUL y DDV. Contiene el resto para las instrucciones
DIV y DDV. También contiene los cuatro primeros dígitos BCD para las
instrucciones de conversión desde BCD (FRD) y conversión a BCD (TOD).

3–4
Instrucciones matemáticas

La palabra S:14 contiene la palabra de máximo significado para los valores de 32


bits de las instrucciones MUL y DDV. Contiene el cociente no redondeado para las
instrucciones DIV y DDV. También contiene el dígito más significativo (dígito 5)
para las instrucciones TOD y FRD.

Uso del archivo de datos de punto (coma) flotante (F8:)

Este tipo de archivo es válido para los procesadores SLC 5/03 OS301, OS302 y SLC
5/04 OS400, OS401. Estos son elementos de 2 palabras y direccionables solamente
al nivel de elemento.

Asigne las direcciones de punto (coma) flotante de esta manera:

Formato Explicación

F Archivo de punto (coma) flotante

Número del archivo. El número 8 es el archivo predeterminado. Un número


Ff:e f de archivo entre 9–255 se puede usar si se requiere almacenamiento
adicional.

: Delimitador de elemento

Número de Tiene un rango de 0–255. Estos son elementos de 2


e
elemento palabras. Números de 32 bits no extendidos.

Ejemplos:
F8:2 Elemento 2, archivo de punto (coma) flotante 8
F10:36 Elemento 36, archivo de punto (coma) flotante 10 (el archivo 10 es
designado como un archivo de punto [coma] flotante por el usuario)

3–5
Manual de referencia del juego de instrucciones
Preface

Añadir (ADD)
3 3 3 3 3 3

ADD
ADD Use la instrucción ADD para añadir un valor (fuente A) a otro valor (fuente B) y
Source A
coloque el resultado en el destino.
Source B

Dest

Instrucción de salida

Actualizaciones de bits de estado aritmético


Con este bit: El procesador:
se establece si el acarreo es generado; si no, se restablece (entero).
Acarreo (C)
Se pone a cero para el punto (coma) flotante.
se establece si overflow es detectado en el destino; en caso contrario,
se restablece. Durante overflow, el indicador de error menor también se
establece. Para el punto (coma) flotante, el valor de overflow se coloca
en el destino. Para un entero, el valor –32,768 ó 32,767 se coloca en el
Overflow (V)
destino. Excepción: si está usando un procesador SLC 5/02, SLC 5/03
ó SLC 5/04 o un controlador MicroLogix 1000 y tiene S:2/14 (bit de
selección de overflow matemático) establecido, entonces el overflowe
sin signo o y truncado permanece en el destino.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) se establece si el resultado negativo; en caso contrario, se restablece.

3–6
Instrucciones matemáticas

Restar (SUB)
3 3 3 3 3 3

SUB
SUBTRACT Use la instrucción SUB para restar un valor (fuente B) del otro (fuente A) y coloque
Source A
el resultado en el destino.
Source B

Dest

Instnrucción de salida

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
se establece si el acarreo es generado; en caso contrario, se restablece
Acarreo (C)
(entero). Se pone a cero para el punto (coma) flotante.
se establece si es underflow; en caso contrario, se restablece. Durante
underflow, el indicador de error menor también se establece. Para el
punto (coma) flotante, el valor de overflow se coloca en el destino. Para
un entero, el valor –32,768 ó 32,767 se coloca en el destino.
Overflow (V)
Excepción: si está usando un procesador SLC 5/02, SLC 5/03 ó SLC
5/04 o un controlador MicroLogix 1000 y tiene S:2/14 (bit de selección
de overflow matemático) establecido, entonces el overflower sin signo y
truncado permanece en el destino.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Sign (S) se establece si el resultado negativo; en caso contrario, se restablece.

3–7
Manual de referencia del juego de instrucciones
Preface

Adición y sustracción de 32 bits


3 3 3 3

Tiene la opción de realizar adición y sustracción de entero con signo de 16 ó 32 bits.


Esto es facilitado por el bit de archivo de estado S:2/14 (bit de selección de overflow
matemático).

Bit de selección de overflow matemático S:2/14

Establezca este bit cuando desee usar la adición y sustracción de 32 bits. Cuando
S:2/14 está establecido y el resultado de una instrucción ADD, SUB, MUL, DIV o
NEG no se puede representar en la dirección de destino (debido al underflow u
overflow matemático):
• El bit de overflow S:0/1 se establece.
• El bit de interrupción por overflow S:5/0 se establece.
• La dirección de destino contiene los 16 bits menos significativos truncados y sin
signo del resultado.

Nota Para las instrucciones MUL, DIV, de entero y todas las instrucciones de punto
(coma) flotante con un destino de entero, el cambio de estado se realiza
inmediatamente una vez establecido S:2/14.

Cuando S:2/14 se restablece (condición predeterminada) y el resultado de una


instrucción ADD, SUB, MUL, DIV o NEG no se puede representar en la dirección
de destino (debio al underflow u overflow matemático):
• El bit de overflow S:0/1 se establece.
• El bit de interrupción por overflow S:5/0 se establece.
• La dirección de destino contiene 32767 si el resultado es positivo o –32768 si el
resultado es negativo.

Nota Además, los procesadores SLC 5/03 y SLC 5/04 validan el estado de bit S:2/14
solamente al final de un escán para instrucciones ADD, SUB y NEG.

Anote que el estado de bit S:2/14 no afecta la instrucción DDV. Tampoco afecta el
contenido del registro matemático cuando usa las instrucciones MUL y DIV.
Nota Los procesadores SLC 5/03 y SLC 5/04 solamente interrogan este bit al pasar al
modo de marcha y final de escán. Use la función de monitorización de datos para
efectuar esta selección antes de introducir el modo de marcha.

3–8
Instrucciones matemáticas

Ejemplo de adición de 32 bits

El ejemplo siguiente muestra cómo se añade un entero signado de 16 bits a un


entero signado de 32 bits. Recuerde que S:2/14 debe estar establecido para la
adición de 32 bits.

Anote que el valor de los 16 bits más significativos (B3:3) del número de 32 bits se
incrementa en 1 si el bit de acarreo S:0/0 está estabelcido y se disminuye en 1 si el
número añadido (B3:1) es negativo.

Para evitar la ocurrencia de un error mayor al final del escán, debe desenclavar el bit
de interrupción por overflow S:5/0 según se muestra.

3–9
Manual de referencia del juego de instrucciones
Preface

Añadir el valor de 16 bits B3:1 al valor de 32 bits B3:3 B3:2


Operación de adición Binario Hex Decimal À
Addend B3:3 B3:2 0000 0000 0000 0011 0001 1001 0100 0000 0003 1940 203,072
Addend B3:1 0101 0101 1010 1000 55A8 21,928
Sum B3:3 B3:2 0000 0000 0000 0011 0110 1110 1110 1000 0003 6EE8 225,000

À
El dispositivo de programación muestra valores decimales de 16 bits solamente. El valor decimal de un entero de 32 bits se
deriva del valor binario o hex mostrado. Por ejemplo, 0003 1940 hex es 164x3 + 163x1 + 162x9 + 161x4 + 160x0 = 203,072.

B3 B3 ADD Cuando el renglón se hace


] [ [OSR] ADD
Source A B3:1 verdadero para un solo
0 1
0101010110101000 escán, B3:1 es añadido a
Source B B3:2 B3:2. El resultado se
0001100101000000 coloca en B3:2.
Dest B3:2
0001100101000000

S:0 ADD Si un acarreo es generado


] [ ADD
Source A 1 (S:0/0 establecido), 1 es
0 añadido a B3:3.
Source B B3:3
0000000000000011
Dest B3:3
0000000000000011

B3 SUB Si B3:1 es negativo


] [ SUBTRACT
Source A B3:3 (B3/31 establecido), 1 es
31 restado de B3:3.
0000000000000011
Source B 1

Dest B3:3
0000000000000011

S:5 El bit de TRAP de overflow


(U) S:5/0 se desenclava para
0 evitar la ocurrencia de un
END error mayor al final del
escán.

Nota de aplicación: Puede usar el renglón de arriba con una instrucción DDV y un
contador para calcular el valor promedio de B3:1.

3–10
Instrucciones matemáticas

Multiplicar (MUL)
3 3 3 3 3 3

MUL
MULTIPLY Use la instrucción MUL para multiplicar un valor (fuente A) por el otro (fuente B) y
Source A
coloque el resultado en el destino.
Source B

Dest

Instrucción de salida

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si el overflow se detecta en el destino; en caso contrario,
se restablece. Durante el overflow, el indicador de error menor también
se establece. El valor –32,768 ó 32,767 se coloca en el destino.
Excepción: si usa un procesador SLC 5/02, SLC 5/03 ó SLC 5/04 ó un
Overflow (V)
controlador MicroLogix 1000 y tiene S:2/14 (bit de selección de overflow
matemático) establecido, el overflow sin signo y truncado permanece en
el destino. Para los destinos de punto (coma) flotante, el resultado de
overflow permanece en el destino.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
se establece si el resultado es negativo; en caso contrario, se
Signo (S)
restablece.

Cambios del registro matemático, S:13 y S:14

Entero – Contiene el resultado con signo de 32 bits de la operación de


multiplicación. Este resultado es válido durante el overflow.

Punto (coma) flotante – El registro matemático no se cambia.

3–11
Manual de referencia del juego de instrucciones
Preface

Dividir (DIV)
3 3 3 3 3 3

DIV
DIVIDE Use la instrucción DI:V para dividir un valor (fuente A) entre otro (fuente B). El
Source A
cociente redondeado se coloca a su vez en el destino. Si el residuo es 0.5 ó mayor,
Source B
el redondear toma lugar en el destino. El cociente no redondeado se almacena en la
Dest
palabra más significativa del registro matemático. El resto se coloca en la palabra
menos significativa del registro matemático.
Instrucción de entrada

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si la división entre cero u overflow se detecta en el destino;
en caso contrario, se restablece. Durante el overflow, el indicador de
error menor también se establece. El valor 32,767 se coloca en el
destino. Excepción: si usa un procesador SLC 5/02, SLC 5/03 ó SLC
Overflow (V)
5/04 ó un controlador MicroLogix 1000 y tiene S:2/14 (bit de selección
de overflow matemático) establecido, el overflow sin signo y truncado
permanece en el destino. Para los destinos de punto (coma) flotante, el
resultado de overflow permanece en el destino.
se establece si el resultado es cero; si no, se restablece; no definido si
Cero (Z)
overflow está establecido.
se establece si el resultado es negativo; si no, se restablece; no definido
Signo (S)
si el overflow está establecido.

Cambios del registro matemático, S:13 y S:14

Entero – El cociente no redondeado se coloca en la palabra más significante y el


residuo se coloca en la palabra menos significativa.

Punto (coma) flotante – El registro matemático no se cambia.

Ejemplo
El residuo de 11/2 es 0.5, por lo tanto, el cociente se redondea a 6 y se almacena en
el destino. El cociente no redondeado, lo cual es 5, se almacena en S:14 y el
residuo, lo cual es 1, se almacena en S:13.
DIV
DIVIDE dónde: N7:0 = 11
Source A N7:0 N7:1 = 2
11
Source B N7:1 N7:2 = 6
2
Dest N7:2 resultado: S:14 = 5
6 S:13 = 1

3–12
Instrucciones matemáticas

División doble (DDV)


3 3 3 3 3 3
DDV
DOUBLE DIVIDE El contenido de 32 bits del registro matemático se divide entre el valor de fuente de
Source
16 bits y el cociente redondeado se coloca en el destino. Si el residuo es 0.5 ó
Dest
mayor, se redondea el destino.
Instrucción de salida
Típicamente esta instrucción sigue una instrucción MUL que crea un resultado de
32 bits.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si es división en cero o si el resultado es mayor de 32,767
ó menor de –32,768; en caso contrario, se restablece. Durante el
Overflow (V)
overflow, también se establece el indicador de error menor. El valor
32,767 se coloca en el destino.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
se establece si el resultado es negativo; en caso contrario, se
Signo (S)
restablece; no definido si el overflow está establecido.

Cambios del registro matemático, S:13 y S:14

Inicialmente contiene el dividendo de la operación DDV. A la ejecución de


instrucción, el cociente no redondeado se coloca en la palabra más significativa del
registro matemático. El residuo se coloca en la palabra menos significativa del
registro matemático.

3–13
Manual de referencia del juego de instrucciones
Preface

Borrar (CLR)
3 3 3 3 3 3

CLR
CLEAR Use la instrucción CLR para poner a cero el valor de destino de una palabra.
Dest

Instnrucción de salida

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece
Overflow (V) siempre se restablece
Cero (Z) siempre se establece
Signo (S) siempre se restablece

Raíz cuadrada (SQR)


3 3 3 3
SQR
SQUARE ROOT Cuando esta instrucción es evaluada como verdadera, la raíz cuadrada del valor
Source
absoluto de la fuente es calculada y el resultado redondeado se coloca en el destino.
Dest

La instrucción calcula la raíz cuadrada de un número negativo sin overflow ni fallos.


Instrucción de salida
En las aplicaciones donde el valor de fuente puede ser negativo, use una instrucción
de comparación para evaluar el valor de fuente para determinar si el destino puede
ser inválido.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
es reservado (entero). Para el punto
Acarreo (C) (coma) flotante, siempre está puesto a
cero.
Overflow (V) siempre se restablece.
se establece cuando el valor de destino
Cero (Z)
es cero.
Signo (S) siempre se restablece.

3–14
Instrucciones matemáticas

Cómo escalar con parámetros (SCP)


3 3

SCP
SCALE W/PARAMETERS Use la instrucción SCP para producir un valor de salida escalado que tiene una
Input relación lineal entre los valores de entrada y escalados. Esta instrucción tiene
Input Min.
Input Max. capacidad para valores de entero y punto (coma) flotante.
Scaled Min.
Scaled Max.
Scaled Output
Use la fórmula siguiente para convertir los datos de entrada analógicos en unidades
de ingeniería:
Instrucciones de salida

y = mx + b

Donde:
y = salida escalada
m = pendiente (escala máx. – escala mín.) / (entrada máx. – entrada mín.)
x = valor de entrada
b = offset (intersección y) = escala mín. – (entrada min. × inclinación)
Nota La entrada mínima, entrada máxima, escala mínima y escala máxima se usan para
determinar los valores de inclinación y offset. El valor de entrada puede salir de
los límites de entrada especificados sin requerir la puesta en orden. Por ejemplo, el
valor de salida con escala no se encontrará necesariamente fijado entre los valores
mínimos y máximos escalados.

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• El valor de entrada puede ser una dirección de palabra o una dirección de
elementos de datos de punto (coma) flotante.
• Los valores mínimos y máximos de entrada determinan el rango de datos que
aparece en el parámetro de valor de entrada. El valor puede ser una dirección
de palabra, una constante de entero, elemento de datos de punto (coma) flotante
o una constante de punto (coma) flotante.
• Los valores mínimos y máximos escalados determinan el rango de datos que
aparece en el parámetro de salida con escala. El valor puede ser una dirección
de palabra, una constante de entero, elemento de datos de punto (coma) flotante
o una constante de punto (coma) flotante.
• El valor de salida escalado puede ser una dirección de palabra o una dirección
de elementos de punto (coma) flotante.

3–15
Manual de referencia del juego de instrucciones
Preface

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si el overflow es generado o si una entrada sin capacidad
Overflow (V)
se detecta; si no, se restablece.
Cero (Z) se establece cuando el valor de destino es cero; si no, se restablece.
se establece cuando el valor de destino es negativo; si no, se
Signo (S)
restablece.

Ejemplos de aplicación

Ejemplo 1

En el primer ejemplo, un módulo de combinación de E/S analógica (1746-NIO4I) se


encuentra en la ranura 1 del chasis. Un transductor de presión está conectado a la
entrada 0 y deseamos leer el valor en unidades de ingeniería. El transductor de
presión mide presiones de 0–1000 lbs/pul2 y proporciona una señal de 0–10 V al
módulo analógico. Para una señal de 0–10 V, el módulo analógico proporciona un
rango entre 0–32,767. El renglón de programa siguiente colocará un número entre
0–1000 en N7:20 basado en la señal de entrada proveniente del transductor de
presión en el módulo analógico.
Renglón 2:0
| +SCP––––––––––––––––––––+ |
|––––––––––––––––––––––––––––––––––––––––––––––––––––+SCALE W/PARAMETERS +–|
| |Input I:1.0| |
| | 0| |
| |Input Min. 0| |
| | | |
| |Input Max. 32767| |
| | | |
| |Scaled Min. 0| |
| | | |
| |Scaled Max. 1000| |
| | | |
| |Scaled Output N7:20| |
| | 0| |
| +–––––––––––––––––––––––+ |

3–16
Instrucciones matemáticas

Ejemplo 2

En el segundo ejemplo, un módulo de combinación de E/S analógica (1764-NIO4I)


se encuentra en ranura 1 del chasis. Deseamos controlar la válvula proporcional
conectada a la salida 0. La válvula requiere una señal de 4–20 mA para controlar el
tamaño de su abertura (0–100%). (Suponga que hay presente lógica adicional en el
programa que calcula el tamaño de abertura de la válvula en porcentaje y coloca un
número entre 0–100 en N7:21.) El módulo analógico proporciona una señal de
salida de 4–20 mA para un número entre 6242–31,208. El renglón de programa
siguiente conducirá una salida analógica para proporcionar una señal de 4–20 mA a
la válvula proporcional (N7:21) basado en un número entre 0–100.
Renglón 2:1
| +SCP––––––––––––––––––––+ |
|––––––––––––––––––––––––––––––––––––––––––––––––––––+SCALE W/PARAMETERS +–|
| |Input N7:21| |
| | 0| |
| |Input Min. 0| |
| | | |
| |Input Max. 100| |
| | | |
| |Scaled Min. 6242| |
| | | |
| |Scaled Max. 31208| |
| | | |
| |Scaled Output O:1.0| |
| | 0| |
| +–––––––––––––––––––––––+ |

3–17
Manual de referencia del juego de instrucciones
Preface

Escala de datos (SCL)


3 3 3 3

SCL
SCALE Cuando esta instrucción es verdadera, el valor en la dirección de fuente se multiplica
Source
por el valor del régimen. El resultado redondeado se añade al valor de offset y se
Rate [/10000]
coloca en el destino.
Offset

Dest

Instrucción de salida

Ejemplo

SCL
SCALE
Source N7:0
100
La fuente 100 es multiplicada por
Rate [/10000] 25000
25000 y dividida entre 10000 y
Offset 127 sumada a 127. El resultado 377
se coloca en el destino.
Dest N7:1
377

Nota Cuando ocurre un underflow u overflow en el archivo de destino, el bit de error


menor S:5/0 debe estar restablecido por el programa. Esto debe ocurrir antes del
final del escán actual para evitar que el código de error mayor 0020 sea instruido.
Esta instrucción puede provocar un overflow antes de la adición del offset.

Anote que a veces el término régimen significa pendiente. La función de régimen se


limita al rango –3.2768 a 3.2767. Por ejemplo, –32768/10000 a +32767/10000.

Cómo introducir parámetros

El valor para los parámetros siguientes es entre –32,768 a 32,767.


• La fuente es una dirección de palabra.
• El régimen (o pendiente) es el valor positivo o negativo que usted introduce
dividido entre 10,000. Puede ser una constante de programa o una dirección de
palabra.
• El offset puede ser una constante de programa o una dirección de palabra.

3–18
Instrucciones matemáticas

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) es reservado.
se establece si un overflow se detecta; en caso contrario, se restablece.
Durante un overflow, el bit de error menor S:5/0 también se establece y
Overflow (V) el valor –32,768 ó 32,767 se coloca en el destino. La presencia de un
overflow se verifica antes y después de la aplicación del valor de
offset.
À
Cero (Z) se establece cuando el valor de destino es cero.
se establece si el valor de destino es negativo; en caso contrario, se
Signo (S)
restablece.

À Si el resultado de la fuente multiplicado por el régimen, dividido entre 10000 es mayor que 32767, la instrucción SCL
provoca un overflow y causa un error 0020 (bit de error menor) y coloca 32767 en el destino. Esto ocurre
independientemente del offset actual.

Ejemplo de aplicación 1 – Conversión de una señal de entrada analógica de 4 mA–20 mA


en una variable de proceso PID

16,383
(Escala máx.)

Valor con es-


cala

0
(Escala mín.)
3,277 16,384
(Entrada mín.) (Entrada máx.)
Valor de entrada

3–19
Manual de referencia del juego de instrucciones
Preface

Cómo calcular la relación lineal

Use las ecuaciones siguientes para expresar las relaciones lineales entre el valor de
entrada y el valor con escala resultante:

Valor con escala = (valor de entrada x régimen) + offset

Régimen = (escala máx. – escala mín.) / (entrada máx. – entrada mín.)

(16,383 − 0) / (16,384 – 3277) = 1.249 (ó 12,490/10000)

Offset = escala mín. – (entrada mín. x régimen)

0 – (3277 × 1.249) = –4093

Ejemplo de aplicación 2 – Cómo escalar una entrada analógica para controlar una salida
analógica

32,764 10V
(Escala máx.)

Valor con es-


cala

0 0V
(Escala mín.)
3,277 4 mA 16,384 20 mA
(Entrada mín.) (Entrada máx.)

Valor de entrada

3–20
Instrucciones matemáticas

Cómo calcular la relación lineal

Use las ecuaciones siguientes para calcular las unidades con escala:

Valor con escala = (valor de entrada x régimen) + offset

Régimen = (escala máx. – escala mín.) / (entrada máx. – entrada mín.)

(32,764 – 0) / (16,384 – 3277) = 2.4997 (ó 24,997/10000)

Offset = escala mín. – (entrada mín. x régimen)

0 − (3277 × 2.4997) = – 8192

Los valores de offset y régimen anteriores son correctos para la instrucción SCL.
No obstante, si la entrada excede 13,107, la instrucción provoca un overflow. Por
ejemplo:

17mA = 13,926 × 2.4997 = 34,810 (overflow real))

34,810 – 8192 = 26,618

Observe que ocurrió un overflow aunque el valor final era correcto. Esto ocurrió
porque se generó una condición de overflow durante el cálculo de régimen.

Para evitar un overflow, recomendamos desplazar la relación lineal a lo largo del eje
del valor de entrada y reducir los valores.

El diagrama siguiente muestra la relación lineal desplazada. El valor de entrada


mínima de 3,277 se resta del valor de entrada máximo de 16,384, lo que resulta en el
valor de 13,107.

3–21
Manual de referencia del juego de instrucciones
Preface

32,764 10V
(Escala máx.)

Valor con es-


cala

0 0V
(Escala mín.)
0 4 mA 13,107 20 mA
(Entrada mín. desplazada) (Entrada máx. desplazada)
Valor de entrada

Cómo calcular la relación lineal desplazada

Use las ecuaciones siguientes para calcular las unidades escaladas:

Valor con escala = (valor de entrada x régimen) + offset

Régimen = (escala máx. – escala mín.) / (entrada máx. – entrada mín.)

(32,764 − 0) / (13,107 − 0) = 2.4997 (ó 24,997/10000)

Offset = escala mín. – (entrada mín. x régimen)

0 – (0 × 2.4997) = 0

3–22
Instrucciones matemáticas

En este ejemplo, la instrucción SCL se introduce en el programa de lógica de


escalera tal como sigue:

Aplicar el desplazamiento
SUB
SUBTRACT Entrada analógica
Source A I:1.0
Source B 3277
Dest N7:0

Valor analógico con escala desplazado


SCL
SCALE
Source N7:0
Rate [/10000] 24997
Offset 0
Dest O:2.0 Salida analógica

3–23
Manual de referencia del juego de instrucciones
Preface

Absoluto (ABS)
3 3

ABS
ABSOLUTE VALUE Use la instrucción ABS para calcular el valor absoluto de la fuente y colocar el
Source
resultado en el destino. Esta instrucción tiene capacidad para los valores de entero y
Dest
punto (coma) flotante. Use esta instrucción con procesadores SLC 5/03 OS302 y
Instrucción de salida
SLC 5/04 OS401.

Cómo introducir los parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente puede ser una dirección de palabra, una constante de entero,
elemento de datos de punto (coma) flotante o una constante de punto (coma)
flotante.
• El destino sólo puede ser una dirección de palabra o un elemento de datos de
punto (coma) flotante.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
siempre se restablece con un valor de punto (coma) flotante; se
Overflow (V)
establece si la entrada es –32,768 (valor de entero).
se establece cuando el valor de destino es cero; en caso contrario, se
Cero (Z)
restablece.
Signo (S) siempre se restablece.

3–24
Instrucciones matemáticas

Calcular (CPT)
3 3

CPT
COMPUTE La instrucción CPT efectúa operaciones de copiar, aritméticas, lógicas y conversión.
Dest
Usted define la operación en la expresión y el resultado se escribe en el destino. El
Expression
CPT usa funciones para operar en uno o más valores en la expresion para efectuar
Instnrucción de salida
operaciones tales como:
• convertir de un formato de número a otro
• manejar los números
• efectuar funciones trigonométricas

Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

Las instrucciones que se pueden usar en la expresión incluyen:


+, –, *, | (DIV), SQR, – (NEG), NOT, XOR, OR, AND, TOD, FRD, LN,
TAN, ABS, DEG, RAD, SIN, COS, ATN, ASN, ACS, LOG y ** (XPY).
Nota El tiempo de ejecución de una instrucción CPT es mayor que el de una sola
operación aritmética y usa más palabras de instrucción.

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• El destino puede ser una dirección de palabra o la dirección de un elemento de
datos de punto (coma) flotante.
• La expresión es cero o más líneas, con hasta 28 caracters por línea, hasta 255
caracteres.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) se establece según el resultado de la última instrucción en la expresión.
se establece cuando un overflow ocurre durante la evaluación de la
Overflow (V)
expresión.
Cero (Z) se establece según el resultado de la última instrucción en la expresión.
Signo (S) se establece según el resultado de la última instrucción en la expresión.

Los bits anteriores son puestos a cero al inicio de la instrucción CPT. Vea S:34/2
para información acerca del manejo especial de los bits de estado aritmético al usar
un punto (coma) flotante.

3–25
Manual de referencia del juego de instrucciones
Preface

Ejemplo de aplicación
Este ejemplo de aplicación usa el teorema de Pitágoras para calcular la longitud de
la hipotenusa de un triángulo cuando se conocen los dos catetos. Use la ecuación
siguiente:
c2 = a2 + b2
donde c = Ǹ (a2 + b2)
N10:0 = Ǹ (N7:1)2 + (N7:2)2
El renglón 2:0 usa instrucciones matemáticas estándar para implementar el teorema de
Pitágoras. El renglón 2:1 usa la instrucción CPT para obtener el mismo resultado.
Renglón 2:0
| +XPY–––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––––––––––––––––––+–+X TO POWER OF Y +–+–|
| | |Source A N7:1| | |
| | | 3| | |
| | |Source B 2| | |
| | | | | |
| | |Dest N7:3| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | +XPY–––––––––––––––+ | |
| +–+X TO POWER OF Y +–+ |
| | |Source A N7:2| | |
| | | 4| | |
| | |Source B 2| | |
| | | | | |
| | |Dest N7:4| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | +ADD–––––––––––––––+ | |
| +–+ADD +–+ |
| | |Source A N7:3| | |
| | | 0| | |
| | |Source B N7:4| | |
| | | 0| | |
| | |Dest N7:5| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | +SQR–––––––––––––––+ | |
| +–+SQUARE ROOT +–+ |
| |Source N7:5| |
| | 0| |
| |Dest N7:0| |
| | 0| |
| +––––––––––––––––––+ |
Renglón 2:1
| +CPT––––––––––––––––––––––––+ |
|––––––––––––––––––––––––––––––––––––––––––––––––+COMPUTE +–|
| |Dest N10:0| |
| | 0| |
| |Expression | |
| |SQR ((N7:1 ** 2) + (N7:2 **| |
| |2)) | |
| +–––––––––––––––––––––––––––+ |
Renglón2:2
| |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
| |

3–26
Instrucciones matemáticas

Intercambio (SWP)
3 3

SWP
SWAP Use esta instrucción para intercambiar los bytes bajos y altos de un número de
Source
Length palabras especificado en un archivo de bit, entero, ASCII o cadena. Use esta
instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
Instrucción de salida

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente sólo puede ser una dirección de palabra indexada.
• La longitud es una referencia al número de palabras que van a intercambiarse,
pese al tipo de archivo. La dirección se limita a constantes de entero. Para los
archivos de tipo bit, entero y ASCII, el rango de longitud es de 1 a 128. Para el
archivo de tipo cadena, el rango de longitud es de 1 a 41. Anote que esta
instrucción se restringe a un solo elemento de cadena y no puede cruzar un
límite de elemento de cadena.

El ejemplo siguiente muestra cómo funciona la instrucción SWP..


SWP
SWAP

Source #ST10:1.1
Length 13

Antes:
ST10:1 = abcdefghijklmnopqrstuvwxyz

Después:
ST10:1 = badcfehgjilknmporqtsvuxwzy

3–27
Manual de referencia del juego de instrucciones
Preface

Arco seno (ASN)


3 3

ASN
ARC SINE Use la instrucción ASN para tomar el arco seno de un número (fuente en radianes) y
Source
almacenar el resultado (en radianes) en el destino. La fuente debe ser mayor o igual
Dest
que –1 y menor o igual que 1. El valor resultante en el destino siempre es mayor o
Instrucción de salida
igual que –π/2 y menor o igual que π/2 donde π = 3.141592. Use esta instrucción
con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; si no, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
se establece si el resultado es negativo; en caso contrario, se
Signo (S)
restablece.

3–28
Instrucciones matemáticas

Arco coseno (ACS)


3 3

ACS
ARC COSINE Use la instrucción ACS para tomar el arco seno de un número (fuente en radianes) y
Source
almacenar el resultado (en radianes) en el destino. La fuente debe ser mayor o igual
Dest
que –1 y menor o igual que 1. El valor resultante en el destino siempre es mayor o
Instrucción de salida
igual que 0 y menor o igual que π , donde π = 3.141592. Use esta instrucción con
los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) siempre se restablece.

Arco tangente (ATN)


3 3

ATN
ARC TANGENT Use la para tomar el arco tangente de un número (fuente) y almacenar el resultado
Source
(en radianes) en el destino. El valor resultante en el destino siempre es mayor o
Dest
igual que –π /2 y menor o igual que π/2, donde π = 3.141592. Use esta instrucción
Instrucción de salida
con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
se establece si el resultado es negativo; en caso contrario, se
Signo (S)
restablece.

3–29
Manual de referencia del juego de instrucciones
Preface

Coseno (COS)
3 3

COS
COSINE Use la instrucción COS para tomar el coseno de un número (fuente en radianes) y
Source
almacenar el resultado (en radianes) en el destino. La fuente debe ser mayor o igual
Dest
que –205887.4 y menor o igual que 205887.4. La óptima exactitud se obtiene
Instrucción de salida
cuando la fuentes es mayor que –2 π y menor que 2 π, donde π = 3.141592. El
valor resultante en el destino siempre es mayor o igual que –1 y menor o igual que
1. Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) siempre se restablece.

Logaritmo natural (LN)


3 3

LN
NATURAL LOG Use la instrucción LN para tomar el logaritmo natural del valor en la fuente y
Source
almacenar el resultado en el destino. La fuente debe ser mayor que cero. El valor
Dest
resultante en el destino siempre es mayor que o igual que –87.33654 y menor o
Instrucción de salida
igual que 88.72284. Use esta instrucción con los procesadores SLC 5/03 OS302 y
SLC 5/04 OS401.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) siempre se restablece.

3–30
Instrucciones matemáticas

Logaritmo a la base 10 (LOG)


3 3

LOG
LOG BASE 10 Use la instrucción LOG para tomar el logaritmo de base 10 del valor en la fuente y
Source
almacenar el resultado en el destino. La fuente debe ser mayor que cero. El valor
Dest
resultante en el destino siempre es mayor o igual que –37.92978 y menor o igual
Instrucción de salida
que 38.53184. Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC
5/04 OS401.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) siempre se restablece.

Seno (SIN)
3 3

SIN
SINE Use la instrucción SIN para tomar el seno de un número (fuente en radianes) y
Source
almacenar el resultado en el destino. La fuente debe ser mayor o igual que
Dest
–205887.4 y menor o igual que 205887.4. La óptima exactitud se obtiene cuando la
Instrucción de salida
fuente es mayor que –2 π y menor que 2 π, donde π = 3.141592. El valor resultante
en el destino siempre es mayor que o igual que –1 y menor o igual que 1. Use esta
instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401..

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) siempre se restablece.

3–31
Manual de referencia del juego de instrucciones
Preface

Tangente (TAN)
3 3

TAN
TANGENT Use la instrucción TAN para tomar la tangente de un número (fuente en radianes) y
Source
almacenar el resultado en el destino. El valor de la fuente debe ser mayor o igual
Dest
que –102943.7 y menor o igual que 102943.7. La óptima exactitud se obtiene
Instrucción de salida
cuando la fuente es mayor que –2 π y menor que 2 π, donde π = 3.141592. El valor
resultante en el destino es un número real o infinito. Use esta instrucción con los
procesadores SLC 5/03 OS302 y SLC 5/04 OS401..

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) siempre se restablece.

3–32
Instrucciones matemáticas

X a la potencia de Y (XPY)
3 3

XPY
X TO POWER OF Y Use la instrucción XPY para elevar un valor (fuente A) a una potencia (fuente B) y
Source A
almacenar el resultado en el destino. Si el valor en la fuente A es negativo, la
Source B
exponente (fuente B) debe ser un número entero. Si no es un número entero, el bit
Dest
de overflow se establece y el valor absoluto de la base se usa en el cálculo. Use esta
Instrucción de salida
instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

La instrucción XPY usa el algoritmo siguiente:


XPY = 2 ** (Y * log2 (X))

Si cualquiera de las operaciones intermedias en este algoritmo provoca un overflow,


se establece el bit de estado de overflow aritmético (S:01/).

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un overflow es generado o una entrada sin capacidad se
Overflow (V)
detecta; en caso contrario, se restablece.
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece.
Signo (S) siempre se restablece.

3–33
Manual de referencia del juego de instrucciones
Preface

Instrucciones matemáticas en el ejemplo de aplicación


de la perforadora de papel
Esta sección proporciona renglones de escalera para demostrar el uso de
instrucciones matemáticas. Los renglones son parte del ejemplo de aplicación de la
perforadora de papel descrito en el apéndice H. Usted va a añadir a la subrutina en
archivo 7 que se comenzó en el capítulo 2.

3–34
Instrucciones matemáticas

Cómo añadir el archivo 7


Renglón 7:1
Este renglón restablece el número de incrementos de 1/4 pulg. y las milésimas de 1/4
pulg. cuando se activa el interruptor de llave de “restablecimiento de cambio de la
broca”. Esto debe ocurrir a continuación de cada cambio de la broca.
| interruptor Milésimas |
| de llave de 1/4 pulg. |
| de restablecimiento |
| de cambio de broca |
| I:1.0 +CLR–––––––––––––––+ |
|––––] [––––––––––––––––––––––––––––––––––––––––––––––+–+CLEAR +–+–|
| 8 | |Dest N7:11| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | incrementos | |
| | de 1/4 pulg. | |
| | | |
| | +CLR–––––––––––––––+ | |
| +–+CLEAR +–+ |
| |Dest N7:10| |
| | 0| |
| +––––––––––––––––––+ |
Renglón 7:6
Mantenga un total actualizado de cuántas pulgadas de papel han sido perforadas con
la broca actual. Cada vez que se perfora un orificio, añada el espesor (en 1/4
pulg.) al total actualizado (registrado en 1/4 pulg.) El OSR es necesario porque el
ADD se ejecuta cada vez que el renglón es verdadero y el cuerpo de la perforadora
activaría el interruptor de límite de PROFUNDIDAD DE BROCA durante más de un escán
de programa. El entero N7:12 es el valor convertido por entero del interruptor
preselector rotatorio en las entradas I:3/11 – I:3/14.
| Prof. |Desgaste de herramienta Incrementos |
| de broca | OSR 1 de 1/4 pulg. |
| LS |
| I:1.0 B3:1 +ADD–––––––––––––––+ |
|––––] [–––––––[OSR]––––––––––––––––––––––––––––––––––––––+ADD +–|
| 4 8 |Source A N7:12| |
| | 1| |
| |Source B N7:10| |
| | 0| |
| |Dest N7:10| |
| | 0| |
| +––––––––––––––––––+ |

3–35
Manual de referencia del juego de instrucciones
Preface
Renglón 7:7
Cuando el número de incrementos de 1/4 pulg. sobrepasa 1000, determine cuántos
incrementos han sobrepasado 1000 y almacene N7:20, añada 1 al total de 1000
incrementos de 1/4 pulg. y reinicialice el acumulador de incrementos de 1/4 pulg. a
la cantidad de incrementos que habían sobrepasado 1000.
| Incrementos |
| de 1/4 pulg. |
| |
| +GEQ–––––––––––––––+ +SUB–––––––––––––––+ |
|–+GRTR THAN OR EQUAL+––––––––––––––––––––––––––––––––+–+SUBTRACT +–+–|
| |Source A N7:10| | |Source A N7:10| | |
| | 0| | | 0| | |
| |Source B 1000| | |Source B 1000| | |
| | | | | | | |
| +––––––––––––––––––+ | |Dest N7:20| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | Milésimas | |
| | de 1/4 pulg. | |
| | +ADD–––––––––––––––+ | |
| +–+ADD +–+ |
| | |Source A 1| | |
| | | | | |
| | |Source B N7:11| | |
| | | 0| | |
| | |Dest N7:11| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | | |
| | | |
| | | |
| | Incrementos | |
| | de 1/4 pulg. | |
| | +MOV–––––––––––––––– | |
| +–+MOVE +–+ |
| |Source N7:20| |
| | 0| |
| |Dest N7:10| |
| | 0| |
| +––––––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|

3–36
Instrucciones de manejo de datos

4 Instrucciones de manejo de datos


Este capítulo contiene información general acerca de las instrucciones de manejo de
datos y explica cómo funcionan en su programa de aplicación. Cada una de las
instrucciones incluye información acerca de:
• cómo aparece el símbolo de instrucción
• cómo usar la instrucción

Además, la última sección contiene un ejemplo de aplicación para una perforadora


de papel que muestra el uso de las instrucciones de manejo de datos.

Instrucciones de manejo de datos

Instrucción
Propósito Página
Mnemónico Nombre
TOD Convertir a BCD Convierte el valor de fuente de entero en el formato 4–3
BCD y lo almacena en el destino.
FRD Convertir desde Convierte el valor de fuente BCD en un entero y lo 4–6
BCD almacena en el destino.
DEG Convertir de Convierte radianes (fuente) en grados y almacena 4–10
radianes a grados el resultado en el destino.
RAD Convertir de Convierte grados (fuente) en radianes y almacena 4–11
grados a radianes el resultado en el destino.
DCD Descodificar 4 a 1 Descodifica un valor de 4 bits (0 a 15) activando el 4–12
de 16 bit correspondiente en el destino de 16 bits.
ENC Codificar 1 de 16 a Codifica una fuente de 16 bits a un valor de 4 bits. 4–13
4 Busca la fuente desde el bit mínimo al bit máximo y
busca el primer bit establecido. La posición de bit
correspondiente se escribe en el destino como
entero.
COP y FLL Copiar el archivo y La instrucción COP copia datos del archivo de 4-15
llenar el archivo fuente al archivo de destino. La instrucción FLL
carga un valor de fuente en cada posición al archivo
de destino.
continúa en la página siguiente

4–1
Manual de referencia del juego de instrucciones
Preface

Instrucción
Propósito Página
Mnemónico Nombre
MOV Mover Mueve el valor de fuente al destino. 4–20
MVM Mover con Mueve los datos de un lugar de fuente a una 4–21
máscara porción seleccionada del destino.
AND Y Realiza una operación Y por bit. 4–23
OR O Realiza una operación O inclusiva por bit. 4–24
XOR O exclusivo Realiza una operación de O exclusivo por bit. 4–25
NOT No Realiza una operación NO. 4–26
NEG Negar Cambia el signo de la fuente y lo almacena en el 4–27
destino.
FFL y FFU Carga FIFO y La instrucción FFL carga una palabra en una pila 4–30
descarga FIFO FIFO en transiciones de falso a verdadero sucesi-
vas. El FFU descarga una palabra de la pila en
transi- ciones de falso a verdadero sucesivas. La
primera palabra cargada es la primera de ser
descargada.
LFL y LFU Carga LIFO y La instrucción LFL carga una palabra en una pila 4–32
descarga LIFO LIFO en transiciones de falso a verdadero sucesi-
vas. El LFU descarga una palabra de la pila en
transiciones de falso a verdadero sucesivas. La
última palabra cargada es la primera de ser descar-
gada.

Acerca de las instrucciones de manejo de datos


Use estas instrucciones para convertir información, manejar datos en el controlador
y realizar operaciones de lógica.

En este capítulo se encuentra una descripción general antes de los grupos de


instrucciones. Antes de aprender las instrucciones en cada uno de estos grupos, le
recomendamos que lea la descripción general. Este capítulo contiene las
descripciones generales siguientes:
• Descripción general de las instrucciones de mover y lógicas
• Descripción general de las instrucciones FIFO y LIFO

4–2
Instrucciones de manejo de datos

Convertir en BCD (TOD)


3 3 3 3 3 3

TOD
TO BCD Use esta instrucción para convertir enteros de 16 bits en valores BCD.
Source

Dest S:13
00000000 Con los procesadores fijos y SLC 5/01, el destino sólo puede ser el registro
matemático. Con los procesadores SLC 5/02, SLC 5/03 y SLC 5/04 y controladores
Instrucción de salida
Procesadores fijos y SLC 5/01 MicroLogix 1000, el parámetro de destino puede ser una dirección de palabra en
cualquier archivo o puede ser el registro matemático, S:13 y S:14.
TOD
TO BCD
Source
Si el valor de entero que introduce es negativo, el valor absoluto del número se usa
Dest para la conversión.

Instrucción de salida
Procesadores SLC 5/02,
SLC 5/03 y SLC 5/04 y controla-
dores MicroLogix 1000

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si el resultado BCD es mayor de 9999. El overflow resulta
Overflow (V)
en un error menor.
Cero (Z) se establece si el valor de destino es cero.
se establece si la palabra de fuente es negativa; en caso contrario, se
Signo (S)
restablece.

Cambios del registro matemático, S:13 y S:14

Contiene el resultado BCD de 5 dígitos de la conversión. Este resultado es válido


en el overflow.

4–3
Manual de referencia del juego de instrucciones
Preface

Ejemplo 1

3 3 3

El valor de entero 9760 almacenado en N7:3 se convierte en BCD y la equivalente


de BCD se almacena en N10:0. El máximo valor BCD posible es 9999.

TOD
TO BCD
Source N7:3
9760 El valor de destino se muestra en el
Dest N10:0 formato BCD
9760

9 7 6 0 N7:3 Decimal 0010 0110 0010 0000

9 7 6 0 N10:0 BCD de 4 dígitos 1001 0111 0110 0000

Ejemplo 2

3 3 3

El valor de entero 32760 almacenado en N7:3 se convierte en BCD. El valor BCD


de 5 dígitos se almacena en el registro matemático. Los 4 dígitos inferiores del
valor BCD se mueven a la palabra de salida O:2 y el dígito restante se mueve a
través de una máscara a la palabra de salida O:3.

Cuando usa el registro matemático como el parámetro de destino en la instrucción


TOD, el máximo valor BCD posible es 32767. Sin embargo, para los valores BCD
mayores de 9999, el bit de overflow se establece lo que también resulta en el
establecimiento del bit de error menor S:5/0. Su programa de escalera puede
desenclavar S:5/0 antes del final del escán para evitar el error mayor 0020, según se
hizo en este ejemplo.

4–4
Instrucciones de manejo de datos

3 2 7 6 0 N7:3 Decimal

0 0 0 3 2 7 6 0 BCD de 5 dígitos S:13 y S:14


15 0 15 0
S:14 S:13

Este ejemplo producirá el valor absoluto (0–32767)


contenido en N7:3 como 5 dígitos BCD en las ranuras de
salida 2 y 3.
TOD
] [ TO BCD
Source N7:3
32760 S:13 y S:14 se
Dest S:13 muestran en el formato
00032760 BCD.
Bit de
overflow S:0 S:5 Bit de error
] [ (U) menor
1 0
MOV
MOVE
Source S:13
10080
Dest O:2.0 0010 0111 0110 0000
10080

MVM
MASKED MOVE
Source S:14
3
Mask 000F

Dest O:3.0 0000 0000 0000 0011


3

4–5
Manual de referencia del juego de instrucciones
Preface

Convertir de BCD (FRD)


3 3 3 3 3 3

FRD
FROM BCD Use esta instrucción para convertir los valores BCD en valores enteros. Con los
Source S:13
00000000 procesadores fijos y SLC 5/01, la fuente sólo puede ser el registro matemático. Con
Dest
los procesadores SLC 5/02, SLC 5/03 y SLC 5/04 y controladores MicroLogix
1000, el parámetro de fuente puede ser una dirección de palabra en cualquier
Instrucción de salida
Procesadores fijos y
archivo de datos o puede ser el registro matemático, S:13.
SLC 5/01

FRD
FROM BCD
Source

Dest

Instrucción de salida
Procesadores SLC 5/02, SLC 5/03
y SLC 5/04 y controladores Micro-
Logix 1000

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece.
se establece si un valor que no sea BCD se contiene en la fuente o si el
Overflow (V) valor que va a convertir es mayor de 32,767; en caso contrario, se
restablece. El overflow resulta en un error menor.
Cero (Z) se establece si el valor de destino es cero.
Signo (S) siempre se restablece.

Nota Recomendamos que siempre proporcione filtro de lógica de escalera para todos los
dispositivos de entrada BCD antes de realizar la instrucción FRD. La mínima
diferencia en el retardo del filtro de entrada de punto a punto puede provocar un
overflow de la instrucción FRD debido a la conversión de un dígito que no sea
BCD.

4–6
Instrucciones de manejo de datos

S:1 EQU FRD


]/[ EQUAL FROM BCD
15 Source A N7:1 Source I:0.0
0 0

Source B I:0.0 Dest N7:2


0 0

MOV
MOVE
Source I:0.0
0

Dest N7:1
0

En el ejemplo de arriba, los dos renglones causan que el procesador verifique que el
valor en I:0 siga siendo el mismo durante dos escanes consecutivos antes de ejecutar
el FRD. Esto evita que el FRD convierta un valor que no sea BCD durante un
cambio del valor de entrada.
Nota Para convertir números mayores de 9999 BCD, la fuente debe ser el registro
matemático (S:13). Debe restablecer el bit de error menor (S:5.0) para evitar un
error.

Cambios del registro matemático, S:13 y S:14

Se usan como la fuente para convertir todo el rango de números de un registro.

Ejemplo 1

3 3 3

El valor BCD 9760 en la fuente N7:3 se convierte y se almacena en N10:0. El


máximo valor de fuente es 9999, BCD.

FRD
FROM BCD
Source N7:3 El valor de fuente se muestra
9760 en el formato BCD.
Dest N10:0
9760

9 7 6 0 N7:3 BCD de 4 dígitos 1001 0111 0110 0000

9 7 6 0 N10:0 Decimal 0010 0110 0010 0000

4–7
Manual de referencia del juego de instrucciones
Preface

Ejemplo 2

3 3 3 3 3 3

El valor BCD 32760 en el registro matemático se convierte y se almacena en N7:0.


El máximo valor de fuente es 32767, BCD.

FRD
FROM BCD
Source S:13 S:13 y S:14 se muestran en
00032760 el formato BCD.
Dest N7:0
32760

0000 0000 0000 0011 0010 0111 0110 0000


15 S:14 0 15 S:13 0 BCD de 5 dígitos
0 0 0 3 2 7 6 0

3 2 7 6 0 N7:0 Decimal 0111 1111 1111 1000

Usted debe convertir los valores BCD en enteros antes de manejarlos en su


programa de escalera. Si no convierte los valores, el procesador los maneja como
enteros y su valor se pierde.
Nota Si el registro matemático (S:13 y S:14) se usa como la fuente para la instrucción
FRD y el valor BCD no excede 4 dígitos, asegúrese de borrar la palabra S:14 antes
de ejecutar la instrucción FRD. Si S:14 no se borra y un valor se contiene en esta
palabra procedente de otra instrucción matemática ubicada en otra parte del
programa, se colocará un valor decimal incorrecto en la palabra de destino.

4–8
Instrucciones de manejo de datos

A continuación se muestra cómo borrar S:14 antes de ejecutar la instrucción FRD:

I:1 MOV
] [ MOVE
0 Source N7:2 0001 0010 0011 0100
4660
Dest S:13
4660

CLR
CLEAR
Dest S:14
0

FRD
FROM BCD S:13 y S:14 se
Source S:13 muestran en el formato
00001234
Dest N7:0
BCD.
1234
0000 0100 1101 0010

Cuando la condición de entrada se establece (1), un valor BCD (transferido de un


interruptor preselector rotatorio de 4 dígitos, por ejemplo) se mueve de la palabra
N7:2 al registro matemático. La palabra de estado S:14 se borra para asegurar que
los datos no deseados no estén presentes cuando se ejecute la instrucción FRD.

4–9
Manual de referencia del juego de instrucciones
Preface

Radianes en grados (DEG)


3 3

DEG
Radians to Degrees Use esta instrucción para convertir los radianes (fuente) en grados y almacenar el
Source
resultado en el destino. La fórmula siguiente se aplica:
Dest

Instrucción de salida Fuente 180/Π


donde Π = 3.141592

Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

Cómo introducir parámetros


• La fuente es el entero y/o los valores de punto (coma) flotante.
• El destino es la dirección de la palabra donde se almacenan los datos.

Actualizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece
se establece si un overflow es generado o si una entrada sin capacidad
Overflow (V)
se detecta; en caso contrario, se restablece
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece
se establece si el resultado es negativo; en caso contrario, se
Signo (S)
restablece

4–10
Instrucciones de manejo de datos

Grados en radianes (RAD)


3 3

RAD
Degress to Radians Use esta instrucción para convertir los grados (fuente) en radianes y almacenar el
Source
resultado en el destino. La fórmula siguiente se aplica:
Dest

Instrucción de salida Fuente Π/180


donde Π = 3.141592

Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.

Cómo introducir los parámetros


• La fuente es el entero y/o los valores de punto (coma) flotante.
• El destino es la dirección de la palabra donde se almacenan los datos.

Actaulizaciones de los bits de estado aritmético


Con este bit: El procesador:
Acarreo (C) siempre se restablece
se establece si un overflow es generado o si una entrada sin capacidad
Overflow (V)
se detecta; en caso contrario, se restablece
Cero (Z) se establece si el resultado es cero; en caso contrario, se restablece
se establece si el resultado es negativo; en caso contrario, se
Signo (S)
restablece

4–11
Manual de referencia del juego de instrucciones
Preface

Descodificar 4 a 1 de 16 (DCD)
3 3 3 3 3 3
DCD
DECODE 4 to 1 of 16 Una vez ejecutada, esta instrucción establece un bit de la palabra de destino. El bit
Source
que se activa depende del valor de los cuatro primeros bits de la palabra de fuente.
Dest
Vea la tabla siguiente.

Instrucción de salida Use esta instrucción para multiplexar los datos en aplicaciones tales como
interruptores preselectores rotatorios, teclados y conmutación de banco.

Fuente Destino
Bit 15–04 03 02 01 00 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00

x 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1
x 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0
x 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0
x 0 0 1 1 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0
x 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0
x 0 1 0 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0
x 0 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0
x 0 1 1 1 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0
x 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0
x 1 0 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0
x 1 0 1 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0
x 1 0 1 1 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0
x 1 1 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0
x 1 1 0 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0
x 1 1 1 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0
x 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Cómo introducir parámetros


• La fuente es la dirección que contiene la información de descodificación de bit.
Sólo los cuatro primeros bits (0–3) se usan en la instrucción DCD. Los bits
restantes se pueden usar para otras necesidades de aplicaciones específicas.
Cambie el valor de los cuatro primeros bits de esta palabra para seleccionar un
bit de la palabra de destino.
• El destino es la dirección de la palabra donde se almacenan los datos.

Actualizaciones de los bits de estado aritmético

Permanecen sin cambios.

4–12
Instrucciones de manejo de datos

Codificar 1 de 16 a 4 (ENC)
3

ENC
ENCODE 1 of 16 to 4 Cuando el renglón es verdadero, esta instrucción de salida busca la fuente desde el
Source
bit mínimo hasta el bit máximo y busca el primer bit establecido. La posición de bit
Dest
correspondiente es escribe al destino como entero según se muestra en la tabla
Instrucción de salida siguiente:

Fuente Destino
Bit 15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 15–04 03 02 01 00

x x x x x x x x x x x x x x x 1 x 0 0 0 0
x x x x x x x x x x x x x x 1 0 x 0 0 0 1
x x x x x x x x x x x x x 1 0 0 x 0 0 1 0
x x x x x x x x x x x x 1 0 0 0 x 0 0 1 1
x x x x x x x x x x x 1 0 0 0 0 x 0 1 0 0
x x x x x x x x x x 1 0 0 0 0 0 x 0 1 0 1
x x x x x x x x x 1 0 0 0 0 0 0 x 0 1 1 0
x x x x x x x x 1 0 0 0 0 0 0 0 x 0 1 1 1
x x x x x x x 1 0 0 0 0 0 0 0 0 x 1 0 0 0
x x x x x x 1 0 0 0 0 0 0 0 0 0 x 1 0 0 1
x x x x x 1 0 0 0 0 0 0 0 0 0 0 x 1 0 1 0
x x x x 1 0 0 0 0 0 0 0 0 0 0 0 x 1 0 1 1
x x x 1 0 0 0 0 0 0 0 0 0 0 0 0 x 1 1 0 0
x x 1 0 0 0 0 0 0 0 0 0 0 0 0 0 x 1 1 0 1
x 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x 1 1 1 0
1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 x 1 1 1 1

Cómo introducir parámetros


• La fuente es la dirección de la palabra que va a codificar (encode). Sólo un bit
de esta palabra se debe activar a la vez. Si hay más de un bit establecido en la
fuente, los bits de destino estarán establecidos en el bit menos significante
establecido. Si se usa una fuente de cero, todos los bits de destino estarán
restablecidos y el bit de cero se establecerá.
• El destino es la dirección que contiene la información de codificación (encode)
de bit. Los bits 4–15 del destino están restablecidos por la instrucción ENC.

4–13
Manual de referencia del juego de instrucciones
Preface

Actualizaciones de los bits de estado aritmético

Los bits de estado aritmético se encuentran en la palabra 0, bits 0–3 en el archivo de


estado del controlador. Después de la ejecución de una instrucción, los bits de
estado aritmético en el archivo de estado se actualizan:

Con este bit: El controlador:


S:0/0 Acarreo (C) siempre se restablece.
se establece si más de un bit se establece; en caso contrario,
S:0/1 Overflow (V) se restablece. El bit de overflow matemáitico (S:5/0) no se
establece.
S:0/2 Cero (Z) se establece si el valor de destino es cero.
S:0/3 Signo (S) siempre se restablece.

4–14
Instrucciones de manejo de datos

Instrucciones para copiar el archivo (COP)


y llenar el archivo (FLL) 3 3 3 3 3 3

COP
COPY FILE El archivo de tipo destino determina el número de palabras que una instrucción
Source
Dest
Length
transfiere. Por ejemplo, si el archivo de tipo destino es un contador y el archivo de
tipo fuente es un entero, se transfieren tres palabras de entero por cada elemento en
el archivo de tipo contador.
FLL
FILL FILE
Source
Dest
Length Después de la ejecución de una instrucción COP o FLL, el registro de índice S:24 se
pone a cero.
Instrucciones de salida

Uso de COP

Esta instrucción copia bloques de datos de un lugar a otro. No usa bits de estado. Si
usted necesita un bit de habilitación, programe una instrucción de salida (OTE) en
paralelo usando un bit interno como la dirección de salida. La ilustración siguiente
muestra cómo se manejan los datos de instrucción de archivo.

Fuente Destino

Archivo a archivo

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente es la dirección del archivo que desea copiar. Debe usar el indicador
de archivo (#) en la dirección. Cuando se usa un procesador SLC 5/03 OS301,
OS302 ó SLC 5/04 OS401, se soportan los valores de punto (coma) flotante y
cadena.
• El destino es la dirección inicial donde la instrucción almacena la copia. Debe
usar el indicador de archivo (#) en la dirección. Cuando usa un procesador SLC
5/03 OS301, OS302 ó SLC 5/04 OS401, se soportan los valores de punto
(coma) flotante y cadena.

4–15
Manual de referencia del juego de instrucciones
Preface

• La longitud es el número de elementos en el archivo que desea copiar.

– Para los procesadores SLC, si el archivo de tipo destino es 3 palabras


por elemento (temporizador o contador), puede especificar una longitud
máxima de 42. Si el archivo de tipo destino es 1 palabra por elemento,
puede especificar una longitud máxima de 128 palabras.

– Vea la tabla siguiente respecto a los controladores MicroLogix 1000:


Si el archivo de tipo entonces puede especificar una
destino es un/una: longitud máxima de:
Salida 1
Entrada 2
Estado 33
Bit 32
Temporizador 40
Contador 32
Control 16
Entero 105

Nota Las longitudes máximas se aplican cuando la fuente es del mismo tipo de
archivo.

Todos los elementos son copiados del archivo de fuente al archivo de destino cada
vez que se ejecuta la instrucción. Los elementos se copian en orden ascendiente.

Si su archivo de tipo destino es un archivo de temporizador, contador o control,


asegúrese que las palabras de fuente correspondientes a las palabras de estado de su
archivo de destino contengan ceros.

Asegúrese de especificar con precisión la dirección inicial y la longitud del bloque


de datos que está copiando. La instrucción no sobrescribirá un límite de archivo
(por ejemplo, entre archivos N16 y N17) en el destino. Ocurre un error si se intenta
una sobrescritura del límite de archivo.

Puede realizar desplazamientos de archivo especificando una dirección de elemento


de fuente que tiene uno o más elementos que la dirección de elemento de destino
dentro del mismo archivo. Esto desplaza los datos a direcciones de elemento
inferiores.

4–16
Instrucciones de manejo de datos

Uso de FLL

Esta instrucción carga elementos de un archivo con una constante de programa o


valor de una dirección de elemento.

La instrucción llena las palabras de un archivo con un valor de fuente. No usa bits
de estado. Si usted necesita un bit de habilitación, programe una salida en paralelo
que usa una dirección de almacenamiento. La ilustración siguiente muestra cómo se
manejan los datos de instrucción de archivo.

Destino
Fuente

Palabra a archivo

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente es la constante de programa o la dirección de elemento. El indicador
de archivo (#) no se requiere para una dirección de elemento. Cuando usa un
procesador SLC 5/03 OS301, OS302 ó SLC 5/04 OS401, se soportan los
valores de punto (coma) flotante y cadena.
• El destino es la dirección inicial de destino del archivo que desea llenar. Debe
usar el indicador de archivo (#) en la dirección. Cuando usa un procesador SLC
5/03 OS301, OS302 ó SLC 5/04 OS401, se soportan los valores de punto
(coma) flotante y cadena.

4–17
Manual de referencia del juego de instrucciones
Preface

• La longitud es el número de elementos en el archivo que desea copiar.

– Para los procesadores SLC, si el archivo de tipo destino es de 3 palabras


por elemento (temporizador o contador), puede especificar una longitud
máxima de 42. Si el archivo de tipo destino es de 1 palabra por
elemento, puede especificar una longitud máxima de 128 palabras.

– Vea la tabla siguiente respecto a los controladores MicroLogix 1000:


Si el archivo de tipo entonces puede especificar na
destino es un/una: longitud máxima de:
Salida 1
Entrada 2
Estado 33
Bit 32
Temporizador 40
Contador 32
Control 16
Entero 105

Todos los elementos se llenan del mismo valor de fuente (típicamente una
constante) en el archivo de destino especificado durante cada escán en que el
renglón es verdadero. Los elementos se llenan en orden ascendente.

La instrucción no sobrescribirá un límite de archivo (por ejemplo, entre archivos


N16 y N17) en el destino. Ocurre un error si se intenta sobrescribir un límite de
archivo.

4–18
Instrucciones de manejo de datos

Descripción general de las


instrucciones de mover y lógicas
La información general siguiente se aplica a las instrucciones de mover y lógicas.

Cómo introducir parámetros


• La fuente es la dirección del valor en que la operación de mover o lógica se
debe efectuar. La fuente puede ser una dirección de palabra o una constante de
programa, a menos que se describa lo contrario. Si la instrucción tiene dos
operandos de fuente, no acepta constantes de programa en ambos operandos.
Cuando usa un procesador SLC 5/03 OS301, OS302 ó SLC 5/04 OS400,
OS401, se soportan los valores de punto (coma) flotante y cadena.
• El destino es la dirección de resultado de una operación de mover o logica.
Debe ser una dirección de palabra.

Uso de direcciones de palabra indexadas

Tiene la opción de usar direcciones de palabra indexadas como parámetros de


instrucción especificando las direcciones de palabra. El direccionamiento indexado
se trata en el apéndice C.

Actualizaciones de los bits de estado aritmético

Si los bits de estado aritmético se encuentran en la palabra 0, bits 0–3 en el archivo


de estado del controlador. Después de la ejecución de una instrucción, se actualizan
los bits de estado aritmético en el archivo de estado.

Uso de direcciones de palabra indirectas

Tiene la opción de usar direcciones indirectas a nivel de palabra y a nivel de bit para
instrucciones especificando las direcciones de palabra cuando usa un procesador
SLC 5/03 OS302 y SLC 5/04 OS401. Vea el apéndice C para obtener más
información,

Cambios del registro matemático, S:13 y S:14

Las instrucciones de mover y lógicas no afectan el registro matemático.

4–19
Manual de referencia del juego de instrucciones
Preface

Mover (MOV)
3 3 3 3 3 3

MOV
MOVE Esta instrucción de salida mueve el valor de fuente al lugar de destino. Siempre que
Source
el renglón permanezca verdadero, la instrucción mueve los datos durante cada
Dest
escán.
Instrucción de salida

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente es la dirección o constante de los datos que desea mover.
• El destino es la dirección a la cual la instrucción mueve los datos.

Nota de aplicación: Si desea mover una palabra de datos sin afectar los
indicadores matemáticos, use una instrucción de copiar (COP) con una longitud de 1
palabra en vez de la instrucción MOV.

Actualizaciones de los bits de estado aritmético


Con este bit: El controlador:
S:0/0 Acarreo (C) siempre se restablece.
S:0/1 Overflow (V) siempre se restablece.
se establece si el resultado es cero; en caso contrario, se
S:0/2 Cero (Z)
restablece.
se establece si el resultado es negativo (el bit más significante
S:0/3 Signo (S)
establecido); en caso contrario, se restablece.

4–20
Instrucciones de manejo de datos

Mover con máscara (MVM)


3 3 3 3 3 3

MVM
MASKED MOVE La instrucción MVM es una instrucción de palabra que mueve datos de un lugar de
Source
fuente a un destino y permite que porciones de los datos de destino estén
Mask
enmascarados por una palabra separada. Siempre que el renglón permanenzca
Dest
verdadero, la instrucción mueve los datos durante cada escán.
Instrucción de salida

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente es la dirección de los datos que desea mover.
• La máscara es la dirección de la máscara por la cual la instrucción mueve los
datos; la máscara puede ser un valor hexadecimal (constante).
• El destino es la dirección a la cual la instrucción mueve los datos.

Actualizaciones de los bits de estado aritmético


Con este bit: El controlador:
S:0/0 Acarreo (C) siempre se restablece.
S:0/1 Overflow (V) siempre se restablece.
se establece si el resultado es cero; en caso contrario, se
S:0/2 Cero (Z)
restablece.
se establece si el resultado es negativo; en caso contrarior, se
S:0/3 Signo (S)
restablece.

4–21
Manual de referencia del juego de instrucciones
Preface

Operación

Cuando un renglón que contiene esta instrucción es verdadero, los datos en la


dirección de fuente pasan por la máscara a la dirección de destino. Vea la
ilustración siguiente:

MVM
MASKED MOVE
Source B3:0

Mask F0F0

Dest B3:2

B3:2 antes de mover


1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1

fuente B3:0
0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 1

Máscara F0F0
1 1 1 1 0 0 0 0 1 1 1 1 0 0 0 0

B3:2 después de mover


0 1 0 1 1 1 1 1 0 1 0 1 1 1 1 1

Enmascare los datos restableciendo los bits en la máscara; transfiera los datos
estableciendo los bits en la máscara a uno. Los bits de la máscara pueden ser fijos
por un valor constante o los puede variar asignándoles una dirección directa a la
máscara. Los bits en el destino que corresponden a ceros en la máscara no se
modifican.

4–22
Instrucciones de manejo de datos

Y (AND)
3 3 3 3 3 3

AND
BITWISE AND El valor en la fuente A recibe la instrucción AND bit por bit con el valor en la
Source A
fuente B y luego se almacena en el destino.
Source B

Dest

Tabla de verdad
Instrucción de salida
Destino = A y B
A B Destino
0 0 0
1 0 0
0 1 0
1 1 1

Las fuentes A y B pueden ser una dirección de palabra o una constante; sin
embargo, ambas fuentes no pueden ser una constante. El destino debe ser una
dirección de palabra.

Nota de aplicación: Cuando introduce constantes, puede usar el operador del signo
“&” para cambiar la raíz de la introducción. Por ejemplo, en lugar de introducir –1
como una constante, podría introducir &B1111111111111111 ó &HFFFF.

Actualizaciones de los bits de estado aritmético


Con este bit: El controlador:
S:0/0 Acarreo (C) siempre se restablece.
S:0/1 Overflow (V) siempre se restablece.
se establece si el resultado es cero; en caso contrarior, se
S:0/2 Cero (Z)
restablece.
se establece si el bit más significativo está establecido; en
S:0/3 Signo (S)
caso contrarior, se restablece.

4–23
Manual de referencia del juego de instrucciones
Preface

O (OR)
3 3 3 3 3 3

OR
BITWISE INCLUS OR El valor en la fuente A recibe la instrucción O bit por bit con el valor en la fuente B
Source A
y luego se almacena en el destino.
Source B

Dest

Tabla de verdad
Instrucción de salida
Destino = A o B
A B Destino
0 0 0
1 0 1
0 1 1
1 1 1

Las fuentes A y B pueden ser una dirección de palabra o una constante; sin
embargo, ambas fuentes no pueden ser una constante. El destino debe ser una
dirección de palabra.

Nota de aplicación: Cuando introduce constantes, puede usar el operador del signo
“&” para cambiar la raíz de la introducción. Por ejemplo, en lugar de introducir –1
como una constante, podría introducir &B1111111111111111 ó &HFFFF.

Actualizaciones de los bits de estado aritmético


Con este bit: El controlador:
S:0/0 Acarreo (C) siempre se restablece.
S:0/1 Overflow (V) siempre se restablece.
se establece si el resultado es cero; en caso contrario, se
S:0/2 Cero (Z)
restablece.
se establece si el resultado es negativo (el bits más
S:0/3 Signo (S) significativo está establecido); en caso contrarior, se
restablece.

4–24
Instrucciones de manejo de datos

O exclusivo (XOR)
3 3 3 3 3 3

XOR
BITWISE EXCLUS OR
El valor en la fuente A recibe la instrucción de O exclusivo bit por bit con el valor
Source A en la fuente B y luego se almacena en el destino.
Source B

Dest

Tabla de verdad
Instrucción de salida
Destino = A X o B
A B Destino
0 0 0
1 0 1
0 1 1
1 1 0

Las fuentes A y B pueden ser una dirección de palabra o una constante; sin
embargo, ambas fuentes no pueden ser una constante. El destino debe ser una
dirección de palabra.

Nota de aplicación: Cuando introduce constantes, puede usar el operador del signo
“&” para cambiar la raíz de la introducción. Por ejemplo, en lugar de introducir –1
como una constante, podría introducir &B1111111111111111 ó &HFFFF.

Actualizaciones de los bits de estado aritmético


Con este bit: El controlador:
S:0/0 Acarreo (C) siempre se restablece.
S:0/1 Overflow (V) siempre se restablece.
se establece si el resultado es cero; en caso contrarior, se
S:0/2 Cero (Z)
restablece.
se establece si el resultado es negativo (el bits más
S:0/3 Signo (S) significativo está establecido); en caso contrarior, se
restablece.

4–25
Manual de referencia del juego de instrucciones
Preface

No (NOT)
3 3 3 3 3 3

NOT
NOT El valor de fuente recibe la instrucción NOT bit por bit y luego se almacena en el
Source
destino (complemento de uno).
Dest

Instrucción de salida Tabla de verdad

Destino = NOT A
A Destino
0 1
1 0

La fuente y el destino deben ser direcciones de palabra.

Nota de aplicación: Cuando introduce constantes, puede usar el operador del signo
“&” para cambiar la raíz de la introducción. Por ejemplo, en lugar de introducir –1
como una constante, podría introducir &B1111111111111111 ó &HFFFF.

Actualizaciones de los bits de estado aritmético


Con este bit: El controlador:
S:0/0 Acarreo (C) siempre se restablece.
S:0/1 Overflow (V) siempre se restablece.
se establece si el resultado es cero; en caso contrarior, se
S:0/2 Cero (Z)
restablece.
se establece si el resultado es negativo (el bits más
S:0/3 Signo (S) significativo está establecido); en caso contrarior, se
restablece.

4–26
Instrucciones de manejo de datos

Negar (NEG)
3 3 3 3 3 3

NEG
NEGATE Use la instrucción NEG para cambiar el signo de la fuente y luego colóquelo en el
Source
destino. El destino contiene el complemento de dos de la fuente. Por ejemplo, si la
Dest
fuente es 5, el destino sería –5.
Instrucción de salida
La fuente y el destino deben ser direcciones de palabra.

Actualizaciones de bits de estado aritmético


Con este bit: El controlador:
se pone a cero si es 0 u overflow; en caso contrarior, se
S:0/0 Acarreo (C)
restablece.
se establece si es un overflow, en caso contrario, se
restablece. El overflow sólo ocurre si –32,768 es la fuente.
Durante el overflow, el indicador de error menor también se
establece. El valor 32,767 se coloca en el destino. Si S:2/14
S:0/1 Overflow (V)
está establecido, el overflow no signado y truncado
permanece en el destino.
Para los destinos de punto (coma) flotante, el resultado de
overflow permanece en el destino.
se establece si el resultado es cero; en caso contrarior, se
S:0/2 Cero (Z)
restablece.
se establece si el resultado es negativo; en caso contrarior, se
S:0/3 Signo (S)
restablece.

4–27
Manual de referencia del juego de instrucciones
Preface

Descripción general de las instrucciones FIFO y LIFO


Las instrucciones FIFO cargan palabras en un archivo y las descargan en el mismo
orden en que fueron cargadas. La primera palabra que llega es la primera palabra
que sale.

Las instrucciones LIFO cargan palabras en un archivo y las descargan en el orden


inverso en que fueron cargadas. La última palabra que llega es la primera palabra
que sale.

Cómo introducir parámetros

Introduzca los parámetros siguienes al programar estas instrucciones:


• La fuente es una dirección de palabra o constante (–32,768 a 32,767) que se
convierte en el próximo valor en la pila.
• El destino es una dirección de palabra que almacena el valor que sale de la pila.
Esta instrucción Descarga el valor a partir de la:
FFU de FIFO Primera palabra
LFU de LIFO La última palabra introducida

• FIFO/LIFO es la dirección de la pila. Debe ser una dirección de palabra


indexada en el archivo de bit, entrada, salida o entero. Use la misma dirección
FIFO para las instrucciones FFL y FFU asociadas; use la misma dirección LIFO
para las instrucciones LFL y LFU asociadas.
• La longitud especifica el máximo número de palabras en la pila. Para los
procesadores SLC se trata de 128 palabras y 105 palabras para los controladores
MicroLogix 1000.
• La posición es el próximo lugar disponible donde la instrucción carga datos en
la pila. Este valor cambia después de cada operación de carga o descarga.
Direccione el valor de posición mnemónicamente (POS).
• El control es una dirección de archivo de control. Los bits de estado, la
longitud de pila y el valor de posición se almacenan en este elemento. No use la
dirección de archivo de control para otras instrucciones.

4–28
Instrucciones de manejo de datos

Los bits de estado de la estructura de control son direccionados


mnemónicamente. Estos incluyen:

– Bit de vacío EM (bit 12) lo establece el procesador para indicar que la


pila está vacía.

– Bit de efectuado DN (bit 13) lo establece el procesador para indicar que


la pila está llena. Esto inhibe la carga en la pila.

– Bit de habilitación FFU/LFU EU (bit 14) se establece en una transición


de falso a verdadero del renglón FFU/LFU y se restablece en una transición
de verdadero a falso.

– Bit de habilitación FFL/LFL EN (bit 15) se establece en una transición


de falso a verdadero del renglón FFL/LFL y se restablece en una transición
de verdadero a falso.

Efectos en el registro de índice S:24

El valor presente en S:24 se sobrescribe con el valor de posición cuando ocurre una
transición de falso a verdadero del renglón FFL/FFU o LFL/LFU. Para el FFL/LFL,
el valor de posición determinar a la introduccción de la instrucción se coloca en
S:24. Para el FFU/LFU, el valor de posición determinado a la salida de la
instrucción se coloca en S:24.

Cuando el bit DN se establece, una transición de falso a verdadero del renglón


FFL/LFL no cambia el valor de posición ni el valor del registro de índice. Cuando
el bit EM se establece, la transición de falso a verdadero del renglón FFU/LFU no
cambia el valor de posición ni el valor del registro de índice.

4–29
Manual de referencia del juego de instrucciones
Preface

Carga FIFO (FFL)


Descarga FIFO (FFU) 3 3 3 3

FFL
FIFO LOAD (EN) Las instrucciones FFL y FFU se usan conjuntamente. La instrucción FFL carga
Source (DN)
FIFO (EM)
palabras en un archivo creado por el usuario que se llama una pila FIFO. La
Control
Length instrucción FFU descarga palabras de la pila FIFO en el mismo orden en que fueron
Position
cargadas.
FFU
FIFO UNLOAD (EU)
FIFO (DN)
Dest (EM)
Control
Length
Position

Instrucciones de salida

Parámetros de instrucción han sido programados en las instrucciones FFL–FFU


ilustradas abajo.

FFL
FIFO LOAD (EN) Destino Posición
Source N7:10 (DN) N7:11 0
N7:12
FIFO #N7:12
(EM) N7:13 1
Control R6:0 La instrucción FFU descarga
Length 34 datos de pila #N7:12 en N7:14 2
Position 9 posición 0, N7:12. 3
4
5
FFU 34 palabras han sido
6 asignadas para la pila
FIFO UNLOAD (EU)
7 FIFO a partir de N7:12
FIFO #N7:12 (DN)
Fuente 8 hasta N7:45.
Dest N7:11 (EM)
Control R6:0 N7:10 9
Length 34
Position 9 La instrucción FFL carga datos
en pila #N7:12 en la próxima
posición disponible, la cual es 9 33
N7:45
Instrucciones FFL–FFU en este caso.
Carga y descarga de pila #N7:12

Operación de la instrucción FFL: Cuando las condiciones de renglón cambian de


falso a verdadero, el bit de habilitación FFL (EN) se establece. Esto carga el
contenido de la fuente, N7:10, en el elemento de pila indicado por el número de
posición 9. Luego el valor de posición se incrementa.

La instrucción FFL carga un elemento a cada transición de falso a verdadero del


renglón hasta que la pila se llene (34 elementos). Luego el procesador establece el
bit de efectuado (DN) inhibiendo así la continuación de la carga.

4–30
Instrucciones de manejo de datos

Operación de la instrucción FFU: Cuando las condiciones de renglón cambian de


falsas a verdaderas, el bit de habilitación FFU (EU) se establece. Esto descarga el
contenido del elemento a la posición de pila 0 en el destino, N7:11. Todos los datos
en la pila se desplazan un elemento hacia la posición 0 y el elemento numerado más
alto se pone a cero.

La instrucción FFU descarga un elemento en cada transición de falso a verdadero


del renglón hasta que la pila se vacía. Luego el procesador establece el bit vacío
(EM).

4–31
Manual de referencia del juego de instrucciones
Preface

Carga LIFO (LFL)


Descarga LIFO (LFU) 3 3 3 3

LFL
LIFO LOAD (EN) Las instrucciones LFL y LFU se usan conjuntamente. La instrucción LFL carga
Source
LIFO
(DN)
(EM)
palabras en un archivo creado por el usuario que se llama una pila LIFO. La
Control
Length instrucción LFU descarga palabras de la pila LIFO en el mismo orden en que fueron
Position
cargadas.
LFU
LIFO UNLOAD (EU)
LIFO (DN)
Dest (EM)
Control
Length
Position

Los parámetros de instrucción han sido programados en las instrucciones LFL–LFU


Instrucciones de salida
ilustradas abajo.

La instrucción LFU descarga


datos de pila #N7:12 en
LFL posición 0, N7:12.
LIFO LOAD (EN) Posición
Source N7:10 (DN) N7:11 N7:12 0
LIFO #N7:12 34 palabras se asignan
(EM) N7:13 1
Control R6:0 Destino para la pila LIFO a partir
Length 34 N7:14 2 de N7:12 hasta N7:45.
Position 9 3
4
5
LFU La instrucción LFL carga datos en
6
LIFO UNLOAD (EU) pila #N7:12 en la próxima
posición disponible, la cual es 9 7
LIFO #N7:12 (DN)
Dest N7:11 en este caso. 8
(EM)
Control R6:0 N7:10 9
Length 34
Position 9 Fuente

Instrucciones LFL–LFU N7:45 33


Carga y descarga de pila #N7:12

Operación de la instrucción LFL: Cuando las condiciones de renglón cambian de


falso a verdadero, el bit de habilitación LFL (EN) se establece. Esto carga el
contenido de la fuente, N7:10, en el elemento de pila indicado por el número de
posición 9. Luego el valor de posición se incrementa.

La instrucción LFL carga un elemento a cada transición de falso a verdadero del


renglón hasta que la pila se llene (34 elementos). Luego el procesador establece el
bit de efectuado (DN) inhibiendo así la continuación de la carga.

4–32
Instrucciones de manejo de datos

Operación de la instrucción LFU: Cuando las condiciones de renglón cambian de


falso a verdadero, el bit de habilitación LFU (EU) se establece. Esto descarga el
contenido del elemento a la posición de pila 0 en el destino, N7:11. Todos los datos
en la pila se desplazan un elemento hacia la posición 0 y el elemento numerado más
alto se pone a cero.

La instrucción LFU descarga un elemento a cada transición de falso a verdadero del


renglón hasta que la pila esté vacía. Luego el procesador establece el bit vacío
(EM).

4–33
Manual de referencia del juego de instrucciones
Preface

Instrucciones de manejo de datos en el ejemplo de


aplicación de la perforadora de papel
Esta sección proporciona renglones de escalera para demostrar el uso de las
instrucciones de manejo de datos. Los renglones son parte del ejemplo de
aplicación de la perforadora de papel descrito en el apéndice H. Usted los añadirá a
la subrutina en el archivo 7 que se inició en el capítulo 2.

Añadir el archivo 7
Renglón 7:3
Este renglón mueve el valor del interruptor preselector rotatorio BCD de un solo
dígito en un registro de entero interno. Esto se realiza para alinear correctamente
las cuatro señales de entrada BCD antes de ejecutar la instrucción de BCD a entero
(FRD). El interruptor preselector rotatorio se usa para permitirle al operador
introducir el espesor del papel que va a perforar. El espesor se introduce en
incrementos de 1/4 pulg. Esto proporciona un rango de 1/4 pulg. a 2.25 pulg.
| BCD bit 0 |FRD bit 0 |
| I:1.0 N7:14 |
|––––––––––––––––––––––––––––––––––––––––––––––––––––+––––] [––––––––( )–––––+–|
| | 11 0 | |
| | BCD bit 1 |FRD bit 1 | |
| | I:1.0 N7:14 | |
| +––––] [––––––––( )–––––+ |
| | 12 1 | |
| | BCD bit 2 |FRD bit 2 | |
| | I:1.0 N7:14 | |
| +––––] [––––––––( )–––––+ |
| | 13 2 | |
| | BCD bit 3 |FRD bit 3 | |
| | I:1.0 N7:14 | |
| +––––] [––––––––( )–––––+ |
| 14 3 |

4–34
Instrucciones de manejo de datos

Renglón 7:4
Este renglón convierte el valor del interruptor preselector rotatorio BCD de BCD en
entero. Esto se realiza porque el procesador opera en valores de entero. Este
renglón también neutraliza el rebote del interruptor preselector rotatorio para
asegurar que la conversión ocurra sólo en valores BCD válidos. Anote que los valores
BCD no válidos pueden ocurrir cuando el operador está cambiando el interruptor
preselector rotatorio BCD. Eso es debido a las diferencias de retardo de propagación
del filtro de entrada entre los 4 circuitos de entrada que proporcionan el valor de
entrada BCD.
| primer valor de
| bit de entrada BCD valor BCD
| transf. del escán neutralizado
| anterior
| S:1 +EQU–––––––––––––––+ +FRD–––––––––––––––+ |
|–+––––]/[–––––+EQUAL +–+–––––––––––+FROM BCD +–+––––+––––|
| | 15 |Source A N7:13| | |Source N7:14| | | |
| | | 0| | | 0000| | | |
| | |Source B N7:14| | | 0000| | | |
| | | 0| | |Dest N7:12| | | |
| | +––––––––––––––––––+ | | 1| | | |
| | | Math +––––––––––––––––––+ | | |
| | | Math Math | | |
| | | Overflow Error | | |
| | | Bit Bit | | |
| | | S:0 S:5 | | |
| | +––––] [––––––––––––––(U)––––––––+ | |
| | 1 0 | |
| | valor de | |
| | entrada BCD | |
| | de este | |
| | escán | |
| | +MOV–––––––––––––––+ | |
| +––––––––––––––––––––––––––––––––––––––––––––––––––+MOVE +–+ |
| |Source N7:14| |
| | 0| |
| |Dest N7:13| |
| | 0| |
| +––––––––––––––––––+ |
Renglón 7:5
Este renglón asegura que el operador no pueda seleccionar un espesor de papel
de 0. Si eso se permitiera, el cálculo de la vida útil de la broca podría
anularse lo que resultaría en orificios de calidad insatisfactoria causados
por una broca sin filo. Por lo tanto, el espesor de papel mínimo que será usado
para calcular el desgaste de la broca es de 1/4 pulg.
| valor valor |
| BCD BCD |
| neutralizado neutralizado |
| +EQU–––––––––––––––+ +MOV–––––––––––––––+ |
|–+EQUAL +––––––––––––––––––––––––––––––––––––+MOVE +–|
| |Source A N7:12| |Source 1| |
| | 1| | | |
| |Source B 0| |Dest N7:12| |
| | | | 1| |
| +––––––––––––––––––+ +––––––––––––––––––+ |

4–35
Manual de referencia del juego de instrucciones
Preface

4–36
Instrucciones de flujo de programa

5 Instrucciones de flujo de programa


Este capítulo contiene información general acerca de las instrucciones de flujo de
programa y explica cómo funcionan en su programa de aplicación. Cada una de las
instrucciones incluye información acerca de:
• cómo aparece el símbolo de instrucción
• cómo usar la instrucción

Además, la última sección contiene un ejemplo de aplicación para una perforadora


de papel que muestra el uso de las instrucciones de control de flujo de programa.

Instrucciones de control de flujo de programa

Instrucción
Propósito Página
Mnemónico Nombre
JMP y LBL Saltar a etiqueta y Saltar hacia adelante o hacia atrás a la instrucción 5-3
etiqueta de etiqueta especificada.
JSR, SBR, Saltar a subrutina, Saltar a una subrutina designada y retornar. 5-5
y RET subrutina, y
retornar de la
subrutina
MCR Restablecimiento Desactivar todas las salidas no retentivas en una 5–8
del control maestro sección de un programa de escalera.
TND Fin temporal Marcar un fin temporal que detiene la ejecución del 5–10
programa.
SUS Suspender Identifica condiciones específicas para la 5–11
depuración del programa y la localización y
corrección de fallos del sistema.
IIM Entrada inmediata Programar una entrada inmediata con máscara. 5–12
con máscara
IOM Salida inmediata Programar una salida inmediata con máscara. 5–13
con máscara
REF Regenerar 5–14

5–1
Manual de referencia del juego de instrucciones
Preface

Acerca de las instrucciones de control de flujo de


programa
Use estas instrucciones para controlar la secuencia en que se ejecuta su programa.

Las instrucciones de control le permiten cambiar el orden en que el procesador


realiza un escán de un programa de escalera. Estas instrucciónes típicamente se
usan para minimizar el tiempo de escán, crear un programa más eficiente y para
localizar y corregir fallos de un programa de escalera.

5–2
Instrucciones de flujo de programa

Salto (JMP) y etiqueta (LBL)


3 3 3 3 3 3

(JMP) Use estas instrucciones conjuntamente para saltar porciones del programa de
escalera.
]LBL[ Si el renglón que contiene la
El programa:
instrucción de salto es:
Verdadero Salta del renglón que contiene la instrucción JMP al renglón
que contiene la instrucción LBL designada y sigue ejecutando.
Puede saltar hacia adelante o hacia atrás.
Falso No ejecuta la instrucción JMP.

El saltar hacia adelante a una etiqueta ahorra el tiempo de escán del programa
eliminando un segmento de programa hasta que sea necesario. El saltar hacia atrás
le permite al controlador ejecutar segmentos de programa repetidamente.
Nota Tenga cuidado de no saltar hacia atrás excesivamente. El temporizador de control
(watchdog) podría sobrepasar el límite de tiempo y causar un fallo del controlador.
Use un contador, temporizador o el registro de “escán de programa” (registro de
estado de sistema, palabra S:3, bits 0–7) para limitar el tiempo que se pasa
realizando lazos dentro de las instrucciones JMP/LBL.

Cómo introducir parámetros

Introduzca un número de etiqueta decimal de 0 a 999. Puede colocar hasta:


• 256 etiquetas en cada archivo de subrutina para los procesadores SLC
• 1,000 etiquetas para los controladores MicroLogix 1000 en cada archivo de
subrutina.

Uso de JMP

La instrucción JMP causa que el controlador salte renglones. Puede saltar a la


misma etiqueta desde una o más instrucciones JMP.

5–3
Manual de referencia del juego de instrucciones
Preface

Uso de LBL

Esta instrucción de entrada es el blanco de las instrucciones JMP que tienen el


mismo número de etiqueta. Debe programar esta instrucción como la primera
instrucción de un renglón. Esta instrucción no tiene bits de control.

Puede programar saltos múltiples a la misma etiqueta asignando el mismo número


de etiqueta a instrucciones JMP múltiples. Sin embargo, los números de etiqueta
deben ser únicos.
Nota No salte (JMP) en una zona MCR. Las instrucciones programadas dentro de la
zona MCR a partir de la instrucción LBL hasta la instrucción ’END MCR’ siempre
serán evaluadas como si la zona MCR fuera verdadera, sin importar el estado
verdadero de la instrucción “Start MCR”.

5–4
Instrucciones de flujo de programa

Saltar a subrutina (JSR), subrutina (SBR),


y retornar (RET)
JSR
JUMP TO SUBROUTINE Las instrucciones JSR, SBR y RET se usan para indicar al controlador que ejecute
SBR file number
un archivo de subrutina separado dentro del programa de escalera y retornar a la
... instrucción siguiente a la instrucción JSR.
SBR
SUBROUTINE

RET
RETURN

Nota Si usa la instrucción SBR, ésta debe ser la primera instrucción en el primer renglón
en el archivo de programa que contiene la subrutina.

Use una subrutina para almacenar secciones repetidas de lógica de programa que se
debe ejecutar desde varios puntos dentro de su programa de aplicación. Una
subrutina ahorra memoria porque se programa sólo una vez.

Actualice E/S críticas dentro de subrutinas usando las instrucciones de entrada y/o
salida inmediata (IIM, IOM), especialmente si la aplicación requiere subrutinas
anidadas o largas. En caso contrarior, el controlador no actualizará la E/S hasta que
llegue al final del programa principal (después de ejecutar todas las subrutinas).

Las salidas controladas dentro de una subrutina permanecen en su último


estado hasta que la subrutina se vuelva a ejecutar.

Cómo anidar archivos de subrutina

El anidar subrutinas le permite dirigir el flujo de programa desde el programa


principal hasta una subrutina y luego a otra subrutina. Las reglas siguientes se
aplican al anidar subrutinas:

Puede anidar hasta ocho niveles de subrutinas. Si usa una subrutina STI, una
subrutina de interrupción HSC o una rutina de fallo del usuario, puede anidar
subrutinas hasta tres niveles desde cada subrutina.
• Con los procesadores fijos y SLC 5/01, puede anidar subrutinas hasta cuatro
niveles.

5–5
Manual de referencia del juego de instrucciones
Preface

• Con los procesadores SLC 5/02, SLC 5/03, SLC 5/04 y controladores
MicroLogix 1000, puede anidar subrutinas hasta ocho niveles. Si usa una
subrutina STI, subrutina de interrupción provocada por evento de E/S, una
rutina de fallo del usuario o una subrutina de interrupción HSC, puede anidar
subrutinas hasta tres niveles desde cada subrutina.

La ilustración siguiente muestra cómo se pueden anidar las subrutinas.


Programa Nivel 1 Nivel 2 Nivel 3
principal Archivo de subrutina 6 Archivo de subrutina 7 Archivo de subrutina 8
6 SBR SBR SBR
JSR
7 8
JSR JSR

RET RET RET

Ejemplo de cómo anidar subrutinas hasta el nivel 3

Ocurrirá un error si se llaman más niveles de subrutinas que los permitidos


(overflow de pila de subrutina) o si se ejecutan más retornos que niveles de llamada
existentes (underflow de pila de subrutina).

Uso de JSR

Cuando la instrucción JSR se ejecuta, el controlador salta a la instrucción de


subrutina (SBR) al inicio del archivo de subrutina destino y reanuda la ejecución
desde aquel punto. No puede saltar en una parte de una subrutina con excepción de
la primera instrucción en ese archivo.

Debe programar cada subrutina en su propio archivo de programa asignando un


número de archivo único:
• 3–255 para los procesadores SLC
• 4–15 para los controladores MicroLogix 1000

Fijo y específico del SLC 5/01 – La instrucción JSR no se debe programar en


bifurcaciones de salida anidadas. Un error de compilador se ocurrirá si se encuentra
un renglón que contenga salidas múltiples con lógica condicional y una instrucción
JSR.

5–6
Instrucciones de flujo de programa

Uso de SBR

La subrutina de destino se identifica por el número de archivo que usted introdujo


en la instrucción JSR. Esta instrucción sirve como etiqueta o identificador de un
archivo de programa designado como un archivo de subrutina normal.

Esta instrucción no tiene bits de control. Siempre se evalúa como verdadera. La


instrucción se debe programar como la primera instrucción en el primer renglón de
una subrutina. El uso de esta instrucción es opcional; sin embargo, recomendamos
su uso para obtener mayor claridad.

Uso de RET

Esta instrucción de salida indica el fin de ejecución de subrutina o el fin del archivo
de subrutina. Causa que el controlador reanude la ejecución en la instrucción
siguiente a la instrucción JSR. Si se involucra una secuencia de subrutinas anidadas,
la instrucción causa que el procesador retorne la ejecución de programa a la
subrutina anterior.

El renglón que contiene la instrucción RET puede ser condicional si este renglón
precede el final de la subrutina. De esta manera el controlador elimina el resto de
una subrutina sólo si su condición de renglón es verdadera.

Sin instrucción RET, la instrucción END (siempre presente en la subrutina) retorna


automáticamente la ejecución de programa a la instrucción siguiente a la instrucción
JSR en el archivo de escalera que llama.
Nota La instrucción RET termina la ejecución de la subrutina DII (procesadores SLC
5/03 y SLC 5/04), la subrutina STI, la subrutina de interrupción provocada por
evento de E/S y el indicador de error del usuario cuando se usa un procesador SLC
5/02, SLC 5/03 ó SLC 5/04.

5–7
Manual de referencia del juego de instrucciones
Preface

Restablecimiento de control maestro (MCR)


3 3 3 3 3 3

(MCR) Use las instrucciones MCR conjuntamente para crear zonas de programa que
desactivan todas las salidas no retentivas en la zona. Los renglones dentro de la
zona MCR todavía son escaneados, pero el tiempo de escán se reduce debido al
estado falso de las salidas no retentivas.

Si el renglón MCR que inicia la


El controlador:
zona es:
Verdadero Ejecuta los renglones en la zona MCR según la condición de
entrada de cada renglón (como si la zona no existiera)
Falso Restablece todas las instrucciones de salida no retentiva en la
zona MCR pese a las condiciones de entrada de cada
renglón.

Las zonas MCR le permiten habilitar o inhabilitar segmentos de su programa; por


ejemplo, las aplicaciones de receta.

Cuando programe las instrucciones MCR, observe lo siguiente:


• Debe terminar la zona con una instrucción MCR no condicional.
• No puede anidar una zona MCR dentro de otra.
• No salte a una zona MCR. Si la zona es falsa, el saltar a ella activa la zona.
• Siempre coloque la instrucción MCR como la última instrucción en un renglón.

Nota La instrucción MCR no substituye un relé cableado de control maestro que


proporciona la capacidad de detención de emergencia. Todavía debe instalar un
relé cableado de control maestro para proporcionar la interrupción de alimentación
eléctrica de E/S en casos de emergencia.

Si inicia instrucciones tales como temporizadores o contadores en una zona


MCR, la operación de instrucción se detiene cuando la zona se inhabilita.
Vuelva a programar operaciones críticas fuera de la zona si fuese necesario.

5–8
Instrucciones de flujo de programa

Operación del procesador SLC

No salte (JMP) a una zona MCR. Las instrucciones programadas dentro de la zona
MCR, que comienzan con una instrucción LBL y terminan con la instrucción ’END
MCR’, siempre serán evaluadas como si la zona MCR fuera verdadera, sin importar
el estado verdadero de la instrucción “Start MCR”. Si la zona es falsa, el saltar a
ella activa la zona desde la LBL hasta el final de la zona.

Si inicia instrucciones tales como temporizadores o contadores en una zona


MCR, la operación de instrucción se detiene cuando la zona se inhabilita.
Vuelva a programar operaciones críticas fuera de la zona si fuese necesario.

El temporizador TOF se activará (cuando se coloque) dentro de una zona


MCR falsa.

La instrucción MCR no sustituye el relé cableado de control maestro.


Recomendamos que el sistema de controlador programable incluya un relé de
cableado de control maestro e interruptores de parada de emergencia para
proporcionar la interrupción de alimentación eléctrica de E/S. Los
interruptores de parada de emergencia se pueden monitorizar pero no deben
ser controlados por el programa de escalera. Cablee estos dispositivos según lo
descrito en el manual de instalación.
Específico de SLC 5/03 y SLC 5/04 – Cuando está en línea y existe en su
programa una instrucción MCR desigual, la instrucción END sirve como la
segunda instrucción MCR no condicional y todos los renglones siguientes a la
primera instrucción MCR se ejecutan por medio del estado de instrucción
MCR actual.

Puede guardar el programa cuando está en línea si existen instrucciones MCR


desatendidas. Sin embargo, si está fuera de línea y existen instrucciones MCR
desatendidas, ocurrirá un error.

5–9
Manual de referencia del juego de instrucciones
Preface

Fin temporal (TND)


3 3 3 3 3 3

(TND) Cuando el renglón de esta instrucción es verdadero, previene que el procesador


realice un escán del resto del archivo de programa, actualiza la E/S y reanuda el
Instrucción de salida
escaneado a partir del renglón 0 del programa principal (archivo 2). Si la
instrucción de este renglón es falsa, el procesador sigue realizando el escán hasta la
próxima instrucción TND o el comando END. Use esta instrucción para depurar
progresivamente un programa o eliminar condicionalmente el resto de su archivo de
programa o subrutinas existentes.
Nota Si usa esta instrucción dentro de una subrutina anidada, se termina la ejecución de
todas las subrutinas anidadas.
Controladores MicroLogix 1000
No ejecute esta instrucción desde la rutina de fallo de error del usuario (archivo 3),
rutina de interrupción del contador de alta velocidad (archivo 4) ni la rutina de
interrupción temporizada seleccionable (archivo 5) ya que ocurrirá un error.

5–10
Instrucciones de flujo de programa

Suspender (SUS)
3 3 3 3 3 3

SUS
SUSPEND Cuando esta instrucción se ejecuta, causa que el procesador entre en el modo de
Suspend ID
Suspend/Idle y almacena la identificación de suspender en palabra 7 (S:7) del
Instrucción de salida
archivo de estado. Todas las salidas se desactivan.Suspender (SUS)

Use esta instrucción para capturar e identificar condiciones específicas para la


depuración de programas y la localización y corrección de fallos de sistemas.

Cómo introducir parámetros

Introduzca un número de identificación de suspender de –32,768 a +32,767 al


programar la instrucción.

Cuando la instrucción SUS se ejecuta, la identificación programada así como la


identificación del archivo de programa desde el cual se ejecuta la instrucción SUS se
colocan en el archivo de estado del sistema.

5–11
Manual de referencia del juego de instrucciones
Preface

Entrada inmediata con máscara (IIM)


3 3 3 3 3 3

IIM
IMMEDIATE INPUT w MASK Esta instrucción le permite actualizar datos antes del escán de entrada normal.
Slot
Mask Cuando la instrucción IIM se habilita, el escán de programa se interrumpe. Los
datos de una ranura de E/S especificada se transfieren a través de una máscara al
Instrucción de entrada
Procesadores fijos y SLC 5/01 y
archivo de datos de entrada poniendo así los datos a la disposición de instrucciones
controladores MicroLogix 1000 siguientes a la instrucción IIM en el programa de escalera.
IIM
IMMEDIATE INPUT w MASK
Slot Para la máscara, 1 en la posición de un bit de entrada transfiere datos desde la fuente
Mask
Length hasta el destino. 0 inhibe que los datos se transfieran desde la fuente hasta el
Instrucción de entrada destino.
Procesadores SLC 5/03 y SLC 5/04

Cómo introducir parámetros

Ranura – Especifique el número de ranura de entrada y el número de palabra


perteneciente a la ranura. No es necesario especificar la palabra 0 de una ranura.
Los procesadores fijos y SLC 5/01 pueden tener hasta 8 palabras asociadas con la
ranura. Los procesadores SLC 5/02, SLC 5/03 y SLC 5/04 pueden tener hasta 32
palabras asociadas con la ranura (0–31).

Para todos los controladores MicroLogix 1000 especifique I1:0.0. Para los
controladores de E/S 16, I1:0/0–9 son válidos e I1:0/10–15 se consideran como
entradas no usadas. (No existen físicamente.) Para los controladores de E/S 32,
I1:0/0–15 e I1:1/0–3 son válidos. Especifique I1:1 si desea actualizar
inmediatamente los cuatro últimos bits de entrada.

Ejemplo

I:2 Entradas de ranura 2, palabra 0


I:2.1 Entradas de ranura 2, palabra 1
I:1 Entradas de ranura 1, palabra 0

Máscara – Especifique una constante hexadecimal o dirección de registro.

Longitud – Para los procesadores SLC 5/03 y SLC 5/04, este parámetro se usa para
transferir más de una palabra por ranura.

5–12
Instrucciones de flujo de programa

Salida inmediata con máscara (IOM)


3 3 3 3 3 3

IOM
IMMEDIATE OUTPUT w MASK
Esta instrucción le permite actualizar las entradas antes del escán de salida normal.
Slot
Mask Cuando la instrucción IOM se habilita, el escán de programa se interrumpe para
transferir datos a una ranura de E/S especificada a través de una máscara. Luego el
Instrucción de salida
Procesadores fijos y SLC 5/01 y escán de programa se reanuda.
controladores MicroLogix 1000
IOM Para la máscara, un 1 en la posición de bit de salida transfiere datos desde la fuente
IMMEDIATE OUTPUT w MASK
Slot
Mask
hasta el destino. 0 inhibe que los datos se transfieran desde la fuente hasta el
Length destino.
Instrucción de salida
Procesadores SLC 5/03 y SLC 5/04

Cómo introducir parámetros

Ranura – Especifique el número de ranura y el número de palabra perteneciente a


la ranura. No es necesario especificar la palabra 0 de una ranura. Los procesadores
fijos y SLC 5/01 pueden tener hasta 8 palabras asociadas con la ranura. Los
procesadores SLC 5/02, SLC 5/03 y SLC 5/04 pueden tener hasta 32 palabras
asociadas con la ranura (0–31).

Para todos los controladores MicroLogix 1000, especifique O0:0.0. Para los
controladores de E/S 16, O0:0/0–5 son válidos y O0:0/6–15 se consideran como
salidas no usadas. (No existen físicamente.) Para los controladores de E/S 32,
O0:0/1–11 son válidos y O0:0/12–15 se consideran como salidas no usadas.

Ejemplo

O:2 Salidas de ranura 2, palabra 0


O:1 Salidas de ranura 1, palabra 0
O:2.1 Salidas de ranura 2, palabra 1

Máscara – Especifique una constante hexadecimal o dirección de registro.

Longitud – Para los procesadores SLC 5/03 y SLC 5/04 este parámetro se usa para
transferir más de una palabra por ranura.

5–13
Manual de referencia del juego de instrucciones
Preface

Regenerar I/S (REF)


3 3 3

Uso de un procesador SLC 5/02

(REF) La instrucción REF no tiene parámetros de programación. Cuando se evalúa como


Instrucción de salida
verdadero, el escán de programa se interrumpe para ejecutar el escán de E/S y
porporcionar servicio a porciones de comunicación del ciclo de operación (escritura
de salidas, servicios de comunicación, lectura de entradas). Luego el escán se
reanuda en la instrucción siguiente a la instrucción REF.

No se le permite colocar una instrucción REF en una subrutina DII, subrutina STI,
subrutina de E/S o subrutina de fallo del usuario.

Los temporizadores de control (watchdog) y de escán son restablecidos al


ejecutar la instrucción REF. Debe asegurarse que la instrucción REF no se
coloque dentro de un lazo de programa sin fin.

No coloque una instrucción REF dentro de un lazo de programa a menos que


el programa se analice detenidamente.

Uso de procesadores SLC 5/03 y SLC 5/04


REF
I/O REFRESH La operación de la instrucción REF en el procesador SLC 5/03 y SLC 5/04 es la
Channel 0
Channel 1 misma que para el procesador SLC 5/02. Sin embargo, al usar un procesador SLC
5/03 ó SLC 5/04 también puede seleccionar un canal de comunicación específico
Instrucción de salida para el cual desea servicio.
• Procesador SLC 5/03

– el canal 0 esfull duplex DF1/RS-23 ó DH-485

– el canal 1 es DH-485

• El procesador SLC 5/04

– el canal 0 es DH-485, full duplex DF1 ó ASCII

– el canal 1 es DH+

5–14
Instrucciones de flujo de programa

Instrucciones de control de flujo de programa en el


ejemplo de aplicación de la perforadora de papel
Esta sección proporciona renglones de escalera para demostrar el uso de las
instrucciones de control de flujo de programa. Los renglones son parte del ejemplo
de aplicación de la perforadora de papel descrito en el apéndice H. Va a añadir al
programa principal en el archivo 2. Los nuevos renglones son necesarios para
llamar las otras subrutinas que contienen la lógica necesaria para hacer funcionar la
máquina.

Cómo añadir el archivo 2


Renglón 2:3
Este renglón llama la subrutina de secuencia de la perforadora. Esta subrutina
maneja la operación de una secuencia de perforación y vuelve a arrancar el
transportador cuando se termina la secuencia de perforación.
| +JSR–––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––––––––––––––––––––––+JUMP TO SUBROUTINE+–|
| |SBR file number 6| |
| +––––––––––––––––––+ |
Renglón 2:4
Este renglón llama la subrutina que registra la cantidad de desgaste de la broca
actual.
| +JSR–––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––––––––––––––––––––––+JUMP TO SUBROUTINE+–|
| |SBR file number 7| |
| +––––––––––––––––––+ |
Renglón 2:5
Existe una lógica de inicialización en la subrutina DII (archivo 4) que se debe
ejecutar antes de la primera interrupción DII. Así este renglón permite que el
DII esté inicializado saltando a la subrutina DII cuando el procesador entre
en el modo RUN.
| Primera |
| transferencia |
| S:1 +JSR–––––––––––––––+ |
|––––] [––––––––––––––––––––––––––––––––––––––––––––––––––+JUMP TO SUBROUTINE+–|
| 15 |SBR file number 4| |
| +––––––––––––––––––+ |

5–15
Manual de referencia del juego de instrucciones
Preface

5–16
Instrucciones específicas de aplicación

6 Instrucciones específicas de
aplicación
Este capítulo contiene información general acerca de las instrucciones específicas de
aplicación y explica cómo funcionan en su programa de aplicación. Cada una de las
instrucciones incluye información acerca de:
• cómo aparece el símbolo de instrucción
• cómo usar la instrucción

Además, la última sección contiene un ejemplo de aplicación para una perforadora


de papel que muestra el uso de las instrucciones específicas de aplicación.

Instrucciones específicas de aplicación

Instrucción
Propósito Página
Mnemónico Nombre
BSL y BSR Desplazamiento de Cargan un bit de datos en un fichero de bit, 6–5
bit izquierdo y desplaza la configuración de datos por el fichero y
desplazamiento de descarga el último bit de datos en el fichero. El BSL
bit derecho desplaza datos a la izquierda y el BSR desplaza
datos a la derecha.
SQO y Salida de Controlan operaciones de máquina secuenciales 6–9
SQC secuenciador y transfiriendo datos de 16 bits a través de una
comparación de máscara a direcciones de imagen.
secuenciador
SQL Carga de secuen- Captura condiciones indicadas pasando manual- 6–14
ciador mente la máquina por sus secuencias de operación.

6–1
Manual de referencia del juego de instrucciones
Preface

Acerca de las instrucciones específicas de aplicación


Estas instrucciones simplifican el programa de escalera permitiéndole a usted usar
una sola instrucción o un par de instrucciones para efectuar operaciones complejas
comunes.

En este capítulo se encuentra una descripción general antes de cada grupo de


instrucciones. Antes de aprender acerca de las instrucciones en cada uno de estos
grupos, le recomendamos que lea la descripción general. Este capítulo contiene las
descripciones generales siguientes:
• Descripción general de las instrucciones de desplazamiento de bit
• Descripción general de las instrucciones del secuenciador

6–2
Instrucciones específicas de aplicación

Descripción general de las instrucciones de


desplazamiento de bit
La información general siguiente se aplica a las instrucciones de desplazamiento de
bit.

Cómo introducir los parámetros

Introduzca los parámetros siguientes al programar estas instrucciones:


• El archivo es la dirección del fichero de bit que desea manejar. Debe usar el
indicador de archivo (#) en la dirección de fichero de bit.
• El control es el elemento de control que almacena el byte de estado de la
instrucción, el tamaño del fichero (en número de bits). Anote que la dirección
de control no se debe usar para otras instrucciones.

El elemento de control se muestra abajo.

15 13 11 10 00
Pal. 0 EN DN ER UL No usada
Pal. 1 Tamaño del fichero de bit (número de bits)
Reservada
Pal. 2

Los bits de estado del elemento de control se pueden direccionar


mnemónicamente. Entre éstos se incluyen:

– El bit de descarga UL (bit 10) almacena el estado del bit salido del
fichero cada vez que la instrucción se habilita.

– El bit de error ER (bit 11), cuando se establece, indica que la instrucción


ha detectado un error tal como la introducción de un número negativo para
la longitud o posición. Evite usar el bit de salida cuando este bit esté
establecido.

– El bit de efectuado DN (bit 13), cuando se establece, indica que el


fichero de bit se ha desplazado una posición.

– El bit de habilitación EN (bit 15) está establecido en una transición de


falso a verdadero del renglón e indica que la instrucción está habilitada.

6–3
Manual de referencia del juego de instrucciones
Preface

Cuando el registro se desplaza y las condiciones de entrada se hacen falsas, los


bits de habilitación, efectuado y error se restablecen.
• El bit de dirección es la dirección del bit de fuente que la instrucción inserta en
la primera (más baja) posición de bit (BSL) o en la última (más alta) posición de
bit (BSR).
• La longitud (tamaño del arreglo de bit) es el número de bits en el fichero de bit,
hasta 2048 bits. Un valor de longitud de 0 causa que el bit de entrada se
transfiera al bit UL.

– Para los procesadores SLC la longitud es 2048

– Para los controladores MicroLogix 1000 la longitud es 1680


Un valor de longitud que indica más allá del fin del archivo programado causa
la ocurrencia de un error mayor de tiempo de ejecución. Si modifica un valor de
longitud con su programa de escalera, asegúrese que el valor modificado sea
válido.

La instrucción invalida todos los bits más allá del último bit en el fichero (según se
define por la longitud) hasta el próximo límite de palabra.
Nota Si una dirección de elemento STring se usa para el parámetro del archivo, la
longitud máxima en un procesador SLC 5/03 y SLC 5/04 es 672 bits. Además, los
límites del elemento STring no se pueden cruzar.

Efectos en el registro de índice S:24

La operación de desplazamiento pone a cero el registro de índice S:24.

6–4
Instrucciones específicas de aplicación

Desplazamiento de bit izquierdo (BSL)


Desplazamiento de bit derecho (BSR) 3 3 3 3 3 3

BSL
BIT SHIFT LEFT (EN) BSL y BSR son instrucciones de salida que cargan bit por bit los datos en un fichero
File #B3:1 (DN)
Control R6:14 de bit. Los datos son desplazados a través del fichero y luego son descargados bit
Bit AddressI:22/12
Length 58 por bit.

BSR
BIT SHIFT RIGHT (EN)
File #B3:2 (DN)
Control R6:15
Bit AddressI:23/06
Length 38

Instrucciones de salida

Uso de BSL

Cuando el renglón va de falso a verdadero, el procesador establece el bit de


habilitación (EN bit 15) y el bloque de datos se desplaza a la izquierda (a un número
de bit superior) por una posición de bit. El bit especificado en la dirección de bit se
desplaza a la primera posición de bit. El último bit se desplaza fuera del fichero y se
almacena en el bit de descarga (UL bit 10). El desplazamiento se realiza
inmediatamente.

Para la operación de ajuste automático de línea, establezca la posición de la


dirección de bit en el último bit del fichero o en el bit UL, según sea aplicable.

6–5
Manual de referencia del juego de instrucciones
Preface

La ilustración siguiente muestra cómo funciona la instrucción de desplazamiento de


bit izquierdo.
BSL
BIT SHIFT LEFT (EN)
File #B3:1 (DN)
Control R6:14
Bit Address I:22/12
Length 58

Bit de fuente
I:22/12
El bloque de datos se desplaza bit
por bit desde bit 16 hasta bit 73.
31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16
47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 Fichero de bit 58
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 #B3:1
NO VALIDO 73 72 71 70 69 68 67 66 65 64

Bit de descarga
(R6:14/10)

Si desea desplazar más de un bit por escán, debe crear un lazo en la aplicación
usando las instrucciones JMP, LBL y CTU.

Uso de BSR

Cuando el renglón va de falso a verdadero, el procesador establece el bit de


habilitación (EN bit 15) y el bloque de datos se desplaza a la derecha (a un número
de bit superior) por una posición de bit. El bit especificado en la dirección de bit se
desplaza a la última posición de bit. El primer bit se desplaza fuera del fichero y se
almacena en el bit de descarga (UL bit 10) en el byte de estado del elemento de
control. El desplazamiento se completa inmediatamente.

Para la operación de ajuste automático de línea, establezca la posición de la


dirección de bit en el primer bit del fichero o en el bit UL, según sea aplicable.

6–6
Instrucciones específicas de aplicación

La ilustración siguiente muestra cómo funciona la instrucción de desplazamiento de


bit derecho.
BSR
BIT SHIFT RIGHT (EN)
File #B3:2 (DN)
Control R6:15
Bit Address I:23/06
Length 38
Bit de descarga
(R6:15/10)

47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48 Fichero de bit 38
INVALID 69 68 67 66 65 64 #B3:2

El bloque de datos se desplaza bit


por bit desde bit 69 hasta bit 32.
Bit de fuente
I:23/06

Si desea desplazar más de un bit por escán, debe crear un lazo en la aplicación
usando las instrucciones JMP, LBL y CTU.

6–7
Manual de referencia del juego de instrucciones
Preface

Descripción general de las instrucciones de


secuenciador
La información general siguiente se aplica a las instrucciones de secuenciador.

Efectos en el registro de índice S:24

El valor presente en el registro de índice S:24 se sobrescribe cuando la instrucción


de secuenciador es verdadera. El valor del registro de índice será igual al valor de
posición de la instrucción.

Aplicaciones que requieren más de 16 bits

Cuando la aplicación requiere más de 16 bits, use instrucciones de secuenciador


múltiple en paralelo.
Nota Refiérase al apéndice H para ejemplos de aplicación que usan las instrucciones de
secuenciador.
Nota Si se usa una dirección de elemento STring para el parámetro de archivo, la
longitud máxima en un procesador SLC 5/03 y SLC 5/04 es 41 palabras.
Además,no se pueden cruzar los límites del elemento STring.

6–8
Instrucciones específicas de aplicación

Salida de secuenciador (SQO)


Comparación de secuenciador (SQC) 3 3 3 3 3 3

SQO
SEQUENCER OUTPUT (EN)
Estas intstrucciones transfieren datos de 16 bits a direcciones de palabra para el
File
Mask
#B10:1
0F0F (DN) control de operaciones secuenciales de la máquina.
Dest O:14
Control R6:20
Length 4
Position 2

SQC
SEQUENCER COMPARE (EN)
File #B10:11
Mask FFF0 (DN)
Source I:03
(FD)
Control R6:21
Length 4
Position 2

Instrucciones de salida

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar estas instrucciones:


• El archivo es la dirección del archivo de secuenciador. Debe usar el indicador
de archivo (#) para esta dirección.
Los datos del archivo de secuenciador se usan de la manera siguiente:

Instrucción El archivo de secuenciador almacena:


SQO Datos para controlar salidas
Datos de referencia para monitorizar
SQC
entradas

• La máscara (SQO, SQC) es un código hexadecimal o la dirección de la palabra


o archivo de máscara a través de la cual la instrucción mueve datos. Establezca
los bits de máscara para transferir datos y restablezca los bits de máscara para
enmascarar datos. Use una palabra o archivo de máscara si desea cambiar la
máscara según los requisitos de aplicación.
Si la máscara es un archivo, su longitud será igual a la longitud del archivo de
secuenciador. Los dos archivos registran automáticamente.
• La fuente es la dirección de la palabra o archivo de entrada para un SQC de la
cual la instrucción obtiene datos para comparación con su archivo de
secuenciador.
• El destino es la dirección de la palabra o archivo de salida para un SQC a la
cual la instrucción mueve datos de su archivo de secuenciador.

6–9
Manual de referencia del juego de instrucciones
Preface

Nota Puede direccionar la máscara, fuente o destino de una instrucción de secuenciador


como palabra o archivo. Si la direcciona como archivo (usando # de indicador de
archivo), la instrucción pasa automáticamente por el archivo de fuente, máscara o
destino.
• El control (SQO, SQC) es la estructura de control que almacena el byte de
estado de la instrucción, la longitud del archivo de secuenciador y la posición
instantánea en el archivo. No debe usar la dirección de control para otras
instrucciones.

15 13 11 08 00
Pal. 0 EN DN ER FD
Pal. 1 Longitud del archivo de secuenciador
Pal. 2 Posición

Los bits de estado de la estructura de control incluyen:


– El bit de encontrado FD (bit 08) – SQC solamente. Cuando el estado de
todos los bits sin máscara en la dirección de fuente corresponden a los de la
palabra de referencia, el bit FD está establecido. Este bit se evalúa cada
vez que la instrucción SQC es evaluada mientras el renglón sea verdadero.
– El bit de error ER (bit 11) se establece cuando el procesador detecta un
valor de posición negativo, o un valor de longitud negativo o de cero. Esto
resulta en un error mayor si no se borra antes de la ejecución de la
instrucción END o TND.
– El bit de efectuado Bit DN (bit 13) lo establece la instrucción SQO o
SQC después de operar en la última palabra en el archivo de secuenciador.
Se restablece en la próxima transición de renglón de falso a verdadero
después de que el renglón se haga falso.
– El bit de habilitación EN (bit 15) lo establece una transición de renglón
de falso a verdadero e indica que la instrucción SQO o SQC se ha
habilitado.
• La longitud es el número de pasos del archivo de secuenciador a partir de la
posición 1. El número máximo que puede introducir es 255 palabras (104
palabras cuando usa los controladores MicroLogix 1000). La posición 0 es la
posición de arranque. La instrucción se restablece (se ajusta automáticamente)
a la posición 1 durante cada ciclo completado.
La dirección asignada para un archivo de secuenciador es paso cero. Las
instrucciones de secuenciador usan la longitud + 1 palabra de archivos de la
tabla de datos para cada archivo indicado en la instrucción. Esto se aplica a la
fuente, máscara y/o destino si se direccionan como archivos.

Un valor de longitud que indica más allá del fin del archivo programado causa
la coincidencia de un error mayor de tiempo de ejecución. Si modifica un valor
de longitud con su programa de escalera, asegúrese que el valor modificado sea
válido.

6–10
Instrucciones específicas de aplicación

• La posición es la ubicación o paso de palabra en el archivo de secuenciador al


cual/desde el cual la instrucción mueve datos.
Un valor de longitud que indica más allá del final del archivo programado
provoca un error mayor de tiempo de ejecución. Si modifica un valor de
longitud con su programa de escalera, asegúrese que el valor modificado sea
válido.

Nota de aplicación: Puede usar la instrucción de restablecimiento (RES) para


restablecer un secuenciador. Todos los bits de control (excepto FD) se pondrán a
cero. La posición también se pondrá a cero. Programe la dirección de su registro de
control en el RES (por ej., R6:0).

Uso de SQO

Esta instrucción de salida pasa por el archivo de secuenciador cuyos bits han sido
enviados para controlar varios dispositivos de salida.

Cuando el renglón va de falso a verdadero, la instrucción se incrementa hasta el


próximo paso (palabra) en el archivo de secuenciador. Los datos almacenados en
éste se transfieren a través de una máscara a la dirección de destino especificada en
la instrucción. Los datos actuales se escriben en la palabra de destino
correspondiente durante cada escán en que el renglón permanece verdadero.

El bit de efectuado se establece cuando la última palabra del archivo de


secuenciador se transfiere. En la próxima transición de renglón de falso a
verdadero, la instrucción restablece la posición al paso uno.

Si la posición es igual a cero al momento de arranque, cuando usted conmuta el


procesador del modo de programa al modo de marcha, la operación de la instrucción
dependerá de si el renglón es verdadero o falso en el primer escán.
• Si es verdadero, la instrucción transfiere el valor al paso cero.
• Si es falso, la instrucción espera la primera transición de renglón de falso a
verdadero y transfiere el valor al paso uno.

Los bits enmascaran datos cuando se restablecen y transfieren datos cuando se


establecen. La instrucción no cambia el valor en la palabra de destino a menos que
usted establezca los bits de máscara. La máscara puede ser fija o variable. Será
variable si introduce una dirección de elemento o una dirección de archivo para
cambiar la máscara con cada paso.

6–11
Manual de referencia del juego de instrucciones
Preface

La ilustración siguiente indica cómo funciona la instrucción SQO.

SQO
SEQUENCER OUTPUT (EN)
File #B10:1
Mask 0F0F (DN)
Dest O:14.0
Control R6:20
Length 4
Position 2

Destino O:14.0 Salidas externas


15 8 7 0 asociadas con O:14
0000 0101 0000 1010
00
01 Activ.
Valor de máscara 0F0F 02
15 8 7 0
03 Activ.
04
0000 1111 0000 1111 05
06
07
Archivo de salida de secuenciador #B10:1
08 Activ.
Palabra Paso 09
B10:1 0000 0000 0000 0000 0 10 Activ.
11
2 1010 0010 1111 0101 1 12
3 1111 0101 0100 1010 2 Paso actual 13
4 0101 0101 0101 0101 3 14
5 0000 1111 0000 1111 4 15

Uso de SQC

Cuando el estado de todos los bits sin máscara en la palabra de fuente corresponden
a los de la palabra de referencia, la instrucción establece el bit de encontrado (FD)
en la palabra de control. En caso contrarior, el bit de encontrado (FD) se pone a
cero.

Los bits enmascaran datos cuando se restablecen y transfieren datos cuando se


establecen.

La máscara puede ser fija o variable. Si introduce un código hexadecimal, la


máscara es fija. Si introduce una dirección de elemento o una dirección de archivo
para cambiar la máscara con cada paso, la máscara es variable.

Cuando el renglón va de falso a verdadero, la instrucción se incrementa al próximo


paso (palabra) en el archivo de secuenciador. Los datos almacenados en éste se
transfieren a través de una máscara y se comparan contra los datos de fuente para
determinar igualdad. Si los datos de fuente son iguales a los datos de referencia, el bit
FD se establece en el contador de control de SQC. Los datos actuales se comparan
contra la fuente durante cada escán en que el renglón es evaluado como verdadero.

6–12
Instrucciones específicas de aplicación

Las aplicaciones de la instrucción SQC incluyen diagnósticos de máquina. La


ilustración siguiente explica cómo funciona la instrucción SQC.

SQC
SEQUENCER COMPARE (EN)
File #B10:11 (DN)
Mask FFF0 (FD)
Source I:3.0
Control R6:21
Length 4
Position 2

Palabra de entrada I:3.0


0010 0100 1001 1101

Valor de máscara FFF0


1111 1111 1111 0000

Archivo de ref. de secuenciador #B10:11


Palabra Paso
B10:11 0
12 1
13 0010 0100 1001 1010 2
14 3
15 4

El bit FD SQC se establece cuando la instrucción detecta


que una palabra de entrada corresponde (máscara de
paso) a su palabra de referencia.
El bit FD R6:21/FD está establecido en este ejemplo ya que
la palabra de entrada corresponde al valor de referencia de
secuenciador que usa el valor de máscara.

6–13
Manual de referencia del juego de instrucciones
Preface

Carga de secuenciador (SQL)


3 3 3 3
SQL
SEQUENCER LOAD (EN) La instrucción SQL almacena datos de 16 bits en un archivo de carga de
File
Source
(DN)
secuenciador a cada paso de la operación del secuenciador. La fuente de estos datos
Control
Length puede ser una dirección de palabra de E/S o de almacenamiento, una dirección de
Position
archivo o una constante.
Instrucción de salida

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• El archivo es la dirección del archivo de secuenciador. Debe usar el indicador
de archivo (#) para esta dirección.
• La fuente puede ser una dirección de palabra, dirección de archivo o una
constante (–32768 a 32767).
Si la fuente es una dirección de archivo, la longitud de archivo es igual a la
longitud del archivo de carga de secuenciador. Los dos archivos pasarán
automáticamente según el valor de posición.
• La longitud es el número de pasos del archivo de carga de secuenciador (y
también de la fuente si la fuente es una dirección de archivo), a partir de la
posición 1. El número máximo que puede introducir es 255 palabras (104
palabras cuando usa los controladores MicroLogix 1000). La posición 0 es la
posición de arranque. La instrucción se restablece (se ajusta automáticamente)
a la posición 1 durante cada ciclo completado.
La dirección de posición asignada para un archivo de secuenciador es el paso
cero. Las instrucciones de secuenciador usan la longitud más una palabra de
datos para cada archivo con referencia en la instrucción. Esto se aplica a la
fuente si se direcciona como archivo.

Un valor de longitud que indica más allá del fin del archivo programado
provoca un error mayor de tiempo de ejecución. Si modifica un valor de
longitud con su programa de escalera, asegúrese que el valor modificado sea
válido.
• La posición es la ubicación o paso de palabra en el archivo de secuenciador a la
cual se mueven los datos.
Un valor de longitud que indica más allá del fin del archivo programado
provoca un error mayor de tiempo de ejecución. Si modifica un valor de
longitud con su programa de escalera, asegúrese que el valor modificado sea
válido.

6–14
Instrucciones específicas de aplicación

• El control es una dirección de archivo de control. Los bits de estado, valor de


longitud y valor de posición se almacenan en este elemento. No use la
dirección de archivo de control para otras instrucciones.
El elemento de control se muestra abajo:

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Pal. 0 EN DN ER
Pal. 1 Longitud
Pal. 2 Posición

Los bits de estado de la estructura de control incluyen:

– El bit de error ER (bit 11) se establece cuando el procesador detecta un


valor de posición negativo, o un valor de longitud negativo o de cero.
Para los procesadores SLC, esto resulta en un error mayor si no se pone a
cero antes de la ejecución de la instrucción END o TND.
Para los controladores MicroLogix 1000, cuando el bit ER se establece
también se establece el bit de error (S5:2). Ambos bits se deben poner a
cero.

– El bit de efectuado DN (bit 13) se establece después de que la instrucción


haya operado en la última palabra en el archivo de carga de secuenciador.
Se restablece en la próxima transición de renglón de falso a verdadero
después de que el renglón se haga falso.

– El bit de habilitación EN (bit 15) se establece en una transición de falso


a verdadero del renglón SQL y se restablece en una transición de verdadero
a falso.

6–15
Manual de referencia del juego de instrucciones
Preface

Operación

Los parámetros de instrucción han sido programados en la instrucción SQL ilustrada


abajo. La palabra de entrada I:1.0 es la fuente. Los datos en esta palabra son
cargados en el archivo de entero #N7:30 por la instrucción de carga de secuenciador.

SQL
SEQUENCER LOAD (EN)
File #N7:30
Source I:1.0 (DN)
Control R6:4
Length 4 Entradas externas
Position 2 asociadas con I:1.0
00
01 Activ.
Fuente I:1.0 02
15 8 7 0
03 Activ.
04
0000 0101 0000 1010 05
06
07
Archivo de carga de secuenciador #N7:30
08 Activ.
Palabra Paso 09
N7:30 0000 0000 0000 0000 0 10 Activ.
11
31 1010 0010 1111 0101 1 12
32 0000 0101 0000 1010 2 Paso actual 13
33 0000 0000 0000 0000 3 14
34 0000 0000 0000 0000 4 15

Cuando las condiciones de renglón cambian de falso a verdadero, el bit de


habilitación SQL (EN) se establece. El elemento de control R6:4 se incrementa a la
próxima posición en el archivo de secuenciador y carga el contenido de la fuente
I:1.0 en esta ubicación. La instrucción SQL sigue cargando los datos actuales en
esta ubicación durante cada escán en que el renglón permanece verdadero. Cuando
el renglón se vuelve falso, el bit de habilitación (EN) se pone a cero.

La instrucción carga los datos en un nuevo elemento de archivo a cada transición de


falso a verdadero del renglón. Cuando se completa el paso 4, el bit de efectuado
(DN) se establece. La operación avanza a la posición 1 en la próxima transición de
falso a verdadero del renglón después de la posición 4.

Si la fuente fuera una dirección de archivo tal como #N7:40, los archivos #N7:40 y
#N7:30 tendrían una longitud de 5 (0–4) y rastrearían conjuntamente por los pasos
según el valor de posición.

6–16
Instrucciones específicas de aplicación

Instrucciones específicas de aplicación en el ejemplo de


aplicación de la perforadora de papel
Esta sección proporciona renglones de escalera para demonstrar el uso de las
instrucciones específicas de aplicación. Los renglones son parte del ejemplo de
aplicación de la perforadora de papel descrito en el apéndice H. Usted iniciará una
rubrutina en el archivo 4.

Esta porción de la subrutina indica al transportador dónde detenerse para permitir la


perforación de un orificio. Las instrucciones de secuenciador se usan para
almacenar las posiciones de parada del transportador y cargar la “próxima” posición
de parada en la palabra preseleccionada DII. (La interrupción de entrada discreta,
DII, se usa para contar impulsos precedentes del codificador [encoder] que está
conectado al transportador.) Las posiciones de parada se usan para almacenar y
acceder cada una de las tres configuraciones de orificios.

OPERATOR PANEL

Start I:1/6 Stop I:1/7


Change Drill Soon Change Drill Now Interruptor
O:3/4 O:3/6 selector de
Thumbwheel for perforación
Drill Change Reset 5 Hole
Thickness in 1/4”

3 Hole 7 Hole

(Keyswitch)
I:1/11–I:1/14 I:1/8 I:1/9–I:1/10

Perforadora

Orificios
perforados

6–17
Manual de referencia del juego de instrucciones
Preface
Renglón 4:0
Este renglón restablece los secuenciadores de conteo de orificios cada vez que el
procesador entra en el modo RUN. Esto asegura que el primer valor preseleccionado se
cargue en la DII preseleccionada a cada entrada en el modo de marcha.
| Primer secuenciador |
| paso de 3 orificios |
| preseleccionado|
| +INT––––––––––––––––––––+ S:1 R6:4 |
|–+INTERRUPT SUBROUTINE +––––] [––––––––––––––––––––––––––––––+–––(RES)––––+–|
| +–––––––––––––––––––––––+ 15 | | |
| | secuenc. | |
| | de 5 orif. | |
| | preselecc. | |
| | R6:5 | |
| +–––(RES)––––+ |
| | | |
| | secuenc. | |
| | de 7 orif. | |
| | preselecc. | |
| | R6:6 | |
| +–––(RES)––––+ |
| |
Renglón 4:2
Este renglón registra el número de orificio que se perfora y carga la próxima DII
correcta preseleccionada basada en el conteo de orificios. Este renglón solamente
está activo cuando el “interruptor selector de orificio” está en la posición de “3
orificios”. El secuenciador usa el paso 0 como un paso nulo al restablecerse. Usa el
último paso como “continuar infinitivamente” en espera del “fin de manual”. El mover
0 a S:49 le indica a la DII que dispare una interrupción cuando el borde trasero del
libro actual se detecta.
| bit 0 |bit 1 secuenciador |
| del interr. |del interr. de 3 orificios |
| selector |selector preseleccionado |
| de orificio |de orificio |
| I:1.0 I:1.0 +SQO–––––––––––––––+ |
|––––]/[––––––––] [–––––––––+––––––––––––––––––––––+SEQUENCER OUTPUT +–(EN)–+–|
| 9 10 | |File #N10:0+–(DN) | |
| | |Mask FFFF| | |
| | |Dest S:50| | |
| | |Control R6:4| | |
| | |Length 4| | |
| | |Position 0| | |
| | +––––––––––––––––––+ | |
| | | |

6–18
Instrucciones específicas de aplicación

| | | |
| | forzar que el | |
| | secuenciador | |
| | incremente en | |
| | el próximo escán | |
| | R6:4 | |
| +–––––––––––––––––––––––––(U)––––––––––––––––––––+ |
| | EN | |

Renglón 4:3
Este renglón es idéntico al renglón anterior con la excepción de que sólo está
activado cuando el “interruptor selector de orificio” está en la posición de “5
orificios”.
| bit 0 |bit 1 secuenciador |
| del interr. |del interr. de 5 orificios |
| selector de |selector de preseleccionado |
| orificio |orificio |
| I:1.0 I:1.0 +SQO–––––––––––––––+ |
|––––] [––––––––]/[–––––––––+––––––––––––––––––––––+SEQUENCER OUTPUT +–(EN)–+–|
| 9 10 | |File #N10:5+–(DN) | |
| | |Mask FFFF| | |
| | |Dest S:50| | |
| | |Control R6:5| | |
| | |Length 6| | |
| | |Position 0| | |
| | +––––––––––––––––––+ | |
| | | |
| | forzar que el | |
| | secuenciador | |
| | incremente en | |
| | el próximo escán | |
| | R6:5 | |
| +–––––––––––––––––––––––––(U)––––––––––––––––––––+ |
| | EN | |

6–19
Manual de referencia del juego de instrucciones
Preface
Renglón 4:4
Este renglón is idéntico a los 2 renglones anteriores con la excepción de que sólo
está activado cuando el “interruptor selector de orificio” está en la posición de “7
orificios”.
| bit 0 |bit 1 secuenciador |
| del interr. |del interr. de 7 orificios |
| selector de |selector de preseleccionado |
| orificio |orificio |
| I:1.0 I:1.0 +SQO–––––––––––––––+ |
|––––] [––––––––] [–––––––––+––––––––––––––––––––––+SEQUENCER OUTPUT +–(EN)–+–|
| 9 10 | |File #N10:12+–(DN) | |
| | |Mask FFFF| | |
| | |Dest S:50| | |
| | |Control R6:6| | |
| | |Length 8| | |
| | |Position 0| | |
| | +––––––––––––––––––+ | |
| | forzar que el | |
| | secuenciador | |
| | incremente en | |
| | el próximo escán | |
| | R6:6 | |
| +–––––––––––––––––––––––––(U)––––––––––––––––––––+ |
| | EN | |

6–20
Cómo usar las instrucciones del contador de alta velocidad

7 Cómo usar las instrucciones del


contador de alta velocidad
Este capítulo contiene información general acerca de las instrucciones del contador
de alta velocidad y explica cómo funcionan en su programa de aplicación. Cada una
de las instrucciones incluye información acerca de:
• cómo aparece el símbolo de instrucción
• cómo usar la instrucción

Además, la última sección contiene un ejemplo de aplicación para una perforadora


de papel que muestra el uso de las instrucciones del contador de alta velocidad.
Instrucciones del contador de alta velocidad

Mnemónico Nombre Propósito Página


Aplica la configuración al hardware del
contador de alta velocidad, actualiza el
HSC Contador de alta
acumulador de imagen, habilita el conteo 7-6
velocidad
cuando el HSC es verdadero e inhabilita el
conteo cuando el renglón de HSC es falso.
Configura los valores preseleccionados bajos
HSL Carga del contador de
y altos, las configuraciones de salida y 7-18
alta velocidad
configuraciones de bit con máscara.
Restablecimiento del
RES Escribe un cero al acumulador de hardware y
contador de alta 7-21
al acumulador de imagen.
velocidad
Acumulador de
RAC restablecimiento del Escribe el valor especificado al acumulador
7-22
contador de alta de hardware y al acumulador de imagen.
velocidad
HSE Habilit. de interrupción
Habilita o inhabilita la ejecución de la
del contador de alta
subrutina de interrupción del contador de alta
HSD velocidad
velocidad cuando se alcanza un valor 7–23
Inhabilit. de interrupción
preseleccionado alto, valor preseleccionado
del contador de alta
bajo, overflow o underflow.
velocidad
Actualiz. del acumulador Le proporciona acceso de tiempo real al valor
OTE de imagen del contador de acumulador del hardware actualizando el 7-24
de alta velocidad acumulador de imagen.

7–1
Manual de referencia del juego de instrucciones
Preface

Acerca de las instrucciones del contador de alta


velocidad
Las instrucciones del contador de alta velocidad usadas en su programa de escalera
configuran, controlan y monitorizan el contador de hardware del controlador. El
acumulador de hardware del contador incrementa o decrementa en respuesta a
señales de entrada externas. Cuando el contador de alta velocidad está habilitado, el
contador de tabla de datos C5:0 es usado por el programa de escalera para
monitorizar el acumulador y estado del contador de alta velocidad. El contador de
alta velocidad opera independientemente del escán de controlador.

Cuando use el contador de alta velocidad, asegúrese de ajustar debidamente los


filtros de entrada.

Antes de aprender estas instrucciones, lea la descripción general que sigue en la


próxima página.

7–2
Cómo usar las instrucciones del contador de alta velocidad

Descripción general de las instrucciones del contador


de alta velocidad
Use las instrucciones del contador de alta velocidad para detectar y almacenar
impulsos estrechos (rápidos) y para iniciar otras operaciones de control basadas en
los valores preseleccionados. Estas operaciones de control incluyen la ejecución
automática e inmediata de la rutina de interrupción del contador de alta velocidad
(archivo 4) y la actualización inmediata de salidas basada en una configuración de
fuente y máscara que usted ha establecido.

Elementos del archivo de datos del contador

Las instrucciones del contador de alta velocidad hacen referencia al contador C5:0. La
instrucción HSC se fija a C5:0. Se compone de tres palabras. La palabra 0 es la
palabra de estado que contiene 15 bits de estado. La palabra 1 es el valor preselec-
cionado. La palabra 2 es el valor acumulador. Una vez asignado a la instrucción HSC,
C5:0 no está disponible como dirección para otras instrucciones de contador.

15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Pal. 0 CU CD DN OV UN UA HP LP IV IN IH IL PE LS IE Palabra
de estado
Pal. 1 Valor preseleccionado
Pal. 2 Valor de acumulador

CU = Bit de habilitación de conteo progresivo


CD = Bit de habilitación de conteo regresivo
DN = Bit de alto valor preseleccionado alcanzado
OV = Bit de overflow ocurrido
UN = Bit de underflow ocurrido
UA = Bit de actualización de acumulador de contador de alta velocidad
HP = Bit de alto valor preseleccionado ≥ de acumuladorÀ
LP = Bit de bajo valor preseleccionado ≤ de acumulador
IV = Bit de overflow ha causado interrupción de contador de alta velocidadÀ
IN = Bit de underflow ha causado interrupción de contador de velocidadÀ
IH = Bit de alto valor preseleccionado ha causado interrupciónÀ
IL = Bit de bajo valor preseleccionado ha causado interrupciónÀ
PE = Bit de interrupción pendiente de contador de alta velocidadÀ
LS = Bit de interrupción perdida de contador de alta velocidadÀ
IE = Bit de habilitación de interrupción de contador de alta velocidadÀ

À Para acceder estos bits, coloque el cursor en la instrucción y presione [F8], monitor de datos.

Los valores preseleccionados y acumulados del contador se almacenan como


enteros signados.
Uso de bits de estado

Los bits de estado del contador de alta velocidad son retentivos. Cuando el contador
de velocidad se configura por primera vez, los bits 3–7, 14 y 15 se restablecen y el
bit 1 (IE) se establece.

7–3
Manual de referencia del juego de instrucciones
Preface

• El bit de habilitación del contador progresivo CU (bit 15) se usa con todos
los tipos de contadores de alta velocidad. Si la instrucción HSC es verdadera, el
bit CU se pone a uno. Si la instrucción HSC es falsa, el bit CU se pone a cero.
No escriba a este bit.
• El bit de habilitación del contador regresivo CD (bit 14) se usa con los
contadores bidireccionales (modos 3–8). Si la instrucción HSC es verdadera, el
bit CD se pone a uno. Si la instrucción HSC es falsa, el bit CD se pone a cero.
No escriba a este bit.
• Bit de valor alto preseleccionado alcanzado DN (bit 13) Para los contadores
progresivos (modos 1 y 2), este bit es un bit de enclavamiento disparado por
flanco. Este bit se establece cuando el valor alto preseleccionado se alcanza.
Puede restablecer este bit con una instrucción OTU o ejecutando una
instrucción RAC o RES.
El bit DN es un bit reservado para todas las otras opciones del contador (modos
3–8).
• Bit de overflow ocurrido OV (bit 12) Para los contadores progresivos (modos
1 y 2), este bit está establecido por el controlador cuando el valor alto
preseleccionado se alcanza si el bit DN se ha establecido.
Para los contadores bidireccionales (modos 3–8), el bit OV está establecido por
el controlador después de la transición del acumulador de hardware de 32,767 a
–32,768. Puede restablecer este bit con una instrucción OTU o ejecutando una
instrucción RAC o RES para los contadores progresivos y bidireccionales.
• El bit de underflow ocurrido UN (bit 11) es un bit reservado para los
contadores progresivos (modos 1 y 2). No escriba a este bit.
Nota Para los contadores bidireccionales (modos 3–8), el bit UN está establecido por
el controlador cuando el acumulador de hardware hace una transición de
–32,768 a +32,767. Puede restablecer este bit con una instrucción o ejecutando
una instrucción RAC o RES.
• El bit de actualización del acumulador del contador de alta velocidad UA
(bit 10) se usa con una instrucción OTE para actualizar el valor del acumulador
de imagen de instrucción con el valor del acumulador de hardware. (La
instrucción HSC también realiza esta operación cada vez que el renglón con la
instrucción HSC es evaluado como verdadero.)
• El bit de acumulador  valor alto preseleccionado HP (bit 9) es un bit
reservado para todos los contadores progresivos (modos 1 y 2). No escriba a
este bit. (Excepción – puede establecer o restablecer este bit durante la
configuración inicial de la instrucción HSC. Vea la página 7–6 para obtener
más información.)
Para los contadores bidireccionales (modos 3–8), si el acumulador de hardware
se hacer mayor o igual que el valor alto preseleccionado, el bit HP se restablece.
Si el acumulador de hardware se hace menor que el valor alto preseleccionado,
el bit HP será restablecido por el controlador.

7–4
Cómo usar las instrucciones del contador de alta velocidad

• El bit de acumulador ≤ valor bajo preseleccionado LP (bit 8) es un bit


reservado para todos los contadores progresivos. No escriba a este bit.
(Excepción – puede establecer o restablecer este bit durante la configuración
inicial de la instrucción HSC. Vea la página 7–6 para obtener más información.
Para los contadores bidireccionales, si el acumulador de hardware se hace
menor o igual que el valor bajo preseleccionado, el bit LP será establecido por el
controlador. Si el acumulador de hardware se hace mayor que el valor bajo
preseleccionado, el bit LP será restablecido por el controlador.
• El bit de interrupción del contador de alta velocidad causada por overlow
IV (bit 7) se establece para identificar un overflow como la causa de una rutina
de interrupción del contador de alta velocidad. Los bits IN, IH e IL serán
restablecidos por el controlador cuando el bit IV se establezca. Examine este bit
al inicio de la rutina de interrupción del contador de alta velocidad (archivo 4)
para determinar el porqué de la interrupción ocurrida.
• El bit de interrupción del usuario causada por underflow IN (bit 6) se
establece para identificar un underflow como la causa de una ejecución de la
rutina de interrupción del contador de alta velocidad. Los bits IV, IH e IL serán
restablecidos por el controlador cuando el bit IN se establezca. Examine este bit
al inicio de la rutina de interrupción del contador de alta velocidad (archivo 4)
para determinar el porqué de la interrupción ocurrida.
• El bit de interrupción del usuario causada por el valor alto preseleccionado
alcanzado IH (bit 5) se establece para identificar un valor alto
preseleccionado alcanzado como la causa de ejecución de la rutina de
interrupción del contador de alta velocidad. Los bits IV, IN e IL serán
restablecidos por el controlador cuando el bit IH se establezca. Examine este bit
al inicio de la rutina de interrupción del contador de alta velocidad (archivo 4)
para determinar el porqué de la interrupción ocurrida.
• El bit de interrupción del contador de alta velocidad causada por valor
bajo preseleccionado alcanzado IL (bit 4) se establece para identificar un
valor bajo preseleccionado alcanzado como la causa de ejecución de la rutina de
interrupción del contador de alta velocidad. Los bits IV, IN e IH serán
restablecidos por el controlador cuando el bit IL se establezca. Examine este bit
al inicio de la rutina de interrupción del contador de alta velocidad (archivo 4)
para determinar el porqué de la interrupción ocurrida.
• Bit de interrupción pendiente del contador de alta velocidad PE (bit 3) es
establece para indicar que una interrupción del contador de alta velocidad
espera la ejecución. Este bit es puesto a cero por el controlador cuando la rutina
de interrupción del contador de alta velocidad comienza a ejecutar. Este se
restablece si una instrucción RAC o RES se ejecuta. No escriba a este bit.
• El bit de interrupción perdida del contador de alta velocidad LS (bit 2) se
establece si una interrupción del contador de alta velocidad ocurre mientras que
el bit PE esté establecido. Puede restablecer este bit con una instrucción OTU o
ejecutando una instrucción RAC o RES.
• El bit de habilitación de interrupción del contador de alta velocidad IE
(bit 1) se establece cuando la interrupción del contador de alta velocidad se
habilita para marchar cuando ocurre una condición de interrupción del contador
de alta velocidad. Se restablece cuando la interrupción se inhabilita. Este bit
también se establece cuando el contador de alta velocidad se configura por
primera vez. No escriba a este bit.

7–5
Manual de referencia del juego de instrucciones
Preface

Contador de alta velocidad (HSC)


HSC
HIGH SPEED COUNTER (CU)
Use esta instrucción para configurar el contador de alta velocidad. Solamente una
Type
Counter C5:0
(CD)
(DN)
instrucción HSC se puede usar en un programa. El contador de alta velocidad no
High Preset
Accum
0
0 opera hasta que la primera ejecución verdadera de la instrucción HSC. Cuando el
renglón HSC es falso, el contador de alta velocidad está inhabilitado para contar,
pero todas las otras características HSC funcionan.
La dirección de contador de la instrucción se fija a C5:0.
Después de la configuración del HSC, el acumulador de imagen (C5:0.ACC) se
actualiza con el valor del acumulador de hardware actual cada vez que la instrucción
HSC se evalúa como verdadera o falsa.

Cómo introducir parámetros


Introduzca los parámetros siguientes al programar esta instrucción:
• El tipo indica el contador seleccionado. Refiérase a la página 7–7 para hacer su
selección del contador de alta velocidad. Cada tipo está disponible con
funciones de restablecimiento y retención.
• El valor alto preseleccionado es el valor acumulado que dispara una acción
especificada por el usuario tal como la actualización de salidas o la generación
de una interrupción del contador de alta velocidad.
• El acumulador es el número de conteos acumulados.

La terminología siguiente se usa en la tabla siguiente para indicar el estado del


conteo:
• Progresivo↑ – aumenta en 1 cuando la entrada se activa (margen).
• Regresivo↑ – disminuye en 1 cuando la entrada se activa (margen).
• Restablecimiento↑ – pone el acumulador a cero cuando la entrada se activa
(margen).
• Retención – inhabilita que el contador de alta velocidad cuente durante la
activación de la entrada (nivel).
• Conteo – aumenta o disminuye en 1 cuando la entrada se activa (margen).
• Dirección – permite conteos progresivos cuando la entrada está desactivada y
conteos regresivos cuando la entrada está activada (nivel).
• A – impulso de entrada en un codificador (encoder) (cuadratura) incremental
(margen/nivel).
• B – impulso de entrada en un codificador (encoder) (cuadratura) incremental
(margen/nivel).
• Z – restablecimiento del impulso en un codificador (encoder) (cuadratura)
incemental (margen/nivel).
• ↑ – la señal está activa en la margen ascendente solamente (desactivado a
activado)

7–6
Cómo usar las instrucciones del contador de alta velocidad

La tabla siguiente lista la tecla de función que debe presionar para seleccionar el
tipo de contador de alta velocidad deseado.

Tipo de contador de alta Terminal de entrada usada


Funcionalidad del contador
velocidad y tecla de
función de alta velocidad I/0 I/1 I/2 I/3
La operación del contador progresivo usa
Progresivo Progresivo↑ No usado No usado No usado
una entrada unipolar.
Progresivo La operación del contador progresivo usa
Restable-
(con restablecimiento y una sola entrada con entradas de Progresivo↑ No usado Retención
cimiento↑
retención) restablecimiento y retención externos
La operación bidireccional usa entradas
Impulso y dirección Conteo↑ Dirección No usado No usado
de impulso y dirección.
Impulso y dirección La operación bidireccional usa entradas
Restable-
(con restablecimiento y de impulso y dirección con entradas de Conteo↑ Dirección Retención
cimiento↑
retención externos) restablecimiento y retención externos.
La operación bidireccional usa entradas
Progresivo y regresivo Progresivo↑ Regresivo↑ No usado No usado
de dirección progresiva y regresiva.
La operación bidireccional usa entradas
Progresivo y regresivo
de impulso progresivo y regresivo con Restable-
(con restablecimiento y Progresivo↑ Regresivo↑ Retención
entrada de restablecimiento y retención cimiento↑
retención externos)
externos.
La operación bidireccional usa entradas
Codificador (encoder) A B No usado No usado
de codificador (encoder) de cuadratura.
Codificador (encoder) La operación bidireccional usa entradas
(con restablecimiento y de codificador (encoder) de cuadratura A B Z Retención
retención externos) con restablecimiento y retención externos.

Una diferencia entre los contadores progresivos y los contadores bidireccionales es


que los valores de acumulador y preseleccionados de los contadores bidireccionales
no son cambiados por el contador de alta velocidad cuando los valores preselec-
cionados se alcanzan. Las instrucciones RAC y HSL se deben usar para esta
función. Los contadores progresivos ponen a cero el acumulador y vuelven a cargar
los valores altos preseleccionados cuando el valor preseleccionado se alcanza.

7–7
Manual de referencia del juego de instrucciones
Preface

Uso del contador progresivo y el contador regresivo con restablecimiento


y retención

Los contadores progresivos se usan cuando el parámetro que se mide es


unidireccional, tal como el material que se alimenta en una máquina o un tacómetro
que registra el número de impulsos realizados durante un plazo determinado.

Ambos tipos de contadores progresivos operan de la misma manera, excepto que el


contador progresivo con restablecimiento y retención usa entradas externas 2 y 3.

Para el contador progresivo, cada cambio del estado desactivado a activado de la


entrada I:0/0 añade 1 al acumulador hasta que se alcance el valor alto
predeterminado. Luego el acumulador se pone automáticamente a cero. El
contador progresivo opera en el rango de 0 a +32,767 inclusivamente y se puede
poner a cero usando la instrucción de restablecimiento (RES).

Cuando la instrucción HSC se ejecuta como verdadera por primera vez:


• El acumulador C5:0.ACC se carga en el acumulador de hardware.
• El valor alto preseleccionado C5:0.PRE se carga en el valor alto
preseleccionado de hardware.

Operación

Si usted mueve los datos al valor alto predeterminado sin usar la instrucción HSL
(con MOV) después de la configuración del contador de alta velocidad, los datos se
cargan en la imagen de instrucción pero no se cargan en el hardware. El valor alto
preseleccionado modificado no se carga en el hardware hasta que el valor alto
preseleccionado de hardware existente se alcance o hasta que una instrucción RAC o
RES se ejecute.

El valor alto preseleccionado cargado en el hardware debe ser entre 1 y 32,767


inclusivamente o un error de INVALID PRESETs LOADED TO HIGH SPEED
COUNTER (37H) ocurre. Todo valor entre –32,768 y +32,767, ambos valores
inclusive, se puede cargar en el acumulador de hardware.
La condición siguiente Ocurre cuando
el acumulador de hardware hace la transición del valor alto preselec-
cionado de hardware –1 al valor alto preseleccionado de hardware, o
Un valor alto preseleccionado el acumulador de hardware se carga con un valor mayor o igual
se ha alcanzado que el valor alto preseleccionado de hardware, o
el valor alto preseleccionado de hardware se carga con un valor
que es menor o igual que el acumulador de hardware.

7–8
Cómo usar las instrucciones del contador de alta velocidad

Cuando se alcanza un valor alto preseleccionado, los conteos se pierden.


• Los acumuladores de hardware e instrucción se restablecen.
• El valor alto preseleccionado de instrucción se carga en el valor alto
preseleccionado de hardware.
• El bit DN se establece.
• El archivo de interrupción del contador de alta velocidad (archivo de programa
4) se ejecuta si la interrupción se habilita. El bit IH se establece y los bits IL,
IV e IN se establecen.

Si el bit DN ya está establecido cuando se alcanza un valor alto preseleccionado, el


bit OV está establecido.

Las tablas siguientes resumen los estados de entrada necesarios para que la acción
del contador de alta velocidad se lleve a cabo:

Contador progresivo

Estado de entrada
Acción del
Conteo de Dirección Restableci- Retención contador de alta
Renglón
entrada de entrada miento de de entrada velocidad
HSC
(E/S) (I/1) entrada (I/2) (I/3)
Desactivado Conteo
NA NA NA Verdadero
a activado progresivo
Retención de
NA NA NA NA Falso
conteo

NA (no aplicable)

7–9
Manual de referencia del juego de instrucciones
Preface

Contador progresivo con restablecimiento y retención

Estado de entrada
Acción del
Conteo de Dirección Restableci- Retención contador de alta
Renglón
entrada de entrada miento de de entrada velocidad
HSC
(E/S) (I/1) entrada (I/2) (I/3)
Desactivado,
Desactivado Conteo
NA activado o a Off Verdadero
a activado progresivo
desactivado
Desactivado,
Retención de
NA NA activado o a On NA
conteo
desactivado
Desactivado,
Retención de
NA NA activado o a NA Falso
conteo
desactivado
Desactivado, Desactivado,
Retención de
activado o a NA activado o a NA NA
conteo
desactivado desactivado
Restablecimiento
NA NA A activado NA NA
a0

NA (No aplicable)

Uso del contador bidireccional y el contador bidireccional con


restablecimiento y retención

Los contadores bidireccionales se usan cuando el parámetro que se mide puede


incrementar o disminuir. Por ejemplo, un paquete que entra y sale de una tolva de
almacenamiento se cuenta para regular el flujo a través del área.

Los contadores bidireccionales operan de la misma manera, excepto la operación de


entradas 1 y 0. Para los tipos de impulso y dirección, la entrada 0 proporciona el
impulso y la entrada 1 proporciona la dirección. Para los tipos progresivos y
regresivos, la entrada 0 proporciona el conteo progresivo y la entrada 1 proporciona
el conteo regresivo. Ambos tipos están disponibles con y sin restablecimiento y
retención. Refiérase a la página 7–7 para obtener más información acerca de los
tipos de contador bidireccional.

Para los contadores bidireccionales, se usan los valores altos y bajos


preseleccionados. El valor bajo preseleccionado debe ser menor que el valor alto
preseleccionado o de lo contrario ocurrirá un error INVALID PRESETs LOADED
TO HIGH SPEED COUNTER (37H).

Los contadores bidireccionales operan en el rango de –32,768 a +32,767 inclusive y


se pueden poner a cero usando la instrucción de restablecimiento (RES).

7–10
Cómo usar las instrucciones del contador de alta velocidad

Operación

Cuando la instrucción HSC se ejecuta como verdadera por primera vez, el:
• Valor bajo preseleccionado de hardware se establece a –32,768.
• Acumulador de instrucción se carga en el acumulador de hardware.
• Valor alto preseleccionado de instrucción se carga en el valor alto
preseleccionado de hardware.

Después de la primera ejecución verdadera de instrucción HSC, los datos se pueden


transferir únicamente al acumulador de hardware vía una instrucción RES o RAC, o
a los valores alto y bajo preseleccionados de hardware vía la instrucción HSL.

Todo valor de acumulador de instrucción entre –32,768 y +32,767 inclusive se


puede cargar en el hardware. El valor alto preseleccionado debe ser mayor que el
valor bajo preseleccionado o un error INVALID PRESETs LOADED TO HIGH
SPEED COUNTER (37H) ocurre.

La condición siguiente Ocurre cuando


el acumulador de hardware hace la transición del valor alto preselec-
cionado de hardware –1 al valor alto preseleccionado de hardware, o
Un valor alto preseleccionado el acumulador de hardware se carga con un valor mayor o igual
se ha alcanzado que el valor alto preseleccionado de hardware, o
el valor alto preseleccionado de hardware se carga con un valor
que es menor o igual que el acumulador de hardware.

Cuando un valor alto preseleccionado se alcanza, el:


• Bit HP se establece.
• Un archivo de interrupción del contador de alta velocidad (archivo de programa
4) se ejecuta si la interrupción se ejecuta. El bit IH se establece y los bits IL, IV
e IN se restablecen.

En contra de los contadores progresivos, el valor de acumulador no se restablece y


el valor alto preseleccionado no se carga desde la imagen hacia el registro del valor
alto preseleccionado de hardware.
La condición siguiente Ocurre cuando
el acumulador de hardware hace la transición del valor bajo preselec-
cionado de hardware +1 al valor bajo preseleccionado de hardware, o
Un valor bajo el acumulador de hardware se carga con un valor menor o igual
preseleccionado se ha que el valor alto preseleccionado de hardware, o
alcanzado
el valor bajo preseleccionado de hardware se carga con un valor
que es mayor o igual que el acumulador de hardware.

7–11
Manual de referencia del juego de instrucciones
Preface

Cuando el valor bajo preseleccionado se alcanza, el:


• Bit LP se establece.
• Archivo de interrupción del contador de alta velocidad (archivo de programa 4)
se ejecuta si la interrupción se habilita. El bit IL se establece y los bits IH, IV e
IN se restablecen.

Un overflow ocurre cuando el acumulador de hardware hace una transición de


+32,767 a –32,768. Cuando un overflow ocurre, el:
• Bit OV se establece.
• Archivo de interrupción del contador de alta velocidad (archivo de programa 4)
se ejecuta si la interrupción se habilita. El bit IV se establece y los bits IH, IL e
IN se restablecen.

Un underflow ocurre cuando el acumulador de hardware hace una transición de


–32,768 a +32,767. Cuando un underflow ocurre, el:
• Bit UN se establece.
• Archivo de interrupción del contador de alta velocidad (archivo de programa 4)
se ejecuta si la interrupción se habilita. El bit IV se establece y los bits IH, IL e
IN se restablecen.

Las tablas siguientes resumen los estados de entrada necesarios para que la acción
del contador de alta velocidad correspondiente se lleve a cabo:

Contador bidireccional (impulso/dirección)

Estado de entrada
Acción del
Conteo de Dirección Restableci- Retención contador de alta
Renglón
entrada de entrada miento de de entrada velocidad
HSC
(E/S) (I/1) entrada (I/2) (I/3)
Desactivado Conteo
Desactivado NA NA Verdadero
a activado progresvio
Desactivado
Activado NA NA Verdadero Conteo regresivo
a activado
Retención de
NA NA NA NA Falso
conteo

NA (no aplicable)

7–12
Cómo usar las instrucciones del contador de alta velocidad

Contador bidireccional con restablecimiento y retención (impulso/dirección)

Estado de entrada
Acción del
Conteo de Dirección Restableci- Retención contador de alta
Renglón
entrada de entrada miento de de entrada velocidad
HSC
(E/S) (I/1) entrada (I/2) (I/3)
Desactivado,
Desactivado Conteo
Desactivado activado o a Desactivado Verdadero
a activado progresivo
desactivado
Desactivado,
Desactivado
Activado activado o a Desactivado Verdadero Conteo regresivo
a activado
desactivado
Desactivado,
Retención de
NA NA activado o a NA Falso
conteo
desactivado
Desactivado,
Retención de
NA NA activado o a Activado NA
conteo
desactivado
Desactivado, Desactivado,
Retención de
activado o a NA activado o a NA NA
conteo
desactivado desactivado
Restablecimiento
NA NA A activado NA NA
a0

NA (no aplicable)

Contador bidireccional (conteo progresivo/regresivo)

Estado de entrada
Conteo Conteo Acción del
progresivo regresivo Renglón contador de alta
de entrada de entrada HSC velocidad
(E/S) (I/1)
Desactivado,
Desactivado Conteo
activado o a Verdadero
a activado progresivo
desactivado
Desactivado,
Desactivado
activado o a Verdadero Conteo regresivo
a activado
desactivado
Retención de
NA NA Falso
conteo

NA (no aplicable)

7–13
Manual de referencia del juego de instrucciones
Preface

Contador bidireccional con restablecimiento y retención (conteo progresivo/regresivo)

Estado de entrada
Acción del
Conteo de Dirección Restableci- Retención contador de alta
Renglón
entrada de entrada miento de de entrada velocidad
HSC
(E/S) (I/1) entrada (I/2) (I/3)
Desactivado, Desactivado,
Desactivado Conteo
activado o a activado o a Desactivado Verdadero
a activado progresivo
desactivado desactivado
Desactivado, Desactivado,
Desactivado
activado o a activado o a Desactivado Verdadero Conteo regresivo
a activado
desactivado desactivado
Desactivado,
Retención de
NA NA activado o a NA Falso
conteo
desactivado
Desactivado,
Retención de
NA NA activado o a Activado NA
conteo
desactivado
Desactivado, Desactivado, Desactivado,
Retención de
activado o a activado o a activado o a NA NA
conteo
desactivado desactivado desactivado
Restablecimiento
NA NA A activado NA NA
a0

NA (no aplicable)

Cuando los impulsos de entrada progresivos y regresivos ocurren simultáneamente,


el contador de alta velocidad cuenta progresivamente y luego regresivamente.

Uso del contador bidireccional con restablecimiento y retención con


codificador (encoder) de cuadratura

El codificador (encoder) de cuadratura se usa para determinar la dirección de


rotación y la posición de rotación; por ejemplo, para un torno. El contador
bidireccional cuenta la rotación del codificador (encoder) de cuadratura.

Los contadores bidireccionales operan dentro del rango de –32,768 a +32,767


inclusive y se pueden poner a cero usando la instrucción de restablecimiento (RES).
La figura siguiente muestra un condificador (encoder) de cuadratura conectado a
entradas 0, 1 y 2. La dirección de conteo es determinada por el ángulo de fase entre
A y B. Si A precede B, el contador incrementa. Si B precede A, el contador se
reduce.

El contador se puede restablecer usando la entrada Z. Las salidas Z de los


codificadores (encoders) típicamente porporcionan un impulso por revolución.

7–14
Cómo usar las instrucciones del contador de alta velocidad

Entrada 0
A
Entrada 1
B
Codificador (encoder) Entrada 2
de cuadratura Z
(Entrada de restablecimiento)
Rotación hacia adelante Rotación hacia atrás

B
1 2 3 2 1

Conteo

Operación

Para los contadores bidireccionales, se usan los valores altos y bajos


preseleccionados. El valor bajo preseleccionado debe ser menor que el valor alto
preseleccionado o de lo contrario ocurrirá un error INVALID PRESETs LOADED TO
HIGH SPEED COUNTER (37H).

Cuando la instrucción HSC se ejecuta como verdadera por primera vez, el. . .
• Valor bajo preseleccionado de hardware se establece a –32,768.
• Acumulador de instrucción se carga en el acumulador de hardware.
• Valor alto preseleccionado de instrucción se carga en el valor alto
preseleccionado de hardware.

Todo valor de acumulador de instrucción entre –32,768 y +32,767 inclusive se


puede cargar en el hardware.

Después de la primera ejecución verdadera de la instrucción HSC, los datos sólo se


pueden transferir al acumulador de hardware vía una instrucción RES o RAC, o a
los valores alto y bajo preseleccionado de hardware vía la instrucción HSL.

7–15
Manual de referencia del juego de instrucciones
Preface

La condición siguiente Ocurre cuando


el acumulador de hardware hace la transición del valor alto preselec-
cionado de hardware –1 al valor alto preseleccionado de hardware, o
Un valor alto preseleccionado el acumulador de hardware se carga con un valor mayor o igual
se ha alcanzado que el valor alto preseleccionado de hardware, o
el valor alto preseleccionado de hardware se carga con un valor
que es menor o igual que el acumulador de hardware.

Cuando se alcanza un valor alto preseleccionado, el. . .


• Bit HP se establece.
• Archivo de interrupción del contador de alta velocidad (archivo de programa 4)
se ejecuta si la interrupción se ejecuta. El bit IH se establece y los bits IL, IV e
IN se restablecen.

A diferencia de los contadores progresivos, el valor de acumulador no se restablece


y el valor alto preseleccionado no se carga desde la imagen hacia el registro del
valor alto preseleccionado de hardware.
La condición siguiente Ocurre cuando
el acumulador de hardware hace la transición del valor bajo preselec-
cionado de hardware +1 al valor bajo preseleccionado de hardware, o
Un valor bajo el acumulador de hardware se carga con un valor menor o igual
preseleccionado se ha que el valor alto preseleccionado de hardware, o
alcanzado
el valor bajo preseleccionado de hardware se carga con un valor
que es mayor o igual que el acumulador de hardware.

Cuando el valor bajo preseleccionado se alcanza, el:


• Bit LP se establece.
• El archivo de interrupción del contador de alta velocidad (archivo de programa
4) se ejecuta si la interrupción se habilita. El bit IL se establece y los bits IH,
IV e IN se restablecen.

Un overflow ocurre cuando el acumulador de hardware hace una transición de


+32,767 a –32,768. Cuando un overflow ocurre, el. . .
• Bit OV se establece.
• Archivo de interrupción del contador de alta velocidad (archivo de programa 4)
se ejecuta si la interrupción se habilita. El bit IV se establece y los bits IH, IL e
IN se restablecen.

7–16
Cómo usar las instrucciones del contador de alta velocidad

Un underflow ocurre cuando el acumulador de hardware hace una transición de


–32,768 a +32,767. Cuando un underflow ocurre, el. . .
• Bit UN se establece.
• Archivo de interrupción del contador de alta velocidad (archivo de programa 4)
se ejecuta si la interrupción se habilita. El bit IV se establece y los bits IH, IL e
IN se restablecen.

Las tablas siguientes resumen los estados de entrada necesarios para que la acción
del contador de alta velocidad correspondiente se lleve a cabo:

Contador bidireccional (codificador [encoder])

Estado de entrada Acción del


Entrada A Entrada B Renglón contador de alta
(E/S) (I/1) HSC velocidad
A desactivado Desactivado Verdadero Conteo progres.
A desactivado Desactivado Verdadero Conteo regresivo
NA Activado NA Reten. de conteo
NA NA Falso Reten. de conteo

NA (no aplicable)

Contador bidireccional con restablecimiento y retención (codificador [encoder])

Estado de entrada
Acción del
Conteo de Dirección Restableci- Retención contador de alta
Renglón
entrada de entrada miento de de entrada velocidad
HSC
(E/S) (I/1) entrada (I/2) (I/3)
A desactivado Desactivado Desactivado Desactivado Verdadero Conteo progres.
A desactivado Desactivado Desactivado Desactivado Verdadero Conteo regresivo
Desactivado Retención de
NA Desactivado NA NA
o activado conteo
NA Activado Desactivado NA NA Reten. de conteo
NA NA Desactivado NA Falso Reten. de conteo
NA NA Desactivado Activado NA Reten. de conteo
Desactivado Desactivado ActivadoÀ NA NA Restablec. a 0

NA (no aplicable)
À El restablecimiento opcional del contador de alta velocidad de hardware es la coincidencia lógica de A x B x Z.

7–17
Manual de referencia del juego de instrucciones
Preface

Carga del contador de alta velocidad (HSL)


HSL
HSC LOAD
Esta instrucción le permite establecer los valores bajo y alto preseleccionados, las
Counter
Source
C5:0
(CU) fuentes baja y alta de salida y la máscara de salida. Cuando un valor alto o bajo
Length 5
(DN) preseleccionado se alcanza, usted puede actualizar inmediatamente las salidas
seleccionadas.

Si usa la instrucción HSL con el contador progresivo, el valor alto preseleccionado


debe ser ≥ 1 y ≤ +32,767 o de lo contrarior ocurrirá un error INVALID PRESETs
LOADED TO HIGH SPEED COUNTER (37H). Para los contadores bidireccionales,
el valor alto preseleccionado debe ser mayor que el valor bajo preseleccionado o de
lo contrarior ocurrirá un error INVALID PRESETs LOADED TO HIGH SPEED
COUNTER (37H).

El contador indincado por esta instrucción tiene la misma dirección que el contador
de instrucción HSC y se fija a C5:0.

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente es una dirección que identifica la primera de cinco palabras de datos
usadas por el HSL. La fuente puede ser un elemento de archivo de entero o
binario.
• La longitud es el número de elementos que comienzan de la fuente. Este
número siempre es 5.

Operación

La instrucción HSL le permite configurar el contador de alta velocidad para que


actualice instantánea y automáticamente las salidas externas cuando un valor alto o
bajo preseleccionado se alcanza. Las salidas físicas se actualizan automáticamente
en menos de 30 µs. (El tiempo de encendido físico de las salidas no se incluye en
este total.) Luego la imagen de salida se actualiza automáticamente a la próxima
encuesta para interrupciones del usuario o instrucción IOM, cualquiera que ocurra
primero.

Con esta instrucción, puede cambiar el valor alto preseleccionado para los
contadores progresivos o los valores alto y bajo preseleccionados para los
contadores bidireccionales durante la operación. Tambien puede modificar la
confinguración de máscara de salida durante la operación.

La dirección de fuente es un elemento de archivo de entero o binario. Por ejemplo,


si N7:5 se selecciona como la dirección de fuente, los parámetros adicionales para la
ejecución de esta instrucción aparecerían tal como se muestra en la tabla siguiente.

7–18
Cómo usar las instrucciones del contador de alta velocidad

Ubicación
Contador
de la Contadores
progresivo Descripción
imagen de bidireccionales
solamente
parámetro
Identifica qué grupo de bits en el archivo de
salida (palabra 0) es controlado.
Máscara de Máscara de 000F=bits 3–0
N7:5 00F0=bits 7–4
salida salida
0003=bits 0 y 1
00FF= bits 7–0

Fuente de Fuente alta de (Conteo progresivo.) El estado de bits en esta


N7:6 palabra se escribe a través de la máscara en
salida salida las salidas reales.
(Conteo progresivo.) Cuando el acumulador
Valor alto Valor alto alcanza este valor, la fuente de salida se
N7:7 preselec- preselec- escribe a través de la máscara de salida a las
cionado cionado salidas reales, y un escán se realiza de la
subrutina HSC (archivo 4).

Fuente baja de (Conteo regresivo.) El estado de bits en esta


N7:8 Reservado palabra se escribe a través de la máscara a las
salida salidas reales.
(Conteo progresivo.) Cuando el acumulador
Valor bajo alcanza este valor, la fuente de salida se
N7:9 Reservado preselec- escribe a través de la máscara de salida a las
cionado salidas reales y un escán se realiza de la
subrutina HSC (archivo 4).

Los bits en la máscara de salida corresponden directamente a las salidas físicas. Si


un bit se establece a 1, la salida correspondiente puede cambiarse por el contador de
alta velocidad. Si un bit se establece a 0, la salida correspondiente no puede ser
cambiada por el contador de alta velocidad.
Los bits en las fuentes alta y baja también corresponden directamente a las salidas
físicas. La fuente alta se aplica cuando el valor alto preseleccionado se alcanza. La
fuente baja se aplica cuando el valor bajo preseleccionado se alcanza. Los estados
de salida final se determinan aplicando la fuente de salida sobre la máscara y
actualizando solamente las salidas sin máscara (las que tienen un número 1 en la
configuración del bit de máscara).
Siempre puede cambiar el estado de las salidas por medio del programa del usuario o
el dispositivo de programación sin importar la máscara de salida. El contador de alta
velocidad sólo modifica salidas y bits de imagen de salida seleccionados según las
configuraciones de fuente y bit de máscara cuando los valores preseleccionados se
alcanzan. El último dispositivo que cambia la imagen de salida (por ej., el programa
del usuario o contador de alta velocidad) determina la configuración de salida real.
Los forzados anulan el control de salida desde el contador de alta velocidad o
desde la imagen de salida. Los forzados se pueden aplicar a las entradas del
contador de alta velocidad. Las entradas forzadas son reconocidas por el
contador de alta velocidad (por ej., una entrada de conteo forzada a
desactivado y activado incrementa el acumulador de alta velocidad).

7–19
Manual de referencia del juego de instrucciones
Preface

El hardware del contador de velocidad se actualiza inmediatemente cuando la


instrucción HSL se ejecuta sin importar el tipo de contador de alta velocidad
(contador progresivo o contador bidireccional). Para los contadores progresivos, no
se hace caso de los dos últimos registros ya que el valor bajo preseleccionado no se
aplica.

Si un fallo ocurre a causa de la instrucción HSL, los parámetros HSL no se cargan


en el hardware del contador de alta velocidad. Puede usar más de una instrucción
HSL en su programa. Las instrucciones HSL pueden tener ubicaciones de imagen
diferentes para los parámetros adicionales.

No cambie un valor preseleccionado y una fuente/máscara de salida con la


misma instrucción HSL cuando el acumulador se acerca al valor
preseleccionado anterior.

Si el contador de alta velocidad se habilita y la instrucción HSL se evalúa como


verdadera, los parámetros del contador de alta velocidad en la instrucción
HSL se aplican inmediatemente sin detener la operación del contador de alta
velocidad. Si la misma instrucción HSL se usa para cambiar la
máscara/fuente y valor preseleccionado controlados por el contador de alta
velocidad, la máscara/fuente se cambia primero y el valor preseleccionado se
cambia segundo. (El valor preseleccionado se cambia dentro de 40 µs después
de la máscara/fuente.) Si el valor preseleccionado original se alcanza después
de que la nueva máscara/fuente se aplique pero antes de que el valor
preseleccionado nuevo se aplique, las salidas nuevas se aplicarán
inmediatamente.

7–20
Cómo usar las instrucciones del contador de alta velocidad

Restablecimiento del contador de alta velocidad (RES)


C5:0 La instrucción RES le permite escribir un cero en el acumulador de hardware y en el
)
RES) acumulador de imagen.

El contador indicado por esta instrucción tiene la misma dirección que el contador
de instrucción HSC y se introduce como C0.

Operación

La ejecución de esta instrucción inmediatamente:


• elimina las interrupciones pendientes del contador de alta velocidad
• restablece los acumuladores de hardware e instrucción
• restablece los bits de estado PE, LS, OV, UN y DN
• carga el valor alto preseleccionado de instrucción y el valor alto
preseleccionado de hardware (si el contador de alta velocidad se ha configurado
como un contador progresivo)
• restablece los bits de estado IL, IT, IN o IV

Puede tener más de una instrucción RES en su programa.

7–21
Manual de referencia del juego de instrucciones
Preface

Acumulador de restablecimiento del contador de alta


velocidad (RAC)
RAC
RESET TO ACCUM VALUE
Esta instrucción le permite escribir un valor específico al acumulador de hardware y
Counter C5:0
Source al acumulador de imagen.

El contador indicado por esta instrucción tiene la misma dirección que el contador
de instrucción HSC y se fija a C5:0.

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• La fuente representa el valor que se carga en el acumulador. La fuente puede
ser una constante o una dirección.

Operación

La ejecución del RAC:


• elimina las interrupciones pendientes del contador de alta velocidad
• restablece los bits de estado PE, LS, OV UN y DN
• carga un valor de acumulador nuevo en la imagen de hardware e instrucción
• carga el valor alto preseleccionado de instrucción en el valor alto
preseleccionado de hardware (si el contador de alta velocidad se ha configurado
como un contador progresivo)
• restablece los bits de estado IL, IT, IN o IV

La fuente puede ser una constante o cualquier elemento entero en los archivos 0–7.
Los acumuladores de hardware e instrucción se actualizan con el valor de
acumulador nuevo inmediatamente al momento de ejecución de la instrucción.

Puede tener más de una instrucción RZC por programa indicando la misma fuente o
fuentes diferentes.

7–22
Cómo usar las instrucciones del contador de alta velocidad

Habilitación (HSE) e inhabilitación (HSD) de interrupción


del contador de alta velocidad
HSE
HSC INTERRUPT ENABLE
Estas instrucciones habilitan o inhabilitan la interrupción del contador de alta
COUNTER C5:0
velocidad cuando se alcanza un valor alto preseleccionado, un valor bajo
preseleccionado, un overflow o un underflow. Use el HSD y HSE conjuntamente
para proporcionar ejecución precisa a su aplicación.
HSD
HSC INTERRUPT DISABLE
COUNTER C5:0
El contador indicado por estas instrucciones tiene la misma dirección que el
contador de instrucción y se fija a C5:0.

Uso de HSE

Operación

Cuando la interrupción del contador de alta velocidad se habilita, la subrutina del


usuario (archivo de programa 4) se ejecuta cuando:
• Se alcanza un valor alto o bajo preseleccionado.
• Ocurre un overflow o underflow.

Cuando, en el modo de un solo escán de prueba y en una condición de operación


pasiva, la interrupción del contador de alta velocidad se retarda hasta que el próximo
disparo de escán se reciba del dispositivo de programación. El acumulador del
contador de alta velocidad cuenta durante el reposo.

El estado predeterminado de la interrupción del contador de alta velocidad se


habilita (el bit IE se establece a 1).

Si la rutina de interrupción del contador de alta velocidad se ejecuta y otra


interrupción del contador de alta velocidad ocurre, la segunda interrupción del
contador de alta velocidad se guarda pero se considera como pendiente. (El bit PE
se establece.) La segunda interrupción se ejecuta inmediatamente después que la
primera finalice su ejecución. Si una interrupción del contador de alta velocidad
ocurre mientras una interrupción del contador de alta velocidad está pendiente, se
perderá la interrupción del contador de alta velocidad más reciente y se establecerá
el bit LS.

7–23
Manual de referencia del juego de instrucciones
Preface

Uso de HSD

Operación

La instrucción HSD inhabilita la interrupción del contador de alta velocidad


evitando así que la subrutina de interrupción se ejecute.

Si el HSE se ejecuta después del establecimiento del bit pendiente, la interrupción se


ejecuta inmediatamente.

Esta instrucción HSD no cancela una interrupcion, sino que resulta en el


establecimiento del bit pendiente (C5:0/3) cuando:
• Se alcanza un valor alto o bajo preseleccionado.
• Ocurre un overflow o underflow.

Actualización del acumulador de imagen del contador


de alta velocidad (OTE)
C5:0 Cuando se direcciona una instrucción del bit OTE para el contador de alta velocidad
( )
UA (C5:0), causa que el bit UA se establezca. Cuando este bit se establece, el valor en
el acumulador de hardware se escribe al valor en el acumulador de imagen
(C5:0.ACC). Esto le proporciona acceso real al valor del acumulador de hardware.
Esto es adicional a la transferencia automática desde el acumulador de hardware
hacia el acumulador de imagen que ocurre cada vez que la instrucción HSC se
evalúa.

Operación

Esta instrucción transfiere el acumulador de hardware al acumulador de instrucción.


Cuando la instrucción OTE/UA se ejecuta como verdadera, el acumulador de
hardware se carga en el acumulador de imagen de instrucción (C5:0.ACC).

7–24
Cómo usar las instrucciones del contador de alta velocidad

Lo que ocurre con el HSC cuando pasa al modo de


marcha REM
Una vez inicializada, la instrucción HSC retiene su estado anterior cuando pasa por
un cambio de modo o la desconexión y reconexión de la alimentación eléctrica.
Esto significa que se retienen el acumulador HSC (C5:0.ACC) y los valores altos
preseleccionados. Las salidas bajo el control directo del HSC también retienen su
estado anterior. Los bits del valor bajo preseleccionado alcanzado y del valor bajo
preseleccionado alcanzado (Co/LP y C0/HP) también se retienen. Son examinados
por la instrucción HSC durante la primera evaluación verdadera del contador de alta
velocidad en el modo de marcha REM para diferenciar entre un modo de marcha
REM y una modificación externa o inicial del acumulador (C5:0.ACC).

A la primera ejecución verdadera de la instrucción HSC después del paso a marcha,


el valor bajo preseleccionado se inicializa a –32,768 y la máscara de salida y las
configuraciones de salida baja se incializan a cero. Use la instrucción HSL durante
el primer paso para restaurar cualesquier valores necesarios para su aplicación.

Puede modificar el comportamiento del contador de alta velocidad a la introducción


del modo de marcha REM ajustando los parámetros HSC antes de la primera
ejecución verdadera de la instrucción HSC. El siguiente ejemplo de renglones de
escalera demuestra las varias maneras de ajustar los parámetros HSC.

7–25
Manual de referencia del juego de instrucciones
Preface

Ejemplo 1

Para introducir el modo de marcha REM y hacer que las salidas HSC, ACC y
subrutina de interrupción reanuden su estado anterior, aplique lo siguiente:
(Renglón 2:0)
No requiere acción. (Recuérdese de que todas las instrucciones
OUT se ponen a cero cuando se introduce el modo de marcha REM.
Use las instrucciones SET/RST en lugar de las instrucciones
OUT en la lógica condicional que requier retención.)
| S:1 +HSL–––––––––––––––+ |
|––][–––––––––––––––––––––––––––––––––––+HSC LOAD +–|
| 15 |Counter C5:0| |
| |Source N7:0| |
| |Length 5| |
| +––––––––––––––––––+ |
Renglón 2:1
| +HSC––––––––––––––––––––+ |
|–––––––––––––––––––––––––––––+HIGH SPEED COUNTER +–(CU)–|
| |Type Encoder(Res,Hld) +–(CD) |
| |Counter C5:0+–(DN) |
| |High Preset 1000| |
| |Accum 0| |
| +–––––––––––––––––––––––+ |

7–26
Cómo usar las instrucciones del contador de alta velocidad

Ejemplo 2

Para introducir el modo de marcha REM y retener el valor HSC ACC mientras que
hace que las salidas HSC y la subrutina de interrupción se reanuden, aplique lo
siguiente:
Renglón 2:0
Desenclave los bits C5:0/HP y C5:0/LP durante el primer escán ANTES de
la ejecución de la instrucción HSC por primera vez.

| S:1 +HSL–––––––––––––––+ |
|––][––––––––––––––––––––––––––––––––––––––––––+HSC LOAD +– |
| 15 |Counter C5:0| |
| |Source N7:0| |
| |Length 5| |
| +––––––––––––––––––+ |

Renglón 2:1
| S:1 C5:0 |
|––][–––––––––––––––––––––––––––––––––––––––––––––––––––––+–(U)––+|––|
| 15 | HP | |
| | C5:0 | |
| +––(U)––+ |
| LP |

Renglón 2:2
| +HSC––––––––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––+HIGH SPEED COUNTER +–(CU)–|
| |Type Encoder (Res,Hld)+–(CD) |
| |Counter C5:0+–(DN) |
| |High Preset 1000| |
| |Accum 0| |
| +–––––––––––––––––––––––+ |

7–27
Manual de referencia del juego de instrucciones
Preface

Ejemplo 3

Para introducir el modo de marcha REM y hacer que el HSC ACC y la subrutina de
interrupción reanuden su estado anterior a la vez que se inicializan externamente las
salidas HSC, aplique lo siguiente:
Renglón 2:0
Desenclave o enclave los bits de salida bajo el control HSC durante el
primer escán después de la ejecución por primera vez de la instrucción
HSC. (Nota: usted podría colocar este renglón antes de la instrucción
HSC; sin embargo, no se recomienda.)

| S:1 +HSL–––––––––––––––+ |
|––][–––––––––––––––––––––––––––––––––––––––––––+HSC LOAD +–|
| 15 |Counter C5:0| |
| |Source N7:0| |
| |Length 5| |
| +––––––––––––––––––+ |

Renglón 2:1
| +HSC––––––––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––+HIGH SPEED COUNTER +–(CU)–|
| |Type Encoder (Res,Hld)+–(CD) |
| |Counter C5:0+–(DN) |
| |High Preset 1000| |
| |Accum 0| |
| +–––––––––––––––––––––––+ |

Renglón 2:2
Este renglón se programa con el conocimiento de una máscara HSL de
0007 (se usan salidas 0–2) e inicializa las salidas HSC a cada
introducción del modo de marcha REM. Las salidas O/0 y O/1 están
desactivadas mientras que la salida O/2 está activada.

| S:1 O:0 |
|––][––––––––––––––––––––––––––––––––––––––––––––––––––––+––(U)––+|––|
| 15 | 0 | |
| | O:0 | |
| +––(U)–––+ |
| | 1 | |
| | O:0 | |
| +––(L)–––+ |
| 2 |

7–28
Cómo usar las instrucciones del contador de alta velocidad

Instrucciones del contador de alta velocidad en el


ejemplo de aplicación de la perforadora de papel
Los renglones de escalera en esta sección demuestran el uso de la instrucción HSC
en el ejemplo de aplicación de la perforadora de papel iniciado en el capítulo 4.
Refiérase al apéndice G para obtener el ejemplo de aplicación entero de la
perforadora de papel.

Posición
original Perforadora activada/desactivada O:3/1
I:1/5 Retracción de perforadora O:3/2
Avance de perforadora O:3/3
Profundidad
perforadora Restablecimiento del sensor fotoeléctrico I:1/2
Orificios Retención de contador I:1/3
perforados I:1/4

Codificador (encoder) y drive Reflector


A-B de cuadratura fotoeléctrico
I:1/0 I:1/1
Habilitación de transportador cableada en serie al drive O:3/5
Arranque/detención de drive del transportador cableado en serie al drive O:3/0
20226

El archivo de programa principal (archivo 2) inicializa la instrucción HSC,


monitoriza los botones de arranque y parada de la máquina y llama otras subrutinas
necesarias para hacer funcionar la máquina. Refiérase a los comentarios que
preceden cada renglón para obtener información adicional.

7–29
Manual de referencia del juego de instrucciones
Preface
Renglón 2:0
Inicializa el contador de alta velocidad cada vez que el modo de marcha
REM se introduce. El área de datos del contador de alta velocidad
corresponde con la dirección de arranque (dirección de fuente) de la
instrucción HSL. La instrucción HSC se inhabilita durante cada entrada
en el modo de marcha REM hasta la primera vez que se ejecute como
verdadera. (El valor alto preseleccionado fue “enclavijado” a la
inicialización para evitar que una interrupción de valor alto
preseleccionado ocurra durante el proceso de inicialización.)
| Primer Máscara de salida |
| paso (use sólo el bit 0 |
| por ej. O:0/0) |
| S:1 +MOV–––––––––––––––+ |
|––––] [–––––––––––––––––––––––––––––––––––––+–+MOVE +–+–|
| 15 | |Source 1| | |
| | | | | |
| | |Dest N7:5| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | Conf. de salida alta| |
| | (desactiva O:0/0) | |
| | | |
| | +MOV–––––––––––––––+ | |
| +–+MOVE +–+ |
| | |Source 0| | |
| | | | | |
| | |Dest N7:6| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | Valor alto preselec.| |
| |(cuenta al próx. orif)| |
| | |
| | +MOV–––––––––––––––+ | |
| +–+MOVE +–+ |
| | |Source 32767| | |
| | | | | |
| | |Dest N7:7| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | Conf. de salida baja| |
| | (activa O:0/0 | |
| | a cada restab.) | |
| | |
| | +MOV–––––––––––––––+ | |
| +–+MOVE +–+ |
| | |Source 1| | |
| | | | | |
| | |Dest N7:8| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | Valor bajo preselec.| |
| | (causa valor bajo | |
| | preselec. inicial | |
| | a cada restab.) | |
| | |
| | +MOV–––––––––––––––+ | |
| +–+MOVE +–+ |
| | |Source 0| | |
| | | | | |
| | |Dest N7:9| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | | |

7–30
Cómo usar las instrucciones del contador de alta velocidad

| | | |
| | Contador alta veloc.| |
| | | |
| | +HSL–––––––––––––––+ | |
| + –+HSC LOAD +–+ |
| |Counter C5:0| |
| |Source N7:5| |
| |Length 5| |
| +––––––––––––––––––+ |

Los renglones 2.0 y 2.2 se requieren para escribir varios parámetros al área de archivo
de datos del contador de alta velocidad. Estos dos renglones están acondicionados
por el bit de primer paso durante un escán cuando el controlador va del programa
REM al modo de marcha REM.
Renglón 2:1
Esta instrucción HSC no se coloca en la subrutina de interrupción del
contador de alta velocidad. Si esta instrucción se colocara en la
subrutina de interrupción, el contador de alta velocidad nunca se
activaría ni se inicializaría (porque una interrupción debe ocurrir
primero para realizar un escán de la subrutina de interrupción del
contador de alta velocidad.
| Contador de alta velocidad|
| +HSC––––––––––––––––––––+ |
|––––––––––––––––––––––––––––––––––––––+HIGH SPEED COUNTER +–(CU)–|
| |Type Encoder (Res,Hld)+–(CD) |
| |Counter C5:0+–(DN) |
| |High Preset 1250| |
| |Accum 1| |
| +–––––––––––––––––––––––+ |
Renglón 2:2
Fuerza que ocurra una interrupción del valor bajo preseleccionado del
contador de alta velocidad a cada entrada al modo de marcha REM. Una
interrupción sólo puede ocurrir en la transición del acumulador del
contador de alta velocidad a un valor preseleccionado (restablecimiento
del acumulador a 1, y luego a 0). Esto se hace para permitir que los
secuenciadores de la subrutina de interrupción del contador de alta
velocidad se inicialicen. El orden de la inicialización del contador de
alta velocidad es: (1) carga de parámetros del contador de alta
velocidad (2) ejecución de la instrucción HSL (3) ejecución de la
instrucción HSC verdadera (4) (opcional) forzar que ocurra una
interrupción del contador de alta velocidad..
| Primer Contador de alta velocidad|
| paso |
| S:1 +RAC––––––––––––––––––+ |
|––––] [––––––––––––––––––––––––––––––––––+–+RESET TO ACCUM VALUE +–+–|
| 15 | |Counter C5:0| | |
| | |Source 1| | |
| | | | | |
| | +–––––––––––––––––––––+ | |
| | Contador de | |
| | alta velocidad | |
| | C5:0 | |
| +–––(RES)–––––––––––––––––+ |

7–31
Manual de referencia del juego de instrucciones
Preface

El contador de alta velocidad se usa para controlar la posición del transportador. El


contador de alta velocidad cuenta los impulsos proporcionados por el codificador
(encoder) del transportador vía las entradas I:0/0 e I:0.1 de hardware. Las entradas
I:0/2 (restablecimiento) e I:0/3 (retención) de hardware están conectadas a un
interruptor fotoeléctrico para asegurar que la instrucción HSC cuente únicamente los
impulsos de codificador (encoder) cuando haya un manual enfrente de la
perforadora y que el contador de alta velocidad se restablezca a la punta de cada
manual.

El contador de alta velocidad pone a cero el bit de salida de propulsión del


transportador cada vez que se alcanza un valor alto preseleccionado. Como
resultado, la unidad propulsora decelera y detiene el motor del transportador. El
contador de alta velocidad borra la entrada en microsegundos asegurando así
exactitud y repetibilidad.

El contador de alta velocidad establece el bit de salida de la unidad propulsora del


transportador (O:0/0) cada vez que un valor bajo preseleccionado se alcanza. Como
resultado, la unidad propulsora acelera y mantiene el motor del transportador.

Cuando el manual ha recorrido la distancia especificada establecida por el valor alto


preseleccionado del contador de alta velocidad, la subrutina de interrupción del
contador de alta velocidad indica al programa principal que realice la secuencia de
perforación. Para obtener más información respecto a la subrutina de interrupción
usada en este programa, refiérase al ejemplo de aplicación en el capítulo 9.

Este ejemplo usa el codificador (encoder) de cuadratura con la instrucción de


restablecimiento y retención. El acumulador del contador de alta velocidad
incrementa y decrementa según la relación de cuadratura de las entradas A y B
(I:0/0 e I:01) del codificador (encoder). El acumulador se pone a cero cuando el
restablecimiento está activado o cuando la instrucción RES se ejecuta. Todos los
valores preseleccionados se introducen como un offset relativo a la punta de un
manual. Los valores preseleccionados para las configuraciones de orificio se
almacenan en las instrucciones SQO. (Refiérase al capítulo 6 para obtener la
instrucción SQO.) La entrada de restablecimiento externo (I:0/2) del contador de
alta velocidad y la entrada de retención externa (I:0/3) están cableadas en paralelo
para evitar que el contador de alta velocidad cuente mientras el restablecimiento esté
activo.

Se pueden ajustar los retardos del filtro de entrada para las entradas A y B (I:0/0 e
I:0/1) del contador de alta velocidad así como las entradas de restablecimiento y
retención (I:0/2 e I:0/3) del contador de alta velocidad.

7–32
Cómo usar las instrucciones del contador de alta velocidad

Renglón 4:5
Ocurrió una interrupción debido al valor bajo preseleccionado
alcanzado.
| C5:0 +RET–––––––––––––––+–|
|––––][––––––––––––––––––––––––––––––––––––––––––+RETURN + |
| IL +––––––––––––––––––+ |
Renglón 4:6
Indica al programa principal (archivo 2) que inicialice la secuencia de
perforación. El contador de alta velocidad ya ha detenido el
transportador en la posición correcta usando sus datos de configuración
de salida del valor alto preseleccionado (borrar O:0/0). Esto ocurrió
microsegundos después de alcanzar el valor alto preseleccionado (justo
antes de introducir esta subrutina de interrupción del contador de alta
velocidad). La subrutina de secuencia de perforación restablece el bit
de inicio de secuencia de perforación y establece el bit de la unidad
propulsora del transportador (O:0/0) una vez finalizada la secuencia de
perforación.
| interrupción ocurrió | Inicio de secuencia de perforación |
| debido al valor alto | |
| preseleccionado alcanzado | |
| C5:0 B3 |
|––––] [––––––––––––––––––––––––––––––––––––––––––––––––––––––(L)–––––|
| IH 32 |
Renglón 4:7
| |
|–––––––––––––––––––––––––––––––+END+–––––––––––––––––––––––––––––––––|
| |

7–33
Manual de referencia del juego de instrucciones
Preface

7–34
Instrucciones de comunicación

8 Instrucciones de comunicación
Este capítulo contiene información general acerca de las instrucciones de
comunicación. Cada una de las instrucciones incluye información acerca de:
• cómo aparece el símbolo de instrucción
• cómo usar la instrucción
• un ejemplo de aplicación y diagramas de temporización

Además, la operación de la palabra de estado global (S:99) se proporciona.

Instrucciones de comunicación

Instrucción
Propósito Página
Mnemónico Nombre

MSG Lectura/escritura Esta instrucción transfiere datos desde un nodo 8–3


de mensaje hacia otro en la red de comunicación. Cuando la
instrucción se habilita, la transferencia de mensaje
está pendiente. La transferencia real de datos se
realiza durante el escán.
SVC Comunicaciones Cuando las condiciones que preceden la instrucción 8–60
de servicio SVC en el renglón son verdaderas, la instrucción
SVC interrumpe el escán de programa para ejecutar
la porción de comunicación de servicio del ciclo de
operación.

8–1
Manual de referencia del juego de instrucciones
Preface

Acerca de las instrucciones de comunicación


Use la instrucción de mensaje para enviar y recibir datos de otros procesadores y
dispositivos. Use la instrucción SVC para mejorar el rendimiento de comunicación
de su procesador.

En este capítulo se encuentra una descripción general antes de cada tipo de


instrucción:
• Instrucción de mensaje para el procesador SLC 5/02
• Instrucción de mensaje para los procesadores SLC 5/03 y SLC 5/04
• Instrucción de comunicación de servicio para el procesador SLC 5/02
• Instrucción de comunicación de servicio para los procesadores SLC 5/03
y SLC 5/04

8–2
Instrucciones de comunicación

Descripción general de
la instrucción de mensaje
3

MSG
READ/WRITE MESSAGE (EN) Esta es una instrucción de salida que le permite transferir datos desde un nodo hacia
Read/write (DN)
Target Device
Control Block
(ER) otro por la red DH-485. El procesador SLC 5/02 puede dar servicio a una
Control Block Length 7
instrucción de mensaje en cualquier momento, aunque el procesador puede retener
varios mensajes “habilitados y en espera”. Los mensajes en espera reciben servicio
Instrucción de salida
uno a la vez en orden secuencial (primero que llega, primero que sale)

Operación

La instrucción se puede programar como mensaje de escritura o lectura. El


dispositivo receptor puede ser otro procesador SLC 500 en la red, o un dispositivo
que no sea SLC 500, usando el archivo común de interface (archivo 9 485CIF en los
procesadores SLC 500). El protocolo 485CIF también se usa para los mensajes de
tipo PLC-2.

Los datos asociados con una instrucción de escritura de mensaje no se envían


cuando usted habilita la instrucción. En cambio, se envían al final del escán o
cuando una instrucción de comunicación de servicio (SVC) o regeneración (REF) se
habilita en su programa de escalera. En algunos casos esto significa que debe
guardar en un búfer los datos en su aplicación.

Cuando selecciona el SLC-500 como el dispositivo receptor, la comunicación se


puede realizar entre:
• un procesador SLC 5/02 y cualquier otro procesador de la familia SLC 500
• un procesador SLC 5/03 y cualquier otro procesador de la familia SLC 500
• un procesador SLC 5/04 y cualquier otro procesador de la familia SLC 500

8–3
Manual de referencia del juego de instrucciones
Preface

Bits del archivo de estado relacionados

Hay tres bits del archivo de estado que están relacionados con la instrucción MSG:
• Bit de comando entrante pendiente (S:2/5) – Este bit se establece cuando el
procesador determina que otro nodo en la red ha solicitado información o le ha
proporcionado un comando. Este bit se puede establecer en cualquier momento.
Este bit se pone a cero cuando el procesador atiende la solicitud (o comando).
Use este bit como condición de una instrucción SVC para mejorar la capacidad
de comunicación de su procesador.
• Bit de respuesta de mensaje pendiente (S:2/6) – Este bit se establece cuando
otro nodo en la red ha proporcionado la información que solicitó en la
instrucción MSG de su procesador. Este bit se pone a cero cuando el
procesador almacena la información y actualiza su instrucción MSG.
Use este bit como condición de una instrucción SVC para mejorar la capacidad
de comunicación de su procesador.
• Bit de comando de mensaje saliente pendiente (S:2/7) – Este bit se establece
cuando uno o más mensajes en su programa se habilitan y esperan, pero no hay
un mensaje que se esté transmitiendo en este momento. Tan pronto comienza la
transmisión de un mensaje, el bit se pone a cero. Después de la transmisión, el
bit se vuelve a establecer si hay más mensajes en espera, o permanece en cero si
no hay más mensajes en espera.
Use este bit como condición de una instrucción SVC para mejorar la capacidad
de comunicación de su procesador.

Es posible que desee usar el bit S:2/15, selección de servicio de comunicaciones.


Refiérase al apéndice B en este manual para obtener más información.

8–4
Instrucciones de comunicación

Opciones de configuración disponibles

Las siguientes opciones de configuración están disponibles con el procesador


SLC 5/02:
• Lectura/escritura de dispositivos semejantes en una red local a otro procesador
SLC 500
• Lectura/escritura de dispositivos semejantes en una red local a un 485CIF
(emulación PLC2)

Refiérase al apéndice D para obtener parámetros válidos al programar la instrucción


de mensaje.

Cómo introducir parámetros

Después de colocar la instrucción MSG en un renglón, especifique si el mensaje es


de lectura o escritura. Luego especifique el dispositivo receptor y el bloque de
control para la instrucción MSG.
• Lectura/escritura – La lectura indica que el procesador local (el procesador en
que se encuentra la instrucción) está recibiendo datos; la escritura indica que el
procesador está enviando datos.
• El dispositivo receptor identifica el tipo de dispositivo que recibirá los datos.
Las opciones válidas son:

– 500CPU, si el dispositivo recpetor es otro procesador SLC

– 485CIF, si el dispositivo receptor es un procesador que no sea SLC


(emulador PLC2)
• El bloque de control es una dirección de archivo de entero que usted
selecciona. Es un archivo de 7 elementos que contiene los bits de estado, la
dirección del archivo receptor y otros datos asociados con la instrucción de
mensaje.
• La longitud del bloque de control se fija a siete elementos. Este campo no se
puede modificar.

Nota La longitud del bloque de control MSG incrementa de 7 a 14 palabras al


cambiarse de un programa de procesador SLC 5/02 a un programa de
procesador SLC 5/03 ó SLC 5/04. Asegúrese que haya un mínimo de 7
palabras no usadas siguientes cada bloque de control MSG en su programa.

8–5
Manual de referencia del juego de instrucciones
Preface

Uso de los bits de estado

Read/Write: READ ignore if timed out: 0 TO


Target Device: 500CPU to be retried: 0 NR
Control Block: N7:0 awaiting execution: 0 EW
Local Destination File Address: ***
Target Node: 0 error: 0 ER
Target File Address: *** message done: 0 DN
Message Length in elements *** message transmitting: 0 ST
message enabled: 0 EN

control bit address: N7:0/8

ERROR CODE: 0
Error Code Desc:

La columna derecha en la ilustración de arriba indica los diversos bits de estado


asociados con la instrucción MSG del SLC 5/02.
• Bit de tiempo sobrepasado TO (bit 08) Puede establecer este bit en su
aplicación para eliminar una instrucción de mensaje activo del control del
procesador. La aplicación debe proporcionar su propio valor de límite de
tiempo sobrepasado. Un ejemplo aparecen la página 8–15.
• El bit no respuesta NR (bit 09) se establece si el procesador receptor no
responde a la primera solicitud de mensaje. El bit NR se restablece cuando el
bit ER, DN o ST se establece.
• El bit habilitado y en espera EW (bit 10) se establece después de que el bit
de habilitación se ha establecido y el mensaje está en espera de ser enviado.
• El bit de error ER (bit 12) se establece cuando la transmisión de mensaje está
con fallo. El bit ER se restablece la próxima vez que el renglón asociado va de
falso a verdadero.
• El bit de efectuado DN (bit 13) se establece cuando el mensaje se ha
transmitido exitosamente. El bit DN se restablece la próxima vez que el renglón
asociado va de falso a verdadero.
• El bit de arranque ST (bit 14) se establece cuando el procesador acusa recibo
desde el dispositivo receptor. El bit ST se restablece cuando el bit DN, ER o
TO se establece.
• El bit de habilitación EN (bit 15) se establece cuando las condiciones del
renglón se hacen verdaderas y la instrucción se ejecuta. Permanece establecido
hasta que la transmisión de mensaje se finaliza y el renglón se hace falso.

8–6
Instrucciones de comunicación

Diagrama de temporización para una instrucción MSG


exitosa del SLC 5/02
La sección siguiente describe el diagrama de temporización para una instrucción
MSG del SLC 5/02.

El renglón se El nodo receptor El nodo receptor procesa el


hace verdadero. recibe el paquete. paquete exitosamente y retor-
na los datos (lectura) o escribe
À Á Â los datos (éxito). Ä

1
EN 0

1
EW
0
1
ST 0

1
DN 0
1
ER 0
1
NR 0
1
TO 0

1. Cuando el renglón MSG se hace verdadero y el MSG es escaneado, el bit EN se


establece y permanece establecido hasta que el bit DN, ER o TO se establezca.
El bit EW está establecido, lo que indica que la instrucción MSG ha sido
colocada en la cola MSG. (El procesador SLC 5/02 siempre tiene espacio en la
cola MSG.) La cola trabaja en base al concepto primero en llegar–primero en
salir y así permite al procesador recordar el orden en que las instrucciones MSG
se habilitaron. Anote que el programa no tiene acceso a la cola MSG del SLC
5/02.

2. En el siguiente final de escán o instrucción de comunicación de servicio (SVC),


el procesador SLC 5/02 determina si debe examinar la cola MSG en busca de
una tarea. El procesador toma una decisión según el estado de bit S:2/15, las
solicitudes de comunicación DH-485 de otros nodos y si hay otra instrucción
MSG anterior en ejecución. Si el procesador 5/02 determina que no debe
acceder a la cola, los bits EN y EW permanecen establecidos hasta el próximo
final de escán o SVC.

8–7
Manual de referencia del juego de instrucciones
Preface

Si el procesador SLC 5/02 determina que hay una tarea de hacer, usa la primera
entrada de la cola de mensaje para construir un paquete DH-485. Si un paquete
se puede construir exitosamente, se coloca en el búfer de transmisión. Si un
paquete no se puede construir con éxito, el bit ER se establece y un código se
coloca en el bloque MSG para informarle del error.

Si ésta fuera una instrucción de escritura MSG, los datos de fuente serían
transferidos al búfer de transmisión en este momento.

Luego el procesador SLC 5/02 sale del final de escán o la porción SVC del
escán. La función de comunicación de fondo del procesador envía el paquete
transmitido con búfer al nodo receptor que ha especificado en su instrucción
MSG.

3. Si el nodo receptor recibe exitosamente el paquete DH-485, envía un ACK


(acuse de recibo). El ACK causa que el procesador ponga a cero el bit EW y
establezca el bit ST. Observe que el nodo recpetor todavía no ha examinado el
paquete DH-485 para determinar si entiende su solicitud.

Una vez establecido el bit ST, el procesador espera infinitamente una respuesta
del nodo receptor. No es necesario que el nodo receptor responda dentro de un
plazo de tiempo determinado. En este momento no se dará servicio a ninguna
instrucción MSG.
Nota Si el nodo receptor está con fallo o desconecta y vuelve a conectar la
alimentación eléctrica durante el plazo de tiempo de una transacción MSG,
usted nunca recibirá una respuesta. Es por eso que se recomienda el uso de una
instrucción de temporizador conjuntamente con el bit TO. Refiérase al ejemplo
en la página 8–15.

El paso 4 no se muestra en el diagrama de temporización.

4. Si no recibe un ACK, el paso 3 no ocurre. Un NAK (ningún acuse de recibo) se


recibe en su lugar. Cuando esto ocurre, el bit ST permanece puesto a cero. Un
NAK indica que:
• el nodo receptor no existe,
• no responde,
• está demasiado ocupado o
• recibe un paquete DH-485 alterado.
Cuando un NAK ocurre, el bit EW se pone a cero y el bit NR se establece
durante un escán. La próxima vez que la instrucción MSG es escaneada, el bit
ER se establece y el bit NR se pone a cero. Esto indica que la instrucción MSG
está con fallo. Observe que si el nodo receptor está demasiado ocupado, el bit
ER no se establece. En cambio, la instrucción MSG vuelve a hacer cola para la
retransmisión.

8–8
Instrucciones de comunicación

5. Después del recibo exitoso del paquete, el nodo receptor envía un paquete de
respuesta. El paquete de respuesta contendrá una de las respuestas siguientes:
• He realizado exitosamente su solicitud de escritura.
• He realizado exitosamente su solicitud de lectura y le presento aquí los
datos.
• No he realizado su solicitud; tiene un error.
Al próximo final de escán o SVC, después de la respuesta del nodo receptor, el
procesador SLC 5/02 examina el paquete DH-485 del dispositivo receptor. Si la
respuesta contiene “He realizado exitosamente su solicitud de escritura”, el bit
DN se establece y el bit ST se pone a cero. La función de la instrucción MSG
ha sido completada. Si el renglón MSG es falso, el bit EN se pone a cero la
próxima vez que la instrucción MSG es escaneada.

Si la respuesta contiene “He realizado exitosamente su solicitud de lectura y le


presento aquí los datos”, los datos se escriben a la tabla de datos, el bit DN se
establece y el bit ST se pone a cero. La función de la instrucción MSG ha sido
completada. Si el renglón MSG es falso, el bit EN se pone a cero la próxima
vez que la instrucción MSG es escaneada.

Si la respuesta contiene “No he realizado su solicitud; tiene un error”, el bit ER


se establece y el bit ST se pone a cero. La función de la instrucción MSG ha
sido completada. Si el renglón MSG es falso, el bit EN se pone a cero la
próxima vez que la instrucción MSG es escaneada.

Configuración del bloque de control

La configuración del bloque de control se ilustra abajo si usted selecciona un


500CPU como el dispositivo receptor:

Configuración del bloque de control – 500CPU


15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Pal.
EN ST DN ER EW NR TO Error Code 0
Node Number 1
Reserved for length in words 2
File Number 3
File Type (S, B, T, C, R, N) 4
Element Number 5
Reserved 6

8–9
Manual de referencia del juego de instrucciones
Preface

La configuración del bloque de control se ilustra abajo si usted selecciona un 485


CIF como el dispositivo receptor:

Configuración del bloque de control – 485 CIF


15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Pal.
EN ST DN ER EW NR TO Error Code 0
Node Number 1
Reserved for length in words 2
Offset words 3
Not used 4
Not used 5
Not used 6

8–10
Instrucciones de comunicación

Ejemplos de aplicación para procesadores SLC 5/02

Ejemplo 1

El ejemplo de aplicación 1 muestra cómo puede implementar la operación continua


de una instrucción de mensaje.

B3 MSG
0 ] [ READ/WRITE MESSAGE (EN)
1 Read/write WRITE
Target Device 500CPU (DN)
Control Block N7:0
Control Block Length 7 (ER)

N7:0 N7:0 * bit de estado de


1 ] [ (U) la instrucción
13* 15* MSG
N7:0 12 = ER
] [ 13 = DN
12* 15 = EN
2 END

Notas de operación
El bit B3/1 habilita la instrucción MSG. Cuando el bit de efectuado de la
instrucción MSG se establece, desenclava el bit de habilitación MSG para
que la instrucción MSG se habilite en el próximo escán. Esto proporciona
operación continua.
El bit de error MSG también desenclavará el bit de habilitación. Esto
proporciona operación continua pese a los errores.

8–11
Manual de referencia del juego de instrucciones
Preface

Ejemplo 2 – Archivo de programa 2 del procesador SLC 5/02

El ejemplo de aplicación 2 involucra un procesador SLC 5/02 y un procesador SLC


5/01 comunicándose en una red DH-485. El enclavamiento se proporciona para
verificar la transferencia de datos y para detener ambos procesadores en el caso de
fallo de comunicación.

Un dispositivo de detección de temperatura, conectado como entrada al procesador


SLC 5/02, controla la operación activada/desactivada de un ventilador de
enfriamiento, conectado como salida al procesador SLC 5/01. Los programas de
escalera de SLC 5/02 y SLC 5/01 se explican en la figura en la página 8–14.

8–12
Instrucciones de comunicación

I:1.0 N7:0 Bit 1 de la palabra


0 ] [ ( ) de mensaje. Usado
Dispositivo de 5 1 para el control del
entrada de sensor de S:1 T4:0 ventilador.
temperatura 1 ] [ (RES)
15
Bit de primer paso
N7:0 Bit 0 de la palabra
(L) de mensaje. Este
0 es el bit de
B3 enclavamiento.
(U)
0
TON
TIMER ON DELAY (EN)
2
Timer T4:0
Temporizador de 4
Time Base 0.01 segundos
(DN)
Preset 400
Accum 0
Bit de primer paso
S:1 MSG
READ/WRITE MESSAGE Instrucción de escritura
3 ] [ (EN)
15 Read/write WRITE de mensaje. Las
Target Device 500CPU (DN) direcciones del archivo
S:4 Control Block N10:0
] [ Control Block Length 7 (ER) de fuente y receptor son
6 N7:0
Nodo receptor: 3
Bit de reloj de 1280 ms B3 B3 Longitud del mensaje: 1
] [ (L)
0 palabra.
0
N10:0 MSG Instrucción de lectura de
4 ] [ READ/WRITE MESSAGE (EN) mensaje. Las direcciones
Read/write READ
13*
Target Device 500CPU
del archivo de destino y
Bit de efectuado de (DN)
Control Block N11:0 receptor son N7:0
escritura de mensaje Control Block Length 7 (ER) Nodo receptor: 3
Longitud del mensaje: 1
palabra.
T4:0 B3
5 ] [ (L) Enclavamiento – Esta
DN 10 instrucción de alarma
notifica a la aplicación
N11:0 N7:0 T4:0 si el bit de enclava-
6 ] [ ]/[ (RES) miento N7:0/0
13* 0 permanece
N7:0
Bit de efectuado (U) establecido durante
de lectura de 0 más de 4 segundos.
mensaje
B3
(U) * Bits de estado de la
0 instrucción MSG:
N11:0 13 = DN
(U) 15 = EN
15*
N10:0
(U)
15*
7 END

Las notas de operación aparecen en la página siguiente.

8–13
Manual de referencia del juego de instrucciones
Preface

Archivo de programa 2 del procesador SLC 5/01 a nodo 3


S:1 N7:0 Bit 0 de la palabra de
0 ] [ (U) mensaje. Este es el bit
15 0 de enclavamiento.
Bit de primer paso T4:0
(RES)
TON
1 TIMER ON DELAY (EN) Temporizador de 4
Timer T4:0
Time Base 0.01
segundos
(DN)
Preset 400
Accum 0

T4:0 B3
2 ] [ (L) Instrucción de
DN 10 enclavamiento – Esta
alarma notifica a la
N7:0 B3 B3 aplicación si el bit de
3 ] [ [OSR] ( )
0 0 1
enclavamiento N7:0/0 no
se establece después de
B3 N7:0 4 segundos.
4 ] [ (U)
1 0
T4:0
Bit 1 de la palabra de (RES)
mensaje. Usado para O:1/0 activa el
N7:0 O:1.0 ventilador de
control del ventilador. 5 ] [ ( )
1 0 enfriamiento.

6 END

Notas de operación acerca de los programas SLC 5/02 y SLC 5/01


Parámetros de instrucción de mensaje: N7:0 es la palabra de Procesador SLC 5/02: N7:0/0 está enclavado; el temporizador
mensaje. Es la dirección de archivo receptor (procesador T4:0 está restablecido, B3/0 está desenclavado (renglón 1) y
SLC 5/01) y la fuente local y direcciones de destino (procesador luego enclavado (renglón 3). El procesador SLC 5/01: N7:0/0
SLC 5/02) en las instrucciones de mensaje. está desenclavado; el temporizador T4:0 está restablecido.
N7:0/0 de la palabra de mensaje es el bit de enclavamiento; se Operación de instrucción de mensaje: La instrucción de
escribe al procesador 5/01 como 1 (establecido) y se lee del escritura de mensaje en el procesador SLC 5/02 se inicia cada
procesador SLC 5/01 como 0 (restablecido). 1280 ms por el bit de reloj S:4/5. El bit de efectuado de la
instrucción de escritura de mensaje inicia la instrucción de
N7:0/1 de la palabra de mensaje controla la operación del lectura de mensaje.
ventilador de enfriamiento; se escribe al procesador SLC 5/01
como 1 (establecido) si se requiere enfriamiento o como 0 B3/0 enclava la instrucción de escritura de mensaje. B3/0 se
(restablecido) si no se requiere enfriamiento. Se lee del desenclava cuando el bit de efectuado de la instrucción de
procesador SLC 5/01 como 1 ó 0. lectura de mensaje se establece, siempre que el bit de
enclavamiento N7:0/0 esté restablecido.
Palabra N7:0 debe tener un valor de 1 ó 3 durante la ejecución
de escritura de mensaje. N7:0 debe tener un valor de 0 ó 2 Fallo de comunicación: En el procesador SLC 5/02, el bit B3/10
durante la ejecución de lectura de mensaje. se establece si el bit de enclavamiento N7:0.0 permanece
establecido (1) durante más de 4 segundos. En el procesador
Inicialización de programa: El bit de primer paso S:1/15 SLC 5/01, el bit B3/10 se establece si el bit de enclavamiento
inicializa los programas de escalera en la entrada al modo de N7:0/0 permanece establecido (1) durante más de 4 segundos.
marcha. Su aplicación puede detectar este evento, tomar la acción
apropiada y luego desenclavar el bit B3/10.

8–14
Instrucciones de comunicación

Ejemplo 3
El ejemplo de aplicación 3 le muestra cómo usar el bit de límite de tiempo
sobrepasado para inhabilitar una instrucción de mensaje activa. En este ejemplo,
una salida se activa después de cinco ensayos fallidos (duración de dos segundos)
para transmitir un mensaje.
1 B3 MSG
0 [LBL] ] [ READ/WRITE MESSAGE (EN)
1 Read/write WRITE (DN)
Target Device 500CPU (ER)
B3/1 está enclavado Control Block N7:0
Control Block Length 7
(externo de este
ejemplo) para iniciar la
B3 T4:0 TON
instrucción de 1 ] [ ]/[ TIMER ON DELAY (EN)
mensaje. 1 DN Timer T4:0 Temporizador de 2
(DN)
Time Base 0.01 segundos. Cada ensayo
Preset 200 de transmisión tiene una
Accum 0
duración de 2 segundos.
T4:0 CTU
2 ] [ COUNT UP (CU)
Counter C5:0 El contador permite 5
DN ensayos.
Preset 5 (DN)
Accum 0

N7:0 N7:0 CLR


3 ] [ ] [ CLEAR Borre la palabra de
8* Dest N7:0
12 0
control y salte hacia atrás
a renglón 0 para otro
ensayo.
1
(JMP)

T4:0 N7:0 N7:0/8 es el bit de límite


4 ] [ (L) de tiempo sobrepasado
DN 8 de la instrucción de
mensaje (/TO)
C5:0 O:1.0
5 ] [ (L) El quinto ensayo enclava
DN 0 O0:1/0.

N7:0 C5:0
6 ] [ (RES) * Bits de estado de la
13* instrucción MSG:
O:1.0
(U) 8 = TO
0 13 = DN
B3
(U)
1
7 END

Notas de operación
El bit de límite de tiempo sobrepasado se enclava (renglón 4) Un ensayo exitoso de transmisión restablece el contador,
después de 2 segundos. Esto borra la instrucción de mensaje del desenclava O:1/0 y desenclava B3/1.
control de procesador en el próximo escán. Luego la instrucción
de mensaje vuelve a habilitarse para el segundo ensayo de
transmisión. Después de 5 ensayos, O:1/0 se enclava.

8–15
Manual de referencia del juego de instrucciones
Preface

Ejemplo 4

El ejemplo de aplicación 4 le muestra como vincular las instrucciones de mensaje


para transmitir en serie, uno tras otro. En este ejemplo una escritura MSG es
seguida por una lectura MSG, lo que provoca la transmisión en serie.

8–16
Instrucciones de comunicación

Este renglón comienza a enviar mensajes a cada entrada el modo de marcha REM o RUN poniendo a cero el bit EN de la
primera instrucción MSG. N7:0
S:1
Renglón 2:0 ] [ (U)
15 15
Este renglón establece el valor de límite de tiempo sobrepasado. (Cuando se usa un procesador SLC 5/03 ó SLC
5/04, este renglón y renglón 2:2 no son necesarios porque puede introducir el valor 6 en el campo de valor del
límite de tiempo sobrepasado en el bloque de instrucción MSG.)
N7:0 N7:0 N7:0 TON
Renglón 2:1 ] [ ]/[ ]/[ TIMER ON DELAY (EN)
15 12 13 Timer T4:0 (DN)
Time Base 0.01
Preset 600
Accum 0

T4:0 N7:0
] [ (L)
DN 8
Idéntico al renglón anterior.
N7:20 N7:20 N7:20 TON
Renglón 2:2 ] [ ]/[ ]/[ TIMER ON DELAY (EN)
15 12 13 Timer T4:1 (DN)
Time Base 0.01
Preset 600
Accum 0

T4:1 N7:20
] [ (L)
DN 8

La instrucción MSG se activa a la entrada al modo de marcha REM o RUN. No se requieren condiciones de entrada.
MSG
Renglón 2:3 READ/WRITE MESSAGE (EN)
Read/write WRITE (DN)
Target Device 500CPU (ER)
Control Block N7:0
Control Block Length 7

La instrucción MSG se activa cuando la instrucción MSG anterior se finaliza.


N7:0 MSG
Renglón 2:4 ] [ READ/WRITE MESSAGE (EN)
12 Read/write READ (DN)
Target Device 500CPU (ER)
N7:0 Control Block N7:20
] [ Control Block Length 7
13

Este renglón restablece todas las instrucciones MSG cuando la última instrucción MG se ha finalizado. La
palabra de control se borra para asegurar que los bits EN, DN, ER y TO se pongan a cero.
N7:20 CLR
] [ CLEAR
Renglón 2:5 Dest N7:0
12 0

N7:0
] [
CLR
13 CLEAR
Dest N7:20
0

Renglón 2:6 END

8–17
Manual de referencia del juego de instrucciones
Preface

Descripción general de la
instrucción de mensaje
3 3

MSG
READ/WRITE MESSAGE
Type
(EN) Los datos asociados con una instrucción de escritura de mensaje se almacena en un
Read/write
Target Device
(DN)
(ER)
búfer cuando usted habilita la instrucción. El SLC 5/03 con OS300 tiene cuatro
Local/Remote
Control Block
búferes de transmisión. El SLC 5/03 con procesadores OS301, OS302 y SLC 5/04
Control Block Length 14
con procesadores OS400, OS401 dan servicio a un máximo de cuatro instrucciones
de mensaje por canal para un máximo de ocho instrucciones de mensaje.
Instrucción de salida

Operación
SLC 5/03 OS300 – Si una instrucción MSG ha entrado en uno de los cuatro búferes
de transmisión “independientes del canal” y está esperando ser transmitida, su
bloque de control tendrá los bits de estado EN y EW establecidos. Si más de cuatro
instrucciones MSG se habilitan a la vez, una cola de overflow “dependiente del
canal” se usa para almacenar los bloques de encabezado de instrucción MSG (no los
datos para una escritura MSG) a partir de la quinta instrucción hasta la
décimocuarta.

SLC 5/03 con OS301, OS302 y SLC 5/04 con OS400, OS401 – Si una instrucción
MSG ha entrado en uno de los cuatro búferes de transmisión “dependientes del
canal” y está esperando ser transmitida, su bloque de control tendrá los bits de
estado EN y EW establecidos. Si más de cuatro instrucciones MSG para aquel canal
se habilitan a la vez, una cola de overflow “dependiente del canal” se usa para
almacenar los bloques de encabezado de instrucción MSG (no los datos para una
escritura MSG) a partir de la quinta instrucción a la décimocuarta.

Esta instrucción, la cual hace cola en orden FIFO, tendrá el bit de estado de bloque
de control EN establecido. Si más de 14 instrucciones MSG se habilitan a la vez
para un solo canal, el bit de estado de bloque de control WQ se establece ya que es
posible que no haya espacio disponible para poner la instrucción en cola. Esta
instrucción se debe a volver a escanear hasta que haya espacio en la cola de
overflow.
Nota Si habilita sistemáticamente más instrucciones MSG que las que pueden recibir los
búferes, el orden en que las instrucciones MSG hacen en cola es determinado por el
orden en que son escaneadas. Esto significa que las instrucciones MSG más
cercanas del inicio del programa hacen cola regularmente y las instrucciones MSG
más adelantes del programa pueden no entrar en la cola.

Puede usar el control de límite de tiempo sobrepasado semejante a la instrucción


MSG del SLC 5/02 ó puede usar el control de límite de tiempo sobrepasado
incorporado. Si el valor del límite de tiempo sobrepasado se establece a 0, lo que
constituye el valor predeterminado, la funcionabilidad es semejante a la instrucción
MSG del SLC 5/02. La diferencia de ésta es que el renglón se debe volver a
escanear después del establecimiento del bit TO. Luego debe restablecer el bit TO y
volver a ejecutar la instrucción MSG. Le recomendamos que establezca el valor del
límite de tiempo sobrepasado interno a un número que no sea 0.

8–18
Instrucciones de comunicación

Cuando usa un procesador SLC 5/03 ó SLC 5/04, la instrucción de mensaje:


• inicia lecturas y escrituras a través de canal 0 del RS-232 cuando es configurado
para los protocolos siguientes:

– Punto a punto DF1

– Esclavo DF1

– DH-485, o
• inicia lecturas y escrituras a través de:

– canal 1 de DH-485 (procesadores SLC 5/03 únicamente)

– canal 1 de DH+ (procesadores SLC 5/04 únicamente)

Bits del archivo de estado relacionados


Canal 1 Canal 0
S:2/5 Comando entrante pendiente S:33/0 Comando entrante pendiente
S:2/6 Respuesta de mensaje pendiente S:33/1 Respuesta de mensaje pendiente
S:2/7 Comando de mensaje saliente S:33/2 Comando de mensaje saliente
pendiente pendiente
S:2/15 Selección de servicio de S:33/5 Selección de servicio de
comunicaciones comunicaciones
S:33/7 Selección de servicio de mensaje S:33/6 Selección de servicio de mensaje

Refiérase al apéndice B en este manual para obtener más información acerca de los
bits del archivo de estado de mostrados previamente.

8–19
Manual de referencia del juego de instrucciones
Preface

Opciones de configuración disponibles

Las siguientes opciones de configuración están disponibles cuando se usa un


procesador SLC 5/03 ó SLC 5/04. Refiérase al apéndice D para obtener parámetros
válidos al programar la instrucción de mensaje.
• Lectura/escritura de dispositivos semejantes en una red local a otro procesador
SLC 500
• Lectura/escritura de dispositivos semejantes en una red local a un 485CIF
• Lectura/escritura de dispositivos semejantes en una red local a un PLC-5 À
• Lectura/escritura de dispositivos semejantes en una red remota a otro
procesador SLC 500
• Lectura/escritura de dispositivos semejantes en una red remota a un 485CIF
(emulación PLC2)
• Lectura/escritura de dispositivos semejantes en una red remota a un procesador
PLC-5 À
À Se aplica a los procesadores SLC 5/03 OS301, OS302 y SLC 5/04 OS400, OS401.

8–20
Instrucciones de comunicación

Cómo introducir parámetros

Introduzca los parámetros siguientes al programar esta instrucción:


• Lectura/escritura – La lectura indica que el procesador local (el procesador en
que se encuentra la instrucción) está recibiendo datos; la escritura indica que
está enviando datos.
• El dispositivo receptor identifica el tipo de dispositivo que recibirá datos. Las
opciones válidas son:

– el 500CPU si el dispositivo receptor es otro procesador SLC

– el 485CIF si el dispositivo receptor es un dispositivo que no sea SLC en la


red DH-485

– el PLC-5 si el dispositivo receptor acepta comandos PLC-5

• Local o remoto identifica si el mensaje es enviado a un dispositivo en una red


local DH-485 ó DH+, o a un dispositivo remoto en otra red a través de un
puente. Las opciones válidas son:

– Local si el dispositivo receptor se encuentra en una red local

– Remoto si el dispositivo receptor se encuentra en una red remota

• El bloque de control es una dirección de archivo de entero que usted


selecciona. Es un archivo de entero de 14 palabras que contiene bits de estado,
dirección de archivo receptor y otros datos asociados con la instrucción de
mensaje.
• La longitud del bloque de control se fija a 14 elementos. Este campo no se
puede modificar.

Nota La longitud del bloque de control MSG incrementa de 7 a 14 palabras al


cambiarse de un programa de procesador SLC 5/02 a un programa de
procesador SLC 5/03 ó SLC 5/04. Asegúrese que haya un mínimo de 7
palabras no usadas después de cada bloque de control MSG en su programa.

8–21
Manual de referencia del juego de instrucciones
Preface

Uso de los bits de estado

La columna derecha en la ilustración siguiente alista los varios bits de estado


asociados con la instrucción SLC 5/03 y SLC 5/04.

Type: Peer–to–Peer
Read/Write: READ ignore if timed out: 0 TO
Target Device: 500CPU to be retried: 0 NR
Local/Remote: Local awaiting execution: 0 EW
Control Block: N10:0 continuous run: 0 CO
Channel: 1 error: 0 ER
Target Node: 2 message done: 0 DN
message transmitting: 0 ST
message enabled: 0 EN
Destination File Addr: N7:0 waiting for queue space: 0 WQ
Target Source File Address: N7:50
Message Length In Elements: 10
Message Timeout (seconds): 5

ERROR CODE: 0 control bit address: N10:0/8


Error Code Desc:

• Bit del límite de tiempo sobrepasado TO (palabra 0, bit 08) Establezca este
bit en su aplicación para eliminar una instrucción de mensaje activa del control
de procesador. Puede usar su propia rutina de control de límite de tiempo
sobrepasado semejante a la instrucción MSG del SLC 5/02 o puede usar el
control de límite de tiempo sobrepasado interno. Le recomendamos que use el
control de límite de tiempo sobrepasado incorporado porque simplifica el
programa del usuario.
Si usa su propia rutina de control de límite de tiempo sobrepasado, el valor del
límite de tiempo sobrepasado (palabra 8) se debe poner a cero. Si la instrucción
MSG no se completa dentro del plazo de tiempo especificado y el bit DN no se
establece, usted debe establecer el bit TO (bit 8 de palabra 0) y volver a realizar
un escán de la instrucción MSG, de lo contrario el mensaje llevará un búfer
activo hasta que el procesador se detenga y se vuelva a arrancar. Después de la
ejecución de la instrucción MSG, el procesador establece el bit ER (bit 12) y
retorna el código de error 37H. Vuelva a iniciar la instrucción MSG
restableciendo el bit TO y volviendo a ejecutar la instrucción MSG.

Si usa el control de límite de tiempo sobrepasado interno, establezca el valor del


límite de tiempo sobrepasado (palabra 8) entre 1 y 255 segundos. Cuando el
límite de tiempo sobrepasado ocurre, el bit TO y el bit ER (bit 12 de palabra 0)
se establecen y el procesador retorna el código de error 37H. Vuelva a iniciar la
instrucción MSG restableciendo el bit TO y volviendo a ejecutar la instrucción
MSG.
• Bit no respuesta NR (bit 09) se establece si el procesador receptor responde a
la instrucción con un acuse de recibo negativo. Esto significa que el dispositivo
receptor no puede dar servicio al paquete en ese momento y se debe volver a
intentar. El bit NR se restablece cuando el bit ER, DN o ST se establece.
Recomendamos no intentar controlar este bit. Se usa para funciones DH-485 y
se presenta a título informativo únicamente.

8–22
Instrucciones de comunicación

• El bit habilitado y en espera EW (bit 10) se establece después de que el bit


de habilitación se ha establecido y el mensaje se almacena en el búfer y espera
ser enviado en el búfer. Recomendamos no intentar controlar este bit. Se
presenta a título informativo únicamente.
• Operación continua CO (bit 11) Establezca este bit si desea enviar la
instrucción MSG de manera continua. Recomendamos que el control del límite
de tiempo sobrepasado interno se use para esta opción y que el renglón sea
incondicionalmente verdadero. Use este bit para activar y desactivar el modo.
Nota No intente establecer ni restablecer los otros bits en la palabra de control.
Este modo operará continuamente siempre que el renglón sea escaneado
continuamente. Si la instrucción tiene error, vuelve a intentar automáticamente
hasta tener éxito. Si sobrepasa el límite de tiempo y se vuelve a escanear, el
modo se detendrá. El bit ER se debe poner a cero para reanudar la operación.
• El bit de error ER (bit 12) se establece cuando la transmisión de mensaje está
con fallo. El bit ER se restablece la próxima vez que el renglón asociado vaya
de falso a verdadero.
• El bit de efectuado DN (bit 13) se establece cuando el mensaje se transmite
con éxito. El bit DN se restablece la próxima vez que el renglón asociado vaya
de falso a verdadero.
• El bit de arranque ST (bit 14) se establece cuando el procesador acusa recibo
del dispositivo receptor. El bit ST se restablece cuando el bit DN, ER o TO se
establece. Recomendamos no intentar controlar este bit. Se presenta a título
informativo únicamente.
• El bit de habilitación EN (bit 15) se establece cuando las condiciones de
renglón se hacen verdaderas y la instrucción se ejecuta. Permanece establecido
hasta que la transmisión de mensaje se haya completado y el renglón se haga
falso.
• El bit de espera de espacio en la cola WQ (Word 7, bit 0) se establece
cuando no hay espacio en la cola activa para escribir o leer datos. Este bit se
pone a cero cuando hay espacio disponible en al cola activa. Recomendamos
no intentar controlar este bit. Se presenta a título informativo únicamente.

Nota Cuando el bit WQ se establece, o cuando sólo se establece el bit EN, y usted usa
una instrucción de escritura MSG, sus datos de fuente no tienen búfer. Si su
aplicación requiere datos con búfer (o “fotografía”), espere hasta que el bit EW se
establezca antes de sobrescribir sus datos de fuente.
• EN = 1 y EW = 1 cuando MSG entra en el búfer
• EN = 1 cuando MSG entra en cola
• WQ = 1 cuando la cola (que retiene 10 MSG) está llena:
búfer – retiene 4 mensajes con los datos
cola – almacena el puntero (lista de espera)

Nota Si su programa contiene cuatro instrucciones de mensaje con el bit de operación


continua (CO) establecido, la instrucción de mensaje de la rutina de fallo no se
ejecutará.

8–23
Manual de referencia del juego de instrucciones
Preface

La cantidad de datos transferidos por una instrucción MSG es determinada por el


tamaño del tipo de datos de destino. El límite es 206 bytes de datos. Si una lectura
se usa, entonces el tipo de datos en el procesador determina el número de elementos.
Si una escritura se usa, entonces el tipo de datos en el dispositivo remoto determina
el número de elementos. Por ejemplo, si una lectura de contadores desde un
dispositivo remoto se efectúa y el destino en el procesador es un archivo de entero,
entonces el número máximo de elementos que se pueden solicitar es 103. Los datos
provienen de las 103 primeras palabras del archivo de temporizador remoto.

Configuraciones del bloque de control

La configuración del bloque de control se muestra abajo si selecciona un 500CPU o


un PLC-5 como el dispositivo receptor:

Lectura o escritura, local o remota a un 500CPU o PLC-5


15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Pal.
EN ST DN ER CO EW NR TO Error Code 0
Node Number 1
Reserved for length in words 2
File Number 3
File Type (O, I, S, B, T, C, R, N, F, St, A) 4
Element Number 5
Subelement Number 6

Reserved (Internal Messaging Bits) WQ 7


Message Timer Preset 8
Message Timer Scaled Zero 9
Message Timer Accumulator 10
Reserved (Internal use only) 11
Reserved (Internal use only) 12
Reserved (Internal use only) 13

8–24
Instrucciones de comunicación

La configuración del bloque de control se muestra abajo si selecciona un 485 CIF


como el dispositivo receptor:

Lectura o escritura, local o remota a un 485CIF


15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00 Pal.
EN ST DN ER CO EW NR TO Error Code 0
Node Number 1
Reserved for length in words 2
Offset in Words 3
Not Used 4
Not Used 5
Not Used 6
Reserved (Internal Messaging Bits) WQ 7
Message Timer Preset 8
Message Timer Scaled Zero 9
Message Timer Accumulator 10
Reserved (Internal use only) 11
Reserved (Internal use only) 12
Reserved (Internal use only) 13

8–25
Manual de referencia del juego de instrucciones
Preface

Diagrama de temporización para una instrucción exitosa


del SLC 5/03 ó SLC 5/04
La sección siguiente describe el diagrama de temporización para una instrucción
MSG del SLC 5/03 ó SLC 5/04.

El renglón se El nodo receptor El nodo receptor procesador


hace verdadero recibe el paquete el paquete exitosamente y
retorna los datos (lectura) o
   escribe los datos (éxito) 

1
EN 0

1
EW
0
1
ST 0

1
DN 0
1
ER 0
1
NR 0
1
TO 0
1
WQ 0

1. Cuando el renglón MSG se hace verdadero y el MSG es escaneado, si hay


espacio en cualquiera de los cuatro búferes MSG activos, los bits EN y EW es
establecen. Si esta fuera una instrucción de escritura MSG, los datos de fuente
sería transferidos al búfer MSG en este momento. Si no hay espacio en los
cuatro búferes MSG, pero hay disponible una posición en la cola MSG de 10
posiciones, sólo el bit EN se establece. La cola MSG de 10 posiciones trata los
datos primeros en llegar y así permite al procesador SLC 5/03 ó SLC 5/04
recordar el orden en que las instrucciones MSG se habilitaron. Anote que el
programa no tiene acceso a la cola MSG de SLC 5/03 ó SLC 5/04.

Si no hay espacio en ninguno de los cuatro búferes MSG ni en la cola MSG de


10 posiciones, sólo el bit WQ se establece. Observe que cuando el bit WQ se
establece, la instrucción MSG se debe volver a escanear más adelante cuando
haya espacio en los cuatro búferes MSG o la cola MSG de 10 posiciones.

8–26
Ins