PLC Avanzado
PLC Avanzado
PLC Avanzado
PROGRAMABLES
Su objetivo primordial
Eliminar los altos costos asociados con los poco flexibles sistemas
controlados por relés.
Componentes principales de un PLC
FUENTE DE
PODER
M D M D
Ó E Ó E
D D
U E U S
L N L A
PROCESADOR
O T O L
R I
De los A D A las
SENSORES D A SALIDAS
Pulsadores, A Solenoides,
contactos, contactores,
Fines de carrera, alarmas
etc. etc.
ELEMENTO DE
PROGRAMACIÓN
Componentes principales de un PLC
FUENTE DE PODER
MÓDULOS DE ENTRADA/SALIDA
PROCESADOR (CPU)
Este bloque es el cerebro del PLC. Provee la inteligencia para comandar y
gobernar las actividades de todos los sistemas del PLC. Su función es interpretar
las instrucciones del programa de usuario y en función de las entradas, activar
las salidas deseadas
Componentes principales de un PLC
ELEMENTO DE PROGRAMACIÓN
Se lo utiliza para ingresar el programa deseado que determinará la secuencia de
operaciones y el control del equipo de proceso o la máquina controlada.
Generalmente se utiliza un programador manual. Estos aparatos se montan
sobre el P.L.C. y el programa se carga directamente a través del teclado hacia la
memoria. Otra posibilidad es usar una PC que tenga instalado el software de
programación correspondiente a la marca y modelo del PLC. Conectada
mediante el puerto serie o Ethernet
Componentes principales de un PLC
ELEMENTOS DE PROGRAMACIÓN
PC
Programador manual
Componentes principales de un PLC
MÓDULOS DE E/S
• Sensores de posición • 12 V CC
• Sensores de proximidad
• Contactos de relé
• Luces • 120 V CA
• Sirenas •MOSFET
• 24 V CC
• Pequeño
• Mediano
• Grande
• P.L.C. Compactos
• P.L.C. Modulares
Clasificación de P.L.C.s
Compactos:
La CPU, la fuente de alimentación, la
sección de entradas y salidas, y el
puerto de comunicación, conforman un
solo bloque
Conexión
Ethernet
Llave
DH-485
selectora
RUN, REM,
PROG
ENTRADA 0
Puerto serie
RS-232
Fuente de poder
Módulos de salida
Módulos de entrada
Estructura del P.L.C. modular
1. Rack
4.Tarjetas de comunicación
5. C.P.U.
6.Tarjeta de memoria
• Fuente
• Microprocesadores
• Memoria
• Entradas/Salidas
Unidad Central de Proceso (CPU)
Módulo de entradas
Unidad de
Memoria de programa
control
Memoria de datos
Unidad
aritmética
lógica
Módulo de salidas
Unidad Central de Proceso (CPU)
Es la inteligencia del sistema
La CPU procesa el programa mediante los pasos siguientes:
• La memoria de programa contiene las instrucciones; la unidad central tiene
acceso a la memoria de programa.
• La unidad de control recoge los datos de entrada a través del módulo de
entradas y los transfiere a la unidad aritmética/lógica (ALU); aquí, los datos
son enlazados lógicamente en función de las instrucciones del programa
memorizado;
• La unidad de control finalmente, transfiere los datos de salida al equipo o
proceso controlado a través del módulo de salidas.
Sistema de BUS
Es un sistema que interconecta los diferentes módulos y componentes
que componen un PLC (aunque no todos simultáneamente, sólo entre
dos a la vez)
Cuando una instrucción es traducida al código máquina no es más que
una cadena de ceros y unos. Esta cadena de dígitos binarios se puede
dividir en tres partes:
• Bus de control
• Bus de direcciones
• Bus de datos
MEMORIA ENTRADAS/SALIDAS
DIRECCIONES
DATOS
CONTROL
POR LUZ UV
RPROM MEMORIA FIJA REPROGRAMABLE NO VOLÁTIL
A este barrido se lo conoce como el scan del plc y el tiempo que tarda en
realizarlo, tiempo de ciclo (scan time), es un parámetro importante en un
PLC, ya que nos da una idea de la rapidez de operación de éste.
Programación de P.L.C.s
El tiempo de ciclo (scan time), es el necesario para ejecutar 1k
instrucciones. Como todas las instrucciones no son iguales, se adoptó
como parámetro el tiempo de ejecución de 1k de memoria vacía
1. Fase de entrada
2. Fase de proceso
3. Fase de salida
Programación de P.L.C.s
1. Fase de entrada: En ella se produce la recolección de todas las
señales de entrada que provienen del proceso del sistema y de los
comandos manuales. Ej.: ¿Hay un uno en la entrada E1?
…
Programación de P.L.C.s
…
…
Programación de P.L.C.s
MÓDULO MÓDULO
DE
CPU DE
ENTRADA ALU SALIDA
0V
Programación de P.L.C.s
El programa del P.L.C. es creado con el equipo programador, con éste
se lo almacena en la memoria del PLC. La CPU procesa las señales de
entrada y las convierte en las correspondientes señales de salida.
IWØ
3 2 1 Ø
IW1
Programación de P.L.C.s
•Salidas
El PLC FESTO Edutrainer® modelo FC34 tiene una sola palabra de salida
(Output Word), OwØ, que contiene los ocho bits Oø.ø, Oø.1, Oø.2 … Oø.7
7 6 5 4 3 2 1 Ø
OWØ
Programación de P.L.C.s
Lenguajes de programación
interruptor lámpara
1
Transformador
Fusible
L1 L2
110 V C.A.
Interruptor Lámpara
1
L1 Fusible L2
24 V C.C.
Interruptor Lámpara
1
Diagramas escalera
P: ¿Por qué todavía los estudiamos, en la era del PLC?
R: Por varias razones:
• Condiciones (Contactos)
• Acciones (Bobinas).
Programación de P.L.C.s
Las primeras tienen que ver con averiguar el estado de un determinado
bit y puede reducirse a dos preguntas básicas:
• Condiciones
I0.0 O0.0
Condiciones compuestas:
I0.0 O0.2
R
I0.0 I0.1
Programación de P.L.C.s
•Acciones
Las acciones tienen que ver con lo que hago dependiendo de si una o
varias condiciones se cumplen o no. Se implementan mediante las
llamadas funciones:
Programación de P.L.C.s
• Función COPY
También llamada Función identidad. Si la condición se cumple, pone
un uno binario (1) en el bit indicado, si la condición no se cumple,
pone un cero binario (ø) en el bit indicado. Veamos un ejemplo:
CONDICIÓN ACCIÓN
Iø.3 Oø.5
• Función SET
Esta función, si la condición se cumple, pone un uno binario (1)
retentivo. Si la condición no se cumple, vuelve a leer el valor de de
la entrada correspondiente (cada 2 ms).
Una vez que se pone un uno, sólo puede modificarse (y poner un
cero) mediante la función que veremos a continuación,
direccionada a la misma salida.
Programación de P.L.C.s
• Función SET
CONDICIÓN ACCIÓN
Iø.3 Oø.5
CONDICIÓN ACCIÓN
Iø.3 Oø.5
S1 S2
I0.0 I0.1
P.L.C.
O0.0 O0.1
1Y1 1Y2
ØV
1A+ 1A-
Programa en lenguaje Ladder (LDR)
Debajo se muestra el programa correspondiente en lenguaje LDR que se
debería almacenar en el PLC.
I0.0 O0.0
S
O0.1
R
I0.1 O0.0
R
O0.1
S
Programa en Statement List (STL)
Finalmente, se muestra el mismo programa, escrito ahora en lenguaje
STL .
IF I0.0
THEN SET O0.0
AND
RESET O0.1
IF I0.1
THEN RESET O0.0
AND
SET O0.1
Circuitos electroneumáticos simples
controlados por PLC.
Segundo ejemplo: Dos cilindros de doble efecto actuando en
secuencia cíclica controlados mediante electroválvulas
1A
2B1 2B2
2A
1V1 4 2
1Y1 5 1Y2
3
1 2V1 4 2
2Y1 5 3
1
Distribuidor
1Z1
Esquema de conexiones:
24V
S1 1B2
1B1 2B2
2B1
B
Programa en LDR: I0.0 O0.0
R
I0.0 O0.2
R
I0.0 I0.1
1A 2A
4 2 4 2
1V1 2V1
1A
1B2 2B1
1B1
2B 2B2
Cascada de flags
Esquema de conexiones
24V
S1 1B2
1B1 2B2
2B1
1. Un pulsador de arranque/parada
O0.1
R
2. El primer flag debe estar en estado “cero” (-|/|-) (Es el bit que
define el inicio de la secuencia). Es el programador quien define la
línea en que inicia la secuencia.
…
Reglas para Cascadas de flags
…
.....................................
R
Última línea de
la secuencia
R
Modificando el LDR para incluir la
Cascada de flags
Veremos a continuación cómo modificar el programa en LDR anterior
con una cascada de flags para solucionar el problema.
TE
0 … 20 mA
TT A Iw.n
11 10 9 8 7 6 5 4 3 2 1 0
D
Operandos Multibit
P: ¿En cuántas partes puedo dividir el rango de la señal analógica de
entrada?
10 bits 1024
12 bits 4096
16 bits 65536
Operandos Multibit
También hay resolución en las salidas y no necesariamente coincide
con la resolución de las entradas
U: 0 … 10 V
D
U/
I 0 … 20 mA
A I:
4 … 20 mA
Operandos Multibit
Cajas de comparación (símbolos en la parte de condición)
<Operador>
> Mayor que Una señal de 1 se transfiere a
< Menor que la derecha si la comparación es
satisfactoria.
>= Mayor o igual En caso contrario, se transfiere
<= Menor o igual una señal de 0.
<> Distinto que
Operaciones multibit
con dos operandos
Icono Operador Operación Breve descripción
TO Si se cumple la condición, la
instrucción pone el valor
<Condición>
V850 R0 decimal 850 en el registro R0
Operaciones multibit con tres operandos
Icono Operador Operación Breve descripción
Operaciones Multibit con 3 operandos
Vinculación lógica “Y” entre
<Operador> AND Vínculo “Y”
palabras
Vinculación lógica “O” entre
OR Vínculo “O”
palabras
Vinculación lógica “O exclusivo”
EXOR Vínculo “O excl.”
entre palabras
* Multiplicación Multiplicación por palabras
/ División División por palabras
+ Adición Adición de palabras
- Sustracción Sustracción de palabras
Operaciones multibit con tres operandos
Los dos operandos multibit a los que se les aplica la operación - Operando 1
arriba, Operando 2 abajo – se introducen en el lado de entradas de la caja
(izquierda). El operando en el que se almacena el resultado de la operación va
en el lado de salida (derecha). La operación se indica en la caja.
I0.1
+
R0 R30
V25
Programación de P.L.C.s
Operandos multibit – Ejemplos:
Supongamos tener una señal analógica de corriente (0 a 20 mA) que
corresponde a la temperatura de un reactor medida por una termocupla
y transmitida por un transmisor cuyo rango es de 400 a 1200 °C. En
dicho reactor tiene lugar un determinado proceso cuya temperatura no
debe ser inferior a 850°C, pero tampoco superar los 925°C. ¿Cómo
podemos implementar las señales y enclavamientos por medio de un
PLC?
Programación de P.L.C.s
Operandos multibit – Ejemplos:
Primero hagamos algunos cálculos:
Por los datos dados, vemos que cuando la termocupla lee 400°C, el
transmisor mandará una señal de 0 mA y si la temperatura fuera de
1200°C, la señal sería de 20 mA.
11 111
11111111111111
Señal digital (binaria)
0 mA 20 mA
11,25 mA 13,125 mA
Señal analógica
20mA
Resolucion 0,004883mA
4096
Operandos multibit – Ejemplos:
Para monitorear la temperatura necesitamos almacenar el valor de la
temperatura en la memoria, p. ej., en el Iw. A continuación podemos
usar cajas de comparación.
O0.0
<=
Iw
V850
O0.1
>=
Iw
V925
Operandos multibit – Ejemplos:
TE
0 … 20 mA
24V A TT
D
12 bits
ØV
H1 Alarma: (T < 850°C) H2 Alarma: (T > 925°C)
Operandos multibit – Ejemplos:
Para controlar la temperatura en forma efectiva necesitamos algún
elemento como, p. ej., una válvula que actúe sobre el proceso. Esta
válvula debe poder posicionarse en cualquier posición entre 0 y 100%.
Esto puede lograrse mediante una señal analógica de 0 a 10 V a un
transductor que, a su vez mande una señal neumática de entre 3 y 15 psi
al actuador de la válvula.
Sobra decir que, además, debe haber un programa en el PLC que, para
cada entrada Iw calcule el valor a colocar en la salida digital Ow
Operandos multibit – Ejemplos:
24V
A
D 0 … 20 mA
12 bits
Iw TT
PLC
Ow 20 p.s.i.
TY
10/12/16 bits
TE
D
A 3 … 15 p.s.i.
0 … 10 V
TV
ØV
Programación de P.L.C.s
Operandos multibit – Función Trimmer:
Mediante un potenciómetro regulable mediante un tornillo en el frente del
PLC puede introducirse un valor entre 1 y 63 en un Iw disponible.
El trimmer me permite simular diferentes entradas (Haciendo uso de las
operaciones aritméticas multibit: +; * ; : ; - ; etc., puedo hacer que el
rango de 1 a 63 se expanda) y mandarlas a un Iw, p. ej., Iw5.
Con esto puedo simular, p. ej., una entrada analógica .
Programación de P.L.C.s
Operandos multibit – Contadores:
Counter
Contadores
Hay 256 contadores disponibles. Cada contador tiene asignado tres
operandos. Proporcionan información sobre el estado, el valor actual y la
magnitud a ser contada (registro de preselección) del contador.
C
REGISTRO DE
C1 BIT DE ESTADO VALOR ACTUAL PRESELECCIÓN
Cx CWx CPx
1ó
…
C255
Contadores Con esta instrucción
se activa el contador
Cx Cx
S
Cx
R
Cx
Cx
I
Cx
D
Ejemplo con contadores
Playa de estacionamiento con cuatro lugares. Se desea implementar un
sistema lumínico que informe si hay espacio disponible, mediante una
luz verde o si está completo, mediante una luz roja
j k l m
HAY NO HAY
LUGAR LUGAR
B1 B2
Sensor de Sensor de
entradas salidas
Esquema de conexión
24V
S1 B1 B2
V4
C
I.1
I
C
I.2
D
>= <
Cw Cw
O.1 (Luz verde)
V V4
Programación de P.L.C.s
Operandos multibit – Temporizadores:
Timer
Operandos multibit – Temporizadores:
Los temporizadores son parte esencial de un programa, ya que
muchas funciones de control exigen la programación del tiempo.
Con ellos logramos poner en sincronía los diferentes movimientos
que ejecuta una máquina.
Los PLC’s de Festo manejan tres tipos de temporizadores, el
temporizador de impulso, el temporizador de retraso a la conexión
y el temporizador de retraso a la desconexión.
Operandos multibit – Temporizadores:
Podemos manejar hasta 256 temporizadores (0 a 255), cada contador
ofrece los siguientes operandos para permitir una programación flexible:
Bobina del
1 temporizador
0 t
TP = nnn.nn [s]
TWnn
0 [s] t
TP Predefinido
Contacto del temporizador
1
Tnn
0 t
Temporizadores de Impulso
I0.0 T7
T7
Timer
5.20s
T7 O0.0
Bobina del
1 temporizador
0 t
TP = nnn.nn [s]
TWnn
0 [s] t
TP Predefinido
Contacto del temporizador
1
TONnn
0 t
Temporizadores de retraso a la conexión
I0.0 TON1
Timer
5.20s
TON1 O0.0
0 t
TP = nnn.nn [s]
TWnn
0 [s] t
TP, Preseteo Contacto del
temporizador
1
TOFFnn
0 t
Temporizadores de retraso a la desconexión
I0.0 TOFF1
Timer
5.20s
TOFF1 O0.0
1s
1s
Solución con temporizador con retraso a la desconexión
TOFF1 TOFF0
Timer
1s
1s
Solución con temporizador de impulso
I0.0 T1
O0.0
S
T0
Timer
1s
T0
O0.0
R
T1
Timer
1s
Solución con temporizador de impulso y comparación
Una cuarta solución a este problema es utilizar las funciones de
comparación, dividiendo el tiempo total de ciclo en dos partes iguales
y encender la salida en una de las partes y en la otra mantenerla
apagada.
I0.0 T0 T0
Timer
2s
T0
O0.0
>=
TW0
V100
Programando el P.L.C. XXXX con VersaPro
Editor de Ladder