Download - GRAFCET : IEC/CEI 60848 …
Rappels
GRAFCET : IEC/CEI 60848 …
Structuration & HiérarchisationÉléments IEC 61131-3
Implémenter Des Grafcets
Coordination De Taches
Raymond Philippe janvier.2004
vidéo
Chapitre 1Rappels
Historique
1977 L’AFCET propose les bases d'un outil qu'elle appelle GRAFCET.
1982 NF C03-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 …
GRAphe Fonctionnel de Commande d’Étape-Transition
Introduction
Liaison(s) orientée(s)
EtapesTransitions
A
ActionsB B
A
r2
r1
r0
réceptivités
r2
r1
r0
E/S
Etapes
9 X9 variable d’étape de l’étape 9
9X9 =0 (False)
9X9 =1 (true)
Etat actif de l’étapeSymbole de l’étape initiale
* est un repère alphanumérique
*
Réceptivités
1
2r2
La réceptivité est une fonction logique !
&
vol
100
=1>
X1
e1 r2
=1
Réceptivité toujours vraie
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 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 précédentes sont actives.
franchissement SI :la transition est validée ET réceptivité associée vraie
Non franchissab
le
franchissable
franchie
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
franchie
franchissable
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 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
e
e
e
e.a0
1
2
3
tX1
tX2
tX3
ta
te
Convergence & Divergence En OU
2 M1
Y
6 V1+
v11
9 V3-
X
3 V2+
v21
7 V4+
v41
4 V3+
v31
8 V1-
v10
5 V2-
v20
V4-
x.y
x.y
Saut Et Reprise De Séquence
SAUT REPRISE
Convergence & Divergence En ET
2 M1
z
7 V3+
v31
10 V4-
8 V4+
v41
9 V3-
v20.v30
3 V1+
v11
4 V2+
v21
5 V1-
v10
6 V2-
=1étapes d’attente
A Éviter…formellement !
a a
Synchronisation ?
Les Actions
normal
mémorisée
Les Actions
Type L (Limited)
Type D (Delay)
Type C (Condition)Sm=Xn.Cn
Action Sur Front
2
a
Action au front montant
(activation de l’étape)
2
a
Action au front descendant
(désactivation de l’étape)
2
^X2
C
Temporisations
1
2t/X1/3s
opérateur normalisé "t1/En/t2" CEI/IEC 617-12
1
23s/X1
3s
Compteurs
2
1
3 c:=c+1;
c:=0;
C<N C=N
2
1
3 c:=c-1;
c:=N;
C>0 C=0
Chapitre 2 Structuration & Hiérarchisation
Macro Etape
E5 Etape Entrante
S5
Etape Sortante
1
2
Cycle
EXPANSION
M5
=1
Comportement Dynamique
M5
1
2
S5
E5
M5
1
2
S5
E5
M5
1
2
S5
E5
M5
1
2
S5
E5
Transition validée
Transition validée
Remarque
l’expansion de la macro-étape est la représentation unique d’un
fonctionnement et n’est donc pas « duplicable » comme un sous-
programme.M5
1
2
S5
E5
Mécanisme Appel Réponse Acquittement
T1
Comment exécuter G1 à partir de T1 ?
11
12
13
10G1
XT1
APPEL
X13REPONSE
XT1ACQUITTEMENT
Utilisation En Sous Programme
XTA1+XTA2 appelTA1
TA2
TACHE A
TACHE A
X13 réponse
X13 réponse
11
12
13
10TACHE
A
acquittementXTA1.XTA2
Ressource Commune
Ici, l’étape 99
Représente la
ressource
Commune
A B99
R1 R2
M1M2
La ressource peut être utilisée par A (macro M1) ou B (macro M2)
Comportement Dynamique
99
R1 R2
A B
M1M2
L’étape 99 est active, la « ressource » est libre
(t1)
Comportement Dynamique
99
R1 R2
A B
M1M2
Le franchissement de la transition (t1) entraîne la désactivation de l’étape 99. La ressource est donc utilisée par M1
(t1)
Comportement Dynamique
99
R1 R2
A B
M1M2
Le processus B doit attendre la fin du processus A (M1) pour utiliser la ressource qui n’est plus disponible (étape 99 inactive)
Comportement Dynamique
99
R1 R2
A B
M1M2
La fin de la macro M1 entraîne la réactivation de l’étape 99. La ressource est de nouveau disponible pour B par exemple
Forçage
F/Grafcet : {contexte}
10
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.
Grafcet {contexte}
10
nouvelle écriture…
CohérenceLa 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
GM0
Gs1
Gs22
Gs21
GM2
Gs2
Gs1
GM1
Gs7
Forçage Dans La Situation Vide (Désactivation)
Gs { }10
Gs
4
2
1
36
5
L’activation de l’étape 10 entraîne la désactivation de toutes les étapes du
grafcet Gs
Forçage Dans Une Situation Donnée
Gs {4,5}10
Gs
4
2
1
36
5
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
Forçage Dans La Situation Courante :Figeage
Gs {*}10
Gs
4
2
1
36
5
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
Forçage Dans La Situation Initiale
Gs {INIT}10
Gs
4
2
1
36
5
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
Exemple
Pas d’activation de l’étape 7
6
8
5
7
2
1
3
F/G1: {8}
a
a
G1
6
8
5
7
2
1
3
G1{8}
a
a
G1
a=1
Etape Encapsulante
9
L’activation de l’étape encapsulante entraîne L’activation des étapes
indiquées par *
4
3
5
9
*
9
2
1
3
*
Etape Encapsulante
Les grafcets encapsulés peuvent ensuite évoluer normalement tant que l’étape
encapsulante est active
9
4
3
5
9
*
9
2
1
3
*
Etape Encapsulante
La désactivation de l’étape encapsulante entraîne la
désactivation de toute les étapes encapsulée
9
4
3
5
9
*
9
2
1
3
*
Chapitre 3Éléments IEC 61131-3
Programmation Des Réceptivités
(Temp1>2000) AND (Press > 20)
S1
S2
STPreCheck
Power
MotorChecks
Go
Vibration
Fuel
Bear1
Tank1
FBD
S1
S2
GS1.X
Sw1
%IX4LD
***.X drapeau d’étape (type booléen, domaine local)
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é pendant l’activation de l’étape 5
Exécuté à l’activation de l’étape 1
Réalisation De to/Xi
* *.t temps écoulé depuis l’activation (type time)
1
23s/X1
1
2GS1.t >=t#3s
Réalisation De to/Xi
1
23s/X1
1
2%MX2
S1.X
t#3s
%T0TON
IN1
IN2OUT
%MX2
exemple
drapeau d’étape (ou variable d’étape) GS*.x pour
isagraf ou X* pour pl7
Durée d’activation GS*.t pour isagraf et X*.v pour pl7
Réalisation des compteurs…
2 C:=C+1 2 Action(P)C:=C+1;
End_action;C=3
C=3
1 C:=0 Action(P)C:=0;
End_action;
1
Réalisation des compteurs…
2
%MX2
S2.X
3
CTUCU
PV
Q%MX2
RESETS1.X
Not %MX2
1 C:=0
2 C:=C+1
C=3C<3
Structuration
Traitement préliminaire(fronts,réceptivités,…)
Actions associées aux étapes
Structure
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
Le père donne naissance au fils (GSTART)Le père tue le fils (GKILL)
Le père gèle le fils (GFREEZE)
PL7 junior : Notion de bit systèmeAgit sur la totalité du chart !
%S21 pour G7 { INIT}%S23 pour G7 {*}
Chapitre 4Implémenter Des Grafcets
Vous disposez d’un
atelier logiciel SFC ?
Xn1:=Xb0 and e0 or Xb1 and not e1;
Non
0ui 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)
Algorithme Sans Recherche De Stabilité
Initialisation
Calcul des réceptivités complexes
Calcul de l’évolution
Commande des actions
1
2
0
r2
r1
A B
A
Passage sur API
Init ? InitialisationOui
Non
Calcul des réceptivités complexes
Calcul de l’évolution
début
Commande des actions
fin
E T S E T S
OU
Méthode N°1 (Trivial)Initialisation
1
2
0
R0=i0.i1.i2
r2
r1
A B
A
X0
S
init
X1
R
X2
Rinit
S
X0
S
init
X1
R
X2
R
Méthode N°1 calcul des réceptivités
r0=i0.i1.i21
2
0
r2
r1
A B
A
r0i2i1i0
Méthode N°1 Évolution
1
2
0
r0
r1
r2
A B
A
X1
S
X0r0
X0
R
X2
S
X1r1
X1
R
X0
S
X2r2
X2
R
Méthode n°1 commande des actions
r01
2
0
r1
r2
A B
A
A
X2
X1
BX2
Exemple Complet
1
2
0
r1
r2
A B
A
Traitement des divergencesX10
R
r10 X10
X11
S
X12
S
X20
R
r201
X20
X21
R
X22
S
X21
r10
r201
10
11 12
2120
22
Traitement des divergences
X10
R
r1 X10
X11
SX10
R
r2 X10
X12
S
X20
R
r3 X20
X22
S
X21
R
r4 X21
X22
S
r2r1
10
1211
r3r4
21
20
22
Non respect de la règle 4
r421
22
20
r0
r1.X11
r2
11
12
10
r1.X21
r5
X21
R
r1 X11
X22
S
X21
X11
R
r1 X21
X12
S
X11
…
…Re-synchronisation
impossible
temps de franchissement « nul »
1
2
0
e
e
e
X1
S
X0e
P
X0
R
X2
S
X1e
P
X1
R
X0
S
X2e
P
X2
R
Compteur et structure registre
impossible
Exercice
1
5
0
/e1.(to/X1)
e2
e1
^e0
S22 4
3
=1
S2
S1
e3
S1
S4
e2C
Méthode 2Principe De Base
X1.r1Conditions d’activation
X’0:=nouvel
état
+ X0maintient
De l’activation…
. (X0.r3)…a condition de ne pas évoluer !
0
1
r1
r3
X’i = nouvelle étatXi = ancien état
Exemple X’0 et X0
Méthode 2 Mémorisation
évolutionX’0:=X1.r1+X0./(X0.r3)
mémorisationX0:=X’0
E T SCycle n-1
évolutionX’0:=X1.r1+X0./(X0.r3)
mémorisationX0:=X’0
E T SCycle n
Mémorisation du nouvel état dans
l’ancien pour le cycle
suivant !
0
1
r1
r3
Méthode N°2 (Trivial)Initialisation
R0=i0.i1.i21
2
0
r2
r1
A B
A
X0
S
init
X1
R
X2
Rinit
S
X0
S
init
X1
R
X2
R
OU
! Uniquement l’ancien état (Xi)
Méthode 2 calcul des réceptivités
r0:=i0 . i1. i2R0:=i0 and i1 and i2;
1
2
0
r0=i0.i1.i2
r2
r1
A B
A
Méthode 2 Évolution
Toute les équations sont évaluées avec l’état antérieur ce qui permet le respect des règles 4 et 5 !
X’0:=X2.r2+X0./(X0.r0)X’1:=X0.r0+X1./(X1.r1)X’2:=X1.r1+X2./(X2.r2)
1
2
0
r0
r1
r2
A B
AX0:=X’0X1:=X’1X2:=X’2
Méthode 2 commande des actions
A:=X’1+ X’2B:=X’21
2
0
r0
r1
r2
A B
A
Cas Général
0
21 43
r1 r2
r3 r4
X’0:=(X1.X2.r1 + X3.X4.r2) + X0.[X0.(r3+r4)]
Exercice
1
5
0
/e1.(to/X1)
e2
e1
^e0
S22 4
3
=1
S2
S1
e3
S1
S4
e2C
Exemple CADEPARôle de W0,4 W0,5 et W0,6 ?
Exemple CADEPARôle de W0,1 W0,2 W0,3 ?
Exemple CADEPA Rôle de W0,0 ?
Réalisation Des Forçages
1
2
0
e./fi
e./fi
e./fi(fi = true) permet
le figeage du grafcet
X0
R
fo
X1
S
X2
R
(fo = true) permet le forçage du grafcet
Algorithme Avec Recherche De Stabilité
Chapitre 5Coordination De Taches