Vous êtes sur la page 1sur 13

LE GRAFCET

ou une introduction aux Systmes Dynamiques Evnements Discrets

Cours dAutomatique, ENSEM 1re anne

B. Marx, Matre de confrences lINPL http://perso.ensem.inpl-nancy.fr/Benoit.Marx B. Marx ENSEM 1A - Grafcet 1

1 Introduction
Le Grafcet est un Systme Dynamique Evnements Discrets
Systme dynamique : dont ltat dpend des entres passes et prsentes
(en opposition aux systmes statiques)

Systme vnements discrets : ltat du systme est discret : valeur dans un ensemble fini (en marche, larrt, etc) le systme rpond des vnements ( capteur de fin de course, mise en marche, arrt durgence, etc)
(en opposition aux systmes ( tats) continus)

Exemple:
dbut arrt marche -3 tats : { larrt, initialisation, en marche} -3 vnements : {dbut, marche, arrt} -loccurrence de lvnement marche na pas le mme effet suivant ltat du systme

B. Marx

ENSEM 1A - Grafcet

1 Introduction
Initialement (1977), le Grafcet servait la description des Automates Programmables Industriels (API) aujourdhui il sert aussi leur programmation (via des logiciels comme PL7) PARTIE COMMANDE automate programmable
visualisation

Partie oprative de la PC compteurs, horloges, calculs


entres sorties

visualisation

Oprateur

entres de commande (marche, fin)

Partie commande de la PC Grafcet


informations ( fin de course) ordres (sortir vrin)

PARTIE OPERATIVE process contrler : machine, outil B. Marx ENSEM 1A - Grafcet 4

2.1 Description
Un grafcet est un graphe orient biparti dfini par G=(E,T,A,M0) des tapes (rectangles 1,2,3,4) - actives : marques par un x (4) - inactives (2,3) - initiales : actives t=0 (double rectangle, 1) des transitions (trait horizontal, (1), (2), (3)) - entre des tapes - associes des vnements et / ou variables (dbut, a, b) des arcs (trait vertical) - dune tape vers une transition - dune transition vers une tape un marquage initial - Ensemble des tapes actives t=0 (1, 4) B. Marx ENSEM 1A - Grafcet 8

1
(1) dbut

2
(2) a (3) b

2.2 Description des tapes


Un grafcet comporte un nombre fini dtapes -Une tape se trouve entre 2 transitions et : - est reprsente par un rectangle - est active ( x ) ou inactive ( ) - reprsente ltat du systme - On dfinit un vecteur dtat boolen X : Xi = 0, si ltape i est inactive (X3=0) Xi = 1, si ltape i est active (X2=1)

1
(1)

mise en marche compresseur*


dbut

2
(2)

sortir vrin
fin de course

- une tape peut tre associe une action : - laction est effectue quand ltape est active - on distingue 2 types dactions : - les actions niveau, maintenues tant que ltape est active (sortir vrin) - les actions impulsionnelles (notes avec *), effectues au dbut de lactivation (mise en marche*) B. Marx ENSEM 1A - Grafcet

voyant allum

11

2.2 Description des tapes


On dcrit frquemment lvolution dun grafcet par des chronogrammes : dbut t fin de course t compresseur t sortir vrin (ou X2) t X3 t B. Marx ENSEM 1A - Grafcet action conditionnelle : le voyant est allum si 3 est active ET X10=1 12 (2) (1)

mise en marche compresseur*


n dbut

sortir vrin
fin de course

(voyant allum) . X10

2.3 Description des transitions


Un grafcet comporte un nombre fini de transitions -Une transition se trouve entre 2 tapes et : - est reprsente par un trait horizontal - est valide si ltape amont est active - reprsente les possibilits dvolution du systme - Aux transitions sont associes des rceptivits, notes Ri , dpendant: - de variables internes (X3) ou externes (arrt) - dvnements internes (pX5) ou externes (ndbut) - de combinaisons des 2 -SI (une transition est valide) ET (sa rceptivit est vraie) => ALORS la transition est franchissable Ici 2 est active, ds que fin de course =1, (2) est franchissable 15

1
(1)

mise en marche compresseur*


n dbut

2
(2)

sortir vrin
fin de course

(voyant allum). X10

B. Marx

