Académique Documents
Professionnel Documents
Culture Documents
PARTIE B
Réseaux de Petri
RdP
SED
Partie B : Réseaux de Petri
SED
Partie B : Réseaux de Petri
Chapitre 1
Réseaux de Petri
autonomes
SED
Partie B : Réseaux de Petri
Principales définitions
P1 P1
T1 T1
P2 P2
T6 T6
T2 T2
P3 P4 P3 P4
T3 T4 T3 T4
P5 P6 P5 P6
T5 T5
P7 P7
SED
Partie B : Réseaux de Petri
Sur la figure 1 :
P = {P1, P2, P3, P4, P5, P6, P7}
T = {T1, T2, T3, T4, T5, T6}
P3 est en amont ou est une entrée de T3 (P3 °T3)
P5 est en aval ou est une sortie de T3 (P5 T3°)
T2 est en amont ou est une entrée de P3 (T2 °P3)
T3 est en aval ou est une sortie de P3 (T3 P3°)
SED
Partie B : Réseaux de Petri
Marquage :
Le RdP de la figure 2 est marqué : chaque place
contient un nombre entier positif ou nul de marques ou
jetons.
Nombre de marques dans Pi : M(Pi) = mi
Exemple : m1=m3=1, m2=m4=m5=m7=0, m6=2
SED
Partie B : Réseaux de Petri
Franchissement de transition :
La figure 2 représente un RdP marqué : chaque place
contient un nombre entier positif ou nul de marques ou
jetons.
P1 P2 P1 P2
Avant franchissement
P3 P4 P3 P4
Pas de franchissement P1 P2
possible
Après franchissement
P3 P4
SED
Partie B : Réseaux de Petri
P1 P2 P1 P2
P3 P4 P3 P4
P1 P2 P1 P2
P3 P4 P3 P4
Remarques :
- La durée de franchissement d’une transition
est considérée comme étant nulle..
- Une transition validée n’est pas nécessairement
immédiatement franchie.
SED
Partie B : Réseaux de Petri
21 juin
T4 T2 T4 T2
21 mars 21 septembre
P4 T3 P3 P4 T3 P3
SED
Partie B : Réseaux de Petri
Structures particulières
Graphe d’événements : un graphe d’événements
est un RdP tel que chaque place a exactement une
transition d’entrée et une transition de sortie.
ou
10
SED
Partie B : Réseaux de Petri
ou
T1 T1 T2
11
SED
Partie B : Réseaux de Petri
RdP à choix libre : pour tout conflit <Pi, {T1, T2, …}>,
aucune des transitions ne possède une autre place
d’entrée que Pi.
P1 P2 P1
T1 T2 T1 T2
P1 P2
P2 P1
T1 T2 T1 T2 T3
12
SED
Partie B : Réseaux de Petri
P3 P4 P3 P4
2 2
Pas de franchissement P1 P2
possible
3 Après franchissement
P3 P4
2
13
SED
Partie B : Réseaux de Petri
P1 P1 P1
Franchissement Franchissement
de T1 de T1
T1 T1 T1
P2 P2 P2
Cap(P2)=2 Cap(P2)=2 Cap(P2)=2
T2 T2 T2
P1 P1 P1
Franchissement Franchissement
de T1 de T1
T1 T1 T1
T2 T2 T2
14
SED
Partie B : Réseaux de Petri
P2 P2
Karim
15
SED
Partie B : Réseaux de Petri
Chapitre 2
Propriétés et
analyse
16
SED
Partie B : Réseaux de Petri
SED
Partie B : Réseaux de Petri
T1 P1
T1
P2
P2
T2
18
SED
Partie B : Réseaux de Petri
Vivacité :
Une transition Tj est vivante pour M0, si pour tout
marquage accessible Mi, il existe une séquence de
franchissements S à partir de Mi, qui contient Tj.
( l’évolution, il restera toujours une possibilité de franchir T j)
P
1
T1
T1 P2
P2
T2
T2 P3
RdP vivant
T3
T1 non vivante
RdP non vivant
Une transition Tj est quasi vivante pour M0, s’il existe
une séquence de franchissements qui contient Tj, à
partir de M0.
(Il existe une chance pour que Tj soit franchie)
Un RdP est quasi vivant si toutes ses transitions sont
quasi vivantes. 19
SED
Partie B : Réseaux de Petri
Sans blocage :
Un blocage est un marquage tel qu’aucune transition
n’est validée.
T1 T2 T1 T2
P2 P3 P2 P3
T3 T3 T4
P4 P4 P5
T4 T5 T6
20
SED
Partie B : Réseaux de Petri
RdP réinitialisable :
Un RdP a un état d’accueil Ma pour un marquage
initial M0, si pour tout marquage accessible Mi à partir de
M0, il existe une séquence de franchissements
ramenant à Ma.
Un RdP est réinitialisable pour un marquage initial
M0, si M0 est un état d’accueil.
P1
T1 T2
P2 P3
T3
P4
T4
21
SED
Partie B : Réseaux de Petri
P1 P1
T1 T2
P2 P3
T1 T2 T1 T2
SED
Partie B : Réseaux de Petri
T4 T2
P4 T3 P3
hiver automne
A tout instant, on a l’invariant : m1 + m2 + m3 + m4 = 1
L’ensemble des places {P1, P2, P3, P4} est une
composante conservative.
23
SED
Partie B : Réseaux de Petri
T1
P2 P3 P4
T2 T3
24
SED
Partie B : Réseaux de Petri
- Algèbre linéaire
- Réductions
25
SED
Partie B : Réseaux de Petri
T1 0
2
T1 2 T1 1
0 1 M2
P2 T2
T2 M0 M1
0
1
M3
On peut trouver toutes les propriétés du RdP à partir
de son graphe des marquages :
- Borné
- Non vivant, quasi vivant, 2 états de blocage
- Pas d’état d’accueil, donc non réinitialisable
26
SED
Partie B : Réseaux de Petri
P1
T1
P2 P3 P4
T2 T3
T3
1 0 1 0
1 T1 1 T2 0 T1 0
0 1 0 1
0 0 1 1
M0 M1 M2 M3
SED
Partie B : Réseaux de Petri
T1
Graphe des marquages
T1
P2
0
T1
1
T1
2 3 …
T2 T2 T2
T2
Arbre de couverture
28
SED
Partie B : Réseaux de Petri
0 T1
T2
M0
Graphe de couverture
T2
0
1 0 0
P1
0 T1
1 0
M2 T2 0
T3 T1 0 1 T3
0
P2 P3 M0 M1 1 0
0
T1
1 +
M2
+ + T3
T2 M0 M1 1
Arbre de couverture 0
0 +
T2 M0
1 0 0
T1 0
0 1 0
M2 T2
0 1 T3
0
M0 M1 1 0
0
T1
1 +
M2
+ T3 +
M0 M1
Graphe de couverture
29
SED
Partie B : Réseaux de Petri
Algèbre linéaire
Notations et définitions :
T1
P2 P3
T2
Pré(P3,T3) = 1 ; Post(P3,T3) = 0
T3
P4 P5 Pré(P1,T4) = 0 ; Post(P1,T4) = 1
T4
30
SED
Partie B : Réseaux de Petri
P1 P1 1000 P1 0001
P2 0100 P2 1000
T1
P3
W- = P3 0010 W + =P3 1000
P2 P4 0001 P4 0100
P5 0001 P5 0010
T2 T3
T1 T2 T3 T4
P4 P5
P1 -1 0 0 +1
P2 +1 -1 0 0
T4 W= P3 +1 0 -1 0
P4 0 +1 0 -1
P5 0 0 +1 -1
Signification?
SED
Partie B : Réseaux de Petri
Equation fondamentale :
P1
T1
P2 P3
P1
T1
T2 T3
T1 P4 P5
P2 P3
T4
T2 T3
Mk
P4 P5 T3 T1 T2 T3 T3 T3 T2
P1
T4
T1
Mi P2 P3
T2 T3
P4 P5
T4
Mf
Mk = Mi + W . S
32
SED
Partie B : Réseaux de Petri
1 -1 0
0 +1 +1
= 1
+ +1
= +2
= Mk
0 0 0
0 0 0 0
* De même, pour S’ = T3 T3 T2 à partir de Mk, S’ = 1
0 2
-1 0 0 +1
+1 0 0
+1 -1 0 0
On a : Mk + W. S’ = +2 + +1 0 -1 0 . 1
0 2
0 +1 0 -1
0 0
0 0 +1 -1
0 0 0
+1 -1 0
= +2 + -2 = 0 = Mf
0 +1 +1
0 +2 +2 33
SED
Partie B : Réseaux de Petri
SED
Partie B : Réseaux de Petri
1
1
Soit F1 =
0
1
0 -1 0 0 +1
+1 -1 0 0
On a : 1 1 0 1 0 . +1 0 -1 0 = 0 0 0 0
0 +1 0 -1
0 0 +1 -1
F1T . W = 0
SED
Partie B : Réseaux de Petri
M = M0 + W.S = M0
SED
Partie B : Réseaux de Petri
M(P1)+M(P2)+…+M(Pr) =
M0(P1)+M0(P2)+…+M0(Pr) = M0(Ck)
37
SED
Partie B : Réseaux de Petri
Parallélisme :
T1
P1 P2
P3 P4
T2
Synchronisation :
P1 P2
T1
P1 P2
T1
P4
P3
T2
Rendez-vous Sémaphore
38
SED
Partie B : Réseaux de Petri
Partage de ressources :
T1 T2
P1
T3 T4
Mémorisation :
T1
P1
P2 P1
P2
T1
T2
SED
Partie B : Réseaux de Petri
Lecture :
P2
P1
T1
Capacité limitée :
T1
P’1 P1
T2
40
SED
Partie B : Réseaux de Petri
Chapitre 3
41
SED
Partie B : Réseaux de Petri
Présentation intuitive
Jeton Couleur
Place Ensemble de couleurs
Transition Ensemble de couleurs
Arc Fonction
Exemples :
+ + +&
(+) (+)
&
(+) (+)
+ +
42
SED
Partie B : Réseaux de Petri
+ + +&
F ID
F
(&) (&)
ID ID
+
F ID
F
(&)
(&)
ID ID
& &
Avec F(&) = +
43
SED
Partie B : Réseaux de Petri
Gb Db
Chariot bleu
Ab Bb
Gr Dr
Chariot rouge
Ar Br
P1b P1r
Déplacement à Déplacement à
gauche gauche
P2b P2r
Déplacement à Déplacement à
droite droite
44
SED
Partie B : Réseaux de Petri
Notion de couleur :
P1 P1 P1
br br
Id
T1 T1 {b,r} T1 {b,r}
Id Id
P2 P2 P2
Id
T2 T2 T2
{b,r} {b,r}
Notion de fonction :
On peut aussi colorer le sens de déplacement de
chacun des chariots :
r Pr Pr
f(d) = g P /g /d
f(g) = d g d g
f Id f Id f Id
Tr {g,d} Tr {g,d} Tr {g,d}
SED
Partie B : Réseaux de Petri
f(<g,r>) = <d,r> P1
<g,b>
f(<d,r>) = <g,r>
<g,r>
f(<g,b>) = <d,b>
f(<d,b>) = <g,b> f Id
T1 {<g,r>, <g,b>, <d,r>, <d,b>}
46
SED
Partie B : Réseaux de Petri
f T 1a
T1 {<a>,<b>} T1b
f Id P 2a P2b
P2
<a>
Id T 2a T2b
T2
{<a>,<b>}
pliage
f(<a>) = <>
f(<b>) = <>
47
SED
Partie B : Réseaux de Petri
Le graphe :
2 types de nœuds :
Places : contiennent des marques colorées.
Transitions : ensemble de couleurs associé à chacune.
Ces nœuds sont reliés par des arcs pondérés par une
fonction Pré ou Post..
48
SED
Partie B : Réseaux de Petri
P1
<b> f(<b>) = <v>
<b> <v> f(<v>) = <b>+<v>
<v> <o> f(<o>) = <b>+2<o>
<b>
T1 f
{<b>,<v>,<o>}
g
P2
g(<b>) = <b>
g(<v>) = <b>+<o>
g(<o>) = 2<o>
Evolution du marquage :
Pré (P1, T1/<v>) = f(<v>) = <b> + <v>
Post (P2, T1/<v>) = g(<v>) = <b> + <o>
Le franchissement de T1 par rapport à <v> retire 2 marques
<b> et <v> de P1, et ajoute 2 marques <b> et <o> dans P2.
P1
f(<b>) = <v>
<b> f(<v>) = <b>+<v>
<v> <o> f(<o>) = <b>+2<o>
<b>
T1 f
{<b>,<v>,<o>}
g
P2
g(<b>) = <b>
<b> <o> g(<v>) = <b>+<o>
g(<o>) = 2<o>
49
SED
Partie B : Réseaux de Petri
50
SED
Partie B : Réseaux de Petri
f(C1) = C1+C2
T2/C2
f(C2) = C2
P1 T1/C1 P1 T2/C1 P1
C1 C1
C2
f f f
T1 {C1,C2} T1 {C1,C2} T1 {C1,C2}
Id f Id f Id f
P2 P2 C P2 C
1 2
C2
Id Id Id
T2 T2 T2
{C1,C2} {C1,C2} {C1,C2}
k
Mk+1(Pi) = M1(Pi) + Post(Pi, Tj/Chj) - Pré(Pi, Tj/Chj) Pi
j=1
51
SED
Partie B : Réseaux de Petri
Modélisation :
- concis + concis
+ lisible - lisible
Compromis
Il faut conserver à chaque couleur une signification
qui facilite la compréhension du système décrit.
SED
Partie B : Réseaux de Petri
Exemple :
T1 T3
P1 P2 P3
T2 T4
SED
Partie B : Réseaux de Petri
Exemples
Ligne de fabrication :
Stock 1 Machine 1 Stock 2 Machine 2
SED
Partie B : Réseaux de Petri
n1C1
n2C2 ST1
T1 {C1,C2}
Succ(C1) = C2
T’1 {C1,C2}
succ
ST2
T2 {C1,C2}
MO2 C1 ML2
T’2 {C1,C2}
succ
C x M = {<ci,mj>} i=1,2; j=1,2
n1<c1,m1> ST Succ1(<c1,mj>) = <c2,mj>
n2<c2,m1> Succ1(<c2,mj>) = <c1,mj>
Succ2(<ci,m1>) = <ci,m2>
T1 CxM Succ2(<ci,m2>) = <ci,m1>
succ2
MO <c1,m1> ML
<c1,m2>
T’1 CxM
succ1
55
SED
Partie B : Réseaux de Petri
1 2 3 4 5 6 7 n=8
Entrée Sortie
o2 o1 o4 o1
56
SED
Partie B : Réseaux de Petri
Emplacements vides
Pv
<r1>
<r3>
<r5>
<r8>
Proj1°Succ2
Proj1 Proj1
T3 Proj1
T1 T2
O x {<r1>} O x {<r8>}
A
Succ2
Id
Id
Id
<o2,r2>
<o1,r4>
<o4,r6>
Pp <o1,r7>
Emplacements pleins
Fonctions:
Proj1 : projection / 1ère composante
Succ1 : successeur 1ère composante
Succ2 : successeur 2ème composante
57
SED
Partie B : Réseaux de Petri
Ligne d’assemblage :
Machine2
Entrée Sortie
1 2 3 4 5 6 7 8 9 10 11 12
Machine1 Machine3
Ensembles de couleurs :
O = {<o1>, <o2>, <o3>} : pièces et machines.
R = {<r1>, <r2>,…, <r12>} : emplacements sur le convoyeur.
(<oj>, <ri>): pièce de type j dans l’emplacement i.
B = {(<o1>, <r3>), (<o2>, <r7>), (<o3>, <r10>)}
A = O x {<r1>, <r2>,…, <r11>} - B 58
SED
Partie B : Réseaux de Petri
Emplacements vides P1
12
<ri> Proj1
i=1
Proj1
convoyeur
T3
T1 T2
O x {<r1>} O x {<r12>}
A Succ2
Id
Id Id
T4 B Proj2
P3 Machines P4
Proj1°Succ2
libres
Machines <o1> machines
occupées <o3>
<o2>
T5 Proj2
B
59
SED
Partie B : Réseaux de Petri
Marquage :
<r1>+…+<r12>
M= 0
0
<o1>+<o2>+<o3>
Matrice d’incidence :
T1 T2 T3 T4 T5
Proj1 Proj1
P1 -Proj1 Proj1 0
-Proj1oSucc2 -Proj1oSucc2
P4 0 0 0 -Proj2 Proj2
60
SED
Partie B : Réseaux de Petri
Equation fondamentale :
M = M0 + W S
P4 0 0 0 -Proj2 Proj2
Id 0
2 P-semi-flots : Proj1 0
Proj1 Id
0 Id
61
SED
Partie B : Réseaux de Petri
62
SED
Partie B : Réseaux de Petri
Chapitre 4
63
SED
Partie B : Réseaux de Petri
Présentation
64
SED
Partie B : Réseaux de Petri
RdP P-temporisés
Définition :
Principe du fonctionnement :
T1 T1 T1 T1
P1 d1 P1 d1 P1 d1 P1 d1
T2 T2 T2 T2
P2 d2 P2 d2 P2 d2 P2 d2
T3 T3 T3 T3
Marque indisponible
dans P1
d1
Marque disponible
dans P1
Marque indisponible
dans P2 d2
Franchissement
de T1
Franchissement
de T2 65
SED
Partie B : Réseaux de Petri
P2 P2 P2 P2 P2
d2=3 d2=3 d2=3 d2=3 d2=
3
T2 T2 T2 T2 T2
vitesse max cas général
66
SED
Partie B : Réseaux de Petri
{T1T1}/0 {T1T2}/2
{T2T2}/3
2(0,0) 0 2(2,2)
0 2(3,3) 0
{T1T1}/2
M’’0 M’’1 M’’2 67
SED
Partie B : Réseaux de Petri
T2
68
SED
Partie B : Réseaux de Petri
Invariant de marquage : m1 + m2 = 1
Si on remplace par les valeurs moyennes en régime
stationnaire :
d1 . f2 + d2 . f1 = 1 (*)
2 f2 + 3 f 1 = 1 (1)
Or : f1 = f2 (2)
(voir graphe des marquages à vitesse maximale)
P3
T1 d3=1
P2
d2=3
Ne fonctionne pas en vitesse propre
T2
69
SED
Partie B : Réseaux de Petri
70
SED
Partie B : Réseaux de Petri
Application :
P1
d1=2
P3
T1 d3=1
P2
d2=3
T2
71
SED
Partie B : Réseaux de Petri
Exemple
72
SED
Partie B : Réseaux de Petri
P1
T1 T3
P2 P3
T2 T4
Il y a 1 P-semi-flot et 2 T-semi-flots :
1 0
1
1 0
X= 1 Y1 = Y2 =
0 1
1
0 1
Soient f1, f2, f3 et f4 les fréquences respectives de
franchissement de T1, T2, T3 et T4. f1
On a donc f1 = f2 et f3 = f4 F= f1
f3
XT . D . W + . F = 1,2 . f1 + 1,9 . f3 f3
et XT . M0 = m
Sachant que f1 = 2 et f3 = 1 :
m 4,3
5 machines sont nécessaires pour assurer cette production.
73
SED
Partie B : Réseaux de Petri
RdP T-temporisés
Définition :
P1 P1 P1 o P1
T2 d2 T2 d2 T2 d2 T2 d2
P2 P2 P2 P2
T3 d3 T3 d3 T3 d3 T3 d3
Marque non réservée
dans P1
Marque réservée dans
P1 d2
Marque non réservée
dans P2
Fin de franchissement
de T1
Décision de franchir
de T2 74
Fin de franchissement
de T2
Partie B : Réseaux de Petri
P1 M 0 P1 P1 P1 P1
o
P2 P2 P2 P2 P2
o o oo o
T2 T2 T2 T2 d2=3 T2
d2=3 d2=3 d2=3 d2=3
vitesse max
75
SED
Partie B : Réseaux de Petri
{T1T2}/2
{T1T1}/2
2 0
0 2
M’0 {T2T2}/3 M’1
SED
Partie B : Réseaux de Petri
77
SED
Partie B : Réseaux de Petri
T1 d1=x T’1
P1 d1=x
T’’1
78
SED
Partie B : Réseaux de Petri
P’1
P1
d1=x T1 d1=x
P’2
79
SED