Chapitre 2
Les Automates Programmables
Industriels
Commande et Système PO
gestion de cycle physique
Pupitre de
ORDRES
commande
AUTOMATE
pré-actionneurs
PC S
PR
E Actionneurs
Opérateur Comptes
rendus
Exécution du travail
Informations
DETECTION
Fig. 2.1 – Situation de l’automate dans un système automatisé de production
2.1 La structure
Cet ensemble électronique gère et assure la commande d’un système au-
tomatisé. Il se compose de plusieurs parties et notamment d’une mémoire
15
CHAPITRE 2. LES A.P.I. 16
programmable dans laquelle l’opérateur écrit, dans un langage propre à l’au-
tomate, des directives concernant le déroulement du processus à automati-
ser. Son rôle consiste donc à fournir des ordres à la partie opérative en vue
d’exécuter un travail précis comme par exemple la sortie ou la rentrée d’une
tige de vérin, l’ouverture ou la fermeture d’une vanne. La partie opérative
lui donnera en retour des informations relatives à l’exécution du-dit travail.
Fig. 2.2 – Structure interne d’un API
Les API comportent quatre parties principales :
– Une mémoire ;
– Un processeur ;
– Des interfaces d’Entrées/Sorties ;
– Une alimentation (240 Vac → 24 Vcc ).
Ces quatre parties sont reliées entre elles par des bus (ensemble câblé auto-
risant le passage de l’information entre ces 4 secteurs de l’API). Ces quatre
parties réunies forment un ensemble compact appelé automate. Elles sont
détaillées dans l’article de M. Bertrand [16].
2.1.1 Description des éléments d’un API
Le processeur :
Son rôle consiste d’une part à organiser les différentes relations entre la zone
mémoire et les interfaces d’E/S et d’autre part à gérer les instructions du
programme.
Les interfaces :
L’interface d’Entrées comporte des adresses d’entrée, une pour chaque cap-
teur relié. L’interface de Sorties comporte des adresses de sorties, une pour
chaque pré-actionneur. Le nombre d’E/S varie suivant le type d’automate.
Les cartes d’E/S ont une modularité de 8, 16 ou 32 voies. Elles admettent
CHAPITRE 2. LES A.P.I. 17
ou délivrent des tensions continues 0 - 24 Vcc .
La mémoire :
Elle est conçue pour recevoir, gérer, stocker des informations issues des
différents secteurs du système que sont le terminal de programmation (PC
ou console) et le processeur, qui lui gère et exécute le programme. Elle
reçoit également des informations en provenance des capteurs. Il existe dans
les automates plusieurs types de mémoires qui remplissent des fonctions
différentes :
– la conception et l’élaboration du programme font appel à la RAM et
l’EEPROM ;
– la conservation du programme pendant l’exécution de celui-ci fait appel
à une EPROM.
L’alimentation :
Tous les automates actuels utilisent un bloc d’alimentation alimenté en 240
Vac et délivrant une tension de 24 Vcc .
2.1.2 Langages de programmation pour API
Chaque automate possède son propre langage. Mais par contre, les construc-
teurs proposent tous une interface logicielle répondant à la norme CEI1 1131-
3. Cette norme définit cinq langages de programmation utilisables, [15] qui
sont :
– GRAFCET ou SFC : ce langage de programmation de haut niveau per-
met la programmation aisée de tous les procédés séquentiels.
– Schéma par blocs ou FBD : ce langage permet de programmer graphi-
quement à l’aide de blocs, représentant des variables, des opérateurs ou
des fonctions. Il permet de manipuler tous les types de variables.
– Schéma à relais ou LD : ce langage graphique est essentiellement dédié
à la programmation d’équations booléennes (true/false).
– Texte structuré ou ST : ce langage est un langage textuel de haut ni-
veau. Il permet la programmation de tout type d’algorithme plus ou
moins complexe.
1
Commission Électrotechnique Internationale
CHAPITRE 2. LES A.P.I. 18
– Liste d’instructions ou IL : ce langage textuel de bas niveau est un
langage à une instruction par ligne. Il peut être comparé au langage
assembleur.
Pour programmer l’automate, l’automaticien peut utiliser :
– une console de programmation ayant pour avantage la portabilité.
– un PC avec lequel la programmation est plus conviviale, communiquant
avec l’automate par le biais d’une liaison série RS232 ou RS485 ou d’un
réseau de terrain.
CHAPITRE 2. LES A.P.I. 19
2.2 Conception d’un automatisme séquentiel
Pour un procédé donné, on doit tenir
compte : Etude et réalisation
des contraintes industrielles d'un automatisme
(rentabilité, sécurité),
de la nature et des types de capteurs
Etablir le cahier des charges
donc des signaux délivrés par les capteurs,
de la nature des actionneurs donc des
signaux de commande acceptés par les Tracer le grafcet de niveau 1
actionneurs.
Cette partie est la plus importante surtout
pour la disposition des capteurs ! (Le Analyse opérationnelle et
capteur placé à cet endroit va-t-il délivrer technologique
une réponse pertinente ?). Elle détermine
aussi :
Tracer le grafcet de niveau 2
le choix des interfaces d'E/S,
le nombre et le type d'E/S,
l'utilité ou pas d'un bus de terrain. Analyser les modes de
marches et d'arrêts
L'établissement des séquences de
l'automatisme est ce que l'on appelle le
oui
grafcet de niveau 1. C'est le diagramme des Problème ?
actions à réaliser en fonction des
informations reçues. non
Choisir la technologie de commande
Cette analyse prend en compte les contraintes
imposées par les capteurs et les actionneurs, ainsi Etablir le schéma
que les modes de fonctionnement de
l'automatisme (marche, arrêt, manuel,
automatique, sécurité). Câbler – mettre au point
C'est ce qu'on appelle le GRAFCET de niveau 2
qui représente l'automatisme complet à réaliser. A
ce stade, en fonction des problèmes rencontrés, on FIN
peut être obligé de revenir au cahier des charges
et/ou au GRAFCET de niveau 1.
les différents matériels de l'automatisme,
la technologie de commande (si besoin).
Chapitre 3
Le GRAFCET ou GRAphe
Fonctionnel de Commande
Étape/Transition ou Sequential
Function Chart
Norme internationale : [3] et [2], Norme française : [1]
”En 1975, le groupe de travail Systèmes Logiques de l’AFCET, décida,
sous l’impulsion de Michel BLANCHARD[17] qui en était l’animateur, de
créer une commission Normalisation de la représentation du cahier des charges
d’un automatisme logique.
Les universitaires et industriels réunis dans ce groupe se sont alors at-
taqués à un problème ardu : tenter de définir un formalisme simple, accepté
par tous, adapté à la représentation des évolutions séquentielles d’un système,
intelligible à la fois par les concepteurs et les exploitants, et fournissant po-
tentiellement des facilités de passage à une réalisation, à base matérielle et/ou
logicielle de l’automatisme ainsi spécifié. Au début, le travail consista à dres-
ser un état de l’art des différentes approches de modélisation du compor-
tement de tels automatismes. Trois grandes classes d’outils de modélisation
furent ainsi recensées :
– les organigrammes ;
– les représentations de systèmes logiques à évolutions simultanées (dont
les Réseaux de Pétri) [8] ;
– les outils dérivés des graphes d’état.
L’analyse des avantages et inconvénients de ces outils mena, en 1977,
à la définition du GRAFCET, ainsi nommé pour, à la fois marquer l’ori-
gine de ce nouvel outil de modélisation grAFCET et son identité GRAphe
20
CHAPITRE 3. LE GRAFCET 21
Fonctionnel de Commande Etapes–Transitions). Les résultats de ces tra-
vaux firent l’objet, d’une part, d’un rapport interne à l’AFCET, daté d’août
1977, et, d’autre part d’une publication officielle dans la revue ”Automatique
et Informatique Industrielle” en décembre 1977, date que la communauté
considère aujourd’hui comme correspondant à la date de naissance effective
du GRAFCET.” extrait de ”Générations Grafcet” de Pascal LHOSTE 1 ,
Animateur du Groupe ”GRAFCET”, Novembre 1997.
Le GRAFCET permet ”. . . l’établissement des descriptions de la fonc-
tion et du comportement des systèmes de commandes en établissant une
représentation graphique indépendante de la réalisation technologique. . . ”
(norme [3]).
Le GRAFCET est destiné à représenter des automatismes logiques (ou
discrets), c’est à dire des systèmes à événements discrets dans lesquels les
informations sont de type booléennes ou peuvent s’y ramener (par exemple
la comparaison d’une température avec un seuil). Le GRAFCET est utilisé
généralement pour spécifier et concevoir le comportement souhaité de la par-
tie commande d’un système, mais il peut également être utilisé pour spécifier
le comportement attendu de la partie opérative ou bien de tout le système
de commande.
3.1 But du GRAFCET
Lorsque le mot GRAFCET (en lettre capitale) est utilisé, il fait référence à
l’outil de modélisation. Lorsque le mot grafcet est écrit en minuscule, il fait
alors référence à un modèle obtenu à l’aide des règles du GRAFCET. Présenté
sous forme d’organigramme, son but est la description du fonctionnement de
l’automatisme contrôlant le procédé. C’est tout d’abord un outil graphique,
puissant, directement exploitable, car c’est aussi un langage pour la plupart
des API existants sur le marché.
Il comprend :
– des étapes associées à des actions ;
– des transitions associées à des réceptivités ;
– des liaisons orientées reliant étapes et transitions.
1
http ://www.lurpa.ens–cachan.fr/grafcet/groupe/gen g7/geng7.html
CHAPITRE 3. LE GRAFCET 22
Commande : deux boutons simultanés,
g d
c'est une sécurité pour
l'opérateur.
AU Sécurité : - repos position haute,
h
- arrêt d'urgence
m - arrêt si relâchement des
b deux boutons de
commande.
Manuel : entretien
Fonctionnement :
repos : position haute (et h à 1)
action sur g et d ?
descente poinçon
jusqu'à b ?
remontée poinçon
jusqu'à h ?
repos
Conditions initiales
1
poinçon h =1
g et d à 1
si g et d à 1
descente
Etapes 2 Actions
Transitions
bà1
si g et d à 1
remontée
3
hà1
Liaison orientée
Fig. 3.1 – Exemple de la presse à emboutir
CHAPITRE 3. LE GRAFCET 23
Attention ! Ce grafcet n’est pas complet, il manque l’arrêt d’urgence et la
commande manuelle. Il faut noter que :
– suivant les capteurs, les conditions de transitions changent (ouvert ou
fermé au repos) ;
– suivant les actionneurs, les actions sont différentes ;
– la sécurité opérateur est effectuée par une action, si la condition g et d
à 1 est vraie.
3.2 Description du GRAFCET
3.2.1 Les étapes
L’étape symbolise un état ou une partie de l’état du système. L’étape
possède deux états possibles : active représentée par un jeton dans l’étape ou
inactive. L’étape i, repérée numériquement, possède ainsi une variable d’état,
appelée variable d’étape Xi . Cette variable est une variable booléenne valant
1 si l’étape est active, 0 sinon.
Étape initiale
Elle représente le système à l’état de repos initial. Elle est
activée au début du cycle.
Étape
A chaque étape est associée une action ou plusieurs, c’est
à dire un ordre vers la partie opérative ou vers d’autres
grafcets.
3.2.2 Les transitions
i Une transition indique la possibilité d’évolution qui
existe entre deux étapes et donc la succession de deux
activités dans la partie opérative. Lors de son fran-
Tr a
i chissement, elle va permettre l’évolution du système. A
chaque transition est associée une réceptivité qui exprime
i+1 la condition nécessaire pour passer d’une étape à une autre.
CHAPITRE 3. LE GRAFCET 24
Cette condition est écrite sous forme d’une proposition logique, une fonc-
tion combinatoire calculée à partir :
– des variables d’entrées traduisant l’état des capteurs, des boutons pous-
soirs, etc.,
– du temps,
– de l’état courant des étapes du grafcet (les Xi ).
Si la réceptivité n’est pas précisée, alors cela signifie qu’elle est toujours vraie.
Règle : si l’étape i est inactive, Xi = 0, la transition Tri est sans ef-
fet. Cependant, attention, valider sans raison une transition peut avoir des
conséquences graves, perturbant le cycle dans certains cas !
i Si l’étape i est active, Xi = 1, la transition a est validée,
alors :
Si a = 0, alors attente
a
Si a = 1, alors l’étape i est dévalidée Xi = 0 et l’étape
suivante i+1 est activée, Xi+1 = 1.
i+1
3.2.3 Les liaisons orientées
Une liaison orientée est le lien qui lie une étape à une transition ou l’in-
verse. Par convention, étapes et transitions sont placées suivant un axe ver-
tical. Les liaisons orientées sont de simples traits verticaux lorsque la liaison
est orientée de haut en bas, et sont munis d’une flèche vers le haut lorsque
la liaison est orientée vers le haut.
3.2.4 Notation des entrées/sorties
Lors de l’établissement du grafcet de spécification (grafcet de niveau 1),
on utilise des noms explicites pour les entrées du système modélisé ainsi que
pour les sorties. Lors du passage au grafcet de réalisation, on utilise plutôt
des noms logiques : Ei pour les entrées et Si pour les sorties.
CHAPITRE 3. LE GRAFCET 25
3.2.5 Les actions
L’action associée à l’étape peut être de 3 types : continue, conditionnelle
ou mémorisée.
Actions continues
temps
Ordre A Xi : étape active
i
A : action (sortie à 1)
La ou les sorties correspondant à l’ordre A sont mises à 1 tant que l’étape
associée est active. Lorsque l’étape devient inactive, la ou les sorties sont
mises à 0.
Actions conditionnelles
Une action conditionnelle n’est exécutée que si l’étape associée est active
et si la condition associée est vraie. Elles peuvent être décomposées en 3 cas
particuliers :
Action conditionnelle simple : Type C
temps
Condition X
i
i C Ordre A Cond.
A = Cond . X
i
CHAPITRE 3. LE GRAFCET 26
Action retardée : Type D (delay)
temps
5s 5s
X
i
i D Ordre A D
A = t/X /D . X
i i
D est la durée de la temporisation, c’est à dire le retard mis pour passer à 1
après que Xi soit passé à 1.
Action limitée dans le temps : Type L (limited)
temps
2s 2s
X
i
i L Ordre A L
A = t/X /L . X
i i
Actions mémorisées
n S Début Ordre A temps
X
n
X
m
m R Arrêt Ordre A
A
CHAPITRE 3. LE GRAFCET 27
On peut ainsi donner l’équation d’un ordre A en fonction des états des
étapes, des conditions éventuelles et du temps.
3.2.6 Les réceptivités
Une réceptivité est associée à chaque transition. C’est une fonction booléen-
ne calculée à partir des entrées du graphe, des états des étapes ou des tem-
porisations. Une réceptivité est donc écrite en utilisant les opérateurs ET,
OU, NON et front. Le front montant ou descendant d’une variable permet
de situer dans le temps le changement de valeur de ce capteur. On les note
respectivement E et Ē. Les fronts ne sont à 1 que durant un délai d, qui
correspond au temps de prise en compte de l’événement, c’est à dire le temps
de franchissement d’une transition.
Capteur C1
C1
C1
temps
3.2.7 Les temporisations
Les temporisations utilisées en GRAFCET font référence aux variables
d’étapes (Xn ). Une variable temporisation Sn est une variable booléenne dont
le mode d’évaluation permet de prendre en compte le temps. Elle peut s’écrire
de manière générale Sn = t1 /Xn /t2 où :
– En désigne la variable d’entrée,
– t1 désigne le retard apporté au changement de l’état logique 0 → 1
de la variable d’entrée En . Si t1 = 0, alors la temporisation s’écrit
Sn = Xn /t2 .
– t2 désigne le retard apporté au changement de l’état logique 1 → 0
de la variable d’entrée En . Si t2 = 0, alors la temporisation s’écrit
Sn = t1 /Xn .
CHAPITRE 3. LE GRAFCET 28
En Sn
t1 t2
En
Temps
Sn
t1 t2
La variable Xn (l’étape n associée) doit être active pendant un temps
supérieur ou égal à t1 pour que Sn puisse être évaluée.
3.3 Les règles d’évolution du GRAFCET
Règle N˚1 – Condition initiale
A l’instant initial, seules les étapes initiales sont actives.
Règle N˚2 – Franchissement d’une transition
Pour qu’une transition soit validée, il faut que toutes ses étapes amont
(immédiatement précédentes reliées à cette transition) soient actives. Le fran-
chissement d’une transition se produit lorsque la transition est validée, ET
seulement si la réceptivité associée est vraie.
Règle N˚3 – Évolution des étapes actives
Le franchissement d’une transition entraı̂ne obligatoirement dans cet ordre
la désactivation de toutes ces étapes amont et l’activation de ses étapes aval.
Règle N˚4 – Franchissement simultané
Toutes les transitions simultanément franchissables à un instant donné sont
simultanément franchies.
Règle N˚5 – Conflit d’activation
Si une étape doit être simultanément désactivée par le franchissement d’une
transition aval, et activée par le franchissement d’une transition amont, alors
elle reste active. On évite ainsi des commandes transitoires (néfastes au
procédé) non désirées.
CHAPITRE 3. LE GRAFCET 29
Durée de franchissement d’une transition ou d’activité d’une
étape
La durée de franchissement d’une transition est considérée théoriquement
comme aussi petite que l’on veut, mais non nulle, même si, en pratique, cette
durée peut être imposée par la technologie utilisée pour la réalisation de l’au-
tomatisme. De même, la durée d’activité d’une étape ne peut pas être nulle,
mais suffisante, si besoin est, pour effectuer une action fugitive à la vitesse
de la partie commande.
3.4 Les structures de base
3.4.1 Saut d’étape et reprise de séquence
2 20
a b a b g
3 21
h i
c h i
4 22
Saut d'étape Reprise de
séquence
CHAPITRE 3. LE GRAFCET 30
3.4.2 Aiguillage entre deux ou plusieurs séquences
Soit X1 active et a = 0 d = 0
1 Divergence OU
→ attente que a ou d passe à 1
a (ou a ⋅ d ) d (ou ā·d) Branche 1 :
si a = 1 → X2
Branche 2
2 4
Branche 1
si b = 1 → X3
si c = 1 → X5
b e Branche 2 :
si d = 1 → X4
3 si e = 1 → X5
Remarque : chaque branche de la
c divergence peut être terminée par
un saut, auquel cas il n’y a pas de
Convergence OU convergence en OU.
5
Attention ! ! ! Si a et d sont à 1 simultanément, alors nous sommes confronté
à un cas de parallélisme interprété. Les étapes 2 et 4 vont devenir actives si-
multanément et donc provoquer l’exécution d’actions en parallèle, situation
non voulue par le concepteur. a et d doivent être des conditions exclusives :
l’une ou l’autre sera vraie, mais pas les deux à la fois. On résout ce problème
en mettant, par exemple, comme condition sur la branche 1.
3.4.3 Parallélisme
Au contraire de l’aiguillage où ne peut se dérouler qu’une seule activité à
la fois, il peut y avoir plusieurs activités indépendantes pouvant se dérouler
en parallèle. On parle alors de parallélisme structurel.
CHAPITRE 3. LE GRAFCET 31
1 Après le franchissement de a, nous ob-
Divergence ET tenons ainsi deux activités simultanées
a ou parallèles.
La synchronisation permet d’attendre
la fin de plusieurs activités se déroulant
2
Branche 1
Branche 2
en parallèle, pour continuer par une
seule. On parle alors de synchronisa-
b 4
tion puisque, l’activité de l’étape 4
qui se termine avant celle de 3 doit
3 attendre et se synchroniser avec elle.
Synchronisation
Ainsi, pour la compréhension du
GRAFCET, une étape dite de syn-
c chronisation peut être rajoutée dans la
branche la plus rapide de la divergence.
5
3.4.4 Sous-grafcet ou séquence répétée
Dans un système automatisé, certaines séquences peuvent revenir de façon
répétitive dans le cycle. Pour éviter de répéter ces mêmes actions, il est
possible d’utiliser un sous-programme. Celui-ci est écrit sous la forme d’un
grafcet indépendant, connecté au grafcet principal.
CHAPITRE 3. LE GRAFCET 32
4 S 30 30
X 32 X4
5 31
6 32 Fin de l'esclave
X4
GRAFCET GRAFCET
Maître Esclave
Au départ, les étapes initiales des deux grafcets sont activées. Dans le
maı̂tre, l’activation de l’étape 4, X4 = 1, va activer le déroulement du grafcet
esclave en validant la première transition, et provoquer le déclenchement de la
réceptivité X32 . Dans l’esclave, l’activation de l’étape 32, X32 = 1, provoque
l’apparition dans le maı̂tre de la réceptivité X32 qui autorise le déroulement
du programme principal, en dévalidant X4 . Cette étape 32 ”rend la main au
maı̂tre”.
Il existe une autre méthode pour rendre la main au grafcet maı̂tre, qui
d’ailleurs est la plus utilisée. Elle est illustrée ci-dessous et utilise une tem-
porisation pour maintenir la variable X32 à 1 pendant 1 s afin de rendre la
main au maı̂tre.
CHAPITRE 3. LE GRAFCET 33
4 S 30 30
X 32 X4
5 31
GRAFCET 32 X32 t = 1s X12
Maître
X12
GRAFCET
Esclave
Les grafcets esclaves sont très utiles pour les séquences répétées, arrêt
d’urgence, commande manuelle. Ils permettent de commander plusieurs au-
tomatismes sur un même API.
3.4.5 Gestion de conflits
Suivant la structure de programmation choisie, et pour des automatismes
donnés, il existe des situations conflictuelles qui peuvent avoir des conséquences
graves. Comment y remédier ?
Aiguillage
Si les conditions d’aiguillage sont toutes validées simultanément, l’automati-
cien est face à un problème de préséance, qui se résout en doublant l’une des
conditions d’aiguillage (cf. 3.4.2).
Parallélisme où 3 types de conflits peuvent se présenter
– le déroulement simultané de séquences avec attente commune. Ceci
se produit, si les durées des actions des séquences simultanées sont
différentes ! On ajoute alors une étape de synchronisation sans action.
C’est ce que l’on appelle la synchronisation de durée.
CHAPITRE 3. LE GRAFCET 34
– l’état d’avancement de plusieurs séquences simultanées. Une séquence a
son déroulement tributaire de l’état d’avancement d’une autre séquence.
L’utilisateur a alors besoin d’une synchronisation de décalage tempo-
rel qui peut se faire au niveau d’une transition ou d’un grafcet esclave
activé en fonction des contraintes de synchronisation.
– la mémorisation de disponibilité d’une partie de la machine. Une séquence
particulière n’est utilisée qu’alternativement par plusieurs séquences. Il
faut alors faire un choix de priorité ou utiliser des étapes d’attente si
la séquence commune est déjà utilisée.
Remarque : sur certains API, la convergence en ET est suivie d’une tran-
sition qui est toujours validée à 1. Pour résoudre cela, on remplace donc :
Etape de synchronisation
sans action
par
a 1
3.5 GRAFCET de niveau 1 et 2
3.5.1 GRAFCET de niveau 1 du point de vue de la
partie opérative
C’est en général la description de l’automatisme seul, c’est à dire l’en-
chaı̂nement des actions et des transitions permettant de contrôler le procédé.
Lorsque l’on aborde l’analyse et la description d’un système, on ne sait pas
quelle technologie sera retenue pour les actionneurs, les capteurs et la com-
mande. On décrira dans ce GRAFCET les actions et les événements en termes
généraux.
3.5.2 GRAFCET de niveau 2 du point de vue de la
partie commande
C’est la description complète de l’automatisme qui tient compte de toutes
les contraintes du procédé. Les points essentiels du GRAFCET de niveau 2
sont :
CHAPITRE 3. LE GRAFCET 35
– la simplification du GRAFCET niveau 1, c’est à dire les parallélismes
et les séquences répétées ;
– les modes de fonctionnement de l’automatisme, c’est à dire la prise
en compte de la marche automatique, de la marche par cycle et de la
marche manuelle utile pour la maintenance et les réglages ;
– les arrêts d’urgence entraı̂nant la coupure d’alimentation, l’utilisation
d’une variable AU (si arrêt d’urgence AU = 1) à rajouter dans les condi-
tions logiques pour les différentes actions, une procédure de dégagement
si AU = 0 ;
– les sécurités opérateur, c’est à dire la mise en place de protections, de
commandes à deux mains, qui doivent être activées pour le départ du
cycle et pendant le cycle ;
– les sécurités procédé, c’est à dire l’arrêt de l’automatisme si une condi-
tion anormale est détectée, par exemple la détection d’un objet incor-
rect ou mal positionné ;
– les conditions initiales, c’est à dire les différentes positions au repos (au
départ du cycle), l’état de l’alimentation et l’ensemble des tests des-
tinés à vérifier les conditions initiales.
La complexité de cette tâche peut être grande ! Le GRAFCET de niveau
2 doit être étudié avec le plus grand soin. Ceci peut éventuellement conduire
à modifier le procédé, et à modifier si besoin les capteurs et les actionneurs !
Dans certains cas, on peut être amené (après étude) à rechercher d’autres
solutions que l’automatisme séquentiel, par exemple la logique floue. Ces cas
limites sont :
– une indétermination logique au niveau du procédé ;
– une description logique inadaptée ;
– une durée de cycle de scrutation ou d’acquisition trop longue ;
– la difficulté à définir une séquence de dégagement pour l’arrêt d’ur-
gence.
Attention ! ! ! En milieu industriel, les essais erreurs peuvent être dan-
gereux ou catastrophiques : d’où l’intérêt de faire une étude du grafcet de
niveau 2 très approfondie ! ! !
CHAPITRE 3. LE GRAFCET 36
3.6 Modes de marches et d’arrêts
On considère un ensemble partie opérative – partie commande autonome,
avec éventuellement une partie opérative défaillante, mais une partie com-
mande toujours en ordre de marche.
3.6.1 Cycle unique ou cycle par cycle
dcy·CI
Fin de cycle
Voilà le grafcet type pour un cycle unique, avec comme condition de
validation : dcy · CI
– dcy étant l’ordre de départ donné par l’opérateur ;
– CI la variable représentant les conditions initiales.
A ce grafcet, on peut rajouter :
– Un voyant de contrôle activé lors de l’étape d’initialisation ;
1 Voyant si CI
CHAPITRE 3. LE GRAFCET 37
– Un test anti-répétition du cycle.
1 1
dcy↑·CI dcy·CI
Détection de front OU Etape anti-répétition
Fin
n+1
X1
dcy
3.6.2 Cycle par cycle ou continu
Il existe deux solutions pour réaliser ce type de grafcet. Ces deux solutions
font appel aux deux variables associées au cycle : dcy pour le départ du cycle,
et acy pour l’arrêt du cycle.
20 1
dcy ⋅ acy ⋅ CI X21·CI
21 2
acy
C'est la fin de ce cycle qui
permet le lancement de celui
de droite.
n
Fin
CHAPITRE 3. LE GRAFCET 38
Solution N˚1
20 1
dcy ⋅ acy ⋅ CI X21·CI
21 2
acy
C'est la fin de ce cycle qui
permet le lancement de celui
de droite.
n
Fin
Solution N˚2 : un interrupteur permet de choisir entre le mode automatique
ou celui cycle par cycle.
3.6.3 Intervention réglages et dégagement
– Marche manuelle
m → manuel
1 a → auto
m
m⋅a a a
11 MAN 12 AUTO Cde de A · Sécurité
Cde de B · …
m a 11 A B C
CHAPITRE 3. LE GRAFCET 39
– Marche séquence par séquence ou étape par étape
i i
(
e⋅ E E +S ) ou une étape d'attente
e⋅E E e⋅E E
E/E : variable indiquant le mode étape par étape i+1
S : suite
S
On ajoute, si possible, une transition permettant soit de sélectionner
une séquence, soit de s’arrêter sur une étape donnée. Ceci est très dif-
ficile à mettre en œuvre.
Attention : tous ces modes présentent de grand danger matériel et
opérateur !
CHAPITRE 3. LE GRAFCET 40
3.6.4 Arrêts
– Arrêt momentané
X11
10 n
marche X11
11 Valide actions n+1
arrêt
grafcet maître
grafcet esclave :
arrêt momentané
– Arrêt d’urgence
X31
30 n
AU X31
31 Valide actions n+1
grafcet maître
grafcet esclave :
arrêt d'urgence
CHAPITRE 3. LE GRAFCET 41
– Arrêt d’urgence + défauts + dégagement
40 Σd = def1+def2+… somme des défauts
degt :dégagement
AU ⋅ Σd
41 Valide actions
AU Σd
42 Attente 45 En défaut
degt (AU) degt degt
43 Action 46 Action X40
fin degt fin degt
44 ? 47 Condition
fin fin
X40
Glossaire
API : Automates Programmables Industriels
EPROM : Erasable Programmable Read-Only Memory, ROM qui peut être
effacée (sous UV) et reprogrammée.
EEPROM : Electrically Erasable Programmable Read Only Memory, ROM
qui peut être effacée par un signal électrique et reprogrammée.
FBD : Function Block Diagram, en français schéma par blocs, langage de
programmation d’automates.
GEMMA : Guide d’Etudes des Modes de Marches et d’Arrêts
GRAFCET : GRAphe Fonctionnel de Commande Etape/Transition – lan-
gage de programmation d’automates.
ILS : Interrupteur à Lame Souple
IL : Instruction List, en français liste d’instructions, langage de programma-
tion d’automates.
LD : Ladder Diagram, en français schéma à relais, langage de programmation
d’automates.
PC : Partie Commande
PO : Partie Opérative
PR : Partie Relation
RAM : Random Access Memory
ROM : Read Only Memory
SAP : Système Automatisé de Production
SCC : Système Contrôle/Commande
SFC : Sequential Function Chart, en français GRAFCET, langage de pro-
grammation d’automates.
ST : Structured Text, en français texte structuré, langage de programmation
d’automates.
TOR : Tout Ou Rien
42
Bibliographie
[1] NF C 03-190. Diagramme fonctionnel GRAFCET pour la description
des systèmes logiques de commande. Union Technique de l’Électricité,
1995.
[2] Norme CEI 1131-3. Automates programmables - Partie 3 : Langages de
programmation. Commission électrotechnique internationale, 1993.
[3] Norme CEI 848. Etablissement des diagrammes fonctionnels pour
systèmes de commande. Commission électrotechnique internationale,
1988.
[4] Bodart A., Carre–Menetrier V., de Loor P., J.B. Deluche, J. Du-
pont, D. Gendreau, J. Hancq, A. Kril, and J. Nido. 7 facettes du GRAF-
CET – Approches pratiques de la conception à l’exploitation. Cepadues
éditions, 2000.
[5] ADEPA/AFCET. Le GRAFCET : ouvrage de référence. Collection
Automatisation et Production, Cepadues Editions, 1991.
[6] P. Brard and G. Colombari. Outil de description des automatismes
séquentiels : Le grafcet. Techniques de l’Ingénieur, R 7250, 30 pages,
1995.
[7] Cours d’AUTOMATIQUE de D. CHAPPE à l’ENSMM (Besançon)
. http ://www.ens2m.fr/cours automatique/index.html.
[8] R. David and H. Alla. Du Grafcet aux réseaux de Pétri, 2e édition. Série
Automatique, Hermes, 1997.
[9] Cours de GRAFCET de V. Chapurlat au Mines d’Alès
. http ://www.lgi2p.ema.fr/%7Echapurla/enseignements.html.
[10] Exemples de grafcets sur le site LIMI (Brest)
. http ://doelan–gw.univ–brest.fr :8080/grafcet/index.html.
[11] Cours GRAFCET de P. Trau / ULP IPST / mars97
. http ://www–ipst.u–strasbg.fr/pat/autom/grafcet.htm.
[12] G. Déchenaux. API et pc : solutions concurrentes ou
complémentaires ? Techniques de l’Ingénieur, R 8022, 11 pages, 1998.
43
BIBLIOGRAPHIE 44
[13] Serveur du Groupe de recherche GRAFCET de l’AFCET (comporte
énormément de liens)
. http ://www.lurpa.ens–cachan.fr/grafcet/grafcet fr.html.
[14] D. Dupont and D. Dubois. Réalisation technologique du grafcet.
Techniques de l’Ingénieur, S 8032, 24 pages, 2002.
[15] P. Jargot. Langage de programmation pour api. norme cie 1131–3.
Techniques de l’Ingénieur, S 8030, 23 pages, 1999.
[16] Bertrand M. Automates programmables industriels. Techniques de
l’Ingénieur, S 8015, 14 pages, 2001.
[17] Blanchard M. Comprendre, maı̂triser et appliquer le GRAFCET.
Collection Automatisation et Production, Cepadues éditions, 1979.
[18] S. Moreno and E. Peulot. LE GEMMA : Modes de marches et
d’arrêts, Grafcet de coordination de tâches, Conception des systèmes
automatisés de production sûrs. Editions Casteilla, 1997.
[19] J. Perrin, M. Magniez, S. Sinibaldi, A. Cortial, S. Badeau,
F. Fronteri, and F. Agate. Automatique Informatique Industrielle.
Collection H. Longeot – L. Jourdan, Dunod, 1989.
[20] C. Pourcel. Systèmes Automatisés de Production. Collection Auto-
matisation et Production, Cepadues éditions, 1986.