Transcript Le GRAFCET

Le GRAFCET (suite)
X
5
M3
6
C
M4
D
7
M5
E
GRAFCET
Quelques
remarques
générales
Remarque 1 : événements
Le modèle GRAFCET exclut formellement la simultanéité
d’occurrence de 2 événements externes non corrélés. (/a ou
/b)
Le modèle GRAFCET impose la simultanéité d’occurrence de
plusieurs événements internes. (/a./b)
Remarque 2 : action
maintenue ou mémorisée
10
10
….
11
/s
KM …..
11
…..
12
/s
KM …..
12
…..
13
/s
KM …..
13
…..
14
…..
14
…..
15
/s
KM
Remarque 2 : action
maintenue ou mémorisée
10
….
…..
11
/s
KM=1
…..
10
….
11
…..
…..
100
12
…..
13
/s
KM = 0 …..
14
12
13
14
…..
…..
X11
/s
KM=1
101
X13
Remarque 2 : action
maintenue ou mémorisée
10
….
11
…..
…..
100
12
13
14
…..
…..
X11
/s
KM=1
101
X13
Les structures de
base dans un
GRAFCET
Les séquences exclusives
2
M1
X
3
Y
V2+
6
v21
4
V1+
v11
V3+
7
v31
5
Appelés aussi
« aiguillages »
X et Y sont mutuellement
exclusifs.
V4+
C1
H1
v41
V2-
8
v20
V1-
G1 D1
c1
a1
v10
9
V3-
C2
V4-
c2
G2 D2
H2
a2
d
8
Le saut d’étapes
2
Variante d’un « aiguillage »
M1
X
Y
3
V1+
v11
4
X et Y sont mutuellement
exclusifs.
V4+
v41
5
V1v10
6
V4v40
7
M1
9
La reprise de séquence
2
Variante d’un « aiguillage »
M1
z
3
V1+
v11
4
v40.X et v40.Y sont
mutuellement exclusifs.
V4+
v41
5
V1v10
6
v40.X
V4v40.Y
7
M1
10
Les séquences simultanées
2
M1
Une seule condition de
démarrage.
z
3
V1+
7
v11
4
v31
V2+
8
v21
5
V3+
V4+
v41
V1-
9
m
V3V1
V2
v10
6
h1
h2
b1
b2
V2W1
v20.v30
10
W2
V411
Les séquences simultanées
5
V1-
10
v10
6
V3-
Cas avec actionneurs ou
préactionneurs électriques
v30
11
att
V2-
Ajout d’étapes d’attente
v20
7
att
Transition toujours vraie
=1
12
V4-
12
Programmation
d’un GRAFCET
dans un API
(traduction en LADDER)
Conversion du GRAFCET au
LADDER
La majorité des automates se programment en
LADDER.
¤ Les électriciens connaissent très bien ce langage.
Rares sont les automates se programmant en
GRAFCET.
¤ Automates européens.
¤ Norme IEC 1131.3
14
Méthodes
Etape : bascule à arrêt prioritaire
Etape : bascule à marche prioritaire
Etape : utilisation de SET et RESET de l’API
Etape & Transition séparément
15
Conversion du GRAFCET au
LADDER
La mise en équation sera introduite avec la
séquence suivante:
n-1
R1
n
R2
n+1
16
Bascule avec priorité à la
désactivation
Chaque étape du GRAFCET peut être représenté
par l’équation suivante:
Xn = (Xn-1 R1 + Xn) Xn+1
n-1
Diagramme en échelle (Ladder)
R1
X n-1
R1
n
X n+1
R2
Xn
Xn
n+1
Priorité à la désactivation
Verrouillage
17
Bascule avec priorité à l’activation
Chaque étape du GRAFCET peut être représenté
par l’équation suivante:
Xn = Xn-1 R1 + Xn Xn+1
Diagramme en échelle (Ladder)
n-1
X n-1
R1
R1
n
Xn
Xn
X n-1
R2
n+1
Verrouillage
Priorité à l'activation
18
Bug majeur de ces approches
Un automate est une machine séquentielle.
DEUX ÉTAPES SUCCESSIVES À 1
EN MÊME TEMPS !!!
=1
X 2   X1 R1  X 2 X 3 =0
=0
X 3   X 2  R2  X 3 X 4 =1
1ère scrutation :
X2 = 1
X3 = 0
2ème scrutation :
(R2 = 1)
X2 = 1
X3 = 1
3ème scrutation :
X2 = 0
X3 = 1
19
Solution très simple
Programmation des
transitions séparément
Y 001  X 1 R1
=0
Y 002  X 2  R 2 =1
1ère scrutation :
X2 = 1
X3 = 0
2ème scrutation :
(R2 = 1  Y002=1)
X2 = 0
X3 = 1
...


