You are on page 1of 15

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)

Objetivo de la Leccin Presentar el lenguaje de Lista de Instrucciones IL. Lista de Temas Instrucciones IL Instrucciones de Bit Instruccin AND Instruccin OR Asignacin Simple Instrucciones de Retencin Instrucciones de Palabra y Byte Instruccin AND Instruccin NAND Instruccin OR Instruccin NOR Instruccin EXOR Instruccin EXNOR Instruccin de Comparacin Instrucciones de Carga y Transferencia Instrucciones para Temporizadores Instrucciones para Contadores Instrucciones Aritmticas Instrucciones de Control de Flujo

LENGUAJE DE LISTA DE INSTRUCCIONES


El programa se realiza por medio de la escritura de instrucciones predefinidas por el lenguaje. Sintaxis del Lenguaje: SINTAXIS DE LAS INSTRUCCIONES OPERANDO ATRIBUTO FUENTE DESTINO COMENTARIO OPP OPA SRC DEST Coment

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Cada instruccin se divide en cinco campos: 1. Operando (sintaxis OPP): Indica que hace la instruccin.

2. Atributo del Operando (sintaxis OPA): Indica el formato de datos sobre el cual se opera: Bit, Byte, Word. 3. Fuente (sintaxis SRC): fuente de informacin. 4. Destino (sintaxis DEST): lugar en donde se produce el resultado de la instruccin, siempre se antecede con una coma. 5. Comentario (sintaxis coment): campo opcional que permite escribir un comentario para clarificar la instruccin, el procesador no lo tiene en cuenta; siempre se inicia con punto y coma. Instrucciones IL: A continuacin se hace una descripcin de las instrucciones IL ms comunes: Instrucciones de Bit: Este tipo de instrucciones evala los bits de la fuente consecutivamente en cada sentencia. Instruccin AND: Se realiza por medio del operando A. El complemento de la entrada (equivalente a un contacto normal cerrado) se realiza por medio del operando AN. Cada instruccin se forma con el Operando y la fuente. Ejemplo: A A AN AN I0.0 I0.1 I0.1 I0.1

; Desempea I0.0 AND I0.1 ; I0.0 AND (NOT I0.1) ; (NOT I0.0) AND (NOT I0.1)

Instruccin OR: El operando es O; la instruccin se conforma agregando la fuente; para negar la entrada se usa ON. La primera sentencia o instruccin es AND cuando se requiere realizar una funcin OR. Ejemplos: A I0.0 O I0.1

;I0.0 ; I0.0 OR

I0.1

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


A ON I0.0 I0.1 ;I0.0 ;I0.0 OR (NOT I0.1)

AN ON

I0.0 I0.1

;NOT I0.0 ;(NOT I0.0) OR

(NOT I0.1)

Asignacin Simple: El operando es igual (=);la fuente le sigue a la operando. Ejemplo: A I0.0 AN I0.1 ; I0.0 AND (NOT I0.1) A I0.2 ; I0.0 AND (NOT I0.1) AND I0.2 = Q0.0 ; Q0.0 = I0.0 AND (NOT I0.1) AND I0.2

Instrucciones de retencin de bit: Instrucciones de puesta a uno S y puesta a cero R. La sintaxis de la instruccin se compone de: operando y fuente. Ejemplo: En la tabla a continuacin, se presentan un conjunto de instrucciones IL y su equivalente FBD. Instruccin A A R 0 A O ON = 0 A AN ON A = Lenguaje FBD I0.0 I0.1 Q0. I0.0 I0.1 I0.1 Q0. I0.0 I0.1 I0.0 I0.1

IL

AND

OR

EXOR

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Q0. 0 AN ON = 0 AN AN S 0 I0.0 I0.1 Q0. I0.0 I0.1 Q0.

NAND

NOR

Instrucciones de Palabra y Byte: En estas instrucciones tanto la fuente como el destino tienen formato de byte o palabra esto se diferencia al escribir W para palabra y B para byte en el atributo del operando. El resultado de la instruccin se carga en el registro destino. Instruccin AND: El operando es A y la operacin AND se realiza bit a bit entre fuente y destino. Ejemplo: A W B,C ; AND entre registro B y registro C, formato de 16 bits. El resultado se guarda en el registro C. A B en B. 10,B ; AND entre registro B y el nmero 10, el resultado se guarda

Instruccin NAND: Realiza la operacin NAND entre la fuente y el destino el resultado se guarda en el destino. El operando es AN. Tenga en cuenta que la instruccin AN de bit es distinta a la AN de palabra: la AN de bit niega la entrada, mientras que aqu se est negando el resultado de la AND. Ejemplo: AN W guarda en C. AN W 7,C ;NAND entre el registro C y el nmero 7, el resultado se

B,C

;NAND entre los resgistro B y C. El resultado en C.

Instruccin OR: Realiza la operacin OR entre la fuente y el destino, el resultado se almacena en el registro de destino.

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Ejemplo: O W B,C.

