Discussions au sujet de NI LabVIEW

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

labview

Bonjour

 

j ai un sous VI dans mon programme et  je veux que ca reviens dans mon programme des éléments normales pas un sous vi .

S il vous plait aidez mou

 

 

cordialement

0 Compliments
Message 1 sur 10
3 911 Visites

Tu as dans ton code principal un sous-VI ... et tu aimerais que ce sous-VI ne soit plus un sous-VI. (mais du code)

 

1) tu ouvres le sous-VI et tu fais un "copier" de la totalité de son code

2) tu retournes dans le code principal, tu supprimes le sous-VI

3) à la place du sous-VI ... tu fais "de la place" ... à définir suivant la taille graphique du code qui était contenu dans le sous-VI

4) là ou se trouvait le sous-VI tu fais "coller" du code (étape 1)

5) tu reconnectes le code au code du VI principal ... comme était connecté le sous-VI

6) éventuellement tu supprimes les Contrôles-Indicateurs qui étaient à l'origine les entrées-sorties du sous-VI

7) tu fais un petit nettoyage-propreté de l'ensemble

😎 en principe, c'est ok  Smiley clignant de l'œil

 

s'il existe "une autre méthode" ... je suis preneur, mais perso, je ne la connais pas.

 

En espérant que tu n'as pas une centaine d'instances à remplacer.

Je suis certain qu'il y aurait possibilité de faire ça par scripting ... mais là ... ce serait d'une "certaine complexité". (en réalité ce serait un code plutôt "chaud")

Je viens d'y réfléchir quelques instants ... ce serait un beau projet à réaliser ... mais quelle en serait l'utilité ???

Personnellement, j'ai déjà eu le cas ... mais c'est excessivement rare.

Je suis allé voir sur LabVIEW Idea Exchange, et apparemment c'est une idée (demande de fonctionnalité) qui n'a jamais été proposée.

Message 2 sur 10
3 834 Visites

bonjour à vous, j'aimerai comprendre le "pourquoi?".

Si le sous-vi existe, c'est surement pour faire un code modulaire, c'est une fonctionalité. Je comprends le but de faire une sous fonction, donc un sous-vi. Mais pourquoi ne plus le vouloir?

 

Il y a plusieurs "bonnes" raisons, souvent dans un objectif de performance extrême : par exemple dans le paragraphe de l'aide >> SubVI Overhead

http://zone.ni.com/reference/en-XX/help/371361H-01/lvconcepts/vi_execution_speed/

 

  1. il y a la solution proposée par ouadji
  2. sinon Another way to minimize subVI overhead is to turn subVIs into subroutines
  3. A third way to minimize subVI overhead is to inline subVIs into their calling VIs. When you inline a subVI, LabVIEW inserts the compiled code of the subVI into the compiled code of the calling VI. If you then make changes to the subVI, LabVIEW recompiles all calling VIs of that subVI to include those changes. Essentially, inlining a subVI removes the need to call the subVI at run time. Instead, LabVIEW executes the subVI code inside the compiled code of the calling VI.

 

Mais avant de répondre "inline subVIs", j'aimerai être sûr de comprendre.

en effet, cf l'aide de LabVIEW Certaines des astuces suivantes vont à l'encontre des bonnes pratiques de conception de LabVIEW ; vous ne devriez les utiliser que pour réduire l'utilisation de la mémoire lorsque vous travaillez avec des ensembles de données de taille particulièrement importante.

http://zone.ni.com/reference/fr-XX/help/371361M-0114/lvconcepts/memory_management_for_large_data_set...

A+

 

 

banniere Luc Livre NXG Champion.png

Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion

MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group

0 Compliments
Message 3 sur 10
3 823 Visites

@ Luc : " il y a la  solution  proposée par ouadji "

 

Personnellement, je n'ai pas le sentiment d'avoir proposé une solution.

Je me suis simplement borné à répondre à la question de départ, soit : "comment "détricoter"un sous-VI ?"

 

Mais effectivement, si Maroua nous explique "le pourquoi" .... peut-être pourrons-nous lui proposer d'autres alternatives.

 

Et en effet, ce "pourquoi" est intéressant. Je serais également curieux d'en connaître la réponse.

 

 

0 Compliments
Message 4 sur 10
3 814 Visites

