GRAFCET IECCEI 60848 Rappels Structuration Hirarchisation lments IEC

  • Slides: 82
Download presentation
GRAFCET : IEC/CEI 60848 … Rappels Structuration & Hiérarchisation Éléments IEC 61131 -3 Implémenter

GRAFCET : IEC/CEI 60848 … Rappels Structuration & Hiérarchisation Éléments IEC 61131 -3 Implémenter Des Grafcets Coordination De Taches vidéo Raymond Philippe janvier. 2004

Chapitre 1 Rappels

Chapitre 1 Rappels

Historique GRAphe Fonctionnel de Commande d’Étape-Transition 1977 L’AFCET propose les bases d'un outil qu'elle

Historique GRAphe Fonctionnel de Commande d’Étape-Transition 1977 L’AFCET propose les bases d'un outil qu'elle appelle GRAFCET. 1982 NF C 03 -190: Norme française 1987 IEC 848: Norme européenne (reprend une partie de la norme NF) 2002 IEC 60848 – langage de spécification GRAFCET pour diagrammes fonctionnels en séquence. 2006 maintenance …

Introduction E/S r 0 Etapes Transitions r 1 r 2 A r 0 B

Introduction E/S r 0 Etapes Transitions r 1 r 2 A r 0 B Liaison(s) orientée(s) r 1 A r 2 réceptivités Actions B

Etapes 9 X 9 variable d’étape de l’étape 9 X 9 =0 (False) 9

Etapes 9 X 9 variable d’étape de l’étape 9 X 9 =0 (False) 9 X 9 =1 (true) 9 Etat actif de l’étape * Symbole de l’étape initiale * est un repère alphanumérique

Réceptivités 1 Réceptivité toujours vraie =1 2 X 1 r 2 vol > &

Réceptivités 1 Réceptivité toujours vraie =1 2 X 1 r 2 vol > & e 1 100 La réceptivité est une fonction logique ! =1 r 2

Règles De Construction Graphique Respecter l ’alternance étape transition !

Règles De Construction Graphique Respecter l ’alternance étape transition !

1 Situation Initiale La situation initiale d'un Grafcet caractérise le comportement initial de la

1 Situation Initiale La situation initiale d'un Grafcet caractérise le comportement initial de la partie commande (vis à vis de la PO, de l'opérateur…). Elle correspond aux étapes actives au début du fonctionnement. Elle traduit généralement un état de repos.

2 Franchissement D'une Transition Une transition est dite validée lorsque toutes les étapes immédiatement

2 Franchissement D'une Transition Une transition est dite validée lorsque toutes les étapes immédiatement précédentes sont actives. franchissement SI : la transition est validée ET réceptivité associée vraie franchie Non franchissable

3 Evolution Des Étapes Actives Le franchissement d'une transition entraîne : l'activation de toutes

3 Evolution Des Étapes Actives Le franchissement d'une transition entraîne : l'activation de toutes les étapes immédiatement suivantes et la désactivation de toutes les étapes immédiatement précédentes franchissable franchie

4 Evolution Simultanée Plusieurs transitions simultanément franchissables sont simultanément franchies franchissable franchie

4 Evolution Simultanée Plusieurs transitions simultanément franchissables sont simultanément franchies franchissable franchie

5 Activation Et Désactivation Simultanée D'une Étape Si au cours du fonctionnement la même

5 Activation Et Désactivation Simultanée D'une Étape Si au cours du fonctionnement la même étape est simultanément activée et désactivée elle reste active

Postulat Temporel A l’échelle du temps interne, la durée séparant l’instant où une transition

Postulat Temporel A l’échelle du temps interne, la durée séparant l’instant où une transition est franchissable de l’instant où elle est franchie (appelée durée d’évolution) est aussi petite qu’il est nécessaire, mais non nulle. En conséquence, la durée minimale de l’activité d’une étape ne sera jamais nulle.

Exemple Du Registre À Décalage 0 e. a 1 e 2 e 3 e

Exemple Du Registre À Décalage 0 e. a 1 e 2 e 3 e e t a t X 1 t X 2 t X 3 t

Convergence & Divergence En OU x. y

Convergence & Divergence En OU x. y

Saut Et Reprise De Séquence SAUT REPRISE

Saut Et Reprise De Séquence SAUT REPRISE

Convergence & Divergence En ET étapes d’attente =1

Convergence & Divergence En ET étapes d’attente =1

A Éviter…formellement ! a Synchronisation ? a

A Éviter…formellement ! a Synchronisation ? a

Les Actions normal mémorisée

Les Actions normal mémorisée

