4 LeGrafcet
4 LeGrafcet
4 LeGrafcet
LE GRAFCET
4_LE GRAFCET
Page 1
Automatismes
1. Introduction :
La création d’un système automatisé nécessite un dialogue entre le client qui définit le
cahier des charges et le constructeur qui propose des solutions technologiques. Ce dialogue n’est
pas toujours aisé. En effet, le client ne possède pas toujours le vocabulaire technique permettant
de définir correctement son projet. De plus, le langage courant ne permet pas de lever toutes les
ambiguïtés (surtout si des actions doivent se réaliser simultanément). Enfin, la langue peut
constituer un obstacle supplémentaire (entre pays étrangers).
Exemple :
Bien que de nombreux fabricants d’automates programmables s’appuient sur cet outil, le Grafcet
n’est pas un langage de programmation mais un langage de spécification d’automatismes. Les
langages de programmation : SFC (« Sequential Function Chart » issu du Grafcet), LD (« Ladder »
ou schéma à contacts), ST (langage littéral structuré), FBD (« Function Block Diagram » ou schéma
par blocs), IL (liste d’instructions) sont décrits quant à eux, par la norme IEC 61131-3.
Le GRAFCET est une représentation graphique créée par l’ADEPA, Agence nationale pour le
Développement de la Production Automatisée. La norme CEI 60848 précise les définitions ainsi que
les règles à utiliser.
4_LE GRAFCET
Page 2
Automatismes
2. Règles de représentation :
Le dessin d’un grafcet suit des règles strictes qu’il convient de respecter rigoureusement
**
* Les réceptivités sont des suites de conditions logiques (ET, OU, NON etc.) appelées « équations
logiques ». Elles permettent de faire évoluer le Grafcet. Ces réceptivités renseignent l’automate
sur l’état du système.
Branchées sur les entrées de l’automate du système, elles peuvent être :
- des capteurs (placés dans la partie opérative)
- des boutons poussoirs, commutateurs, roues codeuses (placés sur le pupitre de
commande)
** Les actions associées aux étapes permettent de piloter le système, par conséquent tous les
éléments que l’on retrouvera dans les actions seront essentiellement des pré-actionneurs (câblés
aux sorties de l’API) :
- pour un moteur : la bobine de son contacteur devra être alimentée.
- Pour un vérin : la bobine de son distributeur devra être alimentée.
- Et aussi des voyants etc.
On pourra néanmoins retrouver des étapes d’attente où aucune action n’est affectée à une étape.
Le système est figé tant que la transition suivante n’est pas validée.
4_LE GRAFCET
Page 3
Automatismes
3. Vocabulaire :
Un vocabulaire précis est associé à la description sous forme d’un grafcet. Il est important de le
connaître pour comprendre les règles qui gèrent l’évolution du grafcet :
4. Règles d’évolution :
L’évolution du grafcet (les conditions de passage d’une étape à une autre) suit des règles très
précises. Il y en a 5 en tout.
1- Situation initiale
La situation initiale est la situation active à l’instant initial.
C'est-à-dire, lorsque la partie commande est mise en fonctionnement, elle est décrite par
l’ensemble des étapes initiales
4- Evolutions simultanées
Plusieurs transitions simultanément franchissables sont simultanément franchies.
4_LE GRAFCET
Page 4
Automatismes
Ce premier travail consiste à décrire l’intervention du système sur la matière d’œuvre en cherchant
à définir les transformations successives qu’elle subit. L’enchaînement des différentes
transformations identifiées (tâches) sera décrit à l’aide d’un grafcet (grafcet de coordination des
tâches, fonctionnel ou grafcet du point de vue système). Dans ce type de grafcet, la description
des tâches reste générale. Elle doit juste permettre une compréhension globale du fonctionnement
du système.
Chaque action sera décrite par un verbe à l’infinitif en majuscule.
Exemple :
4_LE GRAFCET
Page 5
Automatismes
4_LE GRAFCET
Page 6
Automatismes
« km » est une commande monostable, elle est donc répétée dans les
étapes 2 et 3 car l’alimentation doit y être maintenue.
4_LE GRAFCET
Page 7
Automatismes
Entrées : Sorties :
Rappel:
symbole Bloc 1 : entrées
N° du bloc
N° de l’entrée
2 4
I pour Entrée (input) dans le bloc
Q pour Sortie
1 %Q2.1
%I1.4
2 %Q2.3 %Q2.0
%I1.3
3 %Q2.0
%I1.2
4 %Q2.2
%I1.1
4_LE GRAFCET
Page 8
Automatismes
Entrées : Sorties :
Rappel:
symbole
N° du Rack Emplacement n°
N° de la voie 0 1 2
% I 0. 1 . 1 M340
Carte Entrées
Carte Sorties
Processeur
Type de module :
N° emplacement Alimentation
I pour Entrée (input)
Q pour Sortie du module
RACK 0
Grafcet :
M340
0 Alimentation
2 %Q2.2.3 %Q2.2.0
%I0.1.3
3 %Q2.2.0
%I0.1.2
4 %Q2.2.2
%I0.1.1
4_LE GRAFCET
Page 9
Automatismes
SELECTION DE SEQUENCE
(Divergence et Convergence en OU)
I Introduction:
Pour des impératifs de cahier des charges, le mécanisme peut devenir plus complexe
et posséder plusieurs cycles de fonctionnement. En fait, à partir d’une étape, le chemin que
prendra le cycle sera fonction des réceptivités rendues « vraies ».
II Représentation:
1
a
2 1YV14
Divergence en OU
b c
3 2YV14 6 3YV14
d e
4 7
2YV12 3YV12
f g
Convergence en OU
5 1YV12
4_LE GRAFCET
SELECTION DE SEQUENCE
Page 10
Automatismes
III Interprétation:
IV Remarques:
1/ L’installation a donc 2 possibilités d’évolution suivant l’état des variables b et c.
Il est donc nécessaire pour obtenir une sélection de séquences que ces 2 réceptivités
soient exclusives. C'est-à-dire :
- soit une exclusion logique : verrouillage par équation logique ( b.c OU b.c )
2 1YV14
b.c b.c
2 1YV14 2 1YV14
a
b.c b.c a.b.c a.b.c
3 6 3 6
FAUX !
CORRECT !
LE SAUT D’ETAPES
Le saut d’étapes appelé aussi saut de séquence permet d’éviter le déroulement d’une
partie du cycle. Ici, à l’étape 2, si la condition « c » est vraie, nous activons l’étape 3. Par
contre, si la condition « b » est vraie, nous activons l’étape 16. Les étapes 3 à 15 ne seront
donc pas lues.
1
a
2 1YV14
Les remarques faites au
c b
paragraphe IV du chapitre
3 3YV14 concernant les « Sélections
de séquence » sont
également applicables lors
15
d’un saut d’étape.
KM1
y
16 1YV12
Correct ou Incorrect ?
1 1
a a
2 1YV14 2 1YV14
1
c c
3 3 3YV14
3YV14
15 KM1 15 KM1
b b
16 1YV12 16 1YV12
y y
LA REPRISE D’ETAPES
y
Correct ou Incorrect ?
1 1
a a
2 1YV14 2 1YV14
b b
3 3 3YV14
3YV14
15 KM1 15 KM1
c c b
16 1YV12 16 1YV12
y y
1 1
a a
2 1YV14 2 1YV14
b b
3 3YV14 3 3YV14
15 KM1 15 KM1
c d c
d
16 16
1YV12 1YV12
y y
4_LE GRAFCET
LA REPRISE D’ETAPES
Page 13
Automatismes
Ancienne notation :
II La variable d’étape :
La variable d’étape est une variable binaire qui représente l’état actif ou inactif
d’une étape d’un grafcet.
Toutes les étapes de grafcets disposent de leur propre variable associée.
Exemple :
On utilise fréquemment cette notion de variable d’étape dans les applications où
plusieurs grafcets doivent se coordonner.
Grafcet 1 Grafcet 2
Explications :
4_LE GRAFCET
Page 14
Automatismes
SEQUENCES SIMULTANEES
(Divergence et Convergence en ET)
I Introduction:
Cette structure permet de provoquer l’exécution simultanée de plusieurs branches
appelées séquences. Le nombre de séquences n’est pas figé, tout dépend de la complexité
du cycle à décrire.
II Représentation:
22 Divergence en ET
p
A partir de l’étape 22, la réceptivité
« p » provoque l’activation simultanée des
23 Action H 26 Action K
étapes 23 et 26.
h k
24 Action J 27 Action L Les 2 séquences (23.24.25) et
j l (26.27.28.29) évolueront de façon
25 28 totalement indépendante.
Action N
Pour cette raison, chaque séquence se
n
termine par une étape sans action
29
associée : c’est une étape d’attente,
attente de la fin de l’autre séquence.
1
Convergence en ET
30 Action S Pour activer l’étape 30, la réceptivité
s
de la transition précédente étant
toujours vraie ( voir Page 18 ), il suffit
d’avoir les 2 étapes d’attente 25 et 29
actives.
4_LE GRAFCET
SEQUENCES SIMULTANEES
Page 15
Automatismes
I Définition:
On appelle « Front d’une variable » l’information qui est vraie lorsque la variable
change d’état. On distinguera le front montant qui indique le passage de la variable de 0 à
1 et le front descendant qui indique le passage de 1 à 0.
II Notation:
III Exemples :
1
h
0
2 ( attente ) t Le front montant de h
1 permet d’activer l’étape 3.
h Etape 3
0
3 t
Action A 1 Le front descendant de b
b entraîne l’activation de
b 0
t
4 1
l’étape 4.
Etape 4
0
t
1
a L’étape 4 devient active si :
0
t
3
1
h - l’étape 3 est active
0
.a
t - a=1
4 1
- h passe de 0 à 1
Action Etape 4
A 0
t
4_LE GRAFCET
LES FRONTS D’UNE VARIABLE
Page 16
Automatismes
LES TEMPORISATIONS
I Principe:
Dans les systèmes séquentiels, on rencontre fréquemment des cycles qui dépendent
du temps :
■ au niveau des réceptivités pour conditionner l’évolution,
■ au niveau des actions dont la durée peut-être différente du temps d’activation
d’une étape.
II Utilisation:
L’utilisation la plus fréquente des temporisations dans des réceptivités d’un Grafcet
est la temporisation de variable d’étape noté sous la forme : durée / Xn
3
La réceptivité devient vraie au bout de 5 secondes après
que l’étape 3 soit activée. Dés l’instant où la réceptivité est
5s / X3 vraie, la transition est franchie et l’étape 3 est désactivée.
4 Cette étape sera restée active pendant 5s.
L’ancienne notation peut encore être rencontrée dans certains documents et logiciels :
T / Xn / durée
Dans l’exemple précédent, on aurait lu : T1 / X3 / 5s.
11
4_LE GRAFCET
LES TEMPORISATIONS
Page 17
Automatismes
LES COMPTEURS
Exemple :
3
En considérant l’étape 3 active, on passera à l’étape 4
[t>8°C].K lorsque la température sera supérieure à 8°C et que
4 la condition sur K soit vraie
4_LE GRAFCET
Page 18 LES COMPTEURS
Automatismes
1C 1C
Préactionneur Préactionneur
monostable monostable
Energie pour
Ordre d’action l’actionneur Ordre d’action Energie pour l’actionneur Ordre d’action
« RENTRER TIGE » « SORTIR TIGE» « SORTIR TIGE»
15 15 1C+
1C+
1S1 1S1
16 16 1C-
1C-
1So 1So
15 1YV14 15 1YV14
1S1 1S1
16 1YV12 16
1So 1So
4_LE GRAFCET
Page 19 LES ACTIONS MAINTENUES
Automatismes
X3 1
3 3 Action A :=1
S Action A
0
t
X4 1
4 4
0
t
X5 1
5 R Action A
5 Action A :=0 0
t
A 1
0
Ancienne Nouvelle t
représentation représentation
L’étape 3 permet la mise à 1 de A qui conserve sa valeur (fonction mémoire), tant que l’on
n’est pas à l’étape 5 où A prend la valeur 0 et la conserve. Dans l’ancienne notation, on
notait S pour SET (mise à 1) et R pour RESET (mise à 0).
On peut également affecter des valeurs autres que booléennes (toutes valeurs
décimales), à des variables de types Compteur ou à des variables de type mot surtout
utilisé pour le traitement analogique des signaux. D’une manière générale l’affectation d’une
variable à une grandeur s’effectue par la notation : X : = Y
4_LE GRAFCET
LES ACTIONS MEMORISEES
Page 20
Automatismes
I Principe:
Lorsqu’une étape est active, les actions associées sont exécutées. Cependant,
lorsque cette action est une action conditionnelle, son exécution ne peut avoir lieu que si la
condition est remplie en plus de l’activation de l’étape.
II Représentation:
f h f.h f.h
3 3 5
Action A Action B A B Action B
g g g
4 Nouvelle
représentation 4
1
f
0
t
1
Etape 3
0
t
1
h
0
t
1
Action A
0
1 t
g
0
1
Etape 4
0
III Interprétation :
Dès que l’étape 3 est active, l’action A est effectuée si et seulement si h est
maintenu actionné. Sinon cette étape devient une simple étape d’attente. Attente que « g »
soit actionné pour activer l’étape 4.
Action retardée
L’action sera exécutée après un temps t1 à partir de l’activation de l’étape
11. L’exécution de l’action sera alors maintenue tant que l’étage 11 restera
active.
Exemple :
1
f 3s/X3
f
0
3 Action A t
1
d Etape 3
0
4 t
Action B 1
t=3s
e Action A
0
t
1
Résultats d
identiques 0
t
d actionné et
activation de l’étape 4
f
3
0n obtient le même résultat en rajoutant une étape d’attente, qui
permet au bout de 3 s de passer à l’étape 4 et donc de déclencher
3s/X3 l’action A 3secondes après l’activation de l’étape 3. L’utilisation d’action
4 Action A conditionnelle permet de simplifier le grafcet (économie de 1 étape).
d
La notation ci-dessous donne le même résultat que les deux autres, mais
permet un passage à la programmation de manière moins aisée. Par contre lors
de la programmation sous Step 7 (automate siemens), et sous Unity (automate
Schneider), ces logiciels donnent accès à des actions de type D qui sont des
actions retardées au déclenchement.
D Action A
3
D = 3s
4 Action
e B
Exemple :
Dès l’action sur le capteur f,
1
f 3s/X3 f on passe à l’étape 3. L’action A
0 se déroule pendant 3s, ensuite
3 Action A t
1 la condition sur l’action
d Etape 3 t=3s
devient fausse puisque la
0
4 Action B t
1 temporisation de 3s liée à
e Action A l’étape 3 est terminée.
0
Par conséquent l’action A
1
d a duré 3 secondes après
0
t
l’action sur d.
d f
Action A Remarque : pour que l’action A soit à durée
3 L
L= 3s limitée, il est nécessaire que l’information d
d arrive dans un délai de plus de 3 secondes
4 Action B après l’activation de l’étape 3.
e
La notation ci-dessus donne le même résultat que les deux autres, mais permet un
passage à la programmation de manière moins aisée. Par contre lors de la
programmation sous Step 7 (automate Siemens), et sous Unity (automate Schneider),
ces logiciels donnent accès à des actions de type L qui sont des actions limitées dans
le temps.
Exemple :
f 3s/g/2s 1
f
3 0
Ici la variable temporisé est g.
Action A t
L’action A se déroulera lorsque
1
d Etape 3 l’étape 3 sera active ET 3s
0
4 Action B t=2s t après le passage de 0 à 1 de g.
1
e Action A
t=3s Elle se maintiendra pendant
0
t 2 s après le passage de 1 à 0
Remarque : la durée
g
1 de g.
d’activation de g doit être
supérieure au 3 s. Dans le 0
t
cas contraire la condition 1
3s\g\2s n’est jamais vraie d
et l’action 1 ne se déroule 0
t
jamais. d actionné et
activation de l’étape 4
1
f 3s/X3
f Cette séquence est une
0
t combinaison des deux
3 Action A 1
t=3s
précédentes. L’action A
Etape 3
8s/X3 0 débute avec un retard
t
t=5s de 3s et à ensuite une
4 1
Action A
durée limitée à 5s
e 0
t
1
Transition valide 8 s après Etape 4
l’activation de l’étape 3, ce qui 0
t
permet à l’action A de ne durer
que 5s, compte tenu du retard à e actionné
l’enclenchement de 3s.
4_LE GRAFCET
Page 25
Automatismes
I Introduction :
Dans une application réelle, les tâches de surveillance ou de gestion des sécurités,
de conduite de la production et de production, sont dévolues à des grafcets différents qui
sont liés, qui communiquent entre eux.
Chaque tâche a son importance mais il existe une relation de hiérarchie entre elles.
Le Grafcet de sûreté est
Sûreté hiérarchiquement le plus élevé.
Il est chargé de surveiller que les
conditions d’une production sûre sont
remplies (entre autre le comportement
de la PC en cas d’arrêt d’urgence).
Conduite
de la production
Production
Le Grafcet de conduite appelé
aussi Grafcet de tâches est
le « chef d’orchestre ». La production (ou le fonctionnement
Il gère les différents modes « normal ») du système est gérée par
de marche et d’arrêt du un ou plusieurs grafcets du plus bas
système (hors urgence). niveau hiérarchique.
Si les conditions de production Leur évolution dépend du niveau de
sont remplies il autorise le(s) sûreté et du niveau de conduite.
grafcet(s) de production à
évoluer.
Exemple :
Le Grafcet de tâches ci-dessous permet de sélectionner 2 modes de marche
possibles : Marche Auto ou Marche Manuelle
30
X3
20
31 1YV14
1 X2
1S1
21
manu Auto
32
u 3YV14
2 3 S1. S2.
21 3S1
1YV14 22
X23 X35 2YV14
1S1 2S1 33 KM1
Grafcet de
23 On aurait également pu S10 S11
coordination des tâches trouver X2 à la place de X1
34
X1 1YV12
Grafcet marche manuelle 1S0
35 Grafcet marche
On aurait également pu automatique
X1
trouver X3 à la place de X1
Les étapes 2 et 3 sont des étapes de tâches qui viennent activer respectivement les
étapes 21 et 31.
Remarque :
La représentation de l’étape 2 et 3 peuvent être représentée comme une étape
normale. (Voir exemple page suivante).
Explications :
LA MACRO ETAPE
Comme nous venons de le voir le concept de tâches permet de hiérarchiser les grafcets.
Une macro-étape est une représentation condensée, unique, d'un ensemble d'étapes et de
transitions. Une macro-étape s'insère dans un grafcet comme une étape et en respecte les
règles d'évolution.
I Représentation :
Une macro-étape peut être repérée par un numéro ou par un numéro précédé du symbole
M ou par un identificateur ou par une combinaison de plusieurs repères.
M20 Pesage
se distingue d'une étape par deux traits M20
horizontaux. L'illustration suivante montre une Pesage
macro-étape et son expansion.
L'expansion d'une macro-étape est caractérisée par 2 étapes spécifiques :
- une étape d’entrée In répondant aux mêmes règles que les autres étapes
- une étape de sortie OUT ne pouvant avoir d’actions associées.
EXPANSION DE LA
Macro- In B-
MACRO-ETAPE
étape S1
0 A+
M2 S2
1 A-
S3
OUT
4_LE GRAFCET
MACRO ETAPE
Page 29
Automatismes
II Evolution :
Lorsque la macro-étape est active, l'évolution de la macro-étape respecte les règles
générales d'évolution d'un Grafcet.
Exemple : la macro-étape M20 est activée quand l'étape 15 est active et que sa
réceptivité aval est vraie. Elle est désactivée quand son étape de sortie est active (OUT)
et que la réceptivité M20-17 est vraie, en l’occurrence n. L'étape 17 est alors activée.
1
m
30 15 In B- 0
S1 t
XM20 m
1
20 A+ M20
31 M20 S2 0
t
21 A- 1
n OUT
S3
0
17 OUT
t
EXPENSION DE LA 1
n
MACRO-ETAPE
0
t
Remarque : une expansion de macro-étape n’est liée qu’à une seule macro-étape ce qui
évite les conflits d’accès. Une macro-étape peut contenir une ou plusieurs macro-étapes
voir exemple ci-dessous. On passera de l’étape 30 à 31 lorsque la macro-étape 20 sera
active. D’une manière générale on notera XMy, le bit d’étape représentatif de l’état de la
macro, où y symbolise le numéro.
0
dcy
15 In B- In C-
S1 S4
m
20 A+ 20 A-
M1 S2 S5
M2 M3
n
S3 S6
17 OUT OUT
n
INSTRUCTIONS DE FORCAGE
Suite à un arrêt d’urgence, il faut pouvoir à tout moment pouvoir stopper l’évolution du
cycle en cours. Dans tous les grafcets vus jusqu’à présent aucun arrêt d’urgence n’a jamais
été traité, on suppose que l’arrêt s’effectue en fin de cycle.
La sécurité n’est donc pas prise en compte.
Suite à l’enclenchement d’un arrêt d’urgence, il faut stopper tous les mouvements en cours.
Par conséquent, il faudra probablement désactiver toutes les étapes du grafcet. Lors de
l’initialisation de la machine il faudra peut être forcé certaines étapes de grafcet à 1.
Les instructions de forçage interviennent comme des ordres pour le système. Elles
seront donc traitées en « action « au niveau du grafcet. Ces instructions ont une utilité à
partir du moment où l’on utilise des concepts de tâches ou de macros-étapes, lorsque
plusieurs structures évoluent en même temps.
Le concept de forçage à une situation est une notion beaucoup plus forte, au sens
où il privilégie et traduit une hiérarchie décisionnelle. On réservera l'utilisation de
ce concept à la mise en place de procédures de sécurité, telle que la conduite à
tenir en cas d'arrêt d'urgence ou encore l'effet de l'actionnement d'un contact de
sécurité sur une porte.
L'ordre de forçage est représenté dans un double rectangle associé à l'étape pour
le différencier d'une action.
CAS 1
Suite à un évènement sur le système, on désactive toutes les étapes et on force le
système à l’état initial.
Exemple
CAS 2
Suite à un évènement sur le système, on force le système à une étape ou des étapes
données.
Exemple
CAS 3
Suite à un évènement sur le système, on désactive toutes les étapes du grafcet en
cours.
CAS 4
Suite à un évènement sur le système, on maintient dans l’état le ou les étapes du grafcet
en cours, quel que soit l’état des transitions, le grafcet est figé.
Exemple
1 C1 :=0 10
Dcy.1S0.X10 Au
2 A+ 11 G1{INIT}
1S1
3 A- C1 :=C1+1 12 A-
S’il n’y a pas d’arrêt d’urgence d’actionné, le grafcet 1 évolue normalement, le grafcet
2 est à l’étape initiale (10). Suite à un arrêt d’urgence, le grafcet 2 passe à l’étape 11 qui
force le grafcet 1 à l’étape initiale (1) et le compteur est remis à 0. Le forçage est
maintenu tant que l’étape 11 est active.
On déverrouille l’arrêt d’urgence et l’on appuie sur Init le grafcet 2 passe à l’étape 12
qui permet la rentrée du vérin, puis le retour à l’étape initiale (10). Le système est près
pour un nouveau cycle.
On voit que le grafcet 2 (G2) est d’un niveau supérieur à celui du grafcet 1, ces
ordres sont prioritaires.
4_LE GRAFCET
FORCAGE
Page 34