Vous êtes sur la page 1sur 271

Par Nicolas POUSSET 1

Cours d
Cours d

initiation
initiation
au logiciel
au logiciel
LabVIEW
LabVIEW
Dernire mise jour : Dernire mise jour :
29/05/08 29/05/08
Par Nicolas POUSSET 2
Objectifs du cours
Objectifs du cours
Pr Pr senter senter LabVIEW LabVIEW et ses fonctionnalit et ses fonctionnalit s. s.
Comprendre les composants d'un Instrument Virtuel (appel Comprendre les composants d'un Instrument Virtuel (appel VI). VI).
tablir une application simple d'acquisition de donn tablir une application simple d'acquisition de donn es. es.
Cr Cr er un sous er un sous- -programme dans programme dans LabVIEW LabVIEW. .
Travailler avec les tableaux, les graphiques, les clusters et l Travailler avec les tableaux, les graphiques, les clusters et les structures. es structures.
Conna Conna tre des dispositifs d tre des dispositifs d impression et de documentation d impression et de documentation d un VI. un VI.
D D velopper diff velopper diff rentes architectures de programmation. rentes architectures de programmation.
Publier des VI ou des donn Publier des VI ou des donn es sur un r es sur un r seau ou sur le seau ou sur le Web Web. .
Ma Ma triser les bases de communications par liaison GPIB et S triser les bases de communications par liaison GPIB et S rie. rie.
Conna Conna tre les outils d tre les outils d acquisition et de traitement d acquisition et de traitement d images. images.
Comprendre les concepts de base du d Comprendre les concepts de base du d veloppement temps r veloppement temps r el. el.
Par Nicolas POUSSET 3
Partie I Partie I Introduction Introduction LabVIEW LabVIEW 5 5
Partie II Partie II Les Sous VI Les Sous VI 47 47
Partie III Partie III Acquisitions de donn Acquisitions de donn es es 60 60
Partie IV Partie IV Boucles, registres Boucles, registres d d calage et introduction aux calage et introduction aux
graphiques graphiques 77 77
Partie V Partie V Tableaux et fichiers Tableaux et fichiers 88 88
Partie VI Partie VI Fonctions des tableaux et graphiques Fonctions des tableaux et graphiques 104 104
Partie VII Partie VII Cha Cha nes de caract nes de caract res, clusters et traitement d res, clusters et traitement d erreurs 113 erreurs 113
Partie VIII Partie VIII Structures Condition et S Structures Condition et S quence quence, , Bo Bo te de calcul 129 te de calcul 129
Partie IX Partie IX Variables Variables 144 144
Partie X Partie X Tables et n Tables et n uds de propri uds de propri t t s s 152 152
Partie XI Partie XI Impression et documentation de VI Impression et documentation de VI 162 162
Partie XII Partie XII Architectures de programmation Architectures de programmation 170 170
SOMMAIRE
SOMMAIRE
Par Nicolas POUSSET 4
Partie XIII Partie XIII Outils de publication sur le Outils de publication sur le Web Web 187 187
Partie XIV Partie XIV Contr Contr le d le d instruments instruments 191 191
Partie XV Partie XV Module Vision Module Vision 204 204
Partie XVI Partie XVI Exercices d Exercices d applications applications 217 217
Partie XVII Partie XVII D D veloppement d veloppement d applications temps r applications temps r el 250 el 250
Partie XVIII Partie XVIII DataSocket DataSocket 261 261
Partie XIX Partie XIX Sujets compl Sujets compl mentaires mentaires 269 269
Remarque Remarque : :
La version de La version de labVIEW labVIEW utilis utilis e pour ce cours d e pour ce cours d initiation est la initiation est la
version 7.1. version 7.1.
Par Nicolas POUSSET 5
Partie I
Partie I

Introduction
Introduction

LabVIEW
LabVIEW

G
G

n
n

ralit
ralit

s.
s.

Un peu d
Un peu d

histoire.
histoire.

Vocabulaire
Vocabulaire
LabVIEW
LabVIEW
.
.

Environnement
Environnement
LabVIEW
LabVIEW
.
.

Composants d
Composants d

une application
une application
LabVIEW
LabVIEW
.
.

Outils de programmation
Outils de programmation
LabVIEW
LabVIEW
.
.

Cr
Cr

er une application
er une application
LabVIEW
LabVIEW
.
.
Par Nicolas POUSSET 6
Instrumentation Virtuelle avec
Instrumentation Virtuelle avec
LabVIEW
LabVIEW
LabVIEW LabVIEW ( (Lab Laboratory oratory V Virtual irtual I Instrument nstrument E Engineering ngineering W Workbench orkbench) est un ) est un
environnement de d environnement de d veloppement graphique qui permet de cr veloppement graphique qui permet de cr er des er des
applications modulaires (notion de sous VI) et extensibles pour applications modulaires (notion de sous VI) et extensibles pour la conception la conception
d d applications, le contr applications, le contr le et le test. le et le test.
Par Nicolas POUSSET 7
LabVIEW
LabVIEW
est un outils
est un outils
d
d

acquisition
acquisition
,
,
d
d

analyse
analyse
et de
et de
pr
pr

sentation
sentation
de donn
de donn

es.
es.
Par Nicolas POUSSET 8
LabVIEW
LabVIEW
permet lacquisition de
permet lacquisition de
donnes par lintermdiaire de
donnes par lintermdiaire de
diverses
diverses
connectiques
connectiques
:
:
PCI (Peripheral Component Interconnect) PCI (Peripheral Component Interconnect)
CompactFlash CompactFlash
LAN (Local Area Network) LAN (Local Area Network)
PXI ( PXI (PCI PCI eXtensions eXtensions for Instrumentation) for Instrumentation)
PCMCIA (Personal Computer Memory PCMCIA (Personal Computer Memory
Card International Association) Card International Association)
Wi Wi- -Fi Fi (IEEE 802.11 b/g/n) (Wireless (IEEE 802.11 b/g/n) (Wireless
Fidelity) Fidelity)
Bluetooth Bluetooth
IrDA ( IrDA (Infrared Data Association) Infrared Data Association)
USB (Universal Serial Bus) USB (Universal Serial Bus)
GPIB (IEEE 488) (General GPIB (IEEE 488) (General
Purpose Interface Bus) Purpose Interface Bus)
Firewire Firewire (IEEE 1394) (IEEE 1394)
Ethernet Ethernet
Srie (RS 232, RS 449, RS Srie (RS 232, RS 449, RS
422, RS 423, RS 485) 422, RS 423, RS 485)
VXI (VME VXI (VME eXtensions eXtensions for for
Instrumentation) Instrumentation)
Acquisition
Acquisition
avec
avec
LabVIEW
LabVIEW
IEEE IEEE : Institute of Electrical and Electronics Engineers : Institute of Electrical and Electronics Engineers
Par Nicolas POUSSET 9
LabVIEW
LabVIEW
inclut des outils pour
inclut des outils pour
lanalyse des donnes :
lanalyse des donnes :
Traitement du signal Traitement du signal : Convolution, analyse : Convolution, analyse
spectrale, transformes de Fourier, spectrale, transformes de Fourier,
Traitement dimages Traitement dimages : Masque, dtection de : Masque, dtection de
contours, profils, manipulations de pixels, contours, profils, manipulations de pixels,
Mathmatiques Mathmatiques : Interpolation, statistiques : Interpolation, statistiques
(moyennes, cart (moyennes, cart- -type,), quations type,), quations
diffrentielles, diffrentielles,
Analyse
Analyse
avec
avec
LabVIEW
LabVIEW
Par Nicolas POUSSET 10
LabVIEW
LabVIEW
inclut des outils daide
inclut des outils daide
la prsentation (communication)
la prsentation (communication)
des donnes :
des donnes :
Graphiques, tableaux, images, gnration Graphiques, tableaux, images, gnration
de rapport, de rapport,
Par lintermdiaire dInternet : outils de Par lintermdiaire dInternet : outils de
publication publication web web, serveur , serveur datasocket datasocket, ,
TCP/IP, envoie dalertes par TCP/IP, envoie dalertes par email email, ,
Pr
Pr

sentation
sentation
avec
avec
LabVIEW
LabVIEW
Par Nicolas POUSSET 11
Mars 1998 Mars 1998
1997 1997
Ao Ao t 1993 t 1993
Septembre 1992 Septembre 1992
Janvier 1990 Janvier 1990
Octobre 1986 Octobre 1986
Avril 1983 Avril 1983
LabVIEW LabVIEW 5.0 5.0 ActiveX ActiveX, , Multifen Multifen trage trage
LabVIEW LabVIEW 4.0 addition d 4.0 addition d outils pour les outils pour les
professionnels, am professionnels, am liorations du liorations du debogage debogage
LabVIEW LabVIEW 3.0 version 3.0 version multiplateforme multiplateforme de de LabVIEW LabVIEW
LabVIEW LabVIEW pour Windows, et pour Sun pour Windows, et pour Sun
LabVIEW LabVIEW 2.0 pour Macintosh 2.0 pour Macintosh
LabVIEW LabVIEW 1.0 pour Macintosh 1.0 pour Macintosh
D D marrage de marrage de LabVIEW LabVIEW
Un peu d
Un peu d

histoire
histoire
Par Nicolas POUSSET 12
Un peu d
Un peu d

histoire
histoire
2007 2007
2006 2006
2005 2005
Mai 2003 Mai 2003
Janvier 2002 Janvier 2002
Ao Ao t 2000 t 2000
1999 1999
LabVIEW LabVIEW 8.5, outils de d 8.5, outils de d veloppement veloppement multic multic urs urs
(li (li s aux innovations dans l s aux innovations dans l architecture des processeurs architecture des processeurs
de PC), programmation par diagramme d de PC), programmation par diagramme d tats tats
( (statecharts statecharts) )
LabVIEW LabVIEW 8.2 8.2 dition des 20 ans, dition des 20 ans, LEGO LEGO Mindstorms Mindstorms
NXT NXT
LabVIEW LabVIEW 8 DSP (Digital Signal 8 DSP (Digital Signal Processing Processing), syst ), syst me me
embarqu embarqu
LabVIEW LabVIEW 7 VI Express, Assistants E/S, FPGA/PDA 7 VI Express, Assistants E/S, FPGA/PDA
LabVIEW LabVIEW 6.1 Analyse, fonctionnement en r 6.1 Analyse, fonctionnement en r seau seau
LabVIEW LabVIEW 6 6i i Applications Internet Applications Internet
LabVIEW LabVIEW Temps r Temps r el el
Par Nicolas POUSSET 13
LEGO
LEGO
Mindstorms
Mindstorms
NXT
NXT
Capteur de contact Capteur de contact
Capteur de son Capteur de son
Capteur de lumire Capteur de lumire
Capteur de distance Capteur de distance
(metteur/Rcepteur (metteur/Rcepteur
ultrasons) ultrasons)
Moteurs Moteurs
Animaux Animaux
Humanode Humanode
Machine Machine
4 Entres 4 Entres 3 Sorties 3 Sorties
Capteurs additionnels : Capteurs additionnels :
acclromtre, acclromtre,
gyroscope, colorimtre, gyroscope, colorimtre,
Exemples de conceptions Exemples de conceptions : :
Par Nicolas POUSSET 14
LEGO
LEGO
Mindstorms
Mindstorms
NXT
NXT
Environnement de dveloppement graphique. Environnement de dveloppement graphique.
Le programme Le programme
est charg dans est charg dans
le robot via une le robot via une
connectique connectique
Bluetooth Bluetooth ou ou
USB. USB.
Notions de temporisation, de boucles, de Notions de temporisation, de boucles, de
gestion dvnements, gestion dvnements,
Par Nicolas POUSSET 15
LEGO
LEGO
Mindstorms
Mindstorms
NXT
NXT
Autres exemples de conceptions : Autres exemples de conceptions :
Pilotage dun hlicoptre Pilotage dun hlicoptre
Rsolution dun Rsolution dun Rubiks Rubiks cube cube
Possibilit dutiliser Possibilit dutiliser
directement directement LabVIEW LabVIEW
pour la programmation pour la programmation
et la gestion dlments et la gestion dlments
plus complexes. plus complexes.
Table traante Table traante
Par Nicolas POUSSET 16
Les programmes
Les programmes
LabVIEW
LabVIEW
appel
appel

s Instruments
s Instruments
Virtuels ou
Virtuels ou
Virtual
Virtual
Instruments (VI)
Instruments (VI)
On parle d On parle d instruments virtuels instruments virtuels car car
leur apparence et leur fonctionnement leur apparence et leur fonctionnement
sont semblables sont semblables ceux d ceux d instruments instruments
r r els, tels que les oscilloscopes et les els, tels que les oscilloscopes et les
multim multim tres. tres.
Par Nicolas POUSSET 17
Composantes d
Composantes d

un VI
un VI
-
-
Face avant
Face avant
Interface utilisateur Interface utilisateur
Contr Contr les = entr les = entr es es
Indicateurs = sorties Indicateurs = sorties
-
-
Diagramme
Diagramme
Fen Fen tre de programmation et tre de programmation et
d d affichage du code source affichage du code source
Interaction entre face avant et Interaction entre face avant et
diagramme diagramme (Ctrl+E) (Ctrl+E)
-
-
Ic
Ic

ne/Connecteur
ne/Connecteur
Les VI se composent de Les VI se composent de
3 3 l l ments principaux : ments principaux :
Par Nicolas POUSSET 18
Face avant d
Face avant d

un VI
un VI
Barre doutils Barre doutils
de la face de la face
avant avant
Lgende Lgende
du graphique du graphique
Contrles Contrles
numrique numrique
Graphique Graphique
Icne Icne
Grandeurs en Grandeurs en
abscisse et en abscisse et en
ordonne de la ordonne de la
courbe courbe
chelle du chelle du
graphique graphique
Barre des menus Barre des menus
Contrle Contrle
boolen boolen
Dans la Dans la face face- -avant avant nous trouverons tous les lments nous trouverons tous les lments
interactifs du VI (commandes et indicateurs). interactifs du VI (commandes et indicateurs).
Par Nicolas POUSSET 19
Diagramme d
Diagramme d

un VI
un VI
Terminal de Terminal de
contrle boolen contrle boolen
Fil de Fil de
donnes donnes
Terminal Terminal
graphique graphique
Structure dune Structure dune
boucle boucle While While (tant que) (tant que)
Barre Barre
doutils doutils
du du
diagramme diagramme
Fonction Fonction
division division
Constante Constante
numrique numrique
Barre des menus Barre des menus
Bote de Bote de
calcul calcul
Structure dune Structure dune
boucle For boucle For
Icne Icne
Dans le Dans le diagramme diagramme nous trouverons tous les lments nous trouverons tous les lments
propres au code dvelopp (structures, fonctions, propres au code dvelopp (structures, fonctions,
constantes,). constantes,).
Par Nicolas POUSSET 20
Ic
Ic

ne/connecteur d
ne/connecteur d

