Discussions au sujet de NI LabVIEW

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

Utilisation des variables

Résolu !
Accéder à la solution

Bonjour,

 

Je viens vous demander quelques conseils pour l'utilisation des variables : Faut-il préférer des noeuds de propriétés par rapport aux variables locales ? pourtant il me semblerait que la première nécéssite une référence + un noeud de propriété alors que la second il n'y a seulement une seule variable. D'après qq infos la première solution est préconisée, et vous que pensez-vous ?    

0 Compliments
Message 1 sur 42
3 889 Visites

GSXR100045 a écrit :

Bonjour,

 

...pourtant il me semblerait que la première nécéssite une référence + un noeud de propriété


Salut,

Tu parles d'un noeud de propriété par référence? 

Edit:

exp.png

Reg
0 Compliments
Message 2 sur 42
3 886 Visites

 

 

Oui de ce genre implicite ou explicite cela dépend des cas en tout cas ce sont des Noeuds de propriétés alors qu'avec la variable locale c'est beaucoup plus simple, au niveau des situations de compétitions l'un ne vaut pas mieux que l'autre, la mémoire l'un utilise deux variables par rapport à la variable locale alors pourquoi préférer les noeuds de propriétés par rapport au variable locale ? C'est plus compliqué à faire peut-être, + c'est compliqué et obscur + c'est cher et complimenté sans doute ?     

 

Noeud.JPG

0 Compliments
Message 3 sur 42
3 881 Visites

Excuse moi,

 

 

Je n'avais pas vu que c'était R3g, Salut   

0 Compliments
Message 4 sur 42
3 869 Visites

salut si tu cherches des infos sur locale VS noeuds de propriétés VS terminal, je te conseille la lecture de

 

blog : Techniques Programmation avancée LabVIEW : Gestion des données FGV – AE - vers DVR

ou Technique de programmation avancée : gestion des données sous LabVIEW de la locale vers la DVR

 

ou LabVIEW noeud bloquant - Thread User Interface - Root Loop - priorité - interruption 

 


GSXR100045 a écrit :

 

Faut-il préférer des noeuds de propriétés par rapport aux variables locales ?    


Pour modifier juste la donnée dans un même diagramme (dans l’ordre) : terminal / variable locale / nœud de propriété.

 

Le nœud de propriété va engendrer des lenteurs car dans thread UI (le ratio est de l'ordre de 100 à 300 x plus lent en écriture). Par contre le nœud de propriété peut permettre de faire un value signaling + chainage erreur.

Quand vous mettez à jour une commande avec la même valeur plusieurs fois de suite, une variable locale ou un terminal de commande ne redessine pas la commande sur la face-avant à chaque fois (ce qui est le cas avec le noeud de propriété).

Il y a des duplications des données avec locale ou noeuds de propriétés.

 

Bonne lecture

A+

banniere Luc Livre NXG Champion.png

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

Message 5 sur 42
3 842 Visites

De plus dans ton exemple, le close référence n'est pas utile (ne pas faire de close sur une constante de référence)

Quand faut-il fermer une référence sous LabVIEW?

 

The use of a close operator on a control reference (generated from a control reference constant) is a NULL operation in LabVIEW. When the VI that calls the control reference constant becomes idle, LabVIEW automatically cleans up and disposes the reference. Calling the close does not generate an error

A+

banniere Luc Livre NXG Champion.png

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

0 Compliments
Message 6 sur 42
3 840 Visites

Perso, j'étais totalement anti-locale (même poubelle, avec la structure séquence Smiley heureux )

 

Je n'ai pas changé d'avis à propos de la sructure séquence,

 

mais en ce qui concerne la variable locale .... j'ai un peu élargi mon champs de vision.

 

Cela reste malgré tout quelque chose que j'utilise toujours après large réflexion (attention au flux, et aux conditions de compétition)

 

mais, parfois, je suis surpris d'en trouver une (ou deux) dans certains de mes codes.

 

Utilisées de façon "intelligente" (et certainement pas en les semant à tous vents) ...

 

elles sont efficaces, et surtout rapide. (à part le terminal lui-même, difficile de faire plus rapide)

 

et quand on a besoin de modifier par programmation la valeur d'un d'un Controle (pas un Indicateur) ... la locale, c'est pas mal.

 

petit avis perso ... en passant par ici.

Message 7 sur 42
3 831 Visites

Bonjour,

 

Cela me fait plaisir de votre intervention, mais désolé de vous décevoir le code ce n'est pas de moi c'est la correction d'un CLD 16 (en copie ci-joint), il me semblerait qu'avec "VI Analyzer ou Desktop Execution Trace", il ne nous tolère que quelques variables locales (2 ou 3), il me semblerait aussi que la DVR n'est pas au programme (je n'ai pas vu au CORE 3). C'est pour cette raison ils ont supprimé toutes les variables locales, je me trompe ou c'est une correction qui n'est pas encore optimisée ? Avez-vous le regret de critiquer une correction qui est censée de nous préparé au mieux les certifs ?              

0 Compliments
Message 8 sur 42
3 816 Visites

Meci Desruelle_luc pour la qualité de la documentation et les explications très claire. je n'ai pas tout lu,  mais le chapitre qui traite le sujet de la discussion est top 🙂 (apartir de la page 22):

http://www.mesulog.fr/download/JournTech2013_MESULOG_ProgAvanceeLabVIEW_GestionDonnees_VNI.pdf

 

 

Reg
Message 9 sur 42
3 829 Visites

Bonjour GSXR, la question est pour moi?


GSXR100045 a écrit :

Avez-vous le regret de critiquer une correction qui est censée de nous préparé au mieux les certifs ?              


 

 

banniere Luc Livre NXG Champion.png

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

0 Compliments
Message 10 sur 42
3 803 Visites