Vous êtes sur la page 1sur 41

Partie A : Introduction la logique squentielle Chapitre 1 : Rappels sur les systmes combinatoires

1.1 DFINITION Dans un systme logique (les entres et sorties ne peuvent prendre que 0 ou 1 comme valeur) combinatoire, les sorties ne sont fonctions que des entres. entres : ei sorties : sj = fj(ei)

Systme combinatoire

Loutil mathmatique qui permet de dcrire les systmes combinatoires est lalgbre de Bool. Par la combinaison des trois fonctions de base que sont le NON, le OU (inclusif) et le ET, on va pouvoir dcrire chacune des sorties en fonction des entres. 1.2 Reprsentation dune fonction boolenne par schmas relais Le lecteur est habitu reprsenter des fonctions boolennes par les symboles traditionnels tels que :

&
ET

1
OU

=1
OU excl. sortie inverse

Il existe une autre faon de reprsenter les fonctions boolennes : les schmas relais aussi appel LADDER (vient des USA). Les lments de cette reprsentation sont : deux barres de potentiels (une gauche, une droite) ; des contacts (inverss ou non) portant le nom dune variable dentre ; sur la dernire colonne droite avant la barre de potentiel de droite, des bobines (inverses ou non) portant le nom dune variable de sortie ; la mise en srie (resp. en parallle) de deux contacts reprsente un ET (resp. un OU).

a a un contact (passant si a) a un contact invers (passant si a) a b un ET logique (passant si a.b)

b un OU logique (passant si a+b)

Exemple de ralisation : ralisation de : S = a.(b+c)

b bobine c barres de potentiel

Ce mode de reprsentation est courant dans les langages dautomate (voir partie B). Cette reprsentation est plus naturelle pour les lectriciens qui, pour comprendre le fonctionnement, mettent mentalement des intrrupteurs la place des contacts et une lampe la place de la bobine. Si la lampe sallume, cest que la variable de sortie vaut 1 et 0 sinon.

Chapitre 2 : Notion de systmes squentiels


2.1. NOTION DTAT Prenons l'exemple suivant : on considre un systme 1 entre e et une sortie S. La sortie S du systme doit changer de valeur chaque front montant de l'entre e. Ce cahier des charges peut tre reprsent par le chronogramme suivant : e S t

Pour une mme valeur de e, S peut prendre deux valeurs O ou 1. Ce systme n'est pas combinatoire: on ne peut pas dfinir S = f(e) Par contre la valeur de S peut tre dtermine en utilisant ce qui s'est pass auparavant. Le systme a en mmoire la valeur de S avant changement. La ralisation de ce systme ncessiterait des bascules.

Un systme squentiel est un systme dont les sorties l'instant t dpendent la fois des entres cet instant, mais aussi de ce qui s'est pass auparavant : l'histoire du systme. Cette histoire sera reprsente par une succession d'tats que prend le systme au cours du temps. Le changement d'tat sera provoqu par une variation des entres. Les sorties sont fonction de ltat du systme. Remarque : Quand le nouvel tat pourra tre dtermin uniquement partir de l'tat immdiatement prcdent et des entres, le systme sera dit markovien (on s'intressera uniquement ce type de systme). Un systme squentiel pourra tre reprsent par le schma suivant: entres : ei

Systme combinatoire tat

sorties : sj = fj(ei, tat)

Exemples de systmes squentiels : les montres, les digicodes, les ascenseurs.

Chapitre 3 : Modlisation des systmes squentiels

Le cahier des charges est constitu d'une suite de phrases dcrivant le fonctionnement dsir du systme. C'est la premire tape de la conception d'un systme. Afin d'analyser et de valider le cahier des charges, on le traduira en un formalisme qui ne permet aucune erreur dinterprtation. On parlera de modlisation. Les modles obtenus pourront tre utiliss aussi pour la synthse (laboration matrielle de la commande) : - chronogramme (diagramme des temps) - graphe de fluence - tableaux d'tat - graphe d'tat - graphe d'vnement - GRAFCET - Rseaux de Petri Dans ce cours, nous nous intresserons plus particulirement aux Grafcet (Partie B) qui permettent de reprsenter le fonctionnement de la partie commande de systmes automatiss de production et aux Rseaux de Petri qui permettent une modlisation dun systme de production pour en analyser ses performances (En deuxime anne).

3.1. CHRONOGRAMME C'est un modle graphique qui reprsente l'volution au cours du temps de toutes les entres et sorties du systme. exemple du diviseur par deux : e S tat 1
tat initial

Cette reprsentation permet de dfinir un certain nombre d'tats du systme. Ils correspondent une configuration des entres sorties. Ds que lon augmente le nombre dentres sorties, il existe un risque doublier certains tats et certaines possibilits dvolution. Ce mode de reprsentation nest pas synthtique. L'tat initial est choisi arbitrairement. Le chronogramme servira plutt pour reprsenter un exemple concret de fonctionnement. 3.2 GRAPHE DE FLUENCE C'est une traduction graphique du cahier des charges. dfinitions prliminaires: tat stable: tat pour lequel les sorties du systme restent inchanges, les combinaisons des entres tant fixes. Le graphe de fluence reprsente tous les tats stables du systme et l'ordre chronologique dans lequel on atteint chacun des tats partir des autres en fonction des variations des variables d'entre. Un tat est reprsent graphiquement de la manire suivante:

combinaison des variables d'entre conduisant l'tat suivant partir de l'tat prcdent

n de ltat valeur des sorties

exemple du diviseur par 2 : On choisit un tat initial: c'est l'tat partir duquel on construit le graphe. 1 0 1 2 1 0 3 1 1 4 0

exemple du chariot : On considre le procd suivant: A G D B M

cahier des charges: Si l'on appuie sur le bouton poussoir M lorsque le chariot est au repos en A. ce dernier quitte A, arrive en B et revient en A o il s'arrte. MAB n GD 1 00 010 110 7 01 010 3 01 000

100 2 01

000 4 01 001 5 10 000 6 10

Remarques: Il s'agit bien d'un systme squentiel, les tats 4 et 6 ont les mmes entres et des sorties diffrentes. Cette mthode de modlisation est systmatique : pour chaque tat on envisage toutes les variations possibles des entres. Pour ne pas alourdir la reprsentation on s'interdit d'appuyer de nouveau sur M lorsque le chariot est parti. On peut faire du graphe de fluence une reprsentation tabulaire : le tableau d'tat primitif 3.3 TABLEAU D'ETAT a) Tableau d'tat primitif. Les colonnes de ce tableau correspondent aux combinaisons des variables d'entre du systme. Les lignes correspondent aux diffrents tats. Les valeurs des sorties sont associes chaque tat. exemple du diviseur par 2 : e 0 1 3 3 1 1 2 2 4 4 S 0 1 1 0

Les chiffres en gras correspondent aux tats stables du systme. Les autres correspondent aux tats transitoires, c'est dire au passage d'un tat stable vers l'tat stable suivant. Cette transition est provoque par la variation de l'entre. L'volution se fait toujours horizontalement puis verticalement.

exemple du chariot : On transpose le graphe de fluence en tableau dtat primitif :


M.A.B 0.0.0 4 0.0.1 5 0.1.1 0.1.0


1 3

1.1.0 2

y
-


4 6

|
-

1.1.1 -

1.0.1 -

1.0.0 7 -

G.D 0.0 0.1 0.1 0.1 1.0 1.0 0.1

Les traits correspondent aux impossibilits d'volution du systme partir de l'tat stable indiqu sur la ligne. b) tats stables quivalents ou pseudo-quivalents Il est possible que, au cours de la description du systme permettant d'aboutir au tableau d'tats primitif, on ait utilis un ou plusieurs tats pour reprsenter en ralit un seul tat stable. On dira alors que deux (ou plusieurs) tats stables sont: quivalents si : ils correspondent aux mmes entres, ils produisent les mmes sorties, les squences qui en sont issues sont identiques. extrait dun tableau dtat tels que les tats 1 et 5 sont quivalents :
e1.e2 0.0

