Discussions au sujet des autres produits NI

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

Tableau xy

Bonjour,

Ma question est simple, je souhaite créer un tableau XY sous labview.
Je pensais que c'était simple mais j'éprouve certaines difficultés.

Sur le Vi en pièce jointe, on voit (en bleu) ce que je veux faire apparaitre dans mon (mes) tableau(x) YX (situés sur la droite).
Seulement, lorsque je fais tourner le vi, je n'ai aucune courbe qui se trace?

Pouvez-vous m'aiguiller?

PS; si vous le faite trourner, il se peut que vous ayez une erreur car il faut une carte d'acquisition...
 
J'ai également 2 sous-questions
- faire démarrer le vi avec un bouton sur la face - avant
- arreter le Vi avec un bouton stop (j'ai essayé d'en mettre un dans une boucle mais ca n'a aucune incidence sur le vi)
 
D'avance merci


a+
fred
0 Compliments
Message 1 sur 17
4 713 Visites
Le problème pour le grapique est bien simple : le pauvre graphique ne peut en effet pas afficher une trace puisque vous ne lui transmettez qu'un seul point XY à la fois !

Contrairement à ce que vous pensez et écrivez, le bouton Stop arrête le VI. Le problème est que l'arrêt ne se passe qu'à l'itération suivante de la boucle WHILE. Ceci est dû au manque de dépendance entre l'exécution de la boucle FOR et le bouton Stop. Voici ce qui se passe :

Au moment où le VI est démarré, le bouton Stop est lu (pas pressé --> condition d'arrêt de la boucle n'est pas satisfaite) et la boucle FOR démarre.
Le bouton Stop, pressé pendant l'exécution de la boucle FOR, ne sera relu que lors de la prochaine itération de la boucle WHILE qui s'exécutera alors une dernière fois. Ceci peut être contourné très facilement de deux manières :
  1. Lire le bouton Stop après l'exécution de la boucle FOR. La boucle WHILE s'arrête alors sans itération supplémentaire.
  2. Mettre la boucle FOR dans un case True/False relié au bouton Stop. Dans ce cas, l'itération supplémentaire de la boucle WHILE se termine très rapidement puisque l'état TRUE ne contient pas de code.
Pour information, une boucle FOR ne peut pas être arrêtée. Le code qu'elle contient peut être placé à l'intérieur d'un case comme décrit ci-dessus mais la boucle fera toujours le nombre d'itérations défini.

Voir l'exemple attaché démontrant comment solutionner ces deux soucis.

Il n'est pas possible de démarrer un VI par un quelconque bouton placé sur sa face avant puisque le VI doit déjà être en cours d'exécution pour lire l'état du bouton. C'est le serpent qui se mord la queue !
Par contre, vous pouvez activer la propriété Run when Opened du VI de manière à ce qu'il démarre automatiquement lors de son ouverture. De plus, en alternative à la flèche, la combinaison de touche Ctrl + R démarre aussi un VI.
Message 2 sur 17
4 708 Visites
Bonjour JB,
 
 
Tou d'abord, merci d'avoir pris le temps de répondre.
 
Je ne comprends nénamoins pas votre première remarque concernant la trace XY. En effet, sur la face avant, on constate clairement que pour chaque X, on a une valeur Y (qui et ici toujours identique = 10.6352).
C'est évidement ca que je souhaite faire apparaitre sous labview.
Vous constastez d'ailleurs dans le diagramme, que je suis actuellement obligé de passer sous Excel pour avoir cette trace.
 
Pouvez-vous donc me donner d'autres pistes pour avoir directement la trace sous Labview?
 
D'avance merci
 
Frédéric
 
 
0 Compliments
Message 3 sur 17
4 704 Visites
J'avoue n'avoir pas regardé votre diagramme dans tous les détails, en particulier les VIs express. Mais le problème d'affichage provient bel et bien du fait qu'à chaque itération de la boucle FOR vous n'écrivez qu'un seul point XY dans le graph. Le graphique se limite donc à afficher ce point. Comme montré dans mon exemple, il faut assembler les points individuels obtenus à chaque itération de la boucle en un tableau de points et vous obtiendrez alors une trace.

Pour vous en convaincre, je vous invite à configurer les traces de manière à afficher les points de la trace (Plot Legend >> Point Style). Vous verrez alors un point se promener sur les graphs.

A moins que je passe vraiment à côté du sujet...

Message Edité par JB le 06-18-2007 04:28 PM

0 Compliments
Message 4 sur 17
4 702 Visites

Bonjour JB,

Merci pour cette dernière réponse; j'ai en effet compris ce que vous signifiez concernant mon graphe.

Je me suis inspiré de votre exemple pour essayer d'assembler mes points (copier-coller); j'ai également essayé en incluant dans mon diagramme  certains élements de la palettes clusters et tableaux; mais en vain...je dois passer à coté d'une astuce car mon graphe n'affiche toujours pas la courbe mais un point à la fois (j'ai pourtant essayer avec tableau de points dans d'autres forums).

Pourriez-vous me donner d'autres pistes (et /ou examiner ce qui cloche dans mon diagramme.

 

D'avance merci

 

Frédéric

0 Compliments
Message 5 sur 17
4 685 Visites
Pourriez-vous poster la dernière version de votre VI afin que je puisse y apporter les modifications nécessaires ?
0 Compliments
Message 6 sur 17
4 679 Visites
re
 
j'ai éliminé tous les essais pour ne laisser que sur la partie gauche du diagramme les élements nécessaires à la construction du graphe à savoir "axe X tension" et "axe Y amplitude".
 
voila la version de cde vi
 
Merci beaucoup
 
Frédéric
0 Compliments
Message 7 sur 17
4 678 Visites
Voilà qui devrait faire l'affaire.
0 Compliments
Message 8 sur 17
4 674 Visites

Merci beaucoup pour votre aide, j'ai malheureusement omis de vous signaler que je travaillais avec la version 7 de LabVIEW (je ne sais donc pas voir ce que vous m'avez envoyé).

Pourriez-vous donc m'envoyer le Vi enregistré sous version 7.1.

D'avance merci

 

Frédéric

0 Compliments
Message 9 sur 17
4 670 Visites
Le voici en LV7.1.

J'ai malheureusement dû remplacer le chart déroulant car il produisait une erreur après la conversion de LV8 vers LV7.1.

0 Compliments
Message 10 sur 17
4 668 Visites