Está en la página 1de 76

Entornos Integrados

de Automatización
Ingeniería de Sistemas y Automática

Autómatas Programables:
Introducción al Estándar IEC-61131

IEC-61131
Felipe Mateos Martín

IEC-61131 Presentación, Oct. 2006 1


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

La Norma IEC-61131 se refiere a:

• Los autómatas programables (AP ó PLC´s) y a sus periféricos


correspondientes, tales como:

- Los equipos de programación y depuración (PADT´s)


- Los equipos de ensayo (TE´s)
- Los interfaces hombre-máquina (MMI´s)

Esta norma no trata del sistema automatizado, del cual el autómata


programable es un componente básico.

PADT: Programming And Debugging Tool


TE: Test Equipment
MMI: Man-Machine Interface

IEC-61131 Presentación, Oct. 2006 2


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

La finalidad de esta Norma IEC-61131 es:


• Definir e identificar las características principales que se refieren a la
selección y aplicación de los PLC´s y sus periféricos.

• Especificar los requisitos mínimos para las características funcionales, las


condiciones de servicio, los aspectos constructivos, la seguridad general
y los ensayos aplicables a los PLC´s y sus periféricos.

• Definir los lenguajes de programación de uso más corriente, las reglas


sintácticas y semánticas, el juego de instrucciones fundamental, los
ensayos y los medios de ampliación y adaptación de los equipos.

• Dar a los usuarios una información de carácter general y unas directrices


de aplicación.

• Definir las comunicaciones entre los PLC´s y otros sistemas.

IEC-61131 Presentación, Oct. 2006 3


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Partes de la Norma IEC 61131:

Parte 1: Información general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programación
Parte 4: Guías de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guías de programación (TR)

IEC-61131 Presentación, Oct. 2006 4


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Partes de la Norma IEC 61131:

Parte 1: Información general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programación
Parte 4: Guías de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guías de programación (TR)

IEC-61131 Presentación, Oct. 2006 5


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información General


Objetivos

• Se dan las definiciones y un glosario de los


términos utilizados en esta norma.

• Se identifican las principales características de los


sistemas de autómatas programables.

IEC-61131 Presentación, Oct. 2006 6


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información General


Definiciones

Programación de aplicación, lista de asignaciones, sistema automatizado,


disponibilidad, BCD, datos booleanos, bus, componente, conexión/desconexión, lista
de referencia cruzada, equipo de comunicación de datos (DCE), equipo terminal de
datos (DTE), ejecución, parada de seguridad, imagen de entrada/salida, entrada,
instrucción, fallo interno, diagrama de escalera , lenguaje (FBD, IL, LD, ST, SFC),
sistema de control lógico, procesador principal (MPU), interface hombre-máquina
(MMI), tiempo medio entre fallos (MTBF), red, en línea, salida, programa, periférico,
barras de corriente, autómata programable (AP ó PLC), equipo de programación y
puesta a punto (PADT), estación de entrada/salida remota (RIOS), reinicio, sistema de
control secuencial, transmisión de datos en serie, soporte lógico (software), salida en
modo fuente/sumidero, equipo de ensayo (TE), tiempo (retardo, ejecución, respuesta,
exploración, transferencia), temporizador (de retardo de conexión/desconexión),
programa de usuario, perro guardián, bit, byte, palabra… GLOSARIO…

IEC-61131 Presentación, Oct. 2006 7


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información general


Estructura funcional de un sistema de autómata programable

• Función de tratamiento de la señal.


• Función de interfaz con los sensores y actuadores.
• Función de comunicación.
• Función de interfaz hombre-máquina.
• Funciones de programación, puesta a punto, ensayo y
documentación.
• Funciones de alimentación de corriente

IEC-61131 Presentación, Oct. 2006 8


Entornos Integrados
de Automatización
Funciones de interfaz Ingeniería de Sistemas y Automática
Funciones de Operador
comunicación hombre-máquina

Funciones de program.,
puesta a punto y ensayo Programador

Funciones de
tratamiento
Sistema
Sistema
operativo
operativo
Funciones
de Ejecucióndel
Ejecución del Memoriade
de
alimentación programa Memoria
programa programa
corriente programa
Acometida
de la red Conjuntode
Conjunto de Memoria de
Memoria de
instrucciones
instrucciones
datos
datos
Parte 1:
Información
general
Estructura funcional
de un sistema de
autómata programable

Funciones de interfaz con


sensores y actuadores

IEC-61131 Presentación, Oct. 2006 Máquina/proceso 9


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información general


Estructura funcional de un sistema de autómata programable
Función de interfaz con los sensores y actuadores

Unidad de tratamiento

Tiposde
de Característicasdel
Características del
Tipos
señalesde
deE/S
E/S sistemasde
sistemas deE/S
E/S
Alimentación señales
• Binarias • Tratamiento
• Digitales • Conversión
• Analógicas • Aislamiento
• Etc.

Máquina/proceso

IEC-61131 Presentación, Oct. 2006 10


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información general


Estructura funcional de un sistema de autómata programable
Función de interfaz hombre-máquina (MMI)

Informaciónde
Información de
estado,valores
estado, valores

