1. El autómata programable: ciclo de funcionamiento ...€¦ · 1 1. El autómata programable:...

35
1 1. El autómata programable: ciclo de funcionamiento, cableado y software de programación Autómata o PLC: equipo electrónico de control con hardware independiente de la aplicación (habitualmente flexible), capacidad de conexión directa a las señales de campo y programable por el usuario. bus interno entradas salidas Memoria de programa Fuente de alimentación adas das Mi d bus interno Interfaz e Interfaz CPU Memoria imagen e/s Memoria de datos entra salid Micro procesador 1 Basado en microprocesador + programa (ejecución secuencial) PROGRAMA MICRO-P grifo mano vista Nivel agua Nivel agua en vaso 2

Transcript of 1. El autómata programable: ciclo de funcionamiento ...€¦ · 1 1. El autómata programable:...

1

1. El autómata programable: ciclo de funcionamiento, cableado y software de

programaciónAutómata o PLC: equipo electrónico de control con hardware

independiente de la aplicación (habitualmente flexible), capacidad p p ( ), pde conexión directa a las señales de campo y programable por el usuario.

bus internoentra

das

salid

as

Memoria de programa

Fuente de alimentación

adas

das

Mi dbus interno

Inte

rfaz

e

Inte

rfaz

CPU Memoria imagen e/s

Memoria de datos

entra

salidMicro procesador

1

Basado en microprocesador + programa (ejecución secuencial)

PROGRAMAMICRO-P

grifo

mano

vistaNivel aguaNivel aguaen vaso

2

2

Basado en microprocesador + programa

Funcionamiento cíclico

PROGRAMA

If h < max,

Then

Grifo:=1,

Else

Grifo:=0,

MICRO-P

grifo

Ni l Grifo: 0,

endNivel aguaen vaso

3

Si t AUTÓMATAEntradas( )Sistema a

controlarAUTÓMATA

PROGRAMA

(sensores)

Salidas(actuadores)

Nivel aguaen vaso

vista

grifo

4

3

Ciclo de funcionamiento del autómata programable

tensiónComprobación hardware

Borrado de variables internas

INICIALIZACIÓN

Borrado de variables internas

Puesta a cero del “watchdog”

Comprobación conexiones y memoria

Correcto?NO

CICLO “SCAN”

5

Lectura interfaz entrada

Ejecución programa

escritura interfaz salida

Servicio periféricos

error

Conexiones

Los autómatas que tenemos tienen entradas de CC de 24 V y salidas a relé.

Salidas a relé

COM común salidas

Q0 salida ceromicro

Bobina relé

Contactosrelé

Salidas a relé•Aisladas eléctricamente•robustas•lentas

Al activarse por programa la salida cero se activa el relé y se cierran los contactos

6

4

Salidas estáticas o a colector abierto

Diodo LED( i l i t

•No sisladas éléctricamente•frágiles•rápidas

COM común salidas

Q0 salida ceromicro

transistor

(aislamiento óptico)

•rápidas

Transistorsalida

Al activarse por programa la variable salida cero se activa eltransistor y el diodo led que activa el transistor de salida y se cierraentre E0 y COM.

Sea como sea la salida, lo que tengo son dos contactos que pueden estardesconectados o conectados, a ellos conecto mis elementos (motor, bobina,robot….), yo debo proporcionar la fuente de alimentación. 7

Entradas, de corriente continua

COM común entradas

I0 entrada ceromicro

Al hacer pasar corriente entre I0 y COM se activa el diodo que activa el transistor interno y cambia el estado de la variable “entrada0” en el micro.

8

5

• Práctica 1: alimentación de entradas y salidas

COM ( )

I0

microI1I2

COM (-)

Q0

Q1Q2

24 Vcc24 Vcc

Tengo que añadir fuentes de corriente 24Vcc para activar entradas y salidas. Los autómatas disponen de fuentes que pueden usarse para ello (sólo para salidas de baja potencia)

COM (-) ( )

9

• Abrir icono CX-programmer (Omron-Cx-One)• Archivo nuevo

Software de programación

Tipo de dispositivoCP1L

10

Tipo de CPU L

6

• Autómatas CPM2, CPM2A

Tipo de dispositivoTipo de dispositivoCPM2*

11

Autómatas CPM1

Tipo de dispositivoCPM 1

Número de puntos 10, 20 30 (número de entradas y salidas)

12

entradas y salidas)