un VI
un VI
Chaque VI affiche une Chaque VI affiche une ic ic ne ne, dans le coin , dans le coin
sup sup rieur droit des fen rieur droit des fen tres de la face tres de la face- -avant avant
et du diagramme. Une ic et du diagramme. Une ic ne est la ne est la
repr repr sentation graphique d sentation graphique d un VI. un VI.
Un Un connecteur connecteur est un ensemble de est un ensemble de
terminaux correspondant aux commandes terminaux correspondant aux commandes
et aux indicateurs du VI qui sont et aux indicateurs du VI qui sont
accessibles. accessibles.
Ic Ic ne par d ne par d faut faut
Par Nicolas POUSSET 21
Ouvrir un VI
Ouvrir un VI
Modles de VI Modles de VI
Des modles de Des modles de
VI dj pr VI dj pr- -cods cods
sont disponibles. sont disponibles.
Par Nicolas POUSSET 22
Ouvrir un VI
Ouvrir un VI
Modles de VI Modles de VI
Modle de VI pour Modle de VI pour
Pocket Pocket PC PC
Modle de VI pour Modle de VI pour
communications par communications par
GPIB GPIB
Permet davoir une Permet davoir une
trame simple et trame simple et
fonctionnelle fonctionnelle
rapidement rapidement
Aperu de la Aperu de la
face avant face avant
Aperu du Aperu du
diagramme diagramme
Description Description
du VI du VI
Par Nicolas POUSSET 23
Ouvrir un VI
Ouvrir un VI
Recherche dexemples Recherche dexemples
Les exemples sont Les exemples sont
trs riches et souvent trs riches et souvent
trs utiles pour trs utiles pour
dvelopper de petites dvelopper de petites
applications applications
rapidement. rapidement.
Par Nicolas POUSSET 24
Ouvrir un VI
Ouvrir un VI
Recherche dexemples Recherche dexemples
Parcourir dans Parcourir dans
les exemples les exemples
Recherche par mots Recherche par mots
cls dans les exemples cls dans les exemples
Soumettre un exemple Soumettre un exemple
National Instruments National Instruments
Par Nicolas POUSSET 25
Ouvrir un VI
Ouvrir un VI
VI vide VI vide
Par Nicolas POUSSET 26
Palettes de commandes
Palettes de commandes
Palette de
Palette de
commandes
commandes
(disponible (disponible partir de la fen partir de la fen tre tre
face avant face avant par un clic droit avec par un clic droit avec
la souris ou dans la barre des la souris ou dans la barre des
menus : menus : Fen Fen tre tre ). ).
Tableau et clusters (groupe) Tableau et clusters (groupe)
Num Num rique rique Cha Cha ne et chemin ne et chemin
Menu d Menu d roulant & roulant & num num
Commandes (dialogue) Commandes (dialogue)
D D corations corations
S S lection de commandes lection de commandes
Graphe Graphe
E/S E/S
Refnum Refnum
Vision (module compl Vision (module compl mentaire) mentaire)
Commandes utilisateur Commandes utilisateur
Bool Bool en en
Liste et table Liste et table
Conteneurs Conteneurs
Commandes classiques Commandes classiques
D D corations corations
Personnalisation de la palette Personnalisation de la palette
Rechercher un lment Rechercher un lment
Remonter larborescence Remonter larborescence
Dans cette palette nous trouverons tous les lments Dans cette palette nous trouverons tous les lments
(commandes et indicateurs) ncessaires la cration de la (commandes et indicateurs) ncessaires la cration de la
face face- -avant avant. .
Par Nicolas POUSSET 27
Palettes de fonctions
Palettes de fonctions
Palettes de
Palettes de
fonctions
fonctions
(disponible partir de la fentre (disponible partir de la fentre
diagramme diagramme par un clic droit avec la par un clic droit avec la
souris ou dans la barre des menus : souris ou dans la barre des menus :
Fentre). Fentre).
Num Num rique rique
Structures Structures Bool Bool en en
Cha Cha ne ne
Tableau Tableau
Cluster (groupe ou agr Cluster (groupe ou agr gat) gat)
Comparaison Comparaison
Temps & dialogue Temps & dialogue
E/S sur fichiers E/S sur fichiers
Waveform Waveform
Mesures NI Mesures NI Analyse Analyse
E/S d E/S d instruments instruments
Contr Contr le d le d applications applications
Graphisme et son Graphisme et son
Communication Communication
G G n n ration de rapports ration de rapports
Avanc Avanc
D D corations corations
S S lection d lection d un VI un VI
Biblioth Biblioth ques utilisateur ques utilisateur
Dans cette palette nous trouverons tous les lments Dans cette palette nous trouverons tous les lments
(fonctions de base, VI Express,) ncessaires la cration du (fonctions de base, VI Express,) ncessaires la cration du
code graphique dans la fentre code graphique dans la fentre diagramme diagramme. .
Par Nicolas POUSSET 28
Les Fonctions de base Les Fonctions de base : : lments dexploitation fondamentaux de lments dexploitation fondamentaux de LabVIEW LabVIEW. .
Les VI Standards Les VI Standards : VI qui peuvent tre personnaliss. : VI qui peuvent tre personnaliss.
Les VI Express Les VI Express : VI interactifs avec une page de dialogue configurable. : VI interactifs avec une page de dialogue configurable.
Les Fonctions, les VI et les VI Express
Les Fonctions, les VI et les VI Express
VI Express VI Express
Fonction de base Fonction de base
VI Standard VI Standard
Par Nicolas POUSSET 29
Palette d
Palette d

outils
outils
Utilise pour agir sur les objets de la face avant et du Utilise pour agir sur les objets de la face avant et du
diagramme diagramme (disponible dans la barre des menus : Fentre). (disponible dans la barre des menus : Fentre).
Outil dplacement Outil dplacement
Outil darrt Outil darrt
Outil sonde Outil sonde
Outil copie couleur Outil copie couleur
Outil coloriage Outil coloriage
Outil daction sur la face avant Outil daction sur la face avant
Outil dplacement et taille Outil dplacement et taille
Outil texte Outil texte
Outil connexion par fils Outil connexion par fils
Outil raccourci menu Outil raccourci menu
Possibilit de changer doutils laide de la touche tabulation Possibilit de changer doutils laide de la touche tabulation
du clavier de lordinateur. du clavier de lordinateur.
Outil slection automatique Outil slection automatique
(actif lorsque la LED verte est allume) (actif lorsque la LED verte est allume)
Par Nicolas POUSSET 30
Barre d
Barre d

outils de la face
outils de la face
-
-
avant
avant
Bouton Bouton Excution du programme Excution du programme (VI) (VI)
Bouton Bouton Excution continue Excution continue
Bouton d Bouton dArrt dexcution Arrt dexcution
Bouton Bouton Pause Pause/Reprendre /Reprendre
Configuration Configuration du format du texte du format du texte
(taille, style, couleur,) (taille, style, couleur,)
Aligner les objets Aligner les objets
galisation de lespacement galisation de lespacement entre entre
les objets les objets
Plan de lobjet Plan de lobjet (premier ou arrire (premier ou arrire
plan,) plan,)
Redimensionner Redimensionner les objets de la face les objets de la face
avant avant
Aide contextuelle Aide contextuelle
Par Nicolas POUSSET 31
Barre d
Barre d

outils du diagramme
outils du diagramme
Animer lexcution Animer lexcution pour animer le diagramme et voir les pour animer le diagramme et voir les
donnes transiter. donnes transiter.
Excuter de faon dtailler Excuter de faon dtailler : Excute le programme de : Excute le programme de
la faon la plus dtaille possible action par action. la faon la plus dtaille possible action par action.
Excuter sans dtailler Excuter sans dtailler : Excute le programme nud : Excute le programme nud
par nud sans rentrer dans le dtail de leur excution par nud sans rentrer dans le dtail de leur excution
interne. interne.
Terminer lexcution Terminer lexcution
Par Nicolas POUSSET 32
Barre des menus
Barre des menus
Fonctionnalits classiques des programmes Fonctionnalits classiques des programmes
standards mais galement spcifiques standards mais galement spcifiques
LabVIEW LabVIEW. .
Par Nicolas POUSSET 33
Terminaux Terminaux
de contrle de contrle
(entres) (entres)
Fentre du diagramme Fentre du diagramme
Fentre de la face avant Fentre de la face avant
Terminaux Terminaux
dindicateur dindicateur
(sorties) (sorties)
Cr
Cr

er un VI
er un VI
=
Clic droit sur la Clic droit sur la
commande (ou la commande (ou la
constante) numrique. constante) numrique.
Nud Nud
Commande Commande Indicateur Indicateur
Cadre gras Cadre gras Cadre fin Cadre fin
Indicateur Indicateur
numrique numrique
Commande numrique Commande numrique
Bouton Bouton
Incrmenter/ Incrmenter/
Dcrmenter Dcrmenter
Fils de liaison Fils de liaison
Par Nicolas POUSSET 34
Param
Param

trage des constantes / commandes


trage des constantes / commandes
Clic droit sur la commande Clic droit sur la commande
(ou la constante) numrique. (ou la constante) numrique.
Possibilit de paramtrer les Possibilit de paramtrer les
proprits de la commande proprits de la commande
numrique (ou de la constante). numrique (ou de la constante).
Format scientifique avec 2 Format scientifique avec 2
chiffres de prcision chiffres de prcision
Format virgule flottante avec 2 Format virgule flottante avec 2
chiffres de prcision chiffres de prcision
Par Nicolas POUSSET 35
Param
Param

trage des constantes / commandes


trage des constantes / commandes
Possibilit de paramtrer les Possibilit de paramtrer les
proprits de la commande proprits de la commande
numrique (ou de la constante). numrique (ou de la constante).
Clic droit sur la commande Clic droit sur la commande
(ou la constante) numrique. (ou la constante) numrique.
Possibilit de paramtrer Possibilit de paramtrer
la gamme (avec un la gamme (avec un
minimum, un maximum minimum, un maximum
et un incrment). et un incrment).
Par Nicolas POUSSET 36
Param
Param

trage des constantes / commandes


trage des constantes / commandes
Possibilits de modifier le type de donne Possibilits de modifier le type de donne
de la commande : entiers (mot long, mot, de la commande : entiers (mot long, mot,
octet), rels (prcision tendue, double octet), rels (prcision tendue, double
prcision, simple prcision), prcision, simple prcision),
Indication sur le Indication sur le
type de donne type de donne
Permet de fixer une valeur Permet de fixer une valeur
par dfaut la commande par dfaut la commande
Par Nicolas POUSSET 37
Rels Rels
Entiers Entiers
Param
Param

trage des constantes / commandes


trage des constantes / commandes
Les Les entiers entiers sont en bleu sont en bleu
Les Les rels rels sont en orange sont en orange
Par Nicolas POUSSET 38
Fonction de base
Fonction de base
Aide contextuelle (Ctrl + H) Aide contextuelle (Ctrl + H)
tiquette tiquette
Terminaux Terminaux : 2 entres et 1 sortie : 2 entres et 1 sortie
Par Nicolas POUSSET 39
Astuces de connexions
Astuces de connexions
Points de Connexions Points de Connexions
Mise en forme des connexions Mise en forme des connexions
Utilisation du routage Utilisation du routage
automatique automatique
Trois types de slection Trois types de slection
Simple clic Double clic Triple clic Simple clic Double clic Triple clic
Clic droit Clic droit
sur le fils sur le fils
Par Nicolas POUSSET 40
Programmation par flux de donnes
Programmation par flux de donnes
Lexcution du diagramme dpend du flux de Lexcution du diagramme dpend du flux de
donnes. Il ne sexcute pas ncessairement de donnes. Il ne sexcute pas ncessairement de
gauche droite. gauche droite.
Lexcution du nud se fait quand les donnes sont Lexcution du nud se fait quand les donnes sont
disponibles tous les terminaux dentre. disponibles tous les terminaux dentre.
Puis les nuds fournissent des donnes tous les Puis les nuds fournissent des donnes tous les
terminaux de sortie. terminaux de sortie.
La plupart des langages de programmation textuel La plupart des langages de programmation textuel
(Visual Basic, C++, Java,) utilisent des modles de (Visual Basic, C++, Java,) utilisent des modles de
flux de commandes. Cest lordre squentiel des flux de commandes. Cest lordre squentiel des
lments du programme qui dtermine lordre lments du programme qui dtermine lordre
dexcution du programme. dexcution du programme.
Terminaux dentres Terminaux dentres Terminaux de sortie Terminaux de sortie
Nud Nud
Par Nicolas POUSSET 41
Les options d
Les options d

aide
aide
Aide Contextuelle (
Aide Contextuelle (Ctrl + H) Ctrl + H)
Aide dtaille Aide dtaille
Verrouille laide Verrouille laide
Choix du mode de laide Choix du mode de laide
(simple ou dtaille) (simple ou dtaille)
Accs laide dtaille
Accs laide dtaille
Accs lintgralit du contenu informatif. Accs lintgralit du contenu informatif.
Ouverture automatique dune fentre pour accder directement l Ouverture automatique dune fentre pour accder directement laide. aide.
Par Nicolas POUSSET 42
Aide dtaille
Aide dtaille
(barre des menus : (barre des menus :
Aide Aide - -> Aide > Aide LabVIEW LabVIEW ) )
Par Nicolas POUSSET 43
Exercice 1
Exercice 1
-
-
Conversion de
Conversion de

C en
C en

F et en K
F et en K
Conversion de C en K Conversion de C en K : K = C + 273,15 : K = C + 273,15
Conversion de C en F Conversion de C en F : F = ((9 x C) / 5) + 32 : F = ((9 x C) / 5) + 32
Raliser un VI qui permet deffectuer une conversion de C en K Raliser un VI qui permet deffectuer une conversion de C en K et en F et en F
partir de fonctions de base de partir de fonctions de base de labVIEW labVIEW. .
Par Nicolas POUSSET 44
Exemple de solution possible Exemple de solution possible
Exercice 1
Exercice 1
-
-
Conversion de
Conversion de

C en
C en

F et en K
F et en K
Par Nicolas POUSSET 45
Aides aux
Aides aux
d
d

bogages
bogages
Trouver des erreurs Trouver des erreurs
Cliquer sur le symbole de la flche coupe : Cliquer sur le symbole de la flche coupe :
Une fentre Windows nomme Une fentre Windows nomme Liste des erreurs Liste des erreurs apparat avec apparat avec
les erreurs contenues dans le VI. les erreurs contenues dans le VI.
En double cliquant sur les erreurs on peut En double cliquant sur les erreurs on peut
visualiser o elles se trouvent sur le diagramme. visualiser o elles se trouvent sur le diagramme.
Par Nicolas POUSSET 46
Aides aux
Aides aux
d
d

bogages
bogages
Clic droit sur un fil Clic droit sur un fil pour afficher une sonde. pour afficher une sonde.
Les donnes qui transitent sur ce fil seront Les donnes qui transitent sur ce fil seront
affiches. affiches.
Il est galement possible de choisir l'outil Il est galement possible de choisir l'outil
Sonde partir de la palette d'outils. Sonde partir de la palette d'outils.
Animer lexcution Animer lexcution
Sonde (Probe) Sonde (Probe)
Cliquer sur le bouton ci Cliquer sur le bouton ci- -contre. Les donnes dans des bulles contre. Les donnes dans des bulles
sont animes. Des valeurs sont alors indiques sur les fils. sont animes. Des valeurs sont alors indiques sur les fils.
Excution du VI tape par tape. Excution du VI tape par tape.
Exemples de sondes personnalises : Exemples de sondes personnalises :
Par Nicolas POUSSET 47
Partie II
Partie II

Les sous VI
Les sous VI

Qu
Qu

est
est
-
-
ce qu
ce qu

un sous VI ?
un sous VI ?

Assigner un connecteur et r
Assigner un connecteur et r

aliser une
aliser une
ic
ic

ne pour un sous VI.


ne pour un sous VI.

Utiliser un VI en tant que sous VI.


Utiliser un VI en tant que sous VI.
Par Nicolas POUSSET 48
Sous VI
Sous VI
Avantages : Avantages :
Modularit Modularit (cr (cr ation de blocs de ation de blocs de
base r base r utilisable pour diverses utilisable pour diverses
applications : gain de productivit applications : gain de productivit ) )
Facilite le Facilite le d d bogage bogage
N N cessite une seule cr cessite une seule cr ation de ation de
code. code.
Un sous VI est un Un sous VI est un
VI qui peut VI qui peut tre tre
utilis utilis dans un autre dans un autre
VI de plus haut VI de plus haut
niveau. niveau.
Par Nicolas POUSSET 49
Ic
Ic

nes et Connecteurs
nes et Connecteurs

Une
Une
ic
ic

ne
ne
repr
repr

sente un VI dans
sente un VI dans
un autre diagramme d
un autre diagramme d

un VI de
un VI de
plus haut niveau.
plus haut niveau.

Un
Un
connecteur
connecteur
montre les
montre les
terminaux disponibles pour le
terminaux disponibles pour le
transfert de donn
transfert de donn

es.
es.
2 cases en entres pour 2 cases en entres pour
les commandes les commandes
1 case en sortie 1 case en sortie
pour lindicateur pour lindicateur
Par Nicolas POUSSET 50
Sous VI
Sous VI
Sous VI Sous VI Icne reprsentative Icne reprsentative
du sous VI du sous VI
VI Principal VI Principal Sous VI Sous VI
Icne reprsentative du Icne reprsentative du
VI de plus haut niveau VI de plus haut niveau
Par Nicolas POUSSET 51

tapes de cr
tapes de cr

ation d
ation d

un sous VI
un sous VI

Cr
Cr

er l
er l

ic
ic

ne
ne

Visualiser le connecteur
Visualiser le connecteur

Assigner les terminaux


Assigner les terminaux

Sauvegarder le VI
Sauvegarder le VI

Ins
Ins

rer le VI dans un VI de plus


rer le VI dans un VI de plus
haut niveau
haut niveau
Par Nicolas POUSSET 52
Cr
Cr

er une ic
er une ic

ne
ne
Cliquez avec le bouton droit sur l Cliquez avec le bouton droit sur l ic ic ne de la face avant (en haut ne de la face avant (en haut
droite), ou sur l droite), ou sur l ic ic ne du diagramme et choisir ne du diagramme et choisir diter l diter l ic ic ne ne . .
La personnalisation de l La personnalisation de l ic ic ne est tout ne est tout fait facultative et ne fait facultative et ne
changera rien au fonctionnement du sous VI. changera rien au fonctionnement du sous VI.
Palette doutils ddition du dessin Palette doutils ddition du dessin
Couleur de premier plan Couleur de premier plan
Couleur de fond Couleur de fond
Par Nicolas POUSSET 53
Visualiser le connecteur
Visualiser le connecteur
Cliquer avec le bouton droit sur l Cliquer avec le bouton droit sur l ic ic ne (face avant seulement) et ne (face avant seulement) et
choisir choisir Visualiser le connecteur Visualiser le connecteur . .
Par Nicolas POUSSET 54
Assigner les terminaux
Assigner les terminaux
En gnral, on choisira de En gnral, on choisira de
mettre les entres gauche mettre les entres gauche
et les sorties droite. et les sorties droite.
Par Nicolas POUSSET 55
Terminaux
Terminaux

n
n

cessaires
cessaires

,
,

recommand
recommand

s
s

,
,