0.1 2 2

1.1 -

1.0 4 4

S 0 0

les tats 1 et 5 sont quivalents : tous les 5 peuvent tre remplacs par des 1. pseudo-quivalents si : mmes entres, mmes sorties, les squences qui en sont issues existent dans un cas et n'existent pas dans l'autre. extrait dun tableau dtat tels que les tats 1 et 5 sont pseudo-quivalents :
e1.e2 0.0

0.1 2

1.1 -

1.0 4 4

S 0 0

Dans les deux cas ci dessus on obtiendra:


e1.e2 0.0

0.1 2

1.1 -

1.0 4

S 0

c) tats compatibles : obtention du tableau d'tat rduit

Les tableaux d'tats obtenus jusqu' maintenant ne comportent qu'un seul tat stable par ligne. Certains tats pourront tre distingus en utilisant les combinaisons des variables d'entre. exemple :
e1.e2 0.0

0.1 2

1.1 3

1.0 4 -

S 0 1

Les tats 1 et 2 sont compatibles: on fusionne les deux lignes:


e1.e2 0.0 1(0) 0.1 2(1) 1.1 3 1.0 4

Les tats 1 et 2 seront distingus par la combinaison des variables d'entre (0.0 pour l'tat 1, 0.1 pour l'tat 2). Les volutions du systme seront prserves. Chaque valeur de la sortie est indique entre parenthses. Aprs fusionnement on obtient le tableau d'tats rduit. Chaque ligne du tableau d'tats rduit sera code par des variables supplmentaires, les variables internes. Les lignes du tableau d'tat rduit reprsentent les tats internes du systme. Rgles de fusionnement : deux lignes peuvent tre fusionnes si dans la mme colonne on trouve: - un tat stable i et un tat transitoire i, - des indiffrences (-), - un tat (stable ou instable) et une indiffrence. Pour rechercher les tats compatibles on tablit le polygone des liaisons dans lequel chaque sommet reprsente une ligne. Lorsque deux lignes sont fusionnables on les relie par un trait plein si les sorties sont identiques, on les relie par un trait pointill si les sorties sont diffrentes. exemple du chariot :
M.A.B 0.0.0 4 0.0.1 5 0.1.1 0.1.0


1 3

1.1.0 2

y
-


4 6

|
-

1.1.1 -

1.0.1 -

1.0.0 7 -

G.D 0.0 0.1 0.1 0.1 1.0 1.0 0.1

1 7 2 3 6 5 4

Polygone des liaisons

Deux choix sont possibles pour le fusionnement: - fusionner des lignes pour lesquelles les variables de sortie sont identiques : on obtient alors une machine de MOORE. - fusionner des lignes pour lesquelles les variables de sortie sont diffrentes: on obtient alors une machine de MEALY. Pour l'exemple prcdent : - machine de MOORE:
M.A.B a b c 0.0.0 -

0.0.1 5

0.1.1 -

0.1.0

1.1.0 2

y
-

1.1.1 -

1.0.1 -

1.0.0 -

~
-

G.D 0.0 0.1 1.0

- machine de MEALY:
M.A.B 0 . 0 . 0 0.0.1 ac 6 (1.0) 5 (1.0) b 4 (0.1) 5 0.1.1 0.1.0 1.1.0 1 (0.0) 2 3 (0.1) 2 (0.1) 1.1.1 1.0.1 1.0.0 7 (0.1)

Le nombre de lignes du tableau d'tats rduit reprsente le nombre d'tats internes ncessaire pour mmoriser le pass du systme (3 pour la machine de Moore, 2 pour la machine de Mealy). Dans la machine de Moore, les tats 2 et 3 seront reprsents par le mme tat interne b et par des entres diffrentes. Les tats 1 et 3 correspondant aux mmes entres externes seront reprsents par des tats internes diffrents. Les tats internes seront cods par des variables internes. Ce codage pourra tre optimal si l'on utilise le nombre minimum possible de variables internes (2 pour la machine de Moore, 1 pour la machine de Mealy). On peut aussi utiliser une variable par tat interne. 3.4. REMARQUES La description d'un systme squentiel par graphe de fluence ou par tableau d'tats primitif est une mthode systmatique de modlisation : on examine toutes les combinaisons des variables d'entre. Ces mthodes ne seront pas applicables pour des systmes ayant un grand nombre d'entres et (ou) un grand nombre d'tats. On prfrera alors employer des mthodes bases implicitement sur la description directe des tats internes : - graphe d'tat, - graphe dvnements, - GRAFCET, - Rseaux de Petri. Ces mthodes n'tant plus systmatiques, ncessiteront une validation des modles obtenus. Nous prsenterons le GRAFCET qui sert la modlisation du fonctionnement de la partie commande des systmes automatiss de production dans la partie B ; les rseaux de Petri seront vus lan prochain.

3.5. GRAPHE D'ETAT a) Le modle Les tats du systme sont reprsents par des cercles (que l'on appellera place). Des conditions d'volution qui sont des combinaisons des variables d'entres externes permettent l'volution du systme (passage d'un tat un autre tat). Elles sont indiques cot des transitions reprsentes par des traits. Un arc orient relie une place une transition et une transition une place. Une transition est franchie quand l'tat qui la sensibilise est actif et quand la condition d'volution qui lui est associe est vraie. L'tat initial est indiqu par un astrisque ou un point. Les sorties (ou action) associes aux tats sont indiqus cot des places. place transition

remarque: il existe une autre reprsentation o l'on ne fait pas figurer les transitions. N.B.: un systme tant dans un seul tat un instant donn, dans un graphe d'tat une seule place est active un instant donn. En consquence : - dans un graphe d'tat chaque transition a exactement un arc entrant et un arc sortant, - les conditions d'volution permettant de quitter un tat doivent tre exclusives. On pourra donc avoir les structures suivantes:

squence

choix divergence en OU (exclusif)

convergence en ou (exclusif)

premier exemple : chariot Dmarche: choix d'un tat initial (*) recherche des tats successeurs et des conditions d'volution qui amnent dans ces tats on associe ensuite les actions aux tats.

k A a M

c B

On aurait pu avoir aussi: k ac G si A

M b

Le premier modle est une machine de Moore, le second une machine de Mealy. On remarque que dans cette dernire les sorties dpendent des tats et des entres externes. Ces modles peuvent s'obtenir de faon systmatique partir des tableaux d'tats rduits (je vous invite le faire). deuxime exemple: A1 G1 D1 B1 M A2 G2 D2 B2

Par action sur M, si le chariot 1 est en A1, si le chariot 2 est en A2, dplacer le chariot 1 vers B1 et le chariot 2 vers B2. Lorsque le chariot 1 arrive en B1 il retourne vers A1 si le chariot 2 est dj pass en B2. Lorsque le chariot 2 arrive en B2 il retourne vers A2 si le chariot 1 est dj pass en B1. Il est trs difficile de faire un graphe de fluence ou un tableau d'tats primitif : il y a cinq variables d'entres externes donc 32 combinaisons diffrentes. On construira directement le graphe d'tat partir de l'tat initial que l'on choisit.

10

1 A2 A1

k M

2 G2 6 G1 7 3 A1 A2 B2 5 B1 D2

D1.D2 B2 4 D1 B1

G1.G2