Les Actions Type C (Condition) Sm=Xn. Cn Type D (Delay) Type L (Limited)

Les Actions Type C (Condition) Sm=Xn. Cn Type D (Delay) Type L (Limited)

Action Sur Front a 2 a Action au front montant (activation de l’étape) 2

Action Sur Front a 2 a Action au front montant (activation de l’étape) 2 ^X 2 2 C Action au front descendant (désactivation de l’étape)

Temporisations 1 t/X 1/3 s 1 3 s/X 1 2 3 s 2 opérateur

Temporisations 1 t/X 1/3 s 1 3 s/X 1 2 3 s 2 opérateur normalisé "t 1/En/t 2" CEI/IEC 617 -12

Compteurs c: =0; 1 c: =N; 1 2 2 c: =c+1; 3 C<N C=N

Compteurs c: =0; 1 c: =N; 1 2 2 c: =c+1; 3 C<N C=N c: =c-1; 3 C>0 C=0

Chapitre 2 Structuration & Hiérarchisation

Chapitre 2 Structuration & Hiérarchisation

Macro Etape EXPANSION E 5 1 M 5 =1 Etape Entrante Cycle 2 S

Macro Etape EXPANSION E 5 1 M 5 =1 Etape Entrante Cycle 2 S 5 Etape Sortante

Comportement Dynamique Transition validée E 5 E 5 1 1 M 5 M 5

Comportement Dynamique Transition validée E 5 E 5 1 1 M 5 M 5 2 2 S 5 S 5

Remarque E 5 1 M 5 2 S 5 l’expansion de la macro-étape est

Remarque E 5 1 M 5 2 S 5 l’expansion de la macro-étape est la représentation unique d’un fonctionnement et n’est donc pas « duplicable » comme un sousprogramme.

Mécanisme Appel Réponse Acquittement Comment exécuter G 1 à partir de T 1 ?

Mécanisme Appel Réponse Acquittement Comment exécuter G 1 à partir de T 1 ? G 1 10 XT 1 APPEL T 1 X 13 11 REPONSE 12 13 ACQUITTEMENT XT 1

Utilisation En Sous Programme TACHE A 10 TA 1 XTA 1+XTA 2 TACHE A

Utilisation En Sous Programme TACHE A 10 TA 1 XTA 1+XTA 2 TACHE A X 13 réponse appel 11 12 TACHE A X 13 réponse 13 XTA 1. XTA 2 acquittement

Ressource Commune 99 B A R 1 M 1 Ici, l’étape 99 Représente la

Ressource Commune 99 B A R 1 M 1 Ici, l’étape 99 Représente la R 2 M 2 ressource Commune La ressource peut être utilisée par A (macro M 1) ou B (macro M 2)

Comportement Dynamique 99 B A (t 1) R 1 M 1 R 2 M

Comportement Dynamique 99 B A (t 1) R 1 M 1 R 2 M 2 L’étape 99 est active, la « ressource » est libre

Comportement Dynamique 99 B A (t 1) R 1 M 1 R 2 M

Comportement Dynamique 99 B A (t 1) R 1 M 1 R 2 M 2 Le franchissement de la transition (t 1) entraîne la désactivation de l’étape 99. La ressource est donc utilisée par M 1

Comportement Dynamique 99 B A R 1 M 1 R 2 M 2 Le

Comportement Dynamique 99 B A R 1 M 1 R 2 M 2 Le processus B doit attendre la fin du processus A (M 1) pour utiliser la ressource qui n’est plus disponible (étape 99 inactive)

Comportement Dynamique 99 B A R 1 M 1 R 2 M 2 La

Comportement Dynamique 99 B A R 1 M 1 R 2 M 2 La fin de la macro M 1 entraîne la réactivation de l’étape 99. La ressource est de nouveau disponible pour B par exemple

Forçage 10 F/Grafcet : {contexte} 10 Grafcet {contexte} nouvelle écriture… Le forçage est un

Forçage 10 F/Grafcet : {contexte} 10 Grafcet {contexte} nouvelle écriture… Le forçage est un ordre interne consécutif à une évolution. L’application du forçage est prioritaire par rapport à toute évolution. Les actions associées aux étapes des grafcets forcés sont maintenues pendant la durée du forçage ! Le grafcet forcé ne peut évoluer tant que l’ordre de forçage est présent.

Cohérence La cohérence de la hiérarchie impose que : Si un grafcet force un

Cohérence La cohérence de la hiérarchie impose que : Si un grafcet force un autre grafcet, la réciproque est impossible Un grafcet ne peut être forcé que par un et un seul grafcet GM 1 GM 0 Gs 7 Gs 21 Gs 1 GM 2 Gs 22

