Vous êtes sur la page 1sur 83

Ce document de National Instruments a été traduit par les étudiants de la

promotion 2004 du DUT SRC de Bordeaux.

Site du département SRC (Services et Réseaux de Communication) de Bordeaux :


http://src.iut.u-bordeaux3.fr

Responsables du projet :
Cécile Boré, enseignante en anglais, cecile.bore@iut.u-bordeaux3.fr
Philippe Métayer, enseignant en électronique, philippe.metayer@iut.u-bordeaux3.fr

http://src.iut.u-bordeaux3.fr
Instrumentation Virtuelle avec LabVIEW

http://src.iut.u-bordeaux3.fr
Objectifs du cours
• Comprendre les composants d'un Instrument Virtuel (appelé VI)
• Présenter LabVIEW et les fonctions communes de LabVIEW
• Établir une application simple d'acquisition de données
• Créer un sous-programme dans LabVIEW
• Travailler avec les tableaux, les clusters et les structures
• Connaître les dispositifs d’impression et de documentation
• Développer des architectures de programmation de base
• Publier les VIs (Instruments Virtuels) sur le Web

http://src.iut.u-bordeaux3.fr
Partie I
• Vocabulaire LabVIEW
• Composants d’une application LabVIEW
• Outils de programmation LabVIEW
• Créer une application LabVIEW

http://src.iut.u-bordeaux3.fr
Les programmes LabVIEW sont appelés Instruments
Virtuels ou Virtual Instruments (VIs)

Face avant
• Contrôles = Entrées
• Indicateurs = Sorties

Diagramme
• Programme complémentaire
de la face avant
• Interaction entre face avant
et diagramme

http://src.iut.u-bordeaux3.fr
Face avant d’un VI
Barre d’outils
de la face Icones
avant
Contrôle Légende
booléen
des courbes
du graphique

Graphique

Grandeurs en
Echelle
abscisse et en
ordonnée

http://src.iut.u-bordeaux3.fr
Diagramme d’un VI
Barre
d’outils
du Fonction
diagramme division

sous-VI

Terminal
graphique

Fil de
données

Structure d’une Constante Fonction minuteur Terminal de


boucle tant que numérique contrôle booléen

http://src.iut.u-bordeaux3.fr
Les VI Express, les VI et les Fonctions
• Les VI Express : VI interactifs avec une page de dialogue configurable
• Les VI Standards : VI qui peuvent être personnalisés
• Les Fonctions : éléments d’exploitation fondamentaux de LabVIEW
Function

VI Express VI Standard

http://src.iut.u-bordeaux3.fr
Palettes de commandes et de fonctions

Palette de commandes
(Fenêtre face avant)

Palettes de fonctions
(Fenêtre diagramme)

http://src.iut.u-bordeaux3.fr
Palette d’outils
• Palette flottante
• Utilisée pour agir et modifier les objets de la
face avant et du diagramme

Outil sélection automatique

Outil manipulation Outil déplacement

Outil positionnement et taille Outil d’arrêt

Outil texte Outil sonde

Outil connection Outil copie couleur

Outil raccourci menu Outil coloriage

http://src.iut.u-bordeaux3.fr
Barre d’état

Bouton Exécution
Autres boutons dans
Bouton Exécution continue la barre d’outils du
Bouton d’Arrêt d’exécution diagramme
Bouton Pause/Reprendre Bouton de surbrillance
d’exécution
Configuration du texte
Lancer une exécution
Aligner les objets pas à pas

Distribuer les objets Progresser dans


l’exécution pas à pas
Réorganiser
Stopper une exécution
Redimensionner les objets pas à pas
de la face avant

http://src.iut.u-bordeaux3.fr
Ouvrir et exécuter un VI
Le chercheur d’exemples

http://src.iut.u-bordeaux3.fr
Créer un VI
Fenêtre de la face avant

Fenêtre du diagramme

Terminaux Terminaux
de contrôle d’indicateur

http://src.iut.u-bordeaux3.fr
Créer un VI

http://src.iut.u-bordeaux3.fr
Astuces de connections
Points de Connections Trois types de sélection :

Utilisation du
routage
automatique Mise en forme des connections