Pour construire ce modle on suppose que les deux vnements B1 et B2 ne peuvent pas se produire en mme temps. Un vnement est produit par le changement de niveau d'une variable ou d'une expression boolenne. Hypothse fondamentale des systmes squentiels : Des vnements non corrls ne se produisent jamais en mme temps. Attention aux OU : Cette hypothse devrait garantir que le systme voluera soit vers l'tat 3 soit vers l'tat 4 depuis l'tat 2. Il faudra tre trs prudent pour passer du modle la ralisation : les choix technologiques peuvent corrler deux vnements qui ne le sont pas. Il est prfrable dcrire la condition d'volution de: 2 vers 3 : B1.B2 et de 2 vers 4 : B2.B1. On a assur l'exclusion logique des conditions. (Par commodit, je noterai X = non X) b) Validation du modle La modlisation par graphe d'tat n'tant pas une dmarche o l'on envisage toutes les combinaisons possibles des variables d'entre pour dcrire le systme il est ncessaire de valider le modle obtenu. On vrifiera que : les conditions d'volution des divergences en OU sont physiquement ou logiquement exclusives et que le modle traduit bien le cahier des charges. c) Conclusion Un graphe d'tat reprsente tous les tats du systme (chaque place est un tat). Les graphes d'tats font clairement apparatre deux mcanismes lmentaires des systmes squentiels : la squence et le choix. Par contre ils ne font pas apparatre clairement le paralllisme et la synchronisation. Ces derniers apparaissent clairement dans un autre type de modle: les graphes d'vnements. Exemple (trait en cours) :

11

On considre un digicode lentre dun immeuble. Il possde les touches a, b, c, d, e. Le code est a.c.e. Ces touches sont considres commes des entres. Elles valent 1 quand la touche est appuye et 0 quand elle est relche. Faire un graphe dtat reprsentant le fonctionnement de ce digicode. Faire ensuite le tableau dtat rduit du systme en considrant quon nappuie jamais sur deux touches en mme temps. Vrifiez que le graphe dtat et le tableau dtat rduit sont quivalents.

Exercice : Un chariot fait des aller-retours (sortie D et G) entre deux points (entres a et b) sans arrt. Quand un interrupteur c est 1, le chariot sarrte. Il reprend sa course quand c repasse 0. En prenant comme tat initial le chariot se dplace vers la droite, laborez le graphe dtat qui reprsentera ce systme. (suite de lexercice la fin du chapitre 4)
3.6. GRAPHE D'EVENEMENTS Dans un graphe d'vnements chaque place a au plus une transition d'entre et une transition de sortie. Par consquent on peut avoir les structures suivantes:

squence

paralllisme divergence en ET

synchronisation convergence en ET

Deux nouveaux mcanismes lmentaires des systmes squentiels apparaissent: le paralllisme et la synchronisation. On ne peut plus, en graphe d'vnements, reprsenter les choix. exemple des deux chariots : Il apparat une nouvelle reprsentation des tats du systme. Un tat est reprsent par l'ensemble des places actives un instant donn. Remarque : Les graphes d'tats et les graphes d'vnements n'tant pas normaliss, nous avons choisi une reprsentation graphique proche de celle des rseaux de Petri. " =l " marque des conditions de transition toujours vraie: elles seront franchies ds que toutes les places immdiatement prcdentes seront actives.
M D1 B1 D2 B2

=1 G1 A1 G2 A2

=1

12

Chapitre 4 : Synthse des systmes squentiels


Dans ce chapitre, nous ne traiterons que la mise en quation des graphes dtats : 4.1 REPRSENTATION ALGBRIQUE D'UN GRAPHE D'ETAT Cette reprsentation sera utile aussi bien pour une synthse avec des composants discrets simples (bascule D, ..) que pour une synthse avec des rseaux logiques programmables ou un calculateur. De plus les mthodes dveloppes pourront s'appliquer pour la synthse cble du Grafcet. a) Reprsentation des tats Reprenons le tableau d'tat rduit du chariot:
M.A.B a b c 0.0.0 0.0.1 5 0.1.1 0.1.0

1.1.0 2

y
-

1.1.1 -

1.0.1 -

1.0.0 -

~
-

G.D 0.0 0.1 1.0

Ce qui peut se mettre aussi sous la forme suivante :


M.A.B a b c 0.0.0 b+ c+ 0.0.1 c+ c+ 0.1.1 0.1.0 a+ b+ a+ 1.1.0 b+ b+ 1.1.1 1.0.1 1.0.0 b+ G.D 0.0 0.1 1.0

A l'intrieur du tableau figurent les futures valeurs des tats : on les note i+. On pourra, suite une variation d'une des entres externes, soit rester dans l'tat courant i, soit l'atteindre en venant d'un autre tat. De faon gnrale:

tat interne futur =

fonction ( entres externes et + des autres tats internes)

fonction ( entres externes et du mme tat interne)

(volution)
Dans notre cas: b+ = f(M,A,B,a) + f(M,A,B,b) a+ = f(M,A,B,c) + f(M,A,B,a) c+ = f(M,A,B,b) + f(M,A,B,c)

(maintien)

On calcule les quations d'volution partir de chaque tat source ainsi que l'quation de maintien.

13

Pour b+: quation d'volution : on atteint b+ partir de a seulement. En exploitant la ligne a du tableau d'tat rduit :
B \ M.A 0 1 0.0 x x 0.1 0 x 1.1 1 x 1.0 x x

do b+ev = M.a quation de maintien : on exploite la ligne b du tableau :


B \ M.A 0 1 0.0 1 0 0.1 1 x 1.1 1 x 1.0 1 x

do b+maint = B.b On obtient finalement : b+ = M.a + B.b Pour tout le systme on a: a+=A.c+ M.a b+=M.a+ B.b c+ = B.b + A .c Reprenons le graphe d'tat obtenu au chapitre prcdent:
k A a M

c B

Sur le modle figurent uniquement les conditions d'volution. On complte ce graphe pour reprsenter aussi les conditions de maintien : M

a k M

c G B

14

explications: le systme tant dans l'tat a, si la condition M devient vraie il passe dans l'tat b. La condition M peut alors disparatre, c'est B qui maintient le systme dans l'tat b. b) quations des sorties Pour une machine de Moore les sorties s'crivent uniquement en fonction des tats. Pour cet exemple on obtient : D=b G=c Pour une machine de Mealy les sorties s'crivent en fonction des tats et des entres externes. On aurait : G = (ac).A D=b c) Initialisation On peut prendre en compte l'initialisation dans les quations du systme. On ajoute une entre externe supplmentaire I: a+ = A.c + M.a + I b+ = (M.a+ B.b).I c+ = (B.b + A.c).I En faisant I = 1 on met le systme dans son tat initial. On autorise le fonctionnement en faisant I =0 Remarque : - La reprsentation algbrique s'tend d'autres modles que le graphe d'tat, au graphe d'vnements et au Grafcet, - La ralisation pratique consiste en une traduction de ces quations algbriques en circuits logiques en utilisant des bascules D ou JK, synchrones ou asynchrones.

Complter le graphe dtat du chariot (voir execice prcdent) en prenant en compte que les OU doivent tre exclusifs pour viter tout disfonctionnement, reprsentant les conditions de maintien, puis crire les quations dvolution et de maintien des tats du systme. Ecrire enfin les quations des sorties.
4.2 DIFFRENTES CATGORIES DE SYSTEMES SQUENTIEL Nous nous contenterons de les numrer et d' envisager les problmes qui se posent. La classification en asynchrone et synchrone dpend uniquement de la ralisation envisage. a) Systmes Squentiels Asynchrones Une modification des entres est immdiatement prise en compte. e S t

15

Les ralisations asynchrones sont de moins en moins envisages (sauf quand on a des objectifs de rapidit) car elles conduisent des alas de fonctionnement. Pour viter ces alas, il faudra s'interdire toute variation simultane des entres qui agissent sur le bloc combinatoire. Les problmes d'alas seront facilement matriss en effectuant une ralisation synchrone. b) Systmes Squentiels Synchrones Les changements d'tat sont effectus aprs validation par le front montant (ou descendant) d'un signal supplmentaire appel horloge. Pratiquement, l'horloge n'intervient que sur la mmorisation des tats: elle n'est pas considre comme une entre supplmentaire et n'interviendra jamais dans les mthodes de synthse. avantages: les entres externes peuvent commuter n'importe quand sauf sur les fronts actifs de l'horloge. Elles peuvent ventuellement tre synchronises par une deuxime horloge afin d'obtenir des informations stables sur les entres des organes de mmorisation. Pour le systme prcdent on obtiendra: H e S t

