Post on 12-Sep-2014
transcript
Sistema de
programación IEC
61131-3: CoDeSys
Guía de ejercicios
Ing. Gabriel Vento
Versión 1.01
Festo AR
Edison 2392
(1640) Martínez
Buenos Aires - Argentina
Sistema de programación IEC 61131-3: CoDeSys Guía de ejercicios
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 2 de 32
Tabla de contenido
1 EJERCICIO 1: CONTROL DE SALIDA MEDIANTE MÚLTIPLES ENTRADAS .................... 3
2 EJERCICIO 2: CONTROL DE LUZ DE ESCALERA .............................................................. 4
3 EJERCICIO 3: CONTROL DE LÁMPARAS TEMPORIZADAS ............................................. 5
4 EJERCICIO 4: CONTROL DE TOILET ................................................................................ 6
5 EJERCICIO 5: SELECCIÓN DE PROGRAMA A EJECUTAR ................................................ 7
6 EJERCICIO 6: SECUENCIADOR ........................................................................................ 8
7 EJERCICIO 7: BLINKER .................................................................................................. 10
8 EJERCICIO 8: BLINKER CON HABILITACIÓN/BLOQUEO MEDIANTE CONTADOR ...... 11
9 EJERCICIO 9: PROYECTO FINAL: SEMÁFORO DE DOS VÍAS ....................................... 12
10 EJERCICIOS RESUELTOS ........................................................................................... 14
10. 1 EJERCICIO 1 ........................................................................................................... 14 10. 2 EJERCICIO 2 ........................................................................................................... 15 10. 3 EJERCICIO 3 ........................................................................................................... 16 10. 4 EJERCICIO 4 ........................................................................................................... 17 10. 5 EJERCICIO 5 ........................................................................................................... 18 10. 6 EJERCICIO 6 ........................................................................................................... 19 10. 7 EJERCICIO 7 ........................................................................................................... 23 10. 8 EJERCICIO 8 ........................................................................................................... 25 10. 9 EJERCICIO 9 ........................................................................................................... 28
Sistema de programación IEC 61131-3: CoDeSys Guía de Ejercicios
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 3 de 32
1 Ejercicio 1: Control de salida mediante múltiples entradas
1. Crear un Nuevo Proyecto: Sistema Target: None
2. Crear un programa llamado PLC_PRG escrito en IL. Este será el programa
principal del proyecto y se encargará únicamente de iniciar el programa del
ejercicio propiamente dicho.
3. Crear un programa llamado Ejercicio_1 escrito en LDR.
Descripción del programa:
4. Utilizar los nombres de variables en concordancia con la descripción del
programa.
5. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 4 de 32
2 Ejercicio 2: Control de luz de escalera
1. Sobre el mismo proyecto creado en el ejercicio 1, incluir un nuevo programa
llamado Luz_Escalera escrito en LDR.
2. Descripción del programa:
- Debe haber un interruptor al comienzo y otra al final de la escalera, desde
donde la luz puede ser encendida o apagada (Llave de combinación).
- Una llave principal podrá activar / desactivar el sistema de iluminación.
3. Realizar una visualización simple para probar el programa.
4. Utilizar los nombres de variables en concordancia con la descripción del
programa.
5. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 5 de 32
3 Ejercicio 3: Control de lámparas temporizadas
1. Sobre el mismo proyecto creado en el ejercicio 1, incluir un nuevo programa
llamado Ejercicio_3 en CFC.
2. Descripción del programa:
3. Realizar un retardo a la conexión para ambas lámparas, la primera con 3
segundos y la segunda con 7 segundos.
4. Utilizar los nombres de variables en concordancia con la descripción del
programa.
5. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 6 de 32
4 Ejercicio 4: Control de Toilet
1. Sobre el mismo proyecto creado en el ejercicio 1, incluir un nuevo programa
llamado “toilet_Control” escrito en FBD.
2. Descripción del programa:
- Al detectarse un flanco ascendente en la señal switch se debe encender la
salida light, y tres segundos después la salida Fan.
- Al detectarse un flanco descendente en la señal switch se debe apagar la
salida light y cinco segundos después la salida fan.
3. Realizar una visualización simple para probar el programa.
4. Utilizar los nombres de variables en concordancia con la descripción del
programa.
5. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 7 de 32
5 Ejercicio 5: Selección de programa a ejecutar
1. Sobre el mismo proyecto creado en el ejercicio 1, eliminar el programa
PLC_PROG y crearlo nuevamente, pero esta vez en ST.
2. Descripción del programa:
Mediante dos pulsadores se debe poder incrementar / decrementrar el valor de
la variable SELECT. Dependiendo del valor de la misma, se debe ejecutar uno y
solo uno de los ejercicios creados con anterioridad, según la siguiente tabla:
Valor de la variable Select Programa a ejecutar
1 Ejercicio_1
2 Luz_escalera
3 Ejercicio_3
4 Toilet_control
1 > Select > 4 La variable select no debe tomar nunca valores en este rango
3. Realizar una visualización simple para probar el programa.
4. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 8 de 32
6 Ejercicio 6: Secuenciador
1. Crear un Nuevo Proyecto: Sistema Target: FESTO CECX-X-C1
2. Descripción del programa:
Si se encuentra presente la entrada C_Completo (Ciclo completo), se debe
realizar una secuencia cíclica según la siguiente tabla:
Salida Paso 1 Paso 2 Paso 3 Paso 4 Paso 5 Paso 6 Paso 7
0
1
2
3
4
5
6
7
Sin embargo, si la entrada C_Completo no estuviera presente, los pasos 3 y 4
deben ser reemplazados por los pasos alternativos presentados en la tabla a
continuación. El paso 5 debe ser eliminado.
Salida Paso 3 alternativo
Paso 4 alternativo
0
1
2
3
4
5
6
7
La transición de un paso al paso siguiente debe hacerse luego de cumplido un
tiempo fijo de 1 segundo. Para esto se debe implementar un bloque de
funciones encargado de realizar el temporizado.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 9 de 32
- El programa principal debe llamarse PLC_PRG, y debe estar escrito en SFC.
Las acciones vinculadas con los pasos deben estar escritas en IL, y las
acciones vinculadas con transiciones en FBD.
- El bloque de funciones debe llamarse Temporizador, y debe estar escrito en
CFC.
3. Utilizar los nombres de variables en concordancia con la descripción del
programa.
4. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 10 de 32
7 Ejercicio 7: Blinker
1. Crear un Nuevo Proyecto: Sistema Target: FESTO CECX-X-C1
2. Descripción del programa:
El programa debe hacer oscilar una salida con un ciclo de trabajo del 60%. La
frecuencia de oscilación será determinada mediante un pulso en una entrada,
según la siguiente descripción:
Entrada 0: Frecuencia de oscilación: 1Hz.
Entrada 1: Frecuencia de oscilación: 5Hz.
Entrada 2: Frecuencia de oscilación: 10Hz.
El temporizador deberá implementarse mediante un bloque de funciones y debe
existir una única instancia de dicho bloque.
- El programa principal debe llamarse PLC_PRG, y estar escrito en SFC. Las
acciones vinculadas con los pasos deben escribirse en CFC.
- El bloque de funciones debe llamarse Espera y estar escrito en CFC.
3. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 11 de 32
8 Ejercicio 8: Blinker con habilitación/Bloqueo mediante contador
1. Crear un Nuevo Proyecto: Sistema Target: FESTO CECX-X-C1
2. Descripción del programa:
El programa debe hacer oscilar una salida con un ciclo de trabajo del 60%. La
frecuencia de oscilación será determinada mediante un pulso en una entrada,
según la siguiente descripción:
Entrada 0: Frecuencia de oscilación: 1Hz.
Entrada 1: Frecuencia de oscilación: 5Hz.
Entrada 2: Frecuencia de oscilación: 10Hz.
El temporizador deberá implementarse mediante un bloque de funciones y debe
existir una única instancia de dicho bloque.
Además del oscilador, se deberá implementar un contador de flancos
ascendentes en una nueva POU llamada Contador, el cuál detenga el oscilador al
llegar a la cuenta de 15. La entrada de pulsos para el contador será la entrada 3
y recibirá el nombre de PULSOS. El contador debe poder ser reiniciado mediante
la entrada 4, la cual llevará el nombre RESET. Al resetear el contador, el
oscilador deberá ser reiniciado.
- El programa principal debe llamarse PLC_PRG, y estar escrito en SFC. Las
acciones vinculadas con los pasos deben escribirse en CFC.
- El bloque de funciones para le temporizado debe llamarse Espera y estar
escrito en CFC.
- LA POU que implementa el contador debe escribirse en CFC y llevar el
nombre CONTADOR.
3. Utilizar los nombres de variables en concordancia con la descripción del
programa.
4. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 12 de 32
9 Ejercicio 9: Proyecto Final: Semáforo de dos vías
5. Crear un nuevo proyecto. Sistema Target: FESTO CECX-X-C1.
6. Descripción del programa:
El proyecto debe controlar un semáforo simple de dos vías, en concordancia con
el siguiente gráfico:
Para controlar la secuencia se requiere:
- Un programa principal, llamado PLC_PRG, escrito en CFC.
- Un programa secundario llamado SEQUENCE, escrito en SFC.
- Un bloque de funciones llamado TRAFFICSIGNAL, escrito en FBD.
- Un bloque de funciones llamado WAIT, escrito en IL.
Se utilizará una instancia del FB TRAFFICSIGNAL para cada uno de los
semáforos, y su función será la de seleccionar cuál es la luz que se enciende
en función del estado de una variable de entrada llamada STATUS. Sus
salidas serán las señales de luz RED, YELLOW y GREEN, en concordancia con
la siguiente tabla:
Valor de la variable STATUS Señal a encender
1 GREEN
2 YELLOW
3 RED
4 YELLOW, RED
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 13 de 32
El bloque de funciones WAIT será un temporizador, el cuál recibirá como
entrada la duración de la fase en segundos (Variable Time_in) y como salida
producirá el valor TRUE (Variable OK) al cumplirse el periodo de tiempo
especificado.
El programa secundario SEQUENCE será el encargado de combinar todos los
elementos para controlar la correcta secuencia de funcionamiento del
sistema. Tendrá una variable de entrada llamada START, dos variables de
salida llamadas TRAFFICSIGNAL1 y TRAFFICSIGNAL2 respectivamente, y una
variable del tipo WAIT (FB creado anteriormente), llamada DELAY. Se deben
utilizar pasos no-IEC y todas las acciones vinculadas a los pasos deben estar
escritas en IL. La secuencia debe interrumpirse al final del ciclo si la señal
START no se encuentra presente.
El programa PLC_PRG conecta la entrada de habilitación (Variable IN) con el
bloque SEQUENCE, el cuál provee las instrucciones correctas como salidas
para cada una de las instancias del FB TRAFFICSIGNAL, el cuál finalmente se
vincula a las salidas físicas.
La vinculación entre las entradas/Salidas del PLC y las variables deben ser
válidas a lo largo de todo el proyecto, y en concordancia con la siguiente
tabla:
Variable Dirección
IN %IX4.0
A1_GREEN %QX0.0
A1_YELLOW %QX0.1
A1_RED %QX0.2
A2_GREEN %QX0.3
A2_YELLOW %QX0.4
A2_RED %QX0.5
7. Utilizar los nombres de variables en concordancia con la descripción del
programa.
8. Realizar una visualización simple para probar el programa.
9. Ejecutar la simulación y verificar el correcto funcionamiento del programa.
10. Descargar el programa al controlador y verificar su correcto funcionamiento.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 14 de 32
10 Ejercicios Resueltos
10. 1 Ejercicio 1
Control de salida mediante múltiples entradas.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 15 de 32
10. 2 Ejercicio 2
Control de luz de escalera.
Visualización:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 16 de 32
10. 3 Ejercicio 3
Control de lámparas temporizadas.
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 17 de 32
10. 4 Ejercicio 4
Control de Toilet
Visualización:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 18 de 32
10. 5 Ejercicio 5
Selección de programa a ejecutar
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 19 de 32
10. 6 Ejercicio 6
Secuenciador
Programa PLC_PRG:
Acción de Inicio:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 20 de 32
Acción de Paso 2:
Acción de transición 1:
Acción de transición 2:
Acción de Paso 3:
Acción de Paso 3 alternativo:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 21 de 32
Acción de Paso 4:
Acción de Paso 4 alternativo:
Acción de Paso 5:
Acción de Paso 6:
Acción de Paso 7:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 22 de 32
Bloque de funciones del temporizador:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 23 de 32
10. 7 Ejercicio 7
Blinker:
Programa PLC_PRG
Acción paso INIT
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 24 de 32
Acción Paso STEP2:
Bloque de funciones del temporizador:
Variables Globales:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 25 de 32
10. 8 Ejercicio 8
Blinker con habilitación/Bloqueo mediante contador
Programa PLC_PRG
Acción paso INIT
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 26 de 32
Acción Paso STEP2:
Bloque de funciones del temporizador:
Bloque de funciones del contador:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 27 de 32
Variables Globales:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 28 de 32
10. 9 Ejercicio 9
Proyecto final: Semáforo de dos vías
Declaración de variables globales:
Bloque de funciones TRAFFICSIGNAL:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 29 de 32
Bloque de funciones WAIT:
Programa SEQUENCE:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 30 de 32
Programa SEQUENCE – Acción INIT:
Programa SEQUENCE – Acción SWITCH1:
Programa SEQUENCE – Acción GREEN2:
Programa SEQUENCE – Acción SWITCH2:
Programa SEQUENCE – Acción GREEN1:
Sistema de programación IEC 61131-3: CoDeSys. Guía de ejercicios. Página 31 de 32
Programa PLC_PRG:
Visualización: