Vous êtes sur la page 1sur 32

2009-2010 ____________________________________________________________

Travaux pratiques Dcouverte de LabVIEW


TP n1 : Fonctions de base
Exercice 0 Ouvrir et excuter un instrument virtuel Exercice 1 Cration dun VI simple Exercice 2 Cration dun sous VI Exercice 3 Utilisation des graphes Exercice 4 Utilisation des boucles FOR Exercice 5 Utilisation des structures SEQUENCE Exercice 6 Registres dcalage Exercice 7 Clusters derreur & Traitement

TP n2 : Acquisition de donnes
Exercice 0 Configuration et test de carte dacquisition Exercice 1 : Acquisition dentres numriques Exercice 2 Acquisition de temprature Exercice 3 Analyse et Sauvegarde des donnes Exercice 4 Application : alarme de temprature

TPn3 : Utilisation des chanes de caractres et des fichiers


Exercice 1 Chanes de caractres Exercice 2 Gestion de fichiers dentre/sortie Exercice 3 : Communication srie

Exercice 4 : Application lanalyse des mesures

TP n2bis : Appareils de mesure programmables par une liaison GPIB TP n3bis : Exercices dapplication

-1-

Conseils gnraux pour le bon droulement du TP et la rdaction des compte-rendus.

Utiliser laide contextuelle et laide en ligne Utiliser les outils de dbogage Sauvegarder les fichiers VI dans votre rpertoire personnel. Dans votre compte-rendu (quand il sera demand), apparatra :

- Pour chaque programme, les nouvelles fonctions ou commandes que vous avez utilises - Pour les exercices dapplication (moins guids), une explication dtaille du programme (organigramme, par exemple) et limpression du diagramme et de la face-avant Bibliographie : Francis COTTET, LabVIEW - Programmation et applications, Dunod Manuel dInitiation LabVIEW, National Instruments Ressources Web (ni.com) : NI Developer Zone (zone.ni.com) Polycopi de TP LabView, David Frey, GEII- IUT de Grenoble

-2-

TRAVAUX PRATIQUES n1 : FONCTIONS DE BASE Pas de compte-rendu pour ce TP. Exercice 0 Ouvrir et excuter un instrument virtuel
Ouvrir LabView 8.x dans le rpertoire National Instruments. Examiner le fichier Signal Generation and Processing.vi (dans Ouvrir\exemples\analyse et Traitement des Signaux\Filtrage et conditionnement\ ) et excuter le. Changer les diffrents paramtres du programme et visualiser le rsultat. Face avant (Front Panel) Cliquer sur le bouton Run de la barre doutils pour excuter le VI. Ce VI dtermine le rsultat du filtrage et du fentrage du signal gnr. Cet exemple donne aussi le spectre en puissance pour ce signal. Les graphes sur la face avant, sont montrs dans la figure ci-dessous.

Utiliser la main dans la palette doutils pour modifier les diffrents paramtres Appuyer sur le bouton More Info ou [F5] pour obtenir plus dinformations sur les fonctions danalyse. Appuyer sur le bouton Stop ou [F4] pour arrter le VI.

-3-

Diagramme (Block Diagram) Slectionner Fentre afficher le diagramme ou appuyer sur <Ctrl-E> pour afficher le diagramme du VI Signal Generation and Processing. Ce bloc contient plusieurs lments basiques, incluant les sous-VI, les fonctions et structures, qui seront dtailles dans la suite de ces exercices. Slectionner Fentre afficher la face avant Panel ou appuyer sur <Ctrl-E> pour revenir la face avant. Fermer le VI sans sauvegarder.

Exercice 1 Cration dun VI simple Construire un VI


Lobjectif est de crer un VI qui prenne un nombre reprsentant des degrs Celsius et le convertisse en degrs Fahrenheit.

Face avant
1. Slectionner FichierNouveau pour ouvrir une nouvelle face-avant.

2. (en option) Pour visualiser la face-avant et le diagramme cte cte, slectionner Fentre Mosaque verticale. 3. Crer une commande numrique. Vous utiliserez cette commande pour entrer la valeur des degrs Celsius convertir. a. Slectionner la commande numrique dans la palette Commande Numrique. Si la palette de Commande nest pas visible, cliquer-droit sur une partie vide de la face-avant afin de la faire apparatre. b. Dplacer la commande de la palette et cliquer pour la placer sur la face-avant. c. Taper deg C lintrieur de ltiquette puis cliquer lextrieur de ltiquette ou cliquer sur le bouton Entre. 4. Crer un indicateur numrique pour afficher la valeur des degrs Fahrenheit. a. Slectionner lindicateur numrique dans la palette Commande Numrique. b. Le placer sur la face-avant. c. Taper deg F lintrieur de ltiquette. LabVIEW cre les terminaux associs la commande numrique et lindicateur numrique dans le diagramme. Les terminaux reprsentent le type -4-

