You are on page 1of 196

qwertyuiopasdfghjklzxcvbnmq

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 presente documento didáctico nace para dar respuesta a la asignatura de


Automatización I relativo al bloque temático “Autómatas Programable-Nivel Básico”,
correspondiente a la titulación de Grado de Ingeniería en Energía.

A lo largo de este manual, el alumno aprenderá la estructura y características


fundamentales de los autómatas programables, así como a dar solución a pequeñas
aplicaciones de control con PLC’s.

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

2º Grado de Ingeniería en Energía-Automatización I Página 1


Autómatas Programables

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

2º Grado de Ingeniería en Energía-Automatización I Página 2


Autómatas Programables

6.3.2 Materiales necesarios. ........................................................................... 68


6.3.3 Desarrollo de la práctica. ....................................................................... 68
6.3.4 Desarrollo del primer ejercicio. ............................................................. 71
6.3.4.1 Simulación del ejercicio con PLCSIM. ........................................... 82
6.3.4.2 Carga del proyecto en el PLC físico ............................................... 88
6.3.5 Soluciones propuestas a los ejercicios de la práctica 2 ..................... 92
6.3.5.1 Solución propuesta al ejercicio 2 de la práctica 2 ........................ 92
6.3.5.2 Solución propuesta al ejercicio 3 de la práctica 2 ........................ 93
6.3.5.3 Solución propuesta al ejercicio 4 de la práctica 2 ........................ 94
6.3.5.4 Solución propuesta al ejercicio 5 de la práctica 2 ........................ 95
6.4 Práctica nº 3. Trabajando con marcas de ciclo ......................................... 99
6.4.1 Objetivo de la práctica. .......................................................................... 99
6.4.2 Materiales necesarios. ........................................................................... 99
6.4.3 Desarrollo de la práctica. ....................................................................... 99
6.4.4 Desarrollo del primer ejercicio. ........................................................... 102
6.4.5 Soluciones propuestas a los ejercicios de la práctica 3 ................... 107
6.4.5.1 Solución propuesta al ejercicio 2 de la práctica 3 ...................... 107
6.4.5.2 Solución propuesta al ejercicio 3 de la práctica 3 ...................... 109
6.5 Práctica nº 4. Temporizadores ................................................................... 113
6.5.1 Objetivo de la práctica. ........................................................................ 113
6.5.2 Materiales necesarios. ......................................................................... 113
6.5.3 Desarrollo de la práctica. ..................................................................... 113
6.5.4 Desarrollo del primer ejercicio. ........................................................... 115
6.5.5 Soluciones propuestas para los ejercicios de la práctica 4. ............ 120
6.5.5.1 Solución propuesta para el ejercicio 2 de la práctica 4. ............. 120
6.5.5.2 Solución propuesta para el ejercicio 3 de la práctica 4. ............. 126
6.5.5.3 Solución propuesta para el ejercicio 4 de la práctica 4. ............. 128
6.6 Práctica nº 5. Contadores ........................................................................... 131
6.6.1 Objetivo de la práctica. ........................................................................ 131
6.6.2 Materiales necesarios. ......................................................................... 131
6.6.3 Desarrollo de la práctica. ..................................................................... 131
6.6.4 Desarrollo del primer ejercicio. ........................................................... 133
6.6.5 Soluciones propuestas a los ejercicios de la práctica 5. .................. 138
6.6.5.1 Solución propuesta al ejercicio 2 de la práctica 5. ..................... 138
6.6.5.2 Solución propuesta al ejercicio 3 de la práctica 5. ..................... 141

2º Grado de Ingeniería en Energía-Automatización I Página 3


Autómatas Programables

6.7 Práctica nº 6. Operaciones matemáticas .................................................. 144


6.7.1 Objetivo de la práctica. ........................................................................ 144
6.7.2 Materiales necesarios. ......................................................................... 144
6.7.3 Desarrollo de la práctica. ..................................................................... 144
6.7.4 Desarrollo del primer ejercicio. ........................................................... 146
6.7.5 Soluciones propuestas a los ejercicios de la práctica 6. .................. 149
6.7.5.1 Solución propuesta al ejercicio 2 de la práctica 6. ..................... 149
6.7.5.2 Solución propuesta al ejercicio 3 de la práctica 6. ..................... 152
6.7.5.3 Solución propuesta al ejercicio 4 de la práctica 6. ..................... 156
6.8 Práctica nº 7. Entradas y salidas analógicas ............................................ 162
6.8.1 Objetivo de la práctica. ........................................................................ 162
6.8.2 Materiales necesarios. ......................................................................... 162
6.8.3 Desarrollo de la práctica. ..................................................................... 162
6.8.4 Desarrollo del primer ejercicio. ........................................................... 165
6.8.5 Soluciones propuestas a los ejercicios de la práctica 7. .................. 170
6.8.5.1 Solución propuesta al ejercicio 2 de la práctica 7. ..................... 170
6.8.5.2 Solución propuesta al ejercicio 3 de la práctica 7. ..................... 172
6.8.5.3 Solución propuesta al ejercicio 4 de la práctica 7. ..................... 179
6.8.5.4 Solución propuesta al ejercicio 5 de la práctica 7. ..................... 185
6.8.5.5 Solución propuesta al ejercicio 6 de la práctica 7. ..................... 187
7. Bibliografía de interés para el alumnado........................................................ 195

2º Grado de Ingeniería en Energía-Automatización I Página 4


Autómatas Programables

3. Introducción a los autómatas programables

Los autómatas programables, o PLC, son dispositivos electrónicos programables


especialmente diseñados para poder realizar tareas de automatización de procesos.
Internamente dispone de un microprocesador (o CPU), encargado de decodificar las
instrucciones y ejecutarlas, una memoria, para el almacenamiento de los datos, y
una serie de buses por donde circula la información del sistema. Externamente
dispone de una serie de entradas y salidas que permiten la comunicación con el
entorno, y a las que puede conectarse una gran diversidad de dispositivos tales
como pulsadores o sensores (en las entradas) o electroválvulas, relés o contactores
(en las salidas). Es decir, el PLC será capaz, de acuerdo con el programa que se
esté ejecutando, de actuar sobre las salidas en función de los valores presentes en
las entradas.

Fig. 1 PLC Siemens T1200

Un ejemplo típico de aplicación para los autómatas programables podría ser el


control de un ascensor, en donde como entradas se tendrán los diversos pulsadores
de llamada, alarma o parada, y como salidas, el control de los 5actuadores
necesarios para controlar el movimiento del motor y, en consecuencia, de la cabina
del ascensor.

2º Grado de Ingeniería en Energía-Automatización I Página 5


Autómatas Programables

4. Arquitectura de un autómata programable.

4.1 Arquitectura modular.

En el mercado podemos encontrar autómatas programables denominados


compactos, en donde todos los dispositivos necesarios para su correcto
funcionamiento están incluidos en un solo elemento físico (fuente de alimentación,
CPU, entradas, salidas, comunicaciones, etc.), o sistemas modulares, en los que es
necesario interconectar los diferentes dispositivos necesarios para obtener el
sistema de control. No obstante, incuso los sistemas compactos permiten la
ampliación con módulos de diferentes tipos en función de las necesidades (ampliar
el número de entradas o salidas, incorporar un determinado sistema de
comunicación, etc.).
En la figura 1 puede verse un PLC T1200 CPU1214 de siemens con un diseño
compacto, que incorpora, entre otros, el microprocesador, la fuente de alimentación,
14 entradas digitales, 2 entradas analógicas, 10 salidas y un puerto ProfiNet para
comunicaciones. En el supuesto de que la aplicación que se pretende resolver no
precisara de más requisitos, se le daría solución haciendo uso de este pequeño
bloque compacto. Y en el caso de que fueran necesarios más requisitos, bastaría
con incorporarlos como módulos al módulo principal.
En el caso de la gama S7-1200 de siemens (en adelante se le denominará T1200 o
S7 1200 indistintamente), podemos encontrar una gran variedad de módulos de
señales(SM), placas de señal (Signal Boards SB), placas de comunicación
(Communication Board CB), placas de batería (battery board BB), módulos de
comunicación (CM) y procesadores de comunicaciones (CP), que permiten ampliar
las prestaciones de la CPU.

Fig. 2 Expansión de la CPU

1. Módulo de comunicación (CM) o procesador de comunicaciones (CP)


2. CPU
3. Placa de señal (Signal Board SB), placa de comunicación (Communication
Borad CB) o placa de batería (Battery Board BB)
4. Módulo de señales (SM)

2º Grado de Ingeniería en Energía-Automatización I Página 6


Autómatas Programables

En las siguientes tablas puede observarse la capacidad de expansión para la familia


S7-1200 de siemens.
Tipo Entradas Salidas Entradas/Salidas

Placa de señal  4 entradas de 24 V  4 salidas de 24 V  2 entradas de 24 V DC / 2


(SB) digital DC, 200 KHz DC, 200 KHz salidas de 24 V DC
 4 entradas de 5 V  4 salidas de 5 V  2 entradas de 24 V DC / 2
DC, 200 KHz DC, 200 KHz salidas de 24 V DC, 200 KHz
 2 entradas de 5 V DC / 2 salidas
de 5 V DC, 200 KHz
Módulo de señal  8 entradas de 24 V  8 salidas de 24 V  8 entradas de 24 V DC / 8
(SM) digital DC DC salidas de 24 V DC
 8 salidas de relé  8 entradas de 24 V DC / 8
 8 salidas de relé salidas de relé
(inversor)  8 entradas de 120/230 V AC / 8
salidas de relé
 16 entradas de 24  16 salidas de 24 V  16 entradas de 24 V DC / 16
V DC DC salidas de 24 V DC
 16 salidas de relé  16 entradas de 24 V DC / 16
salidas de relé
Fig. 3 Módulos de señales digitales (SM) y placas de señal (SB)

Tipo Entradas Salidas Entradas/Salidas

Placa de señal  1 entrada analógica  1 salida analógica


(SB) analógica de 12 bits
 1 RTD de 16 bits
 1 termopar de 16
bits
Módulo de señal  4 entradas  2 salidas  4 entradas analógicas / 2
(SM) analógico analógicas analógicas salidas analógicas
4 entradas  4 salidas
analógicas de 16 analógicas
bits
8 entradas
analógicas
 Termopar:
 4 TC de 16 bits
 8 TC de 16 bits
 RTD:
 4 RTD de 16 bits
 8 RTD de 16 bits
Fig. 4 Módulos de señales analógicas (SM) y placas de señal (SB)

2º Grado de Ingeniería en Energía-Automatización I Página 7


Autómatas Programables

Módulo Tipo Descripción

Módulo de comunicación (CM) RS232 Dúplex

RS422/485 Dúplex (RS422)

Semidúplex (RS485)

Maestro ProfiBus DPV1

Esclavo ProfiBus DPV1

Maestro AS-i (CM 1243-2) ASInterface

Procesador de comunicaciones Conectividad de módems GPRS


(CP)

Placa de comunicación (CB) RS485 Semidúplex

TeleService TS Adapter IE Basic Conexión con la CPU

TS Adapter GSM GSM / GPRS

TS Adapter Modem Módem

TS Adapter ISDN ISDN

TS Adapter RS232 RS232

Fig. 5 Interfaces de comunicación

Módulo Tipo Descripción

IO-Link SM 1278 4 maestros IO-Link Soporta 4 esclavos IO-Link

Fig. 6 Módulos tecnológicos

Módulo Descripción

Placa de batería (BB) Se conecta en la interfaz de la placa de ampliación en la parte


frontal de la CPU, ofreciendo respaldo a largo plazo del reloj en
tiempo real.

Fig. 7 Otras placas

Debiendo ser la conexión de los diferentes elementos enumerados en las tablas


como se muestra a continuación:

2º Grado de Ingeniería en Energía-Automatización I Página 8


Autómatas Programables

Placas de señal (SB), Placas de comunicación (CB) y placas de batería (BB)


Un “Signal Board” (SB) permite agregar entradas y/o salidas a la CPU. Solo es
posible agregar un “Signal Board” por PLC, y se conecta en el frente de la CPU. Las
placas de comunicación permiten agregar un puerto de comunicación a la CPU. Una
placa de batería ofrecerá respaldo a largo plazo para el reloj en tiempo real (fig. 8).

Fig. 8 Conexión de placas en el panel frontal

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).

Fig. 9 Conexión de un módulo de señales

1 LEDs de estado para las E/S del módulo de señales


2 Conector de bus
3 Conector extraíble para el cableado de usuario

2º Grado de Ingeniería en Energía-Automatización I Página 9


Autómatas Programables

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).

Fig. 10 Conexión de un módulo de comunicación

1 LEDs de estado del módulo de comunicación


2 Conector de comunicación

4.2 La fuente de alimentación.

La fuente de alimentación es el componente destinado a proveer la tensión de


funcionamiento tanto para el autómata programable como para los diferentes
módulos que se pueden conectar a él, y que se han visto en el punto anterior.
Existen modelos de CPU, tal como el 1214 AC/DC/relé, que incorporan una fuente
de alimentación interna con posibilidad de conectar directamente la CPU a 220 V
CA, incluyendo también una salida de 24 V CC que permitirá la alimentación de
aquellos sensores que pudieran conectarse a sus entradas.
Cuando el modelo de CPU seleccionado no incorpore una fuente de alimentación, o
en el supuesto de incorporarla, ésta no vaya a ser capaz de suministrar la potencia
necesaria para alimentar todos los módulos o dispositivos conectados a la CPU,
será preciso incorporar una fuente de alimentación externa como la que puede verse
en la figura 11, y que se conectará a la izquierda de la CPU.

2º Grado de Ingeniería en Energía-Automatización I Página 10


Autómatas Programables

Fig. 11 Fuente de alimentación externa

4.3 CPU o Unidad Central de Proceso.

La CPU o Unidad Central de Proceso es el núcleo del autómata programable, y será


la encargada de ejecutar las instrucciones del programa del usuario así como de
llevar a cabo la supervisión y el control del sistema, de las comunicaciones y de una
serie de funciones importantes en el funcionamiento del autómata.
Junto con el microprocesador, y formando parte también del núcleo del autómata, se
encuentran las memorias, de tipo PROM (EPROM, EEPROM. Capaces de mantener
su contenido aun cuando se desconecte la alimentación del sistema) para albergar
los programas y datos no volátiles, y de tipo RAM para el manejo de datos volátiles,
así como una serie de circuitos complementarios.
En la ejecución del programa de usuario tiene lugar el denominado ciclo de “SCAN”
o ciclo de ejecución del programa, en donde se hace una lectura de los valores de
las entradas, se ejecutan las instrucciones correspondientes de acuerdo con los
datos leídos y se actúa sobre las salidas como resultado de la ejecución de las
instrucciones con los datos leídos. Este ciclo de ejecución del programa se tratará
más adelante con mayor profundidad.
En la siguiente figura podemos ver una estructura básica de procesador, memoria y
entradas y salidas que ayudará a tener una idea más clara del sistema:

2º Grado de Ingeniería en Energía-Automatización I Página 11


Autómatas Programables

MEMORIAS

Módulos de entrada Módulos de salida

ENTRADAS SALIDAS
DIGITALES DIGITALES
Sensores PROCESADOR Actuadores
ENTRADAS SALIDAS
ANALÓGICAS ANALÓGICAS
ENTRADAS

Fig. 12 Esquema básico de bloques del autómata

4.4 Entradas y salidas.

En todo proceso de control, bien sea de una máquina o de un proceso en sí, es


preciso un continuo intercambio de información entre las variables del proceso
(pulsadores, interruptores, sensores, etc.) y el sistema que lo gobierna, así como el
poder actuar, en función de los datos intercambiados, sobre el proceso para que
éste realice las operaciones programadas. Estas operaciones son posibles gracias a
las unidades de entradas y salidas. El autómata programable leerá la información
presente en las entradas (digitales o analógicas), ejecutará las instrucciones
correspondientes y, posteriormente, actuará sobre las salidas (digitales o
analógicas) para gobernar el proceso.
Los módulos de entradas y salidas son elementos muy característicos en los PLC’s,
pudiendo conectar a ellos infinidad de dispositivos. Se dice, de forma genérica, que
a las entradas se conectan “detectores”, que pueden ser pulsadores, interruptores,
sensores de temperatura, presión, velocidad, etc., que informan a cerca del estado
del sistema, y a las salidas se conectan “actuadores”, tales como relés,
electroválvulas, contactores, pilotos, etc., que serán los encargados de actuar sobre
el proceso.
Dada su importancia, entradas y salidas se tratarán por separado en los dos
siguientes puntos, en donde se especificarán las características principales de cada
una de ellas.

4.4.1 Entradas en los PLC.

Tal y como se ha comentado en el apartado anterior, las entradas serán las


encargadas de suministrar la “información” del proceso a controlar al autómata
programable. Estas entradas pueden ser de dos tipos, digitales, en donde existirán

2º Grado de Ingeniería en Energía-Automatización I Página 12


Autómatas Programables

tan solo dos estados posibles o valores (presencia o ausencia de tensión), o


