IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

LabVIEW Discussion :

Comment créer une machine d'état


Sujet :

LabVIEW

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 7
    Points
    7
    Par défaut Comment créer une machine d'état
    Bonjour,

    J'aimerais savoir comment on crée une machine d'état. Je sais qu'on dois partir d'une boucle while et d'une structure condition mais je n'en sais pas plus.

    Merci

  2. #2
    Membre éprouvé Avatar de reg64
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    959
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 959
    Points : 1 255
    Points
    1 255
    Par défaut
    Salut,
    State Machines
    tu as même un exemple fournit.
    a+
    Reg
    CLAD

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Bonjour,

    Citation Envoyé par reg64 Voir le message
    LabVIEW diagram, you need the following infrastructure:

    * While loop – continually executes the various states
    * Case structure – each case contains code to be executed for each state
    * Shift register – contains state transition information
    * Transition code – determines the next state in the sequence (see below for examples)
    En fait, j'ai un peu du mal avec ce tutoriel. A quoi correspondent "Shift register" et "transition code" ? Où est ce qu'on les trouve ?

    Merci

  4. #4
    Membre confirmé
    Homme Profil pro
    Ingénieur d'études
    Inscrit en
    Janvier 2011
    Messages
    444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur d'études

    Informations forums :
    Inscription : Janvier 2011
    Messages : 444
    Points : 643
    Points
    643
    Par défaut
    shift register = registre à décalage

    transition code, c'est le code que tu implémentes afin de choisir l'état suivant.

    Sur ce blog: http://labviewbancdetest.wordpress.com/ tu trouveras des infos pour architecturer ton programme, il y a entre autre des aides pour certaines machines d'état.

  5. #5
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Avril 2010
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Avril 2010
    Messages : 210
    Points : 338
    Points
    338
    Par défaut
    Salut,

    Shift Register = Registre à décalage. (Clic droit sur ta boucle While => Ajouter un registre à décalage). Cela permet de passer une variable d'une itération à l'autre.

    Transition Code = code qui te permet de passer d'un état à l'autre en fonction des conditions que tu as (et donc de ton algorithme).


    L'exemple qui est dans la partie "Download" vers la fin de la page donnée par reg64 est très parlant. N'hésite pas à mettre le mode Animation (Ampoule dans la barre du haut dans la fenêtre du diagramme)

    Bon courage.

    Losaque

    EDIT : Trop tard, Roderic a été trop rapide

  6. #6
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Salut,

    En fait, j'ai compris avec cette vidéo :
    http://zone.ni.com/devzone/cda/tut/p/id/7596

    En gros, les étapes sont :

    1) Placer la boucle while
    2) Mettre la structure condition à l'intérieur
    3) Créer une constante numérique devant le boucle while
    4) Clic droit sur la constante énumération
    5) Editer les éléments
    6) Créer les éléments voulus
    7) Valider
    8) Relier la constante énumération à la boucle while
    9) Clic droit - Remplacer par un registre à décalage
    10) Relier à la condition de la structure condition

    ... Après c'est une question spécifique à l'application que l'on veut développer.

  7. #7
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Re,

    J'ai essayer de faire un VI qui permettrait d'affubler en fonction de la constante énumération P1, P2 ou P3 la surface d'une diode en utilisant une fonction d'état mais mon programme beuggue et je comprends pas pourquoi.
    Fichiers attachés Fichiers attachés

  8. #8
    Membre éprouvé Avatar de reg64
    Profil pro
    Inscrit en
    Décembre 2006
    Messages
    959
    Détails du profil
    Informations personnelles :
    Âge : 41
    Localisation : France, Vienne (Poitou Charente)

    Informations forums :
    Inscription : Décembre 2006
    Messages : 959
    Points : 1 255
    Points
    1 255
    Par défaut
    Salut,
    Citation Envoyé par magali_morgane Voir le message
    Salut,

    En fait, j'ai compris avec cette vidéo :
    http://zone.ni.com/devzone/cda/tut/p/id/7596

    En gros, les étapes sont :

    1) Placer la boucle while
    2) Mettre la structure condition à l'intérieur
    3) Créer une constante numérique devant le boucle while Créer une constante enum
    4) Clic droit sur la constante énumération
    5) Editer les éléments
    6) Créer les éléments voulus
    7) Valider
    8) Relier la constante énumération à la boucle while
    9) Clic droit - Remplacer par un registre à décalage
    10) Relier à la condition de la structure condition

    ... Après c'est une question spécifique à l'application que l'on veut développer.
    Dans ton exemple, remplace le vi "Additionner" par le vi "+1"

    a+
    Reg
    CLAD

  9. #9
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2011
    Messages : 9
    Points : 7
    Points
    7
    Par défaut
    Merci

    Maintenant que ma machine d'état fonctionne, ça veut dire que je peux l'utiliser comme un "sous-VI ?"
    Fichiers attachés Fichiers attachés

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Comment coder une machine d'états
    Par binome-x dans le forum C
    Réponses: 3
    Dernier message: 19/08/2014, 12h04
  2. Réponses: 2
    Dernier message: 28/07/2014, 12h33
  3. Réponses: 7
    Dernier message: 01/02/2013, 08h09
  4. comment créer une machine virtuelle
    Par s-ehtp dans le forum Autres Logiciels
    Réponses: 4
    Dernier message: 16/03/2008, 20h02
  5. Comment créer une somme dans un état?
    Par ivan rung dans le forum Access
    Réponses: 6
    Dernier message: 20/01/2006, 07h56

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo