Machine Etat

Embed Size (px)

Citation preview

  • 5/25/2018 Machine Etat

    1/17

    CI7 : Modliser, prvoir et vrifier les performances des systmes vnements discrets1

    ETUDE DES SYSTEMES SEQUENTIELS

    1Le temps et les tats du systme rel voluent de faon continue, mais on ne sintresse qu des instants parti-

    culiers. Seuls les faits importants pour ltude (certains vnements) sont considrs :o arrive ou dpart dune ressource (objet, personne, )

    o dbut ou fin dune action (dun processus),

    Objectifs du CI7. commander un systme vnements discrets

    Savoirs

    Je connais : les notions de machine dtats, transition, tats, actions, activit, vnement, cond i-

    tions, tat initial et tat final ;

    le diagramme dtats;

    le diagramme dactivits;

    Les structures algorithmiques de base.

    Savoir-faire

    Je sais :

    interprter tout ou partie de lvolution temporelle dun systme;

    reprsenter tout ou partie de lvolution temporelle dun systme;

    lire et dcoder un diagramme dtats;

    lire et dcoder un diagramme dactivits;

    dcrire et complter un algorithme reprsent sous forme graphique

  • 5/25/2018 Machine Etat

    2/17

    Etude des systmes squentiels 2

    _________________________________________________________________________________________

    Sommaire

    I- La machine dtat................................................................................................................... 4II- Le graphe dtat..................................................................................................................... 4III- Le diagramme dtats........................................................................................................... 4

    III-1 Prsentation .................................................................................................................... 4III-2 Etat initial / tat final ...................................................................................................... 5III-3 Activit et action ............................................................................................................ 5III-4 Evnement, condition de garde et effet .......................................................................... 5III-5 Etat composite (tats composs) .................................................................................... 7III-6 Synchronisation de 2 sous-graphes ................................................................................ 7III-7 Les pseudo-tats ............................................................................................................. 7III-8 Exemple de la porte de garage ....................................................................................... 8III-9 Exemple dune station de lavage de vhicule .............................................................. 10

    IV- Le diagramme dactivit.................................................................................................... 11IV-1 Prsentation .................................................................................................................. 11IV-2 Les structures algorithmiques de base ......................................................................... 12

    IV-2-1 Laffectation......................................................................................................... 12IV-2-2 Le groupe ou bloc dinstructions.......................................................................... 12IV-2-3 Fonctions et procdures ........................................................................................ 12IV-2-4 La structure alternative (conditionnelle) .............................................................. 13IV-2-5 Les structures rptitives (itratives) .................................................................... 13

    V- Poste de compression de cartouche de chasse .................................................................... 13

  • 5/25/2018 Machine Etat

    3/17

    Etude des systmes squentiels 3

    _________________________________________________________________________________________

    Fonctionnellement, un systme automatis se compose de deux chanes distinctes qui coop-

    rent : la chane dinformation et la chane dnergie.

    ACQUERIR TRAITER COMMUNIQUER

    Chane dinformation

    Informations

    issues dautres

    systmes et dinterfaces H/M

    MODULER CONVERTIR TRANSMETTREALIMENTER

    AGIR

    Informations destines

    dautres systmes et

    aux interfaces H/M

    Ordres

    Chane dnergie

    Energie dentre

    Matire duvre

    entrante

    Matire duvre

    sortante

    La fonction Traiter linformation est propre la nature du systme (systme asservi, sys-

    tme combinatoire, systme squentiel).

    Nous allons nous intresser lanalyse comportementale de la fonction Traiter

    linformation pour les systmes squentiels.

    Le signal de sortie est labor partir dun signal dentre logique et doit prendre en compte

    une chronologie prtablie qui porte sur un nombre fini doprations.

    Le vecteur dtat des variables de sortie est 1 2( , ,...., )S S S Sm , celui des entres

    1 2( , ,....., )E E E En et celui des variables internes est 1 2( , ,...., )X X X Xj . Pour exprimer

    ltat des sorties, il faut disposer dinformations sur lhistorique de ltat des variables

    dentre Ei . Il faut donc connatre lenchanement des squences : ( , )S f E X .

  • 5/25/2018 Machine Etat

    4/17

    Etude des systmes squentiels 4

    _________________________________________________________________________________________

    I- La machine dtat

    La machine nombre fini dtats(FSM : Finite State Machine) est aussi appele auto-

    mate fini. Elle peut tre une entit matrielle (un microprocesseur par exemple), mais aussiune entit conceptuelle comme un algorithme. Elle comporte un nombre fini dtats.

    La machine tats est un systme vnements discrets, capable de mmoriserdes don-

    nes, de les traiteret de les restituerselon des scnarios dfinis au pralable. Elle peut tredfinie par :

    un tat initial ; un ensemble dvnements ; un ensemble dtats ; un ensemble dactivits ; un ensemble de rgles permettant de dterminer le comportement du systme.

    Dans un tat, un systme peut avoir une activit ou tre en attente. Les tats dun systme se succdent en fonction dvnements.

    Un vnementest une description doccurrence qui conduit une volution du comporte-ment du systme.

    II- Le graphe dtat

    Le graphe dtat est utilis pour dcrire le comporte-

    ment dune machine dtat.

    Un tat reprsente une priode de la vie du systme. Pendant cette priode, le systme ac-complit une ou plusieurs actions ou activits, ou attend un vnement. Il peut tre actif ou

    non.

    Dans un graphe dtats, un seul tat peut tre actif un instant donn (vo ir le cas particulier

    des tats orthogonaux par la suite). Dans le cas o la description du comportement du systme

    ncessite plusieurs graphes dtat de mme niveau, plusieurs tats peuvent tre actifs en

    mme temps si lon considre lensemble des graphes dtats.

    Chaque tat est dessin sous la forme d'un rectangle aux coins arrondis, contenant son nom.

    Larc qui relie deux tats (nuds) est appel transition. Il indique la possibilit de passer

    instantanmentdun tat un autre lorsquun vnement se produit.

    On appelle tat source ltat de dpart dune transition et tat de destination ltatdarrive. Une transition nest value que si ltat source est actif.

    III- Le diagramme dtats

    III-1 Prsentation

    Le diagramme dtats (state machine diagram ou stm) est un diagramme normalis SysML.

  • 5/25/2018 Machine Etat

    5/17

    Etude des systmes squentiels 5

    _________________________________________________________________________________________

    Il permet de dcrire le comportement dun systme ou dune de ses parties 2. Le diagramme

    dtats est donc rattach son instance de bloc.

    Chaque bloc dun diagramme de dfinition de blocs ne conduit pas ncessairement un dia-

    gramme dtats car, cela nest pas toujours possible.

    III-2 Etat initial / tat final

    Ltat initialcorrespond la cration de linstance du bloc pourlequel le diagramme dtat est spcifi.

    Ltat finalcorrespond la destruction de cette instance de bloc. Ilpeut y en avoir plusieurs dans un diagramme dtats. En effet, plu-

    sieurs scnarios peuvent tre possibles pour mettre fin un compor-

    tement.

    III-3 Activit et action

    A un tat, on peut principalement rattacher une activit, une ac-tion dentreet une action de sortie.

    Une activitpeut tre considre comme une unit de comporte-ment. Elle prend du temps et peut tre interrompue. On la trouve lintrieur des tats du dia-

    gramme (mot cl do ).

    Une actionne prend pas de temps et ne peut pas tre interrompue. Son excution peut parexemple provoquer un changement dtat, lmission dun ordre pour un practionneur ou unretour de valeur. On peut les trouver dans les transitions (effet) ou dans les tats (mots cl

    entry ou exit ). Les actions sont les lments de base permettant de spcifier les activits

    dans des diagrammes dactivit.

    Dans loutil SysML, les activits et actions sont directement lies aux fonctions (operations)

    dfinies dans les proprits de bloc.

    Pendant que ltat est actif, un vnement peut lancer une activit avec la syntaxe: vne-

    ment/activit. Cette activit est lance chaque fois que lvnement survient, tant que ltatest actif.

    III-4 Evnement, condition de garde et effet

    Une transitionpeut tre associe un v-

    nement, une condition de garde et/ou

    un effet(une action).

    2Le systme est dcrit partir de blocs

  • 5/25/2018 Machine Etat

    6/17

    Etude des systmes squentiels 6

    _________________________________________________________________________________________

    Une transition rflexive entrane une sortie dtat puis un retour

    dans ce mme tat. Cela nest donc pas sans consquence selon

    les cas.

    Un vnement se produit un instant prcis et est dpourvu de dure.

    Il existe quatre types dvnements associs une transition :

    le message(signal event) : un message asynchrone est arriv ; lvnement temporel (time event) : un intervalle de temps sest coul depuis

    lentre dans un tat (mot cl after ) ou un temps absolu a t atteint (mot cl at

    ) ;

    lvnement de changement (change event) : une valeur a chang de telle sorteque la transition est franchie (mot cl when ) ;

    lvnement dappel(call event) : une requte de fonction (operation) du bloc a teffectue. Un retour est attendu. Des arguments (paramtres) de fonction peuvent tre

    ncessaires.

    Les vnements peuvent tre utiliss pour dcrire les interactions entre les

    diffrentsblocs dun systme. En effet, un vnement peut tre mis par un

    autre bloc (send signal action) que celui pour lequel le diagramme dtats

    est spcifi. Il est alors par dfaut destin tous les blocs du systme (diffu-

    sion broadcast) . De mme, un vnement peut tre reu (receive signal

    action).

    La conditionde gardeest une expression boolenne faisant intervenir des entres et/ou desvariables internes. Elle autorise le passage dun tat un autre.La condition de garde est va-

    lue uniquement lorsque lvnement dclencheur se produit. Si lexpression est fausse ce

    moment-l, la transition ne se dclenche pas, si elle est vraie, la transition se dclenche et ses

    effets se produisent.

    Plusieurs transitions peuvent quitter un mme tat. Une seule dentre elles doit tre dclen-

    che, c'est--dire que les vnementset/ou les conditions de garde doivent tre exclusifs.

    Leffetassoci une transition est effectu lorsque la transition est franchie.

  • 5/25/2018 Machine Etat

    7/17

    Etude des systmes squentiels 7

    _________________________________________________________________________________________

    III-5 Etat composite (tats composs)

    Un tat composite(appel compos ou super-tat)est constitu de sous-tats exclusifs lispar des transitions. Cela permet dintroduire la notion dtats de niveau hirarchique infrieur

    et suprieur.

    On peut ainsi factoriser des transitions dclenches par le mme vnement et amenant vers le

    mme tat cible tout en spcifiant des transitions particulires entre les sous-tats.

    Certains tats composites peuvent tre qualifis d'orthogonaux : ils comportent dans ce cas

    plusieurs rgions (spares par un trait en pointill) au sein desquelles les tats s'excutent en

    parallle (concurrence).

    L'tat orthogonal sera termin lorsque chaque rgion aura atteint son tat final respectif.

    III-6 Synchronisation de 2 sous-graphes

    Il est possible de conditionner une transition par lactivit de ltat dun autre sous-graphe.

    La syntaxe de la condition de garde vrifiant lactivit de ltat est [in ETAT].

    III-7 Les pseudo-tats

    Un pseudo-tat est un lment de commande qui influence le comportement dune machinedtat.

  • 5/25/2018 Machine Etat

    8/17

    Etude des systmes squentiels 8

    _________________________________________________________________________________________

    Ils peuvent tre utiliss dans un diagramme dtats ou dans un diagramme dactivit.

    Le formalisme SysML admet neuf pseudo-tats :

    shallow history : permet un tat de niveau hirarchique suprieur (tat com-posite) de se souvenir du dernier sous-tat, avant quil nvolue vers un autre tat,

    deep history : idem que prcdemment, mais avec la propagation delhistorique tous les sous-tats composites de niveaux hirarchiques infrieurs,

    fork et join : divergence et convergence de squences paral-lles,

    choice : slection et convergence de squences exclusives. Il est ncessairequune condition situe en aval soit vraie pour que lvolution du systme se pour-

    suive. Les conditions de gardes doivent tre exclusives. Le mot cl else peut-tre

    utilis pour englober tout ce qui nest pas dcrit dans les autres expressions boo-

    lennes. Les conditions de garde situes en aval sont toutes values une fois le pseu-

    do-tat atteint, junction : idem au pseudo-tat choice , la diffrence que pour quun che-

    min soit emprunt, toutes les conditions de garde situes en aval et en amont, doivent

    tre vraies. Lvaluation des conditions avales est ralise avant que le pseudo-tat

    soit atteint,

    entry point et exit point : permet de crer un point dentre du dia-gramme et un point de sortie vers un autre diagramme,

    terminate : permet de terminer une squence sans destruction de linstance debloc.

    Rcapitulatif des pseudo-tats

    III-8 Exemple de la porte de garage

    Soit une porte de garage basculante automatique.

  • 5/25/2018 Machine Etat

    9/17

    Etude des systmes squentiels 9

    _________________________________________________________________________________________

    Ce dispositif comporte :

    Une porte de garage basculante mise en mouvement par un moteur lectrique deuxsens de rotation (sens + pour louverture, sens pour la fermeture) ;

    Une bute qui indique la fin dun mouvement par dtection dune surintensit au ni-veau de lalimentation du moteur (dans les deux sens de fonctionnement);

    Une tlcommande embarque un bouton (tel) dont lappui conduit au fonctionne-ment suivant :

    o Ouvrir la porte si elle est ferme ;o Fermer la porte si elle est ouverte ;o Inverser le sens du dplacement si la porte est en mouvement.

    Un boitier de commande mural intrieur du garage deux boutons actifs ouvrir et fermer

    o Si la porte est ferme, lappui sur ouvrir conduit louverture de la porte;o Si la porte est ouverte, lappui sur fermer conduit la fermeture de la porte.

    Ouvrir

    Fermer

    Le systme de commande de cette porte peut se schmatiser par un rectangle muni de quatre

    entres3et de deux sorties4.

    TRAITER lesinformations

    Marche sens +

    Marche sens -

    tel

    ouvrir

    fermer

    bute

    Ce systme est squentiel, car une mme combinaison des entres sont associes des tats

    diffrents de sortie. Si toutes les entres sont 0 alors la porte peut tre arrte en position

    haute ou basse, mais galement en train de souvrir ou de se fermer.

    Le systme peut prendre quatre tats :

    Etat porte ferme : la porte de garage est ferme ; Etat porte ouverte : la porte de garage est ouverte ; Etat ouverture : pendant les moments o la porte est en train de souvrir; Etat fermeture : pendant les moments o la porte est en train de se fermer.

    A la mise en tension du systme, la porte est en position ferme.

    Le diagramme dtats peut prendre la forme suivante.

    3Les informations en entre vont intervenir dans les transitions du graphe dtats.

    4Les ordres de commande en sortie vont intervenir dans les activits lances dans les tats actifs.

  • 5/25/2018 Machine Etat

    10/17

    Etude des systmes squentiels 10

    _________________________________________________________________________________________

    Une alternative lutilisation du capteur de bute est de se servir dune temporisation de 10s

    par exemple.

    Le nouveau graphe dtats est le suivant.

    On remarque que si lon inverser le sens du dplacement lorsque la porte est en mouvement,

    la temporisation restera de 10s alors que le mouvement durera moins longtemps. Le moteur

    sera aliment alors quil est larrt donc il risque de schauffer.

    On peut dcrire le fonctionnement normal douverture/fermeture sur un chronogramme. On

    suppose la porte ferme initialement et on utilise uniquement la tlcommande.

    tel

    bute

    Sens +

    Sens -

    t

    t

    t

    t

    III-9 Exemple dune station de lavage de vhicule

    Un systme automatis de lavage de voitures comporte :

  • 5/25/2018 Machine Etat

    11/17

    Etude des systmes squentiels 11

    _________________________________________________________________________________________

    Un portique mobile ; un rouleau horizontal, des rouleaux verticaux pour le lavage ; des buses jet vertical et horizontal pour le lavage et le rinage ; un automate programmable.

    A la mise sous tension du systme, on ralise linitialisation du poste de lavage.

    En fonctionnement normal, on sassure que le vhicule qui vient dtre lav a quitt le site et

    que la prparation de la machine est termine puis ds quun vhicule se positionne le lavage

    peut dbuter.

    Le systme peut prendre cinq tats :

    Etat prparation initiale ; Etat Attendre arrive du vhicule ; Etat lavage ;

    Etat prparation ; Attente dpart vhicule.

    Le diagramme dtats peut prendre la forme suivante.

    IV- Le diagramme dactivit

    IV-1 Prsentation

    Le diagramme dactivit (activity diagram ou act) est un diagramme normalis SysML.

    Il permet de dcrire la transformation des flux dentres en flux de sorties (matires,nergies, informations) par le biais de squences dactions ou activit dclenches par des

    flux de contrle.

  • 5/25/2018 Machine Etat

    12/17

    Etude des systmes squentiels 12

    _________________________________________________________________________________________

    IV-2 Les structures algorithmiques de base

    IV-2-1 Laffectation

    Laffectation dune valeur une variable peut se faire laide dune action. Cela ne prend pas

    de temps significatif.

    Formalisme du diagramme dtats Formalisme du diagramme dactivit

    IV-2-2 Le groupe ou bloc dinstructions

    Un groupe ou un bloc dinstructions peut tre une s-

    quence dun diagrammedactivit.

    Cela correspond une succession dactions et/ou

    dactivits.

    IV-2-3 Fonctions et procdures

    La dcomposition dun algorithme en fonctions etprocdures permet :

    dune part, de scinder une problmatique gnrale en plusieurs problmatiques l-mentaires,

    dautre part, de pouvoir rutiliser des sous-programmes ralisant des tches lmen-taires.

    Uneprocdurecomporte une succession dinstructions, mais ne renvoie rien.

    On peut aussi utiliser les tats composites dun diagramme dtats.

    A la fin de lexcution dune fonction, il y aretour dune valeur, dune liste, dun objet, . .

  • 5/25/2018 Machine Etat

    13/17

    Etude des systmes squentiels 13

    _________________________________________________________________________________________

    IV-2-4 La structure alternative (conditionnelle)

    Si , alors faire , sinon faire

    Structure alternative complte Structure alternative avec saut

    Formalisme du diagramme dtats Formalisme du diagramme dactivit

    IV-2-5 Les structures rptitives (itratives)

    Tant que condition vraie, faire Rpter jusqu condition vraie

    Formalisme du diagramme dtats Formalisme du diagramme dactivitPour variable = valeur initiale, jusqu valeur maximale, faire

    Formalisme du diagramme dtats Formalisme du diagramme dactivitV- Poste de compression de cartouche de chasse

  • 5/25/2018 Machine Etat

    14/17

    Etude des systmes squentiels 14

    _________________________________________________________________________________________

    Le systme tudi doit permettre par lintermdiaire de deux v-

    rins, les oprations de maintien et de compression dune car-

    touche de chasse.

    Lopration de compression consiste enfoncer une bourre dans

    le fond de la cartouche au-dessus de la poudre.Les bourres dune part et les cartouches dautre part sont amenes

    par un systme de transfert dont cette tude ne fait pas lobjet.

    Cycle de fonctionnement : Ds que le dpart cycle est donn, le

    vrin de maintien vient plaquer la cartouche contre un appui afin de la maintenir.

    Le vrin de compression enfonce alors les bourres dans le fond de ltui de la cartouche. Il se

    retire et simultanment, le vrin de maintien libre la cartouche afin quelle soit vacue.

    On utilise :

    un bouton poussoir de dpartcycle dcy ,

    un vrin simple effet comme vrinde maintien (practionneur mo-

    nostable5 : ordre de sortie VM

    ), et dtecteurs fin de course

    vm0 (tige rentre) et vm1

    (tige sortie) ;

    un vrin simple effet comme vrinde compression (practionneur

    monostable : ordre de sortie VC

    ), et dtecteurs fin de course vc0 (tige rentre) et vc1 (tige

    sortie).

    Le chronogramme suivant dcrit le cycle de fonctionnement normal.

    dcy

    Vm0t

    t

    t

    t

    VM

    VC

    t

    t

    t

    Vm1

    Vc0

    Vc1

    5Si lordre de sortie nest pas maintenu, la tige de vrin rentre.

  • 5/25/2018 Machine Etat

    15/17

    Etude des systmes squentiels 15

    _________________________________________________________________________________________

    Le systme est squentiel.

    On peut retenir quatre tats distincts :

    attente maintien maintien et compression rentre des tiges de vrin

    Le diagramme dtats peut prendre la forme suivante.

    Ltat composite maintien et compression est obtenu par deux tats disjoints maintien

    et compression .

    Les diagrammes associs aux activits maintenir et comprimer sont dtaills ci-

    dessous.

  • 5/25/2018 Machine Etat

    16/17

    Etude des systmes squentiels 16

    _________________________________________________________________________________________

  • 5/25/2018 Machine Etat

    17/17

    Etude des systmes squentiels 17

    _________________________________________________________________________________________

    Annexe 1 : Etat et changement dtat dune variable binaire

    1. Etat de la variable binaireOn note a ou a selon qu'on s'intresse au niveau 1 ou 0 de la variable.

    a

    t

    t

    a

    2. Changement dtat dunevariable binaireLinformation de spectre temporel nul dfinit le concept dvnement. On appelle cette in-

    formation un front:

    Le passage du niveau 0 au niveau 1 est appel front montant ; Le passage de niveau 1 au niveau 0 est appel front descendant.

    a

    t

    t

    a

    t

    a