You are on page 1of 76

Entornos Integrados

de Automatizacin
Ingeniera de Sistemas y Automtica

Autmatas Programables:
Introduccin al Estndar IEC-61131

IEC-61131
Felipe Mateos Martn

IEC-61131 Presentacin, Oct. 2006 1


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

La Norma IEC-61131 se refiere a:

Los autmatas programables (AP PLCs) y a sus perifricos


correspondientes, tales como:

- Los equipos de programacin y depuracin (PADTs)


- Los equipos de ensayo (TEs)
- Los interfaces hombre-mquina (MMIs)

Esta norma no trata del sistema automatizado, del cual el autmata


programable es un componente bsico.

PADT: Programming And Debugging Tool


TE: Test Equipment
MMI: Man-Machine Interface

IEC-61131 Presentacin, Oct. 2006 2


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

La finalidad de esta Norma IEC-61131 es:


Definir e identificar las caractersticas principales que se refieren a la
seleccin y aplicacin de los PLCs y sus perifricos.

Especificar los requisitos mnimos para las caractersticas funcionales, las


condiciones de servicio, los aspectos constructivos, la seguridad general
y los ensayos aplicables a los PLCs y sus perifricos.

Definir los lenguajes de programacin de uso ms corriente, las reglas


sintcticas y semnticas, el juego de instrucciones fundamental, los
ensayos y los medios de ampliacin y adaptacin de los equipos.

Dar a los usuarios una informacin de carcter general y unas directrices


de aplicacin.

Definir las comunicaciones entre los PLCs y otros sistemas.

IEC-61131 Presentacin, Oct. 2006 3


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Partes de la Norma IEC 61131:

Parte 1: Informacin general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programacin
Parte 4: Guas de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guas de programacin (TR)

IEC-61131 Presentacin, Oct. 2006 4


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Partes de la Norma IEC 61131:

Parte 1: Informacin general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programacin
Parte 4: Guas de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guas de programacin (TR)

IEC-61131 Presentacin, Oct. 2006 5


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin General


Objetivos

Se dan las definiciones y un glosario de los


trminos utilizados en esta norma.

Se identifican las principales caractersticas de los


sistemas de autmatas programables.

IEC-61131 Presentacin, Oct. 2006 6


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin General


Definiciones

Programacin de aplicacin, lista de asignaciones, sistema automatizado,


disponibilidad, BCD, datos booleanos, bus, componente, conexin/desconexin, lista
de referencia cruzada, equipo de comunicacin de datos (DCE), equipo terminal de
datos (DTE), ejecucin, parada de seguridad, imagen de entrada/salida, entrada,
instruccin, fallo interno, diagrama de escalera , lenguaje (FBD, IL, LD, ST, SFC),
sistema de control lgico, procesador principal (MPU), interface hombre-mquina
(MMI), tiempo medio entre fallos (MTBF), red, en lnea, salida, programa, perifrico,
barras de corriente, autmata programable (AP PLC), equipo de programacin y
puesta a punto (PADT), estacin de entrada/salida remota (RIOS), reinicio, sistema de
control secuencial, transmisin de datos en serie, soporte lgico (software), salida en
modo fuente/sumidero, equipo de ensayo (TE), tiempo (retardo, ejecucin, respuesta,
exploracin, transferencia), temporizador (de retardo de conexin/desconexin),
programa de usuario, perro guardin, bit, byte, palabra GLOSARIO

IEC-61131 Presentacin, Oct. 2006 7


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin general


Estructura funcional de un sistema de autmata programable

Funcin de tratamiento de la seal.


Funcin de interfaz con los sensores y actuadores.
Funcin de comunicacin.
Funcin de interfaz hombre-mquina.
Funciones de programacin, puesta a punto, ensayo y
documentacin.
Funciones de alimentacin de corriente

IEC-61131 Presentacin, Oct. 2006 8


Entornos Integrados
de Automatizacin
Funciones de interfaz Ingeniera de Sistemas y Automtica
Funciones de Operador
comunicacin hombre-mquina