de donnes de la commande ou de lindicateur. Par exemple, un terminal DBL reprsente une commande ou un indicateur numrique flottant, en double prcision. Remarque Les terminaux des commandes ont des bords plus pais que les terminaux des indicateurs.

Diagramme
5. Visualiser le diagramme en cliquant FentreAfficher le diagramme. dessus ou en slectionnant

Remarque: les terminaux dans le diagramme peuvent tre visualiss soit sous forme de terminaux soit sous forme dicnes. Pour passer dune visualisation lautre, cliquer-droit sur le terminal et slectionner Visualiser sous la forme dune icne.

6. Slectionner les fonctions Multiplier et Additionner dans la palette FonctionsNumrique et placer dans le diagramme. Si la palette Fonctions nest pas visible, cliquer-droit dans le diagramme 7. Slectionner la constante numrique dans la palette FonctionsNumrique et en placer deux dans le diagramme. 8. Taper 1.8 dans une constant et 32.0 dans lautre. 9. Utiliser loutil bobine (palette doutils) pour relier les diffrentes icnes. Pour relier un terminal un autre, utiliser loutil bobine en cliquant sur le premier terminal, en dplaant loutil vers le second terminal et en cliquant sur le second terminal. Pour identifier les nuds des terminaux, cliquer-droit sur les fonctions Multiplier et Additionner et slectionner Elments visibles Terminaux pour faire apparatre les connecteurs. Revenir aux icnes aprs avoir plac les fils.

-5-

Quand vous approchez loutil bobine dun terminal, la partie du terminal clignote, indiquant que cliquer connectera le fil. Pour dtruire un fil commenc, appuyer sur <Esc>, cliquer-droit, ou cliquer sur le terminal source.

10. Sauver ce VI dans votre rpertoire personnel au nom de Convert C to F.vi car il sera utilis plus tard. 11. Entrer un nombre dans la commande numrique et excuter le programme laide de la flche dans la barre 12. Slectionner Fichier Fermer pour fermer Convert C to F.vi.

Exercice 2 Crer un sousVI Face avant


1. Ouvrir Convert C to F.vi. La face-avant suivante apparat :

2. Cliquer-droit sur licne situe dans le coin en haut droite de la face-vant et slectionner Editer licne partir du menu. La bote de dialogue Editeur dicnes apparat. 3. Double-cliquer sur loutil Slectionner (rectangle pointill) pour slectionner licne par dfaut. 4. Appuyer sur <Suppr> pour enlever licne par dfaut. 5. Double-cliquer sur loutil Rectangle pour redessiner la bordure. 6. Crer licne suivant (ou un autre de votre choix)

Remarque Pour dessiner des lignes verticales ou horizontales, appuyer sur <Shift>quand vous utilisez loutil Crayon pour entraner le curseur. a. Utiliser loutil Slectionner et les flches du clavier pour dplacer ce qui a dj t cre.

-6-

b. Slectionner licne N&B et slectionner 256 Couleurs dans le champ Copier partir de pour crer une icne noir et blanc, quutilise LabVIEW pour limpression. c. Quand licne est termine, cliquer sur OK pour fermer lEditeur dicnes. Licne cre apparat alors dans le coin haut droit du diagramme et de la face avant. 7. Cliquer-droit sur licne de la face-avant et slectionner Visualiser le connecteur partir du menu pour dfinir les entres-sorties associes. 8. LabVIEW cre un connecteur bas sur le nombre de commandes et dindicateurs sur la face-avant. Par exemple, cette face-avant a deux terminaux, deg C and deg F, ainsi LabVIEW cre un connecteur avec deux terminaux. 9. Assigner les terminaux la commande numrique et lindicateur numrique. a. Slectionner AideAide contextuelle pour faire apparatre la fentre daide contextuelle. Visualiser chaque connexion dans cette fentre. b. Cliquer sur le terminal gauche dans le connecteur. Loutil se change automatiquement en bobine et le terminal devient noir. c. Cliquer sur la commande deg C. Le terminal gauche devient orange gris, et des pointills entourent la commande. d. Cliquer sur une zone vide de la face-avant. Les pointills disparaissent et le terminal prend la couleur du type de donnes de la commande indiquant la connexion correcte. e. Refaire la mme dmarche avec lindicateur numrique deg F et le terminal droit. 10. Sauvegarder puis fermer votre VI.

Exercice 3 Utilisation des graphes Face-avant


1. Ouvrir un nouveau VI et construire la face-avant suivante :

-7-

a. Crer un graphe partir de la palette CommandesGraphes. Utiliser loutil Flche (palette doutils) pour dplacer la lgende de la courbe sur le ct et lagrandir pour faire apparatre deux courbes. Utiliser loutil texte (palette doutils) pour changer le nom des courbes et la page de proprits pour choisir les diffrentes couleurs de vos courbes. b. Placer un bouton Stop sur la face-avant. c. Placer deux glissires curseur verticales partir de la palette Commandes numrique. Utiliser nouveau la page proprits pour changer les couleurs des glissires.