Operador
Consignas,
Consignas,
ajustes
ajustes

IEC-61131 Presentación, Oct. 2006 11


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información general


Estructura funcional de un sistema de autómata programable
Funciones de programación, puesta a punto, ensayo y documentación

Programación
Programación

Arranquedel
Arranque del
sistema
sistema
automatizado Programador
automatizado

Documentación
Documentación
yyarchivado
archivado

IEC-61131 Presentación, Oct. 2006 12


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información general


Disponibilidad y fiabilidad, es responsabilidad del usuario en cuanto a:

• Arquitectura del sistema automatizado. Redundancias,


tolerancia a fallos, funciones de diagnóstico.

• Arquitectura del sistema del autómata programable, por


ejemplo, estructura modular con autodiagnóstico

• Diseño, ensayo y mantenimiento del programa de


aplicación. Incluir funciones de diagnóstico de la ejecución, análisis y
detección de averías.

• Condiciones de instalación y servicio. Mejorar las condiciones


de trabajo y del entorno.

IEC-61131 Presentación, Oct. 2006 13


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información general


Características ergonómicas

• Generales. Uso eficaz del sistema del AP y sus periféricos, reducción de


errores, fatiga y riesgo para el operario.

• Indicadores de estado, para CPU´s, fuentes de alimentación y el


sistema de E/S.

• Pantallas y teclados. Visibilidad, disposición, confirmaciones, ...

• Otras recomendaciones. Ventiladores, acabado superficial, aristas


vivas, portabilidad.

IEC-61131 Presentación, Oct. 2006 14


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 1: Información general


Definiciones de “soporte Físico” (Hardware) de un sistema AP
Estaciones Periféricos Periféricos Periféricos
Procesador conectables
de E/S permanentes no-conectables
principal en línea
remota en línea

NO TRANSPORTABLE

Procesador Estaciones
principal de E/S
remota . . . . TRANSPORTABLE . . . .

. . . . . PORTÁTIL . . . . . . . .

Autómata programable Pariféricos

Instalación permanente Instalación NO-permanente

Sistema del autómata programable (Sistema AP)

IEC-61131 Presentación, Oct. 2006 15


Procesador principal
Entornos Integrados
de Automatización
Estación de E/S Ingeniería de Sistemas y Automática
Sistema del autómata
remota programable (AP)
Periféricos
(permanentes/ NO- Parte 1:
permanentes)
Información general
Esquema de interfaz

Entradas digitales
y analógicas

Módulos
Módulos
desalidas
salidas
de Salidas digitales
y analógicas
Memoria(s)
Memoria(s)
yyunidad(es)
unidad(es) Módulos
Módulos
detratamiento
tratamiento de entradas
de de entradas Transmisión serie,
etc.: ordenadores,
impresoras

Módulos
Módulos
decomunica-
comunica-
de Acometida
ción
ción de la red

Fuente de alimentación Límite de la norma


IEC-61131 Presentación, Oct. 2006 16
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Partes de la Norma IEC 61131:

Parte 1: Información general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programación
Parte 4: Guías de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guías de programación (TR)

IEC-61131 Presentación, Oct. 2006 17


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Objetivos

En esta parte se especifican:

• Los requisitos eléctricos, mecánicos y funcionales para los


autómatas programables y los periféricos correspondientes, así
como las condiciones de servicio, almacenamiento y transporte
aplicables.
• La información que ha de suministrar el fabricante.
• Los métodos y procedimientos de ensayo que han de utilizarse
para la comprobación del cumplimiento de los requisitos por parte
de los autómatas programables y sus periféricos.

IEC-61131 Presentación, Oct. 2006 18


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Definiciones

Parte accesible, batería, circuito o equipo (clase I, II, III), factor de cobertura,
línea de fuga, tierra, inmunidad, entrada/salida digital, aislamiento,
alimentación de red, procesador principal (MPU), microentorno, salida a
prueba de cortocircuitos, categoría de sobretensión, grado de contaminación,
conector desmontable, temperatura (aire ambiente), ensayo, cableado
(interno, externo), ...

IEC-61131 Presentación, Oct. 2006 19


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Condiciones de servicio y requisitos del entorno físico
Es responsabilidad del usuario que no se rebasen las condiciones de servicio:

• Condiciones de servicio normales.


O Condiciones del entorno físico: temperatura, humedad, contaminación,
inmunidad a la corrosión, altitud.
O Condiciones de servicio y requisitos eléctricos: alimentaciones, ruido
eléctrico, sobretensiones, etc.
O Condiciones de servicio y requisitos mecánicos: Vibraciones, choque,
caída libre.
• Condiciones de servicio especiales. Polvo, humo, partículas
radiactivas, vapores, sales, insectos, pequeños animales, etc.
• Requisitos para el transporte y almacenaje: temperatura, presión
atmosférica, humedad relativa.

IEC-61131 Presentación, Oct. 2006 20


Procesador principal
Entornos Integrados
de Automatización
Estación de E/S Ingeniería de Sistemas y Automática
Sistema del autómata
remota programable (AP)
Periféricos
(permanentes/ NO-
permanentes) Parte 2: Especificaciones y
ensayos de los equipos
Requisitos eléctricos
Esquema típico de un sistema AP

