100% ont trouvé ce document utile (1 vote)
363 vues177 pages

LabView Cours

Ce document présente une introduction au langage de programmation LabVIEW. Il décrit les principales caractéristiques et fonctionnalités de LabVIEW, notamment l'acquisition, l'analyse et la présentation de données, ainsi que la structure d'un programme LabVIEW composé d'une face avant, d'un bloc diagramme et d'une icône.

Transféré par

bouzidi hamza
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
363 vues177 pages

LabView Cours

Ce document présente une introduction au langage de programmation LabVIEW. Il décrit les principales caractéristiques et fonctionnalités de LabVIEW, notamment l'acquisition, l'analyse et la présentation de données, ainsi que la structure d'un programme LabVIEW composé d'une face avant, d'un bloc diagramme et d'une icône.

Transféré par

bouzidi hamza
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Cours Programmation LabVIEW

Adnen .A Programmation LabVIEW FSM 2023 1


Partie 1:
Introduction au LabVIEW

Adnen .A Programmation LabVIEW FSM 2023 2


Partie 1: Introduction au LabVIEW
Introduction
• Le langage de programmation Labview (Laboratory Virtual
Instrument Engineering Workbench)
• Un environnement de programmation à caractère universel
bien adapté pour la mesure, les tests, l’instrumentation et
l’automatisation
• Un langage de programmation graphique qui utilise des
icônes, au lieu des lignes de textes utilisées en C par
exemple
• LabVIEW utilise la programmation par flux de données.
 C’est ce flux de données qui déterminera l’ordre d’exécution du
programme.

Adnen .A Programmation LabVIEW FSM 2023 3


Partie 1: Introduction au LabVIEW
Introduction
 Domaine d’utilisation

Adnen .A Programmation LabVIEW FSM 2023 4


Partie 1: Introduction au LabVIEW
Introduction
 Programmation G
• C’est un système de programmation à usage général,
disposant de bibliothèques de fonctions étendues
convenant à toute tâche de programmation.
• Il dispose aussi de bibliothèques spécifiques pour
l’acquisition de données, le contrôle d’instruments (GPIB et
série), ainsi que l’analyse, la présentation et le stockage
de données.
• un langage de programmation orienté objet (POO) tel que le
visuel basic, le visuel C, le Delphi …, offre l’opportunité à des
généralistes de produire des applications de haut niveau.

Adnen .A Programmation LabVIEW FSM 2023 5


Partie 1: Introduction au LabVIEW
Introduction
 Programmation G
• Orienté instrumentation et les bancs d’essais
• un système très ouvert qui permet l’intégration aisée de
composants de régulation, commandes d’axes,
visionique, entrées-sorties déportées, serveurs pour
automatisation industrielle.
• En raison de leur parenté avec les instruments réels, les
programmes écrits en G sont appelés VIs (pour Virtual
Instruments : Instruments Virtuels).
• Les VIs peuvent être assemblés entre eux pour produire des
applications complexes et modulaires, ce sont alors des sous-
VIs composant le VI de l'application.

Adnen .A Programmation LabVIEW FSM 2023 6


Partie 1: Introduction au LabVIEW
Présentation du LabVIEW
 LabVIEW est un outils d’acquisition, d’analyse et de
présentation de données

Acquisition Analyse Présentation

Adnen .A Programmation LabVIEW FSM 2023 7


Partie 1: Introduction au LabVIEW
Acquisition avec LabVIEW
LabVIEW permet l’acquisition de données par
l’intermédiaire de diverses connectiques :

•PCI (Peripheral Component Interconnect) •USB (Universal Serial Bus)


• CompactFlash •GPIB (IEEE 488) (General
• LAN (Local Area Network) Purpose Interface Bus)
• PXI (PCI eXtensions for Instrumentation) • Firewire (IEEE 1394)
•PCMCIA (Personal Computer Memory
• Ethernet
Card International Association)
•Série (RS 232, RS 449, RS
•Wi-Fi (IEEE 802.11 b/g/n) (Wireless
422, RS 423, RS 485)
Fidelity)
•VXI (VME eXtensions for
• Bluetooth
Instrumentation)
• IrDA (Infrared Data Association)

Adnen .A Programmation LabVIEW FSM 2023 8


Partie 1: Introduction au LabVIEW
Analyse avec LabVIEW
LabVIEW inclut des outils pour l’analyse des
données :

• Traitement du signal : Convolution, analyse


spectrale, transformées de Fourier,…
• Traitement d’images : Masque, détection de
contours, profils, manipulations de pixels,…
• Mathématiques : Interpolation, statistiques
(moyennes, écart-type,…), équations
différentielles,…

Adnen .A Programmation LabVIEW FSM 2023 9


Partie 1: Introduction au LabVIEW
Présentation avec LabVIEW
LabVIEW inclut des outils d’aide à la présentation
(communication) des données :

• Graphiques, tableaux, images, génération de


rapport,…
• Par l’intermédiaire d’Internet : outils de
publication web, serveur datasocket, TCP/IP,
envoie d’alertes par email,…

Adnen .A Programmation LabVIEW FSM 2023 10


Partie 2:
Interfaces LABVIEW et
environnement de programmation

Adnen .A Programmation LabVIEW FSM 2023 11


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
 LV étant plus particulièrement destiné à l'instrumentation,
 Un programme LV apparaît comme un appareil de mesure
Commande et contrôle

Front panel

Traitement et fonctionnalités (cœur du programme)

Block diagram

Adnen .A Programmation LabVIEW FSM 2023 12


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
 Un programme écrit en G est appelé VIs (pour Virtual
Instruments : Instruments Virtuels). Il contient 3 éléments:
oFace avant (Front panel): l’interface utilisateur
oFace arrière (Bloc diagramme): Contient le code source
sous forme graphique qui définit les fonctionnalités du VI.
oIcône et pattes de connections : identifie le VI pour l’utiliser
dans un autre VI (sous-VI).
 Un sous-VI correspond à une sous –routine ou fonction dans un
langage de programmation textuel (C, C++, …)

Adnen .A Programmation LabVIEW FSM 2023 13


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
Un programme informatique manipule des données fournies
par l'environnement extérieur :
- Entrées au clavier par l'utilisateur,
- Acquises par une carte d'acquisition (mesure de
Température par exemple),
- Délivrées par un appareil de mesure (Voltmètre, via une
liaison informatique),
-Tirées d'un fichier tableur,
- Etc.
 Ces données constituent des variables d’entrées.

Adnen .A Programmation LabVIEW FSM 2023 14


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
Le traitement des variables d’entrées donne naissance a des
résultats:
- exemple, affichage d'un graphe d'évolution de la
température mesurée, ou
- engendre des actions de commande délivrées par
l'ordinateur (commande d'arrêt de chauffage).
Ces informations constituent des variables de sorties

L’élaboration d’un algorithme nécessite de bien identifier


les entrées/sorties

Adnen .A Programmation LabVIEW FSM 2023 15


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
Entrées/Sorties dans LabVIEW

Entrées Sorties
o boutons poussoirs o écran d’oscilloscope
o interrupteurs o afficheur numérique en
o potentiomètres rotatifs ou écriture (affichage)
glissière o Vumètre
o afficheur numérique en o Etc
lecture
o Etc

