You are on page 1of 5

Grafcet: utilisation

des primitives de macro-étape


méca et de forçage
ZOOM DOMINIQUE GENDREAU1

L’outil grafcet, qui fut enseigné dans nos lycées Dans la suite de notre développement, nous allons nous situer
avant même d’être utilisé dans l’industrie, reste malgré en phase de début de conception, c’est-à-dire que nous allons nous
cela encore mal maîtrisé par certains d’entre nous. restreindre à décrire le comportement de la partie commande
vis-à-vis de l’effecteur et du processus (voir figure 2). Le Grafcet
Cet article présente les concepts de macro-étape
est utilisé pour décrire ce comportement.
et forçage, dont le grafcet s’est enrichi depuis.
MOTS-CLÉS automatisme, grafcet, partie commande, logique Partie
commande Sorties
Sorties
Introduction Partie
opérative
Le Grafcet 2, outil de représentation du cahier des charges d’un Entrées Entr es
Entrées
système logique, est né en 1977 et a été normalisé une première
fois en France en 1982 (NF C03-190) [1]2. La plupart des règles Pupitre
opérateur
et concepts de base ont été repris et complétés pour aboutir à
une norme internationale (CEI/IEC 848) [2] parue en 1988. Figure 2. Frontières de description
Depuis son origine, il a été de plus en plus utilisé pour la La partie commande, ainsi délimitée, comporte l’ensemble
conception des systèmes automatisés de production. De des composants de la boucle, alors inconnus du concepteur. Il a
nouveaux concepts sont alors apparus [3], conférant au grafcet besoin de faire une modélisation du comportement afin de choisir
une puissance de modélisation plus grande. Un document a alors les composants nécessaires et d’adapter les programmes ou les
été rédigé (UTE C03-191) [4] en vue d’une nouvelle norme qui, câblages satisfaisant les fonctions ainsi identifiées.
à ce jour, n’a pas encore été établie. De nombreux concepteurs Les ordres allant de la partie commande vers la partie opérative
utilisent maintenant la notion de « macro-étape » et le concept (énergie mécanique nécessaire aux effecteurs), ainsi que les
de « forçage ». informations à destination de l’opérateur, via le pupitre, vont
La macro-étape est une forme de représentation qui simplifie correspondre aux sorties du grafcet décrivant le comportement
l’écriture et permet également une approche progressive dans de cette partie commande.
la conception de grafcets. La lecture et la compréhension en sont Les comptes rendus provenant de la partie opérative (ren-
améliorées. seignements sur l’état du processus) à destination de la partie
Le forçage d’un grafcet à une situation est un nouveau concept commande et les consignes fournies par l’opérateur, via le pupitre,
qui introduit une notion de hiérarchie d’exécution. Son emploi est vont constituer les entrées du grafcet.
très apprécié pour la mise en place de procédures de sécurité,
lorsque des dysfonctionnements apparaissent dans le système. Application : machine de traitement de surface
La machine présentée sur la figure 3 effectue un traitement de
Point de vue de la description brunissage sur la surface de pièces métalliques. Elles sont dis-
Avant d’aborder toute modélisation, il est nécessaire de préci- posées dans des paniers pendant tout le cycle de traitement.
ser le point de vue du concepteur du système, lequel point de vue Le cahier des charges du système est le suivant : dans la posi-
permettra de définir les entrées et sorties du système décrit [5]. tion pos0, le treuil descend et la pince prend le panier des pièces.
On peut dire que toute évolution sur le processus est produite Puis, le treuil lève le panier et le pont roulant se déplace vers la
sous l’effet d’ordres émanant de l’unité de commande qui agit en gauche jusqu’à la position pos1. Le treuil descend alors le panier
fonction de comptes rendus renseignant sur l’état du processus dans le bac de traitement 1, où les pièces subissent un dégrais-
(voir figure 1). sage pendant 5 secondes. Le cycle se poursuit par un nettoyage
Énergie
de puissance Énergie des pièces dans le bac de traitement 2, pendant 2 secondes, puis
Actionneur mécanique
Pré- elles subissent le traitement de brunissage dans le bac de trai-
actionneur
Effecteur tement 3 pendant une durée de 10 secondes. Pour terminer, le
Signal de commande
Ordres panier de pièces est déposé en position pos4 pour égouttage et
Unité de
Unit nergie mécanique
Énergie m canique le treuil et le pont roulant reviennent en position initiale, prêts
commande
Dialogues et Comptes rendus Processus à saisir un autre panier.
communications Signal de retour Information sur
le processus 1. Maître de conférences à l’IUFM de Franche-Comté à Besançon.
Conditionneur Capteur
de signal 2. Par convention, on écrira Grafcet (avec un grand G) lorsqu'il s'agira du modèle
Signal
électrique outil et grafcet (avec un petit g) dans les autres cas.
Figure 1. Boucle de commande d’un système automatisé 3. Le chiffre entre crochets renvoie à l’encadré « Références bibliographiques ».

