Documente Academic
Documente Profesional
Documente Cultură
Objectifs du cours
Prsenter LabVIEW et ses fonctionnalits. Comprendre les composants d'un Instrument Virtuel (appel VI). tablir une application simple d'acquisition de donnes. Crer un sous-programme dans LabVIEW. Travailler avec les tableaux, les graphiques, les clusters et les structures. Connatre des dispositifs dimpression et de documentation dun VI. Dvelopper diffrentes architectures de programmation. Publier des VI ou des donnes sur un rseau ou sur le Web. Matriser les bases de communications par liaison GPIB et Srie. Connatre les outils dacquisition et de traitement dimages. Comprendre les concepts de base du dveloppement temps rel.
SOMMAIRE
Partie I Partie II Partie III Partie IV Partie V Partie VI Partie VII Partie VIII Partie IX Partie X Partie XI Partie XII Introduction LabVIEW Les Sous VI Acquisitions de donnes Boucles, registres dcalage et introduction aux graphiques Tableaux et fichiers Fonctions des tableaux et graphiques Chanes de caractres, clusters et traitement derreurs Structures Condition et Squence, Bote de calcul Variables Tables et nuds de proprits Impression et documentation de VI Architectures de programmation 5 47 60 77 88 104 113 129 144 152 162 170
Partie XIII Partie XIV Partie XV Partie XVI Partie XVII Partie XVIII Partie XIX
Outils de publication sur le Web Contrle dinstruments Module Vision Exercices dapplications Dveloppement dapplications temps rel DataSocket Sujets complmentaires
Remarque : La version de labVIEW utilise pour ce cours dinitiation est la version 7.1.
LabVIEW (Laboratory Virtual Instrument Engineering Workbench) est un environnement de dveloppement graphique qui permet de crer des applications modulaires (notion de sous VI) et extensibles pour la conception dapplications, le contrle et le test.
Traitement du signal : Convolution, analyse spectrale, transformes de Fourier, Traitement dimages : Masque, dtection de contours, profils, manipulations de pixels, Mathmatiques : Interpolation, statistiques (moyennes, cart-type,), quations diffrentielles,
10
Un peu dhistoire
Mars 1998 1997 Aot 1993 LabVIEW 5.0 ActiveX, Multifentrage LabVIEW 4.0 addition doutils pour les professionnels, amliorations du debogage LabVIEW 3.0 version multiplateforme de LabVIEW
Septembre 1992 LabVIEW pour Windows, et pour Sun Janvier 1990 Octobre 1986 Avril 1983 LabVIEW 2.0 pour Macintosh LabVIEW 1.0 pour Macintosh Dmarrage de LabVIEW
11
Un peu dhistoire
2007 LabVIEW 8.5, outils de dveloppement multicurs (lis aux innovations dans larchitecture des processeurs de PC), programmation par diagramme dtats (statecharts) LabVIEW 8.2 dition des 20 ans, LEGO Mindstorms NXT LabVIEW 8 DSP (Digital Signal Processing), systme embarqu LabVIEW 7 VI Express, Assistants E/S, FPGA/PDA LabVIEW 6.1 Analyse, fonctionnement en rseau LabVIEW 6i Applications Internet LabVIEW Temps rel
Par Nicolas POUSSET 12
Moteurs
Capteurs additionnels : acclromtre, gyroscope, colorimtre,
Capteur de distance
(metteur/Rcepteur ultrasons)
Exemples de conceptions :
Humanode Animaux
Par Nicolas POUSSET
Machine
13
Le programme est charg dans le robot via une connectique Bluetooth ou USB.
Possibilit dutiliser directement LabVIEW pour la programmation et la gestion dlments plus complexes.
Table traante
16
Composantes dun VI
- Face avant
- Diagramme
Fentre de programmation et daffichage du code source Interaction entre face avant et diagramme (Ctrl+E)
- Icne/Connecteur
17
Graphique
chelle du graphique
Dans la face-avant nous trouverons tous les lments interactifs du VI (commandes et indicateurs).
Par Nicolas POUSSET 18
Diagramme dun VI
Barre doutils du diagramme Constante numrique
Fil de donnes
Terminal graphique
Dans le diagramme nous trouverons tous les lments propres au code dvelopp (structures, fonctions, constantes,).
Par Nicolas POUSSET 19
Icne/connecteur dun VI
Chaque VI affiche une icne, dans le coin suprieur droit des fentres de la face-avant et du diagramme. Une icne est la Icne par dfaut reprsentation graphique dun VI. Un connecteur est un ensemble de terminaux correspondant aux commandes et aux indicateurs du VI qui sont accessibles.
20
Ouvrir un VI
Modles de VI
21
Ouvrir un VI
Modle de VI pour Pocket PC Modle de VI pour communications par GPIB
Modles de VI
Aperu du diagramme
22
Ouvrir un VI
Les exemples sont trs riches et souvent trs utiles pour dvelopper de petites applications rapidement.
Recherche dexemples
23
Ouvrir un VI
Parcourir dans les exemples Recherche par mots cls dans les exemples Soumettre un exemple National Instruments
Recherche dexemples
24
Ouvrir un VI
VI vide
25
Palettes de commandes
Palette de commandes
(disponible partir de la fentre face avant par un clic droit avec la souris ou dans la barre des menus : Fentre).
Boolen Bool Numrique Num Tableau et clusters (groupe) Liste et table Conteneurs
Chane et chemin Cha Graphe E/S Refnum Vision (module complmentaire) compl Commandes utilisateur
Menu droulant & num d Commandes classiques Commandes (dialogue) Dcorations Dcorations Slection de commandes
Dans cette palette nous trouverons tous les lments (commandes et indicateurs) ncessaires la cration de la face-avant.
Par Nicolas POUSSET 26
Palettes de fonctions
Palettes de fonctions
(disponible partir de la fentre diagramme par un clic droit avec la souris ou dans la barre des menus : Fentre).
Numrique Num Structures Tableau Chane Cha Temps & dialogue Comparaison Waveform Mesures NI Contrle dapplications Contr d E/S dinstruments d Gnration de rapports Communication Dcorations Slection dun VI d Boolen Bool Cluster (groupe ou agrgat) agr E/S sur fichiers Analyse Graphisme et son Avanc Avanc Bibliothques utilisateur Biblioth
Dans cette palette nous trouverons tous les lments (fonctions de base, VI Express,) ncessaires la cration du code graphique dans la fentre diagramme.
Par Nicolas POUSSET 27
VI Express
VI Standard
28
Palette doutils
Utilise pour agir sur les objets de la face avant et du diagramme (disponible dans la barre des menus : Fentre).
Possibilit de changer doutils laide de la touche tabulation du clavier de lordinateur. Outil slection automatique
(actif lorsque la LED verte est allume)
Outil daction sur la face avant Outil dplacement et taille Outil texte Outil connexion par fils Outil raccourci menu
Par Nicolas POUSSET
29
Aide contextuelle
Terminer lexcution
31
32
Crer un VI
Fentre de la face avant
Bouton Incrmenter/ Dcrmenter
Fentre du diagramme
Nud Indicateur numrique Terminaux de contrle (entres) Terminaux dindicateur (sorties)
=
Commande numrique Clic droit sur la commande (ou la constante) numrique. Fils de liaison Commande Cadre gras Indicateur Cadre fin
33
34
35
36
Rels
Entiers
Fonction de base
tiquette
38
Astuces de connexions
Points de Connexions Trois types de slection
Simple clic
Double clic
Triple clic
39
Lexcution du diagramme dpend du flux de donnes. Il ne sexcute pas ncessairement de gauche droite. Lexcution du nud se fait quand les donnes sont disponibles tous les terminaux dentre. Puis les nuds fournissent des donnes tous les terminaux de sortie. La plupart des langages de programmation textuel (Visual Basic, C++, Java,) utilisent des modles de flux de commandes. Cest lordre squentiel des lments du programme qui dtermine lordre dexcution du programme.
Par Nicolas POUSSET 40
41
Aide dtaille
(barre des menus : Aide -> Aide LabVIEW )
42
Exercice 1 - Conversion de C en F et en K
Raliser un VI qui permet deffectuer une conversion de C en K et en F partir de fonctions de base de labVIEW.
43
Exercice 1 - Conversion de C en F et en K
Exemple de solution possible
44
En double cliquant sur les erreurs on peut visualiser o elles se trouvent sur le diagramme.
Par Nicolas POUSSET 45
Sonde (Probe)
Clic droit sur un fil pour afficher une sonde. Les donnes qui transitent sur ce fil seront affiches. Il est galement possible de choisir l'outil Sonde partir de la palette d'outils.
Exemples de sondes personnalises :
46
47
Sous VI
Un sous VI est un VI qui peut tre utilis dans un autre VI de plus haut niveau. Avantages : Modularit (cration de blocs de base rutilisable pour diverses applications : gain de productivit) Facilite le dbogage Ncessite une seule cration de code.
Par Nicolas POUSSET 48
Icnes et Connecteurs
Une icne reprsente un VI dans un autre diagramme dun VI de plus haut niveau.
2 cases en entres pour les commandes
49
Sous VI
Sous VI Icne reprsentative du VI de plus haut niveau Icne reprsentative du sous VI
VI Principal
Sous VI
50
tapes de cration dun sous VI Crer licne Visualiser le connecteur Assigner les terminaux Sauvegarder le VI Insrer le VI dans un VI de plus haut niveau
51
52
Visualiser le connecteur
Cliquer avec le bouton droit sur licne (face avant seulement) et choisir Visualiser le connecteur.
53
54
En gris : terminaux optionnels (Nom de limage, Couleur?,) Normal : terminaux recommands (Image masque) En gras : terminaux ncessaires (Chemin daccs)
55
Sauvegarde du VI
Choisir un emplacement adquat Organiser par fonctionnalits
Sauvegarder les VI similaires dans un mme rpertoire (ex : Outils mathmatiques, traitement dimages, gestion multimtres, gestion moteur,)
56
57
58
59
60
Phnomne physique
Capteur
PC
Un capteur convertit un phnomne physique en un signal (gnralement de nature lectrique) mesurable par un systme dacquisition de donnes.
61
Cble de connexion
Capteurs
Bloc de terminaison pour connecter les signaux + Carte lectronique de mise en forme du signal analogique si ncessaire
Par Nicolas POUSSET
Ordinateur
62
Exemple de capteurs
Mesurande
Temprature
Capteur
Thermocouple Capteur de temprature rsistif (RTD) Thermistances Photodiode Photomultiplicateur Microphone Jauge de contrainte Transducteurs pizolectriques Potentiomtres Codeurs optiques Dbitmtre turbine / lectromagntique
Mesurande : Grandeur particulire soumise mesurage. Mesurage : Ensemble doprations ayant pour but de dterminer une valeur dune grandeur.
Par Nicolas POUSSET 63
Exemple de capteurs
Deux catgories de capteurs : Capteurs actifs
Ils se comportent comme des gnrateurs. Ils sont vu comme tant des gnrateurs de charge, de tension, ou de courant dont la valeur est directement relie au mesurande (Photodiode, photomultiplicateur,).
Capteurs passifs
Ils se comportent comme des impdances. Ils sont vu comme tant des rsistances, inductance ou capacit dont la valeur est directement relie au mesurande (thermistance, jauge de contrainte,).
64
65
66
67
NI-DAQ traditionnel
Des VI spcifiques pour accomplir : Entre analogique Sortie analogique E/S numrique Oprations de comptage
NI-DAQmx
Dernire gnration de drivers : VI configurables pour accomplir une tche Paramtrage dun VI pour toutes les mesures
68
Gnrer un signal
69
70
71
Rfrenc
Le signal nest pas rfrenc une masse. Exemples : piles, thermocouples, transformateurs,
Non rfrenc
72
73
DIFFERENTIEL
RSE
NRSE
74
SCB-68
Bloc de connexion d'E/S blind pour interfacer les signaux d'E/S avec des matriels enfichables DAQ quips de connecteurs 68 broches.
SCXI
75
CompactDAQ
Acquisition par USB (Avantages du plug-andplay et de la connectique unique universelle).
Chssis modulaire
Permet de rpondre un grand nombre dapplications de tests et de mesures.
PXI/CompactPCI
Par Nicolas POUSSET 76
77
Les boucles
La boucle While (tant que)
Possde un compteur ditration. Sexcute toujours au moins une fois. Continue de sexcuter tant que lon a pas appuyer sur le bouton Stop. Itration
La boucle For
Possde un compteur ditration. Sexcute N fois (N paramtrable). Pour N = 4, i = 0, 1, 2, 3.
78
Les boucles
1. Choisissez votre boucle. 2. Encadrer le code qui doit tre rpt.
3. Placez les nuds additionnels (contrle boolen : bouton stop par exemple) et reliez-les.
79
Un registre dcalage prend des donnes du ct droit et les reporte du ct gauche litration suivante :
Valeur initiale Valeur initiale Valeur 1 Valeur 1 Valeur 2 Valeur 2 Valeur 3 Valeur 3
Premire itration
Seconde itration
Dernire itration
80
81
82
Graphiques
Le graphique est un indicateur numrique particulier qui propose un historique des valeurs. Commandes >> Toutes les commandes >> Graphes
83
Plusieurs courbes
La fonction Fusionner les signaux sert combiner des donnes dans un type de donnes dynamiques (informations gnres ou acquises par un VI Express).
Par Nicolas POUSSET 84
Crer un VI qui gnre un nombre alatoire avec un temps dattente que lutilisateur peut modifier.
85
86
OU
87
88
89
Afficheur dindices
Afficheurs dlments
Exemple de tableau. Chaque lments dun tableau est accessible par son indice. Ainsi la valeur (llment) 0,658384 est lindice 0. Llment 0,659422 est lindice 3,...
90
91
Tableau de constantes.
92
Tableau de contrles
93
Tableau de constantes
Tableau de contrles
Possibilit de crer un tableau 1D sous forme dune ligne ou dune colonne suivant les besoins de lapplication.
94
Notion dindexation
Par Nicolas POUSSET 95
Tableau 1D Tableau 2D
Un tableau 2D est caractris par la prsence de 2 indices (1 pour la ligne et 1 pour la colonne).
Par Nicolas POUSSET 96
Manuellement.
97
Terminal (i) ditrations Si lindexation automatique est active pour un tableau cbl en entre dune boucle For, le terminal (N) de dcompte sadapte automatiquement la taille du tableau. La boucle For sexcute alors un nombre de fois gal au nombre dlments du tableau.
98
Si deux tableaux sont connects en entre de la boucle ainsi que le terminal de dcompte (N), alors la boucle effectuera un nombre ditrations gal au plus petit nombre disponible. Dans lexemple ci-dessus, le premier tableau a 7 lments, le second en a 4 et la valeur 6 est cble N. Donc la boucle For ne sexcute que 4 fois.
99
Fichiers
Fichiers passer des donnes vers et depuis des fichiers. - Les fichiers peuvent tre des lments binaires, du texte, ou des tableaux. - crire / lire le fichier LabVIEW Measurements (*.lvm) laide de VI Express. crire dans un fichier *.lvm Lire un fichier *.lvm
100
101
102
103
Partie VI Fonctions des tableaux et graphiques Les fonctions de base dun tableau. Utiliser les graphiques. Crer plusieurs courbes dans les graphiques.
104
105
106
Les graphiques
Slectionner depuis la palette Commandes, la sous palette Graphe : Commandes >> Toutes les commandes >> Graphe Graphe droulant Trace les donnes en continu, en plaant
les anciennes donnes sur la gauche et les nouvelles droite. Les anciennes donnes disparaissent au fur et mesure que de nouvelles arrivent.
Les graphiques
Faire un clic droit sur le graphique et slectionner proprits pour personnaliser laffichage (chelle, couleurs, curseurs,).
108
Graphe numrique
109
Exemples : graphe XY
Graphe XY
110
Gnrer un VI qui simule un signal sinusodal et un signal carr dont on peut modifier la frquence et lamplitude ainsi que le rapport cyclique (pour le signal carr).
111
112
113
114
115
116
s : string f : floating
117
Dans certains cas (par exemple, pour communiquer avec un instrument par lintermdiaire du port srie) il est ncessaire davoir comme sparateur dcimal un point et non une virgule. Il faut donc ajouter le format %.;
118
119
Clusters
Structures qui regroupent plusieurs donnes. Les donnes peuvent tre de diffrents types. Les lments doivent tous tre, soit des contrles, soit des indicateurs. Cela est similaire au cblage de fils dans une mme gaine : facilite la gestion du programme.
120
Crer un cluster
1. Slectionner un modle de cluster :
Commandes >> Toutes les commandes >> Tableau et Cluster ou Fonctions >> Toutes les fonctions >> Cluster
2. Placer des objets dans le cluster :
121
La palette Clusters
Dans le sous-menu Clusters de la palette Fonctions >> Toutes les fonctions. galement accessible par clic droit sur un terminal de cluster dans la fentre diagramme.
Type de donnes
Type de donnes
Assembler
Commandes tiquette tiquette
La palette Clusters
Type de donnes
Dsassembler
Indicateurs
tiquette
123
Clusters derreurs
Un cluster derreur permet la visualisation dun problme lors de lexcution dun VI. Un cluster derreur contient les informations suivantes : tat rapporte si une erreur se produit (valeur boolenne). Code rapporte le code spcifique de lerreur (Entier 32 bits). Source donne des informations sur lerreur (Chane de caractres). Exemple :
Pas derreur
Erreur
Par Nicolas POUSSET 124
Clusters derreurs
125
Types de connexions
Numriques Rels Entiers Scalaire Tableau 1D Tableau 2D
126
On simulera dans un premier temps un dplacement continu du pointeur puis un dplacement discret .
127
Dplacement discret
Dplacement continu
128
129
Structure Condition
Dans la sous palette Structures de la palette de Fonctions. Uniquement un seul cas est visible la fois.
Slecteur : Vrai, faux, peuttre, peut-tre pas,
Terminal de slection
Terminal de slection
Terminal de slection
Slecteur : 0, 1, 2,
131
132
Bote de calcul
Dans la sous-palette Structures. Implmenter des quations compliques. Les variables sont cres sur le bord. Chaque nonc doit se terminer par un point virgule (;) La fentre daide contextuelle montre des fonctions disponibles. x2 Point-virgule
Avantage de la bote de calcul ( droite) : rapidit dexcution du code par rapport lutilisation des fonctions de base ( gauche).
133
VI Express Formule
Utilisation dune interface de calculatrice o sont prsentes la plupart des fonctions dune calculatrice scientifique classique.
Par Nicolas POUSSET 134
Gnrer un VI qui permet de visualiser une erreur lorsque lon essaye de calculer la racine carr dun nombre ngatif.
135
136
137
Que ce passe t-il si lon ajoute une boucle While ce programme pour que celui-ci fonctionne en continu et que lon rentre une valeur ngative ?
Par Nicolas POUSSET 138
Le programme fonctionne en continu grce la boucle While. Celleci sarrte ds que lon appui sur le bouton Stop o ds que lon rentre une valeur ngative dans la commande Numrique .
Par Nicolas POUSSET 139
Gnrer un VI qui permet de tracer la luminance spectrique du corps noir pour une temprature donne.
2hc 2
(e
5
hc kT
1)
Vitesse de la lumire dans le vide c = 299 792 458 m.s-1 Constante de Planck h = 6,626 069 3 . 10-34 J.s Constante de Boltzmann k = 1,380 650 5 . 10-23 J.K-1
Par Nicolas POUSSET 140
142
Le rayonnement du corps noir ne commence se voir quau del de 600C (rouge sombre) do le choix de lexpression corps noir puisqu temprature ambiante (300 K) les corps naturels mettent dans lInfrarouge (IR).
143
Partie IX Variables
Variables locales. Variables locales de squence. Variables globales.
144
Variables locales
146
Variables globales
Ouverture dun sous VI vide
Une variable globale agit de la mme faon quune variable locale except le fait que lon peut transfrer cette variable dun VI lautre par lutilisation du sous VI cre.
147
Variables globales
2. Sous-VI cre lors de linsertion des variables dans le premier VI. Icne reprsentative des sous VI de variable globale.
1. 1er VI (vi.vi) o lon crit les informations dans les variables globales (mode criture). 3. 2me VI (vi2.vi) o lon rcupre la variable globale comme un sous-VI classique que lon paramtre en mode lecture.
148
149
150
151
152
Tables
On ne peut crire dans les tables uniquement que des chanes. On ne peut pas directement crire des entiers ou des rels.
153
Tables - exemple
154
Nud de proprit
Dans un premier temps il faut relier le nud de proprit un objet prcis.
Les nuds de proprit permettent davoir accs certains lments dun objet en lecture ou en criture.
155
Nud de proprit
Dans un second temps il faut choisir les proprits de lobjet qui nous intressent. Par exemple (dans notre cas ici) les en-ttes de colonnes et les valeurs dune table.
156
157
Nud de proprit
158
159
tape 2 : Une bote de dialogue apparat pour enregistrer les donnes au format .xls
160
Lorsque lon essaye de rcrire par dessus un fichier dj prsent, une bote de dialogue nous invitant changer de nom de fichier apparat.
161
162
Impression
Fichier Imprimer ... Diffrentes options dimpression sont disponibles Icne, description du VI, face avant, diagramme, hirarchie des VI, sous VI, historique des VI Impression du panneau VI (impressions programmables de la face avant)
Impression personnalise
163
Rapport pr-format
164
Rapport pr-format
En double cliquant sur le VI Express nous avons la possibilit de paramtrer le formatage du rapport.
165
Rapport pr-format
Gnration du rapport
166
Rapport pr-format
167
168
Sans commentaires
Commentaires gnraux
Avec commentaires
Commentaires pour expliciter les donnes qui transitent sur chacun des fils Ne pas oublier de mettre les tiquettes sur les fonctions que vous utilisez et de nommer explicitement vos commandes et vos indicateurs !
Par Nicolas POUSSET 169
170
Larchitecture simple du VI
Le VI fonctionnel prsente des rsultats probants Pas doption marche/arrt. Convient pour des tests trs simples, de petits calculs, Exemple : Exercice1.vi
171
Larchitecture gnrale du VI
Trois tapes principales : Initialisation Application principale Fermeture Exemple pour lacquisition continue dune image :
Initialisation Application principale Fermeture
- Linitialisation na besoin dtre faite quune fois. - La fermeture de la session larrt du programme est indispensable pour librer les ports utiliss.
172
Inconvnients
Pertes possibles dvnements sil y en a deux qui arrivent en mme temps. Les tats : 0 : Dmarrage 1 : Attente (timeout) 2 : vnement 1 3 : vnement 2 4 : Arrt Dans chaque trame de la structure Condition correspondant un tat donn, on dtermine ltat suivant.
Par Nicolas POUSSET 173
174
175
Possibilit dcrire les commandes de fonctions la main pour que celles-ci sexcutent.
176
177
Affiche ( gauche) diverses informations (date dacquisition, temprature, humidit, pression,) lorsque lon appui sur le bouton Lecture des paramtres mto .
178
Permet lacquisition de donnes, la suppression dune ligne, leffacement du tableau et lenregistrement des donnes dans un fichier excel.
179
180
181
182
183
184
185
186
187
Nimporte qui peut partir dInternet visualiser en temps rel le VI et le contrler sil en a, au pralable, t autoris.
- Tlchargement de Tutoriaux et Instructions. - Support sur lincorporation de Webcams dans les panneaux de contrle distance.
Par Nicolas POUSSET 190
Drivers dinstruments.
Par Nicolas POUSSET 191
Introduction
Dans le cas de communications par liaisons GPIB ou Srie, lacquisition de donnes se fait par lintermdiaire dun instrument autonome (multimtre, oscilloscope,) au sein duquel sont effectues les oprations dentres/sorties des signaux mesurs. Le programme dvelopp sert uniquement la configuration de linstrument, la rcupration, lanalyse et la prsentation des donnes.
192
GPIB - Introduction
La liaison GPIB (General Purpose Interface Bus) appele aussi IEEE 488 (IEEE : Institute of Electrical and Electronics Engineers) est devenue depuis son apparition en 1965 (cre par Hewlett-Packard) un standard de communication qui permet aujourdhui de contrler la plupart des instruments de mesures (oscilloscopes, multimtres, gnrateurs de fonctions, ). La premire normalisation de ce bus date de 1987 sous la rfrence IEEE 488.1. Une deuxime normalisation de ce bus est intervenue en 1992 avec la rfrence IEEE 488.2 pour prciser la prcdente qui tait incomplte, et ceci en prcisant le protocole de communication, en dfinissant les formats de donnes,... En 1990, le document Standard Commands for Programmable Instrumentation (SCPI) a t incorpor la norme. Celui-ci dfinit un certain nombre de commandes auxquelles chaque instrument doit pouvoir obir. Cela permet ainsi une interoprabilit de matriels de diffrents fabricants.
Connecteur GPIB
193
- Interconnexion de 15 appareils maximum : Carte GPIB chaque appareil possde une adresse Cble GPIB comprise entre 0 et 30. - Vitesse de transfert maximum : 1 Mo/s. - Longueur de cble de 4 m au maximum entre 2 appareils. - Longueur totale de cble de 20 m au maximum. - Au minimum les 2/3 des instruments doivent tre sous tension.
194
GPIB - Measurement and Automation Explorer (MAX) Clic sur un instrument : par exemple Instrument0
Adresse GPIB de linstrument
196
GPIB VI type
Architecture utilisant des VI Express dj disponibles pour gagner en rapidit et en simplicit.
197
198
Srie - Introduction
Bien que progressivement dlaisse pour lUSB (Universal Serial Bus), la liaison Srie (RS 232, RS 449, RS 422, RS 423, RS 485) est un moyen de communication, encore aujourdhui, rpandu pour la transmission de donnes entre un ordinateur et un priphrique (imprimante, instrument de mesure programmable,) La liaison Srie est une liaison asynchrone cest--dire quelle ne transmet pas de signal dhorloge. Il ny a donc aucune synchronisation entre lmetteur et le rcepteur. Pour que le rcepteur puisse interprter convenablement linformation du transmetteur, il faut que les deux lments soient configurs de la mme faon. Il faut spcifier 4 paramtres pour ce type de communication : le dbit de transmission en bauds, le nombre de bits de donnes, la polarit du bit de parit (paire ou impaire), le nombre de bits de stop (1, 1,5 ou 2).
Port Srie
Par Nicolas POUSSET 199
- Un bit de start qui indique quune information va tre envoye. Il permet la synchronisation du rcepteur. - 7 ou 8 bit de donnes (B0 B6 (ou B7) avec B0 le bit de poids faible (LSB) et B6 le bit de poids fort (MSB)). - Un bit de parit qui permet de dtecter les ventuelles erreurs de transmission. - Un bit de stop. Aprs la transmission la ligne est positionne au repos pendant X priodes dhorloges du rcepteur.
200
Exemples de VI
Exemples de VI apportant une aide au dmarrage dun projet ou quelques solutions des problmes de conception
202
Drivers dinstruments
Les drivers dinstruments sont des bibliothques de VI qui permettent de contrler un instrument programmable. Accessible sur le site de NI ladresse suivante : ww.ni.com/idnet Ou par labVIEW partir de larborescence suivante : Outils > Instrumentation > Base de drivers dinstruments . Exemple : Multimtre KEITHLEY modle 2002 :
203
Acquisition dune SEULE image avec une webcam par USB. Acquisition continue dimages avec une webcam par USB.
204
NI Vision Assistant
Vision Assistant permet de paramtrer la camra utilise, de procder lacquisition dimages ou de squences dimages, permet de procder une multitude de traitement dimages et permet de gnrer automatiquement et facilement un code LabVIEW oprationnel.
205
206
Slection de la camra
Rglage des paramtres vido Rglage des paramtres lis aux images
207
Ces paramtres sont intrinsques la camra utilise. Ils seront diffrents pour dautres types de camras.
208
1 mm
Exemple dune image dun micromtre objet (talon trait) observ au microscope optique + camra CCD
209
210
211
212
Fonctions Vision
213
Outils de visualisation
214
USB PC Webcam
Utilisation du SNAP
215
Utilisation du GRAB
216
Cration dune mire avec les outils vision. Ouverture dune image. Cration dun masque sur une image. Calibrage dune image.
217
x1 y1 x2 y2
y1 y2
218
Pour ce faire nous utiliserons des graphiques dintensit ainsi que les VI suivants (voir diapo suivante).
219
220
221
222
223
224
225
226
227
228
229
1re tape : Cration de la variable image ( laide du VI standard IMAQ Create ) et dun motif unique.
230
Raliser un VI qui permet de visualiser laffichage dun motif ovale sur un fond noir dans deux modes de visualisation diffrents.
231
232
Affichage de limage dans une bote de dialogue distincte de la face avant du VI cre.
233
Affichage de limage dans un indicateur visuel prsent sur la face avant du VI cre.
234
235
Raliser un VI qui permet de visualiser laffichage dune ligne de motifs ovales sur un fond noir.
236
237
3me tape : Cration dune mire de motifs identiques. Pour cela nous allons utiliser deux boucles For pour la cration des lignes et des colonnes.
238
Raliser un VI qui permet de visualiser laffichage dune mire de motifs identiques sur un fond noir.
239
240
241
242
Image masque
243
244
245
246
247
Image initiale
Image calibre
Image rogne
248
249
250
251
252
Ordinateur hte 2. Tlcharger le code sur une cible. Cible temps rel
Processeur
Module dE/S
253
Affichage possible des faces avant sur le PC hte par lintermdiaire dune communication Ethernet.
Dvelopper des programmes avec le lego Mindstorms et vous ferez du temps rel.
Par Nicolas POUSSET 254
Architecture typique
Cible RT (Real-Time)
Boucle de lapplication (dterministe) Priorit temps critique
Disque
PC hte
Application cliente
Disque
255
Programme du PC hte
Excut sur le PC hte. Pas ncessaire. Gre les tches non dterministes :
- Communication avec le programme cible : envoi des paramtres de linterface utilisateur et rcupration des donnes - Enregistrement et analyse des donnes - Emission systmes des donnes vers dautres
256
Programme de la cible
Les tches de priorit plus leve gardent la main sur les tches de priorit moins importante. Les tches qui ncessitent dtre dterministes sont des tches dites temps critique. Toutes les autres auront une priorit moins importante. Le multithreading permet de donner la priorit une tche en particulier.
Programme de la cible
Boucle de priorit normale Communication inter-threads interBoucle temps critique
257
258
Tests sous-marins
LabVIEW Real-Time
CompactRIO
E/S reconfigurables, reconfigurables,
Compact Vision
Automate de vision industrielle
Compact FieldPoint RT
Encombrement rduit, environnement durcis rduit,
environnement durcis
260
Partie XVIII DataSocket Quest ce que DataSocket ? Protocole de transfert DataSocket. Fonctions DataSocket. Exemple : labVIEW Messenger
261
dstp://163.173.45.98/temperature
Protocole Adresse IP de la machine Nom de la donne qui publie les donnes
263
Fonctions DataSocket
Datasocket Ecrire
264
265
266
267
268
269
270
Nicolas POUSSET Optronic Engineer - PhD Student - Teacher Institut National de Mtrologie (LNE-INM) Conservatoire national des arts et mtiers (Cnam) 61 Rue du Landy 93210 La Plaine - Saint Denis France tl. (office) : +33 (0)1.58.80.89.03 tl. (labo) : +33 (0)1.58.80.46.34 tl. (mobile) : +33 (0)6.76.82.04.35 fax : +33 (0)1.58.80.89.00 e-mail : nicolas.pousset@cnam.fr Group website : http://inm.cnam.fr Perso website : http://poucet.club.fr
271