Institut Supérieur des Sciences Appliquées et de Technologie de Mateur
ISSAT-Mateur
Programmation LabVIEW
Niveau : 1ère Mastère Pro. CSI
Aymen Mouelhi
[Link]@[Link]
Année Universitaire 2022- 2023
Plan du Cours
■ Chapitre 1: Instrumentation virtuelle et généralités sur
la programmation sous LabVIEW (NI)
■ Chapitre 2: Boucles et Structures
■ Chapitre 3: Les Tableaux, les graphes et les clusters
■ Chapitre 4: Etude des modules logiciels intégrés pour
la commande et la simulation des systèmes
dynamiques
2
Chapitre 2 : Boucles et Structures
■ Boucle For
■ Boucle While
■ Registre à décalage
■ Structure Condition
■ Structure séquence
■ Structure Evénement
■ Boite de calcul
■ Les variables locales et globales
Chapitre 2: Boucles et Structures
Boucles et structures: Principe
• Boucles permettent l’exécution d’un programme, d’un sous-programme ou d’une
partie de programme jusqu’à une action ou une valeur définie par l’opérateur.
• Structures permettent d’organiser, de séquencer ou de conditionner des éléments
d’un V.I. ou un V.I. complet.
NB: Sous menu Structures
se trouve dans le menu
Programmation (Palette des
Fonctions)
4
Chapitre 2: Boucles et Structures
Boucles et structures : Boucle For
• Boucle For : Répète une partie du code diagramme un nombre déterminé de
fois, ce nombre étant définissable par l’opérateur. Elle est définie par deux
terminaux.
Terminal du nombre de répétition
Diagramme répété N fois pour
i variant de 0 à
N-1
NON OUI
Incrémente le
Terminal compteur d’itération compteur
d’itérations
N : Entrée numérique fixé par l’opérateur
i : Sortie numérique (nombre d’itération effectué) 5
Chapitre 2: Boucles et Structures
Boucles et structures : Boucle While
Boucle While : Répète le code diagramme contenu à l’intérieur de la boucle
jusqu’à un changement d’état de la variable booléenne associé au terminal
conditionnel .
Diagramme répété
OUI NON
Terminal Terminal
Terminal de
compteur conditionnel
commande On peut permuter
d’itération booléenne dans LabVIEW
NB: La boucle while (Tant que) s’exécute toujours au moins une fois.
6
Chapitre 2: Boucles et Structures
Boucles et structures
Boucle While ou For : Tunnel d’entrée et de sortie de données
Les données d'entrée et de sortie passent par des tunnels localisés sur le cadre de
la boucle.
– La valeur à un tunnel d'entrée est lue lors de la 1ere itération seulement.
– La valeur envoyée à un tunnel de sortie est celle de la dernière itération.
Tunnel d’entrée Tunnel de sortie
7
Chapitre 2: Boucles et Structures
Boucles et structures
Boucle While ou For : Registre à décalage
• Pour un signal assez bruité que l’on veut afficher, par exemple, la moyenne des
valeurs. Pour ce faire il est possible d’utiliser un registre à décalage.
• Un registre à décalage prend des données du côté droit et les reporte du côté
gauche à l’itération suivante :
Valeur initiale Valeur 3
i=0 i=1 i=2
NB : - Clic droit sur un des bords de la boucle >> « Ajouter un registre à décalage »
- L’initialisation du registre à décalage est importante pour éviter les erreurs !
- Valeur initiale du registre par défaut 0 en numérique et Faux en booléen
8
Chapitre 2: Boucles et Structures
Boucles et structures
Exercice : Application d’un registre à décalage dans une boucle For
On demande de :
- Donner le type de variable d’entrée et de sortie de la boucle
- Représenter l’organigramme correspondant au diagramme ci-dessus.
- Exécuter le diagramme à la main et en déduire la fonction réalisée par ce
diagramme.
9
Chapitre 2: Boucles et Structures
Boucles et structures : Structure Condition
• Structure Condition ou Test : Suivant le résultat d’un test, on réalise une série
d’instructions ou une autre.
- Le test est la relation permettant de réaliser l’aiguillage en mettant en œuvre les
opérateurs d’aiguillage suivant: <, >, ≤, ≥, =, ≠ ou également des opérateurs logiques.
Cliquer pour visualiser le diagramme
réalisé si condition vraie NON OUI
Condition
à écrire Diagramme
exécuté si la
condition est
fausse
Terminal de sélection (?)
NB: Un seul cas est visible simultanément (Vrai ou Faux), cliquer sur les triangles pour
passer de l’un à l’autre. 10
Chapitre 2: Boucles et Structures
Boucles et structures : Structure Condition
Tunnel d’entrée et de sortie de données
La transmission des données se fait via un « tunnel » d'entrée ou de sortie.
Les tunnels de sortie doivent
être reliés dans les deux
diagrammes conditionnels
Diagramme visible
La condition met en jeux
un opérateur de comparaison
Diagramme caché
Le résultat booléen de la condition est connecté
au sélecteur « ? »
11
Chapitre 2: Boucles et Structures
Boucles et structures :Structure Séquence
Langage classique : Les instructions écrites
Flot d'instructions s'exécutent séquentiellement
Langage LabVIEW : On ne maîtrise pas l'ordre
Flot de données d'exécution des « instructions »
La structure séquence se présente comme une La structure séquence
succession d'étapes semblable à la pellicule d'un film. permet de reprendre le
contrôle de l’ordre
d’exécution du
programme
NB : Les étapes successives sont exécutées dans l'ordre.
12
Chapitre 2: Boucles et Structures
Boucles et structures
Exercice : Application d’une structure Séquence
On demande de :
- Donner la fonction réalisée par un VI dont le diagramme est représenté ci-dessus
NB : Lorsqu’on fait des structures
séquences, celle-ci peuvent prendre
beaucoup de place sur le diagramme.
Elles peuvent être remplacées pas des
séquences empilées (clic droit sur la
séquence et «Remplacer par une
séquence empilée»).
13
Chapitre 2: Boucles et Structures
Boucles et structures : Structure Evènement
La structure dite ‘Evènement’ est un bloc d’actions (similaire à la condition) effectuée
lors de l’exécution d’une action telle que:
• Appui sur un bouton dans la face avant
• Appui sur une touche du clavier
• Temps écoulé
• Appui sur un bouton de la souris
Une fois la première structure crée, on ajoute le nombre de structure nécessaire
(click droit sur le bord de la structure) en choisissant l’évènement déclenchant dans
la liste de la boite de dialogue qui apparait.
Sélecteur d’
évènement
On peut construire ensuite le
diagramme correspondant à chaque Time out: Temps (ms) pendant
le quel la structure doit attendre
évènement qu’un évènement se produise
NB: Par défaut la valeur de Time out
est -1; il n’y a jamais du Time out. Diagramme à exécuter
14
Chapitre 2: Boucles et Structures
Boucles et structures
Exercice : Structure Evénement
On veut créer un VI qui permet de:
• Ouvrir une fenêtre contenant un bouton ‘Bonjour’. Si on clique sur ce bouton, on
affiche un message <Bon choix>.
• Faire un bip si on clique sur le bouton ‘Bip’ et affiche <Bon choix>.
• Afficher un message <Mauvais choix> si on sort de la fenêtre de la face avant par
la souris .
15
Chapitre 2: Boucles et Structures
Boucles et structures
Boite de calcul
Évalue les formules et expressions mathématiques du diagramme dont la syntaxe
est similaire au langage C. Les fonctions intégrées suivantes sont autorisées dans
les formules : abs, acos, acosh, asin, asinh, atan, atan2, atanh, ceil, cos, cosh, cot,
csc, exp, expm1, floor, int, intrz, ln, lnp1, log, log2, max, min, mod, rand, sign, sin,
sinc, sinh, sqrt, tan, tanh…
16
Chapitre 2: Boucles et Structures
Boucles et structures
Exercice : Boite de calcul
On demande de :
-Donner la fonction réalisée par un VI dont le diagramme est représenté ci-dessus
NB: Pour ajouter une entrée/ sortie à la boite de calcul, il suffit de faire un click droit
sur le bord de la structure et ajouter entrée / sortie (il faut la nommer) à travers la
boite de dialogue qui apparait. 17
Chapitre 2: Boucles et Structures
Boucles et structures
Les variables locales
Pour simplifier le câblage (éliminer des fils de trop grande longueur), on peut avoir
recours à une variable locale.
La variable locale créée prend le nom de la variable d’origine, et peut être utilisée
en lecture ou en écriture, forçant ainsi la donnée à changer de valeur.
Création d’une variable locale: click droit sur le terminal → créer → variable
locale.
Variable locale en lecture Variable locale en écriture
NB: Une variable locale n’est visible que dans un seul VI. Elle permet de communiquer des données
facilement au sein d’un même VI. Cela évite, entre autre, de câbler plusieurs fils qui vont perturber la
présentation visuelle du diagramme.
18
Chapitre 2: Boucles et Structures
Boucles et structures
Les variables globales
Afin d’assurer la duplication des terminaux utilisables dans n’importe quel
programme, on procède par la création d’une variable globale.
Une variable globale agit de la même façon qu’une variable locale excepté le fait
que l’on peut transférer cette variable d’un VI à l’autre par l’utilisation du sous VI
crée.
Comment la créer: Dans le diagramme, menu Structures dans la palette
Fonctions (mais c’est une structure vide)
• Créer les données composant la variable globale
• Double clic droit sur l’icône de la variable pour ouvrir sa face avant
• Créer les différentes données (numériques, booléennes, tableaux, cluster,…)
19