Adnen .A Programmation LabVIEW FSM 2023 16


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
Entrées : Commandes Sorties : Indicateurs

Adnen .A Programmation LabVIEW FSM 2023 17


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
Fac Avant Bloc Diagramme
- Commandes (entrées) Code source: Fonctions
(icones) , liaisons (fils), boucles
(cadres)etc

-Indicateurs (sorties) VI

 Les contrôles (Controls) ont des bordures plus épaisses que les indicateurs
(Indicators)
Adnen .A Programmation LabVIEW FSM 2023 18
Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
Ic ône/c onnecte u r d ’u n VI

• Chaque VI affiche une icône, dans le coin


supérieur droit des fenêtres de la face-
Icône par défaut avant et du diagramme. Une icône
est la représentation graphique d’un VI.

• Un connecteur est un ensemble


de terminaux correspondant aux
commandes et aux indicateurs du
VI qui sont accessibles.

Adnen .A Programmation LabVIEW FSM 2023 19


Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview
Diagramme : Fonctions et connexions  Traitement

Dans le diagramme nous trouverons tous les éléments propres


au code développé (structures, fonctions, constantes,…).
Adnen .A Programmation LabVIEW FSM 2023 20
Partie 2: Interfaces LABVIEW et
environnement de programmation
Structure d’un programme Labview

Adnen .A Programmation LabVIEW FSM 2023 21


Partie 2: Interfaces LABVIEW et
environnement de programmation
Interface d’accueil de LABVIEW

Ouvrir un VI vide ou
un projet vide

Ouvrir un
ancien VI

Se connecter vers
des formations ou
des forums de
discussion

Adnen .A Programmation LabVIEW FSM 2023 22


Partie 2: Interfaces LABVIEW et
environnement de programmation
Interfaces d’accueil de LABVIEW
2 faces superposées

Adnen .A Programmation LabVIEW FSM 2023 23


Partie 2: Interfaces LABVIEW et
environnement de programmation
Interfaces d’accueil de LABVIEW
2 faces superposées : Face Avant

Adnen .A Programmation LabVIEW FSM 2023 24


Partie 2: Interfaces LABVIEW et
environnement de programmation
Interfaces d’accueil de LABVIEW
2 faces superposées : Diagramme

Adnen .A Programmation LabVIEW FSM 2023 25


Partie 2: Interfaces LABVIEW et
environnement de programmation
Interface d’accueil de LABVIEW
Barre d’outils de la face-avant

Bouton Exécution du programme

(VI) Bouton Exécution continue Aide contextuelle


Bouton d’Arrêt d’exécution
Bouton Pause/Reprendre
Configuration du format du texte (taille, style, couleur,…)
Aligner les objets
Égalisation de l’espacement entre les objets
Plan de l’objet (premier ou arrière plan,…)
Redimensionner les objets de la face avant

Adnen .A Programmation LabVIEW FSM 2023 26


Partie 2: Interfaces LABVIEW et
environnement de programmation
Interface d’accueil de LABVIEW
Barre d’outils du diagramme

Animer l’exécution pour animer le diagramme et voir les


données transiter.

Exécuter de façon détailler : Exécute le programme


de la façon la plus détaillée possible action par action.

Exécuter sans détailler : Exécute le programme nœud


par nœud sans rentrer dans le détail de leur exécution
interne.

Terminer l’exécution

Adnen .A Programmation LabVIEW FSM 2023 27


Partie 2: Interfaces LABVIEW et
environnement de programmation
Palettes de commandes : Face avant
Disponible à partir de la fenêtre face avant par un clic droit
avec la souris ou dans la barre des menus : “ Fenêtre”.
Remonter l’arborescence
Rechercher un élément
Personnalisation de la palette

Dans cette palette nous trouverons tous les éléments


(commandes et indicateurs) nécessaires à la création de la face-
avant.

Adnen .A Programmation LabVIEW FSM 2023 28


Partie 2: Interfaces LABVIEW et
environnement de programmation
Palettes de commandes : Face avant

Adnen .A Programmation LabVIEW FSM 2023 29


Partie 2: Interfaces LABVIEW et
environnement de programmation
Palettes des fonctions : Digramme
Palettes de fonctions (disponible à partir de la
fenêtre diagramme par un clic droit avec la souris
ou dans la barre des menus : “ Fenêtre”).

Adnen .A Programmation LabVIEW FSM 2023 30


Partie 2: Interfaces LABVIEW et
environnement de programmation
Palettes des fonctions: Digramme
L es Fonctions, le s VI e t le s VI E xpress
• Les Fonctions de base : Éléments d’exploitation fondamentaux de LabVIEW.
• Les VI Standards :VI qui peuvent être personnalisés.
• Les VI Express :VI interactifs avec une page de dialogue configurable.

Adnen .A Programmation LabVIEW FSM 2023 31


Partie 2: Interfaces LABVIEW et
environnement de programmation
Palettes d’outils : Face avant/Digramme
Utilisée pour agir sur les objets de la face avant et du diagramme
(disponible dans la barre des menus : “ Fenêtre”).
Possibilité de changer d’outils à l’aide de la touche tabulation
du clavier de l’ordinateur

Outil sélection automatique (actif


lorsque la LED verte est allumée) Outil défilement

Outil d’action sur la face avant Outil de point d’arrêt


(saisie de valeurs) Outil sonde de données
Outil déplacement , sélection et taille Outil copie couleur
Outil texte (éditeur de texte)
Outil de coloriage
Outil connexion par fils
Outil raccourci menu

Adnen .A Programmation LabVIEW FSM 2023 32


Environnement de programmation : écriture
d’un programme LabVIEW
Paramétrage des constantes / commandes
Paramétrage des propriétés de la commande numérique
 Clic droit sur la commande (ou la constante) numérique

Format scientifique avec 2


chiffres de précision

Format virgule flottante


avec 2 chiffres de précision

Adnen .A Programmation LabVIEW FSM 2023 33


Environnement de programmation : écriture
d’un programme LabVIEW
Paramétrage des constantes / commandes
Possibilités de modifier le type de donnée de la commande : entiers
(mot long, mot, octet), réels (précision étendue, double précision,
simple précision),…

Indication sur le
type de donnée

Permet de fixer une valeur par défaut à la commande

Adnen .A Programmation LabVIEW FSM 2023 34


Environnement de programmation : écriture
d’un programme LabVIEW
Paramétrage des constantes / commandes

Adnen .A Programmation LabVIEW FSM 2023 35


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
Il y a essentiellement 4 types de variables :
 Numériques
Plusieurs représentations modifiables pour le type Numerique :

Booléens Chaînes de caractères Clusters

Adnen .A Programmation LabVIEW FSM 2023 36


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
 Numériques

Adnen .A Programmation LabVIEW FSM 2023 37


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
 Variables booléennes

N'existe pas dans tous les langages :

 OK en labVIEW mais pas en C !

Adnen .A Programmation LabVIEW FSM 2023 38


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
 Variables booléennes
Plusieurs actions mécaniques pour le
type Boolean :
- Switch when pressed (à l’appui)
- Switch when released (au relâchement)
- Switch until released (jusqu’au relâchement)
- Latch when pressed (armement à l’appui)
- Latch when released
- Latch until released
• L ’ action Switch: le contrôle garde son
état jusqu’ au prochain changement
• L ’ action Latch: le contrôle revient à son
état par défaut dès sa lecture

