• No se han encontrado resultados

Pres IEC 61131

N/A
N/A
Alfredo Rafael Díaz Sánchez

Academic year: 2022

Share "Pres IEC 61131"

Copied!
76
0
0

Texto completo

(1)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Autómatas Programables:

Introducci

Introducci ó ó n al Est n al Est á á ndar IEC ndar IEC - - 61131 61131

Felipe Mateos Martín

IEC IEC - - 61131 61131

(2)

La Norma IEC

La Norma IEC- -61131 se refiere a: 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

(3)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

La La

finalidad de esta Norma IEC-finalidad de esta Norma IEC-61131 es: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.

(4)

Partes de la Norma IEC 61131:

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)

(5)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Partes de la Norma IEC 61131:

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)

(6)

Parte 1: Informaci

Parte 1: Informaci ó ó n General 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.

(7)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 1: Informaci

Parte 1: Informaci ó ó n General 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…

(8)

Parte 1: Informaci

Parte 1: Informaci ó ó n general 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

(9)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Conjunto de instrucciones Conjunto de instrucciones

Sistema operativo Sistema operativo Ejecución del

programa Ejecución del programa

Memoria de programa Memoria de programa

Memoria de datos

Memoria de datos

Acometida de la red

Funciones de tratamiento

Funciones de interfaz con sensores y actuadores

Funciones de interfaz hombre-máquina

Funciones de program., puesta a punto y ensayo

Funciones de comunicación

Máquina/proceso

Operador

Programador

Funciones de

alimentación corriente

Parte 1:

Parte 1:

Informaci Informacióónn general

general

Estructura funcional de un sistema de

autómata programable

(10)

Parte 1: Informaci

Parte 1: Informaci ó ó n general n general

Estructura funcional de un sistema de autómata programable

Función de interfaz con los sensores y actuadores

Tipos de

señales de E/S Tipos de

señales de E/S

Binarias

• Digitales

• Analógicas

• Etc.

Características del sistemas de E/S Características del sistemas de E/S

• Tratamiento

• Conversión

• Aislamiento

Unidad de tratamiento

Alimentación

(11)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 1: Informaci

Parte 1: Informaci ó ó n general n general

Estructura funcional de un sistema de autómata programable

Función de interfaz hombre-máquina (MMI)

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

Consignas, ajustes Consignas, ajustes

Operador

(12)

Parte 1: Informaci

Parte 1: Informaci ó ó n general 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

Arranque del sistema

automatizado Arranque del sistema

automatizado

Programador

Documentación y archivado Documentación y archivado

(13)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 1: Informaci

Parte 1: Informaci ó ó n general 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.

(14)

Parte 1: Informaci

Parte 1: Informaci ó ó n general 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.

(15)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 1: Informaci

Parte 1: Informaci ó ó n general n general

Definiciones de “soporte Físico” (Hardware) de un sistema AP

Autómata programable

Procesador

principal Estaciones de E/S remota

NO TRANSPORTABLE

. . . . TRANSPORTABLE . . . .

. . . PORTÁTIL . . . .

Procesador principal

Estaciones de E/S remota

Periféricos permanentes

Periféricos no-conectables en línea

Periféricos conectables en línea

Pariféricos Instalación permanente

Sistema del autómata programable (Sistema AP)

Instalación NO-permanente

(16)

Memoria(s) y unidad(es) de tratamiento Memoria(s) y unidad(es) de tratamiento

Módulos de comunica- ción

Módulos de comunica- ción

Módulos de salidas Módulos de salidas

Módulos de entradas Módulos de entradas

Entradas digitales y analógicas

Salidas digitales y analógicas

Acometida de la red

Periféricos

(permanentes/ NO-

permanentes) Parte 1:Parte 1:

Informaci

Informacióón generaln general Esquema de interfaz

Transmisión serie, etc.: ordenadores, impresoras

(17)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Partes de la Norma IEC 61131:

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)

(18)

Parte 2: Especificaciones y ensayos de los equipos 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.

