한국   대만   중국   일본 
Grafcet ? Wikipedia Aller au contenu

Grafcet

Un article de Wikipedia, l'encyclopedie libre.
(Redirige depuis GRAFCET )

Le Grafcet ( Gra phe F onctionnel de C ommande E tape T ransition) est un mode de representation et d'analyse d'un automatisme , particulierement bien adapte aux systemes a evolution sequentielle, c'est-a-dire decomposable en etapes. Il est derive du modele mathematique des reseaux de Petri [ 1 ] .

Le Grafcet est donc un langage graphique representant le fonctionnement d'un automatisme par un ensemble :

  • d'etapes auxquelles sont associees des actions ;
  • de transitions entre etapes auxquelles sont associees des conditions de transition (receptivites) ;
  • des liaisons orientees entre les etapes et les transitions.

Son nom est l' acronyme a la fois de ≪ graphe fonctionnel de commande etapes / transitions ≫ et, non officiellement, de ≪ graphe du groupe AFCET (Association francaise pour la cybernetique economique et technique) ≫.

Historique [ modifier | modifier le code ]

Le Grafcet est derive des reseaux de Petri , definis en 1962, leurs approches respectives ayant bien des points communs [ 1 ] .

En 1975, le groupe de travail Systemes logiques de l'AFCET cree la Commission de Normalisation de la representation du cahier des charges d'un automatisme logique , qui publie en 1977 son rapport, acte de naissance du Grafcet [ 2 ] .

Le Grafcet est d'abord normalise par l' AFNOR en juin 1982 sous la reference NF C03-190 et le titre Schemas, diagrammes, tableaux : diagramme fonctionnel "GRAFCET" pour la description des systemes logiques de commande . Cette norme sera revue en septembre 1995.

Le Grafcet devient une norme internationale en 1987 sous la reference IEC/CEI 848, puis IEC/CEI 60848 en 2002 et 2013. La norme europeenne correspondante est l' EN 60848 , avec le titre francais Langage de specification GRAFCET pour diagrammes fonctionnels en sequence .

Mode de representation [ modifier | modifier le code ]

Le mode de representation qui est normalise par l' Union technique de l'electricite (UTE) est le suivant :

  1. Une etape est representee par un carre repere par un numero identificateur . Une etape active peut etre designee par un point au-dessous du numero. Les actions associees sont indiquees de facon litterale ou symbolique, dans un rectangle relie a la partie droite. Une etape initiale est representee par un carre double. (En bleu, fig. ci-contre)
  2. Une liaison orientee est representee par une ligne, parcourue par defaut de haut en bas ou de gauche a droite. Dans le cas contraire, on utilise des fleches. On evite les croisements. (En noir, fig. ci-contre)
  3. Une transition entre deux etapes est representee par une barre perpendiculaire aux liaisons orientees qui la relient aux etapes precedente(s) et suivante(s). Une transition indique la possibilite d'evolution entre etapes. A chaque transition est associee une receptivite inscrite a droite de la barre de transition. Une receptivite est une condition logique qui permet de distinguer parmi toutes les combinaisons d'informations disponibles celle qui est susceptible de faire passer le systeme aux etapes suivantes (En rouge, fig. ci-contre).

Sequence unique et sequences multiples [ modifier | modifier le code ]

1. Sequence unique  : un automatisme est decrit par un grafcet a sequence unique lorsqu'il peut etre represente par un ensemble de plusieurs etapes formant une suite dont le deroulement s'effectue toujours dans le meme ordre. (Le grafcet ci-dessus en est un exemple)

2. Sequences multiples simultanees  : lorsque le franchissement d'une transition conduit a activer plusieurs etapes, les sequences issues de ces etapes sont dites ≪ sequences simultanees ≫. Les sequences simultanees debutent toujours sur une receptivite unique et se terminent toujours sur une receptivite unique . En effet, les differentes sequences ≪ demarrent ≫ en meme temps puis evoluent ensuite independamment les unes des autres. Ce n'est donc que lorsque toutes les etapes finales de ces sequences sont actives simultanement (ce qui se produit souvent apres attente reciproque) que l'evolution peut se poursuivre par le franchissement simultane d'une meme transition. Le debut et la fin des sequences simultanees sont representes par deux traits paralleles (en rouge, fig. ci-contre), qui ne constituent pas des entites specifiques du grafcet, mais qui doivent etre compris comme l'elargissement de l'entree ou de la sortie de la transition. (On parle parfois de ≪ divergence ≫ et de ≪ convergence en ET ≫ pour cette representation.)

