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.
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.
le 04-25-2011 06:26 AM
Bonjour,
Je voudrais réaliser un programme sous labview qui permet d'effectuer une acquisition de données, et appelle à la demande (sans rompre le Programme) un sous VI qui affiche un graphe de données et permet de le fermer (sans perdre les données).
Merci par avance
le 04-25-2011 09:52 PM
Bonjour N_Eden,
Merci d'avoir posté sur le forum National Instruments.
Il y a plusieurs manières d'arriver à faire cela en LabVIEW, alors je te propose une solution que je trouve élégante. Elle est basée sur les files d'attente. De mon VI principal j'utilise une file d'attente pour transférer mes données entre 2 boucles (une boucle d'acquisition et une boucle de traitement). J'utilise cette file d'attente pour récupérer mes données dans mon sous-VI de visualisation grâce à la fonction Aperçu du premier élément d'une file d'attente. Ainsi je récupère l'élément sans le supprimer de ma file d'attente. Pour bien te démontrer ce que je dis, dans mon VI principal je récupère le nombre d'élément généré par ma boucle d'acquisition et le nombre d'élément reçu dans ma boucle de traitement (ils doivent être égaux sinon c'est que je perds des éléments ;-).
PS: j'ai codé un peu vite et je n'ai pas géré complétement les erreurs
le 04-27-2011 06:25 AM
Je vous remercie pour votre convivialité. J'essayerai votre solution dès que possible et je vous répondrai (je viens de la déposer dans la discussion "Downconvert VI Requests" parce que je n'ai que la version labview 8.5).
Merci pour vos efforts
le 04-27-2011 09:27 AM
Voici le projet en LV 8.5
Pas besoin de passer par le forum Downconverter, il est possible d'enregistrer dans les versions précédentes (dans mon cas en LabVIEW 2010 je peux descendre jusqu'à 8.0).
So Enjoy 😉
le 04-27-2011 09:52 AM
Benjamin, je n'ai pas trouvé le projet dans le fichier zippé, je te serai reconnaissante de le réenvoyer.
Merci
le 04-27-2011 10:00 AM
Désolé voici le ZIP avec le projet LV en 8.5
le 04-28-2011 05:00 AM
Je te remercie pour la conversion.
J'ai exécuté le programme, sauf que quand je click sur "visualisation" le nombre généré ds le sous VI et différent de celui du VI principal (il s'incrémente mais reste inférieur)
le 04-28-2011 07:38 AM
Bonjour,
Oui et c'est tout à fait le comportement que mon programme doit avoir.
De ce que j'ai compris j'ai implémenté un programme qui:
- dans un VI principal transfert tous les éléments à une boucle de traitement (aucune perte, le nombre d'élément dans la boucle productrice et le même que celui dans la boucle consommatrice)
- dans un sous-VI vient afficher les données au moment où le sous VI tourne. Il est normal vu que tes VIs ne sont pas synchronisé que dans Visualisation du ai moins d'élément que dans le VI principal
D'après ta question j'en déduis que je n'ai pas due comprendre ce que tu souhaiter implémenter. De plus ce n'est qu'un exemple, à toi de le reprendre pour que celui-ci réponde complètement à ton cahier des charges. J'espère que tu as compris le principe mis en jeu.
N'hésite pas à me détailler ton cahier des charges et si tu as des questions
le 05-02-2011 04:38 PM
Je vous remercie pour l'exemple. Je pense que c'est moi qui n'ai pas compris l'idée de votre programme au début. Mais là je crois qu'il me faudrait l'adapter à mon exemple afin d'y voir mieux :).
J'ai une autre question dans le même contexte. Est-ce que c'est possible d'appeler un sous VI à partir d'un bouton sur le VI principal, introduire les paramètres nécessaires puis retourner à la face principale du programme ?
Merci
le 05-03-2011 06:28 AM
Bonjour,
"Est-ce que c'est possible...?" Tout est possible en LabVIEW
Il y a plusieur méthode pour faire ça, la plus simple étant le vi express Prompt User.
Mais le mieux c'est de créer un sous vi, de le configurer pour ouvrir sa face-avant (et la fermer après exécution), et de cabler les différents controles utiles sur le conecteur de sortie pour pouvoir les utiliser dans le vi principal. Pour ce genre de pop-up, on peut aussi changer l'apparence de la fenetre (propriétés du vi) en boite de dialogue.