Diagramme
2. Construire le diagramme suivant :

a. Placer une boucle While b. Placer un Attendre un multiple de ms dans la palette Fonctions Temps& Dialogue et crer une constante de valeur 100. c. Placer deux VI Express Simuler, de la palette FonctionsExpressEntres. Laisser le signal sinus pour le premier et modifier le deuxime pour obtenir un carr. Relier les sorties des deux VI Express au graphe. La bote Fusionner des signaux sera insre automatiquement. d. Agrandir les VI Express pour visualiser une autre entre/sortie. Par dfaut, la sortie derreur devrait apparatre. Changer cette sortie en Frquence en cliquant dessus (avec loutil Doigt- palette doutils) et en choisissant Frquence. 3. Sauvegarder ce VI sous le nom Multiplot Graph.vi. 4. Excuter ce VI puis fermer le aprs vos diffrents tests.

-8-

Exercice 4 Utilisation de la boucle FOR


Lobjectif de lexercice est dexcuter les diffrentes tapes afin de crer un VI qui gnrera des nombres alatoires jusqu ce quun des nombres gnr corresponde une valeur que vous avez choisie. La boucle comptera le nombre ditrations jusqu obtention de lgalit.

Face avant
1. Ouvrir un nouveau VI. 2. Construire la face-avant suivante :

La valeur Number to match correspond au nombre que lon a choisi. La valeur Current Number indique la valeur gnre par le gnrateur de nombre alatoires. La valeur #of iterations indique le nombre ditrations avant quon ait galit. Utiliser loption Data Range pour viter que lutilisateur ne slectionne une valeur incompatible avec le gnrateur de nombres. Vous pouvez ignorer lerreur ou alors limiter la valeur. Pour limiter les valeurs entre 0 et 10000 avec un incrment de 1 et une valeur par dfaut de 50, ralisez les tapes suivantes : 3. Cliquer droit sur Number to match control et slectionner Data Range du menu droulant. La bote de dialogue apparat. 4. Enlever la croix de la bote Use Defaults 5. Slectionner les options comme ci-dessous :

6. Cliquez sur OK

-9-

Par dfaut, LabView affiche les contrles numriques et les indicateurs avec deux chiffres dcimaux. Utiliser loption Format&Precision pour changer la prcision ou afficher les contrles et indicateurs numriques en affichage scientific, engineering ou hour/minute.second notation . 7. Mettre la prcision 0 comme ci-dessous pour les trois variables Number to match, Current Number et #of iterations.

Diagramme
8. Construire le diagramme suivant :

La fonction Round To Nearest permet de conserver la partie entire. Cette fonction arrondit la variable lentier le plus proche.

- 10 -

Le carr bleu situ sur le bord de la boucle While est appel un tunnel : il sert faire entrer ou sortir des donnes de la boucle. La donne sort chaque fois que la boucle est termine et ne s excute que lorsque la donne en entre est arrive. La boucle sexcute tant que lgalit nest pas vraie. A chaque fois que la boucle s excute, le compteur est incrment. Il faut lincrmenter de 1 en sortie car le compteur commence 0. 9. Sauver le VI sous Auto Match.vi 10. Afficher la face avant et changer le nombre dans Number to match 11. Lancer le VI. Changer nouveau Number to match et relancer le VI. Current Number est mis jour chaque itration de la boucle While car il est lintrieur de la boucle. # of iterations ne se met jour qu la fin car il est hors de la boucle. 12. Pour voir comment le VI fonctionne en interne, vous pouvez cliquer sur le bouton Highlight Execution. Le flot de donnes sera anim, ce qui permettra de voir comment il se droule et les valeurs gnres 13. Changer le Number to Match pour quil ait une valeur hors de la plage 0-10000. 14. Lancer le VI. LabView modifie la valeur hors plage en la valeur la plus proche contenue dans la plage. 15. Fermer le VI.

Exercice 5 Utilisation des structures Squence


Le but de ce VI est de dterminer le temps que met la fonction Random pour tre gale une valeur donne.

Face avant
1. Ouvrir le VI Auto Match, cre dans lexercice prcdent. 2. Modifier la face avant comme ci-dessous :

a. b.

Changer Number to match, Current Number et #of iterations en representation I32 Changer Time to Match en reprsentation DBL avec 3 dcimales de prcision. - 11 -

3. Sauver le VI sous Time to match.vi

Diagramme
4. Modifier le diagramme comme ci-dessous :