Entradas digitales
y analógicas

Módulos
Módulos
desalidas
salidas
de Salidas digitales
y analógicas
Memoria(s)
Memoria(s)
yyunidad(es)
unidad(es) Módulos
Módulos
detratamiento
tratamiento de entradas
de de entradas Transmisión serie,
etc.: ordenadores,
impresoras
Módulos
Módulos
decomunica-
comunica-
de Acometida
ción
ción de la red

Fuente de alimentación Límite de la norma


IEC-61131 Presentación, Oct. 2006 21
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Requisitos eléctricos

• Alimentación de corriente alterna (c.a.) y continua (c.c.).


• E/S digitales.
• E/S analógicas.
• Interfaces de comunicación.
• Procesador(es) principal(es) y memoria(s) del sistema AP.
• Estaciones de entrada/salida remota (RIOS).
• Periféricos: PADT, TE, MMI.
• Inmunidad al ruido y ruido emitido.
• Propiedades dieléctricas.
• Autodiagnósticos y diagnósticos.

IEC-61131 Presentación, Oct. 2006 22


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Requisitos mecánicos

• Protecciones contra el riesgo de choque eléctricos.


• Requisitos de distancias en el aire y líneas de fuga.
• Requisitos de inflamabilidad para materiales aislantes.
• Envolvente.
• Requisitos mecánicos de los materiales de conexión..
• Disposiciones para la tierra de protección.
• Tierra funcional.
• Cables y conectores de interconexión.
• Conexión/desconexión de unidades desmontables.
• Requisitos de la batería.
• Marcado e identificación.

IEC-61131 Presentación, Oct. 2006 23


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Información que debe facilitar el fabricante

El fabricante deberá facilitar a los usuarios la información necesaria para la


aplicación, proyecto, instalación, puesta en marcha, funcionamiento y
mantenimiento del sistema de autómata programable. Adicionalmente el
fabricante puede ocuparse de la formación del usuario.

• Tabla resumen con la información que se debe facilitar.


• Tipo y contenido de la información escrita: Catálogos y hojas de
características, manuales de usuario, documentación técnica.
• Información relativa al cumplimiento de esta norma.
• Información relativa a la fiabilidad.
• Información relativa a la seguridad.

IEC-61131 Presentación, Oct. 2006 24


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Ensayos y verificaciones

• Se define como ha de verificarse la conformidad del autómata


programable y sus periféricos correspondientes con los requisitos
fijados en las partes 1 y 2 de la norma.

• Estos ensayos NO se refieren a los métodos de aplicación de los


AP para cumplir con los requisitos del sistema automatizado.

• Se dividen en ensayos de tipo y ensayos de rutina.

IEC-61131 Presentación, Oct. 2006 25


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos


Ensayos y verificaciones
• Ensayos de tipo
• Equipos a ensayar.
• Procedimientos de verificación.
• Condiciones generales para los ensayos.
• Ensayos climáticos, mecánicos y eléctricos.
• Verificación de las características de la alimentación de c.a. y c.c.
• Verificación de las características de entrada/salida.
• Verificación de las características del procesador principal.
• Verificación de las estaciones de E/S remotas.
• Verificación de las características de los periféricos.
• Verificación del autodiagnóstico y diagnóstico.
• Ensayos de rutina
• Ensayo estándar de rigidez dieléctrica
• Ensayo de continuidad de la tierra de protección.

IEC-61131 Presentación, Oct. 2006 26


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Partes de la Norma IEC 61131:

Parte 1: Información general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programación
Parte 4: Guías de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guías de programación (TR)

IEC-61131 Presentación, Oct. 2006 27


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Objeto y campo de aplicación

• Definir los lenguajes de programación de uso más


corriente, las reglas sintácticas y semánticas, el juego de
instrucciones fundamental, los ensayos y los medios de
ampliación y adaptación de los equipos.

Es el interface entre el programador y


el sistema de control

IEC-61131 Presentación, Oct. 2006 28


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Definiciones

Tiempo absoluto, vía de acceso, acción, argumento, matriz, asignación,


bloque funcional biestable, cadena de bits, cuerpo, llamada, cadena de
caracteres, comentario, compilar, tipo de datos, declaración, delimitador,
doble palabra, flanco ascendente/descendente, función, diagrama de bloques
funcionales, direccionamiento, valor, parámetro de entrada, instancia, literal
entero, palabra clave, etiqueta, real largo, temporizador con retardo de
conexión/desconexión, parámetro de salida, sentido de corriente, unidad de
organización de programa, recurso, tarea, retorno, etapa, secuencia,
transición, representación simbólica, etc...

IEC-61131 Presentación, Oct. 2006 29


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


El estándar IEC-61131

Elementos comunes

Lenguajes de programación

IEC-61131 Presentación, Oct. 2006 30


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación

Elementos comunes
• Tipos de datos y variables
• Modelo de software
• Modelo de comunicación de datos
• Modelo de programación
• Unidades de organización del programa
• Gráfico Funcional Secuencial (SFC)
• Elementos de configuración