Funciones de program.,
puesta a punto y ensayo Programador

Funciones de
tratamiento
Sistema
Sistema
operativo
operativo
Funciones
de Ejecucindel
Ejecucin del Memoriade
de
alimentacin programa Memoria
programa programa
corriente programa
Acometida
de la red Conjuntode
Conjunto de Memoria de
Memoria de
instrucciones
instrucciones
datos
datos
Parte 1:
Informacin
general
Estructura funcional
de un sistema de
autmata programable

Funciones de interfaz con


sensores y actuadores

IEC-61131 Presentacin, Oct. 2006 Mquina/proceso 9


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin general


Estructura funcional de un sistema de autmata programable
Funcin de interfaz con los sensores y actuadores

Unidad de tratamiento

Tiposde
de Caractersticasdel
Caractersticas del
Tipos
sealesde
deE/S
E/S sistemasde
sistemas deE/S
E/S
Alimentacin seales
Binarias Tratamiento
Digitales Conversin
Analgicas Aislamiento
Etc.

Mquina/proceso

IEC-61131 Presentacin, Oct. 2006 10


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin general


Estructura funcional de un sistema de autmata programable
Funcin de interfaz hombre-mquina (MMI)

Informacinde
Informacin de
estado,valores
estado, valores

Operador
Consignas,
Consignas,
ajustes
ajustes

IEC-61131 Presentacin, Oct. 2006 11


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin general


Estructura funcional de un sistema de autmata programable
Funciones de programacin, puesta a punto, ensayo y documentacin

Programacin
Programacin

Arranquedel
Arranque del
sistema
sistema
automatizado Programador
automatizado

Documentacin
Documentacin
yyarchivado
archivado

IEC-61131 Presentacin, Oct. 2006 12


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin general


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

Arquitectura del sistema automatizado. Redundancias,


tolerancia a fallos, funciones de diagnstico.

Arquitectura del sistema del autmata programable, por


ejemplo, estructura modular con autodiagnstico

Diseo, ensayo y mantenimiento del programa de


aplicacin. Incluir funciones de diagnstico de la ejecucin, anlisis y
deteccin de averas.

Condiciones de instalacin y servicio. Mejorar las condiciones


de trabajo y del entorno.

IEC-61131 Presentacin, Oct. 2006 13


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin general


Caractersticas ergonmicas

Generales. Uso eficaz del sistema del AP y sus perifricos, reduccin de


errores, fatiga y riesgo para el operario.

Indicadores de estado, para CPUs, fuentes de alimentacin y el


sistema de E/S.

Pantallas y teclados. Visibilidad, disposicin, confirmaciones, ...

Otras recomendaciones. Ventiladores, acabado superficial, aristas


vivas, portabilidad.

IEC-61131 Presentacin, Oct. 2006 14


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 1: Informacin general


Definiciones de soporte Fsico (Hardware) de un sistema AP
Estaciones Perifricos Perifricos Perifricos
Procesador conectables
de E/S permanentes no-conectables
principal en lnea
remota en lnea

NO TRANSPORTABLE

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

. . . . . PORTTIL . . . . . . . .

Autmata programable Parifricos

Instalacin permanente Instalacin NO-permanente

Sistema del autmata programable (Sistema AP)

IEC-61131 Presentacin, Oct. 2006 15


Procesador principal
Entornos Integrados
de Automatizacin
Estacin de E/S Ingeniera de Sistemas y Automtica
Sistema del autmata
remota programable (AP)
Perifricos
(permanentes/ NO- Parte 1:
permanentes)
Informacin general
Esquema de interfaz

Entradas digitales
y analgicas

Mdulos
Mdulos
desalidas
salidas
de Salidas digitales
y analgicas
Memoria(s)
Memoria(s)
yyunidad(es)
unidad(es) Mdulos
Mdulos
detratamiento
tratamiento de entradas
de de entradas Transmisin serie,
etc.: ordenadores,
impresoras

