Clp traduccion

Preview:

Citation preview

CONTROLADORES PROGRAMABLES

Professor : Jair Jonko Araujo

Sumario Tipos de industrias; Niveles de Control; Conceptos: SVC, SED, Clasificación de los

dispositivos; CLP: Histórico, componentes, funcionamiento,

clasificación, ejemplos;

Introducción – Conceptos Básicos

Tipos de Industria Manufactura

producir un bien cualquiera utilizando herramientas o máquinas (transformación mecánica a través de sucesivas operaciones);

ProcesoConjunto de operaciones/transformaciones realizadas sobre un material, con la finalidad de variar sus propiedades físicas/químicas.Procesos pueden ser contínuos o discontinuos (batch).

Niveles de control - Funciones

Gerenciamiento

Supervisión

COMUNICACIÓN

La Zona de Control

Sensores / Actuadores

COMUNICACIÓN

COMUNICACIÓN

Niveles de Control (1)

Niveles de Control (2)

Niveles de Control (3)

N í v e ld e C o n t r o l e

C i c l o< 1 0 0 m s

C i c l o< 1 s

N í v e ld e P l a n t a

N í v e ld e C a m p o

C i c l o< 1 0 m s

P R O F I B U S - D P

P C M E

H o s tC N C147

580

69

2 3

D C SP L C

V M E P C

T r a n s -m i s s o r

D i s p o s i t i v od e

C a m p o

D i s p o s i t i v od e

C a m p oV á l v u l a sE / S

R e m o t oA c i o n a d o r

Conceptos

Control es “aplicación de una acción pre-planeada para que aquello que se considera como objeto de control alcance ciertos objetivos” (Miyagi, 1996).

Sistemas de control: SVC (sistemas de variables continuas)

igualar el valor de una variable física (var. de control) a un valor de referencia;

SED (Sistema de eventos discretos) ejecución de operaciones conforme procedimiento prestablecido.

ConceptosValores de referencia

Regulador Actuador

Detector

Objeto de control

Señales de realimentación

Variábles de actuación

Variables controladas

Dispositivo de Control (SVC)

Dispositivo de Control (SED)

Com

andos de tarea

Procesador de Comandos

Actuador

Detector

Objeto de control

Estados

Variables de actuación

Variables controladas

Comandos de Control

ConceptosO

perador/ Usuario

Dispositivo de Comando

Dispositivo de Control

Dispositivo de Monitoreo

Dispositivo de

Realización de Control

Dispositivo de Actuación

Dispositivo de Detección O

bjeto de Control

Sistema de Control

Recursos

Productos

Sistema de Control SED

Conceptos

Dispositivos de comando (E): botoneras, llaves rotativas, etc;

Dispositivos de actuación(S): contactores, solenoides(válvulas), servo-motores, etc;

Dispositivos de detección(E): llaves fin de curso, potenciómetros, sensores, encoders, etc;

Dispositivos de monitoreo(S): lámparas, bocinas, displays, registradores, etc.

Dispositivos de Realización: circuitos eléctricos, CLPs, etc.

Dispositivos - Ejemplos

CLP – Controlador Lógico Programable

Histórico

Hasta el final de la década de 60 los sistemas de control eran electromecánicos (realizados para armarios/cuadros de relés);

Ocupaban mucho espacio y eran de difícil mantenimiento;

Modificaciones en las líneas de producción demandaban mucho tiempo y practicamente exigían el montage de nuevos cuadros;

En 1968 la GM (USA) lanzó una especificación técnica de un nuevo dispositivo de control.

Histórico

Requisitos de especificación: Fácil programación y mantenimiento

(reprogramación); Alta confiabilidad en el ambiente industrial

(vibración, calentamiento, polvo, etc.); Dimensiones reducidas; Capacidad de enviar datos a un Sistema

Central; Ser modular (expansible); Señales de E/S de 115VCA (2A mínimo

salida)

Histórico

En 1969 surgieron los primeros controladores Eran muy simples apenas con E/S digitales; La fácil programación fue una de las claves

del éxito (basada en ladder); A lo largo de la década del 70 fueron siendo

introducidas nuevas funcionalidades (temporización, computación numérica, etc.)

A partir de la década de 80 las funciones de comunicación fueron perfeccionadas

Histórico

Hoy el PLC es un sistema microcontrolador (microprocesador) industrial con software y hardware adaptado para ambiente industrial (especialmente ruído eletromagnético) con muchas opciones de programación, con capacidad de operar en red en diversos niveles.