La plupart des ralisations concrtes utilisant des processeurs (automates, cartes microcontroleurs...) va fonctionner sur ce mode. Pour ces types de procds, lhypothse Des vnements non corrls ne se produisent jamais en mme temps nest plus assure car dans le en mme temps il faut cette fois comprendre entre deux fronts dhorloge. Il va donc falloir bien grr cette situation. Prenons lexemple des deux chariots. Le graphe dtat a t construit en prenant lhypothse quil est impossible que les deux chariots arrivent en mme temps. Do une divergence B1 OU B2. Rendre le OU exclusif ne rsoud pas le problme dune ventuelle simultanit des deux vnements (B1 et B2 dans un mme crneau dhorloge). Il faut donc prvoir une branche OU supplmentaire avec B1.B2. Ci-dessous la modification pour la divergence OU en B1 et B2. Il faudrait faire de mme avec la divergence A1 OU A2

Fin de la partie A
16

Partie B : GRAFCET et automatisme Chapitre 1 : Description dun automatisme


1.1. DCOMPOSITION PO / PC Un systme automatis se dcompose en deux parties distinctes : - LA PARTIE OPRATIVE (PO) : cest la partie puissance, celle qui opre, celle qui agit (le muscle), - LA PARTIE CONDUITE (PC) : cest la partie qui commande la partie oprative, celle qui sait ce quil faut faire (le cerveau). Exemple : une machine-outil commande numrique Partie Commande (PC) commande numrique En gnral : sorties (ordres) Partie Commande (PC) entres (informations) En automatique, on sintresse la partie commande, son laboration, sa description et sa validation. Dans les milieux industriels, ces parties commandes (de systmes squentiels) se concrtisent le plus souvent par un automate programmable et/ou une armoire de commande. 1.2. DISTINCTION ENTRE / SORTIE On se place sur un point de vue Partie commande. Les entres sont des informations boolennes qui peuvent provenir soit de capteurs (A ou B dans lexemple prcdent du chariot) soit de boutons de commande quun oprateur appuiera (M dans lexemple prcdent). Les sorties sont soit les ordres donns la partie oprative soit des voyants du pupitre de commande. Ce sont aussi des variables boolennes. Partie Oprative (PO)
ordres de dplacement et dusinage comptes rendus, position, fin de travail

Partie Oprative (PO) machine-outil

Donner les entres et les sorties de la partie commande dun ascenseur.

17

Chapitre 2 : Prsentation du Grafcet - la norme


2.1 UN PEU DHISTOIRE a) Pourquoi une norme pour la description dautomatismes ?

Le Grafcet devrait non seulement permettre que les 3 premiers dessins soient identiques mais encore quils reprsentent rellement ce dont a besoin lutilisateur (dessin 6). Par la synthse directe, on devrait galement supprimer les dformations que la phase de ralisation fait subir au cahier des charges (dessins 4 et 5). Mais tout nest pas si simple. (M. Blanchard, un des crateurs du Grafcet) b) Histoire du GRAFCET 1975 : Un groupe de travail de lAFCET (Association Franaise pour la Cyberntique conomique et Technique) dcide de crer une commission Normalisation de la reprsentation du cahier des charges dun automatisme logique sous limpulsion de Michel Blanchard. 1977 : Le Grafcet est une norme franaise. Il y a 24 signataires. 12 dentre eux sont universitaires, les 12 autres sont industriels. 1987 : Le Grafcet est une norme internationale.

18

Le Texte ci-dessous est de Michel Blanchard et date de 1982 :


GRAFCET. Sans doute le lecteur a-t-il eu loccasion de dcouvrir rcemment ce nom dans une revue spcialise, la notice dun industriel ou au dtour d'un programme d'enseignement. Mais il est peu probable qu'il connaisse son histoire. Elle est pourtant exemplaire. Au dbut des annes 70, le bilan de la conception des systmes logiques n'tait pas brillant. Chez les chercheurs, on constatait encore une importante dissipation d'nergie pour perfectionner les mthodes thoriques de synthse (Huffman, expressions rgulires, ...) afin de les rendre plus accessibles, plus efficaces et optimales . Dans l'industrie, ces travaux taient ignors ou jugs avec quelque svrit; ils avaient en tous cas peu d'impact sur les mthodes pratiques de synthse qui restaient dans l'ensemble empiriques et rattaches la technologie des automatismes relais. Cependant, avec larrive des technologies nouvelles et l'accroissement de la complexit des systmes tudis, les praticiens prirent conscience que l'approche empirique n'tait ni sre, ni adapte leurs besoins. Certaines tentatives de concertation entre chercheurs et industriels pour associer tant bien que mal mthodes thoriques et besoins pratiques chourent. Il fallait imaginer une autre voie. Le premier pas pour sortir de cette impasse fut accompli par P. GIRARD qui trs tt introduisit les notions de rceptivit et d'tape. A la mme poque, aux Etats-Unis, des quipes d'informaticiens, totalement trangers aux problmes de synthse des automatismes logiques, dcouvraient les rseaux de Petri que celui-ci avait dfinis dans sa thse en .. 1962. La voie nouvelle dans laquelle s engageait la conception des systmes logiques se prcisait alors. Deux mots clefs la dfinissent: cahier des charges et modlisation. Partout en France - car curieusement cette approche est typiquement franaise -, d'importants travaux de recherche, souvent soutenus par des organismes officiels (DGRST, ...), aboutissaient des propositions de modles aptes reprsenter un cahier des charges. De leur ct les industriels s'orientaient, faute de mieux, vers l'utilisation d'outils drivs des organigrammes employs en Informatique. Devant cette trop grande diversit d'outils, pourtant issus d'une mme dmarche, le risque tait grand de laisser passer une occasion inespre d'aborder sous un angle neuf la synthse des systmes logiques. C'est dans ces conditions que fut cre en 1975 une commission de normalisation de la reprsentation du cahier des charges d'un automatisme logique , dans le cadre du groupe de travail systmes logiques de l'AFCET (Association Franaise pour la Cyberntique conomique et Technique), que nous animions l'poque. L'objectif de la commission tait clair: homogniser les diffrentes approches afin de dgager un outil unique de reprsentation d'un cahier des charges. tait-il raliste ? Nous le pensions. Difficile atteindre ? Personne n'en doutait. Les vingt-quatre membres de la commission, galement rpartis entre Recherche et Industrie, s'attelaient alors une tache ardue puisque quatorze modes de reprsentations diffrents taient sur la ligne de dpart. Trs vite, nous primes conscience qu'avant de rechercher un outil unique de reprsentation, il fallait s'entendre sur l'objet reprsenter, en l'occurrence le contenu de cahier des charges. Rapidement aussi, ce petit groupe se transforma en une quipe soude o chercheurs et industriels, thoriciens et praticiens, concepteurs et utilisateurs travaillaient ensemble avec une diversit d'approches et de conceptions qui fit prcisment la richesse de ces travaux, avec aussi une foi et une persvrance qui seules permirent de surmonter les nombreuses difficults de parcours. En 1977, deux ans aprs sa cration, la commission, dans son rapport final, dfinissait le contenu d'un cahier des charges et ses diffrents niveaux d'laboration et proposait un outil pour sa reprsentation: le GRAFCET (Graphe de Commande tape - Transition et aussi rappel du rle important jou par l'AFCET dans cette cration); puis elle se sparait. Loin d'un point final, ce rapport marque au contraire le point de dpart de la fulgurante carrire du GRAFCET. En effet, le groupe de travail Automatisation squentielle de l'ADEPA (Agence nationale pour le Dveloppement de la Production Automatise) dont l'animateur avait particip aux travaux de la commission AFCET, reprit le flambeau pour donner au GRAFCET, sans toucher au fond, une forme normalise tenant compte des normes existantes et des usages gnraux des symboles