X3Y002 X3Y003
X2 Y001 X2Y002
=1
=0
=0
=1
20
Exemple d’applications du
GRAFCET
Plateau tournant
Fonctionnement souhaité:
¤ poussée sur bouton m;
¤ déverrouillage de W;
¤ avance du vérin V, avec
rotation du plateau;
¤ verrouillage de W;
¤ retrait de V, le plateau
restant immobile.
22
Plateau tournant
GRAFCET de niveau PO :
1
Machine en référence
Départ de cycle
2
Déverrouiller le plateau
Plateau déverrouillé
3
Tourner le plateau d'un
huitième de tour
Rotation complétée
4
Reverrouiller le plateau
Plateau verrouillé
5
Réarmer le système de
rotation
Réarmement complété
23
Plateau tournant
Choix technologiques :
¤ Capteurs:
Bouton départ
:
 Détecteur déverrouillage :
 Détecteur rotation complétée :

m;
a;
b;
¤ Actionneurs:
Vérin déverrouillage :
 Vérin de rotation :
 Voyant machine prête :

W;
V;
Ready.
24
Plateau tournant
GRAFCET niveau PC :
1
Machine en référence
1
m./a./b
Départ de cycle
2
Déverrouiller le plateau
2
Tourner le plateau d'un
huitième de tour
3
Rotation complétée
4
Reverrouiller le plateau
Réarmer le système de
rotation
Réarmement complété
W
V
b
4
Plateau verrouillé
5
W
a
Plateau déverrouillé
3
Ready
V
/a
5
/b
25
Plateau tournant
Transitions:
Y1X1ma b
Y2 X2a
Y3 X3b
Y4 X4a
Y5 X5b
Étapes:
X1Y5 X1Y1Init
X2Y1 X2Y2
X3Y2 X3Y3
X4Y3 X4Y4
X5Y4 X5Y5
1
Ready
m./a./b
2
W
a
3
W
V
b
4
V
/a
5
/b
26
Plateau tournant
Actions:
Ready X1
1
Ready
m./a./b
2
W  X2 X3
W
a
3
V  X3 X4
W
V
b
4
V
/a
5
/b
27
Exemples : OU-D
6
1
Y1  X 1  m
Y2 a  X 2  X
m
2
M1
X
3
Y2b  X 2  Y
X 2  Y1  X 2 Y2 a  Y2b   X 1  m  X 2  Y2 a  Y2b
Y
V2+
6
V1+
Exemples : OU-C
5
V2-
8
v20
V1+
Y5  X 5  v20
v10
9
V3v40.v30
10
M1
Y8  X 8  v10
V4-
Y9  X 9  v40  v30
X 9  Y5  Y8  X 9 Y9 
Exemples : ET-D
6
1
Y1  X 1  m
m
2
Y2  X 2  X
M1
X 2  Y1  X 2 Y2 
X
3
V2+
6
V1+
Exemples : ET-C
5
V2-
8
V1+
Y5 8  X 5  X 8  v10  v20
v10.v20
9
V3-
X 9  Y5 8  X 9 Y9
v40.v30
10
V4-
Y9  X 9  v40  v30
M1
Programmation
Programmation en langage structuré (ST)
Programmation en liste d ’instruction (IL)
Programmation en langage ladder (LD)
Programmation en langage séquentiel (G7)
Programmation en bloques fonction (FB)
Suite
32
Programmation en langage
structuré (ST)