http://src.iut.u-bordeaux3.fr
Programmation par Flux de Données
• L’exécution du diagramme
dépend du flux de données; il
ne s’exécute pas de gauche à
droite ;
• L’exécution du noeud se fait
quand les données sont
disponibles à tous les
terminaux d’entrée ;
• Puis les noeuds fournissent des
données à tous les terminaux
de sortie.

http://src.iut.u-bordeaux3.fr
Les options d’aide

Aide Contextuelle
• Aide en ligne
• Aide verrouillée
• Choix du mode de l’aide
(simple ou détaillée)
• Ctrl + H

Référence en ligne
• Accès à l’intégralité des menus
• Ouverture automatique d’une fenêtre pour accéder directement à l’aide.

http://src.iut.u-bordeaux3.fr
Exercice 1 - Conversion °C en °F

http://src.iut.u-bordeaux3.fr
Techniques de débuggage
• Trouver des erreurs
Cliquer sur le symbole de la flèche coupé
Une fenêtre Windows apparaît avec les erreurs
• Animer l’exécution
Cliquer sur le bouton; les données dans des
bulles sont animées. Des valeurs sont alors
indiquées sur les fils.
• Sonde (Probe)
Cliquer droit sur le fil pour afficher une
sonde. Les données qui transitent sur ces
fils seront affichées.

Vous pouvez également choisir l'outil Probe


(Sonde) à partir de la palette d'outils.

http://src.iut.u-bordeaux3.fr
Partie II – les sous VIs

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


• Faire un connecteur et une
icône pour un sous VI.
• Utiliser un VI en tant que
sous VI.

http://src.iut.u-bordeaux3.fr
Noeud du Diagramme
Icône Nœud expansable Noeud expansé

• Exemple pour le VI Générateur de Fonctions.


• Trois représentations différentes pour un
même VI.
• Fond jaune = VI Standard.
• Fond bleu = VI Express.

http://src.iut.u-bordeaux3.fr
Sous VIs
• Un sous VI est un VI qui peut être utilisé dans un
autre VI
• Similarité avec une subroutine
• Avantages
– Modularité
– Facilite le débuggage
– Nécessite une seule création de code
– Nécessite peu de mémoire

http://src.iut.u-bordeaux3.fr
Icônes et Connecteurs

Icon
• Une icône représente un VI dans un
autre diagramme.
Terminals
• Un connecteur montre les terminaux
disponibles pour le transfert de données.
Connector

http://src.iut.u-bordeaux3.fr
Sous VIs Sous VIs

http://src.iut.u-bordeaux3.fr
Étapes de création d’un sous VI
• Créer l’icône
• Créer le connecteur
• Assigner les terminaux
• Sauvegarder le VI
• Insérer le VI dans un VI de plus haut niveau

http://src.iut.u-bordeaux3.fr
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

http://src.iut.u-bordeaux3.fr
Créer le connecteur
Cliquez avec le bouton droit sur l’icône ( face
avant seulement)

http://src.iut.u-bordeaux3.fr
Nommer les terminaux

http://src.iut.u-bordeaux3.fr
Sauvegarde du VI
• Choisir un emplacement facile à retenir
• Organiser par Fonctionnalités
– Sauvegarder les VIs similaires dans un même répertoire (ex : Outils
Mathématiques)
• Organiser par Applications
– Sauvegarder tous les VIs utilisés pour une application spécifique dans
un répertoire ou une librairie.
(ex. Expérience 1 Réponse en fréquence)
• Les librairies (.llbs) combinent plusieurs VIs dans un seul fichier, ceci est idéal
pour transférer des applications complètes vers d’autres ordinateurs.

http://src.iut.u-bordeaux3.fr
Insérez le sous VI dans un VI de niveau supérieur
Accès aux sous-VIs personnels
Fonctions >> All Fonctions >> Select un VI
Ou
Faire glisser l’icône sur le diagramme
cible

http://src.iut.u-bordeaux3.fr
Astuces pour travailler dans LabVIEW
• 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 fenêtre Face Avant et le Diagramme
– <Ctrl+Z> – Annuler (aussi dans le menu Edition)

• Tools >> Options…– Afficher les options de LabVIEW

