Programacion de PLC
Programacion de PLC
de autómatas
vamos a conocer...
1. Zonas de memoria del autómata
programable
2. Lenguajes de programación
3. Representación en lenguaje de contactos
4. GRAFCET
PRÁCTICA PROFESIONAL
Automatización de un taladro
MUNDO TÉCNICO
Programación gráfica del GRAFCET
y al finalizar..
Conocerás los diferentes lenguajes
de programación que utilizan los autómatas
programables.
Direccionarás adecuadamente las variables
de un autómata programable a las diferentes
zonas de memoria.
Sabrás programar de forma básica en lenguaje
de contactos.
Implementarás circuitos secuenciales
mediante GRAFCET en autómatas
programables.
287
situación de partida
Los técnicos de mantenimiento de una cadena de mecanizado tización de máquina-herramienta, parece claro que el uso de
de piezas están pensando adaptar las máquinas antiguas de tala- autómatas programables es la mejor opción.
drado, a los nuevos sistemas de fabricación. La maquinaria anti- Sin embargo, y viendo la diversidad de lenguajes de programación
gua dispone de circuitos de automatismos eléctricos cableados, que disponen algunos PLCs, se debe tomar la decisión de utilizar
que no son demasiado flexibles para su integración en los nue- el lenguaje que mejor se adapte al perfil electromecánico de los
vos procesos. técnicos de mantenimiento de empresa y que permita desarrollar
Después de realizar un estudio de los diferentes sistemas auto- procesos secuenciales con facilidad.
máticos, que se pueden aplicar a las nuevas tareas de automa-
1. Seguramente que alguna vez has oído hablar algo re- gramación crees que se adapta mejor a su perfil pro-
lacionado con lenguajes de programación ¿Qué en- fesional? ¿Por qué?
tiendes por este concepto? 5. Las máquinas de taladrado que se van a automatizar,
2. ¿Qué necesitarían los técnicos de la empresa nom- disponen de un funcionamiento secuencial ¿crees que
brada para transferir los programas a los autómatas es adecuado el GRAFCET como método para dar solu-
programables? ción a los problemas de automatización planteados?
3. Busca en internet algún documento relacionado con 6. Si se utiliza el GRAFCET ¿Qué elementos gráficos ha-
los lenguajes de programación para autómatas y brá que utilizara para implementar paradas de emer-
nombra los que has localizado. gencia y rearmes?
4. Si los técnicos de mantenimiento de la empresa de 7. ¿Qué parte del GRAFCET se encarga de activar las sa-
mecanizado tienen conocimientos de automatismos lidas físicas del autómata para gestionar el funciona-
eléctricos cableados ¿Cuál de los lenguajes de pro- miento de los motores de los taladros?
288 Unidad 10
saber más • Entradas (I). Detectan el estado de los captadores conectados a los bornes de
las entradas del autómata.
A los módulos E/S de un autómata
programable también se les deno-
mina canales.
• Salidas (Q). Se encarga de activar los actuadores y preactuadores desde el mó-
dulo de salidas del autómata.
Cada modelo tiene sus propios bits de sistema y para conocerlos se hace nece-
sario consultar el manual de usuario.
Programación de autómatas 289
Direccionamiento
Para que un autómata programable pueda procesar datos de las zonas de memo- saber más
ria, el técnico programador debe hacer referencia a dichas zonas adecuadamente
El direccionamiento de entradas/sali-
en el momento de la elaboración del programa. das pueden ser diferentes según el
El direccionamiento es la forma de «apuntar» a una variable en el programa de tipo y la firma comercial del autó-
usuario y puede ser diferente según el modelo o fabricante del autómata progra- mata.
mable. En esta unidad se utiliza una forma genérica de direccionamiento, que de- Por tanto, siempre que se instale un
nuevo equipo, es necesario consul-
bes adaptar al dispositivo que tú emplees en el aula-taller. tar los manuales de usuario.
El direccionamiento a una variable del autómata, se realiza escribiendo el operan-
do en formato textual. En él se representa, con letras, la zona de memoria a la que
se tiene acceso y, con números, el orden de la variable en dicha zona de memoria.
Varios ejemplos de direccionamiento son:
Operando Operando
2. Lenguajes de programación
El lenguaje de programación es el encargado de manejar el juego de instruc- vocabulario
ciones del autómata para realizar las funciones lógicas y de cálculo de la CPU.
Bit
El programa de usuario se procesa en la memoria del autómata y se introduce a Es la unidad básica de información,
través de la consola o terminal de programación. 8 bits forma un Byte, 2 bytes (16bits)
Para realizar la programación de forma adecuada, el técnico debe conocer con de- forman una palabra (Word). La
talle las diferentes zonas de memoria del autómata programable y su direcciona- palabra de 32 bits se denomina
doble palabra (DW).
miento.
Según la norma UNE-EN 611131-3 (que concuerda con la IEC 1131-1) cuatro
pueden ser los lenguajes de programación para autómatas. Dos en formato texto
y otros dos en formato gráfico, pudiendo ser combinables y complementarios en-
tre sí.
290 Unidad 10
Q2
NOT Negación
C **
T ** CU
TON
IN
CD
R
PT
PV
Temporizador Contador
a Figura 10.5. Ejemplo de símbolos especiales.
I1 1
>1
I2
& Q1
I3 1
&
I4
3. Representación en lenguaje
de contactos
caso práctico inicial Los esquemas empleados en la elaboración de programas para autómatas son si-
milares, en lo básico, a los utilizados en los circuitos eléctricos con relés y con-
Por su similitud con los esquemas
eléctricos de automatismos cablea- tactores. Por lo tanto, antes de comenzar a programar es necesario realizar el es-
dos, el lenguaje de programación a quema sobre el papel con la nemotecnia normalizada para posteriormente escribir
contactos LD o KOP es muy popular el programa en cualquiera de los lenguajes vistos anteriormente.
entre los técnicos de automatización
que recibieron su formación inicial
Aquí se muestra cómo transcribir dos esquemas eléctricos de automatismos a len-
basada en ese tipo de esquemas. guaje de contactos (LD).
S1 S1 S2 S3
I1 Q1
S2
I1 I2 I3 Q1 I2
S3
I3
K1 K1
Contactos
Son elementos de tipo bit que detectan los estados todo o nada de una variable.
Se representan como abiertos y cerrados y su uso es idéntico al de los esquemas a
relés y contactores.
Pueden estar asociados tanto entradas y salidas físicas (I/Q), como a elementos de
uso interno del autómata como temporizadores, contadores, marcas, etc.
Programación de autómatas 293
Q4 T10
Bobinas
Reciben este nombre por herencia de los circuitos a relés. En ellas se escribe el re-
sultado lógico de una red de contactos.
Pueden ser de diferentes tipos:
Q2 Q5
saber más
De activación
Directa
SET S No todos los autómatas permiten la
programación de bobinas negadas.
Q1 Q5
De desactivación
Negada RESET R
I2 Q2 I2 Q1
saber más En este ejemplo, la salida Q2 se activa mediante I2 y se desactiva con I3.
A la acción de activar mediante una Activación con SET Desactivación con RESET previo SET
bobina SET se le conoce vulgar-
mente como «seteo» y la acción de I2 Q2 I3 Q2
Paso 1
Paso 1
desactivar mediante RESET como S R
«reseteo»
Desactivada Desactivada Desactivada Activada
recuerda
I2 Q2 I3 Q2
Paso 2
Paso 2
En lenguaje FBD las bobinas de
S R
enganche/ desenganche se repre-
sentan en un solo bloque denomi- Activada Activada Activada Desactivada
nado biestable:
I2 Q2 I3 Q2
Paso 3
Paso 3
S
S S
R Q Desactivada Activada Desactivada Desactivada
a Figura 10.11. Biestable. a Figura 10.12. Activación con salida con SET. a Figura 10.13. Desactivación de salida con RE-
SET.
Temporizadores
Los temporizadores generan eventos cuando alcanzan un valor de tiempo prede-
terminado (PT). Su comportamiento es similar a los utilizados en la lógica ca-
bleada.
T10
El temporizador se representa gráficamente como un rectángulo con varias líneas
IN TON
de entrada para conectar la red de contactos de activación (In) y configurar el
tiempo de temporización (PV).
PT
a
A los temporizadores se les asocian contactos abiertos y cerrados que cambian de
Figura 10.14. Aspecto de un blo-
que temporizador básico. estado cuando alcanza el valor de tiempo máximo.
T 10 En este ejemplo, si se mantiene activa-
I2
IN TON da la I2, el T10 Temporiza. Una vez
transcurridos los 10 segundos configu-
rados en la entra PT, los contactos aso-
10 Seg PT ciados al temporizador se cierran y se
abren, activando y desactivando las sa-
saber más
lidas Q6 y Q7 respectivamente.
Algunos modelos de autómatas T10 Q6
disponen de diversos tipos de tem-
Si antes de que se cumpla el tiempo de
porizadores, aunque los más habi- preselección, se desactiva la entrada
tuales son los temporizadores a la T10 Q7 IN, el temporizador se inicializa.
conexión y a la desconexión. La
norma denomina TON a los prime- Contactos asociados
ros y TOF a los segundos. al temporizador c Figura 10.15. Uso de temporizador.
ACTIVIDADES
1. Programa y prueba en un autómata:
a) La activación y desactivación de una salida mediante dos entradas utilizando bobinas Set y Reset.
b) El ejemplo del temporizador de la figura 10.15.
Programación de autómatas 295
Contadores
Los contadores originan eventos cuando alcanzan un determinado número de su- C1
cesos.
Son ideales para utilizar en circuitos automáticos que requieren contabilizar ob- CU
jetos y, en función del número almacenado, actuar sobre el programa.
Se representan en forma de rectángulo y disponen de varias líneas de entrada para CD
conectar las redes de contactos que permiten contar (CU), descontar (CD), po-
ner a RESET (R) y configurar el valor de preselección (PV).
R
A los contadores se les asocian contactos abiertos y cerrados que cambian de es-
tado cuando alcanza el valor preseleccionado.
C1 En este ejemplo la entrada I1 incre- PV
I1
Contar
mente en 1 el valor almacenado en el
a Figura 10.16. Aspecto de un blo-
CU contador, la I2 decrementa dicho valor que contador/descontador.
I2 y la I3 lo pone a 0.
Descontar
CD Si se consigue el valor de preselección,
I3 que en este caso es 15, los contactos del
Resetear contador se cierran y abren activando
R
la salida Q1 y desactivando la salida
Q2 respectivamente.
15 PV
saber más
C1 Q1 Dos ejemplos del uso de contado-
res pueden ser:
• Controlar el número de coches
de un aparcamiento, contando
C1 Q2 los que entran y descontando los
que salen.
• Contabilizar el número de pizzas
Contactos asociados que pasan por una cinta trans-
c Figura 10.17. Uso de un contador.
al contador portadora.
ACTIVIDADES
2. Programa y prueba el ejemplo del contador mostrado en la figura 10.17.
296 Unidad 10
I1 I2 Q1
I1 I2 Q 0 0 0
0 1 0
1 0 0
1 1 1
Q1 = I1 · I2
a Figura 10.18. Asociación de contactos en serie. Tabla de la verdad. Ecuación lógica.
I4 I5 I6 Q2
I1 I2 Q1
I1 Q1
0 0 0
0 1 1
I2
1 0 1
1 1 1
Q1 = I1 + I2
a Figura 10.20. Asociación de contactos en paralelo. Tabla de verdad. Ecuación lógica
I1 Q1
I2
I5
I1 Q1
I1 Q1
NOT 0 1
1 0
Q1 = I1
a Figura 10.22. Operación NOT. Tabla de la verdad. Ecuación lógica.
Agrupaciones de contactos
Los contactos pueden operar entre sí creando bloques, que a su vez operan con
otros bloques en serie o en paralelo originando agrupaciones de contactos.
Agrupación AND
Conecta grupos de contactos con la función serie (AND).
En la siguiente figura se muestra una agrupación serie de dos bloques de contac-
tos en paralelo.
Agrupación AND
I1 I3 Q1
I2 I4
Agrupación OR
Conecta grupos de contactos con la función paralelo (OR).
La figura siguiente muestra la agrupación de dos bloques de contactos en serie co-
nectados entre sí en paralelo.
I1 I3 Q1
I2 I4
Agrupación OR
M10 M20 Q3
d Figura 10.28. Uso de las marcas
internas.
Flanco positivo
También llamado frente ascendente, detecta el paso de 0 a 1 del operando aso-
ciado.
El símbolo es: —| P |—
Por ejemplo, una entrada asociada a una operación de flanco positivo solamente
generará la señal «1» en el instante de ser pulsado, pasando a la situación «0» in-
mediatamente aunque continúe la acción sobre el pulsador.
Programación de autómatas 299
I1 Q1 I1
0
P
1
Q1
0
a Figura 10.29. Asociación de un flanco positivo a una entrada y cronograma del flanco positivo.
Flanco negativo
También llamado frente descendente, detecta el paso de 1 a 0 del operador aso-
ciado.
El símbolo es: —| N |—
Utilizando el ejemplo del punto anterior, solamente se generará la señal «1» en
el instante de «soltar» el pulsador.
1
I1
I1 Q1 0
N 1
Q1
0
a Figura 10.30. Asociación de un flanco negativo a una entrada y cronograma del flanco negativo.
Operaciones de memoria
Una función de memoria es aquella que genera un evento y lo mantiene aunque
cese la acción inicial que lo originó.
Realimentación por contacto
En la lógica cableada esta operación la realiza el circuito llamado «Arranque con
pulsadores de marcha y paro», donde el pulsador de marcha es el que origina el
evento que alimenta la bobina, el contacto en paralelo el que la realimenta y el
pulsador de parada el que la desactiva. Por tanto, si se transcribe dicho circuito al
lenguaje de contactos se obtiene el programa para activar y desactivar una bobi-
na mediante realimentación.
Realimentación
I1
Parada Marcha Parada
I1 I2 Q1
I2 K1
Marcha
Q1
K1 Realimentación
I1
Realimentación
Parada
I2 Q1
S
I2 K1
Marcha Marcha
I1 Q1
R
K1 Parada
4. GRAFCET
El GRAFCET, también denominado SFC, es una forma gráfica de representar el
vocabulario
funcionamiento de un sistema secuencial.
GRAFCET
El GRAFCET representa la secuencia de funcionamiento de la máquina y facili-
Es el acrónimo de Gráfico de Con-
trol Etapas Transición.
ta la implementación a cualquier lenguaje de programación de autómatas.
SFC El GRAFCET está formado por un conjunto de símbolos denominados etapas,
Es el acrónimo de Sequential Func- transiciones, etiquetas y líneas de dirección.
tion Chart (Gráfico de Función
Secuencial).
4.1. Etapas
Representan los diferentes estados del proceso secuencial.
Su símbolo es un cuadrado con un número en su interior que debe ser único en la
secuencia.
Pueden ser de dos tipos: de Paso e Iniciales.
1 5