Tema 1. Introducción a los PLC y al estándar IEC-61131-3
1.1. Introducción
1.2. Estructura general de los PLC
1.3. Ciclo de Scan en un PLC
1.4. El estándar IEC 61131-3
1.5. Motivos para la aparición del estándar
1.6. Mejores introducidas por el estándar
1.7. Implementación del estándar por parte de los fabricantes
Tema 2. Introducción al software CODESYS
2.1. Introducción
2.2. Descargar e instalar CODESYS
2.3. Estructura visual de CODESYS
2.4. Barra de menús
2.5. Barra de herramientas
2.6. Barra de herramientas en LADDER o SFC
2.6.1. Barra de herramientas LADDER
2.7. Visualizaciones
Tema 3. Elementos comunes de la norma IEC 61131-3
3.1. Introducción
3.2. Tipos de datos en CODESYS
3.2.1. Tipo booleano (BOOL)
3.2.2. Tipo de dato entero (INT)
3.2.3. Tipo de dato real (REAL)
3.3. Variables en CODESYS
3.3.1. VAR_INPUT, VAR_OUTPUT y VAR_IN_OUT
3.3.2. Ámbito de una variable
3.3.3. Declaración de variables
3.4. Estructura de programación en la IEC 61131-3. Asimilación a CODESYS
3.4.1. Símil didáctico
3.4.2. Estructura formal de programación según el estándar
3.4.3. Creación de bloques de funciones en CODESYS
3.4.4. Creación de funciones en CODESYS
3.4.5. Uso de la entrada booleana EN (ENable) en los bloques de funciones (FB) y funciones (FUN)
3.5. Procedimiento para exportar-importar POU desde CODESYS
3.5.1. Exportar una POU
3.5.2. Importar una POU
Tema 4. Introducción a la programación en lenguaje Ladder: Aplicaciones de las POU de tipo función (FUN) en sistemas combinacionales y cálculos matemáticos
4.1. Introducción
4.2. Aplicación de POU de tipo función (FUN) a la programación de sistemas combinacionales
4.2.1. Circuito combinacional_1. Función con una sola salida
4.2.2. Circuito combinacional_2. Función con varias salidas. Salidas comunes a condiciones diferentes
4.3. Aplicación de POU de tipo función (FUN) a la programación de cálculos matemáticos
4.3.1. Volumen de depósito cilíndrico. Trabajando con números reales I
4.3.2. Volumen de depósito semiesférico-cilíndrico. Trabajando con números reales II
Tema 5. Introducción a la programación en lenguaje SFC
5.1. Introducción
5.2. Inicios del Grafcet
5.3. Principales elementos de un Grafcet
5.4. Representación gráfica de las principales secuencias Grafcet
5.4.1. Secuencia lineal
5.4.2. Secuencia en bucle
5.4.3. Selección de secuencias
5.4.4. Repetición de secuencia
5.4.5. Activación de secuencias simultaneas
5.4.6. Sincronización de secuencias
5.5. Programación de acciones en CODESYS
5.5.1. Programación de salidas de tipo booleano
5.5.2. Programación de objetos de tipo acción
5.6. Variables implícitas en el lenguaje SFC
5.7. Aplicación de POU de tipo bloque de funciones (FB) a la programación de sistemas secuenciales
5.7.1. Circuito Secuencial_1. Maniobra básica Marcha-Paro de motor trifásico
5.7.2. Circuito Secuencial_3. Maniobra básica Marcha-Paro de motor trifásico con salida condicionada
5.7.3. Circuito Secuencial_4. Maniobra de arranque estrella-triangulo de motor trifásico de inducción. Utilización de temporizadores y variables implícitas de situación del estado
5.7.4. Circuito Secuencial_5. Encendido progresivo de pilotos. Utilización de variables implícitas de tiempo
5.7.5. Circuito Secuencial_6. Encendido y apagado de un motor con un solo pulsador. Utilización del objeto “valor actual” de un CTU
5.7.6. Circuito Secuencial_7. Encendido progresivo de pilotos con parada de emergencia
Tema 6. Coordinación de Grafcet
6.1. Introducción
6.2. Programación estructurada en Grafcet. Importancia de la entrada enable
6.3. Interpretación de los esquemas Grafcet
6.4. Forzado de Grafcet. Concepto de jerarquía
6.5. Ejercicios de aplicación de la coordinación de Grafcet
6.5.1. CoordinaciónGrafcet_1. Marcha-paro con relé térmico y botón de rearme. Método A
6.5.2. CoordinaciónGrafcet_1. Marcha-paro con relé térmico y botón de rearme. Método B
6.5.3. CoordinaciónGrafcet_2. Inversión de giro de motor trifásico y estrella-triangulo. Método A
6.5.4. CoordinaciónGrafcet_2. Inversión de giro de motor trifásico y estrella-triangulo. Método B
6.5.5. CoordinaciónGrafcet_3. Unidad de ensamblado de piezas. Utilización de contador arriba-abajo. Método A
TEMA 7: INTRODUCCIÓN A LA PROGRAMACIÓN EN LENGUAJE ESTRUCTURADO O STRUCTURED TEXT (ST)
7.1 Introducción
7.2. Operador de asignación
7.3. Operaciones lógicas
7.4. Condicional IF-THEN-ELSIF
7.5. Instrucción CASE
7.6. Funciones (FUN) y bloque de funciones (FB) en ST
TEMA 8: EJEMPLOS RESUELTOS EN LENGUAJE ESTRUCTURADO
8.1. Introducción
8.2. Ejercicios resueltos del tema 4
8.3. Ejercicios resueltos del tema 5
8.4. Ejercicios resueltos del tema 6
TEMA 9: PROGRAMACIÓN ORIENTADA A OBJETOS (POO). CLASES, OBJETOS Y MÉTODOS.
INTRODUCCIÓN:
Ejemplo 1.
Ejemplo 2.
Ejemplo 3.
Ejemplo 4.
Ejemplo 4.1.
Ejemplo 5.
Ejemplo 5.1. Uso del puntero THIS.
Ejemplo 5.2. Uso del puntero THIS.
Ejemplo 6. Compartir variables entre métodos de un mismo objeto.
Ejemplo 6.1. Concepto de encapsulación.
TEMA 10: PROGRAMACIÓN ORIENTADA A OBJETOS (POO). PROPIEDADES.
INTRODUCCIÓN:
Ejemplo 1.
Ejemplo 2.
Ejemplo 3.
Ejemplo 3.1.
TEMA 11: PROGRAMACIÓN ORIENTADA A OBJETOS (POO). HERENCIA.
INTRODUCCIÓN:
Ejemplo 1.
Ejemplo 2. Utilización de Overrride.
Ejemplo 3.
Ejemplo 3.1.
Ejemplo 4.
Ejemplo 4.1. Utilización del puntero SUPER.
Ejemplo 5.
Ejemplo 6. Polimorfismo por herencia. Uso de POINTER TO.
Ejemplo 6. Polimorfismo por herencia. Uso de REFERENCE TO.
Ejemplo 6.1.
Ejemplo 6.2.
Ejemplo 7. Polimorfismo por herencia. Concepto de clase abstracta.
Ejemplo 7.1.
TEMA 12: PROGRAMACIÓN ORIENTADA A OBJETOS (POO). INTERFACES.
INTRODUCCIÓN:
Ejemplo 1.
Ejemplo 1.1.
Ejemplo 2.
Ejemplo 3. Polimorfismo por Interfaces. Concepto de clase abstracta.
Ejemplo 3.1.
TEMA 13: PROGRAMACIÓN ORIENTADA A OBJETOS (POO). DELEGACIÓN.
INTRODUCCIÓN:
Ejemplo 1. Delegación a través de variable local VAR. Ejemplo con una sola instancia.
Ejemplo 1.1. Delegación a través de variable local VAR. Ejemplo con dos instancias.
Ejemplo 2. Delegación a través de variable de entrada VAR_INPUT. Ejemplo con una sola instancia.
Ejemplo 2.1. Delegación a través de variable de entrada VAR_INPUT. Ejemplo con instancia común del FB delegado.
Ejemplo 2.2. Delegación a través de variable de entrada VAR_INPUT. Ejemplo con dos instancias diferentes del FB delegado.
Ejemplo 3. Aplicación de la delegación a la programación de Maquinas de Estados Finitos (MEF). Maniobra básica de marcha-paro.
Ejemplo 4. Aplicación de la delegación a la programación de Maquinas de Estados Finitos (MEF). Máquina de túnel de lavado de vehículos.
Ejemplo 4.1. Aplicación de la delegación a la programación de Maquinas de Estados Finitos (MEF). Máquina de túnel de lavado de vehículos con seta de emergencia.