URL d'identification de variables
- Mise à jour2025-08-27
- Temps de lecture : 5 minute(s)
LabVIEW identifie chaque variable partagée avec une URL d'identification de variable. Pour lire et écrire des variables partagées par programmation, vous pouvez spécifier les URL d'identification de variables de ces variables partagées avec l'entrée refnum de variable partagée en entrée des fonctions Variable partagée.
Architecture des variables partagées
La liste suivante résume l'ensemble de concepts LabVIEW qui ont trait aux variables partagées et aux URL d'identification de variables.
- Variable partagée — Espace mémoire dont vous pouvez lire et écrire les données.
- Variable PSP — Élément de données publié sur le réseau au moyen du protocole NI-PSP (NI Publish-Subscribe Protocol). Les variables partagées publiées sur réseau, les variables d'E/S pour lesquelles la publication sur réseau a été activée et les voies DAQ publiées via le serveur d'E/S NI-DAQmx sont des exemples courants de variables PSP.
- Variables d'E/S — Variables partagées qui utilisent le moteur de balayage NI pour accéder point par point aux données d'E/S.
- Conteneur de variables — Ensemble de variables. Le type le plus courant de conteneur de variables est une bibliothèque de projet. Cependant, d'autres éléments, comme les modules d'E/S, les nœuds WSN (Wireless Sensor Network) et les périphériques EtherCAT peuvent aussi servir de conteneurs de variables. Vous pouvez utiliser la boîte de dialogue Naviguer jusqu'à un objet variable pour trouver tous les conteneurs de variables qui sont déployés sur le réseau.
- Moteur de variables — Composant d'exécution qui gère une hiérarchie de conteneurs de variables et de variables.
- Bibliothèque de projet — Ensemble de VI, de définitions de type, de variables partagées, de fichiers palette et d'autres fichiers, y compris d'autres bibliothèques de projet. Une bibliothèque de projet qui contient des variables partagées est un conteneur de variables, mais les conteneurs de variables ne sont pas forcément des bibliothèques de projet.
- Nom de la cible — Nom assigné à un élément cible (Poste de travail ou une cible RT, par exemple) dans un projet LabVIEW.

Remarque (Module Real-Time) Vous pouvez utiliser le champ Nom de la page Propriétés générales de la boîte de dialogue de propriétés de la cible RT pour spécifier un nom de cible RT.
Syntaxe des URL d'identification de variable
La syntaxe de l'URL d'un identificateur de variable est :
[Moteur de variables]://[Nom d'hôte]/[Nom du conteneur]/[Nom de la variable]
Vous devez spécifier les éléments Nom du conteneur et Nom de la variable pour toutes les URL d'identification de variables. Cependant, vous pouvez omettre le moteur de variables s'il est indiqué implicitement par la classe. Vous pouvez aussi omettre le nom de l'hôte si les variables sont hébergées sur l'ordinateur sur lequel le VI s'exécute.
Par exemple, le projet LabVIEW suivant contient des variables partagées publiées sur réseau qui sont répertoriées sous le conteneur Network Variables.lvlib et des variables d'E/S qui sont répertoriées sous le conteneur I/O Module1.
La table suivante comporte les URL d'identification de variables complètes pour plusieurs variables de ce projet.
| Nom de la variable | Type de variable | URL d'identification de la variable |
|---|---|---|
| Variable réseau 1 | Variable partagée publiée sur réseau | ni.var.psp://My Computer/Network Variables/Network Variable1 |
| AI0 | Variable d'E/S | ni.var.io://RT CompactRIO Target/I%2FO Module1/AI0 |
| Variable réseau 3 | Variable partagée publiée sur réseau | ni.var.psp://RT CompactRIO Target/RT Network Variables/Network Variable3 |
L'URL d'identification de variable n'est pas sensible à la casse. Cependant, vous devez remplacer les caractères réservés par les codes d'échappement correspondants pour éviter les erreurs de parseur. Par exemple, vous devez remplacer le caractère⁄ par le code d'échappement %2F.
L'élément Moteur de variables de l'URL dépend du type de variable que vous avez l'intention de lire ou d'écrire. Le tableau suivant inclut l'URL du moteur de variables pour chaque type de variable partagée supporté par les fonctions Variable partagée.
| Type | URL du moteur de variables |
|---|---|
| Variable partagée publiée sur réseau, variable d'E/S ou alias d'E/S (accès à distance) | ni.var.psp |
| Variable d'E/S ou alias d'E/S (accès local) | ni.var.io |
Vous pouvez utiliser le moteur de variables PSP ou le moteur de variables d'E/S pour accéder aux variables d'E/S publiées sur réseau ou aux alias d'E/S. Utilisez le moteur de variables d'E/S ni.var.io pour lire ou écrire une variable d'E/S publiée sur réseau ou un alias d'E/S localement. Utilisez le moteur de variables PSP ni.var.psp pour lire ou écrire une variable d'E/S publiée sur réseau ou un alias d'E/S à distance.
L'élément moteur de variables de l'URL est indiqué de manière implicite, et par conséquent facultatif, si vous utilisez une des classes suivantes :
- Moteur de variables PSP
- Moteur de variables d'E/S
- Conteneur de variables PSP
- Conteneur de variables d'E/S
- Variable PSP
- Variable d'E/S
Dans ce cas, vous pouvez omettre l'élément Moteur de variables de l'URL et utiliser la syntaxe d'URL suivante :
//[Nom d'hôte]/[Nom du conteneur]/[Nom de la variable]
Si vous utilisez une classe générique qui n'indique pas implicitement le moteur de variables et que vous ne spécifiez pas le moteur de variables, LabVIEW tente de résoudre l'URL d'identification de variable en recherchant les moteurs de variables dans l'ordre suivant.
- Moteur de variables d'E/S
- Moteur de variables PSP
Dans ce cas, si plusieurs moteurs ont une URL qui correspond, LabVIEW utilise la première qu'il trouve.
L'élément [Nom d'hôte] de l'URL d'identification de variable est facultatif. Vous pouvez spécifier le nom d'hôte sous forme de nom DNS, de nom de cible ou d'adresse IP. Cependant, si vous ne spécifiez pas de nom d'hôte dans l'URL d'identification de variable, LabVIEW suppose que l'hôte est l'ordinateur sur lequel vous exécutez le VI. Vous pouvez aussi utiliser la chaîne localhost pour spécifier de manière explicite l'ordinateur sur lequel vous exécutez le VI. Pour éviter les conflits de noms, utilisez des noms uniques dans la mesure du possible.
Si vous n'avez pas besoin de spécifier un nom d'hôte, vous pouvez utiliser la syntaxe d'URL suivante :
/[Nom du conteneur]/[Nom de la variable]
Si le nom d'hôte que vous spécifiez peut être interprété de plusieurs façons (par exemple comme nom de projet et comme nom DNS), LabVIEW recherche une interprétation valide de ce nom dans l'ordre suivant.
- Nom de la cible (tel qu'il est indiqué dans le projet LabVIEW)
- Nom DNS
- Adresse IP
Le nom de chaque variable partagée qui se trouve dans un conteneur doit être unique. Cependant, comme l'identité de la variable inclut le nom du conteneur, des variables se trouvant dans des conteneurs différents peuvent avoir le même nom de variable tout en ayant des identités de variable uniques.