Professional Documents
Culture Documents
wertyuiopasdfghjklzxcvbnmqw
ertyuiopasdfghjklzxcvbnmqwer
tyuiopasdfghjklzxcvbnmqwerty
uiopasdfghjklzxcvbnmqwertyui
Autómatas Programables
opasdfghjklzxcvbnmqwertyuiop
Conceptos Básicos
07/09/2015
asdfghjklzxcvbnmqwertyuiopas
Joseba Zaldibia
dfghjklzxcvbnmqwertyuiopasdf
ghjklzxcvbnmqwertyuiopasdfgh
jklzxcvbnmqwertyuiopasdfghjkl
zxcvbnmqwertyuiopasdfghjklzx
cvbnmqwertyuiopasdfghjklzxcv
bnmqwertyuiopasdfghjklzxcvbn
mqwertyuiopasdfghjklzxcvbnm
qwertyuiopasdfghjklzxcvbnmq
wertyuiopasdfghjklzxcvbnmqw
ertyuiopasdfghjklzxcvbnmrtyui
opasdfghjklzxcvbnmqwertyuiop
asdfghjklzxcvbnmqwertyuiopas
Autómatas Programables
1. Introducción
El manual está dividido en dos partes complementarias entre sí. Una primera en
donde se estudian la estructura y características más importantes de los autómatas
programables, que aportará al alumno los conocimientos necesarios y suficientes
como para abordar con éxito la segunda parte, en donde se presentan una serie de
26 ejercicios prácticos, divididos en 7 bloques organizadores de contenidos
(prácticas que abordan un tema común), en donde el alumno aplicará lo aprendido,
configurando y programando los diferentes dispositivos que forman parte de un
sistema con PLC, y resolviendo las disfunciones que pudiera encontrar.
2. Índice
1. Introducción .......................................................................................................... 0
2. Índice ..................................................................................................................... 1
3. Introducción a los autómatas programables ..................................................... 5
4. Arquitectura de un autómata programable. ....................................................... 6
4.1 Arquitectura modular. ..................................................................................... 6
4.2 La fuente de alimentación. ........................................................................... 10
4.3 CPU o Unidad Central de Proceso............................................................... 11
4.4 Entradas y salidas......................................................................................... 12
4.4.1 Entradas en los PLC............................................................................... 12
4.4.2 Salidas en los PLC. ................................................................................ 16
4.4.3 Diagrama de conexión de la CPU1214C AC/DC/relé. .......................... 19
4.5 Comunicaciones ........................................................................................... 20
5. Programación de PLC’s. .................................................................................... 21
5.1 Lenguajes de programación. ....................................................................... 22
5.2 Formato de las instrucciones, operandos y direccionamiento................. 23
5.3 Tipos de datos. .............................................................................................. 26
5.4 Estructura del programa de usuario. Bloques lógicos. ............................. 29
5.4.1 Bloque de organización (OB). ............................................................... 30
5.4.2 Función (FC). .......................................................................................... 31
5.4.3 Bloque de Función (FB). ........................................................................ 31
5.4.4 Bloque de datos (DB). ............................................................................ 32
5.5 Ciclo de ejecución o ciclo de scan. ............................................................. 32
5.6 Marcas de ciclo. ............................................................................................ 33
5.7 Lenguaje de programación KOP. Diagrama de contactos ........................ 34
5.7.1 Elementos básicos de programación en lenguaje KOP. ..................... 35
5.7.2 Operaciones básicas en lenguaje KOP. ............................................... 43
6. PRÁCTICAS ..................................................................................................... 50
6.1 Introducción .................................................................................................. 50
6.2 Práctica nº 1. El entorno de programación TIA portal V13 ........................ 51
6.2.1 Objetivo de la práctica. .......................................................................... 51
6.2.2 Materiales necesarios. ........................................................................... 51
6.2.3 Desarrollo de la práctica. ....................................................................... 51
6.3 Práctica nº 2. El primer programa ................................................................ 68
6.3.1 Objetivo de la práctica. .......................................................................... 68
Semidúplex (RS485)
Módulo Descripción
1 LEDs de estado de la SB
2 Conector extraíble para el cableado de usuario
Módulos de señales SM
Los módulos de señales permiten agregar funciones a la CPU, tales como E/S
digitales, E/S analógicas, RTD y termopar o maestro SM 1278 IO-Link, y se
conectan a la derecha de ésta, o a la derecha de otro módulo de señales (fig. 9).
Módulos de comunicación
Los módulos de comunicación (CMs) ofrecen funciones de comunicación adicionales
para el sistema, como por ejemplo para la conectividad ProfiBus o RS232 / RS485.
Estos módulos, que como mucho pueden ser 3 para esta gama, se conectan en el
lado izquierdo de la CPU, o en el lado izquierdo de otro CM (fig. 10).
MEMORIAS
ENTRADAS SALIDAS
DIGITALES DIGITALES
Sensores PROCESADOR Actuadores
ENTRADAS SALIDAS
ANALÓGICAS ANALÓGICAS
ENTRADAS
+V
R1 Optoacoplador
E
Circuito
R2 Interno
Común
+V
R1 Optoacoplador
E
Circuito
R2 Interno
Común
+
+ + +
Sensor _ PLC _ PLC
S S
E E
Sensor
_ Común _ Común
Cuando la salida del detector es de tipo contacto, puede seguirse el mismo esquema
de conexión que en el apartado anterior, mientras que si la salida del detector es por
transistores de tipo NPN o PNP, será preciso seguir los esquemas de conexionado
que aparecen en la figura 18.
E
S
Circuito interno
N Opto
En la figura 19 puede observarse una conexión típica a una entrada del PLC en
corriente alterna.
Las salidas serán las encargadas de gobernar los denominados actuadotes (cargas
en general, como luminosos, contactores, etc.), y siempre teniendo muy presente
que a los bornes del autómata solo podrán conectarse directamente actuadotes de
pequeña potencia, ya que ésta está bastante limitada. Cuando la potencia requerida
por el actuador a utilizar sobrepase la que puede suministrar el autómata en sus
bornes, se utilizarán elementos intermedios tales como contactores, permitiendo
activar éstos desde el PLC y la carga, con su alimentación independiente, desde las
salidas del contactor.
De forma general, puede establecerse que existen tres tipos de salidas además de
las analógicas, que se comentan a continuación.
Salida a transistor
COMÚN + _
OPTO
Circuito S
Interno
CARGA
del
Tal y como puede observarse en la figura 20, el elemento final que actuará sobre la
carga es un transistor, por lo que las cargas que podrán ser conectadas a él deberán
de ser en corriente continua y de potencias no demasiado elevadas. Por el contrario,
la velocidad de respuesta de este tipo de salidas es elevada, pudiendo conectar a
ellas elementos que precisen tiempos de conmutación cortos.
Salidas a triac
COMÚN
OPTO
Circuito
Interno
CARGA
del
Otro ejemplo típico de salida digital para la conexión de cargas en corriente alterna
es el mostrado en la figura 21, en donde se ve una salida por triac con los elementos
característicos de protección y filtrado de perturbaciones (varistor y red RC). Al ser el
triac un elemento semiconductor, al igual que en caso anterior de la salida por
transistor, también podrá tener tiempos de conmutación rápidos.
Salida a relé
S CARGA
Circuito
Interno
del _
+
COMÚN
Salidas analógicas
Este tipo de salidas se utilizan para el accionamiento de elementos que responden a
las variaciones de una tensión o de una intensidad de corriente, tales como
variadores de velocidad para motores y válvulas proporcionales. Será la aplicación
cargada en el PLC la que se encargue de calcular el valor numérico que
corresponde enviar a la salida para, haciendo uso de un conversor D/A (Digital a
Analógico) poner el valor de tensión o intensidad de corriente correspondiente en la
salida seleccionada. Los valores típicos que podemos encontrar para este tipo de
salidas son de -10 a 10 voltios, de 0 a 10 voltios para las tensiones, y de 4 a 20 mA y
0 a 20 mA para las intensidades de corriente.
1
2 3 4
4.5 Comunicaciones
ProfiNet; se utiliza para intercambiar datos a través del programa de usuario con
otros dispositivos vía Ethernet. Soporta un máximo de 16 dispositivos IO con un
máximo de 256 submódulos.
ProfiBus; se utiliza para intercambiar datos a través del programa de usuario con
otros dispositivos a través de la red ProfiBus. Se caracteriza por trabajar en modo
“maestro-esclavo”, en donde el maestro será el PLC encargado de inicializar la
red y recibir los datos de los módulos de entradas/salidas de los diferentes
esclavos para proceder a su proceso. Existen tres versiones diferentes en la
familia ProfiBus, DP, FMS y PA, siendo la más utilizada la denominada DP para
aplicaciones de tipo descentralizado.
AS-i; El bus AS-i (Actuador-Sensor-Interface) permite conectar directamente a
través de un bus de 2 hilos los diferentes sensores y actuadores del sistema,
pudiendo evitarse, en aquellas aplicaciones que así lo requieran, el conexionado
tradicional en donde los actuadores y los sensores se conectan con sus
correspondientes entradas y salidas del PLC. Evidentemente el sistema precisará
de diversos elementos específicos para su funcionamiento, tales como Módulos
AS-i (encargados de conectar los diferentes sensores y actuadores AS-i para
mandar la información al PLC), Módulos maestros (encargados de procesar la
información del bus), fuente de alimentación específica para alimentar a los
esclavos del bus y una programadora de direcciones (que permite asignar el
direccionamiento de los distintos esclavos que se conecten en la red AS-i).
Comunicación S7 de CPU a CPU; puede crearse una conexión entre dos CPU.
Comunicación Teleservice; permite la comunicación mediante la red GSM e
internet entre estaciones simatic S7-1200.
IO-Link; es una conexión punto a punto que permite la conexión “inteligente” de
sensores y actuadores a nivel de control.
5. Programación de PLC’s.
En la actualidad los equipos utilizados para realizar la programación de los PLC son
los ordenadores, que por medio de las aplicaciones específicas permitirán el
desarrollo de los programas. Estas aplicaciones o herramientas de desarrollo
permiten la programación en diferentes lenguajes (AWL, SCL, KOP, etc) que se
describirán a continuación. Las potentes herramientas disponibles no solo van a
facilitar la programación de los autómatas sino que además permiten programar y
configurar sistemas SCADA para la monitorización de los procesos a controlar
haciendo uso de pantallas (fig. 24).
LENGUAJES DE PROGRAMACIÓN
ALFANUMÉRICOS GRÁFICOS
ORIENTADOS A
ORIENTADOS A ESTADOS
PROCESOS
FP M1.0 // Sentencia IF
Para que el autómata programable sea capaz de procesar los datos existentes en
las diferentes zonas de memoria, es preciso hacer referencia a dichas zonas. Esto
es lo que se conoce como direccionamiento, que consiste en “apuntar” a la zona de
la memoria en donde se encuentra el dato con el que se desea trabajar. De forma
genérica, ya que los modos de direccionamiento pueden diferir de unos autómatas a
otros, se puede decir que lo que se hará será escribir el operando de forma textual.
En él se incluirán letras que representarán la zona de la memoria a la que se quiere
acceder, y números que establecerán el orden dentro de dicha zona.
En el caso concreto del autómata S7-1200, las opciones de almacenamiento de
datos durante la ejecución del programa de usuario son las siguientes:
Memoria global; Incluye entradas (I), salidas (Q) y marcas (M). Todos los
bloques lógicos pueden acceder a esta memoria sin restricciones.
Tabla de variables PLC; en ella se pueden especificar nombres simbólicos para
posiciones de memoria concretas. Permiten la programación con nombres
simbólicos, lo cual facilitará esta tarea.
Bloque de datos (DB); Es posible incluir DB’s para almacenar los datos de los
bloques lógicos. Los datos almacenados se conservan cuando finaliza la
ejecución del bloque lógico. Un DB “global” podrá almacenar datos que pueden
utilizarse en todos los bloques lógicos, mientras que un DB de “instancia”
almacenará datos para un bloque de función (FB) específico y estará
estructurado de acuerdo con los parámetros de dicho FB. Almacenan también
las estructuras de datos requeridas para numerosas instrucciones, como por
ejemplo, temporizadores y contadores.
Memoria temporal; es la memoria que asigna el sistema operativo de la CPU
durante la ejecución de cada bloque lógico. Finalizada la ejecución del bloque
lógico, la memoria es reasignada para la ejecución de otros bloques.
Cada una de las posiciones de memoria tiene una única dirección, que será utilizada
para poder acceder a la información en ellas contenida. La dirección absoluta consta
de los siguientes elementos:
M (área de marcas)
DB (Bloque de datos)
Nombre_variable
16#0 a 16#FFFF
16#0000_0000 a
16#FFFF_FFFF
+1.175495e-38 a +3.402823e+38
T#-24d_20h_31m_23s_648ms a T#5m_30s
T#24d_20h_31m_23s_647ms
T#1d_2h_15m_30s_45ms
Almacenado como: -2.147.483.648 ms
Time 32 gasta +2.147.483.648 TIME#10d20h30m20s630ms
500h10000ms
10d20h30m20s630ms
Date 16 DATE#2009-12-31
2009-12-31
Hora 32 TIME_OF_DAY#10:20:30.400
23:10:1
Además de los tipos de datos presentados en las tablas anteriores, existen otros
tipos tales como “ARRAY”, “Estructura de datos”, “datos PLC” y “puntero”, cuyas
características pueden consultarse en el manual de sistema del S7-1200. No se han
incluido en la presente relación por entender que no serán imprescindibles en el
aprendizaje de la programación básica requerida.
Todas las instrucciones que forman parte de un programa de usuario deben estar
insertadas en los denominados bloques lógicos (OB’s, FB’s y FC’s). En primer lugar,
y de acuerdo con las características de la aplicación que se pretende resolver, habrá
que seleccionar entre estructurar el programa de forma lineal o hacerlo de forma
modular.
Es necesario tener muy presente que la estructura modular simplifica el diseño y el
desarrollo del programa de usuario, ofreciendo ventajas tales como la posibilidad de
crear bloques lógicos reutilizables para tareas estándar (control de una bomba o
motor), dividir el programa de usuario en componentes modulares para las tareas
funcionales, facilitar la depuración del programa o reducir el tiempo de puesta en
marcha de la aplicación.
En primer lugar se crean bloques lógicos modulares, diseñando FB’s y FC’s que se
encarguen de tareas genéricas. A continuación, se estructura el programa de modo
que otros bloques lógicos se encarguen de llamar a los bloques “reutilizables”,
transfiriendo los parámetros específicos del sistema a los bloques llamados. Una vez
que haya finalizado la ejecución del bloque llamado, la CPU continua con la
ejecución del bloque que efectuó la llamada a partir de la siguiente instrucción a la
llamada de bloque.
Las llamadas a bloques pueden anidarse para crear una estructura más modular, en
donde los bloques que son llamados por otros pueden a su vez llamar, por ejemplo,
a un tercero, y así hasta una profundidad de anidamiento que, en el caso de la CPU
1214C, es de 16 desde el OB de ciclo o de arranque, o de 6 desde cualquier OB de
evento de alarma.
Las funciones (FC’s) son bloques lógicos que suelen realizar una operación concreta
con un conjunto de valores de entrada (por ejemplo, cálculos matemáticos y/o
funciones tecnológicas), almacenando los resultados obtenidos en la misma en
posiciones de memoria.
Las funciones pueden ser llamadas varias veces desde diferentes puntos del
programa de usuario, facilitando así las tareas repetitivas.
Las funciones no tienen asociado ningún bloque de datos de instancia, de modo que
los datos temporales utilizados en las mismas no serán almacenados ni podrán ser
utilizados una vez que se haya salido de éstas. Si se desea almacenar los datos
temporales de forma permanente, será preciso asignar dichos datos a posiciones de
memoria globales, como por ejemplo dentro del área de marcas o haciendo uso de
un DB global.
Los denominados bloques de función (FB’s), son bloques lógicos que hacen uso de
los llamados DB de instancia para almacenar sus parámetros y datos estáticos, de
modo que permanezcan aun cuando haya finalizado la ejecución del FB. Como
norma general, los FB’s son utilizados para controlar sistemas cuya operación no
finaliza dentro de un ciclo. También es posible asignar varios DB de instancia a un
solo FB, permitiendo que un FB “genérico” pueda controlar varios dispositivos físicos
similares, cada uno con sus propios valores.
DB 20
OB1
FB 12
DB 21
FB 12, DB 20
FB 12, DB 21
FB 12, DB 22
DB 22
En los apartados anteriores se ha hecho mención a los bloques de datos (DB), pues
bien, estos bloques de datos se crean dentro del programa del usuario y contendrán
los datos que utilizarán los bloques lógicos.
Existen dos tipos de bloques de datos (DB’s) diferentes:
La razón del uso de las denominadas tablas imagen de entradas y salidas es muy
simple e importante en la resolución que hace el autómata del programa de usuario.
El PLC no utiliza directamente las señales presentes en los bornes físicos del mismo
sino la imagen de dichos valores almacenada en unas posiciones de memoria. Esto
es así porque la imagen no varía a lo largo de un ciclo de ejecución, mientras que el
valor en los bornes sí podría variar, ocasionando errores y, en consecuencia, un
funcionamiento incorrecto de la aplicación.
Es posible asignar un byte de marcas de ciclo en el área de marcas. Este tipo de bits
suelen utilizarse como bits de control para iniciar acciones críticas o no en el
programa realizado, especialmente cuando se combinan con instrucciones de
detección de flancos.
Los bits de marca de ciclo cambian de forma asíncrona respecto del reloj de la CPU
durante los estados operativos de arranque y run. Debido a que trabajan de forma
asíncrona, el estado de los mismos puede cambiar varias veces durante ciclos
largos. El periodo y frecuencia que puede conseguirse con cada uno de los bit es el
que figura en la siguiente tabla:
Número de bit 7 6 5 4 3 2 1 0
S1
I0.1 I0.2 Q1.0
S2
K1
En este punto se van a estudiar los elementos básicos que se incorporan en los
programas de usuario. Aunque existen más elementos, que se estudiarán
desarrollando ejercicios con ellos, los que aquí se presentan son imprescindibles
para un buen entendimiento del resto de elementos y para poder trabajar con soltura
con ellos.
Contactos
Los contactos son elementos de entrada de información de tipo binario es decir,
representan los estados lógicos de una variable (activado / desactivado, 1 / 0, ON /
OFF, etc.) y se representan como “normalmente abiertos” (el contacto está abierto
mientras no se actúe sobre él) o “normalmente cerrados” (el contacto está cerrado
mientras no se actúe sobre él).
Este tipo de elementos puede estar asociado a entradas, salidas, marcas internas,
temporizadores, contadores, etc. En la siguiente figura se pueden ver algunos
ejemplos:
a b c d
Fig. 40 a) contacto normalmente abierto asociado a una entrada física del PLC. b) contacto
normalmente cerrado asociado a una entrada física del PLC. c) contacto normalmente abierto
asociado a una salida física del PLC. d) contacto normalmente abierto asociado a un bit de
marca interna
Bobinas
Las bobinas reciben su nombre por herencia de los circuitos clásicos con relés. En
los programas, representan el valor de una variable cuyo resultado depende de las
señales o variables (contactos) a los que está asociada. El valor que toma la bobina
puede asociarse a una salida física del PLC o a un bit de memoria (a un bit de
marca, por ejemplo).
Para el PLC S7-1200 existen diversos tipos de bobinas, siendo las más utilizadas las
que se presentan a continuación, dejando el resto para su aprendizaje mediante la
realización de los ejercicios correspondientes.
( ) (S) (P)
a c M2.6
e
( ) (R ) (N)
b d M6.8
f
c) “Activar salida”. Permite poner a “1” el estado lógico del operando indicado
(Q0.7). La instrucción se ejecuta cuando el resultado lógico de la entrada de
la bobina es “1”, permaneciendo sin cambios cuando éste sea “0”.
() ()
Desactivado Desactivado Desactivado Activado
() ()
Activado Activado Activado Desactivado
a b
(s) (R)
Desactivado Desactivado Desactivado Activado
(s) (R)
Activado Activado Activado Desactivado
(s) (R)
Desactivado Activado Desactivado Desactivado
a b
Fig. 43 Activar salida “S” (a) y desactivar salida “R” previo SET (b)
empieza activada (un SET previo). Cuando se activa la entrada I0.2, la salida Q1.3
se desactiva, permaneciendo en este estado aun cuando se deje de activar dicha
entrada.
Temporizadores
Los temporizadores constituyen una herramienta muy útil en el desarrollo de los
programas de usuario ya que permitirán obtener retardos programados para
diferentes aplicaciones. Para la CPU S7-1200 se pueden encontrar los siguientes
cuatro tipos diferentes de temporizadores:
Tipo de
Parámetro Descripción
datos
Para TOF:
Q Bool Para TP; permanece activa durante el tiempo predeterminado tras activar la
entrada IN
Para TOF; Se activa tras activar la entrada IN. Se desactiva después del
tiempo predeterminado tras desactivar la entrada IN
Contadores
Los contadores representan otro de los elementos imprescindibles en la
programación de PLC’s. Los contadores van a permitir conocer el número de veces
que tiene lugar un determinado evento, o establecer la cantidad de veces que debe
repetirse una acción. Para la CPU S7-1200 se pueden encontrar los siguientes tres
tipos diferentes de contadores:
0 1 0
I0.1 I0.2 Q1.3
() 1 0 0
1 1 1
()
0 0 0
0 1 1
I0.1 Q1.1
() 1 0 1
1 1 1
I0.2
tabla de verdad
función lógica
I0.1 Q0.6
I0.1 Q0.6
0 1
NOT () 1 0
tabla de verdad
I0.1 Q0.6
NOT ()
función lógica
0 0 1
0 1 1
I0.1 I0.2 Q1.1
1 0 1
NOT () 1 1 0
tabla de verdad
función lógica
Es posible conseguir una función “suma lógica negada” o “NOR” haciendo uso de
contactos en paralelo seguidos de la función “negación”. En este caso, la salida “Q”
solo se activará cuando todas las entradas puestas en paralelo se encuentren
desactivadas. En la siguiente figura puede verse un ejemplo de este tipo de función.
0 0 1
I0.1 Q1.3 0 1 0
NOT () 1 0 0
I0.2
1 1 0
tabla de verdad
función lógica
Agrupaciones
Las agrupaciones nacen de la conexión “mixta” de conexiones en serie (AND) y
paralelo (OR), además de poder incluir también funciones NOT. Haciendo uso de
estas tres operaciones, se podrá generar cualquier tipo de función lógica. En la
siguiente figura se muestran dos tipos de agrupaciones.
() ()
I0.3 I0.4 I0.3 I0.4
I0.1 M2.0
()
I0.2 M2.1 La entrada I0.1 activa el bit de marca M2.0, a la vez
que la salida Q0.2 haciendo uso de la marca.
()
M2.0 M2.1 Q0.1
La entrada I0.2 activa el bit de marca M2.1, a la vez
() que la salida Q0.3 haciendo uso de la marca.
M2.0 Q0.2
Detección de flancos
En muchas ocasiones no será la detección de un determinado nivel (alto o bajo) lo
que interese para resolver una operación concreta, sino el momento en el que se
produce una transición de nivel en un operando. Estas transiciones de nivel es lo
que se conoce como flancos, y pueden ser de dos tipos, ascendentes, cuando la
transición es de nivel bajo a nivel alto (o de “0” a “1”), y descendentes, cuando la
transición es de nivel alto a nivel bajo (o de “1” a “0”).
1
I0.1
I0.1 Q1.1 0
P () Q1.1
1
1
I1.3
I1.3 Q0.5 0
N () Q0.5
1
() ()
Q0.6 Q0.6
() ()
Q0.6 Q0.6
6. PRÁCTICAS
6.1 Introducción
Los materiales necesarios para el desarrollo de esta práctica serán los PC’s del aula,
el paquete de instalación TIA portal V13 y el PLC.
En la ventana que se muestra en la figura 67, se pueden seleccionar los idiomas del
producto. El Inglés sale marcado por defecto. Marcar “Español” y pulsar en
“Siguiente”.
Se configura ahora la selección de los productos que se desea realizar. Deberá estar
seleccionada la instalación “Típica” y las marcas en donde aparecen en la figura 81.
Pulsar “Siguiente”.
Introducir aquí el
nombre del proyecto
que se desea crear
Entre otras, en esta ventana, denominada “vista del portal”, se van a poder abrir
proyectos existentes, crear proyectos nuevos o hacer uso de la ayuda contextual
que ofrece la plataforma.
Se empezará por crear el primer proyecto. Para ello, se escribirá el nombre de
nuestro proyecto en el apartado correspondiente y se pulsará “Crear”.
Una vez creado nuestro proyecto, aparecerá una nueva pantalla en la que
aparecerán los dispositivos utilizados en el mismo. Al haber creado un nuevo
proyecto, no habrá ningún dispositivo, con lo que será necesario agregar uno nuevo
picando en “Agregar dispositivo”.
En la ventana que podrá observarse ahora, pueden seleccionarse diversos tipos de
dispositivos, tales como controladores, interface HMI o sistemas PC. Picando en
controladores se procederá a seleccionar el modelo de PLC con el que se va a
trabajar:
Controladores >> simatic S7-1200 >> CPU >> CPU1214 AC/DC/Rly >> 6ES7 214-
1BG40.0XB0
3 5
6
4
2. Árbol del proyecto y vista detallada. A través del árbol del proyecto es
posible acceder a todos los componentes y datos del proyecto. En la vista
detallada se visualizarán determinados contenidos de un objeto seleccionado,
ya sea en la ventana sinóptica o en el árbol del proyecto.
La primera impresión que puede dar el entorno de trabajo TIA portal, sobre todo para
quien está empezando a iniciarse en programación de PLC’s, puede ser la de que
no es un sistema sencillo, habida cuenta de la gran cantidad de opciones y datos
que se muestran en las pantallas.
Tal y como se irá viendo en prácticas sucesivas, podrá comprobarse que su uso,
enfocado a los objetivos del módulo profesional, es más sencillo de lo que pudiera
parecer en un principio.
Es necesario también comentar que no se van a estudiar todas las posibilidades y
opciones de la herramienta, no es el objetivo del módulo profesional. Tal y como se
ha comentado en el párrafo anterior, el objetivo principal es el de aprender a realizar
programas básicos para PLC’s, si bien sí será necesario tener unos conocimientos
mínimos del uso de la plataforma.
Los materiales necesarios para el desarrollo de esta práctica serán los PC’s del aula,
el paquete TIA portal V13, el PLC, los cables de conexión y la placa de interruptores.
Dados los siguientes enunciados, realizar en KOP el programa que les da solución,
realizando la simulación y carga en el PLC de los mismos.
El primer ejercicio se resuelve durante esta práctica.
El alumno deberá elegir 2 ejercicios más (entre el 2, 3 y 4) para resolver de forma
obligatoria.
Ejercicio nº 1
Un sistema de alarma consta de 4 detectores, cuyos contactos estarán cerrados
cuando no exista condición de alarma, y de un luminoso que habrá que activar en
caso de que sea detectada una intrusión. Los contactos de los detectores se
conectan a 4 entradas del PLC (I0.0, I0.1, I0.2 e I0.3) y el luminoso a la salida Q0.0.
Ejercicio nº 2
Una trituradora cilíndrica de basura dispone de 3 sensores de nivel y dos motores
para triturar. Los sensores están colocados a tres alturas diferentes dentro del
recipiente. El primero de ellos (sensor “mínimo”, en la base de la cuba) podrá indicar
o no la existencia de un nivel mínimo de desperdicios para que el sistema se ponga
en funcionamiento. El segundo detector (sensor “medio”, en un punto intermedio de
la altura de la cuba) indicará cuándo los desperdicios alcanzan un nivel suficiente
como para poner en funcionamiento uno de los motores. El tercer detector (sensor
“máximo”, en la parte alta de la cuba) indicará el nivel máximo de desperdicios, en
cuyo caso deberán ponerse en funcionamiento ambos motores.
Ejercicio nº 3
Se dispone de dos pulsadores (marcha, NA y paro, NC) para arrancar y detener un
motor. Diseñar el circuito correspondiente utilizando las funciones SET y RESET.
Habrá que tener en cuenta que la pulsación simultánea de la marcha y el paro no
debe conducir a un SET y RESET simultáneos de la salida.
El pulsador de marcha estará conectado a la entrada I0.0 del PLC, el de paro a la
I0.1 y el motor a la salida Q0.0.
Ejercicio nº 4
Se dispone de un sistema de iluminación dotado de 3 pulsadores y una lámpara. Se
desea poder activar y desactivar la lámpara desde cualquiera de los pulsadores, y
con independencia de que alguno de ellos pueda quedarse activado de forma
continua. Realizar el programa correspondiente que dé solución al circuito haciendo
uso de detección de flancos.
Los pulsadores estarán conectados a las entradas I0.0, I0.1 e I0.2. La lámpara
estará conectada a la salida Q0.0.
Ejercicio nº 5
Al activar un pulsador de marcha, el carro de una máquina debe realizar un
desplazamiento entre dos puntos, A y B. El recorrido debe partir del punto A y llegar
al punto B. Alcanzado el punto B, se activará una salida para invertir el sentido de
giro del motor para que el carro vuelva al punto A. Alcanzado el punto A, el carro
esperará hasta recibir una nueva pulsación.
De acuerdo con el enunciado del ejercicio, bastará con poner en serie (conexión
AND) los contactos de los tres detectores (normalmente cerrados) para poder
detectar cuándo uno de ellos se abre, al detectar una situación de alarma. En serie
con los contactos se insertará una bobina de salida “negar asignación”, de modo que
cuando no exista condición de alarma la salida estará abierta, y cuando se detecte
alarma en alguno de los sensores, la salida se activará, poniendo en funcionamiento
el luminoso.
()
Fig. 90 Circuito a implementar
Se empezará pues por insertar una nueva función. Para ello, y desde el “árbol del
proyecto”, entrar en la carpeta “Bloques de programa” y hacer doble clic en “Agregar
nuevo bloque”, tal y como se muestra en la siguiente figura.
Puede verse que existe la posibilidad de agregar nuevas tablas de variables. Esto
podrá ser necesario en proyectos de una relativa complejidad y cuando se desee
agrupar las variables por alguna razón. En principio, y para el trabajo a realizar de
aquí en adelante, se hará uso de la “tabla de variables estándar”. Bastará con hacer
doble clic sobre su icono para abrirla y comenzar la edición.
Una vez terminado el esquema en la función FC1, habrá que llamar a esta función
desde el bloque de organización OB1. Para ello, se abre el bloque de organización
OB1 con un doble clic sobre “Main (OB1)” en el árbol del proyecto. Una vez abierto
el bloque, se picará sobre la función FC1 y, manteniendo el botón izquierdo del ratón
pulsado, se arrastrará hasta el segmento 1 del OB1.
Aún existe otra herramienta más que permitirá una observación dinámica de los
sucesos que tienen lugar en el circuito realizado, denominada “observación”. En el
menú de la ventana del área de trabajo puede verse un símbolo que representa
unas gafas. Bastará con pulsar en el mismo para activar/desactivar la observación.
Se procede a activarla y a comprobar cómo tanto los contactos como la bobina del
esquema realizado se ven activados o desactivados.
Al cambiar los valores de las entradas se puede comprobar el circuito haciendo uso
de la observación.
Se puede ver que, al activar la entrada “sensor 1”, la salida se activa, indicando la
condición de alarma que se solicitaba en el enunciado. Lo mismo puede hacerse con
cualquier combinación de las entradas para observar la correcta respuesta del
programa propuesto.
Una vez realizada la simulación, es momento de guardarla para que no se pierda la
tabla de simulación generada para este proyecto. Para ello, seleccionar “guardar
como” en el menú “Proyecto” del PLCSIM. En la ventana que se abrirá, se podrá
indicar el nombre con el que se desea guardar así como la ruta, que por defecto
será en la que se encontraba el proyecto realizado (ejercicio1p1). Pulsar “Guardar”.
Puede ser, y de hecho será lo más habitual, que el PLC conectado esté cargado con
un programa anterior, y que al conectarlo a la red éste se haya puesto en modo Run
y la aplicación se esté ejecutando. Será necesario entonces detener los módulos
para proceder a la carga del nuevo programa. Para ello, se seleccionará “detener
todos” tal y como se muestra en la siguiente figura, correspondiente a la ventana
que se habrá abierto. Si es la primera vez que se conecta el PLC, este paso no será
necesario.
Por último se procederá a solicitar el arranque de los módulos tras la carga del
programa, para lo cual habrá que asegurarse de que la casilla “Arrancar todos”
está marcada en la ventana que se muestra en la siguiente figura.
En este ejercicio cabe resaltar dos conceptos. Por un lado se trabaja con las bobinas
“SET” y “RESET” y por otro, con el hecho de que hay que evitar que la salida se
active y desactive al mismo tiempo por simultaneidad al pulsar “Marcha” y “Paro”.
No se incluye el OB1 al dar por supuesto que se ha cargado la función en el mismo.
En este ejercicio se trabajan dos temas importantes. Por un lado se trabaja con la
detección de flancos y las instrucciones al efecto, que sin ser algo complejo, sí será
importante dejar clara su utilización al alumnado. En segundo lugar, se trabaja con el
uso de las “marcas” como elementos de control del flujo en la ejecución del
programa. Este aspecto será muy importante de cara no solo a la utilización de
“marcas” como elementos auxiliares para tener unos determinados datos, sino al
hecho de que también van a permitir controlar la secuencia de ejecución del
programa.
Los materiales necesarios para el desarrollo de esta práctica serán los PC’s del aula,
el paquete TIA portal V13, el PLC, los cables de conexión y la placa de interruptores.
Dados los siguientes enunciados, realizar en KOP el programa que les da solución,
realizando la simulación y carga en el PLC de los mismos.
El primer ejercicio se resuelve durante esta práctica.
El alumno deberá elegir 1 ejercicio más (entre el 2 y el 3) para resolver de forma
obligatoria.
Ejercicio nº 1
Dado el sistema del carro del ejercicio 5 de la práctica anterior, realizar un programa
tal que se tenga un piloto luminoso que parpadee con un periodo de 1 sg cuando el
carro se desplaza desde el punto A al B, y con un periodo de 2 sgs cuando lo haga
del punto B al A. El piloto luminoso estará conectado a la salida Q0.2 del PLC.
Ejercicio nº 2
El depósito de una amasadora automática está dotado de cuatro sensores de nivel.
Como salida, el sistema posee un luminoso que deberá parpadear de acuerdo con lo
establecido a continuación:
Los sensores estarán conectados a las cuatro primeras entradas del PLC, y el
luminoso a la salida Q0.0.
Ejercicio nº 3
Una granja avícola dispone de un sistema de calefacción y refrigeración para el
control de la temperatura en la nave de cría de pollos neonatos. El dispositivo que se
encarga de la medida de la temperatura dispone de dos salidas digitales que
entregan la siguiente información:
El primer paso para trabajar con las marcas de ciclo será activar su funcionamiento.
Este paso se dará entrando en la opción de configuración de dispositivos dentro
del árbol del proyecto.
Teniendo seleccionado el PLC, se procederá a seleccionar “marcas del sistema y
de ciclo” en la pestaña “General” de la ventana de inspección, marcando
posteriormente la casilla “Activar la utilización de marcas de ciclo” y configurando
la marca M100 (por ejemplo) como dirección del byte de marcas de ciclo. Puede
verse este proceso en la siguiente figura.
llevar el control del sistema y otra que se ocupe de actualizar y controlar las salidas
de acuerdo con los datos aportados por la primera.
El esquema del ejercicio 5 de la práctica anterior es perfectamente válido, salvo que
se van a sustituir las salidas Q0.0 y Q0.1 por dos marcas, y serán éstas las que, en
una segunda función, se encarguen de activar o desactivar las salidas de acuerdo a
su valor lógico. En la siguiente figura pueden observarse las modificaciones
necesarias en los segmentos de la primera función afectados.
cuando esté activa la marca M20.1 y además, activar el piloto conectado a la salida
Q0.2 con una intermitencia cuyo valor estará definido por el bit 7 (periodo igual a 2
sgs.). El resultado de la función sería el siguiente:
Otro aspecto muy importante a la hora de programar es, como puede haberse visto
en todos los circuitos planteados, lo imprescindible de poner comentarios
explicativos de la función realizada en los diferentes segmentos. Cuando los
programas son largos, serán especialmente útiles para una clara comprensión de los
mismos.
El último paso consistirá en añadir al bloque de organización OB1 la nueva función
FC2 realizada, quedando de la siguiente manera.
En este ejercicio, además de trabajar con las marcas de ciclo, se vuelve a insistir en
las funciones básicas de contactos en serie (AND) y contactos en paralelo (OR) para
afianzar estos conceptos.
Igualmente, en la solución propuesta, se sigue trabajando con el concepto de dividir
el programa en funciones que realizan una labor concreta. Este aspecto se
considera importante de cara a conseguir que el alumnado trabaje con un cierto rigor
y orden.
La solución propuesta para el ejercicio es la que aparece en las siguientes figuras.
En esta práctica se persigue que el alumno trabaje con los distintos tipos de
temporizadores existentes para el S7-1200.
Los materiales necesarios para el desarrollo de esta práctica serán los PC’s del aula,
el paquete TIA portal V13, el PLC, los cables de conexión y la placa de interruptores.
Dados los siguientes enunciados, realizar en KOP el programa que les da solución,
realizando la simulación y carga en el PLC de los mismos.
El primer ejercicio se resuelve durante esta práctica.
El alumno deberá elegir 2 ejercicios más (entre el 2 y el 4) para resolver de forma
obligatoria.
Ejercicio nº 1
Partiendo del ejercicio del carro de la práctica 2, realizar una adaptación para activar
una salida (a la que se conectará un zumbador) durante tres segundos cada vez que
se realice un ciclo de movimiento completo (A > B > A). El zumbador se conectará
en la salida Q0.2 del PLC.
Ejercicio nº 2
Desarrollar un programa para que una baliza electrónica emita un destello continuo
de 5 sgs. de duración, permaneciendo después durante 3 sgs. apagada. La
condición de funcionamiento del sistema será la activación de un interruptor de
encendido.
El interruptor se conectará en la entrada I0.0 y el piloto de la baliza en la salida Q0.0.
Ejercicio nº 3
Desarrollar un programa de control de modo que una escalera mecánica, dotada de
un sensor de presencia de personas sobre la misma, pueda trabajar a dos
velocidades.
Cuando el sensor no detecte presencia, la escalera mecánica trabajará a una
velocidad de 0,05 m/sg, activando para ello la salida Q0.0. Por el contrario, cuando
el sensor detecte que hay alguien sobre la escalera, ésta deberá moverse a una
velocidad de 0,15 m/sg., activando para ello la salida Q0.1.
En el momento en el que el sensor deje de detectar presencia, la velocidad deberá
volver a su valor mínimo transcurridos 2 sgs. desde que se dejó de detectar la
presencia.
El sensor está conectado a la entrada I0.0 del PLC.
Ejercicio nº 4
Una cinta transportadora está dotada de un sistema de control de los elementos que
circulan por ella. La cinta alimenta a un torno que debe mecanizar cada pieza, en
cuyo trabajo invierte 5 sgs (todo el proceso, sujeción de pieza, mecanizado y
liberación de pieza).
Habida cuenta de la importancia de que el torno no esté parado demasiado tiempo
por falta de piezas, se instala un zumbador que deberá activarse cuando el tiempo
transcurrido entre el paso de dos piezas consecutivas por la cinta sea mayor a 10
sgs., avisando así al operario para que proceda a solucionar la disfunción en el
alimentador.
El sensor de detección estará conectado en la entrada I0.1 y el zumbador en la
salida Q0.0. También se dispondrá de un interruptor para activar el sistema (I0.0) y
de un pulsador manual para reiniciar la cuenta de tiempo transcurrido (I0.2).
Al seleccionar el temporizador,
aparecerá una ventana para asignarle
un bloque de datos (DB). Hay que
recordar que en el PLC S7-1200 los
temporizadores no son físicos, sino
software, con lo que la información
correspondiente a los mismos deberá
estar guardada en un bloque de datos
del tipo IEC_Timer_0_DB.
Tan solo queda modificar la función FC2 para incluir la salida para atacar al
zumbador, quedando ésta como se presenta a continuación.
Para el desarrollo de este ejercicio se han utilizado, como solución propuesta, dos
temporizadores con retardo a la conexión TON. Se continua en la idea de trabajar
con marcas que habiliten/deshabiliten el funcionamiento de los diferentes
segmentos, profundizando así en el concepto de sistemas secuenciales como mejor
opción para la resolución de gran variedad de aplicaciones.
Al utilizar dos temporizadores se observará que, en principio, deben utilizarse dos
bloques de datos DB, uno por temporizador. Se propondrá también una solución
para poder utilizar un solo DB que albergue ambos temporizadores, y que se podrá
utilizar siempre que la aplicación lo permita.
En la siguiente imagen se presenta la primera solución implementada don dos
bloques de datos.
Fig. 153 Función FC2 que controla la activación de la salida del PLC
En primer lugar se eliminan los temporizadores del esquema, así como los DB’s que
se habían generado. Esto último puede hacerse desde el árbol del proyecto tal y
como se muestra en la siguiente figura.
El siguiente paso será crear un DB global que albergará a los dos temporizadores.
Para ello, se selecciona “Agregar nuevo bloque” en el árbol del proyecto,
apareciendo la siguiente ventana.
El siguiente paso será asociar cada uno de los temporizadores insertados al bloque
de datos creado. Se hace un doble clic en el símbolo “<???>” que aparece sobre
cada uno de los temporizadores y, haciendo uso del desplegable de su derecha, se
le asocia el temporizador creado al efecto.
En este ejercicio se trabaja con el último de los temporizadores con que cuenta el
S7-1200, el “acumulador de tiempo TONR”. Se añade, además, un segundo
temporizador para controlar el tiempo de sirena.
En esta práctica se persigue que el alumno trabaje con los distintos tipos de
contadores existentes para el S7-1200.
Los materiales necesarios para el desarrollo de esta práctica serán los PC’s del aula,
el paquete TIA portal V13, el PLC, los cables de conexión y la placa de interruptores.
Dados los siguientes enunciados, realizar en KOP el programa que les da solución,
realizando la simulación y carga en el PLC de los mismos.
El primer ejercicio se resuelve durante esta práctica.
El alumno deberá elegir 1 ejercicio más (entre el 2 y el 3) para resolver de forma
obligatoria.
Ejercicio nº 1
Se desea conocer el tiempo diario durante el cual una máquina permanece activada.
Este tiempo deberá presentarse en horas, minutos y segundos. En ningún caso la
máquina permanecerá más de 24 horas conectada y, de ser así, se realizaría un
“reset” del contador de tiempo. Las entradas y salidas de que se dispone para
implementar el sistema son las siguientes:
Ejercicio nº 2
A un determinado proceso industrial llegan cajas con 40 unidades de piezas a través
de una cinta transportadora. Cuando una caja alcanza un punto concreto (detectado
por un sensor conectado a la entrada I0.0), la cinta se detiene, y un brazo neumático
se encarga de ir sacando las 40 piezas del interior de la caja, una por cada vez que
un operario actúe sobre el pulsador de extracción conectado en la entrada I0.1 del
PLC. Cuando la caja está vacía, la cinta deberá ponerse nuevamente en
funcionamiento, activando el motor conectado a la salida Q0.0 del PLC, hasta que
una nueva caja llegue hasta el punto de extracción, momento en que todo el ciclo
volverá a repetirse.
Ejercicio nº 3
Se pretende controlar el aforo de una sala. Tanto en la entrada como en la salida, se
dispone de unos detectores que irán sumando o restando la cantidad de personas
que acceden o salen de la sala (I0.0, entrada. I0.1 salida). El aforo máximo permitido
es de 40 personas, alcanzado el cual deberá iluminarse un piloto rojo en la entrada
indicando que no puede acceder más público (conectado a la salida Q0.0 del PLC).
Si el aforo no es el máximo, deberá activarse un piloto verde indicando que es
posible el acceso.
Número de bit
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
MB20 MB21
MW20
Solución:
Presión, MW30 (ocupando 16 bit); Temperatura, MD32 (ocupando 32 bit); Altura,
MB36 (ocupando 8 bit); Profundidad, MD37 (ocupando 32 bit); Tono, MB41
(ocupando 8 bit); Color, MD42 (ocupando 32 bit) y Longitud, MW46 (ocupando 16
bit).
En este ejercicio se propone un enunciado de fácil resolución para que los esfuerzos
se centren en la comprensión y uso de dos elementos nuevos. La función de
“comparación” y la función “Move”.
La propuesta de solución es la que se muestra en la siguiente figura:
En esta práctica se persigue que el alumno trabaje con algunas de las operaciones
matemáticas sencillas existentes para el S7-1200.
Los materiales necesarios para el desarrollo de esta práctica serán los PC’s del aula,
el paquete TIA portal V13, el PLC, los cables de conexión y la placa de interruptores.
Dados los siguientes enunciados, realizar en KOP el programa que les da solución,
realizando la simulación y carga en el PLC de los mismos.
El primer ejercicio se resuelve durante esta práctica.
El alumno deberá elegir 2 ejercicios más (entre el 2, 3 y el 4) para resolver de forma
obligatoria.
Ejercicio nº 1
En una embasadora se llenan botellas de agua de 2, 5 y 10 litros, siendo detectado
cada tipo de embase por los sensores conectados a las entradas del PLC I0.0, I0.1 e
I0.2.
Se desea conocer el número de litros embasados desde que se activa el
funcionamiento de la máquina, mediante el interruptor situado en la entrada I0.3.
También podrá realizarse un reset del total en cualquier momento, actuando sobre el
pulsador situado en la entrada I1.0.
El registro para contener el número de litros total embasado deberá seleccionarse
sabiendo que el número máximo de litros por día nunca excederá de 50000.
Ejercicio nº 2
Una embasadora dispone de un depósito con una capacidad máxima para 30 Kg de
harina. Los sacos con los que se repone la harina en el depósito son de 8 Kg, y los
paquetes que se rellenan desde el depósito, de 3 Kg.
Implementar un sistema tal que se impida rellenar el depósito si se va a aportar un
nuevo saco que haga que pueda desbordarse la capacidad máxima. El sistema
también deberá impedir que puedan rellenarse paquetes cuanto el contenido del
depósito sea inferior a 3 Kg.
Cuando se aporta un saco al depósito, se actúa sobre un sensor conectado en la
entrada I0.0. Cada vez que se rellena un embase desde el depósito, se actúa sobre
un sensor conectado en la entrada I0.1. En la salida Q0.0 se ha conectado un
sistema que al activarse cierra el depósito impidiendo su llenado. En la salida Q0.1
también se ha instalado un sistema que al activarse impide que pueda salir material
del depósito.
Ejercicio nº 3
Se desea conocer el área de un triángulo equilátero cuya base mide 8 metros y su
altura es de 7 metros.
Por determinadas razones, es necesario que los valores de base, altura y área del
triángulo estén albergados en un bloque de datos creado al efecto.
Ejercicio nº 4
Una enrrolladora de papel debe permanecer en funcionamiento el tiempo necesario
para obtener rollos de diferentes tamaños. En función del tamaño del rollo a fabricar,
se configurará un determinado tiempo de funcionamiento en segundos (con un
máximo de 1000 sgs. en funcionamiento). Para la configuración se utilizarán los
pulsadores conectados en las entradas I0.0, I0.1 e I0.2 del PLC, y cuyas
características se comentan más adelante.
Una vez seleccionado el valor del tiempo de funcionamiento, deberá cargarse éste
haciendo uso de un pulsador conectado en la entrada I0.3 del PLC. Cargado el
tiempo de funcionamiento, se actuará sobre un pulsador de “Marcha” para activar el
motor de la enrrolladora (situado en la salida Q0.0 del PLC). Transcurrido el tiempo
configurado, el motor deberá detenerse.
I0.0 >> Incrementa, con cada pulsación, 1 sg al tiempo.
I0.1 >> Incrementa, con cada pulsación, 10 sgs al tiempo.
I0.2 >> Incrementa, con cada pulsación, 100 sgs al tiempo.
Sabiendo que la cantidad de litros embasados por día no superará el valor 50000,
está claro que bastará con configurar un tipo de datos UInt (16 bit sin signo) para el
registro que deberá contener el número de litros embasados por día. Esto se hará en
la tabla de declaración de variables, como se muestra en la siguiente figura.
Del mismo modo, a la hora de insertar la función de suma (ADD) en un segmento del
esquema, se deberá de seleccionar el tipo de datos elegido para esta función. En
principio, y de forma automática, la función suma se amoldará al tipo de datos que
aparezca en las entradas, pero no está demás acostumbrarse a seleccionarlo en la
misma función para evitar errores que pudieran pasar desapercibidos.
Dado que el valor máximo en kilos que admite el depósito de harina es de 30,
bastará con seleccionar un tipo de datos SInt (8 bit) para almacenar el dato. En este
caso, y como se verá en el esquema de la solución propuesta, se ha optado por no
seleccionar sobre la función suma el tipo de dato con el que se va a trabajar. Como
se observará, no hay ningún problema, ya que el dato sí se ha definido en la tabla de
valores como SInt y, en consecuencia, aparecerá el texto “Auto (SInt)” en la función
suma, indicando que se ha seleccionado de forma automática el tipo de dato SInt
por ser éste el presente en las entradas.
Comentar también que, para haber dado una mejor solución, podría haberse
empleado el tipo de datos “USInt” en lugar del “SInt”. ¿Por qué?. La respuesta es
sencilla, al no precisar datos negativos, la mejor opción es utilizar un entero corto sin
signo (rango de 0 a 255), aunque también es válida la solución propuesta con el SInt
(rango de -128 a 127) puesto que el valor máximo a introducir es de 30 y jamás se
van a tener números negativos.
Para resolver el ejercicio se utiliza una función suma, encargada de ir aumentando
en 8 kilos el valor del contenido del depósito por cada vez que se active el sensor de
llenado, y siempre y cuando la cantidad actual del mismo no sea superior a 22 Kgs,
ya que de ser así éste se desbordaría. Cuando se detecta que la cantidad actual del
depósito es superior a 22 Kgs, se activará una salida que pondría en funcionamiento
un sistema para impedir rellenar el depósito.
Análogamente, se utiliza una función resta para ir decrementando en 3 Kgs el valor
del contenido del depósito por cada vez que se active el sensor de vaciado, y
siempre y cuando la cantidad actual del mismo no sea inferior a 3 Kgs, que podría
provocar un llenado incompleto del embase. Cuando se detecta que la cantidad
actual del depósito es inferior a 3 Kgs, se activará una salida que pondría en
funcionamiento un sistema para impedir el vaciado de cualquier cantidad del
depósito.
El primer paso para el uso de esta función será decidir qué tipo de datos es
necesario para la resolución de la aplicación. En el caso del ejercicio planteado, se
ha optado por utilizar números reales. Decidido este aspecto, e insertada la función
en el segmento correspondiente, se procede a hacer un “clic” con el ratón sobre el
símbolo “”???” que se encuentra bajo la palabra “CALCULATE”, abriéndose un
desplegable en donde se podrá seleccionar el tipo de datos que utilizará la función.
Todas las entradas, así como la salida, deberán tener el mismo tipo de datos
(configurado en la tabla de variables).
En la imagen de la figura 178 pueden verse tan solo dos entradas para la función,
IN1 e IN2. Si se precisa un número mayor de entradas para la función, bastará con
hacer un “clic” con el ratón sobre el símbolo de la “estrella amarilla” que puede verse
en la figura.
Una vez indicados los operandos y la variable sobre la que se depositará el
resultado de la operación, es el momento de editar la operación que se desea
realizar. Para esto, basta con hacer un doble clic con el ratón sobre el texto
“OUT:=<???>”. Se abrirá el siguiente desplegable en donde se escribirá la
operación que se quiere realizar con las entradas.
En el caso del ejercicio, el cálculo consiste en multiplicar la base (IN1) por la altura
(IN2) y dividir el resultado entre 2 (IN3) para obtener el área del triángulo. Pulsar en
Aceptar para validar la ecuación.
Fig. 180 Solución propuesta al ejercicio del cálculo del área de un triángulo
Fig. 181_a Función FC1 (control del sistema) propuesta como solución al ejercicio
Fig. 181_b Función FC1 (control del sistema) propuesta como solución al ejercicio
Fig. 181_c Función FC1 (control del sistema) propuesta como solución al ejercicio
Fig. 181_d Función FC1 (control del sistema) propuesta como solución al ejercicio
Fig. 182 Función FC2 (control de la salida) propuesta como solución al ejercicio
En esta práctica se persigue que el alumno trabaje con las entradas analógicas del
PLC así como con un módulo de ampliación de salidas analógicas. La última
práctica consistirá en el control de velocidad de un motor asíncrono haciendo uso de
un variador de velocidad.
Los materiales necesarios para el desarrollo de esta práctica serán los PC’s del aula,
el paquete TIA portal V13, el PLC, los cables de conexión, la placa de interruptores,
el módulo de salidas analógicas, un contactor, un motor asíncrono y el variador de
velocidad Micromaster 420.
Dados los siguientes enunciados, realizar en KOP el programa que les da solución,
realizando la simulación y carga en el PLC de los mismos.
El primer ejercicio se resuelve durante esta práctica.
El alumno deberá elegir 3 ejercicios más (entre el 2, 3, 4 y 5) para resolver de forma
obligatoria. El ejercicio nº 6 es obligatorio para todo el alumnado.
Ejercicio nº 1
En una granja avícola se dispone de un sistema de calefacción / refrigeración para el
mantenimiento en buenas condiciones de las avestruces neonatas. El sistema de
control de temperatura está basado en un sensor analógico que entrega a su salida
una tensión de 0 a 10 V, en función de un rango de temperatura comprendido entre
0 y 100 grados centígrados.
Implementar un sistema tal que, cuando la temperatura sea inferior a 18 grados
centígrados se active el sistema de calefacción controlado con la salida Q0.0 del
PLC, y cuando la temperatura sea superior a 36 grados centígrados, se active el
sistema de refrigeración controlado con la salida Q0.1 del PLC. Cuando la
temperatura sea superior a 18 grados centígrados e inferior a 36, el calefactor y el
refrigerador deberán permanecer desconectados.
Ejercicio nº 2
Para medir el volumen en litros de un depósito cilíndrico (de radio 1 metro y altura de
5), se utiliza un sensor de ultrasonidos que entrega en su salida una tensión de 0 a
10 V en función de la altura medida (0 a 5 metros, respectivamente).
Implementar un sistema que calcule, en función de la altura a la que se encuentra el
agua dentro del depósito, el volumen en litros del mismo. Este volumen deberá
almacenarse en un registro para tal fin.
Ejercicio nº 3
Con el fin de evitar el tener que contar las resistencias necesarias para un
determinado proceso de producción, se ha decidido utilizar una balanza de
“precisión” que permita, mediante el pesado de los componentes, activar diversas
salidas cuando la cantidad de resistencias en la balanza sea, al menos, de 100, 500,
1000, 2000, 5000, 7000, 9000 y 10000, respectivamente.
El sensor de la balanza entrega una tensión variable en su salida comprendida entre
0 y 10 V (de 0 a 10 Kgs).
Sabiendo que el peso de cada resistencia es de 0,1 grs, implementar un sistema tal
que permita saber, mediante la activación de las salidas (Q0.0 a Q0.7) en función de
lo comentado en el primer párrafo del ejercicio, conocer la cantidad de resistencias
que hay sobre la balanza. El número exacto de resistencias se almacenará en un
registro para tal fin.
Ejercicio nº 4
Una bomba de extracción de líquidos dispone de una entrada analógica como
consigna para controlar su nivel de potencia de extracción. La tensión de entrada
puede estar comprendida entre 0 y 10 voltios.
Sabiendo que la potencia de la bomba será proporcional a la tensión recibida,
diseñar un sistema tal que la bomba trabaje al 25, 50, 75 y 100 % de su potencia en
función de las señales entregadas por cuatro sensores de nivel de líquido en el
depósito (nivel bajo, nivel bajo-medio, nivel medio-alto y nivel alto). Los sensores
estarán conectados a las cuatro primeras entradas del PLC.
Ejercicio nº 5
Cuando se activa una orden de marcha (mediante un interruptor conectado en la
entrada I0.5 del PLC), un motor asíncrono conectado a un variador de frecuencia
debe comenzar girando al 50% de su velocidad máxima.
La tensión de consigna de velocidad para el variador está comprendida entre 0 y 10
voltios, y es proporcional a la velocidad que alcanzará el motor.
En las entradas I0.0 e I0.1 están conectados dos pulsadores cuya función será la de
incrementar o decrementar, respectivamente, en un 5% la velocidad de giro por cada
pulsación.
Implementar el programa de control para gobernar el motor en las condiciones
expuestas.
Ejercicio nº 6
Se dispone de un motor asíncrono que será gobernado por un variador de velocidad
micromaster 420, del cual conocemos los siguientes datos:
Desarrollar el programa para el PLC que permita el control de velocidad del motor
asíncrono conectado al variador, pudiendo realizar las funciones de los pulsadores e
interruptores conectados en las entradas.
En este ejercicio se trata de aprender a trabajar con las entradas analógicas del PLC
S7-1200, conociendo las funciones a utilizar y las características de las entradas.
Estas entradas analógicas permiten introducir una tensión variable en un rango total
de 0 a 10 voltios DC (los valores negativos no son soportados). La tensión
introducida en estas entradas es convertida internamente a un valor digital
proporcional a la tensión, pudiendo obtener un rango de valores enteros
comprendido entre 0 y 27648.
Para trabajar con las entradas analógicas es necesario utilizar dos funciones
integradas en el entorno TIA portal para el PLC S7-1200, NORM_X y SCALE_X, que
se explican a continuación.
Por su parte, la función SCALE_X, cuya entrada será el valor de la salida de la función
NORM_X, permitirá escalar el parámetro VALUE real normalizado al tipo de datos y rango
de valores especificados por los parámetros MIN y MAX, también conocido como escalar a
unidades de ingeniería. El valor de la salida vendrá dado por la expresión OUT = VALUE
(MAX - MIN) + MIN.
Los tipos de datos admitidos para los parámetros de estas funciones son los
siguientes.
MIN Sint, Int, DInt, USInt, UInt, UDInt, Real, LReal Entrada que indica el valor mínimo
del rango
MAX Sint, Int, DInt, USInt, UInt, UDInt, Real, LReal Entrada que indica el valor máximo
del rango
OUT SCALE_X: Sint, Int, DInt, USInt, UInt, UDInt, Valor de salida escalado o
Real, LReal normalizado
(*) Para SCALE_X: Los parámetros MIN, MAX y OUT deben tener el mismo tipo de datos
Para NORM_X: Los parámetros MIN, VALUE y MAX deben tener el mismo tipo de datos
V R 2 (5 h) * 1000
En donde:
OUT:= IN1*IN2*IN2*(IN5-IN3)*IN4
Fig. 193_a Función FC2 propuesta como solución. Control de las salidas
Fig. 193_b Función FC2 propuesta como solución. Control de las salidas
Para la resolución de este ejercicio lo primero que habrá que tener en cuenta es que
el PLC S7 1200, a diferencia de lo que sucede con las entradas, no dispone de
salidas analógicas. Por lo tanto, una vez configurado el autómata en TIA portal, el
siguiente paso será añadir un módulo de salidas analógicas adecuado, que en este
caso será el 6ES7 232-4HB32-0XB0.
Para añadir este módulo, es necesario estar en “Configuración de dispositivos” y
seleccionar, en la ventana de “Catálogo de hardware”, el dispositivo comentado tal y
como puede observarse en la siguiente figura.
Con este ejercicio se trata de que el alumno trabaje nuevamente con elementos ya
estudiados para reforzar su utilización, además de trabajar con el módulo de salidas
analógicas.
En la solución que se propone, se utilizan marcas para obtener un proceso
secuencial, detección de flancos, funciones de comparación, matemáticas y la
función MOVE.
La solución propuesta para el ejercicio se muestra en las siguientes figuras.
Las entradas DIN1 y DIN2 estarán directamente conectadas a las salidas del
PLC correspondientes, permitiendo el arranque a derechas del motor (DIN1 a
nivel alto) y el cambio en el sentido de giro del mismo (DIN2 a nivel alto).