Instruccin NOR: Efecta la NOR entre el registro fuente y el registro destino, el resultado se almacena en el registro destino. Ejemplo: ON W B,C ; C = NOT ( B OR C )

Instruccin EXOR: Realiza la EXOR entre el registro fuente y el de destino, en este ultimo es almacenado en el resultado. Ejemplo: XO W B,C ; C= B EXOR C

Instruccin EXNOR: Realiza la EXNOR entre el registro fuente y el de destino, el resultado se almacena en el registro destino. Ejemplo: XON W B,C ; C= B EXOR C

En la siguiente tabla se ejemplifican algunos casos de las instrucciones presentadas: Funcin Lgica AND NAND OR NOR EXOR EXNOR Registro B 1111 0000 1100 11 00 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 1010 0100 0101 0110 0111 0100 0101 0110 0111 Registro C 0000 0000 1111 0000 1111 0000 0000 1111 1111 1111 1111 0000 1111 1111 1111 0000 1001 1010 1011 1100 1001 1010 1011 1100 A AN O ON XO Instruccin W B, C W B, C W B, C W B, C W B, C Resultado 0000 0000 1100 0000 0101 1111 1111 0101 1111 1111 1111 1010 0000 0000 0000 0101 1101 1111 1101 1011 0010 0000 0010 0100

XON W B, C

Instruccin de Comparacin: Compara el destino con la fuente, el resultado de la comparacin se deduce de el estado de las banderas. El operando es CPLA. En realidad, la comparacin resta el operando destino menos el fuente, sin cargar el resultado. Las banderas son bits indicadores de la CPU asociados a su ALU, en la siguiente tabla se listan las banderas que se encuentran en un PLC tpico.

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Smbolo Instruccin Nombre y Funcin de la de la para consultar Bandera Bandera la Bandera Acarreo, se carga con el A CY acarreo de la ltima operacin aritmtica C realizada. AN CY CY= 1: Hubo acarreo. CY= 0: No hubo acarreo. Sobreflujo, Indica si la A O ltima operacin realizada tuvo un desbordamiento. O O= 1: Hubo desbordamiento. AN O O= 0: No hubo desbordamiento. Cero, Indica si el ltimo A Z resultado fue igual a cero. Z= 1: El resultado fue Z cero. AN Z Z= 0: El resultado fue distinto de cero. Verdadero, Almacena el resultado de la ltima instruccin de bit realizada. V V= 1: El resultado fue verdadero. V= 0: El resultado fue falso. Negativo, indica el signo A N del ltimo resultado. N= 1: El resultado es N negativo. AN N N= 0: El resultado es positivo.

Bander a CY=1

CY=0

O=1

O=0

Z=1

Z=0 V= 1

V= 0

N=1

N=0

Lo anterior quiere decir que primero se hace la comparacin y despus se consultan las banderas para determinar cual es la relacin de magnitud entre los valores comparados.

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)

A continuacin, se presentan las equivalencias en lenguaje IL de los bloques comparadores del lenguaje FBD. Relacin L L CPLA A = L L CPLA AN = L L CPLA AN AN = L L CPLA AN = L L CPLA A = L L CPLA A O = IL W W W FBD M0,A 28,B B,A Z Q0.0 M0,A 28,B B,A Z Q0.0 M0,A 28,B B,A N Z Q0.0 M0,A 28,B B,A N Q0.0 M0,A 28,B B,A N Q0.0 M0,A 28,B B,A N Z Q0.0

M0 = 28

M0 < > 28

W W W

M0 > 28

W W W

M0 >= 28

W W W

M0 < 28

W W W

MO <= 28

W W W

Instrucciones de Carga y Transferencia: Son utilizadas para copiar el contenido de la fuente en el destino. La diferencia entre Carga y Transferencia reside en que con la carga el destino es siempre un registro de la CPU y en la Transferencia el la fuente es siempre un registro de la CPU.

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Ejemplo: L W 10,B ; carga el nmero 10 en el registro B. T W B,M0 ; carga en M0 el contenido del registro B.

Instrucciones para Temporizadores: Se dividen en tres grupos: Definicin e inicio del temporizador, Reposicin y Detencin. Existe un Operando especfico de definicin e inicio para cada tipo de temporizador (Vea la tabla siguiente), por el contrario, los Operandos de Reposicin (RT) y Detencin (TH) son comunes para todos los tipos de temporizadores. TIPO DE TEMPORIZADOR Impulso Impulso Memorizado Retardo de Conexin Retardo de Conexin Memorizado Retardo de Desconexin EJEMPLO DE LA SINTAXIS DE LA INSTRUCCIN SP A, T1 SPE A, T1 SR A, T1 SRE A, T1 SF A, T1

OPERANDO SP SPE SR SRE SF

Ejemplo: Analice las instrucciones IL necesarias para desarrollar el temporizador equivalente en FBD. TIPO DE TEMPORIZAD OR

IL A I0.0 L W t#20s,A SP A,T1 A I0.1 TH T1 A I0.2 RT T1 L W T1,A A T1 = Q0.0

FBD

Impulso

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