Forçage Dans La Situation Vide (Désactivation) 6 10 3 Gs { } 4 L’activation

Forçage Dans La Situation Vide (Désactivation) 6 10 3 Gs { } 4 L’activation de l’étape 10 entraîne la désactivation de toutes les étapes du grafcet Gs 5 1 2 Gs

Forçage Dans Une Situation Donnée 6 10 3 Gs {4, 5} 4 L’activation de

Forçage Dans Une Situation Donnée 6 10 3 Gs {4, 5} 4 L’activation de l’étape 10 entraîne l’activation des étapes 4 et 5 du grafcet Gs et le maintient dans ce contexte tant que l ’ordre de forçage est émis 1 5 2 Gs

Forçage Dans La Situation Courante : Figeage 6 10 3 Gs {*} 4 L’activation

Forçage Dans La Situation Courante : Figeage 6 10 3 Gs {*} 4 L’activation de l’étape 10 entraîne le figeage du grafcet Gs dans la situation courante et le maintient dans ce contexte tant que l ’ordre de forçage est émis 5 1 2 Gs

Forçage Dans La Situation Initiale 6 10 3 Gs {INIT} 4 L’activation de l’étape

Forçage Dans La Situation Initiale 6 10 3 Gs {INIT} 4 L’activation de l’étape 10 entraîne l’initialisation du grafcet Gs et le maintient dans ce contexte tant que l ’ordre de forçage est émis 5 1 2 Gs

Exemple 1 5 1 a=1 a 2 F/G 1: {8} a 2 6 a

Exemple 1 5 1 a=1 a 2 F/G 1: {8} a 2 6 a 3 3 7 8 G 1 5 G 1{8} Pas d’activation de l’étape 7 6 a 7 8 G 1

Etape Encapsulante 9 9 1 * L’activation de l’étape encapsulante entraîne L’activation des étapes

Etape Encapsulante 9 9 1 * L’activation de l’étape encapsulante entraîne L’activation des étapes indiquées par * 9 * 3 2 4 3 5

Etape Encapsulante 9 9 1 * Les grafcets encapsulés peuvent ensuite évoluer normalement tant

Etape Encapsulante 9 9 1 * Les grafcets encapsulés peuvent ensuite évoluer normalement tant que l’étape encapsulante est active 9 * 3 2 4 3 5

Etape Encapsulante 9 9 1 * La désactivation de l’étape encapsulante entraîne la désactivation

Etape Encapsulante 9 9 1 * La désactivation de l’étape encapsulante entraîne la désactivation de toute les étapes encapsulée 9 * 3 2 4 3 5

Chapitre 3 Éléments IEC 61131 -3

Chapitre 3 Éléments IEC 61131 -3