36 ■ TECHNOLOGIE 116 ■ NOVEMBRE-DÉCEMBRE 2001


Partie commande Partie opérative 0 Allumer V
11 Monter
Marche.auto.CI
Description Pos4 Pos3 Pos2 Pos1 Pos0 Treuil Haut
par Grafcet Gauche Droite 1 Descendre
12 Aller G.
Bas
Pont roulant Haut Pos3
Pinces Montée 2 Fermer
Pupitre opérateur 13 Descendre
Bas Descente Fermé
Manuel
Bas
Machine 3 Monter
disponible Bac3 Bac2 Bac1 14
Auto (voyant V) Panier
Détails Haut
pinces Ouvert Fermé de pièces 10s/X14
Marche 4 Aller G.
15 Monter
Fermeture Ouverture Pos1
Haut
5 Descendre
Figure 3. Machine de traitement de surface 16 Aller G.
Bas
Pos4
Il existe quelques contraintes technologiques sur les mouve- 6
ments résultant du choix des effecteurs : le déplacement vertical 17 Descendre
5s/X6
du treuil ne peut s’effectuer que dans une position fixe du pont Bas
7 Monter
roulant (pos0 à pos4). Les déplacements du pont roulant ne 18 Ouvrir
peuvent s’effectuer que si le treuil est en position haute. Le Haut
Ouvert
préhenseur saisit le panier de pièces au poste de prise (pos0) 8 Aller G.
19 Monter
pour ne le lâcher qu’au poste de dépose (pos4), en position basse Pos2
du treuil. L’approvisionnement des paniers de pièces au poste de Haut
9 Descendre
prise et l’évacuation des paniers de pièces traitées au poste de 20 Aller D.
dépose ne font pas l’objet de l’étude. La figure 4 présente les entrées- Bas
Pos0
sorties du système décrit par Grafcet. 10
2s/X10 Vers étape 0
Manuel Allumer V Conditions initiales
Auto CI = pos0.haut.ouvert
Marche grafcet Aller G.
Pos0 Figure 5. Solution grafcet linéaire
Pos1 décrivant Aller D.
Pos2
Pos3 le comportement Monter
Pos4 de la partie
Haut Descendre
commande
Bas
Ouvert Ouvrir
Fermé
Fermer

Figure 4. Entrées-sorties du système

Les entrées correspondent d’une part aux informations en


provenance de la partie opérative et d’autre part aux dialogues
avec l’opérateur. Les sorties sont exprimées en termes d’ordres.

Première description
Le premier grafcet (voir figure 5) présente une structure linéaire
monolithique qui décrit l’enchaînement des ordres nécessaires
au processus pour permettre le fonctionnement de cette machine.
Cette structure est simple, mais la description est longue et elle
nécessite la connaissance de toutes les actions.
Cette structure fait apparaître plusieurs fois les mêmes
séquences (voir figure 6) correspondant au déplacement du
panier de pièces d’un bac de traitement au suivant. Elle est
complétée par une séquence de début – la prise du panier – et
une séquence de fin – la dépose du panier et le retour en position
initiale (voir figure 7).

Seconde description
Cette seconde description (voir figure 8) est composée de
quatre grafcets connexes. Ils ont été écrits grâce à une approche
fonctionnelle. Le premier (étapes 0 à 9) correspond à la « gamme
de traitement » qui décrit le processus global. Le second (étapes
10 à 13) décrit une fonction de « prise de panier », le troisième Figure 6. Répétition de séquences

NOVEMBRE-DÉCEMBRE 2001 ■ TECHNOLOGIE 116 ■ 37


0 Allumer V 10

Marche.auto.CI X1

1 11 Descendre

X13 Bas

2 12 Fermer 20

X24 Fermé X2 + X4 + X6 + X8

3 13 21 Monter