Adnen .A Programmation LabVIEW FSM 2023 39


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
Chaîne de caractères (string): (Contrôle, constant ou indicateur)

Les chaînes de caractères sont représentés en rose.


• Une chaîne de caractères est une séquence de caractères (ASCII).
• Utilisations possibles : affichage de messages (boîte de dialogue),
communications avec des instruments, fichiers d’entrée/sortie,…
• Les contrôles ou indicateurs de chaînes sont dans le menu :
Commandes >> Commandes Texte ou Indicateur Texte

Adnen .A Programmation LabVIEW FSM 2023 40


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
Chaîne de caractères (string): (Contrôle, constant ou indicateur)
Commandes
Fonctions

Adnen .A Programmation LabVIEW FSM 2023 41


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
 Clusters

 Structures qui regroupent plusieurs données.


 Les données peuvent être de différents types.
 Les éléments doivent tous être, soit des contrôles, soit des
indicateurs.
 Cela est similaire au câblage de fils dans une même gaine : facilite la
gestion du programme.

Adnen .A Programmation LabVIEW FSM 2023 42


Environnement de programmation : écriture
d’un programme LabVIEW
Type Variables / constantes
 Clusters

Adnen .A Programmation LabVIEW FSM 2023 43


Environnement de programmation : écriture
d’un programme LabVIEW
Outils d’aide en LabView

Adnen .A Programmation LabVIEW FSM 2023 44


Environnement de programmation : écriture
d’un programme LabVIEW
Outils d’aide en LabView

Adnen .A Programmation LabVIEW FSM 2023 45


Environnement de programmation : écriture
d’un programme LabVIEW
Outils d’aide en LabView

Adnen .A Programmation LabVIEW FSM 2023 46


Environnement de programmation : écriture
d’un programme LabVIEW
Outils d’aide en LabView

Adnen .A Programmation LabVIEW FSM 2023 47


Environnement de programmation : écriture
d’un programme LabVIEW
Outils d’aide en LabView

Adnen .A Programmation LabVIEW FSM 2023 48


Environnement de programmation : écriture
d’un programme LabVIEW
Outils d’aide en LabView

Adnen .A Programmation LabVIEW FSM 2023 49


Environnement de programmation : écriture
d’un programme LabVIEW
Outils d’aide en LabView

Adnen .A Programmation LabVIEW FSM 2023 50


Environnement de programmation : écriture
d’un programme LabVIEW
Type de variables : Codage
Couleurs associées aux variables
Servent à l’acheminement des données entre terminaux vis les nœuds du V.I.
Circulation unidirectionnelle : Commande  Indicateur
Type de variable Représentation Code couleur

Booléenne Vert
Chaîne de caractère Rose

Nombre réel Orangé

Nombre entier Bleu

Épaisseur du fil  nature des données (scalaire, tableau 1D, tableau 2D)

Adnen .A Programmation LabVIEW FSM 2023 51


Environnement de programmation : écriture
d’un programme LabVIEW
Type de connexions : Codage
Couleurs associées aux fils de connexions
Épaisseur du fil  nature des données (scalaire, tableau 1D, tableau 2D)

Adnen .A Programmation LabVIEW FSM 2023 52


Environnement de programmation : écriture
d’un programme LabVIEW
Type de connexions : Codage
 Codage des nombres entiers : sur un octet

Adnen .A Programmation LabVIEW FSM 2023 53


Environnement de programmation : écriture
d’un programme LabVIEW
Type de connexions : Codage
 Codage des nombres entiers : sur deux octet

Adnen .A Programmation LabVIEW FSM 2023 54


Environnement de programmation : écriture
d’un programme LabVIEW
Type de connexions : Codage
 Codage des nombres Virgule flottante

Adnen .A Programmation LabVIEW FSM 2023 55


Environnement de programmation : écriture
d’un programme LabVIEW
Fonctions de base
La bobine sert à connecter
les différents éléments.

Adnen .A Programmation LabVIEW FSM 2023 56


Environnement de programmation : écriture
d’un programme LabVIEW
Fonctions de base: Astuces de connexions

Adnen .A Programmation LabVIEW FSM 2023 57


Environnement de programmation : écriture
d’un programme LabVIEW
Programmation par flux de données

exécution parallèle

le flux de donnée détermine l'ordre d'exécution

• L’exécution du diagramme dépend du flux de données.


• L’exécution du nœud se fait quand les données sont disponibles à tous les
terminaux d’entrée.
• Puis les nœuds fournissent des données à tous les terminaux de sortie.
• La plupart des langages de programmation textuel (Visual Basic, C++,
Java,…) utilisent des modèles de flux de commandes. C’est l’ordre
séquentiel des éléments du programme qui détermine l’ordre
d’exécution du programme.

Adnen .A Programmation LabVIEW FSM 2023 58


Environnement de programmation : écriture
d’un programme LabVIEW
Ouvrir un VI / Créer un VI vide

Adnen .A Programmation LabVIEW FSM 2023 59


Environnement de programmation : écriture
d’un programme LabVIEW

Révision

Adnen .A Programmation LabVIEW FSM 2023 60


Environnement de programmation : écriture
d’un programme LabVIEW

Révision

Adnen .A Programmation LabVIEW FSM 2023 61


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 1 - Conversion de °C en °F et en K
Réaliser un VI qui permet d’effectuer une conversion de °C en K et
en °F à partir de fonctions de base de labVIEW.
Conversion de °C en K : K = °C + 273,15
Conversion de °C en °F : °F = ((9 x °C) / 5) + 32

Adnen .A Programmation LabVIEW FSM 2023 62


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 2 -
Réaliser un VI qui permet de c alculer c = 2(a+b)(a-3b) ou a, b et c des
réels.

Bouton Terminaux de
Nœud Terminaux
Incrémenter / contrôle (entrées) d’indicateur
Décrémenter
(sortie)

Commande numérique Indicateur numérique

Fils de liaisons

Cadre gras Cadre fin

Adnen .A Programmation LabVIEW FSM 2023 63


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 3 -
On veut créer une interface qui permet de saisir une température
actuelle, une température maximale et une température minimale,
et qui permet d’afficher les messages suivant :
• "Pas de mise en garde" : si la température actuelle est comprise entre Tmax et Tmin.
• "Mise en garde canicule" : si la température actuelle est supérieure Tmax.
• "Mise en garde gel" : si la température actuelle est inférieure à Tmin.

L’interface utilisateur contient aussi un indicateur booléen de couleur vert


s’il n’y pas de mise en garde ou de couleur rouge s’il y a mise en garde.
 Les fonctions qu’on va utiliser sont :

réaliser le programme en LabVIEW de mise en garde et l’exécuter.

Adnen .A Programmation LabVIEW FSM 2023 64


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 3 -
Fonction SELECT

Solution

Adnen .A Programmation LabVIEW FSM 2023 65


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 3 - Exemple de solution possible
Implémenter ce VI. Lancer l’exécution. Commenter.

 Pointeur de la sourie + Ctrl + H = Aide pour chaque fonction

Adnen .A Programmation LabVIEW FSM 2023 66


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 4 – fonctions numériques
Créer quatre indicateurs numériques que vous pourrez nommer
• ‘ somme ’
• ‘ soustraction ’
• ‘ multiplication ’
• ‘ division