7

Para CP1L, CPM1 y CPM2 entrada 0

0.0

Para CPM1 y CPM2 010.00

13

Para CP1L 100.0Salida 0

•PLC trabajar online

•PLC transferenciaa PLC

14

8

•PLC modo de operación RUN(podemos ejecutar el programa en el autómata)

•PLC trabajar online(de nuevo, para salir de online y volver a editar)

15

¡¡ATENCIÓN!! Para poner una nueva línea de programa hay que abrirla antes

¡cuidado con la bobina negada!

16

Al encender se apaga, pero al apagar tb. se

enciende

9

2. Programación en diagrama de contactos (ladder), áreas de memoria

17

18

10

19

variables básicas autómatas OMRON

• Entradas: 0.0, 0.1, 0.2 … (para todos los PLC’s)• Salidas: 100.00, 100.01, 100.2….para CP1L

010.00, 010.01…para CPM1, CPM2 • Variables de trabajo: W0.0, W0.1….para CP1L

200.00 200.01 para CMP1 CPM2

20

11

Memoria del OMRON CPM1

• Memoria dividida en canales= conjuntos de 16 bits, los cuales están agrupados en diferentes zonas.

• Hay zonas de canales que se pueden acceder bit a bit y otras• Hay zonas de canales que se pueden acceder bit a bit y otras donde los canales se acceden sólo como canal completo. En algunas zonas es necesario poner letras para especificar la zona de memoria y luego un número que indica el canal y el bit, en otras (las más usadas) basta con el número de canal y bit.

• Ejemplo:– XXX.YY bit YY del canal XXX (000.01, 010.03…)

HRXXX YY bit YY del canal XXX de la ona IR (Internal– HRXXX.YY bit YY del canal XXX de la zona IR (Internal Relays)

– DM346 canal 346 de la zona de DM (Data Memory) que sólo se accede con canales completos.

21

Memoria del OMRON CPM1

• Áreas de memoria

• IR- Internal Relays -- bits entradas salidas y relés internos deIR Internal Relays bits entradas, salidas y relés internos de trabajo

• SR - Special Relays -- indicadores del estado del autómata, utilidades.

• HR- Holding Relays -- bits de trabajo que retienen su estado.

• TR - Temporal Relays -- diagnóstico de programas complejos

AR A ili R l l d ó• AR- Auxiliar Relays --señaladores recursos autómata.

• LR - Link Relays -- intercambio de datos entre autómatas

• TC - Temporizadores y Contadores -- gestión de temp. y cont.

• DM- Data Memory -- gestión de datos numéricos y parámetros de configuración del autómata. 22

12

OMRON CPM1

• Área IR: Internal Relays, bits de trabajo accesibles como bit o como canal (dependiendo de las instrucciones que utilicemos para acceder a ellos)utilicemos para acceder a ellos)

• bits entrada: canales 000 al 009, es decir bits:000.00, …. 000.15001.00……001.15 etc. Sólo los 8 ó 10 primeros están conectados a las entradas reales del autómata, los otros pueden usarse como bits de trabajo. (En los bits conectados a las entradas yo no puedo escribir, son reflejo de las entradas físicas del

tó t )autómata)

23

OMRON CPM1

• Área IR: Internal Relays, bit lid l 010 l 019 d i bit• bits salida: canales 010 al 019, es decir bits:010.00, …. 010.15011.00……011.15 etc. Sólo los 8 ó 10 primeros están conectados a las salidas reales del autómata, los otros pueden usarse como bits de trabajo.

• bits de trabajo: canales 200 al 231, es decir bits:200.00, …. 200.15201.00……201.15 etc.

24

13

OMRON CPM1

Área SR: Special Relayscanales 232 a 255 (o bien SR232,…)

• 253.13 bit siempre a ON• 253.14 bit siempre a OFF• 253.15 indicador de primer ciclo (FIRST SCAN)• 254.00 reloj 1 minuto (medio minuto ON medio OFF)• 255.02 reloj de 1 segundo

255 05 indicador ma or q e• 255.05 indicador mayor que• 255.06 indicador igual que• 255.07 indicador menor que

25

OMRON CPM1

• Área TC: Temporizadores y Contadores• Área que se utiliza para gestionar temporizadores y contadores. Al

asignar un temporizadores se le asigna un número que será la posición de memoria donde se almacenen sus datos en el área TC. Al compartir los temporizadores y los contadores esta área no se debe asignar el mismo número a un temporizador y a un contador.