!
%L11:(*Etape 1 activation désactivation*)
%M1:=%M15 OR %M1 AND NOT %M11 OR %I1.3;
%M11:=%M1 AND %I1.0 AND NOT %I1.1 AND NOT %I1.2;
!
%L12:(*Etape 2 activation désactivation*)
%M2:=%M11 OR %M2 AND NOT %M12;
%M12:=%M2 AND %I1.1;
!
%L13:(*Etape 3 activation désactivation*)
%M3:=%M12 OR %M3 AND NOT %M13;
%M13:=%M3 AND %I1.2;
33
Programmation en langage
structuré (ST)












Retour
!
%L14:(*Etape 4 activation désactivation*)
%M4:=%M13 OR %M4 AND NOT %M14;
%M14:=%M4 AND NOT %I1.1;
!
%L15:(*Etape 5 activation désactivation*)
%M5:=%M14 OR %M5 AND NOT %M15;
%M15:=%M5 AND NOT %I1.2;
!
%L20:(*Sorties*)
%Q2.0:=%M2 OR %M3;
%Q2.1:=%M3 OR %M4;
34
Programmation en liste
d ’instruction (IL)
 !
 (*Etape 1 activation desactivation*)
 %L11:

LD
%M15

OR( %M1

ANDN %M11

)

OR %I1.3

ST
%M1

LD
%M1

AND %I1.0

ANDN %I1.1

ANDN %I1.2

ST
%M11
35
Programmation en liste
d ’instruction (IL)
 !
 (*Etape 2 activation desactivation*)
 %L12:

LD
%M11

OR( %M2

ANDN %M12

)

ST
%M2

LD
%M2

AND %I1.1

ST
%M12
36
Programmation en liste
d ’instruction (IL)
 !
 (*Etape 3 activation desactivation*)
 %L13:

LD
%M12

OR( %M3

ANDN %M13

)

ST
%M3

LD
%M3

AND %I1.2

ST
%M13
37
Programmation en liste
d ’instruction (IL)
 !
 (*Etape 4 activation desactivation*)
 %L14:

LD
%M13

OR( %M4

ANDN %M14

)

ST
%M4

LD
%M4

ANDN %I1.1

ST
%M14
38
Programmation en liste
d ’instruction (IL)
 !
 (*Etape 5 activation desactivation*)
 %L15:

LD
%M14

OR( %M5

ANDN %M15

)

ST
%M5

LD
%M5

ANDN %I1.2

ST
%M15
39
Programmation en liste
d ’instruction (IL)
 !
 (*Sorties*)

LD
%M2

OR %M3

ST
%Q2.0

LD
%M3

OR %M4