Mdulos
Mdulos
decomunica-
comunica-
de Acometida
cin
cin de la red

Fuente de alimentacin Lmite de la norma


IEC-61131 Presentacin, Oct. 2006 16
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Partes de la Norma IEC 61131:

Parte 1: Informacin general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programacin
Parte 4: Guas de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guas de programacin (TR)

IEC-61131 Presentacin, Oct. 2006 17


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


Objetivos

En esta parte se especifican:

Los requisitos elctricos, mecnicos y funcionales para los


autmatas programables y los perifricos correspondientes, as
como las condiciones de servicio, almacenamiento y transporte
aplicables.
La informacin que ha de suministrar el fabricante.
Los mtodos y procedimientos de ensayo que han de utilizarse
para la comprobacin del cumplimiento de los requisitos por parte
de los autmatas programables y sus perifricos.

IEC-61131 Presentacin, Oct. 2006 18


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


Definiciones

Parte accesible, batera, circuito o equipo (clase I, II, III), factor de cobertura,
lnea de fuga, tierra, inmunidad, entrada/salida digital, aislamiento,
alimentacin de red, procesador principal (MPU), microentorno, salida a
prueba de cortocircuitos, categora de sobretensin, grado de contaminacin,
conector desmontable, temperatura (aire ambiente), ensayo, cableado
(interno, externo), ...

IEC-61131 Presentacin, Oct. 2006 19


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


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

Condiciones de servicio normales.


O Condiciones del entorno fsico: temperatura, humedad, contaminacin,
inmunidad a la corrosin, altitud.
O Condiciones de servicio y requisitos elctricos: alimentaciones, ruido
elctrico, sobretensiones, etc.
O Condiciones de servicio y requisitos mecnicos: Vibraciones, choque,
cada libre.
Condiciones de servicio especiales. Polvo, humo, partculas
radiactivas, vapores, sales, insectos, pequeos animales, etc.
Requisitos para el transporte y almacenaje: temperatura, presin
atmosfrica, humedad relativa.

IEC-61131 Presentacin, Oct. 2006 20


Procesador principal
Entornos Integrados
de Automatizacin
Estacin de E/S Ingeniera de Sistemas y Automtica
Sistema del autmata
remota programable (AP)
Perifricos
(permanentes/ NO-
permanentes) Parte 2: Especificaciones y
ensayos de los equipos
Requisitos elctricos
Esquema tpico de un sistema AP

Entradas digitales
y analgicas

Mdulos
Mdulos
desalidas
salidas
de Salidas digitales
y analgicas
Memoria(s)
Memoria(s)
yyunidad(es)
unidad(es) Mdulos
Mdulos
detratamiento
tratamiento de entradas
de de entradas Transmisin serie,
etc.: ordenadores,
impresoras
Mdulos
Mdulos
decomunica-
comunica-
de Acometida
cin
cin de la red

Fuente de alimentacin Lmite de la norma


IEC-61131 Presentacin, Oct. 2006 21
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


Requisitos elctricos

Alimentacin de corriente alterna (c.a.) y continua (c.c.).


E/S digitales.
E/S analgicas.
Interfaces de comunicacin.
Procesador(es) principal(es) y memoria(s) del sistema AP.
Estaciones de entrada/salida remota (RIOS).
Perifricos: PADT, TE, MMI.
Inmunidad al ruido y ruido emitido.
Propiedades dielctricas.
Autodiagnsticos y diagnsticos.

IEC-61131 Presentacin, Oct. 2006 22


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


Requisitos mecnicos

Protecciones contra el riesgo de choque elctricos.


Requisitos de distancias en el aire y lneas de fuga.
Requisitos de inflamabilidad para materiales aislantes.
Envolvente.
Requisitos mecnicos de los materiales de conexin..
Disposiciones para la tierra de proteccin.
Tierra funcional.
Cables y conectores de interconexin.
Conexin/desconexin de unidades desmontables.
Requisitos de la batera.
Marcado e identificacin.