Programmation Des Réceptivités FBD ST S 1 Motor. Checks (Temp 1>2000) AND (Press >

Programmation Des Réceptivités FBD ST S 1 Motor. Checks (Temp 1>2000) AND (Press > 20) S 2 Bear 1 Vibration Tank 1 Fuel Pre. Check Go Power GS 1. X Sw 1 LD %IX 4 S 1 ***. X drapeau d’étape S 2 (type booléen, domaine local)

Actions Associées Aux Étapes Qualifier Explanation None Non-stored (null qualifier) N Non-stored R overriding

Actions Associées Aux Étapes Qualifier Explanation None Non-stored (null qualifier) N Non-stored R overriding Reset S Set (Stored) L time Limited D time Delayed P Pulse SD Stored and time Delayed DS Delayed and Stored SL Stored and time Limited

exemple Exécuté à l’activation de l’étape 1 Exécuté pendant l’activation de l’étape 5

exemple Exécuté à l’activation de l’étape 1 Exécuté pendant l’activation de l’étape 5

Réalisation De to/Xi * *. t temps écoulé depuis l’activation (type time) 1 1

Réalisation De to/Xi * *. t temps écoulé depuis l’activation (type time) 1 1 3 s/X 1 2 GS 1. t >=t#3 s 2

Réalisation De to/Xi 1 %MX 2 1 2 3 s/X 1 2 %T 0

Réalisation De to/Xi 1 %MX 2 1 2 3 s/X 1 2 %T 0 S 1. X t#3 s TON IN 1 OUT IN 2 %MX 2

exemple drapeau d’étape (ou variable d’étape) GS*. x pour isagraf ou X* pour pl

exemple drapeau d’étape (ou variable d’étape) GS*. x pour isagraf ou X* pour pl 7 Durée d’activation GS*. t pour isagraf et X*. v pour pl 7

Réalisation des compteurs… 2 2 C: =C+1 Action(P) C: =C+1; C=3 End_action; C=3 1

Réalisation des compteurs… 2 2 C: =C+1 Action(P) C: =C+1; C=3 End_action; C=3 1 C: =0 1 Action(P) C: =0; End_action;

Réalisation des compteurs… 2 2 C: =C+1 C<3 1 Not %MX 2 C=3 C:

Réalisation des compteurs… 2 2 C: =C+1 C<3 1 Not %MX 2 C=3 C: =0 S 2. X S 1. X 3 CTU CU Q RESET PV %MX 2

Structuration Traitement préliminaire (fronts, réceptivités, …) Structure Actions associées aux étapes

Structuration Traitement préliminaire (fronts, réceptivités, …) Structure Actions associées aux étapes

Structuration Des Graphes Si les Instructions de forçages ne sont pas définis dans la

Structuration Des Graphes Si les Instructions de forçages ne sont pas définis dans la norme IEC 61131, les ateliers constructeurs offrent parfois des possibilités de hiérarchisation Isagraf : Notion de père et de fils PL 7 junior : Notion de bit système Agit sur la totalité du chart ! Le père donne naissance au fils (GSTART) Le père tue le fils (GKILL) %S 21 pour G 7 { INIT} Le père gèle le fils (GFREEZE) %S 23 pour G 7 {*}

Chapitre 4 Implémenter Des Grafcets Vous disposez d’un atelier logiciel SFC ? Non 0

Chapitre 4 Implémenter Des Grafcets Vous disposez d’un atelier logiciel SFC ? Non 0 ui Les difficultés se limitent à la saisie des structures complexes, exotiques et à la réalisation des forçages Les ateliers SFC n’offrent pas toujours la possibilité de réaliser des structures hiérarchisées complexes ( Mode de Marches et d’Arrêt) Xn 1: =Xb 0 and e 0 or Xb 1 and not e 1;

Algorithme Sans Recherche De Stabilité Initialisation 0 Calcul des réceptivités 1 complexes A r

Algorithme Sans Recherche De Stabilité Initialisation 0 Calcul des réceptivités 1 complexes A r 2 2 Calcul de l’évolution A r 1 B Commande des actions

Passage sur API début Oui Init ? Initialisation Non Calcul des réceptivités complexes Calcul

Passage sur API début Oui Init ? Initialisation Non Calcul des réceptivités complexes Calcul de l’évolution Commande des actions fin E T S

Méthode N° 1 (Trivial) Initialisation init X 0 S 0 X 1 R 0=i

Méthode N° 1 (Trivial) Initialisation init X 0 S 0 X 1 R 0=i 0. i 1. i 2 1 init A S r 2 2 A r 1 X 0 B OU R X 2 R X 1 init R S X 2 R

Méthode N° 1 calcul des réceptivités 0 i 0 r 0=i 0. i 1.

Méthode N° 1 calcul des réceptivités 0 i 0 r 0=i 0. i 1. i 2 1 A r 2 2 A r 1 B i 1 i 2 r 0

Méthode N° 1 Évolution r 0 X 1 S 0 X 0 r 0

Méthode N° 1 Évolution r 0 X 1 S 0 X 0 r 0 1 R r 1 A X 1 S r 1 2 A r 2 X 1 B R r 2 X 0 S X 2 R

Méthode n° 1 commande des actions X 1 0 r 0 1 A X

Méthode n° 1 commande des actions X 1 0 r 0 1 A X 2 A r 1 2 A r 2 B X 2 B

Exemple Complet 0 1 A r 1 2 A r 2 B

Exemple Complet 0 1 A r 1 2 A r 2 B

Traitement des divergences r 10 10 X 10 R r 10 X 11 S

Traitement des divergences r 10 10 X 10 R r 10 X 11 S 11 12 X 12 S 20 r 201 21 X 20 X 21 X 20 R X 21 22 r 201 R X 22 S

Traitement des divergences r 1 10 X 10 R r 1 r 2 X

Traitement des divergences r 1 10 X 10 R r 1 r 2 X 11 X 10 S 12 11 r 2 X 10 R X 12 S r 3 20 r 3 X 20 R 21 r 4 22 X 20 X 22 S r 4 X 21 R X 22 S

Non respect de la règle 4 … 10 20 r 4 r 0 r

Non respect de la règle 4 … 10 20 r 4 r 0 r 1 X 11 X 21 R 11 21 X 22 r 1. X 21 r 1. X 11 12 22 r 2 X 21 S r 1 X 21 X 11 R r 5 X 12 S Re-synchronisation impossible …

temps de franchissement « nul » e X 0 P 0 S X 0

temps de franchissement « nul » e X 0 P 0 S X 0 e R e 1 e X 1 P X 2 S X 1 2 R e e P Compteur et structure registre impossible X 2 X 0 S X 2 R

Exercice 0 ^e 0 S 1 1 S 4 e 1 2 S 2

Exercice 0 ^e 0 S 1 1 S 4 e 1 2 S 2 e 2 3 =1 /e 1. (to/X 1) e 3 4 C S 1 S 2 5 e 2

Méthode 2 Principe De Base 1 r 1 X’i = nouvelle état Xi =

Méthode 2 Principe De Base 1 r 1 X’i = nouvelle état Xi = ancien état 0 Exemple X’ 0 et X 0 r 3 X’ 0: = X 1. r 1 + X 0 nouvel Conditions maintient état d’activation . (X 0. r 3) …a condition de ne De l’activation… pas évoluer !

Méthode 2 Mémorisation 1 évolution r 1 X’ 0: =X 1. r 1+X 0.

Méthode 2 Mémorisation 1 évolution r 1 X’ 0: =X 1. r 1+X 0. /(X 0. r 3) mémorisation T Cycle n-1 X’ 0: =X 1. r 1+X 0. /(X 0. r 3) mémorisation X 0: =X’ 0 r 3 X 0: =X’ 0 E 0 évolution S Mémorisation du nouvel état dans l’ancien pour le cycle suivant ! E T Cycle n S

Méthode N° 2 (Trivial) Initialisation init ! Uniquement l’ancien état (Xi) 0 X 0

Méthode N° 2 (Trivial) Initialisation init ! Uniquement l’ancien état (Xi) 0 X 0 S X 1 R 0=i 0. i 1. i 2 1 init A S r 2 2 A r 1 X 0 B OU R X 2 R X 1 init R S X 2 R

Méthode 2 calcul des réceptivités 0 r 0: =i 0. i 1. i 2

Méthode 2 calcul des réceptivités 0 r 0: =i 0. i 1. i 2 r 0=i 0. i 1. i 2 1 A r 2 2 A r 1 B R 0: =i 0 and i 1 and i 2;

Méthode 2 Évolution X’ 0: =X 2. r 2+X 0. /(X 0. r 0)

Méthode 2 Évolution X’ 0: =X 2. r 2+X 0. /(X 0. r 0) 0 X’ 1: =X 0. r 0+X 1. /(X 1. r 1) r 0 1 X’ 2: =X 1. r 1+X 2. /(X 2. r 2) A X 0: =X’ 0 r 1 2 A B X 1: =X’ 1 X 2: =X’ 2 r 2 Toute les équations sont évaluées avec l’état antérieur ce qui permet le respect des règles 4 et 5 !

Méthode 2 commande des actions 0 r 0 1 A: =X’ 1+ X’ 2

Méthode 2 commande des actions 0 r 0 1 A: =X’ 1+ X’ 2 A B: =X’ 2 r 1 2 A r 2 B

Cas Général 1 2 3 4 r 1 r 2 0 r 3 r

Cas Général 1 2 3 4 r 1 r 2 0 r 3 r 4 X’ 0: =(X 1. X 2. r 1 + X 3. X 4. r 2) + X 0. [X 0. (r 3+r 4)]

Exercice 0 ^e 0 S 1 1 S 4 e 1 2 S 2

Exercice 0 ^e 0 S 1 1 S 4 e 1 2 S 2 e 2 3 =1 /e 1. (to/X 1) e 3 4 C S 1 S 2 5 e 2

Exemple CADEPA Rôle de W 0, 4 W 0, 5 et W 0, 6

Exemple CADEPA Rôle de W 0, 4 W 0, 5 et W 0, 6 ?

Exemple CADEPA Rôle de W 0, 1 W 0, 2 W 0, 3 ?

Exemple CADEPA Rôle de W 0, 1 W 0, 2 W 0, 3 ?

Exemple CADEPA Rôle de W 0, 0 ?

Exemple CADEPA Rôle de W 0, 0 ?

Réalisation Des Forçages fo X 0 R 0 X 1 e. /fi S X

Réalisation Des Forçages fo X 0 R 0 X 1 e. /fi S X 2 1 R (fo = true) permet e. /fi 2 le forçage du grafcet e. /fi (fi = true) permet le figeage du grafcet

Algorithme Avec Recherche De Stabilité

Algorithme Avec Recherche De Stabilité

Chapitre 5 Coordination De Taches

Chapitre 5 Coordination De Taches