NOVIEMBRE DE 2007
Familias
MicroLogix 1000
MicroLogix 1200
MicroLogix 1500
SLC500
PLC5
Control Logix
I/O
10
16
25
32
88
152
156
84
94
104
960
4096
512 a 3072
128,000
digital
4,000
analgico
Memoria
1K words
Comunicacin
RS-232C
6K words
RS-232C
Modbus RTU
Slave
RS-232C
Modbus RTU Slave
RS-232C
DH-485
DH+
Ethernet
7.65K words
1K instrucciones
4K instrucciones
8K words
16K words
64K words
6K a 100K words
160K bytes
672K bytes
1M bytes
2M bytes
Remote I/O
RS-232C
DH+
ControlNet
Remote I/O
RS-232C
DH+
DeviceNet
ControlNet
Ethernet
La memoria del PLC est dividida en dos: la memoria de programa y la memoria de datos.
En la memoria de programa est almacenada la informacin del controlador, las instrucciones del
sistema y del usuario, que le indican al procesador lo que tiene que hacer. La memoria de programa
est estructurada de la siguiente manera:
Nmero
0
Tipo
Descripcin
Archivo de sistema Contiene la informacin proporcionada
por el usuario: tipo de procesador,
configuracin de I/O, nombre del
procesador y password.
1
Archivo de sistema Archivo reservado, no es accesado por
el usuario.
2
Archivo principal Contiene las operaciones lgicas de
del usuario
escalera principales del usuario.
MicroLogix 1000 -> 3-16 Archivos del usuario Como el archivo 2, contienen las
SLC500 -> 3-255
operaciones lgicas de escalera, pero
PLC5 -> 3-999
estos archivos son llamados a travs del
archivo 2 como subrutinas.
La memoria de datos contiene el estado de la informacin asociada con I/O externas y las otras
instrucciones que el usuario usa en los archivos de programa. Adems, estos archivos almacenan la
informacin concerniente a las operaciones del controlador. En la familia MicroLogix 1000
solamente existen los 8 archivos de datos (0 al 7) creados por default
Nmero
0
1
2
3
4
Identificador
O
I
S
B
T
Contador
Control
Entero
Punto flotante
3-255
Definidos
(SLC500) usuario
3-999
(PLC5)
por
el
Descripcin
Estado de las terminales de salida.
Estado de las terminales de entrada.
Operaciones del controlador
Operaciones lgicas de relevador
Acumuladores, preset y bit de estado de
temporizadores.
Acumuladores, preset y bits de estado de
contadores.
Longitud, apuntadores de posicin y bit de
estado para especficas funciones.
Valores numricos enteros (-32,768 a
32767).
Valores numricos que incluyen punto
decimal (1.1754944e-38 a 3.40282347e+38)
Archivos de datos creados por el usuario y
pueden ser bit, timers, contadores, control,
enteros y flotantes.
!
Formato:
TN:e.w/b
Formato
Significado
Tipo de archivo:
O->Salida B->Binario
R->Control A->ASCII
I->Entrada T->Timer
N->Entero ST->Cadena ASCII
S->Status
C->Contador F->Flotante PD->PID
Nmero de archivo:
0->Salida
2->Status
3 a 255->Cualquier otro tipoSLC500
1->Entrada
3 a 999->Cualquier otro tipo PLC5
Puntos delimitadores del elemento
Elemento del archivo: indica el nmero o posicin del elemento dentro
del tipo de archivo direccionado. La cantidad de elementos en un archivo
vara dependiendo del tipo de archivo y la familia de PLC.
Punto delimitador de la palabra
Nmero de palabra del elemento: es usado solamente con timers,
contadores, control, BT, PD, ST, etc.
Delimitador de bit
Nmero de bit:
0 al 7 y 10 al 17 en octal
0 al 15 en decimal
N
:
e
.
w
/
b
Ejemplos:
O: 3/15 ->Archivo de salida, slot 3, bit 15
I:2.1/13 ->Archivo de entrada, slot 2, palabra 1, bit 13
O: 5
->Archivo de salida, slot 5, palabra 0
T4:2.0/8 ->Temporizadores, archivo 4, elemento 2, palabra 0, bit 8
C5:3.1 ->Contador, archivo 5, elemento 3, palabra 1
N7:15 ->Entero, archivo 7, elemento 15.
N15:2/3 ->Entero, archivo 15, elemento 2, bit 3
"
El direccionamiento que se realiza en el archivo de datos de I/O del chasis local de un SLC500 se
caracteriza en que cada palabra de 16 bits (entrada o salida) de la imagen de memoria corresponde a
un slot o ranura del chasis.
1.5.1. Direccionamiento del archivo de datos de I/O del SLC500.
El direccionamiento para el archivo de datos de I/O del SLC500 es el mismo que el
mencionado en el tema anterior, con la diferencia que no se utiliza el nmero de archivo al que
pertenece el tipo de archivo porque las salidas siempre estn asignadas al archivo 0 y las entradas al
1; tambin en algunas ocasiones no se menciona el nmero de palabra cuando el slot contiene
nicamente una palabra.
Formato :
Formato
T
:
s
.
w
/
b
T:s.w/b
Significado
Tipo de archivo:
O->Salida
I->Entrada
Delimitador
Nmero de slot (decimal)
Delimitador
Nmero de palabra
Delimitador
Nmero de terminal (0 a 15)
5. Realiza las
comunicaciones
100 mS
4. Ejecuta Timers y
Contadores
2. Evala intrucciones
3. Escribe tarjetas de
salida
6
#
$
El RSLogix 500 es un programa de aplicacin en ambiente Windows que permite crear, monitorear
y modificar programas de PLC en lnea. Este programa es para PLCs de la marca Allen Bradley
para las familias SLC500 y MicroLogix.
2.1.1. Abrir el programa de aplicacin
Normalmente se tienen accesos directos de ambos programas en el escritorio de Windows del
programador mediante los cuales se corren estos programas, en caso contrario, pulse la siguiente
secuencia de opciones iniciando desde el men Inicio de Windows:
Start -> All Programs -> Rockwell Software -> RSLogix500 -> RSLogix 500
O en espaol
Inicio -> Todos los programs -> Rockwell Software -> RSLogix500 -> RSLogix 500
Con sto, usted abrir o correr el programa de aplicacin.
#
%&'
(
Para navegar a travs de las diferentes ventanas y barras de herrramientas en RSLogix 500 ms
facilmente, es necesario entender el contenido y la funcionalidad de cada una de ellas.
La siguiente es la ventana principal de RSLogix 500:
Arbol de proyecto. Contiene todas las carpetas y archivos del proyecto. Es posible
seleccionar cualquier icono de este arbol y dar click con el botn derecho del mouse para ver
un men que aplica solamente para el icono seleccionado. Por ejemplo, si damos click
derecho en un archivo de programa, veremos opciones para renombrar el archivo de
programa, abrirlo, ocultarlo, o mostrar propiedades del archivo de programa.
Ventana de resultados. Muestra los resultados de una bsqueda o una verificacin. Es posible
ocultar esta ventana o separarla de la ventana de aplicacin de tal manera que pueda
colocarse en cualquier parte de la pantalla.
Barra de iconos. Contiene varias funciones que pueden ser usadas repetidamente cuando se
desarrolla o prueba la lgica de un programa. Si desea saber que representa cada icono,
RSLogix lo puede mostrar. Slo hay que mover el cursor del mouse y colocarlo sobre el
icono. Una ventana flotante (ToolTip) aparecer y mostrar para que se usa ese icono.
Barra de estado. Aqui puede verse informacin del estado actual de la aplicacin o del uso de
las instrucciones.
!
Los archivos de programa contienen informacin del controlador, el programa ladder principal, y
algunas subrutinas de programa. Con los controladores SLC pueden tenerse hasta 256 archivos de
programa. Con los controladorea MicroLogix pueden tenerse hasta 16 archivos de programa.
Los archivos de datos contienen informacin del status asociada con las E/S externas y todas las
otras instrucciones que se usan en el programa principal y las subrutinas. Adems, estos archivos
almacenan informacin concerniente a la operacin del controlador.
2.3.4 Definiendo chassis y mdulos
Despus de abrir el proyecto, tenemos que definir el chasis, identificar las tarjetas de E/S que sern
usadas indicando su posicin (slot) dentro del rack del procesador, y seleccionar la fuente de
alimentacin para cada rack. Un aplicacin real podra llegar a tener hasta tres racks y muchas
tarjetas de E/S.
Este procedimiento se hace en la ventana de I/O Configuration. Acceda a esta ventana dando doble
click en el icono I/O Configuration en el rbol de preoyecto. Seleccione el rack apropiado para su
aplicacin. Posteriormente haga click en un mdulo de la lista que aparece al lado derecho de la
ventana y arrastrelo al slot donde desea que resida.
10
En la misma ventana I/O Configuration, dar click en el botn Power Supply para examinar la
carga en el rack en base a los mdulos que han sido seleccionados.
2.3.5 Agregando lgica al programa
Cuando usted abre un archivo de programa dando doble click en su icono en el rbol de proyecto, el
archivo ladder se abre en la mitad derecha de la ventana de RSLogix 500. Usualmente el programa
#2, el archivo de programa principal, se abrir cuando usted abra el proyecto. Si usted no ha iniciado
a ingresar lgica escalera, solamente aparecer el escaln (End).
D click en el escaln (End) y despus seleccione el icono New Rung de la barra de
instrucciones en la categora User. Para colocar una instruccin en un escaln, dar click en su
icono.
Puede colocar varias instrucciones en un escaln en secuencia dando click en los iconos uno despus
de otro. RSLogix 500 coloca las instrucciones de izquierda a derecha.
RSLogix 500 soporta ediciones. Esto permite que usted pueda:
Para agregar direcciones slo haga click en la instruccin y teclee la direccin en el campo vaco que
aparece arriba de la instruccin. Con RSLogix 500 tambin es posible arrastrar las direcciones desde
el archivo de tabla de datos hacia las instrucciones en la lgica escalera.
2.3.6 Agregar documentacin a las instrucciones lgicas
Usted puede usar varios mtodos para agregar smbolos y descripciones a las direcciones en la base
de datos:
11
Modifique la documentacin asignada a una direccin en el archivo de datos. Dar doble click
en el archivo de datos dentro del rbol de proyecto, y dar click en una direccin dentro de la
tabla que aparece en el archivo de datos. En el inferior del cuadro de dilogo estn los
campos donde se puede modificar la documentacin para la direccin.
Modifique la base de datos utilizando el editor de base de datos. Dar doble click en el icono
Database localizado en el rbol de proyecto.
12
Antes de iniciar con los pasos para monitorear y modificar un PLC en lnea, es necesario
conocer los protocolos de comunicacin mediante los cuales se pueden comunicar uno o ms PLCs
con una PC o dispositivo de programacin.
Allen Bradley ofrece una arquitectura de comunicacin que incluye tres niveles de redes:
Redes de informacin, tal como Ethernet que proporciona el ms alto nivel mediante el cual se
realiza el intercambio de informacin entre sistemas computacionales.
Redes de control, como ControlNet, Data Highway Plus, DH-485 DF1 los cuales permiten que
dispositivos de control inteligentes (entre PLCs y PCs) compartan informacin requerida para
supervisar, operar, programar o solucionar problemas.
Redes de dispositivos, como DeviceNet o Remote I/O, los cuales permiten intercambios de datos
a nivel de dispositivos (entre PLCs y dispositivos I/O) reduciendo el cableado.
Dispositivos tpicos
en red
Nmero mximo de
nodos
Velocidad
de
transmisin
Longitud mxima
de lnea
Procesadores con
puertos para la
comunicacin
ASCII
PLC y
dispositivo de
visualizacin o
impresin
2
DF1 (RS-232)
PLC y dispositivo de
programacin
DH-485
PCs, PLC y
dispositivos de
programacin
DH+
PCs, PLC y
dispositivos de
programacin
32
64
19.2k bit/s
19.2k bit/s
19.2k bit/s
230.4k bit/s
100 ft
100 ft
4,000 ft
Troncales
10,000 ft
Ramales
100 ft
SLC 5/04
PLC5
SLC 5/03
SLC 5/04
SLC 5/05
PLC5
DB9 en
SLC500
DB25 en
PLC5
SLC 5/03
SLC 5/04
SLC 5/05
PLC5
Micrologix 1000
(opcin)
DB9 en SLC500
Mini Din 8 pines
en MicroLogix
SLC 5/01 a
SLC 5/05
MicroLogix
1000 (opcin)
RJ-45
Mini Din 8
pines
13
14
15
Por ltimo seleccione la opcin Startup para indicarle a RSLinx cundo activar o cerrar
el driver, lo ms recomendable es sleccionarlo en On Demand para que se active cuando el
software de aplicacin (RSLogix) lo solicite.
16
3.2.2 Configuracin de driver de comunicacin para la UIC (Universal Serial Bus to DH-485
Interface Converter) 1747-UIC
Antes de usar la 1747-UIC, se debe instalar el driver de Windows para esta interfaz. Para
instalar el driver siga los siguientes pasos:
1. Si tiene la versin 2.42 de RSLinx, o superior, el driver para la 1747-UIC est incluido en el
CD de instalacin de RSLinx, en caso contrario debe descargarse el driver desde la pgina
web de Allen-Bradley (http://www.ab.com/support/products/pccards.html)
2. Conecte la 1747-UIC al puerto USB de la laptop.
3. Verifique que el led OK de la UIC se mantenga encendido (slido).
4. La ventana de Found New Hardware (Nuevo Hardware Encontrado) mostrar AllenBradley 1747-UIC
17
Ahora ya puede configurar el driver en RSLinx. Para lo cual hay que entrar a la pantalla de
configuracin de drivers mediante el men principal Communications -> Configure Drivers...
De la lista seleccione el driver RS-232 DF1 devices y posteriormente presione el botn
Add New.... Al agregarlo a la lista le solicitar un nombre para identificar el driver.
En la ventana de configuracin ingrese los parmetros de la siguiente manera:
Comm Port, seleccione el mismo puerto que fue asignado por Windows al dispositivo, el cual
puede ver en la ventana de Devices Manager (Administrador de dispositivos). Para el
ejemplo que estamos manejando asignaremos el puerto COM3, tal como se vio en la
instalacin del driver.
Device, seleccione 1770-KF3/1747-KE, que es el asociado a la 1747-UIC
Error Checking, defnalo como CRC (por default viene como BCC).
Baud Rate, la 1747-UIC opera a 19.2 Kbps solamente, defina este parmetro a 19200
Station Number, ste se modifica cuando tenemos una red DH-485 y es el nmero de nodo
del dispositivo dentro de la red. Asigne un nmero de nodo el cual no se est utilizando por
otro dispositivo. No podr ponerse en lnea si asigna un nmero que ya se est utilizando. El
valor de 0 es tpicamente reservado para RSLinx, pero cualquier valor de 0 a 31 es vlido.
Importante: No presione el botn AutoConfigure
19
Presione OK
Por ltimo, al igual que en la configuracin para el protocolo DF1 (RS-232), seleccione la opcin
Startup en On Demand.
La 1747-UIC aparecer en la red con el nodo que se le asig, en este caso 0, como lo muestra la
siguiente figura:
20
3.2.3. Configuracin del driver para el protocolo DH+ y DH-485 usando la tarjeta 1784-PCMK
Este driver se configura cuando se est utilizando la tarjeta 1784-PCMK DH+ DH-485 RIO
Para lo cual primero hay que instalar el driver para que Windows pueda reconocer la tarjeta,
para lo cual siga los siguientes pasos:
1. Sujete la tarjeta PCMK por los bordes con el logotipo PCMK hacia arriba y el conector de 68
pines de frente a la ranura PCMCIA.
2. Inserte la tarjeta en la ranura PCMCIA y deslicela hasta que quede firmemente colocada,
algunas laptops tienen un expulsor que salta cuando la tarjeta ha quedado bien colocada.
21
3. Despus de insertar la tarjeta el sistema la detectar e iniciar el asistente para agregar Nuevo
Hardware.
22
23
24
25
26
)
Las ediciones en lnea permiten monitorear y corregir el programa del PLC cuando la
terminal de programacin est conectada a un procesador SLC 5/03, 5/04 y 5/05. Slo un dispositivo
de programacin a la vez puede realizar modificaciones en lnea.
Las funciones de edicin en lnea consisten en insertar, reemplazar y borrar instrucciones
mientras se est en lnea con el procesador. Tambin se puede documentar el programa cuando se
est editando en lnea.
3.3.1. Carga del archivo de programa
Verifique que el driver de comunicacin del RSLinx est activado y configurado
correctamente conforme a la interfaces de comunicacin (ver tema 3.2) y corra el programa de
aplicacin RSLogix 500.
Del programa de aplicacin seleccione del men principal la opcin Comms -> System
Comms... y aparecer una pantalla de Communications perteneciente al RSLinx donde se
despliegan los driver de comunicacin y los controladores que estn en lnea.
Por ltimo seleccione el controlador deseado y pulse la opcin Upload para transferir el
archivo del PLC a la memoria de la laptop. Despus de seleccionar Upload, indique la ruta o
direccin donde desea que se almacene el programa.
3.3.2. Descarga del archivo de programa
Siga los mismos pasos descritos para la carga del programa con la diferencia que primero hay
que abrir el programa a descargar y al abrir la pantalla de Communication y seleccionar el
controlador, pulse la opcin Download.
3.3.3. Monitoreo del archivo de programa en lnea
Siga los mismos pasos descritos para la descarga del programa con la diferencia que al abrir
la pantalla de Communication y seleccionar el controlador, pulse la opcin Online..
3.3.4. Modificacin del archivo de programa en lnea
Siga los mismos pasos descritos para el monitoreo del programa en lnea y una vez
visualizado en lnea el programa del controlador utilice las opciones que aparecen en el men Edit
o sus iconos :
1.
2.
3.
4.
5.
6.
7.
27
*
!
Las instrucciones tipo relevador monitorean y controlan el estado de los bits de la tabla de
datos, las principales instrucciones son: XIC, XOC, OTE, OTL, OTU, OSR.
4.1.1. Examine if closed (XIC)
Use esta instruccin de entrada en su programa escalera para determinar si un bit est
encendido (1). Cuando la instruccin es ejecutada, si el bit direccionado est encendido (1), entonces
la instruccin es evaluada como verdadera; si el bit direccionado est apagado (0), entonces la
instruccin es evaluada como falsa.
Smbolo
Tabla de verdad:
Ejemplos:
Resultado de la instruccin
Falso
Verdadero
Programacin
I:1
4
B3:0
Interpretacin
Examina si el bit 4, perteneciente al slot 1, del archivo
de entrada est en 1.
Examina si el bit 15, de la palabra 0, del archivo 3
binario est en 1.
15
T4:5
DN
28
Tabla de verdad:
Ejemplos:
Programacin
O:3
10
S:1
Resultado de la instruccin
Verdadero
Falso
Interpretacin
Examina si el bit 10, perteneciente al slot 3, del
archivo de salida est en 0.
Examina si el bit 15, del elemento 1, del archivo
status est en 0.
15
C5:8
DN
Nota: la instruccin es reseteada cuando retorna a modo RUN o modo prueba o la alimentacin es
restablecida. Tambin cuando est dentro de una zona inactiva o falsa de una instruccin Master
Control Reset (MCR). Otro punto importante a considerar es que un bit que est dentro una
subrutina usando la instruccin OTE permanecer encendido hasta que la subrutina es evaluada o
escaneada de nuevo.
Ejemplos:
Programacin
O:1
7
B16:10
13
Interpretacin
Enciende el bit 7, perteneciente al slot 1, del archivo
de salida si las condiciones que le preceden son
verdaderas.
Enciende el bit 13, del elemento 10, del archivo 16
binario si las condiciones que le preceden son
verdaderas.
29
Nota: si una condicin de falla ocurre, las salidas fsicas son apagadas. Una vez que las condiciones
de falla son borradas, el controlador retoma la operacin con el estado determinado por su tabla de
datos.
Smbolo
Ejemplos:
Programacin
O:1
7
Interpretacin
Enciende el bit 7, perteneciente al slot 1, del archivo
de salida si las condiciones que le preceden son
verdaderas y lo mantendr encendido, an cuando las
condiciones del escaln vayan a falso.
Ejemplos:
Programacin
O:1
7
Interpretacin
Apaga el bit 7, perteneciente al slot 1, del archivo de
salida si las condiciones que le preceden son
verdaderas y lo mantendr apagado, an cuando las
condiciones del escaln vayan a falso.
Smbolo
30
Programacin
B3:4
B3:4
7
Interpretacin
Cuando las condiciones que preceden a la instruccin
OSR realicen la transicin de falso a verdadero, el bit
8 del elemento 4, archivo 3 binario permanecer
encendido durante un scan.
Bits direccionables
EN = bit 15, Enable
TT = bit 14, Time timing
DN = bit 13, Done
Palabras direccionables
PRE, Word 1, valor preseleccionado
ACC, Word 2, valor acumulado
31
15 14 13 12 11 10 09 08 07 06 05 04 03 02 01 00
Palabra 0 CU CD DN OV UN UA
Uso interno
Palabra 1 Valor preseleccionado
Palabra 2 Valor acumulado
Bits direccionables
Palabras direccionables
Valor de acumulador (.ACC): nmero de transiciones de falso a verdadero que han ocurrido desde el
ltimo restablecimiento del contador. Tiene un valor de -32,768 a 32,767.
Valor preseleccionado (.PRE): especifica el valor que el contador debe de alcanzar antes de que el
controlador encienda el bit Done (efectuado). Cuando el valor acumulado sea igual o mayor al valor
preseleccionado, el bit Done encender. Tiene un valor de -32,768 a 32,767.
4.2.1. Temporizador a la conexin (TON)
Use la instruccin TON para activar o desactivar una salida despus de que el temporizador
haya estado activado durante un intervalo de tiempo preseleccionado. La instruccin TON comienza
a contar los intervalos de la base de tiempo cuando las condiciones de rengln se hacen verdaderas.
Con tal que las condiciones de rengln permanezcan verdaderas, el temporizador ajusta su valor
acumulado (ACC) durante cada evaluacin hasta alcanzar el valor predeterminado (PRE). Cuando
las condiciones de rengln se hacen falsas, el valor acumulado se reinicializa sin importar si el
temporizador ha sobrepasado el lmite de tiempo.
Programacin
Interpretacin
Temporizador a la conexin 0
direccionado al archivo 4, con
un tiempo de activacin de 1.2
segundos (time base x preset).
32
Enciende cuando...
El valor acumulado es igual o
mayor que el valor preseleccionado
Las condiciones del escaln son
verdaderas y el valor del
acumulado es menor que el valor
preseleccionado
Las condiciones del escaln son
verdaderas
33
Programacin
Interpretacin
Temporizador a la desconexin 1
direccionado al archivo 4, con un
tiempo de desactivacin de 1.2
segundos (time base x preset).
Enciende cuando...
Permanece encendido hasta...
Las condiciones del escaln son Las condiciones del escaln se hacen
verdaderas.
falsas y el valor acumulado es igual o
mayor que el valor preseleccionado.
Las condiciones del escaln son Las condiciones del escaln se hacen
falsas y el valor del acumulado es verdaderas o el bit DN enciende.
menor
que
el
valor
preseleccionado.
Las condiciones del escaln son Las condiciones del escaln se hacen
verdaderas.
falsas.
34
Interpretacin
Temporizador a la retentivo 2
direccionado al archivo 4, con un
tiempo de activacin de 1.2 segundos
(time base x preset).
Enciende cuando...
El valor acumulado es igual o
mayor que el valor preseleccionado
Las condiciones del escaln son
verdaderas y el valor del
acumulado es menor que el valor
preseleccionado
Las condiciones del escaln son
verdaderas
35
36
Bit
Overflow
(12)
Enciende cuando...
El valor acumulado cambia de 32,767 a 32,768 y continua contando desde ese
punto.
DN
(13)
CU
(15)
Interpretacin
Contador regresivo 1 direccionado al
archivo 5, con activacin a los 120
transiciones de falso a verdadero en
su entrada.
37
Enciende cuando...
El valor acumulado cambia de 32,767 a 32,768 y continua contando desde ese
punto.
DN
(13)
CD
(14)
Contador
Control
NOTA: Debido a que la instruccin RES restablece el valor acumulado (ACC), el bit DN, y el bit
TT, no debe usarse para restablecer un TON.
38
Las instrucciones de comparacin son instrucciones de entrada que se usan para probar
parejas de valores para establecer condiciones de la continuidad lgica de un rengln. Las
principales son: EQU, NEQ, LES, LEQ, GRT, GEQ, MEQ, LIM.
Smbolo
Smbolo
39
La fuente A debe ser una direccin. La fuente B puede ser una constante de programa o una
direccin. Los enteros negativos se almacenan de forma complementaria de dos.
Smbolo
Smbolo
Smbolo
40
La fuente A debe ser una direccin. La fuente B puede ser un constante de programa o una
direccin. Los enteros negativos se almacenan de forma complementaria de dos.
Smbolo
Memoria
Resultado
La evaluacin de la
instruccin resulta falso.
41
Smbolo
Si el lmite bajo tiene un valor igual o menor que el lmite alto, la instruccin es verdadera
cuando el valor de prueba se encuentra entre los lmites o cuando es igual a cualquiera de los lmites.
Si el valor de prueba se encuentra fuera de los lmites, la instruccin es falsa.
$
Use estas instrucciones para manejar datos en el controlador y realizar operaciones lgicas.
Cmo introducir parmetros
Fuente es la direccin del valor en que la operacin de mover o lgica se debe efectuar. La
fuente puede ser una direccin de palabra o una constante de programa, a menos que se describa lo
contrario. Cuando usa un procesador SLC 5/03 OS301, OS302 SLC 5/04 OS400, OS401, se
soportan los valores de punto (coma) flotante y cadena.
Destino es la direccin de resultado de una operacin de mover o lgica. Debe ser una
direccin de palabra.
42
Bit
Acarreo (C)
Overflow (V)
Cero (Z)
S:0/3
Signo (S)
El controlador:
Se borra (0).
Se borra (0).
Se pone en 1 si el resultado es cero, en caso contrario se
borra.
Se pone en 1 si el resultado es negativo (bit ms significante
en 1); en caso contrario se borra.
4.4.1.Y (AND)
Instruccin lgica de salida, donde el valor en la fuente A recibe la instruccin AND bit por
bit con el valor en la fuente B y luego se almacena en el destino. Las fuentes A y B pueden ser una
direccin de palabra o una constante; sin embargo, ambas fuentes no pueden ser una constante. El
destino debe ser una direccin de palabra.
Tabla de verdad
A
0
B
0
Destino
0
0
1
1
1
0
1
0
0
1
Smbolo
4.4.2. O (OR)
Instruccin lgica de salida, donde el valor en la fuente A recibe la instruccin O bit por bit
con el valor en la fuente B y luego se almacena en el destino. Las fuentes A y B pueden ser una
direccin de palabra o una constante; sin embargo, ambas fuentes no pueden ser una constante. El
destino debe ser una direccin de palabra.
43
A
0
0
Tabla de verdad
B
Destino
0
0
1
1
Destino = A o B
Smbolo
Tabla de verdad
B
Destino
0
0
1
1
0
1
1
0
Destino = A Xo B
Smbolo
44
4.4.4. No (NOT)
Instruccin lgica de salida, donde el valor de fuente recibe la instruccin NOT bit por bit y
luego se almacena en el destino (complemento de uno). La fuente y el destino deben ser direcciones
de palabra.
Tabla de verdad
A
Destino
0
1
1
0
Destino = NOT A
Smbolo
Smbolo
45
Smbolo
Smbolo
Ejemplo:
46
Enmascare los datos borrando los bits en la mscara; transfiera los datos estableciendo los
bits en la mscara a uno. Los bits de la mscara pueden ser fijos por un valor constante o los puede
variar asignndoles una direccin directa a la mscara. Los bits en el destino que corresponden a
ceros en la mscara no se modifican.
4.4.8 Copiar el archivo (COP)
Esta instruccin copia bloques de datos de un lugar a otro. No usa bits de estado. Si usted
necesita un bit de habilitacin, programe una instruccin de salida (OTE) en paralelo usando un bit
interno como la direccin de salida. La ilustracin siguiente muestra cmo se manejan los datos de
instruccin de archivo.
Smbolo
47
Smbolo
48
*
La mayor parte de las instrucciones toman dos valores de entrada, realizan la funcin
matemtica y colocan el resultado en un lugar de memoria asignado. Las instrucciones ms usadas
son: ADD, SUB, MUL, DIV, DDV, CLR.
Cmo introducir parmetros
Fuente es la(s) direccin(es) del(los) valor(es) en que se realiza una operacin matemtica,
lgica o de movimiento. sto puede ser direcciones de palabra o constantes de programa.
Destino es la direccin del resultado de la operacin. Los enteros con signo se almacenan
de forma complementaria de dos y se aplican a los parmetros de fuente y destino.
Al usar un procesador SLC 5/03 OS301, OS302 un procesador SLC 5/04 OS400, OS401,
se pueden usar los valores del punto (coma) flotante y de cadena (especificados al nivel de palabra).
Refirase al apndice E para obtener tipos adicionales de direccionamiento vlido.
Bit de interrupcin por overflow, S:5/0
El bit de error menor (S:5/0) se establece a la deteccin de un overflow matemtico o
divisin entre 0. Si este bit se establece a la ejecucin de una instruccin END o una instruccin de
fin temporal (TND) o una regeneracin de E/S (REF), se establece el cdigo 0020 de error mayor
recuperable.
En las aplicaciones donde ocurre un overflow matemtico o una divisin entre 0, puede
evitar un fallo CPU usando la instruccin de desenclavamiento (OTU) con la direccin S:5/0 en su
programa. El rengln se debe encontrar entre el punto de overflow y la instruccin END, TND o
REF.
Cambios del registro matemtico S:13 y S:14
La palabra de estado S:13 contiene la palabra de mnimo significado de los valores de 32 bits
de las instrucciones MUL y DDV. Contiene el resto para las instrucciones DIV y DDV.
La palabra S:14 contiene la palabra de mximo significado para los valores de 32 bits de las
instrucciones MUL y DDV. Contiene el cociente no redondeado para las instrucciones DIV y DDV.
49
Smbolo
Bit
Acarreo (C)
S:0/1
Overflow (V)
S:0/2
Cero (Z)
S:0/3
Signo (S)
El controlador:
Se pone en 1 si el acarreo es detectado, en caso
contrario se borra.
Se pone en 1 si el overflow es detectado en el
destino, en caso contrario se borra. Durante un
overflow, el indicador de error menor se pone en
1.
Se pone en 1 si el resultado es cero, en caso
contrario se borra.
Se pone en 1 si el resultado es negativo, en caso
contrario se borra.
Smbolo
50
Bit
Acarreo (C)
S:0/1
Overflow (V)
S:0/2
Cero (Z)
S:0/3
Signo (S)
El controlador:
Se pone en 1si el acarreo es detectado, en caso
contrario se borra.
Se pone en 1 si el underflow es detectado en el
destino, en caso contrario se borra. Durante un
underflow, el indicador de error menor se pone en
1.
Se pone en 1si el resultado es cero, en caso
contrario se borra.
Se pone en 1 si el resultado es negativo, en caso
contrario se borra.
Smbolo
51
Smbolo
52
Smbolo
Bit
Acarreo (C)
Overflow (V)
S:0/2
Cero (Z)
S:0/3
Signo (S)
El controlador:
Siempre se borra.
Se pone en 1 si la divisin es entre 0 el resultado
es mayor de 32,767 o menor de -32,768, en caso
contrario se borra. Durante un overflow, el
indicador de error menor se pone en 1. El valor de
32,767 se coloca en el destino.
Se pone en 1si el resultado es cero, en caso
contrario se borra.
Se pone en 1 si el resultado es negativo, en caso
contrario se borra. No definido si el overflow est
en 1.
53
Smbolo
Bit
Acarreo (C)
Overflow (V)
Cero (Z)
Signo (S)
El controlador:
Siempre se borra.
Siempre se borra.
Siempre se pone en 1.
Siempre se borra.
+
Use estas instrucciones para controlar la secuencia en que se ejecuta su programa. Las
instrucciones de control le permiten cambiar el orden en que el procesador realiza un scan de un
programa de escalera. Estas instrucciones tpicamente se usan para minimizar el tiempo de scan,
crear un programa ms eficiente y para localizar y corregir fallos de un programa de escalera.
4.6.1. Saltar a subrutinas (JSR), subrutina (SBR) y retornar (RET)
Las instrucciones JSR, SBR y RET se usan para indicar al controlador que ejecute un archivo
de subrutina separado dentro del programa de escalera y retornar a la instruccin siguiente a la
instruccin JSR.
Use una subrutina para almacenar secciones repetidas de lgica de programa que se debe
ejecutar desde varios puntos dentro de su programa de aplicacin. Una subrutina ahorra memoria
porque se programa slo una vez.
Cmo anidar archivos de subrutina
El anidar subrutinas le permite dirigir el flujo de programa desde el programa principal hasta
una subrutina y luego a otra subrutina. Las reglas siguientes se aplican al anidar subrutinas:
Puede anidar hasta ocho niveles de subrutinas. Si usa una subrutina STI, una subrutina de
interrupcin 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.
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 interrupcin
54
provocada por evento de E/S, una rutina de fallo del usuario o una subrutina de interrupcin HSC,
puede anidar subrutinas hasta tres niveles desde cada subrutina.
Ocurrir un error si se llaman ms niveles de subrutinas que los permitidos (overflow de pila
de subrutina) o si se ejecutan ms retornos que niveles de llamada existentes (underflow de pila de
subrutina).
Uso de JSR
Cuando la instruccin JSR se ejecuta, el controlador salta a la instruccin de subrutina (SBR)
al inicio del archivo de subrutina destino y reanuda la ejecucin desde aquel punto. No puede saltar
en una parte de una subrutina con excepcin de la primera instruccin en ese archivo.
Debe programar cada subrutina en su propio archivo de programa asignando un nmero de
archivo nico:
3255 para los procesadores SLC
415 para los controladores MicroLogix 1000
Smbolo
Uso de SBR
La subrutina de destino se identifica por el nmero de archivo que usted introdujo en la
instruccin JSR. Esta instruccin sirve como etiqueta o identificador de un archivo de programa
designado como un archivo de subrutina normal.
Esta instruccin no tiene bits de control. Siempre se evala como verdadera. La instruccin
se debe programar como la primera instruccin en el primer rengln de una subrutina. El uso de esta
instruccin es opcional; sin embargo, se recomienda su uso para obtener mayor claridad.
55
Smbolo
Uso de RET
Esta instruccin de salida indica el fin de ejecucin de subrutina o el fin del archivo de
subrutina. Causa que el controlador reanude la ejecucin en la instruccin siguiente a la instruccin
JSR. Si se involucra una secuencia de subrutinas anidadas, la instruccin causa que el procesador
retorne la ejecucin de programa a la subrutina anterior.
El rengln que contiene la instruccin RET puede ser condicional si este rengln precede el
final de la subrutina. De esta manera el controlador elimina el resto de una subrutina slo si su
condicin de rengln es verdadera.
Sin instruccin RET, la instruccin END (siempre presente en la subrutina) retorna
automticamente la ejecucin de programa a la instruccin siguiente a la instruccin JSR en el
archivo de escalera que llama.
Smbolo
Uso de LBL
Esta instruccin de entrada es el blanco de las instrucciones JMP que tienen el mismo
nmero de etiqueta. Debe programar esta instruccin como la primera instruccin de un rengln.
Esta instruccin no tiene bits de control. Puede programar saltos mltiples a la misma etiqueta
asignando el mismo nmero de etiqueta a instrucciones JMP mltiples. Sin embargo, los nmeros de
etiqueta deben ser nicos.
56
Nota: No salte (JMP) en una zona MCR. Las instrucciones programadas dentro de la zona MCR a
partir de la instruccin LBL hasta la instruccin END MCR siempre sern evaluadas como si la
zona MCR fuera verdadera, sin importar el estado verdadero de la instruccin Start MCR.
Smbolo
El controlador:
Ejecuta los renglones en la zona MCR segn la
condicin de entrada de cada rengln (como si la
zona no existiera).
Borra todas las instrucciones de salida no
retentivas en la zona MCR pese a las condiones de
entrada de cada rengln.
Las zonas MCR le permiten habilitar o inhabilitar segmentos de su programa; por ejemplo,
las aplicaciones con mltiples secuencias para una sola mquina.
Cuando programe las instrucciones MCR, observe lo siguiente:
Debe terminar la zona con una instruccin MCR no condicional.
No puede anidar una zona MCR dentro de otra.
No salte a una zona MCR. Si la zona es falsa, el saltar a ella activa la zona.
Siempre coloque la instruccin MCR como la ltima instruccin en un rengln
Smbolo
Notas: No salte (JMP) a una zona MCR. Las instrucciones programadas dentro de la zona MCR, que
comienzan con una instruccin LBL y terminan con la instruccin END MCR, siempre sern
evaluadas como si la zona MCR fuera verdadera, sin importar el estado verdadero de la instruccin
Start MCR. Si la zona es falsa, el saltar a ella activa la zona desde la LBL hasta el final de la zona.
Si inicia instrucciones tales como temporizadores o contadores en una zona MCR, la
operacin de instruccin se detiene cuando la zona se inhabilita. Vuelva a programar operaciones
crticas fuera de la zona si fuese necesario. El temporizador TOF se activar (cuando se coloque)
dentro de una zona MCR falsa.
57
,
Son instrucciones de salida complejas que permiten el desplazamiento de bits a los largo de
un campo de memoria. Estas funciones son: BSL y BSR.
Cmo introducir los parmetros
Introduzca los parmetros siguientes al programar estas instrucciones:
Archivo es la direccin del fichero de bit que desea manejar. Debe usar el indicador de
archivo (#) en la direccin de fichero de bit.
Control es el elemento de control que almacena el byte de estado de la instruccin, el
tamao del fichero (en nmero de bits). Note que la direccin de control no se debe usar para otras
instrucciones.
El elemento de control se muestra abajo.
Los bits de estado del elemento de control se pueden direccionar mnemnicamente. Entre
stos se incluyen:
El bit de descarga UL (bit 10) almacena el estado del bit salido del fichero cada vez que la
instruccin se habilita.
El bit de error ER (bit 11), cuando se establece, indica que la instruccin ha detectado un
error tal como la introduccin de un nmero negativo para la longitud o posicin. Evite usar el bit de
salida cuando este bit est establecido.
El bit de efectuado DN (bit 13), cuando se establece, indica que el fichero de bit se ha
desplazado una posicin.
El bit de habilitacin EN (bit 15) est establecido en una transicin de falso a verdadero del
rengln e indica que la instruccin est habilitada.
Cuando el registro se desplaza y las condiciones de entrada se hacen falsas, los bits de
habilitacin, efectuado y error se restablecen.
Bit de direccin es la direccin del bit de fuente que la instruccin inserta en la primera
(ms baja) posicin de bit (BSL) o en la ltima (ms alta) posicin de bit (BSR).
Longitud (tamao del arreglo de bit) es el nmero de bits en el fichero de bit, hasta 2048
bits. Un valor de longitud de 0 causa que el bit de entrada se transfiera al bit UL.
58
Un valor de longitud que indica ms all del fin del archivo programado causa la ocurrencia
de un error mayor de tiempo de ejecucin. Si modifica un valor de longitud con su programa de
escalera, asegrese que el valor modificado sea vlido.
Smbolo
Si desea desplazar ms de un bit por scan, debe crear un lazo en la aplicacin usando las
instrucciones JMP, LBL y CTU
59
Smbolo
Si desea desplazar ms de un bit por scan, debe crear un lazo en la aplicacin usando las
instrucciones JMP, LBL y CTU.
60