32
1 AUTOMATES PROGRAMMABLES INDUSTRIELS Questions sur oraux.be : 1. Fonctionnement d’un API p.1 2. Langage Ladder = combinatoire comment simuler le séquentiel ? 3. Diagramme Ladder 4. Grafcet (au moyen d’un exemple) p.12 5. Comment passer d’un Grafcet à un Ladder 6. Gemma 7. Questions de réflexion, il faut bien piger le cours apparemment, c’est pourquoi les réponses sont larges… Réponse (très large) à ces questions : 1. Fonctionnement d’un API = Contrôle et commande automatisés des processus industriels à l’aide des systèmes numériques de traitement d’information. Contrôle : décrit la possibilité d’observer le mode environnant (à l’aide des capteurs, des interrupteurs, des boutons poussoirs, ...). L’environnement peut être analogique ou numérique (on parle des variables de type Tout Ou Rien - TOR). Commande : reflète le fait que sur base des informations récoltées on aimerait avoir la possibilité de prise de décision et de l’action (commande des relais, des moteurs, des électrovalves, des signaux, etc.) On parle des systèmes de production de connaissance (même si cette connaissance est très limitée) lorsque le système est capable de produire une action sur base d’une condition. Automatisé implique: L’existence des faits : principalement la mesure des grandeurs physiques dans l’environnement proche ou lointain de l’automate L’existence d’un mécanisme d’inférence (des règles de déduction) fourni par un programme Le moyen d’action sur l’environnement Processus industriels : pas uniquement les chaînes de fabrication automatisées , mais aussi les ascenseurs , les feux de circulation, le contrôle d’accès (portières automatiques) etc. Systèmes de traitement d’information numériques : Depuis la Pascaline, en passant par la machine de Turing, EDVAC, ENIAC et autres … Classement en fonction de l’information qui décrit le support matériel : Programmables Configurables (ASICs, ASIPs, logique câblée, ...) Re-Configurables (FPGAs, DPGAs) p.9

Automates Programmables Industriels

  • Upload
    sumororo

  • View
    1.906

  • Download
    12

Embed Size (px)

Citation preview

Page 1: Automates Programmables Industriels

1

AUTOMATES PROGRAMMABLES INDUSTRIELS

Questions sur oraux.be :

1. Fonctionnement d’un API p.1 2. Langage Ladder = combinatoire comment simuler le séquentiel ? 3. Diagramme Ladder 4. Grafcet (au moyen d’un exemple) p.12 5. Comment passer d’un Grafcet à un Ladder 6. Gemma 7. Questions de réflexion, il faut bien piger le cours apparemment, c’est pourquoi les réponses

sont larges…

Réponse (très large) à ces questions :

1. Fonctionnement d’un API

= Contrôle et commande automatisés des processus industriels à l’aide des systèmes numériques de traitement d’information.

• Contrôle : décrit la possibilité d’observer le mode environnant (à l’aide des capteurs, des interrupteurs, des boutons poussoirs, ...). L’environnement peut être analogique ou numérique (on parle des variables de type Tout Ou Rien - TOR).

• Commande : reflète le fait que sur base des informations récoltées on aimerait avoir la possibilité de prise de décision et de l’action (commande des relais, des moteurs, des électrovalves, des signaux, etc.)

On parle des systèmes de production de connaissance (même si cette connaissance est très limitée) lorsque le système est capable de produire une action sur base d’une condition.

• Automatisé implique: ๏ L’existence des faits : principalement la mesure des grandeurs physiques dans

l’environnement proche ou lointain de l’automate ๏ L’existence d’un mécanisme d’inférence (des règles de déduction) fourni par un

programme ๏ Le moyen d’action sur l’environnement

• Processus industriels : pas uniquement les chaînes de fabrication automatisées, mais aussi les ascenseurs, les feux de circulation, le contrôle d’accès (portières automatiques) etc.

• Systèmes de traitement d’information numériques : Depuis la Pascaline, en passant par la machine de Turing, EDVAC, ENIAC et autres … Classement en fonction de l’information qui décrit le support matériel :

๏ Programmables ๏ Configurables (ASICs, ASIPs, logique câblée, ...)

๏ Re-Configurables (FPGAs, DPGAs)

p.9

Page 2: Automates Programmables Industriels

2

API : système de traitement d’information numérique programmable (donc universel).

• Appartient à la classe des systèmes numériques programmables à coté de microcontrôleurs, micro-ordinateurs ou des solutions hybrides.

• Il s’agit donc des systèmes universels de traitement d’information numérique car ils intègrent la notion de programme.

• Les APIs sont proches des ordinateurs classiques, mais ils présentent certaines différences importantes au niveau des exigences d’où la différence en conception matérielle, la programmation et le fonctionnement.

1. Structure matérielle : Schéma fonctionnel d’un API et les éléments constitutifs.

2. Programmation : Un aperçu des différents langages de programmation.

3. Principe de fonctionnement : Notion de l’image des entrées et des sorties. Principe de programmation et d’exécution de programme.

4. Différences par rapport à un ordinateur classique

• Un API est une machine séquentielle.

• L’état de l’automate : représenté par des variables internes, codées à l’aide des variables binaires, et sauvegardées dans le mémoire de l’unité centrale.

• Pour les APIs, il existe des formalismes permettant de s'affranchir de la synthèse traditionnelle des systèmes séquentiels (ELEC-212 Circuit Logiques) et raisonner en termes de spécifications graphiques : d'où les langages de programmation spécifiques aux APIs.

Schémas

capture de certaines grandeurs physiques action sur l’environnement

Page 3: Automates Programmables Industriels

3

1. Structure matérielle :

ENTREE : capteurs UNITE CENTRALE SORTIE : actionneurs ๏ Filtrage des entrées analogiques/numériques ๏ Adaptation des signaux ๏ Isolement opto-électronique (opto-coupleurs)

a. Unité de traitement (UT): ๏ un µP (ou µC) relativement simple et pas ultra-performant ๏ opération arithmétiques / logiques de base (pas poussées) ๏ pour des opérations plus complexes, ajouter des extensions ๏ traitement en virgule flottante en option, co-processeurs etc.

๏ Isolement opto-électronique (opto-coupleurs) ๏ Amplification des sorties ๏ Relais électromagnétiques

b. Mémoires: ๏ Registres - Mémoire interne à l’unité de traitement et au fonctionnement de l’automate (sens plus large que celui de µP) ๏ RAM - programmes/données de utilisateur/système ๏ ROM ๏ EEPROM - permettant la sauvegarde de(s) programme(s)