analógicas, en donde podrá tenerse un determinado rango continuo de valores
correspondientes a una tensión o corriente.
Dentro de los detectores que pueden conectarse a las entradas de un autómata
programable se pueden distinguir dos tipos, detectores activos y detectores pasivos.
Los detectores pasivos son aquellos que no precisan de alimentación para su
funcionamiento (interruptores, pulsadores, etc.) mientras que los detectores activos
incorporan algún tipo de circuito electrónico que necesita ser alimentado para operar
y, de este modo, cambiar el estado lógico.
A continuación se relacionan una serie de dispositivos susceptibles de ser
conectados a las entradas digitales de un PLC:

 Pulsadores e interruptores. Que permiten, mediante la acción de un operario,


enviar órdenes al PLC como por ejemplo una marcha o una parada.

Fig. 13 Elemento con pulsadores de marcha y parada

 Finales de carrera. Que son dispositivos capaces de detectar el paso de un


objeto mediante un mecanismo que cierra (o abre, según el modelo) el paso
de una corriente eléctrica.

Fig. 14 Distintos tipos de finales de carrera

2º Grado de Ingeniería en Energía-Automatización I Página 13


Autómatas Programables

 Termostatos y/o presostatos. Que cambian el estado de sus contactos al


alcanzarse un determinado valor de temperatura o presión.

Fig. 15 Termostato bimetálico con rearme manual

 Detectores de proximidad. La función es similar a la que ofrecen los finales de


carrera, pero en el caso de los detectores de proximidad no es necesario un
contacto físico del elemento a detectar con el sensor. Los detectores de
proximidad más utilizados son los denominados inductivos, capacitivos y
fotoeléctricos.

Los detectores de proximidad inductivos son capaces de detectar piezas


metálicas, mientras que para los capacitivos no es preciso que el material a
detectar sea metálico. Los detectores fotoelétricos están basados,
principalmente, en el corte o reflexión de un haz de luz al paso de un objeto.

Fig. 16 Detectores capacitivo y fotoeléctrico

Como ya se ha comentado, las entradas analógicas posibilitarán la lectura de una


señal eléctrica, bien sea una tensión o una intensidad de corriente, que cambia su
valor en función de los cambios en la magnitud física que están convirtiendo
(temperatura, presión, etc.), dentro de un determinado rango de valores.

Los valores de tensión, o corriente, que llegan a la entrada del autómata


programable son convertidos a sus correspondientes valores digitales (mediante un
conversor A/D) para permitir su tratamiento dentro del programa.

2º Grado de Ingeniería en Energía-Automatización I Página 14


Autómatas Programables

A continuación se muestra la conexión de detectores a entradas digitales, tanto en


CC como en CA, además de la conexión de detectores activos:

Conexión a entradas digitales en CC (24 VDC) de detectores pasivos de tipo


contacto

+V
R1 Optoacoplador
E

Circuito
R2 Interno
Común

+V
R1 Optoacoplador
E

Circuito
R2 Interno
Común

Fig. 17 Entradas en corriente continua

En la figura 17 puede observarse un circuito típico de entrada en corriente continua.


Como puede apreciarse, este tipo de entradas tienen polaridad y es preciso
respetarla para su correcto funcionamiento. En la figura pueden apreciarse dos
formas de conexión de un detector pasivo, con referencia a la tensión de
alimentación +V (figura superior) o con referencia al terminal común (figura inferior).

Es importante destacar que las señales externas nunca se conectan directamente a


la circuitería interna del PLC, ya que podría dañarse en casos de, por ejemplo,
sobretensiones. Para proteger los circuitos internos del PLC se utilizan, como se ve
en la figura, una serie de componentes de protección a los que se suma un
optoacoplador, que proporcionará el necesario aislamiento galvánico.

2º Grado de Ingeniería en Energía-Automatización I Página 15


Autómatas Programables

Conexión de detectores activos a entradas digitales en CC

+
+ + +
Sensor _ PLC _ PLC
S S
E E
Sensor
_ Común _ Común

Fig. 18 Conexión de detectores activos (salida NPN y PNP)

Cuando se trata de conectar detectores activos, éstos pueden tener normalmente


tres tipos de salida, de contacto, por transistor NPN y por transistor PNP.

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.

Conexión a entradas digitales en corriente alterna (230 VAC)

E
S
Circuito interno

N Opto

Fig. 19 Conexión de entradas en corriente alterna

En la figura 19 puede observarse una conexión típica a una entrada del PLC en
corriente alterna.

4.4.2 Salidas en los PLC.

De forma análoga a las entradas, también puede disponerse de salidas digitales y


analógicas en los autómatas programables. Las salidas digitales tienen la
característica de tener dos estados posibles, que físicamente se traduce en tener o
no tensión en las mismas o en que se cierren o no los contactos de un relé.

2º Grado de Ingeniería en Energía-Automatización I Página 16


Autómatas Programables

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

Fig. 20 Salida digital por transistor

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

Fig. 21 Salida digital por triac

2º Grado de Ingeniería en Energía-Automatización I Página 17


Autómatas Programables

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

Fig. 22 Salida digital por relé

En este caso, el elemento que realiza la conmutación de salida es un relé, dando


más versatilidad a ésta que los elementos anteriores ya que se puede utilizar tanto
para corriente continua como para corriente alterna y soportando, normalmente, más
potencia que, por ejemplo, las salidas por transistor.
Como desventajas, cabe citar que la vida útil de los contactos del relé está limitada a
un determinado número de ciclos y es inferior a la vida útil de los semiconductores,
al tratarse de un elemento electromecánico. También es necesario indicar que este
tipo de salidas no será adecuada cuando los tiempos de conmutación requeridos
sean altos, pues el relé tiene tiempos de conmutación relativamente bajos.

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.

2º Grado de Ingeniería en Energía-Automatización I Página 18


Autómatas Programables

4.4.3 Diagrama de conexión de la CPU1214C AC/DC/relé.

En la siguiente figura se puede observar un diagrama típico de conexión para la


CPU1214C AC/DC/relé.

1
2 3 4

Fig. 23 Diagrama de conexión de la CPU 1214C AC/DC/relé

1. Conexión de la alimentación del PLC en corriente alterna 230 V. En estas


tres bornas se encuentran los terminales L1, N y tierra para la entrada de
alimentación a 230 V AC para el autómata.

2. Salida de 24 V DC. En los terminales L+ y M se tendrá una tensión de 24 V


en corriente continua que permitirá, en su caso, alimentar por ejemplo
aquellos detectores activos que se conecten en las entradas.

3. Entradas digitales 24 VDC. Se dispone de 14 entradas digitales a 24 V en


corriente continua divididas en dos grupos, DI.a (.0 a .7) y DI.b (de .0 a .5),
con ocho y seis entradas respectivamente. El terminal 1M constituye el
terminal común para la alimentación externa.

4. Entradas analógicas. La CPU1214C dispone de dos entradas analógicas


(AI0 y AI1) de 0 a 10 VDC para la medida de magnitudes analógicas. El
terminal 2M será el común para las entradas en tensión.

2º Grado de Ingeniería en Energía-Automatización I Página 19


Autómatas Programables

5. Salidas por relé. Se dispone de 10 salidas por relé organizadas en dos


grupos, DQ.a (de .0 a .7) y DQ.b (de .0 a .1). Puede observarse que existen
dos terminales comunes, 1L y 2L, asignados cada uno a un grupo diferente
de 5 salidas. Esto permitirá la utilización de dos tensiones de alimentación
diferentes para cada uno de los dos grupos de 5 salidas.

4.5 Comunicaciones

Los autómatas programables son capaces de comunicarse e intercambiar


información no solo a través de las entradas y salidas comentadas anteriormente, o
con los procesos que controlan, sino que además son capaces de hacerlo con otros
autómatas, PC’s o dispositivos especialmente diseñados para ello.
Los buses de comunicación, además de permitir la interconexión de varios
dispositivos entre sí (PLC’s, sensores, PC’s, interface gráficos, etc.) con un número
de hilos muy reducido, van a facilitar la implantación de los denominados “controles
distribuidos”, en donde para procesos complejos ya no será necesario utilizar un solo
autómata con un gran número de entradas y salidas, además de con largos y
complejos programas de control, sino que el sistema podrá ser controlado por varios
dispositivos integrados en una red, y donde cada uno de ellos se centrará en
controlar una determinada parte del proceso, intercambiando con los demás
elementos la información necesaria para el correcto funcionamiento global del
sistema.
El autómata S7-1200 ofrece los siguientes tipos de comunicación entre la CPU, HMI
y otros dispositivos:

 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).

2º Grado de Ingeniería en Energía-Automatización I Página 20


Autómatas Programables

 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).

Fig. 24 Monitorización de un proceso automatizado

2º Grado de Ingeniería en Energía-Automatización I Página 21


Autómatas Programables

5.1 Lenguajes de programación.

Como se comentó en el punto anterior, existen diferentes lenguajes de programación


para PLC’s. La norma UNE-EN 611131-3 establece y define la estructura, semántica
y sintaxis de los mismos, incluyendo los que pueden observarse en el siguiente
gráfico:

LENGUAJES DE PROGRAMACIÓN

ALFANUMÉRICOS GRÁFICOS

ORIENTADOS A
ORIENTADOS A ESTADOS
PROCESOS

LISTA DE TEXTO DIAGRAMA DE ESQUEMA DE GRÁFICO


INSTRUCCIONES EXTRUCTURADO CONTACTOS FUNCIONES SECUENCIAL
LÓGICAS (GRAFCET)

U E0.0 IF _Cond_ THEN

FP M1.0 // Sentencia IF

Fig. 25 Lenguajes de programación

Lista de instrucciones (AWL), está formado por un conjunto de instrucciones de


bajo nivel, próximas a los códigos máquina. En muchas aplicaciones, su utilización
se centra solo en la optimización del funcionamiento de algunas partes del programa
que así lo requieran.
Texto estructurado (SCL), normalmente definidos como lenguajes de alto nivel. El
uso de este tipo de lenguajes permite la realización de cálculos complejos con mayor
facilidad que otros lenguajes. Se utiliza en aquellas aplicaciones en donde la
complejidad de las mismas así lo requiere.
Diagrama de contactos (KOP), Es el lenguaje de programación más utilizado en la
actualidad, ya que permite una sencilla visualización de los programas. También
conocido como ladder, este lenguaje de programación se basa en diagramas de
contactos que se realizan con editores adecuados. Dado que es el más extendido y
adecuado a los objetivos que se tratan de alcanzar, será el estudiado y utilizado en
el desarrollo de las aplicaciones que se realizarán.

2º Grado de Ingeniería en Energía-Automatización I Página 22


Autómatas Programables

Esquema de funciones lógicas (FBS o FUP), se trata también de un lenguaje


gráfico en el que se van interconectando diversas funciones lógicas para obtener un
determinado resultado. Cada bloque de función realiza su correspondiente función
lógica.
Gráfico secuencial (Grafcet), al igual que los anteriores, se trata de otro lenguaje
gráfico que va a permitir una fácil organización secuencial de las acciones que
deban tener lugar en la ejecución del programa, asociadas a una serie de
condiciones que permitirán la transferencia entre las mismas.
Habida cuenta de que los autómatas con los que se va trabajar corresponden al
modelo de CPU 1214C AC/DC/relé de siemens y que el entorno de desarrollo será
STEP 7 TIA PORTAL V13, éste último nos permite trabajar con el modelo de CPU
seleccionado con los lenguajes KOP (diagrama de contactos), FUP (diagrama de
funciones) y SCL (texto estructurado), siendo, como ya se ha comentado, el
lenguaje KOP el elegido por su amplia utilización.

5.2 Formato de las instrucciones, operandos y direccionamiento.

Las instrucciones que se ejecutan en un programa están compuestas por dos


campos, el código y el operando. El código de la instrucción hace referencia a la
descripción de la operación que debe realizarse, mientras que el operando indica el
lugar en donde se encuentra el dato con el que la instrucción trabajará.
Las zonas más comunes de memoria en donde se encontrarán los datos u
operandos son, para la mayoría de los autómatas programables, las siguientes:

Zona de memoria Identificador Procesa

Entradas I Entradas físicas

Salidas Q Salidas físicas

Marcas M Variables de procesamiento interno

Temporizadores T Variables de tiempo

Contadores C Valores de cómputo

Datos DB Variables y datos

Fig. 26 Zonas comunes de memoria en PLC’s

2º Grado de Ingeniería en Energía-Automatización I Página 23


Autómatas Programables

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:

 Identificador del área de memoria (tales como I, Q o M).


 Tamaño de los datos a los que se va a acceder (“B” para Byte, “W” para Word o
“D” para Double Word).
 Dirección inicial de los datos (tales como byte 4 o palabra 4).

2º Grado de Ingeniería en Energía-Automatización I Página 24


Autómatas Programables

En la siguiente tabla se resume el acceso a datos en las diferentes áreas de


memoria de la CPU S7-1200:

I (memoria imagen de proceso de las entradas)

Bit I[dirección de byte].[dirección de I0.1


bit]

Byte, palabra o doble palabra I[tamaño][dirección de byte IB4, IW5 o ID12


inicial]

Q (memoria imagen de proceso de las salidas)

Bit Q[dirección de byte].[dirección de Q1.2


bit]

Byte, palabra o doble palabra Q[tamaño][dirección de byte QB5, QW8 o QD23


inicial]

M (área de marcas)

Bit M[dirección de byte].[dirección de M10.3


bit]

Byte, palabra o doble palabra M[tamaño][dirección de byte MB30, MW48 o MD14


inicial]

DB (Bloque de datos)

