Objectifs du cours
Objectifsdu 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.
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
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.
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.
.
6.
Instrumentation Virtuelle avec
InstrumentationVirtuelle 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.
7.
LabVIEW
LabVIEW est unoutils
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.
8.
LabVIEW
LabVIEW permet l’acquisitionde
permet l’acquisition de
données par l’intermédiaire de
données par l’intermédiaire 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
•
• Série (RS 232, RS 449, RS
Série (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
9.
LabVIEW
LabVIEW inclut desoutils pour
inclut des outils pour
l’analyse des données :
l’analyse des données :
•
• Traitement du signal
Traitement du signal : Convolution, analyse
: Convolution, analyse
spectrale, transformées de Fourier,…
spectrale, transformées de Fourier,…
•
• Traitement d’images
Traitement d’images : Masque, détection de
: Masque, détection de
contours, profils, manipulations de pixels,…
contours, profils, manipulations de pixels,…
•
• Mathématiques
Mathématiques : Interpolation, statistiques
: Interpolation, statistiques
(moyennes, écart
(moyennes, écart-
-type,…), équations
type,…), équations
différentielles,…
différentielles,…
Analyse
Analyse avec
avec LabVIEW
LabVIEW
10.
LabVIEW
LabVIEW inclut desoutils d’aide à
inclut des outils d’aide à
la présentation (communication)
la présentation (communication)
des données :
des données :
•
• Graphiques, tableaux, images, génération
Graphiques, tableaux, images, génération
de rapport,…
de rapport,…
•
• Par l’intermédiaire d’Internet : outils de
Par l’intermédiaire d’Internet : outils de
publication
publication web
web, serveur
, serveur datasocket
datasocket,
,
TCP/IP, envoie d’alertes par
TCP/IP, envoie d’alertes par email
email,…
,…
Pr
Pré
ésentation
sentation avec
avec LabVIEW
LabVIEW
11.
Mars 1998
Mars 1998
1997
1997
Ao
Aoû
ût1993
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
12.
Un peu d
Unpeu 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
13.
LEGO
LEGO Mindstorms
Mindstorms NXT
NXT
Capteurde contact
Capteur de contact
Capteur de son
Capteur de son
Capteur de lumière
Capteur de lumière
Capteur de distance
Capteur de distance
(Émetteur/Récepteur à
(Émetteur/Récepteur à
ultrasons)
ultrasons)
Moteurs
Moteurs
Animaux
Animaux
Humanoïde
Humanoïde
Machine
Machine
4 Entrées
4 Entrées 3 Sorties
3 Sorties
Capteurs additionnels :
Capteurs additionnels :
accéléromètre,
accéléromètre,
gyroscope, colorimètre,…
gyroscope, colorimètre,…
Exemples de conceptions
Exemples de conceptions :
:
14.
LEGO
LEGO Mindstorms
Mindstorms NXT
NXT
Environnementde développement graphique.
Environnement de développement 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 d’évènements,…
gestion d’évènements,…
15.
LEGO
LEGO Mindstorms
Mindstorms NXT
NXT
Autresexemples de conceptions :
Autres exemples de conceptions :
Pilotage d’un hélicoptère
Pilotage d’un hélicoptère
Résolution d’un
Résolution d’un Rubik’s
Rubik’s cube
cube
Possibilité d’utiliser
Possibilité d’utiliser
directement
directement LabVIEW
LabVIEW
pour la programmation
pour la programmation
et la gestion d’éléments
et la gestion d’éléments
plus complexes.
plus complexes.
Table traçante
Table traçante
16.
Les programmes
Les programmesLabVIEW
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.
17.
Composantes d
Composantes d’
’unVI
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 :
18.
Face avant d
Faceavant d’
’un VI
un VI
Barre d’outils
Barre d’outils
de la face
de la face
avant
avant
Légende
Légende
du graphique
du graphique
Contrôles
Contrôles
numérique
numérique
Graphique
Graphique
Icône
Icône
Grandeurs en
Grandeurs en
abscisse et en
abscisse et en
ordonnée de la
ordonnée de la
courbe
courbe
Échelle du
Échelle du
graphique
graphique
Barre des menus
Barre des menus
Contrôle
Contrôle
booléen
booléen
Dans la
Dans la face
face-
-avant
avant nous trouverons tous les éléments
nous trouverons tous les éléments
interactifs du VI (commandes et indicateurs).
interactifs du VI (commandes et indicateurs).
19.
Diagramme d
Diagramme d’
’unVI
un VI
Terminal de
Terminal de
contrôle booléen
contrôle booléen
Fil de
Fil de
données
données
Terminal
Terminal
graphique
graphique
Structure d’une
Structure d’une
boucle
boucle While
While (tant que)
(tant que)
Barre
Barre
d’outils
d’outils
du
du
diagramme
diagramme
Fonction
Fonction
division
division
Constante
Constante
numérique
numérique
Barre des menus
Barre des menus
Boîte de
Boîte de
calcul
calcul
Structure d’une
Structure d’une
boucle For
boucle For
Icône
Icône
Dans le
Dans le diagramme
diagramme nous trouverons tous les éléments
nous trouverons tous les éléments
propres au code développé (structures, fonctions,
propres au code développé (structures, fonctions,
constantes,…).
constantes,…).
20.
Ic
Icô
ône/connecteur d
ne/connecteur d’
’unVI
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
21.
Ouvrir un VI
Ouvrirun VI
Modèles de VI
Modèles de VI
Des modèles de
Des modèles de
VI déjà pré
VI déjà pré-
-codés
codés
sont disponibles.
sont disponibles.
22.
Ouvrir un VI
Ouvrirun VI
Modèles de VI
Modèles de VI
Modèle de VI pour
Modèle de VI pour
Pocket
Pocket PC
PC
Modèle de VI pour
Modèle de VI pour
communications par
communications par
GPIB
GPIB
Permet d’avoir une
Permet d’avoir une
trame simple et
trame simple et
fonctionnelle
fonctionnelle
rapidement
rapidement
Aperçu de la
Aperçu de la
face avant
face avant
Aperçu du
Aperçu du
diagramme
diagramme
Description
Description
du VI
du VI
23.
Ouvrir un VI
Ouvrirun VI
Recherche d’exemples
Recherche d’exemples
Les exemples sont
Les exemples sont
très riches et souvent
très riches et souvent
très utiles pour
très utiles pour
développer de petites
développer de petites
applications
applications
rapidement.
rapidement.
24.
Ouvrir un VI
Ouvrirun VI
Recherche d’exemples
Recherche d’exemples
Parcourir dans
Parcourir dans
les exemples
les exemples
Recherche par mots
Recherche par mots
clés dans les exemples
clés dans les exemples
Soumettre un exemple à
Soumettre un exemple à
National Instruments
National Instruments
Palettes de commandes
Palettesde 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 élément
Rechercher un élément
Remonter l’arborescence
Remonter l’arborescence
Dans cette palette nous trouverons tous les éléments
Dans cette palette nous trouverons tous les éléments
(commandes et indicateurs) nécessaires à la création de la
(commandes et indicateurs) nécessaires à la création de la
face
face-
-avant
avant.
.
27.
Palettes de fonctions
Palettesde fonctions
Palettes de
Palettes de fonctions
fonctions
(disponible à partir de la fenêtre
(disponible à partir de la fenêtre
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 :
“ Fenêtre”).
“ Fenêtre”).
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 éléments
Dans cette palette nous trouverons tous les éléments
(fonctions de base, VI Express,…) nécessaires à la création du
(fonctions de base, VI Express,…) nécessaires à la création du
code graphique dans la fenêtre
code graphique dans la fenêtre diagramme
diagramme.
.
28.
•
• Les Fonctionsde base
Les Fonctions de base :
: Éléments d’exploitation fondamentaux de
Éléments d’exploitation fondamentaux de LabVIEW
LabVIEW.
.
•
• Les VI Standards
Les VI Standards : VI qui peuvent être personnalisés.
: VI qui peuvent être personnalisés.
•
• 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
29.
Palette d
Palette d’
’outils
outils
Utiliséepour agir sur les objets de la face avant et du
Utilisée pour agir sur les objets de la face avant et du
diagramme
diagramme (disponible dans la barre des menus : “ Fenêtre”).
(disponible dans la barre des menus : “ Fenêtre”).
Outil déplacement
Outil déplacement
Outil d’arrêt
Outil d’arrêt
Outil sonde
Outil sonde
Outil copie couleur
Outil copie couleur
Outil coloriage
Outil coloriage
Outil d’action sur la face avant
Outil d’action sur la face avant
Outil déplacement et taille
Outil déplacement et taille
Outil texte
Outil texte
Outil connexion par fils
Outil connexion par fils
Outil raccourci menu
Outil raccourci menu
Possibilité de changer d’outils à l’aide de la touche tabulation
Possibilité de changer d’outils à l’aide de la touche tabulation
du clavier de l’ordinateur.
du clavier de l’ordinateur.
Outil sélection automatique
Outil sélection automatique
(actif lorsque la LED verte est allumée)
(actif lorsque la LED verte est allumée)
30.
Barre d
Barre d’
’outilsde la face
outils de la face-
-avant
avant
Bouton
Bouton Exécution du programme
Exécution du programme (VI)
(VI)
Bouton
Bouton Exécution continue
Exécution continue
Bouton d’
Bouton d’Arrêt d’exécution
Arrêt d’exécution
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 l’espacement
Égalisation de l’espacement entre
entre
les objets
les objets
Plan de l’objet
Plan de l’objet (premier ou arrière
(premier ou arrière
plan,…)
plan,…)
Redimensionner
Redimensionner les objets de la face
les objets de la face
avant
avant
Aide contextuelle
Aide contextuelle
31.
Barre d
Barre d’
’outilsdu diagramme
outils du diagramme
Animer l’exécution
Animer l’exécution pour animer le diagramme et voir les
pour animer le diagramme et voir les
données transiter.
données transiter.
Exécuter de façon détailler
Exécuter de façon détailler : Exécute le programme de
: Exécute le programme de
la façon la plus détaillée possible action par action.
la façon la plus détaillée possible action par action.
Exécuter sans détailler
Exécuter sans détailler : Exécute le programme nœud
: Exécute le programme nœud
par nœud sans rentrer dans le détail de leur exécution
par nœud sans rentrer dans le détail de leur exécution
interne.
interne.
Terminer l’exécution
Terminer l’exécution
32.
Barre des menus
Barredes menus
Fonctionnalités classiques des programmes
Fonctionnalités classiques des programmes
standards mais également spécifiques à
standards mais également spécifiques à
LabVIEW
LabVIEW.
.
33.
Terminaux
Terminaux
de contrôle
de contrôle
(entrées)
(entrées)
Fenêtredu diagramme
Fenêtre du diagramme
Fenêtre de la face avant
Fenêtre de la face avant
Terminaux
Terminaux
d’indicateur
d’indicateur
(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) numérique.
constante) numérique.
Nœud
Nœud
Commande
Commande Indicateur
Indicateur
Cadre gras
Cadre gras Cadre fin
Cadre fin
Indicateur
Indicateur
numérique
numérique
Commande numérique
Commande numérique
Bouton
Bouton
Incrémenter/
Incrémenter/
Décrémenter
Décrémenter
Fils de liaison
Fils de liaison
34.
Param
Paramé
étrage des constantes/ commandes
trage des constantes / commandes
Clic droit sur la commande
Clic droit sur la commande
(ou la constante) numérique.
(ou la constante) numérique.
Possibilité de paramétrer les
Possibilité de paramétrer les
propriétés de la commande
propriétés de la commande
numérique (ou de la constante).
numérique (ou de la constante).
Format scientifique avec 2
Format scientifique avec 2
chiffres de précision
chiffres de précision
Format virgule flottante avec 2
Format virgule flottante avec 2
chiffres de précision
chiffres de précision
35.
Param
Paramé
étrage des constantes/ commandes
trage des constantes / commandes
Possibilité de paramétrer les
Possibilité de paramétrer les
propriétés de la commande
propriétés de la commande
numérique (ou de la constante).
numérique (ou de la constante).
Clic droit sur la commande
Clic droit sur la commande
(ou la constante) numérique.
(ou la constante) numérique.
Possibilité de paramétrer
Possibilité de paramétrer
la gamme (avec un
la gamme (avec un
minimum, un maximum
minimum, un maximum
et un incrément).
et un incrément).
36.
Param
Paramé
étrage des constantes/ commandes
trage des constantes / commandes
Possibilités de modifier le type de donnée
Possibilités de modifier le type de donnée
de la commande : entiers (mot long, mot,
de la commande : entiers (mot long, mot,
octet), réels (précision étendue, double
octet), réels (précision étendue, double
précision, simple précision),…
précision, simple précision),…
Indication sur le
Indication sur le
type de donnée
type de donnée
Permet de fixer une valeur
Permet de fixer une valeur
par défaut à la commande
par défaut à la commande
Fonction de base
Fonctionde base
Aide contextuelle (Ctrl + H)
Aide contextuelle (Ctrl + H)
Étiquette
Étiquette
Terminaux
Terminaux : 2 entrées et 1 sortie
: 2 entrées et 1 sortie
39.
Astuces de connexions
Astucesde 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 sélection
Trois types de sélection
Simple clic Double clic Triple clic
Simple clic Double clic Triple clic
Clic droit
Clic droit
sur le fils
sur le fils
40.
Programmation par fluxde données
Programmation par flux de données
•
• L’exécution du diagramme dépend du flux de
L’exécution du diagramme dépend du flux de
données. Il ne s’exécute pas nécessairement de
données. Il ne s’exécute pas nécessairement de
gauche à droite.
gauche à droite.
•
• L’exécution du nœud se fait quand les données sont
L’exécution du nœud se fait quand les données sont
disponibles à tous les terminaux d’entrée.
disponibles à tous les terminaux d’entrée.
•
• Puis les nœuds fournissent des données à tous les
Puis les nœuds fournissent des données à 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 modèles de
(Visual Basic, C++, Java,…) utilisent des modèles de
flux de commandes. C’est l’ordre séquentiel des
flux de commandes. C’est l’ordre séquentiel des
éléments du programme qui détermine l’ordre
éléments du programme qui détermine l’ordre
d’exécution du programme.
d’exécution du programme.
Terminaux d’entrées
Terminaux d’entrées Terminaux de sortie
Terminaux de sortie
Nœud
Nœud
41.
Les options d
Lesoptions d’
’aide
aide
Aide Contextuelle (
Aide Contextuelle (Ctrl + H)
Ctrl + H)
•
• Aide détaillée
Aide détaillée
•
• Verrouillée l’aide
Verrouillée l’aide
•
• Choix du mode de l’aide
Choix du mode de l’aide
(simple ou détaillée)
(simple ou détaillée)
Accès à l’aide détaillée
Accès à l’aide détaillée
•
• Accès à l’intégralité du contenu informatif.
Accès à l’intégralité du contenu informatif.
•
• Ouverture automatique d’une fenêtre pour accéder directement à l
Ouverture automatique d’une fenêtre pour accéder directement à l’aide.
’aide.
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
Réaliser un VI qui permet d’effectuer une conversion de °C en K
Réaliser un VI qui permet d’effectuer 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.
.
44.
Exemple de solutionpossible
Exemple de solution possible
Exercice 1
Exercice 1 -
- Conversion de
Conversion de °
°C en
C en °
°F et en K
F et en K
45.
Aides aux
Aides auxd
dé
ébogages
bogages
Trouver des erreurs
Trouver des erreurs
Cliquer sur le symbole de la flèche coupée :
Cliquer sur le symbole de la flèche coupée :
Une fenêtre Windows nommée «
Une fenêtre Windows nommée « Liste des erreurs
Liste des erreurs » apparaît avec
» apparaît 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.
46.
Aides aux
Aides auxd
dé
ébogages
bogages
Clic droit sur un fil
Clic droit sur un fil pour afficher une sonde.
pour afficher une sonde.
Les données qui transitent sur ce fil seront
Les données qui transitent sur ce fil seront
affichées.
affichées.
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 l’exécution
Animer l’exécution
Sonde (Probe)
Sonde (Probe)
Cliquer sur le bouton ci
Cliquer sur le bouton ci-
-contre. Les données dans des bulles
contre. Les données dans des bulles
sont animées. Des valeurs sont alors indiquées sur les fils.
sont animées. Des valeurs sont alors indiquées sur les fils.
Exécution du VI étape par étape.
Exécution du VI étape par étape.
Exemples de sondes personnalisées :
Exemples de sondes personnalisées :
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.
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.
49.
Ic
Icô
ônes et Connecteurs
neset 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 entrées pour
2 cases en entrées pour
les commandes
les commandes
1 case en sortie
1 case en sortie
pour l’indicateur
pour l’indicateur
50.
Sous VI
Sous VI
SousVI
Sous VI Icône représentative
Icône représentative
du sous VI
du sous VI
VI Principal
VI Principal Sous VI
Sous VI
Icône représentative du
Icône représentative du
VI de plus haut niveau
VI de plus haut niveau
51.
É
Étapes de cr
tapesde 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
52.
Cr
Cré
éer une ic
erune 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 d’outils d’édition du dessin
Palette d’outils d’édition du dessin
Couleur de premier plan
Couleur de premier plan
Couleur de fond
Couleur de fond
53.
Visualiser le connecteur
Visualiserle 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”
”.
.
54.
Assigner les terminaux
Assignerles terminaux En général, on choisira de
En général, on choisira de
mettre les entrées à gauche
mettre les entrées à gauche
et les sorties à droite.
et les sorties à droite.
55.
Terminaux
Terminaux «
« n
né
écessaires
cessaires»
»,
, «
« recommand
recommandé
és
s »
»,
,
«
« optionnels
optionnels »
».
.
Lorsque l’on assigne les connecteurs il est
Lorsque l’on assigne les connecteurs il est
possible de définir leur importance en leur
possible de définir leur importance en leur
attachant un des trois termes suivants :
attachant un des trois termes suivants :
«Nécessaire», «Recommandée», «Optionnelle».
«Nécessaire», «Recommandée», «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)
56.
Sauvegarde du VI
Sauvegardedu 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.
57.
Ins
Insé
érez le sousVI dans un VI de niveau sup
rez le sous VI dans un VI de niveau supé
érieur
rieur
Accès aux sous
Accès aux sous-
-VI personnels :
VI personnels :
Fonctions >> Toutes les Fonctions >>…
Fonctions >> Toutes les Fonctions >>…
… >> Sélection d’un VI
… >> Sélection d’un VI
OU
OU
Faire glisser l’icône du sous VI sur le diagramme cible de
Faire glisser l’icône du sous VI sur le diagramme cible de
haut niveau.
haut niveau.
58.
• Sélectionner unezone à convertir en sous VI.
• Sélectionner dans la barre des menus “Édition” : “Créer
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
59.
Astuces pour travaillerdans
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.
60.
60
Partie II–
– Acquisitionde 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.
61.
61
Introduction à
Introduction àl’acquisition
l’acquisition de
de données
données
Phénomène
Phénomène
physique
physique
Un capteur convertit un phénomène physique en un signal (général
Un capteur convertit un phénomène physique en un signal (généralement
ement
de nature électrique) mesurable par un système d’acquisition de
de nature électrique) mesurable par un système d’acquisition de données.
données.
Capteur
Capteur
Flux de
Flux de
lumière
lumière
Conversion du flux de
Conversion du flux de
lumière (photons) en
lumière (photons) en
courant électrique
courant électrique
(électrons)
(électrons)
Chaîne de traitement du signal
Chaîne de traitement du signal
(amplification, filtrage,
(amplification, filtrage,
échantillonnage,…)
échantillonnage,…)
PC
PC
Conversion du
Conversion du
signal analogique
signal analogique
en signal
en signal
numérique
numérique
62.
Carte DAQ
Carte DAQ
Ordinateur
Ordinateur
Blocde 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
nécessaire
nécessaire
Câble de
Câble 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,…
63.
Exemple de capteurs
Exemplede capteurs
Mesurande Capteur
Thermocouple
Capteur de température
résistif (RTD)
Thermistances
Photodiode
Photomultiplicateur
Son Microphone
Jauge de contrainte
Transducteurs
piézoélectriques
Potentiomètres
Codeurs optiques
Fluide
Débitmètre à turbine /
électromagnétique
Température
Position et déplacements
Force et pression
Flux de lumière
Mesurande
Mesurande : Grandeur particulière soumise à mesurage.
: Grandeur particulière soumise à mesurage.
Mesurage
Mesurage : Ensemble d’opérations ayant pour but de déterminer une
: Ensemble d’opérations ayant pour but de déterminer une
valeur d’une grandeur.
valeur d’une grandeur.
64.
Exemple de capteurs
Exemplede capteurs
Deux catégories de capteurs :
Deux catégories de capteurs :
Capteurs actifs
Capteurs actifs
Ils se comportent comme des générateurs. Ils sont vu comme étant
Ils se comportent comme des générateurs. Ils sont vu comme étant des
des
générateurs de charge, de tension, ou de courant dont la valeur
générateurs de charge, de tension, ou de courant dont la valeur est
est
directement reliée au
directement reliée au mesurande
mesurande (Photodiode, photomultiplicateur,…).
(Photodiode, photomultiplicateur,…).
Capteurs passifs
Capteurs passifs
Ils se comportent comme des impédances. Ils sont vu comme étant
Ils se comportent comme des impédances. Ils sont vu comme étant des
des
résistances, inductance ou capacité dont la valeur est directeme
résistances, inductance ou capacité dont la valeur est directement reliée au
nt reliée au
mesurande
mesurande (thermistance, jauge de contrainte,…).
(thermistance, jauge de contrainte,…).
Measurement and
Measurement andAutomation Explorer
Automation Explorer
(MAX)
(MAX)
•
• Affiche la liste des périphériques et des instruments
Affiche la liste des périphériques et des instruments
connectés au système.
connectés au système.
•
• Permet d’exécuter des tests pour vérifier le bon
Permet d’exécuter des tests pour vérifier le bon
fonctionnement des périphériques connectés (à faire avant de
fonctionnement des périphériques connectés (à faire avant de
ce lancer dans la programmation sous
ce lancer dans la programmation sous labVIEW
labVIEW).
).
•
• Permet la configuration du matériel.
Permet la configuration du matériel.
•
• Permet de créer et modifier des voies, des tâches, des
Permet de créer et modifier des voies, des tâches, des
interfaces, des échelles,…
interfaces, des échelles,…
67.
Measurement and
Measurement andAutomation Explorer
Automation Explorer
(MAX)
(MAX)
Vérification que la
Vérification que la
carte d’acquisition
carte d’acquisition
est bien détectée.
est bien détectée.
Première vérification du
Première vérification du
bon fonctionnement de
bon fonctionnement de
la carte d’acquisition
la carte d’acquisition
68.
NI
NI-
-DAQmx
DAQmx
Dernière génération de
Dernièregénération de
drivers :
drivers :
•
• VI configurables pour
VI configurables pour
accomplir une tâche
accomplir une tâche
•
• Paramétrage d’un VI
Paramétrage d’un VI
pour toutes les mesures
pour toutes les mesures
NI
NI-
-DAQ traditionnel
DAQ traditionnel
Des VI spécifiques pour
Des VI spécifiques pour
accomplir :
accomplir :
•
• Entrée analogique
Entrée analogique
•
• Sortie analogique
Sortie analogique
•
• E/S numérique
E/S numérique
•
• Opérations de comptage
Opérations 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 d’applications
le logiciel d’applications labVIEW
labVIEW.
.
69.
DAQ traditionnel (Anciendriver)
DAQ traditionnel (Ancien driver)
Acquérir un signal
Acquérir un signal
Générer un signal
Générer 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.
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.
71.
Terminologie de l
Terminologiede 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.
72.
Connexions
Connexions des entrées
desentrées analogiques
analogiques
Cat
Caté
égorie de sources de signaux d
gorie de sources de signaux d’
’entr
entré
ée.
e.
Référencé
Référencé
Non
Non référencé
référencé
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,…
…
73.
Connexions
Connexions des entrées
desentrées 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é
é)
)
74.
Connexions
Connexions des entrées
desentrées 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é
é
75.
Exemples de mat
Exemplesde 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.
76.
Exemples de mat
Exemplesde 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
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.
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
–
– Possède un compteur d’itération.
Possède un compteur d’itération.
–
– S’exécute
S’exécute N
N fois (
fois (N
N paramétrable).
paramétrable).
–
– Pour N = 4, i = 0, 1, 2, 3.
Pour N = 4, i = 0, 1, 2, 3.
Itération
Itération
79.
1. Choisissez votreboucle.
1. Choisissez votre boucle.
Les boucles
Les boucles
2. Encadrer le code qui doit être répété.
2. Encadrer le code qui doit être répété.
3. Placez les nœuds additionnels (contrôle booléen : bouton stop
3. Placez les nœuds additionnels (contrôle booléen : bouton stop
par exemple) et reliez
par exemple) et reliez-
-les.
les.
80.
Pour un signalassez bruité l’on pourrait avoir envie, par exemp
Pour un signal assez bruité l’on pourrait avoir envie, par exemple, d’afficher une moyenne des
le, d’afficher une moyenne des
valeurs.
valeurs.
Pour ce faire il est possible d’utiliser un registre à décalage.
Pour ce faire il est possible d’utiliser un registre à décalage.
Un registre à décalage prend des données du côté droit et les re
Un registre à décalage prend des données du côté droit et les reporte du côté
porte du côté
gauche à l’itération suivante :
gauche à l’itération suivante :
Première itération
Première itération Seconde itération
Seconde itération Dernière itération
Dernière itération
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
81.
Création
Création : clicdroit sur un des bords de la boucle >> «
: clic droit sur un des bords de la boucle >> « Ajouter un registre à décalage
Ajouter un registre à décalage »
»
Les registres
Les registres à
à d
dé
écalage
calage
Exemple d’utilisation de registres à décalage
Exemple d’utilisation de registres à décalage
82.
Attention
Attention !! L’initialisationdu registre à décalage est import
!! L’initialisation du registre à décalage est importante pour éviter les
ante pour éviter les
erreurs !
erreurs !
1ère exécution
du programme
2ème exécution
du programme
3ème exécution
du programme
Les registres
Les registres à
à d
dé
écalage
calage
83.
Graphiques
Graphiques
Le graphique estun 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
84.
Techniques de connexiondans 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
85.
Exercice 2
Exercice 2–
– Utilisation d
Utilisation d’
’une boucle
une boucle
Créer un VI qui génère un
Créer un VI qui génère un
nombre aléatoire avec un temps
nombre aléatoire avec un temps
d’attente que l’utilisateur peut
d’attente que l’utilisateur peut
modifier.
modifier.
L’arrêt du programme se fait à
L’arrêt du programme se fait à
l’aide du bouton stop de la face
l’aide du bouton stop de la face
avant.
avant.
86.
Exemples de solutionspossible
Exemples de solutions possible
Exercice 2
Exercice 2 –
– Utilisation d
Utilisation d’
’une boucle
une boucle
87.
Action m
Action mé
écaniquebool
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
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.
89.
Un tableau,
Un tableau,…
…maispour 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 n'est cependant pas possible de créer des tableaux de tableaux.
90.
Philosophie d
Philosophie d’
’untableau
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.
91.
Construire un tableau1D 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.
Déposez le tableau
Déposez le tableau
vide sur la face avant.
vide sur la face avant.
Tableau de
Tableau de commandes
commandes ou
ou
d’
d’indicateurs
indicateurs.
.
92.
Construire un tableau1D manuellement
Construire un tableau 1D manuellement
Déposez le tableau sur le diagramme.
Déposez 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.
.
93.
Construire un tableau1D 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 contrôles
Tableau de contrôles
94.
Construire un tableau1D 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
contrôles
contrôles
95.
Cr
Cré
éer un tableau1D avec une boucle
er un tableau 1D avec une boucle
Dernière
Dernière
valeur
valeur
générée
générée
uniquement
uniquement
Ensemble des
Ensemble des
valeurs
valeurs
générées
générées
Notion
Notion d’indexation
d’indexation
Indexation
Indexation
activée
activée
96.
Cr
Cré
éer un tableau2D 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).
97.
Clic droit sur
Clicdroit sur
le tableau.
le tableau.
Cr
Cré
éer des tableaux 2D manuellement
er des tableaux 2D manuellement
Manuellement.
Manuellement.
98.
Tableau en entr
Tableauen 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 décompte
Terminal (N) de décompte
Terminal (i) d’itérations
Terminal (i) d’itérations
99.
Tableau en entr
Tableauen 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.
100.
Fichiers
Fichiers
Fichiers
Fichiers –
– passerdes 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
101.
É
Écrire dans unfichier
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.
102.
Exercice 3
Exercice 3–
– Analyser et stocker des donn
Analyser et stocker des donné
ées
es
Créer un VI qui génère un nombre
Créer un VI qui génère un nombre
aléatoire toute les secondes.
aléatoire toute les secondes.
Calculer la moyenne, la valeur min et
Calculer la moyenne, la valeur min et
max
max et sauvegarder les données dans
et sauvegarder les données dans
un fichier.
un fichier.
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
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.
105.
Les fonctions d
Lesfonctions 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
106.
Les fonctions dutableau
Les fonctions du tableau –
– les bases
les bases
Fonction : “Construire un tableau”
Fonction : “Construire un tableau”
107.
Les graphiques
Les graphiques
S
Sé
électionnerdepuis 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 déroulant
déroulant –
– Trace les données en continu, en plaçant
Trace les données en continu, en plaçant
les anciennes données sur la gauche et les nouvelles à droite. L
les anciennes données sur la gauche et les nouvelles à droite. Les
es
anciennes données disparaissent au fur et à mesure que de
anciennes données 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 numérique
Graphe numérique –
– Trace des bits depuis des données
Trace des bits depuis des données
binaires.
binaires.
108.
Les graphiques
Les graphiques
Faireun 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,…
…).
).
109.
Exemples : graphenum
Exemples : graphe numé
érique
rique
Graphe numérique
Graphe numérique
L’utilisation des clusters sera
L’utilisation des clusters sera
abordée dans la partie VII
abordée dans la partie VII
Exercice 4
Exercice 4–
– Utilisation de graphiques
Utilisation de graphiques
Générer un VI qui simule un
Générer un VI qui simule un
signal sinusoïdal et un signal
signal sinusoïdal et un signal
carré dont on peut modifier la
carré dont on peut modifier la
fréquence et l’amplitude ainsi
fréquence et l’amplitude 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 même graphe.
le même graphe.
112.
Exemple de solutionpossible
Exemple de solution possible
Exercice 4
Exercice 4 –
– Utilisation de graphiques
Utilisation de graphiques
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.
114.
Cha
Chaî
îne de caract
nede 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.
115.
Cha
Chaî
îne de caract
nede 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.
116.
Cha
Chaî
îne de caract
nede 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”
”,
,…
…
117.
Cha
Chaî
îne de caract
nede 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
118.
Cha
Chaî
îne de caract
nede 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 %.;
%.;
119.
Cha
Chaî
îne de caract
nede 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
120.
Clusters
Clusters
•
• Structures quiregroupent 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.
.
121.
Cr
Cré
éer un cluster
erun 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 :
122.
La palette Clusters
Lapalette 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
123.
La palette Clusters
Lapalette 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
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 :
125.
Techniques de manipulationsd
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 d’erreurs
Clusters d’erreurs
Exemple :
Exemple :
Exercice 5
Exercice 5–
– Utilisation de clusters et de graphiques
Utilisation de clusters et de graphiques
Générer un VI qui simule
Générer un VI qui simule
le déplacement d’un
le déplacement d’un
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
«
« déplacement continu
déplacement continu »
»
du pointeur puis un
du pointeur puis un
«
« déplacement discret
déplacement discret ».
».
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
«
« Déplacement discret
Déplacement discret »
»
«
« Déplacement continu
Déplacement continu »
»
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 »
».
.
130.
Structure
Structure Condition
Condition
Dans lasous 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.
Sélecteur
Sélecteur : 0, 1, 2,…
: 0, 1, 2,…
Terminal de
Terminal de
sélection
sélection
Terminal de
Terminal de
sélection
sélection
Terminal de
Terminal de
sélection
sélection
Sélecteur
Sélecteur : Vrai, faux, peut
: Vrai, faux, peut-
-
être, peut
être, peut-
-être pas,…
être pas,…
Sélecteur
Sélecteur :
:
Vrai ou Faux
Vrai ou Faux
131.
Structure
Structure Condition
Condition pourla gestion d
pour la gestion d’
’erreurs
erreurs
Lorsque que l’on câble un
Lorsque que l’on câble un
cluster d’erreur sur le
cluster d’erreur sur le
terminal de sélection d’une
terminal de sélection d’une
structure condition, celle
structure condition, celle-
-ci
ci
affiche 2 conditions : «
affiche 2 conditions : « Pas
Pas
d’erreur
d’erreur »
» (en vert)
(en vert) et
et
«
« Erreur
Erreur »
» (en rouge).
(en rouge).
La structure Condition ne
La structure Condition ne
reconnaît que la valeur
reconnaît que la valeur
booléenne «
booléenne « état
état » du cluster
» du cluster
d’erreur.
d’erreur.
132.
Structure
Structure S
Sé
équence d
quencedé
é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)
133.
Point
Point-
-virgule
virgule
x
x2
2
Bo
Boî
îte de calcul
tede 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).
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.
135.
Exercice 6
Exercice 6–
– Cluster, manipulation d
Cluster, manipulation d’
’erreurs et structure
erreurs et structure
condition
condition
Générer un VI qui permet de
Générer un VI qui permet de
visualiser une erreur lorsque
visualiser une erreur lorsque
l’on essaye de calculer la racine
l’on essaye de calculer la racine
carré d’un nombre négatif.
carré d’un nombre négatif.
136.
Exemple de solutionpossible
Exemple de solution possible
Exercice 6
Exercice 6 –
– Cluster, manipulation d
Cluster, manipulation d’
’erreurs et structure
erreurs et structure
condition
condition
137.
Exemple de solutionpossible
Exemple de solution possible
Exercice 6
Exercice 6 –
– Cluster, manipulation d
Cluster, manipulation d’
’erreurs et structure
erreurs et structure
condition
condition
138.
Exercice 6
Exercice 6–
– Cluster, manipulation d
Cluster, manipulation d’
’erreurs et structure
erreurs et structure
condition
condition
Alternative possible pour signaler l’erreur
Alternative possible pour signaler l’erreur
Que ce passe t
Que ce passe t-
-il si l’on ajoute une boucle
il si l’on ajoute une boucle While
While
à ce programme pour que celui
à ce programme pour que celui-
-ci fonctionne en
ci fonctionne en
continu et que l’on rentre une valeur négative ?
continu et que l’on rentre une valeur négative ?
139.
Exercice 6
Exercice 6–
– Cluster, manipulation d
Cluster, manipulation d’
’erreurs et
erreurs et
structure condition
structure condition
Complément
Complément
Le programme fonctionne en continu grâce à la boucle
Le programme fonctionne en continu grâce à la boucle While
While. Celle
. Celle-
-
ci s’arrête dès que l’on appui sur le bouton Stop où dès que l’o
ci s’arrête dès que l’on appui sur le bouton Stop où dès que l’on
n
rentre une valeur négative dans la commande «
rentre une valeur négative dans la commande « Numérique
Numérique ».
».
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)
Générer un VI qui permet de
Générer un VI qui permet de
tracer la luminance
tracer la luminance spectrique
spectrique du
du
corps noir pour une température
corps noir pour une température
donnée.
donnée.
Un corps noir est un radiateur
Un corps noir est un radiateur
thermique qui absorbe toutes les
thermique qui absorbe toutes les
radiations électromagnétiques incidentes.
radiations électromagnétiques incidentes.
)
1
(
2
5
2
−
=
kT
hc
T
CN
e
e
hc
d
dL
λ
λ
λ
Loi de Planck
Loi de Planck
Vitesse de la lumière dans le vide
Vitesse de la lumière 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
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)
Température du soleil à sa
Température du soleil à sa
surface
surface ≈
≈
≈
≈
≈
≈
≈
≈ 5800 K.
5800 K.
Le
Le Soleil
Soleil est assimilé à un
est assimilé à un
Corps noir.
Corps noir.
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 d’une
Allure du spectre d’une
lampe halogène
lampe halogène à filament
à filament
de tungstène dans le visible
de tungstène dans le visible
(380
(380 –
– 780 nm)
780 nm)
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 qu’au delà de
Le rayonnement du corps noir ne commence à se voir qu’au delà de 600°C (rouge
600°C (rouge
sombre) d’où le choix de l’expression «
sombre) d’où le choix de l’expression « corps noir
corps noir » puisqu’à température ambiante
» puisqu’à température ambiante
(300 K) les corps naturels émettent dans l’Infrarouge (IR).
(300 K) les corps naturels émettent dans l’Infrarouge (IR).
Exemple de solution possible
Exemple de solution possible
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.
145.
Variables locales
Variables locales
Aucunevariable
Aucune variable
n’est assignée
n’est assignée
Possibilité de la
Possibilité de la
mettre en écriture
mettre en écriture
ou en lecture.
ou en lecture.
Une variable locale n’est visible que dans un seul VI.
Une variable locale n’est visible que dans un seul VI.
Clic droit : assignation de la
Clic droit : assignation de la
variable
variable
146.
Variables locales des
Variables locales de sé
équence
quence
Ce type de variable s’utilise avec les structures
Ce type de variable s’utilise avec les structures
Séquences empilées
Séquences empilées. Elle permet de faire passer des
. Elle permet de faire passer des
données d’une étape à l’autre.
données d’une étape à l’autre.
147.
Variables globales
Variables globales
Unevariable globale agit de la même façon qu’une
Une variable globale agit de la même façon qu’une
variable locale excepté le fait que l’on peut transférer
variable locale excepté le fait que l’on peut transférer
cette variable d’un VI à l’autre par l’utilisation du
cette variable d’un VI à l’autre par l’utilisation du
sous VI crée.
sous VI crée.
Double clic sur
Double clic sur
la variable
la variable
globale
globale
Ouverture d’un
Ouverture d’un
sous VI vide
sous VI vide
148.
Variables globales
Variables globales
1.1
1. 1er
er VI (
VI (vi
vi.
.vi
vi) où l’on écrit les informations
) où l’on écrit les informations
dans les variables globales (mode écriture).
dans les variables globales (mode écriture).
2. Sous
2. Sous-
-VI crée lors de l’insertion des
VI crée lors de l’insertion des
variables dans le premier VI.
variables dans le premier VI.
Icône
Icône
représentative
représentative
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ù l’on récupère la variable globale
) où l’on récupère la variable globale
comme un sous
comme un sous-
-VI classique que l’on paramètre en
VI classique que l’on paramètre en
mode lecture.
mode lecture.
149.
Exercice 8
Exercice 8–
– Utilisation de variables locales
Utilisation de variables locales
Générer un VI qui permet de donner
Générer 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 séquence empilée
On utilisera une structure séquence empilée
avec, soit des variables locales, soit des
avec, soit des variables locales, soit des
variables locales de séquences ainsi que la
variables locales de séquences ainsi que la
fonction suivante :
fonction suivante :
150.
Exercice 8
Exercice 8–
– Utilisation de variables locales
Utilisation de variables locales
Exemple de solution possible
Exemple de solution possible
151.
Exercice 8
Exercice 8–
– Utilisation de variables locales
Utilisation de variables locales
Exemple de solution possible
Exemple de solution possible
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.
153.
Tables
Tables
Clic droit
Clic droit
surla table
sur la table
En
En-
-têtes de lignes et
têtes de lignes et
en
en-
-tête de colonnes
tête de colonnes
On ne peut écrire dans
On ne peut écrire dans
les tables uniquement
les tables uniquement
que des chaînes. On ne
que des chaînes. On ne
peut pas directement
peut pas directement
écrire des entiers ou
écrire des entiers ou
des réels.
des réels.
N
Nœ
œud de propri
udde proprié
ét
té
é
Les nœuds de propriété permettent d’avoir accès à certains
Les nœuds de propriété permettent d’avoir accès à certains
éléments d’un objet en lecture ou en écriture.
éléments d’un objet en lecture ou en écriture.
Dans un premier temps il
Dans un premier temps il
faut relier le nœud de
faut relier le nœud de
propriété à un objet précis.
propriété à un objet précis.
156.
N
Nœ
œud de propri
udde proprié
ét
té
é
Dans un second temps il faut
Dans un second temps il faut
choisir les propriétés de l’objet qui
choisir les propriétés de l’objet qui
nous intéressent.
nous intéressent.
Par exemple (dans notre cas ici) les
Par exemple (dans notre cas ici) les
en
en-
-têtes de colonnes et les valeurs
têtes de colonnes et les valeurs
d’une table.
d’une table.
157.
N
Nœ
œud de propri
udde 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 l’enregistrer dans un fichier Excel.
et l’enregistrer dans un fichier Excel.
Variable locale
Variable locale
158.
N
Nœ
œud de propri
udde proprié
ét
té
é -
- exemple
exemple
Étape 2
Étape 2 : Sauvegarde des données dans un fichier Excel
: Sauvegarde des données dans un fichier Excel
Nœud de propriété
Nœud de propriété
159.
N
Nœ
œud de propri
udde proprié
ét
té
é -
- exemple
exemple
Étape 2
Étape 2 : Sauvegarde des données dans un fichier Excel
: Sauvegarde des données dans un fichier Excel
160.
N
Nœ
œud de propri
udde 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 boîte de dialogue
: Une boîte de dialogue
apparaît pour enregistrer les données
apparaît pour enregistrer les données
au format .
au format .xls
xls
161.
N
Nœ
œud de propri
udde proprié
ét
té
é –
– exemple
exemple -
- r
ré
ésultats
sultats
Lorsque l’on essaye de réécrire par dessus un fichier déjà prése
Lorsque l’on essaye de réécrire par dessus un fichier déjà présent, une boîte
nt, une boîte
de dialogue nous invitant à changer de nom de fichier apparaît.
de dialogue nous invitant à changer de nom de fichier apparaît.
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.
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 personnalisée
Impression personnalisée
Rapport pr
Rapport pré
é-
-format
formaté
é
Endouble 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.
Documentation sur lesVI
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.
169.
Documentation sur lesVI
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 !
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).
171.
L
L’
’architecture simple duVI
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
172.
L
L’
’architecture g
architecture gé
én
né
éraledu 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
- L’initialisation n’a besoin
d’être faite qu’une fois.
- La fermeture de la session à
l’arrêt du programme est
indispensable pour libérer les
ports utilisés.
173.
L
L’
’architecture de machined
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 : Démarrage
0 : Démarrage
1 : Attente (
1 : Attente (timeout
timeout)
)
2 : Événement 1
2 : Événement 1
3 : Événement 2
3 : Événement 2
4 : Arrêt
4 : Arrêt
Dans chaque trame de la structure
Dans chaque trame de la structure
«
« Condition
Condition » correspondant à un
» correspondant à un
état donné, on détermine l’état
état donné, on détermine l’état
suivant.
suivant.
174.
L
L’
’architecture de machined
architecture de machine d’é
’états (complexe)
tats (complexe)
Gestion d’évènements sur l’interface utilisateur
Gestion d’évènements sur l’interface utilisateur : Utilisation de la
: Utilisation de la
boucle évènementielle
boucle évènementielle, de la
, de la structure condition
structure condition et de
et de listes d’attente
listes d’attente.
.
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
attachées à des
attachées à des
fonctionnalités précises.
fonctionnalités précises.
175.
L
L’
’architecture de machined
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
d’états
d’états » pour en comprendre le fonctionnement général ainsi
» pour en comprendre le fonctionnement général ainsi
que les différentes fonctionnalités.
que les différentes fonctionnalités.
Nous étudierons ensuite en détail le diagramme de ce
Nous étudierons ensuite en détail le diagramme de ce
programme.
programme.
176.
L
L’
’architecture de machined
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é d’écrire
Possibilité d’écrire
les commandes de
les commandes de
fonctions à la main
fonctions à la main
pour que celles
pour que celles-
-ci
ci
s’exécutent.
s’exécutent.
177.
L
L’
’architecture de machined
architecture de machine d’é
’états (complexe)
tats (complexe)
Onglet : «
Onglet : « Image
Image »
»
Affiche (à gauche)
Affiche (à gauche)
une image à partir
une image à partir
d’un chemin spécifié.
d’un chemin spécifié.
Affiche (à droite) un
Affiche (à droite) un
masque de l’image
masque de l’image
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.
178.
L
L’
’architecture de machined
architecture de machine d’é
’états (complexe)
tats (complexe)
Onglet : «
Onglet : « Météo
Météo »
»
Affiche (à gauche)
Affiche (à gauche)
diverses informations
diverses informations
(date d’acquisition,
(date d’acquisition,
température,
température,
humidité,
humidité,
pression,…) lorsque
pression,…) lorsque
l’on appui sur le
l’on appui sur le
bouton «
bouton « Lecture des
Lecture des
paramètres météo
paramètres météo ».
».
179.
L
L’
’architecture de machined
architecture de machine d’é
’états (complexe)
tats (complexe)
Onglet : «
Onglet : « Enregistement
Enregistement de données
de données »
»
Permet l’acquisition
Permet l’acquisition
de données, la
de données, la
suppression d’une
suppression d’une
ligne, l’effacement du
ligne, l’effacement du
tableau et
tableau et
l’enregistrement des
l’enregistrement des
données dans un
données dans un
fichier excel.
fichier excel.
180.
L
L’
’architecture de machined
architecture de machine d’é
’états (complexe)
tats (complexe)
Cette présentation des différents onglets de la face avant de ce
Cette présentation des différents onglets de la face avant de ce VI ont
VI ont
permis d’avoir un aperçu général des fonctionnalités de ce
permis d’avoir un aperçu général des fonctionnalités de ce
programme.
programme.
Il faut également voir, que celui
Il faut également voir, que celui-
-ci fonctionne en continu (grâce à une
ci fonctionne en continu (grâce à une
boucle
boucle While
While) et qu’il est possible de commencer, par exemple, par
) et qu’il est possible de commencer, par exemple, par
une lecture des paramètres météo, ensuite d’acquérir des données
une lecture des paramètres météo, ensuite d’acquérir des données et
et
de les enregistrer, puis, pourquoi pas de réaliser un masque d’u
de les enregistrer, puis, pourquoi pas de réaliser un masque d’une
ne
image.
image.
Dans ce type d’architecture il n’y a aucune notion de «
Dans ce type d’architecture il n’y a aucune notion de « séquençage
séquençage »
»
ce qui laisse une liberté totale de paramétrage de la face avant
ce qui laisse une liberté totale de paramétrage de la face avant.
.
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.
188.
Outil de publicationde 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 d’activer le serveur
Ne pas oublier d’activer le serveur web
web pour
pour
permettre au(x) client(s) d’accéder aux données.
permettre au(x) client(s) d’accéder aux données.
189.
Application fonctionnant surle PC
Application fonctionnant sur le PC
où est installé
où est installé LabVIEW
LabVIEW
N’importe qui peut à partir
N’importe qui peut à partir
d’Internet visualiser en
d’Internet visualiser en
temps réel le VI et le
temps réel le VI et le
contrôler s’il en a, au
contrôler s’il en a, au
préalable, été autorisé.
préalable, été autorisé.
L’installation de
L’installation de
LabVIEW
LabVIEW sur la
sur la
machine distante n’est
machine distante n’est
pas nécessaire.
pas nécessaire.
Outil de publication de face avant sur le
Outil de publication de face avant sur le Web
Web
190.
Panneau de contr
Panneaude 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.
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.
192.
Introduction
Introduction
Dans le casde communications par liaisons GPIB ou
Dans le cas de communications par liaisons GPIB ou
Série, l’acquisition de données se fait par l’intermédiaire
Série, l’acquisition de données se fait par l’intermédiaire
d’un instrument autonome (multimètre, oscilloscope,…)
d’un instrument autonome (multimètre, oscilloscope,…)
au sein duquel sont effectuées les opérations
au sein duquel sont effectuées les opérations
d’entrées/sorties des signaux mesurés.
d’entrées/sorties des signaux mesurés.
Le programme développé sert uniquement à la
Le programme développé sert uniquement à la
configuration de l’instrument, à la récupération, l’analyse
configuration de l’instrument, à la récupération, l’analyse
et la présentation des données.
et la présentation des données.
193.
GPIB
GPIB -
- Introduction
Introduction
Laliaison GPIB (
La liaison GPIB (General Purpose
General Purpose Interface Bus) appelée aussi IEEE 488
Interface Bus) appelée 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 (crée par
en 1965 (crée par Hewlett
Hewlett-
-Packard
Packard) un standard de communication qui permet
) un standard de communication qui permet
aujourd’hui de contrôler la plupart des instruments de mesures (
aujourd’hui de contrôler la plupart des instruments de mesures (oscilloscopes,
oscilloscopes,
multimètres, générateurs de fonctions, …).
multimètres, générateurs de fonctions, …).
La première normalisation de ce bus date de 1987 sous la référen
La première normalisation de ce bus date de 1987 sous la référence IEEE 488.1. Une
ce IEEE 488.1. Une
deuxième normalisation de ce bus est intervenue en 1992 avec la
deuxième normalisation de ce bus est intervenue en 1992 avec la référence IEEE 488.2
référence IEEE 488.2
pour préciser la précédente qui était incomplète, et ceci en pré
pour préciser la précédente qui était incomplète, et ceci en précisant le protocole de
cisant le protocole de
communication, en définissant les formats de données,... En 1990
communication, en définissant les formats de données,... 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 définit un certain nombre de commandes auxquelles chaque
ci définit un certain nombre de commandes auxquelles chaque
instrument doit pouvoir obéir. Cela permet ainsi une interopérab
instrument doit pouvoir obéir. Cela permet ainsi une interopérabilité de matériels de
ilité de matériels de
différents fabricants.
différents fabricants.
Connecteur GPIB
Connecteur GPIB
194.
GPIB
GPIB -
- Caract
Caracté
éristiques
ristiquestechniques
techniques
-
- La liaison GPIB est une liaison parallèle
La liaison GPIB est une liaison parallèle
sur 8 bits.
sur 8 bits.
-
- Interconnexion de 15 appareils maximum :
Interconnexion de 15 appareils maximum :
chaque appareil possède une adresse
chaque appareil possède 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 câble de 4 m au maximum
Longueur de câble de 4 m au maximum
entre 2 appareils.
entre 2 appareils.
-
- Longueur totale de câble de 20 m au
Longueur totale de câble 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
Câble GPIB
Câble GPIB
IEEE 488 : 1 Mo/s
IEEE 488 : 1 Mo/s
HS 488 : 8 Mo/s
HS 488 : 8 Mo/s
195.
GPIB
GPIB -
- Measurementand
Measurement and Automation Explorer
Automation Explorer
(MAX)
(MAX)
Périphériques
Périphériques
connectés
connectés
Test pour
Test pour
déterminer
déterminer
quels sont les
quels sont les
instruments
instruments
connectés
connectés
Instruments
Instruments
connectés
connectés
Adresses GPIB
Adresses GPIB
Réponses des instruments à la commande «
Réponses des instruments à la commande « IDN?
IDN? »
»
196.
GPIB
GPIB -
- Measurementand
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 l’instrument
Possibilité de tester la communication avec l’instrument
Adresse GPIB de l’instrument
Adresse GPIB de l’instrument
197.
GPIB
GPIB –
– VItype
VI type
Architecture utilisant
Architecture utilisant
des VI Express déjà
des VI Express déjà
disponibles pour
disponibles pour
gagner en rapidité et
gagner en rapidité et
en simplicité.
en simplicité.
S
Sé
érie
rie -
- Introduction
Introduction
Bienque progressivement délaissée pour
Bien que progressivement délaissée pour l’USB
l’USB (
(Universal
Universal Serial Bus), la liaison
Serial Bus), la liaison
Série (RS 232, RS 449, RS 422, RS 423, RS 485) est un moyen de c
Série (RS 232, RS 449, RS 422, RS 423, RS 485) est un moyen de communication,
ommunication,
encore aujourd’hui, répandu pour la transmission de données entr
encore aujourd’hui, répandu pour la transmission de données entre un ordinateur et
e un ordinateur et
un périphérique (imprimante, instrument de mesure programmable,…
un périphérique (imprimante, instrument de mesure programmable,…)
)
La liaison Série est une liaison asynchrone c’est
La liaison Série est une liaison asynchrone c’est-
-à
à-
-dire qu’elle ne transmet pas de
dire qu’elle ne transmet pas de
signal d’horloge. Il n’y a donc aucune synchronisation entre l’é
signal d’horloge. Il n’y a donc aucune synchronisation entre l’émetteur et le
metteur et le
récepteur. Pour que le récepteur puisse interpréter convenableme
récepteur. Pour que le récepteur puisse interpréter convenablement l’information du
nt l’information du
transmetteur, il faut que les deux éléments soient configurés de
transmetteur, il faut que les deux éléments soient configurés de la même façon.
la même façon.
Il faut spécifier 4 paramètres pour ce type de communication : l
Il faut spécifier 4 paramètres pour ce type de communication : le débit de
e débit de
transmission en bauds, le nombre de bits de données, la polarité
transmission en bauds, le nombre de bits de données, 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 Série
Port Série
200.
S
Sé
érie
rie -
- Caract
Caracté
éristiques
ristiquestechniques
techniques
Niveau haut
Niveau bas
Bit de
Start B0 B1 B2 B3 B4 B5 B6
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
(B0
0 à
à B
B6
6 (
(ou
ou B
B7
7) avec B
) avec B0
0 le bit de
le bit de poids
poids faible
faible (LSB) et B
(LSB) et B6
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 :
:
201.
S
Sé
érie
rie -
- Fonctionsde base dans
Fonctions de base dans labVIEW
labVIEW
VISA
VISA :
: Virtual
Virtual Instrument Software Architecture
Instrument Software Architecture
202.
Exemples de VI
Exemplesde VI
Exemples de
Exemples de
VI apportant
VI apportant
une aide au
une aide au
démarrage
démarrage
d’un projet ou
d’un projet ou
quelques
quelques
solutions à
solutions à
des problèmes
des problèmes
de conception
de conception
203.
Drivers d
Drivers d’
’instruments
instruments
Lesdrivers d’instruments sont des bibliothèques de VI qui perme
Les drivers d’instruments sont des bibliothèques de VI qui permettent de
ttent de
contrôler un instrument programmable.
contrôler un instrument programmable.
Accessible sur le site de NI à l’adresse suivante :
Accessible sur le site de NI à l’adresse suivante : ww
ww.ni.
.ni.com
com/
/idnet
idnet
Ou
Ou par
par labVIEW
labVIEW à partir de l’arborescence suivante : «
à partir de l’arborescence suivante : « Outils > Instrumentation
Outils > Instrumentation
> Base de drivers d’instruments
> Base de drivers d’instruments ».
».
Exemple :
Exemple : Multimètre KEITHLEY modèle 2002 :
Multimètre KEITHLEY modèle 2002 :
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.
205.
NI Vision Assistant
NIVision Assistant
Vision Assistant permet de
Vision Assistant permet de
paramétrer la caméra utilisée,
paramétrer la caméra utilisée,
de procéder à
de procéder à l’acquisition
l’acquisition
d’images
d’images ou de séquences
ou de séquences
d’images, permet de procéder à
d’images, permet de procéder à
une multitude de
une multitude de traitement
traitement
d’images
d’images et permet de
et permet de générer
générer
automatiquement
automatiquement et facilement
et facilement
un code
un code LabVIEW
LabVIEW
opérationnel
opérationnel.
.
206.
NI Vision Assistant
NIVision Assistant –
– Acquisition
Acquisition
Choix du type de caméra
Choix du type de caméra
(USB,
(USB, Firewire
Firewire,…)
,…)
207.
NI Vision Assistant
NIVision Assistant –
– Acquisition
Acquisition
Sélection de la
Sélection de la
caméra
caméra
Réglage des
Réglage des
paramètres vidéo
paramètres vidéo
Réglage des
Réglage des
paramètres liés aux
paramètres liés aux
images
images
Acquisition d’une
Acquisition d’une
séquence d’images
séquence d’images
208.
NI Vision Assistant
NIVision Assistant –
– Param
Paramé
étrage
trage
Réglage des paramètres vidéo
Réglage des paramètres vidéo
Réglage des paramètres liés aux images
Réglage des paramètres liés aux images
Ces paramètres sont intrinsèques à
Ces paramètres sont intrinsèques à
la caméra utilisée. Ils seront
la caméra utilisée. Ils seront
différents pour d’autres types de
différents pour d’autres types de
caméras.
caméras.
Contraste,
Contraste,
saturation,…
saturation,…
Vision infrarouge
Vision infrarouge
Degré de
Degré de
rouge, vert,
rouge, vert,
bleu.
bleu.
209.
NI Vision Assistant
NIVision Assistant –
– Traitement d
Traitement d’
’images
images
Exemple d’une image d’un
Exemple d’une image d’un
micromètre objet (étalon à
micromètre objet (étalon à
trait) observé au microscope
trait) observé au microscope
optique + caméra CCD
optique + caméra CCD
1 mm
210.
NI Vision Assistant
NIVision Assistant –
– Traitement d
Traitement d’
’images
images
Diverses fonctions
Diverses fonctions
sont disponibles :
sont disponibles :
profils, mesures de
profils, mesures de
distances, d’angles,
distances, d’angles,
calibration
calibration
d’images,…
d’images,…
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 l’image
sur une ligne de l’image
Profil de la ligne choisie (en vert)
Profil de la ligne choisie (en vert)
211.
NI Vision Assistant
NIVision Assistant –
– G
Gé
én
né
ération automatique de code
ration automatique de code
Tools
Tools »
» Create
Create
LabVIEW
LabVIEW VI…
VI…
Exemple de détection
Exemple de détection
de bord et de calcul
de bord et de calcul
de centre de trait
de centre de trait
Détection de bord
Détection de bord
de traits
de traits
Calcul de centre
Calcul de centre
de traits
de traits
212.
NI Vision Assistant
NIVision Assistant –
– G
Gé
én
né
ération automatique de code
ration automatique de code
Programme
Programme LabVIEW
LabVIEW de détection de
de détection de
bord de trait et de calcul de centre
bord de trait et de calcul de centre
généré automatiquement.
généré automatiquement.
213.
Fonctions Vision
Fonctions Vision
Vision
VisionUtilities
Utilities
NI
NI-
-IMAQ pour
IMAQ pour
caméras IEEE 1394
caméras 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
214.
Outils de visualisation
Outilsde visualisation
Commandes » Toutes les commandes » Vision
Commandes » Toutes les commandes » Vision
Outil de visualisation
Outil de visualisation
d’images sur la face
d’images sur la face
avant
avant
215.
Acquisition d’une SEULEimage
Acquisition d’une SEULE image
Utilisation
Utilisation
du
du SNAP
SNAP
USB
USB
Webcam
Webcam
PC
PC
Partie XVI
Partie XVI–
– Exercices d
Exercices d’
’applications
applications
•
• Création d’une mire
Création d’une mire sans
sans les outils vision.
les outils vision.
-
- Création d’un motif.
Création d’un motif.
-
- Création d’une ligne de motifs.
Création d’une ligne de motifs.
-
- Création d’une mire de motifs identiques.
Création d’une mire de motifs identiques.
•
• Création d’une mire
Création d’une mire avec
avec les outils vision.
les outils vision.
•
• Ouverture d’une image.
Ouverture d’une image.
•
• Création d’un masque sur une image.
Création d’un masque sur une image.
•
• Calibrage d’une image.
Calibrage d’une image.
218.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
• 1ère étape : Création d’un motif unique dont les
coordonnées des deux coins indiqués sont entrées
dans un tableau (x1, y1, x2, y2).
x1
y1
x2
y2
0
x1 x2
y1
y2
219.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Réaliser un VI qui
permet de visualiser
l’affichage d’un motif
sur un fond noir.
Pour ce faire nous
utiliserons des graphiques
d’intensité ainsi que les VI
suivants (voir diapo
suivante).
220.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Aide contextuelle
Aide contextuelle
Nous utiliserons les VI standards suivants :
221.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Exemple de solution possible
Exemple de solution possible
222.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
• 2ème étape : Création d’une ligne de motifs
identiques. Pour cela nous allons décomposer le
problème en créant un sous VI qui génère un seul
motif puis l’utiliser dans une boucle For au sein
d’un VI principal pour la création d’une ligne.
223.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Création du sous VI
Création du sous VI
Création d’une icône
Création d’une icône
facilement reconnaissable
facilement reconnaissable
224.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Exemple de solution possible
Exemple de solution possible
225.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Réaliser un VI qui permet de visualiser l’affichage d’une
ligne de motifs identiques sur un fond bleu.
226.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Exemple de solution possible
Exemple de solution possible
227.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
• 3ème étape : Création d’une mire de motifs
identiques. Pour cela nous allons utiliser deux
boucles For pour la création des lignes et des
colonnes.
228.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Réaliser un VI qui permet de visualiser l’affichage d’une
mire de motifs identiques sur un fond noir.
229.
Cr
Cré
éation d
ation d’
’unemire
une mire sans
sans les outils vision
les outils vision
Exemple de solution possible
Exemple de solution possible
230.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
• 1ère étape : Création de la variable image (à l’aide
du VI standard « IMAQ Create ») et d’un motif
unique.
231.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Réaliser un VI qui permet de
visualiser l’affichage d’un motif
ovale sur un fond noir dans deux
modes de visualisation différents.
232.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Aide contextuelle
Aide contextuelle
Pour ce faire nous utiliserons les VI standards suivants :
233.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Exemple de solution possible
Exemple de solution possible
Affichage de l’image dans une boîte
de dialogue distincte de la face
avant du VI crée.
234.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Exemple de solution possible
Exemple de solution possible
Affichage de l’image dans un indicateur
visuel présent sur la face avant du VI
crée.
235.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
• 2ème étape : Création d’une ligne de motifs
identiques.
Étapes du programmes :
- Créer un fond noir de 100 x 100 pixels par exemple.
- Calculer le nombre de motifs par ligne.
- Répéter l’inscription d’un motif à chaque tour.
- La position du motif est incrémentée à chaque tour en
incrémentant les éléments (x1, x2) du tableau de position du
motif et en remplaçant l’ancien tableau de position par le
nouveau.
236.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Réaliser un VI qui permet de
visualiser l’affichage d’une ligne de
motifs ovales sur un fond noir.
237.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Exemple de solution possible
Exemple de solution possible
238.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
• 3ème étape : Création d’une mire de motifs
identiques. Pour cela nous allons utiliser deux
boucles For pour la création des lignes et des
colonnes.
239.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Réaliser un VI qui permet de
visualiser l’affichage d’une
mire de motifs identiques sur
un fond noir.
240.
Cr
Cré
éation d
ation d’
’unemire
une mire avec
avec les outils vision
les outils vision
Exemple de
Exemple de
solution possible
solution possible
241.
Ouverture d
Ouverture d’
’uneimage
une image
Réaliser un programme qui ouvre et affiche
un fichier image dans une fenêtre externe.
On utilisera entre autre les VI Standards suivants :
Cr
Cré
éation d
ation d’
’unmasque sur une image
un masque sur une image
Réaliser un programme qui permet de
créer un masque sur une image donnée
en noir et blanc.
Image initiale
Image initiale
Sélection de la zone de
Sélection de la zone de
l’image à garder
l’image à garder Image masquée
Image masquée
Masque crée
Masque crée
(Version noir et blanc)
244.
Cr
Cré
éation d
ation d’
’unmasque sur une image
un masque sur une image
On utilisera entre autre les VI Standards suivants :
245.
Cr
Cré
éation d
ation d’
’unmasque sur une image
un masque sur une image
Exemple de solution possible
Exemple de solution possible
246.
Cr
Cré
éation d
ation d’
’unmasque sur une image
un masque sur une image
(Version couleur)
Réaliser un programme qui permet de créer un
masque sur une image donnée en couleur.
247.
Cr
Cré
éation d
ation d’
’unmasque sur une image
un masque sur une image
Exemple de solution possible
Exemple de solution possible
248.
Calibrage d
Calibrage d’
’uneimage
une image
Réaliser un programme qui permet de
créer le calibrage d’une image déformée.
Image
Image
initiale
initiale
Image
Image
rognée
rognée
Image
Image
calibrée
calibrée
•
• Qu
Qu’
’est
est-
-ce quele 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
251.
En
En informatique industrielle
informatiqueindustrielle, on
, on parle
parle
d'un
d'un système
système temps
temps réel lorsque ce
réel lorsque ce
système informatique contrôle
système informatique contrôle (
(ou pilote
ou pilote)
)
un
un procédé
procédé physique à
physique à une vitesse adaptée
une vitesse adaptée
à
à l'évolution du procédé contrôlé
l'évolution du procédé contrôlé.
.
Le temps réel ne signifie pas forcément rapide.
Le temps réel ne signifie pas forcément rapide.
Le temps réel garantit une fiabilité absolue car les
Le temps réel garantit une fiabilité absolue car les
systèmes temps réel ont des contraintes temporelles qui
systèmes temps réel 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
système est
système est déterministe
déterministe.
.
Qu
Qu’
’est
est-
-ce que le temps r
ce que le temps ré
éel ?
el ?
252.
Déterminisme
Déterminisme : caractéristiqued’un système qui indique
: caractéristique d’un système qui indique
son niveau de fiabilité à répondre à un événement ou à
son niveau de fiabilité à répondre à un événement ou à
effectuer une tâche dans un délai imparti.
effectuer une tâche dans un délai imparti.
Temps de boucle
Temps de boucle : temps pris pour exécuter un cycle de
: temps pris pour exécuter un cycle de
boucle.
boucle.
Jitter
Jitter : variation du temps de boucle réel par rapport au
: variation du temps de boucle réel par rapport au
temps de boucle souhaité.
temps de boucle souhaité.
Embarqué
Embarqué : caractérise un système autonome (pas de
: caractérise un système autonome (pas de
clavier, ni de souris, ni d’écran,…).
clavier, ni de souris, ni d’écran,…).
Terminologie temps r
Terminologie temps ré
éel
el
253.
Principe de d
Principede dé
éveloppement temps r
veloppement temps ré
éel
el
1. Développer sur un ordinateur hôte.
1. Développer sur un ordinateur hôte.
Ordinateur hôte
Ordinateur hôte
2. Télécharger le code sur une cible.
2. Télécharger le code sur une cible.
Code téléchargé via
Code téléchargé via
une
une liaison Ethernet.
liaison Ethernet.
Processeur
Processeur
Module d’E/S
Module d’E/S
Cible
Cible temps
temps réel
réel
254.
Principe de d
Principede dé
éveloppement temps r
veloppement temps ré
éel
el
3. Exécuter le code
3. Exécuter le code
Affichage
Affichage possible des
possible des
faces
faces avant sur
avant sur le PC
le PC hôte
hôte
par
par l’intermédiaire d’une
l’intermédiaire d’une
communication Ethernet.
communication Ethernet.
Cible
Cible temps
temps réel
réel qui
qui devient
devient
complétement autonome
complétement autonome.
.
Développer
Développer des
des programmes
programmes avec le
avec le lego Mindstorms
lego Mindstorms et
et
vous ferez du
vous ferez du temps
temps réel
réel.
.
255.
Architecture typique
Architecture typique
Cible
CibleRT (Real
RT (Real-
-Time)
Time) PC
PC hôte
hôte
Boucle de
Boucle de
l’application
l’application
(
(déterministe
déterministe)
)
Priorité
Priorité temps
temps
critique
critique
Boucle de
Boucle de
communication
communication
(non
(non déterministe
déterministe)
)
Priorité normale
Priorité normale
Disque
Disque
Application
Application
cliente
cliente
Disque
Disque
256.
Programme du PCh
Programme du PC hô
ôte
te
Exécuté
Exécuté sur
sur le PC
le PC hôte
hôte.
.
Pas
Pas nécessaire
nécessaire.
.
Gère
Gère les
les tâches
tâches non
non déterministes
déterministes :
:
-
- Communication avec le
Communication avec le programme cible
programme cible :
:
envoi des
envoi des paramètres
paramètres de
de l’interface utilisateur
l’interface utilisateur
et
et récupération
récupération des
des données
données
-
- Enregistrement
Enregistrement et
et analyse
analyse des
des données
données
-
- Emission des
Emission des données vers d’autres
données vers d’autres
systèmes
systèmes
257.
Programme de lacible
Programme de la cible
Les
Les tâches
tâches de
de priorité
priorité plus
plus élevée gardent
élevée gardent la main
la main sur
sur les
les
tâches
tâches de
de priorité moins importante
priorité moins importante.
.
Les
Les tâches
tâches qui
qui nécessitent
nécessitent d’être
d’être déterministes sont
déterministes sont des
des
tâches dites
tâches 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
tâche
tâche 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
258.
Qu
Qu’
’est que le
estque le multithread
multithread ?
?
Extension
Extension du
du principe
principe de
de multitâche
multitâche.
.
-
- Multitâche
Multitâche :
: capacité du système d’exploitation
capacité du système d’exploitation à
à basculer entre
basculer entre
différentes tâches
différentes tâches.
.
-
- Une tâche est généralement une
Une tâche est généralement une application à part
application à part entière telle que
entière telle que
LabVIEW
LabVIEW.
.
Le multithread
Le multithread étend
étend le
le principe
principe au
au sein même d’une
sein même d’une
application.
application.
-
- Des
Des opérations spécifiques
opérations spécifiques au
au sein d’une même
sein d’une même application
application peuvent
peuvent
être réparties chacune dans
être réparties chacune dans un thread
un thread spécifique
spécifique.
.
-
- Le temps
Le temps processeur peut être réparti sur
processeur peut être réparti sur les threads.
les threads.
-
- Capacité
Capacité à
à avoir
avoir des
des niveaux
niveaux de
de priorité
priorité.
.
259.
Performances déterministes
Performances déterministes
Gestion
Gestiond’un airbag
d’un airbag
Autonomie
Autonomie
Tests
Tests sous
sous-
-marins
marins
Fiabilité des performances
Fiabilité des performances
Tests de résistance et
Tests de résistance et
d’endurance
d’endurance
Exemples d
Exemples d’
’applications temps r
applications temps ré
éel
el
260.
Contrôleurs
Contrôleurs PXI
PXI embarqués
embarquésRT
RT
Haute
Haute vitesse
vitesse, haute
, haute densité d’E
densité d’E/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 réduit
Encombrement réduit,
, environnement durcis
environnement durcis
PC de bureau
PC de bureau ou industriel
ou industriel
Déterminisme
Déterminisme pour les
pour les systèmes
systèmes PCI
PCI
LabVIEW Real
LabVIEW Real-
-Time
Time
Exemples de cibles temps r
Exemples de cibles temps ré
éel avec
el avec LabVIEW
LabVIEW
261.
Partie XVIII
Partie XVIII–
– DataSocket
DataSocket
•
• Qu’est ce que DataSocket
Qu’est ce que DataSocket ?
?
•
• Protocole
Protocole de
de transfert
transfert DataSocket
DataSocket.
.
•
• Fonctions DataSocket
Fonctions DataSocket.
.
•
• Exemple
Exemple :
: labVIEW
labVIEW Messenger
Messenger
262.
Qu
Qu’
’est que
est queDataSocket
DataSocket ?
?
DataSocket est une bibliothèque
DataSocket est une bibliothèque de
de fonctions
fonctions qui
qui permet
permet
d’échanger
d’échanger des
des données entre différentes
données entre différentes applications
applications sur
sur un
un
même ordinateur ou entre différents ordinateurs connectés sur
même ordinateur ou entre différents ordinateurs connectés sur
un
un même réseau
même réseau.
.
Les
Les données sont publiées sur
données sont publiées 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
récupération
récupération des
des données
données.
.
Machine 1
Machine 1 :
:
Publication des
Publication des
données
données
Machine 2
Machine 2 : Lecture
: Lecture
des
des données
données
Serveur DataSocket
Serveur DataSocket
263.
Protocole de transfert
Protocolede 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 données
Nom de la donnée
Protocole
Protocole
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,…
…
270.
•
• Exemples deprogrammes (Aide » Recherche d’exemples…)
Exemples de programmes (Aide » Recherche d’exemples…)
•
• Quelques ressources supplémentaires sur Internet :
Quelques ressources supplémentaires sur Internet :
–
– Site
Site web
web de National Instruments
de National Instruments (
(www
www.ni.
.ni.com
com)
)
–
– Zone Développeur NI (
Zone Développeur NI (www
www.zone.ni.
.zone.ni.com
com) : forum de discussion
) : forum de discussion
–
– Notes d’Application
Notes d’Application
–
– Info
Info-
-LabVIEW newsgroup
LabVIEW newsgroup (
(www
www.info
.info-
-labview
labview.
.org
org)
)
–
– Bibliothèque des drivers d’instruments : VI qui contrôlent un
Bibliothèque des drivers d’instruments : VI qui contrôlent un
instrument programmable (
instrument programmable (www
www.ni.
.ni.com
com/
/idnet
idnet)
)
Pour aller plus loin
Pour aller plus loin…
…