Discussions au sujet de NI LabVIEW

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

Execution de plusieurs sous VI dans un ordre précis !

J'ai vu qu'avec les propriétés de VI il était possible de changer les priorités d'executions cependant cela ne change en rien l'ordre d'affichage à l'écran :s 

 

J'aimerai pouvoir définir l'ordre d'affichage à l'écran pour afficher l'interface du sous-VI vitesse, pour la noter, puis les accéléro, puis le bilan par exemple. Et visiblement les priorités n'ont pas changé grand chose c'est toujours le même ordre qui s'affiche :'( 

0 Compliments
Message 11 sur 25
1 488 Visites

Ah merci ! je vais voir de suite 🙂 merci ^^

0 Compliments
Message 12 sur 25
1 488 Visites

Je ne comprends pas du tout... tout d'abord il y a une erreur et je ne peux pas exécuter à priori il manquerait des sous-VIs mais bon ce n'est pas trop important. J'ai essayé de comprendre le code, d'appliquer quelques blocs isolés sur mes sous-VIs etc mais je ne comprends rien au câblage, et ne comprends pas ce que cela doit faire :3.

 

J'essaie pourtant, j'ai compris comment utiliser ces noeud de propriétés et de méthode mais je ne comprends pas comment m'en servir correctement. Par exemple je voulais mettre mon sous-VI vitesse, ensuite lui mettre la méthode exécuter, et après ? Il ne se passe rien ^^ 

0 Compliments
Message 13 sur 25
1 474 Visites

J'ai réussi ! 

 

Mais finalement je me suis servi de structure événements. J'ai mis en entré un bouton suivant ou précédent et j'ai lié au déclenchement d'un Sous-VI.

 

Merci pour votre aide dans tous les cas, ça m'a donné la direction à suivre de fil en aiguille ! 

 

Cordialement 

0 Compliments
Message 14 sur 25
1 465 Visites

Si tu peux, fourni le bout de code qui va avec ta solution, ca aidera le suivant, qui se pose les mêmes problématiques.

 

 

En l'état, bien sur mes Vis ne sont pas foncitonnels, mon projet en contient plus de 6000, donc je fournis que la brique pour "inspiration".


Pour l'utilisation, il te suffit de modifier la référence statique du VI, ensuite l'exécution sur un start, et invisible car je met la face avant en hidden par défaut.
Et au moment opportun, tu peux la faire apparaitre et /ou disparataitre avec le VI visible en modifiant les paramètres de cette fenetre en cours d'exécution.

Enfin le Stop arrête proprement le VI et attends que celui-ci soit arrêter pour rendre la main.


Cdt,

Michael

“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 15 sur 25
1 460 Visites

Bonjour,

 

Je ne pense pas que ce soit intéressant que je fournisse le code, surtout qu'après réflexion il va y avoir des problèmes (j'aimerai que les sous-VIs s'exécutent tous mais ne s'affiche que après 1 par 1) Bref, je n'ai fais que des boutons suivant dans un évênement x) c'est vraiment plus que basique :3 (adapté à mon niveau ahah 🙂 ) mais du coup j'ai toujours des souçis ^^

0 Compliments
Message 16 sur 25
1 448 Visites

Ce que je veux moi c'est tout lancer à l'acquisition (l'essai dure 0,6s) et que les données soient en mémoire et non supprimées, et que après en appuyant sur les boutons suivant etc je puisse consulter les pages une par une x) au final avec mon système actuel... les VIs ne s'exécutent pas sans les boutons "suivant" donc... ça fonctionne pas 😛 

Et aussi je ne sais pas comment fermer les VIs à chaque fois, le suivant s'ouvre à chaque appui sur le bouton "suivant" mais au final l'ancien reste et ça encombre énormément...

0 Compliments
Message 17 sur 25
1 447 Visites

( ça fait beaucoup 6000 VI... 😮 )

0 Compliments
Message 18 sur 25
1 446 Visites

Bonjour,


A partir des VI que je t'ai fourni, il tez suffit d'utiliser la procédure de "start" pour chacun de tes sous VI.

--> Ainsi cela lance l'exécution de tes sous vis sans faire apparaitre la face avant, et sans bloquer ton main. (tu mets ca par exemple dans le case "init" d'une machine d'état.


Mon programme te permet de renseigner des champs ci besoin avant l'exécution via le noeud de propriété "Ctrl Val.set", il suffit de mettre le nom exacte de ta commande à renseigner, et la valeur souhaitée.


Après lancement, je vérifie qu'il n'ya pas eu d'erreur dnas mon sous vi en récupérant le cluster d'erreur qui s'appelle dans mon cas "error IO".

 

 

Ensuite quand tu arrives au stade oùù tu veux consulter tes sous.vi, tu utilises la fonction visible, qui va te permettre de faire apparaitre chaque face avant sans interrompre leur exécution, et les faire disparaitre ensuite.

 

Enfin soit tu fais le nécessaire pour que l'opérateur arrête chaque sous vi après avoir visualiser la face avant, sinon tu utilses la fonction STOP qui va actionner un ecommande booléenne "STOP" présente dans chacun de tes sous vi pour entrainer un arrêt propre.


Voilà, je ne peux pas faire plus sans faire le boulot ^^

“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 19 sur 25
1 435 Visites

Je vous remercie, je comprends déjà un peu mieux vos VI.

J'étais perdu avec les erreurs et le noeud de propriété , je ne suis pas sur de l'utiliser au final...

 

J'essaierai de lancer les "start" en mettant tous les Sous-VIs dans un main dans l'après midi du coup je m'occuperai de ça. 

 

Pour le "Stop" j'avais déjà ajouter cette commande je comprends à peu près comment m'en servir. 

 

Après pour la fonction visible je m'en suis toujours servi pour des petits éléments tel que des LED, des indicateurs string etc ... j'essaierai pour une face complete alors... 

 

Je regarde à tout ça cet après-midi, je n'avais pas songé à utiliser "visible" pour des faces avants. J'organiserai mon code pour tout ça !

 

Merci encore, je tiens au courant de l'avancement 🙂

0 Compliments
Message 20 sur 25
1 431 Visites