IEC-61131 Presentacin, Oct. 2006 23


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


Informacin que debe facilitar el fabricante

El fabricante deber facilitar a los usuarios la informacin necesaria para la


aplicacin, proyecto, instalacin, puesta en marcha, funcionamiento y
mantenimiento del sistema de autmata programable. Adicionalmente el
fabricante puede ocuparse de la formacin del usuario.

Tabla resumen con la informacin que se debe facilitar.


Tipo y contenido de la informacin escrita: Catlogos y hojas de
caractersticas, manuales de usuario, documentacin tcnica.
Informacin relativa al cumplimiento de esta norma.
Informacin relativa a la fiabilidad.
Informacin relativa a la seguridad.

IEC-61131 Presentacin, Oct. 2006 24


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


Ensayos y verificaciones

Se define como ha de verificarse la conformidad del autmata


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

Estos ensayos NO se refieren a los mtodos de aplicacin de los


AP para cumplir con los requisitos del sistema automatizado.

Se dividen en ensayos de tipo y ensayos de rutina.

IEC-61131 Presentacin, Oct. 2006 25


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 2: Especificaciones y ensayos de los equipos


Ensayos y verificaciones
Ensayos de tipo
Equipos a ensayar.
Procedimientos de verificacin.
Condiciones generales para los ensayos.
Ensayos climticos, mecnicos y elctricos.
Verificacin de las caractersticas de la alimentacin de c.a. y c.c.
Verificacin de las caractersticas de entrada/salida.
Verificacin de las caractersticas del procesador principal.
Verificacin de las estaciones de E/S remotas.
Verificacin de las caractersticas de los perifricos.
Verificacin del autodiagnstico y diagnstico.
Ensayos de rutina
Ensayo estndar de rigidez dielctrica
Ensayo de continuidad de la tierra de proteccin.

IEC-61131 Presentacin, Oct. 2006 26


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Partes de la Norma IEC 61131:

Parte 1: Informacin general


Parte 2: Especificaciones y ensayos de los equipos
Parte 3: Lenguajes de programacin
Parte 4: Guas de usuario (TR)
Parte 5: Comunicaciones
Parte 7: Fuzzy Control
Parte 8: Guas de programacin (TR)

IEC-61131 Presentacin, Oct. 2006 27


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Objeto y campo de aplicacin

Definir los lenguajes de programacin de uso ms


corriente, las reglas sintcticas y semnticas, el juego de
instrucciones fundamental, los ensayos y los medios de
ampliacin y adaptacin de los equipos.

Es el interface entre el programador y


el sistema de control

IEC-61131 Presentacin, Oct. 2006 28


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Definiciones

Tiempo absoluto, va de acceso, accin, argumento, matriz, asignacin,


bloque funcional biestable, cadena de bits, cuerpo, llamada, cadena de
caracteres, comentario, compilar, tipo de datos, declaracin, delimitador,
doble palabra, flanco ascendente/descendente, funcin, diagrama de bloques
funcionales, direccionamiento, valor, parmetro de entrada, instancia, literal
entero, palabra clave, etiqueta, real largo, temporizador con retardo de
conexin/desconexin, parmetro de salida, sentido de corriente, unidad de
organizacin de programa, recurso, tarea, retorno, etapa, secuencia,
transicin, representacin simblica, etc...

IEC-61131 Presentacin, Oct. 2006 29


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


El estndar IEC-61131

Elementos comunes

Lenguajes de programacin

IEC-61131 Presentacin, Oct. 2006 30


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin

Elementos comunes
Tipos de datos y variables
Modelo de software
Modelo de comunicacin de datos
Modelo de programacin
Unidades de organizacin del programa
Grfico Funcional Secuencial (SFC)
Elementos de configuracin

Lenguajes de programacin
Lista de instrucciones (IL)
Texto estructurado (ST)
Diagrama de bloques funcionales (FBD)
Diagrama de contactos (LD)

