estándar iec 61131.pdf

21
1 PLCs ESTÁNDAR IEC 61131 Programa del Curso PLC LD FBD IL SFC ST IEC 61131 Comunicaciones Sistema Supervisor / SCADA Proyectos / Aplicaciones Lenguajes:

Upload: buique

Post on 12-Feb-2017

311 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Estándar IEC 61131.pdf

1

PLCs

ESTÁNDARIEC 61131

Programa del Curso

PLCLD

FBD IL SFC

ST

IEC 61131

Comunicaciones

Sistema Supervisor / SCADA

Proyectos / Aplicaciones

Lenguajes:

Page 2: Estándar IEC 61131.pdf

2

Estándar IEC 61131n Normativa sobre PLCs y su aplicación a

procesos industriales de medición y controln Primera edición en 1993n Uniformiza forma de programar PLCsn Ingeniería de software aplicado a la industrian Tendencia a sistemas abiertos,

interoperabilidad, etc.

Sistemas Abiertosn Adpota estándares y técnicas

industriales actualesn Facilita la integración con otros

sistemas abiertos (interoperabilidad)n Foco en comunicaciones y

programación

Page 3: Estándar IEC 61131.pdf

3

IEC 61131n Parte 1 – Información Generaln Parte 2 – Requerimientos y pruebas de hardwaren Parte 3 – Lenguajes de Programaciónn Parte 4 – Guías de selección, instalación y mant.n Parte 5 – Comunicaciónn Parte 6 – Seguridad Funcionaln Parte 7 – Lógica Borrosan Parte 8 – Guía de implementación de lenguaje

Deficiencias previo a IEC61131n Programación clásica en LADDER:

n Estructura de software débil (soporte limitadopara bloques de función, encapsulamiento, etc.)

n Poco re-uso de softwaren No soporta datos estructuradosn Soporte limitado para secuenciasn Control de ejecución limitado (único tiempo de

ciclo)n Cálculos aritméticos engorrosos

Page 4: Estándar IEC 61131.pdf

4

Calidad de Softwaren Objetivo principal de IEC 61131-3:

mejorar la calidad de softwaren Atributos:

n Capacidadn Tiempo de respuestan Capacidad de procesamienton Capacidad de almacenamiento

Calidad de Softwaren Atributos:

n Disponibilidadn Confiabilidad (MTBF) – tiempo entre fallasn Mantenibilidad (MTTR) – tiempo en repararn Integridad – robustez

n Usabilidadn Requerimientos previos para usarlon Esfuerzo de aprendizajen Productividadn Amigabilidad

Page 5: Estándar IEC 61131.pdf

5

Calidad de Softwaren Atributos:

n Adaptabilidadn Posibilidad de mejoras en capacidad,

disponibilidad, usabilidadn Extensibilidad – nuevas funcionalidadesn Portabilidadn Reuso

n IEC 61131-3 => mejorar estos atributosde calidad de software

Características IEC 61131-31. Software estructurado (top-down/bottom-

up)2. Chequeo de tipos de datos3. Control de ejecución (tareas)4. Control secuencial5. Datos estructurados6. Elección de lenguajes7. Software independiente del fabricante

Page 6: Estándar IEC 61131.pdf

6

Arquitectura Clásica del PLCn Arquitectura clásica consiste en ejecución

cíclica de programa, con tres fases:n Lectura de entradasn Ejecución de programan Actualización de salidas

n La ejecución del programa puede alterarsesólo por una interrupción

Arquitectura bajo IEC 61131n Por avance continuo del hardware, la IEC-

61131 define una arquitectura más avanzadan La arquitectura se basa en la programación

jerárquica, con 4 niveles:n Configuraciónn Recursosn Tareasn Programas

Page 7: Estándar IEC 61131.pdf

7

Arquitectura

Configuraciónn Más alto nivel del modelon Se corresponde con el sistema del

controlador programablen Generalmente se corresponde con el

software necesario para un PLCn Se comunica con otras configuraciones

Page 8: Estándar IEC 61131.pdf

8

Configuraciónn La configuración define:

n recursosn datos compartidos por los recursosn datos accesibles desde exterior del PLC

Recursosn Dentro de una configuración existen

uno o más recursosn Un Recurso proporciona el soporte para

ejecutar un programa IEC (símil“máquina virtual”)

n Para que un programa se ejecute, debeser cargado en un recurso

Page 9: Estándar IEC 61131.pdf

9

Recursosn Pueden existir en un PLC o en un

software para PC por ejemplon Un PLC con múltiples procesadores =>

un recurso por procesadorn Dentro de la configuración, cada

recurso debe poder correr en formaindependiente

Recursosn Función principal: interface entre

programas y entradas/salidas físicas delPLC

n Recurso define:n tareasn datos compartidos por todos los programasn datos de recurso accesibles desde exterior del PLCn programas que ejecutan las tareas del recurso

Page 10: Estándar IEC 61131.pdf

10

Tareasn Configurada para ejecutar un programa o un

bloque de funciónn Los programas/bloques asociados a una tarea

se ejecutan cada vez que se dispara la tarean Condición de disparo puede ser:

n Intervalo periódico de tiempo expresado en mseg(tarea tiene un ciclo asociado, análogo al del PLC)

n Evento

Tareasn Un programa sin una tarea asociada no se