c. Connexion à la console (PC,...) ๏ Configuration ๏ Programmation ๏ Debug

Page 4: Automates Programmables Industriels

4

BUS DE COMMUNICATION PERIPHERIQUES SUPPLEMENTAIRES

a. Bus d’entrées/sorties (bus fond de panier)

Assure la communication entre l’automate proprement dit et le monde extérieur via les coupleurs. Sujet de standardisation, cependant un grand nombre de standards actuellement en jeu (standard VME p.e.).

a. Coupleurs de communication Permettent aux APIs de dialoguer avec d’autres systèmes de commande ou avec des entrées/sorties déportées. b. Cartes d’extension permettant la réalisation des calculs complexes de façon efficace (efficace: le temps d’exécution).

b. Bus système Assure la communication entre les différentes parties de l’automate proprement dit (communication entre l’unité centrale et les mémoires correspondantes p.e.). Généralement propriétaire.

c. Interfaces pour le matériel informatique standard

๏ unités IO standards tels que claviers, écrans, écrans tactiles, imprimantes ๏ unités de stockages (HDD, DVD etc) ๏ cartes d'acquisition de données ...

2. Programmation : La programmation native (en langage machine) consiste en une liste d’instructions de type :

si {condition} alors {affectation}

๏ condition : une expression Booléene ๏ affectation : concerne les variables internes et/ou les sorties

• On souhaite programmer les APIs facilement et rapidement.

• La Commission Electrotechnique Internationale (CEI) a proposé plusieurs standards (le premier standard a été publié en 1993) qui décrivent la spécification matérielle et les langages de programmation conseillés pour les APIs.

• Langages de programmation de la norme … :

1. Liste des Instructions (Instruction List - IL) proche de l’assembleur

2. Texte structuré (Structured Text - ST) proche des langes Ada, C

3. Les langages graphiques de type schémas à relais (contacts) (Ladder diagrammes - LD)

4. Diagrammes des blocs fonctionnels (Functional Bloc Diagrams - FBD) dans lequel on peut classer le GRAFCET (dérivé des Réseaux de Petri) et diagrammes fonctionnels en séquence (Sequential function chart - SFC)

Syst

èmes

co

mbi

nato

ires

Sy

stèm

es

séqu

entie

ls

Page 5: Automates Programmables Industriels

5

• Il est d’usage courant de mélanger les différents langages au sein d’un même programme en fonction des besoins.

3. Principe de fonctionnement :

1. En début de chaque cycle de scrutation, les valeurs des entrées sont sauvegardées dans la mémoire-image des entrées. Tout changement des variables à l’entrée sera donc ignoré par l’automate pour ce cycle.

2. Pendant l’exécution de programme, toute référence aux entrées est faite par rapport à la mémoire-image des entrées.

3. Les instructions qui modifient les sorties font référence à la mémoire-image des sorties (les vraie sorties ne sont pas encore modifiées à ce stade).

4. Lorsque le cycle de scrutation en cours est fini, les vraies sorties de l’automate sont mis à jour.

5. L’automate entame un nouveau cycle: acquisition des entrées, scrutation, mis à jour des sorties.

• Les instructions du programme : exécutées dans l’ordre, l’une après l’autre, il n’y a pas d'ordonnancement d’instructions (si l’ordonnancement, alors tâches RTOS).

• En fonction de la condition logique posée par une instruction, deux situations sont possibles: ๏ Soit la condition est vrai: l’instruction est exécutée, ๏ Soit elle est fausse: l'instruction n’est pas exécutée.

• Lorsque l’automate a exécuté toutes les instructions du programme, il va recommencer un nouveau cycle en partant de la première instruction de programme. Ce cycle d’exécution est ininterrompu, ou alors pendant des périodes beaucoup plus courtes qu’un cycle de scrutation.

• A chaque coupleur d’entrée correspond une zone de mémoire dans l’unité centrale, dite mémoire-image des entrées, dans laquelle on enregistre l’état de TOUTES les entrées. L’enregistrement des valeurs d’entrées se fait de façon synchrone à des moments bien précis, généralement avant le cycle de scrutation.

Page 6: Automates Programmables Industriels

6

• Le même principe d’une mémoire-image est appliquée aux sorties : à chaque sortie correspond une zone de mémoire modifiée par le programme. La mise à jour des sorties physiques (en fait des coupleurs correspondants) se fait donc à la fin d’une phase de scrutation.

• Le principe de mémoire-image des entrées et des sorties : à l’aide d’une machine universelle séquentielle on peut émuler le fonctionnement concurrentiel (très important!!!) par rapport aux entrées et sorties exigé pour le contrôle des processus industriels (les actions différées sont tolérables, mais doivent être maîtrisées).

• Il est donc possible de concevoir des APIs sur base des composants habituels des systèmes de traitement d’information numérique (CPUs et mémoires classiques dans des architectures de Von Neumann - une instance d’unité de traitement plus la mémoire).

• La durée d’exécution d’une instruction 1 / : fonction du type de l'automate (en fonction de type de processeur et de sa vitesse). • La durée de la phase de scrutation 10 : dépend de la longueur de programme. • Afin de pouvoir agir sur l’environnement de façon souhaitée, les constantes de temps de l’environnement et de programme doivent être pris en considération (on doit faire comme si c’était instantané).

1) Le temps de scrutation doit être assez grand pour permettre l'exécution de tout le programme en temps plus court que le temps de scrutation...vu qu’il doit y avoir un cycle d'exécution (effectue toutes les instructions du programme) par cycle de scrutation

2) il doit être le plus court possible étant donné qu’on est en temps réel même si c'est un temps réel généralement pas super contraignant. Mais bon on a kan même envie que quand on met quelque chose a l’entrée on n’attende pas 10 min avant qu’il réagisse!

Donc généralement on met le temps de scrutation à +- 10ms (1nanoseconde par instruction environ donc il peut en faire un paquet) sans que pour autant le temps de réaction soit trop long.

Page 7: Automates Programmables Industriels

7

• Le principe de scrutation et de la mise à jour des entrées et de sorties a pour conséquence un temps de réponse = 1 à 2 x temps de scrutation.

4. Différences avec l’ordinateur classique :

• Le milieu de travail hostile, donc besoin de robustesse.

• Fiabilité : le crash d’un traitement de texte n’a pas le même impact que le crash d’une fusée.

