Telechargé par emounia12.6.1997

cours-diag-idim-1

publicité
Diagnostic à base de modèles à événéments discrets
Module Outils et Techniques de Diagnostic
Cours basé sur le polycopié de M. Combacau
Euriell Le Corronc et Pauline Ribot
M2 IDIM
Université Toulouse 3 - Paul Sabatier
2020-2021
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
1 / 37
1
Brève introduction sur les SED
2
Rappels sur les langages et les automates
3
Introduction au diagnostic
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
2 / 37
Systèmes à événements discrets
Pourquoi étudier les SED ?
Les systèmes sont de plus en plus complexes
Apparition d’ordinateurs et du traitement informatique (numérique)
Utiles lorsqu’on peut discrétiser un système quelconque (modélisation
qualitative)
Exemple
Réseaux de transport
Réseaux informatiques
Ordinateurs, calculateurs
Protocoles manufacturiers, . . .
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
3 / 37
Systèmes à événements discrets
Caractéristiques
SED
2. Systèmesdes
à événements
discrets
Etat discret : abstraction d’états en classe discrète d’états
événementielle
: l’occurrence d’un événement peut
 Dynamique
Caractéristiques
des SED
provoquer un changement d’état (asynchrone/synchrone)
 Etat discret, dynamique événementielle (asynchrone)
Etat discret
x3
x4
x2
x5
x1
Temps
e1
E. Le Corronc, P. Ribot
e2
e3 e4
e5
e6
Diagnostic à base de modèles à événéments discrets
4 / 37
Systèmes à événements discrets
Concept d’événement
Instantané, contrôlable (action) ou spontané (panne)
Exogène ou endogène
Observables ou non-observables
Evénements observables : alarmes, messages sur des bus, actions
observables, . . .
Evénements non-observables : événements internes, événements de
fautes, . . .
Exemples
Une personne presse un bouton
Une machine se réinitialise suite à un court-circuit
Le niveau maximal de liquide est atteint dans un réservoir
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
5 / 37
Systèmes à événements discrets
Concept d’événement
– Exemple
du système
conditionné
[Sampath,1995]
Exemple
: Système
d’air d’air
conditionné
[Sampath
et al. 1995]
VANNE
POMPE
REGULATEUR
• Événements spontanés de pannes
– Vanne bloquée ouverte
Evénements
spontanés
de panne
– Vanne
bloquée fermée
Vanne bloquée
ouverte
• Evénements
observables
Vanne bloquée fermée
– Actions : ouvrir vanne, fermer vanne, démarrer pompe, stopper pomp
Evénements
observables
– Observations
d’un capteur de débit : présence d’un débit, absence, d’
débit,
coupure
spontanée
débitdémarrer pompe, stopper pompe
Actions
: ouvrir
vanne,
fermer du
vanne,
Observations d’un capteur de débit : présence débit, absence d’un
débit, coupure spontanée du débit
M2 PEnTE
- P. Ribot, E.
Le Corronc
E. Le Corronc,
P. Ribot
Diagnostic
à base de modèles à événéments discrets
6 / 37
Systèmes
discrets
Systèmesàà événements
événements discrets
Classification des systèmes
Classification des systèmes
Systèmes
Statiques
Dynamiques
Temps variant
Temps invariant
Linéaires
Non linéaires
Etats continus
Dynamique temporelle
Déterministes
Systèmes à événements
discrets (SED)
Etats discrets
Dynamique événementielle
Stochastiques
M2 PEnTE - P. Ribot, E. Le Corronc
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
11
7 / 37
1. Introduction aux SED
Systèmes à événements discrets
Système
Système
discret
par nature
discret
par nature
– Exemple : Entrepôt
Arrivée : u1(t)
x(t)
Départ : u2(t)
- x(t) : nombre de caisses dans l’entrepôt à l’instant t
- u1(t)=1 si une caisse arrive au temps t, u1(t)=0 sinon
- u2(t)=1 si une caisse part au temps t, u2(t)=0 sinon
 Si u1(t)=1 alors x(t)=x(t-1)+1
 Si u2(t)=1 alors x(t)=x(t-1)-1
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
8 / 37
Systèmes à événements discrets
Système
Système
discret
par nature
discret
par nature
– Exemple : Entrepôt
Arrivée : u1(t)
E. Le Corronc, P. Ribot
x(t)
Départ : u2(t)
Diagnostic à base de modèles à événéments discrets
9 / 37
Systèmes
à événements discrets
1. Introduction aux SED
Système
discrétisable
 Système