19

normaliss. Aujourd'hui, le rapport de ce groupe de travail constitue une contribution essentielle un avant-projet de norme franaise. L'ADEPA, en le diffusant largement, assure la promotion du GRAFCET notamment auprs des Petites et Moyennes Industries. Ainsi, quatre annes se sont coules et la perce du GRAFCET est indiscutable. Elle va bien audel des espoirs les plus fous que nous nourrissions en crant la commission AFCET. Pouvait-on imaginer en effet que le GRAFCET deviendrait une proposition franaise de Norme auprs des organismes internationaux comptents et parviendrait s'imposer face ses concurrents trangers. Pouvait-on imaginer que l'Enseignement Technique, ragissant avec une belle promptitude, inscrirait le GRAFCET aux programmes de certaines agrgations, le ferait pntrer jusque dans les Iyces techniques si bien que les techniciens de demain ne tarderont pas le rencontrer en feuilletant leurs manuels d'lve. Chacun mesure l'importance de l'vnement. Pouvait-on imaginer enfin que les industriels l'introduiraient sans rserve dans leurs bureaux d'tude, leurs notices allant mme jusqu' crer de nouveaux produits adapts son implantation et des moyens de C.A.O. pour mieux l'exploiter, que des universitaires se pencheraient sur lui pour en acqurir la connaissance profonde que seule une tude thorique peut apporter. Le fait est que toutes les forces qui habituellement contribuent la dispersion et l'parpillement lorsqu'une approche nouvelle voit le jour, se sont ici rassembles, avec une unanimit remarquable, dans une mme direction. Et cela, grce l'apport spcifique de chacun selon ses moyens et sa vocation: I'AFCET, I'ADEPA, I'Enseignement Technique, des Industriels, des Laboratoires Universitaires, etc... Au vu de cet historique, le lecteur comprendra que nous insistions toujours, en prsentant le GRAFCET, pour prciser qu'il n'est la proprit de personne mais le produit d'un travail d'quipe (les membres de la commission AFCET sont rpertoris en fin de cet ouvrage). A ce titre, il est au service de tous. Pour conclure, nous soumettons au lecteur un sujet de rflexion: n'existe-t-il pas aujourd'hui d'autres GRAFCET potentiels ? Si oui, la dmarche qui a t suivie reste valable. En confrontant des besoins rels que seuls les praticiens peuvent exprimer et des moyens disponibles que les thoriciens ont dgags de leurs travaux, la collaboration Recherche-lndustrie, loin d'tre strile, devient alors une source fconde d'innovation. Le GRAFCET en est l'illustration. Michel BLANCHARD

2.2. LMENTS DE BASE Le Grafcet est un outil de modlisation de systmes squentiels et plus particulirement pour les parties commandes dautomatismes. Cest un graphe qui comporte deux types de nuds : les places et les transitions. Des arcs orients relient les places aux transitions et les transitions aux places (comme pour les graphes dtats et dvnements). Ltape : 2 1 tape tape initiale

Une tape peut tre active ou inactive. Pour reprsenter une tape active, on peut par exemple

20

ajouter une marque dans ltape. On peut associer une action une tape (qui seffectuera quand ltape sera active) : 2 La transition : M Droite

A ct de la transition, on doit indiquer la condition de validation (rceptivit). Si la condition est toujours vraie, on indique 1 ou =1. Squence :
2 c 3 d 4

Slection de squence et fin de slection de squence : branchement OU : 2 7 f c 3 4 d 9 8 g

Squences simultanes : branchement ET : 10 c d 11 12 16 14 15

La divergence ET reprsente du paralllisme. La convergence ET reprsente une synchronisation.

21

Exemples de modlisation : exemple du chariot :


A G D B M

a M b B c C G
G c B b

graphe dtat quivalent


k

a M

exemple des deux chariots :

0 M
A1 G1 D1

B1

1 B1 3

D1

2 B2

D2

A2

G2

D2

B2

graphe dtat quivalent 4


A2 k 1 M A1 2 G2 6 G1 7 3 B1 D2 B2 5 4 D1.D2

5 A1 7

G1

6 A2 8

G2

B2 D1 B1

A1 A2

G1.G2

Les numros des tats de ce graphe na rien voir avec les numros des tape du grafcet

22

2.3. RGLES DVOLUTION On appelle situation du grafcet ( un instant donn) lensemble des tapes actives cet instant. Elle correspond un tat du systme. Lvolution de la situation se fait par franchissement de transitions. Une transition est franchissable si et seulement si - les tapes en amont de la transition sont actives (on dit que la transition est alors valide) - la rceptivit de la transition est vraie. On franchit alors la transition en - dsactivant toutes les tapes prcdant la transition, - activant toutes les tapes suivant la transition, simultanment. Exemple de fonctionnement : le grafcet des deux chariots. A laide du grafcet prcdent et du chronogramme ci-dessous, nous montrons lvolution du grafcet en prcisant chaque instant quelle est sa situation (ensemble des tapes actives). M B1 B2 A1 A2 situation (0) t1 (1,2) (2,3) t2 t3 (5,6) t4 (5,8) t5 (0) temps

On note Xi la variable boolenne qui vaut 1 si ltape i est active, 0 sinon. Par exemple, entre la date t4 et t5, on a :X1 = X2 = X3 = X4 = X6 = X7 = 0 et X5 = X8 = 1.

Compltez le chronogramme ci-dessus et reprsenter les sorties ainsi que X3 et X5.


Rgles de franchissement : Rgle 1 : Toute transition franchissable est immdiatement franchie. Rgle 2 : Plusieurs transitions simultanment franchissables sont simultanment franchies. Rgle 3: Lorsquune tape doit tre simultanment active et dsactive, elle reste active. Illustration de la rgle 2 dans le cas dune divergence OU non exclusive :

23

2 b=1 b 3 4 b 3 b

b 4

Exemple de dispositif : remplissage de bacs.

rservoir

m V1 h1 h2 V2

b1 W1

b2 W2

Le dispositif concern est reprsent sur la figure ci-dessus. Les deux bacs sont utiliss de faon similaire. Le bac 1 est vide lorsque le niveau est au-dessous de b1, c'est--dire b1 = O. Il est plein lorsque le niveau est au-dessus de h1 c'est--dire h1 = 1. A l'tat initial, les deux bacs sont vides. Au moment o on appuie sur le bouton poussoir m, les deux bacs se remplissent grce l'ouverture des vannes V I et V2 . Ds qu'un bac est plein, par exemple le bac 1, on arrte son remplissage (fermeture de la vanne V1 ) et l'on commence utiliser son contenu (ouverture de la vanne W1). Lorsque le bac I est vide, on ferme la vanne W1. Le remplissage ne pourra recommencer que lorsque les deux bacs seront vides. Ce remplissage sera dclench par appui sur le bouton poussoir m.

Faire un grafcet qui corresponde au fonctionnement dcrit.

24

2.4. ACTIONS, SORTIES ET RCEPTIVITS a) Le temps On note t/i/D ou D/Xi la variable boolenne qui vaut 1 si et seulement sil sest coul un temps au moins gal D depuis la dernire fois que ltape i est passe de ltat inactif ltat actif. En dautre termes, t/i/D vaut 0 pendant un temps D quand ltape i devient active puis passe et reste 1. Sur un chronogramme, cela donne : Xi D t/i/D D D D D temps

Exemple : pour maintenir une action pendant 15 secondes :

alarme t/2/15s

b) Les actions Les actions associes une tape sont inscrites dans un rectangle daction de faon mettre en vidence ce qui sexcute lorsque cette tape est active. Souvent, il sagira de commande dactionneurs (vrins, moteurs, ). Ce peut tre aussi des commandes de fonctions auxiliaires dautomates (compteur, tempos, ). Elles peuvent aussi dcrire des liens avec dautres systmes logiques ou analogiques (changement de vitesse moteur par exemple). Reprsentation normalise :