optionnels
optionnels

.
.
Lorsque lon assigne les connecteurs il est Lorsque lon assigne les connecteurs il est
possible de dfinir leur importance en leur possible de dfinir leur importance en leur
attachant un des trois termes suivants : attachant un des trois termes suivants :
Ncessaire, Recommande, Optionnelle. Ncessaire, Recommande, Optionnelle.
Ic Ic ne ne : :
3 entr 3 entr es es
3 sorties 3 sorties
En gris : terminaux optionnels (Nom de l En gris : terminaux optionnels (Nom de l image, Couleur?, image, Couleur?, ) )
Normal : terminaux recommand Normal : terminaux recommand s (Image masqu s (Image masqu e) e)
En gras : terminaux n En gras : terminaux n cessaires (Chemin d cessaires (Chemin d acc acc s) s)
Par Nicolas POUSSET 56
Sauvegarde du VI
Sauvegarde du VI

Choisir un emplacement ad
Choisir un emplacement ad

quat
quat

Organiser par fonctionnalit


Organiser par fonctionnalit

s
s
Sauvegarder les VI similaires dans un m Sauvegarder les VI similaires dans un m me r me r pertoire pertoire
(ex : Outils math (ex : Outils math matiques, traitement d matiques, traitement d images, gestion images, gestion
multim multim tres, gestion moteur, tres, gestion moteur, ) )

Organiser par applications


Organiser par applications
Sauvegarder tous les VI utilis Sauvegarder tous les VI utilis s pour une application sp s pour une application sp cifique cifique
dans un r dans un r pertoire ou une librairie. pertoire ou une librairie.
(ex : (ex : talonnage microm talonnage microm tres objet, Pilotage TGV, tres objet, Pilotage TGV, ) )
Les librairies (. Les librairies (.llb llb) combinent plusieurs VI dans un seul fichier. Ceci est ) combinent plusieurs VI dans un seul fichier. Ceci est
id id al pour transf al pour transf rer des applications compl rer des applications compl tes vers d tes vers d autres ordinateurs. autres ordinateurs.
Par Nicolas POUSSET 57
Ins
Ins

rez le sous VI dans un VI de niveau sup


rez le sous VI dans un VI de niveau sup

rieur
rieur
Accs aux sous Accs aux sous- -VI personnels : VI personnels :
Fonctions >> Toutes les Fonctions >> Fonctions >> Toutes les Fonctions >>
>> Slection dun VI >> Slection dun VI
OU OU
Faire glisser licne du sous VI sur le diagramme cible de Faire glisser licne du sous VI sur le diagramme cible de
haut niveau. haut niveau.
Par Nicolas POUSSET 58
Slectionner une zone convertir en sous VI.
Slectionner dans la barre des menus dition : Crer
un sous VI.
Autre m
Autre m

thode de cr
thode de cr

ation d
ation d

un sous VI
un sous VI
Ic Ic ne par d ne par d faut faut
Par Nicolas POUSSET 59
Astuces pour travailler dans
Astuces pour travailler dans
LabVIEW
LabVIEW
Quelques raccourcis clavier
Quelques raccourcis clavier
<Ctrl+H> <Ctrl+H> Activer/d Activer/d sactiver la fen sactiver la fen tre d tre d aide contextuelle. aide contextuelle.
<Ctrl+B> <Ctrl+B> Supprimer les connexions erron Supprimer les connexions erron es du diagramme. es du diagramme.
<Ctrl+E> <Ctrl+E> Basculer entre la face avant et le diagramme. Basculer entre la face avant et le diagramme.
<Ctrl+T> <Ctrl+T> Mosa Mosa que verticale des fen que verticale des fen tres. tres.
<Ctrl+Z> <Ctrl+Z> Annuler (aussi dans le menu Annuler (aussi dans le menu dition). dition).
<Ctrl+C> <Ctrl+C> Copier un objet. Copier un objet.
<Ctrl+V> <Ctrl+V> Coller un objet. Coller un objet.
Par Nicolas POUSSET 60
Partie III
Partie III

Acquisition de donn
Acquisition de donn

es
es

Introduction
Introduction

l
l

acquisition de donn
acquisition de donn

es.
es.

Outil
Outil

Measurement and
Measurement and
Automation
Automation
Explorer
Explorer

(MAX)
(MAX)

.
.

Acquisition de donn
Acquisition de donn

es DAQ.
es DAQ.
(DAQ : Data
(DAQ : Data
AQuisition
AQuisition
).
).

DAQ Traditionnel.
DAQ Traditionnel.

DAQmx
DAQmx
.
.

Exemples de mat
Exemples de mat

riels d
riels d

di
di

s
s

l
l

acquisition.
acquisition.
Par Nicolas POUSSET 61
Introduction
Introduction
lacquisition
lacquisition
de
de
donnes
donnes
Phnomne Phnomne
physique physique
Un capteur convertit un phnomne physique en un signal (gnral Un capteur convertit un phnomne physique en un signal (gnralement ement
de nature lectrique) mesurable par un systme dacquisition de de nature lectrique) mesurable par un systme dacquisition de donnes. donnes.
Capteur Capteur
Flux de Flux de
lumire lumire
Conversion du flux de Conversion du flux de
lumire (photons) en lumire (photons) en
courant lectrique courant lectrique
(lectrons) (lectrons)
Chane de traitement du signal Chane de traitement du signal
(amplification, filtrage, (amplification, filtrage,
chantillonnage,) chantillonnage,)
PC PC
Conversion du Conversion du
signal analogique signal analogique
en signal en signal
numrique numrique
Par Nicolas POUSSET 62
Carte DAQ Carte DAQ
Ordinateur Ordinateur
Bloc de terminaison pour Bloc de terminaison pour
connecter les signaux connecter les signaux
+ +
Carte lectronique de mise en Carte lectronique de mise en
forme du signal analogique si forme du signal analogique si
ncessaire ncessaire
Cble de Cble de
connexion connexion
Capteurs Capteurs
Exemple de cha
Exemple de cha

ne d
ne d

acquisition de
acquisition de
donn
donn

es
es
E/S du bus
Compteur
CAN MUX
Ports PCI, Ports PCI,
PCMCIA, PCMCIA,
USB, USB,
Par Nicolas POUSSET 63
Exemple de capteurs
Exemple de capteurs
Mesurande Capteur
Thermocouple
Capteur de temprature
rsistif (RTD)
Thermistances
Photodiode
Photomultiplicateur
Son Microphone
Jauge de contrainte
Transducteurs
pizolectriques
Potentiomtres
Codeurs optiques
Fluide
Dbitmtre turbine /
lectromagntique
Temprature
Position et dplacements
Force et pression
Flux de lumire
Mesurande Mesurande : Grandeur particulire soumise mesurage. : Grandeur particulire soumise mesurage.
Mesurage Mesurage : Ensemble doprations ayant pour but de dterminer une : Ensemble doprations ayant pour but de dterminer une
valeur dune grandeur. valeur dune grandeur.
Par Nicolas POUSSET 64
Exemple de capteurs
Exemple de capteurs
Deux catgories de capteurs : Deux catgories de capteurs :
Capteurs actifs Capteurs actifs
Ils se comportent comme des gnrateurs. Ils sont vu comme tant Ils se comportent comme des gnrateurs. Ils sont vu comme tant des des
gnrateurs de charge, de tension, ou de courant dont la valeur gnrateurs de charge, de tension, ou de courant dont la valeur est est
directement relie au directement relie au mesurande mesurande (Photodiode, photomultiplicateur,). (Photodiode, photomultiplicateur,).
Capteurs passifs Capteurs passifs
Ils se comportent comme des impdances. Ils sont vu comme tant Ils se comportent comme des impdances. Ils sont vu comme tant des des
rsistances, inductance ou capacit dont la valeur est directeme rsistances, inductance ou capacit dont la valeur est directement relie au nt relie au
mesurande mesurande (thermistance, jauge de contrainte,). (thermistance, jauge de contrainte,).
Par Nicolas POUSSET 65
Measurement and
Measurement and
Automation Explorer
Automation Explorer
(MAX)
(MAX)
Par Nicolas POUSSET 66
Measurement and
Measurement and
Automation Explorer
Automation Explorer
(MAX)
(MAX)
Affiche la liste des priphriques et des instruments Affiche la liste des priphriques et des instruments
connects au systme. connects au systme.
Permet dexcuter des tests pour vrifier le bon Permet dexcuter des tests pour vrifier le bon
fonctionnement des priphriques connects ( faire avant de fonctionnement des priphriques connects ( faire avant de
ce lancer dans la programmation sous ce lancer dans la programmation sous labVIEW labVIEW). ).
Permet la configuration du matriel. Permet la configuration du matriel.
Permet de crer et modifier des voies, des tches, des Permet de crer et modifier des voies, des tches, des
interfaces, des chelles, interfaces, des chelles,
Par Nicolas POUSSET 67
Measurement and
Measurement and
Automation Explorer
Automation Explorer
(MAX)
(MAX)
Vrification que la Vrification que la
carte dacquisition carte dacquisition
est bien dtecte. est bien dtecte.
Premire vrification du Premire vrification du
bon fonctionnement de bon fonctionnement de
la carte dacquisition la carte dacquisition
Par Nicolas POUSSET 68
NI NI- -DAQmx DAQmx
Dernire gnration de Dernire gnration de
drivers : drivers :
VI configurables pour VI configurables pour
accomplir une tche accomplir une tche
Paramtrage dun VI Paramtrage dun VI
pour toutes les mesures pour toutes les mesures
NI NI- -DAQ traditionnel DAQ traditionnel
Des VI spcifiques pour Des VI spcifiques pour
accomplir : accomplir :
Entre analogique Entre analogique
Sortie analogique Sortie analogique
E/S numrique E/S numrique
Oprations de comptage Oprations de comptage
Acquisition de donn
Acquisition de donn

es (DAQ) avec
es (DAQ) avec
LabVIEW
LabVIEW
2 moteurs de drivers permettent la 2 moteurs de drivers permettent la
communication entre la carte DAQ et communication entre la carte DAQ et
le logiciel dapplications le logiciel dapplications labVIEW labVIEW. .
Par Nicolas POUSSET 69
DAQ traditionnel (Ancien driver)
DAQ traditionnel (Ancien driver)
Acqurir un signal Acqurir un signal
Gnrer un signal Gnrer un signal
Acquisition/G
Acquisition/G

n
n

ration d
ration d

un signal gr
un signal gr

ce
ce

des VI standards
des VI standards
correspondant aux anciens drivers.
correspondant aux anciens drivers.
Par Nicolas POUSSET 70
DAQmx
DAQmx
(Assistant DAQ : VI Express)
(Assistant DAQ : VI Express)
Acquisition/G
Acquisition/G

n
n

ration d
ration d

un signal gr
un signal gr

ce
ce

l
l

assistant DAQ.
assistant DAQ.
Par Nicolas POUSSET 71
Terminologie de l
Terminologie de l

acquisition de donn
acquisition de donn

es
es

R
R

solution
solution

D
D

termine la valeur minimale de la variation


termine la valeur minimale de la variation
du signal pouvant
du signal pouvant

tre mesur
tre mesur

e.
e.
Plus la r Plus la r solution est importante, plus la repr solution est importante, plus la repr sentation du signal est pr sentation du signal est pr cise. cise.
Exemple Exemple : un voltm : un voltm tre indique 10 volts. Une variation de 0,1 volts fait bouger tre indique 10 volts. Une variation de 0,1 volts fait bouger
l l aiguille alors qu aiguille alors qu une variation de 0,05 volts ne fait pas bouger l une variation de 0,05 volts ne fait pas bouger l aiguille. La aiguille. La
r r solution du voltm solution du voltm tre est de 0,1 volts. tre est de 0,1 volts.

Gamme
Gamme

Valeurs minimales et maximales du signal.


Valeurs minimales et maximales du signal.
Plus la gamme est petite, plus la repr Plus la gamme est petite, plus la repr sentation du signal est pr sentation du signal est pr cise cise
( ( condition d condition d avoir une bonne r avoir une bonne r solution). solution).

Gain
Gain

Amplifie ou att
Amplifie ou att

nue le signal afin de l


nue le signal afin de l

adapter au
adapter au
mieux
mieux

la gamme.
la gamme.
Par Nicolas POUSSET 72
Connexions
Connexions
des entres
des entres
analogiques
analogiques
Cat
Cat

gorie de sources de signaux d


gorie de sources de signaux d

entr
entr

e.
e.
Rfrenc Rfrenc
Non Non rfrenc rfrenc
Le signal est r Le signal est r f f renc renc la masse du syst la masse du syst me. me.
Exemples Exemples : alimentations, g : alimentations, g n n rateurs de signaux, rateurs de signaux,
tout ce qui se connecte dans une prise secteur tout ce qui se connecte dans une prise secteur
r r f f renc renc e e la terre la terre
Le signal n Le signal n est pas r est pas r f f renc renc une masse. une masse.
Exemples Exemples : piles, thermocouples, transformateurs, : piles, thermocouples, transformateurs,
Par Nicolas POUSSET 73
Connexions
Connexions
des entres
des entres
analogiques
analogiques
Trois modes de mise Trois modes de mise la masse sont disponibles. Le mode la masse sont disponibles. Le mode
choisit d choisit d pend de la nature du signal. pend de la nature du signal.
- - Mode DIFFERENTIEL (DIFF) Mode DIFFERENTIEL (DIFF) ( (
le meilleur)
le meilleur)
- - Mode RSE Mode RSE ( (Referenced Referenced Single Single- -Ended Ended) )
(pas recommand
(pas recommand

)
)
(Mode r (Mode r f f renc renc une masse commune) une masse commune)
- - Mode NRSE Mode NRSE (Non (Non- -Referenced Referenced Single Single- -Ended Ended) )
(bon)
(bon)
(Mode masse commune non r (Mode masse commune non r f f renc renc ) )
Par Nicolas POUSSET 74
Connexions
Connexions
des entres
des entres
analogiques
analogiques
DIFFERENTIEL DIFFERENTIEL
RSE RSE
NRSE NRSE
Signal non r Signal non r f f renc renc Signal r Signal r f f renc renc
Par Nicolas POUSSET 75
Exemples de mat
Exemples de mat

riels d
riels d

di
di

s
s

l
l

acquisition
acquisition
BNC
BNC
-
-
2090
2090
SCB
SCB
-
-
68
68
22 connecteurs BNC pour les signaux analogiques, 22 connecteurs BNC pour les signaux analogiques,
num num riques, de d riques, de d clenchement et de compteurs/ clenchement et de compteurs/timers timers. .
Bloc de connexion d'E/S blind Bloc de connexion d'E/S blind pour pour
interfacer les signaux d'E/S avec des interfacer les signaux d'E/S avec des
mat mat riels enfichables DAQ riels enfichables DAQ quip quip s de s de
connecteurs 68 broches. connecteurs 68 broches.
SCXI
SCXI
Connectivit Connectivit directe des capteurs pour directe des capteurs pour
une mise en oeuvre rapide. une mise en oeuvre rapide.
Par Nicolas POUSSET 76
Exemples de mat
Exemples de mat

riels d
riels d

di
di

s
s

l
l

acquisition
acquisition
ELVIS
ELVIS
Ensemble d'instruments virtuels : oscilloscope, Ensemble d'instruments virtuels : oscilloscope,
multim multim tre num tre num rique, g rique, g n n rateur de fonctions, rateur de fonctions,
pour le prototypage en laboratoire et l pour le prototypage en laboratoire et l enseignement. enseignement.
CompactDAQ
CompactDAQ
Acquisition par USB Acquisition par USB
(Avantages du (Avantages du plug plug- -and and- -
play play et de la et de la connectique connectique
unique universelle). unique universelle).
PXI/
PXI/
CompactPCI
CompactPCI
Permet de r Permet de r pondre pondre un grand nombre un grand nombre
d d applications de tests et de mesures. applications de tests et de mesures.
Ch Ch ssis modulaire ssis modulaire
Par Nicolas POUSSET 77
Partie IV
Partie IV

Boucles, registres
Boucles, registres

d
d

calage et
calage et
introduction aux graphiques
introduction aux graphiques

Boucle
Boucle

For
For

.
.

Boucle
Boucle

While
While

.
.

Registre
Registre

d
d

calages.
calages.

Graphiques.
Graphiques.

Affichages de plusieurs courbes


Affichages de plusieurs courbes
sur un m
sur un m

me graphique.
me graphique.
Par Nicolas POUSSET 78
Les boucles
Les boucles

La boucle
La boucle
While
While
(tant que)
(tant que)
Poss Poss de un compteur d de un compteur d it it ration. ration.
S S ex ex cute toujours au moins une cute toujours au moins une
fois. fois.
Continue de s Continue de s ex ex cuter tant que l cuter tant que l on a on a
pas appuyer sur le bouton Stop. pas appuyer sur le bouton Stop.