discrétisable
– Exemple : Réservoir (système continu mais modèle discret - qualitatif)
R1:{ouvert,fermé}
R2:{ouvert,fermé}
C1:{niv-atteint,niv-non-atteint}
C2:{niv-atteint,niv-non-atteint}
•
Espace d’états discrets : R1 x R2 x C1 x C2
•
Evénements discrets : Ouverture-R1,
Fermeture-R2, Niv-dessous-C2, …
Détection d’une fuite :
R1=fermé, R2=fermé, C2=niv-atteint
Evénement : Niv-dessous-C2
M2 PEnTE - P. Ribot, E. Le Corronc
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
14
10 / 37
Systèmes à événements discrets
Choix du formalisme de modélisation
Quelle est la nature de mon système ?
Monolithique, distribué, continu, discret
Quelle est le degré de connaissance de mon système ?
Connaissance de surface, comportement nominal, comportement de
panne, . . .
Nombreux formalismes possibles
Langages
Automates
Réseaux de Petri
Algèbre (Max,+)
...
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
11 / 37
Systèmes
à événements
discrets
2. Formalismes
de modélisation
pour les SED
 Réseau de Petri ou Automate ?
Réseau
de Petri ou Automate ?
Automate
Réseau de Petri
1. Plus intuitif (notion explicite de
composants)
2. Pas pratique pour exprimer la
concurrence entre composants
3. Explosion combinatoire liée
aux produits des modèles des
composants pour obtenir le
modèle du système global
1. Expression de la concurrence
2. Sémantique de synchronisation
exprimée dans le réseau (bien
connue et maitrisée)
3. Moins représentatif pour les
composants du système
M2 PEnTE - P. Ribot, E. Le Corronc
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
33
12 / 37
Théorie des langages
Langage
Un alphabet Σ est constitué d’un ensemble d’événements
Un mot m construit sur l’alphabet Σ est une séquence d’événements
appartenant à Σ
Remarque : représente le mot vide
Un langage L est un ensemble fini ou infini de mots construits sur Σ
Exemple
Σ = {a, b, c}
L1 = {a, aa, ab}
L2 = {, a, c, ab, acc}
L3 = {mots de longueur finie démarrant par a}
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
13 / 37
Théorie des langages
Opérations sur les langages
Concaténation : L1 .L2 = {m = m1 m2 | m1 ∈ L1 et m2 ∈ L2 }
Union : L1 ∪ L2 = {m | m1 ∈ L1 ou m2 ∈ L2 }
Intersection : L1 ∩ L2 = {m | m1 ∈ L1 et m2 ∈ L2 }
Exercice
Σ = {a, b, c}
L1 = {a, c, aa, ba, ab, abc}
L2 = {a, b, ac, ba, abb, cca}
Calculer l’union L1 ∪ L2 , l’intersection L1 ∩ L2 et la concaténation
L1 · L2 des deux langages
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
14 / 37
Théorie des langages
Opérations sur les langages
Clôture de Kleene : S ∗ = ∪∞
i=0 Si
s ∈ Si est un mot formé par la concaténation de
i lettres de S (si S est un alphabet) :
Σ = {a, b} ⇒ Σ∗ = {, a, b, aa, ab, ba, bb, aaa, aab, . . .}
i mots de S (si S est un langage) :
L = {aa} ⇒ L∗ = {, aa, aaaa, . . .}
Ensemble des préfixes : L = {m1 ∈ Σ∗ | ∃m2 ∈ Σ∗ , m1 m2 ∈ L}
Langage clos par préfixe si et seulement si L = L
Exemple
Soit un langage L = {abc} écrit sur l’alphabet Σ = {a, b, c},
L = {, a, ab, abc} donc L n’est pas préfixe-clos car L ⊂ L.
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
15 / 37
Théorie des langages
Opérations sur les langages
Exercice
Σ = {a, b, c}
L1 = {a, c, aa, ba, ab, abc}
L2 = {, a, b, ac, ba, acb}
L3 = {, a, b, ac, abc, acc, accb}
Ces langages sont-ils préfixe-clos ?
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
16 / 37
Théorie des langages
Opérations sur les langages
Projection d’un langage L sur un alphabet Σ0 :
PΣ0 () = u ∈ Σ0 ∧ s ∈ L(Σ) ⇒ PΣ0 (us) = uPΣ0 (s)
u∈
/ Σ0 ∧ s ∈ L(Σ) ⇒ PΣ0 (us) = PΣ0 (s)
∗
Projection inverse : PΣ−1
0 (t) = {s ∈ Σ | PΣ0 (s) = t}
Exercice
Soient deux langages L1 = {a, c, ab, bc, acc, abc} et
L2 = {a, b, bb, ac, cbc} construits sur l’alphabet Σ1 = {a, b, c} :
Déterminer les projections PΣ2 (L1 ) et PΣ2 (L2 ) des langages L1 et L2
sur un nouvel alphabet Σ2 = {a, b, d}.
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
17 / 37
Théorie des langages
Expressions régulières et langages réguliers
Un langage est régulier s’il peut être dénoté par des expressions
régulières
Représentation compacte pour des langages complexes avec un
nombre infini de mots pouvant contenir
un ensemble vide, le mot vide , un singleton,
ab, a + b, a? , b ? . . . sont des expressions régulières si a, b sont des
expressions régulières (définition récursive)
Exemple
L1 dénoté par ER1 = (1.(0 + ))? : langage régulier contenant les
mots {, 1, 10, 11, 101, 111, 110, . . .}
L2 dénoté par ER2 = (a + b)? a : langage régulier sur l’alphabet {a, b}
contenant les mots se terminant par a
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
18 / 37
Théorie des langages
Expressions régulières et langages réguliers
Exercice
Soient les mots , a, aa, ab, ba, aba, abbb, aaba, abab, ababa
Sont-ils générés par l’expression régulière ER1 = (ab)? aba? ?
Sont-ils générés par l’expression régulière ER2 = ab ? (aba)? ?
Exercice
Considérant l’alphabet Σ = {a, b}, donner les expressions régulières
correspondant aux propriétés suivantes :
Mots ne contenant pas ba
Mots contenant au moins un a
Mots de longueur paire
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
19 / 37
Théorie des automates
Définition d’un automate
Définition
Un automate fini est défini par un 5-uplet G = (X , Σ, δ, x0 , Xf ), où
X : ensemble fini d’états discrets
Σ : ensemble des événements (alphabet)
δ : fonction de transition δ : X × Σ → 2X
x0 : état initial
Xf : états finals ou états marqués
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
20 / 37
Théorie des automates
Langages reconnus par des automates
Théorème : les langages reconnus par un automate fini sont
exactement ceux décrits par les expressions régulières. Pour tout
automate, il existe une expression régulière reconnaissant le même
langage.
Langage reconnu par un automate A :
L(A) = {m ∈ Σ∗ | δ ∗ (x0 , m) 6= ∅}, avec δ ∗ la fonction de transition
étendue
Un mot appartient à L(A) s’il existe une séquence de transitions
étiquetée par m et commençant par x0
Langage marqué : LM (A) = {m ∈ Σ∗ | δ ∗ (x0 , m) ∈ Xf }
Etude restreinte aux mots pouvant conduire aux états marqués, on ne
considère que les états accessibles et co-accessibles et on supprime les
arcs sortant des états marqués.
Remarque : LM (A) ⊆ L(A).
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
21 / 37
Théorie des automates
Propriétés des automates
Accessibilité : Ac(A) = {x ∈ X | ∃m ∈ Σ∗ avec δ ∗ (x0 , m) = x}.
Un état x est accessible s’il existe un chemin entre x0 et x.
Un automate A est accessible si tous ces états sont accessibles :
Ac(A) = X .
Coaccessibilité : Co(A) = {x ∈ X | ∃m ∈ Σ∗ , avec δ ∗ (x, m) ∈ Xf }.
Un état x est co-accessible s’il existe un chemin reliant x à un état
marqué.
Un automate A est coaccessible si tous ces états sont coaccessibles :
Co(A) = X .
Automate non bloquant : Ac(A) ⊆ Co(A).
Un automate est bloquant s’il existe un état x accessible ne
permettant pas d’atteindre un état marqué de Xf .
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
22 / 37
Théorie des automates
Propriétés des automates
6
a
1
a
c
2
c
4
b
5
a
b
3
a
b
c
7
Exercice
On considère l’automate A ci-dessous :
Les mots aa, abc, acbc, aab et abcab sont-ils reconnus par A ?
L’automate A est-il accessible ? Est-il coaccessible ?
Décrire le langage marqué LM (A).
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
23 / 37
Théorie des automates
Produit synchrone d’automates
Soient deux automates G 1 = (X1 , Σ1 , δ1 , x01 , Xf 1 ) et
G 2 = (X2 , Σ2 , δ2 , x02 , Xf 2 ) (ayant une intersection non vide de leurs
alphabets Σ = Σ1 ∩ Σ2 6= ∅), le produit synchrone G1 × G2 ne représente
que les transitions communes aux deux automates.
Définition
L’automate G résultant du produit synchrone G1 × G2 est défini par
G = (X , Σ, δ, x0 , Xf ) avec
X = Ac(X1 × X2 ) (ensemble des états accessibles)
Σ = Σ1 ∩ Σ2
δ((x1 , x2 ), e) = (δ1 (x1 , e), δ2 (x2 , e)) si δ1 (x1 , e) et δ1 (x1 , e) définis et
e∈Σ
x0 = (x01 , x02 )
Xf = Xf 1 × Xf 2
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
24 / 37
Théorie des automates
Produit synchrone d’automates
Exercice
Calculer le produit synchrone des deux automates ci-dessous :
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
25 / 37
Théorie des automates
Produit parallèle d’automates
Soient deux automates G 1 = (X1 , Σ1 , δ1 , x01 , Xf 1 ) et
G 2 = (X2 , Σ2 , δ2 , x02 , Xf 1 ) avec les événements communs
Σcommuns = Σ1 ∩ Σ2 , le produit parallèle G1 k G2 met en évidence les
évolutions communes aux automates sur les événements de Σcommuns mais
représente également les évolutions individuelles des automates sur les
événements n’appartenant pas à Σcommuns .
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
26 / 37
Théorie des automates
Produit parallèle d’automates
Définition
L’automate G résultant du produit parallèle G1 k G2 est défini par
G = (X , Σ, δ, x0 ) avec
X = Ac(X1 × X2 ) (ensemble des états accessibles)
Σ = Σ1 ∪ Σ2
δ((x1 , x2 ), e) =

 (δ1 (x1 , e), δ2 (x2 , e)) si δ1 (x1 , e) et δ2 (x2 , e) définis