Lenguajes de programación
• Lista de instrucciones (IL)
• Texto estructurado (ST)
• Diagrama de bloques funcionales (FBD)
• Diagrama de contactos (LD)

IEC-61131 Presentación, Oct. 2006 31


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Elementos comunes. Tipos de datos y variables

• Tipos de datos: booleanos, enteros, reales, byte, palabra, cadenas


de caracteres, fecha, hora_del_día, canal analógico de entrada, ..., tipos
de datos derivados (creados por el usuario).
BOOL, INT, REAL, BYTE, WORD, STRING ¿Qué es esto?
DATE, TIME_OF_DAY, ... 01010101 10101010

• Variables. Asignan direcciones del hardware: E/S , memoria y datos.


Locales o globales. Hacen la programación independiente del hardware.

IEC-61131 Presentación, Oct. 2006 32


Parte 3: Lenguajes de programación
Entornos Integrados
de Automatización
Elementos comunes. Modelo de software Ingeniería de Sistemas y Automática

Configuración

Recurso Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vías de acceso

Función
IEC-61131 Presentación, Oct. 2006 de comunicación (IEC 61131-5) 33
Parte 3: Lenguajes de programación
Entornos Integrados
de Automatización
Modelo de software. PLC convencional. Ingeniería de Sistemas y Automática

Configuración

Recurso
Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vías de acceso

Función
IEC-61131 Presentación, Oct. 2006 de comunicación (IEC 61131-5) 34
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Modelo de comunicación de variables (I)

• Flujo de datos dentro de un programa

Programa A
FB1 FB2
FB_X FB_Y

a b

IEC-61131 Presentación, Oct. 2006 35


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Modelo de comunicación de variables (II)
• Comunicación mediante variables globales

Configuración C

Programa A Programa B
VAR_EXTERNAL VAR_EXTERNAL
x: BOOL; x: BOOL;
END_VAR END_VAR

FB1 FB2
FB_X VAR_GLOBAL FB_Y
a x: BOOL; b
x x
END_VAR

IEC-61131 Presentación, Oct. 2006 36


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Modelo de comunicación de variables (III)
• Bloques funcionales de comunicación

Configuración C Configuración D

Programa A Programa B
send1 rcv1

FB1 RD1 FB2


SD1
FB_X FB_Y

b
a

IEC-61131 Presentación, Oct. 2006 37


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Modelo de programación
Elementos de los lenguajes de programación de un AP

• Tipos de datos derivados


• Unidades de organización de programa, POU´s
Funciones
Bloques funcionales
Programas
• Elementos del diagrama secuencial (SFC)
• Elementos de configuración
Variables globales
Recursos
Tareas
Programa
Vias de acceso de aplicación

Fig. 2c- Bloques funcionales de comunicación


IEC-61131 Presentación, Oct. 2006 38
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación

Elementos comunes
• Tipos de datos y variables
• Modelo de software
• Modelo de comunicación de datos
• Modelo de programación
• Unidades de organización del programa
• Gráfico Funcional Secuencial (SFC)
• Elementos de configuración

Lenguajes de programación
• Lista de instrucciones (IL)
• Texto estructurado (ST)
• Diagrama de bloques funcionales (FBD)
• Diagrama de contactos (LD)

IEC-61131 Presentación, Oct. 2006 39


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Unidades de organización del programa (POU´s)

Programas
Funciones

Bloques
funcionales

IEC-61131 Presentación, Oct. 2006 40


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Unidades de organización de programas, POU´s.
Programa de aplicación

INPUT OUTPUT IN_OUT EXTERNAL

FUNCTION_BLOCK
PROGRAM
Type Local
Type Local
GLOBAL

INPUT

FUNCTION
Type Local

IEC-61131 Presentación, Oct. 2006 41


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


POU´s. Funciones
• Una función se define como una unidad de organización del
programa que al ser ejecutada suministra exactamente un elemento
de datos y cuya invocación se puede utilizar en lenguajes literales
como operando en una expresión. Ejemplo:

X := SIN(Y)+ COS(Z)

• Las funciones no deben contener ninguna información de estado


interno, es decir, que la invocación de una función con los mismos
argumentos (parámetros de entrada) debe suministrar siempre el
mismo valor (salida).

IEC-61131 Presentación, Oct. 2006 42


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


POU´s. Funciones.

• Funciones estándar:

ADD, SQRT, SIN, COS, MIN, MAX, AND, OR, etc…

• Funciones definidas por el usuario (ejemplo):

FUNCTION Simple: REAL Nombre


VAR_INPUT
A, B : REAL;
Declaración de variables
C : REAL:= 1.0;
END_VAR
Simple := A*B/C; Cuerpo de la función
END_FUNCTION

IEC-61131 Presentación, Oct. 2006 43


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


POU´s. Bloques funcionales, FB´s
• Un bloque funcional es una unidad de organización del programa que al ser
ejecutada suministra uno o más valores. Existe la posibilidad de crear múltiplos
(copias) de un bloque funcional, denominadas instancias.

• Cada instancia llevará asociado un identificador (el nombre de la instancia)


y una estructura de datos que contenga sus variables de salida e internas.

