Vous pouvez afficher et contrôler la face-avant d'un VI à distance, soit à partir de LabVIEW, soit à partir d'un navigateur Web, en vous connectant au serveur Web intégré de LabVIEW. De plus, vous pouvez également contrôler une face-avant de VI à distance dans LabVIEW.

Lorsque vous ouvrez une face-avant distante à partir de l'ordinateur d'un client, le serveur Web envoie la face-avant au client, mais le diagramme et tous les sous-VIs restent sur l'ordinateur du serveur. Lorsque vous contrôlez une face-avant de VI à distance, vous pouvez interagir avec la face-avant comme si le VI s'exécutait sur le client, sauf que le diagramme s'exécute sur le serveur. Utilisez cette fonctionnalité pour publier des faces-avant entières ou pour contrôler vos applications à distance de manière sûre, aisée et rapide.

Remarque Utilisez le serveur Web de LabVIEW si vous voulez contrôler tout un VI. Utilisez des variables partagées pour lire et écrire des données dans une seule commande de la face-avant d'un VI.

Configuration du serveur pour les clients

L'utilisateur doit d'abord configurer le serveur pour qu'un client puisse visualiser ou contrôler une face-avant à distance. Configurez le serveur Web en sélectionnant Outils»Options et les pages Serveur Web dans la liste Catégorie. Utilisez ces pages pour contrôler l'accès au serveur et spécifier les faces-avant qui seront disponibles à distance. Vous pouvez également utiliser ces pages pour fixer une limite au temps de contrôle autorisé à un client distant lorsque d'autres clients sont en attente du contrôle du VI.

Le serveur Web permet à plusieurs clients de se connecter simultanément à la même face-avant, mais un seul client peut contrôler la face-avant à la fois. L'utilisateur à l'ordinateur serveur peut reprendre le contrôle de n'importe quel VI à tout moment. Quand l'utilisateur qui contrôle le VI change une valeur sur la face-avant, toutes les faces-avant client reflètent ce changement. Cependant, les faces-avant client ne reflètent pas tous les changements. De manière générale, les faces-avant client ne reflètent pas les modifications apportées à l'affichage des objets de la face-avant, mais bien celles apportées aux valeurs réelles de ces objets. Par exemple, si l'utilisateur qui a le contrôle change le mode de représentation ou l'espacement des marqueurs d'une échelle d'un graphe déroulant ou s'il affiche et cache une barre de défilement, seule la face-avant de cet utilisateur reflétera ces modifications.

Affichage et contrôle de faces-avant dans LabVIEW ou à partir d'un navigateur Web

Un client ne peut visualiser une face-avant distante qu'à partir d'un navigateur Web. Cependant, un client peut à la fois afficher et contrôler une face-avant à distance en utilisant LabVIEW.

Pour contrôler à distance une face-avant à partir de LabVIEW, les ordinateurs client et serveur doivent exécuter la même version de LabVIEW. Si vous utilisez un navigateur pour visualiser une face-avant distante, vous devez utiliser une version du moteur d'exécution de LabVIEW qui est compatible avec la version de LabVIEW sur l'ordinateur serveur. Par ailleurs, contactez l'administrateur du serveur pour vérifier que le document HTML spécifie la version correcte du moteur d'exécution de LabVIEW.

Remarque Avant de pouvoir visualiser et contrôler une face-avant à distance, vous devez activer le serveur Web sur l'ordinateur serveur où se trouve le VI ou l'application à visualiser et à contrôler.

Visualisation des faces-avant à partir d'un navigateur Web

Si vous voulez que les clients n'ayant pas LabVIEW installé puissent visualiser la face-avant à distance, ils peuvent utiliser un navigateur Web.

Suivez la procédure pour permettre aux clients de visualiser la face-avant à distance en utilisant un navigateur Web.
  1. À l'aide de l'Outil de publication pour le Web sur le serveur Web, publiez le VI.
  2. Fournissez l’adresse Web générée aux clients.

Affichage et contrôle des faces-avant dans LabVIEW

Pour afficher une face-avant distante en utilisant LabVIEW comme client, sélectionnez Exécution»Se connecter à une face-avant distante pour afficher la boîte de dialogue Connexion à une face-avant distante. Utilisez cette boîte de dialogue pour spécifier l'adresse Internet du serveur et le VI que vous voulez afficher. Par défaut, la face-avant de VI distante est initialement en mode observateur. Vous pouvez demander le contrôle en cochant l'option Demander le contrôle dans la boîte de dialogue Connexion à une face-avant distante lorsque vous demandez un VI. Quand le VI apparaît sur votre ordinateur, cliquez avec le bouton droit de la souris n'importe où sur la face-avant et sélectionnez Demander le contrôle dans le menu local. Vous pouvez aussi accéder à ce menu en cliquant sur la barre d'état située en bas de la fenêtre de la face-avant. Si aucun autre client n'a le contrôle à ce moment-là, vous avez le contrôle de la face-avant. En revanche, si un autre client contrôle le VI à ce moment-là, le serveur gardera votre demande dans une file d'attente jusqu'à ce que l'autre client abandonne le contrôle ou que la limite de la durée du contrôle soit dépassée. Seul l'utilisateur à l'ordinateur serveur peut surveiller la liste des clients dans la file d'attente en sélectionnant Outils»Gestionnaire de connexions à une face-avant distante. Si vous souhaitez enregistrer les données générées par un VI s'exécutant sur un ordinateur distant, utilisez TCP au lieu de faces-avant distantes.