salut ouadji, dans l'aide de LabVIEW il y a 3 réponses à ce type de question. La première de l'aide est "la réponse que tu as formulé" (pour moi répondre à une question ou proposé une solution = c'est idem). je suis en phase avec toi. bonne journée A+ Luc

banniere Luc Livre NXG Champion.png

Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion

MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group

0 Compliments
Message 5 sur 10
3 798 Visites

bonjour Luc,

 

oui ... ok ...  terminologie et ergotage de ma part.

réponse, solution ...ok, je suis d'accord avec toi.

Bonne journée également.

0 Compliments
Message 6 sur 10
3 791 Visites

en fait ... Je m'explique,

 

Je pense que nous avons, toi et moi, perçu la question de façon différente.

La question étant : comment remplacer un souVI par son propre code.

Tu sembles avoir vu dans cette question un but de recherche de "vitesse" (oui, pourquoi pas) ... d'où tes solutions en direction de "inline" ou " priorité subroutine".

En ce qui me concerne, pas du tout ! Le fait de vouloir remplacer un sousVI par son propre code ... n'est pas obligatoirement une recherche de vitesse.

Mais quel autre but alors ? .... ça, peu importe, la réelle finalité de cette manip appartient à celui qui a posé la question.

(ceci dit, ta question "mais pourquoi faire cela ? ... était très intéressante (je l'ai mentionné) ... mais ce n'est pas l'objet premier)

J'ai donc répondu à "l'objet premier" de la question ... sans extrapoler sur la finalité  ... d'où ma réponse  Smiley clignant de l'œil

 

voila, respect à toi Luc, et encore une fois, une belle journée pour toi.

 

 

 

0 Compliments
Message 7 sur 10
3 784 Visites

Salut ouadji ! Nous sommes en phase 🙂

En fait, Je ne suis pas sûr d'avoir compris la question de maoura : j ai un sous VI dans mon programme et  je veux que ca reviens dans mon programme des éléments normales pas un sous vi .

 

Des éléments normales..., c'est avec ta réponse que j'ai interprété la question et ta réponse me va très bien.

 

Maoura a peut-être une bonne raison de vouloir faire cela, mais j'aimerai savoir laquelle. Avant de répondre à "comment" j'aime savoir "pourquoi", car il va influencer ma réponse première. Surtout lorsque la réponse ne va pas dans le sens "des règles habituelles".

A+ luc

banniere Luc Livre NXG Champion.png

Luc Desruelle | Mon profil | Mon blog LabVIEW | Auteur livre LabVIEW : Programmation et applications - G Web
Certified LabVIEW Architect (CLA) & Certified TestStand Developper (CTD) | LabVIEW Champion

MESULOG - LinkedIn site | NERYS - NERYS Group
| directeur CEO MESULOG
| CODIR - NERYS group

0 Compliments
Message 8 sur 10
3 771 Visites

Bonjour,

CEla peut être du à un abus des sous vi, rendant difficile la compréhension du programme et /ou augmentant de manière non négligeable son débugage.


Je sais qu' à mon pasage du CLD, j'avais eu une remarque en ce sens, ou une fonctionnalité n'avait pas en soit d'intérêt à être dans un sous vi ( à noter que je l'avais mis dasn un sous vi pour faire une belle icone plustot que 4/5 fonctions qui se suivent ^^)

 

Bonne journée à vous.

“En science, la phrase la plus excitante que l'on peut entendre, celle qui annonce des nouvelles découvertes, ce n'est pas "Eureka" mais c'est "drôle"
Isaac ASIMOV
0 Compliments
Message 9 sur 10
3 767 Visites

et moi ça m'est déjà arrivé de faire un sousVI ... uniquement pour que la code tienne sur "un écran".

Un sousVi dont le but est uniquement graphique (c'est assez rare, mais cela m'est déjà arrivé)

 

Quant au "pourquoi" de la question de Maroura ...

C'est peut-être uniquement pour "savoir" comment on fait.

 

simulation :

 

- tiens ... je me demande si on sait faire ça ? et si oui, comment ?

+ bein oui, on sait ... on fait comme ça ! ... pourquoi veux-tu faire ça ?

- Je ne veux pas le faire, je veux juste savoir comment on fait !

 

smiley-word-smiley-mdr-img.gif

0 Compliments
Message 10 sur 10
3 762 Visites