ST
%Q2.1
Retour
40
Programmation en langage ladder (LD)
41
Programmation en langage ladder (LD)
42
Programmation en langage ladder (LD)
Retour
43
Programmation en langage séquentiel (G7)
44
Programmation en langage séquentiel (G7)
Retour
45
Programmation en bloques fonction (FB)
Retour
46
Machine de fermeture de
bouchons
La machine doit fermer les bouchons en matière
plastique avant que ceux-ci soit vissés sur des
bouteilles.
47
GRAFCET de niveau PO
48
Réalisation
49
Schéma de principe
50
Distributeur simple action
Un seul signal est appliqué pour faire commuter
le distributeur.
Tant qu’il doit être actionné, le signal doit être
maintenu.
A
51
GRAFCET niveau PC
Capteurs:
- a0 : A en rétraction
- a1 : A en extension
.
.
.
- e0 : E en rétraction
- e1 : E en extension
- m : bouton de mise en marche
- P : détecteur présence du bouchon
Actionneurs:
- A: Serrage du bouchon
- B : Fermeture du bouchon
- C : Évacuation du bouchon
- D : Rabattre la languette
- E : Sélection du point d’évacuation
1
m.P.a 0.b0.c1.d0
2
A
E=1
A
D
A
B
a1.e1
3
d1
4
b1
D
T=3s
b1.T/4/3s
5
A
B
D
E=0
e0
6
C
D
a0.b0.c0
7
D
c1
8
d0
52
1
m.P.a 0.b0.c1.d0
2
A
E=1
A
D
A
B
a1.e1
3
d1
4
b1
D
T=3s
b1.T/4/3s
5
A
B
D
E=0
e0
6
C
D
a0.b0.c0
7
D
c1
8
d0
53
Capteurs:
- a0 : Vérin A en rétraction
- a1 : Vérin A en extension
.
.
.
- e0 : Vérin E en rétraction
- e1 : Vérin E en extension
- m : bouton de mise en marche
Actionneurs:
- A: Serrage du bouchon
- B : Fermeture du bouchon
- C : Évacuation du bouchon
- D : Rabattre la languette
- E : Sélection du point d’évacuation
- P : détecteur présence du
bouchon
54
Distributeur double action
Deux signaux sont appliqués pour faire
commuter le distributeur.
Un signal momentané actionne le distributeur ,
un autre signal momentané le ramène à sa
position initiale.
A+
A55
GRAFCET niveau
PO
1
A-
B-
C+
D-
m.P.a 0.b0.c1.d0
2
A+
E+
a1.e1
3
Actionneurs:
- A+: Serrage du bouchon
- A- : Desserrage du bouchon
- B+ : Fermeture du bouchon
- B- : Vérin B au repos
- C+ : Vérin C en extension
- C- : Évacuation du bouchon
- D+ : Rabattre la languette
- D- : Admission du prochain bouchon
- E+ : Sélection trappe pièce OK
- E- : Sélection trappe pièce non-OK
D+
d1
4
B+
b1
T=3s
b1.T/4/3s
5
Ee0
6
A-
B-
C-
a0.b0.c0
7
C+
c1
8
Dd0
56
Extension du
GRAFCET
Étape source / Étape puit
Transition source / Transition puit
Coordination de GRAFCETS
Les macro-étapes
La hierarchisation et Le forçage
Le figeage
Exemple
Étape source / Étape puit
Étape source
12
¤ Exige un forçage pour être activé.
Étape puit:
r12
13
¤ Exige un forçage pour être désactivé.
r13
14
r14
Retour
15
58
Transition source / Transition puit
r12
Transition source
¤ Toujours validée.
13
Transition puit:
¤ Lorsque franchie, désactive l’étape
précédente.
r13
14
r14
15
Retour
r15 59
SYNCHRONISATION ET FORCAGE
La hiérarchie est
réalisée par
GRAFCET DE SECURITE
- des personnes
- des biens
Forçage
STRUCTURE
MULTI-GRAFCETS
HIERARCHISEE
GRAFCET DE
CONDUITE (GC)
GRAFCET
ou
GRAFCET DES MODES
DE MARCHES (GMM)
DE PRODUCTION
NORMALE (GPN)
GRAFCETS DE
TACHES
Le dialogue interGRAFCET est réalisé
par
GRAFCETS DE TACHES
SPECIFIQUES
GRAFCETS ou
procédures "sous
programmes"
Synchronisation
60
Coordination de GRAFCETS
Faire plusieurs GRAFCETs : un par sous-système
Besoin de coordination.
Deux types de coordination :
- coordination horizontale
- coordination verticale
61
SYNCHRONISATION
• Étape  Variable étape Xi (X n°étape)
• Étape active Xi=1, Étape inactive Xi=0
• Xi utilisée dans les réceptivités
• Étape 3 s’active
11
3
X3
12
• X3 devient vraie
• Activation étape 12
désactivation étape 11
62
APPLICATION DE LA
SYNCHRONISATION
• Identification des Tâches
• GRAFCET de coordination des Tâches
• GRAFCET de Tâche
• Dialogue inter-GRAFCET
Cliquer ici pour voir l’exemple
63
REMARQUES SUR LA SYNCHRONISATION
• Chaque GRAFCET de tâche se terminera par une étape
sans action, qui donnera l’information Tâche terminée au
GRAFCET de coordination des tâches et le fera évolué à
l’étape suivante.
• Chaque GRAFCET de tâche se terminera par une
transition, qui vérifiera que l’information Tâche terminée
a bien été reçue par le GRAFCET de coordination de
tâches et a donc évolué à l’étape suivante.
64
Coordination horizontale
Une seule tâche à la fois
10
10
20
10
m
19
30
10
X19
29
X39
Tâche
T10
X29
39
X10
Tâche
T20
X10
Tâche
T30
65
Coordination verticale : Les tâches
Définir par un GRAFCET une séquence d’opérations.
Entrée : pas d’actions
Sortie
66
Coordination verticale
GRAFCET de conduite
esclaves
GRAFCET
10
20
11
…..
X12+X14
…..
21
12
T10
22
…..
…..
23
…..
T10
X24
24
X24
13
14
Retour
…..
/X12+/X14
67
Les macro-étapes
Expansion d’étape
Une fois activée, elle assure
le début de l’évolution de
l’expansion. On peut lui
associer une action.
MV a
E30
10
a
r10
30
Elle termine l’évolution de
l’expansion. On ne doit pas
lui associer une action.
B+
31
M11
50
=1
b
12
S50
68
GRAFCET de niveau PO de la
machine à remplir et à boucher
a+
E3
1
11
b+
S3
4
d+
21
g1
c-
31
c0
S4
g+
E5
c1
a0
b1
3
a-
c+
E4
a1.b0
dcy
2
b-
e+
e1
32
e-
5
e0
=1
33
gg0
34
e+
f+
e1
35
ee0
Retour
S5
69
HIERARCHISATION
GRAFCET
Niveau n
GRAFCET
Niveau n-1
GRAFCET
Niveau n-1
GRAFCET
Niveau n-2
C’est donner un pouvoir
supérieur à certain
GRAFCET (GRAFCET
maître), par rapport à
d'autres GRAFCET
(GRAFCET esclaves)
L’instruction GRAFCET
est le
Forçage
70
Le forcage
F/nom du GRAFCET : (Situation)
F/G2:(21)
5
20
a
x
6
21
y
GRAFCET de
niveau supérieur G1
22
GRAFCET forcé G2
71
DEFINITION DU FORCAGE
• Le forçage est l'instruction GRAFCET
qui permet d'intervenir directement sur
l'état d'une ou des étapes d’un autre
GRAFCET
• Syntaxe :
Toutes les étapes du graphe indiqué sont
rendues inactives ET les étapes dont les
numéros suivent sont rendues actives.
72
FORCAGE
GRAFCET
Maître
GRAFCET
esclave
• Étape 3 s’active
• Étape 15 se désactive
11
3
1s1
F/Gesclave:(11)
• Étape 11 s’active
12
15
1s0
73
REGLES DU FORCAGE
 Le forçage est un ordre interne, consécutif à
