Marcando la diferencia

EJEMPLO DE AUTOMATIZACION POR PLC MEDIANTE LISTA DE INSTRUCCIONES


ATC AROUND THE WORLD

Estimados seguidores de nuestra página, en este post. les incluimos un ejemplo utilizando listas de instrucciones para programar un controlador lógico programable. 

El bloque principal inicia con el bloque OB1.  Seguidamente se incluye breve explicación referencial de las instrucciones AWL.  Actualmente la tendencia es utilizar diagramas estándares los más compatibles con los diferentes tipos y marcas de controladores.  Como así de lograr facilidad de entendimiento y estandarización.  Los Diagramas LADDER son de predominancia extendida.  Lo que debe lograrse es sobretodo compatibilidad entre KOP (LADDER), AWL y FUP(bloques de funciones), siguiendo las denominaciones de un fabricante en particular.

Como les mencioné la tendencia es utilizar LADDER, resulta principalmente que se pueden especializar utilizando AWL, pero se pierde en portabilidad a otros tipos de diagramas, por lo tanto la tendencia y recomendaciòn es utilizar LADDER como estandar, y si se usan otras formas cuidar la compatibilidad con LADDER y los Bloques  de Funciones.

Aqui se muestra el ejemplo en formato de lista de instrucciones, estos se parecen más a los de  nemotecnica utilizadas en los lenguajes ensambladores y sus derivados utilizados para programación en electrónica digital.

    OB1

    : SPA PB10 ‘movimiento de cajas

    : SPA PB20 ‘control alarmas

    : BE           

Movimiento de Cajas

    : U   E0.0    ‘ Inicio ciclo

    : L   KZ 10   ‘ Cargar en akku 10 

    : S   Z1      ‘ Asignar 10 en Z1 

    : S   Z2      ‘ Asignar 10 en Z2

    : U   E0.1  ‘ paro ciclo

    : R   Z1    ‘ poner a 0 Z1

    : R   Z2    ‘ Poner a 0 Z2

    : U   E0.3  ‘ prog memoria cont K1

    : U   Z2    ‘ es <> 0 Z2

    : S   M1.0  ‘ activa M1.0

    : U   E0.5  ‘ es activo E0.5

    : R   M1.0  ‘ Desactiva M1.0

    : U   M1.0  ‘ activación cont K1

    : UN  E1.2  ‘ Sino activ. E1.2

    : =   A2.0  ‘ Activa Salida A2.0

    : U   E0.5 ‘ prog memoria cont K2

    : U   Z1   ‘ Z1 <> 0

    : S   M1.2 ‘ pone a 0 M1.2

    : U   E1.1

    : R   M1.2

    : U   M1.2  ‘ activación cont K2

    : UN  E1.3  ‘ Sino activo E1.3

    : =   A2.1  ‘ Activa la Sal. A2.1

    : U   E0.5  ‘ prog memoria cont K3

    : UN  Z1    ‘ Z1 =  0

    : U   Z2    ‘ Z2 <> 0 

    : S   M1.1  ‘ Poner Activ. M1.1

    : U   E1.0  ‘ Activo E1.0

    : R   M1.1  ‘ Poner desacti M1.1

    : U   M1.1  ‘ activación cont K3

    : UN  E1.3  ‘

    : =   A2.2  ‘

    : U   E0.7  ‘decremento contadores

    : ZR  Z1    ‘Decrementar Z1

    : U   E0.6  ‘ si E0.6

    : ZR  Z2    ‘Decrementar Z2

    : BE

Control Alarmas

    : U   T0 ‘gen OndaCuad p/parpadeo

    : L   KT 50.0 ‘cargar akkus 50.0

    : SV  T1  ‘ impu. Prolong. En T1

    : UN  T0  ‘ sino T0

    : L   KT 100.0 ‘cargar akkus 100.0

    : SA  T0  ‘ retras a conex En T1

    : U   E0.2 ‘ Si E0.2

    : R   M2.0 ‘ reset M2.0

    : R   M2.1 ‘ Reset M2.1

    : R   M2.2 ‘ Reset M2.2

    : U   E1.2 ‘ prog mem alarmas

    : S   M2.0 ‘ activar M2.0

    : U   E1.3 ‘ si E1.3

    : S   M2.1 ‘ Set M2.0

    : UN  E1.5 ‘ Sino E1.5

    : S   M2.2 ‘ Set M2.2

    : O   E1.2 ‘ activación luz LF1

    : O   T1   ‘ si T1

    : U   M2.0 ‘ Si M2.0

    : =   A2.3 ‘ Activar A2.3

    : O   E1.3 ‘ activación luz LF2

    : O   T1   ‘ O T1

    : U   M2.1 ‘ Y M2.1

    : =   A2.4 ‘ Activar A2.4

    : ON  E1.5 ‘ acti luz LR1

    : O   T1   ‘ o T1

    : U   M2.2 ‘ Y M2.2

    : =   A2.5 ‘ Activar Sal A2.5

    : ON  E1.5  ‘ activación sirena

    : O   E1.2  ‘ O Entrada

    : O   E1.3  ‘ O Entrada

    : UN  M0.3  ‘ No M0.3

    : =   A2.6  ‘ Activar Sal

    : U   E1.4  ‘ Y

    : S   M0.3  ‘ Set

    : U   E1.5  ‘ Y

    : UN  E1.2  ‘ No Y

    : UN  E1.3  ‘ No Y

    : R   M0.3  ‘ Reset

    : BE

 