• Se puede acceder como bit o como canal, y recibimos diferente información según cómo lo hagamosinformación según cómo lo hagamos.

26

TIM000

14

27

28

15

CP1L memoria

29

CP1L BITS ESPECIALES

30(Menú Ver símbolos global)

16

3. Automatismos combinacionales y secuenciales

31

Al pulsar M avanza

FC0 FC1

Al pulsar M avanza.Cuando llega a FC1 retrocede.Al llegar a FC0 se para y espera a que volvamos a pulsar M.

32

17

Enclavamiento de variables: biestables o memoria binaria

• ¿Cómo puedo hacer que una variable guarde memoria de lo que ha pasado en la entrada?p

I:0.00 I: 0.01 Q: 100.00

Q: 100.00

33

I: 0.00

I: 0.01

Q: 100.00

Combinacional: las salidas dependen de las variables de entrada, relaciones de algebra booleana

¿Lógica combinacional? ¿lógica secuencial?

Secuencial: las salidas dependen de las variables de entrada y del valor de las entradas en instantes anteriores. El estado del sistema guarda memoria de los cambios y se memoriza mediante variables de estado (variables internas).

Circuitoentradas salidas

Circuitoentradas salidas

34

Circuito combinacional Elementos de

almacenamiento estado anterior

estado actual

Circuito combinacional

18

Biestables electrónicos

SET x

Biestables eléctricos

SET K1

+24 Vcc

RSET

Y

K1

RSET

0 Vcc

Biestables neumáticos

35Presión

Y

SET RESET

• Biestables CX-ONE

SET B

RSET B

c.e.

c.e.

c.e. : Condición de ejecución: si está activado se ejecuta la instrucción.

B: bit de las áreas IR, SR, AR, HR, LR

Si l E á 1 B 1 d d hSi la c.e. Está a 1 B se pone a 1 y queda en ese estado hasta ser desactivado por otra función.Si c.e. Está a 1 B se pone a 0 y queda en ese estado hasta ser activado por otra función.

36

19

SET 200 02000.01

Ejemplo:

SET 200.02

000.01

RSET 200.02000.02

200.02

000.02

37

38

20

39

Biestables en Codesys

40

21

Detección de flancos

Franco ascendente

DIFU 200.02

000.01

000.01

200.02scan

41

000.01

Franco descendente

DIFD 200.02

000.01

200.02scan

42

22

43

Ejemplo: proceso de electrólisis

44

23

Automatismo secuencial

Sistema cuyo funcionamiento emplea una secuencia de fasesclaramente diferenciadas, según un conjunto de reglaspreestablecidas. El final de cada fase, determinado por una

-sube (una vez arriba)-avanza (una vez en posición)

condición de transición lógica, da paso al inicio de la fasesiguiente.

-espera en aclarado-sube

Proceso de electrolisis

45

-baja (una vez abajo)-espera desengrase-sube-avanza-baja

-avanza-baja-espera en electrolito-sube-avanza…

Jaula: -sube (una vez arriba)-avanza (una vez en posición)-baja (una vez abajo)-espera desengrase-sube

0

1

2

SUBEinicio

AVANZAarriba

-avanza-baja-espera en aclarado-sube-avanza-baja-espera en electrolito

3

4

5

BAJAPosición desengrase

abajo

ESPERAFin espera

SUBE

46

5

6arribaAVANZA

Necesito guardar memoria del proceso

24

0

1

2

SUBEinicio

AVANZAfinal carrera arriba

3

4

5

BAJAFinal carrera posición desengrase

F.C. abajoESPERA

Temporizador Fin esperaSUBE

Estos dos “avanza” no son iguales

47

5

6

F.C. arribaAVANZA

6

F.C. posición aclaradoSUBE

F.C. arriba

4. Programación en GRAFCET

•Procesos secuenciales

•Procesos complejos

•No pretende minimizar el número de variables internas sino garantizar la fiabilidad y facilidad de test

48

fiabilidad y facilidad de test y mantenimiento.

25

Elementos fundamentales del GRAFCET

•Etapas: asociadas a acciones a realizar,deben corresponder a actuaciones del sistema en las que la relación entre entradas y salidas sea puramente combinacionalentre entradas y salidas sea puramente combinacional

etapa normal, identificada con un número

etapa inicial, se activa al comenzar el proceso

