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 :

[Débutant] Envoyer une valeur d'une condition "vrai" à la condition "faux"


Sujet :

LabVIEW

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 31
    Points : 26
    Points
    26
    Par défaut [Débutant] Envoyer une valeur d'une condition "vrai" à la condition "faux"
    Bonjour,

    Pendant mon stage je dois programmer un contrôle numérique d'asservissement d'une cavité laser, en utilisant LabVIEW (version 6 ou 7, je ne sais plus...) et une carte d'acquisition NI.
    Le principe est simple : si l'asservissement décroche, le programme balaye la cavité en envoyant une tension d'offset et en vérifiant à chaque fois le signal de la photodiode. Quand le signal est maximum, on est à résonance : le programme bloque l'offset et rebranche l'asservissement.

    Mon problème est pour bloquer l'offset. Si la condition de décrochage est "vrai", on rentre dans une boucle qui augmente l'offset et qui vérifie le signal de la photodiode. Si ce signal est bon, on génère l'offset adéquat, et on sort de la boucle. Sinon, on continue. Sauf qu'une fois sorti de la boucle, la tension n'est plus générée dans la carte. Du coup, la tension envoyée à la cavité laser diminue petit à petit, ce qui est gênant sur le long terme.

    Ce que j'aimerais faire, c'est sortir la dernière valeur de mon offset de ma condition "vrai" pour l'envoyer dans la condition "faux" (avec initialisation à zéro) et ainsi générer à chaque vérification la bonne tension. Quelqu'un voit-il comment faire ?

  2. #2
    Membre chevronné

    Inscrit en
    Avril 2005
    Messages
    1 144
    Détails du profil
    Informations forums :
    Inscription : Avril 2005
    Messages : 1 144
    Points : 1 973
    Points
    1 973
    Par défaut
    Hello,

    Il existe plusieurs methodes qui dependent de la facon dont tu as programmé.

    La plus simple est l'utilisation des variables locales ( par le menu contextuel sur le controle )

    a+

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    Bonjour !

    J'avais effectivement pensé aux variables locales mais je ne vois pas vraiment comment elles s'utilisent... Le menu contextuel sur le contrôle, c'est juste le menu où on les trouve ? ^^"

    Pour le moment, mon programme se découpe comme ça (en traduisant l'algorithme type lignes de code) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    OFFSET = 0
    Boucle while1 (arrêt quand l'utilisateur appuie sur Stop)
       If signal < seuil1
          création d'un tableau d'offsets à partir d'une rampe de tension
          boucle while2
             génération d'un offset(i)
             acquisition du signal(i)
             If signal(i) > seuil2 & signal(i-1) > signal(i)
                génère l'offset(i-1)
                OFFSET = offset(i-1)
                arrêt de la boucle while2
             end if
       
       else
          génère l'offset OFFSET
       end if
    J'aimerais ajouter le texte en bleu.

    Je vais essayer de creuser du côté des variables locales, et éventuellement faire une capture d'écran de mon diagramme si ça peut vous aider à m'aider ^^

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    31
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Mai 2007
    Messages : 31
    Points : 26
    Points
    26
    Par défaut
    OK, l'utilisation d'une variable locale me permet de faire exactement ce que je voulais ! Merci Scyrius

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

Discussions similaires

  1. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  2. Réponses: 2
    Dernier message: 16/03/2015, 21h19
  3. Réponses: 0
    Dernier message: 16/01/2014, 06h42
  4. Recherche une valeur d'une cellule dans une colonne d'une autre feuille
    Par kourria dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/06/2007, 13h48
  5. Mettre une valeur d'une table dans une variable
    Par Raphou96 dans le forum Access
    Réponses: 5
    Dernier message: 06/02/2006, 15h19

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