Bit DB[número de bloque de DB1.DBX2.3


datos].DBX[dirección de
byte].[dirección de bit

Byte, palabra o doble palabra DB[número de bloque de DB1.DBB4, DB10.DBW2,


datos].DB[tamaño][dirección de DB20.DBD8
byte inicial]

Fig. 27 Acceso a datos en las áreas de memoria de la CPU S7-1200

2º Grado de Ingeniería en Energía-Automatización I Página 25


Autómatas Programables

5.3 Tipos de datos.

Los tipos de datos se utilizan para determinar el tamaño de un elemento de datos y


el cómo deberán de interpretarse los datos. Todos los parámetros de las
instrucciones soportan, al menos, un tipo de datos, aunque algunos parámetros son
capaces de trabajar con varios tipos.
Los tipos de datos con los que puede trabajar el S7-1200, además de sus
características y algunos ejemplos, figuran en las siguientes tablas:
Tipos de datos Bool, Byte, Word y DWord
Tipo de Tamaño Ejemplos de
Tipo de número Rango numérico Ejemplos de constante
datos en bits dirección

Bool 1 Booleano FALSE o TRUE TRUE, 1 I1.0

Binario 0ó1 0, 2#0 Q0.1

Octal 8#0 ó 8#1 8#1 M50.7

Hexadecimal 16#0 ó 16#1 16#1 DB1.DBX2.3

Nombre_variable

Byte 8 Binario 2@0 a 2#11111111 2#00001111 IB2

Entero sin signo 0 a 255 15 MB10

Octal 8#0 a 8#377 8#17 DB1.DBB4

Hexadecimal B# 16#0 a B#16#FF B#16#F, 16#F Nombre_variable

Word 16 Binario 2#0 a 2#1111000011110000


2#1111111111111111

Entero sin signo 0 a 65535 61680 MW10

Octal 8#0 a 8#177777 8#170360 DB1.DBW2

Hexadecimal W#16#0 a W#16#F0F0, 16#F0F0 Nombre_variable


W#16#FFFF,

16#0 a 16#FFFF

DWord 32 Binario 2#0 a 2#11110000111111110


2#11111111111111111 0001111
111111111111111

Entero sin signo 0 a 4294967295 15793735 MD10

Octal 8#0 a 8#37777777777 8#74177417 DB1.DBD8

Hexadecimal DW#16#0000_0000 a DW#16#F0FF0F, Nombre_variable


DW#16#FFFF_FFFF, 16#F0FF0F

16#0000_0000 a
16#FFFF_FFFF

Fig. 28 Tipos de datos Bool, Byte, Word y DWord

2º Grado de Ingeniería en Energía-Automatización I Página 26


Autómatas Programables

Tipos de datos de entero


Tipo de Tamaño Ejemplos de
Rango numérico Ejemplos de constante
datos en bits dirección

USInt 8 0 a 255 78, 2#01001110 MB0, DB1.DBB4,


Nombre_variable
SInt 8 -128 a 127 +50, 16#50

UInt 16 0 a 65535 65295, 0 MW2, DB1.DBW2,


Nombre_variable
Int 16 -32768 a 32767 30000, +30000

UDInt 32 0 a 4294967295 4042322160 MD6, DB1.DBD8,

DInt 32 -2147483648 a 2147483647 -2131754992 Nombre_variable

Fig. 29 Tipos de datos de entero

Tipos de datos real en coma flotante


Tipo de Tamaño
Rango numérico Ejemplos de constante Ejemplos de dirección
datos en bits

-3.402823e+38 a -1.175495e-38, 123.456, -3.4, 1.0e-5 MD100, DB1.DBD8,

Real 32 +/-0, Nombre_variable

+1.175495e-38 a +3.402823e+38

-1.79769313486223158e+308 a 12345, 123456789e40, Nombre_DB.nombre_var


-2.2250738585072014e-308,
1.2e+40
+/-0,
Reglas:
+2.2250738585072014e-308 a
+1.7976931348623158e+308
LReal 64
No se soporta el
direccionamiento directo

Se puede asignar en una


tabla de interfaz de OB,
FB o FC

Fig. 30 Tipos de datos real en coma flotante

2º Grado de Ingeniería en Energía-Automatización I Página 27


Autómatas Programables

Tipos de datos de fecha y hora


Tipo de Tamaño
Rango Ejemplos de entrada de constantes
datos en bits

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

D#1990-1-1 a D#2168-12-31 D#2009-12-31

Date 16 DATE#2009-12-31

2009-12-31

TOD#0:0:0.0 a TOD#23:59:59.999 TOD#10:20:30.400

Hora 32 TIME_OF_DAY#10:20:30.400

23:10:1

DTL Mín.: DTL#1970-01-01-00:00:00.0 DTL#2008-12-16-20:30:20.250


(Fecha
12 bytes
y hora Máx.: DTL#2554-12-31-23:59:59.999
Largo) 999 999

Fig. 31 Tipos de datos de fecha y hora

Tipos de datos Carácter y Cadena


Tipo de Tamaño
Rango Ejemplos de entrada de constantes
datos en bits

Char 8 Códigos de caracteres ASCII: 16#00 a 16#FF “A”, “t”, “@”

String n+2bytes N = (0 a 254 bytes de caracteres) “ABC”

Fig. 32 Tipos de datos Carácter y Cadena

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.

2º Grado de Ingeniería en Energía-Automatización I Página 28


Autómatas Programables

5.4 Estructura del programa de usuario. Bloques lógicos.

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.

Fig. 33 Estructuras de un programa de control

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.

Fig. 34 Llamada a un bloque desde otro

2º Grado de Ingeniería en Energía-Automatización I Página 29


Autómatas Programables

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.

Fig. 35 Llamada anidadas

5.4.1 Bloque de organización (OB).

Tal y como se podía intuir en el apartado anterior, los denominados bloques de


organización van a permitir estructurar el programa de usuario. Estos bloques de
organización son controlados por eventos, tales como alarmas de diagnóstico o
intervalos, que hacen que la CPU ejecute un determinado bloque de organización.
Algunos de estos bloques de organización se ejecutan en el arranque y tienen
comportamientos definidos.
Un OB de ciclo contendrá el programa principal, aunque es posible incluir más de un
OB de ciclo en el programa de usuario (la CPU los ejecutará en una secuencia
numérica, empezando por el OB con el menor número). En el estado operativo RUN
de la CPU, los OB de ciclo se ejecutarán en el nivel de prioridad más bajo y podrán
ser interrumpidos por todos los demás tipos de eventos. También es preciso conocer
que el OB de arranque no interrumpe al OB de ciclo, ya que la CPU ejecuta el OB de
arranque antes de pasar al estado operativo RUN, que es cuando se ejecutarán los
OB de ciclo.
En numerosas ocasiones el programa de usuario está contenido en un solo OB de
ciclo, que la CPU estará ejecutando de principio a fin una y otra vez (ejecución
cíclica), aunque también será posible crear otros OB para ejecutar funciones
concretas, tales como la atención de alarmas o el tratamiento de errores, e incluso
para ejecutar un determinado código de programa en determinados instantes. Estos
OB interrumpen la ejecución de los OB de ciclo.

2º Grado de Ingeniería en Energía-Automatización I Página 30


Autómatas Programables

5.4.2 Función (FC).

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.

5.4.3 Bloque de Función (FB).

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

Fig. 36 Un OB llama a un FB tres veces, utilizando un DB diferente en cada llamada para


controlar tres dispositivos diferentes

2º Grado de Ingeniería en Energía-Automatización I Página 31


Autómatas Programables

Los DB de instancia almacenan un valor predeterminado y un valor inicial para cada


parámetro. El valor inicial proporcionará el valor que debe utilizarse cuando se
ejecuta el FB pudiendo, posteriormente, modificase ese valor durante la ejecución
del programa de usuario. Será también posible asignar un “valor predeterminado” a
los parámetros (haciendo uso de la columna correspondiente en el interface del FB),
de modo que dicho valor será transferido al valor inicial en el DB de instancia
asociado. En el supuesto de no asignar ningún valor inicial a un parámetro, el valor
predeterminado del DB de instancia se copiará en el valor inicial para ser utilizado.

5.4.4 Bloque de datos (DB).

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:

 DB globales, en donde se almacenan los datos que los bloques lógicos


utilizarán. Cualquier OB, FB o FC puede acceder y trabajar con los datos de un
DB global.
 DB de instancia, en donde se almacenan los datos que corresponden a un FB
concreto. La estructura de los datos dentro de un DB de instancia refleja los
parámetros (Input, Output e Input/Output) y los datos estáticos del FB.

También es preciso conocer que los datos almacenados en un DB no se borran


cuando finaliza la ejecución del bloque lógico correspondiente. Igualmente, si por las
razones que fueren se deseara tener un DB de modo que ningún bloque lógico
pudiera alterar los datos en él inicializados, se podría hacer modificando los atributos
de dicho DB seleccionando la opción “Bloque de datos protegido contra escritura en
el dispositivo”.

5.5 Ciclo de ejecución o ciclo de scan.

El ciclo de ejecución o ciclo de scan es el conjunto de tareas secuenciales que


realiza la CPU en la ejecución del programa de usuario, siendo éstas las siguientes:

 PRIMERA FASE; Se realiza la lectura de las señales en las entradas físicas,


grabando los estados correspondientes a las mismas en unas posiciones de
memoria denominadas “tabla imagen de entradas”.

2º Grado de Ingeniería en Energía-Automatización I Página 32


Autómatas Programables

 SEGUNDA FASE; Tiene lugar la ejecución de las instrucciones del programa de


usuario con los datos almacenados en la tabla imagen de entradas así como
con el resto de datos necesarios para la aplicación (variables internas,
constantes, marcas, valor de temporizadores, valor de contadores, etc.). Los
resultados obtenidos para las salidas se almacenan en unas posiciones de
memoria denominadas “tabla imagen de salidas”.
 TERCERA FASE; Los datos presentes en la tabla imagen de salidas son
copiados en las salidas físicas del autómata programable y se inicia un nuevo
ciclo desde la primera fase.

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.

5.6 Marcas de ciclo.

El byte de marcas de ciclo será especialmente útil cuando se requiera un impulso de


onda cuadrada de frecuencia comprendida entre 0.5 y 10 Hz, de acuerdo con los
valores concretos de cada uno de los bit. La activación del byte de marcas de ciclo
se realiza en las propiedades de la CPU:

Fig. 37 Activación del byte de marcas de ciclo

2º Grado de Ingeniería en Energía-Automatización I Página 33


Autómatas Programables

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

Periodo (s) 2 1.6 1.0 0.8 0.5 0.4 0.2 0.1

Frecuencia (Hz) 0.5 0.625 1 1.25 2 2.5 5 10

Fig. 38 Valores de periodo y frecuencia de los bit de marca de ciclo

5.7 Lenguaje de programación KOP. Diagrama de contactos

El lenguaje de programación KOP (diagrama de contactos o ladder) es uno de los


lenguajes más populares y utilizados en la programación de PLC’s, ya que resulta
más sencilla su interpretación, por parte de la mayoría de técnicos, que otros
lenguajes de programación.
Los esquemas que se utilizan en el desarrollo de los programas no difieren
demasiado, en lo básico, de los utilizados en la representación clásica de los
circuitos eléctricos con contactores y relés.

S1
I0.1 I0.2 Q1.0

S2

K1

Fig. 39 Esquema eléctrico “traducido” a lenguaje KOP

2º Grado de Ingeniería en Energía-Automatización I Página 34


Autómatas Programables

5.7.1 Elementos básicos de programación en lenguaje KOP.

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:

I0.2 I0.2 Q1.3 M25.3

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.

2º Grado de Ingeniería en Energía-Automatización I Página 35


Autómatas Programables

Q0.1 Q0.7 M1.3

( ) (S) (P)
a c M2.6
e

M3.5 Q1.1 Q0.4

( ) (R ) (N)
b d M6.8
f

Fig. 41 Diversos tipos de bobinas

a) “Asignación”. Permite activar el bit del operando indicado (Q0.1). Si el


resultado lógico en la entrada de la bobina es “1”, el operando indicado
tomará el estado lógico “1”. Si el resultado lógico en la entrada de la bobina
es “0”, el operando tomará el estado lógico “0”.

b) “Negar Asignación”. Invierte el resultado lógico y lo asigna al operando


indicado (M3.5). Si el resultado lógico en la entrada de la bobina es “1”, el
operando indicado tomará el estado lógico “0”. Si el resultado lógico en la
entrada de la bobina es “0”, el operando tomará el estado lógico “1”.

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”.

d) “Desactivar salida”. Permite poner a “0” el estado lógico del operando


indicado (Q1.1). 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”.

e) “Activar operando con flanco de señal ascendente”. La instrucción


compara el resultado lógico actual con el de la consulta anterior, que está
almacenado en una marca de flancos (M2.6). Si la instrucción detecta un
cambio en el resultado lógico de “0” a “1”, activa el operando indicado (M1.3)
durante un ciclo de programa. En los demás casos, el estado lógico del
operando es “0”.

f) “Activar operando con flanco de señal descendente”. La instrucción


compara el resultado lógico actual con el de la consulta anterior, que está
almacenado en una marca de flancos (M6.8). Si la instrucción detecta un
cambio en el resultado lógico de “1” a “0”, activa el operando indicado (Q0.4)
durante un ciclo de programa. En los demás casos, el estado lógico del
operando es “0”.

2º Grado de Ingeniería en Energía-Automatización I Página 36


Autómatas Programables

En las siguientes figuras puede observarse el funcionamiento de las bobinas


“asignación” (o bobina directa), “negar asignación” (o bobina negada), “activar
salida” (SET) y “desactivar salida” (RESET).

I0.2 Q1.3 I0.2 Q1.3

() ()
Desactivado Desactivado Desactivado Activado

I0.2 Q1.3 I0.2 Q1.3

() ()
Activado Activado Activado Desactivado

a b

Fig. 42 Funcionamiento de la bobina directa (a) y negada (b)

I0.2 Q1.3 I0.2 Q1.3

(s) (R)
Desactivado Desactivado Desactivado Activado

I0.2 Q1.3 I0.2 Q1.3

(s) (R)
Activado Activado Activado Desactivado

I0.2 Q1.3 I0.2 Q1.3

(s) (R)
Desactivado Activado Desactivado Desactivado

a b

Fig. 43 Activar salida “S” (a) y desactivar salida “R” previo SET (b)

En el caso de la figura 43 “a”, puede observarse que mientras la entrada I0.2


permanece desactivada también permanecerá desactivada la salida Q1.3. En la
figura “b” puede verse el funcionamiento de la bobina “negar asignación”, en donde
mientras la entrada I0.2 esté desactivada, la salida Q1.3 estará activada. Cuando se
activa la entrada I0.2, la salida se desactiva, permaneciendo en este estado mientras
dure la activación de la entrada.
En la figura 43 “a” se observa la secuencia de funcionamiento de una bobina “activar
salida” (SET). En el primer estado la entrada está desactivada y también lo está la
salida Q1.3. En el momento en el que se activa la entrada I0.2, se activa la salida
Q1.3, permaneciendo ésta última en este estado aunque se deje de activar la
entrada I0.2. E el apartado “b” de la figura se observa el funcionamiento de la bobina
“desactivar salida”. En este caso se parte de la situación en donde la salida Q1.3

2º Grado de Ingeniería en Energía-Automatización I Página 37


Autómatas Programables

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:

Temporizador “impulso” (TP). Genera un impulso en la salida “Q” con una


duración predeterminada. En la siguiente figura puede observarse el símbolo del
temporizador y su cronograma:

Fig. 44 Símbolo y cronograma del temporizador TP

Temporizador “retardo a la conexión” (TON). La salida “Q” se activará tras un


tiempo de retardo predeterminado. En la siguiente figura puede observarse el
símbolo del temporizador y su cronograma:

Fig. 45 Símbolo y cronograma del temporizador TON

2º Grado de Ingeniería en Energía-Automatización I Página 38


Autómatas Programables

Temporizador “retardo a la desconexión” (TOF). La salida “Q” se desactivará tras


un tiempo de retardo predeterminado. En la siguiente figura puede observarse el
símbolo del temporizador y su cronograma:

Fig. 46 Símbolo y cronograma del temporizador TOF

Temporizador “acumulador de tiempo” (TONR). El temporizador va acumulando


los tiempos durante los cuales la entrada “IN” esté activada. Cuando el tiempo
acumulado alcanza un valor predeterminado, la salida “Q” se activa, pudiendo ser
reinicializada activando la entrada “R”. En la siguiente figura puede observarse el
símbolo del temporizador y su cronograma:

Fig. 47 Símbolo y cronograma del temporizador TONR

2º Grado de Ingeniería en Energía-Automatización I Página 39


Autómatas Programables

La función de las diferentes entradas y salidas de los diferentes tipos de


temporizador (o parámetros del temporizador) se resumen en la siguiente tabla:

Tipo de
Parámetro Descripción
datos

IN Bool Para TP, TON y TONR:

Si IN=0, deshabilita el temporizador. Si IN=1, habilita el temporizador

Para TOF:

Si IN=0, habilita el temporizador. Si IN=1, deshabilita el temporizador

R Bool Solo para TONR:

Si R=0, sin inicialización. Si R=1, inicializa el tiempo transcurrido y Q=0

PT Time Entrada de tiempo predeterminado

Q Bool Para TP; permanece activa durante el tiempo predeterminado tras activar la
entrada IN

Para TON; se activa tras alcanzar el tiempo predeterminado después de


haber activado la entrada IN

Para TOF; Se activa tras activar la entrada IN. Se desactiva después del
tiempo predeterminado tras desactivar la entrada IN

Para TONR; Se activa cuando el tiempo acumulado alcanza el valor de


tiempo predeterminado. Se desactiva activando la entrada R

ET Time Contendrá el valor de tiempo transcurrido

Fig. 48 Parámetros de los temporizadores

El número de temporizadores que pueden utilizarse en el programa de usuario está


limitado únicamente por la cantidad de memoria disponible, al tratarse de
temporizadores “software”. Por esta razón, cada temporizador utiliza una estructura
de DB del tipo de datos IEC_Timer de 16 bytes para guardar la información del
temporizador especificada encima de la instrucción de cuadro o bobina. STEP 7 crea
automáticamente el DB al introducir la instrucción. Con este modo de trabajo se
generarán tantos DB’s como temporizadores se inserten en el programa, que si se
han aceptado los ajustes predeterminados del cuadro de diálogo correspondiente,
no podrán ser definidos como remanentes, de modo que si hay transiciones de RUN
a STOP y RUN, los datos se perderán.

2º Grado de Ingeniería en Energía-Automatización I Página 40


Autómatas Programables

Cuando se desee que los datos correspondientes a temporizadores sean


remanentes, o cuando se quiera utilizar un solo DB para almacenar la información
de varios temporizadores, bastará con generar un DB global ajustando sus opciones
para habilitar la remanencia.

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:

Contador “ascendente” (CTU). El valor “CV” del contador se incrementa en una


unidad con cada transición de “0” a “1” en la entrada “CU”.

Fig. 49 Símbolo y cronograma del contador CTU

Contador “descendente” (CTD). El valor “CV” del contador se decrementa en una


unidad con cada transición de “0” a “1” en la entrada “CD”.

Fig. 50 Símbolo y cronograma del contador CTD

2º Grado de Ingeniería en Energía-Automatización I Página 41


Autómatas Programables

Contador “ascendente-descendente” (CTUD). El valor “CV” del contador se


incrementa o decrementa en una unidad con cada transición de “0” a “1” en las
entradas CU (cuenta ascendente) o CD (cuenta descendente) respectivamente.

Fig. 51 Símbolo y cronograma del contador CTUD

La función de las diferentes entradas y salidas de los diferentes tipos de


temporizador (o parámetros del temporizador) se resumen en la siguiente tabla:

Parámetro Tipo de datos Descripción

CU,CD Bool Entrada de impulsos para cuenta ascendente/descendente

R (CTU, CTUD) Bool Poner a cero el valor del contador

LD (CTD, CTUD) Bool Orden de carga del valor predeterminado

PV SInt, Int, DInt, Valor de contaje predeterminado


USInt, UInt, UDInt

Q, QU Bool Se activa cuando CV >= PV

QD Bool Se activa cuando CV <= 0

CV SInt, Int, DInt, Valor actual de la cuenta


USInt, UInt, UDInt

Fig. 52 Parámetros de los contadores

2º Grado de Ingeniería en Energía-Automatización I Página 42


Autómatas Programables

Al igual que en el caso de les temporizadores, el número de contadores que pueden