4

0

49

Cada etapa tiene una variable lógica asociada XiLa etapa puede estar activa Xi=1, o inactiva Xi=0

Activación de las etapas inicialesAl ser GRAFCET secuencial tenemos que inicializar alguna etapa, si no el proceso no comienza.

En el inicio etapas iniciales Xi =1 el resto a cero

SET X0

PRIMER CICLO(FIRST SCAN)0

•Se activa la etapa inicial en el primer ciclo, cuando el autómata se pone a RUN (una forma de inicializar)

50

SET X0

X1 X2 Xn

( )

•Se activa la etapa inicial cuando todas las otras están desactivadas (otra forma de inicializar)

26

•Líneas de evolución entre etapas (por defecto hacia abajo)

•Condiciones de transición, condiciones lógicas necesarias para que finalice una etapa y se pase a la siguiente. Hay que guardar el orden etapa-transición-etapa-transición….

•Transiciones dependientes del tiempo

i+1

CTi,i+1

6

7

A+ /b + c

(A ó no-b o flaco de subida de c)

i

51

•Transiciones dependientes del tiempo

6

7

4s/x6

La condición de transición se activará al pasar cuatro segundos después de la activación de la etapa 6 (temporizador a la conexión activado en etapa6)

Reglas de evolución entre etapas GRAFCET

•En el arranque se activa la(s) etapa(s) inicial(es) y se desactivan todas las demás•Una etapa se activa cuando está activa la anterior y se cumple la condición de transición entre ellas

i

i+1

CTi,i+1

i

i+1

CTi,i+1

52

•Una etapa se desactiva cuando se cumple la condición de transición con la etapa siguiente.

•El gráfico de evolución global GRAFCET debe ser siempre cerrado.

27

Traducción a diagrama de contactos

•Una etapa se activa cuando está activa la anterior y se cumple la condición de transición entre ellas

i

CTSET Xi+1

XiCTi,i+1

•Parte secuencial del programa GRAFCET

53

i+1

CTi,i+1RSET Xi

•Acciones, asociadas a las etapas. Son la parte combinacional de GRAFCET. Las acciones se pueden asignar de varias maneras:

•Asignación directa o modo continuo (asignación al estado) La variable de salida está activa mientras el estado está activo y se desactiva cuando el estado se desactivadesactiva cuando el estado se desactiva