La boucle For
La boucle For
Possde un compteur ditration. Possde un compteur ditration.
Sexcute Sexcute N N fois ( fois (N N paramtrable). paramtrable).
Pour N = 4, i = 0, 1, 2, 3. Pour N = 4, i = 0, 1, 2, 3.
Itration Itration
Par Nicolas POUSSET 79
1. Choisissez votre boucle. 1. Choisissez votre boucle.
Les boucles
Les boucles
2. Encadrer le code qui doit tre rpt. 2. Encadrer le code qui doit tre rpt.
3. Placez les nuds additionnels (contrle boolen : bouton stop 3. Placez les nuds additionnels (contrle boolen : bouton stop
par exemple) et reliez par exemple) et reliez- -les. les.
Par Nicolas POUSSET 80
Pour un signal assez bruit lon pourrait avoir envie, par exemp Pour un signal assez bruit lon pourrait avoir envie, par exemple, dafficher une moyenne des le, dafficher une moyenne des
valeurs. valeurs.
Pour ce faire il est possible dutiliser un registre dcalage. Pour ce faire il est possible dutiliser un registre dcalage.
Un registre dcalage prend des donnes du ct droit et les re Un registre dcalage prend des donnes du ct droit et les reporte du ct porte du ct
gauche litration suivante : gauche litration suivante :
Premire itration Premire itration Seconde itration Seconde itration Dernire itration Dernire itration
Valeur initiale Valeur initiale
Valeur 1 Valeur 1
Valeur 1 Valeur 1
Valeur 2 Valeur 2
Valeur 2 Valeur 2
Valeur 3 Valeur 3
Valeur 3 Valeur 3 Valeur Valeur
initiale initiale
Les registres
Les registres

d
d

calage
calage
Par Nicolas POUSSET 81
Cration Cration : clic droit sur un des bords de la boucle >> : clic droit sur un des bords de la boucle >> Ajouter un registre dcalage Ajouter un registre dcalage
Les registres
Les registres

d
d

calage
calage
Exemple dutilisation de registres dcalage Exemple dutilisation de registres dcalage
Par Nicolas POUSSET 82
Attention Attention !! Linitialisation du registre dcalage est import !! Linitialisation du registre dcalage est importante pour viter les ante pour viter les
erreurs ! erreurs !
1
re
excution
du programme
2
me
excution
du programme
3
me
excution
du programme
Les registres
Les registres

d
d

calage
calage
Par Nicolas POUSSET 83
Graphiques
Graphiques
Le graphique est un indicateur Le graphique est un indicateur
num num rique particulier qui propose rique particulier qui propose
un historique des valeurs. un historique des valeurs.
Commandes >> Toutes les commandes >> Graphes Commandes >> Toutes les commandes >> Graphes
Par Nicolas POUSSET 84
Techniques de connexion dans les graphiques
Techniques de connexion dans les graphiques
Une seule courbe
Une seule courbe
La fonction La fonction Fusionner les signaux Fusionner les signaux sert sert
combiner des donn combiner des donn es dans un type de es dans un type de
donn donn es es dynamiques dynamiques (informations g (informations g n n r r es es
ou acquises par un VI Express). ou acquises par un VI Express).
Plusieurs courbes
Plusieurs courbes
Par Nicolas POUSSET 85
Exercice 2
Exercice 2

Utilisation d
Utilisation d

une boucle
une boucle
Crer un VI qui gnre un Crer un VI qui gnre un
nombre alatoire avec un temps nombre alatoire avec un temps
dattente que lutilisateur peut dattente que lutilisateur peut
modifier. modifier.
Larrt du programme se fait Larrt du programme se fait
laide du bouton stop de la face laide du bouton stop de la face
avant. avant.
Par Nicolas POUSSET 86
Exemples de solutions possible
Exemples de solutions possible
Exercice 2
Exercice 2

Utilisation d
Utilisation d

une boucle
une boucle
Par Nicolas POUSSET 87
Action m
Action m

canique bool
canique bool

enne
enne
Pour les contr Pour les contr les bool les bool en nous avons en nous avons
la possibilit la possibilit de param de param trer l trer l action action
m m canique sur ceux canique sur ceux- -ci : ci : commutation commutation
jusqu jusqu au rel au rel chement chement , , commutation commutation
l l appui appui , , armement armement l l appui appui
OU OU
Par Nicolas POUSSET 88
Partie V
Partie V

Tableaux et fichiers
Tableaux et fichiers

Un tableau : Qu
Un tableau : Qu

est
est
-
-
ce que c
ce que c

est ?
est ?

Construire un tableau manuellement.


Construire un tableau manuellement.

Construction automatique de tableaux.


Construction automatique de tableaux.

crire dans un tableau.


crire dans un tableau.

Lire
Lire

partir d
partir d

un tableau.
un tableau.
Par Nicolas POUSSET 89
Un tableau,
Un tableau,

mais pour faire quoi ?


mais pour faire quoi ?
Les tableaux combinent des donn Les tableaux combinent des donn es du m es du m me type dans une me type dans une
structure de donn structure de donn es. es.
Les tableaux sont utiles, par exemple, pour stocker des Les tableaux sont utiles, par exemple, pour stocker des
donn donn es g es g n n r r es, la plupart du temps, dans des boucles lors es, la plupart du temps, dans des boucles lors
de chaque it de chaque it ration. ration.
Il est possible de construire des tableaux de donn Il est possible de construire des tableaux de donn es num es num riques, de riques, de
bool bool ens, de chemins, de clusters, de cha ens, de chemins, de clusters, de cha nes de caract nes de caract res, res,
Il ne cependant pas possible de cr Il ne cependant pas possible de cr er des tableaux de tableaux. er des tableaux de tableaux.
Par Nicolas POUSSET 90
Philosophie d
Philosophie d

un tableau
un tableau
Afficheur Afficheur
d d indices indices
Afficheurs Afficheurs
d d l l ments ments
Chaque Chaque l l ments d ments d un tableau est un tableau est
accessible par son indice. accessible par son indice.
Ainsi la valeur (l Ainsi la valeur (l l l ment) ment) 0,658384 0,658384 est est
l l indice 0. L indice 0. L l l ment ment 0,659422 0,659422 est est
l l indice 3,... indice 3,...
Exemple de tableau. Exemple de tableau.
Par Nicolas POUSSET 91
Construire un tableau 1D manuellement
Construire un tableau 1D manuellement
A partir de la palette A partir de la palette Commandes >> Toutes les commandes Commandes >> Toutes les commandes
>> Tableau et Cluster >> Tableau et Cluster, s , s lectionnez lectionnez Tableau. Tableau.
Dposez le tableau Dposez le tableau
vide sur la face avant. vide sur la face avant.
Tableau de
Tableau de
commandes
commandes
ou
ou
d
d
indicateurs
indicateurs
.
.
Par Nicolas POUSSET 92
Construire un tableau 1D manuellement
Construire un tableau 1D manuellement
Dposez le tableau sur le diagramme. Dposez le tableau sur le diagramme.
A partir de la palette A partir de la palette Fonctions >> Toutes les fonctions >> Fonctions >> Toutes les fonctions >>
Tableau Tableau, s , s lectionnez lectionnez Tableau. Tableau.
Tableau de
Tableau de
constantes
constantes
.
.
Par Nicolas POUSSET 93
Construire un tableau 1D manuellement
Construire un tableau 1D manuellement
Placez un objet dans le tableau (un contr
Placez un objet dans le tableau (un contr

le, une constante


le, une constante
num
num

rique, une cha


rique, une cha

ne de caract
ne de caract

res, un bool
res, un bool

en,
en,

).
).
Tableau de constantes Tableau de constantes
Tableau de contrles Tableau de contrles
Par Nicolas POUSSET 94
Construire un tableau 1D manuellement
Construire un tableau 1D manuellement
Possibilit
Possibilit

de cr
de cr

er un tableau 1D sous forme d


er un tableau 1D sous forme d

une ligne
une ligne
ou d
ou d

une colonne suivant les besoins de l


une colonne suivant les besoins de l

application.
application.
Tableau de Tableau de
constantes constantes
Tableau de Tableau de
contrles contrles
Par Nicolas POUSSET 95
Cr
Cr

er un tableau 1D avec une boucle


er un tableau 1D avec une boucle
Dernire Dernire
valeur valeur
gnre gnre
uniquement uniquement
Ensemble des Ensemble des
valeurs valeurs
gnres gnres
Notion
Notion
dindexation
dindexation
Indexation Indexation
active active
Par Nicolas POUSSET 96
Cr
Cr

er un tableau 2D avec deux boucles


er un tableau 2D avec deux boucles
En fonction de la dimension En fonction de la dimension
du tableau, la taille du fil varie. du tableau, la taille du fil varie.
Tableau 1D Tableau 1D
Tableau 2D Tableau 2D
Un tableau 2D est caract Un tableau 2D est caract ris ris par la pr par la pr sence de 2 sence de 2
indices (1 pour la ligne et 1 pour la colonne). indices (1 pour la ligne et 1 pour la colonne).
Par Nicolas POUSSET 97
Clic droit sur Clic droit sur
le tableau. le tableau.
Cr
Cr

er des tableaux 2D manuellement


er des tableaux 2D manuellement
Manuellement. Manuellement.
Par Nicolas POUSSET 98
Tableau en entr
Tableau en entr

e d
e d

une boucle For


une boucle For
Si l Si l indexation automatique est activ indexation automatique est activ e pour un tableau c e pour un tableau c bl bl en entr en entr e e
d d une boucle For, le terminal (N) de d une boucle For, le terminal (N) de d compte s compte s adapte automatiquement adapte automatiquement
la taille du tableau. La boucle For s la taille du tableau. La boucle For s ex ex cute alors un nombre de fois cute alors un nombre de fois gal gal
au nombre d au nombre d l l ments du tableau. ments du tableau.
Terminal (N) de dcompte Terminal (N) de dcompte
Terminal (i) ditrations Terminal (i) ditrations
Par Nicolas POUSSET 99
Tableau en entr
Tableau en entr

e d
e d

une boucle For


une boucle For
Si deux tableaux sont connect Si deux tableaux sont connect s en entr s en entr e de la boucle ainsi que le terminal e de la boucle ainsi que le terminal
de d de d compte (N), alors la boucle effectuera un nombre d compte (N), alors la boucle effectuera un nombre d it it rations rations gal au gal au
plus petit nombre disponible. plus petit nombre disponible.
Dans l Dans l exemple ci exemple ci- -dessus, le premier tableau a 7 dessus, le premier tableau a 7 l l ments, le second en a 4 ments, le second en a 4
et la valeur 6 est c et la valeur 6 est c bl bl e e N. Donc la boucle For ne s N. Donc la boucle For ne s ex ex cute que 4 fois. cute que 4 fois.
Par Nicolas POUSSET 100
Fichiers
Fichiers
Fichiers Fichiers passer des donn passer des donn es vers et depuis des fichiers. es vers et depuis des fichiers.
- - Les fichiers peuvent Les fichiers peuvent tre des tre des l l ments binaires, du texte, ou des ments binaires, du texte, ou des
tableaux. tableaux.
- - crire / lire le fichier crire / lire le fichier L Lab abV VIEW IEW M Measurements easurements (*. (*.lvm lvm) ) l l aide de aide de
VI Express. VI Express.
crire dans un fichier crire dans un fichier *. *.lvm lvm Lire un fichier *. Lire un fichier *.lvm lvm
Par Nicolas POUSSET 101

crire dans un fichier


crire dans un fichier
LabVIEW Measurement
LabVIEW Measurement
Inclut les fonctions ouvrir, Inclut les fonctions ouvrir, crire, fermer et g crire, fermer et g rer les erreurs. rer les erreurs.
G G re le formatage des cha re le formatage des cha nes avec soit une tabulation soit une nes avec soit une tabulation soit une
virgule comme d virgule comme d limiteur. limiteur.
La fonction La fonction Fusionner les signaux Fusionner les signaux sert sert combiner des donn combiner des donn es es
dans un type de donn dans un type de donn es dynamiques. es dynamiques.
Par Nicolas POUSSET 102
Exercice 3
Exercice 3

Analyser et stocker des donn


Analyser et stocker des donn

es
es
Crer un VI qui gnre un nombre Crer un VI qui gnre un nombre
alatoire toute les secondes. alatoire toute les secondes.
Calculer la moyenne, la valeur min et Calculer la moyenne, la valeur min et
max max et sauvegarder les donnes dans et sauvegarder les donnes dans
un fichier. un fichier.
Par Nicolas POUSSET 103
Exercice 3
Exercice 3

Analyser et stocker des donn


Analyser et stocker des donn

es
es
Exemples de solutions possible
Exemples de solutions possible
Par Nicolas POUSSET 104
Partie VI
Partie VI

Fonctions des tableaux et


Fonctions des tableaux et
graphiques
graphiques

Les fonctions de base d


Les fonctions de base d

un tableau.
un tableau.

Utiliser les graphiques.


Utiliser les graphiques.

Cr
Cr

er plusieurs courbes dans les graphiques.


er plusieurs courbes dans les graphiques.
Par Nicolas POUSSET 105
Les fonctions d
Les fonctions d

un tableau
un tableau

les bases
les bases
Commandes >> Toutes les commandes >> Tableau et cluster >> Table Commandes >> Toutes les commandes >> Tableau et cluster >> Tableau au
Par Nicolas POUSSET 106
Les fonctions du tableau
Les fonctions du tableau

les bases
les bases
Fonction : Construire un tableau Fonction : Construire un tableau
Par Nicolas POUSSET 107
Les graphiques
Les graphiques
S S lectionner depuis la palette Commandes, la sous palette lectionner depuis la palette Commandes, la sous palette Graphe Graphe : :
Commandes >> Toutes les commandes >> Graphe Commandes >> Toutes les commandes >> Graphe
Graphe Graphe droulant droulant Trace les donnes en continu, en plaant Trace les donnes en continu, en plaant
les anciennes donnes sur la gauche et les nouvelles droite. L les anciennes donnes sur la gauche et les nouvelles droite. Les es
anciennes donnes disparaissent au fur et mesure que de anciennes donnes disparaissent au fur et mesure que de
nouvelles arrivent. nouvelles arrivent.
Graphe Graphe Trace un tableau de nombres en fonction de leurs Trace un tableau de nombres en fonction de leurs
indices. indices.
Graphe XY (Express) Graphe XY (Express) Trace un seul tableau en fonction de Trace un seul tableau en fonction de
deux autres tableaux. deux autres tableaux.
Graphe numrique Graphe numrique Trace des bits depuis des donnes Trace des bits depuis des donnes
binaires. binaires.
Par Nicolas POUSSET 108
Les graphiques
Les graphiques
Faire un clic droit sur le graphique et s Faire un clic droit sur le graphique et s lectionner lectionner propri propri t t s s
pour personnaliser l pour personnaliser l affichage ( affichage ( chelle, couleurs, curseurs, chelle, couleurs, curseurs, ). ).
Par Nicolas POUSSET 109
Exemples : graphe num
Exemples : graphe num

rique
rique
Graphe numrique Graphe numrique
Lutilisation des clusters sera Lutilisation des clusters sera
aborde dans la partie VII aborde dans la partie VII
Par Nicolas POUSSET 110
Exemples : graphe XY
Exemples : graphe XY
Graphe XY Graphe XY
Par Nicolas POUSSET 111
Exercice 4
Exercice 4

Utilisation de graphiques
Utilisation de graphiques
Gnrer un VI qui simule un Gnrer un VI qui simule un
signal sinusodal et un signal signal sinusodal et un signal
carr dont on peut modifier la carr dont on peut modifier la
frquence et lamplitude ainsi frquence et lamplitude ainsi
que le rapport cyclique (pour que le rapport cyclique (pour
le signal carr). le signal carr).
Afficher les deux courbes sur Afficher les deux courbes sur
le mme graphe. le mme graphe.
Par Nicolas POUSSET 112
Exemple de solution possible Exemple de solution possible
Exercice 4
Exercice 4

Utilisation de graphiques
Utilisation de graphiques
Par Nicolas POUSSET 113
Partie VII
Partie VII

Cha
Cha

nes de caract
nes de caract

res, clusters et
res, clusters et
traitement d
traitement d

erreurs
erreurs

Cha
Cha

nes de caract
nes de caract

res.
res.

Fonctions de cha
Fonctions de cha

nes.
nes.

Cr
Cr

ation de clusters (groupe / agr


ation de clusters (groupe / agr

gat).
gat).

Fonctions des clusters.


Fonctions des clusters.

Cluster d
Cluster d

erreur.
erreur.

R
R

capitulatif sur les types de connexions.


capitulatif sur les types de connexions.
Par Nicolas POUSSET 114
Cha
Cha

ne de caract
ne de caract

res (string)
res (string)
Une cha Une cha ne de caract ne de caract res est une s res est une s quence de caract quence de caract res (ASCII). res (ASCII).
Utilisations possibles : affichage de messages (bo Utilisations possibles : affichage de messages (bo te de dialogue), te de dialogue),
communications avec des instruments, fichiers d communications avec des instruments, fichiers d entr entr e/sortie, e/sortie,
Les contr Les contr les ou indicateurs de cha les ou indicateurs de cha nes sont dans le menu : nes sont dans le menu :
Commandes Commandes >> >> Commandes Commandes Texte Texte ou ou Indicateur Texte Indicateur Texte
Les cha Les cha nes de caract nes de caract res sont repr res sont repr sent sent s en rose. s en rose.
Par Nicolas POUSSET 115
Cha
Cha