a. Placer une structure Squence dans la palette Fonctions>Structures b. Cliquer sur le bord droit de la structure et ajouter Add Frame After. 5. Sauver le VI. 6. Afficher la face avant, entrer un nombre dans Number to Match et lancer le VI. Dans le cas 0, le Vi excute la boucle While tant que Current Number nest pas gal Number to Match. Dans le cas 1, la fonction Tick Count (ms) lit la valeur de lhorloge du systme dexploitation. Le Vi soustrait la nouvelle valeur celle qui a t mesure au dpart et retourne le temps coul. 7. Fermer le VI.

- 12 -

Exercice 6 Registre dcalage


Il s'agit de construire un VI qui gnre et affiche des donnes alatoires immdiates plus la moyenne glissante des quatre dernires donnes. Il faut donc que dans chaque itration de la boucle, on ait accs aux valeurs du gnrateur de nombres alatoires obtenues lors d'itrations prcdentes. Cela se fait en utilisant des registres dcalage (shift registers). Un slecteur en face-avant permettra d'ajuster la dure de la boucle entre 0 et 2 s et un interrupteur permettra d'arrter le programme.

Face-avant
Raliser la face-avant suivante.

Diagramme
Le diagramme obtenir est le suivant :

- 13 -

On fait apparatre un registre dcalage en cliquant-droit sur les bords verticaux de la boucle WHILE et en slectionnant Ajouter un registre dcalage. Il apparat les symboles et sur ces bords. La borne de droite est l'entre sur laquelle on va brancher la valeur actuelle de la grandeur, et la borne de gauche est la sortie o l'on rcupre (si elle est disponible) sa valeur lors de l'itration antrieure. On peut rajouter des sorties pour obtenir les valeurs aux itrations i -1, i - 2, i - 3, en choisissant "ajouter un lment" dans le menu surgissant du registre, pour obtenir quelque chose du type :

Les registres de gauche doivent tre initialiss ("par la gauche", c'est--dire par l'extrieur de la boucle) pour garantir leur contenu. La fonction Moyenne (Mean.vi) se trouve dans Fonctions Analyse Mathmatiques Probabilits et statistiques. la palette

L'afficheur accepte plusieurs entres si elles sont mises en faisceau (bundle). On trouve dans Fonctions Cluster Assembler l'outil ncessaire Le nud rsulte du redimensionnement la souris de l'objet "Construire un tableau", toujours dans Fonctions Tableaux. Enregistrer sous le nom "moyenne glissante.vi" dans votre bibliothque de VI. EXERCICE FACULTATIF EN FONCTION DE LAVANCEMENT : Si l'on veut faire la moyenne d'un nombre plus grand et variable de valeurs, on peut raliser le diagramme suivant

- 14 -

qui cre et initialise un tableau, o l'on s'est servi de l'icne Initialiser un tableau de l'icne Rotation dans un tableau 1D et de l'icne Remplacer une portion du tableau .

Le principe est en quelque sorte de crer un registre dcalage sous forme de tableau. Le dcalage se fait explicitement par la rotation du tableau. Les valeurs les plus rcentes sont rajoutes au dbut du tableau.

Exercice 7 Clusters derreur & Traitement Face-avant


1. Ouvrir un nouveau VI et construire la face-avant suivante :

a. Crer une commande numrique et un indicateur numrique et changer leurs tiquettes comme indiqus b. Placer Entre derreur 3D dans CommandesTableaux et Clusters c. Placer Sortie derreur 3D dans CommandesTableaux et Clusters

Diagramme
2. Construire le digramme suivant :

- 15 -

a. Placer une Structure Condition, dans la palette FonctionsStuctures. b. Placer un Plus grand ou gal 0 ? de la palette Fonctions Comparaison et relier le au terminal Condition de la structure Condition. Dans le cas VRAI: c. Placer la fonction racine carre (FonctionsNumrique) Dans le cas FAUX:

d. Crer une constante numrique gale 9999.90. e. Placer Assembler par nom (Fonctions Clusters). Relier lentre derreur au terminal central de Assembler par nom pour faire apparatre status. Crer les constantes. Relier la sortie derreur. 3. Sauvegarder le VI sous le nom Square Root.vi. 4. Excuter ce VI puis fermer le aprs vos diffrents tests.

- 16 -

TRAVAUX PRATIQUES n2 : ACQUISITION DE DONNEES Exercice 0 Configuration et test de carte dacquisition


Nous utiliserons une carte dacquisition NI-PCI 6221 ainsi quun botier de test BNC 2120 dont la face-avant est dcrite ci-dessous. Ce botier permet de rcuprer les diffrentes entres-sorties ; il dispose de plus dun gnrateur de fonctions, dun capteur de temprature, dun codeur incrmental

