Discussions au sujet de NI LabVIEW

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

contrôler dans le diagrame un booléen bouton "armement à l'appui"

Résolu !
Accéder à la solution

Bonjour,

 

j'ai une petite question dans la face avant j'ai un bouton arment à l'appui et dans le diagramme une boucle while dans lequel il y a une condition case contrôlé par le booléen donc quand je lance le programme dès que j'appui sur le bouton cela active la condition case une fois ce qui est ce que je souhaite

 

 

je voudrais pouvoir contrôlé ce booléen dans mon diagramme dans une structure séquence je voudrais "appuyer dessus" une fois,      en mettant juste un booléen TRUE sur une variable locale de ce booléen j'ai une erreur avec la flèche brisé à cause de "armement à l'appui" ce qui est logique car on ne peut pas garder la valeur constante true avec armement à l'appui, y a t il quelque chose pour simuler un "appui" sur le bouton dans le diagramme ? 

 

si ce n'est pas clair je créerais un vi en vitesse simplifiant le problème

 

 

using labview 2014, beginer on labview
0 Compliments
Message 1 sur 18
4 041 Visites

Salut Louis,

 

Quel est l'objectif final de ce passage à TRUE du booléen ?

Cela pourrait nous aider à t'aiguiller vers la meilleure solution 🙂

CLAMaxime -- Kudos are a great way to say thank you
0 Compliments
Message 2 sur 18
4 027 Visites
Solution
Accepté par l'auteur du sujet louis293

Bonjour,

 

Effectivement il n'est pas possible de faire une variable locale si tu as un armement.

Mais après un armement c'est quoi? C'est juste un reset d'un Etat après une action, ce que je veux dire par la il est possible de faire toi même ton propre armement, et donc avoir juste un booleen en "Switch" et des que tu as fait ton action, tu peux très bien à l'aide d'une variable local remettre ton booleen à faux, et ça fait comme si tu avais gérer un armement.

Nacer

Nacer M. | Certified LabVIEW Architecte

Message 3 sur 18
4 016 Visites

Contrôler du code avec une While, une Case et un Booléen ....

donc c'est du polling ... bof ...

c'est de l'événementiel, la structure Event est faite pour ce genre de chose.

0 Compliments
Message 4 sur 18
4 014 Visites

L'objectif est de déclencher la structure while+condition pour avoir le même effet que si l'on appui dessus sur la face avant mais le faire via le diagrame (en fait j'automatise une serie successive d'appui sur le bouton avec une strucutre sequence) 

 

mais j'ai un équivalent avec le conseil de Nacer_M, j'aurais pas dû poster sur le forum pour un truc aussi insignifiant que l'on peut facilement détourner mais je vous remercie

using labview 2014, beginer on labview
0 Compliments
Message 5 sur 18
4 004 Visites

Mais non rien n'est insignifiant!


Si tu as besoin d'aide hésites pas à poster, les gens qui répondent c'est qu'ils sont interressés ;).

Nacer M. | Certified LabVIEW Architecte

Message 6 sur 18
4 002 Visites

En effet, n'hésite pas à poster. Nous sommes contents d'aider 🙂

CLAMaxime -- Kudos are a great way to say thank you
0 Compliments
Message 7 sur 18
3 994 Visites

@Louis : " j'aurais pas dû poster sur le forum pour un truc aussi insignifiant "

 

Il n'y a pas de problème insignifiant. Le plus petit soucis fait bugger un code aussi facilement qu'un gros !

Et de toute façon, le forum est là pour ça Louis.

Message 8 sur 18
3 986 Visites

Si j'ai bien compris (pas certain !!) ... à chaque appui sur ton bouton tu aimerais exécuter successivement une séquence de différents code. Soit ... tu appuies une première fois, tu exécutes la portion de code A ... ensuite "wait" ... au deuxième appui tu "avances" et tu exécutes la portion de code B ... etc. Et si j'ai bien compris, tu cherches à réaliser ce séquencement via une structure séquence, des variables locales, des while et des structures case dans chaque sous-diagramme de ta structure séquence ? ... c'est ça ?

 

Si c'est ça ... il y aurait moyen d'utiliser une tout autre architecture ... sans structure séquence, sans locales ...

Je verrais bien un système producteur/consommateur. Dans la boucle producteur, une structure Event qui capture chaque appui sur ton bouton ... et qui à chaque fois, envoie une info à la boucle consommatrice pour lui indiquer, via une structure case, le code à exécuter (via un Notifier, on pourrait aussi envisager une Queue). Cette architecture te permettrait de réaliser ton besoin premier (toujours si j'ai bien compris ton besoin) ... mais te permettrait, si nécessaire, d'aller bien plus loin et de faire ce que tu veux .... revenir en arrière, reprendre la séquence au départ, et j'en passe .

 

Si je suis "dans le bon" sur ce que tu cherches à faire, j'aimerais "voir" ton code ... je pourrais alors te proposer une version qui à mon avis pourrait te plaire. Si je n'ai pas "parfaitement" compris ... explique ... et j'adapterai mon idée. Ce serait quand même pas mal de se passer de la structure séquence (anti-dataflow), des locales (beurk Smiley heureux ) et du polling dans les While-Case, il y a moyen de faire beaucoup plus joli.  Smiley clignant de l'œil

 

0 Compliments
Message 9 sur 18
3 961 Visites

bonjour ou ouadji,

 

merci de la réponse mais ce n'est pas exactement ça, en fait lorsque lance le programme il y a plusieurs bouton, chacune correspond à un action contrôlé par un case, par exemple dès que l'on appui sur le bouton "A" on execute quelque chose et dès que l'on appui sur "B" on éxécute quelque chose d'autre,ces deux boutons sont en armement à l'appui et dans une boucle while il y a un case pour chaque bouton.

 

Ces boutons servent à effectuer des actions de test de matériel, je souhaiterais automatiser la succession de test, donc j'ai un bouton start et dès que l'on appui dessus cela execute l'action A puis l'action de B en gros avec le bouton start cela automatise l'appui sur "A" puis l'appui sur "B" (en réalité il y a plus que juste deux boutons/appuis mais c'est un exemple)

 

je ne peu pas te passer le code exacte car cela appartient à l'entreprise mais si tu le souhaite je peu envoyer une version très très simplifié 

 

mais j'ai reussi à avoir un équivalent sans utiliser armement à l'appui (dans chacune des structures case il y a une instruction remettre le booléen à FALSE) donc je n'ai plus de problème mais je te remercie

using labview 2014, beginer on labview
0 Compliments
Message 10 sur 18
3 950 Visites