Programmation graphique

Inclus dans cette page

 

Vidéo : Programmation par flux de données dans LabVIEW

LabVIEW suit un modèle de flux de données pour l'exécution des VIs. Un nœud du diagramme s'exécute lorsqu'il a reçu toutes les entrées requises. Lorsqu'un nœud s'exécute, il produit des données en sortie qui sont transférées au nœud suivant par flux de données. La direction dans laquelle les données se déplacent à travers les nœuds détermine l'ordre d'exécution des VIs et des fonctions sur le diagramme.

Visual Basic, C++, Java et la plupart des autres langages de programmation textuels s'appuient sur un modèle de flux de contrôle pour l'exécution des programmes. Dans le flux de contrôle, l'ordre séquentiel des éléments du programme détermine l'ordre d'exécution d'un programme.

Un exemple de programmation en flux de données serait un diagramme qui additionne deux nombres, puis soustrait 50,00 du résultat de cette somme, comme illustré dans la Figure n°1. Ce diagramme s'exécute de gauche à droite, non pas parce que les objets sont placés dans cet ordre, mais parce que la fonction Soustraire ne peut pas s'exécuter tant que la fonction Additionner n'a pas fini de s'exécuter et n'a pas transmis les données à la fonction Soustraire. N'oubliez pas qu'un nœud ne s'exécute que lorsque les données sont disponibles sur tous ses terminaux d'entrée et qu'il ne fournit les données à ses terminaux de sortie que lorsqu'il a fini de s'exécuter.

Figure 1. Exemple de programmation par flux de données

Dans la Figure n°2, essayez de déterminer quel segment de code s'exécutera en premier : la fonction Additionner, la fonction Nombre aléatoire ou la fonction Diviser. Ceci n'est pas possible car les entrées des fonctions Additionner et Diviser sont disponibles en même temps, tandis que la fonction Nombre aléatoire ne comporte aucune entrée. Si un segment de code doit s'exécuter avant un autre et qu'il n'existe aucune dépendance de données entre les fonctions, utilisez d'autres méthodes de programmation, comme les structures Séquence ou les clusters d'erreur, afin de forcer l'ordre d'exécution.

Figure 2. Exemple de flux de données pour plusieurs segments de code

Fils de liaison

Les données sont transférées entre les objets du diagramme par le biais des fils de liaison. Dans les figures n°1 et n°2, les fils de liaison connectent les terminaux des commandes et des indicateurs aux fonctions Additionner et Soustraire. Chaque fil de liaison a une source de données unique, mais vous pouvez le câbler à de nombreux VIs et fonctions capables de lire ces données. Les fils de liaison sont de couleurs, styles et épaisseurs différents en fonction du type de données transféré.


Un fil de liaison brisé apparaît sous forme de trait noir en pointillés avec un X rouge au milieu, comme représenté ci-dessus. Les fils de liaison peuvent être brisés pour de multiples raisons, notamment lorsque vous essayez de câbler deux objets dont les types de données sont incompatibles.

Le tableau 1 présente les types de fils de liaison les plus courants.

Type de fil de liaison Scalaire Tableau 1D Tableau 2D Couleur
Numérique Orange (virgule flottante),
Bleu (entier)
Booléen Vert
Chaîne Rose

Tableau n°1. Fils de liaison les plus courants

released with niBCVideo v1.1

Vidéo : Types de données dans LabVIEW

Dans LabVIEW, les fils de liaison servent à relier plusieurs terminaux les uns aux autres afin de transmettre les données d'un VI. Vous devez connecter les fils de liaison à des entrées et des sorties compatibles avec les données qu'ils transfèrent. Par exemple, une sortie tableau ne peut pas être reliée à une entrée numérique. De plus, la direction des fils de liaison doit être correcte. Vous devez connecter les fils de liaison à une seule entrée et à au moins une sortie. Par exemple, deux indicateurs ne peuvent être reliés l'un à l'autre. La compatibilité du câblage est déterminée, entre autres, par le type de données de la commande ou de l'indicateur, et par celui du terminal. Par exemple, si un commutateur a une bordure verte, vous pouvez le câbler à n'importe quelle entrée de VI Express dont l'étiquette est verte. Si un bouton rotatif a une bordure orange, vous pouvez le câbler à n'importe quelle entrée dont l'étiquette est orange. Par contre, il est impossible de câbler un bouton rotatif orange à une entrée dont l'étiquette est verte. Notez que les fils de liaison sont de la même couleur que les terminaux.

Câblage automatique d'objets

Au fur et à mesure que vous rapprochez un objet sélectionné d'autres objets du diagramme, LabVIEW tire des fils de liaison temporaires pour vous indiquer des connexions valides. Quand vous relâchez le bouton de la souris pour positionner l'objet sur le diagramme, LabVIEW connecte automatiquement les fils de liaison. Vous pouvez aussi câbler automatiquement des objets déjà placés sur le diagramme. LabVIEW connecte les terminaux qui correspondent le mieux et ne câble pas ceux qui ne correspondent pas.

Par défaut, le câblage automatique est activé quand vous sélectionnez un objet à partir de la palette Fonctions ou quand vous copiez un objet qui se trouve déjà sur le diagramme en appuyant sur la touche <Ctrl> et en le faisant glisser. Le câblage automatique est désactivé par défaut quand vous utilisez l'outil Flèche pour déplacer un objet déjà présent sur le diagramme.

Vous avez la possibilité d'ajuster les paramètres de câblage automatique en sélectionnant Outils»Options, puis Diagramme dans la liste Catégorie.

Câblage manuel d'objets

Lorsque vous déplacez l’outil Bobine sur un terminal, une info-bulle apparaît, indiquant le nom du terminal. De plus, le terminal clignote dans la fenêtre Aide contextuelle et sur l'icône pour vous aider à vérifier que le câblage du terminal est correct. Pour relier plusieurs objets, passez l'outil Bobine sur le premier terminal, faites un clic et placez le curseur sur le second terminal, puis faites un autre clic. Après le câblage, vous pouvez faire un clic droit sur le fil de liaison et sélectionner Arranger le câblage dans le menu local pour que LabVIEW sélectionne automatiquement la position du fil de liaison. Si vous avez des fils brisés à supprimer, appuyez sur <Ctrl-B> pour supprimer tous les fils brisés sur le diagramme.

Découvrir LabVIEW d'une nouvelle façon

Découvrez ces concepts LabVIEW à travers une nouvelle expérience interactive.

Continuez votre apprentissage

Préc. Principes fondamentaux de l'environnement
Outils usuels Suivant