From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Discussions au sujet de NI LabVIEW

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

Contrôle personnalisé (booleen commande et indicateur)

Oui je sais trop de questions désolé

 

Ton VI me semble bien, j'étais aussi en train de modifier le mien et j'avais pensais rajouter quelque chose pour que :

- Quand on est en On, qu'on clique sur Off, automatiquement le bouton ce ment "en attente de Off"

- Inversement

 

Ainsi on n'a plus qu'a gérer les état ON et OFF avec le numérique déroulant. Ce qui simplifierai l'utilisation je pense. Le problème c'est que je suis obligé de garder les boutons dans le sous VI et pas seulement les références (puisque pour savoir si on à appuyé sur ON il faut la valeur du booleen et avec un bouton de type "OK" on ne peut pas utilisé la propriété "valeur").

3.png

0 Compliments
Message 21 sur 30
1 439 Visites

Attends attends !!!

 

Tu nous as dis que tu voulais changer l'état intermediaire de ton bouton rien que après être sur que ton action été finie d'ou le fait qu'il y est 4 états à controler !!! Si tu fais un changement automatique d'état (entre ON et OFF par exemple) tu n'attendras pas que ton action extérieure soit fini pour passer à OFF totalement donc tout cela ne servira plus à rien !

 

La j'avoue que tu m'as perdu :manmad:

----------------------------
-- Bastauss -- CLA/CTD --
----------------------------
0 Compliments
Message 22 sur 30
1 435 Visites

Pardon je me suis peut être mal exprimé^^

 

Oui je veux afficher Off seulement quand je suis sur que la machine est à Off ( en gros). Mais par contre quand je suis sur On et que je clique sur Off pour éteindre, je passe instantanément dans l'état " en attente de Off" donc vers en haut orange en bas. Les états avec les couleurs oranges sont des états qui ne nécessitent pas de vérification puisque quand je suis sur On et que je clique sur Off je suis forcement " en attente du vrai OFF)

0 Compliments
Message 23 sur 30
1 432 Visites

Le sous vi clarifie ton code mais il ne te permet que de changer l'état de ta paire de bouton. C'est à toi dans le programme principal à gérer l'évènement j'appuie sur OFF. Dans ce cas la tu mets de suite ta paire en position ON OFF et dès que t'es sur que tout es sur OFF tu passes à OFF. C'est ce que je fais dans mon programme en simulant une attente entre le moment ou j'appuie sur OFF et le moment ou la paire est vraiment sur l'état OFF.

 

Ce que j'essaye de te faire comprendre c'est que tes évènements doivent être géré forcement par le programme principal.

 

C'est plus clair ?!?

 

PS : si tu mets tes controles dans le sous VI ils n'apparaitront pas sur ta face avant principale !

----------------------------
-- Bastauss -- CLA/CTD --
----------------------------
0 Compliments
Message 24 sur 30
1 427 Visites

Oui oui je comprends que je dois gérer les événements dans le VI principal mais pour l'alléger encore plus je souhaitais que le numérique déroulant ne prenne plus que OFF et ON et que les états "en attente" soit gérés dans le sous VI MAJ après un clic sur le bouton. Ça aurait été possible si on avait pu récupère la valeur du bouton par sa référence, or on ne peut pas avec l' action mécanique que j'utilise. 

 

Mais la pour le faire ça complique pas mal car il faut prendre la valeur du bouton en entrée du sous VI et traiter dedans avec une conditions vrai faux etc (image précédant).

 

Merci pour ta solution qui est déjà très bien !

0 Compliments
Message 25 sur 30
1 421 Visites

Juste pour info :

Creating New Front Panel Objects with LabVIEW XControls

Olivier L. | Certified LabVIEW Developer


0 Compliments
Message 26 sur 30
1 409 Visites

Bonjour J'ai un petit problème moi aussi.

Je peux effectivement renommer le texte du booléen mais vu que je vais avoir un nombre conséquents de booléens j'aurais voulu le ranger dans un tableau de booléens et utiliser un tableau de strings en entrée et renommer chaque booléen 1 à 1 en indexant mon tableau de string.

Si vous avez une piste je suis preneur .

Merci

 

0 Compliments
Message 27 sur 30
839 Visites

Bonjour,

 

Voici un code qui doit remplir ton besoin. Il sert juste de démonstration, il est à personnaliser en fonction de ton besoin, et est perfectible!

Rename Boolean text.png

J'ai un ensemble de boutons booléens.

Je viens récupérer l'ensemble des Contrôles de ma face avant grâce aux noeuds de propriété.

Puis je viens regarder les labels de mes contrôles, je peux alors faire une sélection sur leur nom (ici, je chosis de détecter les boutons avec un label Ok ou NOK, et je ne m'occupe pas des autres), puis, en fonction du bouton identifié, je viens changer le texte booléen.

Les points importants:

- Il faut transformer le type "Control" en type "Boolean" pour avoir accès à la modification du texte boléen.

- Si tu as des commandes qui ne sont pas des booléens, mais qui ont un texte d'identification identique, il faudra aussi faire une sélection sur le type de commande, pas seulement sur le label.

- Ici, j'ai utilisé la fonction "Scan string for tokens" pour me simplifier le filtrage, il faut voir si c'est celle qui correspond le mieux à tes contraintes d'identification des boutons qui t'intéressent.

- Les contrôles dans le tableau sont triés dans l'ordre de création des commandes, pas selon leur nom.

 

0 Compliments
Message 28 sur 30
810 Visites

Bonjour merci pour l'explication, pour ma part j'ai mes contrôles dans une commande onglet.

j'ai un souci pour câbler la constante spécifique en booléen aurais tu une piste?

Merci d'avance

0 Compliments
Message 29 sur 30
797 Visites

Bonjour,

 

Tu as utilisé une fonction "en classe générique", or il faut utiliser la fonction "en classe spécifique", juste à côté sur la palette Smiley clignant de l'œil

Olivier L. | Certified LabVIEW Developer


0 Compliments
Message 30 sur 30
795 Visites