Vous êtes sur la page 1sur 34

Automatismes et SED

RdP Rseaux de Petri

RdP = outil de modlisation


" Outil de modlisation orient vers la reprsentation des SED dont les variables d'tats voluent brusquement d'une valeur l'autre sans qu'il soit ncessaire de reprsenter les phnomnes transitoires. "

Exemples :

Cest--dire les SED..

Systmes de commande Procds ou systmes commands par modles ED Systmes automatiques (commande et procd)
karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 2

RdP = outil de modlisation


Mode d'volution asynchrone.

Modle par excellence des applications rparties et bien sr des protocoles de communication (paralllisme et synchronisation). Permet :
la simulation la validation formelle de proprits l'valuation de performances (par simulation ou par calcul formel sur des extensions du modle comportant des donnes statistiques ou stochastiques).

Reprsentation graphique simple.

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

Rseau de Petri : base


RdP autonomes = la base
Place : un tat du systme Transition : changement d'tat Jeton : tat actuel du systme
transition sensibilise
franchissement (tir) de la transition

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

Rseau de Petri : base


RdP autonomes = la base
Place : un tat du systme Transition : changement d'tat Jeton : tat actuel du systme
transition sensibilise
franchissement (tir) de la transition

RdP gnraliss = avec des poids sur les arcs RdP ordinaires = tous les arcs de poids 1
transition sensibilise si 2 jetons ds p0

franchissement (tir) de la transition

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

Rseau de Petri gnraliss


transition sensibilise si 2 jetons dans p0 et 1 jeton dans p1

2 jetons consomms Pas de poids (cad poids=1) 1 seul jeton gnr franchissement (tir) de la transition

1 jeton consomm

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

Rseau de Petri gnraliss

pas de transition sensibilise

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

Rseau de Petri gnraliss


Exemple du chocolat : Il faut 1 bote vide et 30 chocolats pour faire 1 bote pleine.

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

Automatismes et SED

Les RdP interprts

Extension : RdP interprts


Extension des RdP de base. Introduction de deux notions :
les vnements, pour dcrire le comportement d'un systme vis--vis de son environnement externe; le temps, pour effectuer des valuations dynamiques sur ce comportement;

L'occurrence d'un vnement est associe un instant d'occurrence dfini par un repre de temps qui permet d'ordonner les vnements.

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

10

Extension : RdP interprts


Un systme de commande temps rel est en gnral un systme qui ragit des vnements externes. Prise en considration du systme "rel" : partie oprative : capteurs associs aux transitions, et prise en compte des variables et oprateurs. partie commande : actions excutes sur les processus; associes aux places.

Actions, Commandes

Evnements, Capteurs
karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 11

RdP autonomes / non-autonomes


Exemple : modlisation des saisons

RdP autonome (= RdP de base) : description qualitative, sans prciser les interactions avec l'environnement ou le temps.
karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 12

RdP interprts (non autonomes)


Exemple : modlisation des saisons
avec conditions lies l'environnement

Evnements

Intervalles de temps

]
cf. suite du cours

RdP non-autonome : RdP synchronis (sur vnements) ou temporis


karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 13

RdP interprts : Attention pige !


Situation :
l'Action1 est en cours : la place Action1 est marque; l'vnement de fin de cette action est FinAction1, li la transition; Pour commencer l'Action2, il est ncessaire d'attendre une synchronisation.

Le problme :
Si l'vnement FinAction1 se produit avant que la Synchro soit disponible, la transition ne pourra pas tre franchie.
Action1 sera tjs active, alors qu'elle

aurait du s'arrter.

Ne jamais associer une fin d'action et une attente de synchronisation


karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 14

RdP interprts : Attention pige !


Situation : Solution
l'Action1 est en cours : la place Action1 est marque; l'vnement de fin de cette action est FinAction1, li la transition; Pour commencer l'Action2, il est ncessaire d'attendre une synchronisation.

Le problme :
Si l'vnement FinAction1 se produit avant que la Synchro soit disponible, la transition ne pourra pas tre franchie.
Action1 sera tjs active, alors qu'elle

aurait du s'arrter.

Ne jamais associer une fin d'action et une attente de synchronisation


karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 15

Extension : RdP interprts

Les RdPI sont des RdP non-autonomes. La modlisation des systmes vnements discrets est le plus souvent effectue en RdPI et/ou temporiss. Rmq : on utilise souvent le terme RdP au lieu de RdPI. Les RdPI offrent les mmes possibilits d'analyse que les RdP.

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

