Está en la página 1de 27

GRAFCET

Vctor M. Gonzlez (Enero 2004)

POR QU GRAFCET?
AUTOMATISMOS SECUENCIALES

MTODO
PIEDRA
NO COMPLETO
SI INTUITIVO

Vctor M. Gonzlez (Enero 2004)

GRAFCET

SI COMPLETO
SI INTUITIVO

MTODO
HUFFMAN
SI COMPLETO
NO INTUITIVO

INTRODUCCIN
1977

La AFCET (Association Franaise pour la Cyberntique Economique et


Technique)
define GRAFCET = GRAfico Funcional de Etapa-Transcin

1988

IEC-848. Preparation of function charts for control systems.

1993

IEC-61131-3. Sequential Function Chart (SFC).

GRAFCET = Lenguaje Grfico

de Descripcin de Modelos de Automatismos Secuenciales


Independiente de la Tecnologa de las Partes de Mando y Operativa
GRAFCET NO ES un Lenguaje de Programacin
Vctor M. Gonzlez (Enero 2004)

ELEMENTOS GRFICOS DE BASE

ETAPAS NORMALES

ETAPAS INICIALES
LNEAS DE EVOLUCIN

PULSADOR

SUBIR

TRANSICIONES
ARRIBA

ACCIONES
RECEPTIVIDADES

BAJAR
ABAJO

Vctor M. Gonzlez (Enero 2004)

SINTAXIS DE GRAFCET

ETAPA
TAPA--TRANSICIN
RANSICIN--ETAPA

GRAFCET SIEMPRE GLOBALMENTE CERRADO

ETAPAS NUMERADAS
EL NMERO NO IMPLICA ORDEN

Vctor M. Gonzlez (Enero 2004)

ETAPAS ACTIVAS

REGLAS DE EVOLUCIN DE GRAFCET


INICIALIZACIN

EN LA INICIALIZACIN DEL SISTEMA


SE HAN DE ACTIVAR TODAS LAS ETAPAS INICIALES
Y SLO LAS INICIALES

EVOLUCIN DE LAS TRANSICIONES


UNA TRANSICIN EST VALIDADA
CUANDO TODAS LAS ETAPAS INMEDIATAMENTE ANTERIORES A ELLA ESTN ACTIVAS.
UNA TRANSICIN ES FRANQUEABLE
CUANDO EST VALIDADA Y SU RECEPTIVIDAD ASOCIADA ES CIERTA.
TODA TRANSICIN FRANQUEABLE
DEBE SER OBLIGATORIAMENTE E INMEDIATAMENTE FRANQUEADA.

T. VALIDADA
Vctor M. Gonzlez (Enero 2004)

T. FRANQUEABLE

T. FRANQUEADA

REGLAS DE EVOLUCIN DE GRAFCET II


EVOLUCIN DE LAS ETAPAS ACTIVAS
AL FRANQUEAR UNA TRANSICIN

SIMULTANEIDAD EN EL FRANQUEAMIENTO
DE LAS TRANSICIONES

SE DEBEN ACTIVAR

TODAS LAS ETAPAS INMEDIATAMENTE POSTERIORES


Y DESACTIVAR SIMULATNEAMENTE

LAS TRANSICIONES SIMULATNEAMENTE FRANQEUABLES


HAN DE SER SIMULATNEAMENTE FRANQEUADAS

TODAS LAS INMEDIATAMENTE ANTERIORES.

PRIORIDAD DE LA ACTIVACIN
SI AL EVOLUCIONAR UN GRAFCET,
UNA ETAPA HA DE SER ACTIVADA Y DESACTIVADA AL MISMO TIEMPO,
DEBE PERMANECER ACTIVADA

Vctor M. Gonzlez (Enero 2004)

ESTRUCTURAS BSICAS DE GRAFCET

SECUENCIA
LINEAL

SECUENCIA
ALTERNATIVA

SECUENCIA
PARALELA

OJO! CON LA SINTAXIS


Vctor M. Gonzlez (Enero 2004)

SALTO

MACRO
ACRO--ETAPAS
CORRECTO

INCORRECTO

M2

Vctor M. Gonzlez (Enero 2004)

MACRO
ACRO--ACCIONES O SUBRUTINAS