IEC-61131 Presentacin, Oct. 2006 31


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Elementos comunes. Tipos de datos y variables

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


de caracteres, fecha, hora_del_da, canal analgico 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 programacin independiente del hardware.

IEC-61131 Presentacin, Oct. 2006 32


Parte 3: Lenguajes de programacin
Entornos Integrados
de Automatizacin
Elementos comunes. Modelo de software Ingeniera de Sistemas y Automtica

Configuracin

Recurso Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vas de acceso

Funcin
IEC-61131 Presentacin, Oct. 2006 de comunicacin (IEC 61131-5) 33
Parte 3: Lenguajes de programacin
Entornos Integrados
de Automatizacin
Modelo de software. PLC convencional. Ingeniera de Sistemas y Automtica

Configuracin

Recurso
Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vas de acceso

Funcin
IEC-61131 Presentacin, Oct. 2006 de comunicacin (IEC 61131-5) 34
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Modelo de comunicacin de variables (I)

Flujo de datos dentro de un programa

Programa A
FB1 FB2
FB_X FB_Y

a b

IEC-61131 Presentacin, Oct. 2006 35


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Modelo de comunicacin de variables (II)
Comunicacin mediante variables globales

Configuracin 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 Presentacin, Oct. 2006 36


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Modelo de comunicacin de variables (III)
Bloques funcionales de comunicacin

Configuracin C Configuracin D

Programa A Programa B
send1 rcv1

FB1 RD1 FB2


SD1
FB_X FB_Y

b
a

IEC-61131 Presentacin, Oct. 2006 37


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Modelo de programacin
Elementos de los lenguajes de programacin de un AP

Tipos de datos derivados


Unidades de organizacin de programa, POUs
Funciones
Bloques funcionales
Programas
Elementos del diagrama secuencial (SFC)
Elementos de configuracin
Variables globales
Recursos
Tareas
Programa
Vias de acceso de aplicacin

Fig. 2c- Bloques funcionales de comunicacin


IEC-61131 Presentacin, Oct. 2006 38
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin

Elementos comunes
Tipos de datos y variables
Modelo de software
Modelo de comunicacin de datos
Modelo de programacin
Unidades de organizacin del programa
Grfico Funcional Secuencial (SFC)
Elementos de configuracin

Lenguajes de programacin
Lista de instrucciones (IL)
Texto estructurado (ST)
Diagrama de bloques funcionales (FBD)
Diagrama de contactos (LD)

IEC-61131 Presentacin, Oct. 2006 39


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Unidades de organizacin del programa (POUs)

Programas
Funciones

Bloques
funcionales

IEC-61131 Presentacin, Oct. 2006 40


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Unidades de organizacin de programas, POUs.
Programa de aplicacin

INPUT OUTPUT IN_OUT EXTERNAL

FUNCTION_BLOCK
PROGRAM
Type Local
Type Local
GLOBAL

INPUT

FUNCTION
Type Local

IEC-61131 Presentacin, Oct. 2006 41


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


POUs. Funciones
Una funcin se define como una unidad de organizacin del
programa que al ser ejecutada suministra exactamente un elemento
de datos y cuya invocacin se puede utilizar en lenguajes literales
como operando en una expresin. Ejemplo:

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

Las funciones no deben contener ninguna informacin de estado


interno, es decir, que la invocacin de una funcin con los mismos
argumentos (parmetros de entrada) debe suministrar siempre el
mismo valor (salida).

IEC-61131 Presentacin, Oct. 2006 42


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


POUs. Funciones.

Funciones estndar:

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

Funciones definidas por el usuario (ejemplo):

FUNCTION Simple: REAL Nombre


VAR_INPUT
A, B : REAL;
Declaracin de variables
C : REAL:= 1.0;
END_VAR
Simple := A*B/C; Cuerpo de la funcin
END_FUNCTION

IEC-61131 Presentacin, Oct. 2006 43


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