25

Au cas o lon veut associer plusieurs actions une tape, les reprsentations possibles sont dcrites ci-dessous :

Exemples : Action continue : cest la plus classique. Laction nest effectue que pendant lactivation de ltape
A 2 Action A X2 temps

Action conditionnelle
d 2 C Action A si d 2 Action A

A d X2 temps

Actions temporise ou retarde Laction A est retarde de 3s, laction B dure 1s au plus (si ltape 2 est active plus dune seconde) 3s/X2 2 m cela correspond au chronogramme : A 1s/X2 B

26

A B m X2 1s

3s

temps

Montrez que le grafcet ci-dessous nest pas quivalent aux grafcets ci-dessus en vous aidant du chronogramme ci-dessous.

A B m X2 1s temps

Action B

t/2/3s
5 Action A 6

t/4/1s

m 3

Actions mmorises.: On peut pour cela utiliser des affectations (A:=1) (correspond la nouvelle norme). On rencontre frquemment lutilisation de Set/Reset. Les affectations peuvent aussi sappliquer des variables (boolennes ou numriques) et des compteurs (initialisation, incrmentation,).

A := 1

Action A

X6 X3 Action A temps

A := 0

R Action A S = Set ; R = Reset

Actions impulsionnelles lactivation ou la dsactivation Les affectations sont considres impultionnelles et ont une dure thorique nulle. Ces actions peuvent tre effectues lactivation, la dsactivation dune tape ou sur loccurence dun vnement. Notations : a 3 A := 1

27

c) Rceptivits Une rceptivit est une condition logique et/ou un vnement. Une condition logique est une fonction boolenne de variables externes et de variables internes. Une variable interne est un Xi ou un bit contenant le rsultat de la comparaison dun compteur et dune valeur. Une variable externe est linformation venant dun capteur, dun bouton ou dun systme extrieur. (On considre les variables t/i/D comme variable externe car la fin de tempo arrive de faon asynchrone par rapport lvolution du grafcet). Exemples de conditions logiques : a + b.X4 o a et b sont des capteurs et m un bouton. , (t/4/10s) + b.m

Un vnement est un front montant ou descendant dune variable externe. Exemples : a, (t/4/10s), (a + b) Proprits : a = a a.a = a a.a = 0 a.a = a a.a = 0 a.a = a a.a =0 Si a et b et c sont indpendants : (a.b) = a.b + b.a (a + b) = a.b + b.a (a.b).(a.c) = a.b.c Par hypothse : a.b = 0 2.5 ALGORITHME DINTERPRTATION DU GRAFCET A partir dun chronogramme quelconque des entres, le Grafcet permet de connatre le chronogramme des sorties correspondantes. Linterprtation doit tre sans ambigut. Cest lobjectif de lalgorithme dinterprtation. Nous formulons deux hypothses : Deux vnements externes non correls ne peuvent pas tre simultans. Un grafcet a le temps datteindre un tat stable entre deux occurrences distinctes dvnements externes. (Le passage dun tat stable un autre a une dure nulle). Dfinition dtat stable et dtat instable : Entre la date t0 et la date t1, le grafcet est dans la situation {X2}. Cest un tat stable. A la date t1, le grafcet passe par ltape 3 puis, immdiatement aprs (car b=1) il se retrouve dans la situation {X4}. Cette situation correspond un tat stable jusqu la date t2. La situation {X3} la date t1 correspond un tat instable du grafcet. La dure de cet tat est nulle.

2 a 3 b 4 c a b c t0

t1

t2

Lalgorithme d 'interprtation
1. Pas 1. Initialisation : activation des tapes initiales et excution des actions impulsionnelles qui y sont

28

Remarques : a. La boucle 3 -> 4 -> 5 -> 3 permet dvoluer jusqu une nouvelle situation stable. b. Une action impulsionnelles ou mmorise (S et R) est excute mme si la situation nest pas stable. Une action niveau nest pas modifie entre 2 situations stables. Le pas 6.3 assure la continuit des actions niveau 1. c. Grossirement, on peut dire que, quand un vnement externe se produit, le temps sarrte et lalgorithme se droule. Ds que lon revient au pas 2 le temps repart jusquau prochain vnement externe. (attention aux cycles instables : a ne sarrterait plus). d. Cet algorithme peut tre utilis pour la mise en uvre du grafcet. Exemple de fonctionnement :
1
(1) a

associes. Aller au pas 5. 2. Pas 2. Quand un nouvel vnement externe se produit, dterminer l'ensemble T1 des transitions franchissables sur occurrence de cet vnement . Si T1 n'est pas vide, aller au pas 3. Sinon, modifier ventuellement l'tat des actions conditionnelles associes aux tapes actives (en effet, certaines actions peuvent dpendre de conditions dont les valeurs peuvent avoir chang). Attendre un nouvel vnement externe au pas 2. 3. Pas 3. Franchir toutes les transitions franchissables. Si la situation est inchange aprs ce franchissement simultan, aller au pas 6. 4. Pas 4. Excuter toutes les actions impulsionnelles associes aux tapes devenues actives au pas 3 (y compris l'initialisation des temporisations). 5. Pas 5. Dterminer l'ensemble T2 des transitions franchissables sur occurrence de l'vnement e (toujours occurrent). Si T2 n'est pas vide aller au pas 3. 6. Pas 6. Une situation stable est atteinte. 6.1. Pas 6.1. Dterminer l'ensemble A 0 des actions niveau qui doivent tre dsactives (actions associes aux tapes qui taient actives au pas 2 et qui sont inactives maintenant, et actions conditionnelles associes aux tapes restes actives pour lesquelles les conditions ne sont plus vrifies). 6.2. Pas 6.2. Dterminer l'ensemble A 1 des actions niveau qui doivent tre actives (actions associes aux tapes qui taient inactives au pas 2 et qui sont actives maintenant ventuellement sous rserve de conditions, et actions conditionnelles associes aux tapes restes actives pour lesquelles les conditions sont vrifies alors qu'elles ne l'taient pas au pas 2 ). 6.3. Pas 6.3. Mettre 0 toutes les actions qui appartiennent A 0 et qui n'appartiennent pas A 1. Mettre 1 toutes les actions qui appartiennent A1. Aller au pas 2.

A*

a b * A

(2)

X3

(3)

4
(4) b (5) ab

B
(6) X3

B C t0 t1

6
(7) b (8)

7
b

C
(9)

8
b

Remarque : A*est une action impultionnelle

Compltez le chronogramme ci-dessus en tenant compte de lalgorithme dinterprtation.

29

Chapitre 3 : Complments sur le grafcet

3.1 GRAFCET QUIVALENTS La faon de dcrire par Grafcet un systme nest pas unique. Lexemple du remplissage des bacs (voir chapitre prcdent) illustre bien le problme. Voici 4 grafcets diffrents dcrivant le mme systme :

1 4 7

m m
2

V1 h1

V2 h2
2

V1 h1

V2 h2

W1 b1

W2 b2
3

W1 b1 -b-

W2 b2

-a-

m
4 7

m.X7
2

m.X4
5

V1 h1

V2 h2

V1 h1

V2 h2
34

C W1 si b1

67

C W2 si b2

W1 b1 -c-

W2 b2 -d-

b1.b2

La figure -a- reprsente le grafcet construit intuitivement. On remarque que quand ltape 4 est active, cela signifie que le bac 1 est vide. Lorsque ltape 7 est active, cela signifie que le bac 2 est vide. Lorsque ltape 1 est active, les deux bacs sont vides. On peut donc se dire que ltape 1 est en trop. On peut alors comprendre lintrt du grafcet -b-, o chaque tape a une signification simple. Le grafcet -c- est assez proche du grafcet -b- mais on remplac la synchronisation ET par une synchronisation seffectuant laide de variables internes Xi au niveau des transitions. On prfre,