(19)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos 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), ...

(20)

Parte 2: Especificaciones y ensayos de los equipos 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.

(21)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Memoria(s) y unidad(es) de tratamiento Memoria(s) y unidad(es) de tratamiento

Módulos de comunica- ción

Módulos de comunica- ción

Módulos de salidas Módulos de salidas

Módulos de entradas Módulos de entradas

Fuente de alimentación

Entradas digitales y analógicas

Salidas digitales y analógicas

Transmisión serie, etc.: ordenadores, impresoras

Acometida de la red

Procesador principal

Periféricos

(permanentes/ NO- permanentes) Estación de E/S

remota Sistema del autómata

programable (AP)

Límite de la norma

Parte 2: Especificaciones y Parte 2: Especificaciones y ensayos de los equipos ensayos de los equipos

Requisitos eléctricos

Esquema típico de un sistema AP

(22)

Parte 2: Especificaciones y ensayos de los equipos 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.

(23)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos 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.

(24)

Parte 2: Especificaciones y ensayos de los equipos 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.

(25)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 2: Especificaciones y ensayos de los equipos 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.

(26)

Parte 2: Especificaciones y ensayos de los equipos 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

(27)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Partes de la Norma IEC 61131:

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)

(28)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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

(29)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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...

(30)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n El estándar IEC-61131

Elementos comunes

Lenguajes de programación

(31)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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)

(32)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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 DATE, TIME_OF_DAY, ...

• Variables

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

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

¿Qué es esto?

01010101 10101010

(33)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Configuraci Configuraciónón

Tarea Tarea Tarea Tarea

Recurso Recurso

Programa Programa Programa Programa

FB FB FB FB

Variables globales y representadas directamente

Vías de acceso

Función de comunicación (IEC 61131-5)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n

Elementos comunes. Modelo de software

F

(34)

Configuraci Configuraciónón

Tarea Tarea Tarea

Recurso

Programa Programa Programa

FB FB FB FB

Variables globales y representadas directamente

F

Tarea

Programa Recurso

(35)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n Modelo de comunicación de variables (I)

• Flujo de datos dentro de un programa

Programa A

a

FB1 FB2

FB_X FB_Y

b

(36)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ón n Modelo de comunicación de variables (II)

• Comunicación mediante variables globales

Configuración C

VAR_GLOBAL x: BOOL;

END_VAR

Programa A Programa B

VAR_EXTERNAL x: BOOL;

END_VAR VAR_EXTERNAL

x: BOOL;

END_VAR

FB2 FB1

FB_X FB_Y

a x x b

(37)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ón n

Modelo de comunicación de variables (III)

• Bloques funcionales de comunicación

Configuración C Configuración D

Programa A Programa B

FB1 FB2

FB_X FB_Y

a

b

send1 rcv1

SD1 RD1

(38)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ón 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

Vias de acceso Programa

(39)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n Elementos comunes

• Tipos de datos y variables

• Modelo de software

• Modelo de comunicación de datos

• Modelo de programación

•• Unidades de organizacióUnidades de organización del programan 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)

(40)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n

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

Programas

Bloques funcionales

Funciones

(41)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n

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

PROGRAM

GLOBAL

Local Type

FUNCTION

INPUT

Local Type

FUNCTION_BLOCK

INPUT OUTPUT IN_OUT EXTERNAL

Local Type

Programa de aplicación

(42)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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).

(43)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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 VAR_INPUT

A, B : REAL;

C : REAL:= 1.0;

END_VAR

Simple := A*B/C;

END_FUNCTION

Declaración de variables Cuerpo de la función Nombre

(44)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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.

(45)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n POU´s. Bloques funcionales. Ejemplo.

FUNCTION_BLOCK Histeresis VAR_INPUT

XIN1, XIN2: REAL;

EPS: REAL; (* Banda de histéresis *) END_VAR

VAR_OUTPUT Q: BOOL := 0 END_VAR

IF Q THEN