5s/X3 — Bas
X1
4 22 Aller G.
↑pos1 + ↑pos2
X24 + ↑pos3 + ↑pos4
5 23 Descendre 30

2s/X5 Bas X9
Figure 7.
Début et fin de cycle 6 24 31 Ouvrir

X24 X2 . X4 . X6 . X8 Ouvert
(étapes 20 à 24) exprime une fonction de
7 32 Monter
« déplacement d’un bac à l’autre » du panier, et
le dernier (étapes 30 à 34) correspond à une Haut
10s/X7
fonction de « dépose de panier », qui inclut le
8 33 Aller D.
retour en position initiale.
On peut remarquer que la séquence 10 à 13 X24 Pos0
Conditions initiales
n’est exécutée qu’une seule fois au cours du cycle CI = pos0.haut.ouvert 34
9
de traitement d’un panier de pièces. Il en est de
même pour la séquence 30 à 34. Par contre, la X9
X34
séquence 20 à 24 est exécutée quatre fois et
Figure 8. Solution grafcet structuré
constitue ainsi un sous-programme ressource
du programme principal qui décrit la gamme de
traitement.

Utilisation de la notion de macro-étape Expansion Expansion Expansion


0 Allumer V de la macro-étape 1 de la macro-étape 4 de la macro-étape 8
On peut remarquer que la seconde description
est mieux structurée que la première. Chaque Marche.auto.CI
graphe représente une fonction particulière 11 Descendre 41 Monter 61 Monter
(gamme de traitement, prise de panier, trans- 1
Bas Haut Haut
fert de panier, dépose de panier). Cependant, la =1
lecture d’un tel grafcet global peut être rendue 12 Fermer 42 Aller G. 62 Aller G.
2
difficile par la nécessaire synchronisation qu’il
Fermé Pos2 Pos4
faut apporter pour permettre la liaison entre les =1
graphes. 3
13 43 Descendre 63 Descendre
La notion de macro-étape permet d’appré- Bas Bas
hender une approche plus progressive de la 5s/X3
structure globale, jusqu’à la description la plus Expansion 44 64
4
de la macro-étape 2
détaillée nécessaire à expliciter complètement
=1
le fonctionnement. On exploite ainsi la notion
5 21 Monter Expansion Expansion
de « zoom » dans la représentation. Il peut ainsi de la macro-étape 6 de la macro-étape 9
être défini autant de niveaux de représentation 2s/X5 Haut
que nécessaire (chaque expansion peut compor-
6 22 Aller G. 51 Monter 31 Ouvrir
ter des macro-étapes).
On s’intéresse en premier lieu à la spécifica- =1 Pos1 Haut Ouvert
tion du système global qui fait apparaître la 7 23 Descendre 52 Aller G. 32 Monter
gamme de traitement, sans se soucier de la
manière dont on va produire les mouvements de 10s/X7 Bas Pos3 Haut
base pour les déplacements (voir figure 9). 8 24 53 Descendre 33 Aller D.
Par la suite, on va s’intéresser à exprimer les
=1 Bas Pos0
sous-fonctions. C’est en développant l’expan-
sion de chaque macro-étape que l’on détaille les 9 Conditions initiales 54 34
CI = pos0.haut.ouvert
différents mouvements élémentaires nécessaires
=1
à prendre le panier de pièces, à le déplacer dans
le bac suivant… Figure 9. Solution grafcet utilisant des macro-étapes

38 ■ TECHNOLOGIE 116 ■ NOVEMBRE-DÉCEMBRE 2001