30

lorsque cela n'alourdit pas trop le grafcet, ne pas utiliser de variables internes pour visualiser schmatiquement les synchronisations. Le reproche que lon pourrait faire au grafcet -d- est que les actions conditionnelles masquent laspect squentiel des actions. En conclusion, cest le grafcet -bqui semble le mieux adapt. 3.2 ERREURS A NE PAS FAIRE Dans lexemple qui suit (et qui sera trait en cours), nous mettrons en avant les erreurs classiques et les piges qui attendent les concepteurs. Les peluches 2F

Une machine permet de dplacer suivant les trois axes une pince dans un caisson ferm et vitr. Des peluches sont disposes au fond du caisson. Au dpart, la pince est en haut et lorigine des axes x et y. Lutilisateur choisit un des axes de dplacement (soit x soit y) en appuyant sur le bouton appropri. La pince se dplace jusqu ce que le bouton soit relch ou que la valeur maximale soit atteinte. Lutilisateur peut alors faire de mme avec lautre axe (respectivement y ou x). Ce deuxime dplacement nest pas effectu si lutilisateur nappuie pas sur lautre bouton avant 10 secondes. Ensuite, la pince descend, se ferme, remonte, puis revient en position initiale et souvre aprs 2 secondes. Si la pince avait attrap une des peluches, lutilisateur peut la rcuprer. Les entres et sorties de la partie commande sont :
entres 1F bpx bpy xo yo xmax ymax zb zh prsence de 1F sorties X+ dplacement vers la droite dplacement vers la gauche dplacement vers le fond dplacement vers le devant dplacement vers le haut dplacement vers le bas Fermer pince bouton dplacement sur x X bouton dplacement sur y Y+ position initiale sur x position initiale sur y position maximale sur x position maximale sur y pince en bas pince en haut YZ+ ZF

Dans llaboration du grafcet de commande de cette machine, nous mettrons en avant les point

31

suivants : a) Un OU nest pas forcment exclusif Comme nous lavons vu dans les rgles de fonctionnement du Grafcet, si deux transitions sont franchissables (mme si ce sont deux transitions en concurrence dans une disjonction OU) en mme temps, elles SONT FRANCHIES TOUTES LES DEUX ! Si cela ne correspond pas un fonctionnement que vous avez envisag, des dysfonctionnements peuvent survenir, mettant ventuellement en pril la partie oprative et mme lutilisateur. En rgle gnrale, il sera souvent souhaitable de

rendre les transitions dune disjonction OU exclusives.


b) Les tempos restent 1 jusqu la r-activation de ltape la concernant Dans le grafcet ci-contre, on veut que la transition entre ltape 3 et ltape 4 ne doit seffectuer que 3s aprs que ltape 6 ait commenc tre active. Au premier tour, tout se passe bien et la variable t/6/3s reste 1 tant que ltape 6 nest pas active. Supposons quau deuxime tour on active ltape 3 avant ltape 6. La variable t/6/3s est toujours 1 et on passe directement ltape 4.

..

..
3 6

..

t/6/3s
4 7

..

..

c) Le droulement du Grafcet est, en thorie, temps nul Prenons prsent lexemple dun compteur qui sert calculer le nombre de pices de 1F qui passe devant un capteur optique. Le grafcet cicontre ralise bien cela. Il faut souligner la prsence du front montant dans lexpression de la rceptivit. En effet sans celui-ci, on risque de faire plusieurs fois la boucle tape1-tape2tape1 pour la mme pice de 1F car lautomate est a priori trs rapide. Remarque : on considre les actions de type compteur comme impulsionnelles.
1 1F 2 1 P C <- C + 1

32

3.3 STRUCTURATION PAR MACRO-TAPES Elles ont pour but de simplifier et de faciliter la description de systmes complexes en allgeant le graphisme dun grafcet et en dtaillant sparment certaines parties. ( rapprocher des procdures en Pascal)
expansion de la Macro-tape

E20

4 Macro-tape M20

21

5 S20 Norme : 1. Une expansion de macro-tape na quune tape dentre (note E) et quune tape de sortie (note S) 2. Tout franchissement dune transition en amont de la macro-tape active ltape dentre de son expansion. 3. Ltape de sortie de lexpansion participe la validation des transitions en aval. 4. Il nexiste aucune liaison oriente qui arrive sur lexpansion de la macro-tape ou qui en parte. Remarque : Une expansion ne peut tre commune plusieurs macro-tape (daprs la norme, mais certains disent le contraire) 3.4 SRUCTURATION DES GRAFCETS PARTIELS Lensemble des tapes et transition dune commande peut tre divise en plusieurs grafcets connexes. Ces grafcets peuvent tre regroups en sous ensembles (souvent dun seul lment) que lon appelle grafcet partiel. La runion de ces grafcets partiel dcrit la commande du systme considr. Chacun de ces grafcets partiel peut avoir un nom ou un numro.

33

Notations : G# dsigne le grafcet partiel # (ex : G1, G2) XG# est une variable boolenne. Elle est active (vaut 1) si une tape au moins du grafcet partiel G# est active. G#{,} dsigne la situation dun grafcet partiel. Exemple : G1:{1,86}. G#{*} dsigne la situation courante du grafcet #. G# {} dsigne la situation vide du grafcet partiel #. G#{init} dsigne la situation initiale du grafcet partiel # 3.5 STRUCTURATION PAR SYNCHRONISATION ENTRE GRAFCETS PARTIELS On peut structurer les grafcets partiels pour que lun deux puisse jouer un rle de Grafcet superviseur par rapport dautres. Exemple : Un systme automatis fonctionne selon un cycle autonome : Il sagit dun chariot qui fait des navettes entre un point A et un point B. On veut tout de mme le commander grce deux boutons : Marche et Arrt. Cest dire que le chariot commence effectuer ses cycles quune fois que le bouton Marche aura t appuy et il arrtera une fois son cycle termin si lon a appuy sur le bouton Arrt. Proposition de reprsentation :

G
Marche 2 B 3 A.Arrt G A.Arrt D

D
D

Marche Arrt

Cette solution a un inconvnient : pour arrter le chariot il faut appuyer sur Arrt au moment ou le chariot arrive en A. Ce nest pas satisfaisant. Lide est davoir un grafcet qui coute les boutons et qui commande lautre. Ce sera un grafcet superviseur :
Grafcet superviseur 1 X5 Marche 5 Arrt A.X4 3 2 B G A.X4 D Grafcet command par le superviseur

34

Dans les cas plus gnraux et plus complexes, le grafcet superviseur soccupe du dmarrage, de la squence, de la synchronisation et de larrt de diffrentes taches. Chaque tche est dcrite par un grafcet command par le superviseur (comme celui ci-dessus droite). Remarques : On organise ces grafcets de faon ce que seul, le grafcet superviseur soccupe des boutons de commande. 3.6 STRUCTURATION PAR FORAGE DUN GRAFCET PARTIEL Lorsque lon veut prendre en compte la scurit, on risque davoir un accroissement important de la complexit dun grafcet. Au lieu de cela, on peut imaginer quun grafcet peut avoir une influence globale sur un autre grafcet par lutilisation dactions spciales : les macro-actions. Remarques : un ensemble de grafcets avec des macro-actions, on peut toujours faire correspondre un ensemble de grafcets sans macro-actions.

35

Exemple dapplication : Voici le schma de l'automatisme a dcrire :


a b x y Dpanneur reprise A B C D* S

Automatisme dcrire

a, b, A, B, C, D* sont les Entres-Sorties en fonctionnement normal (voir grafcet G1). x et y sont deux dfauts possibles. S est l'alarme. Lautomate sans dfaut est dcrit par le grafcet G1 ci-dessous : 1 a 2 b 4 C ab 5 c Si l'un des dfauts apparat, le grafcet G1 est r-initialis et l'alarme sonne. Si les dfauts disparaissent, le fonctionnement peut reprendre. (grafcet G2) D* B 3 A