La carte PCI 6221 est une carte de conversion analogique/numrique multifonctions connecte sur le port PCI de lordinateur (250 kS/s, 16 bits, 16 entres analogiques, deux sorties analogiques, 24 I/O numriques) On vrifiera tout dabord que les drivers de la carte sont correctement installs : partir de Windows, lancer lutilitaire de configuration Measurement &Automation .(on peut aussi lancer cet utilitaire depuis LabView : Outils Measurement&Automation - 17 -

Explorer). Dans le volet de gauche, slectionner Priphriques et interfaces (ou Devices and Interfaces ). Cliquer-droit sur PCI-6024 (ou PCI 6221) afin de faire apparatre un menu contextuel. Slectionner Proprits . Relever le numro de priphrique affect par le driver NI-DAQ la carte dacquisition. Ce numro qui identifie la carte auprs du systme sera ncessaire par la suite.

Test de la carte : Cliquer sur le bouton Self-Test pour tester la carte. Ce test doit tre ralis avec succs. Pour tester individuellement les diffrentes fonctionnalits de la carte (entres/sorties analogiques, numriques..), cliquer sur Test Panels : une bote de dialogue apparat. Cliquer dans Analog Input pour tester les diffrentes voies dentre analogique. La voie Dev1/ai0 est relie au capteur de temprature du DAQ Signal Accessory (voir description ci-dessous). Cliquer sur le bouton Start pour aqurir les donnes de la voie 0 des entres analogiques. Placer votre doigt sur le capteur et visualiser alors laugmentation de temprature. Vous pouvez aussi tester linfluence du bruit (switch Noise). Cliquer sur le bouton STOP Cliquer sur Analog Output pour envoyer un tension continue ou un signal sinusodal sur une des voies de sortie analogique. Gnrer un signal sinusodal vers la voie 0 de sortie analogique. Relier cette voie la voie 1 des entre analogiques et visualiser le signal sinusodal.

Exercice 1 Acquisition d entres numriques


Lobjectif est de commander lallumage de 4 lampes du botier dinterface (associ la carte dacquisition PCI6024), en fonction dun tat initial fix par un tableau de boolens.

- 18 -

1- Ouvrir un nouveau fichier 2- Crer un tableau de 4 leds circulaires et un placer un bouton STOP (voir face-avant cidessous).

Face-avant :

Diagramme :
3- Raliser le diagramme ci-dessous 4- Configurer le DAQ Assistant en slectionnant Digital Output Port. 5- Excuter le programme et expliquer en dtail le diagramme.

Construire un tableau

Modifier le programme pour obtenir un chenillard, cest--dire un allumage successif des lampes. On utilisera pour cela un registre dcalage, ainsi que la fonction Rotation dans un tableau 1D.

Exercice 2 Acquisition de temprature


Pour raliser cet exercice, il faut utiliser le capteur de temprature disponible sur le botier dinterface avec la carte dacquisition PCI6024 ou PCI6221.

Face-avant
1. Ouvrir un nouveau fichier.

- 19 -

2. Crer lindicateur de temprature comme indiqu ci-dessous. Lafficheur numrique est obtenu en cliquant-droit sur le thermomtre et en slectionnant Etiquette Afficheur numrique.

3. Crer la commande verticale de switch

Diagramme
4. Slectionner le diagramme. 5. Construire le diagramme suivant.

6. 7. 8. 9.

a. Placer lAssistant Express DAQ situ dans la palette FonctionsExpress Entre. Entrer les configurations suivantes : i. Slectionner Analog Input pour le type des mesures. ii. Slectionner Voltage. iii. Slectionner ai0 comme voie de la carte dacquisition. iv. Dans la section Task Timing, slectionner Acquire 1 sample. b. Placer la fonction Convertir des donnes dynamiques situe dans la palette FonctionsExpressManipulation et slectionner Scalaire unique pour le type de donnes rsultantes. c. Slectionner dans FonctionsSlectionner Convert C to F.vi, construit dans le TP1-Exercice 2, et placer ce VI sur le diagramme (attention ne pas le laisser dans une boucle While). d. Raliser le reste du diagramme. Slectionner la face-avant et excuter le programme en continu. Placer votre doigt sur le capteur de temprature et noter laugmentation de la temprature. Arrter le VI. Crer licne suivante pour utiliser ce programme comme un sous-VI.

- 20 -

10. Sauvegarder le fichier en tant que Thermometer.vi dans votre rpertoire personnel et fermer le VI.

Exercice 3 Analyse et Sauvegarde des donnes


Suivre les tapes suivantes pour construire un VI qui mesure la temprature toutes les 0.25s pendant 10s. Pendant lacquisition, le VI doit afficher les mesures en temps rel sur un graphe droulant. Une fois lacquisition termine, le VI trace les donnes sur un graphe et calcule le minimum, maximum, et la moyenne des tempratures.

Face-avant
1. Ouvrir un nouveau VI et construire la face-avant ci-dessous. Ne pas crer pour le moment les indicateurs Mean, Max, et Min. Il faudra les crer dans le diagramme et ils apparatront alors dans la face-avant.

- 21 -