ne de caract
ne de caract

res (string)
res (string)
Diff Diff rents modes d rents modes d affichage des cha affichage des cha nes de caract nes de caract res res
sont disponibles. sont disponibles.
Par Nicolas POUSSET 116
Cha
Cha

ne de caract
ne de caract

res (string)
res (string)
Exemples de fonctions disponibles Exemples de fonctions disponibles
permettant la manipulation des permettant la manipulation des
cha cha nes : nes :
Longueur d Longueur d une cha une cha ne ne , , Concat Concat ner en ner en
cha cha ne ne , , Remplacer une portion de cha Remplacer une portion de cha ne ne , ,
Formater en cha Formater en cha ne ne , ,
Par Nicolas POUSSET 117
Cha
Cha

ne de caract
ne de caract

res (string)
res (string)
Double clic sur Double clic sur
le VI le VI
- - Formater Formater
une cha une cha ne ne
s : string s : string
f : f : floating floating
Par Nicolas POUSSET 118
Cha
Cha

ne de caract
ne de caract

res (string)
res (string)
Dans certains cas ( Dans certains cas (par exemple, par exemple,
pour communiquer avec un pour communiquer avec un
instrument par l instrument par l interm interm diaire du diaire du
port s port s rie rie) il est n ) il est n cessaire cessaire
d d avoir comme s avoir comme s parateur parateur
d d cimal un point et non une cimal un point et non une
virgule. Il faut donc ajouter le virgule. Il faut donc ajouter le
format format %.; %.;
Par Nicolas POUSSET 119
Cha
Cha

ne de caract
ne de caract

res (string)
res (string)
- - Balayer une Balayer une
cha cha ne ne
- - Sous Sous- -ensemble ensemble
d d une cha une cha ne ne
Par Nicolas POUSSET 120
Clusters
Clusters

Structures qui regroupent plusieurs donn


Structures qui regroupent plusieurs donn

es.
es.

Les donn
Les donn

es peuvent
es peuvent

tre de diff
tre de diff

rents types.
rents types.

Les
Les

l
l

ments doivent tous


ments doivent tous

tre, soit des contr


tre, soit des contr

les, soit des


les, soit des
indicateurs.
indicateurs.

Cela est similaire au c


Cela est similaire au c

blage de fils dans une m


blage de fils dans une m

me gaine :
me gaine :
facilite la gestion du programme
facilite la gestion du programme
.
.
Par Nicolas POUSSET 121
Cr
Cr

er un cluster
er un cluster
1. 1. S S lectionner un mod lectionner un mod le de cluster : le de cluster :
Commandes >> Toutes les commandes >> Tableau et Commandes >> Toutes les commandes >> Tableau et
Cluster Cluster ou ou Fonctions >> Toutes les fonctions >> Cluster Fonctions >> Toutes les fonctions >> Cluster
2. 2. Placer des objets dans le cluster : Placer des objets dans le cluster :
Par Nicolas POUSSET 122
La palette Clusters
La palette Clusters
Assembler Assembler
Type de donn Type de donn es es
Assembler par nom Assembler par nom
tiquette tiquette
Modification d Modification d un cluster un cluster
Cr Cr ation d ation d un un
cluster cluster
Type de donn Type de donn es es
tiquette tiquette
Dans le sous Dans le sous- -menu menu Clusters Clusters de la palette de la palette Fonctions >> Fonctions >>
Toutes les fonctions. Toutes les fonctions.
galement accessible par clic droit sur un terminal de cluster galement accessible par clic droit sur un terminal de cluster
dans la fen dans la fen tre tre diagramme. diagramme.
Commandes Commandes
Par Nicolas POUSSET 123
La palette Clusters
La palette Clusters
D D sassembler sassembler
D D sassembler par nom sassembler par nom
tiquette tiquette
Type de donn Type de donn es es
Indicateurs Indicateurs
Par Nicolas POUSSET 124
Clusters d
Clusters d

erreurs
erreurs
Un cluster d Un cluster d erreur permet la visualisation d erreur permet la visualisation d un probl un probl me lors de me lors de
l l ex ex cution d cution d un VI. un VI.
Un cluster d Un cluster d erreur contient les informations suivantes : erreur contient les informations suivantes :
tat tat rapporte si une erreur se produit (valeur bool rapporte si une erreur se produit (valeur bool enne). enne).
Code Code rapporte le code sp rapporte le code sp cifique de l cifique de l erreur (Entier 32 bits). erreur (Entier 32 bits).
Source Source donne des informations sur l donne des informations sur l erreur (Cha erreur (Cha ne de caract ne de caract res). res).
Pas d Pas d erreur erreur Erreur Erreur
Exemple : Exemple :
Par Nicolas POUSSET 125
Techniques de manipulations d
Techniques de manipulations d

erreurs
erreurs
L L information d information d erreur est pass erreur est pass e d e d un sous VI au suivant. un sous VI au suivant.
Si une erreur se produit dans un sous VI, tous les sous VI suiv Si une erreur se produit dans un sous VI, tous les sous VI suivants ants
ne sont pas ex ne sont pas ex cut cut s de la fa s de la fa on habituelle. on habituelle.
Gestion d Gestion d erreur automatique. erreur automatique.
Clusters derreurs Clusters derreurs
Exemple : Exemple :
Par Nicolas POUSSET 126
Scalaire Scalaire
Numriques Numriques
Boolen Boolen
Chane de Chane de
caractres caractres
Tableau 1D Tableau 1D
Donnes Donnes
Dynamiques Dynamiques
Tableau 2D Tableau 2D
Types de connexions
Types de connexions
Entiers Entiers
Rels Rels
Par Nicolas POUSSET 127
Exercice 5
Exercice 5

Utilisation de clusters et de graphiques


Utilisation de clusters et de graphiques
Gnrer un VI qui simule Gnrer un VI qui simule
le dplacement dun le dplacement dun
pointeur laser sur une pointeur laser sur une
photodiode 4 quadrants. photodiode 4 quadrants.
On simulera dans un On simulera dans un
premier temps un premier temps un
dplacement continu dplacement continu
du pointeur puis un du pointeur puis un
dplacement discret dplacement discret . .
Par Nicolas POUSSET 128
Exercice 5
Exercice 5

Utilisation de clusters et de graphiques


Utilisation de clusters et de graphiques
Exemple de solution possible Exemple de solution possible
Dplacement discret Dplacement discret
Dplacement continu Dplacement continu
Par Nicolas POUSSET 129
Partie VIII
Partie VIII

Structures
Structures
Condition
Condition
et
et
S
S

quence
quence
, Bo
, Bo

te de calcul
te de calcul

Fonctionnement de la structure
Fonctionnement de la structure
Condition
Condition
et de la structure
et de la structure
S
S

quence
quence
.
.

Mise en
Mise en

uvre d
uvre d

une bo
une bo

te de calcul
te de calcul
et du VI Express
et du VI Express

Formule
Formule

.
.
Par Nicolas POUSSET 130
Structure
Structure
Condition
Condition
Dans la sous palette
Dans la sous palette
Structures
Structures
de la palette de
de la palette de
Fonctions
Fonctions
.
.
Uniquement un seul cas est visible
Uniquement un seul cas est visible

la fois.
la fois.
Slecteur Slecteur : 0, 1, 2, : 0, 1, 2,
Terminal de Terminal de
slection slection
Terminal de Terminal de
slection slection
Terminal de Terminal de
slection slection
Slecteur Slecteur : Vrai, faux, peut : Vrai, faux, peut- -
tre, peut tre, peut- -tre pas, tre pas,
Slecteur Slecteur : :
Vrai ou Faux Vrai ou Faux
Par Nicolas POUSSET 131
Structure
Structure
Condition
Condition
pour la gestion d
pour la gestion d

erreurs
erreurs
Lorsque que lon cble un Lorsque que lon cble un
cluster derreur sur le cluster derreur sur le
terminal de slection dune terminal de slection dune
structure condition, celle structure condition, celle- -ci ci
affiche 2 conditions : affiche 2 conditions : Pas Pas
derreur derreur (en vert) (en vert) et et
Erreur Erreur (en rouge). (en rouge).
La structure Condition ne La structure Condition ne
reconnat que la valeur reconnat que la valeur
boolenne boolenne tat tat du cluster du cluster
derreur. derreur.
Par Nicolas POUSSET 132
Structure
Structure
S
S

quence d
quence d

roul
roul

e
e
ou
ou
empil
empil

e
e
Palette Palette Fonctions Fonctions et sous palette et sous palette Structure Structure. .
Ex Ex cute le diagramme de fa cute le diagramme de fa on s on s quentielle. quentielle.
Clic droit sur la structure pour ajouter une nouvelle Clic droit sur la structure pour ajouter une nouvelle tape. tape.
Structure s Structure s quence quence
d d roul roul e e
Structure s Structure s quence empil quence empil e e
(gain de place) (gain de place)
Par Nicolas POUSSET 133
Point Point- -virgule virgule
x x
2 2
Bo
Bo

te de calcul
te de calcul

Dans la sous
Dans la sous
-
-
palette
palette
Structures
Structures
.
.

Impl
Impl

menter des
menter des

quations compliqu
quations compliqu

es.
es.

Les variables sont cr


Les variables sont cr

es sur le bord.
es sur le bord.

Chaque
Chaque

nonc
nonc

doit se terminer par un point virgule (;)


doit se terminer par un point virgule (;)

La fen
La fen

tre d
tre d

aide contextuelle montre des fonctions


aide contextuelle montre des fonctions
disponibles.
disponibles.
Avantage de la bo Avantage de la bo te de calcul ( te de calcul ( droite) : rapidit droite) : rapidit d d ex ex cution du code par rapport cution du code par rapport
l l utilisation des fonctions de base ( utilisation des fonctions de base ( gauche). gauche).
Par Nicolas POUSSET 134
VI Express
VI Express

Formule
Formule

Utilisation d Utilisation d une interface de calculatrice o une interface de calculatrice o sont sont
pr pr sentes la plupart des fonctions d sentes la plupart des fonctions d une calculatrice une calculatrice
scientifique classique. scientifique classique.
Indique que la Indique que la
syntaxe de la syntaxe de la
formule formule crite crite
est bonne. est bonne.
Par Nicolas POUSSET 135
Exercice 6
Exercice 6

Cluster, manipulation d
Cluster, manipulation d

erreurs et structure
erreurs et structure
condition
condition
Gnrer un VI qui permet de Gnrer un VI qui permet de
visualiser une erreur lorsque visualiser une erreur lorsque
lon essaye de calculer la racine lon essaye de calculer la racine
carr dun nombre ngatif. carr dun nombre ngatif.
Par Nicolas POUSSET 136
Exemple de solution possible Exemple de solution possible
Exercice 6
Exercice 6

Cluster, manipulation d
Cluster, manipulation d

erreurs et structure
erreurs et structure
condition
condition
Par Nicolas POUSSET 137
Exemple de solution possible Exemple de solution possible
Exercice 6
Exercice 6

Cluster, manipulation d
Cluster, manipulation d

erreurs et structure
erreurs et structure
condition
condition
Par Nicolas POUSSET 138
Exercice 6
Exercice 6

Cluster, manipulation d
Cluster, manipulation d

erreurs et structure
erreurs et structure
condition
condition
Alternative possible pour signaler lerreur Alternative possible pour signaler lerreur
Que ce passe t Que ce passe t- -il si lon ajoute une boucle il si lon ajoute une boucle While While
ce programme pour que celui ce programme pour que celui- -ci fonctionne en ci fonctionne en
continu et que lon rentre une valeur ngative ? continu et que lon rentre une valeur ngative ?
Par Nicolas POUSSET 139
Exercice 6
Exercice 6

Cluster, manipulation d
Cluster, manipulation d

erreurs et
erreurs et
structure condition
structure condition
Complment Complment
Le programme fonctionne en continu grce la boucle Le programme fonctionne en continu grce la boucle While While. Celle . Celle- -
ci sarrte ds que lon appui sur le bouton Stop o ds que lo ci sarrte ds que lon appui sur le bouton Stop o ds que lon n
rentre une valeur ngative dans la commande rentre une valeur ngative dans la commande Numrique Numrique . .
Par Nicolas POUSSET 140
Exercice 7
Exercice 7

