• Aucun résultat trouvé

Diagnostic des systèmes hybrides rectangulaires

5.4.2 Procédure de diagnostic en-ligne

x1∈ [−4, −3] 6 x1≥ 10 a, x1= 30 ˙ x1= 2 ? 5 x1≤ 30 -a, x1= 30 x1= 0 ˙ x1= 2 R 1 x1≤ 30 f u, x1= 10 x1= 0 9 x1≥ 0 x1= 5 8 x1≤ 50 c, x1= 50 ˙ x1= −2 7 x1≥ 0 b, x1= 0 x1= 0 4 x1≥ 0 x1= 5 3 x1≤ 50 c, x1= 50 ˙ x1= −2 2 x1≥ 0 b, x1= 0

-Fig. 5.10 – Restriction du comportement normal H0

AHR initialisé. Nous rappelons que dans ce cas chaque changement de flux d’une va-riable entre deux sommets implique une réinitialisation de cette vava-riable. La vérification de ces deux hypothèses est nécessaire pour l’application de notre méthode de test de la diagnosticabilité, tandis que l’application de notre procédure de diagnostic nécessite uniquement la vérification de la première hypothèse.

Nous allons vérifier ces hypothèses sur le modèle du système de chauffage de liquides décrit dans l’exemple 5.3.1. L’automate hybride rectangulaire présenté dans la figure 5.7 vérifie les spécifications énumérées ci-dessus, si l’on considère la partition de défauts Σf = F1∪ F2, où F1 = {f uite} et F2 = {blocage_V1}. La fonction de répartition ϕ est définie comme suit :

ϕ(q) =        0, si q ∈ {1, 2, 3}, 1, si q ∈ {4, 5, 6}, 2, si q ∈ {7}.

Dans ce qui suit, nous vérifions que le modèle considéré satisfait les hypothèses H1 et H2 :

1. H1 est satisfaite par le modèle. Il suffit de remarquer que dans les deux cycles du modèle, l’horloge x2 (1) admet la dynamique ˙x2 = 1 dans tous les sommets, (2) est remise à zéro dans les transitions sur l’événement s2 et (3) admet la va-leur 40 comme une borne inférieure dans la garde de chaque transition associée à l’événement u (ainsi, dans chaque exécution d’un cycle s’écoule au moins 40 u.t.). 2. H2 est satisfaite par le modèle. En effet, le modèle du comportement normal,

constitué par les sommets 1, 2 et 3 correspond à un AHR initialisé.

5.4.2 Procédure de diagnostic en-ligne

Tout au long de cette partie, nous supposons que le système à diagnostiquer est mo-délisé par un automate hybride rectangulaire H = (L, X, Σ, E, inv, f lux, init), vérifiant

les spécifications et les hypothèses énumérées ci-dessus.

Notre démarche de diagnostic pour les SDH repose sur l’exécution en-ligne d’une procédure de diagnostic qui permet d’estimer l’état courant du système à travers l’analyse du comportement discret observable du système. A partir des états estimés, une fonction de décision émet l’un des diagnostics suivants :

• "Défaillance Fi", i ∈ {1, . . . , m} : un défaut de l’ensemble Fi s’est produit ; • "Normal" : aucun défaut ne s’est produit ;

• "État uncertain" : aucune décision certaine ne peut être élaborée.

Nous soulignons que la procédure de diagnostic ne doit pas générer des fausses alarmes ; i.e., elle ne doit pas annoncer le diagnostic "Défaillance Fi", alors qu’aucun défaut de l’ensemble Fi ne s’est pas produit. De même, elle ne doit pas annoncer que le système est "Normal" alors qu’un défaut s’est produit.

Dans ce qui suit, nous illustrons intuitivement le schéma de fonctionnement de la procédure de diagnostic. Ensuite, nous présentons formellement cette procédure.

La procédure de diagnostic évolue comme une machine d’état, où l’état courant noté dcour, fournit une estimation de l’état courant du système. Le calcul d’une nouvelle estimation est déclenché par :

