Discussions au sujet de NI LabVIEW

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

Allumer LED bouton argent sans appuyer

Bonjour,

 

J'aimerais pouvoir allumer/éteindre la LED qui se trouve dans le bouton poussoir argent clip_image002_20110617113353.png sans avoir besoin d'appuyer sur le bouton.

 

Est-ce que c'est possible ? Je cherche depuis cette après-midi sans succès.

 

Merci d'avoir lu 😉

0 Compliments
Message 1 sur 13
5 698 Visites

 

toto.png

 

une méthode parmis 3 ou 4

ci-joint ... (LV2013)

 

[EDIT]

mais je me demande si j'ai bien compris ???

peut-être aimerais-tu changer la "couleur" ... mais sans chnager l'état du bouton ...

J'ai relu ta question, et j'ai un doute !

[/EDIT]

 

 

Message 2 sur 13
5 694 Visites

Wouahouh merci pour la réponse rapide !

 

Tu as a bien répondue à mon probléme, je l'aurais pas trouvé.

 

Merci beaucoup et bonne journé !

0 Compliments
Message 3 sur 13
5 675 Visites

Vi server te permettra bien des choses pratiques

Plus d'info sur Vi server


0 Compliments
Message 4 sur 13
5 670 Visites

Strictement parlant, on appuie sur le bouton quand même (par programmation), on ne change pas seulement la LED 🙂

Retoucher la LED seule est d'ailleurs impossible sur ce bouton par programmation 😕

Eric M. - Senior Software Engineer
Certified LabVIEW Architect - Certified LabVIEW Embedded Systems Developer - Certified LabWindows™/CVI Developer
Neosoft Technologies inc.

0 Compliments
Message 5 sur 13
5 646 Visites

3 compliments pour le noeud de propriété value ?   Smiley tirant la langue

 

merci à tous ... mais ... c'est une chose assez basique pourtant.

 

allez ... 3 autres ... Smiley heureux

 

 

toto.png

Message 6 sur 13
5 633 Visites

Salut ouadji : la grande forme! Peux-tu nous expliquer les avantages et inconvénients liés à chaque méthode, ainsi que la version que tu conseilles? Smiley très heureux Merci 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 7 sur 13
5 590 Visites


mon choix serait :


A) la locale (rapidité)

elle fonctionne dans tous les threads, son exécution ne sera donc pas ralentie si l'UI est "busy".

De plus, une locale provoque une copie des données uniquement si la face avant est en mémoire.


B) le noeud de propriété "direct"

C) le noeud de propriété "indirect" (avec Ref en entrée)

Les noeuds de propriétés se synchronisent sur le thread interface utilisateur. Or, l'interface utilisateur n'est pas multi-thread (seule l"UI est mono-thread)

donc si l'UI est occupée, elle retardera l'éxécution du noeud de propriété.

Autre inconvénient du noeud de propriété ...la face avant est d'office chargée en mémoire.

Un noeud de propriété provoquera donc toujours une copie des donnés.


D) Control value set (by name)

en principe LV doit rechercher la correspondance nom-référence, il serait logique que ce noeud soit plus lent.

Mêmes inconvénients que pour un noeud de propriété "classique", direct ou indirect avec Ref d'entrée.

délais d'exécution si UI busy et copie d'office des données.


E) Get index by name + set by index

cela implique, une recherche de correspondance nom-index, ensuite une recherche de correspondance index-référence ...

tout ceci prend du temps, à mon avis cette méthode sera la plus lente (à vérifier)

 

D et E permettent par contre un code plus "souple". on peut changer de "cible" uniquement en changeant de "nom".

Je le fais moi-même, avec un tableau de noms, une boucle For indexée, et un "value set by name" dans la boucle.

Cela dépend des besoins.

 

Attention : variable locale et noeud de propriété ne protège pas des "race condition"

de plus pour une locale, il n'y a aucune gestion de l'erreur.

 

donc pour moi, le gagnant : la locale (rapide, efficace)

mais ... uniquement si la cible est unique ... et attention aux "race condition".

Si cibles multiples, le "value set by name" est bien pratique (on pourrait aussi faire autrement ... mais alors, on est parti pour du scripting)

 

 

autres choses Luc ?  Smiley heureux

 

 

Révélation
Luc ... je lis tes publications, mais oui !  Smiley heureux ... on ne passe pas à côté d'un "papier" de CLA ! Smiley tirant la langue

 

 

 

Message 8 sur 13
5 579 Visites

et bien non,

 

"Set Value by Index" offre de meilleurs performances qu'un "Noeud de propriété Value".

 

 

2015-01-19_235803.png       byindex.png

 

(PS : j'ai oublié les SR sur la ligne d'erreur  Smiley gêné ... et je n'ai envie de ré-écrire le code  Smiley tirant la langue )

 

maintenant ... meilleures performances en termes de quoi ? ... gestion mémoire, vitesse

Perso, je pense d'un point de vue vitesse car cette méthode semble ne pas avoir besoin du VI Server.

 

 

 

 

Message 9 sur 13
5 571 Visites

super!!!, rien à dire, je suis d'accord avec toi.

Pour être honnete, je n'utilise pas "Set Value by Index" et je ne sais pas vraiement ce qu'il apporte.

A regarder

+1

 


ouadji a écrit :

 

 

autres choses Luc ?  Smiley heureux

 

 

Révélation
Luc ... je lis tes publications, mais oui !  Smiley heureux ... on ne passe pas à côté d'un "papier" de CLA ! Smiley tirant la langue

  

 


 

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 10 sur 13
5 556 Visites