• Propriétés du VI – Configurer l’apparence du VI, Documentation,


etc.

http://src.iut.u-bordeaux3.fr
Partie III – Acquisition de données
• Acquisition de données de Carte DAQ
base (DAQ)
• Signaux
• Application simple de DAQ
Ordinateur
Capteurs
Câble

Bloc terminal

http://src.iut.u-bordeaux3.fr
Acquisition de données avec LabVIEW

NI-DAQ traditionnel NI-DAQmx


Des VIs spécifiques Dernière génération de
pour accomplir:
drivers:
• Entrée analogique
• VIs pour accomplir
• Sortie analogique
une tâche
• E/S numérique
• Paramétrage d’un VI
• Opérations de
pour toutes les mesures
comptage

http://src.iut.u-bordeaux3.fr
DAQ – Acquisition de données
Acquisition de la température grâce à l’assistant DAQ

http://src.iut.u-bordeaux3.fr
Terminologie de l’acquisition de données
• Résolution – détermine la valeur minimale de la
variation de tension pouvant être mesurée.
– Plus la résolution est importante, plus la représentation du signal est
précise.
• Gamme – Tensions minimales et maximales
– Plus la gamme est petite, plus la représentation du signal est précise.
• Gain – Amplifie ou atténue le signal afin de l’adapter
au mieux à la gamme

http://src.iut.u-bordeaux3.fr
Connexions matérielles
SC-2075
BNC-2120

NI-ELVIS
SCB-68

http://src.iut.u-bordeaux3.fr
Exercice 2 : Acquisition de données simples.
Compléter le convertisseur C to F.vi, puis créer le
thermometre.vi

http://src.iut.u-bordeaux3.fr
Partie IV – Boucles et diagrammes
• Boucle “For”
• Boucle “While”
• Graphiques
• Affichages de plusieurs graphiques.

http://src.iut.u-bordeaux3.fr
Les boucles
• La boucle While
– Possède un compteur
d’itération
– S’exécute toujours au moins
une fois
– S’exécute selon des
paramètres de conditions

• La boucle For
– Possède un compteur d’itération
– S’exécute N fois (N
paramétrable)

http://src.iut.u-bordeaux3.fr
Les boucles (suite)
1. Choisissez votre boucle 2. Encadrer le code qui doit être répété

3. Placez les noeuds additionnels et reliez les

http://src.iut.u-bordeaux3.fr
Graphiques

Le graphique est un indicateur


numérique particulier qui
propose un historique des
valeurs

Controls >> Graph Indicators


>> Waveform Chart

http://src.iut.u-bordeaux3.fr
Techniques de connexion dans les graphiques
Plusieurs courbes
Une seule courbe

http://src.iut.u-bordeaux3.fr
Exercice 3 – Utilisation d’une boucle
Les étudiants construisent “Use a loop.vi”

http://src.iut.u-bordeaux3.fr
Partie V – Tableaux et fichiers

• Construire un tableau manuellement


• Demander à LabVIEW de construire automatiquement des
tableaux
• Ecrire dans un tableau
• Lire à partir d’un tableau

http://src.iut.u-bordeaux3.fr
Ajouter un Tableau à la Face Avant
A partir de la sous-palette Controls >> All
Controls >> Array and Cluster, sélectionnez le
type de Array

Déposez le tableau sur la face avant.

http://src.iut.u-bordeaux3.fr
Ajouter un Tableau (suite)
Placez un objet dans le tableau
(Ex : Contrôle Numérique)

http://src.iut.u-bordeaux3.fr
Créer un tableau avec une Boucle

http://src.iut.u-bordeaux3.fr
Créer des tableaux 2D

http://src.iut.u-bordeaux3.fr
Fichiers
Fichiers – passer des données vers et depuis des fichiers
- Les fichiers peuvent être des éléments binaires, du texte, ou
des tableaux.
- Écrire / lire le fichier LabVIEW Measurements (*.lvm)
Écrire dans un fichier Lire un fichier LVM
LVM