Operación AWL

Operandos admitidos

Descripción
Operaciones lógicas
U E, A, M, T, Z Combinación AND o test sobre el estado “1”
UN E, A, M, T, Z Combinación AND o test sobre el estado “0”
O E, A, M, T, Z Combinación OR o test sobre el estado “1”
ON E, A, M, T, Z Combinación OR o test sobre el estado “0”
O   Combinación OR de funciones AND
U(   Combinación AND de expresiones entre paréntesis
O(   Combinación OR de expresiones entre paréntesis
)   Fin de una expresión entre paréntesis
Operaciones de memorización
S E, A, M Activación del operando sobre RLC=1
R E, A, M Desactivación del operando sobre RLC=1
= E, A, M Asignación del operando al valor de RLC
Operaciones de carga
L EB Carga de un byte del IPI en ACCU1
L AB Carga de un byte del IPU en ACCU1
L EW Carga de una word del IPI en ACCU1
L AW Carga de una word del IPU en ACCU1
L MB Carga de un merker byte en ACCU1
L MW Carga de un merker byte en ACCU1
L DL Carga de una palabra de datos (byte de izquierda) del bloque actual en ACCU1
L DR Carga de una palabra de datos (byte de derecha) del bloque actual en ACCU1
L DW Carga de una palabra de datos del bloque actual en ACCU1
L KB Carga de una constante de byte en ACCU1
L KF Carga de una constante en coma fija en ACCU1
L KH Carga de una constante hexadecimal en ACCU1
L KM Carga de una constante binaria en ACCU1
L KY Carga de una constante de doble byte en ACCU1
L KT Carga de una constante de tiempo en ACCU1
L KZ Carga de una constante de conteo en ACCU1
L T,Z Carga de un valor de tiempo o de conteo en ACCU1
LC T,Z Carga de un valor de tiempo o de conteo, codificado BCD, en ACCU1
Operaciones de transferencia
T EB Transferencia del contenido de ACCU1 en un byte del IPI
T AB Transferencia del contenido de ACCU1 en un byte del IPU
T EW Transferencia del contenido de ACCU1 en una word del IPI
T AW Transferencia del contenido de ACCU1 en una word del IPU
T MB Transferencia del contenido de ACCU1 en un merker byte
T MW Transferencia del contenido de ACCU1 en una merker word
T DL Transferencia del contenido de ACCU1 en una palabra de datos (byte de izquierda)
T DR Transferencia del contenido de ACCU1 en una palabra de datos (byte de derecha)
T DW Transferencia del contenido de ACCU1 en una palabra de datos
Operaciones de temporización
SI T Activación de un temporizador a impulso
SV T Activación de un temporizador a impulso prolongado
SE T Activación de un temporizador con retraso a la conexión
SS T Activación de un temporizador con retraso a la conexión con memoria
SA T Activación de un temporizador con retraso a la desconexión
R T Reset de un temporizador
Operaciones de conteo
ZV Z Incremento del conteo
ZR Z Disminución del conteo
S Z Programación de un contador
R Z Reset de un contador
Operaciones aritméticas
+F   Adición de dos números en coma fija (ACCU2 + ACCU1)
-F   Sustracción de dos números en coma fija (ACCU2 – ACCU1)
Operaciones de comparación
!=F   Comparación de igualdad de dos números en coma fija (ACCU2 = ACCU1)
><F   Comparación de desigualdad de dos números en coma fija (ACCU2 < ACCU1)
>F   Comparación de superioridad de dos números en coma fija (ACCU2 >ACCU1)
>=F   Comparación de superioridad o igualdad de dos números en coma fija (ACCU2  ACCU1)
<F   Comparación de inferioridad de dos números en coma fija (ACCU2 < ACCU1)
<=F   Comparación de inferioridad o igualdad de dos números en coma fija (ACCU2  ACCU1)
Operaciones de llmada de bloques
SPA PB Salto absoluto a un bloque de programa
SPA FB Salto absoluto a un bloque funcional
SPB PB Salto condicionado a un bloque de programa
SPB FB Salto condicionado a un bloque funcional
A DB Apertura de un bloque de datos
Operaciones de salto de retorno
BE   Final de bloque
BEB   Final de bloque condicionado
BEA   Final de bloque absoluto
Operaciones nulas
NOP0   Ninguna operación
NOP1   Ninguna operación
Operaciones de stop
STP   Stop de la elaboración. La CPU es conducida hasta el stop al final del ciclo

Operación AWL

Operandos admitidos

Descripción
Operaciones lógicas sobre operando formal
U= Operando formal E, A, M, T, Z Combinación AND o test sobre el estado “1”
UN= Operando formal E, A, M, T, Z Combinación AND o test sobre el estado “0”
O= Operando formal E, A, M, T, Z Combinación OR o test sobre el estado “1”
ON= Operando formal E, A, M, T, Z Combinación OR test sobre el estado “0”
Operaciones lógicas sobre word
UW   Combinación AND (bit a bit) entre ACCU1 y ACCU2 con resultado ACCU1
OW   Combinación OR (bit a bit) entre ACCU1 y ACCU2 con resultado en ACCU1
XOW   Combinación XOR (bit a bit) entre ACCU1 y ACCU2 con resultado en ACCU1
Operaciones de memorización sobre operando formal
S = Operando formal E, A, M Activación del operando formal sobre RLC=1
RB = Operando formal E, A, M Desactivación del operando formal sobre RLC=1
RD = Operando formal T, Z Desactivación del operando formal sobre RLC=1
= = Operando formal E, A, M Asignación del operando formando el valor de RLC
Operaciones de carga y transferencia de operando formal
L = Operando formal E, A, M, T, Z Carga en ACCU1 del valor del operando formal
LC = Operando formal T, Z Carga en ACCU1 del valor codificado BCD del operando formal
LW = Operando formal Carga en ACCU1 del valor del operando formal constante
T = Operando formal E, A, M Transferencia del valor en ACCU1 al operando formal
Operaciones de temporización y conteo con operando formal
SI = Operando formal T Activación de un temporizador a impulsos
SE = Operando formal T Activación de un temporizador con retraso a la conexión
SVZ = Operando formal T, Z Activación de un temporizador de impulso prolongado o programación de un contador
SSV = Operando formal T, Z Activación de un temporizador con retraso a la conexión con memoria o bien conteo hacia adelante de un contador
SAR = Operando formal T, Z Activación de un temporizador con retraso en la desconexión o bien conteo hacia atrás de un contador
Operaciones aritméticas
ADD BF Suma a ACCU1 la constante de byte con signo (-128…+127), resultado en ACCU1
ADD KF Suma a ACCU1 la constante de word con signo (-32768…+32767), resultado en ACCU1
Operaciones de conversión
KEW   Complemento a 1 de ACCU1
KZW   Complemento a 2 de ACCU1
Operaciones de desplazamiento
SLW n = 0…15 Desplazamiento hacia la izquierda del contenido de ACCU1 por el número de bit indicado en el parámetro. Los puestos libres se lIenan con 0
SRW n = 0…15 Desplazamiento hacia la derecha del contenido de ACCU1 por el número de bit indicado en el parámetro. Los puestos libres se llenan con 0
Operaciones de salto
SPA = Etiqueta Salto absoluto a la etiqueta
SPB = Etiqueta Salto condicionado a la etiqueta (si RLC=0)
SPZ = Etiqueta Salto si el resultado es nulo
SPN = Etiqueta Salto si resultado no es nulo
SPP = Etiqueta Salto si es positivo
SPM = Etiqueta Salto si es negativo
SPO = Etiqueta Salto para overflow
Operaciones de stop
STS   Stop de la elaboración. La CPU es conducida al stop inmediatamente
Operaciones especiales
D n = 0…255 Decrecimiento del byte inferior de ACCU1 de n
I n = 0…255 Incremento del byte inferior de ACCU1 de n
TAK   Intercambio del contenido de ACCU1 y de ACCU2
Operaciones de elaboración
B DW Elaboración de la palabra datos: la instrucción siguiente se combina con el parámetro y se ejecuta
B MW Elaboración de la palabra merker: la instrucción siguiente se combina con el parámetro y se ejecuta
B= Operando formale B Elaboración del bloque para OB, PB e FB; apertura del bloque para DB
 REFEENCIAS  :  AWL  : CONTROLADOR LOGICO PROGRAMABLE

 SI ERES ESTUDIANTE DE INGENIERIA O INGENIERO, TE INVITAMOS A VER ESTE VIDEO PARA APRENDER INGLES PARA INGENIEROS!

English360 for Engineering Unit 10 video case study!

 http://engineering.english360.com/index.php/2011/10/welcome-to-english360-for-engineers/

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s