Discussions au sujet de NI LabVIEW

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

programation calibrateur

Bonsoir à tous,

J'ai un soucis deprogrammation je ne sais pas quels éléments utiliser. Je dois créer un vi qui permette de programmer un calibrateur en plusieurs  étapes définies par l’utilisateur. Par exemple lui donner l’instruction de simuler une résistance de 1000 ohms pendant 4 mn puis une température de 200°C pendant 20 mn.

J’ai déjà obtenu des résultats avec le vi que je  joins. Cependant en utilisant la structure séquentielle je suis obligé de « créer » moi-même chaque étape. Pour la suite j’aimerais que le vi soit sous la forme d’un menu avec une première commande qui permette à l'utilisateur de déterminer le nombre d’étape du programme, un menu avec le numéro de chaque étapes que l'on souhaite utliliser et qui permet ainsi en choisissant telle ou telle étape de lui associer une instruction. Les autres commandes permettraient de choisir quelle instruction du calibrateur on souhaite utiliser pour telle ou telle étape.

Je joins un schéma qui sera peut-être plus explicit que mes explications. Toutes vos idées sont bonnes à prendre.

Je vous remercie d'avance pour vos réponse 

0 Compliments
Message 1 sur 5
4 094 Visites

voici le schéma de la face avant que je souhaiterais obtenir 

0 Compliments
Message 2 sur 5
4 093 Visites

Il est clair qu’une simple séquence à plusieurs étapes n’est pas une bonne solution pour les besoins de votre application. L’architecture d’une machine à état (voir explications et schéma sur http://www.ni.com/tutorial/14120/fr/ -- à noter que dans votre cas, vous ne devriez pas avoir besoin d’un état d’  « attente » avec structure évènement) devrait vous permettre d’effectuer ce que vous souhaitez. Dans celle-ci, vous pouvez définir différents états (ou séquences d’états) possibles correspondants à différentes opérations (ou séquences de calculs) que vous souhaitez effectuer. Toute l’intelligence de votre application sera dans la façon de rédiger les « codes de transitions » associés à chaque état, i.e., le code qui va déterminer quel est l’état suivant à exécuter à la fin d’un calcul. Dans votre application, ce code sera changeant en fonction des paramètres que l’utilisateur choisira sur la face avant. Vous trouverez une démo vidéo de cette architecture ici (mais avec un état d’attente et une structure évènement incluse dont vous n’aurez pas beoin) : http://www.ni.com/video/2727/en/

 

Pour information, l’étude approfondie de ce type d’architecture est au programme du cours LabVIEW Fondamental 1 (et Fondamental 2 dans le cas de machine à états basées sur évènements).

 

Bonne continuation dans le développement de votre application !

Pierre-Emmanuel BELLES
Certified LabVIEW Developper
Certified TestStand Architect

0 Compliments
Message 3 sur 5
4 071 Visites

Merci pour votre réponse je n'avais vraiment pas pensé à faire une machine d'état. Cependant quelque chose me dérange, dans mon application l'utilisateur doit pouvoir choisir le nombre d'étape, cela signifie que le nombre d'état de machine d'état doit être variable non ? 

et comment faire pour que j'ai qu'une seule fois toute mes commandes et non mes commandes fois le nombre d'étapes sur la face avant ? 

 

0 Compliments
Message 4 sur 5
4 061 Visites

Vous devez bien évidemment définir au préalable tous les états possibles ainsi que toutes les transitions possibles. Dans un état donné, la liste des transitions possibles pourrait figurer sous la forme d'un tableau de constantes énumérations. La transition activée par l'utilisateur serait elle définie par le passage d'un booléen à "True" dans un tableaux de booléens correspondants aux différentes transitions activées/désactivées. Voir Figure 3c et explications sur http://www.ni.com/white-paper/3024/en/

Pierre-Emmanuel BELLES
Certified LabVIEW Developper
Certified TestStand Architect

0 Compliments
Message 5 sur 5
3 989 Visites