ENSEM 1A - Grafcet

2.4 Description des arcs


Un grafcet comporte un nombre fini darcs -Un arc est reprsent par : - un trait vertical de haut en bas - une flche sil va de bas en haut

1
(1)

mise en marche compresseur*


n dbut

-Un arc est orient : - dune tape vers une transition (de 1 vers (1)) - dune transition vers une tape (de (1) vers 2) - dune tape vers plusieurs transitions

2
(2)

sortir vrin
fin de course

- Possibilits de convergences / divergences : - en OU pour modliser les choix - en ET pour modliser la simultanit

rentrer vrin
vrin rentr

B. Marx

ENSEM 1A - Grafcet

18

2.5 Description du marquage


Le marquage initial : ensemble fini non vide dtapes actives linstant initial, reprsentes par des doubles rectangles (1). (1) De manire gnrale, un instant t, le marquage : - est lensemble des tapes actives ( x ) - dcrit ltat dans lequel se trouve le systme dbut t fin de course X2 X3 B. Marx t t vrin rentr t ENSEM 1A - Grafcet 20

mise en marche compresseur*


n dbut

2
(2)

sortir vrin
fin de course

3
(3)

charger bac
poids max

rentrer vrin

2 Description dun grafcet


Pour rsumer un API G=(E,T,A,M0) peut se reprsenter par : vnements dbut fin de course vrin rentr actions compresseur en marche sortir vrin rentrer vrin

A.P.I. (X)

Reste dtailler lvolution (c--d les actions) au cours du temps dun grafcet en rponse des vnements o besoin de rgles dvolution dterministes

B. Marx

ENSEM 1A - Grafcet

21

3.1 Rgles dvolution


Rappel transition franchissable : (tape(s) amont active(s)) ET (rceptivit vraie) Rgles de franchissement : toute transition franchissable est immdiatement franchie plusieurs transitions franchissables sont simultanment franchies Une tape devant tre simultanment active et dsactive reste active Effets dun franchissement : toutes les tapes amont sont dsactives toutes les tapes aval sont actives

12
a

22
a

13

23

quand a = 1

12
a

22
a

13

23
23

B. Marx

ENSEM 1A - Grafcet

3.2 Divergence en OU
Pour reprsenter un choix

1
a b

1
a b

1
a b./a

3
quand a = 1

3
si a = b = 1 en mme temps

3
si a = b = 1 en mme temps

1
a b

1
a b

1
a b./a

Conflit si ressource commune B. Marx ENSEM 1A - Grafcet

Exclusion et priorit ltape 2 27

3.2 Divergence / convergence en OU


Pour reprsenter un choix

2
a

3
b

1
a /a

1
a

n init

4
quand a = 1

2 3
b

2 3
/b

Transition source

2
a

3
b /fin

3
a

4
fin transition puits

B. Marx

ENSEM 1A - Grafcet

30

3.3 Divergence / convergence en ET


Pour reprsenter la simultanit

2 4

3
a

2 4

3
a

3
a

4
quand a = 1

toutes les tapes amont sont actives

quand a = 1

quand a = 1

2 4

3
a

2 4

3
a

3
a

toutes les tapes aval sont actives

rien : toutes les tapes amont ne sont pas actives B. Marx ENSEM 1A - Grafcet 33

3.3 Divergence / convergence


Retour sur la gestion du conflit : - on avait propos une exclusion, avec priorit a - on peut aussi autoriser les 2 (suivant le CdC) divergence en OU pour les choix

1
a b./a a./b

1
a.b b./a

divergence en ET pour la simultanit

B. Marx

ENSEM 1A - Grafcet

35

3.4 Franchissement itr


Il peut y avoir plusieurs franchissements provoqus par loccurrence dun vnement : on parle de franchissement itr a

t t t 2 est une tape instable 3 est stable loccurrence de a 36

1
(1)

2
(2)

loccurrence de a : n a - la transition (1) est franchie - ds que 2 est active, (2) est franchie b - ltape 3 est alors active

b X1 X2 X3

t t

B. Marx

ENSEM 1A - Grafcet

3.4 Franchissement itr


Rappel rgle dvolution : une tape simultanment active et dsactive reste active Que se passe t-il pour les entres suivantes ? a b t t