3. Sequences multiples exclusives  : Lorsque, a partir d'une etape, on peut effectuer un choix entre plusieurs sequences possibles conditionnees par plusieurs receptivites exclusives, c'est une ≪ selection de sequences ≫ ou ≪ aiguillage ≫. Pour une meilleure lisibilite, les differentes sequences possibles sont installees sous un trait horizontal (en rouge fig. ci-contre) qui represente l'elargissement de la sortie de l'etape, et se retrouvent par un trait analogue representant l'entree de l'etape a nouveau commune. D'une facon analogue au double trait vu ci-dessus, on parle de ≪ divergence ≫ et de ≪ convergence en OU ≫ pour cette representation.

Deux cas particuliers de selection de sequences se rencontrent frequemment dans la plupart des automatismes sequentiels. Ce sont le saut d'etape et la reprise de sequence :

  1. Le saut d'etapes permet de sauter un certain nombre d'etapes si une condition logique est realisee (c'est le cas general, avec une branche vide d'action).
  2. La reprise de sequence permet de repeter une meme sequence jusqu'a ce que la receptivite de fin de sequence soit vraie.

Si les receptivites ne sont pas exclusives (par exemple, si c12 et c13 peuvent etre vraies au meme moment), conformement a la regle d'evolution n°4 (cf. ci-dessous), les transitions correspondantes seront franchies simultanement  : contrairement a ce qui se passe avec un reseau de Petri, il y a " partage du jeton ". Cela peut souvent correspondre a une anomalie de fonctionnement : il y a donc lieu d'examiner soigneusement les receptivites des transition issues d'une meme etape, dans la majorite des cas un fonctionnement correct impliquera que ces receptivites soient exclusives. Un cas frequent consistera a rendre prioritaire une des transitions de la "divergence OU". Dans le cas ou la verification simultanee des receptivites de transitions "en conflit" - i.e. issue d'une meme etape - correspondrait a un comportement admissible, il peut etre conseille de le faire apparaitre explicitement dans le grafcet, en ajoutant une transition supplementaire correspondant a ce cas de fonctionnement.

Regles d'evolution [ modifier | modifier le code ]

Regles de syntaxe [ modifier | modifier le code ]

  1. L'alternance etape-transition doit etre respectee.
  2. Deux etapes ne doivent jamais etre reliees directement.
  3. Deux transitions ne doivent jamais etre reliees directement.

Les fleches sont inutiles, elles ne participent pas a la syntaxe mais aident a la lecture.

Regles d'evolution [ modifier | modifier le code ]

  1. L'initialisation : une situation initiale est caracterisee par le fait qu'un certain nombre d'etapes sont actives au debut du fonctionnement. Ces etapes sont reperees sur le grafcet par un double carre.
  2. Le franchissement d'une transition : une transition est soit validee soit non validee. Elle est validee lorsque toutes les etapes immediatement precedentes sont actives (voir le tableau suivant). Elle ne peut etre franchie
    1. que lorsqu'elle est validee
    2. et que la receptivite associee est vraie.
  3. L'evolution des etapes actives : le franchissement d'une transition entraine l'activation de toutes les etapes immediatement suivantes et la desactivation de toutes les etapes immediatement precedentes.
  4. Evolution simultanee : plusieurs transitions simultanement franchissables sont simultanement franchies. Par exemple, sur la figure ci-contre, si la variable c est vraie, le grafcet va evoluer vers la desactivation simultanee des etapes 5 et 10 et l'activation simultanee des etapes 6 et 11.
  5. Activation et desactivation simultanees : si au cours du fonctionnement, une meme etape doit etre simultanement desactivee et activee, elle reste ACTIVE
Franchissabilite d'une transition (cf point 2)
Etape active aucune aucune 5 5 6
Transition validee non non oui oui
Receptivite vraie non oui non oui
Transition franchissable non non non oui

Nature des actions [ modifier | modifier le code ]

Le critere de classification des actions les plus utilisees est : la duree de l'action comparativement a la duree de l'etape :