16

Extension : RdP interprts

Modlisation avec comme objectif l'implmentation; Dcomposition du modle en plusieurs "modules" RdP :
dcoupage fonctionnel : chaque "module" RdP reprsente une fonctionnalit du systme. dcoupage matriel : chaque "module" RdP reprsente la commande d'un lment matriel.

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

17

Automatismes et SED

Les RdP Structures de base

Exemples de structures Activits

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

19

Exemples de structures Synchronisation et paralllisme

places d'attentes

branches parallles Synchronisation de 2 branches : rendez-vous


karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 20

Exemples de structures Synchronisation Producteur / Consommateur


Rmq : Sans limitation de ressources.. Cette structure peut aussi servir synchroniser 2 tches (P6 et P2)

consommation production

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

21

Exemples de structures Exclusion mutuelle


Ressource partage, Marquage simultane de P3 et P6 impossible.

Places P3 et P6 en exclusion mutuelle

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

22

Exemples de structures Stock capacit limite


Stock : 5 positions libres (P1) ou occupes (P2)

Exemple : une machine permet l'usinage de 4 produits en mme temps.

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

23

Exemples de structures Gestion de ressources partages

Gestion de la ressource

Rmq : structure identique l'exclusion mutuelle si ressource=1

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

24

Exemples de structures Arc inhibiteur

vacuation_par_C2 n'est tirable que si C1_libre est VIDE

Exemple d'utilisation : ici, le systme donne la priorit l'vacuation par C1

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

25

Exemples de structures Place complmentaire

C1_occup toujours un marquage oppos C1_libre

Cette structure permet la modlisation d'un arc inhibiteur en RdP ordinaires (parfois ncessaire pour permettre l'analyse).
karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 26

Exemples de structures Arc test


vacuation_par_C1 n'est tirable que si C1_libre est pleine, mais SANS CONSOMMATION DU JETON !

Equivalence en RdP ordinaire : la place est dmarque et immdiatement remarque par le tir de la transition. Rmq : ce RdP est inutile car C1_libre ne peut jamais se dmarquer..
karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 27

Automatismes et SED

Modlisation Exemples

Assemblage d'un moteur


L'assemblage d'un moteur est constitu de 3 oprations squentielles, dans 3 ateliers diffrents :
pose du bloc pose du carter test qualit

Dans chaque atelier un certain nombre d'ouvriers peuvent travailler en parallle :


Atelier pose du bloc = 3 Atelier pose du carter = 3 Atelier test qualit = 2

Chaque moteur est pos sur une palette spciale; il y en a 5 au dpart.

Faire la modlisation de ce systme


karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 29

Assemblage d'un moteur


Modle sans prise en compte des ressources :

Modle avec prise en compte des ressources :

Hypothse : pas de stock intermdiaire

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

30

Problme des Lecteurs - crivains


On veut modliser l'accs une base de donnes, avec les contraintes suivantes :
K "processus" qui tentent d'accder la BD soit pour lire, soit pour crire. Pas d'critures simultanes sur les donnes. Pas de lecture et criture simultanes : risque d'incohrence des donnes lues. Par contre, lectures possibles en parallle.

Faire la modlisation de ce systme

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

31

Problme des Lecteurs - crivains

K=10

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

32

Le dner des philosophes


On veut modliser le classique pb du dner des philosophes. Contraintes :
Table ronde. Chaque philosophe est devant une assiette, et il y a une fourchette entre chaque assiette. Actions d'un philosophe : soit manger, soit penser. Pour manger, un philosophe a besoin de ses 2 fourchettes.

Faire la modlisation de ce systme, dans le cas ou il n'y a que deux philosophes :


1) 2) Modliser le comportement d'un seul philosophe; Modliser le comportement des deux philosophes.

karen.godary@lirmm.fr

Polytech' Montpellier, ERII4 - Cours "Automatismes et SED "

33

Le dner des philosophes

ATTENTION : Ceci est une simplification du systme global :


On considre les fourchettes comme un stock global. C'est possible ici car tous les philosophes ont accs toutes les fourchettes. Mais si par exemple 4 philosophes et 4 fourchettes : 2 philosophes voisins ne peuvent pas manger, mme s'il reste des fourchettes libres.
karen.godary@lirmm.fr Polytech' Montpellier, ERII4 - Cours "Automatismes et SED " 34