1. l’observation d’un nouvel événement ;

2. le dépassement d’un délai seuil d’attente, sans aucun événement observé.

Dans le premier cas ; i.e., observation d’un événement σ ∈ Σo, la procédure de diag-nostic estime l’état courant du système dcour en fonction (1) du délai écoulé depuis la dernière estimation et (2) de l’occurrence de toute possible séquence d’événements non observables suivie par l’événement σ.

La procédure utilise un temporisateur, noté t pour mesurer le temps écoulé depuis la dernière estimation effectuée. Dans le second cas, ce temporisateur atteint une valeur seuil, sans que la procédure n’observe un nouvel événement. En effet, une fois qu’il atteint cette valeur seuil, appelée Délai d’Attente Maximal (DAM), le temporisateur expire et la procédure effectue une nouvelle estimation de l’état courant du système.

Il faut noter que la valeur DAM est déterminée dynamiquement au début de chaque cycle d’exécution de la procédure. Cette valeur est calculée en fonction de la dernière estimation de l’état du système, de la manière suivante : à partir de la dernière estimation de l’état du système dcour, quel est le délai d’attente au plus tôt DAM , pour que les états estimés après l’écoulement de ce délai et/ou l’occurrence d’événements non observables soient Fi-certain, i ∈ {1, . . . , m} ; i.e., chaque état estimé est accessible par une exécution comportant un défaut de l’ensemble Fi. En effet, suite à l’écoulement de DAM u.t. depuis la dernière estimation, la procédure estime l’état du système à t = DAM puis annonce

l’occurrence d’un défaut de l’ensemble Fi.

Cependant, il est possible qu’on ne réussit pas à retrouver un délai fini au bout duquel les états estimés sont Fi-certain. Par exemple, nous pouvons considérer le cas où le système opère indéfiniment dans le mode normal ; i.e., aucun défaut n’affecte son comportement nominal, et par conséquent, une valeur finie pour le délai DAM ne peut pas exister. Nous proposons alors d’explorer l’existence de ce délai dans une fenêtre temporelle bornée, appelée fenêtre temporelle d’observation. Cette fenêtre est donnée sous la forme d’un ensemble d’entiers {1, . . . , T }, où l’entier T ≥ 1 correspond à la borne supérieure de cette fenêtre. Cet entier doit être fournie comme un paramètre de la procédure.

Si les états estimés après l’écoulement de T u.t. ne sont pas Fi-certain, le délai DAM sera affecté à T . A l’expiration du temporisateur, la procédure de diagnostic effectuera dans ce cas une mise à jour de l’estimation d’état du système, sans annoncer l’occurrence d’un défaut.

Le diagramme illustré dans la figure 5.11, décrit d’une manière informelle, les diffé-rentes étapes réalisées pendant l’exécution de la procédure de diagnostic.

? -? - -Annoncer défaillance Fi Annoncer Normal État incertain Non Non Oui Oui Éstimer l’état diagnostiquer Procédure de diagnostic Système événements observables Normal ? Fi-certain ? ? ? Intialiser t à 0 Calculer  Attendre événement ou l’expiration de t courant du syst. DAM 6 6

commencer la procédure de diagnostic

6 nouvelle (σ, t ≤ DAM) ou t = DAM estimation selon Annoncer armer t = DAM 

Fig. 5.11 – Diagramme d’exécution de la procédure de diagnostic.

Pas 1 : Calculer le délai d’attente maximal(DAM).

Pas 2 : Initialiser le temporisateur t à 0, et armer son expiration à t = DAM . Pas 3 : Attendre l’occurrence d’un événement ou l’expiration du temporisateur t. Pas 4 : Si un événement est observé à t ≤ DAM ou le temporisateur expire à

t = DAM alors estimer l’état courant du système dcour. Pas 5 : Evaluer l’estimation courante de l’état du système.

• Si les états estimés sont tous Fi-incertain alors annoncer "Défaillance Fi" ; • Sinon si les états estimés sont normaux alors annoncer "Normal" ;