Professional Documents
Culture Documents
GRAFCET
GRAFCET
Formalisme de description et de
conception des commandes
d'automatismes
INTRODUCTION
INTRODUCTION Acronyme de Graphe Fonctionnel de
AUX
AUX Commande d'Etape-Transition
GRAFCET
GRAFCET Cr en 1977 par un groupe de travail de
l'AFCET (Association Franaise pour la
Cyberntique Economique et Technique)
Normalis:
en France juin 1982 (NFC 03-190)
International Electrotechnical Commitee
1988 (IEC 848)
1993 (IEC 1131.1)
F. Anceau Inspir des Rseaux de Ptri
anceau@cnam.fr Trs utilis pour la programmation des
automatismes industriels
http://lmi17.cnam.fr/~anceau/Doc.html
F.Anceau, CNAM, 12 mai 2005, transp 1 F.Anceau, CNAM, 12 mai 2005, transp 2
1
Grafcet Grafcet
Processus
Processus Industriel
Industriel Application
Application industrielle
industrielle
F.Anceau, CNAM, 12 mai 2005, transp 3 F.Anceau, CNAM, 12 mai 2005, transp 4
2
Grafcet Grafcet
Formalisme
Formalisme tout-ou-rien
tout-ou-rien Exemple
Exemple de
de Grafcet
Grafcet
ex: 0 Attente
marche arrt d'un moteur
TRANSITION
une temprature au dessus, ou au
dessous, d'un seuil Bouton appuy
ETAPE ACTION
1 Lampe allume
TEST
Bouton relch
LIAISON
F.Anceau, CNAM, 12 mai 2005, transp 5 F.Anceau, CNAM, 12 mai 2005, transp 6
3
Grafcet Grafcet
Exemple
Exemple (1)
(1) Exemple
Exemple (2)
(2)
F.Anceau, CNAM, 12 mai 2005, transp 7 F.Anceau, CNAM, 12 mai 2005, transp 8
4
Grafcet Grafcet
Exemple
Exemple (3)
(3) Exemple
Exemple (4)
(4)
Alternance des actions et des tests
Grafcet correspondant:
Remplir une casserole d'eau
Casserole pleine?
Prendre un uf 0 5 Mettre chauffage
uf pris?
Dpart Ebulition?
Le percer (au bon bout!)
uf perc? 1 Remplir casserole 6
Mettre l'uf dans l'eau
Casserole pleine? Attendre 3mn
OK
Mettre le chauffage 2 Prendre uf 7 Couper chauffage
L'eau bout-elle?
Rien uf pris?
F.Anceau, CNAM, 12 mai 2005, transp 9 F.Anceau, CNAM, 12 mai 2005, transp 10
5
Grafcet Grafcet
Etapes
Etapes Actions
Actions
F.Anceau, CNAM, 12 mai 2005, transp 11 F.Anceau, CNAM, 12 mai 2005, transp 12
6
Grafcet Grafcet
Transitions
Transitions Rceptivits
Rceptivits
F.Anceau, CNAM, 12 mai 2005, transp 13 F.Anceau, CNAM, 12 mai 2005, transp 14
7
Grafcet Grafcet
Rgles
Rgles de
de construction
construction Rgles
Rgles de
de
d'un
d'un Grafcet
Grafcet franchissement
franchissement d'une
d'une
transition
transition
Une tape, ou une transition, peuvent
avoir plusieurs liaisons amont et L'activit franchit une transition
plusieurs liaisons aval lorsque:
Les liaisons se font TOUJOURS: TOUTES ses tapes amont sont actives
d'une (ou plusieurs) tape(s) vers une ET que sa fonction de rceptivit est
(ou plusieurs) transitions vraie
d'une transition vers une (ou plusieurs) Lors du franchissement d'une
tape(s) transition:
Il n'y a JAMAIS de liens: TOUTES ses tapes amont sont
d'tape tape dsactives
de transition transition TOUTES ses tapes aval sont actives
A un instant donn TOUTES les
transitions franchissables sont
franchies
F.Anceau, CNAM, 12 mai 2005, transp 15 F.Anceau, CNAM, 12 mai 2005, transp 16
8
Grafcet Grafcet
Dure
Dure d'activation
d'activation d'une
d'une Franchissement
Franchissement d'une
d'une
tape
tape transition
transition (1)
(1)
F.Anceau, CNAM, 12 mai 2005, transp 17 F.Anceau, CNAM, 12 mai 2005, transp 18
9
Grafcet Grafcet
Franchissement
Franchissement d'une
d'une Franchissement
Franchissement d'une
d'une
transition
transition (2)
(2) transition
transition
(cas
(cas gnral)
gnral)
v v
franchissement
impossible
v franchissement v
v v
franchissement
F.Anceau, CNAM, 12 mai 2005, transp 19 F.Anceau, CNAM, 12 mai 2005, transp 20
10
Grafcet Grafcet
Convergences
Convergences et
et Convergences
Convergences OU
OU
divergences
divergences
F.Anceau, CNAM, 12 mai 2005, transp 21 F.Anceau, CNAM, 12 mai 2005, transp 22
11
Grafcet Grafcet
Convergences
Convergences ET
ET Divergences
Divergences OU
OU
L'activit aval provient de la "fusion" des Il est souhaitable que les rceptivits des deux
activits simultanes des deux tapes amont. transitions soient mutuellement exclusives.
on note par un double trait la fusion des L'activit est aiguille dans une tape aval ou
activits. dans l'autre. ELLE N'EST PAS DUPLIQUEE.
Si elles ne sont pas mutuellement exclusives,
l'activit de l'tape amont sera "transfre"
alatoirement d'un ct ou de l'autre.
F.Anceau, CNAM, 12 mai 2005, transp 23 F.Anceau, CNAM, 12 mai 2005, transp 24
12
Grafcet Grafcet
Divergences
Divergences ET
ET Liaisons
Liaisons complexes
complexes (1)
(1)
F.Anceau, CNAM, 12 mai 2005, transp 25 F.Anceau, CNAM, 12 mai 2005, transp 26
13
Grafcet Grafcet
Liaisons
Liaisons complexes
complexes (2)
(2) Exemple
Exemple
Transformations d'actions impulsionnelles en
actions permanentes
ex:
Mettre uf
4 dans l'eau
T1 T2
E1 E2
Ebulition? 5 Chauffage
Etapes aval des transitions:
T1 possde E1 et E2 comme tapes aval 6
T2 ne possde que E2 comme tape aval
Attendre 3mn
aprs l'activation de 6
F.Anceau, CNAM, 12 mai 2005, transp 27 F.Anceau, CNAM, 12 mai 2005, transp 28
14
Grafcet Grafcet
Chien
Chien de
de garde
garde (1)
(1) Chien
Chien de
de garde
garde (1)
(1)
F.Anceau, CNAM, 12 mai 2005, transp 29 F.Anceau, CNAM, 12 mai 2005, transp 30
15
Grafcet Grafcet
Exemple
Exemple Exemple
Exemple modifi
modifi
3 Marcher v2
F.Anceau, CNAM, 12 mai 2005, transp 31 F.Anceau, CNAM, 12 mai 2005, transp 32
16
Grafcet Grafcet
Exemple
Exemple correct
correct Rceptivits
Rceptivits temporelles
temporelles
3 Marcher v2 3
F.Anceau, CNAM, 12 mai 2005, transp 33 F.Anceau, CNAM, 12 mai 2005, transp 34
17
Grafcet Grafcet
Actions
Actions temporises
temporises Actions
Actions conditionnelles
conditionnelles
Elles ne durent qu'un certain temps, Elles ne sont excutes que si l'tape
lorsque l'tape est active. est active ET la condition est vraie.
L'tape reste active une fois l'action L'tape est active mme si la condition
termine est fausse.
n n si (condition)
Action T= 5s
action
F.Anceau, CNAM, 12 mai 2005, transp 35 F.Anceau, CNAM, 12 mai 2005, transp 36
18
Grafcet Grafcet
Exemple
Exemple Attention!
Attention!
Pour viter des accidents, le dmarrage Une action continue RESTERA ACTIVEE
d'une machine demande que l'on appuie si seulement l'une des conditions d'une
pendant au moins 5 secondes sur son rceptivit complexe devient vraie.
bouton "dpart".
exemple: l'ascenseur ci-dessous a
toutes les chances de crever le plafond
si son moteur chauffe!
0
bouton appuy
1 n Moteur (monte)
bouton (t/1/5s) ET
NON bouton appuy Etage atteint
appuy ET
temprature < Tmax
F.Anceau, CNAM, 12 mai 2005, transp 37 F.Anceau, CNAM, 12 mai 2005, transp 38
19
Grafcet Grafcet
Macro-tape
Macro-tape Miveaux
Miveaux de
de Grafcet
Grafcet
17.1
17
17.2
17.3
F.Anceau, CNAM, 12 mai 2005, transp 39 F.Anceau, CNAM, 12 mai 2005, transp 40
20
Grafcet Grafcet
Niveau
Niveau 11 Niveau
Niveau 22
F.Anceau, CNAM, 12 mai 2005, transp 41 F.Anceau, CNAM, 12 mai 2005, transp 42
21
Grafcet Grafcet
Systmes
Systmes complexes
complexes Couplage
Couplage des
des Grafcet
Grafcet
Les systmes industriels complexes sont Les Grafcets peuvent tre coupls de
souvent dcomposables en sous-systmes diffrentes manires:
plus simples.
Par le processus lui-mme
Chaque sous-systme constitue un (capteurs communs plusieurs
automatisme indpendant qui peut tre
dcrit par un Grafcet particulier. sous-systmes)
Les sous-systmes sont souvent rptitifs, Par l'change de signaux boolens
ils sont donc dcrits par des Grafcets Par des transports d'activit via
reboucls. des liens entre les Grafcets
Les sous-systmes doivent tre coupls lmentaires (via des convergences
entre eux: et divergences ET)
Pour changer des produits ou des
matires. La commande des sous-systmes
Pour tenir compte d'ventuels conflits. peut tre implante sur un ou
. plusieurs automates.
F.Anceau, CNAM, 12 mai 2005, transp 43 F.Anceau, CNAM, 12 mai 2005, transp 44
22
Grafcet Grafcet
Synchronisation
Synchronisation entre
entre Rendez-vous
Rendez-vous
Grafcet
Grafcet
Le couplage entre plusieurs Grafcet signifie que Les rendez-vous sont utiliss pour mettre en
leurs droulements doit tre synchronis. rapport, par exemple: un produit et un
Les mcanismes de synchronisation sont transporteur.
toujours dlicats. Ils sont souvent la source de La ralisation d'un rendez-vous se fait en
problmes. utilisant les proprits des convergences et
Une synchronisation peut tre utilise: divergences ET.
soit pour changer des produits ou des
matires.
On parle alors de schmas de "producteurs-
consommateurs".
soit pour tenir compte de contraintes dues des
ressources uniques.
On parle alors de schmas de "mutuelle
exclusion".
soit pour raliser des "rendez-vous" entre des
organes ou des produits
processus A processus B
F.Anceau, CNAM, 12 mai 2005, transp 45 F.Anceau, CNAM, 12 mai 2005, transp 46
23
Grafcet Grafcet
Schma
Schma de
de Protocole
Protocole
producteur-
producteur- consommateur
consommateur "poigne
"poigne de
de mains"
mains"
Un tel mcanisme de synchronisation est
toujours bi-directionnel:
ex:
On change des produits dans un sens et des A B
contenants vides dans l'autre
Il se dcompose toujours en deux changes laboration
lmentaires, successifs et de sens opposs. d'un produit
attente
Chaque change lmentaire est un rendez- produit prt
vous, par exemple entre un produit ralis et un consommation
attente du produit
processus de consommation libre.
Un schma producteur-consommateur doit consommation
laboration termine
obir un schma, appel protocole. d'un nouveau
par exemple: "poigne de main" produit attente
F.Anceau, CNAM, 12 mai 2005, transp 47 F.Anceau, CNAM, 12 mai 2005, transp 48
24
Grafcet Grafcet
Echanges
Echanges lmentaires
lmentaires Exemple
Exemple
capteur arrive
dpart attente
chariot C1 plein
chariot C1 chargement
action td sec.
boolenne
Convoyeur C1 dpart
chariot C2
F.Anceau, CNAM, 12 mai 2005, transp 49 F.Anceau, CNAM, 12 mai 2005, transp 50
25
Grafcet Grafcet
Schma
Schma de
de mutuelle
mutuelle Mutuelle
Mutuelle exclusion
exclusion
exclusion
exclusion
unique.
Exemple: Une voie unique
Chaque Grafcet accde cette
ressource par une squence excute
en mutuelle exclusion. actions
mutuellement
La gestion de cette ressource se fait via exclusives
l'attribution d'un jeton qui peut tre
reprsent par une activit.
Le fonctionnement des divergences OU
non exclusives correspond
l'attribution de tels jetons
processus A processus B
F.Anceau, CNAM, 12 mai 2005, transp 51 F.Anceau, CNAM, 12 mai 2005, transp 52
26
Grafcet Grafcet
Optimisation
Optimisation des
des Transformation
Transformation
processus
processus Grafcet programme
Grafcet programme C
C
#define Actif 1
Comme tous les formalismes de #define Nactif 0
#define N <nb d'tapes>
programmation, les Grafcets permettent
plusieurs variantes et options pour int i;
l'automatisation d'un processus donn. /* Etats passs, courants et futurs des tapes*/
int EtapeP[N], Etape[N], EtapeF[N];
La mcanique, et plus prcisment les int n1,........inp; /* valeurs des entres externes*/
capteurs, sont source de pannes.
/* initialisation de l'tat des tapes inactif*/
Il existe une tendance simplifier le for(i=0;i<N;i++)
processus quitte compliquer sa EtapeP[i]=Etape[i]=EtapeF[i]=Nactif;
commande. Etape[0]=EtapeF[0]=Actif; /* Etape initiale active*/
La dcomposition en sous-processus
while(1){
de la commande d'un processus /*traitement des tapes*/
complexe permet d'amliorer sa ...............
comprhension d'ou sa maintenance. if(!EtapeP[i]&&Etape[i]){
<lancement des actions permanentes>;
<lancement des actions transitoires>;
}
...............
F.Anceau, CNAM, 12 mai 2005, transp 53 F.Anceau, CNAM, 12 mai 2005, transp 54
27
Grafcet Grafcet
Transformation
Transformation Transformation
Transformation
Grafcet programme
Grafcet programme C
C Grafcet programme
Grafcet programme C
C
/*lecture des entres*/
in1=<lecture entre 1>; Le tableau EtapeP[] mmorise les tats
............. prcdents des tapes.
inp=<lecture entre p>; EtapeP[i]Etape[i]EtapeF[i] se comportent
............. comme un registre dcalage
/*traitement des transitions*/
La dtection du dbut de l'activation des actions
................
permanentes et du lancement des actions
if(Etapes_amont(t)&&Receptivite(t)
&&EtapesF_amont(t)){ transitoires, se fait par (!EtapeP[i]&&Etape[i])
<arrt des actions des tapes amont>; Le test des EtapeF[<amont>] dans la simulation
Set_EtapesF_amont(t,Nactif); d'une transitions est pour s'assurer que celle-ci
Set_EtapesF_aval(t,Actif); n'est pas en concurrence dans une divergence
OU avec une autre transition (non exclusive) qui
} aurait dj annul l'activit (future) des mmes
................. tapes amont. Le choix alatoire est remplac
/*Changement effectif d'activation des tapes*/ par la prfrence de la premire transition
for(i=0;i<N;i++){
rencontre.
EtapeP[i]=Etape[i];
Etape[i]=EtapeF[i];
}
}
F.Anceau, CNAM, 12 mai 2005, transp 55 F.Anceau, CNAM, 12 mai 2005, transp 56
28