utilizarse en el programa de usuario está limitado únicamente por la cantidad de
memoria disponible, al tratarse de contadores “software”. Por esta razón, cada
contador utiliza una estructura de DB del tipo de datos IEC_Counter cuyo tamaño en
bytes dependerá del tipo de datos utilizado en el contador (3 bytes para los tipos de
datos “Sint” o “USInt”, 6 bytes para tipos de datos “Int” o “UInt” y 12 bytes para los
tipos de datos “DInt” o “UDInt”). STEP 7 crea automáticamente el DB al introducir la
instrucción. Con este modo de trabajo se generarán tantos DB’s como contadores se
inserten en el programa, que si se han aceptado los ajustes predeterminados del
cuadro de diálogo correspondiente, no podrán ser definidos como remanentes, de
modo que si hay transiciones de RUN a STOP y RUN, los datos se perderán.
Cuando se desee que los datos correspondientes a contadores sean remanentes, o
cuando se quiera utilizar un solo DB para almacenar la información de varios
contadores, bastará con generar un DB global ajustando sus opciones para habilitar
la remanencia.

5.7.2 Operaciones básicas en lenguaje KOP.

En este apartado se van a describir una serie de operaciones básicas de


programación en lenguaje KOP (funciones AND, OR, agrupaciones, operaciones con
marcas internas, etc.) que servirán de base para el desarrollo de las diferentes
prácticas.
Conexión serie (AND)
La función “producto lógico” o “AND” tiene su correspondencia en un circuito
combinacional de contactos en serie. Como puede verse en la siguiente figura, la
salida (o bobina) “Q” solo se activará cuando así lo estén todas las entradas
conectadas en serie.

I0.1 I0.2 Q1.3


I0.2 I0.1 Q1.3
() 0 0 0

0 1 0
I0.1 I0.2 Q1.3

() 1 0 0

1 1 1

I0.1 I0.2 Q1.3 tabla de verdad


()
función lógica
I0.1 I0.2 Q1.3

()

Fig. 53 Conexión serie (AND)

2º Grado de Ingeniería en Energía-Automatización I Página 43


Autómatas Programables

Conexión paralelo (OR)


La función “suma lógica” u “OR” tiene su correspondencia en un circuito
combinacional de contactos en paralelo. Como puede verse en la siguiente figura, la
salida (o bobina) “Q” se activa siempre que una o más entradas lo estén.

I0.2 I0.1 Q1.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

Fig. 54 Conexión paralelo (OR)

Función negación (NOT)


La función “negación” o “NOT” invierte el estado lógico de la entrada. Como puede
verse en la siguiente figura, la salida “Q” se activará cuando no lo esté la entrada “I”.

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

Fig. 55 Función negación (NOT)

2º Grado de Ingeniería en Energía-Automatización I Página 44


Autómatas Programables

Conexión serie negada (NAND)


Es posible conseguir una función “producto lógico negado” o “NAND” haciendo uso
de contactos en serie seguidos de la función “negación”. En este caso, la salida “Q”
se activará siempre que una o más entradas en paralelo se encuentren
desactivadas. En la siguiente figura puede verse un ejemplo de este tipo de función.

I0.2 I0.1 Q1.1

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

Fig. 56 Conexión serie negada (NAND)

Conexión paralelo negada (NOR)

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.

2º Grado de Ingeniería en Energía-Automatización I Página 45


Autómatas Programables

I0.2 I0.1 Q1.3

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

Fig. 57 Conexión paralelo negada (NOR)

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.

AND de dos OR de dos


operaciones operaciones
OR AND

I0.1 I0.2 Q1.1 I0.1 I0.2 Q1.1

() ()
I0.3 I0.4 I0.3 I0.4

Fig. 58 Agrupaciones de operadores

Operaciones con marcas internas


Las marcas internas son bits de memoria interna del PLC. Su utilización es similar a
la de los relés auxiliares en la lógica cableada. Pueden utilizarse para almacenar el
estado intermedio de las operaciones o de cualquier otra información de control. Al
área de marcas se puede acceder en formato de bit (M23.4), byte (M12), palabra
(MW40) o doble palabra (MD36), permitiéndose accesos tanto de lectura como de

2º Grado de Ingeniería en Energía-Automatización I Página 46


Autómatas Programables

escritura. En la siguiente figura se muestra un sencillo ejemplo de trabajo con


marcas.

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

() Cuando ambas entradas, I0.1 e I0.2, se encuentran


activadas, también lo estarán los bit de marcas M2.0 y
M2.1 Q0.3 M2.1, quedando entonces activadas las tres salidas
Q0.1, Q0.2 y Q0.3.
()
Fig. 59 Operaciones con marcas

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”).

Un ejemplo claro de lo que sucedería en una salida si a su entrada se aplica un


flanco, es el que aparece en las siguientes figuras. En ellas, y teniendo en cuenta
que los circuitos mostrados no son más que un ejemplo para ver claramente lo que
sucede, puede observarse que la salida solo se activa en el flanco seleccionado por
la instrucción elegida (detección de flanco de subida, o positivo, y detección de
flanco de bajada, o negativo), volviendo a su estado desactivado inmediatamente,
independientemente del estado en el que permanezca la entrada.

2º Grado de Ingeniería en Energía-Automatización I Página 47


Autómatas Programables

1
I0.1
I0.1 Q1.1 0
P () Q1.1
1

1
I1.3
I1.3 Q0.5 0
N () Q0.5
1

Fig. 60 Detección de flancos positivo y negativo

Operaciones con memoria


Las operaciones con memoria serán aquellas capaces de originar y mantener un
determinado evento, aun cuando haya cesado la acción inicial que lo provocó.
A modo de ejemplo, en el circuito de la siguiente figura puede observarse el típico
circuito de marcha-paro, en donde el pulsador de marcha I0.1 es el encargado de
originar la activación de la bobina, el contacto Q0.6 en paralelo de ésta, el que
mantendrá activada la misma, y el pulsador de parada I0.2, el que desactivará la
bobina.

I0.1 I0.2 Q0.6 I0.1 I0.2 Q0.6

() ()
Q0.6 Q0.6

I0.1 I0.2 Q0.6 I0.1 I0.2 Q0.6

() ()
Q0.6 Q0.6

Fig. 61 Operación de marcha-parada con memoria

2º Grado de Ingeniería en Energía-Automatización I Página 48


Autómatas Programables

Operaciones SET y RESET


Para un desarrollo más rápido y claro de las operaciones con memoria, en lugar de
hacer uso de realimentaciones con “contactos”, como se ha hecho en el caso
anterior, se dispone de las operaciones SET (puesta a “1” o “activar”) y RESET
(“puesta a “0” o “desactivar”), que facilitarán la realización de la función comentada.
En la siguiente figura puede observarse de nuevo un circuito de marcha-parada,
pero ejecutado esta vez con las operaciones SET y RESET.

I0.1 I0.2 Q1.3

(s) I0.1; Pulsador de MARCHA (NA)

I0.2 I0.1 Q1.3


NOT (R) I0.2; Pulsador de PARADA (NC)

Fig. 62 Operación de marcha-parada con SET y RESET

El funcionamiento del circuito mostrado es muy simple, la activación de la salida


Q1.3 sólo será posible al actuar sobre el pulsador de MARCHA, eso sí, siempre y
cuando no estuviera activado (o se pulsen ambos simultáneamente) el pulsador de
PARADA. La función SET se encargará de mantener activa la salida aun cuando se
deje de actuar sobre el pulsador de MARCHA. Para desactivar la salida será preciso
actuar sobre el pulsador de PARADA (puede verse que se trata de un pulsador
Normalmente Cerrado, puesto que así van a ser normalmente los pulsadores de
parada), de modo que, siempre y cuando no estuviera activado el pulsador de
MARCHA (o se pulsen ambos simultáneamente), la salida Q1.3 se desactivará
haciendo uso de la función RESET, y se mantendrá desactivada aun cuando se deje
de actuar sobre el pulsador de PARADA.

2º Grado de Ingeniería en Energía-Automatización I Página 49


Autómatas Programables

6. PRÁCTICAS

6.1 Introducción

Se presentan un conjunto de prácticas con el autómata programable T1200 que


pretenden afianzar los contenidos desarrollados en los apartados anteriores.
El primer objetivo de las prácticas será el que el alumno se familiarice
paulatinamente con el entorno de programación TIA portal V13, de modo que éste
no constituya un obstáculo en el aprendizaje de la programación.
El segundo objetivo, y más importante, será que, de acuerdo con la normativa
vigente y la programación didáctica del módulo profesional “Automatismos
Industriales”, el alumno consiga alcanzar el resultado de aprendizaje propuesto
observando los contenidos desarrollados y sus correspondientes criterios de
evaluación.
Las prácticas se organizan por bloques “temáticos” (contactos y bobinas, funciones
de memoria, marcas de ciclo, temporizadores, contadores, etc.), de modo que en
cada una de ellas hay, como mínimo y dependiendo de la complejidad, dos
ejercicios.
Igualmente, en cada práctica el primero de los ejercicios se resuelve paso a paso
para ir trabajando con el entorno TIA portal y las características asociadas a los
contenidos tratados.
Teniendo en cuenta que los contenidos a desarrollar (de acuerdo con la normativa
vigente) hablan de “programación básica de autómatas”, se definen en primer lugar
los contenidos básicos que se trabajarán en las distintas prácticas. Para ello, hay
que tener en cuenta que el tiempo para desarrollar los contenidos y prácticas no
podrá superar las 72 horas de trabajo, pues éste es el tiempo estimado en
programación para este capítulo.

Contenidos que se van a trabajar en las prácticas

 El entorno de programación TIA portal V13


 Circuitos con contactos y bobinas.
 Operaciones con marcas.
 Operaciones con marcas de ciclo.
 Temporizadores.
 Contadores.
 Operaciones matemáticas sencillas.
 Bloques de datos (DB).
 Entradas analógicas.
 Salidas analógicas.

2º Grado de Ingeniería en Energía-Automatización I Página 50


Autómatas Programables

6.2 Práctica nº 1. El entorno de programación TIA portal V13

6.2.1 Objetivo de la práctica.

En esta práctica se persigue, además de que el alumno realice la instalación del


entorno de programación, que éste se familiarice con la herramienta TIA portal V13.

6.2.2 Materiales necesarios.

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.

6.2.3 Desarrollo de la práctica.

Instalación del paquete TIA Portal V13

Entrar en la carpeta llamada “TIA” que se encuentra en el escritorio. En su interior


pueden verse varios ficheros. Hacer doble clic en el fichero
“simatic_step7_professional_v13_sp1.exe” para comenzar la instalación.
El asistente de instalación irá guiando la misma con una serie de ventanas que se
muestran a continuación. Seguir las siguientes instrucciones:
La instalación comienza con la pantalla de “bienvenida” que se muestra en la figura
63. Pulsar “Next”.

Fig. 63 Inicio de la instalación de TIA portal

2º Grado de Ingeniería en Energía-Automatización I Página 51


Autómatas Programables

A continuación se pide seleccionar el idioma de instalación. Seleccionar “Español” y


pulsar en “Siguiente”.

Fig. 64 Selección del idioma de instalación

En la siguiente ventana se solicita la ruta para realizar la extracción de archivos. Se


dejará la que aparece por defecto y se pulsará en “siguiente”, apareciendo después
una ventana en la que se indicará que la extracción está teniendo lugar.

Fig. 65 Selección de la ruta para extracción de ficheros

2º Grado de Ingeniería en Energía-Automatización I Página 52


Autómatas Programables

En la siguiente ventana aparece el idioma de instalación seleccionado y se advierte


que deben cerrarse todas las aplicaciones antes de comenzar con la instalación.
También se podrán leer indicaciones de instalación así como la información del
producto. Se pulsa en “Siguiente” para continuar.

Fig. 66 Comienzo de la instalación

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”.

Fig. 67 Selección de idiomas del producto

2º Grado de Ingeniería en Energía-Automatización I Página 53


Autómatas Programables

La siguiente ventana permite seleccionar los productos a instalar. En nuestro caso,


dejaremos la selección como está, realizando una instalación Típica. Otro aspecto
que permite seleccionar es si se desea crear un icono en el escritorio, se dejará
marcado para que así sea. Igualmente, nos informa de las necesidades de tamaño
en disco para la instalación y del tamaño de que se dispone. Finalmente informa de
la ruta de instalación, que se dejará como está. Pulsar “Siguiente”.

Fig. 68 Selección de los productos a instalar

En la siguiente ventana se deberán leer y aceptar las condiciones de uso de la


aplicación. Marcar las casillas “Acepto todas las condiciones de los acuerdos aquí
listados” y “Confirmo que he leído y comprendido las indicaciones de seguridad para
el uso seguro de los productos”. Pulsar en “Siguiente”.

Fig. 69 Condiciones de uso de la aplicación

2º Grado de Ingeniería en Energía-Automatización I Página 54


Autómatas Programables

En esta ventana, se informa de la configuración de seguridad necesaria para la


instalación. Marcar la casilla “Acepto la configuración de seguridad” y pulsar en
“Siguiente”.

Fig. 70 Configuración de seguridad

La siguiente pantalla muestra un resumen de la configuración realizada. Pulsar en


“Instalar”.

Fig. 71 Resumen de la configuración realizada

2º Grado de Ingeniería en Energía-Automatización I Página 55


Autómatas Programables

La instalación comenzará, debiendo esperar durante la misma el tiempo aproximado


que aparece en la parte inferior izquierda de la siguiente pantalla.

Fig. 72 Ejecución de la instalación

Durante la instalación se solicitará que se reinicie el equipo antes de terminar.


Asegurarse de tener seleccionado “Sí, deseo reiniciar mi equipo ahora” y pulsar
en “Reiniciar”.

Fig. 73 Reinicialización del equipo antes de terminar con la instalación

2º Grado de Ingeniería en Energía-Automatización I Página 56


Autómatas Programables

El último paso consiste en la transferencia de las licencias. Será el profesor el que


pase por los equipos haciendo una transferencia manual de licencias desde un
pendrive al efecto.

Fig. 74 Transferencia de licencias

Realizada la transferencia de licencias, el software terminará de instalarse y estará


listo para su uso. Será momento entonces de proceder a la instalación del simulador
PLCSIM V13. Para ello, entrar en la carpeta llamada PLCSIM del escritorio y hacer
doble clic sobre el fichero “simatic_s7_plcsim_v13_sp1.exe” y seguir las
instrucciones que aparecerán en las pantallas del asistente para instalación. La
primera de ellas es la de bienvenida, pulsar “Next”.

Fig. 75 Bienvenida a la instalación de PLCSIM V13

2º Grado de Ingeniería en Energía-Automatización I Página 57


Autómatas Programables

Se selecciona el idioma de instalación “Español”. Pulsar en “Siguiente”.

Fig. 76 Selección del idioma para la instalación

En esta pantalla, se selecciona la carpeta para extracción de archivos. Dejar la que


aparece por defecto y pulsar en “Siguiente”.

Fig. 77 Selección de la ubicación para extracción de ficheros

2º Grado de Ingeniería en Energía-Automatización I Página 58


Autómatas Programables

Se esperará hasta que termine la extracción de ficheros.

Fig. 78 Extracción de ficheros

Terminada la extracción de archivos, se solicita que se cierren todas las demás


aplicaciones antes de comenzar con la instalación. Aparecerá una ventana como la
de la figura 79 en donde se indica el idioma seleccionado para la instalación.
También se puede hacer uso de las indicaciones de instalación. Pulsar en
“Siguiente”.

Fig. 79 Ajustes generales previos a la instalación

2º Grado de Ingeniería en Energía-Automatización I Página 59


Autómatas Programables

Además del Inglés, que aparece seleccionado por defecto, seleccionaremos


“Español” como idioma del producto. Pulsar “Siguiente”.

Fig. 80 Selección del idioma del producto

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”.

Fig. 81 Selección de los productos a instalar

2º Grado de Ingeniería en Energía-Automatización I Página 60


Autómatas Programables

En la siguiente pantalla, se seleccionarán los dos apartados inferiores de


aceptación de términos y confirmación y se pulsará en “Siguiente”.

Fig. 82 Aceptación de términos de licencia

Se aceptará ahora la configuración de seguridad propuesta y se pulsará


“Siguiente”.

Fig. 83 Configuración de seguridad

2º Grado de Ingeniería en Energía-Automatización I Página 61


Autómatas Programables

Se informa del resumen de configuración y ruta de instalación. Pulsar “Instalar”.

Fig. 84 Resumen de configuración

Aparecerá una pantalla como la siguiente, en donde se deberá esperar el tiempo


orientativo indicado hasta la finalización de la instalación.

Fig. 85 Instalación de PLCSIM

2º Grado de Ingeniería en Energía-Automatización I Página 62


Autómatas Programables

Terminada la instalación, aparecerá la siguiente ventana comunicando que la


instalación se ha realizado correctamente. Se solicita el reinicio del equipo, pulsar en
“Reiniciar”.

Fig. 86 Finalización de la instalación de PLCSIM

Tras reiniciarse el equipo, las aplicaciones instaladas estarán perfectamente


operativas, apareciendo en el escritorio los iconos “TIA Portal V13” y “S7-PLCSIM
V13” para arrancar las aplicaciones.

Familiarización con la herramienta TIA Portal V13. Primeros pasos

En este apartado de la práctica se pretende que el alumno se familiarice con el


entorno de programación y con la distribución de pantallas y herramientas. Se
comienza, entonces, por arrancar la aplicación haciendo un doble clic en el icono del
escritorio “TIA Portal V13”.