IF XIN1<(XIN2-EPS) THEN Q:=0 (* XIN decreciendo *) END_IF;

ELSEIF XIN1>(XIN2+EPS) THEN Q:=1; (* XIN creciendo *) END_IF

END_FUNCTION_BLOCK

1

EPS EPS 0

XIN2

Q

Histeresis

Q XIN1

XIN2 EPS

BOOL REAL

REAL REAL

(46)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n

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

• Las funciones

• Los bloques funcionales

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

(47)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

IEC-61131 Presentación, Oct. 2006 47

Configuraci Configuraciónón

Tarea Tarea Tarea

Recurso

Programa Programa Programa

FB FB FB FB

Variables globales y representadas directamente

Vías de acceso

Función de comunicación (IEC 61131-5)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n POU´s. Programas

F

Tarea

Programa Recurso

.

(48)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n POU´s. Programas.

• Flujo de datos dentro de un programa

• Comunicación entre programas:

* en la misma configuración (variables globales), o

* en configuraciones distintas (vías de acceso, comunicaciones)

Programa A

FB1 FB2

Programa A Programa B

(49)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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

•• GrGráfico Funcional Secuencial (SFC)á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)

(50)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ón n Sequential Function Chart, SFC

• SFC describe el comportamiento secuencial del programa de control. Deriva de las Redes de Petri y Grafcet (CEI 848).

Grafcet

Documentación

Grafcet Grafcet

Documentación

SFC

Conjunto de elementos de control de ejecución de una POU

SFC

Conjunto de elementos de control de ejecución de una POU

IEC-IEC-6113161131

• Permite dividir el problema en partes

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

(51)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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).

Paso 1 N Llena

Step 3

Etapa 2 S Vacia Transition 1

Transition 2

Bloque de acci Bloque de acciónón

“a” “b” “c”

“d”

“a” Cualificador

“b” Nombre de la acción

“c” Indicador booleano

“d” Acción en LD, FBD, ST ó IL

(52)

Etapa 1 N Llenar

Etapa3

Etapa2b S Vaciar Transición 1b

Transición 2b Etapa2a S Mezcla

Transición 1a

Transición 2a

Sequential Function Chart, SFC

Permite secuencias alternativas y simultáneas

Ejemplo de

secuencias alternativas

(53)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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óElementos de configuraciónn

Lenguajes de programación

• Lista de instrucciones (IL)

• Texto estructurado (ST)

• Diagrama de bloques funcionales (FBD)

• Diagrama de contactos (LD)

(54)

Configuraci Configuraciónón

Tarea Tarea Tarea Tarea

Recurso Recurso

Programa Programa Programa Programa

FB FB FB FB

Variables globales y representadas directamente

F

(55)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n Elementos de configuración.

Una configuración se compone de:

RECURSOS TAREAS

VARIABLES GLOBALES VIAS DE ACCESO

Veamos esto con un ejemplo ....

(56)

TASK SLOW_1

TASK PER_2 TASK

FAST_1

TASK INT_2

PROGRAM F PROGRAM G PROGRAM F PROGRAM H

A y1 y2

SLOW_1

B b1 b2

FAST_1

C c1

D d1

y2

RESOURCE STATION_1

P1 P2

SLOW_1 x1

x2

y1 FB1 FB2

out1

P1 P4

PER_2

FB1 FB2

PER_2

INT_2 HOUT1

%IX1.1 z1 w z2 %QW5

VARIABLES GLOBALES Y REPRESENTADAS DIRECTAMENTE x1

x2

y1

(57)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n

Ejemplo de configuraci

Ejemplo de configuraci ó ó n... n...

Declaraciones de bloques funcionales y parámetros

FUNCTION_BLOCK A VAR_OUTPUT y1:UINT;

y2:BYTE;

END_VAR

END_FUNCTION_BLOCK

FUNCTION_BLOCK B VAR_INPUT b1:UINT;

b2:BYTE;

END_VAR

END_FUNCTION_BLOCK