Adnen .A Programmation LabVIEW FSM 2023 67


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 5 – fonctions booléennes
Réaliser la face avant et le diagramme d’un VI montrant quelques opérations
booléennes :
• ET
• OU
• OU exclusif (XOR)
• Opération composée (plusieurs entrées)
Solution

Adnen .A Programmation LabVIEW FSM 2023 68


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 6 – fonctions booléennes
Réaliser un programme qui allume un afficheur booléen si deux interrupteurs K1
et K2 sont enfoncés.

Solution

Adnen .A Programmation LabVIEW FSM 2023 69


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 7 – Fonction chaine de caractères
Réaliser un programme qui affiche sur un indicateur chaîne de caractère unique le
contenu deux commandes de chaines de caractère..

Solution

Adnen .A Programmation LabVIEW FSM 2023 70


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 8 –
À l’aide des sous-menus du menu Commande, reproduire la face avant
représentée ci-dessous

Adnen .A Programmation LabVIEW FSM 2023 71


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 8 –
À l’aide des sous-menus
du menu Fonctions,
reproduire le
diagramme représenté
ci-contre

Adnen .A Programmation LabVIEW FSM 2023 72


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 8 –
Exécuter le VI, corriger les erreurs si nécessaire et analyser les résultats

Adnen .A Programmation LabVIEW FSM 2023 73


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 8 – Technique de développement et
débogage
Flèche brisée dans la barre d’outils = exécution impossible !
Recherche d’erreur  double-clic sur la flèche brisée !

Mise au point d’un diagramme  mode pas à pas !


Exécute le diagramme nœud par nœud !

Visualisation séquentielle du déroulement du diagramme  mode animation !


Permet de suivre à vitesse lente le flux de données au sein du diagramme !

Mise en place d’indicateur locaux  mode sonde !


Visualiser des données dans un fil au fur et à mesure de leurs acheminement !

Adnen .A Programmation LabVIEW FSM 2023 74


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)

•Qu’est-ce qu’un sous VI ?

•Assigner un connecteur et réaliser


une icône pour un sous VI.

• Utiliser un VI en tant que sous VI.

Adnen .A Programmation LabVIEW FSM 2023 75


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Un sous VI est un VI
qui peut être utilisé
dans un autre VI de
plus haut niveau.

Avantages :
• Modularité (création de blocs de
base réutilisable pour diverses
applications : gain de productivité)

• Facilite le « débogage »

• Nécessite une seule création de


code.
Adnen .A Programmation LabVIEW FSM 2023 76
Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)

Sous VI Icône représentative du VI de plus


haut niveau
Icône représentative du sous VI

Sous VI
VI Principal

Adnen .A Programmation LabVIEW FSM 2023 77


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Étapes de création d’un sous VI

• Créer l’icône
• Visualiser le connecteur
• Assigner les terminaux
• Sauvegarder le VI
• Insérer le VI dans un VI de plus haut niveau

Adnen .A Programmation LabVIEW FSM 2023 78


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Créer une icône
- Cliquez avec le bouton droit sur l’icône de la face avant (en haut à
droite), ou sur l’icône du diagramme et choisir “Éditer l’icône”.
- La personnalisation de l’icône est tout à fait facultative et ne changera
rien au fonctionnement du sous VI.
Palette d’outils d’édition du dessin

Adnen .A Programmation LabVIEW FSM 2023 79


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Visualiser le connecteur
Cliquer avec le bouton droit sur l’icône (face avant seulement) et choisir
“Visualiser le connecteur”.

Adnen .A Programmation LabVIEW FSM 2023 80


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme) En général, on choisira
Assigner les terminaux de mettre les entrées à
gauche et les sorties à
droite.

Adnen .A Programmation LabVIEW FSM 2023 81


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Assigner les terminaux
Terminaux « nécessaires », « recommandés », « optionnels ».
Lorsque l’on assigne les connecteurs il est possible de définir
leur importance en leur attachant un des trois termes suivants:
« Nécessaire », « Recommandée », « Optionnelle »

Icône :

Adnen .A Programmation LabVIEW FSM 2023 82


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Sauvegarde du VI
• Choisir un emplacement adéquat
• Organiser par fonctionnalités
– Sauvegarder les VI similaires dans un même répertoire
(ex : Outils mathématiques, traitement d’images, gestion
multimètres, gestion moteur,…)
• Organiser par applications
– Sauvegarder tous les VI utilisés pour une application spécifique
dans un répertoire ou une librairie.
(ex : Étalonnage micromètres objet, Pilotage TGV,…)
Les librairies (.llb) combinent plusieurs VI dans un seul fichier. Ceci
est idéal pour transférer des applications complètes vers d’autres
ordinateurs.

Adnen .A Programmation LabVIEW FSM 2023 83


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Insérez le sous VI dans un VI de niveau supérieur
Accès aux sous-VI personnels :
Fonctions >> Toutes les Fonctions >>…
… >> Sélection d’un VI
OU
Faire glisser l’icône du sous VI sur le diagramme
cible de haut niveau.

Adnen .A Programmation LabVIEW FSM 2023 84


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Autre méthode de création d’un sous VI
• Sélectionner une zone à convertir en sous VI.
• Sélectionner dans la barre des menus “Édition” : “Créer un sous VI”.

Icône par défaut

Adnen .A Programmation LabVIEW FSM 2023 85


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Astuces pour travailler dans LabVIEW

Quelques raccourcis clavier


<Ctrl+H> – Activer/désactiver la fenêtre d’aide contextuelle.
<Ctrl+B> – Supprimer les connexions erronées du diagramme.
<Ctrl+E> – Basculer entre la face avant et le diagramme.
<Ctrl+T> – Mosaïque verticale des fenêtres.
<Ctrl+Z> – Annuler (aussi dans le menu Édition).
<Ctrl+C> – Copier un objet.
<Ctrl+V> – Coller un objet.

Adnen .A Programmation LabVIEW FSM 2023 86


Environnement de programmation : écriture
d’un programme LabVIEW
Sous VI (sous programme)
Exemple de création d’un sous VI

Adnen .A Programmation LabVIEW FSM 2023 87


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 9 : Sous-VI
1-Réaliser un programme qui convertit une température en °C en °K
(avec °K = °C +273.15)
2- Rendre ce VI en sous-VI : (créer l’icône, le connecteur et de l’aide).
icône : , aide : «Conversion de °C en °K »

3- Utiliser ce VI pour réaliser un VI qui permet d’afficher sur un thermomètre la


valeur en °C et allume un afficheur booléen (°C) ou la valeur en °K et allume un
afficheur booléen (°K) selon la face avant suivante:

Adnen .A Programmation LabVIEW FSM 2023 88


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 9 : Sous-VI
Solution
1- Réalisation d’un VI qui convertit une température en °C en °K

2- Création d’un sou-VI qui convertit une température en °C en °K

3- Création de l’icône du sou-VI

Adnen .A Programmation LabVIEW FSM 2023 89


Environnement de programmation : écriture
d’un programme LabVIEW
Exercice 9 : Sous-VI
Solution
Création du connecteur

Création de l’aide

3- Réalisation du VI principal

Adnen .A Programmation LabVIEW FSM 2023 90