http://src.iut.u-bordeaux3.fr
Écrire dans un fichier LabVIEW Measurement
• Inclut les fonctions ouvrir, écrire, fermer et gerer les erreurs.
• Gère le formattage des chaînes avec soit une tabulation soit
une virgule comme délimiteur.
• La fonction Merge Signals sert à combiner des données dans
un type de données dynamiques.

http://src.iut.u-bordeaux3.fr
Exercice 4 – Analyser et stocker des données
Les étudiants créent Temperature Logger.vi

http://src.iut.u-bordeaux3.fr
Partie VI – Fonctions des Tableaux et Graphiques

• Les fonctions de base d’un tableau


• Utiliser les graphiques
• Créer plusieurs courbes dans les graphiques

http://src.iut.u-bordeaux3.fr
Les fonctions d’un tableau – les bases
Functions >> All functions>> Array

http://src.iut.u-bordeaux3.fr
Les fonctions du tableau – Construire un tableau

http://src.iut.u-bordeaux3.fr
Les Graphiques
• Sélectionner depuis la palette Graphique le menu des
Contrôles
Controls>>All Controls>>Graphs

Waveform Graph – Trace un


tableau de nombres en fonction de
leurs indices
Express XY Graph – Trace un seul
tableau en fonction d’un autre
Digital Waveform Graph – Trace
des bits depuis des données binaires

http://src.iut.u-bordeaux3.fr
Graphiques

Faire un clic droit sur le graphique et choisir dans


propriétés pour personnaliser l’affichage.

http://src.iut.u-bordeaux3.fr
Exercise 5 – Utilisation de Graphiques de Forme
d'onde

http://src.iut.u-bordeaux3.fr
Partie VII – Chaînes de caractères, clusters et
traitement d’erreurs

• Chaînes de caractères
• Création de clusters
• Fonctions des clusters
• Erreur Entrée/Sortie

http://src.iut.u-bordeaux3.fr
Chaîne de caractères (string)
• Une chaîne de caractères est une séquence de caractères (ASCII) affichables ou
non.
• Utilisations possibles : affichage de messages, contrôle d'instruments, fichiers
d’entrée/sortie
• Les contrôles ou indicateurs de chaînes sont dans le menu : Controls >> Text Control
ou Text Indicator

http://src.iut.u-bordeaux3.fr
Clusters
• Structures de données qui regroupent des données
• Les données peuvent être de différents types
• Structure analogue à l’instruction struct en C
• 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

http://src.iut.u-bordeaux3.fr
Créer un cluster
1. Sélectionner un modèle de cluster
Controls >> All Controls >> Array & Cluster
2. Placer des objets dans le cluster

http://src.iut.u-bordeaux3.fr
La fenêtre Clusters
• Dans le sous-menu Clusters de la palette
Functions>>All functions
• Egalement accessible par clic droit sur un terminal
de cluster dans la fenêtre BlockDiagram

(Type de données)
Bundle
(Etiquette)

Bundle By Name
La fenêtre Fonctions

Unbundle

Unbundle By Name

Unbundled cluster
in the diagram
Clusters d’erreurs
• Un cluster d’erreur contient les informations
suivantes:
– Boolean rapporte si une erreur se produit
– Integer rapporte le code spécifique de l’erreur
– String donne des informations sur l’erreur
Techniques de manipulations 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

Clusters d’erreurs

http://src.iut.u-bordeaux3.fr
Partie VIII – Structures Case et Sequence,
Noeuds de Formule

http://src.iut.u-bordeaux3.fr
Structure Case
• Dans la sous palette de structures de la palette de fonctions
• Enfermez les noeuds ou glissez-les à l'intérieur de la structure
• Empilé comme un pont de cartes, uniquement un seul cas visible
Fonctions >> Execution control
Exercice 6 – Cluster d’erreurs et Manipulation
Structure Sequence
• Palette Functions et sous palette Execution Control.
• Exécuter le diagramme de façon séquentielle.
• Clic droit pour ajouter une nouvelle « image ».
Nœuds de formules
• Dans la sous-palette Structures
• Implémenter des équations compliquées
• Les variables sont créées sur le bord
• Les noms de variables sont sensibles à la casse.
• Chaque énoncé doit se terminer par un point virgule (;)
• La fenêtre d’aide contextuelle montre des fonctions
disponibles.