Componentes

CPU

Mem

oria

Fuente

Comuni-cación

Barra-mento

Placa Entrada

Placa Salida

Dispositivos

Dispositivos

Com

puta

dor

Componentes

CPU Microcontrolador de 16/32 bits: Funciones:

Comunicación entre las partes del PLC; Control de entradas y salidas; Ejecución; Operación de memoria; Check-ups internos.

Componentes

Memoria La memoria es divida en 2 grandes bloques:

Memoria del Sistema Programa de Ejecución; Área de Borrador: flags, cálculos, alarmas, errores.

Memoria del Usuario Programa del usuario (binario); Tabla de Datos: Mapa E/S, valor actual y pre-set de

contadores y temporizadores, variables de programa.

Componentes

Módulos de E/S Pueden ser Discretos o Analógicos

Discretos Cantidad de Puntos Disponibles AC, DC, Relé DC: Tipo P ou Tipo N Salida: necesidad de alimentación externa, fusibles

Analógicos Número de Canales, Resolución del conversor A/D Faja de operación: 0-20mA, 4-20mA, 0-5V, 0-10V, +-

5V, +-10V, temperatura (termopar - J,E,K ... , termorresistencia – PT100, ...)

Funcionamiento Basado en procesamiento cíclico compuesto, de

forma simplificada, por 3 etapas visibles al usuario: Adquisición de las entradas; Procesamiento; Actualización de Salidas;Comunicación y Mantenimiento del S.O

(Carga de módulos, actualización de timers, tratamiento de interrupción, etc.)

X ms para cada 1000 instrucciones

Adquisición de entradas Procesamiento

Actualización de Salidas

1 ciclo con período de T segundos

Com. - Man. SO

Funcionamiento Las etapas son distintas e independientes; El proceso se inicia después que las señales

de entrada son mostradas; Durante el proceso las entradas y salidas

permanecen inalteradas (cualquier alteración de las E/S y estados internos solo puede ocurrir fuera de este intervalo);

Durante la actualización de las salidas los valores de las entradas permanecen inalterados

Funcionamiento

Una entrada debe permanecer accionada, como mínimo: tiempo de varredura de las entradas + tiempo de procesamiento

ALTER

NA

TIVAS

Características(ejemplo)

Clasificación

Basada en el número de E/S (no padronizado): Nano: hasta 50 puntos de E/S; Micro: hasta 250 puntos de E/S; Medio:hasta 1000 puntos de E/S;

Generalmente asociado al aumento del número de E/S están asociados aumentos de los recursos de programación y disminución de los tiempos de respuestas.

Ejemplos de Aplicaciones

máquinas industriales (operadoras, inyectoras de plástico, textiles, calzados);

equipamientos industriales para procesos ( siderurgia, papel y celulosa, petroquímica, química, alimentación, minería, etc);

equipamientos para control de energia (demanda, factor de carga);

adquisición de datos de supervisión en: fábricas, edificios;

bancadas de test automático de componentes industriales.

Ejemplos (modelos)

Norma IEC 61131

Introducción

Las herramientas para programación de CLP no evoluconarían a la misma velocidad que las herramientas para programación de computadores pues no presentan (aban): Facilidad de uso Portabilidad Interoperabilidad entre diferentes

productos Padrones de comunicación

La norma IEC 61131 busca llenar esta laguna

Norma IEC 61131

Define la sintaxis y el comportamiento del lenguage

Provee un conjunto de lenguages interligados para resolver diferentes problemas de control

Mejora la calidad del software aplicado a través de las técnicas de proyecto estructurado, encapsulamiento de datos, etc.

Norma IEC 61131

Part 1 – General Overview, definitions Part 2 – Hardware, I/O Signals, safety

requeriments, environment Part 3 – Programming Languages Part 4 –User Guidelines Part 5 – Messaging Service Specification

Norma IEC 61131 – parte 3 Principales características

Programación estructurada y lenguage de alto nivel para construcción de grandes programas

Conjunto padronizado de instrucciones (en inglés)

Programación Simbólica Gran variedad de tipos de datos padronizados Funciones reutilizables pueden ser creadas Conjunto de funciones matemáticas

padronizadas disponibles (trigronométricas, logaritmos, etc.)

La estrutura de la Norma IEC 61131-3

Elementos Comunes

Lenguages de Programación

La estructura de la Norma IEC 61131-3