• Todos los valores de las variables de salida e internas deberán persistir de


una ejecución del bloque funcional al siguiente, por lo que la llamada de un
mismo bloque funcional con los mismos argumentos (parámetros de entrada)
no tiene por qué dar siempre los mismos valores de salida.

IEC-61131 Presentación, Oct. 2006 44


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


POU´s. Bloques funcionales. Ejemplo.
Histeresis FUNCTION_BLOCK Histeresis
VAR_INPUT
REAL XIN1 XIN1, XIN2: REAL;
Q BOOL EPS: REAL; (* Banda de histéresis *)
REAL XIN2
END_VAR
REAL EPS VAR_OUTPUT
Q: BOOL := 0
END_VAR
IF Q THEN
Q IF XIN1<(XIN2-EPS) THEN
1 Q:=0 (* XIN decreciendo *)
END_IF;
ELSEIF XIN1>(XIN2+EPS) THEN
0 Q:=1; (* XIN creciendo *)
END_IF
EPS EPS END_FUNCTION_BLOCK
XIN2

IEC-61131 Presentación, Oct. 2006 45


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Unidades de organización del programa (POU´s).

• Las funciones
• Los bloques funcionales
• Los programas

Los programas son “un conjunto lógico de todos los elementos y construcciones
del lenguaje de programación que son necesarios para el tratamiento de señal
previsto que se requiere para el control de una máquina o proceso mediante
el sistema de autómata programable”.

IEC-61131 Presentación, Oct. 2006 46


Parte 3: Lenguajes de programación
Entornos Integrados
de Automatización
POU´s. Programas Ingeniería de Sistemas y Automática

Configuración

Recurso
Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vías de acceso

Función
2006 de comunicación (IEC 61131-5)
IEC-61131
PLC .
Presentación, Oct.
convencional 47
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


POU´s. Programas.

• Flujo de datos dentro de un programa


Programa A
FB1 FB2

• Comunicación entre programas:


* en la misma configuración (variables globales), o
* en configuraciones distintas (vías de acceso, comunicaciones)

Programa A Programa B

IEC-61131 Presentación, Oct. 2006 48


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación

Elementos comunes
• Tipos de datos y variables
• Modelo de software
• Modelo de comunicación de datos
• Modelo de programación
• Unidades de organización del programa
• Gráfico Funcional Secuencial (SFC)
• Elementos de configuración

Lenguajes de programación
• Lista de instrucciones (IL)
• Texto estructurado (ST)
• Diagrama de bloques funcionales (FBD)
• Diagrama de contactos (LD)

IEC-61131 Presentación, Oct. 2006 49


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Sequential Function Chart, SFC

• SFC describe el comportamiento secuencial del programa de


control. Deriva de las Redes de Petri y Grafcet (CEI 848).

IEC-61131 SFC
SFC
Grafcet
Grafcet Conjuntode
Conjunto deelementos
elementos
Documentación
Documentación decontrol
de controlde
deejecución
ejecución
deuna
de unaPOU
POU

• Permite dividir el problema en partes


• Facilita el rápido diagnóstico de problemas y las tareas
de mantenimiento

IEC-61131 Presentación, Oct. 2006 50


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Sequential Function Chart, SFC
• SFC consiste en un conjunto de etapas (STEP´s) en los cuales se realizan una
serie de acciones (ACTION BLOCK´s) y unas transiciones (TRANSITION´s) que
permite la evolución de una etapa(s) a la(s) siguiente(s).

“a” “b” “c”


Paso 1 N Llena
“d”
Transition 1

Bloque de acción
Etapa 2 S Vacia
“a” Cualificador
Transition 2 “b” Nombre de la acción
“c” Indicador booleano
Step 3 “d” Acción en LD, FBD, ST ó IL

IEC-61131 Presentación, Oct. 2006 51


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Sequential Function Chart, SFC
Permite secuencias alternativas y simultáneas

Etapa 1 N Llenar

Transición 1a Transición 1b

Etapa2a S Mezcla Etapa2b S Vaciar

Transición 2a Transición 2b

Ejemplo de Etapa3
secuencias alternativas

IEC-61131 Presentación, Oct. 2006 52


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación

Elementos comunes
• Tipos de datos y variables
• Modelo de software
• Modelo de comunicación de datos
• Modelo de programación
• Unidades de organización del programa
• Gráfico Funcional Secuencial (SFC)
• Elementos de configuración

Lenguajes de programación
• Lista de instrucciones (IL)
• Texto estructurado (ST)
• Diagrama de bloques funcionales (FBD)
• Diagrama de contactos (LD)

IEC-61131 Presentación, Oct. 2006 53


Parte 3: Lenguajes de programación
Entornos Integrados
de Automatización
Elementos comunes. Modelo de software Ingeniería de Sistemas y Automática

Configuración

Recurso Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vías de acceso

Función
IEC-61131 Presentación, Oct. 2006 de comunicación (IEC 61131-5) 54
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Elementos de configuración.

Una configuración se compone de:


RECURSOS
TAREAS
VARIABLES GLOBALES
VIAS DE ACCESO

Veamos esto con un ejemplo ....

IEC-61131 Presentación, Oct. 2006 55