2º Grado de Ingeniería en Energía-Automatización I Página 63


Autómatas Programables

Una vez que el programa haya arrancado, aparecerá la siguiente pantalla.

Introducir aquí el
nombre del proyecto
que se desea crear

Fig. 87 Pantalla tras el primer arranque de la aplicación

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

2º Grado de Ingeniería en Energía-Automatización I Página 64


Autómatas Programables

Hacer doble clic sobre el modelo seleccionado.

Fig. 88 Selección de la CPU a utilizar

Seleccionado el modelo de CPU, se abrirá la denominada “vista del proyecto”, y en


concreto el apartado de configuración de dispositivos. En esta pantalla, además
de otras, se pueden resaltar las siguientes áreas:

3 5

6
4

Fig. 89 Áreas de la vista de proyecto

2º Grado de Ingeniería en Energía-Automatización I Página 65


Autómatas Programables

1. Barra de menús y barra de herramientas. En la barra de menús se


encuentran todos los comandos necesarios para trabajar con la aplicación. En
la barra de herramientas se pueden encontrar los botones de acceso a los
comandos que con más frecuencia se utilizan, permitiendo un acceso rápido a
los mismos.

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.

3. Área de trabajo. En éste área se visualizarán los objetos abiertos para su


edición.

4. Ventana de inspección. En éste área se visualiza información adicional


sobre el objeto seleccionado o sobre las acciones realizadas. Por ejemplo, si
se selecciona la CPU situada en el slot 1, se podrá ver la información
correspondiente a la misma como se aprecia en la figura 89.

5. Opciones (o task cards). En esta área se podrán visualizar librerías, tareas,


herramientas online y, tal y como se observa en la figura 89, un catálogo de
hardware cuyos componentes podrán ser añadidos a nuestro sistema.

6. Información. En esta área se podrá ver información del objeto seleccionado


en las opciones.

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.

2º Grado de Ingeniería en Energía-Automatización I Página 66


Autómatas Programables

Anotaciones Práctica nº 1: El entorno de programación TIA portal V13

2º Grado de Ingeniería en Energía-Automatización I Página 67


Autómatas Programables

6.3 Práctica nº 2. El primer programa

6.3.1 Objetivo de la práctica.

En esta práctica se persigue que el alumno se vaya familiarizando con la simbología


de contactos y bobinas, realizando sus primeros circuitos. Además, el alumno se irá
familiarizando también con el trabajo básico en el entorno de programación, las
simulaciones y la carga de programas en el PLC.

6.3.2 Materiales necesarios.

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.

6.3.3 Desarrollo de la práctica.

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.

2º Grado de Ingeniería en Energía-Automatización I Página 68


Autómatas Programables

La asignación de entradas y salidas del PLC será la siguiente:

 Sensor “mínimo”, I0.0


 Sensor “medio”, I0.1
 Sensor “máximo”, I0.2
 Motor 1, Q0.0
 Motor 2, Q0.1

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.

2º Grado de Ingeniería en Energía-Automatización I Página 69


Autómatas Programables

La asignación de entradas y salidas será la siguiente:


FUNCIÓN I/O TIPO SÍMBOLO

Marcha I0.0 NA Marcha

Final de carrera pto. A I0.1 NC Punto A

Final de carrera pto. B I0.2 NC Punto B

Activa motor en sentido “A” a “B” Q0.0 NA Motor AB

Activa motor en sentido “B” a “A” Q0.1 NA Motor BA

2º Grado de Ingeniería en Energía-Automatización I Página 70


Autómatas Programables

6.3.4 Desarrollo del primer ejercicio.

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.

El esquema del circuito a implementar en TIA portal será el siguiente:

I0.0 I0.1 I0.2 Q0.0


“sensor 1” “sensor 2” “sensor 3” “luminoso”

()
Fig. 90 Circuito a implementar

Se empezará por crear un nuevo proyecto, al que se le asignará el nombre


“ejercicio1p1”.

Fig. 91 Crear el proyecto “ejercicio1p1”

A continuación, se deberá configurar el modelo de CPU que se va a utilizar. Para


ello deberán seguirse los pasos comentados en el apartado “Familiarización con la
herramienta TIA Portal V13. Primeros pasos”, llegando a la siguiente ventana:

2º Grado de Ingeniería en Energía-Automatización I Página 71


Autómatas Programables

Fig. 92 Vista del proyecto

Aunque en esta primera práctica no va a ser necesario, desde la vista actual se


podrá realizar la ampliación del sistema presentado añadiendo diversos tipos de
elementos (ampliación de entradas digitales, ampliación de salidas analógicas,
módulos de comunicación, etc.). Puede verse el “catálogo de hardware” a la
derecha de la figura 92.
El siguiente paso consistirá en agregar un nuevo bloque (una función FC). Aunque
para este primer programa podría realizarse directamente el circuito utilizando el
bloque de organización OB1, es importante adquirir la costumbre de organizar los
programas en bloques, que serán “llamados” por el bloque de organización OB1. De
este modo las aplicaciones resultarán mucho más sencillas de interpretar,
organizadas por funciones o bloques de función implementados cada uno de ellos
para un fin concreto.
Por ejemplo, en el supuesto de un programa que diera solución a la automatización
de un ascensor, se podrían tener, entre otros, los bloques y/o funciones siguientes:

 Función para el funcionamiento manual del ascensor.


 Función encargada de actuar sobre las salidas del PLC.
 Función para la gestión de las llamadas y el orden de atención de las mismas.
 Función para la cuenta del número de ciclos realizados por la cabina.
 Etc.

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.

2º Grado de Ingeniería en Energía-Automatización I Página 72


Autómatas Programables

Fig. 93 Agregar nuevo bloque

Aparecerá la siguiente ventana:

Fig. 94 Agregar una función FC

En esta ventana, se seleccionará en primer lugar “Función”, se procederá entonces


a asignarle un nombre que la distinga (p.e. “alarma”), se seleccionará el lenguaje de
programación “KOP” y se permitirá al software que asigne de forma automática la
numeración de las funciones (en este caso quedará como FC1). Una vez realizados
estos pasos, se pulsará en “Aceptar”.
Inmediatamente aparecerá la vista general del proyecto con la función FC1 abierta y
preparada para empezar a realizar el circuito.

2º Grado de Ingeniería en Energía-Automatización I Página 73


Autómatas Programables

Fig. 95 Vista general. Función FC1

Se puede observar, en la parte derecha de la pantalla, el apartado correspondiente a


las instrucciones. Haciendo un clic en la carpeta “operaciones lógicas con bits” se
verá el siguiente desplegable.

Dentro de este apartado de


operaciones básicas se pueden
encontrar, entre otras, las operaciones
vistas en los contenidos. Para insertar
cualquiera de ellas en el esquema
existen varias posibilidades, haciendo
un doble clic sobre la seleccionada,
picando en la operación necesaria y,
con el botón izquierdo del ratón
pulsado, arrastrándola al punto del
esquema en donde se desea insertar
son dos de las posibilidades más
sencillas.

Fig. 96 Operaciones lógicas con bits

2º Grado de Ingeniería en Energía-Automatización I Página 74


Autómatas Programables

Si se desea obtener información sobre


la función que realiza la operación,
bastará con situarse sobre la misma y
esperar a que aparezca el menú
contextual de la figura 97. Picando
posteriormente sobre el texto resaltado
en color azul se accederá a la “ayuda”,
en donde se podrá consultar la función
que realiza la operación en detalle. Fig. 97 Acceso al menú de ayuda

Fig. 98 Menú de ayuda correspondiente a la operación “contacto normalmente abierto”

Otra forma de acceder al menú de ayuda será seleccionar “Ayuda” en la barra de


herramientas, procediendo a buscar en el menú la información que corresponda.
Tal y como se ha explicado, se procederá a ir colocando los diversos elementos del
esquema del ejercicio, obteniendo el siguiente resultado.

2º Grado de Ingeniería en Energía-Automatización I Página 75


Autómatas Programables

Fig. 99 Colocación de contactos y bobina

Si se sitúa el cursor del ratón sobre


uno de los elementos del esquema, se
verá cómo puede accederse a un
menú desplegable relacionado con
dicho elemento. En la figura 100 puede
verse el menú desplegable
correspondiente a un contacto. En él,
puede cambiarse el tipo de contacto
situado en el esquema sin más que
seleccionar el nuevo tipo.

Fig. 100 Desplegable de una operación

Aunque en este ejercicio no va a ser necesario poner en “paralelo” más elementos


con los ya insertados, se va a estudiar también cómo realizar esta sencilla
operación. En primer lugar se seleccionara el punto de inserción de la nueva rama
poniendo el cursor del ratón sobre la línea de principio del esquema (o
seleccionando el punto deseado del esquema) y haciendo clic sobre él para
seleccionarlo.

2º Grado de Ingeniería en Energía-Automatización I Página 76


Autómatas Programables

Fig. 101 Selección del punto para la bifurcación

A continuación se seleccionará “Abrir Obteniendo el inicio de una nueva


rama” en el pequeño menú que rama que permitirá la inserción de más
aparece sobre el esquema realizado. operaciones en el segmento de
programa con el que se está
trabajando.

Fig. 103 Inicio de la nueva rama


Fig. 102 Icono para “Abrir rama”

Ya se podrían insertar los elementos necesarios en la nueva rama, debiendo cerrar


ésta en el punto deseado sin más que seleccionar el punto final de la rama (clic
manteniendo pulsado el botón izquierdo del ratón) y arrastrarlo al punto final de la
misma.

2º Grado de Ingeniería en Energía-Automatización I Página 77


Autómatas Programables

Fig. 104 Nueva rama creada

El siguiente paso será asignar a cada contacto o bobina la dirección que le


corresponde. Una forma de hacerlo sería picar sobre “<??.?>” e introducir, por
ejemplo, %I0.0 para asignar a dicho contacto la correspondiente entrada del PLC.
Esto es lo que se conoce como “direccionamiento absoluto”. Pero….¿qué sucede
si se hace lo mismo con todos los elementos?, ¿y cuando el número de elementos
es elevado?. La respuesta a estas cuestiones es muy simple, se terminaría teniendo
un esquema de muy difícil interpretación.
Evidentemente, existe otra forma mucho más adecuada para trabajar. Es lo que se
conoce como “direccionamiento simbólico”. En primer lugar se asociarán los
nombres simbólicos a las direcciones absolutas utilizando lo que se conoce como
“tabla de variables”. En el menú del árbol del proyecto puede encontrarse una
carpeta llamada “variables PLC”, dentro de la cual está disponible la “tabla de
variables estándar”.

Fig. 105 Acceder a la tabla de variables estándar

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.

2º Grado de Ingeniería en Energía-Automatización I Página 78


Autómatas Programables

Una vez abierta la tabla, y en la lengüeta de “variables”, se comenzará por introducir


el nombre simbólico de cada una de las variables en la columna “nombre”. Se
seleccionará el tipo de datos que le corresponda y la dirección. El resto de los
campos se dejarán como están.

Fig. 106 Edición en la tabla de variables estándar

Para asignar la dirección de cada variable, podrá hacerse abriendo el desplegable


en la columna “dirección” y seleccionando el identificador del operando, el tipo
(en su caso), la dirección y el número de bit correspondiente.

Fig. 107 Editando la dirección de la variable

Una vez finalizada la edición de las variables se volverá al esquema de la función


FC1 y se procederá a asignar el nombre de cada operación. Para ello, se hace doble
clic sobre el símbolo “<??.?>” que se encuentra sobre la operación. Se abrirá un
desplegable que nos permitirá seleccionar, de entre las variables que se han editado
en la tabla anterior, la que corresponde a la operación seleccionada.

2º Grado de Ingeniería en Energía-Automatización I Página 79


Autómatas Programables

Fig. 108 Asignación de la dirección a la operación

Obteniendo finalmente el esquema finalizado.

Fig. 109 Aspecto del programa finalizado

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.

2º Grado de Ingeniería en Energía-Automatización I Página 80


Autómatas Programables

Arrastrar hasta el segmento

Fig. 110 Cargar la función FC1 en el bloque de organización OB1

2º Grado de Ingeniería en Energía-Automatización I Página 81


Autómatas Programables

6.3.4.1 Simulación del ejercicio con PLCSIM.

El siguiente paso será proceder a su simulación para comprobar el correcto


funcionamiento de la solución adoptada. Para ello se dispone del software PLCSIM
que permitirá realizar la simulación sin necesidad de tener un PLC físicamente
conectado.

Una vez guardado el proyecto se debe


realizar la compilación del mismo. Para
ello, se pulsará sobre el icono
correspondiente de la barra de
herramientas superior.

Fig. 111 Icono para compilación

Si no han aparecido errores de compilación podrá continuarse con los siguientes


pasos. En el supuesto de que aparezca algún error, habrá que buscar su origen y
proceder a corregirlo antes de continuar.
A continuación se accederá al menú “Online” de la barra de menús, seleccionando
“simulación”, “iniciar”, tal y como se muestra en la siguiente figura.

Fig. 112 Inicio de la simulación

2º Grado de Ingeniería en Energía-Automatización I Página 82


Autómatas Programables

Aparecerá una ventana informando de que al iniciar una simulación se desactivarán


todas las interfaces online restantes. Pulsar en “Aceptar”.

Fig. 113 Aviso al iniciar simulación

La primera vez que iniciemos este proceso de simulación se solicitará la


configuración del “tipo de interface PG/PC”. El resto de veces no se solicitará, ya que
se guarda la configuración realizada anteriormente.

Fig. 114 Configuración del interface

2º Grado de Ingeniería en Energía-Automatización I Página 83


Autómatas Programables

En la figura 114 puede verse que se ha seleccionado el “tipo de interface” PN/IE y la


“interface” PG/PC PLCSIM S7-1200/S7-1500. Una vez hecha la selección, se pulsa
en “Iniciar búsqueda”, con lo que el sistema buscará el simulador. Encontrado éste,
aparecerá una línea resaltada en verde entre el PC y el PLC tal y como se muestra
en la figura 114. Una vez hecha la conexión “offline”, se pulsará en “cargar” para
que el programa sea transferido al simulador.
Aparecerán consecutivamente las dos ventanas que se muestran a continuación, en
donde en la primera de ellas se informa de que existen diferencias entre la
configuración del proyecto y la del sistema de destino. Se seleccionará la casilla
“Sobrescribir todos” y se pulsará en “cargar”. La segunda pantalla de aviso
permite decidir si se desea arrancar todos los módulos al terminar la carga del
programa. Se seleccionará la casilla “Arrancar todos” y se pulsará en “Finalizar”.

Fig. 115 Pantallas de avisos en la carga

Si la carga del programa ha sido correcta aparecerá, en la ventana de inspección, un


texto similar al que se muestra en la siguiente figura.

Fig. 116 Información relativa a la carga del programa

2º Grado de Ingeniería en Energía-Automatización I Página 84


Autómatas Programables

Igualmente, se verá que se ha


ejecutado el simulador, presentando
una apariencia como la de la figura
117.

El siguiente paso consistirá en


“cambiar a la vista del proyecto”,
pulsando sobre el símbolo remarcado
en rojo en la figura 117. Esto permitirá
editar una tabla de simulación para
poder actuar sobre las variables del
sistema programado.
Fig. 117 Simulador PLCSIM

Se accederá, en el árbol de proyecto del simulador a las “Tablas SIM” (tablas de


simulación), seleccionando “Tabla SIM_1” con un doble clic. A continuación, y en la
parte de la derecha, se irán incluyendo las variables sobre las que se quiere actuar o
de las cuales se desea observar su valor. En este primer ejercicio, se han incluido
exclusivamente las variables de entrada por la sencillez del mismo, pero es
recomendable incluir también las variables de salida para observar los valores que
éstas toman.

Fig. 118 Inclusión de las variables en el simulador

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.

2º Grado de Ingeniería en Energía-Automatización I Página 85


Autómatas Programables

Se procede a activarla y a comprobar cómo tanto los contactos como la bobina del
esquema realizado se ven activados o desactivados.

Fig. 119 Observación activada

En la imagen de la figura anterior puede apreciarse cómo los sensores (contactos


normalmente cerrados) no se encuentran activados y, en consecuencia, la bobina de
salida (normalmente cerrada) está desactivada. Hasta aquí, el programa realizado
funciona correctamente. Ahora, desde la tabla de simulación del PLCSIM podrán
cambiarse los valores de los sensores para proceder a comprobar todos los estados
posibles del sistema y comprobar su correcto funcionamiento.

Fig. 120 Cambiando el valor de la variable sensor 1 a “activo” (true)

2º Grado de Ingeniería en Energía-Automatización I Página 86


Autómatas Programables

Al cambiar los valores de las entradas se puede comprobar el circuito haciendo uso
de la observación.

Fig. 121 Vista del circuito al activar la entrada “sensor 1”

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”.

Ya se puede cambiar a la vista


compacta (símbolo con dos
rectángulos) para cerrar el simulador o
cerrar directamente el PLCSIM sin
más que pulsar en el icono de cerrar
(aspa).

Fig. 122 Abandonar PLCSIM

2º Grado de Ingeniería en Energía-Automatización I Página 87