(δ1 (x1 , e), x2 )) si δ1 (x1 , e) défini et e ∈
/ Σ2

(x1 , δ2 (x2 , e)) si δ2 (x2 , e) défini et e ∈
/ Σ1
(1)
x0 = (x01 , x02 )
Xf = Xf 1 × Xf 2
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
27 / 37
Théorie des automates
Produit parallèle d’automates
Exercice
Calculer le produit parallèle des deux automates ci-dessous :
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
28 / 37
Théorie des automates
Produit parallèle d’automates
Exercice
Calculer le produit synchrone et le produit parallèle des deux automates
ci-dessous :
b
a
0
1
b
E. Le Corronc, P. Ribot
a
a
b
0
b
a
1
2
b
Diagnostic à base de modèles à événéments discrets
29 / 37
Objectif du module : Diagnostic de SED
Σ𝑐
Procédé
Commande
supervisée
Système supervisé
Σ𝑜
Σ𝑜
Diagnostic
𝑁, 𝐹, 𝐴
Comportement
de défauts
Spécifications
Commande supervisée : interdire / autoriser l’occurrence d’événements
contrôlables afin que le comportement du système respecte un
ensemble de spécifications
Diagnostic : déterminer l’occurrence d’un événement de défaut à partir
d’une séquence d’événements observés.
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
30 / 37
Objectif du module : Diagnostic de SED
Partitions de l’ensemble des événements
Evénements contrôlables (actionneurs)
Σc ⊂ Σ : sous-ensemble des événements contrôlables de Σ
Σnc ⊂ Σ : sous-ensemble des événements non contrôlables de Σ
Remarque : Σ = Σc ∪ Σnc avec Σc ∩ Σnc = ∅
Evénements observables (informations issues des capteurs/actionneurs,
poussoirs, intervention d’un opérateur . . . )
Σo ⊂ Σ : sous-ensemble des événements observables de Σ
Σno ⊂ Σ : sous-ensemble des événements non observables de Σ
Remarque : Σ = Σo ∪ Σno avec Σo ∩ Σno = ∅
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
31 / 37
Objectif du module : Détection et Diagnostic - partie SED
UE EIPAI3C2 : outils et techniques de diagnostic - partie SED
Planningpour la partie SED : Euriell Le Corronc (ELC) et Pauline Ribot (PR)
ntervenants
10-sept
16-sept
22-sept
30-sept
06-oct
06-oct
17-nov
24-nov
26-nov
03-déc
E. Le Corronc, P. Ribot
13h30
10h05
10h05
7h45
7h45
10h05
13h30
10h05
10h05
8h
PR
PR
ELC
PR
PR
PR
PR
PR
PR
PR
Cours
Cours
TD
Cours
Cours
TD
TD
TD
TD
TP
Diagnostic à base de modèles à événéments discrets
32 / 37
3. Introduction au diagnostic
Introduction au diagnostic
 Concept de diagnostic