Partie 3:
Structure conditionnelles et structure
itératives

Adnen .A Programmation LabVIEW FSM 2023 91


Partie 3 : Structure conditionnelles et
structure itératives

• Concept de boucle et de structure


• Structures itératives :
- Boucle “For”, Boucle “While”.
- Tunnel et Registre à décalages.
- Graphiques : Affichages de plusieurs courbes sur un même
graphique.
• Structures Conditionnelles :
- Condition, à choix multiples, Séquence

Adnen .A Programmation LabVIEW FSM 2023 92


Partie 3 : Structure conditionnelles et
structure itératives
Concept de boucle et de structure
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.
Boucles identique à celles mises en jeu en programmation en
langage C ou en langage BASIC
Structures contrôlent le flux de données dans un VI.
Structurespermettent d’organiser, de séquencer ou de
conditionner des éléments d’un V.I. ou un VI. complet

Structure:
conditions = if, then, else…
 temporelle = déroulement du programme (pas de flux de
données)…

Adnen .A Programmation LabVIEW FSM 2023 93


Partie 3 : Structure conditionnelles et
structure itératives
Concept de boucle et de structure
Bibliothèque boucles et structures …

Adnen .A Programmation LabVIEW FSM 2023 94


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative : Boucle For

Adnen .A Programmation LabVIEW FSM 2023 95


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative : Boucle For
NB. Boucle for conditionnelle :

Boucle avec terminal d’arrêt pour arrêter


l’exécution avant à nombre d’itération < N

Clic droit >> Terminal de condition

Terminal d’arrêt

Adnen .A Programmation LabVIEW FSM 2023 96


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative : While (tant que)

Adnen .A Programmation LabVIEW FSM 2023 97


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative : While (tant que)
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

Teste la valeur du  Boucle comparable


terminal à la boucle
conditionnel à DO…WHILE en
chaque itération
programmation en
langage C ou BASIC
Au moins une
exécution !

Terminal Terminal
conditionnel
d’itération
Terminal de commande
booléenne

Adnen .A Programmation LabVIEW FSM 2023 98


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative : While (tant que)
La condition d’arrêt, présentée ci-contre, permet de contrôler
l’exécution de la boucle. La condition par défaut est Continuer si
vrai. D’un clic droit il est possible d’inverser cette condition. L’icône
prend alors l’allure présentée à gauche.

Le nombre d’itérations effectuées est contenu dans l’icône présentée


à gauche. Cette variable est initialisée à 0 lors de la première
itération.

- Terminale de condition = arrêter si condition vrai


- Terminale de commande booléene = Faux
 Boucle infinie

Le changement de la valeur de la commande n’arrête pas la boucle


infinie parce que la valeur n’est lue qu’une fois, avant que la boucle
ne démarre.
Adnen .A Programmation LabVIEW FSM 2023 99
Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative : While Vs for
• La boucle While (tant que)
– Possède un compteur d’itération.
– S’exécute toujours au moins
une fois.
– Continue de s’exécuter tant que
l’on a pas appuyer sur le bouton
Stop.
Itération
• La boucle For
– Possède un compteur d’itération.
– S’exécute N fois (N
paramétrable).
– Pour N = 4, i = 0, 1, 2, 3.
Adnen .A Programmation LabVIEW FSM 2023 100
Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative : Création
1. Choisissez votre boucle. 2. Encadrer le code qui doit être répété.

3. Placez les nœuds additionnels (contrôle booléen : bouton stop par


exemple) et reliez-les.

Adnen .A Programmation LabVIEW FSM 2023 101


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative et les Tunnel
Les tunnels acheminent les données vers l’intérieur et l’extérieur
des boucles ou des structures.
-Le tunnel apparaît comme un carré
coloré sur le bord de la boucle While.
- La couleur du tunnel correspond à
celle du type de données câblé au
tunnel.
- Les données sortent de la boucle une
fois les l’exécution de la boucle est
achevée.
-Lorsqu’un tunnel transmet des données
à une boucle, celle-ci ne s’exécute
qu’une fois les données arrivées au
tunnel.
Adnen .A Programmation LabVIEW FSM 2023 102
Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative et les Tunnel
Exemple :

Modifié le diagramme de la figure précédente en plaçant


l’indicateur Itérations en dehors de la boucle while. Exécuter le
VI et noter vos remarques.

Adnen .A Programmation LabVIEW FSM 2023 103


Partie 3 : Structure conditionnelles et
structure itératives
Registre à décalage
- Variables locales qui
transfèrent des données entre
deux itérations consécutives
d’une même boucle  2
terminaux placés au bord droit
et gauche de la boucle.
- Structure disponible également sur les boucles WHILE.
- terminaux ajoutés aux bords latéraux de la boucle
Il est possible de rajouter
des éléments aux
registres de gauche pour
obtenir les valeurs t-1, t-
2, t-3… comme l’illustre
la figure ci-après.

Adnen .A Programmation LabVIEW FSM 2023 104


Partie 3 : Structure conditionnelles et
structure itératives
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

 Un registre à décalage peut être utilisé avec une boule For et


une boucle While

Adnen .A Programmation LabVIEW FSM 2023 105


Partie 3 : Structure conditionnelles et
structure itératives
Registre à décalage
Attention !! L’initialisation du registre à décalage est importante
pour éviter les erreurs !

Adnen .A Programmation LabVIEW FSM 2023 106


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative - Graphiques
Le graphique est un indicateur numérique particulier qui propose
un historique des valeurs.
Commandes >> Toutes les commandes >> Graphes

Adnen .A Programmation LabVIEW FSM 2023 107


Partie 3 : Structure conditionnelles et
structure itératives
Structure itérative – Graphiques et Connexions
Une seule courbe

Plusieurs courbes

La fonction “Fusionner les signaux” sert


à combiner des données dans un type
de données dynamiques (informations
générées ou acquises par un VI Express).
Adnen .A Programmation LabVIEW FSM 2023 108
Partie 3 : Structure conditionnelles et
structure itératives
Exercice - Utilisation d’une boucle
Créer un VI qui génère un nombre aléatoire avec un temps
d’attente que l’utilisateur peut modifier.
L’arrêt du programme se fait à l’aide du bouton stop de la face
avant.
Exemples de solutions possible

Adnen .A Programmation LabVIEW FSM 2023 109


Partie 3 : Structure conditionnelles et
structure itératives
Structure alternative : CONDITION
Dans la sous palette Structures de la palette de Fonctions.
Uniquement un seul cas est visible à la fois.

Adnen .A Programmation LabVIEW FSM 2023 110


Partie 3 : Structure conditionnelles et
structure itératives
Structure alternative : CONDITION

Adnen .A Programmation LabVIEW FSM 2023 111


Partie 3 : Structure conditionnelles et
structure itératives
Structure à choix multiples: selon le cas ….. faire

Adnen .A Programmation LabVIEW FSM 2023 112


Partie 3 : Structure conditionnelles et
structure itératives
Structure Séquentielle: Séquence

Permet l’exécution de sous-diagramme de manière séquentielle


Structure chronologique des actions
 Cet outil permet ) LabVIEW de contrôler l’ordre dans lequel les nœuds du VI
doivent s’exécuter

Adnen .A Programmation LabVIEW FSM 2023 113