ejecutan Un bloque de función sin una tarea asociada

se ejecuta junto con el programa dondereside

n Tarea define:n Programas asociados a la tarean Condición de disparon Prioridad

Page 11: Estándar IEC 61131.pdf

11

Tareasn Non-preemptive Scheduling (esquema

sin preferencias)n Las tareas no interrumpen a otras tareasn Se ejecutan completamente los programas

o bloques de una tareas previo a pasar a lasiguiente

n La tarea en espera de mayor prioridadcontinua la ejecución

n No recomendado para aplicaciones críticas

Tareasn Preemptive Scheduling (esquema con

preferencias)n Las tareas de mayor prioridad interrumpen

a las de menor prioridadn Para sistemas determinísticos, aplicaciones

críticas

Page 12: Estándar IEC 61131.pdf

12

TareasEjecución de 2 tareas con misma prioridad o “Non-preemptive”

Ejecución de 2 tareas con diferente prioridad (“Preemptive”)

Tareasn Ejemplo: declaración de tareas lab 2 (se

observa la simplificación de la programación):

Task Configuration:

TAREA1(PRIORITY:=1,INTERVAL:=T#100ms)

PWM

TAREA2(PRIORITY:=2,INTERVAL:=T#1sec);

CONTROL

Page 13: Estándar IEC 61131.pdf

13

Tareas en PLC de Labn Por defecto:

n Type = cyclicPriority = 10Cycle time = t#10msProgram call= PLC_PRG.

Tareas en PLC de Lab

Page 14: Estándar IEC 61131.pdf

14

Tarea en PLC de Lab

Las POUn Hay tres tipos de POU (Program

Organizational Unit):n Programasn Bloques funcionalesn Funciones

Page 15: Estándar IEC 61131.pdf

15

Programasn Conjunto de elementos de software cada uno

definido en base los lenguajes de la norman Típicamente, bloques de función

interconectados que pueden intercambiardatos

n La ejecución de diferentes partes delprograma se puede definir mediante tareas

Bloque Funcionaln Característica más importante de la norma IECn Base para diseño jerárquico de softwaren Permite descomponer un programa complejo en

partes más simplesn Se definen sobre la base de “templates” de bloquesn Para utilizar un template de bloque, la tarea declara

una instancia del templaten Bibliotecas propias de usuario (re-uso)

Page 16: Estándar IEC 61131.pdf

16

Bloque Funcionaln Se compone de:

n Datos: parámetros de entrada/salidan Código internon Variables internas que representan su

estado

n Ejemplos: contadores, PIDs, etc.

Funciónn Diferencia entre bloque funcional y

función:n Número de salidas:

n Función permite sólo una salidan Bloque funcional permite más de una

n Variables permanentes (conservan valorentre ejecuciones):n Función non Bloque funcional sí

n Ejemplos: and, sen, cos, etc.

Page 17: Estándar IEC 61131.pdf

17

Modelo vs Sistema Realn Pequeños PLCs:

n 1 configuración, 1 recurso, 1 programa

n PLCs más grandes:n Configuración = PLCn Recursos = procesadores del PLCn Cada recurso podrá tener uno o más

programas

n Finalmente dependerá de cadaimplementación

Variables locales/globalesn Variables locales: definidas solo para el

programa/bloque de función donde esdeclarada

n Variables globales:n Definidas a nivel de programa: accesible

por todos los bloques internosn Definidas a nivel de recurso/configuración:

accesible por todos los programas incluidos

Page 18: Estándar IEC 61131.pdf

18

Variables Directasn Variables representadas en forma

directa: definen su ubicación enmemoria en forma explícita

n NombreVar [AT %DirecciónVar] :TipoDeDato [::= ValorInicial];

Variables de Acceson Variables designadas para intercambio

de datos entre configuracionesn La norma no define el protocolo de

comunicación

Page 19: Estándar IEC 61131.pdf

19

Variablesn [Código letras] [Código números]

n Código de letras: distingue el tipo de daton Primer letra:

- I/E: Dirección E- Q/O: Dirección S- M: Dirección dato interno

n Segunda letra:- X: bit- B: byte (8 bits)- W: word (16 bits)- D: double word (32 bits)- L: long word (64 bits)

Variablesn Tipo de dato: uno de los tipos de dato

reconocido por IEC 61131-3:n INT: entero con signo de 16 bits (prefijo S, D, L

cambia tamaño)n BOOL: Bitn BYTE, WORD, DWORD, LWORDn REAL, LREAL: punto flotante (32 bit, 64 bit)n TIME, DATE, TIME_OF_DAY, DATE_AND_TIMEn STRINGn Tipo de datos derivado (STRUCT, ARRAY)

Page 20: Estándar IEC 61131.pdf

20

Variablesn Ejemplos tipos derivados por el usuario:

TYPE my_arrayARRAY [1..3] OF INT;

END_TYPE

Variables EstructuradasTYPE motor

STRUCTestado: BOOLfalla: BOOLvelocidad: REALcorriente: REAL

END_STRUCTEND_TYPE

Uso: M1.estado, M1.falla, etc.

Page 21: Estándar IEC 61131.pdf

21

Variables EnumeradasTYPE estado_operativo

(inicio, ejecución, espera, falla);END_TYPE

Uso: estado1 := falla;