Dans l’utilisation de cette notion de macro-étape, on peut Dans les deux fonctionnalités ajoutées, on retient le caractère
remarquer que l’absence de synchronisation simplifie la repré- urgent de l’événement qui survient. Une mauvaise valeur de
sentation, par suppression des variables d’étape et des étapes pH a une incidence sur la qualité du produit ; il convient donc
servant à ces synchronisations. d’arrêter le traitement en cours et d’appliquer une procédure de
Par contre, l’inconvénient majeur est la non-réutilisabilité de sauvegarde du produit. D’autre part, l’actionnement d’un bouton
séquence ; à chaque macro-étape correspond sa propre exten- d’arrêt d’urgence est souvent consécutif à un dysfonctionnement
sion. Si, comme dans le cas présent, une même séquence doit se dont l’effet peut nuire au système ou à l’environnement, et en
reproduire quatre fois, il faut nécessairement dupliquer cette particulier à l’opérateur. Une procédure prioritaire vient donc
séquence dans chacune des expansions correspondant aux autres s’exécuter pour limiter ou anéantir le danger potentiel. Dans ces
macro-étapes. deux cas, le concept de forçage peut être utilisé à bon escient
(voir figure 11).
Utilisation du concept de forçage La solution obtenue présente un premier avantage au niveau
La notion de macro-étape se limite à simplifier la représentation de l’approche méthodologique de conception : il est ainsi possible
puisque, en lieu et place d’une macro-étape, on peut placer l’ex- de traduire, dans un premier temps, le fonctionnement normal,
pansion correspondante. Le concept de forçage à une situation puis d’exprimer d’autres fonctionnalités sans remise en cause de
est une notion beaucoup plus forte, au sens où il privilégie et la première structure. Le résultat obtenu est le second avantage
traduit une hiérarchie décisionnelle. On réservera l’utilisation qui s’exprime en termes de simplicité du modèle obtenu; la lecture
de ce concept à la mise en place de procédures de sécurité, telles en est ainsi grandement facilitée. La surcharge d’informations
que la conduite à tenir en cas d’arrêt d’urgence ou encore l’effet (expressions avec « Au » et « pH ») et de saut de séquences de la
de l’actionnement d’un contact de sécurité sur une porte. première solution disparaît au profit d’ordres de forçage, qui, de
Par contre, son utilisation pour coordonner un fonctionne- plus, permettent une certaine hiérarchie.
ment ou encore sélectionner un mode de marche est possible mais Cependant, il est nécessaire de se prémunir contre des compor-
serait détournée de ses objectifs initiaux. tements qui s’avéreraient délicats, au regard des modalités
Ainsi, dans notre exemple précédent, on souhaite rajouter d’application du concept. On doit ainsi examiner toutes les situations
deux fonctionnalités supplémentaires : engendrant un ordre de forçage pour éviter tout conflit de forçage.
– l’appui sur un bouton-poussoir d’arrêt d’urgence « Au » a pour Dans notre système, l’apparition de l’information « pH » permet
effet d’annuler tout ordre de commande, de remettre le grafcet au grafcet partiel G1 d’émettre un ordre de forçage du grafcet
en situation initiale et d’allumer un voyant « R » (voyant « V » partiel G2 qui décrit le fonctionnement normal. De même,
éteint) ; l’apparition de l’information « Au » permet au grafcet partiel G0
– une information «pH» en provenance du bac de traitement nous d’émettre un autre ordre de forçage du même grafcet partiel G2.
indiquant une mauvaise valeur de « pH » de la solution a pour effet Que se passe-t-il lorsque les deux informations sont présentes
de stopper le cycle de traitement, de relever un éventuel panier dans le même temps, indépendamment du fait – théoriquement
immergé dans ce bac3 et d’alerter un opérateur par une sirène S. impossible car ce sont des événements indépendants – qu’elles
Ces deux fonctionnalités peuvent être exprimées en complétant peuvent survenir au même instant ? Un même grafcet partiel ne
le grafcet précédent (voir figure 10). peut pas être forcé dans deux situations différentes ; il est alors

C Allumer R Au
Éteindre V Au Allumer R
0 pH
C Allumer V Au Éteindre V
Éteindre R Sonner S
Marche.auto.CI.Au.pH Manuel
Allumer V
Auto
1 grafcet Éteindre R
Expansion Marche
Au Au.pH de la macro-étape 1 Aller G
Pos0 …
2 11 C Descendre pH …
Au Au.pH Au Bas.Au
3 12 C Fermer pH
Au 5s/X3.Au.pH Expansion
Fermé + Au
de la macro-étape 8
4 13
Au Au.pH 61 Monter
5 Au Haut.Au
Expansion
Au 2s/X5.Au.pH de la macro-étape 6 62 C Aller G. pH
6 Au Pos4.Au
51 C Monter pH
Au Au.pH Au.pH 63 C Descendre pH
Au Haut.Au
7 Bas + Au
52 C Aller G. pH
Au (10s/X7 + pH).Au 64
Au Pos3.Au
8
53 C Descendre pH
Bas + Au + pH 70 C Sonner S pH
54
Conditions initiales
Figure 10. Solution n’utilisant pas le concept de forçage CI = pos0.haut.ouvert

NOVEMBRE-DÉCEMBRE 2001 ■ TECHNOLOGIE 116 ■ 39