Autómatas Programables

6.3.4.2 Carga del proyecto en el PLC físico

Comprobado con el simulador el correcto funcionamiento del programa, se procede


ahora a realizar la carga del mismo en el PLC real para observar el funcionamiento
que tendrá la aplicación. Para ello se seguirán los pasos que se comentan a
continuación.
El primer paso, si es que no se ha realizado ya, será guardar el proyecto y proceder
a su compilado. En segundo lugar habrá que proceder a la conexión del PLC al PC.
Se utilizará para ello el cable RJ45 correspondiente. También habrá que conectar la
alimentación del autómata (a 220 Vca) así como la placa con los conmutadores en
las entradas del PLC para poder simular el efecto de los sensores.
A continuación se procederá a cargar el proyecto en el PLC. Para ello, pulsar en el
icono “cargar dispositivo” de la barra de herramientas (también se puede hacer
desde el menú “Online” de la barra de menús).

Fig. 123 Opciones para cargar en dispositivo

Se abrirá la ventana de “Carga avanzada” que se muestra en la siguiente figura,


debiendo de seleccionar el Tipo de interface PG/PC a “PN/IE” y la interface PG/PC a
“Realtek PCIe GBE Family Controller”. Hecha la selección se pulsará en “Iniciar
búsqueda”. Podrá observarse que se detecta al PLC y que, si se desea comprobar
la conexión, se puede activar la casilla “Parpadear LED” para ver un parpadeo de
los LED “Run/Stop, Error y Maint” en el autómata. Comprobada la conexión se
pulsará en “Cargar”.

2º Grado de Ingeniería en Energía-Automatización I Página 88


Autómatas Programables

Fig. 124 Configuración de la carga

Es probable que aparezca un mensaje como el mostrado en la figura 125, en donde


se informa que es necesaria una dirección IP de la misma subred que el PLC para
ejecutar la programación del mismo. Se aceptará pulsando en “Sí”.

Fig. 125 Asignación dirección IP

2º Grado de Ingeniería en Energía-Automatización I Página 89


Autómatas Programables

Tras lo cual se informará de la nueva dirección adicional agregada a la interface para


poder trabajar. Pulsar en “Aceptar”.

Fig. 126 Dirección IP asignada

Se preguntará entonces si se desean guardar los ajustes como predeterminados


para la interface PG/PC. Se contestará que “Sí” para no tener que volver a realizar
este proceso.

Fig. 127 Confirmación de ajustes predeterminados

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.

2º Grado de Ingeniería en Energía-Automatización I Página 90


Autómatas Programables

Fig. 128 Detener módulos para cargar nuevo programa

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.

Fig. 129 Arrancar módulos tras la carga

Si todo el proceso ha sido correcto, podrá observarse que el PLC ha pasado al


estado operativo “RUN” y que, mediante la acción en los conmutadores de la placa
de simulación, se comprobará que las entradas y salidas se activan de acuerdo con
los parámetros del ejercicio.
Si se activa el modo de observación en el PC, se podrá ver cómo cambian de estado
entradas y salidas en el esquema al actuar sobre las entradas físicas del autómata.

2º Grado de Ingeniería en Energía-Automatización I Página 91


Autómatas Programables

6.3.5 Soluciones propuestas a los ejercicios de la práctica 2

6.3.5.1 Solución propuesta al ejercicio 2 de la práctica 2

Fig. 130 Solución al ejercicio 2 de la práctica 1

En este ejercicio se trabaja, simplemente, con el concepto de contactos en serie y la


inclusión de más de un segmento en el programa.
No se incluye el OB1 al dar por supuesto que se ha cargado la función en el mismo.

2º Grado de Ingeniería en Energía-Automatización I Página 92


Autómatas Programables

6.3.5.2 Solución propuesta al ejercicio 3 de la práctica 2

Fig. 131 Solución al ejercicio 3 de la práctica 1

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.

2º Grado de Ingeniería en Energía-Automatización I Página 93


Autómatas Programables

6.3.5.3 Solución propuesta al ejercicio 4 de la práctica 2

Fig. 132 Solución al ejercicio 4 de la práctica 1

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.

2º Grado de Ingeniería en Energía-Automatización I Página 94


Autómatas Programables

6.3.5.4 Solución propuesta al ejercicio 5 de la práctica 2

Fig. 133_a Solución al ejercicio 5 de la práctica

2º Grado de Ingeniería en Energía-Automatización I Página 95


Autómatas Programables

Fig. 133_b Solución al ejercicio 5 de la práctica 1

2º Grado de Ingeniería en Energía-Automatización I Página 96


Autómatas Programables

Con este ejercicio se pretende reforzar el concepto de control de un proceso


secuencial. En la solución adoptada se observa cómo la ejecución de un
determinado segmento habilita la ejecución del siguiente (condiciones) y/o inhabilita
los anteriores.
Se trabaja de nuevo con detección de flancos, salidas SET y RESET y entradas
normalmente cerradas para afianzar estos conceptos.

2º Grado de Ingeniería en Energía-Automatización I Página 97


Autómatas Programables

Anotaciones Práctica nº 2: El primer programa

2º Grado de Ingeniería en Energía-Automatización I Página 98


Autómatas Programables

6.4 Práctica nº 3. Trabajando con marcas de ciclo

6.4.1 Objetivo de la práctica.

En esta práctica se persigue que el alumno trabaje el concepto de marca de ciclo, su


configuración y su uso en aplicaciones sencillas. Además, el alumno continuará con
la familiarización en el trabajo básico en el entorno de programación, las
simulaciones y la carga de programas en el PLC.

6.4.2 Materiales necesarios.

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.

6.4.3 Desarrollo de la práctica.

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:

 Con un periodo de 2 sgs cuando se alcance el nivel mínimo de masa en el


depósito.
 Con un periodo de 1.6 sgs cuando se alcance un nivel medio de masa en el
depósito.
 Con un periodo de 1 sg cuando se alcance el nivel máximo de masa en el
depósito.

2º Grado de Ingeniería en Energía-Automatización I Página 99


Autómatas Programables

 Activado continuamente cuando se alcance el nivel máximo de seguridad en el


depósito.
 Desactivado cuando no haya detección de nivel mínimo en el depósito.

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:

Salida H Salida L Significado

0 0 Temperatura inferior a la mínima programada

0 1 Temperatura comprendida entre la mínima y máxima


programadas

1 1 Temperatura superior a la máxima programada

El sistema de control cuenta con un calefactor y un refrigerador que deberán ser


activados en función de los datos entregados por el dispositivo de medida de
temperatura, de acuerdo con los siguientes criterios:

 Si la temperatura está comprendida entre la mínima y máxima programadas,


tanto el calefactor como el refrigerador deberán estar desactivados.
 Si la temperatura es inferior a la mínima programada, deberá conectarse el
calefactor.
 Si la temperatura es superior a la máxima programada, deberá conectarse el
refrigerador.

Se dispone además de un piloto luminoso que deberá parpadear con un periodo de


2 sgs si está activado el calefactor, 1 sg si lo está el refrigerador y continuamente
activado cuando calefactor y refrigerador estén desactivados.

2º Grado de Ingeniería en Energía-Automatización I Página 100


Autómatas Programables

La asignación de entradas y salidas del PLC es la siguiente:

Salida L del dispositivo de control de temperatura I0.0


Salida H del dispositivo de control de temperatura I0.1
Conexión calefactor Q0.0
Conexión refrigerador Q0.1
Piloto luminoso Q0.2

2º Grado de Ingeniería en Energía-Automatización I Página 101


Autómatas Programables

6.4.4 Desarrollo del primer ejercicio.

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.

Fig. 134 Configuración del byte de marcas de ciclo

Otra cuestión importante cuando se trabaja en programación de PLC’s es estructurar


el programa en funciones o bloques de función que realizan labores específicas. Se
va a aprovechar el presente ejercicio para introducir este concepto y trabajar con él.
Puede verse que la función realizada en el ejercicio 5 de la práctica anterior se
ocupaba, además de llevar el control del sistema, de operar sobre las salidas físicas
del autómata. Pues bien, la idea ahora será el realizar una función que se ocupe de

2º Grado de Ingeniería en Energía-Automatización I Página 102


Autómatas Programables

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.

Fig. 135_a Sustitución de las bobinas de salida por marcas

2º Grado de Ingeniería en Energía-Automatización I Página 103


Autómatas Programables

Fig. 135_b Sustitución de las bobinas de salida por marcas

Una vez modificada la función FC1(carro), se procederá a generar una nueva


función FC2, a la que se llamará “Control de salidas”, de acuerdo con los pasos
seguidos para generar la primera función.
El trabajo en esta nueva función consistirá en activar la salida Q0.0 (activar el motor
para ir del punto A al punto B) cuando esté activada la marca M20.0 y además,
activar el piloto conectado a la salida Q0.2 con una intermitencia cuyo valor estará
definido por el bit 5 (periodo igual a 1 sg.) del byte de marcas de ciclo. Igualmente,
habrá que activar la salida Q0.1 (activar el motor para ir del punto B al punto A)

2º Grado de Ingeniería en Energía-Automatización I Página 104


Autómatas Programables

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:

Fig. 136 FC2 para control de las salidas

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.

2º Grado de Ingeniería en Energía-Automatización I Página 105


Autómatas Programables

Fig. 137 OB1 con las funciones FC1 y FC2

De acuerdo con los pasos seguidos en la práctica anterior, proceder a la simulación


y carga en PLC del programa para observar su correcto funcionamiento.

2º Grado de Ingeniería en Energía-Automatización I Página 106


Autómatas Programables

6.4.5 Soluciones propuestas a los ejercicios de la práctica 3

6.4.5.1 Solución propuesta al ejercicio 2 de la práctica 3

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.

Fig. 138 Función FC1 de control de los sensores

2º Grado de Ingeniería en Energía-Automatización I Página 107


Autómatas Programables

Fig. 139 Función FC2 de control de las salidas

Fig. 140 Bloque de organización OB1

2º Grado de Ingeniería en Energía-Automatización I Página 108


Autómatas Programables

6.4.5.2 Solución propuesta al ejercicio 3 de la práctica 3

La dinámica de este ejercicio es similar a la seguida en el anterior, siendo la solución


propuesta la siguiente.

Fig. 141 Función FC1 para control de sensores

2º Grado de Ingeniería en Energía-Automatización I Página 109


Autómatas Programables

Fig. 142 Función FC2 para control de salidas

2º Grado de Ingeniería en Energía-Automatización I Página 110


Autómatas Programables

Fig. 143 Bloque de organización OB1 con funciones FC1 y FC2

2º Grado de Ingeniería en Energía-Automatización I Página 111


Autómatas Programables

Anotaciones Práctica nº 3: Trabajando con marcas

2º Grado de Ingeniería en Energía-Automatización I Página 112


Autómatas Programables

6.5 Práctica nº 4. Temporizadores

6.5.1 Objetivo de la práctica.

En esta práctica se persigue que el alumno trabaje con los distintos tipos de
temporizadores existentes para el S7-1200.

6.5.2 Materiales necesarios.

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.

6.5.3 Desarrollo de la práctica.

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.

2º Grado de Ingeniería en Energía-Automatización I Página 113


Autómatas Programables

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).

2º Grado de Ingeniería en Energía-Automatización I Página 114


Autómatas Programables

6.5.4 Desarrollo del primer ejercicio.

Dadas las características descritas en el enunciado, la mejor opción será utilizar un


temporizador “impulso” (TP) para la resolución del mismo.
Como el programa se realizó siguiendo un proceso secuencial, en donde con el uso
de marcas se iban activando las secuencias siguientes y desactivando las
anteriores, la única dificultad del ejercicio consiste en saber utilizar el temporizador
“impulso” TP.
Se empieza por añadir, en el último segmento del programa del carro, una marca
que se encargará de atacar la entrada del temporizador “impulso” para ponerlo en
funcionamiento, de modo que éste active una señal durante los 3 sgs. indicados,
para utilizarla para atacar la bobina del zumbador en la función correspondiente a las
salidas.

Fig. 144 Inclusión de marca para poner en funcionamiento el TP

2º Grado de Ingeniería en Energía-Automatización I Página 115


Autómatas Programables

Se selecciona y arrastra (o con un


doble clic) el temporizador TP en el
menú de instrucciones básicas.

Fig. 145 Selección TP

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.

Fig. 146 Configuración del DB para el TP

Insertado el temporizador en el segmento correspondiente, se procede a conectar


sus entradas y salidas para conseguir el funcionamiento deseado. En la entrada “IN”,
encargada de poner en marcha el timer, se conecta la marca añadida anteriormente,
y que solo se activará una vez realizado un recorrido completo A > B >A. En la
entrada “PT” se indicará el valor de tiempo que se desea que dure el impulso. Este
valor debe escribirse de acuerdo con la notación vista en los contenidos, quedando
en esta caso como “T#3s”. En la salida “Q” se conecta una marca que se activará
durante los 3 sgs. configurados cuando se active el temporizador, y que se utilizará
en la función de “Control de las salidas” para activar el zumbador. Por último, y
aunque no es imprescindible, se ha incluido un doble word (32 bit) llamado “MD30”
en la salida “ET” para poder observar en la simulación el tiempo transcurrido.

2º Grado de Ingeniería en Energía-Automatización I Página 116


Autómatas Programables

El segmento correspondiente al temporizador podría quedar de la siguiente manera.

Fig. 147 Segmento del temporizador TP

Pero presenta un inconveniente. La referencia que podemos observar es la del


bloque de datos asignado. Por ningún lugar se ve “T1”, por ejemplo. Para facilitar la
identificación de este tipo de funciones, se puede editar sus propiedades y proceder
a cambiar su nombre para que sea más sencillo de identificar.

Bastará con editar las propiedades


seleccionando el DB correspondiente
dentro del árbol del proyecto y
proceder a cambiar su nombre.

También se le podría haber puesto el


nombre deseado en el apartado
correspondiente al abrirse la ventana
para generar el DB cuando se insertó
el temporizador (ver figura 146).

Fig. 148 Cambio de propiedades

2º Grado de Ingeniería en Energía-Automatización I Página 117


Autómatas Programables

Fig. 149 Nuevo nombre para el temporizador “T1”

Con lo que en el esquema se vería ahora como se presenta en la siguiente figura.

Fig. 150 Temporizador numerado como “T1”

2º Grado de Ingeniería en Energía-Automatización I Página 118


Autómatas Programables

Tan solo queda modificar la función FC2 para incluir la salida para atacar al
zumbador, quedando ésta como se presenta a continuación.

Fig. 151 Salida para activar el zumbador

2º Grado de Ingeniería en Energía-Automatización I Página 119


Autómatas Programables

6.5.5 Soluciones propuestas para los ejercicios de la práctica 4.

6.5.5.1 Solución propuesta para el ejercicio 2 de la práctica 4.

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. 152 Función FC1 que controla el funcionamiento de la baliza

2º Grado de Ingeniería en Energía-Automatización I Página 120


Autómatas Programables

Fig. 153 Función FC2 que controla la activación de la salida del PLC

Resolución del ejercicio haciendo uso de un solo DB

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.

Fig. 154 Eliminando bloques de datos

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.

2º Grado de Ingeniería en Energía-Automatización I Página 121


Autómatas Programables

Fig. 155 Menú para agregar nuevo bloque

Se picará sobre “DB Bloque de datos” y se le asignará un nombre al mismo. En el


ejemplo se le ha asignado el nombre de “TEMPORIZADORES”, para tener una idea
clara de su uso. Pulsar en “Aceptar”.
Ahora, dentro del bloque de datos generado se procede a crear las distintas
instancias para cada uno de los dos temporizadores que se van a utilizar. Se van
poniendo los nombres simbólicos que identifiquen a cada temporizador, por ejemplo,
“TEMP1 y TEMP2”.
Un aspecto muy importante será el seleccionar “TON_TIME” como Tipo de datos
para la variable generada, de modo que se relacione con un temporizador del tipo
“retardo a la conexión TON”. Si se despliega la variable, podrá observarse que
aparecen los distintos parámetros con los que cuenta un temporizador de este tipo
(IN, Q, PT, etc.). En la siguiente figura puede verse el bloque de datos creado.

2º Grado de Ingeniería en Energía-Automatización I Página 122


Autómatas Programables

Fig. 156 DB global generado para albergar a los dos temporizadores

Se vuelve a la función FC1 para proceder a insertar de nuevo los temporizadores,


salvo que ahora, cuando se solicite la generación de un DB para el temporizador, se
cancelará esa opción.

Fig. 157 No generar un nuevo DB para el temporizador

2º Grado de Ingeniería en Energía-Automatización I Página 123


Autómatas Programables

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.

Fig. 158 Asociación de los temporizadores al DB global creado al efecto

SI no se hace nada más, se verá cómo el texto “TEMPORIZADORES.TEMP1.”


aparece en rojo. Esto se debe a que, como el texto termina en un punto, aún se está
esperando a que se siga introduciendo más “ruta”. Para subsanarlo, bastará con
hacer doble clic en el texto y proceder a eliminar el último punto, haciendo
posteriormente un solo clic en cualquier parte fuera del texto. El temporizador
quedará como se muestra a continuación.