Partie 3 : Structure conditionnelles et
structure itératives
Structure Séquentielle: Séquence empilée ou
déroulée
 Palette Fonctions et sous palette Structure.
 Exécute le diagramme de façon séquentielle.
 Clic droit sur la structure pour ajouter une nouvelle étape.
Structure séquence déroulée

Structure séquence empilée

Adnen .A Programmation LabVIEW FSM 2023 114


Partie 4:
Tableaux, Graphiques, Clusters et
fichiers

Adnen .A Programmation LabVIEW FSM 2023 115


Partie 4 :Tableaux, Graphiques, Clusters et
fichiers

• Tableaux
- Concept, Construction, Fonctions de bases
• Clusters
- Clusters Assembler/désassembler, Clusters d’erreurs.
• Graphiques
- Types de Graphiques
• Fichiers

Adnen .A Programmation LabVIEW FSM 2023 116


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Concept d’un tableau LabVIEW

Les tableaux combinent des données du même type dans une


structure de données.

Les tableaux sont utiles, par exemple, pour stocker des


données générées, la plupart du temps, dans des boucles lors de
chaque itération.

Il est possible de construire des tableaux de données


numériques, de booléens, de chemins, de clusters, de chaînes de
caractères,…

Attention: Il n’est pas possible de créer des tableaux de


tableaux!!!
Adnen .A Programmation LabVIEW FSM 2023 117
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Concept d’un tableau LabVIEW

Exemple de tableau.

Chaque éléments d’un tableau est


accessible par son indice.

Ainsi la valeur (l’élément) « 0,658384 » est à


l’indice 0. L’élément « 0,659422 » est à l’indice 3,...

Adnen .A Programmation LabVIEW FSM 2023 118


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Concept d’un tableau LabVIEW

Adnen .A Programmation LabVIEW FSM 2023 119


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : manuelle

Tableau de commandes ou Tableau de constantes


d’indicateurs (palette fonctions)

Déposez le tableau vide sur la face avant

Adnen .A Programmation LabVIEW FSM 2023 120


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : manuelle
Placez un objet dans le tableau (un contrôle, une constante
numérique, une chaîne de caractères, un booléen,…).
Tableau de constantes

Tableau de contrôle

Possibilité de créer un tableau 1D sous forme d’une ligne ou d’une


colonne suivant les besoins de l’application.
Adnen .A Programmation LabVIEW FSM 2023 121
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : Automatique (auto-indexation  boucle For)
Auto-indexation activée !
Auto-indexation désactivée !

Attention : Pas d’auto-


indextion avec la boucle
While  par défaut tunnel
dernière valeur !!!!

Adnen .A Programmation LabVIEW FSM 2023 122


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : Automatique (auto-indexation  boucle For)

Auto-indexation avec boucle For

Un tableau 2D est caractérisé par la présence de 2 indices (un


pour la ligne et un pour la colonne).
Adnen .A Programmation LabVIEW FSM 2023 123
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : Automatique (auto-indexation  boucle For)

Attention: pas d’auto-indexation par défaut avec la boucle while

Adnen .A Programmation LabVIEW FSM 2023 124


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : Automatique (auto-indexation  boucle For)
Tableau en ENTRÉE d’une boucle For

Si l’indexation automatique est activée pour un tableau câblé en


entrée d’une boucle For, le terminal (N) de décompte s’adapte
automatiquement à la taille du tableau.
La boucle For s’exécute alors un nombre de fois égal au nombre
d’éléments du tableau.
fonction Polymorphe (fonction intelligente )
Adnen .A Programmation LabVIEW FSM 2023 125
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : Automatique (auto-indexation  boucle For)
Tableau en ENTRÉE d’une boucle For

Observer la largeur des fils dans la deuxième boucle: on traite les


éléments un par un grâce à l’auto indexation.
 Il est alors inutile de relier N, sa valeur sera celle du
nombre d’éléments du tableau d’entrée.
Adnen .A Programmation LabVIEW FSM 2023 126
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : Automatique (auto-indexation  boucle For)
Tableau en ENTRÉE d’une boucle For

Adnen .A Programmation LabVIEW FSM 2023 127


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Construire un tableau : Automatique (auto-indexation  boucle For)
Tableau en ENTRÉE d’une boucle For

Si deux tableaux sont connectés en entrée de la boucle ainsi que le


terminal de décompte (N), alors la boucle effectuera un nombre
d’itérations égal au plus petit nombre disponible.
Dans l’exemple ci-dessus, le premier tableau a 7 éléments, le
second en a 4 et la valeur 6 est câblée à N. Donc la boucle For ne
s’exécute que 4 fois.

Adnen .A Programmation LabVIEW FSM 2023 128


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Les fonctions de base

Commandes >> Toutes les commandes >> Tableau et cluster >> Tableau

Adnen .A Programmation LabVIEW FSM 2023 129


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux : Les fonctions de base
 Taille d’un tableau

 Initialize Array

Adnen .A Programmation LabVIEW FSM 2023 130


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux : Les fonctions de base
 Initialize Array

 Array Subset

Adnen .A Programmation LabVIEW FSM 2023 131


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux : Les fonctions de base
Build Array

Adnen .A Programmation LabVIEW FSM 2023 132


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux : Les fonctions de base
I ndex Array

Adnen .A Programmation LabVIEW FSM 2023 133


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Les fonctions de base

Résumé

Adnen .A Programmation LabVIEW FSM 2023 134


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Tableaux
Les fonctions de base : fonction « Construire un tableau »

Adnen .A Programmation LabVIEW FSM 2023 135


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Clusters
Clusters Assembler / désassembler
Manipulations correctes des graphes maîtrise des clusters
Exemple: Sur un graphe déroulant peuvent être affichés simultanément
plusieurs tracé  Utilisation de la fonction Assembler (Bundle)
Assembler  permet la combinaison de plusieurs données en cluster

Assembler par nom

Modification d’un cluster


Adnen .A Programmation LabVIEW FSM 2023 136
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Clusters
Clusters Assembler / désassembler

Adnen .A Programmation LabVIEW FSM 2023 137


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Clusters
Clusters d’erreurs
• Un cluster d’erreur permet la visualisation d’un problème lors de
l’exécution d’un VI.
• Un cluster d’erreur contient les informations suivantes :
– État rapporte si une erreur se produit (valeur booléenne).
– Code rapporte le code spécifique de l’erreur (Entier 32 bits).
– Source donne des informations sur l’erreur (Chaîne de caractères).

Pas d’erreur Erreur

Adnen .A Programmation LabVIEW FSM 2023 138


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Clusters
Clusters d’erreurs
• L’information d’erreur est passée d’un sous VI au suivant.
• Si une erreur se produit dans un sous VI, tous les sous VI suivants ne
sont pas exécutés de la façon habituelle.
• Gestion d’erreur automatique.
Exemple

Clusters d’erreurs

Adnen .A Programmation LabVIEW FSM 2023 139


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Exercice - Cluster, manipulation d’erreurs et
structure condition
• Générer un VI qui permet de visualiser une erreur lorsque l’on
essaye de calculer la racine carré d’un nombre négatif.
Exemples de solutions possible

Le programme fonctionne en continu grâce à la