Elementos Comunes

Lenguages de Programación

IEC 61131-3 : Elementos Comunes

ELEMENTOS COMUNES

1. Tipos de Datos y Variables

2. Modelo de Software

* Configuración, Recursos, Tareas

3. POUs (Unidades de Organización de Programa)

* Funciones

* Bloques de Función (FB’s)

* Programas

IEC 61131-3 : Elementos Comunes

ELEMENTOS COMUNES

1. Tipos de Datos y Variables

2. Modelo de Software

* Configuración, Recursos, Tareas

3. POUs (Unidades de Organización de Programa)

* Funciones

* Bloques de Función (FB’s)

* Programas

Variables y Tipos de Datos

Que es esto?

01010101 10101010

Históricamente

• Referencia a una posición física de memoria

• Referencia a una entrada física

Variables y Tipos de Datos

Sensor_Temperatura_1 : Integer• Representación simbólica

• Área propia para mapeo de I/O

• Código independente de hardware

• Altamente transparente y comprensible

• Menos errores

Variables y Tipos de Datos

Representación de las Variables

IEC 61131-3 : Elementos Comunes

ELEMENTOS COMUNES

1. Tipos de Datos y Variables

2. Modelo de Software

* Configuración, Recursos, Tareas

3. POUs (Unidades de Organización de Programa)

* Funciones

* Bloques de Función (FB’s)

* Programas

IEC 61131-3 Modelo de Software

Configuración

Función de Comunicación

Conjunto de software que define el comportamiento de un hardware (CP) para

una aplicación específica

IEC 61131-3 Modelo de Software

Configuración

Función de Comunicación

Recurso Recurso

Soporte para la ejecución de un programa, interface entre programas y las E/S de

controlador

IEC 61131-3 Modelo de Software

Task(Tarea)

Task Task Task

Recurso Recurso

Configuración

Função de Comunicação

un mecanismo de escalonamiento que ejecuta Programs o function blocks periódicamente o en respuesta a un evento

(cambio de estado de alguna variable booleana), permitiendo la ejecución de programas en diferentes tareas con objetivo de optimizar el uso de recurso del controlador

IEC 61131-3 Modelo de Software Tipos de Tareas (Task ):

No preemptiva: siempre completa su procesamiento

Preemptiva: puede ser interrumpida por otra de mayor prioridad

Cualquiera puede ser activada cíclicamente, por tiempo o por evento)

Cada tarea se puede atribuir un período de ejecución y una prioridad

un Program o function block quedará aguardando su ejecución hasta que sea asociado a una determinada Tarea y esta sea activada por una ejecución periódica o por un determinado evento

IEC 61131-3 : Elementos Comunes

ELEMENTOS COMUNES

1. Tipos de Datos y Variables

2. Modelo de Software

* Configuración, Recursos, Tareas

3. POUs (Unidades de Organización de Programa)

* Funciones

* Bloques de Función (FB’s)

* Programas

IEC 61131-3 Modelo de Software

Função de Comunicação

Task

ProgramProgram

Task

Program(Programa)

Task

Program

Task

Recurso Recurso

Configuración

Camino de control de ejecución

Típicamente, un Program consiste de un número de bloques funcionales interconectados, capaces de intercambiar datos a

través de las conecciones de software. Un Program puede anular las variables de CLP y comunicar con otros Programs.

IEC 61131-3 Modelo de Software

Programs ( Programas) pueden contener variables de acceso, las

cuales permiten el acceso remoto por los servicios de comunicación.

pueden contener instancias de bloques funcionales, mas no de otros programas, (no pueden ser aninhados)

as instâncias de blocos funcionais de um programa podem ser executadas por diferentes tarefas de controle.

IEC 61131-3 Modelo de Software

Programs ( Programas) podem ser declarados somente no nível

do recurso. podem conter declarações de variáveis