1
(1) (n a).b

Premier front de a: (1) valide et franchie, 1 dsactive et active 2 active (2) non valide

X1 t X2 X3 t t 38

2
(2) na

3
(3) B. Marx na ENSEM 1A - Grafcet

3.4 Franchissement itr


Rappel rgle dvolution : une tape simultanment active et dsactive reste active Que se passe t-il pour les entres suivantes ? a b t t

1
(1) (n a).b

2
(2) na

Deuxime front de a: (1) valide et franchie, o 1 dsactive et active o 2 active (2) valide et franchie o 2 dsactive o 3 active

X1 t X2 X3 t t 39

3
(3) B. Marx na ENSEM 1A - Grafcet

3.4 Franchissement itr


Rappel rgle dvolution : une tape simultanment active et dsactive reste active Que se passe t-il pour les entres suivantes ? a b t t

1
(1) (n a).b

2
(2) na

3
(3) B. Marx na

Troisime front de a: (1) non valide o 1 inchange (active) (2) valide et franchie o 2 dsactive o 3 active (3) valide et franchie o 3 dsactive o 1 active

X1 t X2 X3 t t 40

ENSEM 1A - Grafcet

3.5 prise en compte du temps


Pour prendre en compte la dure dune action on utilise des temporisations dans les Ri. o on dfinit le boolen temp=t1 / X14 / t2 vrai t1 aprs le front montant de X14 faux t2 aprs le front descendant de X14 X14 t1 t2 t t1 / X14 / t2 t On veut faire fonctionner le moteur 12min

1
(1) n dbut

dbut t
moteur en marche

2
(2)

X2 X3

12 min t t

12min / X2

3
B. Marx ENSEM 1A - Grafcet

42

4.1 Macrotape
Une macrotape est une partie de grafcet dtaille ailleurs: elle a une seule tape dentre elle a une seule tape de sortie

4
(1) na

30a E 30
c /c

4
(1)
M30

c na

2
2s /X2

2
2s /X2

3
d

(2)

3
d

30b
(2) b

S 30

6
44

B. Marx

ENSEM 1A - Grafcet

4.2 Macroaction forcer


Macroaction impulsionnelle : mettre un autre grafcet (G2) dans un tat donn (12)

4
(1) na

11
c forcer G2 : {12} b

4
na

n X5

11
c

n X5

5
(2)

12
a

5
b

12
a

6
G1 B. Marx G2

13
/c

6
G1 G2

13

n X5

ENSEM 1A - Grafcet

46

4.3 Macroaction forage


Macroaction niveau : maintenir un autre grafcet (G2) dans un tat donn {12}

4
(1) na

11
c forage G2 : {12} b

4
na X5

11
c

X5

5
(2)

12
a

5
b

12
a./X5

6
G1 B. Marx G2

13
/c

6
G1 G2

13
/c

X5

ENSEM 1A - Grafcet

48

4.4 Macroaction figeage


Macroaction niveau : bloquer un autre grafcet (G2)

4
(1) na

11
c figeage G2 b

4
na

11
c./X5

5
(2)

12
a

5
b

12
a./X5

6
G1 B. Marx G2

13
/c

6
G1 G2

13
(/c).(/X5)

ENSEM 1A - Grafcet

50

4.5 Macroaction masquage


Macroaction niveau : Empcher lexcution dune action dun autre grafcet (G2)

4
(1)

11
na masquage G2 : {12} b c

4
na

11
c

5
(2)

12
a

5
b

12
a

A si (/X5)

6
G1 B. Marx G2

13
/c

6
G1

13
/c G2 52

ENSEM 1A - Grafcet

5 Rfrences
Quelques rfrences bibliographiques : R. David, H. Alla, Du grafcet aux rseaux de Petri, ed. Herms, 1992 (2nde dition). J.F. Aubry, Systmes Evnements Discrets : le diagramme squentiel fonctionnel ou grafcet, support de cours ENSEM 1A, 2007. AFCET, Normalisation de la reprsentation du cahier des charges dun automate logique, rapport final de la commission AFCET, 1977. CEI Commission Electrotechnique Internationale, Etablissement des diagrammes fonctionnels pour systmes de commande, publication n 848, 1988.

B. Marx

ENSEM 1A - Grafcet

53