Vctor M. Gonzlez (Enero 2004)

TIPOS DE ACCIONES
CONDICIONADA

RETARDADA

IMPULSIONAL
3

Pulso

X1

X2

Ter.

Cer.

X3
Pulso
0.5s.

Cal.

t? t=Ciclo Scan PLC

MEMORIZADA
NO ALMACENADA

LIMITADA

X6
X8
XBR

X4
Acti.

Vctor M. Gonzlez (Enero 2004)

X3
Sir.

2s.

Ejemplo
ARRIBA - FC_ARRIBA - I0.1.5

P_INI - I0.1.1
PULSADOR DE
MARCHA
Una vez pulsado "MARCHA" el
elemento sube hasta "ARRIBA", baja
automticamente y se para "ABAJO".

SUBIR - KMS - Q0.1.1


BAJAR - KMB - Q0.1.2
ABAJO - FC_ABAJO - I0.1.7

AMPLIACIONES:
Qu hacer si el elemento no se encuentra inicialmente abajo?
Qu hacer si durante la maniobra se vuelve a pulsar "MARCHA"?
Qu hacer si se tarda demasiado en la maniobra de subida o de bajada?
Qu hacer si los dos fines de carrera estn activos simultneamente?
Cmo indicar cualquier posible fallo, aceptarlo y rearmar la instalacin?
Conviene considerar alguna temporizacin para que KMS y KMB no estn activos simultneamente?
Vctor M. Gonzlez (Enero 2004)

KMS

KMB

%I0.1. 0
FC_ARRIBA

FC_ABAJO

13

13

13

14

14

14

KMS

A1

A1

A2

A2

N
2

KMS

KMB

Vctor M. Gonzlez (Enero 2004)

FC_ABAJO

PLC
%Q0.1. 0

KMB

FC_ARRIBA

FC_ARRIBA
P_INI

P_INI

KMS

KMB

NIVELES DE REPRESENTACIN DE GRAFCET


NIVEL I

NIVEL II

NIVEL III

0
MARCHA
SUBIR

P_INI

ARRIBA
BAJAR

ABAJO

ALTO NIVEL
Vctor M. Gonzlez (Enero 2004)

KMS

I0.1.1

FC_ARRIBA

KMB
FC_ABAJO

NIVEL DE PROCESO

Q0.1.1
I0.1.5

Q0.1.2
I0.1.7

NIVEL DE CONTROLADOR

Ejemplo con CoDeSys: SFC con "IEC steps"

Vctor M. Gonzlez (Enero 2004)

Ejemplo con CoDeSys: SFC

Vctor M. Gonzlez (Enero 2004)

Ejemplo con CoDeSys: LD

Vctor M. Gonzlez (Enero 2004)

Ejemplo con CoDeSys: ST

Vctor M. Gonzlez (Enero 2004)

Ejemplo con PL7

Vctor M. Gonzlez (Enero 2004)

Ejemplo con PL7

Vctor M. Gonzlez (Enero 2004)

Ejemplo con PL7

Vctor M. Gonzlez (Enero 2004)

Ejemplo con UNITY: Configuracin

Vctor M. Gonzlez (Enero 2004)

Ejemplo con UNITY: SFC (Grafcet


(Grafcet))

Vctor M. Gonzlez (Enero 2004)

Ejemplo con UNITY: LD

Vctor M. Gonzlez (Enero 2004)

Ejemplo con UNITY: ST

Vctor M. Gonzlez (Enero 2004)

Ejemplo con UNITY: ST

Vctor M. Gonzlez (Enero 2004)

Ejemplo con UNITY: Comparativa de lenguajes


1
2
3
SUBIR := (MARCHA OR SUBIR) AND NOT FC_ARRIBA AND NOT BAJAR;
BAJAR := (FC_ARRIBA OR BAJAR) AND NOT FC_ABAJO AND NOT SUBIR;
IF MARCHA AND NOT BAJAR THEN
SET(SUBIR);
END_IF;

IF FC_ARRIBA THEN
RESET(SUBIR);
SET(BAJAR);
END_IF;
IF FC_ABAJO THEN
RESET(BAJAR);
END_IF;
Vctor M. Gonzlez (Enero 2004)

27

También podría gustarte