Luminance
Luminance
spectrique
spectrique
du corps noir
du corps noir
(bo
(bo

te de calcul et boucles)
te de calcul et boucles)
Gnrer un VI qui permet de Gnrer un VI qui permet de
tracer la luminance tracer la luminance spectrique spectrique du du
corps noir pour une temprature corps noir pour une temprature
donne. donne.
Un corps noir est un radiateur Un corps noir est un radiateur
thermique qui absorbe toutes les thermique qui absorbe toutes les
radiations lectromagntiques incidentes. radiations lectromagntiques incidentes.
) 1 (
2
5
2

kT
hc
T
CN
e
e
hc
d
dL

Loi de Planck Loi de Planck


Vitesse de la lumire dans le vide Vitesse de la lumire dans le vide
c = 299 792 458 m.s c = 299 792 458 m.s
- -1 1
Constante de Planck Constante de Planck
h = 6,626 069 3 . 10 h = 6,626 069 3 . 10
- -34 34
J.s J.s
Constante de Boltzmann Constante de Boltzmann
k = 1,380 650 5 . 10 k = 1,380 650 5 . 10
- -23 23
J.K J.K
- -1 1
Par Nicolas POUSSET 141
Exercice 7
Exercice 7

Luminance
Luminance
spectrique
spectrique
du corps noir
du corps noir
(bo
(bo

te de calcul et boucles)
te de calcul et boucles)
Temprature du soleil sa Temprature du soleil sa
surface surface 5800 K. 5800 K.
Le Le Soleil Soleil est assimil un est assimil un
Corps noir. Corps noir.
Par Nicolas POUSSET 142
Exercice 7
Exercice 7

Luminance
Luminance
spectrique
spectrique
du corps noir
du corps noir
(bo
(bo

te de calcul et boucles)
te de calcul et boucles)
Allure du spectre dune Allure du spectre dune
lampe halogne lampe halogne filament filament
de tungstne dans le visible de tungstne dans le visible
(380 (380 780 nm) 780 nm)
Par Nicolas POUSSET 143
Exercice 7
Exercice 7

Luminance
Luminance
spectrique
spectrique
du corps noir
du corps noir
(bo
(bo

te de calcul et boucles)
te de calcul et boucles)
Le rayonnement du corps noir ne commence se voir quau del de Le rayonnement du corps noir ne commence se voir quau del de 600C (rouge 600C (rouge
sombre) do le choix de lexpression sombre) do le choix de lexpression corps noir corps noir puisqu temprature ambiante puisqu temprature ambiante
(300 K) les corps naturels mettent dans lInfrarouge (IR). (300 K) les corps naturels mettent dans lInfrarouge (IR).
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 144
Partie IX
Partie IX

Variables
Variables

Variables locales.
Variables locales.

Variables locales de s
Variables locales de s

quence.
quence.

Variables globales.
Variables globales.
Par Nicolas POUSSET 145
Variables locales
Variables locales
Aucune variable Aucune variable
nest assigne nest assigne
Possibilit de la Possibilit de la
mettre en criture mettre en criture
ou en lecture. ou en lecture.
Une variable locale nest visible que dans un seul VI. Une variable locale nest visible que dans un seul VI.
Clic droit : assignation de la Clic droit : assignation de la
variable variable
Par Nicolas POUSSET 146
Variables locales de s
Variables locales de s

quence
quence
Ce type de variable sutilise avec les structures Ce type de variable sutilise avec les structures
Squences empiles Squences empiles. Elle permet de faire passer des . Elle permet de faire passer des
donnes dune tape lautre. donnes dune tape lautre.
Par Nicolas POUSSET 147
Variables globales
Variables globales
Une variable globale agit de la mme faon quune Une variable globale agit de la mme faon quune
variable locale except le fait que lon peut transfrer variable locale except le fait que lon peut transfrer
cette variable dun VI lautre par lutilisation du cette variable dun VI lautre par lutilisation du
sous VI cre. sous VI cre.
Double clic sur Double clic sur
la variable la variable
globale globale
Ouverture dun Ouverture dun
sous VI vide sous VI vide
Par Nicolas POUSSET 148
Variables globales
Variables globales
1. 1 1. 1
er er
VI ( VI (vi vi. .vi vi) o lon crit les informations ) o lon crit les informations
dans les variables globales (mode criture). dans les variables globales (mode criture).
2. Sous 2. Sous- -VI cre lors de linsertion des VI cre lors de linsertion des
variables dans le premier VI. variables dans le premier VI.
Icne Icne
reprsentative reprsentative
des sous VI de des sous VI de
variable variable
globale. globale.
3. 2 3. 2
me me
VI (vi2. VI (vi2.vi vi) o lon rcupre la variable globale ) o lon rcupre la variable globale
comme un sous comme un sous- -VI classique que lon paramtre en VI classique que lon paramtre en
mode lecture. mode lecture.
Par Nicolas POUSSET 149
Exercice 8
Exercice 8

Utilisation de variables locales


Utilisation de variables locales
Gnrer un VI qui permet de donner Gnrer un VI qui permet de donner
le temps (en ms) entre deux appuis de le temps (en ms) entre deux appuis de
boutons. boutons.
On utilisera une structure squence empile On utilisera une structure squence empile
avec, soit des variables locales, soit des avec, soit des variables locales, soit des
variables locales de squences ainsi que la variables locales de squences ainsi que la
fonction suivante : fonction suivante :
Par Nicolas POUSSET 150
Exercice 8
Exercice 8

Utilisation de variables locales


Utilisation de variables locales
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 151
Exercice 8
Exercice 8

Utilisation de variables locales


Utilisation de variables locales
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 152
Partie X
Partie X

Tables et n
Tables et n

uds de propri
uds de propri

t
t

Tables.
Tables.

N
N

uds de propri
uds de propri

t
t

.
.

Enregistrement dans un fichier Excel.


Enregistrement dans un fichier Excel.
Par Nicolas POUSSET 153
Tables
Tables
Clic droit Clic droit
sur la table sur la table
En En- -ttes de lignes et ttes de lignes et
en en- -tte de colonnes tte de colonnes
On ne peut crire dans On ne peut crire dans
les tables uniquement les tables uniquement
que des chanes. On ne que des chanes. On ne
peut pas directement peut pas directement
crire des entiers ou crire des entiers ou
des rels. des rels.
Par Nicolas POUSSET 154
Tables
Tables
-
-
exemple
exemple
En En- -tte de colonnes tte de colonnes
En En- -tte de lignes tte de lignes
Par Nicolas POUSSET 155
N
N

ud de propri
ud de propri

t
t

Les nuds de proprit permettent davoir accs certains Les nuds de proprit permettent davoir accs certains
lments dun objet en lecture ou en criture. lments dun objet en lecture ou en criture.
Dans un premier temps il Dans un premier temps il
faut relier le nud de faut relier le nud de
proprit un objet prcis. proprit un objet prcis.
Par Nicolas POUSSET 156
N
N

ud de propri
ud de propri

t
t

Dans un second temps il faut Dans un second temps il faut


choisir les proprits de lobjet qui choisir les proprits de lobjet qui
nous intressent. nous intressent.
Par exemple (dans notre cas ici) les Par exemple (dans notre cas ici) les
en en- -ttes de colonnes et les valeurs ttes de colonnes et les valeurs
dune table. dune table.
Par Nicolas POUSSET 157
N
N

ud de propri
ud de propri

t
t

-
-
exemple
exemple
tape 0 tape 0 : initialisation de la table : initialisation de la table
tape 1 tape 1 : On remplit la table : On remplit la table
Objectif Objectif : on souhaite remplir une table : on souhaite remplir une table
et lenregistrer dans un fichier Excel. et lenregistrer dans un fichier Excel.
Variable locale Variable locale
Par Nicolas POUSSET 158
N
N

ud de propri
ud de propri

t
t

-
-
exemple
exemple
tape 2 tape 2 : Sauvegarde des donnes dans un fichier Excel : Sauvegarde des donnes dans un fichier Excel
Nud de proprit Nud de proprit
Par Nicolas POUSSET 159
N
N

ud de propri
ud de propri

t
t

-
-
exemple
exemple
tape 2 tape 2 : Sauvegarde des donnes dans un fichier Excel : Sauvegarde des donnes dans un fichier Excel
Par Nicolas POUSSET 160
N
N

ud de propri
ud de propri

t
t

exemple
exemple
-
-
r
r

sultats
sultats
tape 1 tape 1 : La table se remplit : La table se remplit tape 2 tape 2 : Une bote de dialogue : Une bote de dialogue
apparat pour enregistrer les donnes apparat pour enregistrer les donnes
au format . au format .xls xls
Par Nicolas POUSSET 161
N
N

ud de propri
ud de propri

t
t

exemple
exemple
-
-
r
r

sultats
sultats
Lorsque lon essaye de rcrire par dessus un fichier dj prse Lorsque lon essaye de rcrire par dessus un fichier dj prsent, une bote nt, une bote
de dialogue nous invitant changer de nom de fichier apparat. de dialogue nous invitant changer de nom de fichier apparat.
Par Nicolas POUSSET 162
Partie XI
Partie XI

Impression et documentation
Impression et documentation

Imprimer depuis l
Imprimer depuis l

onglet
onglet

imprimer
imprimer

de la
de la
barre des menus.
barre des menus.

G
G

n
n

rer un rapport pr
rer un rapport pr

-
-
format
format

.
.

Documentation sur les VI.


Documentation sur les VI.

Ajouter des commentaires dans la face avant et


Ajouter des commentaires dans la face avant et
le diagramme.
le diagramme.
Par Nicolas POUSSET 163
Impression
Impression
Fichier Fichier Imprimer Imprimer ... ...
Diff Diff rentes options d rentes options d impression sont disponibles impression sont disponibles
Ic Ic ne, description du VI, face avant, diagramme, hi ne, description du VI, face avant, diagramme, hi rarchie des rarchie des
VI, sous VI, historique des VI VI, sous VI, historique des VI
Impression du panneau VI (impressions programmables de la Impression du panneau VI (impressions programmables de la
face avant) face avant)
Impression personnalise Impression personnalise
Par Nicolas POUSSET 164
Rapport pr
Rapport pr

-
-
format
format

G G n n rer un rapport (Palette de Fonctions rer un rapport (Palette de Fonctions Sortie Sortie Rapport) Rapport)
Par Nicolas POUSSET 165
Rapport pr
Rapport pr

-
-
format
format

En double cliquant sur le En double cliquant sur le


VI Express nous avons la VI Express nous avons la
possibilit possibilit de param de param trer trer
le formatage du rapport. le formatage du rapport.
Par Nicolas POUSSET 166
Rapport pr
Rapport pr

-
-
format
format

G G n n ration des signaux ration des signaux G G n n ration du rapport ration du rapport
Par Nicolas POUSSET 167
Rapport pr
Rapport pr

-
-
format
format

Par Nicolas POUSSET 168


Documentation sur les VI
Documentation sur les VI

Fichier
Fichier

Propri
Propri

t
t

s du VI
s du VI

Documentation
Documentation
Fournit une description et une aide Fournit une description et une aide propos du VI. propos du VI.
A compl A compl ter par le d ter par le d veloppeur pour de nouveaux VI. veloppeur pour de nouveaux VI.

Fichier
Fichier

Propri
Propri

t
t

s du VI
s du VI

Historique
Historique
Enregistre les changements des diff Enregistre les changements des diff rentes versions d rentes versions d un VI. un VI.
Par Nicolas POUSSET 169
Documentation sur les VI
Documentation sur les VI
Exemple du VI pr Exemple du VI pr c c dent document dent document par deux types de commentaires : par deux types de commentaires :
Commentaires g Commentaires g n n raux raux
Commentaires pour expliciter les donn Commentaires pour expliciter les donn es qui transitent sur chacun des fils es qui transitent sur chacun des fils
Sans Sans
commentaires commentaires
Avec Avec
commentaires commentaires
Ne pas oublier de mettre les Ne pas oublier de mettre les tiquettes sur les tiquettes sur les
fonctions que vous utilisez et de nommer fonctions que vous utilisez et de nommer
explicitement vos commandes et vos indicateurs ! explicitement vos commandes et vos indicateurs !
Par Nicolas POUSSET 170
Partie XII
Partie XII

Architectures de
Architectures de
programmation
programmation

L
L

architecture simple du VI.


architecture simple du VI.

L
L

architecture g
architecture g

n
n

rale du VI.
rale du VI.

L
L

architecture de type
architecture de type

machine
machine
d
d

tats
tats

(simple et complexe).
(simple et complexe).
Par Nicolas POUSSET 171
L
L

architecture simple du VI
architecture simple du VI
Le VI fonctionnel pr Le VI fonctionnel pr sente des r sente des r sultats probants sultats probants
Pas d Pas d option marche/arr option marche/arr t. t.
Convient pour des tests tr Convient pour des tests tr s simples, de petits calculs, s simples, de petits calculs,
Exemple Exemple : Exercice1. : Exercice1.vi vi
Par Nicolas POUSSET 172
L
L

architecture g
architecture g

n
n

rale du VI
rale du VI
Trois Trois tapes principales : tapes principales :
Initialisation Initialisation
Application principale Application principale
Fermeture Fermeture
Exemple pour Exemple pour l l acquisition continue d acquisition continue d une image une image : :
Initialisation Initialisation Application principale Application principale Fermeture Fermeture
- Linitialisation na besoin
dtre faite quune fois.
- La fermeture de la session
larrt du programme est
indispensable pour librer les
ports utiliss.
Par Nicolas POUSSET 173
L
L

architecture de machine d
architecture de machine d

tats (simple)
tats (simple)

Avantages
Avantages
Possibilit Possibilit de changer d de changer d tat. tat.
Modification et Modification et d d bogage bogage facile. facile.

Inconv
Inconv

nients
nients
Pertes possibles d Pertes possibles d v v nements s nements s il y en a deux qui arrivent en m il y en a deux qui arrivent en m me temps. me temps.
Les tats Les tats : :
0 : Dmarrage 0 : Dmarrage
1 : Attente ( 1 : Attente (timeout timeout) )
2 : vnement 1 2 : vnement 1
3 : vnement 2 3 : vnement 2
4 : Arrt 4 : Arrt
Dans chaque trame de la structure Dans chaque trame de la structure
Condition Condition correspondant un correspondant un
tat donn, on dtermine ltat tat donn, on dtermine ltat
suivant. suivant.
Par Nicolas POUSSET 174
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Gestion dvnements sur linterface utilisateur Gestion dvnements sur linterface utilisateur : Utilisation de la : Utilisation de la
boucle vnementielle boucle vnementielle, de la , de la structure condition structure condition et de et de listes dattente listes dattente. .
Exemple de programme Exemple de programme : :
Face avant comprenant 4 Face avant comprenant 4
onglets onglets ( ( Commande onglet Commande onglet
de la sous palette de la sous palette Conteneurs Conteneurs
de la palette de la palette Commandes Commandes ) ) sur sur
lesquelles est disponibles lesquelles est disponibles
plusieurs commandes plusieurs commandes
attaches des attaches des
fonctionnalits prcises. fonctionnalits prcises.
Par Nicolas POUSSET 175
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Dans un premier temps nous allons tudier la face avant de ce Dans un premier temps nous allons tudier la face avant de ce
programme qui repose sur une architecture de type programme qui repose sur une architecture de type machine machine
dtats dtats pour en comprendre le fonctionnement gnral ainsi pour en comprendre le fonctionnement gnral ainsi
que les diffrentes fonctionnalits. que les diffrentes fonctionnalits.
Nous tudierons ensuite en dtail le diagramme de ce Nous tudierons ensuite en dtail le diagramme de ce
programme. programme.
Par Nicolas POUSSET 176
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Onglet : Onglet : Fonctions Fonctions
Listing de toutes les Listing de toutes les
fonctions disponibles fonctions disponibles
dans le programme dans le programme
Possibilit dcrire Possibilit dcrire
les commandes de les commandes de
fonctions la main fonctions la main
pour que celles pour que celles- -ci ci
sexcutent. sexcutent.
Par Nicolas POUSSET 177
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Onglet : Onglet : Image Image
Affiche ( gauche) Affiche ( gauche)
une image partir une image partir
dun chemin spcifi. dun chemin spcifi.
Affiche ( droite) un Affiche ( droite) un
masque de limage masque de limage
de gauche. Celui de gauche. Celui- -ci ci
peut tre en couleur peut tre en couleur
ou en noir et blanc. ou en noir et blanc.
Par Nicolas POUSSET 178
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Onglet : Onglet : Mto Mto
Affiche ( gauche) Affiche ( gauche)
diverses informations diverses informations
(date dacquisition, (date dacquisition,
temprature, temprature,
humidit, humidit,
pression,) lorsque pression,) lorsque
lon appui sur le lon appui sur le
bouton bouton Lecture des Lecture des
paramtres mto paramtres mto . .
Par Nicolas POUSSET 179
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Onglet : Onglet : Enregistement Enregistement de donnes de donnes
Permet lacquisition Permet lacquisition
de donnes, la de donnes, la
suppression dune suppression dune
ligne, leffacement du ligne, leffacement du
tableau et tableau et
lenregistrement des lenregistrement des
donnes dans un donnes dans un
fichier excel. fichier excel.
Par Nicolas POUSSET 180
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Cette prsentation des diffrents onglets de la face avant de ce Cette prsentation des diffrents onglets de la face avant de ce VI ont VI ont
permis davoir un aperu gnral des fonctionnalits de ce permis davoir un aperu gnral des fonctionnalits de ce
programme. programme.
Il faut galement voir, que celui Il faut galement voir, que celui- -ci fonctionne en continu (grce une ci fonctionne en continu (grce une
boucle boucle While While) et quil est possible de commencer, par exemple, par ) et quil est possible de commencer, par exemple, par
une lecture des paramtres mto, ensuite dacqurir des donnes une lecture des paramtres mto, ensuite dacqurir des donnes et et
de les enregistrer, puis, pourquoi pas de raliser un masque du de les enregistrer, puis, pourquoi pas de raliser un masque dune ne
image. image.
Dans ce type darchitecture il ny a aucune notion de Dans ce type darchitecture il ny a aucune notion de squenage squenage
ce qui laisse une libert totale de paramtrage de la face avant ce qui laisse une libert totale de paramtrage de la face avant. .
Par Nicolas POUSSET 181
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Par Nicolas POUSSET 182
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Par Nicolas POUSSET 183
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Par Nicolas POUSSET 184
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Par Nicolas POUSSET 185
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Par Nicolas POUSSET 186
L
L

architecture de machine d
architecture de machine d

tats (complexe)
tats (complexe)
Par Nicolas POUSSET 187
Partie XIII
Partie XIII
-
-
Panneaux de contr
Panneaux de contr

le
le

distance
distance
Visualisation et contr
Visualisation et contr

le de la face avant d
le de la face avant d

un programme
un programme
LabVIEW
LabVIEW
,
,

partir d
partir d

un navigateur
un navigateur
Web
Web
(Internet Explorer,
(Internet Explorer,
Firefox
Firefox
,
,

).
).
- - Les clients Les clients loign loign s observent directement les changements s observent directement les changements
et mises et mises jours des programmes jours des programmes LabVIEW LabVIEW gr gr ce au serveur ce au serveur
Web Web disponible dans disponible dans labVIEW labVIEW. .
- - Plusieurs clients peuvent regarder la m Plusieurs clients peuvent regarder la m me face avant me face avant
simultan simultan ment. ment.
- - Un seul client Un seul client la fois peut contr la fois peut contr ler la face avant ler la face avant distance. distance.
Par Nicolas POUSSET 188
Outil de publication de face avant sur le
Outil de publication de face avant sur le
Web
Web
Outils Outil de publication pour le Outils Outil de publication pour le Web Web
Cliquez sur Cliquez sur Enregistrer Enregistrer
sur disque sur disque et le VI est et le VI est
encapsul encapsul dans un fichier dans un fichier
HTML. HTML.
Une fois sauvegard, le Une fois sauvegard, le
fichier peut tre ouvert fichier peut tre ouvert
nouveau et personnalis nouveau et personnalis
dans tout diteur HTML. dans tout diteur HTML.
Ne pas oublier dactiver le serveur Ne pas oublier dactiver le serveur web web pour pour
permettre au(x) client(s) daccder aux donnes. permettre au(x) client(s) daccder aux donnes.
Par Nicolas POUSSET 189
Application fonctionnant sur le PC Application fonctionnant sur le PC
o est install o est install LabVIEW LabVIEW
Nimporte qui peut partir Nimporte qui peut partir
dInternet visualiser en dInternet visualiser en
temps rel le VI et le temps rel le VI et le
contrler sil en a, au contrler sil en a, au
pralable, t autoris. pralable, t autoris.
Linstallation de Linstallation de
LabVIEW LabVIEW sur la sur la
machine distante nest machine distante nest
pas ncessaire. pas ncessaire.
Outil de publication de face avant sur le
Outil de publication de face avant sur le
Web
Web
Par Nicolas POUSSET 190
Panneau de contr
Panneau de contr

le
le

distance
distance
-
-
Ressources
Ressources
NI NI Developer Developer Zone Zone
(zone.ni. (zone.ni.com com) )
- - Recherche de panneaux de Recherche de panneaux de
contr contr le le distance. distance.
Ex:http:// Ex:http://www www.ni. .ni.com com/ /webappdemos webappdemos/ /tempcontrol tempcontrol
demo demo. .htm htm) )
- - T T l l chargement de Tutoriaux chargement de Tutoriaux
et Instructions. et Instructions.
- - Support sur l Support sur l incorporation incorporation
de de Webcams Webcams dans les dans les
panneaux de contr panneaux de contr le le
distance. distance.
Par Nicolas POUSSET 191
Partie XIV
Partie XIV

Contr
Contr

le d
le d

instruments
instruments

Communication par liaison


