Beruflich Dokumente
Kultur Dokumente
INFORMATIONS IMPORTANTES
Objet du polycopi
Ce polycopi correspond aux TPs de Labview que vous allez effectuer cette anne. Vous dcouvrirez la fois la mise en oeuvre de Labview, mais galement les fonctions importantes qui vous permettrons de faire de la gestion de fichier, de l'acquisition de donnes et du traitement numrique ou encore de la communication srie, USB et Ethernet.
Notation
La notation du module Labview comprendra deux notes: - Une note de DS de TP que vous effectuerez la dernire sance de TP. Ce partiel durera environ deux heures et ncessitera une partie prparation et une partie programmation. - Une note de compte-rendu de TP. Cette note se dcomposera en deux parties: Une partie prparation de TP. Dans cette partie prparation nous souhaitons y trouver : La liste des entres (commandes de face avant o signaux venant de l'extrieur)/sorties (indicateurs de face avant, ou signaux renvoys) du programme. Une analyse structure du programme mettre en oeuvre, mme si elle est trs succincte. Les variables internes de type globales ou locales que vous souhaitez utiliser si ncessaire. Cette partie sera rendue en dbut de sance et note sur 5. Une partie TP avec les impressions crans des TPs raliss et not sur 15.
Sommaire
TP1 : Mise en uvre des fonctions de base et des boucles p. 4
p. 6
p. 8
p. 14
p. 17
Y2 Y1
X1
X2
A.2)Crer un sous-VI pente de la courbe A partir du VI prcdent, crez un sous-VI avec son icne et son connecteur et utilisez le dans un autre VI.
B) Calculatrice
B.1) Calculatrice On entrera deux valeurs numriques. Le VI devra calculer la somme, la soustraction, le produit, la division et la moyenne des deux nombres. B.2) Calculatrice avec boucle While Reprendre le VI prcdent, cette fois-ci, il devra sexcuter en permanence. B.3) Calculatrice avec choix du calcul Reprendre le VI prcdent. Cette fois-ci, lutilisateur pourra choisir le type de calcul quil souhaite utiliser laide dun menu droulant.
Le tableau Entre Analogique permet de lire les entres analogiques. Assurez-vous que le signal sinusodal du gnrateur de fonction est connect sur lentre analogique 0. Appuyez sur Start aprs avoir slectionn le canal 0. Vous devriez voir apparatre le signal sinusodal que vous avez acquis, la sinusode apparatra peut-tre dforme. 6. Dans le panneau Entre analogique, changer lentre sur 1. Appuyer sur Start. Vous devriez voir apparatre une tension constante proche de zro. Dans le coin suprieur gauche du panneau de test, vous devriez voir apparatre les modes dacquisition suivants. Continu: Affiche les donnes de faon continue. A la Demande: Affiche seulement un cran de donne. Fini: Affiche continuellement un cran la fois. Les modes Fini et Continu permettent dajuster la vitesse dacquisition (vitesse dchantillonnage). Plus celle-ci est grande, plus la courbe apparatra prcise. 7. Excuter les tapes suivantes pour que le graphique ait une meilleure allure. Diminuer la frquence et lamplitude du gnrateur de signaux. Sur le panneau de test, changer Mode dacquisition en Fini ou Continu et essayer diffrentes valeurs pour la vitesse dacquisition jusqu obtenir une belle sinusode. 8. Cliquer sur le tableau Sortie Analogique. Dans cette boite de dialogue vous pouvez fixer une tension DC ou sinusodale sur une des sorties analogiques de la carte DAQ. Excuter les tapes suivantes pour envoyer une tension continue sur la sortie 1. Vrifier que la sortie analogique 0 est connecte sur lentre analogique 1. Le Mode de sortie devrait dj tre positionn sur tension continue. Entrer 5V comme tension continue et cliquer Mise jour de la sortie. 9. Cliquer sur le tableau Entre analogique. Changer le canal sur 1. Vous devriez voir apparatre une tension continue de 5V sur le graph. Vous pouvez rendre le signal plus lisible en slectionnant comme mode dacquisition Continu. Si vous ne voyez pas de diffrence, cliquer sur Start. 10. Cliquer sur le tableau E/S Compteur. Excuter les tapes suivantes pour tester le fonctionnement du compteur/timer. : Changer le mode du compteur pour Comptage sur fronts. Le compteur est maintenant configur pour compter les impulsions dun signal gnr par la carte 20 MHz. Cliquer sur Start. La valeur du compteur doit sincrmenter rapidement. Cliquer sur Stop pour arrter le compteur. Changer la frquence du comptage 100 kHz en cliquant sur Source dhorloge et en faisant passer la valeur de 20 MHz 100 kHz. Cliquer sur Start. Le compteur doit sincrmenter beaucoup plus lentement. Cliquer sur Stop pour arrter le compteur. Cliquer sur le tableau E/S numriques. Ce tableau nous donne accs aux 8 lignes numriques du bornier et nous permet de positionner chaque ligne en entre ou en sortie. Fermer le panneau de test et quitter MAX.
B) Partie 2 : VI Voltmtre Excuter les tapes qui suivent pour crer un VI qui acquerra un signal sinusodal dun gnrateur de fonction et le mettra lchelle. Connecter le gnrateur de fonction du bornier sur lentre analogique 0 et rgler sa frquence 500Hz. 1. Placer un graphique sur la face avant et un Assistant DAQ sur la face arrire. Il se trouve dans la palette Fonctions >> Entres. Une fentre va apparatre et vous demander quel type de mesures vous souhaitez faire. Choisissez Entre Analogique. Configurez lentre pour faire une acquisition de tension sur le canal 0 du composant 1.
Figure 2. Assistant DAQ 2. Les trois parties importantes de la configuration de lassistant DAQ sont : 1) Paramtre, 2) lacquisition, et 3) Task Triggering. On souhaite acqurir un chantillon. 3. Dans Paramtres >> Echelle utilisateur la valeur devra tre : <Pas dchelle>. Cliquer sur la flche qui descend et slectionner Crer Nouveau. Lcran de la figure 3 va apparatre.
10
Figure 3. Mise lchelle personnalise dans lassistant DAQ Nous allons amplifier le signal sinusodal par un facteur 5. Choisir Linaire et entrer Amplificateur pour nom de lchelle. 4. Dans la boite dnomme Pente entrer la valeur 5. Dans Unit de lchelle entrer Scaled Waveform. Cliquer OK pour finir la configuration de la mise lchelle. 5. Maintenant que lentre est mise lchelle avec un rapport 5, il va falloir ajuster lamplitude des donnes. Dans la partie du DAQ assistant appele Plage dentre, spcifier une plage en prenant en compte la mise lchelle choisie. Par exemple, si votre gnrateur de fonction sort un signal de +/- 1V, et que vous lui mettez un gain de 5, lchelle dentre sera de +/-5V ou plus. Cliquer OK pour fermer lAssistant DAQ. 6. Construire une face arrire similaire celle montre en Figure 4. Le VI Time Delay VI peut tre trouv dans la palette Fonctions >> Contrle dexcution >> Time Delay. Son but est de temporiser lexcution de la boucle While.
Figure 4. Exercice 2 Face arrire 1. Afficher la face avant et lancer le VI. Le graphique va afficher la sinusode mise lchelle sur lcran. Faites varier la frquence du signal et constater la variation de limage sur lcran. 2. Sauvegarder et fermer le VI. 11
C) Partie 3 VI Acquisition Finie Dans cet exercice, vous allez acqurir des donnes dun canal de votre carte dacquisition et lafficher sur lcran en utilisant les VIs DAQmx. Avec une acquisition finie, LabVIEW indique la carte DAQ combien de points elle doit acqurir et quelle frquence les acqurir. Le Timer a alors la responsabilit de la carte DAQ. Dans une acquisition finie, la carte DAQ contrle tous les aspects de lacquisition. Par opposition avec une acquisition Timer logiciel, lordinateur est seulement responsable de la gestion de lacquisition qui peut tre problmatique dans les cas o lordinateur ne pourrait subitement pas donner la priorit au processus dacquisition de donnes. 1. Ouvrir un nouveau VI et crer la Face Avant suivante : (Figure 5).
Figure 5. Exercice 3 face Avant Le contrle DAQmx Task Name se trouve dans E/S >> DAQmx Name Controls >> DAQmx Task Name. 2. Crer la face arrire suivante (Figure 6). Le but de ce VI est dacqurir une tension applique sur lentre analogique 0.
12
Figure 6. Face arrire pour lexercice 3 Les VIs DAQmx peuvent tre trouvs sous Functions >> All Functions >> NI Measurements >> DAQmx Data Acquisition. Les 4 VIs utiliss ici sont dans lordre : DAQmx Timing, DAQmx Start Task, DAQmx Read, et DAQmx Stop Task. 3. Positionner DAQmx Timing VI sur Sample Clock. 4. Positionner DAQmx Read VI sur Analog, 1 Channel, 1 Sample, Double. 5. Sauver le VI sous Acquisition Finie.vi. 6. Aller sur la face avant. Selectionner la tche dans le contrle DAQmx Task Name que vous avez utilis dans lexercice 2. 7. Appuyer sur bouton Run. Le programme va acqurir des donnes une vitesse de 10000 chantillons par secondes et les afficher sur lcran. Comme le nombre dchantillons acqurir est fix 10000, ce programme va acqurir les donnes pendant une seconde et envoyer le rsultat. 8. Sauver et fermer le VI. D) Acquisition de donnes et stockage dans un fichier. Le but de ce VI sera de reprendre le VI de lexercice 2. Une fois les donnes rcupres, lutilisateur appuiera sur le bouton STOP. Les dernires donnes acquises devront alors tre enregistres dans un fichier .txt . E) Affichage dune courbe stocke dans un fichier Cette fois, ouvrez un fichier puis envoyez en continu les donnes sur une sortie analogique.
13
b.2) Remplacer la boucle While de scrutation du bouton envoi par une boucle cadence 10 ms. En d'autres termes, on ne regardera l'tat du bouton poussoir que toutes les 10ms. Regarder nouveau l'occupation du processeur. Conclure. 1.2) Rception d'une chaine de caractre Votre programme devra cette fois envoyer un message qui demandera d'envoyer un nombre. Il devra attendre que ce nombre soit retourn et ensuite l'afficher l'cran. Le caractre de fin de transmission sera dans notre cas la touche entre (CR+LF). En l'occurence LF. 14
Ouvrir un port de communication TCP Attendre qu'un client vienne se connecter Echanger des donnes Fermer la connexion
Nous allons utiliser le port de connection local au serveur 1050. Afin de ne pas tre bloquer par le temps d'attente, on mettra -1 comme Timeout. Celui-ci sera donc infini. Le but du programme est d'attendre qu'un client TCP se connecte et envoie une chaine de caractre. On renvoie ensuite au client le message Bienvenu sur le serveur NOM DE VOTRE MACHINE . Ecrire l'analyse structure de ce programme et les entres/sorties. 2.2) Cration de l'application client TCP Le rle du client TCP est de se connecter sur un port de communication distant sur la machine Serveur ouvert par le programme Serveur TCP . Le numro du port de communication distant sera 1080. Le port de communication local devra, soit tre suprieur 1024, soit ne pas tre dfini. Un port sera alors attribu par dfaut. Le principe de base du client TCP est :
Ouvrir un port de communication TCP et se connecter sur un serveur Echanger des donnes Fermer la connexion
Le but du programme est de se connecter au serveur TCP, de lui envoyer une chaine de caractres Le client souhaite se connecter . On attend ensuite la rponse du serveur et on l'affiche l'cran. Ecrire l'analyse structure de ce programme et les entres/sorties. Lancer les deux programmes sur deux postes diffrents aprs avoir indiqu le nom du serveur sur le poste client. Vrifier le bon fonctionnement. 15
2.3) Etude des trames changes Nous allons maintenant regarder les trames changes entre les deux Pcs. Pour cela, nous disposons du logiciel WireShark (dont le raccourcis est sur le bureau). Dans un premier temps, il faut configurer la carte rseau dont on veut acqurir les trames. (Menu Capture\Interfaces). Choisir la carte Broadcom NetXtreme et cliquer sur Start. Lancez le serveur TCP. Lancez le client TCP. Une fois les deux Vis arrts, arrtez l'acquisition et observez les trames changes. Pour simplifier la lecture, nous n'allons retenir que les adresses IP de la machine serveur. Dans cet exemple 152.77.62.67 en tapant dans Filter : ip.addr == 152.77.62.67 puis cliquer sur Apply.
16
Liaison Ethernet
Configuration du GBF Dans un premier temps, il sera ncessaire de configurer le GBF. Dans notre cas, il sera ncessaire de lui attribuer une adresse IP, un masque de sous-rseau et une passerelle. Allez dans le menu de l'oscilloscope pour le configurer. Votre enseignant vous donnera les adresses IP des diffrents GBFs.
Configuration de l'oscilloscope Il faut ensuite configurer l'oscilloscope pour pouvoir communiquer avec lui. F) Pour les TDS 1002, il s'agit d'une liaison srie standard. Il faudra donc rgler vitesse, nombre de bits STOP, contrle de flux, etc... de faon cohrente avec Labview. On connectera le PC sur la liaison srie COM2. (La liaison situe sur la partie basse du PC). G) Pour les TDS 1002B, il s'agit d'une liaison USB. Il faudra donc attendre que l'oscilloscope soit reconnu par le PC et si ncessaire installer le driver utile. Si votre poste vous demande d'installer un driver. Contactez votre enseignant. Il dispose du CD et d'un login administrateur. Il faut ensuite aller dans le NI-MAX pour regarder si parmis les composants installer on trouve l'oscilloscope. Si oui, il sera directement accessible comme s'il s'agissait d'une communication VISA standard.
17
Pilotage du GBF Dans un premier temps, on va piloter le GBF via Ethernet. Pour cela, il faudra ouvrir une communication TCP avec le GBF. Le port de communication du GBF est 5024. On fixera le Timeout l'infini. Le but du programme est que l'utilisateur rentre la ligne de commande sous forme de chane de caractres. (Voir annexe 1) puis appuie sur le bouton envoyer. On ajoutera la fin de chaque commande la constante (LF + CR). Il faut ensuite envoyer les mots de commande.
Pilotage de l'oscilloscope Le pilotage de l'oscilloscope Tektronix est un peu plus complexe. En effet, dans le cas de l'oscilloscope, il faut lui envoyer des mots de commande, mais galement attendre les rponses de celui-ci. L encore, les mots de commande et les rponses seront envoyes sous forme de chanes de caractres. 4.1) Dans un premier temps, il va falloir ouvrir une communication srie (ou USB) avec l'oscilloscope Tektronix. On lui demandera alors son nom (chaine de caractres *IDN?) et on attendra sa rponse. On fermera alors la communication. L aussi, il faudra penser mettre la fin de la communication la constante (LF+CR). 4.2) Envoi permanente de donnes. Cette fois ci, nous allons ouvrir une communication srie. Demander l'identit de l'oscilloscope (commande *IDN?), effectuer un Autoset (commande AUTOSet Execute), ensuite, l'utilisateur devra rentrer le mot de l'ordre envoy l'oscilloscope dans une chane de caractre et appuyer sur le bouton envoyer pour que l'ordre parte. On devra distinguer si on demande l'oscilloscope d'effectuer une fonction (celui-ci ne donne alors pas de rponse), ou alors si on lui demande une mesure. Il faut alors attendre la rponse de l'oscilloscope que l'on affichera sous forme de chane de caractres. (Vous pouvez consulter le manuel de programmation des TDS1002 et 1002B). 4.3) Conversion en nombre Il faut convertir la chaine de caractre en nombre. Modifier le VI prcdent pour obtenir le nombre sous forme numrique.
Modification de valeur du GBF et acquisition de mesure Nous allons maintenant envoyer un signal en choisissant la frquence et l'amplitude du signal, puis nous ferons une acquisition de la tension de l'oscilloscope et de la frquence mesure.
18
5.1) Raliser un programme qui ouvre une communication Ethernet/TCP avec le GBF Agilent 33220A. Il faudra penser valider la sortie au dbut du programme et configurer le signal en tant que sinus. (Reprendre les VIs crs prcdemment) Cette fois-ci, l'utilisateur devra pouvoir rgler : L'amplitude du signal de sortie L'offset du signal de sortie La frquence du signal de sortie On attendra que l'utilisateur ait choisit les paramtres du signal de sortie, puis on les enverra les trois avec dans l'ordre : l'amplitude, l'offset et la frquence. 11. Pour chaque action ci-dessus quelle est la commande effectuer? 12. Ecrire l'analyse structure 13. Raliser le programme 5.2) Faire un programme qui configure la liaison USB de l'oscilloscope. Aprs avoir demander l'identit de l'oscilloscope, vous devrez chaque fois que l'utilisateur appuie sur Acqurir : Faire un Autoset, Mesurer la frquence, mesurer l'amplitude, stocker la valeur dans un tableau. Dans un premier temps, nous allons crer un sous-VI qui on enverra la mesure (sous forme de chaine de caractres) que l'on veut envoyer l'oscilloscope et qui nous renverra la mesure sous forme de nombre. 5.2.1) Quels sont les paramtres en entre et en sortie du sous-VI? 5.2.2) Ecrivez l'analyse structure 5.2.3) Crer le sous-VI, ainsi que son icne et son connecteur 5.2.4) Crer le VI final utilisant le sous-VI prcdent. 5.3) Construisez le VI final. Vous aurez deux programmes qui tourneront en parallle dans deux boucles while indpendantes. Un programme qui pilotera le GBF (programme du 5.1) et un programme qui pilotera l'oscilloscope (programme du 5.2). Il pour tre judicieux de prvoir deux LEDs qui indiquent l'utilisateur quand les phases d'initialisation des deux priphriques sont termines.
19