A I0.0 L W t#20s,A SPE A,T1 A I0.1 TH T1 A I0.2 RT T1 L W T1,A A T1 = Q0.0 A I0.0 L W t#20s,A SR A,T1 A I0.1 TH T1 A I0.2 RT T1 L W T1,A A T1 = Q0.0 A I0.0 L W t#20s,A SRE A,T1 A I0.1 TH T1 A I0.2 RT T1 L W T1,A A T1 = Q0.0 A I0.0 L W t#20s,A SF A,T1 A I0.1 TH T1 A I0.2 RT T1 L W T1,A A T1

Impulso Memorizado

Retardo de Conexin

Retardo de Conexin Memorizado

Retardo de Desconexin

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


= Q0.0

10

Instrucciones para Contadores: Los operandos son: Definicin Contador (SCY). Conteo Ascendente (CU). Conteo Descendente (CD). Reponer Contador (RCY).

Ejemplo: En la tabla se muestran ejemplos de la sintaxis de las instrucciones. IL A CU A CD A L SC A RC L T L A = I0.0 C1 I0.1 C1 I0.2 100,A A,C1 I0.3 C1 C1,A A,M0 C1,A C1 Q0.0 FBD

W W W

Instrucciones Aritmticas: El resultado de las operaciones aritmtica se obtiene en formato de palabra o byte. La fuente y el destino son siempre registrados en la CPU. Las operaciones son: Suma. Suma con Acarreo. Resta. Resta con Prstamo. Multiplicacin. Divisin.

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Ejemplo: Operacin Operand o Ejemplo Descripcin

11

ADD B

B,A

Suma

ADD ADD W B,A

ADC B

C,A

Suma con Acarreo

ADC

ADC W

C,A

SUB B Resta SUB SUB W

D,A

B,A

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Operacin Operand o Ejemplo Descripcin

12

SBB B

C,A

Resta con Prstamo

SBB

SBB W

D,A

MUL B

D,A

Multiplicacin

MUL MUL W B,A

DIV

D,A

Divisin

DIV DIV W C,A

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Instrucciones de Control de Flujo: Son de salto y llamada.

13

Instrucciones de Salto: Se conforman con Operando y Destino. El Destino es el smbolo que representa el lugar donde se debe saltar, si la condicin de salto se cumple. En la tabla se relacionan las diversas instrucciones de salto y las condiciones a las que obedecen. Tipo de Salto Incondicional Si Verdadero Si Falso Si Carry Si No hay Carry Si Sobreflujo Si No hay Sobreflujo Si Negativo Si Positivo Si es cero Si es Diferente de cero Si Mayor que (aritmtica complemento a 2 con signo) Si Menor Que o Cero (aritmtica complemento a 2 con signo) Menor Que o Cero (aritmtica sin signo) Mayor Que (aritmtica sin signo) Instrucciones de Llamada: Llamadas de Mdulo: Son incondicional CM condicional CMC. El campo de destino contiene el nombre del mdulo de programa al cual se llama. A este grupo agregamos las instrucciones de fin de mdulo, nombradas tambin de retorno. Si un mdulo de programa fue llamado por otro, termina con una instruccin de fin de mdulo. Ejemplo: CM CMC EM EMC FC0 FC0 ; llama incondicionalmente al mdulo FC0 ; llama al mdulo FC0 slo si V=1 (verdadero) ; retorna de manera incondicional ; retorna si V=1 (verdadero) Operando JP JPC JPCI JPCY JPCN JPO JPON JPM JPP JPZ JPN JPAG JPMZ JPLG JPCZ Condicin de Banderas V= 1 V= 0 CY= 1 CY= 0 O= 1 O= 0 N= 1 N= 0 Z= 1 Z= 0 Z=0 y ((O=0 y N=0) o N=1)) (Z=1 o N=1) y (O=0 y (N=0 o O=1)) Z=0 y CY=0 Z=1 o CY= 1

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Ejemplo de Aplicacin: Escriba la solucin al problema del Elevador de Piezas, visto en una leccin anterior, en lenguaje IL. ;AVANCE A A A S AN A A S -S0 -S1 -S3 -Y1 -M0_0 -S2 -S3 -Y2

14

;BIT DE ESTADO A S A A R -S4 -M0_0 -S1 -S3 -M0_0

;RETROCESO A A A R A R EM -M0_0 -S2 -S3 -Y1 -S4 -Y2

CURSO DE PLC LENGUAJES DE PROGRAMACIN Lista de Instrucciones (IL)


Comprela ahora con la solucin en lenguaje de contactos:

15

Reflexiones Sobre lo Visto:


El lenguaje IL permite un mayor acceso a los recursos del sistema; basndose en l puede hacer uso de las operaciones aritmticas, lo anterior no era posible en los 3 lenguajes estudiados previamente. Aqu slo se han presentado las instrucciones IL ms importantes. Sin embargo, consideramos que forman una base slida para la comprensin del lenguaje; el estudiante podr hacer una profundizacin de conocimientos al estudiar el lenguaje para el tipo de PLC que disponga a mano.

You might also like