Entornos Integrados
de Automatización CONFIGURATION CELL_1 Ingeniería de Sistemas y Automática

RESOURCE STATION_1 RESOURCE STATION_2

TASK TASK TASK TASK


SLOW_1 FAST_1 PER_2 INT_2

P1 P2 P1 P4
PROGRAM F PROGRAM G PROGRAM F PROGRAM H
out1 FB1 FB2
y1 FB1 FB2 y1 C D
x1 x1
x2 A B x2 c1 d1
y1 b1 y2
y2 b2 PER_2
SLOW_1 FAST_1 HOUT1
SLOW_1 PER_2 INT_2

%IX1.1 z1 w z2 %QW5

VARIABLES GLOBALES Y REPRESENTADAS DIRECTAMENTE

BAKER ABLE CHARLIE DOG GAMMA ALPHA BETA


VIAS DE ACCESO

Ejemplo Configuración
IEC-61131 Presentación, Oct. 2006
Comunicación
56
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Ejemplo de configuración...
Declaraciones de bloques funcionales y parámetros
FUNCTION_BLOCK A FUNCTION_BLOCK B FUNCTION_BLOCK C FUNCTION_BLOCK D
VAR_OUTPUT y1:UINT; VAR_INPUT b1:UINT; VAR_OUTPUT c1:BOOL; VAR_INPUT d1:BOOL; END_VAR
y2:BYTE; b2:BYTE; END_VAR VAR_OUTPUT y2:INT; END_VAR
END_VAR END_VAR
END_FUNCTION_BLOCK END_FUNCTION_BLOCK END_FUNCTION_BLOCK END_FUNCTION_BLOCK
PROGRAM F
VAR_INPUT x1: BOOL; x2: UINT; END_VAR
VAR_OUTPUT y1: BYTE; END_VAR
END_PROGRAM
PROGRAM G
VAR_OUTPUT out1: UINT; END_VAR
VAR_EXTERNAL z1: BYTE; END_VAR
VAR FB1: A; FB2: B; END_VAR
FB1(...); out1 := FB1.y1; z1 := FB1.y2;
FB2(b1 := FB1.y1) ; b2 := FB1.y2);
END_PROGRAM
PROGRAM H
VAR_OUTPUT HOUT1: INT; END_VAR
VAR FB1: C; FB2: D; END_VAR
FB1(...);
FB2(d1 := FB1.c1) ; HOUT1 := FB2.y2;
END_PROGRAM