boucle While. Celle- ci s’arrête dès que l’on appui
sur le bouton Stop où dès que l’on rentre une
valeur négative dans la commande « Numérique ».

Adnen .A Programmation LabVIEW FSM 2023 140


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Graphiques
Types des Graphiques

• Graphe déroulant : Trace les données


en continu, en plaçant les anciennes
données sur la gauche et les nouvelles à
droite. Les anciennes données
disparaissent au fur et à mesure que
de nouvelles arrivent.
• Graphe : Trace un tableau de
nombres en fonction de leurs indices.
• Graphe XY (Express) :Trace un seul
tableau en fonction de deux autres
tableaux.
• Graphe numérique : Trace des bits
depuis des données binaires.
Adnen .A Programmation LabVIEW FSM 2023 141
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Graphiques
Paramétrage des Graphiques
Faire un clic droit sur le graphique et sélectionner “propriétés”
pour personnaliser l’affichage (échelle, couleurs, curseurs,…).

Adnen .A Programmation LabVIEW FSM 2023 142


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Graphiques
Types des Graphiques: Graphe Numérique

Utilisation des clusters

Adnen .A Programmation LabVIEW FSM 2023 143


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Graphiques
Types des Graphiques: Graphe XY

Adnen .A Programmation LabVIEW FSM 2023 144


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Exercice 4 - Utilisation de graphiques
• Générer un VI qui simule un signal sinusoïdal et un signal carré
dont on peut modifier la fréquence et l’amplitude ainsi que le rapport
cyclique (pour le signal carré).
• Afficher les deux courbes sur le même graphe.
Exemples de solutions possible

Assembler
signaux

Adnen .A Programmation LabVIEW FSM 2023 145


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Exercice - Utilisation de graphiques
•Palettes fonctions >> Express >> analyse des signaux >> simuler un
signal

Adnen .A Programmation LabVIEW FSM 2023 146


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers:
Introduction aux E/S sur fichiers
• Les E/S sur fichier écrivent ou lisent des données dans un fichier.
• Une opération d’E/S sur fichiers se compose habituellement des étapes
suivantes
1- Créer ou ouvrir un fichier. Lorsque le fichier est ouvert, un
identificateur unique appelé un refnum le représente.
2- Le VI ou la fonction d’E/S sur fichiers lit le fichier ou y écrit.
3- Fermer le fichier.
4- Vérifier s’il y a des erreurs.

Open/ Read
Close Check for
Create/ and/or
File Errors
Replace File Write to File

Adnen .A Programmation LabVIEW FSM 2023 147


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers:
Format de Fichier
• Les fichiers peuvent être des éléments binaires, du texte, ou des
tableaux.
Il y a trois types de fichiers:
• Fichiers ASCII (qui peuvent être lus par d’autres logiciels comme Excel,
Origin…): Un fichier ASCII est un type de fichier binaire spécifique 
fichier .txt
• Fichiers data log (format propre à Labview et qui peut contenir de
multiple formats de données): c’est un fichier texte délimité par des
tabulations. Il peut être ouvert avec tableur ou texte. Ce format de fichier
est un type de fichier ASCII spécifiquement créé pour LabVIEW  fichier
LVM
• Fichiers binaires (les plus rapides et petits): sont à la base de tous les
autre formats de fichier.

Adnen .A Programmation LabVIEW FSM 2023 148


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers:
VI d’E/S de haut niveau
• Certains VIs d’E/S sur fichier, de la bibliothèque labVIEW, effectuent les
trois étapes d’un processus d’E/S sur fichier : l’ouverture, la lecture ou
l’écriture ou la fermeture.
VI d’E/S de bas niveau
• Effectuent la lecture ou l’écriture avec une boucle While ou une boucle
For
• Chaque VI et fonction d’E/S sur fichier bas niveau effectue une étape
spécifique du processus d’E/S sur fichier
• Il existe, par exemple, une fonction qui ouvre un fichier ASCII, une
fonction qui lit un fichier ASCII et une fonction qui ferme un fichier ASCII