Diagramme
2. Construire le diagramme suivant.

3.

a. Slectionner FonctionsSlection dun VI et choisir Thermometer.vi (de lexercice prcdent). b. Placer Attendre un multiple de ms situ dans la palette FonctionsTemps & Dialogue et crer une constante gale 250. c. Placer la fonction Max & Min dun tableau de la palette FonctionsTableaux. Cette fonction retourne la temprature maximale et minimale. d. Placer le VI Moyenne de la palette FonctionsAnalyse MathmatiquesProbabilits et Statistiques. Ce VI retourne la moyenne des mesures de temprature. e. Crer les indicateurs Max, Min, et Mean. f. Placer le VI Express Write LabVIEW Measurements situ dans FonctionsExpress Sortie. LabVIEW insrera automatiquement la fonction Convertir en donnes dynamique ( DDT) sur le fil connect lentre du signal. 3. Sauvegarder le VI sous le nom Temperature Logger.vi. 4. Afficher la face-avant et excuter le VI. 5. Aprs avoir appuyer sur STOP, une bote de dialogue apparatra. Entrer le nom du fichier pour sauvegarder le tableur. 6. Ouvrir le fichier tableur pour sassurer que le fichier a t correctement cre en utilisant par exemple Notepad ou en crant un VI pour lire le fichier de la manire suivante :

- 22 -

Crer le diagramme suivant :

Placer le VI Express Read LabVIEW Measurement de la palette FonctionsExpress Entre. Configurer correctement le VI Cliquer-droit sur la sortie Signaux et choisir crer un indicateur graphe. 7. Excuter le VI. 8. Sauvegarder et fermer les deux VIs.

Exercice 4 Application : alarme de temprature


Objectif : Modifier le programme prcdent pour dtecter un seuil de temprature fix par lutilisateur. Si la temprature dpasse ce seuil, lordinateur doit bipper une LED, place sur la face-avant, ainsi quune LED place sur le botier (sortie numrique) doivent sallumer. Tracer le seuil sur le graphe de temprature.

On utilisera pour cela la fonction

ou la fonction EXPRESS

en et la fonction

la configurant convenablement, la structure Condition

(dans Fonctions Graphismes et sons Sons) pour raliser le BIP de Bip.vi lordinateur.

- 23 -

TRAVAUX PRATIQUES n3 Utilisation des chanes de caractres et des fichiers COMPTE-RENDU A RENDRE EN FIN DE TP Exercice 1 Chanes de caractres
a) Concatnation de chanes Le but du VI est de crer une chane de caractres du type : la tension mesure est de XX volts par exemple, o XX sera une valeur en flottant convertie en chane de caractres avec 2 chiffres aprs la virgule. Vous devrez galement afficher la chane de caractres dfinitive ainsi que la longueur de la chane. Sauvegarder le VI. Crer une icne et un connecteur.

Fonctions utiliser : b) Extraire un nombre dune chane de caractres Le but de ce VI est dextraire un nombre dune chane de caractres. On devra entrer une chane de caractres du type Il est : 14 heures . Il faudra indiquer la chane en entre, le sparateur (ici, : )et en sortie, indiquer la valeur numrique, ainsi que loffset du nombre par rapport au dbut de la chane de caractres. Sauvegarder le VI.

Fonctions utiliser :

Exercice 2 Gestion de fichiers dentre/sortie


a) Stockage dans un fichier texte Le but de ce VI est dutiliser le VI de lexercice 1 a) comme sous VI de celui-ci. La chane concatne sera enregistre dans un fichier dont lutilisateur devra choisir le nom laide dune bote de dialogue. Fonction utiliser : b) Ouverture dun fichier texte Le but de ce VI est douvrir un fichier et dafficher le contenu du fichier sur la face avant. Fonction utiliser : - 24 -

Exercice 3 : Communication srie


Nous allons mettre en uvre la liaison srie RS232. La configuration dune liaison de communication est toujours la mme : Ouvrir la communication Ecrire/ lire les donnes Fermer la communication Nous allons dans un premier temps communiquer entre un programme LabView et lhyperterminal. Pour cela nous allons relier le port COM1 (utilis par LabView) au port COM2 utilis par lhyperterminal). Certains PC ne disposant plus de deux ports srie, nous utiliserons des adaptateurs USB/srie et le port USB utilis sera le port COM4. a) Envoi dune chane de caractres Le but est de raliser un programme LabView capable denvoyer une chane de caractre par la liaison srie. Lappui sur le bouton envoyer enverra la donne. La transmission se fera 9600 bauds, sans parit, 8 bits de donnes, 1 STOP, sans contrle de flux. 1. Dans un premier temps, utiliser une boucle While classique pour lattente du bouton Envoyer et une structure SEQUENCE par exemple. Regarder le temps de charge CPU (faire CTRL+ ALT+ SUPPR, aller dans le gestionnaire de tche\performances et regarder lutilisation de lUC donc du processeur) Fonction utiliser : 2. Remplacer la boucle While de scrutation du bouton envoi par une boucle cadence 10 ms. En dautres termes, on ne regardera ltat du bouton poussoir que toutes les 10 ms. Regarder nouveau loccupation du processeur. Conclure. b) Rception dune chane de caractres Votre programme devra cette fois envoyer un message qui demandera au destinataire de renvoyer un nombre. Il devra attendre que ce nombre soit retourn et ensuite lafficher lcran. Fonction utiliser :