Communication par liaison
GPIB
GPIB
.
.
Pr Pr sentation et caract sentation et caract ristiques techniques. ristiques techniques.
Measurement and Measurement and Automation Explorer (MAX) : Outils de test. Automation Explorer (MAX) : Outils de test.
Fonctions de base pour la mise en Fonctions de base pour la mise en uvre du bus. uvre du bus.
Utilisation de VI type. Utilisation de VI type.

Communication par liaison


Communication par liaison
S
S

rie.
rie.
Pr Pr sentation et caract sentation et caract ristiques techniques. ristiques techniques.
Fonctions de base pour la mise en Fonctions de base pour la mise en uvre du bus. uvre du bus.
Utilisation des exemples disponibles. Utilisation des exemples disponibles.

Drivers d
Drivers d

instruments.
instruments.
Par Nicolas POUSSET 192
Introduction
Introduction
Dans le cas de communications par liaisons GPIB ou Dans le cas de communications par liaisons GPIB ou
Srie, lacquisition de donnes se fait par lintermdiaire Srie, lacquisition de donnes se fait par lintermdiaire
dun instrument autonome (multimtre, oscilloscope,) dun instrument autonome (multimtre, oscilloscope,)
au sein duquel sont effectues les oprations au sein duquel sont effectues les oprations
dentres/sorties des signaux mesurs. dentres/sorties des signaux mesurs.
Le programme dvelopp sert uniquement la Le programme dvelopp sert uniquement la
configuration de linstrument, la rcupration, lanalyse configuration de linstrument, la rcupration, lanalyse
et la prsentation des donnes. et la prsentation des donnes.
Par Nicolas POUSSET 193
GPIB
GPIB
-
-
Introduction
Introduction
La liaison GPIB ( La liaison GPIB (General Purpose General Purpose Interface Bus) appele aussi IEEE 488 Interface Bus) appele aussi IEEE 488 (IEEE : (IEEE :
Institute Institute of of Electrical and Electronics Engineers Electrical and Electronics Engineers) ) est devenue depuis son apparition est devenue depuis son apparition
en 1965 (cre par en 1965 (cre par Hewlett Hewlett- -Packard Packard) un standard de communication qui permet ) un standard de communication qui permet
aujourdhui de contrler la plupart des instruments de mesures ( aujourdhui de contrler la plupart des instruments de mesures (oscilloscopes, oscilloscopes,
multimtres, gnrateurs de fonctions, ). multimtres, gnrateurs de fonctions, ).
La premire normalisation de ce bus date de 1987 sous la rfren La premire normalisation de ce bus date de 1987 sous la rfrence IEEE 488.1. Une ce IEEE 488.1. Une
deuxime normalisation de ce bus est intervenue en 1992 avec la deuxime normalisation de ce bus est intervenue en 1992 avec la rfrence IEEE 488.2 rfrence IEEE 488.2
pour prciser la prcdente qui tait incomplte, et ceci en pr pour prciser la prcdente qui tait incomplte, et ceci en prcisant le protocole de cisant le protocole de
communication, en dfinissant les formats de donnes,... En 1990 communication, en dfinissant les formats de donnes,... En 1990, le document , le document
Standard Commands for Programmable Instrumentation (SCPI) a t Standard Commands for Programmable Instrumentation (SCPI) a t incorpor la incorpor la
norme. Celui norme. Celui- -ci dfinit un certain nombre de commandes auxquelles chaque ci dfinit un certain nombre de commandes auxquelles chaque
instrument doit pouvoir obir. Cela permet ainsi une interoprab instrument doit pouvoir obir. Cela permet ainsi une interoprabilit de matriels de ilit de matriels de
diffrents fabricants. diffrents fabricants.
Connecteur GPIB Connecteur GPIB
Par Nicolas POUSSET 194
GPIB
GPIB
-
-
Caract
Caract

ristiques
ristiques
techniques
techniques
- - La liaison GPIB est une liaison parallle La liaison GPIB est une liaison parallle
sur 8 bits. sur 8 bits.
- - Interconnexion de 15 appareils maximum : Interconnexion de 15 appareils maximum :
chaque appareil possde une adresse chaque appareil possde une adresse
comprise entre 0 et 30. comprise entre 0 et 30.
- - Vitesse de transfert maximum : 1 Mo/s. Vitesse de transfert maximum : 1 Mo/s.
- - Longueur de cble de 4 m au maximum Longueur de cble de 4 m au maximum
entre 2 appareils. entre 2 appareils.
- - Longueur totale de cble de 20 m au Longueur totale de cble de 20 m au
maximum. maximum.
- - Au minimum les 2/3 des instruments Au minimum les 2/3 des instruments
doivent tre sous tension. doivent tre sous tension.
Interface Interface
GPIB/USB HS GPIB/USB HS
de National de National
Instruments Instruments
Carte GPIB Carte GPIB
Cble GPIB Cble GPIB
IEEE 488 : 1 Mo/s IEEE 488 : 1 Mo/s
HS 488 : 8 Mo/s HS 488 : 8 Mo/s
Par Nicolas POUSSET 195
GPIB
GPIB
-
-
Measurement and
Measurement and
Automation Explorer
Automation Explorer
(MAX)
(MAX)
Priphriques Priphriques
connects connects
Test pour Test pour
dterminer dterminer
quels sont les quels sont les
instruments instruments
connects connects
Instruments Instruments
connects connects
Adresses GPIB Adresses GPIB
Rponses des instruments la commande Rponses des instruments la commande IDN? IDN?
Par Nicolas POUSSET 196
GPIB
GPIB
-
-
Measurement and
Measurement and
Automation Explorer
Automation Explorer
(MAX)
(MAX)
Clic sur un instrument : par exemple Clic sur un instrument : par exemple Instrument0 Instrument0
Possibilit de tester la communication avec linstrument Possibilit de tester la communication avec linstrument
Adresse GPIB de linstrument Adresse GPIB de linstrument
Par Nicolas POUSSET 197
GPIB
GPIB

VI type
VI type
Architecture utilisant Architecture utilisant
des VI Express dj des VI Express dj
disponibles pour disponibles pour
gagner en rapidit et gagner en rapidit et
en simplicit. en simplicit.
Par Nicolas POUSSET 198
GPIB
GPIB
-
-
Fonctions de base dans
Fonctions de base dans
labVIEW
labVIEW
Par Nicolas POUSSET 199
S
S

rie
rie
-
-
Introduction
Introduction
Bien que progressivement dlaisse pour Bien que progressivement dlaisse pour lUSB lUSB ( (Universal Universal Serial Bus), la liaison Serial Bus), la liaison
Srie (RS 232, RS 449, RS 422, RS 423, RS 485) est un moyen de c Srie (RS 232, RS 449, RS 422, RS 423, RS 485) est un moyen de communication, ommunication,
encore aujourdhui, rpandu pour la transmission de donnes entr encore aujourdhui, rpandu pour la transmission de donnes entre un ordinateur et e un ordinateur et
un priphrique (imprimante, instrument de mesure programmable, un priphrique (imprimante, instrument de mesure programmable,) )
La liaison Srie est une liaison asynchrone cest La liaison Srie est une liaison asynchrone cest- - - -dire quelle ne transmet pas de dire quelle ne transmet pas de
signal dhorloge. Il ny a donc aucune synchronisation entre l signal dhorloge. Il ny a donc aucune synchronisation entre lmetteur et le metteur et le
rcepteur. Pour que le rcepteur puisse interprter convenableme rcepteur. Pour que le rcepteur puisse interprter convenablement linformation du nt linformation du
transmetteur, il faut que les deux lments soient configurs de transmetteur, il faut que les deux lments soient configurs de la mme faon. la mme faon.
Il faut spcifier 4 paramtres pour ce type de communication : l Il faut spcifier 4 paramtres pour ce type de communication : le dbit de e dbit de
transmission en bauds, le nombre de bits de donnes, la polarit transmission en bauds, le nombre de bits de donnes, la polarit du bit de parit du bit de parit
(paire ou impaire), le nombre de bits de stop (1, 1,5 ou 2). (paire ou impaire), le nombre de bits de stop (1, 1,5 ou 2).
Port Srie Port Srie
Par Nicolas POUSSET 200
S
S

rie
rie
-
-
Caract
Caract

ristiques
ristiques
techniques
techniques
Niveau haut
Niveau bas
Bit de
Start
B
0
B
1
B
2
B
3
B
4
B
5
B
6
Bit de
Parit
Bit de
Stop
- - Un Un bit de start bit de start qui qui indique qu indique qu une une information information va va tre envoy tre envoy e e. Il . Il permet permet la la
synchronisation du r synchronisation du r cepteur cepteur. .
- - 7 7 ou ou 8 8 bit de bit de donn donn es es (B (B
0 0
B B
6 6
( (ou ou B B
7 7
) avec B ) avec B
0 0
le bit de le bit de poids poids faible faible (LSB) et B (LSB) et B
6 6
le bit de le bit de
poids poids fort (MSB)). fort (MSB)).
- - Un Un bit de bit de parit parit qui qui permet permet de de d d tecter tecter les les ventuelles erreurs ventuelles erreurs de transmission. de transmission.
- - Un Un bit de stop bit de stop. Apr . Apr s la transmission la s la transmission la ligne est positionn ligne est positionn e e au au repos repos pendant X pendant X
p p riodes d riodes d horloges du r horloges du r cepteur cepteur. .
Voici Voici le format type le format type d d une trame envoy une trame envoy e e par le port par le port s s rie rie : :
Par Nicolas POUSSET 201
S
S

rie
rie
-
-
Fonctions de base dans
Fonctions de base dans
labVIEW
labVIEW
VISA VISA : : Virtual Virtual Instrument Software Architecture Instrument Software Architecture
Par Nicolas POUSSET 202
Exemples de VI
Exemples de VI
Exemples de Exemples de
VI apportant VI apportant
une aide au une aide au
dmarrage dmarrage
dun projet ou dun projet ou
quelques quelques
solutions solutions
des problmes des problmes
de conception de conception
Par Nicolas POUSSET 203
Drivers d
Drivers d

instruments
instruments
Les drivers dinstruments sont des bibliothques de VI qui perme Les drivers dinstruments sont des bibliothques de VI qui permettent de ttent de
contrler un instrument programmable. contrler un instrument programmable.
Accessible sur le site de NI ladresse suivante : Accessible sur le site de NI ladresse suivante :
ww
ww
.ni.
.ni.
com
com
/
/
idnet
idnet
Ou Ou par par labVIEW labVIEW partir de larborescence suivante : partir de larborescence suivante : Outils > Instrumentation Outils > Instrumentation
> Base de drivers dinstruments > Base de drivers dinstruments . .
Exemple : Exemple : Multimtre KEITHLEY modle 2002 : Multimtre KEITHLEY modle 2002 :
Par Nicolas POUSSET 204
Partie XV
Partie XV
-
-
Module Vision
Module Vision

NI Vision Assistant.
NI Vision Assistant.

Acquisition d
Acquisition d

une SEULE image


une SEULE image
avec une
avec une
webcam
webcam
par USB.
par USB.

Acquisition continue d
Acquisition continue d

images
images
avec une
avec une
webcam
webcam
par USB.
par USB.
Par Nicolas POUSSET 205
NI Vision Assistant
NI Vision Assistant
Vision Assistant permet de Vision Assistant permet de
paramtrer la camra utilise, paramtrer la camra utilise,
de procder de procder lacquisition lacquisition
dimages dimages ou de squences ou de squences
dimages, permet de procder dimages, permet de procder
une multitude de une multitude de traitement traitement
dimages dimages et permet de et permet de gnrer gnrer
automatiquement automatiquement et facilement et facilement
un code un code LabVIEW LabVIEW
oprationnel oprationnel. .
Par Nicolas POUSSET 206
NI Vision Assistant
NI Vision Assistant

Acquisition
Acquisition
Choix du type de camra Choix du type de camra
(USB, (USB, Firewire Firewire,) ,)
Par Nicolas POUSSET 207
NI Vision Assistant
NI Vision Assistant

Acquisition
Acquisition
Slection de la Slection de la
camra camra
Rglage des Rglage des
paramtres vido paramtres vido
Rglage des Rglage des
paramtres lis aux paramtres lis aux
images images
Acquisition dune Acquisition dune
squence dimages squence dimages
Par Nicolas POUSSET 208
NI Vision Assistant
NI Vision Assistant

Param
Param

trage
trage
Rglage des paramtres vido Rglage des paramtres vido
Rglage des paramtres lis aux images Rglage des paramtres lis aux images
Ces paramtres sont intrinsques Ces paramtres sont intrinsques
la camra utilise. Ils seront la camra utilise. Ils seront
diffrents pour dautres types de diffrents pour dautres types de
camras. camras.
Contraste, Contraste,
saturation, saturation,
Vision infrarouge Vision infrarouge
Degr de Degr de
rouge, vert, rouge, vert,
bleu. bleu.
Par Nicolas POUSSET 209
NI Vision Assistant
NI Vision Assistant

Traitement d
Traitement d

images
images
Exemple dune image dun Exemple dune image dun
micromtre objet (talon micromtre objet (talon
trait) observ au microscope trait) observ au microscope
optique + camra CCD optique + camra CCD
1 mm
Par Nicolas POUSSET 210
NI Vision Assistant
NI Vision Assistant

Traitement d
Traitement d

images
images
Diverses fonctions Diverses fonctions
sont disponibles : sont disponibles :
profils, mesures de profils, mesures de
distances, dangles, distances, dangles,
calibration calibration
dimages, dimages,
Affichage des points Affichage des points
du profil dans un du profil dans un
fichier Excel fichier Excel
Sauvegarde des points Sauvegarde des points
du profil dans un du profil dans un
fichier texte fichier texte
Exemple de mesure de profil Exemple de mesure de profil
sur une ligne de limage sur une ligne de limage
Profil de la ligne choisie (en vert) Profil de la ligne choisie (en vert)
Par Nicolas POUSSET 211
NI Vision Assistant
NI Vision Assistant

G
G

n
n

ration automatique de code


ration automatique de code
Tools Tools Create Create
LabVIEW LabVIEW VI VI
Exemple de dtection Exemple de dtection
de bord et de calcul de bord et de calcul
de centre de trait de centre de trait
Dtection de bord Dtection de bord
de traits de traits
Calcul de centre Calcul de centre
de traits de traits
Par Nicolas POUSSET 212
NI Vision Assistant
NI Vision Assistant

G
G

n
n

ration automatique de code


ration automatique de code
Programme Programme LabVIEW LabVIEW de dtection de de dtection de
bord de trait et de calcul de centre bord de trait et de calcul de centre
gnr automatiquement. gnr automatiquement.
Par Nicolas POUSSET 213
Fonctions Vision
Fonctions Vision
Vision Vision Utilities Utilities
NI NI- -IMAQ pour IMAQ pour
camras IEEE 1394 camras IEEE 1394
( (Firewire Firewire) )
Image Acquisition Image Acquisition
Image Image Processing Processing
IMAQ USB IMAQ USB
Machine Vision Machine Vision
Fonctions Toutes les fonctions Fonctions Toutes les fonctions
Mesures NI Vision Mesures NI Vision
Par Nicolas POUSSET 214
Outils de visualisation
Outils de visualisation
Commandes Toutes les commandes Vision Commandes Toutes les commandes Vision
Outil de visualisation Outil de visualisation
dimages sur la face dimages sur la face
avant avant
Par Nicolas POUSSET 215
Acquisition dune SEULE image
Acquisition dune SEULE image
Utilisation Utilisation
du du SNAP SNAP
USB USB
Webcam Webcam
PC PC
Par Nicolas POUSSET 216
Acquisition CONTINUE
Acquisition CONTINUE
dimages
dimages
Utilisation du Utilisation du
GRAB GRAB
Par Nicolas POUSSET 217
Partie XVI
Partie XVI

Exercices d
Exercices d

applications
applications

Cration dune mire


Cration dune mire
sans
sans
les outils vision.
les outils vision.
-
-
Cration dun motif.
Cration dun motif.
-
-
Cration dune ligne de motifs.
Cration dune ligne de motifs.
-
-
Cration dune mire de motifs identiques.
Cration dune mire de motifs identiques.

Cration dune mire


Cration dune mire
avec
avec
les outils vision.
les outils vision.

Ouverture dune image.


Ouverture dune image.

Cration dun masque sur une image.


Cration dun masque sur une image.

Calibrage dune image.


Calibrage dune image.
Par Nicolas POUSSET 218
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
1
re
tape : Cration dun motif unique dont les
coordonnes des deux coins indiqus sont entres
dans un tableau (x
1
, y
1
, x
2
, y
2
).
x
1
y
1
x
2
y
2
0
x
1
x
2
y
1
y
2
Par Nicolas POUSSET 219
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Raliser un VI qui
permet de visualiser
laffichage dun motif
sur un fond noir.
Pour ce faire nous
utiliserons des graphiques
dintensit ainsi que les VI
suivants (voir diapo
suivante).
Par Nicolas POUSSET 220
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Aide contextuelle Aide contextuelle
Nous utiliserons les VI standards suivants :
Par Nicolas POUSSET 221
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 222
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
2
me
tape : Cration dune ligne de motifs
identiques. Pour cela nous allons dcomposer le
problme en crant un sous VI qui gnre un seul
motif puis lutiliser dans une boucle For au sein
dun VI principal pour la cration dune ligne.
Par Nicolas POUSSET 223
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Cration du sous VI Cration du sous VI
Cration dune icne Cration dune icne
facilement reconnaissable facilement reconnaissable
Par Nicolas POUSSET 224
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 225
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Raliser un VI qui permet de visualiser laffichage dune
ligne de motifs identiques sur un fond bleu.
Par Nicolas POUSSET 226
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 227
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
3
me
tape : Cration dune mire de motifs
identiques. Pour cela nous allons utiliser deux
boucles For pour la cration des lignes et des
colonnes.
Par Nicolas POUSSET 228
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Raliser un VI qui permet de visualiser laffichage dune
mire de motifs identiques sur un fond noir.
Par Nicolas POUSSET 229
Cr
Cr