POUs. Bloques funcionales, FBs
Un bloque funcional es una unidad de organizacin del programa que al ser
ejecutada suministra uno o ms valores. Existe la posibilidad de crear mltiplos
(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 debern persistir de


una ejecucin del bloque funcional al siguiente, por lo que la llamada de un
mismo bloque funcional con los mismos argumentos (parmetros de entrada)
no tiene por qu dar siempre los mismos valores de salida.

IEC-61131 Presentacin, Oct. 2006 44


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


POUs. Bloques funcionales. Ejemplo.
Histeresis FUNCTION_BLOCK Histeresis
VAR_INPUT
REAL XIN1 XIN1, XIN2: REAL;
Q BOOL EPS: REAL; (* Banda de histresis *)
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 Presentacin, Oct. 2006 45


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Unidades de organizacin del programa (POUs).

Las funciones
Los bloques funcionales
Los programas

Los programas son un conjunto lgico de todos los elementos y construcciones


del lenguaje de programacin que son necesarios para el tratamiento de seal
previsto que se requiere para el control de una mquina o proceso mediante
el sistema de autmata programable.

IEC-61131 Presentacin, Oct. 2006 46


Parte 3: Lenguajes de programacin
Entornos Integrados
de Automatizacin
POUs. Programas Ingeniera de Sistemas y Automtica

Configuracin

Recurso
Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vas de acceso

Funcin
2006 de comunicacin (IEC 61131-5)
IEC-61131
PLC .
Presentacin, Oct.
convencional 47
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


POUs. Programas.

Flujo de datos dentro de un programa


Programa A
FB1 FB2

Comunicacin entre programas:


* en la misma configuracin (variables globales), o
* en configuraciones distintas (vas de acceso, comunicaciones)

Programa A Programa B

IEC-61131 Presentacin, Oct. 2006 48


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin

Elementos comunes
Tipos de datos y variables
Modelo de software
Modelo de comunicacin de datos
Modelo de programacin
Unidades de organizacin del programa
Grfico Funcional Secuencial (SFC)
Elementos de configuracin

Lenguajes de programacin
Lista de instrucciones (IL)
Texto estructurado (ST)
Diagrama de bloques funcionales (FBD)
Diagrama de contactos (LD)

IEC-61131 Presentacin, Oct. 2006 49


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


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
Documentacin
Documentacin decontrol
de controlde
deejecucin
ejecucin
deuna
de unaPOU
POU

Permite dividir el problema en partes


Facilita el rpido diagnstico de problemas y las tareas
de mantenimiento

IEC-61131 Presentacin, Oct. 2006 50


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Sequential Function Chart, SFC
SFC consiste en un conjunto de etapas (STEPs) en los cuales se realizan una
serie de acciones (ACTION BLOCKs) y unas transiciones (TRANSITIONs) que
permite la evolucin de una etapa(s) a la(s) siguiente(s).

a b c
Paso 1 N Llena
d
Transition 1

Bloque de accin
Etapa 2 S Vacia
a Cualificador
Transition 2 b Nombre de la accin
c Indicador booleano
Step 3 d Accin en LD, FBD, ST IL

IEC-61131 Presentacin, Oct. 2006 51


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Sequential Function Chart, SFC
Permite secuencias alternativas y simultneas

Etapa 1 N Llenar

Transicin 1a Transicin 1b

Etapa2a S Mezcla Etapa2b S Vaciar

Transicin 2a Transicin 2b

Ejemplo de Etapa3
secuencias alternativas

IEC-61131 Presentacin, Oct. 2006 52


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin

Elementos comunes
Tipos de datos y variables
Modelo de software
Modelo de comunicacin de datos
Modelo de programacin
Unidades de organizacin del programa
Grfico Funcional Secuencial (SFC)
Elementos de configuracin

Lenguajes de programacin
Lista de instrucciones (IL)
Texto estructurado (ST)
Diagrama de bloques funcionales (FBD)
Diagrama de contactos (LD)

IEC-61131 Presentacin, Oct. 2006 53


Parte 3: Lenguajes de programacin
Entornos Integrados
de Automatizacin
Elementos comunes. Modelo de software Ingeniera de Sistemas y Automtica

Configuracin

Recurso Recurso

Tarea Tarea Tarea Tarea

Programa Programa Programa Programa

F
FB FB FB FB

Variables globales y representadas directamente

Vas de acceso

Funcin
IEC-61131 Presentacin, Oct. 2006 de comunicacin (IEC 61131-5) 54
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Elementos de configuracin.

Una configuracin se compone de:


RECURSOS
TAREAS
VARIABLES GLOBALES
VIAS DE ACCESO

Veamos esto con un ejemplo ....

IEC-61131 Presentacin, Oct. 2006 55


Entornos Integrados
de Automatizacin CONFIGURATION CELL_1 Ingeniera de Sistemas y Automtica

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 Configuracin
IEC-61131 Presentacin, Oct. 2006
Comunicacin
56
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Ejemplo de configuracin...
Declaraciones de bloques funcionales y parmetros
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 Presentacin, Oct. 2006 57


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica
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
programacin 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 ;
configuracin... 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 Presentacin, Oct. 2006 58


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Elementos de configuracin. Tareas.
Tarea es un elemento de control de ejecucin que es capaz de iniciar
la ejecucin de un conjunto de POUs: programas y bloques funcionales,
cuyas instancias estn en la declaracin de los programas.

RESOURCE STATION_1

TASK TASK
SLOW_1 FAST_1
Las tareas son habilitadas
P1 P2 implcitamente cuando
PROGRAM F PROGRAM G
est habilitado el recurso al
FB1 FB2
que estn asociadas.

SLOW_1 FAST_1

SLOW_1

IEC-61131 Presentacin, Oct. 2006 59


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Elementos de configuracin. Tareas.

Existen dos modos de control de la ejecucin de tareas:


Por evento: Ejecucin por flanco ascendente de la entrada SINGLE
Por tiempo: Ejecucin peridica segn la entrada INTERVAL..

PRIORITY establece la Nom_task


prioridad de las tareas ( 0 - mxima)
TASK
Varios POUs 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 Presentacin, Oct. 2006 60


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


El estndar IEC-61131

Elementos comunes

Lenguajes de programacin

IEC-61131 Presentacin, Oct. 2006 61


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


4 Lenguajes de programacin

Lenguajes grficos
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 seleccin del lenguaje de programacin depende de la experiencia


del programador, de la aplicacin concreta, del nivel de definicin de la
aplicacin, de la estructura del sistema de control y del grado de
comunicacin con otros departamentos de la empresa...

IEC-61131 Presentacin, Oct. 2006 62


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

S_01 S_02 Manual


( )
S_01 S_03 LD
Start
S_01
SFC
Paso_1
Programacin con lenguajes IL
LD Entrada_Manual
Transicin_02 conocidos de PLC OR Entrada_Automtica
AND Desbloqueo
Paso_2 ... y lenguaje de alto nivel ST Funcionamiento
LD Entrada_01
Transicin_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 Lmpara
END_IF;

ST
END_FOR;
END_IF; T#12s400ms

FBD
Tiempo actual

IEC-61131 Presentacin, Oct. 2006 63


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Lenguaje Grficos (LD y FBD)
Caractersticas comunes:
Los elementos del lenguaje grfico se representan mediante caracteres
ISO/CEI 646 o elementos grficos o semigrficos.
Una red es un conjunto de elementos grficos interconectados, que debe
ser identificada (un nmero, p.e.).
Reglas de evaluacin de redes. Vas de realimentacin.
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 Lmpara

T#12s400ms
Tiempo actual

FBD
IEC-61131 Presentacin, Oct. 2006 64
Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Diagrama de escalera (Ladder Diagram, LD)
Caractersticas:
Barras de alimentacin.
Elementos de enlace y estados: flujo de energa.
Contactos, bobinas y bloques funcionales
Orden de evaluacin de las redes.

Ejemplo:
MAN S_0 Lma KMB

FCS EM

IEC-61131 Presentacin, Oct. 2006 65


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Diagrama de Bloques funcionales (FBD)
Caractersticas:
La representacin es coherente con la Norma CEI 617-12.
Las salidas de los bloques funcionales no se conectarn entre
s (se precisa bloque OR).
La evaluacin 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 Presentacin, Oct. 2006 66


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Lenguaje Literales (IL y ST)
Caractersticas comunes:
La representacin de literales.
Los siguientes elementos de
estructuracin de las POUs: LD Entrada_Manual
IL
OR Entrada_Automtica
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 Presentacin, Oct. 2006 67


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Lista de Instrucciones (Instruction List, IL)
Caractersticas:
Instrucciones:
Etiqueta Operador Operando Comentario
START: LD Arranque (*Pulsar botn *)
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 parmetros, si los lleva, en
entre parntesis. Se emplea la operacin CAL.

IEC-61131 Presentacin, Oct. 2006 68


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Texto estructurado (Structured Text, ST)
Caractersticas:
Similar al Pascal. Alto nivel, estructurado en bloques.
Expresiones:Es una construccin sintctica que al se evaluada
proporciona un valor. Est compuesta por operadores y operandos.
La evaluacin se efecta segn una tabla de prioridades.

Sentencias:
De asignacin (:=),
De control del flujo del programa:
llamada a bloque funcional, RETURN
De seleccin: IF, CASE
De iteracin: FOR, WHILE, REPEAT, EXIT

IEC-61131 Presentacin, Oct. 2006 69


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


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 Presentacin, Oct. 2006 70


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Entornos de programacin

Muchos de ellos ofrecen:

g Pantallas de programacin grfica


g Soporte para mltiples ventanas
g Operaciones con el ratn
g Mens desplegables
g Ayuda en lnea
g Verificacin del software
durante el diseo

IEC-61131 Presentacin, Oct. 2006 71


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Caractersticas claves de la calidad IEC 61131-3

Software Estructurado - a travs de configuraciones,


Recursos y Unidades de Organizacin de Programa
(POUs).
Tipeado de Datos - a travs de lenguajes que restringen
las operaciones a los tipos de datos adecuados.
Control de la Ejecucin - a travs del uso de Tareas.
Comportamiento Secuencial Complejo - a travs de
los Esquemas Funcional Secuencial.
Encapsulacin del Software - a travs del uso de
POUs, estructuras y tipos de datos complejos.

IEC-61131 Presentacin, Oct. 2006 72


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Beneficios del estndar para los usuarios

Discrete Mnf
Control de
procesos Integrador de
sistemas
Usted ?
Instalacin
Educacin
Programacin
Mantenimiento

IEC-61131 Presentacin, Oct. 2006 73


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Parte 3: Lenguajes de programacin


Beneficios del estndar para los usuarios

g Reduce el gasto en recursos humanos:


formacin, depuracin, mantenimiento, ...
g Evita fuentes habituales de problemas IEC-61131
por su flexibilidad y reusabilidad.
g Tcnicas de programacin adecuadas a
todos los sectores.
g Combinacin de elementos y modos de
representacin. Software
Library

g Incrementa la conectividad y
comunicacn entre departamentos y
compaias. FunctionBlock
"Heating"
Function
"LIMIT"
FunctionBlock
"Feeding"
Function Function Block
"TEST" "Turning"

IEC-61131 Presentacin, Oct. 2006 74


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

El estndar es una realidad


en papel, y ahora ...

IEC-61131 Presentacin, Oct. 2006 75


Entornos Integrados
de Automatizacin
Ingeniera de Sistemas y Automtica

Han creado el problema de


la gallina y el huevo:

USUARIOS VS. PROVEEDORES

n Ven los beneficios del estndar, n La demanda debe ser capaz


pero necesitan productos de cubrir los gastos en
adecuados que cubran sus investigacin y desarrollode
necesidades los productos

IEC-61131 Presentacin, Oct. 2006 76

You might also like