Point-virgule
Partie IX – Impression et documentation
• Imprimer depuis le fichier imprimer du menu, HTML, Rich Text
File.
• Programmation d’impression de graphiques ou image de la face
avant.
• Document VI dans VI Properties » Documentation Dialog
• Ajouter des commentaires utilisant des labels gratuits dans la
face avant et diagramme.

http://src.iut.u-bordeaux3.fr
Impression
• File » Print …. Les différentes options d’impression
– Choisir l’icône d’impression, face avant, diagramme, hiérarchie VI,
incluant les sous VI, historique des VI.
– Impression du panneau VI (impressions programmables de la face
avant)
– Functions » All Functions » Application Control
• Générer et rapports d’impression (Functions » Output » Report)

http://src.iut.u-bordeaux3.fr
Se documenter sur les VI
• Propriétés du VI » Documentation
– Fournit une description et une aide à propos du VI
• Propriétés du VI » Historique
– Enregistre les changements des différentes versions d’un VI
• Contrôles Individuels » Description et Conseil…
– Clic droit pour avoir une description et une bulle
d’information
• Utiliser la qualification d’outils pour expliquer la face-
avant & le diagramme

http://src.iut.u-bordeaux3.fr
Partie X – Architecture de la programmation
basique
• L’architecture simple du VI
• L’architecture générale du VI
• L’architecture de machine d’états

http://src.iut.u-bordeaux3.fr
L’architecture simple du VI
• Le VI fonctionnel présente des résultats probants
– Pas d’option marche/arrêt
– Convient pour les tests labo, calculs
• Exemple: Convert C to F.vi

http://src.iut.u-bordeaux3.fr
L’architecture générale du VI
• Trois étapes principales
– Mise en marche
– Application principale
– Fermeture

http://src.iut.u-bordeaux3.fr
L’architecture de machine d’états
• Avantages
– Possibilité de changer d’état
– Modification et débuggage facile
• Inconvénients
– Pertes possibles d’événements s’il y en a deux qui
arrivent en même temps

Les états:
0: Démarrage
1: Inoccupé
2: Evénement 1
3: Evénement 2
4: Arrêt

http://src.iut.u-bordeaux3.fr
Exercise 7 – Simple State Machine

http://src.iut.u-bordeaux3.fr
Partie XI - Panneaux de contrôle à distance
• Visualisation et contrôle de la face avant d’un programme
LabVIEW, à partir d’un navigateur Web
• Pas de programmation nécessaire
• Les clients éloignés observent directement les changements et
mises à jours des programmes LabVIEW.
• Plusieurs clients peuvent regarder la même face avant
simultanément.
• Un seul client à la fois peut contrôler la face avant à distance.

http://src.iut.u-bordeaux3.fr
Outil de publication de face avant sur le Web
•Outils» outil de publication Web (Web Publishing Tool)

•Cliquez sur « Save to


Disk » et VI est
encapsulé dans le
fichier HTML

•Une fois sauvé, le


fichier peut être ouvert
à nouveau et
personnalisé dans tout
éditeur HTML

http://src.iut.u-bordeaux3.fr
Panneau de contrôle à distance - Ressources
• NI Developer Zone
(zone.ni.com)
- Recherche de panneaux de
contrôle à distance
- Téléchargement de Tutoriaux
et Instructions
- Support sur l’incorporation de
Webcams dans les panneaux
de contrôle à distance.

http://src.iut.u-bordeaux3.fr
Partie XII – Sujets Complémentaires
• Noeuds de Propriétés
• Variables Locales
• Variables Globales
• DataSocket
• Fichiers Binaires E/S

http://src.iut.u-bordeaux3.fr
Pour aller plus loin…
• Exemples de programmes (Help» Find Examples…)
• LabVIEW Version Etudiants ( www.ni.com/labviewse )
• Ressources Web ( www.ni.com )
– Zone Développeur NI ( www.zone.ni.com )
– Notes d’Application
– Info-labview newsgroup ( www.info-labview.org/ )
– Bibliothèque des drivers des instruments ( www.ni.com/idnet )

http://src.iut.u-bordeaux3.fr

Vous aimerez peut-être aussi