ation d
ation d

une mire
une mire
sans
sans
les outils vision
les outils vision
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 230
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
1
re
tape : Cration de la variable image ( laide
du VI standard IMAQ Create ) et dun motif
unique.
Par Nicolas POUSSET 231
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Raliser un VI qui permet de
visualiser laffichage dun motif
ovale sur un fond noir dans deux
modes de visualisation diffrents.
Par Nicolas POUSSET 232
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Aide contextuelle Aide contextuelle
Pour ce faire nous utiliserons les VI standards suivants :
Par Nicolas POUSSET 233
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Exemple de solution possible Exemple de solution possible
Affichage de limage dans une bote
de dialogue distincte de la face
avant du VI cre.
Par Nicolas POUSSET 234
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Exemple de solution possible Exemple de solution possible
Affichage de limage dans un indicateur
visuel prsent sur la face avant du VI
cre.
Par Nicolas POUSSET 235
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
2
me
tape : Cration dune ligne de motifs
identiques.
tapes du programmes :
- Crer un fond noir de 100 x 100 pixels par exemple.
- Calculer le nombre de motifs par ligne.
- Rpter linscription dun motif chaque tour.
- La position du motif est incrmente chaque tour en
incrmentant les lments (x
1
, x
2
) du tableau de position du
motif et en remplaant lancien tableau de position par le
nouveau.
Par Nicolas POUSSET 236
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Raliser un VI qui permet de
visualiser laffichage dune ligne de
motifs ovales sur un fond noir.
Par Nicolas POUSSET 237
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 238
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
3
me
tape : Cration dune mire de motifs
identiques. Pour cela nous allons utiliser deux
boucles For pour la cration des lignes et des
colonnes.
Par Nicolas POUSSET 239
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Raliser un VI qui permet de
visualiser laffichage dune
mire de motifs identiques sur
un fond noir.
Par Nicolas POUSSET 240
Cr
Cr

ation d
ation d

une mire
une mire
avec
avec
les outils vision
les outils vision
Exemple de Exemple de
solution possible solution possible
Par Nicolas POUSSET 241
Ouverture d
Ouverture d

une image
une image
Raliser un programme qui ouvre et affiche
un fichier image dans une fentre externe.
On utilisera entre autre les VI Standards suivants :
Par Nicolas POUSSET 242
Ouverture d
Ouverture d

une image
une image
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 243
Cr
Cr

ation d
ation d

un masque sur une image


un masque sur une image
Raliser un programme qui permet de
crer un masque sur une image donne
en noir et blanc.
Image initiale Image initiale
Slection de la zone de Slection de la zone de
limage garder limage garder
Image masque Image masque
Masque cre Masque cre
(Version noir et blanc)
Par Nicolas POUSSET 244
Cr
Cr

ation d
ation d

un masque sur une image


un masque sur une image
On utilisera entre autre les VI Standards suivants :
Par Nicolas POUSSET 245
Cr
Cr

ation d
ation d

un masque sur une image


un masque sur une image
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 246
Cr
Cr

ation d
ation d

un masque sur une image


un masque sur une image
(Version couleur)
Raliser un programme qui permet de crer un
masque sur une image donne en couleur.
Par Nicolas POUSSET 247
Cr
Cr

ation d
ation d

un masque sur une image


un masque sur une image
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 248
Calibrage d
Calibrage d

une image
une image
Raliser un programme qui permet de
crer le calibrage dune image dforme.
Image Image
initiale initiale
Image Image
rogne rogne
Image Image
calibre calibre
Par Nicolas POUSSET 249
Calibrage d
Calibrage d

une image
une image
Exemple de solution possible Exemple de solution possible
Par Nicolas POUSSET 250

Qu
Qu

est
est
-
-
ce que le temps r
ce que le temps r

el ?
el ?

Terminologie, principe de
Terminologie, principe de
d
d

veloppement.
veloppement.

Architecture.
Architecture.

Exemples d
Exemples d

applications, cibles.
applications, cibles.
Partie XVII
Partie XVII

D
D

veloppements
veloppements
d
d

application temps r
application temps r

el
el
Par Nicolas POUSSET 251
En
En
informatique industrielle
informatique industrielle
, on
, on
parle
parle
d'un
d'un
systme
systme
temps
temps
rel lorsque ce
rel lorsque ce
systme informatique contrle
systme informatique contrle
(
(
ou pilote
ou pilote
)
)
un
un
procd
procd
physique
physique
une vitesse adapte
une vitesse adapte

l'volution du procd contrl


l'volution du procd contrl
.
.
Le temps rel ne signifie pas forcment rapide. Le temps rel ne signifie pas forcment rapide.
Le temps rel garantit une fiabilit absolue car les Le temps rel garantit une fiabilit absolue car les
systmes temps rel ont des contraintes temporelles qui systmes temps rel ont des contraintes temporelles qui
doivent tre atteintes sans aucun chec : on dit que le doivent tre atteintes sans aucun chec : on dit que le
systme est systme est
dterministe
dterministe. .
Qu
Qu

est
est
-
-
ce que le temps r
ce que le temps r

el ?
el ?
Par Nicolas POUSSET 252
Dterminisme
Dterminisme
: caractristique dun systme qui indique
: caractristique dun systme qui indique
son niveau de fiabilit rpondre un vnement ou
son niveau de fiabilit rpondre un vnement ou
effectuer une tche dans un dlai imparti.
effectuer une tche dans un dlai imparti.
Temps de boucle
Temps de boucle
: temps pris pour excuter un cycle de
: temps pris pour excuter un cycle de
boucle.
boucle.
Jitter
Jitter
: variation du temps de boucle rel par rapport au
: variation du temps de boucle rel par rapport au
temps de boucle souhait.
temps de boucle souhait.
Embarqu
Embarqu
: caractrise un systme autonome (pas de
: caractrise un systme autonome (pas de
clavier, ni de souris, ni dcran,).
clavier, ni de souris, ni dcran,).
Terminologie temps r
Terminologie temps r

el
el
Par Nicolas POUSSET 253
Principe de d
Principe de d

veloppement temps r
veloppement temps r

el
el
1. Dvelopper sur un ordinateur hte. 1. Dvelopper sur un ordinateur hte.
Ordinateur hte Ordinateur hte
2. Tlcharger le code sur une cible. 2. Tlcharger le code sur une cible.
Code tlcharg via Code tlcharg via
une une liaison Ethernet. liaison Ethernet.
Processeur Processeur
Module dE/S Module dE/S
Cible Cible temps temps rel rel
Par Nicolas POUSSET 254
Principe de d
Principe de d

veloppement temps r
veloppement temps r

el
el
3. Excuter le code 3. Excuter le code
Affichage Affichage possible des possible des
faces faces avant sur avant sur le PC le PC hte hte
par par lintermdiaire dune lintermdiaire dune
communication Ethernet. communication Ethernet.
Cible Cible temps temps rel rel qui qui devient devient
compltement autonome compltement autonome. .
Dvelopper Dvelopper des des programmes programmes avec le avec le lego Mindstorms lego Mindstorms et et
vous ferez du vous ferez du temps temps rel rel. .
Par Nicolas POUSSET 255
Architecture typique
Architecture typique
Cible
Cible
RT (Real
RT (Real
-
-
Time)
Time)
PC
PC
hte
hte
Boucle de Boucle de
lapplication lapplication
( (dterministe dterministe) )
Priorit Priorit temps temps
critique critique
Boucle de Boucle de
communication communication
(non (non dterministe dterministe) )
Priorit normale Priorit normale
Disque Disque
Application Application
cliente cliente
Disque Disque
Par Nicolas POUSSET 256
Programme du PC h
Programme du PC h

te
te
Excut
Excut
sur
sur
le PC
le PC
hte
hte
.
.
Pas
Pas
ncessaire
ncessaire
.
.
Gre
Gre
les
les
tches
tches
non
non
dterministes
dterministes
:
:
- - Communication avec le Communication avec le programme cible programme cible : :
envoi des envoi des paramtres paramtres de de linterface utilisateur linterface utilisateur
et et rcupration rcupration des des donnes donnes
- - Enregistrement Enregistrement et et analyse analyse des des donnes donnes
- - Emission des Emission des donnes vers dautres donnes vers dautres
systmes systmes
Par Nicolas POUSSET 257
Programme de la cible
Programme de la cible
Les Les tches tches de de priorit priorit plus plus leve gardent leve gardent la main la main sur sur les les
tches tches de de priorit moins importante priorit moins importante. .
Les Les tches tches qui qui ncessitent ncessitent dtre dtre dterministes sont dterministes sont des des
tches dites tches dites temps critique. temps critique. Toutes Toutes les les autres auront une autres auront une
priorit moins importante priorit moins importante. .
Le multithreading Le multithreading permet permet de de donner donner la la priorit priorit une une
tche tche en en particulier particulier. .
Boucle de Boucle de
priorit priorit
normale normale
Boucle Boucle
temps temps
critique critique
Communication Communication
inter inter- -threads threads
Programme de la cible
Par Nicolas POUSSET 258
Qu
Qu

est que le
est que le
multithread
multithread
?
?
Extension Extension du du principe principe de de multitche multitche. .
- - Multitche Multitche : : capacit du systme dexploitation capacit du systme dexploitation basculer entre basculer entre
diffrentes tches diffrentes tches. .
- - Une tche est gnralement une Une tche est gnralement une application part application part entire telle que entire telle que
LabVIEW LabVIEW. .
Le multithread Le multithread tend tend le le principe principe au au sein mme dune sein mme dune
application. application.
- - Des Des oprations spcifiques oprations spcifiques au au sein dune mme sein dune mme application application peuvent peuvent
tre rparties chacune dans tre rparties chacune dans un thread un thread spcifique spcifique. .
- - Le temps Le temps processeur peut tre rparti sur processeur peut tre rparti sur les threads. les threads.
- - Capacit Capacit avoir avoir des des niveaux niveaux de de priorit priorit. .
Par Nicolas POUSSET 259
Performances dterministes Performances dterministes
Gestion Gestion dun airbag dun airbag
Autonomie Autonomie
Tests Tests sous sous- -marins marins
Fiabilit des performances Fiabilit des performances
Tests de rsistance et Tests de rsistance et
dendurance dendurance
Exemples d
Exemples d

applications temps r
applications temps r

el
el
Par Nicolas POUSSET 260
Contrleurs Contrleurs PXI PXI embarqus embarqus RT RT
Haute Haute vitesse vitesse, haute , haute densit dE densit dE/S multiples /S multiples
Compact Vision Compact Vision
Automate de vision Automate de vision industrielle industrielle
CompactRIO CompactRIO
E/S E/S reconfigurables reconfigurables, ,
environnement durcis environnement durcis
Compact Compact FieldPoint FieldPoint RT RT
Encombrement rduit Encombrement rduit, , environnement durcis environnement durcis
PC de bureau PC de bureau ou industriel ou industriel
Dterminisme Dterminisme pour les pour les systmes systmes PCI PCI
LabVIEW Real LabVIEW Real- -Time Time
Exemples de cibles temps r
Exemples de cibles temps r

el avec
el avec
LabVIEW
LabVIEW
Par Nicolas POUSSET 261
Partie XVIII
Partie XVIII

DataSocket
DataSocket

Quest ce que DataSocket


Quest ce que DataSocket
?
?

Protocole
Protocole
de
de
transfert
transfert
DataSocket
DataSocket
.
.

Fonctions DataSocket
Fonctions DataSocket
.
.

Exemple
Exemple
:
:
labVIEW
labVIEW
Messenger
Messenger
Par Nicolas POUSSET 262
Qu
Qu

est que
est que
DataSocket
DataSocket
?
?
DataSocket est une bibliothque DataSocket est une bibliothque de de fonctions fonctions qui qui permet permet
dchanger dchanger des des donnes entre diffrentes donnes entre diffrentes applications applications sur sur un un
mme ordinateur ou entre diffrents ordinateurs connects sur mme ordinateur ou entre diffrents ordinateurs connects sur
un un mme rseau mme rseau. .
Les Les donnes sont publies sur donnes sont publies sur un un serveur DataSocket serveur DataSocket, , puis puis le le
client client contacte contacte le le serveur DataSocket serveur DataSocket et et lui demande lui demande la la
rcupration rcupration des des donnes donnes. .
Machine 1 Machine 1 : :
Publication des Publication des
donnes donnes
Machine 2 Machine 2 : Lecture : Lecture
des des donnes donnes
Serveur DataSocket Serveur DataSocket
Par Nicolas POUSSET 263
Protocole de transfert
Protocole de transfert
DataSocket
DataSocket
DataSocket
DataSocket
Transfer Protocol (DSTP)
Transfer Protocol (DSTP)
peut
peut

tre
tre
utilis
utilis

dans
dans
une
une
URL (
URL (
Uniform Resource
Uniform Resource
Locator
Locator
), autrement dit une adresse,
), autrement dit une adresse,
de la
de la
m
m

me
me
fa
fa

on
on
que
que
l
l

on
on
utilise
utilise
HTTP pour les pages web.
HTTP pour les pages web.
dstp
dstp
://
://
163.173.45.98
163.173.45.98
/
/
temperature
temperature
Adresse IP de la machine
qui publie les donnes
Nom de la donne Protocole Protocole
Par Nicolas POUSSET 264
Fonctions
Fonctions
DataSocket
DataSocket
Fonctions Fonctions
DataSocket DataSocket Lire Lire
et et
Datasocket Ecrire Datasocket Ecrire
Par Nicolas POUSSET 265
Exemple :
Exemple :
labVIEW Messenger
labVIEW Messenger
Par Nicolas POUSSET 266
Exemple :
Exemple :
labVIEW Messenger
labVIEW Messenger
Par Nicolas POUSSET 267
Exemple :
Exemple :
labVIEW Messenger
labVIEW Messenger
Par Nicolas POUSSET 268
Exemple :
Exemple :
labVIEW Messenger
labVIEW Messenger
Par Nicolas POUSSET 269
Partie XIX
Partie XIX

Sujets compl
Sujets compl

mentaires
mentaires

Communications TCP/IP.
Communications TCP/IP.

Module de d
Module de d

veloppement pour PDA.


veloppement pour PDA.

Programmation de FPGA,
Programmation de FPGA,

Par Nicolas POUSSET 270


Exemples de programmes (Aide Recherche dexemples) Exemples de programmes (Aide Recherche dexemples)
Quelques ressources supplmentaires sur Internet : Quelques ressources supplmentaires sur Internet :
Site Site web web de National Instruments de National Instruments ( (www www.ni. .ni.com com) )
Zone Dveloppeur NI ( Zone Dveloppeur NI (www www.zone.ni. .zone.ni.com com) : forum de discussion ) : forum de discussion
Notes dApplication Notes dApplication
Info Info- -LabVIEW newsgroup LabVIEW newsgroup ( (www www.info .info- -labview labview. .org org) )
Bibliothque des drivers dinstruments : VI qui contrlent un Bibliothque des drivers dinstruments : VI qui contrlent un
instrument programmable ( instrument programmable (www www.ni. .ni.com com/ /idnet idnet) )
Pour aller plus loin
Pour aller plus loin

Par Nicolas POUSSET 271


Nicolas POUSSET Nicolas POUSSET
Optronic Optronic Engineer Engineer - - PhD Student PhD Student - - Teacher Teacher
Institut Institut National de National de Mtrologie Mtrologie (LNE (LNE- -INM) INM)
Conservatoire national des arts et mtiers ( Conservatoire national des arts et mtiers (Cnam Cnam) )
61 Rue 61 Rue du Landy du Landy
93210 La 93210 La Plaine Plaine - - Saint Denis Saint Denis
France France
tl tl. (office) : +33 (0)1.58.80.89.03 . (office) : +33 (0)1.58.80.89.03
tl tl. ( . (labo labo) : +33 (0)1.58.80.46.34 ) : +33 (0)1.58.80.46.34
tl tl. (mobile) : +33 (0)6.76.82.04.35 . (mobile) : +33 (0)6.76.82.04.35
fax : +33 (0)1.58.80.89.00 fax : +33 (0)1.58.80.89.00
e e- -mail : mail : nicolas nicolas. .pousset pousset@ @cnam cnam. .fr fr
Group website : Group website : http:// http://inm inm. .cnam cnam. .fr fr
Perso Perso website : website : http:// http://poucet poucet.club. .club.fr fr

Vous aimerez peut-être aussi