- 25 -

Exercice 4 : Application lanalyse des mesures


a) Etalonnage dune sonde de temprature par rgression linaire. On ralise une sonde de temprature partir dun capteur de temprature bas cot. Cette sonde dlivre une tension Vmes(t) fonction de la temprature t, exprime en C, laquelle elle est soumise. Pour talonner cette sonde, on la place dans une enceinte thermostate dont on fait varier la temprature sur ltendue de mesure EM = [0C,100C]. Celle-ci est mesure laide dune sonde thermomtrique Pt100 de prcision (100 0C et 138,5 100C). On ralise ainsi un talonnage indirect pour lequel on considre que la temprature donne par la sonde Pt100 est parfaitement exacte. Les rsultats des mesures sont consigns dans le fichier de donnes LabView etalonnage.lvm (qui se trouve dans le rpertoire prof vers lves sous Gandalf (ou Legolas ?)) et seront lues avec le VI express :

laide du bouton charger les donnes . 1) Sur ltendue de mesure EM, on cherche modliser le comportement de la sonde par lapproximation linaire Vmes(t) = Vmes0+a.t. Dterminer laide du VI

Express

la valeur de Vmes0 et de a.

2) Tracer la courbe relle et son approximation linaire sur le mme graphe. 3) Estimer la sensibilit du capteur 4) Donner lcart de linarit L, plus grand cart sur ltendue de mesure entre la caractristique relle et lapproximation linaire donne par la droite. On tracera la diffrence entre la caractristique relle et lapproximation linaire donne par la droite en fonction de t (enC) (sortie rsiduel) 5) Calculer lerreur relative de linarit (en%) eL, cart de linarit normalis lexcursion de Vmes(t) sur ltendue de mesure.

- 26 -

b) Simulation sous LabView dune variable alatoire gaussienne et de sa moyenne. Lobjectif de cet exercice est de comparer la moyenne et lcart-type dune variable alatoire gaussienne et de sa moyenne. 1) Tracer le signal temporel et lhistogramme dune variable alatoire X de distribution gaussienne prendra 1000 chantillons pour X de moyenne nulle et dcart-type 4. On

2) Tracer lhistogramme de la moyenne de cette variable alatoire note Y, et comparer la moyenne et lcart-type des deux variables alatoires. On prendra 10000 chantillons pour Y. Pour calculer la moyenne, on utilisera la fonction Lhistogramme est le graphe obtenu sous forme de barres en portant la valeur des signaux en abscisse et la frquence dobtention en ordonne (en % ou en amplitude). On utilisera le VI express suivant :

- 27 -

TRAVAUX PRATIQUES n3bis : Exercices dapplication Exercice 1 - Application : Simulation dun oscilloscope et analyseur de spectre (2 heures)
Le but est d'tudier l'effet d la manire dont un signal est chantillonn sur le spectre qui est obtenu par transformation de Fourier discrte. Le cahier des charges est le suivant : Gnration de signaux 1) Pouvoir gnrer un signal sinusodal, triangulaire ou rectangulaire ; l'utilisateur choisit la frquence du signal en Hz, le nombre de priodes (pas forcment entier) et la frquence dchantillonnage. 2) Afficher ce signal avec en abscisse, le temps (en seconde). Fentrage 3) Pouvoir choisir une fonction de fentrage (aucune, Hamming, triangle) par laquelle multiplier le signal gnr avant d'en faire la TFD. 4) Afficher le signal rsultant de la multiplication du signal gnr et de la fonction de fentrage. 5) Afficher la transforme de Fourier discrte avec en abscisse, la frquence (en Hz). Le VI ralis pourrait ressembler celui reprsent la fin. Diffrentes options Vous pouvez galement inclure une option pour reprsenter soit le spectre en amplitude (module de la TFD), en chelle linaire ou logarithmique, soit celui en puissance, soit la phase de la TFD. Outils : -les gnrateurs de waveforms dans la palette "Analyse - gnration de waveforms" ; -les outils de TFD dans la palette "Analyse - traitement des signaux " ; -les fonctions de fentrage dans "Analyse Traitement du Signal-Fentres" ; En face-avant, on utilisera la commande Enum dans Menus droulants et Enumrations pour proposer le choix de la fonction de fentrage. Pour choisir entre affichage linaire et logarithmique par programmation, il faut crer pour l'afficher un Noeud de proprits, en cliquant-droit sur le terminal de l'afficheur.