de endereçamento direto (endereçamento direto de pontos de E/S.

podem conter declarações de variáveis globais, as quais podem ser acessíveis pelos Function Blocks através do uso de variáveis externas.

IEC 61131-3 Modelo de Software

Variáveis globais e diretas

Caminho de acesso

Tarefa

Programa Programa

FB FB

Tarefa

Programa

Tarefa

Programa

FB FB

Tarefa

Recurso Recurso

Configuração

Função de Comunicação

caminho de acesso a Variável

Caminho do controle de execução

FB

Bloco de Função’’

Variável

Todo o mapeamento de memória pode ser acessado pelo gerenciador global de variáveis

CI de softwares. Possuem um conjunto de dados que pode ser alterados por um

algoritmo interno

IEC 61131-3 Modelo de Software

Functions Blocks (Blocos de Funções) podem ser utilizados para a criação de

elementos de software totalmente reutilizáveis, desde a criação de outros Function Blocks mais simples, até Programs complexos.

possuem um conjunto de dados, os quais podem ser alterados por um algoritmo interno (algoritmos + dados)

podem ser escritos em qualquer linguagem

IEC 61131-3 Modelo de Software

Functions Blocks (Blocos de Funções) Os dados possuem persistência (estados

internos que são mantidos entre uma execução e outra)

podem ser utilizados para a criação de outros Function Blocks (blocos derivados), aumentando ainda mais a capacidade de reutilização do software.

Functions Blocks (Blocos de Funções)

Blocos de Função padrões Biestáveis: SR, RS, SEMA Detecção de Borda: R_TRIG, F_TRIG Contadores: CTU, CTD, CTUD Temporizadores: TP, TON, TOF, RTC

Blocos de Função fornecidos adicionalmente pelo fabricante

Blocos de Função definidos pelo usuário Todos FBs são altamente reutilizáveis no

mesmo programa, diferentes programas ou projetos

Exemplo de Function Block adicional (ATOS)

Exemplo de Function Block construído pelo usuário

FUNCTION_BLOCK HYSTERISIS

VAR_INPUT

XIN1, XIN2 : REAL;

EPS : REAL; (* faixa de histerese *)

END_VAR

VAR_OUTPUT

Q : BOOL := 0

END_VAR

IF Q THEN

IF XIN1 < (XIN2-EPS) THEN

Q := 0 (* XIN1 diminuindo *)

END_IF;

ELSIF XIN1 > (XIN2 + EPS ) THEN

Q := 1; (* XIN1 aumentando *)

END_IF;

END_FUNCTION_BLOCK

Hysterisis

QXIN1XIN2

EPS

BOOLREAL

REAL

REAL

1

EPSEPS

0

XIN2

Q

IEC 61131-3 Modelo de Software

Functions (Funções) são elementos de software que não

aparecem no modelo de software, porém podem ser reutilizados

não possuem persistência, existindo apenas em tempo de execução, assim como subrotinas (não armazenam dados)

não possuem estados internos, ou seja, sempre produzem o mesmo resultado para o mesmo conjunto de entradas

podem ter apenas uma saída podem ser escritas em qualquer linguagem

Functions (Funções)

Funções padrões Bit: ADD, OR, XOR, NOT SHL, SHR, ROL, ROR

Numéricas: ADD, SUB, MULT, DIV, MOD, EXPT, ABS, SQRT, LN, LOG, EXP, SIN, COS, TAN, ASIN, ACOS, ATAN

Conversão de tipo

Seleção: SEL, MIM, MAX, LIMIT, MUX

Cadeias de Caracteres: LEN, LEFT,RIGHT, MID, CONCAT, INSERT, DELETE, REPLACE, FIND

Functions (Funções)

Exemplo de funções definidas pelo usuárioFUNCTION SIMPLE_FUN : REAL

VAR_INPUTA, B : REAL;C : REAL := 1.0;

END_VARSIMPLE_FUN := A*B/C;END FUNCTION

Tarefas e POUS

Ir para arquivo de help da ATOS

IEC 61131-3 x PLC convencional

Função de Comunicação

Variáveis globais e diretas

Caminho de acesso

Tarefa

Programa Programa

FB FB

Tarefa

Programa

Tarefa

Programa

FB FB

Tarefa

Recurso Recurso

Configuraçãocaminho de acesso a Variável

Caminho do controle de execução

FB

Bloco de Função’’

Variável

PLC convencional x IEC 61131-3

Tarefa 1

Programa

Tarefas

Recurso

Lê entradas

Executa lógica

Atualiza saídas

Loop Infinito:

Tarefa 2

Tarefa 3

Tarefa 4

Temporizada

Evento

Evento

Temporizada

Vantagens das POU’s

Crie suas próprias bibliotecas de FBs (por tipo

de aplicação)

FBs são testados e documentados

Faça bibliotecas acessíveis em todo o mundo

Reutilize o máximo possível

Mude da programação para a criação de redes

de FBs

Economize 40% no próximo projeto

A estrutura da Norma IEC 61131-3

Elementos Comuns

Linguagens de Programação

Linguagens de Programação IEC 61131 – parte 3

Definição de Cinco Linguagens Interligadas Sintaxe e Semântica de 2 linguagens textuais

e 2 gráficas: Instruction List (IL) Structered Text (ST) Ladder Diagram (LD) Function Block Diagram (FBD)

Linguagem para estruturação da Programação Sequential Function Chart (SFC)

Linguagens Tradicionais

Ladder Diagram (LD)

Function Block Diagram (FBD)

Linguagens Tradicionais

Instruction List (IL)

Linguagens Novas

Structered Text (ST)

Linguagem estruturada de alto nível Sintaxe semelhante ao Pascal Permitido o uso de declarações complexas e

instruções aninhadas Suporte para:

Laços de controle (REPEAT-UNTIL; WHILE-DO) Execução condicional (IF-THEN-ELSE; CASE) Funções (SQRT(), SIN())

Linguagens Novas

Sequential Function Chart (SFC)

Técnica gráfica muito poderosa para descrever o comportamento seqüencial de um programa de controle

Usado para particionar um problema de controle Mostra uma visão geral, desejável para um rápido

diagnóstico

Processo de Fermentação

Camisa deaquecimento

Reagente ácido

Reagente básico

Válvula de dreno

Sensor de pH

Sensor de temperatura

Válvula de alimentação

Agitador

Como criar um programa de controle de forma estruturada?

Sinais de Entrada (sensores): sensor de temperatura sensor de PH posições das válvulas velocidade motor

Sinais de Saída (atuadores): válvulas motor aquecedor

Passo 1 : Identificação das interfaces externas do sistema

Neste exemplo não existe nenhum acoplamento do processo, mas poderia existir, do tipo:

… acoplamento com os vasos com líquidos principais … acoplamento com o sistema de transporte / estação

de enchimento após o dreno

Passo 2: Definição dos principais sinais entre o Sistema e o

restante do processo

Para o operador foram definidos: … um botão ‘Liga’ … um botão ‘Desliga’ … uma entrada ‘Duracao’

Agora estão definidas todas as interfaces

Passo 3: Definição de todas as interações com o Operador,

intervenções e dados de supervisão

SequenciaPrinc – enchimento, aquecimento,

agitação, fermentação, descarga, limpeza.

ControleValvulas – comando das vávulas para

encher e esvaziar o vaso

ControleTemp – controle de temperatura

ControleAgitador – controle do motor do agitador

(velocidade)

ControlepH – controle de pH

Passo 4: “Quebrar” o problema de cima para baixo em partições

lógicas (funcionalidades)

Usando as definições anteriores e

Representando na linguagem gráfica de programação

Diagrama de Blocos de Função temos …

Passo 5: Definição das POUs necessárias(Programas e Blocos de Função)

Programa de Controle da Fermentação

ControleTemp

SequenciaPrinc

LiberEncher

Agitacao

pH

PV

PV

PV

SetPoint

Temp

Liga

Duracao

Desliga

ControlepH

AdicBase

AdicAcidoSetPoint

ControleAgitador

VelocMotor SetPoint

ControleValvulas

Encher

Drenar

Libera

Esfriar

Aquecer

PosicaoValvulas

VelocAgitador

SensorTemp

SensorpH

Duracao

Desliga

Liga AdicBase

AdicAcido

VelocMotor

Encher

Drenar

Esfriar

Aquecer

Entradas Saídas

Apresenta os principaisestados do processo

Seqüência principal (MainSequence) em SFC

Inicialização S1

EnchimentoS2

AquecimentoS3

FermentaçãoS4

DescargaS5

LimpezaS6

Os Blocos de Ação e as

Transições podem ser

programados em

qualquer uma das

quatro Linguagens de

Programação IEC

Neste exemplo temos apenas um ciclo em modo contínuo

O tempo restante pode ser usado por outros ciclos

para:

…. o sistema de enchimento / transporte

… verificação de limites e condições de erro (em

uma seqüência paralela)

Passo 6: Definição dos tempos do ciclo de scanpara as diferentes partes da aplicação

Depende do sistema utilizado

Inclui o mapeamento do I/O físico com os símbolos

usados

Mapeamento dos recursos (leia: CPUs do sistema)

Definição dos ciclos de scan e eventos (vide Passo 6)

Passo 7: Configuração do Sistema:

Definição dos Recursos, Tarefas e conexão do programa com o I/O físico