Requiert : Scripts de VI

Bien qu'il soit possible de créer des VIs complexes de toutes pièces par programmation en utilisant la fonction Nouvel objet de VI et la méthode Terminal:Connecter terminaux, cette approche requiert du code de script complexe et étendu, à la fois long à écrire et difficile à lire. Il est souvent plus facile d'écrire un VI modèle qui ressemble au VI que vous voulez créer. Vous pouvez alors utiliser un script de VI pour créer une copie du VI modèle et éditer de petites parties du code copié pour atteindre l'objectif de votre script.

Éléments utilisés

La tâche de création du script de VI requiert les objets suivants :

Comment procéder

Avant de commencer : Ouvrez le VI Creating New VI From Template.vi du répertoire labview\examples\Application Control\VI Scripting\Creating VIs pour voir un exemple illustrant chaque étape de la procédure suivante.

  1. Concevez un VI modèle qui ressemble d'aussi près que possible au VI cible désiré.

    Incluez les éléments suivants dans la conception du modèle :

    • Tous les objets que vous ne voulez pas créer un par un par programmation
    • Tous les objets que vous ne voulez pas créer de toutes pièces par programmation
    • Les objets qui seront remplacés par des objets que vous voulez spécifier à l'exécution. Les objets à remplacer vous permettent de câbler les terminaux dans le modèle plutôt que de créer ces connexions de toutes pièces par programmation dans le VI de script.
    • Des étiquettes visibles sur tous les objets que vous voulez être capable de rechercher et de modifier avec le VI de script

    Détails de l'exemple

    Dans l'exemple, le modèle représente une conception qui inclut une entrée tableau, une sortie numérique, un sous-VI qui sera remplacé et le câblage nécessaire à la connexion de ces objets. À l'exécution, un VI de script peut remplacer le sous-VI par un autre qui effectue la tâche de calcul définie par l'utilisateur.

    Remarque Le sous-VI qui sera remplacé a un modèle de connecteur intentionnellement identique aux deux sous-VIs de remplacement possibles. Le fait d'avoir un modèle de connecteur qui correspond permet au VI de script de remplacer facilement le sous-VI sans avoir à recâbler ses terminaux. Si l'objet à remplacer dans un VI modèle a un connecteur qui diffère de celui de l'objet de remplacement, il se peut que LabVIEW ne câble pas les données comme vous le voulez dans l'objet de remplacement.
  2. Utilisez une fonction Nouveau VI pour créer une copie du VI modèle en câblant le chemin du VI modèle à la fonction.

    Vous pouvez utiliser une commande ou une constante chemin, ou la propriété VI:Chemin du VI d'une référence à votre VI modèle pour spécifier le chemin du VI modèle.

    Détails de l'exemple

    Dans l'exemple, la propriété VI:Chemin donne le chemin du VI modèle.

  3. Obtenez des références aux objets que vous voulez modifier dans le VI modèle. La façon la plus courante d'obtenir une référence à un objet d'un VI modèle consiste à utiliser la fonction Ouvrir une référence d'objet de VI.

    Détails de l'exemple

    Dans l'exemple, le VI de script doit remplacer le sous-VI à remplacer par un sous-VI qui effectue l'opération spécifiée par l'utilisateur du VI de script à l'exécution. Comme le sous-VI à remplacer a une étiquette unique, la fonction Ouvrir une référence d'objet de VI peut obtenir une référence à ce sous-VI.

  4. Inspectez ou modifiez les objets référencés pour atteindre le but de votre script.

    Reportez-vous à la liste de tâches de script courantes pour obtenir des informations complémentaires sur les façons d'éditer un VI avec un script de VI.

    Détails de l'exemple

    Dans l'exemple, le VI de script utilise la méthode Remplacer pour remplacer le sous-VI à remplacer par un sous-VI capable d'effectuer la tâche de calcul spécifiée par l'utilisateur. En fonction de la valeur du bouton radio Opération à l'exécution, une structure Condition sélectionne s'il faut remplacer le sous-VI à remplacer par un sous-VI Addition ou un sous-VI Multiplication.

  5. Utilisez la fonction Fermer une référence pour fermer chaque référence d'objet ouverte lorsque vous avez fini de l'utiliser.

    Détails de l'exemple

    Dans l'exemple, le VI de script ferme la référence au sous-VI de remplacement ainsi que celle au VI cible. Cependant, le VI de script ne ferme pas la référence au sous-VI à remplacer d'origine car la méthode Remplacer la rend non valide.

Mises en garde et recommandations

  • Créez un sous-VI intermédiaire qui obtient et renvoie les références désirées — Pour les applications de script de VI qui modifient un modèle, vous pouvez clarifier votre code en plaçant le code qui obtient les références dans un sous-VI. Pour créer un sous-VI séparé qui renvoie les références à modifier, effectuez les étapes 2 à 4 dans un nouveau sous-VI plutôt que dans votre VI de script principal. Le VI de script principal peut alors appeler le nouveau sous-VI et effectuer les modifications avec les références renvoyées.
  • Fermez toutes les références que vous avez ouvertes — Un nombre excessif de références ouvertes a un impact négatif sur les performances d'un VI. Lisez les informations sur la fermeture des références aux VIs ou objets de VI pour en savoir plus sur les performances.

Autres exemples

Reportez-vous au VI Creating New VI From Scratch.vi du répertoire labview\examples\Application Control\VI Scripting\Creating VIs pour voir un exemple de création d'un nouveau VI objet après objet. Comparez la complexité de cet exemple et le nombre de références requises pour effectuer la tâche sans utiliser de modèle.