IEC-61131 Presentación, Oct. 2006 57


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática
CONFIGURATION CELL_1
CONFIGURATION CELL_1
VAR_GLOBAL w : UINT; END_VAR
VAR_GLOBAL w : UINT; END_VAR
RESOURCE STATION_1 ON PROCESSOR TYPE_1
RESOURCE STATION_1 ON PROCESSOR TYPE_1
VAR_GLOBAL z1 : BYTE ; END_VAR
VAR_GLOBAL z1 : BYTE ; END_VAR
TASK SLOW_1(INTEGRAL := t#20ms, PRIORYTY := 2) ;
TASK SLOW_1(INTEGRAL := t#20ms, PRIORYTY := 2) ;
TASK FAST_1(INTERVAL := t#10ms, PRIORYTY := 1) ;
TASK FAST_1(INTERVAL := t#10ms, PRIORYTY := 1) ;
PROGRAM P1 WITH SLOW_1 ;
PROGRAM P1 WITH SLOW_1 ;
F(x1 := %IX1.1) ;
F(x1 := %IX1.1) ;
Parte 3: PROGRAM P2 : G(out1 => w,
PROGRAM P2 : G(out1 => w,
FB1 WITH SLOW_1,
Lenguajes de FB1 WITH SLOW_1,
FB2 WITH FAST_1) ;
FB2 WITH FAST_1) ;
END_RESOURCE
programación END_RESOURCE
RESOURCE STATION_2 ON PROCESSOR TYPE_2
RESOURCE STATION_2 ON PROCESSOR TYPE_2
Ejemplo de VAR_GLOBAL z2 : BOOL ;
VAR_GLOBAL z2 : BOOL ;
AT %QW5 : INT ;
configuración... END_VAR
AT %QW5 : INT ;
END_VAR
Configuraciones, TASK PER_2(INTERVAL := t#50ms, PRIORITY := 2) ;
TASK PER_2(INTERVAL := t#50ms, PRIORITY := 2) ;
TASK INT_2(SINGLE := z2, PRIORITY := 1) ;
recursos, variables TASK INT_2(SINGLE := z2, PRIORITY := 1) ;
PROGRAM P1 WITH PER2 :
PROGRAM P1 WITH PER2 :
F(x1 := z2, x2 := w) ;
F(x1 := z2, x2 := w) ;
PROGRAM P4 WITH INT 2 :
PROGRAM P4 WITH INT 2 :
H(HOUT1 => %QW5,
H(HOUT1 => %QW5,
FB1 WITH PER_2) ;
FB1 WITH PER_2) ;
END_RESOURCE
END_RESOURCE
VAR_ACCESS
VAR_ACCESS
ABLE : STATION_1.%IX1.1 : BOO READ_ONLY ;
ABLE : STATION_1.%IX1.1 : BOO READ_ONLY ;
BAKER : STATION_1.P1.X2 : BOO READ_ONLY ;
BAKER : STATION_1.P1.X2 : BOO READ_ONLY ;
CHARLIE : STATION_1.z1 : BOO READ_ONLY ;
CHARLIE : STATION_1.z1 : BOO READ_ONLY ;
DOG :w : BOO READ_ONLY ;
DOG :w : BOO READ_ONLY ;
ALPHA : STATION_2.P1.y1 : BOO READ_ONLY ;
ALPHA : STATION_2.P1.y1 : BOO READ_ONLY ;
BETA : STATION_2.P4.HOUT1 : BOO READ_ONLY ;
BETA : STATION_2.P4.HOUT1 : BOO READ_ONLY ;
GAMMA : STATION_2.z2 : BOO READ_ONLY ;
GAMMA : STATION_2.z2 : BOO READ_ONLY ;
END_VAR
END_VAR
END_CONFIGURATION
END_CONFIGURATION

IEC-61131 Presentación, Oct. 2006 58


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Elementos de configuración. Tareas.
Tarea es un elemento de control de ejecución que es capaz de iniciar
la ejecución de un conjunto de POU´s: programas y bloques funcionales,
cuyas instancias están en la declaración de los programas.

RESOURCE STATION_1

TASK TASK
SLOW_1 FAST_1
Las tareas son habilitadas
P1 P2 implícitamente cuando
PROGRAM F PROGRAM G
está habilitado el recurso al
FB1 FB2
que están asociadas.

SLOW_1 FAST_1

SLOW_1

IEC-61131 Presentación, Oct. 2006 59


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Elementos de configuración. Tareas.

Existen dos modos de control de la ejecución de tareas:


• Por evento: Ejecución por flanco ascendente de la entrada SINGLE
• Por tiempo: Ejecución periódica según la entrada INTERVAL..

PRIORITY establece la Nom_task


prioridad de las tareas ( 0 - máxima)
TASK
Varios POU´s pueden estar asociados
a la misma tarea. BOOL SINGLE
TIME INTERVAL
No pueden existir tareas UINT PRIORITY
a la vez por evento y temporizadas..

IEC-61131 Presentación, Oct. 2006 60


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


El estándar IEC-61131

Elementos comunes

Lenguajes de programación

IEC-61131 Presentación, Oct. 2006 61


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


4 Lenguajes de programación

• Lenguajes gráficos
Diagrama de escalera (“Ladder Diagram”, LD)
Diagrama de Bloques Funcionales (”Function Block Diagram, FBD)

• Lenguajes literales
Lista de instrucciones (“Instruction List”, IL)
Texto estructurado (“Structured Text”, ST)

La selección del lenguaje de programación depende de la experiencia


del programador, de la aplicación concreta, del nivel de definición de la
aplicación, de la estructura del sistema de control y del grado de
comunicación con otros departamentos de la empresa...

IEC-61131 Presentación, Oct. 2006 62


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

S_01 S_02 Manual


( )
S_01 S_03 LD
Start
S_01
SFC
Paso_1
Programación con lenguajes IL
LD Entrada_Manual
Transición_02 conocidos de PLC OR Entrada_Automática
AND Desbloqueo
Paso_2 ... y lenguaje de alto nivel ST Funcionamiento
LD Entrada_01
Transición_Fin

XOR
S_01
IF Data = "EOF" THEN
FOR Index:=1 TO 128 DO S_02 Tiempo_01
X:=Read_Data(Datenfeld[index]); TON
IF X > 2500 THEN Alarma:=TRUE; S_03 Lámpara
END_IF;

ST
END_FOR;
END_IF; T#12s400ms

FBD
Tiempo actual

IEC-61131 Presentación, Oct. 2006 63


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Lenguaje Gráficos (LD y FBD)
Características comunes:
• Los elementos del lenguaje gráfico se representan mediante caracteres
ISO/CEI 646 o elementos gráficos o semigráficos.
• Una red es un conjunto de elementos gráficos interconectados, que debe
ser identificada (un número, p.e.).
• Reglas de evaluación de redes. Vías de realimentación.
• Posibilidad de saltos y retornos (condicionales e incondicionales).
XOR
S_01 S_02 Manual S_01

( ) Tiempo_01

LD
S_02
TON
S_01 S_03 S_03 Lámpara

T#12s400ms
Tiempo actual

FBD
IEC-61131 Presentación, Oct. 2006 64
Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Diagrama de escalera (“Ladder Diagram”, LD)
Características:
• Barras de alimentación.
• Elementos de enlace y estados: flujo de energía.
• Contactos, bobinas y bloques funcionales
• Orden de evaluación de las redes.

Ejemplo:
MAN S_0 Lma KMB

FCS EM

IEC-61131 Presentación, Oct. 2006 65


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Diagrama de Bloques funcionales (FBD)
Características:
• La representación es coherente con la Norma CEI 617-12.
• Las salidas de los bloques funcionales no se conectarán entre
sí (se precisa bloque “OR”).
• La evaluación de una red estará terminada antes de la siguiente.

Ejemplo:
Start AND
TON
EMER IN Q KM
T#4s400ms PT ET V_temp

IEC-61131 Presentación, Oct. 2006 66


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Lenguaje Literales (IL y ST)
Características comunes:
• La representación de literales.
• Los siguientes elementos de
estructuración de las POU´s: LD Entrada_Manual
IL
OR Entrada_Automática
AND Desbloqueo
ST Funcionamiento
TYPE ... END_TYPE LD Entrada_01
VAR ... END_VAR
VAR_INPUT ... END_VAR
VAR_OUTPUT ... END_VAR
VAR_IN_OUT... END_VAR IF Data = "EOF" THEN
VAR_EXTERNAL .. END_VAR FOR Index:=1 TO 128 DO
X:=Read_Data(Datenfeld[index]);
FUNCTION ... END_FUNCTION IF X > 2500 THEN Alarma:=TRUE;
END_IF;
FUNCTION_BLOCK ... END_FUNCTION_BLOCK
ST
END_FOR;
PROGRAM .. END_PROGRAM END_IF;

STEP ... END_STEP


TRANSIION ... END_TRANSITION
ACTION ... END_ACTION

IEC-61131 Presentación, Oct. 2006 67


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Lista de Instrucciones (“Instruction List”, IL)
Características:
• Instrucciones:
Etiqueta Operador Operando Comentario
START: LD Arranque (*Pulsar botón *)
ANDN %MX5 (* No inhibidor *)
ST SALIDA (* Conecta calefactor *)

• Operadores:
LD, ST, S, R, AND, OR, XOR, ADD, SUB, MUL, DIV, GT, GE, EQ,
NE, LE, LT, JMP, CAL, RET, )

• Funciones y bloques funcionales. Se coloca el nombre


en el campo del operando y los parámetros, si los lleva, en
entre paréntesis. Se emplea la operación CAL.

IEC-61131 Presentación, Oct. 2006 68


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Texto estructurado (“Structured Text”, ST)
Características:
• Similar al Pascal. Alto nivel, estructurado en bloques.
• Expresiones:Es una construcción sintáctica que al se evaluada
proporciona un valor. Está compuesta por operadores y operandos.
La evaluación se efectúa según una tabla de prioridades.

• Sentencias:
De asignación (:=),
De control del flujo del programa:
llamada a bloque funcional, RETURN
De selección: IF, CASE
De iteración: FOR, WHILE, REPEAT, EXIT

IEC-61131 Presentación, Oct. 2006 69


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Texto estructurado (“Structured Text”, ST)

Ejemplo:

IF Dato = “EOF” THEN


FOR indice:=1 TO 128 DO
x:= Read_dato(Canal[indice);
IF x>2500 THEN Alarma:=TRUE;
END_IF;
END_FOR;
END_IF

IEC-61131 Presentación, Oct. 2006 70


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Entornos de programación

Muchos de ellos ofrecen:

g Pantallas de programación gráfica


g Soporte para múltiples ventanas
g Operaciones con el ratón
g Menús desplegables
g Ayuda en línea
g Verificación del software
durante el diseño

IEC-61131 Presentación, Oct. 2006 71


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Características claves de la calidad IEC 61131-3

Software Estructurado - a través de configuraciones,


Recursos y Unidades de Organización de Programa
(POUs).
Tipeado de Datos - a través de lenguajes que restringen
las operaciones a los tipos de datos adecuados.
Control de la Ejecución - a través del uso de Tareas.
Comportamiento Secuencial Complejo - a través de
los Esquemas Funcional Secuencial.
Encapsulación del Software - a través del uso de
POUs, estructuras y tipos de datos complejos.

IEC-61131 Presentación, Oct. 2006 72


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Beneficios del estándar para los usuarios

Discrete Mnf
Control de
procesos Integrador de
sistemas
¿Usted ?
Instalación
Educación
Programación
Mantenimiento

IEC-61131 Presentación, Oct. 2006 73


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programación


Beneficios del estándar para los usuarios

g Reduce el gasto en recursos humanos:


formación, depuración, mantenimiento, ...
g Evita fuentes habituales de problemas IEC-61131
por su flexibilidad y reusabilidad.
g Técnicas de programación adecuadas a
todos los sectores.
g Combinación de elementos y modos de
representación. Software
Library

g Incrementa la conectividad y
comunicacón entre departamentos y
compañias. FunctionBlock
"Heating"
Function
"LIMIT"
FunctionBlock
"Feeding"
Function Function Block
"TEST" "Turning"

IEC-61131 Presentación, Oct. 2006 74


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

El estándar es una realidad


en papel, y ahora ...

IEC-61131 Presentación, Oct. 2006 75


Entornos Integrados
de Automatización
Ingeniería de Sistemas y Automática

Han creado el problema de


la gallina y el huevo:

USUARIOS VS. PROVEEDORES

n Ven los beneficios del estándar, n La demanda debe ser capaz


pero necesitan productos de cubrir los gastos en
adecuados que cubran sus investigación y desarrollode
necesidades los productos

IEC-61131 Presentación, Oct. 2006 76

También podría gustarte