• Les constantes de temps sont tout à fait différentes et on doit les maîtriser (respect d'échéances).

• Les entrées : peuvent être nombreuses et pas uniquement numériques (elles peuvent être analogiques aussi).

• Principe de mémoire-image pour les entrées/sorties implique l’émulation de la concurrence. Le multi-tâches/multi-threading, ce n’est pas du tout la même chose (matière des RTOS - un problème à part).

• Les bugs ne sont pas de même nature (problème des courses critiques n’existe pas vraiment dans le software).

Principales exigences

• Robustesse et fiabilité Extrême robustesse et fiabilité des APIs (milieu industriel = environnements agressifs, bruit, pollution, choques mécaniques etc.).

• Modularité Les chaînes de production de taille variable, le nombre d’entrées/sorties qui varie de quelques dizaines à quelques centaines voir milliers de variables.

• Rapidité On souhaite des réponses instantanées (quoique les constantes de temps sont beaucoup plus faibles de ce que l’on rencontre d’habitude en informatique ... on est dans le temps réel, mais “temps réel lent” et on veut des garanties).

Page 8: Automates Programmables Industriels

8

• Simplicité De la mis en place, la programmation, la maintenance.

• Faible coût Ca va de soi...

Définitions

Systèmes combinatoires Les sorties de tels systèmes ne dépendent que des entrées.

Systèmes séquentiels Les sorties dépendent aussi de l’état interne du système. Le système décide de son état futur en fonction des entrées et de son état présent.

IDEs = Environnements de Développement Intégrés

Réactifs : réagissent en fonction de leur environnement, la mise à jour se fait avec une fréquence déterminée par l’environnement.

Interactifs : réagissent avec l’environnement de façon continue (ou en tout cas avec la fréquence d'échantillonnage réelle – la vitesse émule le continu).

Exemples: ✴ API sont des systèmes réactifs ✴ Couple ordinateur/OS est l’exemple d’un système interactif.

Page 9: Automates Programmables Industriels

9

2. Langage Ladder = combinatoire comment simuler le séquentiel ? 3. Diagramme Ladder

• LD = langage basé sur des systèmes de règles, définis par le programme (rule-based systems), par opposition aux langages procéduraux. Il s’agit d’une représentation graphique de fonctions Booléennes à l’aide des contacts et des relais.

• Les règles (appelés réseaux) spécifient comment le système calcule les sorties en fonction des entrées. Les différents réseaux sont supposés être exécutés en parallèle. Il s’agit de la zone de test et de la zone d’action mises ensemble.

• Instruction API si {condition} alors {affectation} traduit par deux zones en LD :

Zone de test Zone d’action

๏ La zone de test représente la condition sur des entrées Formalisme pour représenter les équations logique : langage de contact associé

aux variables = Contact normalement ouvert : NO Contact normalement fermé : NF

Peut comprendre les expressions complexes (on parle aussi de l’algèbre de contacts). Elle peut être composée de multiples contacts mis en parallèle et/ou en série, comme :

๏ La zone d’action représente le résultat sur les sorties de système : Décrit l’application de la fonction f, produite dans la zone de test. Il s’agit bien de

l’application de f à la mémoire-image des sorties. Chaque sortie possède un seul réseau. Dans le cas où plusieurs réseaux sont

couplés à la même sortie, c’est le dernier réseau qui fixera la valeur de la sortie (les résultats précédents seront ignorés). En effet, si on veut que toutes les sorties soient prises en compte en même temps, il faut les geler a un moment. Mais donc les différentes valeurs que la sortie a pris avant le moment du gel ne sont pas prises en compte évidemment.

• Exige seulement la connaissance de base de la logique Booléenne. • Le formalisme implique la possibilité de réalisation des IDEs graphiques permettant l’implémentation rapide des programmes.

• Pour des problèmes plus complexes, la lisibilité des programmes n’est pas évidente (exemple de la STIB: croisement des lignes de métro 1 et 2). • Le debug (recherche d’erreurs) n’est pas simple... (problème des courses critiques etc.). Malgré une représentation de calcul en parallèle (tous les réseaux sont traitées en même temps), l’exécution est faite pas à pas (deux réseaux adressant une même sortie : c’est le dernier réseau qui fixera la valeur de la sortie, le calcul du premier réseau sera ignoré). • Problème de représentation des variables analogiques et des opérations arithmétiques complexes.

Page 10: Automates Programmables Industriels

10

• Le programme = ensemble des réseaux agissant sur des sorties, variables internes et/ou de contrôle de programme.

Réalisation des systèmes synchrones à l’aide des LD (bascule SR)

• Du point de vue utilisateur, tous les réseaux sont exécutés en même temps et agissent de façon synchrone par rapport à l’environnement, ce qui n’est évidement pas vrai dans le cas d’un API universel. Ce type de fonctionnement est en fait simulé à l’aide d’un programme au sens informatique du terme (exécution séquentielle d’une suite d’instructions) : ๏ avec un échantillonnage synchrone des entrées ๏ hypothèse que le couple API-programme fonctionne suffisamment rapidement, càd plus rapidement que l'évolution des entrées.

• La possibilité de mémoriser une variable nous permet de réaliser des systèmes séquentiels synchrones.

A chaque variable d’état on associe un bit de mémoire. Pour chaque fonction logique de contrôle (S ou R) on décrit un réseau (il s’agit en fait des

fonctions d’excitations si l’on utilise le langage d’ELEC-H-305).

• Il est possible de faire une rétroaction avec une sortie (le VHDL ne permet pas ce genre de choses, mais attention au problème des courses critiques qui est d’actualité).

Liste (non-exhaustive) des fonctions du diagramme LD

Catégorie de fonction Description (MAJ = majoration)

Instructions de contact • Contact normalement ouvert et fermé : MAJ à la fin de cycle.

• Contact immédiat normalement ouvert et fermé : MAJ instantané

• NOT

• Détection de flanc montant (ou descendent)

Instructions de sortie • Sortie - MAJ de la sortie se fera à la fin de cycle de scrutation

• Sortie immédiate - MAJ est instantané

• Mémoire (SR) - principe de la bascule SR

• Mémoire immédiate - même chose sauf qu’il n’y a pas d’attente pour la MAJ

Instructions de comparaison

• Egalité == ; plus grand ou égal >=; plus petit ou égal <=

en fonction du type de donnée : byte, word, double word, éventuellement les réels

Page 11: Automates Programmables Industriels

11

Timers & Compteurs • Deux sortes de timers:

๏ On-Delay Timer (TON) : ENABLE activé (par une variable) compte le temps ENABLE désactivé mise à zéro automatique

๏ Retentive On-Delay Timer (TONR) : ENABLE activé (par une variable) compte le temps ENABLE désactivé le temps déjà compté est sauvegardé Nouvelle activation de ENABLE remets la mise à zéro automatique

• Compteurs /décompteurs

๏ CU - le flanc montant de CU incrémente la valeur du compteur.

๏ PV - il est possible de faire un PRESET, lorsque la sortie atteint une valeur définie. Le bit de sortie est alors mis à 1.

๏ R - mise à zéro du compteur.

Contrôle de mémoire • MOV - déplacement des données individuelles (byte, word, dword) et de block de données (tableaux de données).

• FILL - initialisation d’un block de mémoire.

• Manipulation des tableaux de données : ๏ Ajout d’un élément selon le schéma Last In. ๏ Retrait d’un élément (selon le principe de FIFO, LIFO) ๏ Recherche d’un élément spécifié par un pattern et le critère de recherche: ==, <=, >=.

Instructions logiques & conversions

• Fonctions logiques standards : AND, OR, XOR, NOT sur des opérandes de taille byte, word, double word.

• Conversions : ๏ entier à BCD (Binary Coded Decimal), ๏ ASCII à HEX (American Standard Code for Information Interchange), ๏ Decode (3 → 1000), encode (1000 0010 0000 0000 → 9), segment (le fameux convertisseur de 7-segment...)

Instructions de contrôle de programme

• STOP implique l’arrêt immédiat du processeur de l’API (passe du mode RUN en mode STOP), reprise possible.

• END tout programme doit posséder cette instruction (sinon erreur de compilation). La fin du programme peut être conditionnelle ou inconditionnelle.

• JMP, LBL. Saut conditionnel (ou inconditionnel) à l’endroit spécifié par le label :

• Appel d’une sous-routine et les boucles for, next.

Page 12: Automates Programmables Industriels

12

4. Grafcet (au moyen d’un exemple)

Réseaux de Pétri (RdP) : formalisme précurseur pour le Grafcet

= outil mathématique (graphique) permettant de formaliser les systèmes qui intègrent des notions d'événements et de concurrence.

= quadruplet noté: RdP={P, T, Pré, Post}

Avec :

✴ P - un ensemble de places (={p1,p2,p3})

✴ T - un ensemble des transitions (={a,b,c,d,e})

✴ Pré - l’application des places précédentes

✴ Post - l’application des places suivantes

✴ C=Post-Pré - la matrice d’incidence

Réseau de Pétri marqué = couple RdPM = { RdP, M}

Avec:

✴ RdP à p places

✴ M est le marquage (•)

✴ M(p) est le nombre de marques (jetons) contenus dans la place p

Analogies entre: ✴ Places et transitions ET états et évolutions possibles ✴ Marquage et marquage initial ET état présent et état initial ✴ Notion de franchissement et de la séquence de franchissement ET les règles d’évolution

Page 13: Automates Programmables Industriels

13

Transition franchissable (validée, sensibilisée) ssi : p, M≥Pré(p) a et c dans l’exemple

Franchissement d’une transition (tir, firing) : produit un nouveau marquage M+ comme suit :

Séquence de franchissement : A partir d’un marquage M0, arriver à des marquages M0, M1, M2, M3, ... Propriétés des RdP :

• RdP Non-Vivant (blocage - état puits) : Aucune transition n’est franchissable. • RdP Vivant (sans blocage) : Pour un ensemble de marquages toutes les transitions sont franchissables par une séquence finie des tirs. • RdP Sauf (Sain) : si chacune des places contient au plus un jeton. • RdP Propre (Réinitialisable) : il existe une séquence fini des tirs permettant de retrouver une situation initiale. • Un Rdp Vivant, Sauf et Propre = RdP Conforme, un tel modèle d’un système séquentiel est généralement satisfaisant.

Graphe de marquage : = extension graphique permettant de représenter l'ensemble des marquages possibles (accessibles) à partir d’un marquage initial.

• L’étude du graphe de marquage peut renseigner certaines propriétés. Exemple: si le graphe représente une zone non-bouclée, cela veut dire qu’une fois franchi, il existe des marquages non-accessibles.

Grafcet = séquentiel

Directement inspiré des RdP, mais en ajoutant les notions suivantes : ✴ Réceptivité pour les transitions = matérialisation des entrées ✴ Action pour les places (en langage Grafcet - étapes) = matérialisation des sorties ✴ Temps : nécessaire pour une implémentation industrielle. • Grafcet = synchrone : on suppose l'existence d’une horloge, nécessaire pour tenir compte de la validité des réceptivités et des actions. = une suite d'alternances de type : étape-transition, étape-transition, étape-transition, ... Le non-respect de cette règle implique un Grafcet de syntaxe erronée.

Page 14: Automates Programmables Industriels

14

AVANTAGES : • Possibilité de réalisation des interfaces graphiques de programmation. • Particulièrement bien adapté aux problèmes complexes, dont le fonctionnement est facilement décomposables en étapes. • Il est possible de traduire des programmes Grafcet en langage d’équations Booléennes (compilateurs pour des APIs programmés ou alors la réalisation en logique câblée). • Intuitif (formation, programmation et maintien rapide) • Grafcet est une approche formelle. Il est donc possible de vérifier le fonctionnement d’un programme de Grafcet avant la mise en service (important étant données les contraintes de fiabilité). • Deux niveaux d’abstraction différents, utilisés par le Grafcet: ✴ Grafcet de niveau 1 - Spécifications fonctionnelles – Traduction formelle des spécifications verbales: comprendre le problème et faire une première description de l’automatisme qui devra réaliser la tâche demandée. ✴ Grafcet de niveau 2 - Spécifications technologiques - Sur base de Grafcet 1: choix technologiques concernant les capteurs et les actionneurs. A ce stade le Grafcet devient une spécification “exécutable”, il décrit le fonctionnement réel de l’automate.

Dans les deux cas on suppose toujours le fonctionnement normal de système (pas d’anomalies sur les événements et le fonctionnement des composantes). ✴ Une autre partie de spécification permettra de s’occuper des actions en cas de fonctionnement anormal (pannes, arrêts d’urgences etc.)

REPRESENTATION GRAPHIQUE DES GRAFCET

1. ETAPES Défini un comportement précis et invariant de système par rapport à ses entrées et ses sorties. • Etape initiale: étape dans laquelle le système se trouve lors de la mise en service. • Etape initialisable: étape qui peut être activée par un ordre donné par un autre Grafcet. • Une étape est soit active, soit inactive. On peut associer à chaque étape d’un Grafcet une variable Booléenne . Nous avons donc : 1, étape active et

0, étape inactive.

Page 15: Automates Programmables Industriels

15

2. LIAISONS (éventuellement orientées - flèches) entre les différentes étapes. = lignes qui relient les différentes étapes entre elles, indiquent l’ordre d’exécution des étapes. Les liaisons sont représentées par des lignes verticales, l’ordre d’exécution va de haut en bas, ou horizontales. Afin d'éviter les ambiguïtés, les lignes peuvent être orientées (flèches). 3. TRANSITIONS auxquelles on associe des réceptivités. = barrières entre les étapes, peuvent être franchies selon certaines conditions.

Validée ou non-validée : la condition de validité (passage à l’étape suivante) = état actif de l’étape immédiatement précédente et réceptivité associée VRAIE. 4. RÉCEPTIVITÉS

associée à une transition (pour que un GRAFCET soit bien formé chaque transition doit posséder une réceptivité). = équation logique Booléenne classique, un LD diagramme etc. = ensemble des conditions permettant de franchir la transition. • Les variables liées aux réceptivités :

✴ informations extérieures au API: capteurs, directives de l’opérateur; ✴ variables auxiliaires: compteurs, temporisateurs; ✴ état d’autres étapes: attentes, interdictions ✴ transitions sur d’autres variables: fronts montants ou descendants.

Type de réceptivité Description

Niveau

= condition logique exprimée avec une équation Booléenne. Les variables de ces équations = valeurs Booléennes associées aux capteurs du système, et/ou les variables internes.

Au sein des différents IDEs, les réceptivités peuvent être représentées différemment : les équations, les LD etc.

Toujours vraie

= transition toujours franchie. Lorsque l’étape qui précède la transition associée est activé, cette transition est immédiatement franchie.

Temporisé

= transition validée après une période d’atteinte. L’activation de l’étape précédente déclenche un temporisateur. Réceptivité vraie lorsque la valeur d’un temporisateur a atteint

la valeur spécifiée. Il est possible de combiner la valeur de temporisateur à d’autres

conditions logiques. Impulsionnelle

= réceptivité de type flanc montant ou descendent.

5. ACTIONS = action qui sera effectuée par l’automate sur son environnement lorsque le système se trouve dans l’étape associée. • Une étape peut comprendre plusieurs actions (une action peut être vue comme un LD).

Page 16: Automates Programmables Industriels

16

• L’action peut être représentée comme - une injonction verbale (Grafcet de niveau 1), ou alors comme - une équation logique (Grafcet de niveau 2)

Type d’action Description

Action continue = se poursuit tant que l’étape à laquelle l’action est associée est active (cas le plus fréquent)

Action conditionnelle = se poursuit tant que l’étape est active ET que une (ou plusieurs) condition(s) logique(s) supplémentaire(s) associées à cette étape est (sont) VRAI(s).

Action temporisée - retardée dans le temps

= se poursuit si l’étape est valide ET le temps écoulé en cette étape > T (condition logique supplémentaire fournie par un temporisateur qui mesure une durée).

Action prolongée/limitée dans le temps

= se poursuit si l’étape est valide ET le temps < T (condition logique supplémentaire fournie par un temporisateur qui mesure une durée : ici 5 sec), quelque soit la durée de l’étape.

Action maintenue = même action maintenue pendant le franchissement de plusieurs

étapes. action maintenue si au moins une des étapes parmi plusieurs

étapes possibles est activée.

Page 17: Automates Programmables Industriels

17

Règle d’évolution du Grafcet

Description

1. Initialisation

• Il existe au moins une étape active lors du lancement d’un Grafcet: c’est l’étape initiale. Il peut y en avoir plusieurs, comme dans le cas d’un automatisme à plusieurs Grafcets. • Par défaut cette étape est activée lors de la mise en route de l’automatisme. • On peut s’en servir pour initialiser les variables internes p.e.

2. Validation des transitions

Validée lorsque l’étape immédiatement précédente est active. Ne peut être franchie que lorsqu’elle est validée ET que la réceptivité associée est vraie. L’étape immédiatement après est inactive.

3. Franchissement

• Le franchissement implique l’activation de l’étape suivante et la désactivation de l’étape précédente (passage de jeton). • Si le GRAFCET présente plusieurs transitions : les transitions sont franchies lorsque toutes les étapes sont activées ET toutes les transitions valides. Implique la désactivation des toutes les étapes précédentes...

4. Franchissement de plusieurs transitions

Si le GRAFCET présente plusieurs transitions simultanément franchissables, elles seront franchies en même temps (notion de concurrence). Lorsque E2 valide: les étapes 4,12 non-validée et les étapes 7,9,10 validée.

5. Activation et désactivation simultanée d’une étape

Si, au cours du fonctionnement, une même étape doit être activée et désactivée simultanément, elle reste activée. Cela est nécessaire à la cohérence théorique du GRAFCET.

Structure type d’un Grafcet

Description

Séquence unique Grafcet linéaire • La suite des étapes définie par le Grafcet est toujours parcourue dans le même ordre. • On a une exécution séquentielle (et cyclique) de toutes les étapes.

Multiples séquences

Séquences exclusives

• Permet l’exécution conditionnelle d’une série d’étapes parmi deux ou plusieurs séries d’étapes possibles. • On parle alors de: divergence & convergence en OU. • Lorsque l’étape finale de la série d’étapes entamée est franchie, l'évolution de Grafcet peut se poursuivre.

Page 18: Automates Programmables Industriels

18

Séquences

simultanées

• Permet l’exécution concurrentielle (simultanée) de deux ou plusieurs séries d’étapes. • On parle de : divergence et convergence en ET. • Ce n'est que lorsque toutes les étapes finales de toutes les séquences sont actives simultanément (attente) que l'évolution peut se poursuivre par le franchissement simultané d'une même transition.

Saut d’étapes

• Permet l’exécution partielle (conditionnelle) d’une série d’étapes au sein d’un Grafcet. • Attention: afin de préserver la correction de Grafcet les conditions r1 et r15 doivent être mutuellement exclusives (ne peuvent pas être VRAI en même temps).

Page 19: Automates Programmables Industriels

19

Reprise d’étapes • Permet de répéter une même séquence jusqu'à ce que

la réceptivité de fin de séquence soit vraie (il s’agit des boucles - séquences exclusives).

Extensions aux Grafcet (pour un Grafcet plus complexe)

Hiérarchie afin de structurer des Grafcet complexes : meilleure lisibilité, programmation simplifiée, documentation plus structurée. • Si plusieurs Grafcets sont utilisés pour contrôler un même système, ils peuvent être ordonnés de façon hiérarchique.

Hiérarchisation possible grâce aux notions de : • Etapes et transitions de type : source et puits • Tâches - analogie avec des sous-programmes • Macro-étape - analogie avec des macros

Etapes: sources, puits

• source : étape qui n’est pas précédé d’un couple transition-réceptivité. Activé que par un ordre explicite d’activation. Une étape initiale p.e. • puits : étape qui n’est pas suivi d’un couple transition-réceptivité. Désactivée que par un ordre explicite de désactivation.

Page 20: Automates Programmables Industriels

20

Transitions: source, puits

• source : transition qui n’a pas d’étape qui la précède. Par convention toujours validée, pour la franchir il suffit que la réceptivité soit VRAIE. • puits : transition qui n’est pas suivi d’une étape. Seule action possible : désactivation de l’étape précédente (active aucune autre étape).

Grafcet des tâches • Tâche = sous-programme composé de : ๏ 1 étape initiale, unique (tâche en attente). ๏ 1 couple transition-réceptivité qui suit l’étape initiale = conditions de lancement de tâche. ๏ Etapes de la tâche décrites par un Grafcet (tâche en cours d’exécution). ๏ 1 dernière étape de la tâche qui implique la signalisation de la fin de tâche.

Macro-étapes • Regroupe un ensemble d’étapes (expansion d’une

étape). • Défini un point d’entrée (E) et un point de sortie (S).

franchissement de la transition de point d’entrée = franchissement de la transition indiquée dans l’étape d’entrée.

L’étape de sortie active la transition de sortie.

Différence entre une

tâche et une macro-étape

• Une tâche implique le mécanisme d’appel et de retour d’un autre Grafcet. Analogie avec un appel d’une fonction dans un langage de programmation classique.

Page 21: Automates Programmables Industriels

21

• Une macro-étape est juste un formalisme permettant une écriture (lecture) plus simplifiée d’un Grafcet complexe. Analogie avec des macros en langage de programmation (ou des fonctions inline). Le remplacement de la macro par la définition par le pré-compilateur.

Forçage • Implique l’interruption d’exécution normale d’un Grafcet (à l’aide des étapes sources et puits p.e.) pour l’exécution d’un seul Grafcet : activation explicite d’une étape (source). • Seulement les Grafcets d’ordre hiérarchique plus élevé peuvent imposer un forçage. • Utilisation : boutons d'arrêt d’urgence (les beaux gros boutons rouges...).

Figeage • Implique l’arrêt de l’évolution normale du Grafcet et ceci malgré la modification potentielle de réceptivités (et des transitions par conséquence) - il n’y a plus d’activation/désactivation d’étapes. • N’implique pas l’arrêt des actions... • Afin de bloquer des actions en cours (dans un cas d'arrêt d’urgence p.e.) il faut prévoir leurs arrêts explicites (aspect sécurité - car il est possible d’imaginer les situations où un arrêt des actions non surveillées peut provoquer une catastrophe).

Mise en équation = dériver les équations logiques d’un système séquentiel équivalant au Grafcet. • Utilité : ✴ Formalisation de problème ✴ Réalisation d’un Grafcet avec de la logique câblée, par opposition à la logique programmée (différence : ). ✴ Réalisation d’un programme dans un autre langage à partir d’un Grafcet (p.e: si l’automate ne peut pas être programmé en Grafcet, alors Grafcet vers LD, LD vers automate)

• Analogie entre une étape d’un Grafcet et d’un état pour un système séquentiel.

• A chaque étape on associe un état (un bit de mémoire - une bascule). • On détermine les équations logiques pour les commandes de la bascule (typiquement les expressions pour S et R): il est donc possible de représenter (traduire) un Grafcet en LD en utilisant des mémoires.

Page 22: Automates Programmables Industriels

22

• Plusieurs possibilités de formalisme permettant la mise en équation d’un Grafcet. On présente le formalisme le plus sure (celui qui garanti que les deux étapes ne sont pas activées de façon simultanée) : ๏ Franchissement d’une transition Lorsque étape est activé ET lorsque la réceptivité associée à la transition est VRAI : ๏ Activation d’une étape Si la transition précédente est franchie. L’étape restera active tant qu’elle est active ET la transition suivante n’est pas franchie :

ERREURS POTENTIELLES ๏ Erreur de fond Le non-respect de la règle transition-étape-transition (on en a parlé). ๏ Erreur de forme (mauvaises constructions) ‣ Problème de regroupement des liaisons ‣ Problème d’accès aux étapes ‣ GUI peut aider ... • Regroupement des liaisons (ET) commun

Divergence en ET

Page 23: Automates Programmables Industriels

23

Convergence en ET

• Mauvaises constructions - accès à l’étape

•Mauvaises constructions : Confusion par rapport à la convergence

ETUDE • L’interprétation d’un GRAFCET est défini par l’ensemble:

๏ Des réceptivités associées aux transitions. ๏ Des actions associées aux étapes.

• Le rôle de l’interprétation est de synchroniser l’évolution de l’automate avec son environnement (son évolution en fonction de l’évolution de l’environnement). • Deux types de réceptivités:

๏ Externes – Fonctions ayant comme arguments des variables externes uniquement (les entrées).

๏ Internes - Fonctions ayant comme arguments des variables internes uniquement (variables d’état). • GRAFCET = représentation décomposable au niveau des réceptivités si toute réceptivité peut être représentée comme suit (séparation des entrées et des variables d’état) :

Page 24: Automates Programmables Industriels

24

Exemple de décomposition de GRAFCET

Deux types de réceptivités et la possibilité de décomposition impliquent deux classes particulières des GRAFCETs: ๏ GRAFCET libre

๏ Auto-synchronisé

Type de Grafcet Description Libre Les GRAFCETs n’ayant pas de synchronisation interne (que des

variables externes, et pas de variables internes). Auto-synchronisé Les GRAFCETs n’ayant pas des variables externes, uniquement des

variables internes (synchronisation - uniquement variables internes). En pratique les GRAFCETs sont rarement exclusivement libres ou

auto-synchronisés. Autonome = noyau du GRAFCET = représentation de l’automatisme

indépendante du monde extérieur. ๏ Obtenu en partant d’un GRAFCET complet en conservant que des interprétations internes (toutes les interprétations externes sont considérées comme indifférentes - don’ t cares). ๏ Son utilité : étudier le GRAFCET de façon progressive.

Complet = Grafcet autonome + Interprétation externe

Page 25: Automates Programmables Industriels

25

Type de transition Description

Sensibilisée Si : ๏ Elle est validée ET si la réceptivité interne est vraie. ๏ Si la réceptivité interne n’existe pas alors on suppose que la transition est sensibilisée dès que la transition est validée. ๏ Dans un GRAFCET complet une transition sensibilisée sera franchie lorsque la réceptivité externe associée sera vraie. ๏ Dans un GRAFCET autonome une transition peut être franchie ou non suivant si on envisage que la réceptivité externe est vraie ou fausse permet d’étudier le GRAFCET sans son interprétation externe et surtout TOUTES ses évolutions possibles et de progressivement amener l’information sur l'extérieur afin d’affiner le modèle.

Solidaires

Deux transitions partagent une même situation S. Si elles sont sensibilisées par S et si le franchissement de l’une met fin à la sensibilisation de l’autre :

๏ S-solidaires si le franchissement d’une transition désensibilise l’autre à cause de leur structure (solidaire par la structure - S pour structure).

๏ I-solidaires

le franchissement d’une transition désensibilise l’autre à cause de leur interprétation interne (solidaire par l'interprétation interne - I pour interne).

Page 26: Automates Programmables Industriels

Concurren

Indépenda Type d

Incompa

Totalem

Identiqu

Totalem

Compat

Totalem

• Pour 1faire la

๏Si toute

๏Si toutesont tou

๏Si toutesimulta • Classif

ntes

antes

de réceptivit(relation (.)atibles

ment incompa

ues

ment identiqu

tibles

ment compatib

1 Grafcet Adistinction ๏ Transitions les transit๏ Transitions les transit

ujours vraie๏ Transitions les transitnément).

fication des

Si elle

Deux

té externe ) 2)

atibles

ues

bles

AVEC transitentre ces trns d’Interprtions solidains d’Interprtions solidaies simultanéns d’Interprtions solidai

GRAFCET

es sont sens

transitions

si pour cetsimultanémsi pour tousimultanémsi pour cetsimultanémsi pour tousimultanémsi pour cetsimultanémsi pour tousimultaném

tions solidaois classes drétation Resires sont incrétation Larires sont incément). rétation Quires sont co

:

sibilisées pa

s ni concurre

tte situation ment

ute situationment tte situationment ute situationment tte situationment ute situationment

aires : examede Grafcet dstrictive compatiblesrge compatibles

elconque mpatibles (

ar une même

entes ni soli

Descrip

elles ne peu

n elles ne pe

n elles sont t

n elles sont

n elles peuv

n elles peuv

en des interpdifférentes:

s (ne sont ja

s ou identiq

(peuvent ma

e situation n

idaires.

ption

uvent jamai

euvent jama

toujours vra

toujours vr

vent être vra

vent être vra

rétations ext

amais vraies

ques (ne son

ais ne doive

non-partagé

is être vraie

ais être vrai

aies

raies

aies ou non

aies ou non

ternes perm

s simultané

nt jamais vr

ent pas être

26

ée.

s

es

n

et de

ément).

raies ou

e vraies

Page 27: Automates Programmables Industriels

27

ANALYSE • = recherche de toutes les situations possibles dans lesquelles le Grafcet peut se trouver. On peut faire la distinction entre les :

๏ Situations atteintes L’automatisme est immergé dans son environnement avec lequel il interagi (et/ou dans un environnement de simulation). Forcément l’automate ne suivra pas toutes les évolutions possibles. L’automate est là pour faire des choses de façon répétitive.

๏ Situations accessibles Toutes les situations potentiellement “atteignables” par l’automatisme en ignorant le monde extérieur et son action sur l’automate (une vue exhaustive - parfois trop exhaustive - des évolutions possibles). Bien sur, l’ensemble des situations accessibles renferme l’ensemble de situations atteintes. • Méthodologie - algorithme de validation en 3 étapes

1) Etablissement d’un GRAFCET autonome Rendre toutes les réceptivités extérieures indifférentes. ๏ A partir de cahier de charge on établi un premier jet de GRAFCET. ๏ On analyse la possibilité de décomposition de GRAFCET complet (on met à l’écart l'interprétation externe) ๏ On “extrait” le noyau de GRAFCET pour: ‣ Etudier les différents types des transitions: Identification des transitions solidaires ‣ Etudier les évolutions de l’automatisme : analyser les situations accessibles indépendamment du monde extérieur. 2) Recherche de l’ensemble des situations accessibles On établi l’ensemble des situations possibles en partant de GRAFCET autonome dans la situation initiale S0. Afin de simplifier cette tâche (explosion combinatoire) on considère le GRAFCET autonome renseigné (l’apport des éléments de l'interprétation interne). ๏ On part de la situation initiale S0 ๏ On établi la liste de toutes les transitions sensibilisées par cette situation.

Page 28: Automates Programmables Industriels

๏ ParmisituationconsidèIntérêt • Identi(elles exGRAFC• Des étun autre• Des si 3) EtabliMontre les séqusituation๏ En pa๏ Pour c๏ On nod’un nœDans l’eon passtransitio

VALID (Proprié• P1 - SSi à parSi le GR• P2 - VSi à parfranchisSi le GRdeviend• P3 - PSi à parGaranti• P4 - PSi à parpermettOn est s

i les transitins produite

ère le GRAC

ification desxistent indép

CET qui n’évtapes réactie franchisseituations in

issement d’u l’évolution

uences de frn à l’autre.

artant de la Tchaque Situote ensuite àœud à l’autrexemple: e d’une situons t1 et t2

DATION

étés des GRAAUF tir de toute

RAFCET estVIVANT

tir de toute ssement per

RAFCET estdrons jamaiPSEUDO-VI

tir de toute i uniquemen

PROPRE tir de toute tant de revesur de reven

ions sensibies par ces frCET autonom

s situationspendammevoluent pasivées – lorsqement, cela

nstables - lor

un graphe desn de l’automranchissemeC’est une reTable de sit

uation possià l’aide des re. On note

uation (étap

N

AFCETs (la b

situation at sauf il n’y

situation armettant det vivant on es “inertes”

IVANT situation ant le non-bl

situation aenir à l’état nir à la situa

ilisées on noranchissememe.

bloquées : ent de l'inters - ceci n’estqu’une étap peut poser rsque la som

s situations amatisme parent des traneprésentatiotuations accible on dési arcs les frades transiti

pe 1 active) à

base: les Rése

ccessible deaura pas de

ccessible dee franchir toest sûr qu’il(étapes non

ccessible delocage, mais

ccessible deinitial. ation initial

ote les transents. On ana

des situatiorprétation e peut être p

pe est activé des problèm

mme des réc

accessibles rapport au

nsitions posson équivalecessibles gnera un nœnchissemen

ions permet

à l’autre (ét

eaux de Pétri

epuis S0 auce réactivatio

epuis S0 on oute transitil ne bloquern-activées et

epuis S0 il es existe la p

epuis S0 il e

le.)

sitions francalyse toutes

ons qui ne sexterne) - il pas normal..ée par un frames de cohéceptivités ex

ux situationssibles permente à ... ?

œud de grants des transttant de réal

tapes 2,3,4 a

i)

cune étape on d’étapes.

peut trouvon. ra pas et qut transitions

existe au mopossibilité de

existe une sé

chies et les ns les solutio

sensibilisentexiste des p.. anchissemeérence. xternes vau

s possibles -mettant de pa

aphe sitions permliser le fran

actives) en f

n’est réactiv.

er des séqu

ue toutes sess non-sensib

oins une traes parties in

équence des

nouvelles ons possible

t aucune traparties de

nt, et réacti

ut 1.

- il indique asser d’une

mettant de pchissement

franchissant

vée.

uences de

s parties ne bilisées).

ansition sennertes.

s transition

28

s car on

ansition

ivée par

toutes

passer t.

t les

sibilisé.

s

Page 29: Automates Programmables Industriels

29

Apport de l'interprétation externe Jusqu'à ici le GRAFCET autonome (pas d’influence externe, uniquement des réceptivités internes et pas d’actions). Ici on considère le GRAFCET autonome, la table des situations accessibles et l'interprétation externe. • Recherche des cycles Dans certaines conditions d’entrées nous pouvons avoir repassage périodique par les mêmes situations au lieu d’avoir une évolution vers un état stable (une boucle infini p.e.). • Compatibilité des actions simultanées A partir de la table des situations accessibles on peut déterminer l’ensemble des actions qui seront entreprises et vérifier que ces actions ne sont pas incompatibles (p.e. en même temps marche/arrêt ...). • Corrélations actions-réceptivités Les actions sont corrélées aux réceptivités et peuvent engendrer des situations de blocage (p.e. on commande une monté et on est réceptif à la position basse...). Méthode en résumé • Consiste en (application à tout GRAFCET):

๏ Analyse d’un GRAFCET autonome ‣ Représentation tabulaire de GRAFCET. ‣ Table et graphe des situations accessibles. ‣ Recherche des propriétés (propre, vivant, pseudo-vivant) le plus souvent avec un GRAFCET renseigné afin de réduire l’espace des solutions.

๏ Apport de l’information externe (GRAFCET complet) ‣ Recherche des cycles, la compatibilité des actions simultanées.

Peut s'avérer assez fastidieux si fait à la main. Mais c’est un processus qui peut être rendu automatique (ordinateur).

• Validation - le processus permettant d’offrir une preuve de la correction de spécification (pas uniquement: “ça marche” ce qui malgré sa sonorité ingénieur n’est pas acceptable dans certains cas). • On a vu une méthode permettant d’y arriver (avec plus ou moins d’effort en fonction de la complexité du problème ...) • Aujourd’hui avec la complexité des problèmes traités, la validation (manuelle) n’est pas simple. • Heureusement les outils informatiques nous permettent de vérifier certains (pas toutes) propriétés d’un GRAFCET. • ... et bien sûr il existe la simulation. La question qui se pose alors est liée à la qualité de l’environnement de test.

REDUCTION • Réduction de GRAFCET = simplification i.e. réduction de nombre d’étapes (et de transition) • Possible car lors de l’élaboration de GRAFCET il est possible que nous ayons introduit de la redondance (sans faire exprès). • Réductions:

Page 30: Automates Programmables Industriels

30

๏ Soit des méthodes systématiques de simplification: analyse de GRAFCET complet pour l'obtention d’un GRAFCET minimal. Implique des méthodes complexes (penser à la simplification des tables d’états pour des systèmes séquentiels), mais pas forcement automatisables dans le cas de GRAFCET... ๏ Soit des méthodes simples, de bonne pratique, permettant d’obtenir un “meilleur” GRAFCET (approche pragmatique à la simplification). • La simplification d’un GRAFCET - obtention d’une même spécification de l’automatisme mais d’un formalisme plus simple • Implique: ๏ Moins de ressources pour une réalisation avec de la logique câblée ๏ Lors d’une implémentation dans des APIs (ressource pas critique): ‣ Mise en ouvre plus simple ‣ Réduction de risque d’erreur ‣ Validation (non-formelle) plus simple et plus rapide ‣ Meilleure lisibilité • Possible car l’écriture d’un GRAFCET initial peut impliquer: ๏ Transitions redondantes ๏ Etapes redondantes ๏ Etapes fusionnables Transitions redondantes • Les transitions sont identiques si elles ont les mêmes étapes d’entrée et les mêmes étapes de sortie. • De telles transitions sont regroupées avec une nouvelle réceptivité associée à la transition (le OU logique entre les deux expressions Booléennes).

Etapes redondantes • Une étape Si est étape implicite d’un ensemble d’étapes S si: ๏ dans toutes les situations lorsque Si est active il existe une étape dans l’ensemble S également active ๏ dans toutes les situations où apparaît une étape active de l’ensemble S, Si l’est aussi. • L’étape implicite et toutes les liaisons d’entrée et de sortie sont supprimées, les actions sont reportées aux autres étapes du GRAFCET (actions de type niveau uniquement!) • En pratique: il faut trouver des étapes dont l’activité est toujours simultanée avec celle d’autres étapes dans une table des étapes accessibles. • A la main c’est un peu compliqué pour un grand nombre d’étapes, mais la méthode est programmable. Etapes fusionnables

Page 31: Automates Programmables Industriels

31

• Condition de fusionnement de n étapes: ๏ quelque soit la situation du GRAFCET si une étape active peut être caractérisé par une condition logique ci ๏ si les conditions logiques caractérisant l’activité de chacune de n étapes sont exclusives entre elles • De telles transitions sont regroupées avec une nouvelle réceptivité associée à la transition (le OU logique entre les deux expressions Booléennes).

Page 32: Automates Programmables Industriels

32

6. Comment passer d’un Grafcet à un Ladder bascule RS… ? + voir p.10 & 21

7. Gemma

VOIR SLIDES : partie 3 slides 51 à 83