une évolution
 Les GRAFCET forcés prendront
Règle 1
immédiatement et directement la ou les
situations imposées
 Le forçage est prioritaire par rapport à
toute activité du modèle (évolution, affectation
des sorties, ...)
Règle 2  Les GRAFCET forcés sont maintenus dans la
situation imposée tant que les ordres de
forçage sont valides
74
EXEMPLES DE SYNTAXES DE FORCAGES
Toutes les étapes du graphe GT1 sont immédiatement
F/GT1:(10,15) désactivées et les étapes 10 et 15 sont activées
F/GAUX:( )
F/GN:(*)
F/GP:(Init)
Retour
Toutes les étapes du graphe GAUX sont
immédiatement désactivées
Le GRAFCET GN est bloqué dans son évolution
(figeage)
Le GRAFCET GP est remis dans sa situation initiale
(étape initiale activée)
75
Le figeage
F/nom du GRAFCET : (*)
F/G2:(*)
5
20
a
x
6
21
y
GRAFCET de
niveau supérieur G1
22
GRAFCET forcé G2
76
Le figeage
L’ordre de figeage entraîne :
- le maintien à l’état actif des étapes actives,
ET
- le maintien à l’état inactif des étapes inactives.
Retour
77
Initialisation (Bit %S21)
Rôle
L'initialisation du Grafcet s'effectue par le bit système %S21.
Normalement à l'état 0, la mise à l'état 1 de %S21 provoque : la désactivation des étapes
actives, l'activation des étapes initiales.
Initialisation du Grafcet
Le tableau suivant donne les différentes possibilités de mise à 1 et à 0 du bit système %S21.
Mis à l'état 1
Remis à l'état 0
Par mise à l'état 1 de %S0
Par le système au début du traitement
Par le programme utilisateur
Par le programme utilisateur
Par le terminal (en mise au point
Par le terminal (en mise au point ou
ou table d'animation)
table d'animation)
Règle d'utilisation
Lorsqu'il est géré par le programme utilisateur, %S21 doit être positionné à 0 ou 1 dans le
traitement préliminaire.
78
Désactivation des étapes actives
(Bit %S22)
Rôle
La remise à 0 du Grafcet s'effectue par le bit système %S22.Normalement à l'état 0, la mise à
l'état 1 de %S22 provoque la désactivation des étapes actives de l'ensemble du traitement
séquentiel.
Note : La fonction RESET_XIT permet de réintialiser par programme les temps d'activation
de toutes les étapes du traitement séquentiel .
Remise à zéro du Grafcet
Le tableau suivant donne les différentes possibilités de mise à 1 et à 0 du bit système %S22.
Mis à l'état 1
Remis à l'état 0
Par le programme utilisateur
Par le système à la fin du traitement
Par le terminal (en mise au point ou
séquentiel
table d'animation)
Règle d'utilisation
ce bit doit être écrit à 1 dans le traitement préliminaire, la remise à 0 de %S22 est géré par le
système; il est donc inutile de le remettre à 0 par programme ou par le terminal. Pour
redémarrer le traitement séquentiel dans une situation donnée, vous devez prévoir selon
l'application une procédure d'initialisation ou de pré positionnement du Grafcet.
79
Le figeage (Bit %S23)
Rôle
Le figeage du Grafcet s'effectue par le bit système %S23.Normalement à l'état 0, la mise à l'état 1
de %S23 provoque le maintien en l'état des Grafcet.
Quelle que soit la valeur des réceptivités aval aux étapes actives, les Grafcet n'évoluent pas. Le
gel est maintenu tant que le bit %S23 est à 1.
Figeage du Grafcet.
Le tableau suivant donne les différentes possibilités de mise à 1 et à 0 du bit système %S23.
Mis à l'état 1
Remis à l'état 0
Par le programme utilisateur Par le programme utilisateur
Par le terminal (en mise au point
Par le terminal (en mise au point ou table
ou table d'animation)
d'animation)
Règle d'utilisation
Géré par le programme utilisateur, ce bit doit être positionné à 1 ou 0 dans le traitement
préliminaire.
Le bit %S23 associé aux bits %S21 et %S22 permet de réaliser un figeage du traitement
séquentiel à l'état initial ou à l'état 0.
De même le Grafcet peut être prépositionné puis figé par %S23
80
Pré positionnement
Rôle
Le prépositionnement du Grafcet peut être utilisé lors du passage d'un fonctionnement
marche normale en marche spécifique ou à l'apparition d'un incident (exemple : défaut
provoquant une marche dégradée).Cette opération intervient sur le déroulement normal du
cycle de l'application, elle doit donc être effectuée avec précaution.
Prépositionnement du Grafcet
Le positionnement peut porter sur l'ensemble ou sur une partie du traitement séquentiel : en
utilisant les instructions SET, RESET, par remise à zéro générale (%S22) puis, dans le
cycle suivant, positionnement à 1 des étapes.
Note : Dans le cas de la remise à zéro d'une étape, les actions à la désactivation de celle-ci
ne sont pas exécutées.
Exemple
Dans cet exemple la mise à 1 du bit %M20 provoque le prépositionnement des étapes %X12
à 1, des étapes %X10 et %X11 à 0.
81
Machine à remplir et à boucher
82
GRAFCET de niveau PO
1
Machine en référence
départ
2
Transférer les bouteilles
Transfert complété
3
Charger une bouteille
5
Bouteille chargée
4
Remplir une bouteille
7
Bouteille remplie
Attente
6
Poser un bouchon sur une
bouteille
Bouteille bouchée
Attente
8
Attente
=1
Chaque poste travaille en parallèle avec les autres
83
GRAFCET
de niveau PC
1
dcy.a0.c0.e0
2
b+
b1
3
a+
b-
5
a1.b0
4
c+
d+
7
c1
a-
6
g+
g1
c-
8
e+
e1
9
ee0
10
gg0
11
e+
f+
e1
12
Retour
e-
Programme TSX 57
a0.c0.e0
84