Discussions au sujet des autres produits NI

annuler
Affichage des résultats de 
Rechercher plutôt 
Vouliez-vous dire : 

Executer un vi continuellement

Résolu !
Accéder à la solution

Bonjour,

 

mon probleme reside dans le fait que l'éxecution de mon vi ne se fait pas continuellement.

je presse le bouton run, après je fait entrer les parametres de controle, le resultat s'affiche pour la premiere fois, mais lorsque je change les parametres une autre fois rien ne change. je dois stopper le vi et l'éxecuter une autre fois pour que les nouveaux resultats s'affichent.

je voudrais éviter cette procedure de stopper et éxecuter le vi a chaque fois que les parametres de controle changent de valeur.

je voudrais executer le vi continuellemt et changer les valeurs sans stopper.

 

merci,

0 Compliments
Message 1 sur 10
4 401 Visites

Bonjour,

je n'ai pas vu ton programme mais c'est très classique ton problème. Pour que le VI s'exécute continuellement et pendant ce temps là tu peux changer les paramètres, il faut mettre tes codes dans une boucle while et créer un bouton "arrêt" de programme. les variables à entrer pendant l'exécution de ton programme doient être présentes dans la boucle, c'est tout simple comme ça. En plus avec cette méthode tu n'as pas à utiliser le bouton "exécute" continuellement mais tu clique que sur le bouton "exécute" (la petite flèche en haut à gauche). Cordialement.

0 Compliments
Message 2 sur 10
4 400 Visites

Salut Rose,

 

Il ne faut en aucun cas utiliser le bouton "Run continuously", car il te faudra alors utiliser le bouton rouge "Abort execution" pour arrêter ton VI.

Utiliser le bouton rouge, c'est comme utiliser un arbre pour arrêter une voiture (c'est pas de moi Smiley heureux)

 

Poste ton VI, et on va y jetter un oeil, ton problème est simple, et te paraîtra simple une fois expliqué.

 

A+

0 Compliments
Message 3 sur 10
4 394 Visites

Merci tuonglinh et Mathieu de m'avoir repondu,

Enfaite j'ai testé cette solution, mais rien n'a changé...je trouve ça bizarre.!!!

(mon application aquiert des donnees d'un NI DAQ et vous pouver remarquer dans le vi caracteristique

que seul le controle delay peut etre modifie durant l'application mais pas les autres....)

 

merci,

 

0 Compliments
Message 4 sur 10
4 390 Visites

Re,

 

Je vais être franc avec toi, ton VI est difficillement lisible. Je l'ai refactorisé (simplifié) pour me rendre compte d'une chose.

Tu as une boucle while insérée dans une boucle autre while. A mon avis, ton code est bloqué dans la boucle interne (celle qui fait entre autre le calcul de Rd (ohm)).

 

En effet, ta boucle externe commence à tourner, fait une acquisition, puis rentre dans la boucle while interne et y reste bloqué temps que tu n'appuies pas sur le bouton "Stop" qui permettrait à la boucle interne de terminer son éxécution et de passer ainsi à l'itération suivante de la boucle externe. Essaye de valider ce point là lançant ton code en éxécution détaillée.

 

De manière plus générale, ton VI souffre de grave problème de visibilité. Mets les calculs dans des sous-VIs, et fais tenir le code du VI principal sur un écran.

Tu t'y retrouveras beaucoup mieux.

 

A+

0 Compliments
Message 5 sur 10
4 375 Visites
Tu as raison maintenant il devient plus lisible...mais le probleme persiste meme sans la loupe while...
0 Compliments
Message 6 sur 10
4 373 Visites

Bonjour Rose,

 

Si j'ai bien compris, tu veux pouvoir rentrer tes paramètres (Instructions) avant d'effectuer une acquisition. Avec ton vi actuel, l'acquisitioin ne s'effectue qu'une seule fois, et le vi reste bloqué dans ta boucle while.

 

Je te joins un vi qui permet de modifier tes paramètres entre chaque acquisition. La boucle condition permet de lancer l'acquisition quand tu appuie sur le bouton Acquisition. Appuie sur Stop pour quitter l'application.

 

 

Cordialement.

 

Tout télécharger
0 Compliments
Message 7 sur 10
4 369 Visites
Utilise ton fichier Final.vi car j'ai modifié les voie physique dans DAQ Assistant.
0 Compliments
Message 8 sur 10
4 368 Visites
Solution
Accepté par l'auteur du sujet rose2009

En regardant de plus pres ton vi, je me suis rendu compte que l'exemple que j'ai proposé ne permet pas d'avoir les valeurs X1,X2,Y1,Y2 en temps réel quand tu deplace le curseur sur le graphe.

Pour cela ,il faut que dans la boucle condition, il n'y ai que la partie concernant l'acquisition.

 

 

0 Compliments
Message 9 sur 10
4 342 Visites

Merci beaucoup jack...la modification que vous avez faite a résolu le problème.

mais j'ai decouvert que la cause réelle qui a laisse les controles bloqués est vraiment drôle  Smiley heureux .....

la zone de texte est étendue sur le controle de façon qu'elle le bloque..

 

 

 

0 Compliments
Message 10 sur 10
4 307 Visites