Tous les VIs susceptibles d'être visualisés et contrôlés par les clients doivent être en mémoire sur l'ordinateur serveur. Si le VI demandé est en mémoire, le serveur envoie les données de la face-avant du VI au client demandeur. Si le VI n'est pas en mémoire, la section État de la connexion de la boîte de dialogue Connexion à une face-avant distante affiche un message d'erreur.

Remarque (Linux) NI ne supporte pas les faces-avant distantes sous Linux.

Plusieurs clients contrôlant en même temps des faces-avant

Plusieurs clients peuvent contrôler un VI à distance en même temps. Pour permettre le contrôle simultané d'un VI, le VI doit être réentrant. Pour faire en sorte qu'un VI soit réentrant, sélectionnez Fichier»Propriétés du VI, puis Exécution dans la liste Catégorie et cochez ensuite l'option Exécution réentrante avec copie partagée ou Exécution réentrante avec copies préallouées. LabVIEW ouvre un clone du VI réentrant pour chaque demande client de face-avant distante. Vous pouvez utiliser la propriété Serveur Web:Liste d'accès aux VIs pour limiter par programmation l'accès aux clones déjà en mémoire pour les connexions à des faces-avant distantes.

Fonctionnalités non supportées dans la visualisation et le contrôle des faces-avant distantes

La liste suivante comprend les fonctionnalités non supportées et les recommandations dont il faut tenir compte lors de la visualisation et du contrôle de faces-avant distantes.

  • Évitez d'exporter des VIs qui comportent des boucles While, mais pas de fonction d'attente. Ces VIs empêchent les tâches en arrière-plan de s'exécuter en un laps de temps raisonnable, ce qui rend les faces-avant inertes et sans réponse lorsqu'elles sont affichées ou contrôlées à distance.
  • Certains VIs peuvent ne pas fonctionner exactement de la même façon à partir d'un ordinateur distant que lorsqu'ils s'exécutent localement. Les contrôles .NET et ActiveX intégrés ne s'affichent pas sur un client distant car ils fonctionnent presque indépendamment de LabVIEW. Si un VI présente la boîte de dialogue de fichier standard, le contrôleur reçoit une erreur car vous ne pouvez pas naviguer à distance dans un système de fichiers. De plus, le bouton Parcourir d'une commande chemin est également désactivé dans les faces-avant distantes.
  • Il se peut que des clients affichant une face-avant à distance observent un comportement différent si la face-avant à laquelle ils se connectent provient d'un exécutable. En particulier, si la face-avant provient d'un exécutable, tous les changements effectués par programmation à la face-avant avant que le client ne se connecte à celle-ci ne sont pas reflétés sur l'ordinateur du client. Par exemple, si un nœud de propriété modifie le sous-titre d'une commande avant qu'un client ne se connecte à la face-avant, le client verra le sous-titre original de la commande et non pas le sous-titre modifié.
  • Seul un contrôleur est en mesure d'afficher à distance la face-avant d'un VI chargé de manière dynamique qui est ouvert et exécuté à l'aide du VI Serveur ou la face-avant d'un sous-VI configuré pour afficher la face-avant lorsqu'il est appelé. Les clients qui ne contrôlent pas le VI ne peuvent pas afficher la face-avant.
  • Il se peut que des diagrammes qui arrivent à obtenir certains effets de type interface utilisateur grâce aux propriétés d'une commande de face-avant soient moins performants lorsque vous contrôlez le VI à partir d'un ordinateur distant. Vous pouvez améliorer les performances de ces VIs en utilisant la fonction Attendre une activité sur la face-avant.
  • LabVIEW ne peut pas générer l'événement Face-avant fermée pour un VI qui est actuellement affiché ou contrôlé à distance. Si vous êtes en train de visualiser ou de contrôler un VI à distance, LabVIEW ne peut générer les événements que pour la classe Commandes ; autrement dit, ni dans la classe VI ni dans la classe Application.
  • Si vous visualisez ou contrôlez à distance un VI qui affiche la face-avant d'un sous-VI lorsque ce sous-VI est appelé, évitez de fermer manuellement la face-avant du sous-VI. Vous risqueriez de perdre le contrôle, à la fois sur l'ordinateur client et sur l'ordinateur serveur. Si vous devez visualiser la face-avant du sous-VI à l'appel, configurez LabVIEW pour qu'il ferme le sous-VI quand il a fini de s'exécuter.