Fig. 159 Temporizador asociado al DB

2º Grado de Ingeniería en Energía-Automatización I Página 124


Autómatas Programables

Y el esquema de la función FC1, con ambos temporizadores asociados a un solo DB


global, como sigue.

Fig. 160 Solución propuesta utilizando un solo DB

2º Grado de Ingeniería en Energía-Automatización I Página 125


Autómatas Programables

6.5.5.2 Solución propuesta para el ejercicio 3 de la práctica 4.

En este ejercicio se trabaja con un contador de “retardo a la desconexión TOF”,


siendo la solución propuesta al mismo la que aparece en las figuras 161 y 162. Se
ha incluido la variable “T transcurrido” para poder observar en la simulación el
tiempo transcurrido para el temporizador.

Fig. 161 Función FC1 propuesta como solución

2º Grado de Ingeniería en Energía-Automatización I Página 126


Autómatas Programables

Fig. 162 Función FC2 propuesta como solución

2º Grado de Ingeniería en Energía-Automatización I Página 127


Autómatas Programables

6.5.5.3 Solución propuesta para el ejercicio 4 de la práctica 4.

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.

Fig. 163 Función FC1 propuesta como solución

2º Grado de Ingeniería en Energía-Automatización I Página 128


Autómatas Programables

Fig. 164 Función FC2 propuesta como solución

2º Grado de Ingeniería en Energía-Automatización I Página 129


Autómatas Programables

Anotaciones Práctica nº 4: Temporizadores

2º Grado de Ingeniería en Energía-Automatización I Página 130


Autómatas Programables

6.6 Práctica nº 5. Contadores

6.6.1 Objetivo de la práctica.

En esta práctica se persigue que el alumno trabaje con los distintos tipos de
contadores existentes para el S7-1200.

6.6.2 Materiales necesarios.

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.

6.6.3 Desarrollo de la práctica.

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:

I0.0; Activa la máquina


I0.1; Reset manual de tiempos
MW20; Registro para contener los segundos
MW25; Registro para contener los minutos
MW30; Registro para contener las horas

2º Grado de Ingeniería en Energía-Automatización I Página 131


Autómatas Programables

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.

2º Grado de Ingeniería en Energía-Automatización I Página 132


Autómatas Programables

6.6.4 Desarrollo del primer ejercicio.

En este ejercicio se trata de trabajar con contadores ascendentes (CTU)


sincronizando el proceso para llegar a obtener la cantidad de horas, minutos y
segundos durante los cuales está activada una determinada señal.
Se hace uso, en la solución propuesta, de una marca de ciclo a 1Hz para llevar la
cuenta de los segundos con el primero de los contadores (CNT1), de modo que
estableciendo un valor de contaje predeterminado de 60, se consiga activar la salida
del mismo al llegar a un minuto, señal que servirá para incrementar la cuenta del
segundo contador (CNT2). Éste, a su vez, también estará preparado con un valor de
contaje predeterminado de 60, que se utilizará para incrementar la cuenta de un
tercer contador de horas. Si éste último alcanza un valor de 24, reinicializará todos
los contadores.
Se dispondrá también de una entrada capaz de reinicializar manualmente la cuenta
de tiempo.
La solución propuesta es la que se muestra a continuación (no se incluye el
contenido del bloque de organización OB1 al entenderse que ya está claro que debe
insertarse la función FC1 en el mismo).

2º Grado de Ingeniería en Energía-Automatización I Página 133


Autómatas Programables

Fig. 165_a Función FC1 propuesta como solución

2º Grado de Ingeniería en Energía-Automatización I Página 134


Autómatas Programables

Fig. 165_b Función FC1 propuesta como solución

2º Grado de Ingeniería en Energía-Automatización I Página 135


Autómatas Programables

Fig. 165_c Función FC1 propuesta como solución

Se vuelve a trabajar con un sistema secuencial, en donde los resultados en unas


etapas van afectando a las etapas posteriores.
Los valores de horas, minutos y segundos se van guardando en “Word de marcas”
(16 bit) como un valor entero. Se podrían haber guardado en un solo byte (8 bit),
habida cuenta de que ninguno de los valores alcanza “255”, que sería el mayor valor
que puede guardarse en un byte sin signo (tipo de dato “USInt”). Se pretende que el
alumno cambie los registros y los acomode a las necesidades reales de la
aplicación.
Una cuestión importante a tener en cuenta a la hora de asignar las posiciones de
memoria a los diferentes registros es la longitud de los datos con que se va a
trabajar.
Hay que tener muy claro que cuando se asigna un tipo de datos concreto a una
variable, implícitamente ésta va a ocupar un número determinado de bits
consecutivos en la memoria.

2º Grado de Ingeniería en Energía-Automatización I Página 136


Autómatas Programables

Así pues, si a una variable denominada, por ejemplo, “temperatura” se le asigna un


tipo de datos UInt (Unsigned Integer, entero sin signo), implícitamente esta variable
va a ocupar 16 bit de memoria, es decir, un word (MW). Si se representa en forma
de bits y bytes el contenido de esta variable, se vería lo siguiente (se supondrá que
se le ha asignado el MW20):

Número de bit

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15

MB20 MB21
MW20

Fig. 166 Descomposición del Word en dos Bytes

La cuestión es, si en el programa se ha asignado el Word de marcas MW20 a la


variable “temperatura”, ¿podría asignarse el byte MB21 para que contenga datos de
otra variable?. La respuesta, de acuerdo con lo que se observa en la figura 166, está
clara, NO. El Word de marcas MW20 ocupa dos byte de marcas, el MB20 y el MB21,
luego no puede utilizarse el MB21 para contener otros datos.
Es preciso prestar mucha atención cuando se asignen las posiciones de memoria a
las variables del programa para no incurrir en “solapamientos”, ya que de lo contrario
la aplicación no funcionará correctamente.
¿Podrías ordenar de forma consecutiva las posiciones de memoria que
corresponderían a las siguientes variables?. Empezar por el word de marcas 30.
Presión (Int), Temperatura (UDInt), Altura (USInt), Profundidad (Real), Tono (SInt),
Color (DInt) y Longitud (UInt).

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).

2º Grado de Ingeniería en Energía-Automatización I Página 137


Autómatas Programables

6.6.5 Soluciones propuestas a los ejercicios de la práctica 5.

6.6.5.1 Solución propuesta al ejercicio 2 de la práctica 5.

Se trata, nuevamente y para reforzar conceptos, de implementar un sistema


secuencial. Se retoma también, en la solución propuesta, la detección de flancos y
se trabaja con un contador descendente.
Se incluye un word de marcas MW20 para la observación de la cuenta descendente
en la simulación.
En la siguiente figura se muestra la solución que se propone.

Fig. 167_a Función FC1 de control de cinta. Solución propuesta

2º Grado de Ingeniería en Energía-Automatización I Página 138


Autómatas Programables

Fig. 167_b Función FC1 de control de cinta. Solución propuesta

2º Grado de Ingeniería en Energía-Automatización I Página 139


Autómatas Programables

Fig. 168 Función FC2 de control de la salida. Solución propuesta

No se ha incluido el contenido del bloque de organización OB1 al entenderse que ya


está claro que deben insertarse las funciones FC1 y FC2 en el mismo.

2º Grado de Ingeniería en Energía-Automatización I Página 140


Autómatas Programables

6.6.5.2 Solución propuesta al ejercicio 3 de la práctica 5.

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:

Fig. 169_a Función FC1 de control de aforo. Solución propuesta

2º Grado de Ingeniería en Energía-Automatización I Página 141


Autómatas Programables

Fig. 169_b Función FC1 de control de aforo. Solución propuesta

Fig. 170 Función FC2 de control de salidas. Solución propuesta

No se ha incluido el contenido del bloque de organización OB1 al entenderse que ya


está claro que deben insertarse las funciones FC1 y FC2 en el mismo.

2º Grado de Ingeniería en Energía-Automatización I Página 142


Autómatas Programables

Anotaciones Práctica nº 5: Contadores

2º Grado de Ingeniería en Energía-Automatización I Página 143


Autómatas Programables

6.7 Práctica nº 6. Operaciones matemáticas

6.7.1 Objetivo de la práctica.

En esta práctica se persigue que el alumno trabaje con algunas de las operaciones
matemáticas sencillas existentes para el S7-1200.

6.7.2 Materiales necesarios.

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.

6.7.3 Desarrollo de la práctica.

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.

2º Grado de Ingeniería en Energía-Automatización I Página 144


Autómatas Programables

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.

2º Grado de Ingeniería en Energía-Automatización I Página 145


Autómatas Programables

6.7.4 Desarrollo del primer ejercicio.

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.

Fig. 171 Tabla de variables

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.

Fig. 172 Selección de tipo de datos para la suma insertada

2º Grado de Ingeniería en Energía-Automatización I Página 146


Autómatas Programables

Para dar solución a la aplicación propuesta, bastará con ir sumando al registro


“Litros total” la cantidad detectada por cada uno de los sensores. Para ello, se
procederá a detectar un flanco del sensor correspondiente y, siempre que la
embasadora esté activada (I0.3 = ON), se sumará la cantidad correspondiente al
sensor que detecta al total de litros.
Para finalizar el ejercicio, si se actúa sobre la entrada I1.0 se hace una puesta a cero
del valor de litros guardado hasta el momento. Esta operación se resuelve con una
función “MOVE”.
La solución propuesta puede verse en la siguiente figura.

Fig. 173_a Solución propuesta al primer ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 147


Autómatas Programables

Fig. 173_b Solución propuesta al primer ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 148


Autómatas Programables

6.7.5 Soluciones propuestas a los ejercicios de la práctica 6.

6.7.5.1 Solución propuesta al ejercicio 2 de la práctica 6.

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.

2º Grado de Ingeniería en Energía-Automatización I Página 149


Autómatas Programables

El esquema correspondiente a la solución propuesta es el siguiente.

Fig. 174_a Función FC1. Solución propuesta al control embasadora

2º Grado de Ingeniería en Energía-Automatización I Página 150


Autómatas Programables

Fig. 174_b Función FC1. Solución propuesta al control embasadora

Fig. 175 Función FC2. Control de las salidas

2º Grado de Ingeniería en Energía-Automatización I Página 151


Autómatas Programables

6.7.5.2 Solución propuesta al ejercicio 3 de la práctica 6.

El objetivo de este ejercicio es realizar una operación simple haciendo uso de la


función “Calculate”, la cual permite la realización de cálculos más o menos
complejos de un modo extraordinariamente simple.
Aunque ya se ha hecho, también se vuelve a incluir un bloque de datos para
almacenar los valores de las variables y del resultado final del cálculo.
En esta posible solución se nombra al DB utilizado como DB1, y en él se introducen
las variables a utilizar como se muestra en las figuras.

Fig. 176 Insertando variables en el DB1

Fig. 177 DB1 generado para el ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 152


Autómatas Programables

Respecto de la función “CALCULATE” cabe destacar su versatilidad y sencillez de


uso, siendo una buena herramienta para la realización de cálculos tales como
funciones lógicas (AND, OR, ….), sumas, productos, obtención del módulo, valor
absoluto, cálculo del seno, coseno, tangente, arco seno, raíz cuadrada, etc., con un
amplio abanico de tipos de datos.
A parte de las ya conocidas entrada y salida EN y ENO respectivamente, en esta
función se observan las entradas IN1, IN2, …., que son las entradas para los datos
con los que operará la función. Igualmente se dispone de la salida OUT para el
resultado de la función.

Fig. 178 Función CALCULATE

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.

2º Grado de Ingeniería en Energía-Automatización I Página 153


Autómatas Programables

Fig. 179 Desplegable para insertar la ecuación

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.

2º Grado de Ingeniería en Energía-Automatización I Página 154


Autómatas Programables

La solución propuesta es la que se muestra en la siguiente figura.

Fig. 180 Solución propuesta al ejercicio del cálculo del área de un triángulo

2º Grado de Ingeniería en Energía-Automatización I Página 155


Autómatas Programables

6.7.5.3 Solución propuesta al ejercicio 4 de la práctica 6.

En este ejercicio, o al menos en la solución que se propone, se trata de trabajar


uniendo varios tipos de funciones y elementos estudiados en otros ejercicios a fin de
que el alumno vaya tratando de aplicarlos en conjunto para la resolución de las
aplicaciones propuestas. Se aplican marcas, detección de flancos, funciones como
incrementar, sumar, comparaciones, función move y contador descendente.
La solución propuesta se incluye a continuación.

Fig. 181_a Función FC1 (control del sistema) propuesta como solución al ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 156


Autómatas Programables

Fig. 181_b Función FC1 (control del sistema) propuesta como solución al ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 157


Autómatas Programables

Fig. 181_c Función FC1 (control del sistema) propuesta como solución al ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 158


Autómatas Programables

Fig. 181_d Función FC1 (control del sistema) propuesta como solución al ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 159


Autómatas Programables

Fig. 182 Función FC2 (control de la salida) propuesta como solución al ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 160


Autómatas Programables

Anotaciones Práctica nº 6: Operaciones matemáticas

2º Grado de Ingeniería en Energía-Automatización I Página 161


Autómatas Programables

6.8 Práctica nº 7. Entradas y salidas analógicas

6.8.1 Objetivo de la práctica.

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.

6.8.2 Materiales necesarios.

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.

6.8.3 Desarrollo de la práctica.

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

2º Grado de Ingeniería en Energía-Automatización I Página 162


Autómatas Programables

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.

2º Grado de Ingeniería en Energía-Automatización I Página 163


Autómatas Programables

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:

 Entrada digital 1, borne 5 del variador; si se activa (“1”) se da la orden de giro a


derechas (Stara/Stop a derechas).
 Entrada digital 2, borne 6 del variador; si se activa (“1”) invierte el sentido de giro
a izquierdas.
 Entrada analógica, bornes 3 / 4 del variador; consigna de frecuencia de 0 a 10
voltios.

En el PLC se tienen conectados los siguientes elementos:

 I0.0; Interruptor NA de “Orden de marcha”


 I0.1; Interruptor NC de “Orden de paro”
 I0.2; Interruptor NA para “Inversión de giro”
 I0.3; Pulsador para establecer una “Velocidad al 50%”
 I0.4; Pulsador para “Incrementar la velocidad en un 5 %”
 I0.5; Pulsador para “Decrementar la velocidad en un 5 %”
 Q0.0; Salida para conectar a la entrada Start/Stop del variador
 Q0.1; Salida para conectar a la entrada de orden de inversión del variador
 QW96; Salida analógica (del módulo de salidas analógicas del tipo 6ES7 232-
4HB32-0XB0) para conectar a la entrada de consigna del variador

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.

2º Grado de Ingeniería en Energía-Automatización I Página 164


Autómatas Programables

6.8.4 Desarrollo del primer ejercicio.

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.

EL PLC S7-1200 dispone de dos


entradas analógicas integradas,
situadas en las direcciones IW64 e
IW66, y que se denominan “CANAL 0”
y “CANAL 1”, respectivamente.
Pueden observarse en la configuración
de dispositivos, tal y como se muestra
en la figura de la derecha.

Fig. 183 Entradas analógicas

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.

La función NORM_X (normalizar)


normaliza el parámetro “VALUE”
dentro del rango de valores
especificado por los parámetros MIN y
MAX, en donde la salida tomará un
valor igual a OUT = (VALUE - MIN) /
(MAX - MIN), dando como resultado un
rango de valores entre 0,0 y 1,0 para
dicha salida. Fig. 184 Función NORM_X

2º Grado de Ingeniería en Energía-Automatización I Página 165


Autómatas Programables

Fig. 185 Salida normalizada

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.

Fig. 186 Función SCALE_X

Fig. 187 Salida escalada

2º Grado de Ingeniería en Energía-Automatización I Página 166


Autómatas Programables

Los tipos de datos admitidos para los parámetros de estas funciones son los
siguientes.

Parámetro Tipo de datos (*) Descripción

MIN Sint, Int, DInt, USInt, UInt, UDInt, Real, LReal Entrada que indica el valor mínimo
del rango

VALUE SCALE_X: Real, LReal Valor de entrada que se debe escalar


o normalizar
NORM_X: Sint, Int, DInt, USInt, UInt, UDInt,
Real, LReal

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

NORM_X: Real, LReal

(*) 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

Fig. 188 Tipos de datos para los parámetros

Comprendido el funcionamiento de las funciones NORM_X y SCALE_X, se procede


a resolver el ejercicio. EL primer paso será seleccionar y declarar las variables a
utilizar en la tabla correspondiente. La entrada analógica “IW64” será la elegida
como entrada para el sensor de temperatura, siendo declarada una variable
“Entrada analógica” del tipo de datos UInt ( 16 bit, con un rango de 0 a 65535) para
cubrir el rango de valores que se obtendrá del conversor, y que está comprendido
entre 0 y 27648.
Como la función NORM_X solo admite el tipo de datos Real y LReal a su salida, se
declarará una variable llamada “Salida normalizada” como tipo de datos Real. Por
último, y con el fin de obtener la temperatura en unidades de ingeniería, se declarará
una tercera variable, denominada “Temperatura”, como tipo de datos Real, y que
será la salida para la función SCALE_X.
Realizada la conversión del valor de tensión entregado por el sensor de temperatura
a un rango de valores comprendido entre 0 y 100 grados centígrados, se procederá
a terminar el ejercicio realizando dos simples comparaciones para decidir si es
preciso o no activar el calefactor o refrigerador.