FUNCTION_BLOCK C VAR_OUTPUT c1:BOOL;

END_VAR

END_FUNCTION_BLOCK

FUNCTION_BLOCK D

VAR_INPUT d1:BOOL; END_VAR VAR_OUTPUT y2:INT; END_VAR 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

(58)

Parte 3:

Parte 3:

Lenguajes de Lenguajes de programaci programacióónn Ejemplo de Ejemplo de configuraci configuracióón...n...

Configuraciones, recursos, variables

RESOURCE STATION_1 ON PROCESSOR TYPE_1 VAR_GLOBAL z1 : BYTE ; END_VAR

TASK SLOW_1(INTEGRAL := t#20ms, PRIORYTY := 2) ; TASK FAST_1(INTERVAL := t#10ms, PRIORYTY := 1) ; PROGRAM P1 WITH SLOW_1 ;

F(x1 := %IX1.1) ; PROGRAM P2 : G(out1 => w,

FB1 WITH SLOW_1, FB2 WITH FAST_1) ; END_RESOURCE

RESOURCE STATION_2 ON PROCESSOR TYPE_2 VAR_GLOBAL z2 : BOOL ;

AT %QW5 : INT ; END_VAR

TASK PER_2(INTERVAL := t#50ms, PRIORITY := 2) ; TASK INT_2(SINGLE := z2, PRIORITY := 1) ;

PROGRAM P1 WITH PER2 :

F(x1 := z2, x2 := w) ; PROGRAM P4 WITH INT 2 :

H(HOUT1 => %QW5, FB1 WITH PER_2) ; END_RESOURCE

VAR_ACCESS

ABLE : STATION_1.%IX1.1 : BOO READ_ONLY ;

BAKER : STATION_1.P1.X2 : BOO READ_ONLY ; CHARLIE : STATION_1.z1 : BOO READ_ONLY ;

DOG : w : BOO READ_ONLY ;

ALPHA : STATION_2.P1.y1 : BOO READ_ONLY ; BETA : STATION_2.P4.HOUT1 : BOO READ_ONLY ;

GAMMA : STATION_2.z2 : BOO READ_ONLY ; VAR_GLOBAL w : UINT; END_VAR

RESOURCE STATION_1 ON PROCESSOR TYPE_1 VAR_GLOBAL z1 : BYTE ; END_VAR

TASK SLOW_1(INTEGRAL := t#20ms, PRIORYTY := 2) ; TASK FAST_1(INTERVAL := t#10ms, PRIORYTY := 1) ; PROGRAM P1 WITH SLOW_1 ;

F(x1 := %IX1.1) ; PROGRAM P2 : G(out1 => w,

FB1 WITH SLOW_1, FB2 WITH FAST_1) ; END_RESOURCE

RESOURCE STATION_2 ON PROCESSOR TYPE_2 VAR_GLOBAL z2 : BOOL ;

AT %QW5 : INT ; END_VAR

TASK PER_2(INTERVAL := t#50ms, PRIORITY := 2) ; TASK INT_2(SINGLE := z2, PRIORITY := 1) ;

PROGRAM P1 WITH PER2 :

F(x1 := z2, x2 := w) ; PROGRAM P4 WITH INT 2 :

H(HOUT1 => %QW5, FB1 WITH PER_2) ; END_RESOURCE

VAR_ACCESS

ABLE : STATION_1.%IX1.1 : BOO READ_ONLY ;

BAKER : STATION_1.P1.X2 : BOO READ_ONLY ;

CHARLIE : STATION_1.z1 : BOO READ_ONLY ;

DOG : w : BOO READ_ONLY ;

ALPHA : STATION_2.P1.y1 : BOO READ_ONLY ; BETA : STATION_2.P4.HOUT1 : BOO READ_ONLY ;

GAMMA : STATION_2.z2 : BOO READ_ONLY ;

(59)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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.

TASK SLOW_1

TASK FAST_1

PROGRAMF PROGRAMG

SLOW_1 FAST_1

RESOURCESTATION_1

P1 P2

SLOW_1

FB1 FB2

Las tareas son habilitadas implícitamente cuando

está habilitado el recurso al que están asociadas.

(60)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n Elementos de configuración. Tareas.

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

TASK

PRIORITY INTERVAL SINGLE

Nom_task

BOOL TIME UINT

• 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

prioridad de las tareas ( 0 - máxima) Varios POU´s pueden estar asociados a la misma tarea.

No pueden existir tareas

(61)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n El estándar IEC-61131

Elementos comunes

Lenguajes de programaci

Lenguajes de programaci ó ó n n

(62)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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 (

Texto estructurado (““Structured Text”Structured Text”,, ST)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

(63)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Programación con lenguajes conocidos de PLC

... y lenguaje de alto nivel

LD Entrada_Manual OR Entrada_Automática AND Desbloqueo ST Funcionamiento LD Entrada_01

IL

( )

S_01 S_02

S_03

Manual

S_01

LD

TON Tiempo_01 S_01 XOR

S_02

S_03 Lámpara

T#12s400ms

FBD Tiempo actual

Start

Paso_1

Paso_2 S_01

Transición_02

Transición_Fin

SFC

IF Data = "EOF" THEN FOR Index:=1 TO 128 DO

X:=Read_Data(Datenfeld[index]);

IF X > 2500 THEN Alarma:=TRUE;

END_IF;

END_FOR;

END_IF;

ST

(64)

Características comunes:

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n Lenguaje Gráficos (LD y FBD)

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

( )

S_01 S_02

S_03

Manual

S_01

LD

Tiempo_01TON

S_01 XOR

S_02

S_03 Lámpara

T#12s400ms

(65)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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.

MAN S_0 Lma

FCS EM

KMB

Ejemplo:

(66)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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

IN PT ET

EMER Q

T#4s400ms

KM V_temp

TON AND

(67)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Características comunes:

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n n Lenguaje Literales (IL y ST)

• La representación de literales.

• Los siguientes elementos de estructuración de las POU´s:

TYPE ... END_TYPE VAR ... END_VAR

VAR_INPUT ... END_VAR VAR_OUTPUT ... END_VAR VAR_IN_OUT... END_VAR VAR_EXTERNAL .. END_VAR FUNCTION ... END_FUNCTION

FUNCTION_BLOCK ... END_FUNCTION_BLOCK PROGRAM .. END_PROGRAM

STEP ... END_STEP

TRANSIION ... END_TRANSITION ACTION ... END_ACTION

LD Entrada_Manual OR Entrada_Automática AND Desbloqueo ST Funcionamiento LD Entrada_01

IL

IF Data = "EOF" THEN FOR Index:=1 TO 128 DO

X:=Read_Data(Datenfeld[index]);

IF X > 2500 THEN Alarma:=TRUE;

END_IF;

END_FOR;

END_IF;

ST

(68)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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

(69)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programaci ó ó n 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

(70)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ó n 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

(71)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ó n 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

(72)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ó n 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

(73)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ó n n Beneficios del estándar para los usuarios

Educación

Instalación

Mantenimiento

Programación Control de

procesos

Discrete Mnf

Integrador de sistemas

¿Usted ?

(74)

Parte 3: Lenguajes de programaci Parte 3: Lenguajes de programació ó n 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 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.

g Incrementa la conectividad y

comunicacón entre departamentos y

compañias. FunctionBlock

"Heating"

Software Library

IEC IEC - - 61131 61131

(75)

Entornos Integrados de Automatización

Ingeniería de Sistemas y Automática

El estándar es una realidad

en papel, y ahora ...

(76)

Han creado el problema de la gallina y el huevo:

n Ven los beneficios del estándar, pero necesitan productos

adecuados que cubran sus necesidades

n La demanda debe ser capaz de cubrir los gastos en

investigación y desarrollode los productos

USUARIOS

USUARIOS VS. VS. PROVEEDORES PROVEEDORES

Referencias

Documento similar