Chronogramme 1
Chronogramme 2
Chronogrammes 3 et 4
  • Action continue  : l'action se poursuit tant que l'etape a laquelle elle est associee est active. Cela se traduit par le diagramme temporel (chronogramme 1) ci-contre.
  • Action conditionnelle  : l'action est executee si, en plus de l'activite de l'etape a laquelle elle est associee, une condition logique specifiee est vraie (voir chronogramme 2 ci-contre). Ces actions conditionnelles sont particulierement importantes car elles permettent, dans une etape, de realiser une combinatoire locale en vue, par exemple, d'executer l'action seulement pendant un certain temps, ou apres un certain temps d'activite de l'etape (voir les chronogrammes 3 et 4 ci-contre).
  • Action : pour maintenir la continuite d'une action devant se prolonger pendant l'activite de plusieurs etapes, il est possible :
    • de repeter l'action continue dans toutes les etapes concernees ;
    • de memoriser l'action par des fonctions mises a 1 (SET) et mises a zero (RESET).
La figure 4 ci-contre presente ces differentes methodes equivalentes de maintien d'une action sur plusieurs etapes.
Figure 4 . Differentes facons equivalentes de memoriser une action A et le chronogramme

Nature des receptivites [ modifier | modifier le code ]

Il s'agit toujours du resultat d'une expression booleenne unique pouvant faire intervenir

  1. Des etats de variables booleennes (etat direct, front, fin de temporisation...)
  2. Des comparaisons sur des valeurs numeriques.
  3. Des tests sur les etats actifs d'etapes (permis mais a eviter pour une meilleure lisibilite).
  4. etc.

Macro-etapes [ modifier | modifier le code ]

Exemple de macro-etape

Une macro-etape est un moyen de representation d'un ensemble unique de transitions et etapes en une seule etape : la macro-etape. Une macro-etape Mi peut etre completement remplacee par son expansion qui contient une etape d'entree Ei et une de sortie Si . (voir image ci-contre)

Ce moyen de representation peut donc etre considere comme un ≪ zoom ≫ qui permet de simplifier la lecture de Grafcet de taille importante. Une expansion ne peut etre utilisee qu'une seule fois : son utilisation est unique et elle ne doit pas etre confondue avec un sous-programme, a l'instar d'autres langages de programmation .

Si l'on veut utiliser une meme expansion, il faut la dupliquer. Cela revient, en fait, a faire une instance de l'expansion par appel, a l'instar des appels de fonctions dans la norme CEI 61131-3 .

Differences avec la norme CEI 61131-3 [ modifier | modifier le code ]

La norme CEI 61131-3 (1993) normalise cinq langages dont le langage Sequential function chart (SFC) qui est tres proche du Grafcet. Plusieurs differences peuvent neanmoins etre notees :

  • L'objectif du langage  :
    • Le SFC est un langage de programmation destine a etre implante sur controleur, comme un automate programmable industriel par exemple.
    • Le Grafcet est un langage de representation qui peut etre utilise pour specifier un comportement attendu ou pour decrire le comportement de systemes automatises existants.
  • La syntaxe  :
    • Contrairement au Grafcet, les transitions du SFC sont ordonnees en priorites dans le cas de divergence en OU .
    • Les actions du SFC peuvent etre lancees suivant trois modes : P1, P0, C pour, respectivement, a l'activation, a la desactivation, en continu.
  • L'evolution / l'execution  :
    • Le SFC est execute sur un controleur, avec une notion de PRE et POST traitements, notion inexistantes en Grafcet qui est fait pour evoluer .
  • ...

Voir aussi [ modifier | modifier le code ]

References [ modifier | modifier le code ]

  1. a et b Rene David et Hassane Alla , Du Grafcet aux reseaux de Petri , Paris, Hermes, coll.  ≪ Traite des nouvelles technologies / Automatique ≫, , 2 e   ed. ( 1 re   ed. 1989), 500  p. ( ISBN   2-86601-325-5 ) .
  2. Groupe de travail Systemes logiques de l'AFCET, ≪  Pour une representation normalisee du cahier des charges d'un automatisme logique  ≫, Automatique et Informatique Industrielle ,‎ novembre - decembre 1977

Sur les autres projets Wikimedia :

Lien externe [ modifier | modifier le code ]