Discussions au sujet de NI LabVIEW

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

Mise à jour données dans cluster

Bonjour,

 

J'utilise un cluster pour rassembler différents tableaux de données (string et num) dans un sous-vi afin de le renvoyer dans mon vi principal.
Je veux ensuite pouvoir avoir accès aux données de ce cluster dans un autre sous-vi.
Hors le cluster créé dans le sous-vi n°1 est de type indicateur (j'utilise la fonction bundle by name) et pour pouvoir accèder aux données (via unbundle by name) il faut que le cluster soit de type control.
Comment puis-je faire pour accèder aux données du cluster créé? Et idéalement pouvoir les modifier à nouveau avant de renvoyer le cluster à mon vi principal.

 

(j'utilise Labview 2012)

 

 

Merci d'avance,

Maëlle


0 Compliments
Message 1 sur 6
4 797 Visites

Bonjour,

 

Logiquement, si vous allez dans votre sous VI n°1 et que vous sélectionnez un des types de données dans le cluster, faites un clic droit dessus et vous aurez l'option de les changer en indicateurs, en commandes ou en constantes. Ici, ce qui vous interresserait serait plutôt le "mode" commande.

Vous pourrez ensuite modifier les valeurs du cluster du sous VI avant d'exécuter le VI principal l'appellant.

 

J'ai peu être mal compris votre problème, si c'est le cas, n'hésitez pas à nous recontacter.

 

Cordialement

 

Pierre Denis

0 Compliments
Message 2 sur 6
4 795 Visites

Bonjour,

 

Voici un petit tutorial sur l'utilisation des tableaux et des clusters. Je pense qu'il peut vous être utile:

Tutorial: Arrays and Clusters

 

Cordialement,

Olivier L. | Certified LabVIEW Developer


0 Compliments
Message 3 sur 6
4 793 Visites

@Olivier :

 

J'ai regardé le tutorial dont tu as posté le lien.

 

Juste un petit détail qui me perturbe (juste un rien)

 

Concernant les Tableaux, on y parle d'éléments initialisés et d'éléments non-initialisés.

 

SR1.png

Le Tableaux ci-dessus comporte donc, 4 éléments initialisés et 2 éléments non-initialisés.

 

Cette explication laisse penser qu'un élément non-initialisé ... est un élément faisant partie (aussi) du Tableau.

 

simplement ... il n'a pas été initialisé. (comme une case existante, mais dans laquelle on a rien mis)

 

4 tiroirs avec une pomme, et 2 tiroirs vide ... total 6 tiroirs.

 

Cette image semble dire que ce Tableau comporte donc 6 éléments.

 

Petite démo :

 

SR2.png

 

Le Tableau ci-dessus comporte 3 éléments (et non 7)

 

à mon sens ... cette façon de parler d'éléments non-initialisés est incorrecte.

 

Un élément non-initialisé n'existe pas dans le Tableau, et n'est donc pas un "élément" ... ce n'est rien, juste une potentialité d'extension.

 

La preuve ... un Tableau ne contenant que des éléments non-initialisés ... est un Tableau vide (qui bypass une boucle indexée)

 

Pour moi, le terme "élément non-initialisé" est un mauvais choix et pourrait induire le lecteur (débutant) dans l'erreur.

 

 

ouf, je vais aller dormir ... je sentais que cette chose allait me pourrir ma nuit ... je me sens mieux   Smiley clignant de l'œil

 

 

 

 

 

0 Compliments
Message 4 sur 6
4 754 Visites

Salut Ouadji,

 

Je suis d'accord avec toi, que cela peut porter à confsion.

Il est clair que la taille d'un tableau n'est définie que par ses éléments initialisés, et que le reste n'est que de l'affichage, car si dans ton exemple on voit 7 éléments, on peut très facilement étendre ce tableau, sans en changer ses données initialisées.

 

Je pense que les termes sont utilisés car dans LabVIEW, contrairement à un langage de programmation autre, tu n'as pas besoin de définir à l'avance la taille de ton tableau, et cette taille peut facilement évoluer au cours de l'utilisation du tableau, ce qui à mon avis n'apporte que plus de confusion...

 

Olivier L. | Certified LabVIEW Developer


0 Compliments
Message 5 sur 6
4 741 Visites

nous sommes synchro Olivier   Smiley heureux

0 Compliments
Message 6 sur 6
4 732 Visites