Programación (1)

21
Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

description

automatas

Transcript of Programación (1)

Page 1: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Page 2: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Ejecución de programas

Modos de ejecución

Continua

Periódica

Por interrupción

Ciclo 1 Ciclo 2 Ciclo 3 Ciclo 4 Ciclo 5 Ciclo 6

Ciclo 1 Ciclo 2 Ciclo 3 Ciclo 4 Ciclo 5

T T T T T

Ciclo 1 Ciclo 2 Ciclo 3

Page 3: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Imagen del proceso

E1 real

Tiempo de ciclo = 20ms

E1 imagen

20ms

E2 real

E2 imagen

Entradas40ms 60ms

20ms

Salidas

40ms 60ms

S1 real

S1 imagen

S2 real

S2 imagen

Page 4: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Lenguajes de programación Normalización

Carencia tradicional de normas Norma IEC 61131-3

Lenguajes IEC 61131-3 Estructura

SFC. Secuencial function chart (diagrama funcional secuencial )

Programación Lenguajes literales

IL. Instruction list (lista de instrucciones) ST. Structured text (literal estructurado)

Lenguajes gráficos LD. Ladder diagram (diagrama de contactos) FBD. Function block diagram (diagrama de bloques funcionales)

Schneider-Electric Unity Pro Se va a utilizar en las prácticas En casi todos los aspectos sigue la norma IEC 61131-3

Page 5: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Page 6: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Representación de datos

Números

Cadenas de caracteres

Tiempo

Descripción Ejemplo

Enteros -12 0 +988

Reales -12.0 0.0 123_456 0.458

Reales con

exponente

-1.34E-12 o -1.34e-12

1.0E+8 o -1.0e+8

1.23e6 o 1.23e6

Base 2 2#1111_1111 (255 decimal)

2#11100000 (240 decimal)

Base 8 8#377 (255 decimal)

8#340 (240 decimal)

Base 16 16#FF o 16#ff (255 decimal)

16#E0 o 16#e0 (240 decimal)

Booleano 0 FALSE

1 TRUE

Page 7: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Tipos elementales Tipos de datos genéricos

ANY, ANY_NUM, ANY_REAL, ANY_INT,

ANY_BIT, ANY_DATE

Tipos de datos derivados

Tipos de datos

Palabra clave Tipo de dato Bits

BOOL Booleano 1

SINT Entero corto 8

INT Entero 16

DINT Doble Entero 32

LINT Entero largo 64

USINT Entero corto sin signo 8

UINT Entero sin signo 16

UDINT Doble entero sin signo 32

ULINT Entero largo sin signo 64

REAL Real 32

LREAL Real largo 64

TIME Duración

DATE Fecha

TIME_OF_DAY o TOD Hora del día

DATE_AND_TIME o DT Fecha y hora del día

STRING Cadena de caracteres de longitud variable

BYTE Cadena de 8 bits 8

WORD Cadena de 16 bits 16

DWORD Cadena de 32 bits 32

LWORD Cadena de 64 bits 64

Page 8: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Variables Representación

%LocalizaciónTamaño.i (...)

Ej. %QX.7.5 o %Q.7.5 %MD48 %IW2.5.7.1

Variables multielemento Vectores Variables estructuradas

Declaración de variables

Prefijo Localización

I Entrada

Q Salida

M Memoria

Prefijo Tamaño Dato

X Bit BOOL

Bit BOOL

B Byte (8 bits) BYTE

W Palabra (16bits) WORD

D Doble palabra (32 bits) DWORD

L Cuadruple palabra (64 bits) LWORD

Page 9: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Funciones Concepto de función

Una única salida La salida depende solo del valor instantáneo de las entradas

Declaración Funciones estándar

Funciones de conversión de tipo Funciones numéricas Funciones aritméticas Funciones de desplazamiento Funciones booleanas en cadenas de bits Funciones de selección Funciones de comparación Funciones de cadenas de caracteres Funciones de tiempo Funciones de tipos de datos enumerados

Page 10: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Bloques de función

Concepto de bloque de función

Una o varias salidas

La salida no depende solo del valor instantáneo de las entradas

Declaración

Bloques de función estándar

Biestables

Detectores de flanco

Contadores

Temporizadores

Page 11: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

SR (set dominante)

RS (reset dominante)

Semáforo

Bloques de función estándarBiestables

SR

R

S1 Q1 BOOLBOOL

BOOL

RS

R1

S Q1 BOOLBOOL

BOOL

SEMA

RELEASE

CLAIM BUSY BOOLBOOL

BOOL

Page 12: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Bloques de función estándarDetectores de flanco

Detector de flanco de subida

Detector de flanco de bajada

R_TRIG

CLK Q BOOLBOOL

F_TRIG

CLK Q BOOLBOOL

Page 13: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Ascendente

Descendente

Ascendente/descendente

Bloques de función estándarContadores

CTU

CU Q BOOLBOOL

BOOL

PV CV INTINT

R

CTD

CD Q BOOLBOOL

BOOL

PV CV INTINT

LD

CTUD

CU QU BOOLBOOL

BOOL

PV CV INTINT

LD

BOOL R

CD QD BOOLBOOL

Page 14: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Bloques de función estándarTemporizadores

Monoestable

Retardo a la conexión

Retardo a la desconexión

TP

IN Q BOOLBOOL

PT ET TIMETIME

IN

ET

Q

PT

0

TON

IN Q BOOLBOOL

PT ET TIMETIME

IN

ET

Q

PT

0

TOF

IN Q BOOLBOOL

PT ET TIMETIME

IN

ET

Q

PT

0

Page 15: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Page 16: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Características y origen del lenguaje Ej. Sistema de conexión/desconexión de

un motor

Solución con relés

Programa en diagrama de contactos

Diagrama de contactos (I)

Page 17: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Diagrama de contactos (II) Elementos básicos

Contactos

Bobinas

Estructura de un diagrama de contactos

Concepto de red conexa

Reglas de evaluación Entre redes: de arriba a abajo

Dentro de una red: de arriba a abajo y de izquierda a derecha

M7

S2

S1 O3

Zona de acciónZona de prueba

Barras de energía

Page 18: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Metodología de diseño de sistemas lógicos (I)

Sistemas combinacionales

Programación de una función lógica

Contacto normalmente cerrado equivale a variable negada

Contactos en serie equivalen al operador Y lógico

Contactos en paralelo equivalen al operador O lógico

B

C

A D

D A C B( )

Page 19: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Metodología de diseño de sistemas lógicos (II)

Sistemas secuenciales

Programación partiendo del diagrama de estados

Asignar una variable %Mi a cada estado

Inicialización

Transiciones entre estados

Programar las salidas como funciones lógicas que dependen de las entradas, las salidas y los estados

%M5

%M6

E

R

E%M5 %M5

S

% M6

Page 20: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

i d

Ejemplo

Vagoneta

M

A B

R

I

D A

M

B

d

i

Estados:

Page 21: Programación (1)

Automatización Industrial UC3M Dep. de Ing. de Sistemas y Automática

Programa en lenguaje de contactos

S

%M0 %M1 %M0%M2

Cambios de estado

Inicialización

%M1

%M2

%Q0.2.0

%Q0.2.1

Lógica de salida

R

S

R

%M0 %I0.1.0 %M1

%M0

S

R

%M1 %I0.1.2 %M2

%M1

S

%M2 %I0.1.1 %M0

%M2

R

I

D A

M

B

d

i

%M0

%M1

%M2

Entradas/Salidas

M %I0.1.0

A %I0.1.1

B %I0.1.2

d %Q0.2.0

i %Q0.2.1

Variables %Mi