Programacion de PLC SLC500 MicroLogix
Programacion de PLC SLC500 MicroLogix
Programacion de PLC SLC500 MicroLogix
Juego de
instrucciones de
SLC 500t y
MicroLogixt 1000
(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.
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
i
Manual de referencia del juego de instrucción
ii
Tabla de contenido
iii
Manual de referencia del juego de instrucción
iv
Tabla de contenido
v
Manual de referencia del juego de instrucción
vi
Tabla de contenido
vii
Manual de referencia del juego de instrucción
viii
Tabla de contenido
ix
Manual de referencia del juego de instrucción
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
xi
Manual de referencia del juego de instrucción
xii
Tabla de contenido
xiii
Manual de referencia del juego de instrucción
xiv
Tabla de contenido
xv
Manual de referencia del juego de instrucción
xvi
Tabla de contenido
xvii
Manual de referencia del juego de instrucción
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
xix
Manual de referencia del juego de instrucción
xx
Tabla de contenido
xxi
Manual de referencia del juego de instrucción
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
P-2
Prefacio
P-3
Juego de instrucciones del manual de referencia
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.
P-5
Juego de instrucciones del manual de referencia
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.
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
Instrucciones de bit
#
#
"
#
1–1
!
Manual de referencia del juego de instrucciones
"#!$&
! &"# %
& !
Temporizador Cuenta los intervalos de la base de tiempo cuando
a la conexión la instrucción es verdadera.
Temporizador Cuenta los intervalos de la base de tiempo cuando
a la desconexión la instrucción es falsa.
Temporizador reĆ Cuenta los intervalos de la base de tiempo cuando
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.
Conteo progresivo Incrementa el valor acumulador a cada transición
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.
Conteo regresivo Disminuye el valor acumulado a cada transición 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.
Contador de alta Cuenta los impulsos de alta velocidad de una
velocidad entrada de alta velocidad de controlador fijo.
Restablecimiento Pone a cero el valor acumulado y los bits de estado
de un temporizador o contador. No use con
temporizadores TOF.
1–2
Instrucciones básicas
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.
Formato Explicación
O Salida
I Entrada
/ Delimitador de bit
Número de Entradas: 0Ć 15
b
terminal Salidas: 0Ć 15
1–3
#
Manual de referencia del juego de instrucciones
#! $ "#
!#%! '")
Archivo de estado
Delimitador de elemento
Delimitador de bit
"!$
Elemento 1, bit 15. Este es el bit de primer paso" que puede
usar para iniciar instrucciones en su programa.
1–4
Instrucciones básicas
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
Vea las páginas 1–16 y 1–24 respectivamente para obtener los formatos de
direccionamiento.
1–5
Preface
Manual de referencia del juego de instrucciones
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.
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
Formato Explicación
R Archivo de control
: Delimitador de elemento
1–6
Instrucciones básicas
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
Archivo de enteros
Delimitador de elemento
1–8
Instrucciones básicas
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á
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.
1–9
Manual de referencia del juego de instrucciones
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
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
tantas veces como sea necesariol.
1–11
Manual de referencia del juego de instrucciones
El controlador le permite usar una instrucción OSR por cada salida en un renglón.
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
Dest O:3
I:1.0 B3 O:3.0
] [ [OSR] ( )
0 0 0
O:3.0
( )
1
"
"
"
I:1.0 B3 O:3.0
] [ [OSR] ( )
0 0 0
O:3.0
( )
1
"
!
" " !
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
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
15 14 13
Pal. 0 EN TT DN Uso interno
Pal. 1 Valor preseleccionado
Pal. 2 Valor de acumulador
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.
Base de tiempo
1–15
Manual de referencia del juego de instrucciones
Estructura de direccionamiento
Archivo de temporizador
Delimitador de elemento
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
Preface
Manual de referencia del juego de instrucciones
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
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.
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
1–20
Instrucciones básicas
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.
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
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.
1–22
Instrucciones básicas
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
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)
Para obtener información acerca de la instrucción del contador de alta velocidad del
controlador MicroLogix 1000, vea el capítulo 7.
1–23
Manual de referencia del juego de instrucciones
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.
Estructura de direccionamiento
Contador
Delimitador de elemento
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
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.
V
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)
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%).
1–26
Instrucciones básicas
1–27
Preface
Manual de referencia del juego de instrucciones
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.
$)*(+ .$ )"
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.
1–28
Instrucciones básicas
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.
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.
Para la operación del contador de alta velocidad, hay que realizar los pasos
siguientes:
1–29
Manual de referencia del juego de instrucciones
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.
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.
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
1–31
Manual de referencia del juego de instrucciones
Ejemplo de aplicación
1–32
Instrucciones básicas
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 ] [ ] [ ] [ ( )
Rung 0 ] [ ( )
Rung 1 ] [ ] [ ] [ ( )
C5:0
Rung 20 (U)
DN
RET
Rung 21 RETURN
1–33
Manual de referencia del juego de instrucciones
Restablecimiento (RES)
3 3 3 3 3 3
(RES) Use una instrucción RES para restablecer un temporizador o contador. Cuando se
!" #' ! 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.
$
T & "
#! # !" #' "
"
$
"
"
"
"
"
"
"
$
"
" "
"
"
"
"
"
% $ (" !"
Nota Si usa esta instrucción para restablecer el acumulador HSC del controlador
MicroLogix 1000, vea la página 7-21.
1–34
Instrucciones básicas
1–35
Manual de referencia del juego de instrucciones
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
1–37
Manual de referencia del juego de instrucciones
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
Instrucciones de comparación
Instrucción
Propósito Página
Mnemónico Nombre
2–1
Manual de referencia del juego de instrucciones
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.
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.
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
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.
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.
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.
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
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.
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.
2–5
Manual de referencia del juego de instrucciones
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
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
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
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.
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.
5
2–7
Preface
Manual de referencia del juego de instrucciones
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.
2–8
Instrucciones de comparación
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.
)& )&
0,/$-#
2–9
Manual de referencia del juego de instrucciones
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
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
!%&$')!
$"#)%&" (!
! )!" " $
Datos de escala Multiplica la fuente por una tasa especificada,
añade a un valor offset y almacena el resultado en
el destino.
Absoluto Calcula el valor absoluto de la fuente y coloca el
resultado en el destino.
Calcular Evalúa una expresión y almacena el resultado en el
destino.
Cambiar Cambia los bytes bajos y altos de un número espeĆ *
cificado de palabras en un archivo de bit, entero,
ASCII o cadena.
Arco seno Acepta el arco seno de un número y almacena el *
resultado (en radianes) en el destino.
Arco coseno Acepta el arco coseno de un número y almacena el
resultado (en radianes) en el destino.
Arco tangente Acepta el arco tangente de un número y almacena *
el resultado (en radianes) en el destino.
Coseno Acepta el coseno de un número y almacena el reĆ *
sultado en el destino.
Logaritmo natural Acepta el logoritmo natural del valor en la fuente y *
lo almacena en el destino.
Logaritmo de base Acepta el logoritmo de la base 10 del valor en la
10 fuente y almacena el resultado en el destino.
Seno Acepta el seno de un número y almacena el resultaĆ
do en el destino.
Tangente Acepta la tangente de un número y almacena el
resultado en el destino.
X a la potencia de Y Eleva un valor a la potencia y almacena el resultado *
en el destino.
3–2
Instrucciones matemáticas
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.
3–3
Manual de referencia del juego de instrucciones
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.
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.
3–4
Instrucciones matemáticas
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.
Formato Explicación
Ejemplos:
F8:2 !'" %)" #(!'" " "'!'
F10:36 !'" %)" #(!'" " "'!' %)" &
&!" " " (! %)" #(!'" " "'!' #"% (&(%"
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
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
3–7
Manual de referencia del juego de instrucciones
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.
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
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
Preface
Manual de referencia del juego de instrucciones
À
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.
Dest B3:3
0000000000000011
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
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
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
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
!
3–14
Instrucciones matemáticas
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:
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.
3–15
Manual de referencia del juego de instrucciones
Preface
Ejemplos de aplicación
Ejemplo 1
3–16
Instrucciones matemáticas
Ejemplo 2
3–17
Manual de referencia del juego de instrucciones
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
Ejemplo
SCL
SCALE
Source N7:0
100
Rate [/10000] 25000
Offset 127
Dest N7:1
377
3–18
Instrucciones matemáticas
À " # )*,#+& # ,%+ $,#+"'#"& '&) # )2!"$% "-""& %+) * $0&) (,
# "%*+),"4%
')&-& ,% &-) #&. 0 ,* ,% ))&) "+ ))&) $%&) 0 &#&
% # *+"%& *+& &,))
"%'%"%+$%+ # & *+ +,#
*# $1/
*# $3%
%+) $3% %+) $1/
3–19
Manual de referencia del juego de instrucciones
Use las ecuaciones siguientes para expresar las relaciones lineales entre el valor de
entrada y el valor con escala resultante:
= (valor de entrada x régimen) + offset
Ejemplo de aplicación 2 – Cómo escalar una entrada analógica para controlar una salida
analógica
32,764 10V
(Escala máx.)
0 0V
(Escala mín.)
3,277 4 mA 16,384 20 mA
(Entrada mín.) (Entrada máx.)
3–20
Instrucciones matemáticas
Use las ecuaciones siguientes para calcular las unidades con escala:
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:
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.
3–21
Manual de referencia del juego de instrucciones
32,764 10V
(Escala máx.)
0 0V
(Escala mín.)
0 4 mA 13,107 20 mA
(Entrada mín. desplazada) (Entrada máx. desplazada)
= (valor de entrada x régimen) + offset
0 - (0 × 2.4997) = 0
3–22
Instrucciones matemáticas
SUB
SUBTRACT
Source A I:1.0
Source B 3277
Dest N7:0
SCL
SCALE
Source N7:0
Rate [/10000] 24997
Offset 0
Dest O:2.0
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
!" #& !
SLC 5/04 OS401.
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.
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
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.
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
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
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.
3–28
Instrucciones matemáticas
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
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.
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
con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
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
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.
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
igual que 88.72284. Use esta instrucción con los procesadores SLC 5/03 OS302 y
SLC 5/04 OS401.
3–30
Instrucciones matemáticas
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
que 38.53184. Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC
5/04 OS401.
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
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..
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
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..
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 con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
3–33
Manual de referencia del juego de instrucciones
3–34
Instrucciones matemáticas
3–35
Manual de referencia del juego de instrucciones
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
"#!$'
! '"# &
' !
D Convertir a BCD Convierte el valor de fuente de entero en el formato
BCD y lo almacena en el destino.
Convertir desde Convierte el valor de fuente BCD en un entero y lo
BCD almacena en el destino.
Convertir de Convierte radianes (fuente) en grados y almacena
radianes a grados el resultado en el destino.
Convertir de Convierte grados (fuente) en radianes y almacena
grados a radianes el resultado en el destino.
Descodificar 4 a 1 Descodifica un valor de 4 bits (0 a 15) activando el
de 16 bit correspondiente en el destino de 16 bits.
Codificar 1 de 16 a Codifica una fuente de 16 bits a un valor de 4 bits.
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.
%
Copiar el archivo y La instrucción COP copia datos del archivo de (
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
"&'%( +"
%#$+& '# * "
"!+" # #!%
Mover Mueve el valor de fuente al destino.
Mover con Mueve los datos de un lugar de fuente a una
máscara porción seleccionada del destino.
Y Realiza una operación Y por bit.
O Realiza una operación O inclusiva por bit.
O exclusivo Realiza una operación de O exclusivo por bit.
No Realiza una operación NO.
Negar Cambia el signo de la fuente y lo almacena en el
destino.
)
Carga FIFO y La instrucción FFL carga una palabra en una pila
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.
)
Carga LIFO y La instrucción LFL carga una palabra en una pila
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.
4–2
Instrucciones de manejo de datos
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
4–3
Preface
Manual de referencia del juego de instrucciones
Ejemplo 1
3 3 3
TOD
TO BCD
Source N7:3
9760
Ejemplo 2
3 3 3
4–4
Instrucciones de manejo de datos
3 2 7 6 0 N7:3 Decimal
MVM
MASKED MOVE
Source S:14
3
Mask 000F
4–5
Manual de referencia del juego de instrucciones
Preface
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
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
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.
Ejemplo 1
3 3 3
FRD
FROM BCD
Source N7:3
9760
Dest N10:0
9760
4–7
Manual de referencia del juego de instrucciones
Preface
Ejemplo 2
3 3 3 3 3 3
FRD
FROM BCD
Source S:13
00032760
Dest N7:0
32760
3 2 7 6 0
0111 1111 1111 1000
4–8
Instrucciones de manejo de datos
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
Source S:13
00001234
Dest N7:0
1234
0000 0100 1101 0010
4–9
Manual de referencia del juego de instrucciones
Preface
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
Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
4–10
Instrucciones de manejo de datos
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
Use esta instrucción con los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
4–11
Manual de referencia del juego de instrucciones
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.
Use esta instrucción para multiplexar los datos en aplicaciones tales como
interruptores preselectores rotatorios, teclados y conmutación de banco.
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
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
siguiente:
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
4–13
Manual de referencia del juego de instrucciones
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) 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
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.
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.
4–15
Preface
Manual de referencia del juego de instrucciones
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.
4–16
Instrucciones de manejo de datos
Uso de FLL
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.
4–17
Preface
Manual de referencia del juego de instrucciones
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.
4–18
Instrucciones de manejo de datos
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,
4–19
Manual de referencia del juego de instrucciones
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
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.
4–20
Instrucciones de manejo de datos
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.
!" #& !
4–21
Manual de referencia del juego de instrucciones
Operación
MVM
MASKED MOVE
Source B3:0
Mask F0F0
Dest B3:2
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
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.
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.
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.
4–25
Manual de referencia del juego de instrucciones
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
0 1
1 0
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.
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.
4–27
Preface
Manual de referencia del juego de instrucciones
4–28
Instrucciones de manejo de datos
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.
4–29
!
Manual de referencia del juego de instrucciones
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
FFL
FIFO LOAD (EN) "# "&
Source N7:10 (DN) N7:11
N7:12
FIFO #N7:12
(EM) N7:13 1
Control R6:0 instrucción FFU descarga
Length 34 datos de pila #N7:12 en N7:14
Position 9 posición 0, N7:12.
FFU 34 palabras han sido
asignadas para la pila
FIFO UNLOAD (EU)
FIFO a partir de N7:12
FIFO #N7:12 (DN)
$# 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
N7:45
"#!$" en este caso.
! % "!
4–30
Instrucciones de manejo de datos
4–31
!
Manual de referencia del juego de instrucciones
LFL
LIFO LOAD (EN) Las instrucciones LFL y LFU se usan conjuntamente. La instrucción LFL carga
Source (DN)
LIFO (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
4–32
Instrucciones de manejo de datos
4–33
Manual de referencia del juego de instrucciones
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
4–36
Instrucciones de flujo de programa
!%&$'*!
$"#*%&" )!
! *!" " $
(
Saltar a etiqueta y Saltar hacia adelante o hacia atrás a la instrucción +
etiqueta de etiqueta especificada.
Saltar a subrutina, Saltar a una subrutina designada y retornar. +
(
subrutina, y
retornar de la
subrutina
Restablecimiento Desactivar todas las salidas no retentivas en una
del control maestro sección de un programa de escalera.
Fin temporal Marcar un fin temporal que detiene la ejecución del
programa.
Suspender Identifica condiciones específicas para la
depuración del programa y la localización y
corrección de fallos del sistema.
Entrada inmediata Programar una entrada inmediata con máscara.
con máscara
Salida inmediata Programar una salida inmediata con máscara.
con máscara
Regenerar
5–1
Manual de referencia del juego de instrucciones
5–2
Instrucciones de flujo de programa
(JMP) Use estas instrucciones conjuntamente para saltar porciones del programa de
escalera.
]LBL[
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.
Uso de JMP
5–3
Manual de referencia del juego de instrucciones
Uso de LBL
5–4
Instrucciones de flujo de programa
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).
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
Preface
Manual de referencia del juego de instrucciones
• 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.
Uso de JSR
5–6
Instrucciones de flujo de programa
Uso de SBR
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.
5–7
Preface
Manual de referencia del juego de instrucciones
(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.
5–8
Instrucciones de flujo de programa
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.
5–9
Manual de referencia del juego de instrucciones
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
archivo de estado. Todas las salidas se desactivan.Suspender (SUS)
5–11
Manual de referencia del juego de instrucciones
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
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
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
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
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
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
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.
– el canal 1 es DH-485
– el canal 1 es DH+
5–14
Instrucciones de flujo de programa
5–15
Manual de referencia del juego de instrucciones
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
Instrucción
Propósito Página
Mnemónico Nombre
BSL y BSR !
6-5
! ! $
! %
! !
!
SQO y " 6-9
SQC
#
$ "
SQL & & 6-14
" $
6–1
Manual de referencia del juego de instrucciones
6–2
Instrucciones específicas de aplicación
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
– El bit de descarga UL (bit 10) almacena el estado del bit salido del
fichero cada vez que la instrucción se habilita.
6–3
Manual de referencia del juego de instrucciones
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.
6–4
Instrucciones específicas de aplicación
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
Uso de BSL
6–5
Manual de referencia del juego de instrucciones
% &%
"& % $ $ $!' %
! # % $ % $% %
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 # %
63 62 61 60 59 58 57 56 55 54 53 52 51 50 49 48
NO VALIDO 73 72 71 70 69 68 67 66 65 64
% $#
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
6–6
Instrucciones específicas de aplicación
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 " $
INVALID 69 68 67 66 65 64
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
6–8
Instrucciones específicas de aplicación
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
6–9
Manual de referencia del juego de instrucciones
15 13 11 08 00
Pal. 0 EN DN ER FD
Pal. 1 Longitud del archivo de secuenciador
Pal. 2 Posición
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
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.
6–11
Manual de referencia del juego de instrucciones
SQO
SEQUENCER OUTPUT (EN)
File #B10:1
Mask 0F0F (DN)
Dest O:14.0
Control R6:20
Length 4
Position 2
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.
6–12
Instrucciones específicas de aplicación
SQC
SEQUENCER COMPARE (EN)
File #B10:11 (DN)
Mask FFF0 (FD)
Source I:3.0
Control R6:21
Length 4
Position 2
!
1111 1111 1111 0000
0010 0100 1001 1010
6–13
Manual de referencia del juego de instrucciones
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
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
6–15
Manual de referencia del juego de instrucciones
Operación
SQL
SEQUENCER LOAD (EN)
File #N7:30
Source I:1.0 (DN)
Control R6:4
Length 4 !
Position 2
00
01
02
03
15 8 7 0
04
0000 0101 0000 1010 05
06
07
08
09
0000 0000 0000 0000 10
11
1010 0010 1111 0101 12
0000 0101 0000 1010 13
0000 0000 0000 0000 14
0000 0000 0000 0000 15
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
OPERATOR PANEL
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
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
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–1
Manual de referencia del juego de instrucciones
7–2
Cómo usar las instrucciones del contador de alta velocidad
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
À
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
• 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
7–5
Manual de referencia del juego de instrucciones
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.
7–7
Manual de referencia del juego de instrucciones
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.
7–8
Cómo usar las instrucciones del contador de alta velocidad
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
7–9
Preface
Manual de referencia del juego de instrucciones
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)
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.
7–11
Preface
Manual de referencia del juego de instrucciones
Las tablas siguientes resumen los estados de entrada necesarios para que la acción
del contador de alta velocidad correspondiente se lleve a cabo:
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)
7–12
Cómo usar las instrucciones del contador de alta velocidad
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)
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)
7–13
Preface
Manual de referencia del juego de instrucciones
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)
7–14
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.
7–15
Manual de referencia del juego de instrucciones
7–16
Cómo usar las instrucciones del contador de alta velocidad
Las tablas siguientes resumen los estados de entrada necesarios para que la acción
del contador de alta velocidad correspondiente se lleve a cabo:
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)
"
À
À " ! !
7–17
Manual de referencia del juego de instrucciones
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.
Operación
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.
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
'-# # *.3 !+.)( #-, ' % +"#/(
,%# )%+ 0) , ('-+(%(
2,+ 2,+ #-,
#-,
,%# ,%#
#-, 0
#-,
7–19
Manual de referencia del juego de instrucciones
7–20
Cómo usar las instrucciones del contador de alta velocidad
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
7–21
Manual de referencia del juego de instrucciones
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.
Operación
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
Uso de HSE
Operación
7–23
Manual de referencia del juego de instrucciones
Uso de HSD
Operación
Operación
7–24
Cómo usar las instrucciones del contador de alta velocidad
7–25
Manual de referencia del juego de instrucciones
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
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
#)
" """ $&#$&
$") """
& """
"%
""" #$$ ##" $($"
"# $) $"
""#
7–29
Manual de referencia del juego de instrucciones
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
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
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
Instrucciones de comunicación
Instrucción
Propósito Página
Mnemónico Nombre
8–1
Manual de referencia del juego de instrucciones
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
uno a la vez en orden secuencial (primero que llega, primero que sale)
Operación
8–3
Manual de referencia del juego de instrucciones
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.
8–4
Instrucciones de comunicación
8–5
Manual de referencia del juego de instrucciones
ERROR CODE: 0
Error Code Desc:
8–6
Instrucciones de comunicación
1
EN 0
1
EW
0
1
ST 0
1
DN 0
1
ER 0
1
NR 0
1
TO 0
8–7
Manual de referencia del juego de instrucciones
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.
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.
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.
8–9
Preface
Manual de referencia del juego de instrucciones
8–10
Instrucciones de comunicación
Ejemplo 1
B3 MSG
] [ READ/WRITE MESSAGE (EN)
1 Read/write WRITE
Target Device 500CPU (DN)
Control Block N7:0
Control Block Length 7 (ER)
Notas de operación
#
# "#!$) $ # #$
"#!$) " "# "% # #) !
$ "#!$) " # !)& "'
"# !!
!) #$
# !!! #( "%!' # #)
"#
!! !) #$ " " !!!"
8–11
Manual de referencia del juego de instrucciones
8–12
Instrucciones de comunicación
8–13
Preface
Manual de referencia del juego de instrucciones
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
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
[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 ] [ ]/[ 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
] [ COUNT UP (CU)
Counter C5:0 El contador permite 5
DN ensayos.
Preset 5 (DN)
Accum 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
END
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
Ejemplo 4
8–16
Instrucciones de comunicación
+, 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
] [ (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
] [ ]/[ ]/[ 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
] [ ]/[ ]/[ 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
READ/WRITE MESSAGE (EN)
Read/write WRITE (DN)
Target Device 500CPU (ER)
Control Block N7:0
Control Block Length 7
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
Dest N7:0
12 0
N7:0
] [
CLR
13 CLEAR
Dest N7:20
0
END
8–17
Manual de referencia del juego de instrucciones
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.
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.
8–18
Instrucciones de comunicación
– Esclavo DF1
– DH-485, o
• inicia lecturas y escrituras a través de:
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
8–20
Instrucciones de comunicación
8–21
Manual de referencia del juego de instrucciones
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
• 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.
8–22
Instrucciones de comunicación
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)
8–23
Manual de referencia del juego de instrucciones
8–24
Instrucciones de comunicación
8–25
Manual de referencia del juego de instrucciones
1
EN 0
1
EW
0
1
ST 0
1
DN 0
1
ER 0
1
NR 0
1
TO 0
1
WQ 0
8–26
Instrucciones de comunicación
Una vez establecido el bit EN, permanece establecido hasta que el proceso
entero MSG se haya finalizado y el bit DN, ER o TO se establezca. El valor del
límite de tiempo sobrepasado MSG comienza a temporizar cuando el bit EN
se establece. Si el período del límite de tiempo sobrepasado vence antes de que
la instrucción MSG finalice su función, el bit ER se establece y un código se
coloca en el bloque MSG para informarle del error del límite de tiempo
sobrepasado.
Si el procesador SLC 5/03 ó SLC 5/04 determina que hay una “tarea de
desempeñar”, descargar las entradas de la cola MSG en los búferes MSG hasta
que todos los cuatro búferes estén llenos. Cada búfer MSG contiene un paquete
de red válido. Si un paquete no se puede construir exitosamente de la cola
MSG, el bit ER se establece y un código se coloca en el bloque MSG para
informarle de un error. Cuando una instrucción MSG se carga en un búfer
MSG, los bits EN y EW se establecen.
Luego el procesador SLC 5/03 ó SLC 5/04 sale al final de escán o la porción
SVC del escán. La función de comunicación de fondo del procesador envía los
paquetes a los nodos receptores que especificó en su instrucción MSG. Según el
estado de los bits S:2/14, S:33/7, S:33/5 y S:33/6, puede tener hasta cuatro
instrucciones MSG activas en todo momento.
8–27
Manual de referencia del juego de instrucciones
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.
8–28
Instrucciones de comunicación
Los cuatro búferes son compartidos entre el canal 0 y el canal 1 para los
procesadores SLC 5/03 OS300. Para los procesadores SLC 5/03 OS301, OS302 y
SLC 5/04 OS400, OS401, hay cuatro búferes MSG por canal. Cada canal tiene su
propia cola MSG de diez posiciones. El procesador SLC 5/03 ó SLC 5/04 descarga
las dos colas MSG en los búferes MSG equitativamente al final de escán o SVC.
Esto permite que ambos canales tengan el mismo acceso a las comunicaciones. Si
usted programa una instrucción SVC que es configurada para dar servicio solamente
a un canal, entonces dicho canal tendrá su cola MSG descargada en los búferes
MSG (hasta el próximo final de escán o SVC cuando ambos canales se volverán a
descargar equitativamente).
8–29
Manual de referencia del juego de instrucciones
El nodo receptor está ocupado. La instrucción MSG se volverá a cargar
02H automáticamente. Si hay otros mensajes que esperan, el mensaje se coloca en la
parte inferior de la pila.
03H El nodo receptor no puede responder porque el mensaje es demasiado grande.
El nodo receptor no puede responder porque no entiende los parámetros de
04H comando O BIEN es posible que el bloque de control haya sido modificado
inadvertidamente.
05H El procesador local está fuera de línea (posible situación de nodo duplicado).
06H El nodo receptor no puede responder porque la función solicitada no está disponible.
07H El nodo receptor no responde.
08H El nodo receptor no puede responder.
09H La conexión del módem local ha sido perdida.
0AH El búfer no está disponible para recibir la respuesta SRD.
OBH El nodo receptor no acepta este tipo de instrucción MSG.
Recibió un restablecimiento del vínculo principal (una fuente posible es del maestro
0CH
DF1).
El nodo receptor no puede responder a causa de parámetros de comando
10H
incorrectos o comando sin capacidad.
11H El archivo local tiene protección de archivo constante.
12H Un error del protocolo de configuración de canal local existe.
13H Error de configuración MSG local en los parámetros MSG remotos.
14H El variador de comunicación local no es compatible con la instrucción MSG.
15H Un error del parámetro de configuración de canal local existe.
La dirección receptora o del puente local es mayor que la dirección máxima de
16H
nodo.
17H El servicio local no es compatible.
18H La difusión (dirección de nodo 255) no es compatible.
37H El mensaje sobrepasó el límite de tiempo en un procesador local.
38H El mensaje inhabilitó la respuesta del vínculo pendiente.
50H El nodo receptor agotó su memoria.
60H El nodo receptor no puede responder porque el archivo está protegido.
El nodo receptor no puede responder porque la longitud solicitada es demasiado
E7H
larga.
EBH El nodo receptor no puede responder porque el nodo receptor ha negado el acceso.
8–30
Instrucciones de comunicación
El nodo receptor no puede responder porque la función solicitada no está disponible
ECH
actualmente.
F1H El procesador local detecta un tipo ilegal de archivo receptor.
El nodo receptor no puede responder porque el otro nodo es el propietario del
FAH
archivo (tiene el único acceso al archivo).
El nodo receptor no puede responder porque el otro nodo es el propietario del
FBH
programa (tiene el único acceso a todos los archivos).
FFH El canal de comunicación local se ha desactivado.
Nota Para los usuarios del juego de protocolo y comando 177-6.5.16 DH, DH+,
DH-485:
El código de error MSG representa el campo STS de la respuesta a su instrucción
MSG. Los códigos E0 – EF representan los códigos EXT STS 0 – F. Los códigos
F0 – FC representan los códigos EXT STS 10 – 1C.
8–31
Manual de referencia del juego de instrucciones
– la transmisión en serie
– un integrador de pirámide
8–32
Instrucciones de comunicación
Ejemplo 1
Hay dos métodos para configurar una instrucción de mensaje que lee o escribe datos
hacia/desde su nodo receptor de manera continua. El método más indicado y más
eficiente es establecer el bit continuo (CO) de la instrucción de mensaje. Con este
bit establecido, el mensaje reside permanentemente en uno de los cuatro búferes de
mensaje del procesador SLC 5/03 ó SLC 5/04 y solicita/envía datos al nodo receptor
continuamente. La única restricción de este método es que usted puede tener
solamente hasta cuatro instrucciones de mensajes continuamente configuradas. Si
tiene instrucciones de mensaje configuradas de esta manera, otras instrucciones de
mensaje en su programa de escalera tomarán más tiempo para completarse porque
en efecto ha reducido el número de búferes de mensaje disponibles.
8–33
Manual de referencia del juego de instrucciones
8–34
Instrucciones de comunicación
Ejemplo 2
8–35
Manual de referencia del juego de instrucciones
Renglón 2:3
| Bit de EFECTUADO Bit de HABILITACION |
| de mensaje 2 de mensaje 2 |
| N7:40 N7:40 À N7:40 |
|–+––––] [–––––+–––––––––––––––––––––––––––––––––––––––––––––––––––––(U)–––––|
––]/[–––
| | 13 | 10 15 |
| | Bit ERROR | |
| | mensaje 2 | |
| | N7:40 | |
| +––––] [–––––+ |
| 12 |
Renglón 2:4
| |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
| |
À
8–36
Instrucciones de comunicación
Ejemplo 3
8–37
Manual de referencia del juego de instrucciones
Renglón 2:2
| El mensaje |
| no se |
| completó |
| C5:0 O:3 |
|––] [––––––––––––––––––––––––––––––––––––––––––––––––––––––––––+––––(L)–––––+–|
| DN | 0 | |
| | Bit de | |
| | disparo MSG| |
| | del usuario| |
| | B3 | |
| +––––(U)–––––+ |
| 1 |
Renglón 2:3
| Bit de | Bit de |
| EFECTUADO | disparo MSG |
| de mensaje| del usuario |
| N7:0 B3 |
|––––] [–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––(U)–––––|
| 13 1 |
Renglón 2:4
| |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
| |
À
8–38
Instrucciones de comunicación
Ejemplo 4
8–39
Manual de referencia del juego de instrucciones
Renglón 2:4
Si el mensaje de LECTURA tiene error, siga ensayando el mensaje de LECTURA hasta
que se haya completado con éxito. No vuelva a ensayar la ESCRITURA hasta que
haya una LECTURA exitosa.
| Bit ERROR | Bit de HABILITACION |
| lec. mens.| de lectura de mensaje |
| N7:20 N7:20 À N7:20 |
|––––] [–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––(U)–––––|
––]/[–––
| 12 10 15 |
Renglón 2:5
Una vez que los mensajes de ESCRITURA y LECTURA se hayan completado
exitosamente, vuelva a iniciar la secuencia de mensaje desenclavando el bit de
habilitación del mensaje de ESCRITURA.
| Bit EFEC. |Bit EFEC. | Bit de HABILITACION |
| lec. mens.|esc. mens.| de escritura de mensaje |
| N7:20 N7:0 N7:20 À N7:0 |
|––––] [––––––––] [––––––––––––––––––––––––––––––––––––––––––––––––––(U)–––––|
––]/[–––
| 13 13 10 15 |
Renglón 2:6
| |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
| |
À
8–40
Instrucciones de comunicación
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 (decimal): 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
En la pantalla anterior, el procesador SLC 5/03 ó SLC 5/04 lee 10 elementos del
archivo N7 del nodo receptor, a partir de la palabra N7:50. Las 10 palabras se
colocan en su archivo de entero a partir de la palabra N7:0. Si pasan cinco segundos
sin respuesta, el bit de error N10:0/12 se establece, lo que indica que la instrucción
ha sobrepasado el límite de tiempo. El dispositivo en el nodo 2 entiende el
protocolo de la familia del procesador SLC 500 (SLC 500, SLC 5/01, SLC 5/02,
SLC 5/03 y SLC 5/04).
8–41
Manual de referencia del juego de instrucciones
Define la longitud del temporizador de mensaje en segundos. Un límite
9+(2$ #$ 2($+.-
de tiempo sobrepasado de 0 segundos significa que no hay temporizador
1-!0$. 1 #- #$*
y que el mensaje esperará indefinidamente una respuesta. El rango
+$,1 )$
válido es 0Ć255 segundos.
Identifica el canal físico usado para la comunicación de mensaje.
Canales disponibles:
Canal
SLC 5/03 - (0, RS-232) o (1, DH-485)
SLC 5/04 - (0, RS-232) o (1, DH+)
Type: Peer–to–Peer
Read/Write: READ ignore if timed out: 0 TO
Target Device: 485CIF 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 (decimal): 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 Offset: 20
Message Length In Elements: 5
Message Timeout (seconds): 15
En la ilustración anterior, los procesadores SLC 5/03 ó SLC 5/04 leen cinco
elementos (palabras) del archivo CIF del nodo receptor, a partir de la palabra 20 (o
byte 20 para los dispositivos que no sean SLC 500). Los cinco elementos se
colocan en su archivo de enteros a partir de palabra N7:0. Si 15 segundos pasan sin
respuesta, el bit de error N10:0/12 se establece, lo que indica que la instrucción ha
sobrepasado el límite de tiempo. El dispositivo en el nodo 2 entiende el protocolo
485CIF (emulación de PLC-2).
Especifica el número de nodo del procesador que recibe el mensaje. El
Nodo receptor
rango válildo es 0Ć31.
Para una lectura (destino), ésta es la dirección en el procesador iniciador
que va a recibir los datos.
Dirección de archivo Para una escritura (fuente), ésta es la dirección en el procesador
iniciador que va a enviar los datos.
Los tipos de archivo válidos son: S, B, T, C, R, N, I, O, M0, M1, F, ST y A
Para una lectura o escritura, éste es el valor offset de palabra en el
Offset receptor archivo de interface común (offset de byte para dispositivos distintos de
SLC).
8–42
Instrucciones de comunicación
Type: Peer–to–Peer
Read/Write: READ ignore if timed out: 0 TO
Target Device: PLC5 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 (decimal): 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 Src/Dst File Address: N7:50
Message Length In Elements: 10
Message Timeout (seconds): 5
En la ilustración anterior, el procesador SLC 5/03 ó SLC 5/04 lee 10 elementos del
archivo N7 del nodo receptor 2 a partir de la palabra N7:50. Las 10 palabras se
colocan en su archivo de entero a partir de la palabra N7:0. Si cinco segundos pasan
sin respuestas, el bit de error N10:0/12 se establece, lo que indica que la instrucción
ha sobrepasado el límite de tiempo. El dispositivo en el nodo 2 entiende el
protocolo del procesador PLC-5.
8–43
Manual de referencia del juego de instrucciones
Para una lectura (fuente), 912 $1 la #(0$""(;, $, el procesador receptor
que va a enviar los datos.
(0$""(;, 0$"$.2-0 0 3, $1"0(230 (destino), 912 $1 la #(0$""(;, $, el procesador
receptor que va a recibir los datos.
Los tipos de archivo 48*(#-1 1-, S, B, T, C, R, N, I, O, F 6
$%(,$ * *-,&(23# #$* +$,1 )$ $, $*$+$,2-1 -1 $*$+$,2-1 #$ 3,
-,&(23# #$ +$,1 )$ . * !0 1$ *(+(2 , 3, *-,&(23# +85(+ #$
-1 $*$+$,2-1 #$
20$1 . * !0 1 1$ *(+(2 , 3, *-,&(23# +85(+ #$
$%(,$ * *-,&(23# #$* 2$+.-0(7 #-0 #$ +$,1 )$ $, 1$&3,#-1 , *:+(2$
:+(2$ #$ 2($+.-
#$ 2($+.- 1-!0$. 1 #- #$ 1$&3,#-1 1(&,(%(" /3$ ,- ' 6 2$+.-0(7 #-0
1-!0$. 1 #- #$*
6 /3$ $* +$,1 )$ $1.$0 08 (,#$%(,(# +$,2$ 3, 0$1.3$12 * 0 ,&-
+$,1 )$
48*(#- $1 < 1$&3,#-1
#$,2(%(" $* " , * %:1("- 31 #- . 0 * "-+3,(" "(;, #$ +$,1 )$
, *$1 #(1.-,(!*$1
, *
-
- +
8–44
Instrucciones de comunicación
Nodo 1 Dispositivo A
(oct) Dispositivo C
Nodo 2
Dispositivo B
Nodo 7 DHĆ485
Controlador modular de DHĆ485
E/S SLC 5/04
Identificación de red = 1 Controlador modular de
Nodo 3 (19.2 KBaudio) E/S SLC 5/03
DH+ (oct)
DH+ Nodo 6
Identificación de red = 2 (oct)
(57.6 KBaudio) PLC-5/40 con módulo
1785-KA5
DH+
Identificación de red = 2
(57.6 KBaudio)
Procesador SLC 5/04 (A) a procesador SLC 5/03 (C) vía 1785-KA5
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 2
Remote Bridge Link Id <dec>: 1
Remote Bridge Node Address <dec>: 0
Local Bridge Node Address <dec>: 6
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 11
Message Timeout (seconds): 5
Comentarios
8–45
Manual de referencia del juego de instrucciones
Procesador SLC 5/03 (C) a procesador SLC 5/04 (A) vía 1785-KA5
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 1
Remote Bridge Link Id <dec>: 1
Remote Bridge Node Address <dec>: 0
Local Bridge Node Address <dec>: 7
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 11
Message Timeout (seconds): 5
Comentarios
8–46
Instrucciones de comunicación
Type: Peer–to–Peer
Read/Write: Write
Target Device: PLC5
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 3
Remote Bridge Link Id <dec>: 2
Remote Bridge Node Address <dec>: 0
Local Bridge Node Address <dec>: 7
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 11
Message Timeout (seconds): 5
Comentarios
8–47
Manual de referencia del juego de instrucciones
Dispositivo A
Dispositivo B
Nodo 22
(oct) Dispositivo C Nodo 13
Nodo 220 (oct)
Controlador modular de (1785-KA)
E/S SLC 5/04 Controlador modular de
E/S SLC 5/04
Nodo 3
DH+ (oct)
57.6 KBaudio DH+
PLC-5/40 con módulo
57.6 KBaudio
1785-KA Nodo 3
(oct)
Procesador SLC 5/04 (B) a procesador PLC5 (C) vía dos 1785-KA
Type: Peer–to–Peer
Read/Write: Write
Target Device: PLC5
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 0
Remote Bridge Link Id <dec>: 0
Remote Bridge Node Address <dec>: 131
Local Bridge Node Address <dec>: 8
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 10
Message Timeout (seconds): 0
Comentarios
8–48
Instrucciones de comunicación
Procesador SLC 5/04 (B) a procesador SLC 5/04 (A) vía dos 1785-KA
Type: Peer–to–Peer
Read/Write: Write
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 0
Remote Bridge Link Id <dec>: 0
Remote Bridge Node Address <dec>: 146
Local Bridge Node Address <dec>: 8
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 10
Message Timeout (seconds): 0
Comentarios
8–49
Manual de referencia del juego de instrucciones
Nodo 3 Dispositivo D
(oct) Dispositivo C Nodo 2
DH+ Nodo 2 (oct)
PLC-5/40 (oct) DHĆ485
DH+
Identificación
Identificación de red = 2 de red = 1
(57.6 KBaudio) (',*(%!(* &(!-%* !"
DHĆ485 Controlador modular de (19.2 KBaudio) E/S SLC 5/03
E/S SLC 5/04
Dispositivo A Nodo 1
Nodo 1 RSĆ232
(oct)
Convertidor de
intenrface 1747ĆPIC
Controlador modular de
E/S SLC 5/04
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)
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 2
Remote Bridge Link Id <dec>: 1
Remote Bridge Node Address <dec>: 0
Local Bridge Node Address <dec>: 2
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 10
Message Timeout (seconds): 5
Comentarios
El canal se establece a 1 porque el comando original es iniciado por un procesador
SLC 5/04 en la red DH+.
El nodo receptor es el procesador SLC 5/03 en la dirección de nodo 2.
La identificación de vínculo del puente remoto es el vínculo con el procesador
SLC 5/04 (canal 0, identificación de red 1).
La dirección de nodo del puente remoto se establece a 0 (no usado) porque la
comunicación es de un dispositivo con capacidades de Internet a otro dispositivo
con capacidades de Internet.
La dirección de nodo del puente local se establece a 2 porque esta es la dirección
de nodo DH+.
8–50
Instrucciones de comunicación
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)
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 3
Remote Bridge Link Id <dec>: 2
Remote Bridge Node Address <dec>: 0
Local Bridge Node Address <dec>: 1
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 10
Message Timeout (seconds): 5
Comentarios
El canal se establece a 1 porque el comando original es iniciado por un procesador
SLC 5/03 en la red DH-485.
El nodo receptor es el procesador SLC 5/04 en la dirección de nodo 1.
La identificación de vínculo del puente remoto es el vínculo con el procesador
SLC 5/04 (canal 1, identificación de red 2).
La dirección de nodo del puente remoto se establece a 0 (no usado) porque la
comunicación es de un dispositivo con capacidades de Internet a otro dispositivo
con capacidades de Internet.
La dirección de nodo del puente local se establece a 1 porque ésta es la dirección
de nodo DH-485.
8–51
Manual de referencia del juego de instrucciones
Procesador SLC 5/03 (D) a PLC-5 (B) vía un procesador SLC 5/04
(transferencia usando canal 0 DH-485)
Type: Peer–to–Peer
Read/Write: Write
Target Device: PLC5
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 3
Remote Bridge Link Id <dec>: 2
Remote Bridge Node Address <dec>: 0
Local Bridge Node Address <dec>: 1
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 10
Message Timeout (seconds): 5
Comentarios
El canal se establece a 1 porque el comando original es iniciado por un procesador
SLC 5/03 en la red DH-485.
El nodo receptor es el procesador PLC-5 en la dirección de nodo 3.
La identificación de vínculo del puente remoto es el vínculo con el procesador
SLC 5/04 (canal 1, identificación de red 2).
La dirección de nodo del puente remoto se establece a 0 (no usado) porque la
comunicación es de un dispositivo con capacidades de Internet a otro dispositivo
con capacidades de Internet.
La dirección de nodo del puente local se establece a 1 porque ésta es la dirección
de nodo DH-485.
8–52
Instrucciones de comunicación
Mensajes remotos (SLC 5/03 a un SLC 500, SLC 5/01 ó SLC 5/02)
1747-AIC
1747-AIC
Nodo 3 Nodo 1
8–53
Manual de referencia del juego de instrucciones
'&+)'$ ') %' ,$) ! '&+)'$ ') %' ,$) ! '&+)'$ ') %' ,$) ! '&+)'$ ') %' ,$) !
+ / +
!&+#"##.& ! )!
, #' !&+#"##.& ! )! !&+#"##.& ! )!
, #'
, #'
Procesador SLC 5/04 (A) a procesador SLC 5/04 (D) vía dos procesadores SLC 5/04
(transferencia usando canal 0 DF1)
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node (decimal): 63
Remote Bridge Link Id: 1
Remote Bridge Node Address <dec>: 0
Local Bridge Node Address <dec>: 2
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 10
Message Timeout (seconds): 5
Nota La configuración incorrecta puede causar que los datos sean escritos o leídos de un
procesador no seleccionado. Asegúrese que todos parámetros e identificaciones de
vínculo de canal se establezcan correctamente.
Comentarios
El canal se establece a 1 porque el comando original es iniciado por un procesador
SLC 5/04 en la red DH+.
El nodo receptor es el procesador SLC 5/04 a dirección de nodo 77 (63 decimales).
La identificación de vínculo del puente remoto es el vínculo con el procesador
SLC 5/04 (identificación de vínculo 1).
La dirección de nodo del puente remoto se establece a 0 (no usado) porque canal
0 es dúplex total DF1.
La dirección de nodo del puente local se establece a 2 porque ésta es la dirección
de nodo DH+.
8–54
Instrucciones de comunicación
Procesador SLC 5/04 (A) a procesador SLC 5/04 (C) vía un solo procesador SLC 5/04
(transferencia usando canal 0 DF1)
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node: 0
Remote Bridge Link Id <dec>: 1
Remote Bridge Node Address: 0
Local Bridge Node Address: 2
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 10
Message Timeout (seconds): 5
Comentarios
El canal se establece a 1 porque el comando original es iniciado por un procesador
SLC 5/04 en la red DH+.
El nodo receptor es el procesador SLC 5/04 en la dirección de nodo 0 (dúplex total
DF1).
La identificación de vínculo del puente remoto es el vínculo con el procesador
SLC 5/04 (identificación de vínculo 1).
La dirección de nodo del puente remoto se establece a 0 (no usado) porque canal
0 es dúplex total DF1.
La dirección de nodo del puente local se establece a 2 porque ésta es la dirección
de nodo DH+.
8–55
Manual de referencia del juego de instrucciones
Procesador SLC 5/04 (C) a procesador SLC 5/04 (A) vía un solo procesador SLC 5/04
(transferencia usando canal 0 DF1)
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Local
Control Block: user specified
Channel: 0
Comentarios
Procesador SLC 5/04 (C) a procesador SLC 5/04 (B) cuando la transferencia está habilitada
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Local
Control Block: user specified
Channel: 0
Target Node (decimal): 2
Comentarios
8–56
Instrucciones de comunicación
Dispositivo A Dispositivo B
Estación 3
Nodo 7 Nodo 1
(oct) (oct)
Controlador modular de Estación 15 Controlador de E/S
E/S SLC 5/04 (oct) DH+ modular SLC 5/04
DH+
Identificación de red = 2
Identificación de red = 1 (57.6KBaud)
(57.6 KBaudio)
Procesador SLC 5/04 (B) a procesador SLC 5/04 (A) via un integrador de pirámide usando
el encaminamiento PI
Type: Peer–to–Peer
Read/Write: Read
Target Device: 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node: 7
Remote Bridge Link Id <dec>: 1
Remote Bridge Node Address: 0
Local Bridge Node Address: 13
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: 15
Message Timeout (seconds): 5
Comentarios
El canal se establece a 1 porque el comando original es iniciado por un procesador
SLC 5/04 en la red DH+.
El nodo receptor es el procesador SLC 5/04 en la dirección de nodo 7.
La identificación de vínculo del puente remoto es el vínculo con el procesador
SLC 5/04 (identificación de vínculo 1).
La dirección de nodo del puente remoto se establece a 0 (no usado) porque la
comunicación es de un dispositivo con capacidades de Internet a otro dispositivo
con capacidades de Internet.
La dirección de nodo del puente local se establece a 13 decimal (15 octal) porque
ésta es la dirección de nodo DH+.
8–57
Manual de referencia del juego de instrucciones
Ejemplo 7 –
Dispositivo A
Dispositivo B
Nodo 10
(oct) Nodo 13
Nodo 220 (oct)
Controlador modular de (1785-KA)
E/S SLC 5/03 Controlador modular de
E/S SLC 5/03
Nodo 3
DHĆ485 (oct)
DH+
19.2 KBaudio
PLCĆ5/40 con módulo 57.6 KBaudio
1785ĆKA5 Nodo 3
(oct)
Procesador SLC 5/03 a un procesador SLC 5/03 (transferencia usando dos 1785-KA5)
Type: Peer–to–Peer
Read/Write: Read or Write
Target Device: 485CIF or 500 CPU
Local/Remote: Remote
Control Block: user specified
Channel: 1
Target Node: 2
Remote Bridge Link Id: 8
Remote Bridge Node Address: 0
Local Bridge Node Address: 20
Destination/Source File Addr: user specified
Target Src/Dst File Address: user specified
Message Length In Elements: user specified
Message Timeout (seconds): 10
Comentarios
8–58
Instrucciones de comunicación
8–59
Manual de referencia del juego de instrucciones
8–60
Instrucciones de comunicación
S:2/15 DH-485 Selección de servicio de S:33/5 Selección de servicio de
comunicaciones comunicaciones
S:33/7 DH-485 Selección de servicio de
S:33/6 Selección de servicio de mensaje
mensaje
Servicio de canal
Ejemplo de aplicación
La instrucción SVC se usa cuando desea ejecutar una función de comunicación, tal
como la transmisión de un mensaje, antes de la porción de comunicación de servicio
normal del escán de operación. El ejemplo siguiente muestra cómo usar
selectivamente la instrucción SVC.
Bit de comando de
mensaje saliente S:2
pendiente ] [ (SVC)
7
El procesador SLC 5/03 ó SLC 5/04 puede pasar una instrucción MSG a través de
una red remota a su destino receptor. (Puede hacer un salto por una red.) El
procesador SLC 5/03 ó SLC 5/04 también puede pasar una instrucción MSG a la red
que existe en el otro lado del puente local.
8–61
Manual de referencia del juego de instrucciones
8–62
Instrucción proporcional integral derivativa
Descripción general
3 3 3
PID
PID Esta es una instrucción de salida que controla las características físicas tales como la
Control Block
Process
Control
Variable
Variable
temperatura, presión, nivel líquido o régimen de caudal usando lazos de proceso.
Control Block Length 23
9–1
Preface
Manual de referencia del juego de instrucciones
El concepto PID
El control en lazo cerrado PID retiene una variable de proceso a un punto de ajuste
deseado. Un ejemplo del régimen de caudal/nivel de fluido se muestra abajo.
Alimentación hacia
adelante o bias
Variable de Salida
proceso de
control
Detector
de nivel
Válvula de control
9–2
Instrucción proporcional integral derivativa
La ecuación PID
La instrucción PID usa el algoritmo siguiente:
Ganancia de 0.1 a 25.5 (adimensional) Proporcional
controlador KC À
0.01 a 327.67 (adimensional)
Término de 25.5 a 0.1 (minutos por repetición) Integral
restablecimiento 1/TI À
327.67 a 0.01 (minutos por repetición)
Término de régimen TD 0.01 a 2.55 (minutos) Derivativa
0.01 a 327.67 (minutos)
À
À Se aplica a los rangos PID SLC 5/03 y SLC 5/04 cuando el bit de restablecimiento de bit y rango de refuerzo (RG)
se establecen a 1.
9–3
Manual de referencia del juego de instrucciones
PID
PID
Control Block N10:0
Process Variable N10:28
Control Variable N10:29
Control Block Length 23
9–4
Instrucción proporcional integral derivativa
STI indica que el PID actualiza su salida cada vez que se escanea. Cuando
selecciona STI, la instrucción PID debe ser programada en una subrutina de
interrupción STI, y la rutina STI debe tener un intervalo de tiempo igual al
ajuste del parámetro de “actualización del lazo” PID. Establezca el período STI
en la palabra S:30. Por ejemplo, si el tiempo de actualización del lazo contiene
el valor 10 (para 100 ms), entonces el intervalo de tiempo STI también debe ser
igual a 10 (para 10 ms).
• El control CM (palabra 0, bit 2) alterna los valores E=SP–PV y E=PV–SP.
La acción directa (E=PV–SP) causa que la salida CV incremente cuando la
salida PV es mayor que el punto de ajuste SP (por ejemplo, una aplicación de
enfriamiento). La acción inversa (E=SP–PV) causa que la salida CV
incremente cuando la salida PV sea menor que el punto de ajuste SP (por
ejemplo, una aplicación de calefacción).
9–5
Manual de referencia del juego de instrucciones
9–6
Instrucción proporcional integral derivativa
Específico para SLC 5/03 y SLC 5/04: Los errores con escala mayores que
+32767 ó menores que ±32768 no se pueden representar. Si el error con
escala es mayor que +32767, se representa como +32767. Si el error con
escala es menor que ±32768, se representa como ±32768.
– Error con escala (palabra 15) se usa para visualización solamente. Este es
el error de escala según es seleccionado por el parámetro de modo de
control. Rango: escala máxima a –escala mínima, ó 16383 a –16383
cuando no hay escala.
Nota Específico para SLC 5/03 y SLC 5/04: Los errores con escala mayores que
+32767 ó menores que ±32768 no se pueden representar. Si el error con
escala es mayor que +32767, se representa como +32767. Si el error con
escala es menor que ±32768, se representa como ±32768.
9–7
Preface
Manual de referencia del juego de instrucciones
SI (1) NO (0)
salida CV% límite de salida CV% seleccionado límite de salida CV% cancelado
# " "
# "
"
" #
#$
#$
"
"
#
• "
!
•
#
"
" " "
" "
"
" #
" "
"
•
" #
!
•
#
"
9–8
Instrucción proporcional integral derivativa
9–9
Manual de referencia del juego de instrucciones
9–10
Instrucción proporcional integral derivativa
INTERNAL USE
DO NOT CHANGE
À
Á
9–11
Manual de referencia del juego de instrucciones
9–12
Instrucción proporcional integral derivativa
9–13
Manual de referencia del juego de instrucciones
Una vez que ha escalado sus rangos de E/S analógicas hacia/desde la instrucción
PID, puede introducir las unidades de ingeniería mínimas y máximas que se
aplican a su aplicación. Por ejemplo, si el rango de entrada analógica de 4 a 20
mA representa 0 a 300 PSI, puede introducir 0 y 300 como los parámetros
mínimos (Smin) y máximos (Smax) respectivamente. La variable de proceso,
error, punto de ajuste y banda muerta se mostrarán en unidades de ingeniería en
la pantalla del motor de datos PID. El punto de ajuste y la banda muerta se
pueden introducir en la instrucción PID usando unidades de ingeniería.
Use los valores siguientes en una instrucción SCL para escalar los rangos de
entrada analógica comunes para las variables de proceso PID.
9–14
Instrucción proporcional integral derivativa
Use los valores siguientes en una instrucción SCL para escalar las variables de
control a salidas analógicas comunes.
Use los valores siguientes en una instrucción SCP para escalar sus entradas
analógicas al rango PV y escalar el rango CV a su salida analógica.
Use los valores siguientes en una instrucción SCP para escalar variables de control
a salidas analógicas comunes.
Ejemplo
9–15
Manual de referencia del juego de instrucciones
'( &" 0" () - "!(!"( "(& " 0 )' $&
IIM
" 0" IMMEDIATE IN w MASK
Slot I:1.0
Mask FFFF
'(#' #' &" #"' ')&" %) * #& "(& " 0 %) ' * "(&#)& $&!"- "(&# #' /!('
'(# ' "'&# $& *(& &&#&' #"*&'0" .)& &"# " ' "'(&)#"' , #' ('
" *!"(# ' $)" )'& " #(&# )& $&#&! $& "(& #"0" )& &"# %) #)&&0
"# "')"(
LES B3
" 0" LESS THAN (L)
Source A I:1.0 0
0
Source B 3277
MOV
MOVE
Source 3277
Dest I:1.0
0
"# +'*#
GRT B3
" 0" GREATER THAN (L)
Source A I:1.0
1
0
Source B 16384
MOV
MOVE
Source 16384
Dest I:1.0
0
)"( %) ' * ' & ' "(& , ') '("# ' *& $&#'# "'(&)0" '(#' * #&' '
) " #" #"#!"(# %) &"# '
!"(&' %) &"# #" ' '
SCL
" 0" SCALE
Source I:1.0
0
Rate [/10000] 12499
Offset –4096
Dest N10:28
0
PID
" 0" PID
Control Block N10:0
Process Variable N10:28
Control Variable N10:29
Control Block Length 23
9–16
Instrucción proporcional integral derivativa
La variable de control PID es la entrada para la instrucción de escala. La instrucción PID garantiza que el CV permanezca
dentro del rango de 0 a 16383. Este valor debe ser escalado al rango de 6242 a 31208, lo cual representa el rango
Renglón numérico que es necesario para producir la señal de salida analógica de 4 a 20 mA.
3:5
SCL
SCALE
Source N10:29
0
Rate [/10000] 15239
Offset 6242
Dest O:1.0
0
Este renglón actualiza inmediatamente la tarjeta de salida analógica que es impulsada por el valor de la
variable de control PID.
IOM
Renglón IMMEDIATE OUT w MASK
Slot O:1.0
3:6 Mask FFFF
END
9–17
Manual de referencia del juego de instrucciones
Notas de aplicación
Los párrafos siguientes tratan:
• Los rangos de entrada/salida
• La escala a unidades de ingeniería
• La banda muerta de intersección con cero
• Las alarmas de salida
• El límite de salida con bloque de acción integral
• El modo manual
• La alimentación hacia adelante
• Las salidas de tiempo de proporcional
Rangos de entrada/salida
El módulo de entrada que mide la variable de proceso (PV) debe tener un rango
binario completo de escala de 0 a 16383. Si este valor es menor que 0 (bit 15
establecido), un valor de cero se usará para PV y el bit de “variable de proceso fuera
de rango” se establecerá (bit 12 de palabra 0 en el bloque de control). Si la variable
de proceso es > 16383 (bit 14 establecido), un valor de 16383 se usará para PV y el
bit de “variable de proceso fuera de rango” se establecerá.
9–18
Instrucción proporcional integral derivativa
9–19
Manual de referencia del juego de instrucciones
Alarmas de salida
9–20
Instrucción proporcional integral derivativa
El bloqueo de acción integral es una característica que evita que el término integral
se haga excesivo cuando la salida (CO) alcanza un límite. Cuando la suma de los
términos PID y bias en la salida (CO) alcanzan el límite, la instrucción deja de
calcular la suma integral hasta que la salida (CO) retorne dentro del rango. La suma
integral se contiene en palabras 17 y 18 del bloque de control.
Modo manual
9–21
Preface
Manual de referencia del juego de instrucciones
LIM MUL
LIMIT TEST MULTIPLY
Low Lim 0 Source A N7:0
DDV
DOUBLE DIVIDE
Source 100
Dest N7:8
Notas de operación
Un interruptor preselector giratorio BCD de 3
dígitos es cableado a un módulo de entrada a
S:5
I1:1.0 (rango 0-100) (U)
0
Un botón pulsador es cableado a I1:2.0/0; acepta
el valor del interruptor preselector giratorio.
Error - fuera de rango
Un interruptor selector para el modo LIM B3
automático/manual es cableado a I1:2.0/1 LIMIT TEST ( )
(automático) e I1:2.0/2 (manual). Low Lim 101 3
Test N7:0
N7:0 almacena el valor introducido en el
interruptor preselector giratorio. High Lim –1
9–22
Instrucción proporcional integral derivativa
Las aplicaciones que involucran demoras de transporte pueden requerir que se añada
un bias a la salida CV en espera de una perturbancia. Este bias se puede realizar
usando el procesador LSC 5/02, SLC 5/03 ó SLC 5/04 escribiendo un valor al
elemento de bias de alimentación hacia adelante, el séptimo elemento (palabra 6) en
el archivo de bloque de control. (Vea la página 9–11.) El valor que escribe se
añadirá a la salida para así permitir que se efectúe una acción de alimentación hacia
adelante. Puede añadir un bias escribiendo un valor entre ±16383 y +16383 a
palabra 6 con su terminal de programación o programa de escalera.
% a tiempo
9–23
Manual de referencia del juego de instrucciones
PID
PID
Control Block N7:2
Process Variable N7:0
Control Variable N7:1
Control Block Length 23
TON
TIMER ON DELAY (EN)
Timer T4:0
Time Base 0.01 (DN)
Preset 1000
Accum 0
GRT O:1.0
GREATER THAN (U)
Source A T4:0.ACC 0
0
Source B N7:25
0
T4:0 T4:0
] [ (RES)
DN
NEQ O:1.0
NOT EQUAL (L)
Source A N7:25 0
0
Source B 0
N7:2 MUL
] [ MULTIPLY
Source A N7:1
13
0
Source B T4:0.PRE
1000
Dest N7:25
0
DDV
DOUBLE DIVIDE
Source 16383
Dest N7:25
0
CLR
CLEAR
Dest S:5
0
END
9–24
Instrucción proporcional integral derivativa
Sintonización PID
Existen varias técnicas que se pueden usar para sintonizar un lazo PID. El método
de ajuste PID siguiente es general y es limitado respecto al manejo de
perturbaciones de carga. Cuando sintoniza, le recomendamos que efectúe cambios
en el modo MANUAL, seguido por un retorno a AUTOMATICO. El límite de
salida se aplica en el modo MANUAL.
Nota Este método requiere que la instrucción PID controle una aplicación no crítica
respecto a la seguridad personal y daños al equipo.
Procedimiento
1. Cree su programa de escalera. Asegúrese que haya escalado correctamente su
entrada analógica en el rango de la variable de proceso PV y que haya escalado
correctamente su variable de control CV a su salida analógica.
9–25
Manual de referencia del juego de instrucciones
9. Cuando observe que el proceso está oscilando arriba y abajo del punto de ajuste
de una manera uniforme, registre la duración de 1 ciclo. Eso es, obtenga el
período natural del proceso.
13. Ahora establezca el régimen Td para que éste sea igual a un valor de 1/8 del
término de restablecimiento. Para nuestro ejemplo, el valor 4 será usado para
proporcionar un término de régimen de 0.04 minutos por repetición.
9–26
Instrucción proporcional integral derivativa
15. Para efectuar ajustes de este punto en adelante, coloque la instrucción PID en el
modo MANUAL, introduzca el ajuste y retorne la instrucción PID al modo
AUTOMATICO.
Para asegurarse que el proceso sea lineal y que el equipo esté correctamente
conectado y escalado, realice lo siguiente:
3. Escriba: 20 en CO%
4. Registre el PV = _______
5. Escriba: 40 en CO%.
6. Registre el PV = _______
7. Escriba: 60 en CO%.
8. Registre el PV = _______
9. Escriba: 80 en CO%.
9–27
Manual de referencia del juego de instrucciones
11. Los valores que ha registrado deben tener un offset del CO% con la misma
cantidad. Esto prueba la linealidad del proceso. El ejemplo siguiente muestra
una progresión de offset de quince.
CO 20% = PV 35%
CO 40% = PV 55%
CO 60% = PV 75%
CO 80% = PV 95%
Para determinar el tiempo de actualización del lazo aproximado que se debe usar
para su proceso, realice lo siguiente:
2. Escriba: 50 en CO%.
6. Divida el valor obtenido en el paso 5 entre 10. Use este valor como el tiempo
de actualización del lazo. Por ejemplo, si:
período natural = 12 segundos, entonces 12
10 = 1.2 segundos.
9–28
Instrucción proporcional integral derivativa
9–29
Manual de referencia del juego de instrucciones
9–30
Instrucciones ASCII
10 Instrucciones ASCII
Instrucciones ASCII
!" #%
%!" $
%
Prueba de búfer Determina el número de caracteres en el búfer,
por línea hasta e incluyendo el carácter del fin de línea.
Número de Determina el número total de caracteres en el búfer.
caracteres en búfer
Cadena a entero Convierte una cadena en un valor entero.
Borrado del búfer Borra los búferes de recepción y/o de transmisión
ASCII de recepción
y/o transmisión
Concatenado de Combina dos cadenas en una.
cadenas
Extracción de caĆ Extrae una porción de una cadena para crea nua
dena cadena nueva.
Líneas de handĆ Establece o restablece las líneas de comunicación
shake ASCII de módem
Entero a cadena Convierte un valor entero en una cadena.
Lectura de Lee caracteres desde el búfer de entrada y los coloĆ
caracteres ASCII ca en una cadena.
10–1
Preface
Manual de referencia del juego de instrucciones
Instrucción
Propósito Página
Mnemónico Nombre
ARL Lectura ASCII de Lee una línea de caracteres desde el búfer de enĆ 10-20
línea trada y los coloca en una cadena.
ASC Búsqueda de caĆ Busca una cadena. 10-22
dena
ASR Comparación de Compara dos cadenas. 10-23
cadenas ASCII
AWA Escritura ASCII Escribe una cadena con caracteres configurados 10-24
con apéndice por el usuario añadidos.
AWT Escritura ASCII Escribe una cadena. 10-27
10–2
Instrucciones ASCII
#+)% %+)
#&" . # -#&)
')+)$"%& *
# -#&) ')+)$"%& * . %& * ',
"+* ))%(,
$")
* &'"&%* "%#,.% . # -#&)
"+* ')
')+)$"%& *
#+)% %+) "% ,%& $') . ) # -#&)
)"
')+)$"%& * "% ,%&
#+)% %+)
. # -#&) ')+)$"%& *
"+* +&*
')$"+ &%" ,)) !*+ )+)*
"%*+),"0%
,* #&(,* ') +)$"%)
)+)* +)$"%"0%
# #&% "+, % # -#&) ')+)$"%&
*
')$"+ &%" ,)) !*+ )+)*
"%*+),"0%
/ #&* )+)* # "%#
)+)* /"&* % ') *)-") &$& )+)*
+)$"%"0% ') # "*'&*"+"-& )'+&) # -#&)
')+)$"%& *
10–3
Preface
Manual de referencia del juego de instrucciones
Formato Explicación
A Archivo ASCII
: Delimitador de elemento
Número de
e Rango de 0Ć255. Este es un elemento de 1 palabra.
elemento
/ Delimitador de bit
Número de
b Ubicación de bit dentro del elemento. Rango de 0Ć15.
bit
Ejemplos:
A9:2 Elemento 2, archivo ASCII 9
A10:0/7 Bit 7, elemento 0, archivo ASCII 10
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 42 palabras. Puede direccionar las
longitudes de cadena añadiendo un .LEN a cualquier dirección de cadena (por
ejemplo, ST17:1.LEN). Los números del archivo de datos de cadena válidos son
9–255.
Las longitudes de cadena deben estar entre 0 y 82. Por lo general, las longitudes
fuera de este rango causan que el procesador establezca el bit de error ASCII
(S:5/15) y la instrucción no se ejecuta.
Nota Configura los caracteres añadidos o fin de línea vía la pantalla de configuración de
canal. Los caracteres añadidos predeterminados son el retorno del carro y
alimentación de línea; el carácter de fin de línea (terminación) predeterminado es
un retorno de carro.
Todas las instrucciones, menos ACL y AHL, entrarán en error si el puerto se
inhabilita.
10–4
Instrucciones ASCII
Archivo de cadena
Número de archivo. Un número de archivo entre 9Ć255 se puede usar.
Delimitador de elemento
Delimitador de subelemento
Número de
s Rango de 0Ć41. Palabra 0 es la longitud, .LEN.
subelemento
Delimitador de bit
Elemento 2, archivo de cadena 9
Bit 8 en subelemento 3 de elemento 2, archivo de cadena 10
10–5
Manual de referencia del juego de instrucciones
El elemento de control para las instrucciones ASCII incluye ocho bits de estado, un
byte de código de error y dos palabras de carácter:
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Word 0 EN EU DN EM ER UL IN FD | Error Code
Word 1 Number of characters for sending or receiving (LEN)
Word 2 Number of characters sent or received (POS)
EN =
Enable Bit
EU =
Queue Bit
DN =
Asynchronous Done Bit
EM =
Synchronous Done Bit
ER =
Error Bit
UL =
Unload Bit
IN =
Running Bit (Este bit es el bit IN en el archivo
de datos de control [R6:].)
FD = Found Bit
10–6
Instrucciones ASCII
ABL
ASCII TEST FOR LINE (EN) Use la instrucción ABL para determinar el número total de caracteres en el búfer de
Channel
Control (DN) entrada, hasta e incluyendo los caracteres de fin de línea (terminación). Esta
Characters 0 (ER)
Error instrucción busca dos caracteres de terminación que usted configura vía la pantalla
de configuración de puerto ASCII. Durante una transición de falso a verdadero, el
procesador comunica el número de caracteres en el campo POS del bloque de
control ASCII. El puerto en serie debe estar configurado para el modo de usuario.
Ejemplo
I:1 ABL
EN
10–7
Manual de referencia del juego de instrucciones
Número de caracteres
en búfer (ACB) 3 3
ACB
ASCII CHARS IN BUFFER (EN)
Use la instrucción ACB para determinar los caracteres totales en el búfer. En una
Channel
Control (DN) transición de falso a verdadero, el procesador determina el número total de
Characters
Error
0 (ER) caracteres y lo registra en el campo de posición del bloque de control ASCII. El
puerto en serie debe estar en el modo de usuario.
10–8
Instrucciones ASCII
Ejemplo
I:1 ACB
EN
ASCII CHARS IN BUFFER
10 Channel 0 DN
Control R6:32
Characters 0
ER
Error
10–9
Manual de referencia del juego de instrucciones
Preface
ACI
STRING TO INTEGER Use la instrucción ACI para convertir una cadena ASCII en un valor entero entre
Source
Dest –32,768 y 32,767.
"%&$'," %
Ejemplo
I:1 ACI
STRING TO INTEGER
10 Source ST38:90
$"'$ "&$ 1, & 10, %&+ %& Destination N7:123
#"($& " "
" '" "&$# * - 75
!" $%' &# "
El procesador busca la fuente (tipo de archivo ST) para localizar el primer carácter
entre 0 y 9. Todos los caracteres numéricos son extraídos hasta alcanzar un carácter
no numérico o el fin de la cadena. La acción se realiza solamente si caracteres
numéricos se encuentran. Si la cadena contiene una longitud inválida (< 0 ó > 82),
el bit de error ASCII S:5/15 se establece. Comas y señales (+, –) se permiten en la
cadena. Sin embargo, solamente el signo menos se muestra en la tabla de datos.
10–10
Instrucciones ASCII
ACL
ASCII CLEAR BUFFER Use esta instrucción para borrar un búfer ASCII. Las instrucciones ASCII son
Channel
Clear Receive Buffer eliminadas de la cola y luego el bit de error (ER) se establece. Esta instrucción se
Clear Send Buffer
ejecuta inmediamente al momento de transición del renglón a un estado verdadero.
Ejemplo
I:1 ACL
ASCII CLEAR BUFFER
10 Channel 0
Clear Receive Buffer Y
Clear Send Buffer N
10–11
Manual de referencia del juego de instrucciones
ACN
STRING CONCATENATE La instrucción ACN combina dos cadenas usando cadenas ASCII como operandos.
Source A
Source B La segunda cadena se añade a la primera y el resultado se almacena en el destino.
Dest
"
Ejemplo
I:1 ACN
STRING CONCATENATE
10 Source A ST37:42
! Source B ST38:91
Destination ST52:76
10–12
Instrucciones ASCII
AEX
STRING EXTRACT Use la instrucción AEX para crear una cadena nueva tomando una porción de una
Source
Index cadena existente y enlazándola a una cadena nueva.
Number
Dest
#
Ejemplo
I:1 AEX
STRING EXTRACT
10 Source ST38:40
Si " Index 42
" Number 10
!
Destination ST52:75
Las condiciones siguientes causan que el procesador establezca el bit de error ASCII
(S:5/15):
• longitud de fuente inválida o longitud de cadena de cero
• valores de índice o número fuera de rango
• valor de índice mayor que la longitud de la cadena de fuente
10–13
Manual de referencia del juego de instrucciones
AHL
ASCII HANDSHAKE LINES (EN) Use la instrucción AHL para establecer o restablecer las líneas de control de
Channel
AND Mask (DN) comunicación RS-232 Terminal de datos lista (DTR) y Petición de envío (RTS) para
OR Mask
Control
(ER) su módem. En una transición de falso a verdadero, el procesador usa las dos
Channel Status
Error máscaras para determinar si va a establecer o restablecer las líneas DTR y RTS, o si
no las va a cambiar. Esta instrucción operará cuando el puerto está en cualquier
modo o está inhabilitado.
Nota Asegúrese que el control de módem automático usado por el puerto no sea
incompatible con esta instrucción.
10–14
Instrucciones ASCII
' ---8 7
-! %&%)"
Ejemplo
I:1 AHL
EN
ASCII HANDSHAKE LINES
10 Channel 0
DN
AND Mask ABCD
%!(% !'% ' &', &' OR Mask DACB
Control R6:23 ER
' ,&%
& &' #% "%%%
-! "& '& * ,&% & Channel Status 001F
&'! &'+ & -!& * Error 00
10–15
Manual de referencia del juego de instrucciones
AIC
INTEGER TO STRING La instrucción AIC convierte un valor entero (–32,768 y 32,767) en una cadena
Source
Dest ASCII. La fuente puede ser una constante o una dirección de entero.
!
Ejemplo
I:1 AIC
INTEGER TO STRING
10 Source 867
la Destination ST38:42
10–16
Instrucciones ASCII
ARD
ASCII READ (EN)
Use la instrucción ARD para leer caracteres desde el búfer y almacenarlos en una
Channel
Dest (DN) cadena. Para repetir la operación, el renglón debe ir de falso a verdadero.
Control (ER)
String Length
Characters Read
Error
Instrucción de salida
Ejemplo
I:1 ARD
ASCII READ EN
[
[
10 Channel 0
Destination ST52:76 DN
Si la ranura de entrada 1, bit 10, está estaleciĆ Control R6:23
da, lea 50 caracteres desde el búfer y transfiéĆ String Length 50 ER
ralos a ST52:76. Characters Read 0
Error 00
10–17
Manual de referencia del juego de instrucciones
Una vez que el número de caracteres solicitado está en el búfer, los caracteres se
transfieren a la cadena destino. El número de caracteres transferido se coloca en el
campo POS del bloque de control. El número en el campo de lectura de caracteres
se actualiza continuamente y el bit de efectuado (DN) no se establece sino hasta que
todos los caracteres hayan sido leídos.
10–18
Instrucciones ASCII
ON
Bit de habilitación (EN)
OFF
Bit de efectuado
Bit de error ON
(DN o ER) OFF
ON
Bit de efectuado síncrono (EM) OFF
6 6
1 Ć el renglón se hace verdadero
2 Ć la instrucción se coloca con éxito en la cola
3 Ć la ejecución de la instrucción se ha completado
4 Ć la instrucción ha sido escaneada por primera vez después de terminar la ejecución
5 Ć el renglón se hace falso
6 Ć la instrucción no está en cola o se está ejecutando
10–19
Manual de referencia del juego de instrucciones
ARL
ASCII Read Line (EN)
Use la instrucción ARL para leer caracteres desde el búfer, hasta e incluyendo los
Channel
Dest (DN) caracteres de fin de línea (terminación), y almacenarlos en una cadena. Los
Control (ER)
String Length caracteres de fin de línea son especificados vía la pantalla de configuración ASCII.
Characters Read
Error
#
Ejemplo
I:1 ARL
ASCII READ LINE EN
10 Channel 0
Destination ST52:72 DN
Control R6:23
" String Length 18
ER
$ !
Characters Read 0
Error 00
10–20
Instrucciones ASCII
Una vez que el número de caracteres solicitado está en el búfer, todos los caracteres
(incluyendo los caracteres de fin de línea) se transfieren a la cadena destino. El
número de caracteres transferido se almacena en la palabra POS del bloque de
control. El número en el campo de caracteres leídos se actualiza continuamente y el
bit de efectuado (DN) no se establece hasta que todos los caracteres hayan sido
leídos. Excepción: Si el procesador encuentra caracteres de terminación antes de
finalizar la lectura, el bit de efectuado (DN) se establece y el número de caracteres
encontrado se almacena en la palabra POS del bloque de control.
10–21
Manual de referencia del juego de instrucciones
ASC
STRING SEARCH Use la instrucción ASC para buscar una cadena existente en coincidencia con la
Source
Index cadena fuente.
Search
Result
!"$
Ejemplo
I:1 ASC
STRING SEARCH
10 Source ST38:40
" ! ! !# ! Index 35
" "
! #! Search ST52:80
!
! Result N10:0
"!
Las condiciones siguientes causan que el procesador establezca el bit de error ASCII
(S:5/15).
• longitud de cadena inválida o longitud de cadena de cero
• valor de índice fuera de rango
• valor de índice mayor que la longitud de la cadena fuente
10–22
Instrucciones ASCII
ASR
ASCII STRING COMPARE Use la instrucción ASR para comparar dos cadenas ASCII. El sistema busca una
Source A
Source B coincidencia en longitud y caracteres en mayúscula/minúscula. Si dos cadenas son
idénticas, el renglón es verdadero; si existen diferencias, el renglón es falso.
Instrucción de entrada
Ejemplo
ASR O:1
ASCII STRING COMPARE
Source A ST37:42 Si la cadena en ST37:42 es idéntica a la cadena 1
Source B ST38:90 en ST38:90, establezca el bit de salida O:1/1.
Una longitud de cadena inválida causa que el procesador establezca el bit de error
ASCII S:5/15 y el renglón se hace falso.
10–23
Manual de referencia del juego de instrucciones
AWA
ASCII WRITE APPEND (EN)
Use la instrucción AWA para escribir caracteres desde una cadena fuente a un
Channel
Source (DN) dispositivo externo. Esta instrucción añade los dos caracteres anexos que usted
Control (ER)
String Length configura en la pantalla de configuración ASCII. Los caracteres predeterminados
Characters Sent
Error son un retorno de carro y un avance de línea anexados al final de la cadena. Cuando
!&
usa esta instrucción, también puede realizar la indirección en línea. Vea la página
10–26 para obtener más información.
Ejemplo
I:1 AWA
EN
ASCII WRITE APPEND
10 Channel 0
Source ST37:42 DN
! $ Control R6:23
# % String Length 25 ER
" ! ! Characters Sent 0
# " % Error 00
10–24
Instrucciones ASCII
10–25
Manual de referencia del juego de instrucciones
Ejemplos
10–26
Instrucciones ASCII
AWT
ASCII WRITE (EN)
Use la instrucción AWT para escribir caracteres desde una cadena fuente a un
Channel
Source (DN) dispositivo externo. Para repetir la instrucción, el renglón debe ir de falso a
Control (ER)
String Length verdadero. Cuando usa esta instrucción, también puede realizar la indirección en
Characters Sent
Error línea. Vea la página 10–26 para obtener más información.
Ejemplo
I:1 AWT
[
[ ASCII WRITE EN
10 Channel 0
Source ST37:20 DN
Control R6:23
String Length 40
Characters Sent ER
Error
10–27
Manual de referencia del juego de instrucciones
Cuarenta caracteres desde la cadena ST37:40 son enviados a través del canal 0. El
bit de efectuado (DN) se establece cuando la instrucción se está ejecutando. El bit
DN se establece al final de la instrucción.
10–28
Instrucciones ASCII
10–29
Manual de referencia del juego de instrucciones
10–30
Instrucciones ASCII
$%# (%8 /#4 !3# $%# (%8 /#4 !3# $%# (%8 /#4 !3# $%# (%8 /#4 !3#
00 000 NUL 32 20 040 SP 64 40 100 @ 96 60 140 \
01 001 SOH 33 21 041 ! 65 41 101 A 97 61 141 a
02 002 STX 34 22 042 " 66 42 102 B 98 62 142 b
03 003 ETX 35 23 043 # 67 43 103 C 99 63 143 c
04 004 EOT 36 24 044 $ 68 44 104 D 100 64 144 d
05 005 ENQ 37 25 045 % 69 45 105 E 101 65 145 e
06 006 ACK 38 26 046 & 70 46 106 F 102 66 146 f
07 007 BEL 39 27 047 ' 71 47 107 G 103 67 147 g
08 08 010 BS 40 28 050 ( 72 48 110 H 104 68 150 h
09 09 011 HT 41 29 051 ) 73 49 111 I 105 69 151 i
10 0A 012 LF 42 2A 052 * 74 4A 112 J 106 6A 152 j
11 0B 013 VT 43 2B 053 + 75 4B 113 K 107 6B 153 k
12 0C 014 FF 44 2C 054 , 76 4C 114 L 108 6C 154 l
13 0D 015 CR 45 2D 055 - 77 4D 115 M 109 6D 155 m
14 0E 016 SO 46 2E 056 . 78 4E 116 N 110 6E 156 n
15 0F 017 SI 47 2F 057 / 79 4F 117 O 111 6F 157 o
16 10 020 DLE 48 30 060 0 80 50 120 P 112 70 160 p
17 11 021 DC1 49 31 061 1 81 51 121 Q 113 71 161 q
18 12 022 DC2 50 32 062 2 82 52 122 R 114 72 162 r
19 13 023 DC3 51 33 063 3 83 53 123 S 115 73 163 s
20 14 024 DC4 52 34 064 4 84 54 124 T 116 74 164 t
21 15 025 NAK 53 35 065 5 85 55 125 U 117 75 165 u
22 16 026 SYN 54 36 066 6 86 56 126 V 118 76 166 v
23 17 027 ETB 55 37 067 7 87 57 127 W 119 77 167 w
24 18 030 CAN 56 38 070 8 88 58 130 X 120 78 170 x
25 19 031 EM 57 39 071 9 89 59 131 Y 121 79 171 y
26 1A 032 SUB 58 3A 072 : 90 5A 132 Z 122 7A 172 z
27 1B 033 ESC 59 3B 073 ; 91 5B 133 [ 123 7B 173 {
28 1C 034 FS 60 3C 074 < 92 5C 134 \ 124 7C 174 .
29 1D 035 GS 61 3D 075 = 93 5D 135 ] 125 7D 175 }
30 1E 036 RS 62 3E 076 > 94 5E 135 ^ 126 7E 176 ~
31 1F 037 US 63 3F 077 ? 95 5F 137 _ 127 7F 177 DEL
10–31
Manual de referencia del juego de instrucciones
10–32
Cómo comprender las rutinas de interrupción
Rutinas de interrupción
Instrucción
Propósito Página
Mnemónico Nombre
Rutina de fallo del Proporciona la opción de evitar la parada del proceĆ 11-2
usuario sador.
STI Interrupción Le permite interrumpir el escán del archivo de 11-7
temporizada programa principal, de manera periódica, para
seleccionable escanear un archivo de subrutina específico.
DII Interrupción de Permite que el procesador ejecute una subrutina 11-19
entrada discreta cuando la configuración del bit de entrada de una
tarjeta de E/S discreta coincida con un valor de
comparación que usted ha ya programado.
ISR Interrupción de E/S Permite que un módulo de E/S especial interrumpa 11-30
el ciclo de operación normal del procesador para
escanear un archivo de subrutina específico.
11–1
Manual de referencia del juego de instrucciones
Preface
Descripción general de la
rutina de fallo de usuario
3 3 3 3
11–2
Cómo comprender las rutinas de interrupción
Las palabras S:20 y S:21 se pueden examinar en su rutina de fallo para precisar el
número de archivo y renglón donde el fallo ocurrió. Si el fallo ocurrió fuera del
escán de escalera, este valor contendrá el número de renglón donde la instrucción
TND, END o REF esté ubicada. Use las palabras S:20 y S:21 con su rutina de fallo
de protección al momento de encendido para determinar el punto exacto en que
ocurrió la parada de alimentación eléctrica anterior. Refiérase al apéndice B para
obtener más información acerca del bit de fallo de protección al momento de
encendido S:1/9.
Nota Para los procesadores SLC 5/02, es necesario guardar su programa con la prueba
de un solo paso seleccionada para que S:20 y S:21 se activen.
Para los procesadores SLC 5/03 y SLC 5/04, 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á.
11–3
Manual de referencia del juego de instrucciones
Digamos que tiene un programa en que desea controlar los errores mayores 0020
(MINOR ERROR AT END OF SCAN) y 0034 (NEGATIVE VALUE IN
TIMER PRE OR ACC) bajo las condiciones siguientes:
• Evitar una parada del procesador si el bit de interrupción por overflow S:5/0
está establecido. Permitir una parada del procesador cuando S:5/0 se establece
más de cinco veces.
• Evitar una parada del procesador si el valor de acumulador del temporizador
T4:0 se hace negativo. Poner a cero el valor de acumulador negativo. Activar
una salida para indicar que el acumulador se ha hecho negativo una vez o más.
• Permitir una parada del procesador para todos los otros fallos de usuario.
11–4
Cómo comprender las rutinas de interrupción
GRT RET
GREATER THAN RETURN
Source A C5:0.ACC
0
Source B 5
S:5 S:5
] [ (U)
0 0
S:1
(U)
13
RET
RETURN
END
11–5
Manual de referencia del juego de instrucciones
O:3.0
( )
3
RET
RETURN
END
11–6
Cómo comprender las rutinas de interrupción
11–7
Manual de referencia del juego de instrucciones
Nota El valor del punto de ajuste debe ser mayor que el tiempo de ejecución del archivo
de subrutina STI, de lo contrario un bit de error menor se establece. Para todos los
procesadores, el bit de pendiente STI y el bit de sobremarcha STI se establecerán.
Además, para los procesadores SLC 5/03 y SLC 5/04 y los controladores
MicroLogix 1000, el bit último STI se puede establecer.
Operación
Después de que usted restaura el programa y entra en el modo de marcha REM, el
STI comienza la operación según lo siguiente:
6. El ciclo se repite.
11–8
Cómo comprender las rutinas de interrupción
Procesadores SLC
Microcontrolador
STI
Input Scan
Program Scan
Output Scan
Communication
Controller Overhead
11–9
Manual de referencia del juego de instrucciones
Preface
– Cuando el bit se establece (1), las interrupciones reciben servicio dentro del
tiempo de latencia de interrupción. Refiérase al apéndice B para obtener
más información acerca de cómo calcular la latencia de interrupción.
– Cuando el bit se pone a cero (0), los INT reciben servicio por renglón,
ranura y tiempo de ejecución de paquete.
Prioridades de interrupción
Controlador MicroLogix 1000 Procesador SLC 5/02 Procesador SLC 5/03 y SLC 5/04
1. Rutina de fallo de usuario 1. Rutina de fallo de usuario 1. Rutina de fallo de usuario
2. Subrutina de interrupción temporizada
2. Contador de alta velocidad 2. Interrupción de entrada discreta (DII)
seleccionable
3. Subrutina de interrupción temporizada 3. Subrutina de interrupción temporizada
3. Subrutina de interrupción (ISR)
seleccionable seleccionable
4. Subrutina de interrupción (ISR)
Una interrupción que se está ejecutando sólo puede ser interrumpida por una
interrupción con una prioridad más alta.
11–10
Cómo comprender las rutinas de interrupción
Parámetros STI
Los parámetros siguientes son asociados con la función STI. Estos parámetros
tienen direcciones de archivo de estado que se describen aquí y también en el
apéndice A y apéndice B de este manual.
• Número de archivo STI (palabra S:31) – Este puede ser cualquier número de
3–255. Un valor de cero inhabilita la función STI. Un número inválido genera
el fallo 0023. Esta palabra no se aplica a los controladores MicroLogix 1000.
• Punto de ajuste (palabra S:30) – Este es el tiempo entre el punto de inicio de
escanes sucesivos del archivo STI. Puede ser cualquier valor de 10 a 2550
milisegundos. Usted introduce un valor de 1 a 255, lo que resulta en un punto
de ajuste de 10–2550 ms. Un valor de cero inhabilita la función STI. Un
tiempo inválido genera el fallo 0024.
Si el STI se inicia en el modo de marcha REM cargando los registros de estado,
la interrupción comienza a temporizar desde el final del escán de programa en
que los registros de estado se cargaron.
Específico para SLC 5/03 y SLC 5/04 – Si S:2/10 está establecido, el tiempo se
da en incrementos de 1 ms. Si este bit se pone a cero, el tiempo se da en
incrementos de 10 ms.
• Bit de pendiente STI (S:2/0) – Este bit se establece cuando el temporizador
STI ha sobrepasado el límite de tiempo y la rutina STI está esperando su
ejecución. Este bit se restablece al inicio de la rutina STI, ejecución de una
instrucción STS verdadera, momento de encendido o salida del modo de marcha
REM o de prueba.
Específico para SLC 5/02 – El bit de pendiente STI no se establecerá si el
temporizador STI caduca durante la ejecución de la rutina de fallo.
Específico para SLC 5/03 y SLC 5/04 – Este bit se establece si el temporizador
STI caduca durante la ejecución de la subrutina DII o la rutina de fallo.
11–11
Manual de referencia del juego de instrucciones
Específico para SLC 5/03 y SLC 5/04 – Si este bit está establecido o
restablecido por el programa de usuario o comunics., se activará al momento de
caducidad del temporizador STI o durante el próximo final de escán (cualquiera
que ocurra primero).
• Bit de ejecución STI (S:2/2) – Este bit se establece cuando el archivo STI está
siendo escaneado y se pone a cero cuando el escán se finaliza. El bit también se
pone a cero al momento de encendido y a la entrada en el modo de marcha
REM.
• Bit de selección de resolución STI (S:2/10) – Este bit se pone a cero
predeterminadamente. Cuando se ha puesto a cero, este bit selecciona un
incremento de 10 ms para el valor de punto de ajuste STI (S:30). Cuando se
establece, este bit selecciona un incremento de 1 ms para el valor de punto de
ajuste (S:30). Para programar esta característica, use la función del monitor de
datos para establecer/poner a cero este bit o direccione este bit con su programa
de escalera.
Este bit es configurable por el usuario y se activa durante una transición de
modo PROG REM a REM RUN.
• Bit de sobremarcha (S:5/10) – Este bit de error menor se establece cuando el
temporizador STI caduca mientras que la rutina STI se está ejecutando o está
inhabilitada y mientras que el bit dependiente esté establecido. Cuando esto
ocurre, el temporizador STI continúa funcionando a la velocidad presente en la
palabra S:30. Si el bit de sobremarcha se establece, tome la acción correctiva
que indica su aplicación y luego ponga a cero el bit.
11–12
Cómo comprender las rutinas de interrupción
• Bit de STI perdida (Word S:36/9) – Este bit se establece cuando una
interrupción STI ocurre mientras que el bit de STI pendiente también está
establecido. Cuando está establecido, le comunicará que una interrupción STI
se ha perdido. Por ejemplo, la interrupción se pierde porque una interrupción
anterior ya estaba pendiente y esperando su ejecución. Examine este bit en su
programa de usuario y tome la acción apropiada si su aplicación no puede
tolerar esta condición. Luego ponga a cero el bit con su programa de usuario
para prepararse para la próxima instancia posible de este error.
Use los renglones siguientes para inicializar y medir la cantidad de tiempo entre dos
ejecuciones de subrutina STI consecutivas. El temporizador de 10 µs también está
disponible en la interrupción DII y la interrupción de E/S. Este ejemplo de
aplicación también se puede usar para la interrupción de E/S de evento o la
interrupción DII reemplazando S:43 con S:44 ó S:45 respectivamente.
11–13
Manual de referencia del juego de instrucciones
Renglón 4:0
Este renglón mide el tiempo entre las ejecuciones de subrutina de interrupción
consecutivas. El entero N10:2 contiene el número de “tics” de 10 microsegundos
que han ocurrido. Anote que la cantidad mayor de tiempo que se puede medir
es de 0.32767 segundos.
| Determine el número |
| de “tics” de 10 ms |
| Cuando medida desde el último |
| válida |
| B3 +SUB–––––––––––––––+ |
|––––––––+––––] [–––––+––––––––––––+SUBTRACT +–+––––––––––––––––––––+–|
| | 0 | |Source A S:43| | | |
| | | | 0| | | |
| | | |Source B N10:1| | | |
| | | | 0| | | |
| | | |Dest N10:2| | | |
| | | | 0| | | |
| | | +––––––––––––––––––+ | | |
| | | | | |
| | | | | |
| | | Si rodante ha | | |
| | | ocurrido en la Normalice el | | |
| | | base de tiempo resultado | | |
| | | S:0 +ADD–––––––––––––––+ | | |
| | +––––] [–––––+ADD +–+ | |
| | 3 |Source A 32767| | |
| | | | | |
| | |Source B N10:2| | |
| | | 0| | |
| | |Dest N10:2| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | | |
| | | |
| | Almacene el valor | |
| | actual en el | |
| | último valor | |
| | +MOV–––––––––––––––+ | |
| +––––––––––––––––––––––––––––––––––––––––––––––+MOVE +–+ |
| | |Source S:43| | |
| | | 0| | |
| | |Dest N10:1| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | | |
| | | |
| | Ponga a cero el | |
| | bit de error | |
| | S:5 | |
| +–––––––––––––––––––––––––––––––––––––––––––––––––(U)–––––––––––––––+ |
| 0 |
11–14
Cómo comprender las rutinas de interrupción
Renglón 4:99
Coloque este renglón en el último renglón de su subrutina de interrupción. Así
su subrutina de interrupción sabrá cuándo el valor N10:2 es válido.
| |
| |
| Indique la |
| medida válida |
| B3 |
|––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––(L)–––––|
| 0 |
11–15
Manual de referencia del juego de instrucciones
Las instrucciones STD y STE se usan para crear zonas en las que las interrupciones
STI no pueden ocurrir.
En el programa siguiente, la función STI está activa. Las instrucciones STD y STE
en los renglones 6 y 12 se incluyen en el programa de escalera para evitar que se
ejecute la subrutina STI en cualquier punto en los renglones 7 a 11.
11–16
Cómo comprender las rutinas de interrupción
STE
S:1
0 ] [ SELECTABLE TIMED ENABLE
15
1 ] [ ] [ ( )
5
STD
6 SELECTABLE TIMED DISABLE
7 ] [ ] [ ( )
8
9
10
11 ] [ ] [ ( )
STE
12 SELECTABLE TIMED ENABLE
13 ] [ ] [ ( )
14
15
16
17 END
11–17
Manual de referencia del juego de instrucciones
STS
SELECTABLE TIMED START
Use la instrucción STS para condicionar el inicio del temporizador STI cuando entra
File
Time [x 10ms] en el modo de marcha REM en vez de comenzar automáticamente. También puede
usarla para configurar o cambiar el número de archivo o punto de ajuste/frecuencia
de la rutina STI que se va a ejecutar cuando el temporizador STI caduca.
11–18
Cómo comprender las rutinas de interrupción
El archivo de estado contiene seis valores de bit y seis valores de palabra usados
para programar y monitorizar la función DII. La DII no requiere instrucciones de
lógica de escalera para su configuración. Usted programa la DII para examinar la
configuración de bit de entrada de una sola ranura de E/S cualquiera, la cual
contiene una tarjeta de entrada discreta (tal como IG16, IV16, IB8, IB32). Cuando
la configuración de bit de entrada corresponde al valor de comparación, el
acumulador se incrementa. El acumulador DII cuenta hasta el valor preseleccionado
y, una vez generada la interrupción, ajusta inmediatamente la línea de manera
automática y comienza a contar desde cero.
Durante el escán de la subrutina DII, usted puede volver a configurar la DII para que
busque un evento completamente distinto. Esto facilita la secuencia DII. La DII
puede ser programada para comparar cada punto de entrada a un estado alto (1) o
bajo (0). El acumulador se incrementa al momento de la transición de entrada que
provoca que los puntos de entrada correspondan al valor de comparación.
Para usar la función DII con su archivo de programa principal, haga lo siguiente:
11–19
Manual de referencia del juego de instrucciones
Ejemplo
La DII puede ser programada para contar los artículos en un transportador de alta
velocidad. Cada vez que 100 artículos pasan por un fotointerruptor, la subrutina DII
se ejecuta. Luego la subrutina DII usa las instrucciones de E/S inmediatas para
embalar los productos.
11–20
Cómo comprender las rutinas de interrupción
Operación
Después de restaurar su programa y entrar en el modo de marcha REM, la DII
comienza su operación así:
Modo de contador
Este modo está activo cuando el valor preseleccionado (S:50) contiene un valor
mayor que 1.
1. La DII lee el primer byte de datos de entrada de una tarjeta de entrada discreta
seleccionada por lo menos una vez cada 100 µs.À Anote que esta “encuesta” de
los datos de entrada no afecta el tiempo de escán del procesador.
5. El ciclo se repite.
Modo de evento
1. La DII lee el primer byte de datos de entrada de una tarjeta de entrada discreta
seleccionada por lo menos una vez cada 100 µs.À Anote que esta “encuesta” de
los datos de entrada no afectan el tiempo de escán del procesador.
4. El ciclo se repite.À
À
Á
11–21
Manual de referencia del juego de instrucciones
Preface
Para identificar su subrutina DII, use la instrucción INT como la primera instrucción
en su primer renglón.
La profundidad de pila JSR se limita a 3. Puede llamar otras subrutinas hasta una
profundidad de 3 niveles desde una subrutina DII.
11–22
Cómo comprender las rutinas de interrupción
Prioridades de interrupción
Las prioridades de interrupción para los procesadores SLC 5/03 y SLC 5/04 son:
3. La subrutina STI
Los datos en las palabras siguientes se guardan cuando entran en la subrtuina DII y
se vuelven a escribir cuando salen de la subrutina DII.
• Indicadores aritméticos S:0
• Registro matemático S:13 y S:14
• Registro de índice S:24
11–23
Manual de referencia del juego de instrucciones
Reconfigurabilidad
Ejemplo
11–24
Cómo comprender las rutinas de interrupción
Parámetros DII
Los parámetros siguientes son asociados con la función DII. Estos parámetros
tienen direcciones de archivo de estado que se describen aquí y en el apéndice B.
• Bit de DII pendiente (S:2/11) – Cuando se establece, este bit indica que el
acumulador DII (S:52) es igual a la DII preseleccionada (S:50) y que el número
de archivo de escalera especificado por el número de archivo DII (S:46) espera
su ejecución. Se pone a cero cuando el número de archivo DII (S:46) comienza
a ejecutarse o cuando sale del modo de marcha REM o prueba REM.
• Bit de habilitación DII (S:2/12) – Para programar esta característica, use la
función de monitor de datos para establecer/poner a cero este bit o direccione
este bit con su programa de escalera. Este bit se establece en su condición
predeterminada. Si se establece, permite la ejecución de la subrutina DII si el
archivo DII (s:46) no es cero. Si se pone a cero, cuando ocurre la interrupción,
la subrutina DII no se ejecuta y el bit de DII pendiente se establece. La función
DII continúa funcionando cuando el archivo DII (S:46) no sea cero. Si el bit
pendiente se establece, el bit de habilitación se examina al próximo final de
escán.
• Bit de ejecución DII (S:2/13) – Cuando se establece, este bit indica que la
interrupción DII ha ocurrido y que la subrutina DII se está ejecutando. Este bit
se pone a cero al finalizarse la rutina DII, encendido o entrada en el modo de
marcha REM.
• Bit de overflow DII (S:5/12) – Este bit se establece siempre que la
interrupción DII ocurra cuando todavía está ejecutando la subrutina DII o
cuando la interrupción DII ocurra mientras esté pendiente o inhabilitada.
• Bit de reconfiguración (S:33/10) – Cuando este bit se establece (1), indica
que en el próximo final de escán (END, TND o REF), salida de la rutina de
fallo, salida de STI ISR, salida del evento ISR o la próxima salida de DII ISR,
ocurrirá lo siguiente:
• Bit de DII perdida (S:36/8) – Este bit se establece si una interrupción DII
ocurre mientras que el bit de DII pendiente esté establecido.
• Número de archivo (palabra S:46) – Usted introduce un número de archivo
(3 a 255) que se usa como la subrutina de interrupción de entrada discreta.
Escriba un valor de 0 para inhabilitar la función. Este valor se aplica al
momento de detección de un bit de reconfiguración DII, cada salida de DII ISR
y cada final de escán (END, TND o REF). Un cero inhabilita la operación.
11–25
Manual de referencia del juego de instrucciones
11–26
Cómo comprender las rutinas de interrupción
11–27
Manual de referencia del juego de instrucciones
Los ejemplos siguientes muestran cómo usar la interrupción de entrada discreta para
controlar una aplicación de alta velocidad. En el ejemplo, la DII se usa para
asegurar que todas las botellas que salen de una máquina para llenar y tapar tengan
sus tapas instaladas.
Distribuidor
(O:2/0)
Recipiente de botellas
rechazadas
Los parámetros siguientes se usan para programar la DII para la aplicación anterior:
• Bit de control de latencia de interrupción S:33/8 = 1
• Archivo S:46 = 3
• Ranura S:47 = 1
• Máscara S:48 = 00000001
• Comparación S:49 = 00000001
• Preseleccionado S:50 = 1
11–28
Cómo comprender las rutinas de interrupción
Este renglón recibe el estado del interruptor de proximidad para detectar la presencia o ausencia de una tapa de botella
Si una tapa de botella está presente y el distribuidor está en la posición para botellas rechazadas, ponga
el distribuidor en la posición normal.
Si el interr. de prox. Y si el distribuidor está en
detecta una capa de la posición para botellas Ponga el distribuidor
botella instalada rechazadas en la posición normal
I:1.0 O:2.0 O:2.0
Renglón ] [ ] [ (U)
3:1 8 0 0
Si no está presente la tapa de botella, ponga el distribuidor en la posición para botellas rechazadas.
Ponga el distribuidor en la posiĆ
Si el interr. de prox. detecta ción para botellas rechazadas
una capa de botella faltante
I:1.0 O:2.0
Renglón ]/[ (L)
3:2 8 0
Actualice la posición del distribuidor
IOM
IMMEDIATE OUT w MASK
Slot O:2.0
Mask 0001
RET
Renglón RETURN
3:3
Renglón END
3:4
Refiérase al apéndice H para ver otro ejemplo de aplicación usando el DII para
contar impulsos desde un codificador (encoder).
11–29
Manual de referencia del juego de instrucciones
11–30
Cómo comprender las rutinas de interrupción
Operación
Cuando restaura su programa y entra en el modo de marcha REM, la interrupción de
E/S comienza la operación así:
1. El módulo de E/S especial determina que necesita servicio y genera una petición
de interrupción al procesador SLC.
11–31
Manual de referencia del juego de instrucciones
– Cuando el bit se establece (1), las interrupciones reciben servicio dentro del
tiempo de latencia de interrupción. Refiérase al apéndice B para obtener
más información acerca de cómo calcular la latencia de interrupción.
11–32
Cómo comprender las rutinas de interrupción
Prioridades de interrupción
La ejecución de una interrupción sólo puede ser interrumpida por una interrupción
con una prioridad más alta.
11–33
Manual de referencia del juego de instrucciones
11–34
Cómo comprender las rutinas de interrupción
Específico para SLC 5/03 y SLC 5/04 – Este bit se establece si el servicio de
interrupción se solicita al momento en que una interrupción de prioridad más
alta o igual se está ejecutando (rutina de fallo, DII, STI u otra ISR).
• Habilitaciones de interrupción de E/S (palabras S:27 y S:28) – Estas
palabras son mapeadas de bit a las 30 ranuras de E/S. Los bits S:27/1 a S:28/14
hacen referencia a las ranuras 1 a 30. Los bits S:27/0 y S:28/15 son reservados.
El bit de habilitación asociado con una ranura de interrupción se debe establecer
cuando la interrupción ocurre a fin de permitir que la ISR correspondiente se
ejecute. De lo contrario, la ISR no se ejecuta y el bit de interrupción de ranura
de E/S pendiente asociado se establece.
Específico para SLC 5/02 – Los cambios efectuados a estos bits usando la
función del monitor de datos o instrucción de escalera se activan durante el
próximo final de escán.
Específico para SLC 5/03 y SLC 5/04 – Los cambios efectuados a estos bits
usando la función del monitor de datos o instrucción de escalera se activan
inmediatamente.
11–35
Manual de referencia del juego de instrucciones
11–36
Cómo comprender las rutinas de interrupción
Específico para SLC 5/03 y SLC 5/04 – El establecimiento/puesta a cero de los bits
de habilitación de interrupción de E/S (S:27 y S:28) con un dispositivo de
programación o instrucción estándar tal como MVM se activa inmediatamente.
11–37
Manual de referencia del juego de instrucciones
Operación IID
Operación IIE
11–38
Cómo comprender las rutinas de interrupción
El bit de primer paso S:1/15 y la instrucción IIE en el
renglón 0 se incluyen para asegurar que la función de IIE
interrupción de E/S se inicialice después de la S:1
0 ] [ I/O INTERRUPT ENABLE
desconexión y reconexión de la alimentación eléctrica. Slots: 1,2,7
Debe incluir un renglón semejante cuando su programa 15
contenga una zona IID/IIE o una instrucción IID.
10
11 ] [ ] [ ( )
IIE
12 I/O INTERRUPT ENABLE
Slots: 1,2,7
13 ] [ ] [ ( )
14
15
16
17 END
11–39
Manual de referencia del juego de instrucciones
Restablecimiento de
interrupción pendiente (RPI)
3 3 3 3 3
RPI
RESET PENDING INTERRUPT
Slots: 1–30
Esta instrucción restablece el estado pendiente de las ranuras especificadas e
informa a los módulos de E/S correspondientes que usted ha cancelado las
peticiones de interrupción de ésos. Esta instruccion no se requiere para configurar
una aplicación de interrupción de E/S básica.
Cuando es verdadera, esta instrucción pone a cero los bits de E/S pendientes (S:25/1
a S:26/14) correspondientes al parámetro de ranuras de la instrucción. Además, el
procesador comunica a los módulos de E/S especiales en dichas ranuras que su
petición de interrupción fue cancelada. Después de esta comunicación, la ranura
puede volver a solicitar el servicio de interrupción. Esta instrucción no afecta los
bits de habilitación de interrupción de ranura de E/S (S:27/1 a S:28/14).
6 indica la ranura 6
11–40
Cómo comprender las rutinas de interrupción
11–41
Manual de referencia del juego de instrucciones
11–42
Cómo comprender los protocolos de comunicación
Existen varios dispositivos de puente y gateway para crear un interface del canal
SLC 500 DH-485 a otros dispositivos tal como la tarjeta 2760-RB (con el
cartucho de protocolo 2760 SFC3), 1770-KF3, 1747-KE y 1785-KA5. Cuando
usa los dispositivos de puente o gateway, refiérase a la documentación de
usuario específica para configurar su sistema.
• DH+
El SLC 5/04 tiene capacidad para la comunicación y conectividad DH+ a una
red DH+.
• Full–duplex DF1 y maestro/esclavo DF1
Los procesadores SLC 5/03 y SLC 5/04 y el controlador MicroLogix 1000
tienen capacidad para los protocolos DF1 desde sus conexiones RS-232.
• ASCII
Los procesadores SLC 5/03 OS301, OS302 y SLC 5/04 OS400, OS401 tienen
capacidad para el protocolo ASCII definido por el usuario.
• uso de las características de transferencia
12–1
Manual de referencia del juego de instrucciones
Un nodo que retiene el testigo puede enviar paquetes válidos a la red. El parámetro
de retención de testigo determina el número de transmisiones (más reintentos) cada
vez que el nodo recibe el testigo.
12–2
Cómo comprender los protocolos de comunicación
La construcción de una red comienza cuando el iniciador que reclamó el testigo trata
de pasar el testigo al nodo sucesor. Si el intento de pasar el testigo falla, o si el
iniciador no tiene un sucesor establecido (por ejemplo, al momento de encendido),
comienza una búsqueda lineal de un sucesor a partir del nodo de arriba. Vuelve
automáticamente al nodo 0 cuando alcanza el valor de dirección de nodo máximo.
Cuando el iniciador encuentra otro iniciador activo, pasa el testigo a dicho nodo, el
cual a su vez repite el proceso hasta que el testigo sea pasado por toda la red al
primer nodo. En ese momento, la red estará en el estado de operación normal.
Consideraciones de software
Número de nodos
12–3
Manual de referencia del juego de instrucciones
Los procesadores fijos SLC 500 y SLC 5/01 pueden ser seleccionados por un
máximo de dos iniciadores simultáneamente. El usar más de dos iniciadores para
seleccionar los mismos procesadores fijos SLC 500 y SLC 5/01 simultáneamente
pueden causar límites de tiempo sobrepasados de comunicación.
12–4
Cómo comprender los protocolos de comunicación
Archivo diagnóstico Reservado para uso futuro.
Velocidad en Alterna entre el régimen de comunicación de 1200, 2400, 9600 y 19200. El
baudios régimen predeterminado es 19200.
Esta es la dirección de nodo del procesador en la red DHĆ485. El rango
Dirección de nodo
válido es 1-31. El valor predeterminado es 1.
Dirección de nodo Esta es la dirección de nodo máxima de un procesador activo. El rango
máxima válido es 1-31. El valor predeterminado es 31.
Determina el número de transacciones permitidas para efectuar cada
rotación de testigo DHĆ485. El incrementar este valor permite que su
Factor de retención
procesador incremente la capacidad de tratamiento útil DHĆ485. El rango
de testigo
válido es 1-4. El valor predeterminado es 1. Los procesadores SLC 5/01 y
SLC 5/02 están establecidos en fábrica a 1.
12–5
Preface
Manual de referencia del juego de instrucciones
Requisito de
No. de catálogo Descripción Función Publicación
instalación
1746ĆBAS Módulo BASIC Chasis SLC Proporciona un interface para los 1746Ć6.1ES
dispositivos SLC 500 a dispositivos 1746Ć6.2ES
extranjeros. Programe en BASIC para 1746Ć6.3ES
crear interface con los 3 puertos (2
RSĆ232 y 1 DHĆ485) a impresoras,
módems o la red DHĆ485 para
rcolección de datos.
1747ĆKE Módulo de Chasis SLC Proporcionar un interface sin 1747Ć6.12
interface aislamiento DHĆ485 para SLC 500 a
DHĆ485/DF1 computadoras principales sobre RSĆ232
usando el protocolo DF1 de duplex total
o medio. Habilita la programación
remota usando su software de
programación a un procesador SLC 500
o la red DHĆ485 a través de módems.
Perfecto para aplicaciones RTU/SCADA
de bajo costo.
1770ĆKF3 Módulo de Escritorio" Proporciona un interface DHĆ485 aislado 1770Ć6.5.18
interface autónomo para dispositivos SLC 500 a
DHĆ485/DF1 computadoras principales sobre RSĆ232
usando el protocolo DF1 de fuplex total
o medio. Habilita la programación
remota usando su software de
programación a un procesador SLC 500
o la red DHĆ485 a través de módems.
1784ĆKR Módulo de Bus de Proporciona un puerto DHĆ485 aislado 1784Ć2.23ES
interface PC computadora en la parte posterior de la computadora. 6001Ć6.5.5
DHĆ485 IBM XT/AT Cuando se usa con el software APS,
mejora la velocidad de comunicación y
elimina el uso del convertidor de
interface personal (1747ĆPIC). El
variador estándar le permite escribir
programas C" para aplicaciones de
adquisición de datos.
1785ĆKA5 Gateway Chasis de E/S Proporciona comunicación entre 1785Ć6.5.5ES
DH+/DH485 (1771) PLC estaciones en las redes PLCĆ5 (DH+) y 1785Ć1.21ES
SLC 500 (DHĆ485).
2760ĆRB Módulo de Chasis (1771) Proporciona un interface para SLC 500 2760ĆND001
interface flexible PLC (usando el cartucho de protocolo
2760ĆSFC3) a otros procesadores PLC y
dispositivos de AĆB. Están disponibles
tres puertos configurables para
proporcionar interface con los sistemas
de código de barras, visión, RF,
Dataliners y PLC.
12–6
Cómo comprender los protocolos de comunicación
Ejemplo
El ejemplo siguiente muestra la conectividad de un procesador SLC 5/04 a un
procesador PLC-5 usando el protocolo DH+. Se usa una velocidad de comunicación
de 57.6 Kbaud.
Un 386SX compatible con
ISA o PS2 de IBM o
superior con cualquiera de
los siguientes:
• 1784ĆKT • 1784ĆKTX
PLC-5/15
#" DH+
Controlador de E/S
modular SLC 5/04
12–7
Manual de referencia del juego de instrucciones
Ejemplo
El ejemplo siguiente muestra un protocolo DH+ usando dos controladores SLC 5/04
con las velocidades altas de 115.2 Kbaud ó 230 Kbaud.
Nota Las velocidades de comunicación DH+ de 115.2 Kabaud y 230 Kbaud no están
disponibles para la terminal de programación. En el ejemplo siguiente la terminal
de programación está conectada al puerto en serie del procesador SLC 5/04 para
entrar en la velocidad en baudios más alta. Este método usa la característica de
transferencia de DF1 a DH+. Para obtener más información acerca de la
transferencia, vea el capítulo 8.
+
12–8
Cómo comprender los protocolos de comunicación
!)'# #)' ! +!$ $"*# /#
,
! +!$' %')'" #$ (
# )'" #! %'$'" /# (/!$ %* $"*# '
!$ # * $( # *# ' $# *' %'
*
(0'( &* )$$( !$( (%$( ) +$( # (* '
().# $# *'$( %' ! " (" +!$
$"*# /#
! '#$ +-! $ (
$)! ! +!$' %')'" #$
' /# #$$
(
! ) /# )'#(" ( /# %!'
!)'# #)' , ! +!$' %')'" #$ (
()$ !$!À
! ) /# '% /# %!'
!)'# #)' , ! +!$' %')'" #$ (
()$ !$!À
À () %'-")'$ ()- (%$# ! %' !$( %'$($'(
($!"#)
12–9
Manual de referencia del juego de instrucciones
Cuando un procesador pasa el testigo DH+ al próximo nodo, también envía una
palabra de 16 bits denominada la palabra de estado global (GSW). Cada nodo en la
red observa el mensaje de paso de testigo, pero solamente el “próximo” nodo en la
red acepta el testigo. Sin embargo, si todos los nodos en la red leen la palabra de
estado global enviada con cada paso de testigo y la guardan en memoria. Cada
procesador en la red DH+ tiene una tabla en memoria en que guardar la(s) palabra(s)
de estado global que recibe de otros nodos. En cada archivo de estado del
procesador SLC 5/04, hay un destino para:
• La palabra de transmisión global
Esta palabra se ubica en memoria a S:99. Si, en su programa de escalera, usted
transfiere datos a esta ubicación de memoria, se transmitirán cada vez que el
procesador pasa el testigo DH. Tome nota que todos los otros nodos DH+
observarán estos datos.
• Archivo de estado global
Este archivo se ubica en memoria a S:100 a S:163 y representa una ubicación de
memoria para cada uno de los 64 nodos posibles en la red DH+. A medida que
otros nodos vayan transmitiendo información de estado global con sus pasos de
testigo, el procesador SLC 5/04 recolecta esta información y la guarda en el
archivo de estado global. La ubicación de memoria S:100 corresponde al nodo
#0 (octal), S:101 corresponde al nodo #1 (octal) y S:163 corresponde a nodo
#77 (octal).
Una palabra del archivo de estado global de cada nodo se actualiza durante cada
paso de testigo. Esto puede funcionar como mensaje de difusión de alta velocidad,
el cual es útil para el paso de estado y la sincronización de procesadores.
12–10
Cómo comprender los protocolos de comunicación
12–11
Manual de referencia del juego de instrucciones
12–12
Cómo comprender los protocolos de comunicación
Tome nota que todas las 164 palabras se actualizarán durante cada final de escán.
La tabla siguiente describe los estados posibles de la dirección de nodo DH+ y el
valor escrito a la palabra de estado global (S:99).
Nota El procesador SLC 5/04 mantiene una tabla de palabra de estado global corriente a
pesar de la habilitación de la operación de la tabla de nodo activo DH+ de canal 1
(estableciendo S:34/1). Para ver la tabla de palabra de estado global usando su
software de programación, S:34/1 debe estar establecido además de cumplir con
todos los requisitos anteriores.
12–13
Preface
Manual de referencia del juego de instrucciones
Los procesadores SLC 5/03 pueden enviar MSG a un procesador de dos maneras:
Programe una instrucción de mensaje PLC-5 como tipo PLC-2 cuando acceda a un
procesador SLC 500.
En realidad, el CIF es como cualquiera de los otros archivos de datos SLC excepto
que es designado como el archivo destino para todos los comandos de lectura no
protegida y escritura no protegida del PLC-2 que son recibidos por el SLC. Siempre
es archivo #9. El CIF puede ser definido como tipos de bit, entero, temporizador,
contador o datos de control. Sin embargo, solamente los archivos de bit o entero se
deben usar para facilitar el direccionamiento.
Usted no puede usar la instrucción de mensaje SLC 5/02 para enviar un mensaje a
través del módulo 1785-KA5. No obstante, puede usar la instrucción de mensaje
SLC 5/03 para enviar un mensaje al módulo 1785-KA5. El procesador SLC 5/03
tiene la capacidad de responder a peticiones de lectura/escritura de datos cuando el
1785-KA5 está en el “modo de encaminador”. Los procesadores fijo SLC 500, SLC
5/01 y SLC 5/02 no pueden responder a peticiones de lectura/escritura de datos.
Cuando el 1785-KA5 está en el modo de gateway, todos los procesadores SLC 500
pueden responder a peticiones de lectura/escritura de datos de Data Highway Plus.
Nota El archivo #9 debe ser creado y definido al momento de programar el SLC. El
archivo #9 también debe ser lo suficientemente grande para incluir el espacio de
direccionamiento de lectura y escritura no protegidas. De lo contrario, todas las
lecturas y escrituras no protegidas serán rechazadas por el SLC.
12–14
Cómo comprender los protocolos de comunicación
El CIF se puede considerar como búfer de datos entre todos los otros archivos de
datos SLC y el canal DH-485. El SLC debe ser programado usando la lógica de
escalera para transferir datos entre el CIF y los otros archivos de datos mostrados
aquí.
Archivos de datos
" " '
#"
'
'
El CIF se puede manejar designando áreas a las cuales se debe escribir y áreas desde
las cuales se debe leer. Si desee saber cuándo los datos han cambiado en el CIF, use
la lógica de escalera para programar bits de comunicación en sus datos CIF.
Nota Aunque el formato de las lecturas y escrituras no protegidas es el mismo que el
usado en otros procesadores PLC, el empleo del parámetro de dirección es
diferente. En los productos PLC de Allen-Bradley, la dirección es interpretada
como una dirección de byte. En algunos productos SLC 500, la dirección es
interpretada como una dirección de palabra.
• Los procesadores SLC 500 y SLC 5/01 usan el direccionamiento de palabra
exclusivamente.
• El SLC 5/02, antes de los procesadores FRN 3 de serie C, también usan el
direccionamiento de palabra exclusivamente.
• Los procesadores SLC 5/02, SLC 5/03 y SLC 5/04 tienen un bit de selección,
S:2/8, que permite la selección del direccionamiento de palabra o byte.
• El DTAM para el SLC usa el direccionamiento de palabra exclusivamente.
12–15
Manual de referencia del juego de instrucciones
12–16
Cómo comprender los protocolos de comunicación
12–17
Manual de referencia del juego de instrucciones
Los procesadores SLC 5/03 OS301 y SLC 5/04 OS400 tienen capacidad para los
comandos MSG de tipo PLC-5. Esto elimina la necesidad de programar MSG de
tipo PLC-2.
Procesadores PLCĆ5
Módulo de interface de comunicación tipo PLCĆ5 MSG
1785ĆKA5
SLC 5/03
tipo SLC 500
SLC 5/04
Los procesadores SLC 5/03 OS301 y SLC 5/04 aceptan los comandos MSG de tipo
PLC-5 para leer y escribir archivos de datos de estado, bit, temporizador, control,
entero, punto (coma) flotante, cadena y ASCII. Sin embargo, los procesadores SLC
5/03 OS301 y SLC 5/04 no aceptan comandos MSG de tipo PLC-5 para leer o
escribir desde/hacia archivos de entrada y salida debido a la diferencia entre la
estructura de direccionamiento de chasis/grupo del procesador PLC-5 y la estructura
de direccionamiento de ranura/palabra del SLC 500. Además, el procesador PLC-5
actualmente no acepta comandos MSG de SLC 500.
Cuando programa una instrucción MSG de tipo PLC-5, los tipos de datos de fuente
y destino deben coincidir. A título de consistencia en la transferencia de datos, le
recomendamos que los tipos de datos de destino y fuente coincidan cuando
transfiera datos entre los procesadors PLC-5 y los procesadores SLC 5/03 OS301 y
SLC 5/04.
Cuando programa una instrucción MSG SLC, no tienen que coincidir los tipos de
datos de fuente y destino.
12–18
Cómo comprender los protocolos de comunicación
Los procesadores SLC 5/03 y SLC 5/04 tienen capacidad para el protocolo de
duplex total DF1 y el protocolo maestro/esclavo de duplex medio DF1 vía la
conexión RS-232 a una computadora principal (usando canal DF1). Los detalles de
estos protocolos se encuentran en el Manual de usuario del juego de protocolo y
comando Data Highway/Data Highway Plus/DH-485, publicación 1770-6.5.16ES.
Para obtener más información acerca de cómo usar los procesadores SLC 500 en
aplicaciones SCADA, vea la:
• Guía de selección del sistema SCADA, publicación AG-2.1ES
• Guía de aplicación del sistema SCADA, publicacion AG-6.5.8ES
En el modo full–duplex, el procesador SLC 5/03 ó SLC 5/04 puede enviar y recibir
mensajes. Cuando el procesador envía mensajes, lo hace en forma de respuestas
incorporadas, las cuales son símbolos transmitidos dentro de un paquete de mensaje.
Cuando el procesador SLC 5/03 ó SLC 5/04 recibe mensajes, sirve como dispositivo
final – un dispositivo que detiene la transmisión de paquetes de datos. El
procesador no hace caso de las direcciones de destino y fuente recibidas en los
paquetes de datos. Sin embargo, el procesador cambia estas direcciones en la
respuesta que transmite como respuesta a cualquier paquete de datos de comando
que ha recibido.
Ya que los procesadores SLC 5/03 y SLC 5/04 se consideran como “dispositivos
finales” (la transmisión del paquete de datos se detiene en el procesador), no se hace
caso de las direcciones de destino y fuente en el paquete de datos. Si usa un módem
con el canal 0 DF1 en el modofull–duplex, éste debe tener capacidad de funcionar
en el modo de full–duplex. Típicamente, un módem de marcado se usa para la
comunicación por líneas telefónicas.
12–19
Manual de referencia del juego de instrucciones
Cuando el variador del modo de sistema es un duplex total DF1 para canal 0, los
parámetros siguientes se pueden cambiar:
. %&2+ !&$*7/0& + "/".2!+ ,. 1/+ futuro.
Velocidad en Alterna entre la velocidad de comunicación de 110, 300, 600, 1200, 2400,
baudios 4800, 9600 y 19200. El valor predeterminado es 1200.
Paridad Alterna entre Ninguna y Par. El valor predeterminado es Ninguna.
Bits de detención Alterna entre 1, 1.5 y 2. El valor predeterminado es 1.
Detección de Alterna entre inhabilitado y habilitado. El valor predeterminado es
paquete duplicado Habilitado.
Detección de error Alterna entre CRC y BCC. El valor predeterminado es CRC.
Límite de tiempo El rango válido es 2-65535 (en incrementos de 20 ms). El valor
sobrepasado ACK predeterminado es 50.
Reintentos NAK El rango válido es 0-255. El valor predeterminado es 3.
Reintentos ENQ El rango válido es 0-255. El valor predeterminado es 3.
Alterna entre Sin comunicación y módem de full-duplex El valor
Línea de control
predeterminado es Sin handshaking.
Respuestas Alterna entre Habilitado y Detección automática. El valor predeterminado
incorporadas es Habilitado.
Especifique la dirección del transmisor en este campo. El rango válido es
ID de fuente
0-254. El valor predeterminado es 9.
12–20
Cómo comprender los protocolos de comunicación
Canal 1
DHĆ485
Módem Canal 0
Full-duplex Protocolo DF1 Módem RSĆ232
Canal 1
DHĆ485
Canal 0
1747ĆCP3 RSĆ232
12–21
Manual de referencia del juego de instrucciones
Full–duplex (red)
Canal 1
1"
DHĆ485
Computadora principal
con capacidad de llamar y
crear interface con una
red a la vez. Módem Canal 0
RSĆ232
Módem
Acoplador de 1"
vínculo
(1747ĆAIC)
1747ĆAIC
1747ĆAIC
12–22
Cómo comprender los protocolos de comunicación
Típicamente, el maestro tiene dos tablas separadas – una para los esclavos en línea y
otra para los esclavos fuera de línea. Los esclavos en línea son encuestados de
manera sistemática. Los esclavos fuera de línea son encuestados de vez en cuando
para verificar si uno ha entrado en línea.
El half–duplex DF1 tiene capacidad hasta para 255 dispositivos esclavos (dirección
0 a 254) con dirección 255 reservada para multidifusiones maestras. Los tipos de
módem de half–duplex o full–duplex se pueden usar para la red de half-duplex DF1.
El SLC 5/03 tiene capacidad para la recepción de multidifusiones. El SLC 5/03 no
puede iniciar una multidifusión.
12–23
Manual de referencia del juego de instrucciones
Archivo diagnóstico Reservado para uso futuro.
Alterna entre la velocidad de comunicación de 110, 300, 600,
Velocidad en baudios 1200, 2400, 4800, 9600 y 19200. El valor predeterminado es
1200.
Paridad Alterna entre Ninguna y Par. El valor predeterminado es Ninguna.
Bits de detención Alterna entre 1, 1.5 y 2. El valor predeterminado es 1.
Dirección de estación El rango válido es 0-254 decimal. El valor predeterminado es 1.
Alterna entre Habilitada e Inhabilitada. El valor predeterminado es
Detección de paquete
Habilitada.
Detección de error Alterna entre CRC y BCC. El valor predeterminado es CRC.
Le permite seleccionar el valor de retardo de desactivación RTS
Retardo de desactivación
en incrementos de 20 ms. El rango válido es 0-65535. El valor
RTS
predeterminado es 0.
Le permite seleccionar el valor de retardo de transmisión RTS en
Retardo de transmisión RTS incrementos de 20 ms. El rango válido es 0-65535. El valor
predeterminado es 0.
Le permite seleccionar el valor de límite de tiempo sobrepasado de
Límite de tiempo
encuesta maestro en incrementos de 20 ms. El valor
sobrepasado de encuesta
predeterminado es 50. El rango válido es 0-65535.
Retardo de tiempo de Le permite seleccionar el retardo de tiempo de transmisión previa
transmisión previa RTS en incrementos de 20 ms. El rango válido es 0-65535.
Le permite seleccionar el valor de reintentos de mensaje. El rango
Reintentos de mensaje
válido es 0-255. El valor predeterminado es 3.
Alterna entre Ninguna comunicación, half-duplex con portadora
Línea de control continua yhalf-duplex sin portadora continua. El valor
predeterminado es Ninguna comunicación.
Supresión EOT Alterna entre Sí y No. El valor predeterminado es No.
12–24
Cómo comprender los protocolos de comunicación
Archivo "'%+901'!, #0#/3", -/ 20, futuro.
Velocidad en baudios Alterna entre la velocidad de comunicación de 110, 300, 600,
1200, 2400, 4800, 9600 y 19200.
Paridad Alterna entre Ninguna y Par. El valor predeterminado es Ninguna.
Bits de detención Alterna entre 1, 1.5 y 2. El valor predeterminado es 1.
Dirección de estación El rango válido es 0-254 decimal. El valor predeterminado es 1.
Detección de paquete Alterna entre Habilitada e Inhabilitada. El valor predeterminado es
duplicado Habilitada.
Detección de error Alterna entre CRC y BCC. El valor predeterminado es CRC.
Límite de tiempo El permite seleccionar el valor de límite de tiempo sobrepasado
sobrepasado ACK ACK en incrementos de 20 ms. El rango válido es 0-65535.
Le permite seleccionar el valor de retardo de desactivación RTS
Retardo de desactivación en incrementos de 20 ms. El rango válido es 0-65535. El valor
RTS predeterminado es 0.
12–25
Manual de referencia del juego de instrucciones
12–26
Cómo comprender los protocolos de comunicación
Vínculo de múltiples
conexiones DHĆ485
ControlView 300 ó
software de otros fabriĆ
cantes ejecutando el
RSĆ232 protocolo DF1
(DF1 protocolo) (maestro)
Módem
Módem
Módulo de interĆ
face 1747ĆKE
1747-AIC 1747-AIC
Acoplador de vínculo
1747ĆAIC
12–27
Manual de referencia del juego de instrucciones
Preface
Línea arrendada
Módem Módem
12–28
Cómo comprender los protocolos de comunicación
ControlView 300 ó
software de otros
fabricantes ejecutando
RSĆ232 el protocolo DF1
(DF1 protocolo) (maestro)
Módem
DF1
12–29
Manual de referencia del juego de instrucciones
A medida que estos períodos de tiempo aumentan, puede ser necesario cambiar los
valores siguientes para evitar la pérdida de comunicación:
• software de programación – valores de límite de tiempo de encuesta
sobrepasado y límite de tiempo de respuesta sobrepasado
• procesador SLC 5/03 – valores de límite de tiempo de encuesta sobrepasado y
límite de tiempo sobrepasado de propietario de recurso/archivo de edición
Si usa instrucciones MSG entre los procesadores SLC 5/03, también es posible que
el valor de límite de tiempo sobrepasado MSG en el bloque de control tenga que ser
cambiado para comunicación de esclavo a esclavo fiable en la red de múltiples
conexiones.
12–30
Cómo comprender los protocolos de comunicación
Lo siguiente explica cómo usar los módems de línea telefónica con protocolos de
comunicación DF1.
Nota Los módems de línea telefónica tienen capacidad para la comunicación
bidireccional simultánea requerida para el full–duplex DF1. Para la operación
correcta con módems de full–duplex DF1, siempre seleccione la comunicación de
módem de full–duplex. Para la operación correcta con el esclavo DF1, seleccione
“módem de half–duplex con portadora continua” a menos que no desee cortar la
comunicación automáticamente su usa líneas arrendadas. En tal caso, puede usar
el “módem de half–duplex sin portadora continua”.
Módems manuales
12–31
Manual de referencia del juego de instrucciones
Los procesadores SLC 5/03 y SLC 5/04 tienen capacidad para la operación de discado
automático normal. El discado automático más común se encuentra en el uso de los
módems Hayes y los módems compatibles con Hayes que aceptan cadenas en serie
especiales para su DTE local, que son parte del conjunto de comandos Hayes. Estas
cadenas también se pueden usar para iniciar el discado a un número telefónico
especificado además de programar otros parámetros operacionales. Use la instrucción
de escritura ASCII para iniciar un marcado automático de cadena de módem. El bit de
archivo de estado S:5/14 permite que su programa detecte una conexión. Refiérase a su
manual de usuario de software de programación para obtener más información acerca
de las instrucciones y bits de archivo de estado.
12–32
Cómo comprender los protocolos de comunicación
AT&W1Z
AT Atención
Establece los valores en la memoria del módem a los valores
&W1Z
predeterminados.
2. Para inicializar el módem, introduzca la cadena siguiente:
ATD4140000000TN0$BA0$SB1200$MB1200$D1&W0
AT Atención
À Almacena números telefónicos en memoria (tono, no.
D4140000000TN0
telefónico, 0).
$BA0 Ajuste de baudio desactivado
$SB1200 Establece el puerto en serie a 1200 Baud.
$MB1200 Establece el puerto de teléfono a 1200 Baud.
$D1 Habilita el discado DTR.
Almacena de modo permanente estos comandos en
&W0
memoria de módem.
À Reemplaza 4140000000" con el número telefónico que desea discar.
3. Una vez que usted ha programado el módem, active la señal DTR para que
disque el número o desactive la señal DTR para terminar la llamada (colgar).
Si los controladores de línea se deben usar con el full–duplex DF1, es necesario que
tengan capacidad para un circuito de full–duplex (también conocido como circuito
de 4 cables).
12–33
Manual de referencia del juego de instrucciones
Módems de radio
También puede usar los procesadores SLC 5/03 y SLC 5/04 con un vínculo de radio
vía módems de radio. Esto establece un vínculo de múltiples conexiones dedicado.
Los vínculos de radio frecuentemente se usan en zonas donde no existe acceso a
líneas telefónicas o donde su uso es muy costoso.
El canal de serie SLC 5/03 y SLC 5/04, cuando está configurado para el esclavo de
half–duplex DF1, tiene un retardo ajustable entre el momento en que RTS se
enciende y cuando los datos son transmitidos. De este modo se pueden usar los
módems de radio con una amplia gama de requisitos de temporización, hasta los
tipos que no proporcionan una señal CTS verdadera al DTE conectado a sí mismos.
El módem de radio que usted escoge para crear un interface con un módulo de
comunicación RS-232 de Allen-Bradley usando el protocolo de half–duplex debe
poseer las características siguientes. Debe:
• tener capacidad para la comunicación RS-232 estándar descrita anteriormente y
en el manual de módulo de comunicación RS-232 de Allen-Bradley
• tener capacidad para la velocidad de transmisión a que opera su módulo de
comunicación RS-232 de Allen-Bradley
• poder operar en un vínculo de radio de múltiples conexiones de half–duplex
• poder crear un interface con un dispositivo de comunicación asíncrono
• poder funcionar en un modo “transparente”, que permita que los datos pasen
sobre el vínculo sin ser modificados.
12–34
Cómo comprender los protocolos de comunicación
Full–duplex DF1
Cuando configura los procesadores SLC 5/03 y SLC 5/04 para el full–duplex DF1,
la operación de línea de control siguiente se realiza:
La transmisión requiere que todas las tres salidas (CTS, DCD y DSR) estén activas.
Cuando DSR y DCD están activos, el bit de módem perdido se restablece.
12–35
Manual de referencia del juego de instrucciones
Half–duplex DF1
Cuando configura los procesadores SLC 5/03 y SLC 5/04 para el half–duplex DF1,
la operación de línea de control siguiente se realiza:
12–36
Cómo comprender los protocolos de comunicación
Para uso con módems de half–duplex que requieren tiempo suplementario para
“regular” su transmisor aun después de activar CTS, el retardo de transmisión RTS
especifica, en incrementos de milisegundo, la cantidad de tiempo de retardo después
de activar RTS que se debe esperar antes de verificar si CTS ha sido activado por el
módem. Si CTS todavía no está activo, RTS permanece activo y ocurrirá la
transmisión siempre que CTS se active antes de transcurrido un segundo. Después
de un segundo, si CTS todavía no se ha activado, RTS se establece inactivo y la
transmisión se cancela.
Para los módem que no proporcionan ninguna señal CTS, ligue RTS a CTS y use el
retardo más breve posible sin perder la operación segura.
Nota Si se selecciona un retardo de transmisión RTS de 0, la transmisión comienza
cuando CTS se activa. Si CTS no se activa en menos de 1 segundo después del
levantamiento de RTS, RTS se establece inactivo y la transmisión se cancela.
12–37
Manual de referencia del juego de instrucciones
1$)*5. %*"(-;23*$. &2&15"%. /"1" 42. '4341.
&+.$*%"% &- +3&1-" &-31& +" 5&+.$*%"% %& $.,4-*$"$*;- %&
#"4%*.2
7 + 5"+.1 /1&%&3&1,*-"%. &2
"1*%"% +3&1-" &-31& *-(4-" ,/"1 7 "1 + 5"+.1 /1&%&3&1,*-"%. &2 *-(4-"
*32 %& %&3&-$*;- +3&1-" &-31& 7 + 5"+.1 /1&%&3&1,*-"%. &2
*32 %& %"3.2 +3&1-" &-31& 7 + 5"+.1 /1&%&3&1,*-"%. &2
+3&1-" &-31& (-.1"1 & *,/1&2.1" + 5"+.1 /1&%&3&1,*-"%. &2
.%. %& &+*,*-"$*;-
(-.1"1 23& /"18,&31. %&/&-%& %& +" )"#*+*3"$*;- %&+ /"18,&31. $).
+3&1-" &-31& "#*+*3"%. & -)"#*+*3"%. + 5"+.1 /1&%&3&1,*-"%. &2
$).
-)"#*+*3"%.
& /&1,*3& 2&+&$$*.-"1 &+ 5"+.1 %& 1&3"1%. %& %&2"$3*5"$*;- &-
&3"1%. %&
*-$1&,&-3.2 %& ,2 + 1"-(. 58+*%. &2
&- *-$1&,&-3.2 %&
%&2"$3*5"$*;-
,2 + 5"+.1 /1&%&3&1,*-"%. &2
& /&1,*3& 2&+&$$*.-"1 &+ 5"+.1 %& 1&3"1%. %& 31"-2,*2*;- &-
&3"1%. %&
*-$1&,&-3.2 %& ,2 + 1"-(. 58+*%. &2
&- *-$1&,&-3.2 %&
31"-2,*2*;-
,2 + 5"+.1 /1&%&3&1,*-"%. &2
+3&1-" &-31& *-(4-" $.,4-*$"$*;- )"+'%4/+&6 $.- /.13"%.1" $.-3*-4"
9-&" %& $.-31.+ )"+'%4/+&6 2*- /.13"%.1" $.-3*-4" 7 ;%&, %& '4++%4/+&6 + 5"+.1
/1&%&3&1,*-"%. &2 *-(4-" $.,4-*$"$*;-
+3&1-" &-31& "#*+*3"%. & -)"#*+*3"%. + 5"+.1 /1&%&3&1,*-"%. &2
!!
-)"#*+*3"%.
&1,*-"$*;-
2/&$*'*04& /"1" $"18$3&1 2*- 3&1,*-"$*;-
&1,*-"$*;-
:"%*1
2/&$*'*04& /"1" $"18$3&1 -. ":"%*%.
:"%*1
12–38
Cómo comprender los protocolos de comunicación
Este tipo permite que el SLC 5/04 sirva como puente entre una red DH+ y una red
DH-485. Cuando el bit S:34/0 se restablece, los paquetes de comunicación que
entran en el canal 0 (configurado para DH-485), los cuales no están destinados para
el procesador SLC 5/04, vuelven a ser enviados desde del canal 1 en la red DH+.
Además, los paquetes de comunicación que entran en el canal 1 (DH+), los cuales
no están destinados para el procesador SLC 5/04, vuelven a ser enviados desde el
canal 0 en la red DH-485. Esta actividad tendrá algún efecto en el tiempo de escán
del programa de escalera del procesador SLC 5/04, pero estos efectos no son
significativos ya que solamente un paquete de transferencia es encaminado
nuevamente durante cada escán.
Este tipo le permite conectar una computadora al puerto en serie del procesador SLC
5/04 (canal 0 configurada para el full–duplex DF1) y acceder a cualquier nodo en la
red DH+ sin importar la velocidad en baudios de la red DH+. También puede
conectar un módem al puerto en serie para discar en cualquier nodo en la red DH+.
Este tipo permite que el sistema SLC 5/04 sirva como puente entre la red DH+ y la
red de E/S remota compatible con el módulo de E/S remotas 1747-SN. La
transferencia se habilita cuando el bit S:34/5 se establece. Esto permite que las
computadoras personales en la red DH+ carguen y descarguen aplicaciones a
dispositivos tales como PanelView 550, PanelView 900 ó Panel View 1200 y
DataLiners en la red de E/S remotas.
12–39
Manual de referencia del juego de instrucciones
Cómo entrar en línea con un procesador SLC 5/04 usando el full–duplex DF1
Cómo transmitir un mensaje usando el full–duplex DF1 hacia un procesador SLC 5/04 con
la transferencia DF1 a DH+ habilitada
Cómo transmitir un mensaje usando el full–duplex DF1 desde un procesador SLC 5/04 con
la transferencia DF1 a DH+ habilitada
Si usa un procesador SLC 5/04 con la transferencia DF1 a DH+ habilitada y trata de
transmitir un mensaje desde el canal 0 usando las instrucciones de MENSAJE, no
use el tipo de mensaje 485 CIF. Use los tipos de mensaje 500CPU o PLC5. Si
intenta usar el tipo de mensaje 485 CIF, el procesador SLC 5/04 que transmite el
mensaje no recibirá respuestas del nodo con el que está tratando de comunicarse.
12–40
Cómo localizar y corregir fallos
Este capítulo enumera los códigos de fallo de errores mayores, indica las causas
posibles de los fallos y recomienda la acción correctiva. Este capítulo también
explica los fallos de carga del sistema de operación para los procesadores SLC 5/03
y SLC 5/04 y los controladores MicroLogix 1000.
Procesadores SLC
• Establezca la anulación de fallo al bit de encendido S:1/8 en el archivo de
estado para borrar el fallo cuando se desconecta y se vuelve a conectar la
alimentación eléctrica siempre que el programa de usuario no esté alterado.
• Establezca uno de los bits de carga automática S:1/0, S:1/11 ó S:1/12 en el
archivo de estado del programa en un EEPROM para transferir
automáticamente un programa nuevo sin fallo desde el módulo de memoria
hacia el RAM cuando se desconecta y se vuelve a conectar la alimentación
eléctrica.
Refiérase al apéndice B en este manual para obtener más información acerca de los
bits de estado S:1/13, S:1/8, S:1/10, S:1/11, S:1/12, S:5/0–7 y S:36/0–7.
Nota Usted puede declarar su propio fallo mayor específico para la aplicación
escribiendo su propio valor único a S:6 y luego estableciendo el bit S:1/13.
13–1
Manual de referencia del juego de instrucciones
Nota Usted puede declarar su propio fallo mayor específico a la aplicación escribiendo
su propio valor único a S:6 y luego estableciendo el bit S:1/13 para evitar el uso
repetido de los códigos definidos por el sistema. La gama de valores
recomendados para los fallos definidos por el usuario es FF00 a FFOF.
13–2
Cómo localizar y corregir fallos
Específico para SLC 5/03 y SLC 5/04 – El borrar estos bits con el interruptor de
llave en la posición MARCHA causa que el procesador entre inmediatamente
en el modo de marcha.
Si usted está en línea con un procesador SLC 5/03 ó SLC 5/04 con el
interruptor de llave en la posición de MARCHA y presiona la tecla de función
de borrado de fallo mayor, se le advierte que el procesador entrará en el modo
de marcha un vez borrado el fallo.
Procesadores SLC
13–3
Manual de referencia del juego de instrucciones
Mensajes de fallo
Esta sección contiene mensajes de fallo que puede ocurrir durante la operación de
los controladores MicroLogix 1000 y los procesadores SLC. Cada tabla enumera la
descripción del código de error, la causa probable y la acción correctiva
recomendada.
13–4
Cómo localizar y corregir fallos
13–5
Preface
Manual de referencia del juego de instrucciones
Errores de encendido
Código de
Mensaje de advertencia Descripción Acción recomendada
error (hex)
0001 DEFAULT PROGRAM El programa predeterminado se • Vuelva a cargar el programa y
LOADED carga en la memoria del entre en el modo de marcha
controlador. Esto ocurre: REM.
• al momento de encendido si la • Comuníquese con su
interrupción de alimentación representante local de
eléctrica ocurrió en medio de AllenĆBradley si el error persiste.
una carga
• si el programa de usuario está
alterado al momento de
encendido, el programa
predeterminado se carga.
0002 UNEXPECTED RESET El controlador se restableció inesĆ • Refiérase a las pautas de
peradamente debido a un entorno conexión a tierra corresponĆ
ruidoso o un fallo de hardware interĆ dientes en el capítulo 1.
no. Si el programa de usuario • Comuníquese con su
cargado al controlador es válido, los representante local de
datos iniciales cargados con el proĆ AllenĆBradley si el error persiste.
grama se usan. El bit de datos
retentivos perdidos (S:5/8) se estaĆ
blece. Si el programa de usuario es
no válido, el programa predetermiĆ
nado se carga.
0003 EEPROM MEMORY IS El programa de usuario está • Durante la desconexión y reconeĆ
CORRUPT alterado y el programa xión de la alimentación eléctrica.
predeterminado se carga. es posible que ocurriera un proĆ
blema de ruido. Trate de descoĆ
nectar y volver a conectar la
alimentación eléctrica. Su prograĆ
ma puede ser válido, pero los
datos retentivos serán perdidos.
• Comuníquese con su
representante local de
AllenĆBradley si el error persiste.
0005 RETENTIVE DATA HAS BEEN Los archivos de datos (entrada, • Desconecte y vuelva conectar la
LOST salida, temporizador, contador, alim. eléctrica a su unidad.
entero, binario, control y estado) • Cargue su programa y vuelva a
están alterados. inicializar los datos necesarios.
• Encienda el sistema.
• Comuníquese con su
representante local de
AllenĆBradley si el error persiste.
13–6
Cómo localizar y corregir fallos
0008 FATAL INTERNAL El software del controlador ha • Desconecte y vuelva conectar la
SOFTWARE ERROR detectado una condición inválida alimentación eléctrica a su unidad.
dentro del hardware o software • Cargue su programa y vuelva a
después de finalizar el proceso de inicializar los datos necesarios.
encendido (después de los 2 • Encienda el sistema.
primeros segundos de operación). • Comuníquese con su represenĆ
tante local de AllenĆBradley si el
error persiste.
0009 FATAL INTERNAL El software del controlador ha • Desconecte y vuelva conectar la
HARDWARE ERROR detectado una condición inválida alimentación eléctrica a su
dentro del hardware durante el unidad.
proceso de encendido (dentro de • Cargue su programa y vuelva a
los 2 primeros segundos de inicializar los datos necesarios.
operación). • Encienda el sistema.
• Comuníquese con su
representante local de
AllenĆBradley si el error persiste.
0010 INCOMPATIBLE PROCESSOR El programa cargado no ha sido Si desea usar un microcontrolador
configurado para un con el programa, vuelva a
microcontrolador. configurar su controlador con MPS
o APS (seleccione Bol. 1761).
0016 STARTUP PROTECTION El sistema se ha encendido en el • Restablezca el bit S:1/9 si es
AFTER POWERLOSS; modo de marcha REM. El bit coherente con los requisitos de
S:1/9 IS SET S:1/13 está establecido y la rutina su aplicación y retorne el modo
de fallo de usuario se ejecuta a marcha REM o
antes de comenzar el primer escán • ponga a cero S:1/13, el bit de
fallo mayor.
del programa.
0018 USER PROGRAM IS Un programa no compatible se • Verifique la configuración y
INCOMPATIBLE WITH cargó. El programa no tiene el asegúrese que el procesador
OPERATING SYSTEM número correcto de archivos o no correcto haya sido
tiene los archivos de datos de seleccionado.
tamaño correcto. El programa • Si desea usar un microĆ
controlador con el programa,
predeterminado se carga. vuelva a configurar su
controlador con MPS o APS
(seleccione Bol. 1761).
13–7
Preface
Manual de referencia del juego de instrucciones
Errores de marcha
Código de Descripción
Mensaje de advertencia Acción recomendada
error (hex)
0004 RUNTIME MEMORY Mientras que el controlador estaba en • Desconecte y vuelva a conectar
INTEGRITY ERROR el modo de MARCHA o cualquier la alimentación eléctrica a su
modo de prueba, el ROM o RAM se unidad.
alteró. Si el programa de usuario es • Cargue su programa y vuelva a
válido, el programa y los datos iniciaĆ inicializar los datos necesarios.
les cargados al controlador se usan y el • Encienda el sistema.
bit de datos retentivos perdidos (S:5/8) • Comníquese con su
se establece. Si el programa de representante local de
usuario es válido, error 0003 ocurre. AllenĆBradley si el error persiste.
0020 MINOR ERROR AT END OF Un bit de fallo menor (bits 0-7) en Entre en la pantalla de archivo de
SCAN, SEE S:5 S:5 se estableció al final de escán. estado, borre el fallo y retorne al
modo de marcha REM.
0022 WATCHDOG TIMER El tiempo de escán de programa • Revise si el programa se ha
EXPIRED, SEE S:3 excedió el valor del límite de atrapado en un lazo y corrija el
tiempo sobrepasado del problema.
temporizador de control • Incremente el valor del límite de
(watchdog) (S:3H). tiempo sobrepasado del tempoĆ
rizador de control (watchdog) en
el archivo de estado.
0024 INVALID STI INTERRUPT Un intervalo STI inválido existe (no Establezca el intervalo STI entre
SETPOINT, SEE S:30 entre 0 y 255). los valores de 0 y 255.
0025 TOO MANY JSRs IN STI Hay más de 3 subrutinas anidadas Corrija el programa de usuario para
SUBROUTINE en la subrutina STI (archivo 5). cumplir con los requisitos y
restricciones de la instrucción JSR, y
luego vuelva a cargar el programa y
entre en el modo de marcha REM.
0027 TOO MANY JSRs IN FAULT Hay más de 3 subrutinas anidadas Corrija el programa de usuario para
SUBROUTINE en la rutina de fallo (archivo 3). cumplir con los requisitos y
restricciones de la instrucción JSR, y
luego vuelva a cargar el programa y
entre en el modo de marcha REM.
002A INDEXED ADDRESS TOO El programa hace referencia a un Corrija el programa de usuario
LARGE FOR FILE elemento más allá de un límite de para que no exceda los límites de
archivo a través del direccionaĆ archivo.
miento indexado.
002B TOO MANY JSRs IN HSC Hay más de 3 subrutinas anidadas Corrija el programa de usuario para
en la rutina del contador de alta cumplir con los requisitos y
velocidad (archivo 4). restricciones de la instrucción JSR, y
luego vuelva a cargar el programa y
entre en el modo de marcha REM.
0030 SUBROUTINE NESTING Hay más de 8 subrutinas anidadas Corrija el programa de usuario para
EXCEEDS LIMIT OF 8 en el archivo de programa principal cumplir con los requisitos y restricĆ
(archivo 2). ciones para el archivo de programa
principal, y luego vuelva a cargar el
programa y entre en el modo de
marcha REM.
13–8
Cómo localizar y corregir fallos
0031 " "! 1',),37( (. 241*4$/$ 2$4$ 37(
. 241*4$/$ &106,(0( 70$
!"! !! 61'$5 .$5 ,05647&&,10(5 5($0
,05647&&,<0(5 37( 01 (5
4(52$.'$'$5 214 (. &10641.$'14 9
&1/2$6,%.( &10 (.
.7(*1 87(.8$ $ &$4*$4 (. 241*4$/$
/,&41&10641.$'14 14 (-(/2.1
9 (064( (0 (. /1'1 '( /$4&+$
# 1
! "0 2$4;/(641 '( .10*,67'215,&,<0 144,-$ (. 241*4$/$ 2$4$ $5(*74$4
" '( ,05647&&,<0 '(. 5(&7(0&,$'14 37( .15 2$4;/(6415 '( .10*,67' 9
,0',&$ 70 27061 /;5 $..; '(. ),0$. 215,&,<0 01 ,0',37(0 70 27061 /;5
'( 70 $4&+,81 '( '$615 $..; '(. $4&+,81 '( '$615 #7(.8$ $
&$4*$4 (. 241*4$/$ 9 (064( (0 (.
/1'1 '( /$4&+$
"" . 2$4;/(641 '( .10*,67' '( 70$ 144,-$ (. 241*4$/$ 2$4$ $5(*74$4
! ,05647&&,<0 " 37( (. 2$4;/(641 '( .10*,67' 01
" 1 " ,0',&$ 70 27061 /;5 ,0',37( 70 27061 /;5 $..; '(.
$..; '(. ),0$. '( 70 $4&+,81 '( $4&+,81 '( '$615 #7(.8$ $ &$4*$4
'$615 (. 241*4$/$ 9 (064( (0 (. /1'1 '(
/$4&+$
!# #" ! "0 8$.14 0(*$6,81 5( &$4*< $ 70 , (. 241*4$/$ 64$05),(4( 8$.14(5 $
! ""! 8$.14 24(5(.(&&,10$'1 '( .$ 2$.$%4$ $&7/7.$'$ 1
6(/214,:$'14 1 $&7/7.$'14 24(5(.(&&,10$'$ '( 70
6(/214,:$'14 $5(*=4(5( 37( (5615
8$.14(5 01 5($0 0(*$6,815 144,-$
(. 241*4$/$ 87(.8$ $ &$4*$4 9
(064( (0 (. /1'1 '( /$4&+$
!"! . 241*4$/$ &106,(0( 70$ 144,-$ (. 241*4$/$ 87(.8$ $
! !"! ,05647&&,<0 '( ),0 6(/214$. ! &$4*$4 9 (064( (0 (. /1'1 '(
(0 $4&+,81
< &7$0'1 5( 75$ /$4&+$
&1/1 57%476,0$ '( ,06(4472&,<0
# ! "0 &(41 1 70 8$.14 24(5(.(&&,1> • #(4,),37( 37( .15 8$.14(5
! "! 0$'1 $.61 0(*$6,81 5( &$4*< (0 (. 24(5(.(&&,10$'15 5($0 8;.,'15
&106$'14 &7$0'1 (. • 144,-$ (. 241*4$/$ 87(.8$ $
(4$ 70 &106$'14 241*4(5,81 1 (. &$4*$4 9 (064( (0 (. /1'1 '(
8$.14 24(5(.(&&,10$'1 $.61 (4$ /;5 /$4&+$
%$-1 1 ,*7$. 37( (. 8$.14 24(5(.(&>
&,10$'1 %$-1 &7$0'1 (. (4$
70 &106$'14 %,',4(&&,10$.
""! !" "0$ ,05647&&,<0 ! 5( (0&7(064$ .,/,0( .$ ,05647&&,<0 ! 87(.8$
!"! ! (0 (. $4&+,81 '( 241*4$/$ 24,0&,2$. $ &$4*$4 (. 241*4$/$ 9 (064( (0 (.
$4&+,81 /1'1 '( /$4&+$
13–9
Preface
Manual de referencia del juego de instrucciones
Código de Descripción
Mensaje de advertencia Acción recomendada
error (hex)
0040 "!"! #& $! :'3*4 1'8 8'1/*'8 ,:+743 +8)7/9'8 • +,/?7'8+ ' 1'8 5':9'8 *+
" = 1+@*'8 547 +1 )439741'*47 1' )43+</B3 ' 9/+77' )477+8543D
1+)9:7' ,'11B 8 548/(1+ 6:+ ,:+7' */+39+8 +3 +1 )'5@9:14
)':8'*4 547 7:/*4 • 3)/+3*' +1 8/89+2'
• 42:3@6:+8+ )43 8:
7+57+8+39'39+ 14)'1 *+
11+3D7'*1+= 8/ +1 +7747 5+78/89+
%! "!"! ! "3 (/9 *+ 8'1/*' '*/)/43'1 8+ • 89'(1+>)' 4 )'2(/+ 8:
!" +89'(1+)/B ):'3*4 8+ 7+89'(1+)/B +1 '51/)')/B3 5'7' 6:+ +8948
(/9 *+ 8+1+))/B3 *+ (/9 '*/)/43'1 (/98 8+ ')9/;+3
+3 +1 '7)./;4 *+ +89'*4 • 477/0' +1 574-7'2' ;:+1;' '
'7' 148 )439741'*47+8 *+
)'7-'7 = +397+ +3 +1 24*4 *+
2'7).'
5:3948 +894 /3)1:=+ 148 (/98
'7' 148 )439741'*47+8 *+
5:3948 +894 /3)1:=+ 148 (/98
Error de carga
Código de Descripción
Mensaje de advertencia Acción recomendada
error (hex)
" "3 574-7'2' 34 )425'9/(1+ 8+ • #+7/,/6:+ 1' )43,/-:7')/B3 =
! $! )'7-B 1 574-7'2' 34 9/+3+ +1 '8+-C7+8+ 6:+ +1 574)+8'*47
! & ! 3C2+74 )477+)94 *+ '7)./;48 4 34 )477+)94 .'=' 8/*4
9/+3+ 148 '7)./;48 *+ *'948 *+ 8+1+))/43'*4
9'2'A4 )477+)94 1 574-7'2' • / *+8+' :8'7 :3 2/)74)43974D
1'*47 )43 +1 574-7'2' ;:+1;' '
57+*+9+72/3'*4 8+ )'7-' )43,/-:7'7 8: )439741'*47 )43
4 8+1+))/43+ 41
13–10
Cómo localizar y corregir fallos
Errores de encendido
Código de
Descripción Causa probable Acción recomendada
error (hex)
0001 Error NVRAM. • Ruido, Corrija el problema, vuelva a
• relámpago, cargar el programa y ejecute.
• conexión incorrecta a tierra, Puede usar la característica de
• falta de supresión de carga automática con un módulo
sobretensión en las salidas de memoria para volver a cargar
con cargas inductivas o automáticamente el programa y
• fuente de alimentación entrar en el modo de marcha.
eléctrica insuficiente.
• Pérdida de batería o
condensador auxiliar.
0002 Límite de tiempo sobrepasado • Ruido, Corrija el problema, vuelva a
inesperado del control • relámpago, cargar el programa y ejecute.
(watchdog) de hardware • conexión incorrecta a tierra, Puede usar la característica de
• falta de supresión de carga automática con un módulo
sobretensión en salidas con de memoria para volver a cargar
cargas inductivas o automáticamente el programa y
• fuente de alimentación entrar en el modo de marcha.
eléctrica insuficiente.
0003 Error de memoria del módulo de El módulo de memoria está Vuelva a programar el módulo de
memoria. Este error también alterado. memoria. Si el error persiste,
puede ocurrir cuando se entra en reemplace el módulo de
el modo de marcha REM. memoria.
0007 Fallo durante la transferencia del El módulo de memoria está Vuelva a programar el módulo de
módulo de memoria. alterado. memoria. Si el error persiste,
reemplace el módulo de
memoria.
13–11
Preface
Manual de referencia del juego de instrucciones
Código de
Descripción Causa probable Acción recomendada
error (hex)
0008 Error software interno. Un error inesperado de software Corrija el problema, vuelva a
ocurrió debido a: cargar el programa y ejecute.
• Ruido, Puede usar la característica de
• relámpago, carga automática con un módulo
• conexión a tierra incorrecta, de memoria para volver a cargar
• falta de supresión de automáticamente el programa y
sobretensión en la salida con entre en el modo de marcha.
cargas inductivas o Si el problema vuelve a ocurrir,
• fuente de alimentación comníquese con su
insuficiente. representante RSI.
0009 Error de hardware interno. Un error inesperado de hardware Corrija el problema, vuelva a
ocurrió debido a: cargar el programa y ejecute.
• Ruido, Puede usar la característica de
• relámpago, carga automática con un módulo
• conexión incorrecta a tierra, de memoria para volver a cargar
• falta de supresión de automáticamente el programa y
sobretensión en la salida con entre en el modo de marcha.
cargas inductivas o Si el problema vuelve a ocurrir,
• fuente de alimentación comuníquese con su
eléctrica insuficiente. representante A-B.
13–12
Cómo localizar y corregir fallos
Código de
Descripción Causa probable Acción recomendada
error (hex)
0014 Error de archivo interno. • Ruido, Corrija el problema, vuelva a
• relámpago, cargar el programa y ejecute. Si
• conexión incorrecta a tierra, el error persiste, asegúrese de
• falta de supresión de sobreĆ usar el software de programación
tensión en las salidas con APS aprobado por RSI para
cargas inductivas o desarrollar y cargar el programa.
• fuente de alim. eléc. insuficiente
0015 Error de archivo de • Ruido, Corrija el problema, vuelva a
configuración. • relámpago, cargar el programa y ejecute. Si
• conexión incorrecta a tierra, el error persiste, asegúrese de
• falta de supresión de sobreĆ usar el software de programación
tensión en las salidas con APS aprobado por RSI para
cargas inductivas o desarrollar y cargar el programa.
• fuente de alim. eléc. insuficiente
0016 Protección de encendido El bit de estado S:1/9 ha sido • Restablezca el bit S:1/9 si eso
después de la pérdida de establecido por el programa de es coherente con los
alimentación eléctrica. Existe usuario. Refiérase al capítulo 1 requisitos de aplicación y
una condición de error durante el para obtener detalles acerca de retorne el modo a marcha o
encendido cuando el bit S:1/9 se la operación del bit de estado • ponga a cero S:1/13, el bit de
establece y ocurre una interrupĆ S:1/9. fallo mayor, antes de que se
ción del suministro eléctrico alcance el final del primer
durante el estado en marcha. escán de programa.
0017 Desigualdad del programa de El bit S:2/9 es establecido y el Transfiera el programa de
usuario del módulo programa de usuario del módulo módulo de memoria a NVRAM y
NVRAM/memoria . de memoria no corresponde al cambie al modo de marcha.
programa de usuario NVRAM.
0018 Programa de usuario no compaĆ El programa de usuario es Comníquese con su representante
tible. Desigualdad del tipo de demasiado avanzado y no se RSI para obtener información acerĆ
sistema de operación. Este error puede ejecutar en el sistema de ca de sistemas de operación disĆ
también puede aparecer durante operación actual. ponibles para el procesador 5/03.
el encendido.
0019 Un número de etiqueta duplicado Una instrucción de etiqueta • Quite la etiqueta duplicada o
se detectó. duplicada o faltante se encontró • añada una etiqueta.
en una subrutina.
Errores de marcha
Código de
Descripción Causa probable Acción recomendada
error (hex)
001F Un problema de integridad del Un ruido, pérdida de comunicación Vuelva a cargar el programa y
programa ocurrió durante una o desconexión y reconexión de vuelva a introducir los cambios.
sesión de edición en línea. alim. eléc. ocurrió durante una
sesión de edición en línea.
0004 Un error de memoria ocurrió • Ruido, Corrija el problema, vuelva a
durante el modo de marcha. • relámpago, cargar el programa y ejecute.
• conexión a tierra, Puede usar la característica de
• falta de supresión de sobreĆ carga automática con un módulo
tensión en las salidas con de memoria para volver a cargar
cargas inductivas o el programa automáticamente y
• fuente de alim. eléc. insuficiente entrar en el modo de marcha.
13–13
*
Manual de referencia del juego de instrucciones
4" '
+*"("4& -+ (*'$ "4& *'%&
**'* !/
) bit de error menor se • Un overflow de instrucción Corrija el problema de
establece al final del escán. matemática o FRD ha ocurrido, programación, vuelva a cargar el
Refiérase a los bits de error • un error de instrucción de programa y entre en el modo de
menor S:5 (byte inferior registro de desplazamiento o marcha. Vea también los bits de
solamente). secuenciador se detectó, error menor S:5 en el apéndice B.
• un error mayor se detectó
durante la ejecución de una
rutina de fallo de usuario, o
• las direcciones de archivo
M0-M1 fueron indicadas en el
programa de usuario para una
ranura inhabilitada.
Un fallo de alim. eléc. remota de Procesadores compactos y FRN1 Procesadores fijos y FRN 1 a 4
un chasis de E/S de expansión A 4 SLC 5/01: la alimentación SLC 5/01: Desconecte y vuelva
ha ocurrido. eléctrica se interrumpió o la a conectar la alimentación
alimentación eléctrica se redujo eléctrica al chasis local.
Nota: Un sistema modular que momentáneamente bajo los
encuentra una condición de valores especificados para un Procesadores SLC 5/02 y
sobretensión o sobreintensidad chasis de expansión. procesadores FRN 5 SLC 5/01:
en cualquiera de sus fuentes de Vuelva a aplicar la alimentación
alim. eléc. puede provocar Procesadores SLC 5/02 y eléctrica al chasis de expansión.
cualquiera de los códigos de procesadores FRN 5 SLC 5/01:
error de E/S indicados en las Este código de error está
páginas 13-18 a 13-21 (en vez presente solamente mientras la
de código 0021). La condición alimentación eléctrica no se
de sobretensión o sobreintensiĆ aplica a un chasis de expansión.
dad se indica por un LED de Este es el único código que se
fuente de alim. eléc. apagado. pone a cero automáticamente. El
fallo se borrará cuando la
*'+'*+ "#'+ 0 alimentación eléctrica se vuelva a
! +" $ $$' aplicar al chasis de expansión.
$"% $3 *%', '-**"4
%"&,*+ )- $ (*'+5
'* +, & $ %''
%*! **'*
-+*2 )- $ ", **'*
%0'* ,&"'
+
('& *' -*&, $
(*4/"%' &&"' $
!+"+ $'$
*'+'* 0
(*'+'*+
&' + &+*"'
+'&,* 0 .'$.*
'&,* $ $"% $3 (*
*&-* $ %''
%*! & .1 )-
$ !+"+ +,2 *'&,'
$ $"% $3 $
.-$. "&""* $ +"+,%
13–14
Cómo localizar y corregir fallos
Código de
Descripción Causa probable Acción recomendada
error (hex)
0022 # +!$'& *3% &%+)&# • El tiempo de control • Incremente el límite de tiempo
(watchdog) de usuario ha sido (watchdog) se estableció sobrepasado del control
excedido. demasiado bajo para el (watchdog) en el archivo de
programa de usuario, o estado (S:3H), o
• el programa de usuario se • corrija el problema del
atrapó en un lazo. programa de usuario.
0023 Archivo de interrupción STI • Un número de archivo de • Inhabilite el punto de ajuste de
inválido o no existente. interrupción STI fue asignado interrupción STI (S:30) y el no.
en el archivo estado, pero el de archivo (S:31) en el archivo
archivo de subrutina no fue de estado, o
creado, o • cree un archivo de subrutina de
• el número de archivo de interrupción STI para el no. de
interrupción STI asignado era archivo asignado en el archivo
0, 1 ó 2. de estado (S:31). El no. de
archivo no debe ser 0, 1 ó 2.
0024 Intervalo de interrupción STI El punto de ajuste STI se • Inhabilite el punto de ajuste de
inválido (mayor que 2550 ms o encuentra fuera de los límites interrupción STI (S:30) y el no.
negativo) (mayor que 2550 ms o negativo). de archivo (S:31) en el archivo
de estado, o
• cree una rutina de interrupción
STI para el no. de archivo
indicado en el archivo de
estado (S:31). El no. de
archivo no debe ser 0, 1 ó 2.
0025 Exceso de profundidad de Una instrucción JSR está Corrija el programa de usuario
pila/llamadas JSR para la rutina llamando un número de archivo para cumplir con los requisitos y
STI. asignado a una rutina STI. restricciones para la instrucción
JSR, y luego vuelva a cargar el
programa y ejecute.
0026 Exceso de profundidad de Una instrucción JSR está Corrija el programa de usuario
pila/llamadas JSR para una llamando un número de archivo para cumplir con los requisitos y
rutina de interrupción de E/S asignado a una rutina de restricciones para la instrucción
interrupción de E/S. JSR, y luego vuelva a cargar el
programa y ejecute.
0027 Exceso de profundidad de Una instrucción JSR está Corrija el programa de usuario
pila/llamadas JSR para una llamando un número de archivo para cumplir con los requisitos y
rutina de fallo de usuario. asignado a una rutina de fallo de restricciones para la instrucción
usuario. JSR, y luego vuelva a cargar el
programa y ejecute.
0028 Valor de archivo de rutina de fallo • Un número de archivo de • Inhabilite el número de archivo
de protección de encendido" no rutina de fallo se creó en el de rutina de fallo (S:29) en el
válido o no existente. archivo de estado, pero el archivo de estado, o
archivo de rutina de fallo no • cree una rutina de fallo para el
fue creado físicamente, o número de archivo indicado en
• el número de archivo creado el archivo de estado (S:29). El
era 0, 1 ó 2. no. de archivo no debe ser 0,
1 ó 2.
13–15
Manual de referencia del juego de instrucciones
'
! ' #! '
%
La referencia de la dirección El programa está haciendo Corrija y vuelva a cargar el
indexada +,2 fuera de todo el referencias a un elemento,a programa de usuario. Este
espacio de archivo de datos través del direccionamiento problema no puede ser corregido
(rango de B3:0 al último indexado, el cual se encuentra escribiendo a la palabra de
archivo). fuera de los límites permitidos. registro de índice (S:24).
! Los límites son de B3:0 al último
! #! # $ & elemento del último archivo de
!" #' datos creado por el usuario.
!#"
# '
La referencia de dirección El programa está haciendo Corrija el programa de usuario,
indexada está fuera del archivo referencias a un elemento, a asigne más espacio de datos
de datos indicado específico. través del direccionamiento usando el mapa de memoria o
indexado, el cual se encuentra vuelva a guardar el programa
fuera del límite de archivo. permitiendo el cruzado de límites
de archivo. Vuelva a cargar el
programa de usuario. Este
problema no puede ser corregido
escribiendo a la palabra de
registro de índice (S:24).
Existe un número de archivo no El número de archivo existe, pero Verifique el tipo de archivo o cree
válido para una dirección no es el tipo de archivo correcto el número de archivo.
indirecta. o el número de archivo no existe.
El elemento de dirección El elemento indirectamente Cree el elemento indirectamente
indirecto indicado está fuera de indicado no existe, pero el tipo de indicado.
los límites del archivo de datos. archivo es correcto y existe.
Existe un subelemento de Se hace referencia a un Corrija las referencias y reintente.
dirección indirecto indicado no subelemento incorrectamente o
válido. una referencia indirecta ha sido
efectuada a un archivo M.
Ranura de entrada DII no válida. La ranura indicada está vacía o Cambie la ranura de entrada a
una tarjeta de E/S no discreta una tarjeta de E/S discreta.
está presente.
Archivo de interrupción DII no • Un número de archivo de Inhabilite la función DII
válido o no existente. interrupción DII fue asignado escribiendo un cero a esta
al archivo de estado, pero el ubicación, o cambie el valor a un
archivo de subrutina no fue archivo de escalera válido
creado, o (3-255).
• el número de archivo de
interrupción DII asignado era
0, 1 ó 2.
13–16
Cómo localizar y corregir fallos
Código de
Descripción Causa probable Acción recomendada
error (hex)
0030 % )-3%-3< 2!+3!1 4- !1#()5. $% • Más que el máximo de 4 (8 si Corrija el programa de usuario
24"143)-! !-)$!$. %- exceso. usa un procesador 5/02 ó para cumplir con los requisitos y
Este código también puede 5/03) niveles de subrutinas restricciones para la instrucción
significar que un problema tiene anidadas es llamado en el JSR y luego vuelva a cargar el
posibles rutinas recursivas. programa de usuario, o programa y ejecute.
• la(s) subrutina(s) llama(n)
subrutina(s) de un nivel
anterior.
0031 Se detectó una referencia de El tipo o nivel de serie del • Reemplace el procesador con
instrucción no compatible. procesador no tiene capacidad uno que tenga capacidad para
para un instrucción que reside en el programa de usuario, o
el programa de usuario, o usted • modifique el programa de
ha programado una constante usuario para que todas las
como el primer operando de una instrucciones sean respaldaĆ
instrucción de comparación. das por el procesador, y luego
vuelva a programar y ejecute.
0032 Un parámetro de longitud/ El programa está haciendo Corrija el programa de usuario o
posición de instrucción de referencia a un elemento fuera asigne más espacio de archivo
secuenciador indica más allá del del límite de archivo establecido de datos usando el mapa de
final de un archivo de datos. por la instrucción de memoria, y luego vuelva a cargar
secuenciador. y ejecute.
0033 El parámetro de longitud de una El programa está haciendo Corrija el programa de usuario o
instrucción LFU, LFL, FFU, FFL, referencia a un elemento fuera asigne más espacio de archivo
BSL o BSR indica más allá del del límite de archivo establecido de datos usando el mapa de
final de un archivo de datos. por la instrucción. memoria, y luego vuelva a cargar
y ejecute.
0034 Un valor negativo para un El valor acumulador o preselecĆ Si el programa de usuario
acumulador de temporizador o cionado de un temporizador en el transfiere valores a la palabra
valor preseleccionado fue programa de usuario se detectó acumulada o preseleccionada de
detectado. como negativo. un temporizador, asegúrese que
Procesadores fijos con entrada estos valores no puedan ser
de 24 VCC solamente: un HSC negativos. Corrija el programa
preseleccionado negativo o de de usuario, vuelva a cargar y
cero se detectó en una ejecute.
instrucción HSC.
0034 Un HSC preseleccionado El valor preseleccionado para la Si el programa de usuario
(relacionado con negativo o de cero se detectó en instrucción HSC está fuera del transfiere valores a la palabra
la instrucción una instrucción HSC. rango válido. El rango válido es acumulada o preseleccionada de
fija 5/01 HSC) 1-32767. un temporizador, asegúrese que
estos valores no puedan ser
negativos. Corrija el programa
de usuario, vuelva a cargar y
ejecute.
0035 La instrucción TND, SV o REF se Una instrucción TND, SVC o REF Corrija el programa de usuario,
llama dentro de una rutina de se usa en una rutina de vuelva a cargar y ejecute.
interrupción o fallo de usuario. interrupción o fallo de usuario.
Esto es ilegal.
13–17
Preface
Manual de referencia del juego de instrucciones
Código de
Descripción Causa probable Acción recomendada
error (hex)
! valor no )+" & usa para un Un valor no válido se cargó en El código 0036 se trata en el
parámetro de instrucción PID. una instrucción PID por el capítulo 9 de este manual.
programa de usuario o por el
usuario vía la función de monitor
de datos para esta instrucción.
Una instrucción RET se detectó Una instrucción RET reside en el Corrija el programa de usuario,
en un archivo que no es una programa principal. vuelva a cargar y ejecute.
subrutina.
Ocurrió un intento de escribir a Se intentó escribir a una Elimine la protección y reintente
un archivo de datos protegido. dirección indirecta ubicada en un la función.
archivo que tiene protección de
archivo de datos constante.
Una longitud de cadena no válida La primera palabra de los datos Verifique la primera palabra de
se detectó en un archivo de de cadena contiene un valor los elementos de datos de
cadena. negativo, de cero o mayor que 82. cadena en busca de valor
inválidos y corrija los datos de
usuario.
13–18
Cómo localizar y corregir fallos
5&*(. &'
'1%0*/%*5- #31# /0.$#$+' %%*5- 0'%.,'-&#&#
'00.0 )'4
44 Un error de datos de chasis se • Ruido, Corrija el problema, borre el fallo
detecta. • relámpago, y vuelva a entrar en el modo de
• conexión incorrecta a tierra, marcha.
• falta de supresión de sobreĆ
tensión en las salidas con
cargas inductivas, o
• fuente de alimentación
eléctrica insuficiente.
44 Un error de tiempo de ejecución Si éste es un módulo de E/S Desconecte y vuelva a conectar
atascado" se detecta en un discretas, se trata de un la alimentación eléctrica el
módulo de E/S. problema de ruido. Si éste es un sistema. Si eso no corrige el
módulo de E/S especial, refiérase problema, reemplace el módulo.
al manual de usuario corresponĆ
diente para obtener la causa
probable.
44 Un módulo requerido para el Un módulo de E/S configurado • Inhabilite la ranura en el
programa de usuario se detecta para una ranura determinada archivo de estado (S:11 y
como faltante o quitado. hace falta o ha sido eliminado. S:12), o
• inserte el módulo requerido en
la ranura.
13–19
Preface
Manual de referencia del juego de instrucciones
Código de
Descripción Causa probable Acción recomendada
error (hex)
Cuando está de ida a marcha, un • La ranura de E/S no está • Inhabilite la ranura en el
programa declara una ranura configurada para un módulo, archivo de estado (S:11 y
como no usada y se detecta que pero hay un módulo presente, o S:12), borre el fallo y ejecute,
dicha ranura tiene un módulo de • el módulo de E/S se ha • quite el módulo, borre el fallo y
E/S insertado. Este código restablecido por sí mismo. ejecute, o
también puede significar que un • modifique la configuración de
módulo de E/S se ha E/S para que incluya el
restablecido. módem, y luego vuelva a
cargar el programa y ejecute.
• Si usted percibe que el
módulo se ha restablecido,
borre el error mayor y ejecute.
Específico para SLC 5/03 - Se Un chasis sin módulos de E/S. Inhabilite todas las ranuras en el
intentó entrar en el modo de chasis vacío (vea S:11 y S:12).
marcha o prueba con un chasis
vacío.
Un módulo requerido para el Un módulo de E/S en una ranura • Reemplace el módulo con el
programa de usuario se detecta determinada es de tipo diferente módulo correcto, borre el fallo
que es del tipo incorrecto. que el configurado para dicha y ejecute, o
ranura por el usuario. • cambie la configuración de
E/S para la ranura, vuelva a
cargar el programa y ejecute.
Un módulo de E/S discreto • Si éste es un módulo de E/S • Si éste es un módulo de E/S
requerido para el programa de discreto, el conteo de E/S es discreto, reemplácelo con un
usuario se detecta que tiene un diferente del conteo módulo con el conteo de E/S
conteo incorrecto de E/S. seleccionado en la seleccionado. Luego, borre el
configuración de E/S. fallo y ejecute, o
Este código también puede • Si éste es un módulo de E/S • cambie la configuración de
significar que un variador de especial, el controlador de E/S para que corresponda al
tarjeta especial es incorrecto. tarjeta es incorrecto. módulo existente, luego
vuelva a cargar el programa y
ejecute.
• Si éste es un módulo de E/S
especial, refiérase al manual
de usuario para dicho módulo.
La configuración de chasis La configuración de chasis Corrija la configuración de
especificada en el programa de especificada por el usuario no chasis, vuelva a cargar el
usuario se detecta como corresponde al hardware. programa y ejecute.
incorrecta.
Un módulo de E/S especial no ha El módulo de E/S especial no Desconecte y vuelva a conectar
respondido a un comando de responde al procesador dentro la alim. eléc. al chasis. Si esto
memoria de bloque compartido del tiempo permitido. no corrige el problema, refiérase
dentro del límite de tiempo al manual de usuario del módulo
requerido. de E/S especial. Puede ser
necesario reemplazar el módulo.
Un módulo de E/S especial ha Refiérase al manual de usuario Desconecte y vuelva a conectar
generado un fallo genérico. El bit del módulo de E/S especial. la alim. eléc. al chasis. Si esto
de fallo de tarjeta se establece no corrige el problema, refiérase
(1) en el byte de estado del al manual de usuario del módulo
módulo. de E/S especial. Puede ser
necesario reemplazar el módulo.
13–20
Cómo localizar y corregir fallos
" módulo de E/S especial no ha Un módulo de E/S especial no Refiérase al manual de usuario
respondido a un comando como finalizó un comando desde el del módulo de E/S especial.
finalizado dentro del límite de procesador dentro del tiempo Puede ser necesario reemplazar
tiempo requerido. permitido. el módulo.
Problema de interrupción de Si éste es un módulo de E/S Desconecte y vuelva a conectar
hardware. discreto, se trata de un problema la alim. eléc. al chasis. Verifique
de ruido. Si éste es un módulo si hay un problema de ruido y
de E/S especial, refiérase al asegúrese de usar las prácticas
manual de usuario del módulo. de conexión a tierra adecuadas.
Si éste es un módulo de E/S
especial, refiérase al manual de
usuario del módulo. Puede ser
necesario reemplazar el módulo.
Error de configuración de archivo El archivo G es incorrecto para el Refiérase al manual de usuario
G - el tamaño del archivo G de módulo en esta ranura. del módulo de E/S especial.
programa de usuario excede la Vuelva a configurar el archivo G
capacidad del módulo. según lo instruido en el manual, y
luego vuelva a cargar y ejecute.
Error de configuración de archivo Los archivos M0-M1 son Refiérase al manual de usuario del
M0-M1 - el tamaño de archivo incorrectos para el módulo en módulo de E/S especial. Vuelva a
M0-M1 del programa de usuario esta ranura. configurar el archivo M0-M1 según
excede la capacidad del módulo. lo instruido en el manual, luego
vuelva a cargar y ejecute.
El servicio de interrupción El módulo especial de E/S ha Refiérase al manual de usuario del
solicitado no es comptabile con el solicitado servicio y el procesador módulo de E/S especial para
procesador. no tiene capacidad para ello. determinar cuáles procesadores
tienen capacidad para el uso del
módulo. Cambie el procesador a
uno que tenga capacidad para el
módulo.
Error de controlador (software) Software de controlador de E/S Vuelva a cargar el programa
del procesador de E/S. de procesador alterado. usando software APS aprobado
por RSI.
Identifica un error mayor - -
recuperable específico para el
módulo de E/S.
Identifica un error mayor no - -
recuperable específico para el
módulo de E/S.
Problema de interrupción en una Un módulo especial de E/S Refiérase al manual de usuario
ranura inhabilitada. solicitó servicio durante la del módulo especial de E/S.
inhabilitación de una ranura. Puede ser necesario reemplazar
el módulo.
Una ranura inhabilitada ha Un módulo especial de E/S en Desconecte y vuelva a conectar
fallado. una ranura inhabilitada ha la alim. eléc. al chasis. Si esto
fallado. no corrige el problema, refiérase
al manual de usuario del módulo
especial de E/S. Puede ser
necesario reemplazar el módulo.
13–21
Preface
Manual de referencia del juego de instrucciones
Código de
Descripción Causa probable Acción recomendada
error (hex)
xx92 Archivo de subrutina de La información del archivo de Corrija la información de archivo
interrupción (ISR) de módulo configuración de E/S / ISR para de configuración de E/S / ISR
inválido o no existente. un módulo de E/S especial no es para el módulo de E/S especial.
correcta. Refiérase al manual de usuario
del módulo para obtener la
información de archivo ISR
correcta. Luego, vuelva a cargar
el programa y ejecute.
xx93 Error mayor específico para el El procesador no reconoce el Refiérase al manual de usuario
módulo de E/S sin capacidad. código de error de un módulo de del módulo de E/S especial.
E/S especial.
xx94 Un módulo ha sido detectado El módulo fue insertado en el Nunca se debe insertar un
como insertado con la chasis conectado a la módulo en un chasis conectado a
alimentación eléctrica conectada alimentación eléctrica o el la alimentación eléctrica. Si eso
en el modo de marcha o prueba. módulo se ha restablecido. ocurre y el módulo no sale
Esto también puede significar dañado,
que un módulo de E/S se ha • quite el módulo, borre el fallo y
restablecido. ejecute, o
• añada el módulo a la
configuración de E/S, haga
referencia al módulo en el
programa de usuario donde se
requiera, vuelva a cargar el
programa y ejecute.
13–22
Cómo localizar y corregir fallos
13–23
Manual de referencia del juego de instrucciones
13–24
Archivo de estado del controlador MicroLogix 1000
Este apéndice trata las funciones del archivo de estado de los controladores
MicroLogix 1000.
A–1
Manual de referencia del juego de instrucciones
A–2
Archivo de estado del controlador MicroLogix 1000
A–3
Manual de referencia del juego de instrucciones
A–4
Archivo de estado del controlador MicroLogix 1000
A–5
Manual de referencia del juego de instrucciones
S:1/13 Error mayor Configuración Este bit es establecido por el controlador
detenido dinámica cuando se encuentra un error mayor. El
controlador entra en una condición de fallo. La
palabra S:6, el código de fallo, contendrá un
código que se puede usar para diagnosticar la
condición de fallo. Cuando el bit S:1/13 se
establece, el controlador:
• coloca todas las salidas en un estado
seguro (las salidas están desactivadas) y
activa el LED de fallo,
• o entra en la rutina de fallo de usuario con
las salidas activas (si está en el modo de
marcha REM), permitiendo así que la lógica de
escalera de la rutina de fallo intente una
recuperación de la condición de fallo. Si la
rutina de fallo de usuario determina que la
recuperación es necesaria, ponga a cero
S:1/13 usando la lógica de escalera antes de
salir de la rutina de fallo. Si la lógica de
escalera de la rutina de fallo no entiende el
código de fallo, o si la rutina determina que no
es preferible continuar la operación, el
controlador sale de la rutina de fallo con el bit
S:1/13 establecido. Las salidas se colocan en
un estado seguro y el LED de FALLO se
activa.
Cuando usted pone a cero el bit S:1/13 usando
un dispositivo de programación, el modo de
controlador cambia de fallo a programa
remoto. Puede mover un valor a S:6, luego
establezca S:1/13 en el programa de escalera
para generar un error mayor específico para la
aplicación. Todos los fallos generados por la
aplicación son recuperables
independientemente del valor usado.
#& " $ ! " !
% " ! * "
" * % !(
! ! " ! ! "
!!
"
'
#! ! " *
#"# " * "
' ! ! (
* )
* "
* + ! #! " " ! "
*
!
" *
% ) *
A–6
Archivo de estado del controlador MicroLogix 1000
A–7
Manual de referencia del juego de instrucciones
S:2/14 %)%##(8+ $% Configuración Establezca este bit cuando vaya a usar las
,2%.&),3 dinámica instrucciones de adición y resta de 32 bits.
*!0%*60(#, Cuando S:2/14 es establecido y el resultado
de una instrucción ADD, SUB, MUL o DIV no
se puede representar en la dirección de
destino (underflow u overflow),
• el bit de overflow S:0/1 se establece,
• el bit de interrupción por overflow S:5/0 se
establece,
• y la dirección de destino contiene los 16
bits sin signo truncados y menos
significativos del resultado.
La condición de fallo de S:2/14 se restablece
(0). Cuando S:2/14 es restablecido y el
resultado de una instrucción ADD, SUB, MUL
o DIV no se puede representar en la dirección
de destino (underflow u overflow),
• el bit de overflow S:0/1 se establece,
• el bit de interrupción por overflow S:5/0
se establece,
• y la dirección de destino contiene 32767 si
el resultado es positivo o -32768 si el
resultado es negativo.
Nota: el estado del bit S:2/14 no afecta la
instrucción DDV. Además, no afecta el
contenido del registro matemático cuando se
usan las instrucciones MUL y DIV.
Para programar esta característica, use la
función de monitor de datos para establecer o
poner a cero este bit. Para proporcionar
protección contra modificaciones accidentales
del monitor de datos de su selección,
programe una instrucción OTL incondicional a
la dirección S:2/14 para asegurar la nueva
operación de overflow matemático. Programe
una instrucción incondicional OTU a la
dirección S:2/14 para asegurar la operación
original de overflow matemático.
S:2/15 Reservado
A–8
Archivo de estado del controlador MicroLogix 1000
A–9
Manual de referencia del juego de instrucciones
S:4 Base de Estado Todos los 16 bits de esta palabra son
tiempo evaluadas por el controlador. El valor de esta
palabra es puesto a cero al momento de
encendido en el modo de marcha REM o
cuando se entra en el modo de marcha REM o
prueba REM. Desde ese punto en adelante,
se incrementa cada 10 ms.
: Usted puede escribir
cualquier valor a S:4. Comenzará a
incrementarse a partir de dicho valor.
Usted puede usar cualquier bit individual de
esta palabra en el programa de usuario como
bit de reloj de ciclo de trabajo de 50%. Las
velocidades de reloj para S:4/0 a S:4/15 son:
20, 40, 80, 160, 320, 640, 1280, 2560, 5120,
10240, 20480, 40960, 81920, 163840, 327680 y
655360 ms.
La aplicación que usa el bit debe ser evaluada
a una velocidad dos veces más rápida que la
velocidad de reloj del bit. En el ejemplo
siguiente, el bit S:4/3 alterna cada 80 ms, lo
cual produce una velocidad de reloj de 160
ms. Para mantener la exactitud de este bit en
su aplicación, la instrucción que usa el bit
S:4/3 (O:1/0 en este caso) debe ser evaluada
por lo menos una vez cada 79.999 ms
S:4 O:1
] [ ( )
3 0
S:4/3 y la salida
ciclo de S:4/3 O:1/0 alternan cada
en 160 ms 80 ms. O:1/0 debe
ser evaluado por lo
menos una vez cada
79.999 ms.
S:5 Bits de error Los bits de esta palabra son establecidos por
menor el controlador para indicar que ha ocurrido un
error menor en el programa de escalera. Los
errores menores, bits 0 a 7, retornan al error
mayor 0020H si un bit se detecta como
establecido al final del escán. Estos bits se
ponen a cero automáticamente durante una
desconexión y reconexión de la alimentación
eléctrica.
A–10
Archivo de estado del controlador MicroLogix 1000
A–11
Manual de referencia del juego de instrucciones
S:5/14 a
Reservado
S:5/15
S:6 Código de Estado El controlador introduce un código
error mayor hexadecimal en esta palabra cuando se
declara el error mayor. Refiérase a S:1/13. El
código define el tipo de fallo, según lo indicado
en las páginas siguientes. Esta palabra no es
borrada por el controlador.
Los códigos de error son presentados,
almacenados y mostrados en pantalla en
formato hexadecimal.
Si usted introduce un código de fallo como
parámetro en una instrucción en el programa
de escalera, debe convertir el código en
decimal.
: Puede declarar su
proprio fallo mayor específico para la
aplicación escribiendo un valor único a S:6 y,
luego, estableciendo el bit S:1/13.
Interrogue el valor de S:6 en la rutina de fallo
de usuario para determinar el tipo de fallo que
ha ocurrido.
Clasificaciones de fallo: Los fallos se
clasifican como no atribuibles al usuario, no
recuperables y recuperables.
Las descripciones y clasificaciones de código
de error se enumeran en las páginas
siguientes. Las categorías son:
• errores de encendido
• errores de ida a marcha
• errores de marcha
• errores de descarga
A–12
Archivo de estado del controlador MicroLogix 1000
Clasificación de fallo
Usuario
Código
DirecĆ No No
de error Errores de encendido Recuperable
ción usuario recuperable
(hex)
programa predeterminado
S:6 0001 X
se cargó.
Un restablecimiento
0002 X
inesperado ocurrió.
La memoria EEPROM está
0003 X
alterada.
Un error fatal interno de
0008 X
software ocurrió.
Un error fatal interno de
0009 X
hardware ocurrió.
Clasificación de fallo
Usuario
Código Errores de ida a marcha
DirecĆ No No
de error À Recuperable
ción (GTR) usuario recuperable
(hex)
Los datos retentivos se X
S:6 0005
pierden.
El programa de descarga no
0010 es un programa de X
controlador.
Se establece la protección
de encendido después de
una pérdida de alimentación
eléctrica, S:1/9, se
establece. El usuario debe
0016 verificar en busca de una X
condición de pérdida de
datos retentivos si la rutina
de fallo de usuario se
ejecutó con la protección de
encendido.
À Los errores de ida a marcha ocurren cuando el controlador va de cualquier modo al modo de marcha REM o de
cualquier modo de no marcha (PRG, SUS) al modo de prueba.
A–13
&
Manual de referencia del juego de instrucciones
'(& $
* $
&+ $ $
&&$& &&$&' "& (%&!
*# ('(& $ &(%&!
)
A–14
Archivo de estado del controlador MicroLogix 1000
Clasificación de fallo
Usuario
Código
DirecĆ No No
de error Errores de marcha Recuperable
ción usuario recuperable
(hex)
0040 X
0041 X
Clasificación de fallo
Usuario
Código
DirecĆ No No
de error Errores de descarga Recuperable
ción usuario recuperable
(hex)
S:6 0018 X
A–15
Manual de referencia del juego de instrucciones
A–16
Archivo de estado del controlador MicroLogix 1000
A–17
Manual de referencia del juego de instrucciones
A–18
Archivo de estado SLC
Este apéndice trata las funciones de archivo de estado de los procesadores fijos,
SLC 5/01, SLC 5/02, SLC 5/03 y SLC 5/04. Los procesadores SLC 5/02, SLC 5/03
y SLC 5/04 funcionan como los procesadores compactos y SLC 5/01. También
disponen de funciones adicionales enumeradas en la tabla de la página B–3. Los
procesadores SLC 5/03 y SLC 5/04 disponen de funciones adicionales enumeradas
en las tablas de las páginas B–3 y B–4.
B–1
Manual de referencia del juego de instrucciones
S:0 Indicadores aritméticos BĆ6
S:1 Estado/control del modo de procesador BĆ8
S:2 Bits STI/comms. DH485 BĆ17
S:3L Tiempo de escán actual/último BĆ24
S:3H Tiempo de escán de control (watchdog) BĆ26
S:4 Reloj de marcha libre BĆ26
S:5 Bits de error menor BĆ27
S:6 Código de erro mayor BĆ33
S:7, S:8 Código de suspensión/archivo de suspensión BĆ44
S:9, S:10 Nodos activos (DHĆ485) BĆ44
S:11, S;12 Habilitaciones de ranura de E/S BĆ45
S:13, S:14 Registro matemático BĆ47
S:15L Dirección de nodo B-48
S:15H Velocidad en baudios B-49
B–2
Archivo de estado SLC
B–3
Preface
Manual de referencia del juego de instrucciones
B–4
Archivo de estado SLC
Las tablas siguientes describen las funciones del archivo de estado, a partir de la
dirección S:0 hasta la dirección S:163. Una viñeta (S) indica que la función se
aplica al procesador especificado.
B–5
Manual de referencia del juego de instrucciones
# #
#
" • • • •
Los indicadores aritméticos son evaluados por
el procesador después de la ejecución de
cualquier instrucción matemática, lógica o de
transferencia. El estado de estos bits
permanece vigente hasta que la próxima
instrucción matemática, lógica o de
transferencia en el programa se ejecute.
• • • •
Este bit es establecido por el procesador si un
acarreo o prestado matemático se genera. De
lo contrario, el bit remanece puesto a cero.
Este bit es evaluado como función matemática
sin signo.
Cuando una rutina STI, ranura de E/S o fallo • • •
interrumpe la ejecución normal del programa,
el valor original de S:0/1 se restaura cuando la
ejecución se reanuda.
Cuando una DII interrumpe la ejecución • •
normal de su programa, el valor original de
S:0/0 se restaura cuando la ejecución se
reanuda.
! • • • •
Este bit es establecido por el procesador
cuando el resultado de una operación
matemática no se adapta al destino. De lo
contrario, el bit permance puesto a cero.
Cuando este bit se establece, el bit de
interrupción por overflow S:5/0 también se
establece. Refiérase a S:5/0.
Cuando una rutina STI, ranura de E/S o fallo • • •
interrumpe la ejecución normal del programa,
el valor original de S:0/1 se restaura cuando la
ejecución se reanuda.
Cuando una rutina STI, ranura de E/S o fallo • •
interrumpe la ejecución normal del programa,
el valor original de S:0/1 se restaura cuando la
ejecución se reanuda.
B–6
Archivo de estado SLC
# #
#
! ! • • • •
"
! "
• • •
"
"
• •
"
"
! ! • • • •
" !
"
• • •
"
"
• •
"
"
" • • • •
B–7
Manual de referencia del juego de instrucciones
• • • •
+. &/. 0-4 #0* &+** así:
0 0000 = (0) ". -$ -")+/ "*
,-+$-".+
+!+ !" ,-+$-) -")+/+
"( )+!+ !" #((+ "2&./"
0*!+ "( &/ ."
"./(" " +* "( )+!+
+!+ !" #((+ !" ,0. !"
.0.,"*.&5* ( +,"- &5* %
.&!+ !"/"*&! ,+- ( "'" 06
&5* !" 0* &*./-0 &5*
"2&./" 0*!+ "( &/
." "./(" " +* "(
)+!+
+!+ !" )- % -")+/
+!+ +*/&*0+ !" ,-0"
-")+/
+!+ !" 0* .+(+ ". 3* !"
,-0" -")+/
* .+(+ ,.+ !" ,-0"
-")+/ ,.+ %./
". -$ "* ,-+$-".+ • •
&*/"--0,/+- !"
((1"-)
+!+ !" -) "(
)+!+ !" #((+ "2&./" 0*!+
"( &/ ." "./(" "
+* "( )+!+
0. !" .0.,"*.&5* "(
)+!+ !" #((+ "2&./" 0*!+
"( &/ ." "./(" " +*
"( )+!+ &*/"--0,/+-
!" ((1"
"( )+!+ !" #((+
"2&./" 0*!+ "( &/
." "./(" " +* "( )+!+
&*/"--0,/+- !"
((1"
+!+. (+. +/-+. 1(+-". ,- (+. &/.
"./3*
-"."-1!+.
B–8
Archivo de estado SLC
#
%," &," &%$,"
&'# ' #%*#& '#& • • • •
Este bit es establecido por el procesador si
usted ha habilitado forzados en un programa
de escalera. De lo contrarior, el bit permance
puesto a cero. El LED de forzado de E/S del
procesador se ilumina continuamente cuando
los forzados se habilitan.
&'# ' #%*#& "&' #& • • • •
Este bit es establecido por el procesador si
usted ha instalado forzados en un programa
de escalera. Los forzados pueden estar o no
estar habilitados. De los contrario, el bit
permanece puesto a cero. El LED de forzado
de E/S del procesador parpadea cuando los
forzados son instalados, pero no habilitados.
&'# ' #!("," ') " • • • •
Este bit es establecido por el procesador
cuando hay por lo menos otro nodo presente
en la red añadido al canal 1. De lo contrarior,
el bit permanece puesto a cero. Cuando el
nodo está activo, es un participante reconoĆ
cido en una red de paso de testigo DHĆ485.
#"(%," ' "( ," # ""# • • • •
"+! Cuando es establecido, este bit causa que el
procesador ponga a cero el bit de error mayor
detenido S:1/13 y los bits de error menor S:5/0 a
S:5/7 al momento de encendido; si el procesaĆ
dor había estado en el modo de marcha REM y
había estado con fallo. Luego, el procesador
intenta entrar en el modo de marcha REM.
Cuando este bit permanece puesto a cero (valor
predeterminado), el procesador permanece en un
estado de fallo mayor al momento de encendido.
Para programar esta característica, estaĆblezca
este bit usando la función de monitor de datos.
#"(%," ' # $%#'," ""# • • •
"+! Cuando este bit se establece y la alim. eléc.
se desconecta y reconecta mientras el
procesador está en el modo de marcha REM,
el procesador ejecuta la rutina de fallo antes
de la ejecución del primer escán del programa.
Entonces usted tiene la opción de poner a
cero el bit de error mayor detenido S:1/13 para
reanudar la operación en el modo de marcha
REM. Si la rutina de fallo no restableĆ ce el bit
S:1/13, resultará el modo de fallo.
Para programar esta característica, use la función
de monitor de datos y programe la lógica de rutiĆna
de fallo en debida forma. Al ejecutar la rutina de
fallo de protección de encendido, S:6 (el código de
fallo de error mayor) contrendrá el valor 0016H.
B–9
Manual de referencia del juego de instrucciones
" " "
"
" • • • •
!
Usted puede usar este bit para transferir un
programa de módulo de memoria al
procesador en caso de que un error de
memoria de procesador se detecte al
momento del encendido. Un error de memoria
significa que el procesador no puede ejecutar
el programa en el RAM porque el programa ha
sido alterado según fue detectado por un error
de paridad o suma de comprobación. Este
tipo de error es causado por el drenado de la
batería o del condensador, ruido o un
problema de alimentación eléctrica.
Usted establecer S:1/10 en el archivo de
estado del programa en el módulo de
memoria. Cuando un módulo de memoria se
instala que tenga el bit S:1/10 establecido, un
error de memoria de procesador detectado al
momento de encendio causa que el programa
de módulo de memoria se transfiera al
procesador y que se entre en el modo de
marcha REM.
Cuando S:1/10 está puesto a cero en el
módulo de memoria, el procesador permanece
en una condición de fallo mayor si un error de
memoria se detecta al momento de
encendido, independientemente de la
existencia de un módulo de memoria.
Cuando S:1/10 es establecido en el archivo de
estado del programa de usuario en memoria
RAM, el módulo de memoria siempre ser
instalado para entrar en los modos de marcha
REM y prueba REM.
Para programar esta característica, establezca
este bit usando la función de monitor de datos.
Luego, almacene el programa en el módulo de
memoria.
B–10
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:1/11 Configuración Bit de siempre cargar módulo de memoria • • •
estática Cuando este bit es establecido, usted puede
sobrescribir un programa de procesador con un
programa de módulo de memoria desactivando
y volviendo a activar la alimentación eléctrica al
procesador. Un dispositivo de programación
no es necesario. A continuación se muestra el
modo de procesador después del encendido
para un procesador SLC 5/02, SLC 5/03 y SLC
5/04.
Modo antes Modo después
de la parada del encendido
Programa/prueba Programa REM
REM
Marcha REM Marcha REM
Fallo después de
programa/prueba
REM Programa REM
Fallo después de Marcha REM
marcha REM
Pausa REM Programa REM • •
Descarga REM Programa REM
B–11
Manual de referencia del juego de instrucciones
( !( ! (
"#( "
• • • •
El (! ! !
"
$
' # '
(! #
% !
$ '
'
!
%
" !!
(!
!
! ! ! "#
! #% ! "! "! !
" $& # #!"
!" % $#$ "
"( '"
&
$ ! !(
!
(!
! " • •
"
B–12
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:1/12 Configuración Bit de carga de módulo de memoria y marcha • • •
estática Con este bit, usted puede sobrescribir un prograĆ
ma de procesador con un programa de módulo
de memoria desconectando y volviendo a conecĆ
tar la alim. eléc. al procesador. Un dispositivo de
programación no es necesario. El procesador
intentará entrar en el modo de marĆ cha REM, inĆ
dependientemente del modo que estaba vigente
antes de la desconexión y reconexión de la alim.
eléc.
Modo antes Modo después
de la parada del encendido
Prueba REM/prog rem Marcha REM
Marcha REM/fallo rem Marcha REM
Pausa REM/desc. rem Marcha REM
B–13
#
Manual de referencia del juego de instrucciones
#, $, $#!,
%&, %
• • • •
El módulo de memoria que usted instala en el
procesador debe tener el bit de archivo de
estado S:1/12 establecido. La carga se realiza
si la contraseña principal y/o la contraseña en
el módulo de procesador y memoria se
corresponden. La carga también se puede
realizar si el procesador no tiene contraseña ni
contraseña maestra.
Cuando S:1/12 también es establecido en el
archivo de estado del programa de usuario en
RAM, el módulo de memoria siempre debe ser
instalado para entrar en los modos de marcha
REM o prueba REM.
! !,
Establezca S:1/11 y
S:1/12 para que se carguen automáticamente
y se ejecuten durante cada desconexión y
reconexión de alimentación eléctrica además
de que exijan la presencia del módulo de
memoria para entrar en los modos de marcha
REM o prueba REM.
B–14
Archivo de estado SLC
# # #
#
de ! • • • •
"
establecido por el procesador
cuando se encuentra un error mayor. El
procesador entra en una condición de fallo.
La palabra S:6, código de fallo, contendrá un
código que se puede usar para diagnosticar la
condición de fallo. Cuando el bit S:1/13 se
establece, el procesador:
• coloca todas las salidas en un estado
seguro y activa el LED de fallo, o
• entra en la rutina de fallo de usuario con • • •
salidas activas, permitiendo así que la
lógica de escalera de la rutina de fallo
intente recuperarse de la condición de
fallo. Si la rutina de fallo determina que la
recuperación es necesaria, ponga a cero
S:1/13 usando la lógica de escalera antes
de salir de la rutina de fallo. Si la lógica de
escalera de la rutina de fallo no entiende el
código de fallo o si la rutina determina que
es preferible no continuar la operación,
salga de la rutina de fallo con el bit S:1/13
establecido. Las salidas se colocarán en
un estado seguro y el LED de fallo se
activará.
Cuando usted pone a cero el bit S:1/13 • • • •
usando un dispositivo de programación, el
modo de procesador cambia de fallo a
programa remoto o suspensión de pausa
remota, según el modo anterior del
procesador. Usted puede mover un valor a
S:6 y establecer S:1/13 en el programa de
escalera para generar un error mayor
específico para la aplicación.
: &) !% '#$ % #$
(" %#$ """ - !%
%# ( $+ " "
#$ $ " !% "#" $ %
$$ ""
"
"%
*#
" " &$" $" % - """
# -
&%& %#" # -# """
# #$ -# """
,$% -# """
# ,# " -
" #%# " # -# .#
#$ &$
!% %#$ % # """# -
"""# ##$ #
%# # -# """
" " # """# ("# # ,#
" -
B–15
(
Manual de referencia del juego de instrucciones
!%
( -$ ") -$ )( & -$
%$* $+ -$ Cuando usted pone a cero el bit S:1/13 • •
usando un dispositivo de programación, el
modo de procesador cambia de fallo a
programa, marcha o suspensión de pausa
según el modo anterior del procesador. Puede
mover un valor a S:6 y establecer S:1/13 en el
programa de escalera para generar un error
mayor específico para la aplicación.
+)* &%$ (% )* * %$ "
! $*((+&*%( "", $
"
&(%)%( $*( $# *#$* $
" #%%
Puede borrar los fallos S:1/13 y S:6
desconectando y volviendo a conectar el
interruptor de llave PROGrama y luego a
MARCHA.
)*% * )% $% "%'+% • • • •
Usted puede permitir o negar el acceso futuro
a un archivo de procesador. Establezca este
bit para negar el acceso. Esto indica que un
dispositivo de programación debe disponer de
una copia correspondiente al archivo de
procesador en memoria para monitorizar el
programa de escalera. Se negará el acceso a
un dispositivo de programación que no
disponga de una copia correspondiente del
archivo de procesador.
Para programar esta característica, seleccione
Acceso futuro no permitido" al guardar el
programa. Para proporcionar protección
contra modificaciones accidentales de monitor
de datos de la selección, programe una
instrucción OTL incondicional en la dirección
S:1/14 para negar el acceso futuro. Programe
una instrucción OTU incondicional en la
dirección S:1/14 para permitir el acceso futuro.
Cuando este bit se pone a cero, indica que
todo dispositivo de programación compatible
puede acceder al programa de escalera
(siempre que las condiciones de contraseña
se cumplan).
Cuando el acceso se niega, el dispositivo de
programación (APS o HHT) puede no acceder
al programa de escalera. Las funciones tales
como cambio de modo, borrado de memoria,
restauración de programa y transferencia de
módulo de memoria se permiten indepenĆ
dientemente de esta selección. Esta función
no afecta un dispositivo como DTAM.
B–16
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:1/15 Estado Bit de primer paso • • • •
% %& bit para *$ %' programa
según lo requiera la aplicación. Cuando este
bit es establecido por el procesador, indica
que el primer escán del programa de usuario
está en progreso (después del encendido en
el modo de MARCHA o la entrada en el modo
de marcha REM o prueba REM). El
procesador pone a cero este bit después del
primer escán.
Cuando este bit se pone a cero, indica que el
programa no está en el primer escán de un
modo de prueba REM o marcha REM.
Este bit se establece durante la ejecución de • • •
la rutina de fallo de protección de encendido.
Refiérase a S:1/9 para obtener más
información.
S:2/0 Estado Bit de STI (interrupción temporizada • • •
seleccionable) pendiente
Cuando es establecido, este bit indica que el
temporizador STI ha sobrepasado el límite de
tiempo y que la rutina STI espera la ejecución.
Este bit se pone a cero cuando comienza la
rutina STI, encendido, salida del modo de
marcha REM o ejecución de una instrucción
STS verdadera.
El bit de STI pendiente no se establece si el •
temporizador STI caduca durante la ejecución
de la rutina de fallo.
Este bit se establece si el temporizador STI • •
caduca durante la ejecución de la subrutina
DII o rutina de fallo.
B–17
%
Manual de referencia del juego de instrucciones
#"(%-"
' "'%%($-" '!$#%* • • •
&'+' & #" '
*+ bit se establece en su condición predeterĆ
minada o cuando es establecido por la instrucĆ
ción STE o STS. Si es establecido, permite la
ejecución de la STI si el archivo STI (S:31) y el
punto de ajuste STI (S:30) son distintos de cero.
Si está puesto a cero, cuando ocurre una inteĆ
rrupción, la subrutina STI no se ejecuta y el bit
de STI pendiente se establece. El temporizador
STI continúa funcionando cuando está inhabiliĆ
tado. La instrucción STD pone a cero este bit.
#"(%-" Use la función del monitor de datos para estableĆ • •
"+! cer y poner a cero este bit o direccione este bit
con su programa de lógica de escalera. Este bit
se establece en su condición predeterminada o
cuando es establecido por la instrucción STE o
STS. Si es establecido, permite la ejecución de
la STI si el archivo STI (palabra 31) y velocidad
STI (palabra 30) son distintos de cero. Si está
puesto a cero, la subrutina STI no se ejecuta y el
bit de STI pendiente se establece. El
temporizador continúa funcionando. La
instrucción STD pone a cero este bit.
&'#
' (-" "'%%($-" • • •
'!$#%* & #"
Cuando es establecido, este bit indica que el
temporizador ha sobrepasado el límite de
tiempo y que la subrutina STI se está ejecutĆ
ando actualmente. Este bit se pone a cero
cuando se termina la rutina STI, encendido o a
la entrada en el modo de marcha REM.
!$ # (-" Usted puede
examinar este bit en su rutina de fallo para
determinar si su STI se estaba ejecutando
cuando ocurrió el fallo.
#"(%-"
' ,!' %)# %-" ," • • •
&'+' Cuando está puesto a cero, el registro de índiĆ
ce puede indexar solamente dentro del mismo
archivo de datos de la dirección de base espeĆ
cificada. Cuando es establecido, el registro de
índice puede indexar en todas partes desde el
archivo de datos B3:0 al final del último
archivo de datos declarado. Este bit se
seleccionado cuando se guarda el programa.
Los procesadores SLC 5/03 y SLC 5/04 le • •
permiten indexar desde 0:0 al último archivo de
datos.
Nota: Recomendamos cambiar este bit en el
modo fuera de línea solamente. Guarde el
programar después de cambiar el bit.
B–18
Archivo de estado SLC
Fijo,
#( Clasificación Descripción 5/02 5/03 5/04
5/01
S:2/4 Configuración Bit de guardado con prueba de un solo paso • • •
estática habilitado
' ! % !$$ ' - !! '
"$' ' %!! "%! ! %&+ %"!
!$$! &, #' !% $%&$!%
"'$-
! ' !
' !
% %& "$!$ "' ' ! $
!! "$' ' %!! "%! %
%$"! %
' ! %
%&! %' "$!$ $#'$
"$% %&$'- )&% "!$ $ -
!$ ! %& & % %!
'$$ "$!$$
Nota:
• •
S:2/5 Estado Bit de comando entrante pendiente (canal 1) • • •
%& & % %& ' ! "$!%!$
&$ #' !&$! !! $
%!&! !$- ! "$!"!$! !
' ! ! %& & % "' %&$
&!! ! &! %& & % "! $!
' ! "$!%!$ %$(!
"&- ! ! !
% %& & !! ! - '
%&$'-
"$ !$$ "
!' ! "$!%!$
S:2/6 Estado Bit de respuesta de mensaje pendiente • • •
(canal 1)
%& & % %& ' ! !&$! !!
$ "$!"!$! ! !$- #' '%&
%!&- %&$'- "$!%!$
%& & % "! $! ' ! "$!%!$
!$- ) &'*
%&$'-
% %& & !! ! - '
%&$'-
"$ !$$ "
!' - "$!%!$
B–19
%
Manual de referencia del juego de instrucciones
#
%+" &+" &%$+"
''(& ' #!"# !"& & • • •
$""' "
Este bit se establece cuando h 6 3,- - +81
mensajes habilitados 6 #$ espera en el
programa, pero no se transmite un mensaje. En
cuanto "-+($,7 * 20 ,1+(1(;, #$ 3, mensaje,
el bit se pone a cero. Des.391 #$ *
20 ,1+(1(;, $* !(2 1$ 43$*4$ $12 !*$"$0 1( ' 6
-20-1 +$,1 )$1 #$ $1.$0 $0+ ,$"$ .3$12-
"$0- 1( ,- ' 6 +81 +$,1 )$1 #$ $1.$0
1$ $12$ !(2 "-+- "-,#("(;, #$ 3, (,1203""(;,
. 0 +$)-0 0 * "-+3,(" "(;, #$*
.0-"$1 #-0
#"(%+" ## %#"!"'# %)# • • •
"*! "'% #!,"
$ .*(" *-1 .0-"$1 #-0$1
6
12$ !(2 "-,20-* $* +-#- 31 #- .-0 *-1 .0-"$1 <
#-0$1
6 . 0
#(0$""(-, 0 $*$+$,2-1 $, $* 0"'(4- 0"'(4-
#$ # 2-1 "3 ,#- 1$ .0-"$1 3, .$2("(;, #$
"-+3,(" "(;,
-#- #$ #(0$""(;, #$ . * !0 4(&$,2$ "3 ,#-
$* !(2 1$ .-,$ "$0- 12$ $1 $* +-#-
.0$#$2$0+(, #- "-+. 2(!*$ "-, -20-1 #(1.-1(2(4-1
$, * 0$# <
-#- #$ #(0$""(;, #$ !62$ 4(&$,2$ "3 ,#- $*
!(2 1$ $12 !*$"$ 12$ +-#- 1$ 31 "3 ,#-
*-1 .0-"$1 #-0$1
6
0$"(!$, 3, +$,1 )$ #$1#$ 3, #(1.-1(2(4- $,
* 0$# .-1(!*$+$,2$ .-0 3, .3$,2$ - & 2$< 5 6
12$ $12 !*$"(+($,2- $1 "-+. 2(!*$ "-, *
"-+3,(" "(;, #$ (,2$0.0-"$1 #-0 #$
**$,<0 #*$6
#"(%+" #!$%+" $%#%! !+( # • •
&'*' !!#%
3 ,#- $12$ !(2 $1 $12 !*$"(#- #$,20- #$ 3,
.0-&0 + 48*(#- "-,2$,(#- $, 3, +;#3*- #$
+$+-0( ,- 1$ .$0+(2$ * +-#(%(" "(;, #$ *-1
0"'(4-1 #$ .0-&0 + #$ 313 0(- 12-
(,"*36$ *-1 "-+ ,#-1 #$ $#("(;, $, *:,$
#$1" 0& #$ .0-&0 + 6 !-00 #- #$ +$+-0(
1$ $12 " 0 "2$0:12(" . 0 $4(2 0 /3$ 3,
#(1.-1(2(4- #$ .0-&0 + "(;, +-#(%(/3$ $*
.0-&0 + #$1#$ $* .0-&0 + "-,2$,(#-
$, $* +;#3*- #$ +$+-0( ( 3, +;#3*- #$
+$+-0( 1$ (,12 * "-, $12$ !(2 $12 !*$"(#- 6 3,
.0-&0 + #$ 313 0(- #(%$0$,2$ $1
"-,2$,(#- $, $* .0-"$1 #-0 ,- $,20 $,
$* +-#- #$ + 0"' 12$# #$!$ 20 ,1%$0(0 $*
.0-&0 + #$ +;#3*- #$ +$+-0(
. 0 $,20 0 $, $* +-#- #$ + 0"'
B–20
Archivo de estado SLC
Fijo,
$)! Clasificación Descripción 5/02 5/03 5/04
5/01
S:2/10 Configuración Bit de selección de resolución STI • •
estática (1 ms ó 10 ms)
Este bit e*+1 'uesto a cero predeterminadaĆ
mente. Cuando e*+1 'uesto a cero, este bit usa
una base de tiempo de ms para el valor del
punto de ajuste S:30). Por ejemplo, el valor
4 usa un punto de ajuste STI de 40 ms.
Cuando es establecido, este bit usa una base de
tiempo de 1 ms para el punto de ajuste STI
(S:30). Por ejemplo el valor 4 usa un punto de
ajuste STI de 4 ms. Para programar esta
característica, use la función de monitor de datos
para establecer, poner a cero o direccionar este
bit con el programa de escalera.
S:2/11 Estado Bit de interrupción de entrada discreta • •
pendiente
Cuando es establecido, este bit indica que el
acumulador DII (S:52) es igual al valor DII
predeterminado (S:50) y que el número de
archivo de escalera especificado por el
número de archivo DII (S:46) espera su
ejecución. Se pone a cero cuando el número
de archivo DII 9S:46) comienza a ejecutarse o
cuando sale del modo de marcha REM o
prueba REM.
S:2/12 Configuración Bit de interrupción de entrada discreta • •
dinámica habilitada
Para programar esta característica, use la
función de monitor de datos para establecer,
poner a cero o direccionar este bit con el
programa de escalera. Este bit se establece
en su condición predeterminada. Si es
establecido, permite la ejecución de la
subrutina DII si el archivo DII (S:46) es distino
de cero. Si está puesto a cero, cuando ocurre
la interrupción, la subrutina DII no se ejecuta y
el bit de DII pendiente se pierde. La función
DII continúa funcionando cuando el archivo DII
(S:46) es distinto de cero. Si el bit pendiente
se establece, el bit de habilitación se examina
al próximo final de escán.
S:2/13 Estado Bit de ejec. de interrupción de entrada discreta • •
Cuando es establecido, este bit indica que la
interrupción DII ha ocurrido y que la subrutina DII
se está ejecutando. Este bit se pone a cero
cuando se termina la rutina DII, durante el
encendido o a la entrada en el modo de marcha
REM.
Ejemplo de aplicación: Usted puede
examinar este bit en la rutina de fallo para
determinar si la DII estaba ejecutándose
cuando ocurrió el fallo.
B–21
Manual de referencia del juego de instrucciones
$ $ $
$
de $ !" # • • •
# $ -)'" ),/ -.,"$/ #,.$/ SLC 502, SLC
5/03 4 SLC 5/04.
Establezca este bit cuando usted vaya a a
usar la adición o resta de 32 bits. Cuando
S:2/14 es establecido y el resultado de una
instrucción ADD, SUB, MUL o DIV no se
puede representar en la dirección de destino
(underflow u overflow),
• el bit de overflow S:0/1 se establece,
• el bit de interrupción por overflow S:5/0 se
establece, y
• la dirección de destino contiene los 16 bits
sin signo truncados y menos significativos
del resultado.
La condición predeterminada de S:2/14 se
restablece (0). Cuando S:2/14 se restablece y
el resultado de una instrucción ADD, SUB,
MUL o DIV no se puede representar en la
dirección de destino (underflow u overflow),
• el bit de overflow S:0/1 se establece,
• el bit de interrupción por overflow S:5/0 se
establece, y
• la dirección de destino contiene 32767 si el
resultado es positivo o -32768 si el
resultado es negativo.
Nota: El estado de bit S:2/14 no afecta la
instrucción DDV. Además, no afecta el
contenido del registro matemático cuando se
usan instrucciones MUL y DIV.
Para programar esta característica, use la
función de monitor de datos para establecer o
pone a cero este bit. Para proporcionar
protección contra la modificación accidental de
monitor de datos de su selección, programe
una instrucción OTL incondicional en la
dirección S:2/14 para asegurar la operación de
overflow matemático nuevo. Programe una
instrucción incondicional OTU en la dirección
S:2/14 para asegurar la operación de overflow
matemático original.
Vea el capítulo 3 de este manual para obtener
un ejemplo de matemática de 32 bits con
signo .
B–22
Archivo de estado SLC
Fijo,
#) $) $#") 5/02 5/03 5/04
5/01
S:2/15 Configuración Bit de selección de servicio de • • •
dinámica comunicaciones (canal 1 de DH+ para SLC
5/04) (canal 1 DH485 para SLC 5/03)
Cuando este bit es establecido, solamente una
petición/comando de comunicación puede recibir
servicio por END, TND, REF o SVC. Cuando se
pone a cero, todas las peticiones/comandos de
comunicación de entrada o salida pueden recibir
servicio según END, TND, REF o SVC. Cuando
se pone a cero, la transferencia de comunicación
se incrementa. Sin embargo, el tiempo de escán
se incrementa si varias peticiones/comandos de
comunicación se reciben en el mismo escán.
Una petición/comando de comunicación consiste
en un comando de entrada, una respuesta de
mensaje o un comando de mensaje de salida.
Vea S:2/5, S:2/6 y S:2/7 y S:33/7 (procesadores
SLC 5/03 y SLC 5/04).
Para programar esta característica, use la
función de monitor de datos para establecer o
poner a cero este bit. Para proporcionar
protección contra la modificación accidental del
monitor de datos de su selección, programe una
instrucción OTL incondicional en la dirección
S:2/15 para asegurar la operación de una
petición/comando o programe una instrucción
OTU incondicional en la dirección S:2/15 para
asegurar la operación de peticiones/comandos
múltiples. Como alternativa, su programa puede
cambiar el estado de este bit usando la lógica de
escalera si la aplicación requiere la selección
dinámica de esta función.
Ejemplo de aplicación: Digamos que usted
tiene un sistema que consiste en un
procesador SLC 5/02, SLC 5/03 ó SLC 5/04,
un programador APS y un DTAM. El tiempo
de escán del programa para el programa de
usuario es sumamente extenso. Por eso, el
dispositivo de programación o DTAM tarda
muchísimo tiempo para actualizar la pantalla.
Usted puede mejorar este tiempo de
actualización poniendo a cero S:2/15.
En tal caso, el tiempo adicional tomado por el
procesador para dar servicio a toda la
comunicación al final del escán es de
insignificante en comparación con el tiempo
requerido para finalizar un escán. Usted
podría incrementar la transferencia de
comunicación aun más usando una instrucción
SVC. Vea el capítulo 8 en este manual para
obtener más información.
B–23
Manual de referencia del juego de instrucciones
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:3L Estado Tiempo de escán de 10 ms actual/último • •
El +!$' () byte le informa cuánto tiempo
transcurre durante un ciclo de programa. Un
ciclo de programa incluye:
• el escán del programa de escalera,
• la limpieza,
• el escán de E/S, y
• el servicio para el puerto de comunicación.
El valor de byte se pone a cero por el
procesador durante cada escán justo antes de
la ejecución de renglón 0 del archivo de
programa 2 (archivo de programa principal) o
cuando retorna de la instrucción REF. Desde
ese punto en adelante, el byte se incrementa
cada 10 ms, la cantidad de tiempo
transcurrido en cada ciclo de programa. Si
este valor es igual al valor en el control
(watchdog) S:3H, se declara un error mayor
de control (watchdog) de usuario (código
0022).
La resolución del valor de tiempo de escán es
+0 a ±10 ms. Ejemplo: El valor 9 indica que
80-90 ms han transcurrido desde el inicio del
ciclo de programa.
Nota: Cuando las instrucciones SVC o REF • • •
son contenidos en el programa, este valor
parecer ser irregular cuando usted lo
monitoriza con un dispositivo de
programación. Esto se debe a que las
instrucciones SVC o REF permiten que este
valor se lea en medio del escán mientras
todavía se está incrementando.
B–24
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
continuación
Ejemplo de aplicación: Su )
de S:3L
requiere que cada escán de programa se
ejecute dentro del mismo lapso de tiempo.
Usted mide los tiempos de escán máximo y
mínimo y descubre que son 40 ms y 20 ms.
Puede hacer que cada escán sea
exactamente igual a 50 ms programando los
renglones siguientes como los últimos
renglones del programa.
1 MOV
]LBL[ MOVE
Source S:3
Dest N7:0
AND
BITWISE AND
Source A 255
Source B N7:0
Dest N7:0
LES 1
LESS THAN (JMP)
Source A N7:0
Source B 5
B–25
$
Manual de referencia del juego de instrucciones
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:3H Configuración Byte de tiempo de escán de control • • • •
dinámica (watchdog)
Este valor de 1- ('-# ' % '5& +( -#,
10 &, *. , ) +&#- *. (.++' .+'-
.' #%( programa. El valor predeterminado
es 10 (100 ms), pero usted puede incremenĆ
tarlo a 250 (2.5 segundos) o disminuirlo a 2,
según lo requiera la aplicación. Si el valor de
escán de programa S:3L es igual al valor de
control (watchdog), un error mayor de control
(watchdog) se realiza (código 0022). Este
valor se aplica a cada END, TND o REF.
S:4 Estado Reloj de marcha libre •
Solamente los 8 primeros bytes (valor de byte)
de esta palabra son evaluados por el
procesador. Este valor se pone a cero al
momento de encendido en el modo de marcha
REM.
Usted puede usar cualquier bit individual de
este byte en el programa de usuario como bit
de reloj de ciclo de trabajo de 50%. Las
velocidades de reloj para S:4/0 a S:4/7 son:
20, 40, 80, 160, 320, 640, 1280 y 2560 ms
La aplicación que usa el bit se debe evaluar a
una velocidad dos veces más rápida que la
velocidad de reloj del bit. Esto se ilustra en el
ejemplo siguiente para los procesadores
SLC 5/02, SLC 5/03 y SLC 5/04.
B–26
Archivo de estado SLC
Fijo,
Continuación Clasificación Descripción 5/02 5/03 5/04
5/01
continuación Configuración ,",0 ),0 16 '10 "# #01 -) / 0,+ • • •
de S:4 dinámica #3)2",0 -,/ #) -/,!#0",/. El valor de esta
palabra se pone a cero al momento de
encendido en el modo de marcha REM o
cuando entra en el modo de marcha REM o
prueba REM. A partir de entonces, se
incrementa cada 10 ms.
Nota de aplicación: Usted puede escribir
cualquier valor a S:4. Comenzará a
incrementarse a partir de este valor.
Puede usar cualquier bit individual de esta
palabra en el programa de usuario como bit
de reloj de ciclo de trabajo de 50%. Las
velocidades de reloj para S:4/0 a S:4/15 son:
20, 40, 80, 160, 320, 640, 1280, 2560,
5120, 10240, 20480, 40960, 81920,
163840, 327680 y 655360 ms
La aplicación que usa el bit se debe evaluar a
una velocidad dos veces más rápida que la
velocidad de reloj del bit. En el ejemplo
siguiente, el bit S:4/3 alterna cada 80 ms, lo
cual produce una velocidad de reloj de
160 ms. Para mantener la exactitud de este
bit en la aplicación, la instrucción que usa el
bit S:4/3 (en este caso O:1/0) se debe evaluar
por lo menos una vez cada 79.999 ms.
S:4 O:1
160 ms ] [ ( )
3 0
El S:4/3 y la salida
O:1/0 alternan cada
ciclo de S:4/3: 160 ms
80 ms. O:1/0 se debe
evaluar por lo menos
una vez cada
79.999 ms.
B–27
Manual de referencia del juego de instrucciones
' !'
! '
# ' " " #' $ % • • • •
& Cuando este bit es establecido por el
procesador, indica que un overflow
matemático ha ocurrido en el programa de
escalera. Vea S:0/1 para obtener más
información.
Si este bit se establece cuando se ejecuta la
instrucción END, TND o REF, un error mayor
(0020) se realiza. Para evitar la coincidencia
de este tipo de error mayor, examine el estado
de este bit después de una instrucción
matemática (ADD, SUB, MUL, DDV, NEG,
SCL, TOD o FRD), tome la acción más
adecuada y, luego, ponga a cero el bit S:5/0
usando una instrucción OTU con S:5/0 ó una
instrucción CLR con S:5.
! $ • • • •
# ' " !" " • • • •
& Las instrucciones LFU, LFL, FFU, FFL, BSL,
BSR, SQO, SQC y SQL son capaces de
generar este error. Cuando el bit S:5/2 se
establece, indica que el bit de error de la
instrucción de control ha sido establecido.
Si este bit se establece cuando se ejecuta la
instrucción END, TND o REF, el error mayor
(0020) se realiza. Para evitar la coincidencia
de este tipo de error mayor, examine el estado
de este bit a continuación de una instrucción
de registro de control, tome la acción más
adecuada y, luego, ponga a cero el bit S:5/2
usando una instrucción OTU con S:5/2 ó una
instrucción con S:5.
B–28
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:5/3 Configuración Bit de error mayor detectado durante la • • •
dinámica ejecución de rutina de fallo de usuario
Cuando es establecido este bit, el código de
error mayor (S:6) representa el error mayor
que ocurrió durante el procesamiento de la
rutina de fallo debido a otro error mayor.
Si este bit se establece cuando se ejecuta la
instrucción END, TND o REF, el error mayor
(0020) se realiza. Para evitar la coincidencia
de este tipo de error mayor, examine el estado
de este bit dentro de la rutina de fallo, tome la
acción más adecuada y, luego, ponga a cero
el bit S:5/3 usando una instrucción OTU con
S:5/3 ó una instrucción CLR con S:5.
Ejemplo de aplicación: Supongamos que
usted ejecuta una rutina de fallo para el código
de fallo 0016H de protección de encendido.
En el renglón 3 dentro de esta rutina de fallo,
un TON que contiene un valor
preseleccionado negativo se ejecuta. Cuando
el renglón 4 se ejecuta, el código de fallo
0016H se sobrescribe para indicar el código
0034H y S:5/3 se establece.
Si su rutina de fallo no determinó que S:5/3 se
estableció, el error mayor 0020H se realizaría
al final del primer escán. Para evitar este
problema, examine S:5/3, seguido por S:6,
antes de retornar de la rutina de fallo. Si S:5/3
se establece, tome la acción más adecuada
para remediar el fallo y, luego, ponga a cero
S:5/3.
S:5/4 Configuración Bit de M0-M1 indicados en ranura • • •
dinámica inhabilitada
Este bit se establece cuando una instrucción
hace referencia a un elemento de archivo de
módulo M0 ó M1 para una ranura que se
inhabilitó (vía el bit de habilitación de ranura
de E/S). Cuando es establecido, el bit indica
que una instrucción no se pudo ejecutar
correctamente debido a la falta de
disponibilidad de los datos M0 ó M1
direccionados.
Si este bit se establece cuando se ejecuta la
instrucción END, TND o REF, el error mayor
(0020) se realiza. Para evitar la coincidencia
de este tipo de error mayor, examine el estado
de este bit después de una instrucción de
M0-M1 referenciada, tome la acción más
adecuada y, luego, ponga a cero el bit S:5/4
usando una instrucción OTU con S:5/4 ó una
instrucción CLR con S:5.
B–29
* !
Manual de referencia del juego de instrucciones
"#'
"* "3& $+"!""3& +*"("3&
+ *.' • • • •
Reservado para los errores menores que
vuelven a ser errores mayores al final del
escán.
+,' ", **&)- $ %3-$' % %'*" • • • •
Cuando este bit es establecido por el
procesador, indica que un programa de módulo
de memoria ha sido transferido al procesador.
Este bit no es puesto a cero por el procesador.
El programa puede examinar el estado de este
bit cuando entra en el modo de marcha REM
para determinar si el contenido del módulo de
memoria ha sido transferido. El bit S:1/15 se
establece para indicar la entrada en el modo de
marcha REM. Esta información es útil cuando
usted tiene una aplicación que contiene datos
retentivos y un módulo de memoria con
solamente el bit S:1/10 establecido (módulo de
memoria de carga en el error de memoria). Use
este bit para indicar que los datos retentivos se
han perdidos. Este bit también es útil cuando se
usan los bits S:1/11 (módulo de memoria de
carga permanente) o S:1/12 (módulo de
memoria de carga permanente y marcha) para
diferenciar una entrada en el modo de marcha
REM al momento de encendido de una entrada
en el modo de programa REM (o prueba REM)
a modo de marcha REM.
+,' ", '** +('& &" "&'** , • • • •
'&,*+ 2+ %3-$' % %'*"
Este bit se establece cuando se entra en el
modo de marcha REM cuando la carga desde
el módulo de memoria es especificada
(palabra 1, bits 11 ó 112) y el programa de
usuario del procesador tiene protección con
contraseña y el programa de módulo de
memoria no corresponde a dicha contraseña.
Use este bit para indicarle al programa de
aplicación que un módulo de memoria de
carga automática se encuentra instalado pero
no se cargó debido a una desigualdad de
contraseñas.
+,' ", '. *!$'/ "&, ** , %('*"0 • • •
+ $ "'&$
Este bit es establecido cuando el temporizador
STI caduca durante la ejecución o inhabilit. de la
rutina STI el bit pendiente ya es establecido.
+,' ", , *1 # • • •
Este bit se establece cuando el LED de
batería baja se ilumina. El bit se pone a cero
cuando el LED de batería baja se apaga.
B–30
Archivo de estado SLC
& & &
!" & • •
Este bit se establece cuando ocurre la
interrupción DII dudrante la ejecución de la
subrutina DII o cuando la interrupción DII
ocurre durante el estado pendiente o
inhabilitado.
& & %# • •
$ &
Este bit se establece cuando se intenta cargar
el módulo de memoria del sistema operativo y
ésa resulta sin éxito. Las cargas sin éxito
pueden ocurrir cuando falta el puente de
protección o está en la posición protegida, o si
el módulo de memoria del sistema de
operación no es compatible con la plataforma
de hardware de los procesadores SLC 5/03 ó
SLC 5/04. Examine el estado de este bit con
su programa de usuario para diagnosticar la
condición.
B–31
Manual de referencia del juego de instrucciones
" " "
! " 0 • •
34& #*4 *.%*$" &, &34"%/ %&, -<%&- $/.&$4"%/
", $".", 0 05&24/ &. 3&2*& RS232). El estado
de este bit es determinado por:
• el protocolo para el cual el canal 0
ha sido configurado
• la línea de control seleccionada
• los estados de DCD (detección de portador
de datos) y DSR (conjunto de datos
listo)
Si el bit es establecido, el módem no está bien
conectado al canal 0 ó está en un estado
donde pueden ocurrir cambios de
comunicación no confiables vía el canal 0.
Las condiciones siguientes se aplican:
• Si el canal 0 se inhabilita o se configura
para DH485, el bit siempre se pone a cero.
• Si el canal 0 se configura para uno de los
protocolos DF1 en el modo de sistema o modo
de usuario de ASCII genérico, la selección de
la línea de control determina cómo DCD y
DSR afectan el estado de módem:
- Si la línea de control = NINGUNA
COMUNICACION: El bit siempre es
establecido.
- Si la línea de control = FULL DUPLEX o
HALF DUPLEX SIN ACARREO CONSTANTE:
El bit se restablece si DSR está inactivo y
puesto a cero cuando DSR se activa. (En este
caso, DCD no afecta el estado de módem.)
! Manejo de la cadena
• •
Este bit se aplica a los procesadores SLC 5/03
con OS301, OS302 y SLC 5/04 con OS400,
OS401.
Este bit se establece a 1 cuando se intenta
procesar una cadena usando una instrucción
ASCII que exceda la longitud de 82
caracteres.
B–32
Archivo de estado SLC
• • • •
Un código hexadecimal se introduce en esta
palabra por el procesador cuando un error
mayor se realiza. Refiérase a S:1/13. El
código define el tipo de fallo según lo indicado
en las páginas siguientes. Esta palabra no es
borrada por el procesador.
Los códigos de error son presentados,
almacenados y mostrados en formato
hexadecimal. Refiérase al apéndice A para
obtener más información acerca del sistema
de numeración hexadecimal.
Si usted introduce un código de fallo como • • •
parámetro en una instrucción del programa de
escalera, debe convertir el código en decimal.
Por ejemplo, si programa una instrucción EQU
que se haga verdadera cuando ocurra un error
0016, introduzca S:6 como fuente A y 22,
de 0016H, como fuente B.
EQU
EQUAL
Source A S:6
Source B 22
B–33
Preface
Manual de referencia del juego de instrucciones
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
continuación Ejemplo de aplicación: Usted puede
de S:6 declarar su propio fallo mayor específico
para la aplicación escribiendo un valor único
a S:6 y, luego, estableciendo el bit S:1/13.
:
Interrogue el valor de S:6 en la rutina de
fallo para determinar el tipo de fallo que
ocurrió. Si el programa se guardó con la
prueba de un solo paso habilitada, también
puede interrogar S:20 y S:21 para precisar
el renglón exacto que se ejecutó cuando
ocurrió el fallo.
Clasificaciones de fallo: Los fallos se
clasifican como no atribuibles al usuario, no
recuperables y recuperables.
Fallo no Fallo de
atribuible Fallo de usuario usuario
al usuario no recuuperable recuperable
La rutina rutina de fallo La rutina de
de fallo se ejecuta durante fallo puede
no se 1 paso. (Usted borrar el
ejecuta. puede iniciar una fallo
instrucción MSG a poniendo a
otro nodo para cero el bit
identificar la S:1/13.
condición de fallo
del procesador.)
B–34
Archivo de estado SLC
Usuario
Código
DirecĆ No No RecuĆ Fijo
de error Errores de encendido 5/02 5/03 5/04
ción usuario recuperable perable 5/01
(hex)
S:6 0001
X • • • •
"
0002
X • • • •
#
0003
! X • • •
0005
X • •
0006
X • •
0007
#
X • •
B–35
)
Manual de referencia del juego de instrucciones
*+)"'
-" '
"). ' ' "#'
))') ))')* " %)! +( 5/02 5/03 5/04
"-& +*+)"' )+()$ 5/01
!,
El procesador no cumple con
el nivel de revisión requerido.
• • • •
El archivo de programa
ejecutable no. 2 está austente.
• • • •
El programa de escalera
tiene un error de memoria.
• • • •
• El módulo de memoria
requerido está ausente, o
• S:1/10 ó S:1/11 no es • • • •
establecido como lo
requiere el programa.
Error de archivo interno. • • • •
Error de archivo de
configuración.
• • • •
Protección de encendido
después de la pérdida de
alim. eléc. Condición de error
existe al momento de • • •
encendido cuando el bit S:1/9
se establece y la interrupción
ocurrió durante la ejecución.
Desigualdad del programa
de usuario de módulo de • •
memoria/NVRAM
Programa de usuario no
compatible -Desigualdad de
tipo de sistema operativo. • •
Este error también puede
ocurrir durante el encendido.
Se detectó etiqueta faltante
o duplicada.
• •
Un problema de integridad
de programa durante una • •
sesión de edición en línea.
Error de memoria ocurrió en
el modo de marcha.
• • •
Un bit de error menor se
establece al final del escán.
Refiérase a los bits S:5 de
• • • •
error menor.
B–36
Archivo de estado SLC
,.+#(
5#!(
#+6 ++(+, -#&)( ( ( #$(
++(+ .)
#5' $.#5' .,.+#( +.)+%
"0
!
"
"
(- ! "
" "! " (
! ( )
! "!
' " " ")
" (
! &
$
#%
( (
! ( )
!
"! '
+(,(+, (&6
! )-(, 1
,# % %%(
%#& %4 +&(-
(.++#5 &#'-+, *.
% )+(,(+ ,-.6 • • • •
/#+ ' % &((
&+" % ++(+
.,+3 *. %
#- ++(+ &1(+
-'#(
,
)('! +( .+'-
% )+50#&( ''#(
% ",#, %(%
+(,(+,
1
( , ',+#(
,('-+ 1 /(%/+
('-+ % %#&
%4 % ",#, %(%
)+ +'.+ %
&(( &+"
' /2 *. %
",#, +&(-( ,
+-#/ %
/.%/ #'##+ %
,#,-&
• • • •
"
B–37
Manual
-"#de"referencia del juego de instrucciones
.0-&+
5!&$+
&-" 6 --+-". !" /&"),+ !" + + &'+
!" "--+- " 0,
La referencia de dirección
indexada se encuentra fuera
de los límites del archivo de • • •
datos referenciado
específico.
El número de archivo existe,
pero no es el tipo de archivo
correcto o el número de
• •
archivo no existe.
B–38
Archivo de estado SLC
Usuario
Código
DirecĆ Errores de tiempo de No No Fijo,
de error Recup. 5/02 5/03 5/04
ción ejecución usuario recuperable 5/01
(hex)
!&" "! $$!
!$& !" )%& #$"
&#" $(" % "$$&" *
S:6 002C
)%& "$ #"
X • •
#$"
%" !& ( %&
! %' !&" &! '!
$$! !"$$& " %
002D
$+" '! $$!
X • •
!$& '! $("
!'$ !&$
!"
002E
(,
X • •
$(" !&$$'#-!
002F
!" (, " !" )%&!&
X • •
B–39
Manual de referencia del juego de instrucciones
3()$&(
"46$3,1
8',*1
,3(&9 3313(4 '( ,04536&&,80 '(. 1 1 ,-1
'( (3313 (&62
&,80 231*3$/$ '( 646$3,1 646$3,1 3(&62(3$%.(
+(7
Se intentó saltar a un archivo
de subrutina anidado en
exceso de uno. Este código
!
también puede significar que
# • • • •
un programa tiene rutinas
posiblemente recursivas.
Se detectó una referencia de
instrucción no soportada.
# • • • •
B–40
Archivo de estado SLC
Usuario
Código
DirecĆ Errores de instrucción del No No Fijo,
de error Recup. 5/02 5/03 5/04
ción programa de usuario usuario recuperable 5/01
(hex)
Se ((. un valor negativo
para un acumulador de
S:6 0034
temporizador o valor
X • • • •
preseleccionado.
Los procesadores fijos con
entradas dd 24 VCC
solamente: Se detectó un
HSC preseleccionado
X •
negativo o de cero en una
instrucción HSC.
Instrucción TND, SVC o REF
se llama dentro de una rutina
0035
de interrupción o fallo de
X • • •
usuario.
Un valor no válido se usa
0036 para un parámetro de X • • •
instrucción PID.
Una instrucción RET se
0038 detectó en un archivo que no X • • • •
es una subrutina.
Se intentó escribir una
dirección indirecta ubicada
xx3A en un archivo que tiene la X • •
protección constante de
archivo de datos.
Una longitud de cadena no
1f39 válida se detectó en un X • •
archivo de cadena.
Un error de chasis de datos
xx50
se detecta.
X • • • •
Un error de tiempo de
ejecución atascado" se
xx51
detecta en un módulo de
X • • • •
E/S.
Un módulo requerido para el
programa de usuario se
xx52
detecta como faltante o
X • • • •
eliminado.
B–41
* !
Manual de referencia del juego de instrucciones
+,*$(
.$"(
$* / ( ( $%(
**(* **(* + ,)
B–42
Archivo de estado SLC
*+)#'
-#!'
#). ' ' #$'
))') ))')* +(
B–43
&
Manual de referencia del juego de instrucciones
$
&,# !',# '&%,#
B–44
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
Configuración Habilitaciones de ranuras de • • • •
y dinámica Estas dos palabras son mapeadas con bits
para representar las 30 ranuras posibles de
E/S en un sistema SLC 500. S:11/0
representa la ranura 0 de E/S para los
sistemas de E/S fijas. (La ranura 0 se usa
para la computadora en sistemas modulares.)
S:11/1 a S:12/14 representan las ranuras de
E/S 1-30. S:12/15 no se usa.
Cuando un bit se establece (condición
predeterminada), permite que el módulo de
E/S contenido en la ranura referida se
actualice en el escán de E/S del ciclo de
operación del procesador.
Cuando se pone a cero el bit, se ignora el
módulo de E/S en la ranura referida. Es decir,
un valor de habilitación de ranura de E/S de 0
causa que los datos de imagen de entrada de
un módulo de entrada se inmovilicen en su
último valor. Además, las salidas de un
módulo de salida se inmovilizarán, indepenĆ
dientemente de los valores contenidos en la
imagen de salida. Las salidas permanecen
inmovilizadas hasta que:
• la alim. eléc. se desconecte,
• se salga del modo de marcha REM, o
• un fallo mayor ocurra.
En ese momento las salidas se ponen a cero
hasta que la ranura se vuelva a habilitar
(establecer).
Las ranuras inhabilitadas no deben
armonizarse con la configuración de programa
de usuario.
B–45
'
Manual de referencia del juego de instrucciones
!%
' -$
"( -$ (' & -$
%$) $* -$ • •
+ $()'* -$ $% (% "
! ()% " ) -$ $ " ) -$
'$*' % !*) " $ *$ '$*'
%$ ""% &" " $ *$ '$*'
$ " ) " $)''*& -$ %*'' ',
$ #'% " #$ $)' $%
'"!', " ()% )*" " )'!)
() ) ( &" " #%#$)%
) -$ *$ )
'%$ *' -$ ("
+ " $" (,$
%
B–46
Archivo de estado SLC
"
" "
"
! • • • •
1$ $12$ 0$&(120- doble para producir
! operaciones de 32 bits de #(4(1(;, 6
+3*2(.*(" "(;, "-, signo, operaciones de
#(4(1(;, precisa o #(4(1(;, doble 6
conversiones BCD #$ 5 dígitos.
Estas dos palabras se usan conjuntamente
con las instrucciones + 2$+82(" 1 MUL, DIV,
DDV 6 * 4 *-0 #$ 0$&(120-
+ 2$+82("- $1 $4 *3 #- * +-+$,2- #$
$)$"3"(;, #$ * (,1203""(;, 6 .$0+ ,$"$ 48*(#-
' 12 /3$ * .0;5(+ (,1203""(;,
- 1$ $)$"32$ $, $* .0-&0 +
#$ 313 0(-
, $5.*(" "(;, #$ ";+- %3,"(-, $* 0$&(120-
+ 2$+82("- 1$ (,"*36$ "-, * 1 #$%(,("(-,$1 #$
(,1203""(;,
( 312$# *+ "$, 4 *-0$1 #$ # 2-1 #$
!(21
"-, 1(&,- $)$+.*- $, * .8&(,
#$!$
+ ,$) 0 $12$ 2(.- #$ # 2-1 1(, 63# #$ 3,
2(.- #$ # 2-1 #$
!(21 1(&, #-1 -0
$)$+.*- "-+!(,$ 6 . 0 "0$ 0 3,
4 *-0 #$ # 2-1 "-, 1(&,- #$
!(21
$"-+$,# +-1 /3$ + ,2$,& 2-#-1 *-1
# 2-1 "-, 1(&,- #$
!(21 $, 3, 0"'(4- #$
# 2-1 <,("- 6 /3$ "-+($,"$ 2-#-1 *-1 4 *-0$1
#$
!(21 $, 3, *9+(2$ #$ . * !0 . 0 - (+. 0
. 0 % "(*(2 0 * .*(" "(;, 6 * 4(13 *(7 "(;,
#$+81 0$"-+$,# +-1 /3$ #(1$:$
#-"3+$,2$ 6 4$ $* "-,2$,(#- #$ # 2-1 #$
!(21 "-, 1(&,- $, * 0 97 '$5 #$"(+ * - !(, 0(
$ $* " .923*-
. 0 -!2$,$0 +81
(,%-0+ "(;, "$0" #$ ";+- " # (,1203""(;,
%$"2 $* 0$&(120- + 2$+82("-
3 ,#- 3, 032(, #$ % **- 0 ,30 #$ • • •
- % **- (,2$003+.$ * $)$"3"(;, ,-0+ * #$*
.0-&0 + $* 4 *-0 -0(&(, * #$* 0$&(120-
+ 2$+82("- 1$ 0$12 30 "3 ,#- * $)$"3"(;,
1$ 0$ ,3# -2$ /3$
6 ,- 1$ 31 ,
"3 ,#- * %3$,2$ - #$12(,- 1$ #$%(,$ "-+-
# 2-1 #$ .3,2- "-+ %*-2 ,2$
3 ,#- 3, (,2$003+.$ * $)$"3"(;, • •
,-0+ * #$* .0-&0 + $* 4 *-0 -0(&(, * #$*
0$&(120- + 2$+82("- 1$ 0$12 30 "3 ,#- *
$)$"3"(;, 1$ 0$ ,3#
B–47
Preface
Manual de referencia del juego de instrucciones
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:15L Configuración Dirección de nodo • • • •
estática Este valor de byte contiene la dirección de
nodo del procesador en la red DHĆ485 ó DH+.
Cada dispositivo en la red DHĆ485 debe tener
una dirección única entre los valores
decimales de 0-31. Cada dispositivo en la red
DH+ debe tener una dirección única entre los
valores decimales de 0-163. Para cambiar la
dirección de nodo de un procesador, escriba
un valor entre 1-31 para DHĆ485 y 1-63 para
DH+ usando el monitor de datos o la función
de nodo del programador, luego desconecte y
vuelva a conectar la alimentación eléctrica al
procesador..
La dirección de nodo predeterminada de un
procesador es 1. La dirección de nodo
predeterminada de APS y el programador
HHT es 0. Para proporcionar protección de
tiempo de ejecución contra la modificación
accidental del monitor de datos de su
selección, programe este valor usando una
instrucción MVM incondicional. Use la
instrucción MOV en lugar de MVM si también
desea proteger la velocidad en baudios. El
ejemplo siguiente muestra la protección de
tiempo de ejecución de la dirección de nodo 3.
MOV
MOVE
Source 3
Dest N7:100
MVM
MASKED MOVE
Source N7:100
Mask 00FF
Dest S:15
B–48
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:15H Configuración Velocidad en baudios • • • •
estatica Este valor de byte contiene un código usado
para seleccionar la velocidad en baudios del
procesador en la red DHĆ485.
Los procesadores SLC 5/01 y fijos
proporcionan una velocidad en baudios de
19200 ó 9600 solamente.
Los procesadores SLC 5/02 proporcionan
una velocidad en baudios de 19200, 9600,
2400 ó 1200.
Los procesadores SLC 5/04 OS401
proporcionan una velocidad en baudios de
57.6, 115.2 y 230.4.
Para cambiar la velocidad en baudios del
valor predeterminado de 19200, use el
monitor de datos o la función de baudios del
programador. El procesador usa el código 1
para 1200 baudios, código 2 para 2400
baudios, código 3 para 9600 baudios,
código 4 para 19200 baudios, código 11
para 57.6 baudios, código 12 para 115.2
baudios y código 13 para 230.4 baudios.
Ejemplo que muestra la protección de
tiempo de ejecución de velocidad en
baudios de 19200 (código 4):
MOV
MOVE
Source 1024
Dest N7:100
MVM
MASKED MOVE
Source N7:100
Mask FF00
Dest S:15
S:15H es igual a 4
= 1024 decimal = 0400 hex
= 0000 0100 0000 0000 binario
B–49
'
Manual de referencia del juego de instrucciones
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:15H Ejemplo que muestra la protección de tiempo
(cont.) de ejecución para la velocidad en baudios de
19200 6" ' 0 $ "*"6& &''
MOV
MOVE
Source 1027
Dest S:15
"%$
!/
*"'
-&' -& '%&' &$ • •
'&" -*"6& + *" (* $ &$ $
.$'" & -"'+ + +'*+*" '& $
.$'* '&,&"' & $ '&" -*"6& &$
S:16 Estado Prueba de un solo paso - Inicie el paso en - • • •
y Renglón/archivo
S:17 +,'+ * "+,*'+ "&"& $ &7%*' *& $6&
($*
0 *!".' ($*
#-,$ )- $ (*'+'* #-,*3
(*6/"%%&, -&' -&"'& & $ %''
(*- -& +'$' (+' * !"$",* +,
*,*5+," -+, +$"'&* $
'("6& (*- -& +'$' (+' $ %'%&,'
& )- -* $ (*' *%
+,'+ .$'*+ + ,-$"1& $ "&$"1"6&
*& $6& "4*+ $ ($*
(* ',&* %3+ "&'*%"6& $ "+('+",".'
(*' *%"6& "&,**' +, .$'* 0
(*'('*"'&* "&'*%"6& $5& +,'
2"&"" $ (+' & *!".' / *& $6& 0 '
/"+, &"& 7& -+' '&'"' (* +,
*,*5+," -&' + "*"'& ('* $
(*' *% +$*
+, *,*5+," + "&'*('* & $'+ • •
(*'+'*+
0
+$"6& &' + &+*"
B–50
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:18 Configuración Prueba de un solo paso - Punto de • • •
y de estado y interrupción - Renglón/archivo
S:19 dinámica Estos registros indican el número de renglón
($* S:18) y archivo (palabra S:19)
ejecutable delante del cual el procesador se
debe detener al ejecutar el modo de prueba de
un solo paso. Para habilitar esta
característica, usted debe seleccionar la
opción de prueba de un solo paso al momento
de guardar el programa.
Si los números de renglón y archivo son 0, el
procesador pasará al próximo renglón
solamente; si no, el procesador continuará
hasta encontrar un renglón/archivo que sea
igual al valor S:18/S:19.
El procesador se detiene y pone a cero S:18 y
S:19 cuando encuentra una correspondencia
durante su permanencia en el modo de prueba
de un solo paso. El procesador funcionará
indefinidamente si no encuentra el final de
renglón/archivo que usted ha introducido.
Funciona hasta encontrar una igualdad, recibir
un cambio de modo o apagarse. Vea S:2/4.
El dispositivo de programación interroga este
valor cuando proporcionar la información de
línea de estado de termine el paso antes del
archivo x, renglón y". También el dispositivo
de progamación escribe este valor cuando le
da el comando establezca el renglón final".
No existe ningún uso conocido para esta
característica cuando es direccionada por el
programa de escalera.
Esta característica se incorpora en los • •
procesadores SLC 5/03 y SLC 5/04. La
selección no es necesaria.
B–51
Preface
Manual de referencia del juego de instrucciones
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:20 Estado Prueba - Fallo/apagado - Renglón/archivo • • •
y +,'+ registros indican el número de renglón
S:21 (palabra
/ archivo (palabra
ejecutable que el procesador ejecutó
últimamente antes de ocurrir un error mayor o
apagado. * habilitar esta característica,
usted debe seleccionar la opción de prueba de
un solo paso al momento de guardar el
programa. Puede usar estos registros para
describir con precisión el punto de ejecución
del procesador a la última entrada en la rutina
de apagado o fallo. Esta función también está
activa en el modo de marcha REM. Vea S:2/4.
Ejemplo de aplicación: Supongamos que el
programa contiene varias instrucciones TON.
TON T4:6 en el archivo 2, renglón 25, a veces
obtienen un valor preseleccionado negativo.
La recuperación del fallo preseleccionado
negativo es posible colocando el valor
preseleccionado a 100 y volviendo a
establecer el temporizador.
Coloque el renglón siguiente en la rutina de
fallo para realizar lo anterior. El bit B3/0 está
enclavado como evidencia de que una
recuperación de aplicación ha sido iniciada.
Esta característica se incorpora en los • •
procesadores SLC 5/03 y SLC 5/04. No es
necesiario seleccionarla.
T4:6
(RES)
El valor 52 es igual a 0034 No. de renglón No. de archivo
hex. Este es el código de B3
error para un valor (L)
preseleccionado negativo del 0
temporizador. S:1
(U)
13
(RET)
B–52
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:22 Estado Tiempo de escán máximo observado • • •
+, palabra indica el intervalo máximo
observado entre escanes consecutivos.
Los escanes consecutivos se definen como
intervalos entre el archivo 2/renglón 0 y la
instrucción END, TND o REF. Este valor
indica, en incrementos de 10 ms, el tiempo
transcurrido en el ciclo de programa más largo
del procesador. El procesador compara cada
valor del último escán con el valor contenido
en S:22. Si el procesador determina que el
valor del último escán es mayor que el valor
almacenado en S:22, el valor del último escán
se escribe a S:22.
La resolución del valor de tiempo de escán
máximo observado es +0 a ±10 ms. Por
ejemplo, el valor 9 indica que 80-90 ms fueron
observados como el ciclo de programa más
largo.
Interrogue este valor usando la función del
monitor de datos si usted tiene que determinar
o verificar el tiempo de escán más largo del
ciclo de programa.
Nota: escán de E/S, overhead del
procesador y servicio de comunicación no se
incluyen en esta medición.
El bit de selección del tiempo de escán • •
(S:33/13) determina la base de tiempo usada
para los tiempos de escán promedios y
máximos. Cuando se pone a cero, la
operación es como se describe anteriormente.
Cuando se establece, la base de tiempo se
expresa en incrementos de 1 ms (en vez de
incrementos de 10 ms). Cuando S:33/13 se
establece, el valor de la resolución del tiempo
de escán máximo observado es +0 a ±1 ms.
Por ejemplo, el valor 9 indica que 8 a 9 ms
fueron observados como el ciclo de programa
más largo.
B–53
Manual de referencia del juego de instrucciones
&
$
&,# !',# '&%,#
'($ "%$ '*# %&$"$ • • •
Esta palabra indica un tiempo promedio
ponderado de ejecución. El valor indica, en
incrementos de 10 ms, el tiempo transcurrido
en el ciclo de programa promedio del
procesador. Para cada escán :
&$" = %&$"
+ '*#
La resolución del valor de tiempo de escán
promedio es +0 a ±10 ms. Por ejemplo, el
valor 2 indica que 10 a 20 ms fueron
calculados como el ciclo de programa
promedio.
$( escán de E/S, overhead del
procesador y servicio de comunicación no se
incluyen en esta medición.
El bit de selección de tiempo de escán S:33/13 • •
determina la base de tiempo usada para el
tiempo de escán promedio. Cuando se pone a
cero, la operación es como se describe
anteriormente. Cuando se establece, la base
de tiempo se expresa en incrementos de 1 ms
(en vez de incrementos de 10 ms). Cuando
S:33/13 se establece, la resolución del valor
de tiempo de escán promedio es +0 -1 ms.
Por ejemplo, el valor 2 indica que 1 a 2 ms
fueron calculados como el ciclo de programa
promedio.
$#)&,# '(&$ +# • • •
#*" Esta palabra indica el offset de elemento
usado en el direccionamiento indexado.
Cuando una rutina STI, ranura de E/S o fallo
interrumpe la ejecución normal del programa,
el valor original de este registro se restaura
cuando la ejecución se reanuda.
Cuando una DII interrumpe la ejecución • •
normal del programa, el valor original de este
registro se restaura cuando la ejecución se
reanuda.
B–54
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:25 Estado Interrupción de E/S pendiente • • •
y Estas dos palabras son mapeadas en bits a
S:26 las 30 ranuras de E/S. Los bits S:25/1 a
S:26/14 hacen referencia a las ranuras 1-30.
Los bits S:25/0 y S:26/14 están reservadas.
El bit pendiente asociado con una ranura de
interrupción se establece cuando el bit de
habilitación de interrupción de ranura de E/S
correspondiente se pone a cero al momento
de una petición de interrupción. Se pone a
cero cuando el bit de habilitación de interrupĆ
ción de evento de E/S se establece o cuando
una instrucción RPI asociada se ejecuta.
El bit pendiente para la ejecución de una
subrutina de interrupción de E/S permanece
puesto a cero cuando la ISR es interrumpida
por una STI o rutina de fallo. De manera
semejante, el bit pendiente permanece puesto
a cero si el servicio de interrupción se solicita
al momento en que una interrupción de
prioridad mayor o igual se está ejecutando
(rutina de fallo, STI u otra ISR).
Las interrupciones de E/S se tratan en el
capítulo 11 de este manual.
El bit pendiente asociado con una ranura de • •
interrupción se establece cuando el bit de
habilitación de interrupción de ranura de E/S
se pone a cero al momento de una petición de
interrupción. Se pone a cero cuando el bit de
habilitación de interrupción de evento de E/S
correspondiente se establece o cuando una
instrucción RPI asociada se ejecuta. El bit
pendiente siempre será establecido cuando el
servicio de interrupción se solicita y el
procesador está ejecutando una interrupción
de prioridad igual o mayor. La prioridad de
interrupción no afecta el establecimiento de
estos bits.
Por ejemplo, durante la ejecución de una
subrutina STI, la ranura 5 solicita una
interrupción de evento de E/S. La STI la
ejecutará hasta el final; sin embargo, el bit de
ranura 6 pendiente (S:25/6) no se establecerá
dentro de la ejecución de la STI. Examine el
estado de estos bits dentro de las subrutinas
de interrupción si la aplicación requiere esta
información.
B–55
$
Manual de referencia del juego de instrucciones
"
Dirección Clasificación Descripción
%&" !&$$'#+! & • • •
) Estas dos palabras son mapeadas con bits a
las 30 ranuras de E/S. Los bits S:27/1 a
S:28/14 corresponden a las ranuras 1-30.
Los bits S:27/0 y S:28/15 están reservadas.
El valor predeterminado de cada bit es 1
(establecido). El bit de habilitación asociado
con una ranura de interrupción se debe
establecer cuando la interrupción ocurre para
permitir que la ISR correspondiente se
ejecute. De lo contrario, la ISR no se
ejecutará y el bit de interrupción de ranura de
E/S pendiente asociado no se establecerá.
Los cambios efectuados a estos bits usando la
función del monitor de datos o instrucciones
de escalera que son distintas de IID o IIE
entran en vigencia en el siguiente final de
escán.
Las interrupciones de E/S se tratan en el
capítulo 11 de este manual.
"!'$+! Estos bits pueden ser • •
!* establecidos/restablecidos por el programa de
usuario, comms. o con la instrucción IIE o IID.
Los cambios efectuados a estos bits cuando la
función del monitor de datos de la terminal de
programación o toda instrucción de escalera
entrarán en vigencia inmediatamente.
"!'$+! , $" $(" $'&! " • • •
!* '%'$"
Usted introduce un número de archivo de
programa (3-255) que se debe usar en todos
los errores mayores recuperables y no
recuperables. Programe la lógica de escalera
de la rutina de fallo en el archivo que ha
especificado. Escriba un valor de 0 para
inhabilitar la rutina de fallo.
Para proporcionar protección contra la
modificación accidental del monitor de datos
de la selección, programe una instrucción
MOV incondicional que contenga el número de
archivo de programa de la rutina de fallo a
S:29 o programe una instrucción CLR en S:29
para evitar la operación de la rutina de fallo.
La rutina de fallo se trata en el capítulo 11 de
este manual.
B–56
Archivo de estado SLC
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:30 Configuración Interrupción temporizada seleccionable - • • •
dinámica Punto de ajuste
Usted introduce la base de tiempo, en
décimos de milisegundos, que se debe usar
en la interrupción temporizada seleccionable.
La rutina + #-, + 6& $ .$'* )-
"&,*'- +*" -& .$'* *' (*
"&!"$",* $
* (*'('*"'&* (*',"5& '&,* $
%'"""5& "&,$ $ %'&",'* ,'+
$ +$"5& (*' *% -& "&+,*-"5&
"&'&""'&$ )- '&,"& $ .$'*
(-&,' #-+, $ &
' (*' *%
-& "&+,*-"5&
&
(* .",* $
'(*"5&
" $ + "&"" -*&, $ %'' %*!
* &' $'+ * "+,*'+ +,' $
"&,**-("5& '%"&1 ,%('*"1* (*,"* $
"&$ $ +2& (*' *% & )- $'+
* "+,*'+ +,' + * *'&
+ "&,**-("'&+ ,%('*"1+
+$"'&$+ + ,*,& & $ (4,-$'
+, %&-$
+ ,"%(' $ (-&,' #-+, • •
(- +* %+ 5 %+ + 6& $ .$'* $ ",
+$"5& (-&,' #-+,
-&' + ('& *' $ '(*"5& + '%'
+ +*" &,*"'*%&,
-&' +
+,$ $ + ,"%(' + /(*+ &
"&*%&,'+ %+ !"$", $
"&+,*-"5& 0 $ $ "&!"$",
S:31 Configuración Interrupción temporizada seleccionable - • • •
dinámica Número de archivo
+, "&,*'- -& &6%*' *!".'
(*' *%
)- + -+* '%' $
+-*-,"& "&,**-("5& ,%('*"1
+$"'&$ +*" -& .$'* (*
"&!"$",* $
* (*'('*"'&* (*',"5& '&,* $
%'"""5& "&,$ $ %'&",'* ,'+
$ +$"5& (*' *% -& "&+,*-"5&
"&'&""'&$ )- '&,& $ .$'*
&6%*' *!".' $ &
5
(*' *% -& "&+,*-"5&
&
(*
.",* $ '(*"5&
+ "&,**-("'&+ ,%('*"1+
+$"'&$+ + ,*,& & $ (4,-$'
+, %&-$
B–57
Manual de referencia del juego de instrucciones
#
# #
! "# !"# • • •
Esta palabra indica el número de ranura del
módulo de E/S especial que generó la
ejecución actual de ISR. Este valor se borra
cuando la entrada en el modo ISR, marcha
REM se finaliza o al momento de encendido.
Usted puede interrogar esta palabra dentro de
la subrutina STRI o rutina de fallo si desea
saber si estas interrupciones de prioridad
mayor han interrumpido la ejecución de una
ISR. También puede usar este valor para
diferenciar la identidad de la ranura de
interrupción al multiplexar dos o más
interrupciones de módulo de E/S especial a la
misma ISR.
Las interrupciones de E/S se tratan en el
capítulo 11 de este manual.
Usted puede interrogar esta palabra dentro de • •
la subrutina DII si desea saber si estas
interrupciones de prioridad mayor han
interrumpido la ejecución de ISR. También
puede usar este valor para diferenciar la
identidad de la ranura de interrupción al
multiplexar dos o más interrupciones de
módulo de E/S especial es a la misma ISR.
!
! ! • •
Este bit se establece cuando el procesador
determina que otro nodo en la red de canal 0
ha solicitado información o ha proporcionado
un comando a dicho bit. Este bit puede ser
establecido en todo momento. Este bit se
pone a cero cuando el procesador da servicio
a la petición (o comando).
Use este bit como condición de una
instrucción SVC para mejorar la capacidad de
comunicación del procesador.
! " ! ! • •
Este bit se establece cuando otro nodo en la
red de canal 0 ha proporcionado la
información que usted ha solicitado en la
instrucción MSG del procesador. Este bit se
pone a cero cuando el procesador almacena
la información y actualiza la instrucción MSG.
Use este bit como condición de una
instrucción SVC para mejorar la capacidad de
comunicación del procesador.
B–58
Archivo de estado SLC
"
" "
• •
! bit se establece cuando uno o más
mensajes de canal en el programa se
habilitan $ esperan, pero no se transmite
ningún mensaje en ese momento. En cuanto
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 esperando o permanece puesto a
cero si no hay más mensajes esperando.
" • •
Cuando se restablece, este bit indica que el
puerto de comunicación de canal 0 está en el
modo de sistema (modo DF1). Cuando es
establecido, este bit indica que el canal 0 está
en el modo de usuario (modo ASCII). Use la
utilidad de configuración de canal de los
dispositivos de programación para cambiar
esta selección.
! • •
Este bit es establecido por el procesador
cuando por lo menos un nodo más está activo
en el canal 0. De lo contrario, el bit
permanece puesto a cero.
B–59
Preface
Manual de referencia del juego de instrucciones
Fijo,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:33/5 Configuración Selección de servicio de comunicaciones • •
dinámica (canal 0)
Cuando es establecido, solamente una
petición/comando de comunicación de canal 0
recibe servicio según la instrucción END, TND,
REF o SVC. Cuando se pone a cero, todas
las peticiones/comandos de comunicación
entrantes o salientes, que pueden recibir
servicio, lo reciben según la instrucción END,
TND REF o SVC.
Una petición/comando de comunicación
consiste en un comando entrante de canal 0,
respuesta de mensaje de canal 0 ó comando
de mensaje saliente de canal 0. Refiérase a
las palabras S:33/0, S:33/1, S:33/2 y S:33/6
para obtener más información.
Nota: Cuando se pone a cero, la
transferencia de comunicación se incrementa.
El tiempo de escán también se incrementa si
varios comandos/peticiones de comunicación
se reciben en el mismo escán.
Para programar esta característica, use la
función del monitor de datos para establecer y
poner a cero este bit. Para proporcionar
protección contra la modificación accidental
del monitor de datos de la selección, programe
una instrucción OTL incondicional en la
dirección S:33/5 para asegurar la operación de
una petición/comando o programe una
instrucción OTU incondicional en la dirección
S:33/5 para asegurar la operación de
peticiones/comandos múltiples. Como
alternativa, el programa puede cambiar el
estado de este bit usando la lógica de esclera
si la aplicación requiere la selección dinámica
de esta función.
S:33/6 Configuración Selección de servicio de mensaje (canal 0) • •
dinámica Este bit solamente es válido cuando la
selección de servicio de comunicaciones
(S:33/5) del canal 0 se borran (lo cual
selecciona todos los comandos de servicio).
Cuando S:33/6 se establece y S:33/5 se pone
a cero, todas las instrucciones MSG salientes
de canal 0 reciben servicio según la
instrucción END, TND, SVC o REF. De lo
contrarior, solamente un comando o respuesta
MSG saliente de canal 0 recibirá servicio
según la instrucción END, TND, SVC o REF.
B–60
Archivo de estado SLC
Comp.,
"( Clasificación Descripción 5/02 5/03 5/04
5/01
S:33/7 Configuración Selección de servicio de mensaje (canal 1) • •
dinámica 12% "(2 1-*!+%,2% %1 48*($- #3!,$- %* "(2 $%
1%*%##(;, $% 1%04(#(- $% #-+3,(#!#(-,%1
$%* #!,!* 1 1% .-,% a c%0- %* c3!* 1%*%##(-,! *-1
#-+!,$-1 de 1%04(#(- 2-2!*. C3!,$- S
%1
%12!"*%#($- 6 %128 .3%12- a c%0- 2-$!1 *!1
(,1203##(-,%1 de #!,!* 1 1!*(%,2%1 0%#("%,
1%04(#(- 1%'<, *! (,1203##(;, END, -
% *- #-,20!0(- 1-*!+%,2% 3, #-+!,$- -
0%1.3%12! $% #!,!* 1!*(%,2% 0%#("% 1%04(=
#(- 1%'<, *! (,1203##(;, -
S:33/8 Configuración Bit de control de latencia de interrupción • •
estática 3!,$- 1% %12!"*%#% *! *!2%,#(! $% (,2%003.#(;,
-#300% .!0! (,2%003.#(-,%1 $% 313!0(- 6
%4%,2- $% 12- 1(',(&(#! /3% #3!,$-
-#300% 3,! (,2%003.#(;, 1% *% '!0!,2(7! %12!0 %,
%* 0%,'*;, $% *! 13"032(,! $% (,2%003.#(;,
$%,20- $%* .%0:-$- $% *!2%,#(! $% (,2%003.#(;,
$%#*!0!$- 1(%+.0% /3% 3,! (,2%003.#(;, $%
.0(-0($!$ ('3!* - +!6-0 1% %129 %)%#32!,$-
12%$ $%"% 1%*%##(-,!0*- !* '3!0$!0 %*
.0-'0!+! %&(90!1% !* !.9,$(#% %, %* Manual
de usuario de software de programación
avanzada, .3"*(#!#(;,
=
.!0! -"2%,%0
(,&-0+!#(;, !#%0#! $% #;+- #!*#3*!0 *! *!2%,#(!
$% (,2%003.#(;,
3!,$- 1% .-,% ! #%0- *!1 (,2%003.#(-,%1 $%
313!0(- 1-*!+%,2% .3%$%, (,2%003+.(0 %*
.0-#%1!$-0 ! .3,2-1 .0%$%&(,($-1 $% %)%#3#(;,
%, %* #(#*- $% .0-'0!+! $% 313!0(- !
*!2%,#(! $% (,2%003.#(;, 1% $%&(,% #-+- %*
.%0:-$- $% 2(%+.- +81 *!0'- /3% .3%$%
20!,1#300(0 %,20% $-1 .3,2-1 .0%$%&(,($-1
3!,$- 1% .-,% ! #%0- 312%$ $%"%
!,!*(7!0 #!$! .0-'0!+! $% 313!0(- * "(2 1%
.-,% ! #%0- .0%$%2%0+(,!$!+%,2%
-1 .3,2-1 1('3(%,2%1 1-, *-1 <,(#-1 .3,2-1
%, /3% 1% .%0+(2% /3% *!1 13"032(,!1 $%
(,2%003.#(;, $% 313!0(- 1% %)%#32%, #3!,$-
1% .-,% ! #%0-
• !* (,(#(- $% #!$! 0%,'*;,
• $%1.391 $% $!0 1%04(#(- ! *! #-+3,(#!#(;,
• %,20% 0!,30!1 $30!,2% *! !#23!*(7!#(;, $% *!
(+!'%, $% %,20!$! - 1!*($! - #3!*/3(%0
2!0)%2! $% %1.%#(!*
S:33/9 Estado Bit de alternador de escán • •
12% "(2 1% .-,% ! #%0- !* +-+%,2- $% %,20!0
%, %* +-$- $% 12% "(2 #!+"(! $%
%12!$- $30!,2% #!$! %)%#3#(;, $% 3,!
(,1203##(;, - 1% %12% "(2 %,
%* .0-'0!+! $% 313!0(- .!0! !.*(#!#(-,%1 2!*
#-+- *! %)%3#(;, $% 13"032(,! $% +3*2(.*%5
B–61
Preface
Manual de referencia del juego de instrucciones
! !
!
! ! ! • •
Establezca este bit con el programa de
usuario o la terminal de programación para
causar que la función DII se reconfigure en la
próxima ocurrencia de interrupción o al final de
cada escán (END, TND o REF). Este bit se
aplica a la salida de DII ISR, rutina de fallo,
STI ISR o ISR de evento.
Lo siguiente ocurre cuando la DII se
reconfigura:
1. El acumulador DII se borra (S:52).
2. Los parámetros DII ubicados en las
palabras S:46 a S:50 se aplican.
3. El bit de reconfiguración DII está puesto a
cero por el procesador.
Por ejemplo, use la estructura de escalera
siguiente para provocar una reconfiguración
DII desde el archivo de escalera principal cada
vez que la entrada 0 se desconecte y se
vuelva a conectar.
I:1/0 B3/0 S:33/10
] [ [OSR] (L)
B–62
Archivo de estado SLC
Comp.,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:33/11 y Estado Estado de edición en línea • •
S:33/12 Estos dos representan los cuatro estados
de edición en línea posibles:
Bit 12 Bit 11 Estado de
edición
en línea
0 0 No existen
ediciones en
línea
0 1 La edición
en línea
inhabilitada
1 1 Prueba de
ediciones
en línea
1 0 no usado
Examine el estado de estos bits con el
programa de usuario para contar el número
de sesiones de edición en línea, indicar una
alarma o colocar la aplicación en un estado
especial diseñado para sesiones de edición
en línea.
S:33/13 Configuración Selección de base de tiempo del tiempo de • •
estática escán
Este bit determina la base de tiempo usada para
promediar el tiempo de escán (S:23) y el tiempo
de escán máximo (S:22). Cuando se pone a
cero, el valor contenido en los tiempos de escán
promedio y máximo representan el número de
incrementos de 10 ms que han ocurrido.
Cuando se establece, el valor contenido en los
tiempos de escán promedio y máximo represenĆ
tan el número de incrementos de 1 ms que han
ocurrido. Este valor se borra predeterminaĆ
damente (base de tiempo de 10 ms).
B–63
Manual de referencia del juego de instrucciones
!
!' "' "! '
$!'
# #! • •
& Este bit se usa para habilitar el discado DTR.
Cuando se pone a cero, la señal DTR de canal
0 (pin 4) es controlada directamente por el
variador de comunicación estándar. Cuando
se establece, se puede efectuar el discado
DTR escribiendo a S:33/15, bit de forzados
DTR.
El bit S:33/14 se examina y se aplica al final
de cada escán (END, TND o REF). Cuando
está en el modo de programa, suspensión o
fallo, DTR está habilitado y permanece
habilitado hasta que una secuencia de
desconexión automática sea detectada por el
controlador de comunicación.
Una desconexión automática ocurre si el
controlador de comunicación detecta que la
señal CD de canal 0 (pin 1) ha estado ausente
durante más de 10 segundos o si la señal
DSR de canal 0 (pin 6) se ha inhabilitado.
Refiérase al bit de módem perdido de canal 0
S:5/14 para obtener más información.
Durante una desconexión automática, el
variador de comunicación estándar mantiene
el DTR inhabilitado hasta que se habilite la
señal DSR de canal 0 ó transcurran 5
segundos.
# Cuando el canal 0 está configurado
para DH485, S;33/14 se debe poner a cero
para un funcionamiento adecuado.
$!'
# !%" • •
& Este bit se usa para forzar el pin DTR alto o
bajo. Cuando S:33/14 se establece, la señal
DTR de canal 0 (pin 4) se aplica al final de
cada escán (END, TND o REF) usando el
estado de S:33/15. Cuando S:33/14 se pone
a cero, este bit no afecta DTR.
Cuando S:33/15 se establece, DTR es forzado
alto. Cuando se pone a cero (predeterminado),
DTR es forzado bajo. Cuando está en el modo
de prueba REM o marcha REM, este bit se
aplica solamente al final de escán (END, TND o
REF). Cuando está en el modo de programa,
suspensión o fallo (o al momento de encendido),
DTR se establece a menos que el controlador
de comunicación esté efectuando una
desconexión automática.
B–64
Archivo de estado SLC
Comp.,
"( Clasificación Descripción 5/02 5/03 5/04
5/01
S:34/0 Configuración Bit de transferencia de DH+ a DHĆ485 •
estática inhabilitada
Este bit proporciona la capacidad de transferir
paquetes recibidos entre canales. Cuando se
establece, el procesador no tiene capacidad
para la transferencia. Cuando se restablece,
el procesador permite que los paquetes se
transfieran de un canal a otro. El canal 0
(RSĆ232) se debe configurar para el protocolo
DHĆ485. Solamente los paquetes que
contienen la capa de red de Internet y cuya
identidad de vínculo de destino es igual al
especificado para el canal opuesto serán
transferidos. El valor predeterminado es el
restablecimiento.
La identidad del vínculo predeterminado para
el canal 0 es uno. La identidad del vínculo
predeterminado para el canal 1 es dos.
S:34/1 Configuración Bit de habilitación de tabla de nodo activo DH+ •
estática Este bit habilita el procesamiento de la tabla
de nodo activo DH+. Cuando se establece, la
tabla de nodo activo DH+ se procesa. Cuando
se pone a cero, la tabla de nodo activo DH+
no se procesa. El valor predeterminado es
puesto a cero.
Este bit es evaluado durante cada entrada en
el modo de marcha REM. Note que el
procesador actualiza las palabras de estado
individuales S:83 a S:86.
S:34/2 Configuración Bit de habilitación del indicador matemático • •
dinámica de punto (coma) flotante
Este bit inhabilita el procesamiento de
indicadores matemáticos cuando se usa el punto
(coma) flotante matemático (F8:). Los
indicadores matemáticos afectados son overflow
(S:0/1), cero (S:0/2), signo (S:0/3) y el bit de
interrupción por overflow de error menor (S:5/0).
Cuando el bit se pone a cero, los indicadores
matemáticos se procesan. Cuando el bit se
establece, los indicadores matemáticos son
borrados excepto por el bit de interrupción por
overflow de error menor, el cual permanece en
su último estado. El indicador de acarreo (S:0/0)
está reservado para uso interno durante todas
las operaciones de punto (coma) flotante. El
valor predeterminado es puesto a cero.
Las instrucciones afectadas por el punto
(coma) flotante incluyen ADD, SUB, MUL, DIV,
NEG, SQR y MOV. El establecer este bit
reduce los tiempos de ejecución de las
instrucciones anteriores. Este bit es evaluado
durante la ejecución de cada instrucción.
B–65
,"#de"referencia del juego de instrucciones
Manual
*(+
&," &2) '-&#& &2) "- ,&+ &2)
*)#&$/, &2) &. !" %&'&. &2) !" .,)-(&-&2) !" +', •
!&)1(& !" "-.!* $'*' -*'(")."
Cuando este bit se establece, la palabra de
estado global a S:99 se transmite con cada
paso de testigo DH+. Cuando se pone a cero,
el testigo se pasa sin la palabra de estado
global.
*)#&$/, &2) &. !" %&'&. &2) !" ," "+ &2) !" +', !" •
!&)1(& "-.!* $'*' -*'(")."
Cuando este bit se establece, el procesador
recolecta la palabra de estado global
transmitida por otros dispositivos en la red
DH+ y la almacena en el archivo de estado
global (S:100-S:163). Cuando se pone a
cero, el procesador no hace caso de la
información de estado global proveniente de
otros dispositivos en la red.
*)#&$/, &2) &. !" .,)-#",") & !" %&'&.! •
!&)1(& -*'(")."
Cuando este bit se establece, la operación de
transferencia se habilita entre el canal 0 y el
canal 1. El canal 0 se debe configurar para el
protocolo de full duplex DF1.
-.!* &"(+* !"' 3'.&(* "- 1) !" (- • •
El valor de esta palabra le informa cuánto
tiempo ha transcurrido durante un ciclo de
programa. Un ciclo de programa incluye el
programa de escalera, limpieza, escán de
E/S y servicio al puerto de comunicación.
Este valor de palabra es actualizado por el
procesador solamente una vez durante cada
escán inmediatamente antes de la ejecución
del renglón 0, archivo 2 (o al retorno de una
instrucción REF).
"-",0!* • •
B–66
Archivo de estado SLC
Comp.,
"' Clasificación Descripción 5/02 5/03 5/04
5/01
S:36/8 Estado DII perdido • •
Este bit se establece cuando ocurre una
interrupción
) el bit de
pendiente
(S:2/11) también se establece. Cuando esto
ocurre, se le comunica que una interrupción
DII ha sido perdida. Por ejemplo, la
interrupción se perdió debido a que una
interrupción previa ya estaba pendiente y
esperando la ejecución. Examine este bit en
el programa de usuario y tome la acción más
adecuada si la aplicación no puede tolerar
esta condición. Luego, ponga a cero este bit
con el programa de usuario como preparación
para la próxima ocurrencia posible de este
error.
S:36/9 Estado STI perdido • •
Este bit se establece cuando una interrupción
STI ocurre y el bit de STI pendiente (S:2/0)
también se establezca. Cuando esto ocurre,
se le comunica que una interrupción STI ha
sido perdida. Por ejemplo, la interrupción se
perdió debido a que una interrupción previa ya
estaba pendiente y esperando la ejecución.
Examine este bit en el programa de usuario y
tome la acción más adecuada si la aplicación
no puede tolerar esta condición. Luego,
ponga a cero este bit con el programa de
usuario como preparación para la próxima
ocurrencia posible de este error.
S:36/10 Estado Protección de sobrescritura del archivo de • •
datos del módulo de memoria
Use este bit para determinar la validez de
datos retentivos después de la transferencia
del módulo de memoria. Este bit siempre se
establece ccuando una transferencia del
módulo de memoria hacia el procesador
ocurre con la protección de sobrescritura del
archivo de datos seleccionada y los archivos
protegidos se sobrescriben. Los archivos
protegidos son sobrescritos cuando un
programa de módulo de memoria no coincide
con el programa del procesador al momento
de la transferencia. Este bit no está puesto a
cero por el procesador.
B–67
$
Manual de referencia del juego de instrucciones
" #
$,! %,! %$#,!
%$(" #$ $$"$% !"$% • •
"!%
"!'$,! "+" !$" • •
!) Este valor contiene el valor del año en el
reloj/calendario. El límite válido es 0-65535.
Para inhabilitar el reloj/calendario, escriba cero
a todas las palabras de reloj/calendario (S:37
a S:42).
"!'$,! "!$" % • •
!) Este valor contiene el valor del mes del
reloj/calendario. El límite válido es 1-12.
Para inhabilitar el reloj/calendario, escriba
ceros a todas las palabras del reloj o
calendario (S:37 a S:41). Enero es igual al
valor de 1.
"!'$,! "!$" * • •
!) Este valor contiene el valor de día del
reloj/calendario. El límite válido es 1-31.
Para inhabilitar el reloj/calendario, escriba
ceros a todas las palabras de reloj o
calendario (S:37 a S:41). El primer día del
mes es igual al valor de 1.
"!'$,! "!$" "$% • •
!) Este valor contiene el valor de hora del
reloj/calendario. El límite válido es 0-23.
Para inhabilitar el reloj/calendario, escriba
ceros a todas las palabras de reloj o
calendario (S:37 a S:41). Las 0000 horas
equivalen al valor de 0.
"!'$,! "!$" !'&"% • •
!) Este valor contiene el valor de minuto del
reloj/calendario. El límite válido es 0-59.
Para inhabilitar el reloj/calendario, escriba
ceros a todas las palabras de reloj o
calendario (S:37 a S:41).
"!'$,! "!$" %'!"% • •
!) Este valor contiene el valor de segundos el
reloj/calendario. El límite válido es 0-59.
Para inhabilitar el reloj/calendario, escriba cero
a todas las palabras de reloj o calendario
(S:37 a S:41).
B–68
Archivo de estado SLC
Comp.,
Dirección Clasificación Descripción 5/02 5/03 5/04
5/01
S:43 Estado Interrupción temporizada seleccionable - • •
S:44 Temporizador de 10 µs
B–69
#
Manual de referencia del juego de instrucciones
!
#(
$( $#"(
! &#( %##&"( %# $#% )#! • •
' # &#
01#" '+1/,"2!# #) +:*#/, "# /+2/
.2# !,+1'#+# #) *9"2), "# "'0!/#10 .2#
0# "# #+ 20/ !,*, ) /+2/ "# '+1#//2-!'9+
"# #+1/" "'0!/#1 ) -/,!#0",/ #01/7 !,+
$)), 0' ) /+2/ #017 3!8 , !,+1'#+# 2+
*9"2), "# +, "'0!/#10 ,/ #(#*-), 2+
*9"2), +)9%'!, !20 .2# ,!2// 2+ $)), "#
-/,!#0",/ 01# '1 0# -)'! ) *,*#+1, "#
"#1#!!'9+ "#) '1 "# /#!,+$'%2/!'9+
01# 3),/ 0# -)'! 0,)*#+1# ) *,*#+1, "#
#(#!2!'9+ "# ) $2+!'9+ "# /#!,+$'%2/!'9+
#01 )#!'#+", #) '1 9 ) #+1/" #+
#) *,", "# */!& !,+ #) '1 "#
& ')'1!'9+
#01 )#!'",
$'+ "# -/,-/,!',+/ -/,1#!!'9+ !,+1/ )
*,"'$'!!'9+ !!'"#+1) "#) *,+'1,/ "# "1,0
"# 02 0#)#!!'9+ -/,%/*# 2+ '+01/2!!'9+
'+!,+"'!',+) .2# !,+1#+% #) 3),/ "#
+:*#/, "# /+2/ "# ) #+
! &#( %##&"( %# $#% '$# • •
' %
01#" '+1/,"2!# 2+ 3),/ *-#", !,+ '10
.2# !,//#0-,+"# ),0 '10 .2# "#0#
*,+'1,/'5/ #+ #) *9"2), "# "'0!/#10
,)*#+1# ),0 '10
0# 20+ #+ ) $2+!'9+
) #01 )#!#/ 2+ '1 '+"'! .2# 201#"
"#0# '+!)2'/ #) '1 #+ ) !,*-/!'9+ "# )
1/+0'!'9+ "# '1 "#) *9"2), "# "'0!/#10 )
3),/ "# !,*-/!'9+ ) -,+#/
!#/, #) '1 '+"'! .2# #) #01", "# 1/+0'!'9+
"#) '1 #+ !2#01'9+ !,+01'124# 2+ '1 "# 6+,
'*-,/1 01# 3),/ 0# -)'! ) *,*#+1, "#
"#1#!!'9+ "# 2+ '1 "# /#!,+$'%2/!'9+
!" 0)'" "# 4 ) $'+) "# !" #0!7+
,
$'+ "# -/,-,/!',+/ -/,1#!!'9+ !,+1/ )
*,"'$'!!'9+ !!'"#+1) "#) *,+'1,/ "# "1,0
"# ) 0#)#!!'9+ -/,%/*# 2+ '+01/2!!'9+
'+!,+"'!',+) .2# !,+1#+% #) 3),/ "#
*70!/ "# '1 "# ) #+
B–70
Archivo de estado SLC
Fijo,
$ Clasificación Descripción 5/02 5/03 5/04
5/01
S:49 Configuración Interrupción de entrada de comparación - • •
dinamica Valor de comparación
01#" '+1/,"2!# 2+ 3),/ *-#", !,+ '10
.2# !,//#0-,+"# )0 1/+0'!',+#0 "# '1 .2#
"# #+ ,!2//'/ #+ ) 1/(#1 "# E/S "'0!/#10
-/ .2# ,!2// 2+ !,+1#, , interrupción.
Solamente los bits 0 a 7 se usan en la $2+!'8+
) #01 )#!#/ 2+ '1 '+"'! .2# #) '1 "# #
&!#/ ) 1/+0'!'8+ "# 0 1 -/ !2*-)'/ !,+ )
!,+"'!'8+ "# !,*-/!'8+ -/ "'!&, bit. E)
-,+#/ !#/, #) '1 '+"'! .2# #) '1 "# # &!#/
) 1/+0'!'8+ "# 1 0 -/ !2*-)'/ !,+ )
!,+"'!'8+ "# !,*-/!'8+ -/ "'!&, bit. Una
'+1#//2-!'8+ , !,+1#, 0# %#+#/ ) *,*#+1,
"# 1/+0'!'8+ "#) 9)1'*, '1 "#) 3),/ "#
comparación. 01# 3),/ 0# -)'! )
"#1#!!'8+ "# 2+ '1 "# /#!,+$'%2/!'8+
!" 0)'" "# 5 !" $'+) "# #0!7+
,
$'+ "# -/,-,/!',+/ -/,1#!!'8+ !,+1/ )
*,"'$'!!'8+ !!'"#+1) "#) *,+'1,/ "# "1,0
"# ) 0#)#!!'8+ -/,%/*# 2+ '+01/2!!'8+
'+!,+"'!',+) .2# !,+1#+% #) 3),/ "#
!,*-/!'8+ "# ) #+
S:50 Configuración Interrupción de entrada discreta - Valor • •
dinámica preseleccionado
2+", #01# 3),/ #0 '%2) 8 2+
'+1#//2-!'8+ #0 %#+#/" !" 3#6 .2# 0#
01'0$!#+ )0 -) /0 #0-#!'$'!"0
5
2+", #01# 3),/ #017 #+1/# 5
2+ !,+1#, ,!2//'/7 !" 3#6 .2# )
!,*-/!'8+ "# '1 0# 01'0$% +
'+1#//2-!'8+ 0#/7 %#+#/" !2+", #) 3),/ "#
!2*2)",/ )!+!# 8 #4!#" #) 3),/
-/#0#)#!!',+", 01# 3),/ 0# -)'! )
*,*#+1, "# "#1#!!'8+ "#) '1 "#
/#!,+$'%2/!'8+ !" 0)'" "# 5 )
$'+) "# !" #0!7+ ,
$'+ "# -/,-,/!',+/ -/,1#!!'8+ !,+1/ )
*,"'$'!!'8+ !!'"#+1) "#) *,+'1,/ "# "1,0
"# ) 0#)#!!'8+ -/,%/*# 2+ '+01/2!!'8+
'+!,+"'!',+) .2# !,+1#+% #) 3),/
-/#0#)#!!',+", "# ) #+
B–71
&
Manual de referencia del juego de instrucciones
$
&.#
!'.# '&%.#
'($ #(&&)%.# #(& '&( -'& • •
&($&#$
La máscara de retorno se actualiza inmediataĆ
mente antes de la entrada en la subrutina DII.
Este valor contiene el mapa con bits de las
transiciones de bits que causaron la interrupĆ
ción. El bit se establece si se apareció en la
lista de transiciones de bits que causaron la
interrupción (especificado para transición en
las comparaciones S:48 y S:49). El bit se
pone a cero si se enmascaró. Este valor es
borrado por el procesador al momento de salir
de la subrutina DII.
Use este valor para validar las transiciones de
interrupción. O bien, cuando reconfigure
(secuencie) dinámicamente la DII, usted puede
usar este valor dentro de la subrutina DII para
facilitar determinar o validar su posición en la
secuencia.
'($ #(&&)%.# #(& '&( • •
)")!$&
El acumulador DII contiene el número de
conteos que han ocurrido (vea S:50). Cuando
un conteo ocurre y el acumulador es mayor o
igual que el valor preseleccionado, una
interrupción DII se genera.
, '&*$ • •
'($ !("$ ("%$ '-# #(&&)%.# • •
#(& '&(
Este valor indica, en incrementos de 1 ms, el
tiempo transcurrida durante la subrutina DII
más reciente. La resolución de este valor es
+0 a ±1 ms.
'($ "%$ '-# #(& '&( • •
"-+"$ $'&*$
Este valor indica, en incrementos de 1 ms, el
tiempo máximo transcurrido durante una
ejecución de subrutina DII. El procesador
compara cada valor de último escán DII (S:55)
al valor de scán DII máximo contenido en
S:56. Si el procesador determina que el valor
del último escán DII es mayor que el valor
almacenado en S:56, el valor del último escán
(S:55) se escribe a S:56, el cual así se
convierte en el nuevo tiempo de escán DII
máximo. La resolución de este valor es +0 a
±1 ms.
Interrogue este valor usando una función del
monitor de datos del dispositivo de
programación si necesita determinar o verificar
el tiempo de escán más extenso del programa.
B–72
Archivo de estado SLC
Fijo,
#*#1' Clasificación Descripción 5/02 5/03 5/04
5/01
S:57 Estado Número de catálogo del sistema de operación • •
Indica el número de catálogo del sistema de
operación. Por ejemplo, el valor de 300 indica
el sistema de operación ĆOS300, el valor de
301 indica ĆOS301.
S:58 Estado Serie del sistema de operación • •
Indica la serie del sistema de operación. Por
ejemplo, el valor de 0 indica una serie A y el
valor de 1 indica una serie B.
S:59 Estado FRN del sistema de operación • •
Indica el número de versión de firmware del
sistema de operación. Por ejemplo, el valor
de 1 indica FRN1 y el valor de 2 indica FRN2.
S:60 Estado Número de catálogo del procesador • •
Indica el número de catálogo del procesador.
Por ejemplo, el valor de 523 indica ĆL532 y el
valor de 534 indica ĆL534.
S:61 Estado Serie del procesador • •
Indica la serie del procesador. Por ejemplo, el
valor de 0 indica la serie A y el valor de 1
indica la serie B.
S:62 Estado Revisión del procesador • •
Indica la revisión del procesador. Por ejemplo,
el valor de 1 indica REV1 y el valor de 2 indica
REV2.
S:63 Estado Tipo de programa de usuario • •
Indica el dispositivo de programación que creó
el programa de usuario.
S:64 Estado Indice de funcionabilidad del programa de • •
usuario
Indica el nivel de funcionabilidad contenido en
un tipo de programa determinado.
S:65 Estado Tamaño de RAM de usuario • •
Indica el tamaño de NVRAM en palabras de
instrucción. Por ejemplo, el valor 64 es igual a
palabras de instrucción de 64 K de NVRAM.
(Se aplica a los procesadores SLC 5/03
OS302 y SLC 5/04 OS401.)
S:66 Estado Tamaño de Flash EEPROM • •
Indica el tamaño de memoria del sistema
operativo en miles (K) de palabras de 16 bits.
Por ejemplo, el valor de 128 es igual a 128 K
palabras de memoria.
B–73
-"#de"referencia del juego de instrucciones
Manual
Fijo,
&-" &5* (.&#& &5* ". -&, &5* 5/02 5/03 5/04
5/01
S:67 y S:68 Estado Canal 0 de nodos activos DHĆ485 • •
S:69 a S:82 NA Tabla de nodo activo de half duplex DF1 • •
S:83 a S:86 Estado Canal 1 de nodos activos DH+ •
-.- 4 palabras son mapeadas con bits para
representar los 4 ())- *osibles en una red
DH+. S:83 a S:86/15 representan direcciones de
nodo 0-63 (0-77 octal). Estos bits son
establecidos por el procesador cuando existe un
nodo en la red DH+ a la cual está conectado el
procesador. Estos bits se ponen a cero cuando
un nodo no está presente en la red.
Note que S:34/1 se debe establecer a fin que
las palabras anteriores funcionen.
S:87 a S:96 NA Reservado •
S:97 a S: 98 NA Reservado (se aplica los procesadores SLC
5/04 OS401)
S:99 Configuración Palabra de estado global (SLC 5/04 OS401 •
dinámica solamente)
Los datos colocados en esta ubicación de
memoria se transmiten como la palabra de
estado global del procesador y se envían a
todos los otros dispositivos en la red DH+
cada vez que el procesador pasa el testigo
DH+.
S:100 a Configuración Archivo de estado global (SLC 5/04 OS401 •
S:163 estática solamente)
Cuando un procesador pasa el testigo DH+ al
próximo nodo, también envía una palabra de 16
bits llamada la palabra de estado global (S:99 y
posteriores). Todos los nodos en la red leen la
palabra de estado global transmitida por cada
procesador y guardan la palabra en memoria.
Cada procesador tiene una tabla (archivo de
estado global) en memoria donde se
almacenan las palabras de estado global de los
otros procesadores. Esta tabla se actualiza
completamente durante cada rotación de
testigo. (Ejemplo: La palabra desde el nodo x"
se coloca en S:100 + x.)
Usted puede usar el archivo de estado global
como mensaje de difusión de alta velocidad
para el paso de estado y sincronización de los
procesadores.
B–74
Uso de memoria y tiempos de ejecucion de instruccion
C–1
Manual de referencia del juego de instrucciones
La tabla siguiente lista los tiempos de ejecución y uso de memoria para las
instrucciones del controlador MicroLogix 1000. Toda instrucción que tome más de
15 µs (tiempo de ejecución verdadero o falso) para ejecutarse, crea una encuesta
para las interrupciones de usuario.
µ
µ
C–2
Uso de memoria y tiempos de ejecucion de instruccion
C–3
Manual de referencia del juego de instrucciones
+1#- !+*
*#'+ "# "/+.
)3.!-
) &+ "# .&%*+ *#'+ "# "/+.
&$#-#*/# +),-/&1
+ *#'+ "# "/+.
*#'+ "# "/+.
* $-#*/#
3.&!
.!#*"#*/#
!/&1!&5* "# .(&" 3.&!
!/0( "# !0) +*/"+- "# (/
!+*/"+- "# (/
"# &)%#* "#
1#(+!&"" !+*/"+- (/ 1#( 1#(+!&""
*!(1 "# .(&" 3.&!
#.#*!(1 .(&" 3.&!
!0)0("+- "# +*/"+- "# (/
-#./ "# !+*/"+-
"# (/ 1#( 1#(+!&""
/#),+6
#./ (#!&)&#*/+ 3.&!
-&2"+- !+*/"+-
!+*/"+- "#
#./ ( "#( !+*/6 +*/"+- "# (/
(/ 1#(+!&"" "+- "# (/ 1#( 1#(+!&""
0 -0/&* +*/-+( "# $(0'+ "#
,-+%-)
.!(- "/+. /#)3/&!
#!0#*!&"+- "# .,#!4$&! (
!+),-!&5* ,(&!!&5*
-% .#! .,#!4$&! (
,(&!!&5*
#!0#*!&"+- "# .,#!4$&! (
.(&" ,(&!!&5*
42 !0"-" /#)3/&!
C–4
Uso de memoria y tiempos de ejecucion de instruccion
Específica a la
STD 3.16 6.69 0.50 Desactivar STI
aplicación
Específica a la
STE 3.16 10.13 0.50 Activar STI
aplicación
Específica a la
STS 6.78 24.59 1.25 Comenzar STI
aplicación
SUB 6.78 33.52 1.50 Resta Matemática
Control de flujo de
SUS 7.87 10.85 1.50 Suspend
programa
Control de flujo de
TND 3.16 7.78 0.50 Fin temporal
programa
TOD 6.78 49.64 1.00 Convertir a BCD Manejo de datos
Temporizador a la
TOF 31.65 39.42 1.00 Básica
desconexión
Temporizador a la
TON 30.38 38.34 1.00 Básica
conexión
Examina si
XIC 1.72 1.54 0.75 Básica
cerrado
XIO 1.72 1.54 0.75 Examina si abierto Básica
Operación O
XOR 6.92 33.64 1.50 Manejo de datos
esclusiva
C–5
Manual de referencia del juego de instrucciones
C–6
Uso de memoria y tiempos de ejecucion de instruccion
Use esta hoja de trabajo para calcular el tiempo de ejecución del programa de
escalera.
! ! ! ms
À Si una rubrutina se ejecuta más de una vez por escán, incluya el tiempo de escán de cada ejecución de subrutina.
C–7
Preface
Manual de referencia del juego de instrucciones
Capacidad de memoria de
Tipo de procesador Tipo de controlador
usuario
Controladores de E/S fijos
Compacto y SLC 5/01 Controladores modulares 1024 palabras de instrucción
1747ĆL511
Controladores modulares
SLC 5/02 4096 palabras de instrucción
1747ĆL524
Controladores modulares
SLC 5/03 12,288 palabras
1747ĆL532
Controladores modulares
1747ĆL541 20,480 palabrasÀ
SLC 5/04
1747ĆL542
1747ĆL543
À Cuando el programa de escalera es mayor que 12 K palabras, usted debe separar el programa en
dos archivos. Se requieren un archivo principal (archivo 2) y por lo menos un archivo de subrutina
(3-2155).
C–8
Uso de memoria y tiempos de ejecucion de instruccion
C–9
Manual de referencia del juego de instrucciones
C–10
Uso de memoria y tiempos de ejecucion de instruccion
12
1.00 &-0/2*9"%/2 Básica
2&4&.4*6/
Ejemplo
Para el ejemplo de renglón siguiente:
1 2 6 8
1) Si la instrucción 1 es falsa, las instrucciones 2, 3, 4, ][ ][ ][ ()
5, 6, 7 toman tiempo de ejecución cero.
Tiempo de ejecución = 3 7
4 + 18 = 22 microsegundos. ][ ][
2) Si la instrucción 1 es verdadera, 2 es verdadera y 5 4
es verdadera, entonces las instrucciones 3, 4, 5, 7 ][
toman tiempo de ejecución cero. Tiempo de
ejecución = 4 = 4 = 4 = 18 = 30 microsegundos. 5
][
C–11
Manual de referencia del juego de instrucciones
3. Multiplique el no. total de palabras de datos (excluyendo las palabras del archivo
de estado y datos de E/S) por .25 e introduzca el resultado.
5. Multiplique por 2 el archivo de programa con el no. más alto usado e introduzca
el resultado.
Total: 9. Sume los pasos 1 a 8. Este es el uso de memoria total aproximado del sistema de
aplicación. Recuerde que se trata de un cálculo aproximado. Los programas
reales compilados podrían diferir ±12%.
10. Si usted desea determinar la cantidad de memoria aproximada remanente en el
procesador que ha seleccionado, haga lo siguiente:
Si usa un controlador compacto ó 1747-L511, reste el total de 1024. Si usa un
1747-L514, reste el total de 4096.
Nota El uso de memoria calculado puede diferir del programa compilado real en ±12%.
C–12
Uso de memoria y tiempos de ejecucion de instruccion
Ejemplo
C–13
!
Manual de referencia del juego de instrucciones
Ejemplo
!"!
& $!% !$!"
&
&
$!% #
&
&
&
50 XIC y XIO 50 x 1.00 = 50.00
15 instrucciones OTE 15 x 0.75 = 11.25
5 instrucciones TON 5 x 1.00 = 5.00
3 instrucciones GRT 3 x 1.50 = 4.50
1 instrucción SCL 1 x 1.75 = 1.75
1 instrucción TOD 1 x 1.00 = 1.00
3 instrucciones MOV 3 x 1.50 = 4.50
10 instrucciones CTU 10 x 1.00 = 10.00
10 instrucciones RES 10 x 1.00 = 10.00
Uso de instrucciones 98.00
30 renglones 30 x 0.375 = 11.25
100 palabras de datos 100 x 0.25 = 25.00
10 es el no. de archivo de tabla
de datos más alto 10 x 1 = 10.00
4 es el no. de archivo de programa
más alto 4 x 2 = 8.00
Total del programa de usuario 163.50
49 palabras de datos de E/S 49 x 0.75 = 36.75
30 ranuras 30 x 0.75 = 22.50
Overhead 67.00
Total de configuración de E/S 126.25
Uso de memoria total estimado: 289.75
(redondee a 290)
C–14
Uso de memoria y tiempos de ejecucion de instruccion
6.# Matemática
AND 7 55 1.5 Operdor Y lógico Manejo de datos
Desplazamiento a Específica a la
BSL 36 89 +14 por pal. 2.00
la izquierda aplicación
Desplazamiento a Específica a la
BSR 36 83 +14 por pal. 2.00
la derecha aplicación
CLR 7 26 1.00 Borrar Matemática
COP 7 29 + 13 por pal. 1.50 Copiar archivo Manejo de datos
CTD 7 69 1.00 Conteo - Básica
CTU 7 69 1.00 Conteo + Básica
Descodificar 4 a 1
DCD 7 50 1.50 Manejo de datos
de 16
DDV 7 392 1.00 Doble división Matemática
DIV 7 242 1.50 División Matemática
EQUÀ 38 38 1.50 Igual Comparativa
FFL 51 150 1.50 Carga FIFO Manejo de datos
150 +11 x valor de
FFU 51 1.50 Descarga FIFO Manejo de datos
posición
FLL 7 25 + 8 por pal. 1.50 Llenar archivo Manejo de datos
FRD 7 136 1.00 Convertir de BCD Manejo de datos
GEQÀ 38 38 1.50 Mayor o igual que Comparativa
GRTÀ 38 38 1.50 Mayor que Comparativa
Comprensión de
Interrupción de
IID 7 39 1.25 las rutinas de
E/S inhabilitar
interrupción
C–15
Manual de referencia del juego de instrucciones
Comprensión de
Interrupción de
1.25 las rutinas de
E/S habilitar
interrupción
Entrada inmediata Control de flujo de
IIM 1 340 1.50
con máscara programa
Subrutina de Específico a la
INT 0 0 0.50
interrupción aplicación
Salida inmediata Control de flujo de
IOM 7 465 1.50
con máscara programa
Control de flujo de
JMP 7 23 1.00 Saltar a etiqueta
programa
Control de flujo de
JSR 7 28 1.00 Saltar a subrutina
programa
Control de flujo de
LBL 1 4 0.50 Etiqueta
programa
LEQÀ 38 38 1.50 Menor o igual que Comparativa
LESÀ 38 38 1.50 Menor que Comparativa
LIM 7 150 1.50 Prueba lím Comparativa
LFL 51 180 1.50 Carga LIFO Manejo de datos
LFU 51 45 1.50 Descarga LIFO Manejo de datos
Restablecimiento Control de flujo de
MCR 6 6 0.50
control maestro programa
Comparación con
MEQÀ 7 47 1.50 máscara para Comparativa
igual
MOV 7 14 1.50 Mover Manejo de datos
MSG 48 180Á 34.75 Mensaje Comunicación
MUL 7 140 1.50 Multiplicación Matemática
Mover con
MVM 7 71 1.50 Manejo de datos
máscara
NEG 7 68 1.50 Cambio de signo Manejo de datos
NEQÀ 38 38 1.50 Diferente Comparativa
C–16
Uso de memoria y tiempos de ejecucion de instruccion
Operador Not
NOT
Manejo de datos
lógico
Operador O
OR 7 55 1.50 Manejo de datos
inclusivo
Un frente
OSR 11 20 1.00 Básica
ascendente
Activación de
OTE 11 11 0.75 Básica
salida
Enclavamiento de
OTL 11 11 0.75 Básica
salida
Desenclavamiento
OTU 11 11 0.75 Básica
de salida
Derivada
PID 90 3600 23.25 PID
proporcional
Comprensión de
REF 4 240 + 180 por pal. 0.50 Regenerar las rutinas de
interrupción
RES 7 26 1.00 Restablecimiento Básica
Retorno de Control de flujo de
RET 7 20 0.50
subrutina programa
Restablecer Comprensión de
RPI 7 240 1.25 interrupción las rutinas de
pendiente interrupción
Temporizador
RTO 30 30 1.00 Básica
retentivo
Control de flujo de
SBR 1 4 0.50 Subrutina
programa
SCL 7 480 1.75 Escalar datos Matemática
Secuenciador de Específico a la
SQC 36 137 2.00
comparación aplicación
Carga de Específico a la
SQL 36 135 2.00
secuenciador aplicación
C–17
Preface
Manual de referencia del juego de instrucciones
C–18
Uso de memoria y tiempos de ejecucion de instruccion
Total: 10. Sume los pasos 1 a 9. Este es el uso de memoria total estimado del sistema
de aplicación. Recuerde que se trata de un cálculo aproximado. Los
programas compilados reales pueden diferir en ±12%.
Nota El uso de memoria calculado puede diferir del programa compilado real en ±12%.
C–19
Preface
Manual de referencia del juego de instrucciones
Ejemplo
C–20
Uso de memoria y tiempos de ejecucion de instruccion
Por cada operando que tienen una dirección indexada, añada 30 microsegundos al
tiempo de ejecución de una instrucción verdadera. Por ejemplo, si una instrucción
MOV tiene una dirección indexada para la fuente y el destino, el tiempo de
ejecución cuando la instrucción es verdadera es 14 + 30 + 30 = 74 microsegundos.
Dest N7:10
Ejemplo
COP
COPY FILE
Source #B3:0
Dest #M0:1.0
Length 34
Por la instrucción de palabras múltiples anterior, añada 950 microsegundos más 400
microsegundos por palabra. En este ejemplo, 34 palabras son copiadas desde #B:3.0
hacia M0:1.0. Añada 950 + (400 x 34) = 14550 microsegundos al tiempo de
ejecución listado en la página C–15. Esto resulta en una suma de 471 más 14550 =
15021 microsegundos totales, o bien 15.0 milisegundos.
C–21
Manual de referencia del juego de instrucciones
Búfer de prueba ASCII
para línea
ABS 0.75 9.95 2.00 Absoluto Matemática
C–22
Uso de memoria y tiempos de ejecucion de instruccion
6'5-785% ASCII
$ 39.7 365.50 3.00 ASCII
'21 %1):2
$! 39.7 263.80 3.00 6'5-785% ASCII ASCII
)63/%<%0-)172 % 63)'>*-'% % /%
BSL 15.00 50 +
3%/%&5%
/% -<48-)5(% %3/-'%'-?1
)63/%<%0-)172 % 63)'>*-'% % /%
3%/%&5%
/% ()5)',% %3/-'%'-?1
255%5 %7)0=7-'%
3%/%&5% 23-%5 %5',-92 %1).2 () (%726
26)12 %7)0=7-'%
!
À Á %/'8/%5 %7)0=7-'%
! 217)2 =6-'%
!" 217)2 =6-'%
)6'2(-*-'%5 %
%1).2 () (%726
()
#
2&/) (-9-6-?1 %7)0=7-'%
5%(26 %1).2 () (%726
#
-9-6-?1 %7)0=7-'%
"Â
+8%/ 203%5%7-9%
%5+% %1).2 () (%726
"
3%/%&5% )6'%5+% %1).2 () (%726
3%/%&5% /)1%5 %5',-92 %1).2 () (%726
219)57-5 () %1).2 () (%726
Â
%;25 2 -+8%/ 48) 203%5%7-9%
!Â
%;25 48) 203%5%7-9%
2035)16-?1 ()
17)5583'-?1 ()
/%6 587-1%6 ()
()6%'7-9%
-17)5583'-?1
C–23
Manual de referencia del juego de instrucciones
Comprensión de
Interrupción de
IIE 16.00 2.00 las rutinas de
E/S activa
interrupción
Entrada inmediata Control de flujo de
IIMÆÇ 0.50 51.85 6.00
con máscara programa
Subrutina de Específico a la
INT 0.25 0.25 1.00
interrupción aplicación
Salida inmediata Control de flujo de
IOMÆÈ 0.50 70.90 6.00
con máscara programa
Control de flujo de
JMP 0.25 44.45 1.00 Saltar a etiqueta
programa
Control de flujo de
JSR 0.25 131.00 1.00 Saltar a subrutina
programa
Control de flujo de
LBL 0.25 0.25 2.00 Etiqueta
programa
LEQÂ 1.25 1.25 3.00 Menor o igual que Comparativa
LESÂ 1.25 1.25 3.00 Menor que Comparativa
LFL 27.00 66.00 3.00 Carga LIFO Manejo de datos
LFU 27.00 1.95 3.00 Descarga LIFO Manejo de datos
LIMÁ 1.95 58.00 1.00 Prueba lím Comparativa
LN 0.75 392.00 2.00 Logaritmo natural Matemática
Logaritmo en
LOG 0.75 390.80 2.00 Matemática
base 10
Restablecimiento Control de flujo de
MCR 8.00 4.00 1.00
control maestro programa
Comparación con
MEQÂ 38.00 38.00 4.00 máscara para Comparativa
igual
MOV 0.50 1.25 2.00 Mover Manejo de datos
MSGÃ 60.00 203.00 20.00 Mensaje Comunicación
MUL 0.75 20.00 3.00 Multiplicación Matemática
Mover con
MVM 0.75 19.00 3.00, 4.00 Manejo de datos
máscara
C–24
Uso de memoria y tiempos de ejecucion de instruccion
&,/.0)5"%.0 61)$"
0&2&-2)4.
C–25
Manual de referencia del juego de instrucciones
!,*;,4*0(+58 +, Específico a la
! 15.00 70.00 5.00
9(20+( aplicación
SQR 0.50 32.00 2.00, 3.00 Raíz cuadrada Matemática
Específica a la
STD 0.25 4.00 1.00 Desactivar STI
aplicación
Específica a la
STE 0.25 5.00 1.00 Activar STI
aplicación
Específica a la
STS 0.75 58.00 3.00 Comenzar STI
aplicación
SUB 0.75 1.70 3.00 Resta Matemática
Control de flujo de
SUS 0.50 12.00 2.00 Suspender
programa
Servicio de
SVC 0.25 Å 1.00 Comunicación
comunicaciones
SWP 0.75 24 + 13.09/palabra 2.00 Intercambiar Matemática
TAN 0.75 406.35 2.00 Tangente Matemática
Control de flujo de
TND 0.25 12.00 1.00 Fin temporal
programa
TOD 0.50 38.00 2.00 Convertir a BCD Manejo de datos
Temporizador a la
TOF 1.40 1.40 1.00 Básica
desconexión
Temporizador a la
TON 1.40 1.40 1.00 Básica
conexión
XICÂ 0.44 0.44 1.00 Examina si cerrado Básica
XIOÂ 0.44 0.44 1.00 Examina si abierto Básica
XOR 0.75 1.70 3.00 Oper. O exclusivo Manejo de datos
XPY 0.75 699.30 3.00 X a la pot. de Y Matemática
À Para obtener el tiempo de ejecución total para una instrucción CPT, tome el tiempo de ejecución CPT más cada
tiempo de ejecución de instrucción matemática adicional, más el número de instrucciones matemáticas multiplicados
por 3.01. Por ejemplo, si una instrucción CPT llama una instrucción ADD y una instrucción SUB, el cálculo es: 8.8 +
1.70 + 1.70 + 2(3.01) = 18.22
Á Para calcular el uso de memoria, haga los siguiente: Tome 2 más el no. de palabras de instrucción para cada
operación realizada más el no. de operaciones realizadas en el cálculo. Por ejemplo, 2 + ADD + SUB + 2 = 10.
 Estas instrucciones toman un tiempo de ejecución cero si hay condiciones que las preceden garantizando el estado
del renglón. La lógica de renglón se resuelve de la izquierda a la derecha. Las bifurcaciones se resuelven de arriba
hacia abajo.
C–26
Uso de memoria y tiempos de ejecucion de instruccion
à Esto sólo incluye la cantidad de tiempo necesaria para configurar" la operación solicitada. No incluye el tiempo
necesario para dar servicio a las comunicaciones mismas.
Ä Esta instrucción efectúa un final de escán completo. Esto incluye un escán de entrada/salida, servicio de
comunicación y limpieza. Vea la hoja de trabajo D en el apéndice ** para calcular el tiempo de ejecución real.
Å canal 1 = 150 µs sin comandos pendientes
canal 2 = 170 µs sin comandos pendientes
Añada 1 ms por cada comando que ha recibido servicio.
Æ Los tiempos listados se aplican a los módulos de E/S discretas. Cuando usted use los módulos de E/S de 32
puntos, añada los microsegundos siguientes a todas las operaciones IIM e IOM:
• 15 µs IIM cuando es verdadera
• 30 µs IOM cuando es verdadera
Ç Cuando usted use los módulos siguientes y la instrucción IIM en el programa, añada los
microsegundos siguientes
• Entradas del módulo analógico o termopar, añada 450 a 550 µs
• Entradas del módulo BASIC, añada 500 a 550 µs
• Otras entradas especiales, añada 425 a 957 µs
È Cuando usted use los módulos siguientes y la instrucción IOM en el programa, añada los
microsegundos siguientes
• Entradas del módulo analógico o termopar, añada 390 a 416 µs
• Entradas del módulo BASIC, añada 440 a 466 µs
• Otras entradas especiales, añada 590 a 989 µs
Ejemplo
Para el ejemplo de renglón siguiente:
1) Si la instrucción 1 es falsa, las instrucciones 2, 3, 4, 5, 6, 7 toman un tiempo de ejecución cero.
Tiempo de ejecución = .44 + .63 = 1.07 microsegundos.
2) Si la instrucción 1 es verdadera, 2 es verdadera y 6 es verdadera, entonces las instrucciones 3,
4, 5, 7 toman un tiempo de ejecución de cero.
Tiempo de ejecución = .44 + .44 + .44 + .63 = 1.95 microsegundos.
1 2 6 8
] [ ] [ ] [ ( )
3 7
] [ ] [
4
] [
5
] [
C–27
Manual de referencia del juego de instrucciones
Los tiempos de punto (coma) flotante se aplican a los procesadores SLC 5/03
OS301 y OS302.
C–28
Uso de memoria y tiempos de ejecucion de instruccion
Si usted necesita realizar operaciones con punto (coma) flotante usando una
combinación de parámetros de punto (coma) flotante y enteros (valores y
direcciones de fuente/destino), calcule la cantidad de palabras de instrucción según
las pautas siguientes:
Estas palabras adicionales son necesarias para las conversiones de entero a punto
(coma) flotante.
ADD
ADD
Source A F8:8
Source B N7:7
Dest N7:10
C–29
Manual de referencia del juego de instrucciones
15. Introduzca el resultado del paso 13. Este es el número total de palabras
usadas.
Total: 16. Reste el paso 15 del paso 14.
Esta es la cantidad de memoria disponible en el sistema.
C–30
Uso de memoria y tiempos de ejecucion de instruccion
Ejemplo
C–31
Preface
Manual de referencia del juego de instrucciones
El procesador SLC 5/03 ó SLC 5/04 y el procesador SLC 5/02 acumulan palabras de
usuario de modo diferente durantel a creación de un programa de usuario. El
procesador SLC 5/02 generalmente es más eficiente con respeto al uso de palabra
que los procesadores SLC 5/03 y SLC 5/04. Sin embargo, es difícil calcular el uso
de palabras del procesador SLC 5/02 ya que se encuentra ligado a la arquitectura del
microprocesador.
Los procesadores SLC 5/03 y SLC 5/04 acumulan palabras, de modo que resulta ser
más fácil de comprender y calcular que el procesador SLC 5/02. Los procesadores
SLC 5/03 y SLC 5/04 acumulan palabras de igual manera que un PLC-5. El
procesador SLC 5/03 ofrece 12,288 palabras. El procesador SCL 5/04 ofrece
20,480 palabras.
Palabras de instrucción
Algunas instrucciones usan la misma cantidad de memoria en tanto que otras
instrucciones no usan la misma cantidad de memoria. Por ejemplo, una instrucción
CTU siempre usa 1 palabra. Sin embargo, una instrucción ADD en un procesador
SLC 5/02 usa 1.5 palabra; en un procesador SLC 5/03 ó SLC 5/04 una instrucción
ADD usa 3 palabras. También note las diferencias adicionales que siguen:
Palabras
Condición
SLC 5/02
5/03
5/04
renglón 0.375 1 1
Cada archivo de programa
1 5 5
adicional
Cada archivo de datos
1 5 5
adicional
Cada ranura de E/S 0.75 3 3
Overhead 216 236 250
C–32
Uso de memoria y tiempos de ejecucion de instruccion
En el procesador SLC 5/02, cada palabra de datos de E/S consume 0.75 palabras de
memoria. En el procesador SLC 5/03, cada palabra de datos de E/S consume 3
palabras de datos.
El uso de palabra del archivo de estado está contenido en los valores de overhead
para los procesadores SLC 5/02 y SLC 5/03.
C–33
Preface
Manual de referencia del juego de instrucciones
Por cada operando con una dirección indexada, añada 25 microsegundos al tiempo
de ejecución para una instrucción verdadera. Por ejemplo, si una instrucción MOV
tiene una dirección indexada para la fuente y el destino, el tiempo de ejecución
cuando la instrucción es verdadera es 19 + 25 + 25 = 69 microsegundos.
Ejemplo
COP
COPY FILE
Source #B3:0
Dest #M0:1.0
Length 34
C–34
Uso de memoria y tiempos de ejecucion de instruccion
C–35
Manual de referencia del juego de instrucciones
$!
6'5-785%
3%/ )63/%;%0-)172 % 63)'=*-'% % /%
/% -;48-)5(% %3/-'%'->1
3%/ )63/%;%0-)172 % 63)'=*-'% % /%
/% ()5)',% %3/-'%'->1
255%5 %7)0<7-'%
3%/ 23-%5 %5',-92 %1).2 () (%726
26)12 %7)0<7-'%
!
À Á %/'8/%5 %7)0<7-'%
!
217)2 <6-'2
!"
217)2 <6-'2
)6'2(-*-'%5 % %1).2 () (%726
()
#
2&/) (-9-6->1 %7)0<7-'%
5%(26 %1).2 () (%726
#
-9-6->1 %7)0<7-'%
"Â
+8%/ 203%5%7-9%
%5+% %1).2 () (%726
"
3%/ )6'%5+% %1).2 () (%726
3%/ /)1%5 %5',-92 %1).2 () (%726
219)57-5 () %1).2 () (%726
Â
%:25 2 -+8%/ 48) 203%5%7-9%
!Â
%:25 48) 203%5%7-9%
2035)16->1 ()
17)5583'->1 () /%6 587-1%6 ()
()6%'7-9% -17)5583'->1
2035)16->1 ()
17)5583'->1 () /%6 587-1%6 ()
%'7-9% -17)5583'->1
C–36
Uso de memoria y tiempos de ejecucion de instruccion
C–37
Manual de referencia del juego de instrucciones
C–38
Uso de memoria y tiempos de ejecucion de instruccion
!#!
!;96,4+,8 54:852 +, -2;15 +,
685.8(3(
C–39
Manual de referencia del juego de instrucciones
Ç Cuando use los módulos siguientes y las instrucciones IIM en el programa, añada los microsegundos
siguientes
• Entradas de módulo analógico o termopar, añada 450 a 550 µs
• Entradas de módulo BASIC, añada 500 a 550 µs
• Otras entradas especiales, añada 425 a 957 µs
È Cuando use los módulos siguientes y la instrucción IOM en el programa, añada los microsegundos
siguientes
• Entradas de módulo analógico o termopar, añada 390 a 416 µs
• Entradas de módulo BASIC, añada 440 a 466 µs
• Otras entradas especiales, añada 590 a 989 µs
Ejemplo
Para el ejemplo de renglón siguiente:
1) Si la instrucción es falsa, las instrucciones 2, 3, 4, 5, 6 ,7 toman un tiempo de ejecución cero.
Tiempo de ejecución = .375 + .562 = .937 microsegundos.
2) Si las instrucciones 1, 2, 6 son verdaderas, entonces las instrucciones 3, 4, 5, 7 toman un
tiempo de ejecución cero. Tiempo de ejecución = 0.375 + .375 + .374 + .562 = 1.687
microsegundos.
1 2 6 8
] [ ] [ ] [ ( )
3 7
] [ ] [
4
] [
5
] [
C–40
Uso de memoria y tiempos de ejecucion de instruccion
Los tiempos de punto (coma) flotante se aplican a los procesadores SLC 5/04
OS400 y OS401.
C–41
Manual de referencia del juego de instrucciones
Estas palabras adicionales son necesarias para las conversiones de entero a punto
(coma) flotante.
ADD
ADD
Source A F8:8
Source B N7:7
Dest N7:10
C–42
Uso de memoria y tiempos de ejecucion de instruccion
9. Calcule el no. total de palabras usadas por las instrucciones del programa e
introduzca el resultado. Refiérase a la tabla en la página C–41.
10. Añada el no. total de renglones (1 palabra por renglón) e introduzca el resultado.
11. Añada 1 palabra por cada referencia de dirección indexada e introduzca el resultado.
12. Añada 2 palabras por renglón por cada renglón que contiene una referencia de
dirección indexada e introduzca el resultado.
15. Introduzca el resultado del paso 13. Esta es la cantidad total de palabras usadas.
Total: 16. Reste el paso 15 del paso 14.
Este número es la cantidad de memoria disponible en el sistema.
C–43
Preface
Manual de referencia del juego de instrucciones
Por cada operando con una dirección indexada, añada 25 µs al tiempo de ejecución
para una instrucción verdadera. Por ejemplo, si una instrucción MOV tiene una
dirección indexada para la fuente y el destino, el tiempo de ejecución cuando la
instrucción es verdadera es 19 + 25 + 25 = 69 microsegundos.
Tiempo de ejecución
Tipo de instrucción
(µs)
XIC o XIO 743
OTU, OTE o OTL 879
COP a archivo M 735 + 23 por palabra
COP de archivo M 722 + 22 por palabra
FLL 716 + 30 por palabra
MVM a archivo M 850
cualquier dirección de archivo M de fuente o
694
destino
Ejemplo
COP
COPY FILE
Source #B3:0
Dest #M0:1.0
Length 34
Añada 735 microsegundos más 23 segundos por apalbra para la instrucción anterior
de palabras múltiples. En este ejemplo, 34 palabras se copian de #B3:0 a M0:10.
Añada 735 + (23 x 34) = 1517 microsegundos al tiempo de ejecución listado en la
página ??. Este total es 88.54 + 1517 = 1605.5 microsegundos o bien 1.6
milisegundos.
C–44
Uso de memoria y tiempos de ejecucion de instruccion
Si se usa en una
Operando de Operando de
Forma de instrucción de tipo de
fuente (µs) destino (µs)
direcciónÀ archivo
SLC 5/03 SLC 5/04 SLC 5/03 SLC 5/04 SLC 5/03 SLC 5/04
C–45
Manual de referencia del juego de instrucciones
Ejemplos
ADD
ADD
ADD 1.70
Source A N7:[*]
!
Source B T4:[*].ACC
!
C–46
Uso de memoria y tiempos de ejecucion de instruccion
C–47
Preface
Manual de referencia del juego de instrucciones
Ejemplo
C–48
Tiempo de escán estimado
D–1
Manual de referencia del juego de instrucciones
Input Scan
Program Scan
Output Scan
Communications
Processor Overhead
D–2
Tiempo de escán estimado
D–3
Manual de referencia del juego de instrucciones
Latencia de interrupción
La latencia de interrupción es el intervalo entre la detección de interrupción y el
comienzo de la subrutina de interrupción. Durante este plazo de tiempo, el
procesador SLC 500 realiza operaciones que no se pueden interrumpir.
Nota Si usted usa un procesador SLC 5/03 y S:33/8 es restablecido (0), las interrupciones
no pueden recibir servicio dentro del período de latencia de interrupción calculado.
(Vea la página siguiente.) Esto se aplica a las instrucciones siguientes:
• Interrupción de entrada discreta (DII)
• Interrupción temporizada seleccionable (STI)
• Interrupción de E/S
D–4
Tiempo de escán estimado
D–5
Preface
Manual de referencia del juego de instrucciones
D–6
Tiempo de escán estimado
D–7
Preface
Manual de referencia del juego de instrucciones
Cuando usted trabaje con las hojas de trabajo, encontrará los términos siguientes:
Término: Definición:
Ocurre cuando el procesador está conectado a una red activa.
Comunicación de fondo Durante este evento, el procesador acepta caracteres de la
red y los coloca en un búfer de paquete.
Ocurre solamente cuando hay otro nodo conectado, o cuando
otro procesador envía una instrucción MSG al procesador.
Comunicación de primer plano Durante este evento, el procesador realiza los comandos de
comunicación contenidos en los paquetes finalizados
construidos durante las comunicaciones de fondo.
Overhead de forzado de Este valor se incluye en el tiempo de escán cuando los
entrada forzados se habilitan en el programa.
Este valor se incluye en el tiempo de escán cuando los
Overhead de forzado de salida
forzados se habilitan en el programa.
El mantenimiento interno del procesador se efectúa. Las
Tiempos de overhead del acciones incluyen la realización del escán previo de programa
procesador y la actualización de la base de tiempo interna y el archivo de
estado.
D–8
Tiempo de escán estimado
Término: Definición:
1 :8'7 +89' ,:3)/B3 )43 :3 574)+8'*47 #
#
B
#
5:+*+ +0+):9'7 +1 574-7'2' :3 7+3-1B3 4 :3'
Un solo paso
8+))/B3 individualmente. Esta función se usa para propósitos
de depuración.
Un ejemplo de módulos de palabras múltiples es DCM,
Módulo de palabras múltiples
analógico y DSN.
1.6 Calcule el overhead de entrada forzado: Overhead de entrada forzado = (N) N)________ N)________
(No. de módulos de entrada x 180) + 140 por palabra adicional para
módulos de palabras múltiples (por ej., DMC, analógico, DNS)
Cuando los forzados se inhabilitan, este valor es 0.
D–9
&
Manual de referencia del juego de instrucciones
2.6 Calcule el overhead de salida forzado: Overhead de salida forzado = (L)
(No. de módulos de salida x 172) + 140 por palabra adicional
para módulos de palabras múltiples (por ej., DCM, analógico, DSN)
Cuando los forzados se inhabilitan, este valor es 0.
'( " ! ( "%$ '.# programa '( .!)!$ %&$+ "$ ')%$# ! $%& 1#
($' !' #'(&) $#' )# *- %$& '# $%& 1#
3.1 Cuente el no. de renglones en el programa APS. Coloque el valor en la línea (A).
3.2 Calcule el tiempo de ejecución de programa máximo (B) cuando todas las instrucciones
son verdaderas.
3.3 Calcule el tiempo de ejecución de programa mínimo (C) usando los tiempos asociados
con una instrucción cuando ésta es falsa. (Vea el apéndice A para hacer esto.)
)" !$' *!$&' # !' $!)"#' ( "%$ '.# "/# "$ , ".+ "$ subtotal subtotal
0 ! ( "%$ $*& ! procesador
%& ( "%$ '.# "/#
%& + 178 + 278
( "%$ '.# ".+ !$' ')($(!' !)!$' # ! %'$
Use estos subtotales nuevos para calcular el overhead de comunicación en el paso 6. subtotal subtotal
!)! ! $*& comunicación:
6.1 Calcule el overhead de comunicación de fondo cuando no haya comunicación:
multiplique el subtotal para el tiempo de escán mín. (A) (estimado en el paso 5) entre 1;
x 1.000 x 1.140
multiplique el subtotal para el tiempo de escán máx. (B) entre 1.140
µs µs
(el valor máx. toma en cuenta la red activa DHĆ485) cuando haya comunicación.
D–10
Tiempo de escán estimado
Tiempos de escán mín. y máx. calculados para la aplicación del controlador fijo:
D–11
Preface
Manual de referencia del juego de instrucciones
1.5 Calcule el overhead de entrada forzado: Overhead de entrada forzado = (M) M)_________
(No. de módulos de entrada x 180) + 140 por palabra adicional para
módulos de palabras múltiples (por ej., DMC, analógico, DSN)
2. Estime el tiempo de escán de salida (µs).
2.1 Calcule el escán de salida de procesador de los módulos de salida discreta.
No. de módulos de 8 puntos ________ x 173 = A.)________
No. de módulos de 16 puntos ________ x 272 = B.)________
No. de módulos de 32 puntos ________ x 470 = C.)________
D–12
Tiempo de escán estimado
D–13
Preface
Manual de referencia del juego de instrucciones
1.6 Calcule el overhead de entrada forzado ()) = (No. de módulos de entrada x 108) + O)_________
140 por palabra adicional para los módulos de palabras múltiples
D–14
Tiempo de escán estimado
2.6 Calcule el overhead de salida forzado (M)= (No. de módulos de salida x 104) +
140 por palabra adicional para los módulos de palabras múltiples
' & #" %,! #$"$ %& ,'" #$") " %'#"!
"#$/! &"% % !%&$'"!% '! (+ #"$ %,! "#$/!
3.1 Cuente el no. de renglones en el programa APS. Coloque el valor en la línea (A).
3.2 Multiplique el valor en la línea (A) entre 6. (Si usted guardó el programa con un
solo paso habilitado, multiplique el valor en la línea (A) entre 66.)
A.)________ x 6 = subtotal
subtotal
3.3 Calcule el tiempo de ejecución de programa cuando todas las instrucciones
sean verdaderas. (Vea el apéndice A para hacer esto.)
' "% ("$% ! % "' !% & #" %,! -! " * ,) "
. & #" "($ procesador
#$ & #" %,! -!
#$ + 180 + 280
& #" %,! ,) "% %'&"&% '"% ! #%" subtotal
Use estos subtotales nuevos para calcular el overhead de comunicación en el paso 6. subtotal
Continúa en la página siguiente
D–15
Preface
Manual de referencia del juego de instrucciones
D–16
Tiempo de escán estimado
1.7 Calcule el tiempo de escán máximo de entrada de E/S para la sección 1.3:
Tiempo de escán de entrada (R2) = No. de módulos de E/S especiales en sec. 1.3 x 200 R2)______
1.9.0 Sume los valores en las columnas de tiempo de escán mínimo; subtotal_______
coloque los valores en el subtotal del tiempo de escán mínimo.
1.9.1 Sume los valores en las columnas de tiempo de escán máximo; subtotal_______
coloque los valores en el subtotal del tiempo de escán máximo.
D–17
Preface
Manual de referencia del juego de instrucciones
2.7 Calcule el tiempo de escán de salida máximo para la sección 2.3: R2)______
Escán de salida (R2) = No. de módulos de E/S especiales x 200
Y)_______ Y)_______
2.8 Calcule el overhead de salida forzado:
Overhead de salida forzado = No. de módulos de salida discreta a 3.0 µs por palabra
Sume 20 + 4/por palabra por cada módulo de E/S especial
(por ejemplo, BASIC tiene 8 palabras de entrada = 20 + 4 x 8 = 52) subtotal_______
2.9.0 Sume los valores en las columnas de tiempo de escán mínimo; coloque los valores
en el subtotal de tiempo de escán mínimo
2.9.1 Sume los valores en las columnas de tiempo de escán máximo; coloque los valores subtotal_______
en el subtotal de tiempo de escán máximo
D–18
Tiempo de escán estimado
mseg mseg
Nota El tiempo de escán anterior no toma en cuenta las bifurcaciones. Vea el ejemplo
siguiente acerca de cómo calcular el tiempo de escán adicional cuando se usan
bifurcaciones.
Bifurcaciones anidadas
Bifurcaciones extendidas
Esto toma ≈ .5 µs
D–19
Preface
Manual de referencia del juego de instrucciones
1.5 Sume las líneasA a T. Si hay valores en E a S que son > 0, añada 6.
Coloque este valor en la línea (W).
Sume 15 al valor en la línea (W). Este es el escán de entrada mínimo. X)________ X)________
W.) ______ + 15 = X
1.7 Calcule el tiempo de escán máximo de entrada de E/S para la sección 1.3 x 200
Tiempo de escán de entrada (R2) = No. de módulos de E/S especiales en sec. 1.3 x 200 R2)______
1.9.1 Sume los valores en las columnas de tiempo de escán mínimo; subtotal_______
coloque los valores en el subtotal del tiempo de escán máximo.
D–20
Tiempo de escán estimado
2.5 Sume las líneas A a S. Si hay valores en E a R que son >0, sume 6.
Coloque este valor en la línea (T). Sume 12 al valor en la línea (T).
Este es el escán de salida mínimo de las E/S especiales.
X)_______ X)_______
. T.)________ + 12 =X
2.9.0 Sume los valores en las columnas de tiempo de escán mínimo; coloque los valores
en el subtotal del tiempo de escán mínimo.
subtotal_______
2.9.1 Sume los valores en las columnas de tiempo de escán máximo; coloque los valores
en el subtotal del tiempo de escán máximo. subtotal_______
Continúa en la página siguiente
D–21
Preface
Manual de referencia del juego de instrucciones
3.3 Sume los valores de 3.1 y 3.2; coloque esta suma en la línea de subtotal.
4. Tiempo de overhead de procesador (S:33/8 = 1 añada 665 µs; S:33/8 = 0 añada 742 µs) subtotal subtotal
Tiempos de escán mínimo y máximo calculados para su aplicación mseg mseg
D–22
Tiempo de escán estimado
Use los tiempos de escán máximos siguientes para calcular los tiempos de escán de
entrada y salida. Refiérase a la hoja de trabajo D en este apéndice.
D–23
Preface
Manual de referencia del juego de instrucciones
Entrada discreta de 8 puntos 1746 26 NA
Salida discreta de 8 puntos 1746 NA 31
Entrada discreta de 16 puntos 1746 26 NA
Salida discreta de 16 puntos 1746 NA 31
Entrada discreta de 32 puntos 1746 52 NA
Salida discreta de 32 puntos 1746 NA 62
Combinación de E/S discretas
74 82
IO4, -IO8, -IO12 1746
Módulo de servocontrolador HS IMC 110 1746 312 349
Módulo de comunicación directa DCM 1747 - configuración de 1/4 chasis 297 315
Módulo de comunicación directa DCM 1747 - configuración de 1/2 chasis 332 360
Módulo de comunicación directa DCM 1747 - configuración de 3/4 chasis 366 404
Módulo de comunicación directa DCM 1747 - configuración de chasis completo 400 449
Módulo de entrada analógica NI4 1746 296 NA
Módulos de combinación analógica
252 277
NIO4I, NIO4V 1746s
Módulos de salida analógica
NA 322
NO4I, NO4V 1746
Módulo de escáner de E/S distribuidas 1747 - configuración de 7 bloques 403 449
Módulo de escáner de E/S distribuidas 1747 - configuración de 30 bloques 1031 1204
Módulo BASIC BAS 1746
431 480
Configuración SLC 5/01
Módulo de codificador de contador de alta velocidad HSCE 1746 486 374
Módulo de escáner de E/S remotas SN 1747 1198 1375
Módulo BASIC BAS 1746
585 636
Configuración SLC 5/02 y SLC 5/03
D–24
Tiempo de escán estimado
1747-L514 1 Procesador de 4K
1746-IA8 2 Módulo de entrada de 120 VCA de 8 puntos
1746-IB16 1 Módulo de entrada drenador de 24 VCC de
16 puntos
1746-OA16 3 Módulo de salida de relé de 120 VCA de
16 puntos
1746-OB8 1 Módulo de salida de fuente de 24 VCC de
16 puntos
1746-NIO4V 1 Módulo de combinación analógica de 4
canales
La hoja de trabajo indica que el tiempo de escán total estimado es 3.85 milisegundos
mínimos y 8.9 milisegundos como máximo.
D–25
Preface
Manual de referencia del juego de instrucciones
Tiempos de ejecución:
B3 B3 B3 T4:0 O:1.0
] [ ]/[ ] [ ]/[ ( ) 38 microsegundos
0 1 45 DN 0
B3
] [
9
T4:0 TON
]/[ TIMER ON DELAY (EN) 139 microsegundos
Timer T4:0
DN
Time Base 0.01 (DN)
Preset 6000
Accum
MOV
MOVE
Source S:13
Dest O:1.0
END
D–26
Tiempo de escán estimado
D–27
"
Manual de referencia del juego de instrucciones
% # & "# # %# $! #* + ( *'
subtotal
subtotal
% $! &" procesador !" $! #* + !" + 178 + 278
$! #* *' # #%$ $# #$ # !#
Use estos subtotales nuevos para calcular el overhead de comunicación en el paso 6. subtotal subtotal
µseg
multiplique el subtotal para el tiempo de escán mín. (estimado en el paso 5) entre 1; + 2310
+ 0
multiplique el subtotal para el tiempo de escán máx. entre 1.140
(el valor máx. toma en cuenta la red activa DHĆ485). µseg
µseg
/ 1000 / 1000
6.2 Calcule el overhead de comunicación de primer plano:
por el tiempo de escán mínimo, añada 0;
por el tiempo de escán máximo, añada 2310.
(El tiempo de escán máximo toma en cuenta que el programador está
conectado al procesador.)
D–28
Referencias de instrucciones de programación
E Referencias de instrucciones
de programación
Este apéndice lista todas las instrucciones de programación disponibles además de
los parámetros, modos de direccionamiento válidos y tipos de archivo de las
mismas.
E–1
Manual de referencia del juego de instrucciones
#%! N7:0
Directo indexado #N7:0
Indexado N7:[N10:3]
Indirecto indexado #N7:[N10:3]
E–2
Referencias de instrucciones de programación
Direccionamiento directo
Direccionamiento indexado
Usted puede especificar una dirección como indexada colocando el carácter “#” al
frente de la dirección. Cuando una dirección de esta forma se encuentra en el
programa, el procesador toma el número de elemento de la dirección y lo suma al
valor contenido en el registro de índice S:24 y usa el resultado como la dirección
real. Por ejemplo:
#N7:10 donde S:24 = 15
La dirección real usada por la instrucción es N7:25.
Direccionamiento indirecto
E–3
Preface
Manual de referencia del juego de instrucciones
caracteres 0-1024
caracteres 0-1024
À Soportado solamente por los procesadores SLC 5/03 OS301, OS302 y SLC 5/04 OS400, OS401.
Á Soportado solamente por los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
E–4
Referencias de instrucciones de programación
À Soportado solamente por los procesadores SLC 5/03 OS301, OS302 y SLC 5/04 OS400, OS401.
E–5
Preface
Manual de referencia del juego de instrucciones
#&%!"+, %
)+)* #0&*
#&%!"+, %
)+)* #0&*
E–6
Referencias de instrucciones de programación
longitud 0-2048
longitud 0-2048
À Soportado solamente por los procesadores SLC 5/03 OS301, OS302 y SLC 5/04 OS400, OS401.
E–7
Preface
Manual de referencia del juego de instrucciones
longitud 1-128
expresión <expresión>
preseleccionado -32,768-32,767
acumulador -32,768-32,767
preseleccionado -32,768-32,767
acumulador -32,768-32,767
Á Soportado solamente por los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
E–8
Referencias de instrucciones de programación
(+*&'/0#
,+.'"'6*
(+*&'/0#
,+.'"'6*
E–9
Preface
Manual de referencia del juego de instrucciones
*-,')23$ 1-128
.0%1%*%##)-,!$-
.0%1%*%##)-,!$-
!#3+3*!$-0
E–10
Referencias de instrucciones de programación
*-,')23$ 1)%+.0% 5
*-,')23$
6
*-,')23$
6
E–11
Preface
Manual de referencia del juego de instrucciones
$+,0 , '&2 ) .2$ %2$+1$ #'/$"1, #'/$"1, '+#$3 #, +'+&2+,
'+#'/$"1, '+#'/$"1, '+#$3 #,
),+&'12#
-,0'"'7+
à $0" /& & * #'/$"1, '+#$3 #, +'+&2+,
'+#'/$"1, '+#$3 #,
),+&'12#
-,0'"'7+
E–12
Referencias de instrucciones de programación
longitud de T, C, R 1-13
mensaje
I, O, S, B, N 1-41
Á Soportado solamente por los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
E–13
Preface
Manual de referencia del juego de instrucciones
+.#!+1%,.3.
+.#!+
1%,.3.
-.$. $%23)-.
)&
$% 58-#4+. $%
/4%-3% 1%,.3. #4!-$. +.#!+
$)1%##)9- $% -.$.
$% /4%-3% 1%,.3. #4!-$. +.#!+
$)1%##)9- $% $)1%#3.
!1#()5. $%23)-. Ç
+.-')34$ $% Ç
,%-2!*%
Ç
9
2)
Ç 9 2)
E–14
Referencias de instrucciones de programación
#!% (! $% *$) !')% !')% !$,%
$!$ *$%
!$!')% !$!')% !$,%
E–15
Preface
Manual de referencia del juego de instrucciones
Á Soportado solamente por los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
 Soportado solamente por los controladoresMicroLogix 1000.
Æ Soportado solamente por los procesadores SLC 5/02, SLC 5/03 y SLC 5/04.
E–16
Referencias de instrucciones de programación
*+","&" %)(!)
.'.&!)+
E–17
Preface
Manual de referencia del juego de instrucciones
longitud 1-255
posición 0-255
longitud 1-255
posición 0-255
Á Soportado solamente por los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
à Soportado solamente por los procesadores SLC 5/02, SLC 5/03 y SLC 5/04 y controladores MicroLogix 1000.
Ä El direccionamiento indexado no se permite cuando se usan direcciones T, C, R o M.
E–18
Referencias de instrucciones de programación
longitud 1-255
posición 0-255
à Soportado solamente por los procesadores SLC 5/02, SLC 5/03 ySLC 5/04 y controladores MicroLogix 1000.
Ä El direccionamiento indexado no se permite cuando se usan direcciones T, C, R o M.
E–19
Preface
Manual de referencia del juego de instrucciones
%#-#+
-. 19
6
E–20
Referencias de instrucciones de programación
preseleccionado 0-32,767
acumulador 0-32,767
Á Soportado solamente por los procesadores SLC 5/03 OS302 y SLC 5/04 OS401.
Æ Soportado solamente por los procesadores SLC 5/02, SLC 5/03 y SLC 5/04.
E–21
Preface
Manual de referencia del juego de instrucciones
,-$.$($""'+* #+
"0)0( #+-
E–22
Organización y direccionamiento de archivo de datos
F Organización y direccionamento
del archivo de datos
Este capítulo trata los temas siguientes:
• la organización y direccionamiento del archivo de datos
• cómo especificar el direccionamiento indexado
• cómo especificar el direccionamiento indirecto (procesadores SLC 5/03 OS302
y SLC 5/04 OS401)
• cómo direccionar instrucciones de archivo (usando el no. de indicador de
archivo)
• las constantes numéricas
• los archivos M0-M1, archivos G (procesadores SLC 5/02, SLC 5/03 y SLC 5/04
con módulos de E/S especiales)
F–1
Preface
Manual de referencia del juego de instrucciones
DISPOSITIVO DE PROGRAMACION
01 01
02
03
04
Archivos de procesador
con nombres únicos
F–2
Organización y direccionamiento de archivo de datos
Archivos de programa
F–3
Manual de referencia del juego de instrucciones
F–4
Organización y direccionamiento de archivo de datos
Descarga
RAM
Dispositivo de
programación
Nota Si usted desea asegurarse que los datos de copia de seguridad sean los mismos para
cada microcontrolador que esté usando, guarde el programa en el disco antes de
descargarlo a un microcontrolador.
F–5
Manual de referencia del juego de instrucciones
Operación normal
EEPROM RAM
Datos seguridad Esp. trab. CPU
Datos retentivos Datos retentivos
Archivos prog Archivos prog.
CPU
Dispositivo de
programación
Apagado
EEPROM RAM
Datos seguridad Esp. trab. CPU
Datos retentivos Datos retentivos
Archivos prog Archivos prog.
CPU
Dispositivo de
programación
F–6
Organización y direccionamiento de archivo de datos
Encendido
EEPROM RAM
Datos seguridad Esp. trab. CPU
Datos retentivos Datos retentivos
Archivos prog Archivos prog.
CPU
Dispositivo de
programación
Si los datos retentivos se perdieron durante la parada, los datos de seguridad del
EEPROM se transfieren a la RAM y se usan como datos retentivos. Además, el bit
de archivo de estado S2:5/8 (datos retentivos perdidos) se establece y un error
mayor recuperable ocurre previo a la puesta en marcha.
EEPROM RAM
Datos seguridad Esp. trab. CPU
Datos retentivos Datos retentivos
Archivos prog Archivos prog.
CPU
Dispositivo de
programación
F–7
Preface
Manual de referencia del juego de instrucciones
Tipos, identificadores y números de archivos de datos (archivos de datos en la memoria del procesador)
Nota Los tipos de archivo de punto (coma) flotante, cadena y ASCII están disponibles
únicamente cuando se usan los procesadores SLC 5/03 0S301, 0S302 y SLC 5/04
OS400, OS401.
Usted asigna direcciones lógicas a instrucciones desde el nivel más alto (elemento)
hasta el nivel más bajo (bit). Los ejemplos de direccionamiento se muestran en la
tabla siguiente.
F–8
Organización y direccionamiento de archivo de datos
Para especificar la
À
dirección
Usted también puede direccionar al nivel de bit usando los mnemónicos como tipos
de datos de temporizador, contador o control.
F–9
'
Manual de referencia del juego de instrucciones
Las figura siguiente ilustra cómo estas entradas y salidas se configuran en los
archivos de datos 0 y 1. Para estos archivos, el tamaño de elemento siempre es 1
palabra.
-#'%( '$*'
%$)'%"%' ( (
!% ,&$(%'
F–10
Organización y direccionamiento de archivo de datos
Salida
&,*
: Delimitador de elemento
No. de
ranura Controlador de "#'
"%$
$"%",'* ",
' &,*+ 7
5
*&-*
,*%"&$ $"+ 7
!$ #& $ & #"'%# #% !#&'%# " $,"
F–11
,!"!
Manual de referencia del juego de instrucciones
)(.,)& ), ') /&, +/! /- /( $-%- ! ,(/,- %(.!,)(!. ) )( /( $-%- ! ,(/,-
%(# &% - ! ,(/, INVALID
%(#
(/, -&% - ! *&, X
%(#
&% - ! ,(/,
%(# &). )/.*/.-
%(#
&% - ! ,(/, X
%(#
%(#
%(#
,$%0) ! .)- '#!( ! !(.,
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
F–12
Organización y direccionamiento de archivo de datos
Introduzca el valor offset en la palabra 24 del archivo de estado (S:24). Todas las
instrucciones indexadas usan la misma palabra S:24 para almacenar el valor offset.
El procesador inicia la operación a la dirección de base más el offset. Puede
manipular el valor offset en la lógica de escalera antes de cada operación de
dirección indexada.
El ejemplo siguiente de mover con máscara (MVM) usa una dirección indexada en
las direcciones de fuente y destino. Si el valor offset es 10 (almacenado en S:24), el
procesador manipula los datos almacenados en la dirección de base más el offset.
MVM
MASKED MOVE
Source #N7:10
0
Mask 0033
Dest #N7:50
0
F–13
Preface
Manual de referencia del juego de instrucciones
Procesadores SLC 5/03 OS301, OS302 y SLC 5/04 OS400, OS401 — Si la dirección
indexada es un archivo de datos de punto (coma) flotante (F8:), el valor offset de
índice en S:24 es el offset en elementos. Si la dirección indexada es un archivo de
datos de cadena (ST), el valor offset de índice en S:24 es el offset en subelementos.
Esto evita que los límites de elemento de cadena sean cruzados.
Note que las instrucciones de archivo (SQO, COP, LFL, por ejemplo) sobrescriben
S;24 cuando se ejecutan. Por eso, usted debe asegurarse que el registro de índice se
cargue con el valor propuesto antes de la ejecución de una instrucción indexada que
sigue a una instrucción de archivo.
Las tablas de datos no se expanden automáticamente para dar lugar a las direcciones
indexadas. Usted debe crear estos datos con la función del mapa de memoria. En el
ejemplo de la página anterior, las palabras de datos N7:3 a N7:12 y N11:6 a N11:15
se deben asignar. El no hacer esto resultará en una condición de sobrescritura no
deseada o un fallo mayor.
Un valor offset puede extender la operación a una dirección fuera del límite del
archivo de datos. Usted puede permitir o negar el cruce de los límites de archivo.
Si selecciona negar la intersección de los límites de archivo, un error de tiempo de
ejecución ocurre si usa un valor offset que resultaría en la intersección de un límite
de archivo.
F–14
Organización y direccionamiento de archivo de datos
Procesadores SLC 5/03 OS301, OS302 y SLC 5/04 OS400, OS401 - Cuando un
archivo de datos de cadena indexado se especifica, no se permite que el
direccionamiento indexado se traslape con un límite de elemento de cadena. Un
error de tiempo de ejecución ocurrirá si usted usa un valor offset que resulta en la
intersección de un límite de elemento de cadena.
Nota Si un archivo tiene protección constante, no se permite indexar a través de los
límites de archivo.
Ejemplo
B3:0
Negativo
T4:0.ACC máximo
de -3
#T4:3.ACC
#T4:3.ACC
Positivo
T4:9.ACC máximo de 6
F–15
Manual de referencia del juego de instrucciones
Ejemplo
B3 MOV
] [ MOVE
1 Source #N7:2
Dest N10:2
ADD
ADD
Source A #N7:2
Source B T4:0.ACC
Dest T4:1.PRE
Instrucciones de archivo
F–16
Organización y direccionamiento de archivo de datos
– el número de archivo
Ejemplos
F–17
Manual de referencia del juego de instrucciones
Las tablas de datos no se expanden automáticamente para dar lugar a las direcciones
indirectas. Usted debe crear estos datos con la función del mapa de memoria.
Un valor offset puede extender la operación a una dirección fuera del límite de
archivo de datos. Puede permitir o no permitir la intersección de los límites de
archivo. Si selecciona no permitir la intersección de los límites de archivo, un error
de tiempo de ejecución ocurre si usa un valor offset que resulta en la intersección de
un límite de archivo.
F–18
Organización y direccionamiento de archivo de datos
Las instrucciones de archivo usan archivos creados por el usuario. Estos archivos
son direccionados con el símbolo #. Almacenan un valor offset en la palabra S:24,
al igual que el direccionamiento indexado tratado en la sección anterior.
Los párrafos siguientes explican los archivos creados por el usuario según su
aplicación a las instrucciones de desplazamiento de bit, instrucciones de
secuenciador, instrucciones de copiar archivo y llenar archivo.
La figura siguiente muestra un archivo definido por el usuario dentro del archivo de
datos de bit 3. Para este archivo definido por el usuario, usted introduciría los
parámetros siguientes al programar la instrucción:
!
La dirección de la gama de bit
es
La longitud de la
gama de bit es 58, introducida
como parámetro separado en la
instrucción de desplazamiento NO VALIDO
de bit.
• #B3:2 La dirección del arreglo de bit. Esto define el bit inicial como bit 0 en el
elemento 2, archivo de datos 3.
• 58 Esta es la longitud del arreglo de bit: 58 bits. Note que los bits
“remanentes” en el elemento 5 no se pueden usar.
F–19
Manual de referencia del juego de instrucciones
Usted puede programar tantos arreglos de bit como desee en un archivo de bit.
Asegúrese de no traslapar estos arreglos.
Instrucciones de secuenciador
La figura siguiente muestra un archivo definido por el usuario dentro del archivo de
datos de bit 3. Para este archivo definido por el usuario, usted introduciría los
parámetros siguientes al programar la instrucción:
• #B3:4 La dirección del archivo. Esto define el elemento inicial como elemento
4, archivo de bit 3.
• 6 La longitud especificada del archivo, 6 elementos más allá de la dirección
inicial (total de 7 elementos).
Puede usar archivos enteros definidos por el usuario o archivos de bit con
instrucciones de secuenciador, según la aplicación. Puede programar un sinnúmero
de archivos dentro de otro archivo. Sin embargo, asegúrese de no traslapar estos
archivos.
F–20
Organización y direccionamiento de archivo de datos
Estas instrucciones manipulan los archivos definidos por el usuario. Los archivos
son usados como parámetros de fuente o destino en las instrucciones de copiar
archivo o llenar archivo. Los archivos pueden ser archivos de salida, entrada,
estado, bit, temporizador, contador, control o enteros. Dos ejemplos se muestran en
la figura siguiente. Note que la longitud del archivo es el número especificado de
elementos del archivo de destino; esto es distinto de la especificación de longitud
del archivo para las instrucciones de secuenciador.
Note que para el archivo de salida (además del archivo de entrada), un elemento
siempre es de una palabra, con referencia a la ranura y palabra combinados. Por
ejemplo, el elemento O:3.0 hace referencia al archivo de salida, ranura 3, palabra 0.
Retorna al valor predeterminado de O:3 donde la palabra 0 es implícita.
Archivo de datos 0 - Imagen de salida
0
NO VALIDO O:1
O:3
NO VALIDO O:4
O:5 #O:3
O:5.1
O:9
O:10
El archivo #O:3 mostrado arriba tiene una longitud de 5 elementos: Elementos 3, 4, 5, 5.1, 9
F–21
Manual de referencia del juego de instrucciones
Constantes numéricas
F–22
Organización y direccionamiento de archivo de datos
Mf:e.s/b
Donde M = módulo
f = tipo de archivo (0 ó 1)
e = ranura (1–30)
s = palabra (0 al máx. proporcionado por el módulo)
b = bit (0–15)
F–23
Manual de referencia del juego de instrucciones
Procesadores SLC 5/02, SLC 5/03 y SLC 5/04 con la monitorización de M0 y M1 inhabilitada
Los procesadores SLC 5/03 y SLC 5/04 le permiten monitorizar el estado real de
cada dirección (o tabla de datos) M0/M1 direccionada. Los caracteres resaltados
aparecen normales cuando se comparan con el otro archivo de datos del procesador.
El rendimiento del SLC 5/03 será disminuido al grado de los datos de pantalla con
referencia a M0/M1. Por ejemplo, si la pantalla tiene solamente un elemento
M0/M1, la disminución será mínima. Si la pantalla tiene 69 elementos M0/M1, la
disminución será significativa.
F–24
Organización y direccionamiento de archivo de datos
B3 B3 EQU M0:3.0
] [ ] [ EQUAL ( )
0 1 Source A N7:12 1
Source B N7:3
B3 B3 EQU B3
] [ ] [ EQUAL ( )
0 1 Source A N7:12 2
Source B N7:3 M0:3.0
( )
1
S:1 COP
] [ COPY FILE
15 Source #B3:0
Primero escanee el bit. Dest #M0:1.0
Esto hace este renglón Length 16
verdadero solamente
durante el primer COP
escán después de COPY FILE
entrar en el modo de Source #N7:0
marcha. Dest #M0:1.16
Length 27
F–25
Manual de referencia del juego de instrucciones
COP
COPY FILE
Source #M1:4.3
Dest #N10:0
Length 6
Tiempo de acceso
M0:2.1 B3
1 ] [ ( )
1 10
B3 M0:2.1 B3
2 ] [ ] [ ( )
12 1 14
!
F–26
Organización y direccionamiento de archivo de datos
M0:2.1 B3
1 ] [ ( )
1 10
B3 B3 B3
2 ] [ ] [ ( )
12 10 14
Los dos primero diagramas de escalera en la última sección ilustran un método que
le permite capturar y usar los datos M0 ó M1 según existan en un momento
determinado. En la primera figura, el bit Mo:2.1/1 podría cambiar su estado entre
los renglones 1 y 2. Esto podría obstaculizar la lógica aplicada en el renglón 2. La
segunda figura evita el problema. Si el renglón 1 es verdadero, el bit B3/10 captura
esta información y la coloca en el renglón 2.
F–27
Manual de referencia del juego de instrucciones
Ciertos módulos de E/S especiales retienen el estado de los datos M0–M1 después
de la desconexión de alimentación eléctrica. Vea el manual del usuario del módulo
de E/S especial. Esto significa que una instrucción OTE con una dirección M0 ó
M1 permanece activada si está activada cuando la alimentación eléctrica se
desconecta. Un renglón de mantenimiento como el ilustrado a continuación no
funcionará como debe si la instrucción OTE fuera no retentiva cuando se interrumpe
la alimentación eléctrica. Si el renglón es verdadero al momento en que la
alimentación eléctrica se desconecta, la instrucción OTE se enclava en vez de
interrumpirse; cuando la alimentación eléctrica se vuelve a conectar, el renglón se
evalúa como verdadero en lugar de falso.
B3 M0:2.1
] [ ( )
0 1
M0:2.1
] [
1
Cuando se usa con un módulo de E/S especial que tiene salidas retentivas, este
renglón puede causar el arranque inesperado durante el encendido.
F–28
Organización y direccionamiento de archivo de datos
La figura siguiente ilustra los tres formatos de datos de archivo G que puede
seleccionar. Las direcciones de palabra comienzan con el identificador de archivo G
y el número de ranura que ha asignado al módulo de E/S especial. En este caso, el
número de ranura es 1. Se han creado dieciseis palabras (direcciones G1:0 a
G1:15).
F–29
Manual de referencia del juego de instrucciones
Los datos en el archivo G se deben editar según la aplicación y los requisitos del
módulo de E/S especial. Usted edita los datos fuera de línea bajo la función de
configuración de E/S únicamente. Con los formatos decimales y
hexadecimales/bcd, edita los datos al nivel de palabra:
• G1:1 = 234 (formato decimal)
G1:1 = 00EA (formato hexadecimal/bcd)
• Con el formato binario, edita los datos al nivel de bit:
G1/19 = 1
F–30
Sistemas numéricos
G Sistemas numéricos
Este apéndice:
• contempla los números binarios y hexadecimales
• explica el uso de una máscara hexadecimal para filtrar datos en instrucciones de
programación determinadas
G–1
Manual de referencia del juego de instrucciones
Números binarios
La memoria del procesador almacena números binarios de 16 bits. Como se indica
en la figura siguiente, cada posición en el número tiene un valor decimal, a partir de
la derecha con 20 hasta la derecha con 215.
La posición del extremo izquierdo siempre es 0 para los valores positivos. Como se
indica en la figura, esto limita el valor decimal positivo máximo a 32767. Todas las
posiciones son 1 excepto por la posición del extremo izquierdo.
Otros ejemplos:
= 2048+256+8+4+2 = 2318
= 8192+512+256+32+8
= 9000
G–2
Sistemas numéricos
1x2
16384
1x213
8192
1x212 4096
1x211
2048
1x210 1024
1x2 = 512 512
1x28 = 256 256
1x27 = 128 128
1x26 = 64 64
1x25 = 32 32
1x24 = 16 16
1x23 = 8 8
1x22 = 4 4
1x21 = 2 2
1x20 = 1 1
32767
0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
Otro ejemplo:
(214+213+212+211+25+21+20) - 2 =
Otro método más frecuente y más fácil de calcular un valor es localizar el último1
en la cadena de 1 a partir de la izquierda y restar su valor del valor total de las
posiciones a la derecha de aquella posición. Por ejemplo,
G–3
Preface
Manual de referencia del juego de instrucciones
G–4
Sistemas numéricos
Números hexadecimales
Los números hexadecimales usan caracteres individuales con valores decimales
equivalentes desde 0 hasta 15:
0 1 2 3 4 5 6 7 8 9 A B C D E F
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
Los valores de posición de los números hexadecimales son potencias de 16, a partir
de 160 a la derecha:
Ejemplo
2 1 8 A
2 1 8 A
0 0 1 0 0 0 0 1 1 0 0 0 1 0 1 0
G–5
Preface
Manual de referencia del juego de instrucciones
Ejemplo
Binario 1 1 0 1 1 1 1 0 0 1 1 1 0 1 1 0 = -8586
Hexadecimal D E 7 6 = 56950
(número negativo, -8586)
G–6
Sistemas numéricos
Máscara hexadecimal
Este código de 4 caracteres introducido como parámetro en SQO, SQC y otras
instrucciones para excluir bits seleccionados de una palabra a fin de evitar que la
instrucción opere en los mismos. Los valores hexadecimales se usan en su forma
equivalente binaria según se indica en la figura siguiente. Además, la figura
muestra un ejemplo de un código hexadecimal en la palabra con máscara
correspondiente.
Valor Valor
hex. binario
Código
hexadecimal
0 0 F F
0 0 0 0 0 0 0 0 1 1 1 1 1 1 1 1
9 Palabra con
A máscara
B
C
D
E
F
Los bits de la palabra con máscara que son establecidos (1) pasarán datos desde una
fuente hacia un destino. Los bits restablecidos (0) no lo harán. En el ejemplo
siguiente, los datos en bits 0–7 de la palabra de fuente son pasados a la palabra de
destino. Los datos en bits 8–15 de la palabra de fuente no son pasados a la palabra
de destino.
Palabra fuente 1 1 1 0 1 0 0 1 1 1 0 0 1 0 1 0
Palabra de destino 0 0 0 0 0 0 0 0 1 1 0 0 1 0 1 0
(todos los bits son 0
inicialmente)
G–7
Manual de referencia del juego de instrucciones
exponente fracción
bit de
signo
donde:
s = signo
x = exponente
m = mantisa
0 10000010 01001000000000000000000
G–8
Programas de ejemplo de aplicación
H–1
Manual de referencia del juego de instrucción
!
/,& /,&
&726*3$)
:
1*,, /-&
1*,, .''
1*,, &31"$3
1*,, /16"1%
H–2
Programas de ejemplo de aplicación
H–3
Manual de referencia del juego de instrucción
H–4
Programas de ejemplo de aplicación
H–5
Manual de referencia del juego de instrucción
Renglón 2:4
Este renglón invoca la subrutina que registra la cantidad de desgaste en la
broca actual.
| +JSR–––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––––––––––––––––––––––+JUMP TO SUBROUTINE+–|
| |SBR file number 7| |
| +––––––––––––––––––+ |
Renglón 2:5
Hay alguna lógica de inicialización en la subrutina DII (archivo 4) que se debe
ejecutar antes de la primera interrupción DII. Por lo tanto, este renglón permite
que la DII se inicialice saltando a la subrutina DII cuando el procesador entra
en el modo de MARCHA.
| Primer |
| paso |
| S:1 +JSR–––––––––––––––+ |
|––––] [––––––––––––––––––––––––––––––––––––––––––––––––––+JUMP TO SUBROUTINE+–|
| 15 |SBR file number 4| |
| +––––––––––––––––––+ |
Renglón 2:6
| |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
| |
H–6
Programas de ejemplo de aplicación
Renglón 4:0
Este renglón restablece los secuenciadores de conteo de orificios cada vez que el
procesador entra en el modo de MARCHA. Esto asegura que el primer valor preselec-
cionado se cargará en la DII preseleccionada durante cada entrada en el modo
de marcha.
| Primer Secuenciador |
| paso preselecc. |
| de 3 orif. |
| +INT––––––––––––––––––––+ S:1 R6:4 |
|–+INTERRUPT SUBROUTINE +––––] [––––––––––––––––––––––––––––––+–––(RES)––––+–|
| +–––––––––––––––––––––––+ 15 | | |
| | Secuenc. | |
| | preselecc. | |
| | de 5 orif. | |
| | R6:5 | |
| +–––(RES)––––+ |
| | | |
| | Secuenc. | |
| | preselecc. | |
| | de 7 orif. | |
| | R6:6 | |
| +–––(RES)––––+ |
| |
Renglón 4:1
Este renglón le indica a la DII que detecte la presencia de un libro en el sensor
fotoeléctrico y un impulso de codificador (encoder). Al dispararse con estas dos
condiciones, la DII solamente contará impulsos cuando haya un libro presente, de
lo contario, no se mantendrá en el número de conteos existente. S:49 es el valor
PRESELECCIONADO de DII.
| +MOV–––––––––––––––+ |
|–––––––––––––––––––––––––––––––––––––––––––––––––––––––––+MOVE +–|
| |Source 5| |
| | | |
| |Dest S:49| |
| | 0| |
| +––––––––––––––––––+ |
H–7
Manual de referencia del juego de instrucción
Renglón 4:2
Este renglón registra el número de orificio que se perfora y carga la próxima DII
correcta preseleccionada según el conteo de orificio. Este renglón está activo
solamente cuando el “interruptor selector de orificio” se encuentra en la posición
de “3 posiciones”. El secuenciador usa el paso 0 como un paso nulo al momento de
restablecimiento. Usa el último paso como “marcha permanente” en espera del “final
del manual”. El mover un 0 en S:49 le indica a la DII que dispare una interrupción
cuando se detecte el borde trasero del libro actual.
| bit de |bit de secuenciador |
| interr. |interr. preseleccionado |
| selector |selector de 3 orificios |
| de orif. 0|de orif. 1 |
| 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| | |
| | +––––––––––––––––––+ | |
| | | |
| | | |
| | forzar que | |
| | el secuenciador | |
| | incremente al | |
| | próximo escán | |
| | R6:4 | |
| +–––––––––––––––––––––––––(U)––––––––––––––––––––+ |
| | EN | |
| | Si está en | |
| | el último orificio, | |
| | indique a la DII | |
| | que busque el final del libro | |
| | +EQU–––––––––––––––+ +MOV–––––––––––––––+ | |
| +–+EQUAL +–+MOVE +––––––+ |
| |Source A R6:4.POS| |Source 0| |
| | 0| | | |
| |Source B 4| |Dest S:49| |
| | | | 0| |
| +––––––––––––––––––+ +––––––––––––––––––+ |
H–8
Programas de ejemplo de aplicación
Renglón 4:3
Este renglón es idéntico al renglón anterior, excepto que solamente está activo
cuando el “interruptor selector de orificio” está en la posición de
“5 orificios”.
| bit de |bit de secuenciador |
| interr. |interr. preseleccionado |
| selector |selector de 5 orificios |
| de orif. 0|de orif. 1 |
| 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 al | |
| | próximo escán | |
| | R6:5 | |
| +–––––––––––––––––––––––––(U)––––––––––––––––––––+ |
| | EN | |
| | Si está en | |
| | el último orificio, | |
| | indique a la DII | |
| | que busque el final del libro | |
| | +EQU–––––––––––––––+ +MOV–––––––––––––––+ | |
| +–+EQUAL +–+MOVE +––––––+ |
| |Source A R6:5.POS| |Source 0| |
| | 0| | | |
| |Source B 6| |Dest S:49| |
| | | | 0| |
| +––––––––––––––––––+ +––––––––––––––––––+ |
H–9
Manual de referencia del juego de instrucción
Renglón 4:4
Este renglón es idéntico a los 2 renglones anteriores, excepto que solamente está
activo cuando el “interruptor selector de orificio” se encuentra en la posición
de “7 orificios”.
| bit de |bit de secuenciador |
| interr. |interr. preseleccionado |
| selector |selector de 7 orificios |
| de orif. 0|de orif. 1 |
| 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 al | |
| | próximo escán | |
| | R6:6 | |
| +–––––––––––––––––––––––––(U)––––––––––––––––––––+ |
| | EN | |
| | | |
| | Si está en | |
| | el último orificio, | |
| | indique a la DII | |
| | que busque el final del libro | |
| | +EQU–––––––––––––––+ +MOV–––––––––––––––+ | |
| +–+EQUAL +–+MOVE +––––––+ |
| |Source A R6:6.POS| |Source 0| |
| | 0| | | |
| |Source B 8| |Dest S:49| |
| | | | 0| |
| +––––––––––––––––––+ +––––––––––––––––––+ |
H–10
Programas de ejemplo de aplicación
Renglón 4:5
Si el procesador está en esta subrutina por inicialización o debido a la
detección del borde trasero de un manual, retorne y omita la lógica que detiene
el transportador y arranca la secuencia del taladro.
| Primer para comentario |
| paso solamente |
| S:1 B3:0 |
|–+––––] [–––––––––––––––––––––––––––––––––––––+––––––+––––( )–––––––––––––––+–|
| | 15 | | 2 | |
| | | | | |
| | | | | |
| | bit de |bit de | | | |
| | interr. |interr. | | | |
| | selector |selector | | | |
| | de orif. 0|de orif. 1 | | | |
| | I:1.0 I:1.0 +EQU–––––––––––––––+ | | +RET–––––––––––––––+ | |
| +––––]/[––––––––] [–––––+EQUAL +–+ +–+RETURN +–+ |
| | 9 10 |Source A R6:4.POS| | +––––––––––––––––––+ |
| | | 0| | |
| | |Source B 1| | |
| | | | | |
| | +––––––––––––––––––+ | |
| | bit de |bit de | |
| | interr. |interr. | |
| | selector |selector | |
| | de orif. 0|de orif. 1 | |
| | I:1.0 I:1.0 +EQU–––––––––––––––+ | |
| +––––] [––––––––]/[–––––+EQUAL +–+ |
| | 9 10 |Source A R6:5.POS| | |
| | | 0| | |
| | |Source B 1| | |
| | | | | |
| | +––––––––––––––––––+ | |
| | bit de |bit de | |
| | interr. |interr. | |
| | selector |selector | |
| | de orif. 0|de orif. 1 | |
| | I:1.0 I:1.0 +EQU–––––––––––––––+ | |
| +––––] [––––––––] [–––––+EQUAL +–+ |
| 9 10 |Source A R6:6.POS| |
| | 0| |
| |Source B 1| |
| | | |
| +––––––––––––––––––+ |
H–11
Manual de referencia del juego de instrucción
Renglón 4:6
Este renglón detiene el transportador e indica al programa principal (archivo 2)
que inicie una secuencia de perforación. La subrutina de SECUENCIA DE PERFORACION
(archivo de programa 6) restablece el bit de comienzo de secuencia de perforación
y establece el bit de propulsión del transportador (O:3/0) a la finalización
de la secuencia de perforación.
| Comienzo |
| de la sec. |
| de perfor. |
| B3:2 |
|–––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––+––––(L)–––––+–|
| | 0 | |
| | Conveyor | |
| | Start/Stop | |
| | | |
| | O:3.0 | |
| +––––(U)–––––+ |
| 0 |
Renglón 4:7
| |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
| |
H–12
Programas de ejemplo de aplicación
Renglón 6:0
Esta sección de la lógica de escalera controla el movimiento ascendente/descendente
del taladro para la perforadora de libros.
Cuando el transportador posiciona el libro bajo el taladro, el bit de COMIENZO
DE SECUENCIA DE PERFORACION se establece. Este renglón usa este bit para
comenzar la operación de perforación. Puesto que el bit se establece para toda la
operación de perforación, se requiere que la OSR pueda desactivar la señal de
avance para que el taladro pueda retraerse.
| Com. |Subr. perf.| Avance |
| secuencia | OSR | broca |
| perforac. | |
| B3:2 B3:3 O:3.0 |
|––––] [–––––––[OSR]–––––––––––––––––––––––––––––––––––––––––––––––––––(L)–––––|
| 0 0 3 |
Renglón 6:1
Cuando el taladro ha perforado el libro, el cuerpo del taladro accionará el inte-
rruptor de final de carrera de PROFUNDIDAD DE PERFORACION. Cuando esto ocurre,
la señal de AVANCE DEL TALADRO se desactiva y la señal de RETRACCION DEL
TALADRO se activa.
| Prof. Avance |
| perfor. LS broca |
| I:1.0 O:3.0 |
|–+––––] [––––––––––––––––+–––––––––––––––––––––––––––––––––––––+––––(U)–––––+–|
| | 4 | | 3 | |
| | Primer |Origen | | Retracc. | |
| | paso |broca LS | | broca | |
| | S:1 I:1.0 | | O:3.0 | |
| +––––] [––––––––]/[–––––+ +––––(L)–––––+ |
| 15 5 2 |
Renglón 6:2
Cuando el taladro se retrae (después de perforar un orificio), el cuerpo del
taladro accionará el interruptor de fin de carrera de POSICION INICIAL DEL
TALADRO. Cuando esto ocurre, la señal de RETRACCION DE LA BROCA se desactiva, el
bit de COMIENZO DE SECUENCIA DE PERFORACION se desactiva para indicar que el
proceso de perforación se ha finalizado y el transportador se vuelve a arrancar.
| Origen |Retracc. Retracc. |
| broca LS |broca broca |
| I:1.0 O:3.0 O:3.0 |
|––––] [––––––––] [––––––––––––––––––––––––––––––––––+–––––––––––––––(U)–––––+–|
| 5 2 | 2 | |
| | Comienzo | |
| | de sec. | |
| | perforación| |
| | B3:2 | |
| +–––––––––––––––(U)–––––+ |
| | 0 | |
| | Enclav. |Arr./deten.| |
| | de MARCHA |transport. | |
| | máquina | | |
| | B3:0 O:3.0 | |
| +––––] [––––––––(L)–––––+ |
| 0 0 |
Renglón 6:3
| |
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
| |
H–13
Manual de referencia del juego de instrucción
Renglón 7:0
Este renglón examina el número de miles de 1/4 pulg. que se han acumulado
durante la vida de la broca actual. Si la broca ha perforado entre 100,000–101,999
incrementos de 1/4 pulg. de papel, la luz de “cambiar la broca” se ilumina
constantemente. Cuando el valor está entre 102,000–103,999, la luz de “cambiar la
broca” parpadea a una velocidad de 1.28 segundo. Cuando el valor alcanza 105,000,
la luz de “cambiar la broca” parpadea y la luz de “cambiar la broca ahora” se
ilumina.
| Miles 100,000 |
| de 1/4 pulg. incrementos |
| de 1/4 pulg. |
| han |
| occurrido |
| +GEQ–––––––––––––––+ B3:1 |
|–––––––+–+GRTR THAN OR EQUAL+–––––––––––––––––––––––––––––––––––––––( )–––––+–|
| | |Source A N7:11| 0 | |
| | | 0| | |
| | |Source B 100| | |
| | | | | |
| | +––––––––––––––––––+ | |
| | Milésimos 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ésimos 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| | |
| | | | | |
| | +––––––––––––––––––+ | |
H–14
Programas de ejemplo de aplicación
H–15
Manual de referencia del juego de instrucción
Renglón 7:3
Este renglón mueve el valor del interruptor preselector rotatorio BCD de un solo
dígito al registro entero interno. Esto se hace para alinear correctamente las
cuatro señales de entrada BCD antes de ejecutar la instrucción de BDC a entero
(FRD). El interruptor preselector rotatorio se usa para permitirle al operador
introducir el espesor del papel que se debe 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 |
H–16
Programas de ejemplo de aplicación
Renglón 7:4
Este renglón convierte el valor del interruptor preselector rotatorio BCD de BCD
en entero. Esto se hace porque el procesador opera en los valores enteros. Este
renglón también “neutraliza el rebote” el interruptor preselector rotatorio para
asegurar que la conversión ocurra solamente en los valores BCD válidos. Note que
los valores BCD inválidos pueden ocurrir mientras que el operador cambia el
interruptor preselector rotatorio BCD. Esto es debido a diferencias de retardo
de propagación del filtro de entrada entre los 4 circuitos de entrada que
proporcionan el valor de entrada BCD.
| bit de valor de
| primer entrada BCD valor BCD de
| paso del escán rebote 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| | | |
| | | Matem. +––––––––––––––––––+ | | |
| | | Bit de Bit de | | |
| | | overflow error | | |
| | | matemático matemático | | |
| | | S:0 S:5 | | |
| | +––––] [––––––––––––––(U)––––––––+ | |
| | 1 0 | |
| | el 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 ser
anulado, lo que resultaría en orificios de mala calidad debido a una broca
desgastada. Por lo tanto, el espesor de papel mínimo que se usará para calcular
el desgaste de la broca es 1/4 pulg.
| valor BCD valor BCD |
| de rebote de rebote |
| neutralizado neutralizado |
| +EQU–––––––––––––––+ +MOV–––––––––––––––+ |
|–+EQUAL +––––––––––––––––––––––––––––––––––––+MOVE +–|
| |Source A N7:12| |Source 1| |
| | 1| | | |
| |Source B 0| |Dest N7:12| |
| | | | 1| |
| +––––––––––––––––––+ +––––––––––––––––––+ |
H–17
Manual de referencia del juego de instrucción
Renglón 7:6
Mantenga un total acumulado de cuántas pulgadas de papel han sido perforadas con
la broca actual. Cada vez que un orificio se perfore, añada el espesor (en 1/4
pulg.) al total acumulado (mantenido en 1/4 pulg.). La OSR es necesaria porque la
instrucción SUMA se ejecuta cada vez que el renglón es verdadero y el cuerpo
del taladro accionará el interruptor de final de carrera de PROFUNDIDAD DE
PERFORACION durante más de 1 escán de programa. El entero N7:12 es el valor
de entero convertido del interruptor preselector rotatorio BCD en las entradas
I:3/11 – I:3/14.
| Prof. |Desgaste herr. incrementos |
| perf. LS | OSR 1 de 1/4 pulg. |
| |
| I:1.0 B3:1 +ADD–––––––––––––––+ |
|––––] [–––––––[OSR]––––––––––––––––––––––––––––––––––––––+ADD +–|
| 4 8 |Source A N7:12| |
| | 1| |
| |Source B N7:10| |
| | 0| |
| |Dest N7:10| |
| | 0| |
| +––––––––––––––––––+ |
Renglón 7:7
Cuando el número de incrementos de 1/4 pulg. excede 1000, descrubra cuántos
incrementos han excedido 1000 y almacene en N7:20, añada 1 al total de incrementos
de 1/4 pulg. y vuelva a inicializar el acumulador de incrementos de 1/4 pulg.
a la cantidad de incrementos que había excedido 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| | |
| | +––––––––––––––––––+ | |
| | 1/4” | |
| | Thousands | |
| | +ADD–––––––––––––––+ | |
| +–+ADD +–+ |
| | |Source A 1| | |
| | | | | |
| | |Source B N7:11| | |
| | | 0| | |
| | |Dest N7:11| | |
| | | 0| | |
| | +––––––––––––––––––+ | |
| | | |
| | | |
H–18
Programas de ejemplo de aplicación
Renglón 7:8
| | | |
| | incrementos | |
| | de 1/4 pulg. | |
| | +MOV–––––––––––––––– | |
| +–+MOVE +–+ |
| |Source N7:20| |
| | 0| |
| |Dest N7:10| |
| | 0| |
| +––––––––––––––––––+
|–––––––––––––––––––––––––––––––––––––+END+––––––––––––––––––––––––––––––––––––|
H–19
Manual de referencia del juego de instrucción
H–20
Programas de ejemplo de aplicación
Renglón 2:1
Controla las luces ROJA, VERDE y AMARILLA cabledas a las salidas O:3/0 – O:3/2 y controla
cuánto tiempo el temporizador regenerativo temporiza entre cada paso. Cuando este renglón
va de falso a verdadero (debido a que el temporizador alcanza su valor preseleccionado),
el primer secuenciador determina cuál luz del semáforo se ilumina y el segundo
secuenciador cambia el valor preseleccionado del temporizador para determinar la duración
de iluminación de esta luz siguiente.
| Luces ROJA, VERDE |
| y AMARILL |
| T4:0 +SQO–––––––––––––––+ |
|––] [––––––––––––––––––––––––––––––––––+–+SEQUENCER OUTPUT +–(EN)–+–|
| DN | |File #N7:0+–(DN) | |
| | |Mask 0007+ | |
| | |Dest O:3.0| | |
| | |Control R6:0| | |
| | |Length 3| | |
| | |Position 0| | |
| | +––––––––––––––––––+ | |
| | Valores preselec. | |
| | para cada luz | |
| | +SQO–––––––––––––––+ | |
| +–+SEQUENCER OUTPUT +–(EN)–+ |
| |File #N7:5+–(DN) |
| |Mask FFFF| |
| |Dest T4:0.PRE| |
| |Control R6:1| |
| |Length 3| |
| |Position 0| |
| +––––––––––––––––––+ |
H–21
Manual de referencia del juego de instrucción
Renglones 2.2
| |
|–––––––––––––––––––––––––––––––––––––+END+–––––––––––––––––––––––––––|
| |
Archivos de datos
Dirección 15 Data 0
N7:0 0000 0000 0000 0000
N7:1 0000 0000 0000 0100
N7:2 0000 0000 0000 0010
N7:3 0000 0000 0000 0001
Tabla de datos
Dirección Datos (Raíz=decimal)
N7:0 0 4 2 1 0 0 6000 1500 3000
H–22
Programas de ejemplo de aplicación
H–23
Manual de referencia del juego de instrucción
Renglón 2:1
La instrucción SQC y la instrucción SQO comparten el mismo registro de control. Esto se
permite gracias a la planificación cuidadosa de la condición del estado de renglón. Usted
podría poner en cascada (bifurcar) muchas más instrucciones SQO bajo la SQO si así lo
deseara, y todas las instrucciones usarían el mismo registro de control (en este caso,
R6:0). Note que comparamos solamente las entradas 0–3 y afirmamos solamente las salidas
0–3 (según el valor con máscara).
| R6:0 +SQC–––––––––––––––+ |
|––]/[––––––––––––––––––––––––––––+–––––––+SEQUENCER COMPARE +–(EN)–+–|
| FD | |File #N7:0+–(DN) | |
| | |Mask 000F+–(FD) | |
| | |Source I:1.0| | |
| | |Control R6:0| | |
| | |Length 9| | |
| | |Position 2| | |
| | +––––––––––––––––––+ | |
| | R6:0 +SQO–––––––––––––––+ | |
| +––]/[––+SEQUENCER OUTPUT +–(EN)–+ |
| FD |File #N7:10+–(DN) |
| |Mask 000F| |
| |Dest O:3.0| |
| |Control R6:0| |
| |Length 9| |
| |Position 2| |
| +––––––––––––––––––+ |
Renglón 2.2
| |
|–––––––––––––––––––––––––––––––––––––+END+–––––––––––––––––––––––––––|
| |
H–24
Programas de ejemplo de aplicación
Lo siguiente muestra los DATOS DE ARCHIVO para ambos secuenciadores. Los datos de
comparación SQC comienzan a N7:0 y terminan en N7:9. En cambio, los datos de salida SQO
comienzan en N7:10 y terminan en N7:19. Por favor, note que el paso 0 de la SQO nunca
está activo. El renglón de restablecimiento combinado con la lógica de renglón de los
secuenciadores garantiza que los secuenciadores siempre comiencen en el paso 1. Ambos
secuenciadores también “avanzan” al paso 1. El “avance” al paso 1 es un elemento integral
de todas las instrucciones de secuenciador.
Datos de comparación SQC
Direccciones Datos (Raíz=decimal)
N7:0 0 1 2 3 4 5 6 7 8 9
N7:10 0 0 1 2 3 4 5 6 7 8
Renglón 2:6
Si el contador de alta velocidad alcanzó su valor alto preseleccionado de 350 (indica que
el área de retención alcanzó la capacidad máxima), activará O:0/0, lo que detendría la
operación de llenado. Antes de volver a arrancar el dispositivo de llenado, permita que
el empacador vacíe el área de retención hasta que contenga aproximadamente un 1/3 de su
capacidad.
| Interrupción Detención |
| HSC debido de llenado |
| a valor preselecc alto |
| |
| C5:0 +LES–––––––––––––––+ O:3 |
|––––] [–––––+LESS THAN +––––––––––––––––––––––+––––(U)–––––+–|
| IH |Source A C5:0.ACC| | 0 | |
| | 0| | | |
| |Source B 150| | | |
| | | | | |
| +––––––––––––––––––+ | | |
| | HSC Interr | |
| | due to | |
| | High Prest | |
| | | |
| | C5:0 | |
| +––––(U)–––––+ |
| IH |
H–25
Manual de referencia del juego de instrucción
H–26
Programas de ejemplo de aplicación
H–27
Manual de referencia del juego de instrucción
H–28
Indice
Indice
Números archivo de contador (C5:), F-4
archivo de control (R6:), 1-6, F-4
1746-BAS, 12-6
archivo de datos de entrada (I1:), 1-3
1747-CP3, 12-19
archivo de datos de estado (S2:), F-3
1747-KE, 12-6
archivo de datos de salida (O0:), 1-3
1770-KF3, 12-6
archivo de entrada (I:), F-3
1784-KR, 12-6
archivo de estado, B-1
1785-KA5, 12-6 convenciones usadas en las pantallas, B-5
2760-RB, 12-6 descripción general, A-2
descripciones, A-3
A archivo de estado (S2:), 1-4
Absoluto (ABS), 3-24 archivo de estado global (S:100 a S:163), B-74
instrucción matemática, 3-24 archivo de punto (coma) flotante (F8:), 3-5
acceso a archivos del procesador archivo de salida (O:), F-3
encendido, F-7
operación normal, F-6 archivo de temporizador (T4:), F-4
acoplador de vínculo 1747-AIC, 12-27 archivo entero (N7:), 1-7, F-4
Active la salida (OTE), 1-10 archivos de datos, F-3
instrucciones básicas, 1-10 organización, F-3
tipos, indicador de archivo (#), F-19
Actualización del acumulador del contador de
alta velocidad, 7-24 archivos de datos G, F-29
cómo editar los datos de archivo G, F-30
Acumulador de restablecimiento del contador
de alta velocidad (RAC), 7-22 archivos de datos M0 y M1, F-23
cómo introducir parámetros, 7-22 cómo capturar los datos de archivo M0-M1,
operación, 7-22 F-27
cómo minimizar el tiempo de escán, F-26
acumulador DII (S:52), B-72 cómo transferir datos entre los archivos de
almacenamiento de archivos del procesador procesador, F-25
apagado, F-6 módulos de E/S especiales con memoria
descarga, F-5 retentiva, F-28
encendido, F-7 archivos de procesador
Añadir (ADD), 3-6 descripción general, F-2
instrucciones matemáticas, 3-6 organización, F-2
archivo ASCII, 10-4 archivos de programa, F-2
archivo de bit (B3:), 1-5, F-4 archivos del proceador, almacenamiento y
acceso, descarga, F-5
archivo de cadena, 10-4
I–1
Manual de referencia del juego de instrucción
I–2
Indice
bit de reconfiguración DII (S:33/10), B-62 Carga del contador de alta velocidad (HSL),
7-18
bit de respuesta de mensaje pendiente cómo introducir parámetros, 7-18
DH-485 (S:2/6), B-19 operación, 7-18
bit de selección de overflow matemático Carga FIFO (FFL), 4-30
(S:2/14), B-22 instrucción FIFO, 4-30
bit de selección de overflow matemático Carga LIFO (LFL), 4-32
S:2/14, 3-8 instrucción de desplazamiento de bit, 4-32
bit de selección de resolución STI (S:2/10), Codificar (ENC), 4-13
B-21 actualizaciones de los bits de estado
bit de selección de servicio de comunicaciones aritmético, 4-14
DH-485 (S:2/15), B-23 instrucción de manejo de datos, 4-13
bit de signo (S:0/3), B-7 Codificar 1 de 16 a 4 (ENC), 4-13
bit de transferencia inhabilitada (S:34), B-65 cómo introducir parámetros, 4-13
bit DII habilitado (S:2/12), B-21 código de fallo de error mayor (S:6), B-33
I–3
Manual de referencia del juego de instrucción
comparación con máscara para igual (MEQ), configuración de los procesadores SLC 5/03 y
instrucción de comparación, 2-6 SLC 5/04
configuración de canal ASCII genérico,
Comparación de cadena ASCII (ASR), 10-23 12-38
instrucción ASCII, 10-23 configuración del canal de esclavo half
comparación de programa de módulo de duplex DF1, 12-24
memoria (S:2/9), B-20 configuración del canal de maestro half duplex
Comparación de secuenciador (SQC), 6-9 DF1, 12-25
instrucción específica de aplicación, 6-9 configuracón de los procesadores SLC 5/03 y
comunicación bidireccional, 12-31 SLC 5/04, configuración de canal full
duplex DF1, 12-20
comunicación de PLC-5 a SLC 500, 12-14
cómo usar el archivo CIF SLC 500 consideraciones cuando usa el half duplex
(emulación PLC-2), 12-15 DF1, 12-30
usando la instrucciión de mensaje PLC-5 constantes de programa, F-22
con "byte", 12-16
constantes numéricas, F-22
usando la instrucción de mensaje PLC-5
con "byte", ejemplo, 12-17 contador bidireccinoal, descripción general,
usando la instrucción de mensaje PLC-5 7-7
con "palabra", 12-16 contador bidireccional, operación, 7-11
ejemplo, 12-17
I–4
Indice
I–5
Manual de referencia del juego de instrucción
I–6
Indice
información de comunicación
F comunicación de PLC-5 a SLC 500, 12-14
Fin temporal (TND), 5-10 cómo usar el archivo CIF SLC 500
instrucción de flujo programa, 5-10 (emulación PLC-2), 12-15
instrucción de mensaje PLC-5, 12-15
FRD (convertir de BCD), 4-6
usando la instrucción de mensaje con
FRN del sistema de operación (S:59), B-73 "palabra", 12-16
usando la instrucción de mensaje PLC-5
G con "byte", 12-16
protocolo de comunicación de Data Highway
Grados en radianes (RAD), 4-11 Plus, 12-7
instrucción de manejo de datos, 4-11 protocolo de comunicación RS-232, full
duplex, 12-19
H protocolo de comunicación RS-232 (DF1),
12-19
Habilitación de interrupción del contador de full duplex, ejemplos, 12-19
alta velocidad (HSE), 7-23 protocolo maestro/esclavo de half-duplex
Habilitación de interrupción del contador de DF1, 12-23
alta velocidad (HSE), uso de HSE, 7-23 Inhabilitación (HSD) de interrupción del
operación, 7-23 contador de alta velocidad (HSD), 7-23
Habilitación temporizada seleccionable (STE), Inhabilitación de interrupción de E/S (IID),
11-16 11-37
instrucción de interrupción, 11-16 instrucción de interrupción de E/S, 11-37
habilitaciones de ranuras de E/S (S:11 y S:12), Inhabilitación de interrupción del contador de
B-45 alta velocidad (HSD), uso de HSD, 7-24
HSD, Inhabilitación (HSD) de interrupción operación, 7-24
del contador de alta velocidad, 7-23 Inicio temporizado seleccionable (STS), 11-18
HSE, Habilitación de interrupción del instrucción de interrupción, 11-18
contador de alta velocidad, 7-23 instrucción de mensaje (procesador SLC 5/02),
HSL, Carga del contador de alta velocidad 8-3
(HSL), 7-18 instrucción MSG, 12-19
instrucción MSG para procesador 5/02,
I instrucción de comunicación, 8-3
Igual (EQU), 2-3 instrucción MSG para SLC 5/03 y SLC 5/04,
instrucción de comparación, 2-3 ejemplos de configuración, 8-32
indicador de archivo (#), F-19 instrucción proporciona integral derivativa
indicadores aritméticos (S:0), B-6 (PID), escala PID y E/S analógicas, uso de
la instrucción SCP, 9-15
índice de funcionabilidad del programa (S:64),
B-73 instrucción proporcional integral derivativa
(PID), 9-1
indirección en línea, 10-26 configuración del bloque de control, 9-11
el concepto PID, 9-2
I–7
Manual de referencia del juego de instrucción
I–8
Indice
I–9
Manual de referencia del juego de instrucción
I–10
Indice
I–11
Manual de referencia del juego de instrucción
módems
J controladores de línea (corto alcance),
juego de instrucciones, E-1 12-33
discado DTR, 12-32
L línea telefónica, 12-31
contestación automática, 12-31
latencia de interrupción - controladores desconexión automática, 12-32
MicroLogix 1000, usuario, C-5 líneas arrendadas, 12-32
latencia de interrupción de usuario - manual, 12-31
controladores MicroLogix 1000, C-5 radio, 12-34
vínculo por satélite, 12-35
Lectura ASCII de línea (ARL), 10-20
instrucción ASCII, 10-20 módems , línea telefónica, discado automático,
12-32
Lectura de caracteres ASCII (ARD),
instrucción ASCII, 10-17 módems con discado DTR, 12-32
Lectura de caracteres ASCII (ARD0, 10-17 módems con líneas arrendadas, 12-32
LED, 13-24 módems controladores de línea (corto
LED de SLC 5/03 y SLC 5/04, 13-24 alcance), 12-33
Líneas de comunicación ASCII (AHL), 10-14 módems de contestación automática, 12-31
instrucción ASCII, 10-14 módems de desconexión automática, 12-32
Llenar archivo (FLL), 4-17 módems de discado automático, 12-32
instrucción de manejo de datos, 4-17
módems de línea telefónica, 12-31
uso, 4-17
módems de radio, 12-34
Logaritmo a la base 10 (LOG), 3-31
instrucción matemática, 3-31 módems de vínculo por satélite, 12-35
Logaritmo natural (LN), 3-30 módems manuales, 12-31
instrucción matemática, 3-30 modo de direccionamiento de archivo de
interface común (S:2/8), B-20
M modo/estado/control de procesador (S:1/0 a
manejo de cadena ASCII (S:5/15), B-32 S:1/4), B-8
Mayor o igual que (GEQ), 2-5 modos de direccinamiento, direccionamiento
instrucción de comparación, 2-5 indirecto, E-3
Mayor que (GRT), 2-5 modos de direccionamiento, E-2, E-3
instrucción de comparación, 2-5 direccionamiento directo, E-3
direccionamiento indexado, E-3
Menor o igual que (LEQ), 2-4 direccionamiento indirecto indexado, E-3
instrucción de comparación, 2-4
módulo de memoria de carga en el bit de error
Menor que (LES), 2-4 de memoria (S:1/10), B-10
instrucción de comparación, 2-4
move and logical instructions, Move (MOV),
mnemónicos, uso, en direcciones lógicas, F-9 4-20
módem de canal 0 perdido (S:5/14), B-32
I–12
Indice
O P
O (OR), 4-24 palabra de estado global, 12-11, 12-12
actualizaciones de los bits de estado bit de habilitación de transmisión (S:34/3),
aritmético, 4-24, 4-25, 4-26 12-11
instrucción lógica, 4-24 bit de recepción de transmisión (S:34/4),
12-12
O exclusivo (XOR), 4-25
instrucción lógica, 4-25 palabra de estado global (S:99), B-74
organización del archivo parámetro de retardo de desactivación RTS,
archivos de datos, F-3 12-37
I–13
Manual de referencia del juego de instrucción
I–14
Indice
rutinas de fallo (SLC 5/02, SLC 5/03 y SLC Subrutina (SBR), 5-5
5/04), 11-2 cómo anidar archivos de subrutina, 5-5
uso, 5-7
rutinas de fallo (SLC 5/02, SLC 5/03, SLC
5/04), ejemplo de aplicación, 11-4 Subrutina de interrupción (INT), 11-41
instrucción de interrupción de E/S, 11-41
S Suspender (SUS), 5-11
instrucción de flujo de programa, 5-11
Salida de secuenciador (SQO), 6-9
instrucción específica de aplicación, 6-9
Salida inmediata con máscara (IOM), 5-13
T
instrucción de flujo de programa, 5-13 tabla de nodo activo de half duplex DF1 (S:69
a S:82), B-74
Saltar (JMP), 5-3
cómo introducir parámetros, 5-3 tamaño de NVRAM (S:65), B-73
uso, 5-3 tamaño del sistema de operación (S:66), B-73
I–15
Manual de referencia del juego de instrucción
I–16
Indice
lista, C-2
W
V Window's Terminal, software de emulación de
terminal, 12-32
valor del acumulador del contador (.ACC),
1-23
X
valor preseleccionado del contador (.PRE),
1-24 X a la potencia de Y (XPY), 3-33
instrucción matemática, 3-33
valor preseleccionador del temporizador
(.PRE), 1-15 XIC, Examine si cerrado, 1-9
velocidad en baudios (S:15H), B-50 XIO, Examine si abierto, 1-9
vínculo de múltiples conexiones, 12-30
visualización de los valores, F-22
Y
Y (AND), 4-23
instrucción lógica, 4-23
I–17
Manual de referencia del juego de instrucción
I–18
I–1
"7+3?-44 =<75)<176 )A=,) ) ;=; +41-6<-; ) 47/:): 5-27:-; /)6)6+1); ,- ;=;
16>-:;176-; 16<-/:)6,7 5):+); 4E,-: ,- 4) )=<75)<1B)+1G6 16,=;<:1)4 A +:-)6,7 );E
=6) )5841) /)5) ,- 8:7,=+<7; ,- 16<-/:)+1G6 .C+14 ;<7; 8:7,=+<7; ,1;876-6 ,-4
;787:<- ,- 8:7>--,7:-; ,- ;74=+176-; ,- ;1;<-5) ),-5C; ,- 47; :-+=:;7; ,-
<-+6747/E) )>)6B),) ,- "7+3?-44