•Asignación en evento o modo enclavado. La variable de salida toma un valor y lo mantiene hasta que se le asigne otro valor (función

8 Motor 1 BX8 Motor1

B

54

toma un valor y lo mantiene hasta que se le asigne otro valor (función SET/RESET)

8 Motor 1:=1 SET Motor 1X8

28

•Acciones condicionadas, se ejecutan cuando se cumple una condición

8 Motor 1 X8 Motor1B B

•Acción en la activación/desactivación de una etapa. Se ejecuta al activar/desactivar una etapa

8 contador:= contador +3

55

10 contador:= contador +3

Estructura básica de un programa GRAFCET

•Inicialización: gestión de arranques, paradas, fallos, etc.

•Arranque en frío: inicialización de un proceso automático sin•Arranque en frío: inicialización de un proceso automático sin guardar memoria de ninguna situación anterior.•Arranque en caliente: inicialización de un automatismo cuando éste guarda memoria de una situación anterior.

•Parte secuencialSucesión de acciones secuenciales, etapas.

Parte combinacional (accionamientos)

56

•Parte combinacional (accionamientos), Acciones a realizar en cada etapa.

29

Estructuras GRAFCET

•Secuencia lineal: sucesión etapa-transición-etapa-transición… En un momento dado, sólo puede existir una etapa activa en una secuencia lineal.

•Convergencia y divergencia “O”: procesos excluyentes (condición “if-else”)

C

57

•Convergencia y divergencia “Y”: procesos simultaneos

Convergencia y divergencia “O”

•Se utiliza cuando existen caminos alternativos de los cuales se escogerá únicamente uno, sólo los estados de ese camino estarán activos.

CTCT8,9

9

CT9,10 CT9,20 CT9,30

10 20 30

58

19CT19,40

25

CT25,40

40CT40,41

37

CT37,41

41

30

Divergencia “O”•En ella se inician varias secuencias lineales, cada una de ellas con su propia condición de transición, situada después de la divergencia. Las condiciones de las diferentes ramas deben ser excluyentes, de forma que sólo una de ellas pueda activarse cada vez.

CT8,9

9

CT9,10 CT9,20 CT9,30

10 20 30

SET X10

RSET X9

X9CT9,10

SET X20

X9CT9,20

59

0 30

RSET X9

SET X30

RSET X9

X9CT9,30

Convergencia “O”

•Las secuencias lineales que se inician en una divergencia “O”, deben confluir en una divergenica “O”, aunque no necesariamente los caminos que se inician a la vez deben confluir a la vez.•Caminos que se inician en una divergencia “O” no pueden confluir en una confluencia “Y”.

19CT19,40

25

C25,40

4037

SET X41

RSET X

X40CT40,41

60

40CT40,41

C37,41

41

RSET X40

SET X41

RSET X37

X37CT37,41

31

Convergencia y divergencia “Y”•Se utiliza cuando necesitamos que varios procesos se realicen simultáneamente y de forma independiente

8

CT8,9

9CT9

10 20 30

61

19

CTA

25

40

CTB

37

41

Divergencia “Y”

•En ella se inician varias secuencias lineales, todas ellas con la misma condición de transición situada antes de la divergencia.

SET X10

X9CT9

9CT9

10 20 30

SET X20

SET X30

62

RSET X9

32

Convergencia “Y”•Todas las ramas deben haber acabado para que se flanquee la convergencia “Y”, por ello suelen ser necesarios estados de espera. La condición de transición situada después de la divergencia se puede omitirpuede omitir.

SET X40

X25CTA

RSET X19

RSET X25

19

CTA

25

40

X19

63

Macroetapas•Una macroetapa es un conjunto de etapas agrupadas que se representan de forma resumida . Su expansión tiene una única etapa de entrada y una única etapa de salida.

E10

a

10.1

b+/c

10.2

8

C8

9C9

M10

•La expansión de una macroetapa debe tener sólo una etapa de entrada y una etapa de salida•El flanqueo de la transición anterior (1) activa la etapa de entrada (E10)

•El flanqueo de la transición posterior

64

S10

M10

11

C11

C10d

(2) sólo se realiza si está activada la etapa de salida (S10)•El flanqueo de la transición posterior (2) desactiva la etapa de salida (S10)

33

Macroetapas

E108 SET XMX9

C9

E10

a

10.1

b+/c

10.2

8

C8

9C9

M10

C10d

(1)

(2)

SET XM10

RSET X9

XM10 XS10

SET XE10

…C10

65

S1011

C11

SET X11

RSET XS10

10 10

Macroetapas

E108•La definición inicial excluye que una

ió d ll d d dE10

a

10.1

b+/c

10.2

8

C8

9C9

M10

C10d

(1)

(2)

expansión pueda ser llamada desde dos macroetapas (usar la macroetapa como subrutina) pero se suele utilizar siempre que el programador se asegure de evitar conflictos de acceso, no dejando que dos macroetapas accedan a la vez a la misma expasión.

66

S1011

C11

34

Etapas cercadas (enclosures)•Un conjunto de etapas pueden estar “cercadas” o incluidas en una etapa.

•Las etapas cercadas por otra sólo pueden tener activas sus etapas

10

80

a

81

b+/c

82

8

C8

9C9

10

pueden tener activas sus etapas mientras esté activa la etapa “cercadora” (X10)

•Si la etapa “cercadora” está activa, al menos una de las etapas de su “cercado” debe estar activa

67

83

10

11

C11

C10

d

G1

Etapas cercadas (enclosures)•Un conjunto de etapas pueden estar “cercadas” o incluidas en una etapa.

10•Al activarse la etapa “cercadora”

80

a

81

b+/c

82

8

C8

9C9

10

•Al activarse la etapa cercadora (X10) se activa la primera etapa de su cercado (X80)

•Al desactivarse la etapa “cercadora” (X10) se desactivan

68

83

10

11

C11

C10

d

G1

todas las etapas de su cercado (X80, X81, X82, X83)

35

Etapas cercadas (enclosures)•Una etapa puede cercar varios esquemas GRAFCET

8

C80

10

10

C8

9C9

10

11C10

a

81

b+/c

82

83

d60

G269

C1183

G1

m61

/m

82

m

•Las macroetapas y los cercados pueden anidarse

8

C80

61

10

C8

9C9

10

11C10

a

81

b+/c

82

83

d

60

m61

G2

70

C1183

G1

/m

82

m