Adnen .A Programmation LabVIEW FSM 2023 149


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers: VI d’E/S Haut niveau (Lire/écrire sur un tableau)
VI d’E/S LVM (fichier de mesure (xls)

VI d’E/S Bas niveau

Adnen .A Programmation LabVIEW FSM 2023 150


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers: VI d’E/S Haut niveau (Lire/écrire sur un tableau)

Format :
%.3f : double précision
%s : chaine
%d: entier

Adnen .A Programmation LabVIEW FSM 2023 151


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers:
Exemple: Écrire / lire dans un fichier de haut niveau.

Adnen .A Programmation LabVIEW FSM 2023 152


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers:
Écrire / lire dans un fichier de bas niveau.
① Ouvrir/créer/Remplacer un fichier
② Ecrire/lire dans le fichier  boucle (chaque itération = un caractère)
③ Fermer un fichier
④ Vérifier s’il y a des erreurs


donnée ③ ④

Contrôle d’erreur
Adnen .A Programmation LabVIEW FSM 2023 153
Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers:
Exemple : Écrire / lire dans un fichier de bas niveau.

① ③ ④

① Ouvrir un fichier
② Ecrire dans le fichier
③ Fermer un fichier
④ Vérifier s’il y a des erreurs

Adnen .A Programmation LabVIEW FSM 2023 154


Partie 4 : Tableaux, Graphiques, Clusters et
fichiers
Les Fichiers:
Écrire / lire le fichier LVMeasurements (*.lvm) à l’aide de VI Express.

Lire un fichier *.lvm


Écrire dans un fichier *.lvm
• Inclut les fonctions ouvrir, écrire, fermer et gérer les erreurs.
• Gère le formatage des chaînes avec soit une tabulation soit une virgule
comme délimiteur.
• La fonction “Fusionner les signaux” sert à combiner des données
dans un type de données dynamiques.

Adnen .A Programmation LabVIEW FSM 2023 155


Partie 5:
Les interfaces dynamiques

Adnen .A Programmation LabVIEW FSM 2023 156


Partie 5 : Les interfaces dynamiques

• Variables locales
• Variables globales
• Les Commandes énumérations
• Les constantes énumérations
• Les nœuds de propriétés

Adnen .A Programmation LabVIEW FSM 2023 157


Partie 5 : Les interfaces dynamiques
Les variables locales(VL)
Définition : duplications de terminaux dans un même diagramme
Fonctionnalités : pouvoir écrire (même pour les terminaux commande)
ou lire (même pour les terminaux indicateur) en n’importe quel point du
diagramme
Intérêts : initialisation de valeurs en face avant ou asservissement de
commandes
Comment la créer : dans le diagramme, menu Structures dans la palette
Fonctions  mais elle n’est associée à aucun terminal !
Associer la variable : clic droit sur la variable puis sélectionner un
élément pour associer un terminal
Alternative : clic droit sur le terminal puis créer la variable locale
Une variable locale n’est visible que dans un seul VI.

Adnen .A Programmation LabVIEW FSM 2023 158


Partie 5 : Les interfaces dynamiques
Les variables locales(VL)
Comment la créer ?
dans le diagramme, menu Structures dans la palette Fonctions
 mais elle n’est associée à aucun terminal !

Adnen .A Programmation LabVIEW FSM 2023 159


Partie 5 : Les interfaces dynamiques
Les variables locales(VL)
Comment la créer ?
Alternative : clic droit sur le terminal (Numérique, Booléen ou chaîne)
puis créer la variable locale. Chaque terminal peut avoir une V.L

Une variable locale n’est visible que sur le diagramme


Une variable locale n’est visible que dans un seul VI.
Adnen .A Programmation LabVIEW FSM 2023 160
Partie 5 : Les interfaces dynamiques
Les variables locales(VL)
Exemple1: utilisation des variables locales

V. Locale de l’objet affichage

La variable locale permet d’afficher l’un des trois résultats (a>b ,a=b, a<b) sur le
même indicateur affichage « affichage »

Adnen .A Programmation LabVIEW FSM 2023 161


Partie 5 : Les interfaces dynamiques
Les variables locales(VL)
Exemple 2: utilisation des variables locales

Variation du courant : ok
-commande courant(A) est validée
-commande tension(V) bloquée

Variation du tension : ok
-commande courant(A) bloquée
-commande tension(V) est validée

Adnen .A Programmation LabVIEW FSM 2023 162


Partie 5 : Les interfaces dynamiques
Les variables globales(VG)
Définition: duplications de terminaux utilisables dans n’importe quel programme
Présentation : sous-VI représenté uniquement par une face avant
Fonctionnalités: partage de données
Comment la créer: dans le diagramme, menu Structures dans la palette
Fonctions
 mais c’est alors une structure vide !

une structure vide (sans


données)  variable
vide sans type

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
Adnen .A Programmation LabVIEW FSM 2023 163
Partie 5 : Les interfaces dynamiques
Les variables globales(VG): création et utilisation

Adnen .A Programmation LabVIEW FSM 2023 164


Partie 5 : Les interfaces dynamiques
Les variables globales(VG): création et utilisation
Créer les données composant la variable globale déjà créée
1- double clic droit sur l’icône de la variable pour ouvrir sa face avant
2- Créer les différentes données (numériques, booléennes, tableaux, cluster,…)
3- Sauvegarder la variable globale avec l’extension .gbl

Adnen .A Programmation LabVIEW FSM 2023 165


Partie 5 : Les interfaces dynamiques
Les nœuds de propriété NP
Définition : permet l’accès à certains éléments d’un objet en lecture ou en
écriture.
Fonctionnalités : changer la valeur, redimensionner, rendre visible, faire clignoter,
changer la couleur… d’éléments de la face avant
Permet l’accès aux propriétés d’un objet de la face avant
Intérêts : pouvoir modifier par programmation l’apparence des objets de la face
avant en réponse à certaines commandes

Exemple
 Clignoter une led lors de la saisie d’un mauvais mot de passe
 Changer la couleur d’un thermomètre suivant les consignes des valeurs de la
température
 afficher/masquer des objets de la face avant
 Dans la programmation Labview, les nœuds de propriété sont très
puissants et ont de nombreux usages

Adnen .A Programmation LabVIEW FSM 2023 166


Partie 5 : Les interfaces dynamiques
Les nœuds de propriété: création
1- Dans le diagramme, menu Contrôles d’application dans la palette Fonctions
2- Clic droit pour lier avec un objet ou terminal

Dans un premier temps il faut


relier le nœud de propriété à
un objet précis.

Dans un second temps il faut


choisir les propriétés de
l’objet qui nous intéressent.
 mais elle n’est associée à
aucun terminal !

Adnen .A Programmation LabVIEW FSM 2023 167


Partie 5 : Les interfaces dynamiques
Les nœuds de propriété: création d’alternative
Clic droit sur le terminal puis créer le nœud de propriété puis choisir la propriété

Adnen .A Programmation LabVIEW FSM 2023 168


Partie 5 : Les interfaces dynamiques
Les nœuds de propriété:
Propriétés
 Un nœud de propriété se crée sur le diagramme
 Un nœud de propriété est lié implicitement à son objet de la face avant
 Un nœud de propriété à par défaut l’étiquette de son objet qu’on peut la
modifiée
 Un objet ou terminal peut avoir plusieurs nœuds de propriété
 Un nœud de propriété peut avoir une ou plusieurs propriétés
(redimensionner)
 Chaque terminal du nœud de propriété est associé à une propriété différente

 Les nœuds de propriété exécutent tous les terminaux dans


l’ordre, du haut en bas.

Adnen .A Programmation LabVIEW FSM 2023 169


Partie 5 : Les interfaces dynamiques
Les nœuds de propriété:
Utilisation
 Mode lecture: pour obtenir l’état actuel (les informations) de la propriété de
l’objet
 Mode écriture : pour définir l’état (les informations) de la propriété de l’objet

Exemple : Visible
Nœud de propriété d’une
commande numérique avec la
propriété Visible en mode
écriture

Adnen .A Programmation LabVIEW FSM 2023 170


Partie 5 : Les interfaces dynamiques
Les nœuds de propriétés: utilisation des clusters
Cluster :
Plusieurs propriétés accessibles avec les fonctions de cluster

Exemple :
Assembler  pour écrire des données dans ces propriétés groupées (ex. left, top)
Désassembler  pour lire les données de ces propriétés (ex. left, top)

Attention!!!
Nœud en écriture  définir les information de la propriété
Nœud en lecture  obtenir des information sur la propriété

Remarque
Pour accéder à l’ensemble des propriétés  sélectionner tous les éléments du menu
local

Adnen .A Programmation LabVIEW FSM 2023 171


Partie 5 : Les interfaces dynamiques
Les nœuds de propriétés: Exemple
Lecture des Propriétés des clusters
Propriété Position { Gauche, Haut}
On peut accéder à ces propriétés de deux
manières différentes
 accès individuelle : pas d’utilisation de cluster  accès à tous les éléments
désassembler

Adnen .A Programmation LabVIEW FSM 2023 172


Partie 5 : Les interfaces dynamiques
Les nœuds de propriétés: Position/Cluster
Désassembler tous les éléments de la
propriété Position
(0,0)

L’élément gauche et Haut de la propriété


Position

Adnen .A Programmation LabVIEW FSM 2023 173


Partie 5 : Les interfaces dynamiques
Les nœuds de propriétés: Clignotant
Écrire un VI qui permet de clignoter la valeur indicateur si cette valeur est > 20

Adnen .A Programmation LabVIEW FSM 2023 174


Partie 5 : Les interfaces dynamiques
Les nœuds de propriétés: Couleur de remplissage
Propriété du Thermomètre : « couleur Remplissage », « valeur »

Adnen .A Programmation LabVIEW FSM 2023 175


Partie 5 : Les interfaces dynamiques
Les Commandes énumérations
Pour créer une cmd énum:
Cmd-- >> Menu Dérou -- >> Enum
Pour éditer les éléments :
Enum -->> clic droit -- >> éditer les éléments

2
Adnen .A Programmation LabVIEW FSM 2023 176
Partie 5 : Les interfaces dynamiques
Les constantes énumérations
1
Créer une cnste énum:
Fonctions-- >> Numérique -- >> Cnste énum

Editer les éléments :


Cnste énum -->> clic droit -- >> avancée -- >> Personnaliser -- >> clic droit sur énum --
>> Editer les éléments

5
2

Adnen .A Programmation LabVIEW FSM 2023 177

Vous aimerez peut-être aussi