2º Grado de Ingeniería en Energía-Automatización I Página 167


Autómatas Programables

En las siguientes figuras puede observarse la solución propuesta.

Fig. 189 Función FC1 de control de temperatura

2º Grado de Ingeniería en Energía-Automatización I Página 168


Autómatas Programables

Fig. 190 Función FC2 de control de las salidas

2º Grado de Ingeniería en Energía-Automatización I Página 169


Autómatas Programables

6.8.5 Soluciones propuestas a los ejercicios de la práctica 7.

6.8.5.1 Solución propuesta al ejercicio 2 de la práctica 7.

Para calcular el volumen, en litros, que contiene el depósito en función de la altura a


la que se detecte la superficie del mismo, habrá que realizar el siguiente cálculo:

V  R 2 (5  h) * 1000

En donde:

V = Volumen en litros del depósito


Pi = 3,141593 (constante)
R = radio del depósito cilíndrico
5 – h = altura, desde la base, a la que se encuentra el nivel del líquido
1000 = multiplicador para pasar de metros cúbicos a litros

Teniendo en cuenta que “h” es el parámetro que va a medirse con el sensor.


En la resolución del ejercicio se utilizan, como no podía ser de otro modo, las
funciones NORM_X y SCALE_X para obtener un escalado de la medida entregada
por el sensor a unidades de ingeniería, en este caso a una medida comprendida
entre 0 y 5 metros.
Igualmente, y para dar solución al cálculo del volumen, se hace uso de la función
CALCULATE, siendo la solución propuesta la que figura a continuación.

2º Grado de Ingeniería en Energía-Automatización I Página 170


Autómatas Programables

Fig. 191 Solución propuesta al ejercicio del cálculo del volumen

Los valores dados a las entradas de la función CALCULATE y la expresión utilizada


en el cálculo son:

IN1; Se ha introducido el valor de pi = 3,141593


IN2; Se ha introducido el valor del radio del cilindro = 1 metro
IN3; Se introduce el valor, en unidades de ingeniería, medido por el sensor
IN4; Como el resultado del volumen quedará en metros cúbicos, se introduce el valor
1000 como multiplicador para obtener el cálculo en litros.
IN5; Se introduce el valor de la altura máxima del depósito.

OUT:= IN1*IN2*IN2*(IN5-IN3)*IN4

2º Grado de Ingeniería en Energía-Automatización I Página 171


Autómatas Programables

6.8.5.2 Solución propuesta al ejercicio 3 de la práctica 7.

Se trata de un sencillo ejercicio con el que se vuelve a trabajar el escalado de una


señal analógica para transformar la medida en unidades de ingeniería, en este caso,
con un valor comprendido entre 0 y 10000, que se corresponderá, de acuerdo con el
peso de una resistencia, a una cantidad variable de resistencias comprendida dentro
del rango mencionado.
Se utiliza también la función TRUNC para estudiar cómo puede transformarse un
número real en un número entero, sin más que eliminar los decimales del número
real con dicha función.
El resto de la solución consistirá en realizar una serie de comparaciones para activar
la salida o salidas correspondientes en función de la cantidad de resistencia pesadas
en la balanza, de acuerdo con el siguiente criterio:

 Si la cantidad es igual o superior a 100 unidades, activar la salida Q0.0


 Si la cantidad es igual o superior a 500 unidades, activar la salida Q0.1
 Si la cantidad es igual o superior a 1000 unidades, activar la salida Q0.2
 Si la cantidad es igual o superior a 2000 unidades, activar la salida Q0.3
 Si la cantidad es igual o superior a 5000 unidades, activar la salida Q0.4
 Si la cantidad es igual o superior a 7000 unidades, activar la salida Q0.5
 Si la cantidad es igual o superior a 9000 unidades, activar la salida Q0.6
 Si la cantidad es igual o superior a 10000 unidades, activar la salida Q0.7

Igualmente, se ha generado un registro “Número de resistencias” en donde podrá


observarse, durante la simulación, el número de resistencias correspondientes al
peso indicado por el sensor.
La propuesta de solución es la que se indica en las siguientes figuras.

2º Grado de Ingeniería en Energía-Automatización I Página 172


Autómatas Programables

Fig. 192_a Función FC1 propuesta como solución. Cálculo de nº de resistencias

2º Grado de Ingeniería en Energía-Automatización I Página 173


Autómatas Programables

Fig. 192_b Función FC1 propuesta como solución. Cálculo de nº de resistencias

2º Grado de Ingeniería en Energía-Automatización I Página 174


Autómatas Programables

Fig. 192_c Función FC1 propuesta como solución. Cálculo de nº de resistencias

2º Grado de Ingeniería en Energía-Automatización I Página 175


Autómatas Programables

Fig. 193_a Función FC2 propuesta como solución. Control de las salidas

2º Grado de Ingeniería en Energía-Automatización I Página 176


Autómatas Programables

Fig. 193_b Función FC2 propuesta como solución. Control de las salidas

2º Grado de Ingeniería en Energía-Automatización I Página 177


Autómatas Programables

Al efectuar la simulación puede observarse que, de acuerdo con el peso introducido


en la variable “Sensor de peso” (se introduce un valor comprendido entre 0 y 27648),
suceden dos cosas. Por un lado, se indica el número exacto de resistencias que hay
en la balanza en la variable “Número de resistencias”, y se activan aquellas salidas
que cumplen las condiciones del ejercicio.

En la siguiente imagen puede verse cómo, al introducir un valor de 15000 en la


variable “Sensor de peso”, indica que ese valor se corresponde a 5425 resistencias,
activándose las salidas Q0.0 a Q0.4 por cumplirse la condición de haber más de
5000 unidades.

Fig. 194 Simulación del ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 178


Autómatas Programables

6.8.5.3 Solución propuesta al ejercicio 4 de la práctica 7.

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.

Fig. 195 Selección del módulo

2º Grado de Ingeniería en Energía-Automatización I Página 179


Autómatas Programables

El módulo de salidas analógicas aparecerá insertado en la posición 2, según puede


observarse en la figura 196. Para poder ver las propiedades del mismo, bastará con
seleccionarlo (un clic sobre el módulo) y observar la parte inferior de la pantalla con
las lengüetas “Propiedades” y “General” seleccionadas. El dato que más va a
interesar a priori será la dirección asignada a cada uno de los dos canales de salida
de que dispone el módulo seleccionado.

Fig. 196 Módulo AQ insertado en la posición 2

En la siguiente figura se pueden ver las características principales del canal de


salida “0”. La dirección del canal será la QW96 (QW98 para el canal “1”), y el tipo de
salida analógica que viene seleccionado por defecto, “Tensión”, con un rango de +/-
10 voltios. También puede configurarse el valor sustitutivo para el canal en caso de
transición de RUN a STOP de la CPU, que se dejará como aparece, ya que en caso
de detención de la CPU interesará, normalmente, que la tensión en la salida sea
nula.
Por último, comentar que también puede utilizarse esta salida como salida analógica
de tipo “Intensidad” (seleccionándolo en el tipo de salida), con un rango de 0 a 20
mA. Para el ejercicio que se está desarrollando, se dejará en tensión.

2º Grado de Ingeniería en Energía-Automatización I Página 180


Autómatas Programables

Fig. 197 Propiedades del canal 0 del módulo AQ

En cuanto a la forma de operar para controlar la salida analógica, comentar que es


tan simple como el control que ya se ha hecho de las entradas analógicas. Las
funciones a emplear serán las mismas, NORM_X y SCALE_X, salvo que en esta
ocasión se partirá de un dato digital para transformarlo en un valor analógico de
salida.

2º Grado de Ingeniería en Energía-Automatización I Página 181


Autómatas Programables

La solución propuesta para este ejercicio es la siguiente.

Fig. 198_a Función FC1 propuesta como solución del ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 182


Autómatas Programables

Fig. 198_b Función FC1 propuesta como solución del ejercicio

En los segmentos del 1 al 5, simplemente se detecta qué sensores están o no


activados para conocer hasta dónde llega el nivel de líquido en el depósito, para
hacer que la bomba funcione a menor o mayor potencia en función de dicho nivel.
Esta potencia varía desde 0% (depósito vacío) hasta el 100 % (con depósito lleno).
En el último de los segmentos se realiza el cambio para pasar de un dato digital en
unidades de ingeniería (porcentaje de potencia a la que se desea que trabaje la
bomba) a un valor de tensión que se entregará en la salida correspondiente, y que
será proporcional al dato comentado.
Se empieza con la función NORM_X, en donde la entrada VALUE se corresponderá
con el dato “digital” que se desea transformar proporcionalmente a una tensión de
salida. Los valores “MIN” y “MAX” de esta función se fijan en 0 y 100
respectivamente. A la salida de la función NORM_X se obtendrá el valor
normalizado para la entrada VALUE (será un valor comprendido entre 0,0 y 1,0).
El dato normalizado sirve entonces como entrada para la función SCALE_X, cuyos
límites “MIN” y “MAX” serán los valores 0 y 27648, correspondientes al rango de
tensiones de salida de 0 a 10 voltios.
En la siguiente figura puede verse una simulación realizada, en donde la potencia
demandada para la bomba es del 50%, y en consecuencia la tensión de salida será
de 5 voltios (que se corresponde con el valor 13824, que es la mitad del límite MAX
de 27648 de la función SCALE_X, y que se correspondería a un valor de tensión de
10 voltios).

2º Grado de Ingeniería en Energía-Automatización I Página 183


Autómatas Programables

Fig. 199 Simulación para una potencia del 50%

2º Grado de Ingeniería en Energía-Automatización I Página 184


Autómatas Programables

6.8.5.4 Solución propuesta al ejercicio 5 de la práctica 7.

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.

Fig. 200_a Función FC1. Solución propuesta para el ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 185


Autómatas Programables

Fig. 200_b Función FC1. Solución propuesta para el ejercicio

Siempre que se activa el sistema con el conmutador de “marcha”, el motor


comenzará girando al 50% de su velocidad. La ejecución del primer segmento
habilita al segundo, deshabilitando éste a su vez al primero y habilitando al tercero,
cuarto y quinto. Se trata de un proceso secuencial para evitar, hasta que no se pase
a la situación de parada, una carga constante al valor del 50% de la variable
“velocidad” mientras esté activado el conmutador de “marcha”.
En los segmentos tres y cuatro se modifica el valor de la variable “velocidad” en
función de las pulsaciones recibidas para incrementar o decrementar dicho valor.
En el segmento cinco se detecta un cambio del conmutador de “marcha” a su
posición de parada, reinicializando la secuencia e introduciendo un valor de “0” en la
variable “velocidad” para conseguir la parada del motor.
El último segmento se encarga de convertir el valor de la variable “velocidad” en un
valor de tensión para atacar la salida.

2º Grado de Ingeniería en Energía-Automatización I Página 186


Autómatas Programables

6.8.5.5 Solución propuesta al ejercicio 6 de la práctica 7.

En este último ejercicio se hace un compendio de las diferentes funciones y


conceptos estudiados con anterioridad (control secuencial del programa utilizando
marcas, uso de las funciones MOVE, matemáticas, de comparación, de detección de
flancos así como de diversas funciones lógicas).
Al finalizar la programación del sistema, el alumno deberá implementar físicamente y
comprobar el correcto funcionamiento del mismo siguiendo las instrucciones del
profesor.
Aunque el circuito ya se encuentra implementado físicamente y listo para su
conexionado, se considera interesante que el alumno conozca algunos datos de
interés sobre el sistema implementado para conseguir una correcta asimilación del
trabajo realizado.
En primer lugar se presenta el esquema del sistema que se ha implementado,
siendo éste el que figura a continuación.

Fig. 201 Sistema implementado

Es preciso comentar que el único elemento, de los que aparecen en el esquema, no


implementado es el filtro.

2º Grado de Ingeniería en Energía-Automatización I Página 187


Autómatas Programables

La conexión entre el variador y el motor es la que se muestra en la siguiente figura.

Fig. 202 Conexionado del variador con el motor asíncrono

En el bornero del variador se encuentran diversas entradas, salidas y micro-


conmutadores para configuración del mismo. En la siguiente figura puede
observarse la configuración de dichos elementos y, posteriormente, las conexiones
que han sido realizadas para la correcta ejecución de esta actividad.

Fig. 203 Bornero del variador de frecuencia micromaster 420

2º Grado de Ingeniería en Energía-Automatización I Página 188


Autómatas Programables

En la figura 203 se muestra una conexión de elementos típica. La conexión de los


elementos realizada físicamente para el desarrollo de la práctica son los siguientes:

 Microconmutadores. El DIP 1 no es para uso del cliente y deberá estar


situado en la posición OFF. El DIP 2 se utiliza para la selección de la
frecuencia de red con la que se va a trabajar (OFF = 50Hz, ON = 60Hz). DIP
2 deberá estar, en consecuencia, situado en la posición OFF.

 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).

 Las entradas AIN+ y AIN- estarán conectadas a la salida analógica 1 del


módulo de salidas analógicas del sistema, respetando la polaridad en las
conexiones. A través de esta entrada se consigue, al variar la tensión
presente en la misma entre 0 y 10 voltios, variar la velocidad del motor.

Como podrá observarse, el panel instalado en el variador para el desarrollo de esta


práctica es el SDP (Status Display Panel), siendo los parámetros ajustados por
defecto los que se relacionan a continuación:

 Los datos nominales del motor, tensión, corriente y frecuencia, son


compatibles con los datos del convertidor.

 La característica V/F de variación de velocidad del motor es lineal, y


controlada con la tensión de salida del módulo de salidas analógicas
utilizado.

 La velocidad máxima es de 3000 rpm, y será controlada con la tensión


insertada en las entradas analógicas.

 El tiempo de aceleración / deceleración es de 10 segundos.

Una vez realizados los comentarios oportunos sobre el sistema implementado, se


procede a la explicación de la solución propuesta para el ejercicio.
El programa se ha estructurado en diversos segmentos y funciones,
correspondiendo el control principal a la función FC1 cuyo contenido se relaciona a
continuación.

 En el primer segmento del programa se atiende a la orden de marcha, que


realizará su función (comenzar con el motor al 50% de su velocidad) siempre
y cuando sea la primera vez que ésta se activa tras una parada o al iniciarse
la aplicación, y siempre y cuando no exista condición de parada. Si la orden
de marcha es correcta, se activará la marca de “marcha activada”, que

2º Grado de Ingeniería en Energía-Automatización I Página 189


Autómatas Programables

permitirá la ejecución, en su caso, de algunos de los segmentos que figuran a


continuación.

 El segundo segmento, y siempre que la marcha esté activada, activa las


marcas correspondientes para poner en funcionamiento el motor y decidir, en
función del conmutador de “Inversión de giro”, la dirección de giro del mismo.
Igualmente, se activa una marca “Desactiva nueva marcha” para que el
primer segmento quede desactivado, puesto que no interesará que la
velocidad esté continuamente cargándose al 50% ya que no podría realizarse
variación alguna de la misma en el resto del programa.

 El tercer segmento controla el pulsador de paro del sistema. Si éste se activa,


se cargará una velocidad igual a cero y se reinicializará el primer segmento
para poder volver a arrancar el motor.

 El cuarto y quinto segmentos permiten modificar, mediante pulsaciones en


“Incrementar 5%” y “Decrementar 5%”, la velocidad del motor.

 El sexto segmento permite poner al motor a trabajar directamente al 50% de


su velocidad.

 El último segmento permite, partiendo del dato “digital” de velocidad, modificar


la tensión de la salida analógica del módulo correspondiente, y que será la
entrada de consigna para el variador.

La función FC2 se encarga de controlar la activación de las salidas para el control de


la orden de Start / Stop y control del sentido de giro del variador.
La solución propuesta para el programa de control planteado en el ejercicio es la
mostrada en las siguientes figuras:

2º Grado de Ingeniería en Energía-Automatización I Página 190


Autómatas Programables

Fig. 204_a Función FC1 del sistema de control del ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 191


Autómatas Programables

Fig. 204_b Función FC1 del sistema de control del ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 192


Autómatas Programables

Fig. 205 Función FC2 para el control de las salida

En la siguiente figura puede observarse una simulación de la solución propuesta.


Puede verse cómo el sistema está en marcha, sin parada, con giro a izquierdas y
velocidad al 65%.

Fig. 206 Simulación de la solución propuesta para el ejercicio

2º Grado de Ingeniería en Energía-Automatización I Página 193


Autómatas Programables

Anotaciones Práctica nº 7: Entradas y salidas analógicas

2º Grado de Ingeniería en Energía-Automatización I Página 194


Autómatas Programables

7. Bibliografía de interés para el alumnado

 Manual del sistema S71200. Siemens

 Manual de uso del variador de frecuencia micromaster 420. Siemens

 Manual del sistema Step 7 V13. Siemens

Estos documentos pueden encontrarse en la carpeta “MANUALES PLC’s” del PC.

2º Grado de Ingeniería en Energía-Automatización I Página 195

You might also like