Système
capteurs
actionneurs
VOIR
COMPRENDRE
Surveillance
Détection / Diagnostic
Détecter
DECIDER
Maintenance ou
Reconfiguration
Identifier
Modifier
Acquérir les
Détection
: observer les
depanne
défaillance / détecter
la
unsymptômes
problème la
le système
observations
présence d’un défaut (sans identifier ce qu’il est)
Informations nécessaire
Informations nécessaires
Localisation
: identifier
défaut
s’est produit (la
unele
bonne
décision
à un bon
diagnosticle composantà où
cause de la défaillance à l’aide d’un raisonnement logique fondé sur
des observations)
30
M2 PEnTE - P. Ribot, E. Le Corronc
Identification : identifier la nature et le type de la panne
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
33 / 37
Introduction au diagnostic
Terminologie
Défaut, faute : déviation non acceptable d’au moins une propriété
caractéristique ou d’un paramètre du système
Un paramètre n’a pas sa valeur nominale et cette différence est
suffisante pour provoquer un dysfonctionnement
Défaillance : inaptitude d’un système à accomplir sa ou ses fonctions
requises avec les performances définies dans les spécifications
techniques
La manifestation fonctionnelle d’un défaut fait que le système ne peut
plus exécuter tout ce qu’il fait en l’absence de défaut
Observations : toutes les informations disponibles (accessibles,
mesurables) dont on dispose pour caractériser la nature du système
Les observables contiennent les éventuels symptômes (effet ou
conséquence visible d’une défaillance dans le système surveillé)
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
34 / 37
Introduction au diagnostic
Mise en place d’une méthode de diagnostic
Pas de méthodes universelles de diagnostic
Mise en œuvre de méthodes spécifiques en fonction de la nature des
systèmes
Systèmes mécaniques dynamiques : moteurs, pompes, turbines, . . .
Systèmes mécaniques statiques : tuyauterie, . . .
Systèmes électriques ou électroniques : capteurs, régulateurs et
automates programmables, . . .
Sélectionner la méthode la plus appropriée après un recensement des
besoins et des connaissances disponibles
Nature des causes de défaillance à localiser
Connaissance des symptômes associés aux défaillances
Connaissance des mécanismes physiques entre les causes et les effets
Maîtrise des moyens de mesure des symptômes, . . .
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
35 / 37
Introduction au diagnostic
Mise en place d’une méthode de diagnostic
Méthodes de diagnostic
Méthodes basées sur la
connaissance
Méthodes basées sur le
traitement de données
- Systèmes à base de règles
(systèmes experts, …)
- AMDEC
- Arbres de défaillance
- Reconnaissance des formes
- Réseaux de neurones
- Techniques floues
Méthodes à base de
modèle
Modèles quantitatifs
- Espace de parité
- Estimation d’état
(observateurs, filtre de
Kalmann, … )
- Estimation paramétrique
Modèles qualitatifs
- Expressions logiques
- Réseaux de Petri,
automates, … (abstraction
de la dynamique continue)
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
36 / 37
Introduction au diagnostic
Principe du diagnostic à base de modèle à événements discrets :
Principe du diagnostiqueur [Sampath95]
Système physique
Séquence d’observations
Modèle SED du système
(Comportement nominal + présence de fautes)
Trajectoires observables compilées
Identification des fautes candidates
Si le système est diagnosticable
Restriction à 1 seule faute
DIAGNOSTIC
E. Le Corronc, P. Ribot
Diagnostic à base de modèles à événéments discrets
37 / 37
Téléchargement