G0 G2
Expansion
Allumer V 0 de la macro-étape 1
A0 Éteindre R
Marche.auto.CI
Au
11 Descendre
1
A1 F/G1>{ }
Bas
=1
F/G2>{INIT}
12 Fermer
Allumer R 2
Éteindre V Fermé
=1
Au 13
3
5s/X3
4 Expansion Expansion
de la macro-étape 6 de la macro-étape 8
=1
G1 5
51 Monter 61 Monter
2s/X5
pH.X90 Haut Haut
6
90 C F/G2>{61} Bac3.haut 52 Aller G. 62 Aller G.
=1
C F/G2>{ } Bac3 + haut Pos3 Pos4
Sonner S 53 Descendre 63 Descendre

pH Bas Bas
Conditions initiales 54 64
CI = pos0.haut.ouvert

Figure 11. Solution utilisant le concept de forçage

nécessaire de fixer (arbitrairement ou non) une priorité dans de forçage contraint G2 à prendre la situation 61, étape qui
ces deux ordres. permet l’émission de la sortie « Monter » qui doit se poursuivre
La solution retenue vise à préférer l’arrêt d’urgence comme jusqu’à ce que le treuil soit en position haute (information « haut »
événement majeur entre les deux informations. En conséquence, sans effet sur le grafcet partiel G2 qui est toujours forcé) ; il faut
le grafcet partiel G1 (qui est réceptif à « pH ») est rendu inopé- alors supprimer cet ordre de forçage pour arrêter le mouvement.
rant par forçage à la situation vide à partir de G0. Par contre, il Il en est de même quel que soit l’état de la machine quand sur-
est nécessaire de lui rendre sa fonctionnalité dès lors que « Au » vient cet événement « pH » ; par conséquent, dans toutes les
n’est plus effectif, en particulier lorsque « pH » est déjà présent ; autres situations du panier de pièces, le forçage à la situation
c’est la raison pour laquelle la réceptivité associée à la transi- vide aura pour effet d’annuler tout mouvement en cours. On peut
tion source ne possède pas de front montant (↑ pH) ; l’expression remarquer que, par rapport à la solution précédente, on perd la
de « pH » est assortie du complément de « X90 », pour éviter le notion de mémorisation d’arrêt du cycle en cours.
franchissement continuel de la transition lorsque l’étape 90 est
déjà active. Conclusion
Il faut être également attentif au fait qu’un grafcet partiel reste L’apport de la notion de macro-étape et du concept de forçage
forcé tant qu’il est contraint par un ordre de forçage. Lorsque «pH» de grafcet est indiscutablement positif dans une démarche de
apparaît, le panier de pièces doit se relever s’il est plongé dans conception. L’utilisation de ces nouveaux éléments d’approche
le bac de traitement correspondant (information « bac3 ») ; l’ordre fonctionnelle et de structuration décisionnelle améliore gran-
dement le travail des spécificateurs et la compréhension du
Références bibliographiques fonctionnement par les utilisateurs ; attention tout de même à ne
[1] « Diagramme fonctionnel Grafcet pour la description des systèmes pas utiliser maladroitement ou abusivement ces concepts. Enfin,
logiques de commande», Norme française NF C03-190, UTE*, juin 1982, le passage d’une telle spécification à un langage de program-
30 p. mation pour automates programmables industriels peut aussi
[2] « Établissement des diagrammes fonctionnels pour systèmes de se révéler plus difficile que la simple utilisation des concepts de
commande/Preparation of function charts for control systems », Norme base. ■
internationale/International Standard, CEI/IEC 848**, 1988, 99 p.
[3] Le Grafcet : de nouveaux concepts, Grepa, Cepaduès Éditions, coll.
« Automatisation et production », décembre 1985, 104 p.
[4] « Établissement des diagrammes fonctionnels pour systèmes de
commande – Diagramme fonctionnel grafcet. Extension des concepts
de base », Documentation de référence (documentation et symboles
graphiques), UTE C03-191, juin 1993, 35 p.
[5] 7 facettes du Grafcet : approches pratiques de la conception à
l’exploitation, collectif d’auteurs, Cepaduès Éditions, coll. « Automati-
sation et production », avril 2000, 168 p.
* UTE, Cedex 64, 92052 Paris-La Défense, France.
** Bureau central de la CEI, 3, rue Varembé, Genève, Suisse.

40 ■ TECHNOLOGIE 116 ■ NOVEMBRE-DÉCEMBRE 2001

You might also like