- 28 -

Ensuite,

en

cliquant-droit

sur

aller

dans

le

menu

Proprits Echelle X Reprsentation pour crer en criture pour obtenir Reprsentation pour modifier le bon paramtre.

. Changer et aller dans Aide pour

Analyse
Excuter le programme en faisant varier les diffrents paramtres. Vrifier le thorme de Shannon (en faisant varier la frquence dchantillonnage) et analyser linfluence du fentrage temporel sur la rponse frquentielle.

Face-avant obtenir :

- 29 -

Exercice 2 - Lecture, traitement, et criture dun fichier de donnes (2 heures)


Le but est de traiter une chane complte douverture de fichier de donnes comportant des caractres et des valeurs numriques, de traitement des donnes numriques et des chanes de caractres, et de rcriture dans un fichier de sortie. On dispose dun fichier de donnes anglelabview.dat . Ouvrir ce fichier laide de lditeur de votre choix. Ce fichier est compos dune premire ligne de caractres puis de donnes numriques sous forme de tableau de dimension 9001x29. Le cahier des charges se dcrit en 4 parties : Ouverture et lecture du fichier de donnes Ouvrir le fichier de donnes laide dune bote de dialogue, lire les valeurs numriques du fichier (et les convertir en tableau 2D) et les chanes de caractres, afficher le tableau complet des valeurs numriques, la taille du tableau, ainsi que la ligne de caractres (premire ligne du fichier). On pourra utiliser les VI suivants :

Extraction des donnes numriques et des caractres utiles On dispose dun tableau 2D des valeurs numriques et de la ligne de caractres. On veut maintenant extraire les premire et troisime colonnes du fichier sous la forme de deux lignes spares, lune donnant le temps, lautre un angle. A partir de ces deux lignes, tracer grce un graphe XY, les angles en fonction du temps. On veut par ailleurs extraire de la chane de caractres complte la chane de caractres qui se trouve sur la premire colonne et sen servir pour aller modifier automatiquement la lgende de laxe des x de la courbe. On pourra utiliser les VI suivants :

(nud de proprits)

Affichage des donnes dans un graphe XY, filtrage et affichage des donnes filtres. Les donnes obtenues seront filtres laide dun filtre de Butterworth passe-bas dordre 2. Choisir la frquence de coupure de manire ne garder que le fondamental. Tracer les donnes filtres en fonction du temps laide dun graphe XY. On pourra utiliser les VI suivants :

- 30 -

Ecriture des donnes filtres dans un fichier texte sous la forme de 2 colonnes avec sur la premire ligne une chane de caractres. Les donnes filtres obtenues seront enregistres dans un fichier tableur avec sur la premire colonne : la chane de caractres temps puis les diffrents instants, et sur la deuxime colonne : la chane de caractres donnes filtres puis les valeurs des donnes filtres. Le nom du fichier sera choisi laide dune bote de dialogue. On pourra utiliser les VI suivants :

- 31 -

TRAVAUX PRATIQUES n2bis : Pilotage dappareils de mesure (En salle E49) Trac automatique dun diagramme de Bode laide dun multimtre et dun GBF pilotable par un bus GPIB
Au dpart, le GPIB (General Purpose Interface Bus) fut dvelopp par Hewlett-Packard (HP) au dbut des annes 70, afin de connecter et contrler des instruments programmables produits par HP. Cependant, avec l'introduction de commandes numriques et d'quipements de test programmables, il a t ncessaire de crer un standard, le IEEE 488, qui rponde certaines spcifications. Ce standard a t amlior par la suite et a conduit successivement la norme IEEE 488.1 puis au driver IEEE 488.2, qui apporte des atouts supplmentaires au systme par la mise en place de commandes de logiciels.

Groupe 1 : Gestion du multimtre GPIB (34401 Agilent)


Cbler rapidement un filtre passe-bas RC ayant une frquence de coupure de 1kHz. Mettre en entre un gnrateur de fonctions non pilot et relever laide du multimtre les valeurs des tensions en sortie du filtre quand vous faites varier la frquence dentre du GBF. Raliser la fonction qui permet de calculer le gain en dB du filtre sachant que lamplitude de lentre sera donne par le groupe 2.

Groupe 2 : Gestion du gnrateur de fonction GPIB (HM8130 Hameg ou 33220 Agilent)


Gnrer un signal sinusodal damplitude 5 V dont la frquence varie de 100Hz 100kHz avec 100 points entre les deux frquences. Rcuprer dans un programme LabView lamplitude et les frquences.

Groupe 1 et 2 : trac du diagramme de Bode


Assembler vos deux programmes pour tracer automatiquement le diagramme de Bode (amplitude uniquement du filtre ralis).

- 32 -