Discussions au sujet de NI LabVIEW

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

tableau polymorphe

 

Bonjour à tous,

 

Je travaille avec Labview 8.2.

Je réalise un programme capable de gérer 4 instruments identiques avec lesquels je communique en rs232. Il y a de nombreux paramètres à gérer pour chacun d'entre eux et je pensais réaliser un tableau avec tous ces différents paramètres. Ma question (et mon problème):

Est il possible sous Labview de faire un tableau polymorphe, càd avec des éléments de type différents (chiffres en virgule flottante, booléens, nom de port Visa, chaînes de caractères, etc....)?? J'ai aussi pensé à un cluster mais ça n'est pas comparable à un tableau, et il y moins d'outils et de fonctions applicables.

 

Merci d'avance,

Christophe

0 Compliments
Message 1 sur 8
3 550 Visites

duplicate, réponse reçue ici


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 2 sur 8
3 545 Visites

Bonjour Christophe, 

 

Un tableau est un ensemble d'éléments de même type. Il n'est donc pas possible d'implémenter ce que tu souhaite, ou en tout cas pas directement. 

Ce que je te propose c'est de créer un cluster contenant les différents éléments nécessaires puis de créer un tableau de ce cluster.

Une autre manière de faire est de créer un tableau de chaîne où ta chaîne a un certain formalisme afin de contenir l'ensemble des informations.

Finalement, il est possible de transformer tes données en type Variant et de manipuler ce type (cela fait appel à des connaissances avancés dans LV). 

 

Bon courage 

    Benjamin R.


Senior LabVIEW Developer @Neosoft


0 Compliments
Message 3 sur 8
3 543 Visites

@BenjaminR wrote:

 

Un tableau est un ensemble d'éléments de même type. Il n'est donc pas possible d'implémenter ce que tu souhaite, ou en tout cas pas directement. 

Ce que je te propose c'est de créer un cluster contenant les différents éléments nécessaires puis de créer un tableau de ce cluster.

 


C'est ce que je me suis dit au début, mais c'est faut! LVOOP permet de faire ça!


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 4 sur 8
3 541 Visites

Ce n'est pas faux. En OO tout comme dans LabVIEW traditionnel un tableau est  un ensemble d'éléments de même type et le sera toujorus. Lorsque tu es en OO il est vrai que tu peux créer un tableau contenant différentes classes mais ceci si et seulement si il existe un lien de parenté entre elles. En d'autres termes tu crée un tableau d'élements découlant du même type, à savoir la classe parent. Pour preuve la couleur du fil de ton tabeau 😉 

    Benjamin R.


Senior LabVIEW Developer @Neosoft


0 Compliments
Message 5 sur 8
3 524 Visites

 

Bonjour et merci à tous pour vos réponses rapides et efficaces!!

 

C'est bien ce que je pensais, il n'est pas légitime de faire un tableau avec des données dont le type n'est pas le même!!

- Pour les clusters, j'ai tenté l'utilisation de ces derniers, mais comme je l'avais dit, les outils de manipulation des clusters ne sont pas aussi élaborés que ceux des tableaux, et leur manipulation est plus lourde aussi.

- Pour la prog orienté objet, je vois bien l'idée, créer une classe spécifique, etc.... mais le temps m'est compté. Peut être lorsque j'aurai plus de temps.

- Enfin, pour les variants, je ne sais pas trop en quoi cela consiste. Si vous pouviez m'expliquer brièvement svp.

 

Merci encore et bonne continuation

Christophe

 

0 Compliments
Message 6 sur 8
3 502 Visites

Bonjour, 

 

Je t'invite à lire ce lien pour en savoir plus sur les variants. 

Concernant les VIs dont tu pourrais avoir besoin je te conseil de jeter un oeil dans vi.lib\Utility\VariantDataType.

 

Si tu ne connais pas les variants et que tu manque de temps je te conseil de mettre en forme les informations dans une chaîne de caractère, type langage à balise, et crée ton propre parser afin de récupérer tes info.

    Benjamin R.


Senior LabVIEW Developer @Neosoft


0 Compliments
Message 7 sur 8
3 495 Visites

Il faut vraiment qu'on arrête un de ces deux threads!

Il y a la moitié des réponses dans chacuns....

 

Répondez dans l'autre SVP : http://forums.ni.com/t5/LabVIEW/tableau-polymorphe/m-p/2023250#M662967


We have two ears and one mouth so that we can listen twice as much as we speak.

Epictetus

Antoine Chalons

0 Compliments
Message 8 sur 8
3 491 Visites