faire
Lorsqu'un dpanneur arrive, il peut arrter l'alarme (mme si le dfaut n'a pas disparu) en appuyant sur le bouton "dpanneur arriv. (grafcet G3)

faire
Si le 1er dfaut qui est apparut se produit 2 fois en moins d'une minute, il faudra une intervention manuelle (bouton reprise) pour que le fonctionnement reprenne. (grafcet G4)

faire

On peut tenter de dcrire 2, 3 et 4 en compltant le grafcet du 1 mais on prfre dcrire un grafcet pour chaque partie.

36

3.4 NOTION DE POINT DE VUE Le Grafcet permet de reprsenter le fonctionnement dun automatisme squentiel. Toute description dpend du point de vue que lon a. Il existe classiquement 3 points de vue pour lautomatique squentielle correspondant une mthodologie classique par affinements successifs permettant de passer du problme pos au choix des procds opratifs et au choix des quipements de la partie commande. Le point de vue systme ou procd :
Partie Commande Partie Oprative

description du fonctionnement vue de lextrieur Le point de vue Partie Oprative :


Partie Commande Partie Oprative

Lobservateur connait la partie oprative, le choix des actionneurs et des capteurs Le point de vue Partie Commande :
Partie Commande Partie Oprative

Grafcet vu selon le point de vue ralisateur Exemple : Un distributeur de boissons et de friandises. Un distributeur automatique permet dobtenir pour la somme de 2 francs soit une boisson (toujours la mme) soit une friandise (toujours la mme). Le client doit introduire largent dans une fente puis choisir boisson ou friandise. Le distributeur lui sert aussitt ce quil a command. Grafcet point de vue systme :

37

1 2F 2

choix = friandise

choix = boisson

donner 1 friandise

faire tomber godet godet prsent

friandise servie

verser boisson godet rempli

Vous tes maintenant au courant de ce qui a t choisi comme partie oprative. Vous connaissez la liste des capteurs et des actionneurs.
moteur 1 2 2 x 1F boisson friandise poudre

capteurs : 1f, Bouton boisson, Bouton friandise, 1 tour moteur (pour librer 1 friandise) actionneurs : librer godet, librer 1 dose poudre, ouvrir vanne eau, moteur. Le grafcet point de vue oprative peut ressembler :
1 1F 2 1F 3 bouton friandise 7 moteur 4 t/4/1s 5 1 tour moteur 6 t/6/5s librer 1 dose poudre t/5/1s ouvrir vanne eau bouton boisson librer godet

Le grafcet point de vue Partie Commande ressemble au grafcet point de vue Partie Oprative ceci

38

eau

prs que les entres et sorties sont crites sous forme de mnmoniques et font rfrence aux entres et sorties de lautomate. (En fait, il y a dautres diffrences mais nous nen parlerons pas ici). 3.5 APPROCHE FONCTIONNELLE Pour concevoir un grafcet, il courant dutiliser une mthode intuitive consistant : - tracer ltape initiale, - tracer la premire action - prvoir les volutions possibles - complter en dtaillant tous les cas. - vrifier que lon a rien oubli, corriger, simplifier. Si cette mthode peut fonctionner pour des systmes simples ou trs squentiels (peu de choix OU), elle trouve assez vite ses limites pour des systmes complexes.

Pour illustrer ces propos, essayer de faire le grafcet du problme suivant : Soit un robot charg de grer un flux de pices travers une cellule compose de 2 postes : les pices qui se prsentent en amont de cette cellule subissent une opration qui peut tre ralise aussi bien sur le poste A que sur le poste B, avant de rejoindre le stock en aval. Le robot est en attente de larrive dune pice au stock amont. Une pice se prsente, le robot la saisit puis la dpose au poste A. Une autre pice se prsente, le robot va la prendre et la dpose en B (car le poste A est occup). Si une autre pice se prsente, il ne la prend pas car les deux postes sont occups. Le poste A a fini, le robot va chercher la pice et la dpose en sortie. Le robot peut maintenant soccuper de la pice arrive pour la dposer en A (ou chercher la pice en B si elle est prte et selon la priorit donne). Poste A

Entre cellule stock amont

Sortie cellule stock aval

Poste B
Vous pouvez obtenir :

39

SAm DA SB DAv SA DAv SAm DB DB SAm DA SB DAv SA DAv

S ::Saisir S Saisir D ::Dposer D Dposer A et B ::postes A et B A et B postes A et B Am et Av ::Amont et Aval de la cellule Am et Av Amont et Aval de la cellule

Cette faon de procder nest pas efficace car cest une dmarche sans rigueur, elle conduit plusieurs phases dessais et un tracer peu clair et conduit des erreurs (tous les cas ne sont pas forcment prvus et il est difficile de trouver toutes les simplifications possibles). Lapproche fonctionnelle consiste en : rfrencer les entres et sorties dfinir la fonction principale (en utilisant du vocabulaire gnral) dcomposer et dfinir les sous fonctions avec mise en vidence des structures de base du grafcet (bauche) la synthse donne la structure gnrale du grafcet reste complter les rceptivits... Dans lexercice prcdent, lapproche fonctionnelle donne : Fonction Fonction Evacuer Alimenter
1

SAm

SA

SB

DA

DB

DAv

40

BIBLIOGRAPHIE
Norme internationale CEI 60848, Langage de spcification Grafcet pour diagrammes fonctionnels en squence, Deuxime dition, fvrier 2002 R. David, H. Alla, Du grafcet aux rseaux de Petri 2ime dition, Trait des nouvelles technologies, srie Automatique, Herms, 1992, 499p.

ouvrage de base pour toutes les parties (A, B et C), prsentant les notions et les principes gnraux. Contient des exos corrigs.

M. Blanchard, Comprendre et maitriser le Grafcet, Automatisation et production, Capadues ditions, 1979, 169p.

La norme grafcet prsente par un de ses crateurs.

GREPA, Le Grafcet : de nouveaux concepts, Automatisation et production, Capadues ditions, 1985, 104p.

Il sagit de la suite du prcdent.

M. Courvoisier, R. Valette, Commande des procds discontinus, logique squentielle, Dunod universit, 1986, 134p.

introduction aux systmes squentiels (graphes dtats, tableaux), exemples de ralisations matrielles et logicielles.
Les automatismes programmables, Automatisation et production, Capadues ditions, 1987, 185p.

Bon ouvrage sur les gnralits et lenvironnement des automates, le Gemma. Quelques exemples concrets.
S.Moreno et E. Peulot, Le Grafcet : conception - Implantation dans les API. Editions Casteilla, Collection A. Capliez, 1996, 251p.

Bon ouvrage avec des exemples concrets.


M. Pinot, R. Jgoux, J.P. Maillard, Du Grafcet aux automates programmables, Edition Foucher, 1991, 127p. Sur les mode de programmation, les actionneurs, pr-actionneurs, capteur, la pneumatique, etc... S. Thelliez, J.M. Toulotte, Applications industrielles du Grafcet, Eyrolles 1985, 187p. C. Sourisse, Les automatismes industriels, Technologies de pointe, Herms 1989, 63p. J.C. Bossy, P. Brard, P. Faugre, C. Merlan, Le Grafcet, sa pratique et ses applications, Educalivre 1979. Bernard Reeb, Dveloppement des grafcets. Editions Ellipses, 1999, 190p.

Autres sources
J.P. Denat, Matre de Confrences lESIA (Ecole Suprieure dIngnieurs dAnnecy), Polycopi de son cours de logique squentielle. G. Vitry, Matre de Confrences lEcole Centrale de Lyon, Polycopi de son cours dautomatique des systmes vnements discrets. B. Riera, Professeur lIUT de Champagne Ardennes, Prsentations de son cours dautomatique squentielle 2003.

41