Académique Documents
Professionnel Documents
Culture Documents
Chapitre 3 : GRAFCET
Objectif :
- Appliquer la norme Grafcet dans la commande des systèmes séquentiels.
1. Introduction
La mise en œuvre d’un système industriel implique une mise en œuvre matérielle et une mise en
œuvre logicielle. La mise en œuvre logicielle consiste à programmer le composant programmable de
la partie commande (microcontrôleur, API, ordinateur,…) afin qu’elle soit en même de piloter un
processus. Avant toute programmation et pour une meilleure maitrise de la commande et du
comportement du système, il est impératif de modéliser le comportement séquentiel du système.
Plusieurs outils sont à cet effet en général utilisés, parmi lesquels nous pouvons citer les
organigrammes (ordinogramme), les diagrammes d’états, les graphes de fluences, les réseaux de
Petri, mais aussi le GRAFCET. Du diminutif de « diagramme GRAFCET », le GRAFCET (GRAphe
Fonctionnel de Commande, Étapes, Transitions) est un outil graphique de description fonctionnelle
du comportement de la partie séquentielle des systèmes de commande. C’est un Système Dynamique
à Evénements Discrets connu du grand public notamment pour ses performances avérées dans la
commande des systèmes industriels mixtes. L’un de ses avantages majeurs reste sa simplicité,
permettant une prise en main facile. Sa mise en œuvre implique par ailleurs au-delà de la
connaissance de la norme, l’identification du processus, la connaissance du comportement escompté
du système, ainsi que l’identification des entrées/sorties pertinentes pour l’étude.
Le présent chapitre est consacré à cet outils GRAFCET notamment sa norme et son exploitation dans
le cadre d’un projet d’automatisation.
2. Historique
Développé pour la première fois entre juin 1975 et avril 1977 par une équipe mixte constituée de
l’AFCET (Association Française pour la Cybernétique Economique et Technique), l’ADEPA
(Agence pour le DEveloppement de la Productique Appliquée à l’industrie), des industriels et des
universitaires, le GRAFCET est une norme française en 1982 et normalisé NF C03-190. Il est devenu
une norme CEI depuis 1988 et normalisé CEI 848. Avec les diverses améliorations apportées dans le
temps, cette norme CEI 848 (devenue CEI 60848 depuis 1997) a vu ses éditions 2 et 3 paraitre
respectivement en février 2002 et en février 2013 et titrée « Langage de spécification GRAFCET
pour diagrammes fonctionnels en séquences ».
Henri-Joël AKOUE 1
UNIVERSITE DE DOUALA ENSET
Les deux normes CEI 60848 et CEI 61131-3 ont chacune un domaine spécifique d'application:
– un langage de spécification de comportement (GRAFCET – GRAphe Fonctionnel de Commande
Etape transition) indépendant de toutes technologies de réalisation pour la CEI 60848, et
– un langage de programmation spécifique (SFC – Sequential Function Chart) pour la CEI 61131-3.
Le GRAFCET de la CEI 60848 est utilisé pour décrire ou spécifier le comportement du système, du
point de vue «externe», alors que le langage de SFC de la CEI 61131-3 est employé pour décrire (une
partie de) la structure «interne» du logiciel implémenté dans le système.
NB :
- Le GRAFCET désigne un langage de spécification du comportement logique des systèmes.
Cette spécification est indépendante de la technologie de la réalisation considérée.
- Le SFC désigne un des langages de programmation définis dans la CEI 61131-3 (1ere édition,
1993). Ce langage est inspiré par le GRAFCET, défini par la CEI 60848 (1e édition, 1993),
mais il n'y a aucune identité entre les deux représentations graphiques et la sémantique des
deux langages.
- Un cahier des charges utilisant la CEI 60848 (2e édition) doit être interprété avant son
implémentation en un programme utilisant la CEI 61131-3. Il n'y a actuellement aucune
représentation textuelle disponible de la CEI 60848 (2e édition) pour permettre
l’interprétation, puis la conversion automatique en programme pour un système
d'automatisation.
- À l'heure actuelle, il n'y a aucune règle pour traduire une spécification en GRAFCET en un
programme SFC: il est nécessaire de traduire la sémantique théorique de la première dans la
sémantique applicative de l'autre. C'est pourquoi, tandis que plus synthétique et plus
ergonomique, le GRAFCET est utilisé généralement pour une spécification globale et le SFC
pour la conception détaillée.
3. Quelques définitions
Une synthèse de la norme CEI 60848 dans sa deuxième et troisième édition permet de ressortir les
définitions suivantes :
CEI : La Commission Electrotechnique Internationale (CEI) est une organisation mondiale de
normalisation composée de l'ensemble des comités électrotechniques nationaux (Comités
nationaux de la CEI). La CEI a pour objet de favoriser la coopération internationale pour toutes
les questions de normalisation dans les domaines de l'électricité et de l'électronique.
Norme CEI 60848 : Cette norme définit un langage de spécification graphique pour la
description fonctionnelle du comportement de la partie séquentielle des systèmes de commande.
Ce langage de spécification est appelé GRAFCET. Cette norme inclut les symboles et les règles
nécessaires à la représentation, ainsi que l'interprétation qui en est faite.
Henri-Joël AKOUE 2
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 3
UNIVERSITE DE DOUALA ENSET
Les éléments de base définis pour la représentation d’un diagramme GRAFCET sont les suivants : les
Etapes, les transitions et les liaisons orientées. En effet, le GRAFCET étant un Système
Dynamique à Evénements Discrets, son évolution passe par une succession d’états du système.
Une étape est un élément du langage GRAFCET utilisé pour définir la situation de la partie
séquentielle d’un système. Elles sont symbolisées par des carrés dont la spécificité dépend de la
fonction remplie. Une étape est soit active soit inactive ; une étape active s’identifie par un « point
gras » marqué à l’intérieur du rectangle étape. L’ensemble des étapes actives à un instant donné
représente la situation du système. A chaque étape est associée une ou plusieurs actions. Les actions
sont symbolisées par des rectangles dans lesquelles sont inscrites des variables.
Une transition indique la possibilité d'évolution d'activités entre deux ou plusieurs
étapes. Cette évolution possible s'accomplit par le franchissement de la transition. A chaque
transition est affectée une condition logique appelée réceptivité exprime le résultat d’une
expression booléenne. Une réceptivité est soit vraie soit fausse.
Les liaisons orientées indiquent les voies d'évolution en reliant les étapes aux transitions et les
transitions aux étapes.
La figure ci-dessous est un exemple de GRAFCET caractérisé par :
- Trois étapes numérotées 0, 1 et 2, où 0 est l’étape initiale symbolisée par un carré
concentrique ;
Henri-Joël AKOUE 4
UNIVERSITE DE DOUALA ENSET
- Trois réceptivités que sont les conditions logiques condition 1, condition 2 et condition 3 ;
- Trois actions : Action1 associée à l’étape 1, Action2 et Action3 associées à l’étape 2 ;
La liaison orientée et les transitions sont indiquées sur la figure ci-dessous.
Etape 0
0
Liaison condition 1
orientée
1 Action1
condition 2
Trasitions
2 Action2 Action3
condition 3
NB : Les commentaires sur un Grafcet se font grâce à des textes entre guillemets.
Henri-Joël AKOUE 5
UNIVERSITE DE DOUALA ENSET
0 a
condition 1
1 KM1 10
b d
1 Action1
2 KM2 11 KM3
condition 2
c e
2 Action2
3
Henri-Joël AKOUE 6
UNIVERSITE DE DOUALA ENSET
Règle : Le franchissement d'une transition entraîne simultanément l'activation de toutes les étapes
immédiatement suivantes et la désactivation de toutes les étapes immédiatement précédentes.
Illustration Règle 2 et Règle 3 :
m m
1 KM1 10 1 KM1 10
a c a c
2 KM2 11 KM3 2 KM2 11 KM3
m m
1 KM1 10 1 KM1 10
a c a c
3 3
Henri-Joël AKOUE 7
UNIVERSITE DE DOUALA ENSET
a c a c
2 KM1 11 KM3 2 KM1 11 KM3
a c
2 KM1 11 KM3
(T2) f=1
3 KM2 11 KM4
(c)T2 franchie
Figure 6: Cas d'une transition précédent plusieurs étapes
Illustration :
La portion de GRAFCET de la figure 7 permet d’illustrer la règle 4.
En effet :
Henri-Joël AKOUE 8
UNIVERSITE DE DOUALA ENSET
a c
(T1) m+n m
(T2)
2 KM2 5
c d
Henri-Joël AKOUE 9
UNIVERSITE DE DOUALA ENSET
7.1 Etapes
Symbole Désignation Explications
Henri-Joël AKOUE 10
UNIVERSITE DE DOUALA ENSET
23
a transition Déjà
24
synchronisation Déjà
sélection Déjà
Front montant d’une Détection du passage d’une variable
↑ 𝑣𝑎𝑟
expression logique booléenne de 0 à 1.
Front montant d’une Détection du passage d’une variable
↓ 𝑣𝑎𝑟
expression logique booléenne de 1 à 0.
La notation «t1/*/t2» indique que la
réceptivité n'est vraie qu'après un temps
t1 depuis l'occurrence du front montant
25
(↑*) de la variable temporisée et
Réceptivité dépendante du redevient fausse après un temps t2
t1/*/t2
temps depuis l'occurrence du front descendant
(↓*). L'astérisque doit être remplacé
26
par la variable que l'on désire
temporiser, par exemple une variable
d'étape ou une variable d'entrée.
Henri-Joël AKOUE 11
UNIVERSITE DE DOUALA ENSET
7.3 Actions
A chaque étape du Grafcet est associée aucune, une ou plusieurs actions. A travers les actions, le
Grafcet agit sur les variables de sortie de plusieurs façons. Nous présentons ci-dessous quelques
actions fréquemment rencontrées.
Symbole Désignation Explications
Henri-Joël AKOUE 12
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 13
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 14
UNIVERSITE DE DOUALA ENSET
8. Structuration du GRAFCET
Afin de réduire la complexité dans la synthèse et l’analyse des systèmes séquentiels complexes écrits
à partir d’un GRAFCET, plusieurs techniques de structuration sont utilisée. Nous proposons ci-
dessous quelques exemples illustrant aux mieux ces situations.
Henri-Joël AKOUE 15
UNIVERSITE DE DOUALA ENSET
NB :
- L'expansion d'une macro-étape peut comporter une ou plusieurs étapes initiales.
- L'expansion d'une macro-étape peut comporter une ou plusieurs macro-étapes.
- l’expansion de la macro-étape est la représentation unique d’un fonctionnement et n’est donc
pas « duplicable » comme un sous-programme.
On peut également indiquer par une expression littérale qu'une étape # est encapsulée dans une étape
encapsulante * en utilisant les variables d'étape et sans nommer l'encapsulation. Dans ce cas on note
X*/X#.
Henri-Joël AKOUE 16
UNIVERSITE DE DOUALA ENSET
Exemple : X4/X25/X12 désigne l’encapsulation de l'étape 12 dans l'étape 25, elle-même encapsulée
dans l'étape 4.
Remarque :
- Rappelons que l’activation de l’étape encapsulante entraîne l’activation des étapes indiquées
par « * » et appelé lien d’activation.
- Les grafcets encapsulés peuvent ensuite évoluer normalement tant que l’étape encapsulante
est active ;
- La désactivation de l’étape encapsulante entraîne la désactivation de toutes les étapes
encapsulées
La figure ci-dessous représente un exemple d’étape encapsulante et les étapes encapsulées.
Henri-Joël AKOUE 17
UNIVERSITE DE DOUALA ENSET
Le grafcet global est constitué des grafcets partiels G1 et G2. Le grafcet partiel G1 est constitué de
deux grafcets connexes. Un grafcet connexe est une structure de grafcet telle qu’il existe
toujours une suite de liens (alternance d’étapes et de transitions) entre deux éléments quelconques,
étape ou transition, de ce grafcet.
30 G2{1,3,4,9} 10 G5{*}
Henri-Joël AKOUE 18
UNIVERSITE DE DOUALA ENSET
Système
PC Préactionneurs Actionneurs PO
1
3 Capteurs 2
Henri-Joël AKOUE 19
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 20
UNIVERSITE DE DOUALA ENSET
NB : En général, les ordres et les informations sont définis par les mnémoniques attribués aux
préactionneurs et aux capteurs utilisés. Dans le cas d'une utilisation d'un Automate Programmable
Industriel, ces mnémoniques peuvent être les codes d'entrée/sortie de l'API.
Henri-Joël AKOUE 21
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 22
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 23
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 24
UNIVERSITE DE DOUALA ENSET
Henri-Joël AKOUE 25
UNIVERSITE DE DOUALA ENSET
La ressource peut être utilisée par A (Macro M1) ou par B (Macro B).
Henri-Joël AKOUE 26
UNIVERSITE DE DOUALA ENSET
Bibliographie
[1] R. Philippe, « 1) Rappels 2) Structuration & Hiérarchisation 3) Implémenter Des Grafcets 4)
Coordination De Taches », p. 130, avr. 2006.
[2] « IEC 60848 Ed. 2 Specification language GRAFCET for sequential function charts », p. 94.
[3] B. Marx, « une introduction aux Systèmes Dynamiques à Evénements Discrets », p. 13.
[4] International Electrotechnical Commission, International Electrotechnical Commission, et
Technical Committee 3, GRAFCET specification language for sequential function charts =
Langage de spécification GRAFCET pour diagrammes fonctionnels en séquence. Geneva:
International Electrotechnical Commission, 2013.
[5] S. Schupp, A. Fay, et F. Schumacher, « Transformation of GRAFCET-Based Control
Specifications Into an IEC 61131-3 Implementation », 2015.
[6] « IEC 60848 Ed. 3 GRAFCET specification language for sequential function charts », 2013, [En
ligne]. Disponible sur: https://webstore.iec.ch/publication/3684&preview=1
Henri-Joël AKOUE 27