Exercices d'initiation à LabVIEW



Documents pareils
Initiation à LabView : Les exemples d applications :

1. Introduction Création d'une macro autonome Exécuter la macro pas à pas Modifier une macro... 5

AP1.1 : Montages électroniques élémentaires. Électricité et électronique

Introduction : Cadkey

ET 24 : Modèle de comportement d un système Introduction à Labview et initiation à la réalisation d un Instrument Virtuel (VI).

Introduction à la présentation graphique avec xmgrace

Adobe Illustrator Logiciel de dessin vectoriel et de Cartographie Assistée par Ordinateur

INSERER DES OBJETS - LE RUBAN INSERTION... 3 TABLEAUX

Securexam Consignes pour l EFU Les 2, 3 et 4 juin 2015

Comment enregistrer simplement toute musique restituée par votre PC

Sélection du contrôleur

Introduction à MATLAB R

PRISE EN MAIN D UN TABLEUR. Version OPEN OFFICE

Découverte du logiciel ordinateur TI-n spire / TI-n spire CAS

ET 24 : Modèle de comportement d un système Boucles de programmation avec Labview.

GUIDE D UTILISATION DE L ISU SEPTEMBRE 2013 GUIDE D UTILISATION DU NAVIGATEUR UIS.STAT (VERSION BÊTA)

Utilisation du logiciel GALAAD

Prise en main du logiciel Smart BOARD

LibreOffice Calc : introduction aux tableaux croisés dynamiques

Manuel utilisateur Netviewer one2one

SHERLOCK 7. Version du 01/09/09 JAVASCRIPT 1.5

EXCEL PERFECTIONNEMENT SERVICE INFORMATIQUE. Version /11/05

Utilisation du logiciel Epson Easy Interactive Tools

Table des matières. F. Saint-Germain / S. Carasco Document réalisé avec OpenOffice.org Page 1/13

MANUEL D UTILISATION PRO-FACE

SpeechiTablet Notice d utilisation

COMMENCER AVEC VUE. Chapitre 1

KM2 W1 EVC1 M3~ Manuel AUTOMSIM API 24V. BP Dcy 1MINI 1MAXI.

les Formulaires / Sous-Formulaires Présentation Créer un formulaire à partir d une table...3

Dans l idéal, ceci devrait être fait en amont pour chaque image envoyée sur l espace de stockage de votre site internet.

TABLE DES MATIÈRES 1. DÉMARRER ISIS 2 2. SAISIE D UN SCHÉMA 3 & ' " ( ) '*+ ", ##) # " -. /0 " 1 2 " 3. SIMULATION 7 " - 4.

Prise en main du logiciel. Smart BOARD Notebook 10

NOTICE D' UTILISATION CAMWORKS FRAISAGE. Luc Vallée Lycée Blaise Pascal Segré

Utilisation du visualiseur Avermedia

Mini_guide_Isis.pdf le 23/09/2001 Page 1/14

Manuel d utilisation 26 juin Tâche à effectuer : écrire un algorithme 2

1. Installation de COMPTINE

LECON 2 : PROPRIETES DE L'AFFICHAGE Version aout 2011

Traitement de texte : Quelques rappels de quelques notions de base

Chapitre 4 Pierre, papier, ciseaux

DOSSIER D'ACTIVITES SUR TUXPAINT Dessiner avec Tuxpaint. Objectifs :

Petit guide d utilisation Prezi

L espace de travail de Photoshop

Un exemple avec WORKSPACE d'interwrite

Utiliser Dev-C++ .1Installation de Dev-C++ Table des matières

Utilisation de la clé USB et autres supports de stockages amovibles

TUTORIEL IMPRESS. Ouvrir Impress cocher «présentation vierge», «suivant» cocher «écran», «suivant» cocher «standard», «créer»

Licence de Biologie, 1ère année. Aide. [Aide 1] Comment utiliser l'explorateur Windows? Comment créer des dossiers?

La Clé informatique. Formation Excel XP Aide-mémoire

Note de cours. Introduction à Excel 2007

@telier d'initiation

pcon.planner 6 Préparer et présenter une implantation en toute simplicité

Si vous décidez d utiliser un autre chemin, c est ce nouveau chemin qu il faudra prendre en compte pour la sauvegarde. Cf. : Chapitre 9 Sauvegarde

LOGICIEL DC4D MONITOR

GUIDE DE DÉMARRAGE. SitagriPro Infinite FINANCEAGRI. Un service. c o r p o r a t e

Création d'un questionnaire (sondage)

ACQUISITION ANALYSE PRÉSENTATION

Mon aide mémoire traitement de texte (Microsoft Word)

Mini_guide_Isis_v6.doc le 10/02/2005 Page 1/15

Créer une base de données

Utilisation du client de messagerie Thunderbird

l'ordinateur les bases

LPP SAINT JOSEPH BELFORT MODE OPERATOIRE ACTIVINSPIRE. Bonne utilisation à toutes et tous! UTILISATION DES TBI LE LOGICIEL ACTIVINSPIRE

Le langage C. Séance n 4

AGASC / BUREAU INFORMATION JEUNESSE Saint Laurent du Var Tel : bij@agasc.fr Word: Les tableaux.

IUT BREST UN LOGICIEL SCADA : PC VUE 2010 DEP.GMP

Info0101 Intro. à l'algorithmique et à la programmation. Cours 3. Le langage Java

Dragon Naturally Speaking 13

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

Le logiciel de création de site internet IZISPOT est un outil très puissant et qui est assez simple après quelques temps d utilisation.

Guide d Installation et de Configuration du Logiciel

Guide pour la réalisation d'un document avec Open Office Writer 2.2

Manuel de dessin Floorplanner. Floorplanner. Manuel de dessin. Page. Sujet. Sujet. Page Floorplanner Avancé. 1.

1 Démarrer L écran Isis La boite à outils Mode principal Mode gadget Mode graphique...

«Petit guide d utilisation Prezi» par Marc Nolet

Utilisation de l'outil «Open Office TEXTE»

POUR ALLER UN PEU PLUS LOIN SUR UN TABLEUR. Version EXCEL

Niveau 1. Atelier d'initiation à l'ordinateur ... Fondation de la Bibliothèque Memphrémagog inc. Magog (Québec) J1X 2E7 Tél.

Procédure appropriée pour éditer les diagrammes avec ECM Titanium

USTL - Licence ST-A 1ère année Codage de l information TP 1 :

VOCABULAIRE LIÉ AUX ORDINATEURS ET À INTERNET

TABLEAU CROISE DYNAMIQUE

Automatisation d'une Facture 4. Liste Déroulante Remises Case à cocher Calculs

Comment sauvegarder ses documents

MICROINFORMATIQUE NOTE D APPLICATION 1 (REV. 2011) ARITHMETIQUE EN ASSEMBLEUR ET EN C

Avant-propos FICHES PRATIQUES EXERCICES DE PRISE EN MAIN CAS PRATIQUES

Assistant d e tablissement de Tableaux

TP Blender n 2 : Importation d un modèle SketchUp et animation

Guide de l utilisateur. Faites connaissance avec la nouvelle plateforme interactive de

LES TOUT PREMIERS PAS

Conférence Web sur demande de TELUS Guide de référence rapide

Choisir entre le détourage plume et le détourage par les couches.

Introduction à Eclipse

Guide d utilisation pour

PRODIGE V3. Manuel utilisateurs. Consultation des métadonnées

Le langage de programmation Labview IUT1 Grenoble Département GEII1 Année 2007/2008

1) Installation de Dev-C++ Téléchargez le fichier devcpp4990setup.exe dans un répertoire de votre PC, puis double-cliquez dessus :

Transcription:

Exercices d'initiation à LabVIEW Initiation...3 1. Utiliser un VI existant...3 2. Faire une opération simple sur un nombre entré par l'utilisateur ; faire de ce programme un vi ; l'utiliser depuis un autre programme...3 Les graphes...4 3. Tracer une courbe au cours du temps (WAVEFORM CHART)...4 Les chaînes de caractères...4 4. Manipuler des chaînes de caractères...4 5. Concaténer des chaînes de caractères...4 6. Extraire un nombre d'une chaîne de caractères...5 7. Transformer un entier en hexadécimal...5 Les booléens...5 8. Utiliser des indicateurs et contrôleurs booléens...5 9. Les "mechanical actions" associés aux boutons booléens...5 La mise au point d'un programme, l'utilisation de l'aide...5 10. Corriger une erreur...5 11. Suivre pas à pas une exécution...6 12. Utiliser l'aide...6 La structure de choix Case, les menus...6 13. Utiliser la structure case pour une question/réponse....6 14. Utiliser la structure case pour un choix dans un menu....6 Les tableaux à une dimension...7 15. Faire un tableau de réels et le tracer....7 16. Faire un tableau de LEDS (booleens) représentant un entier en binaire...7 La structure For...7 17. Utilisation d'une boucle for simple...7 18. Utilisation d'une boucle for pour un calcul incrémenté...7 19. Générer un tableau de mesures et en calculer la moyenne et l'écart type...8 La structure While...8 20. Utilisation d'une boucle de type while simple....8 La structure Sequence...8 21. Utilisation d'une séquence...8 Les agrégats (clusters)...9 22. Utilisation des agrégats (clusters)...9 Les graphes XY...9 23. Tracé de Y fonction de X : graphes XY....9 24. Tracé de deux courbes (X,Y)....9 25. Tracé d'une courbe avec barre d'erreur : X, Y ± Y (facultatif)...10 26. Graphes XY au cours du temps et pas à la fin de la boucle...10 Les "formula node"...10 27. Utilisation du "formula node" pour calculer simplement des formules mathématiques...10 Les variables locales et globales...11 1

28. Utilisation des variables locales dans un programme...11 29. Utilisation des variables globales....11 Les fichiers...12 30. Les fichiers texte...12 31. Les fichiers Datalog (facultatif)...12 Simulation d une mesure bruitée et filtrage...12 32. Génération d une mesure bruitée (facultatif)...12 33. Utilisation d un filtre (facultatif)...12 Mesure à intervalles fixes ou contrôlés par l utilisateur...12 34. Simulation d une mesure (facultatif)...13 35. Prise d une mesure à intervalle régulier (facultatif)...13 36. Prise d une mesure à la demande (facultatif)...13 2

Initiation 1. Utiliser un VI existant a) Dans la bibliothèque d exemples fournie (DEMO.LLB), ouvrez le programme VI_Simple.vi et essayez les divers boutons de commande b) Ouvrez le diagramme de ce VI et comprenez ses divers éléments 2. Faire une opération simple sur un nombre entré par l'utilisateur ; faire de ce programme un vi ; l'utiliser depuis un autre programme Slide Knob 4,0 6,0 Meter 10 8 2,0 8,0 0,0 2,0 4,0 6,0 8,0 10,0 6 4 0,0 10,0 2 0 a) Afficher un contrôleur numérique Knob et un indicateur numérique Meter en panneau avant (menu Numeric de Controls) b) Dans le diagramme, écrire un programme tel que Meter renvoie 2X+3 où X est la valeur donnée de Knob (menu Numeric de Functions et des fils) c) Sauver le programme (save as) sous le nom Operation simple.vi d) Tester le fonctionnement en mode Run puis Run Continuously e) Changer le bouton Knob par un bouton Slide : vérifier l'effet. Modifier les noms de Knob et de Slide (par exemple : Entrée/Sortie) f) Cliquer sur le panneau avant, avec le bouton droit de la souris, sur le petit schéma dans le coin en haut à droite. Choisir Edit Icon, puis dessiner un rectangle blanc (option 256 colors) et écrire dedans Mult. et presser OK. Puis choisir Show Connector au même endroit. Il propose deux rectangles : une entrée et une sortie (si ce n est pas le cas, cliquez sur Pattern au même endroit pour obtenir les deux rectangles). Cliquer avec l'outil fil dans un rectangle, puis sur le contrôleur ou l'indicateur correspondant dans le panneau avant : cela définit les entrées et sorties de l'icône. Aller dans Windows/Show VI info, et entrer un texte clair qui explique ce que fait ce vi. Sauver, et fermer g) Ouvrir un nouveau programme avec un contrôleur "X", un indicateur "RESULTAT", qui renvoie dans "RESULTAT" 2X+3 en utilisant l'icône Operation simple.vi (dans le panneau diagramme, faire appel au vi Operation simple.vi (via Functions et Select a VI )). Vérifier que cela marche. Sauver sous Utiliser une icone.vi 3

Les graphes 3. Tracer une courbe au cours du temps (WAVEFORM CHART) a) Placer dans le diagramme d un nouveau VI un générateur de nombres aléatoires (Functions, Numeric, Random Number) qui va simuler une mesure physique. Lui appliquer à nouveau l'opération 2X+3 et envoyer le résultat dans un indicateur. Sauver sous Simulation manip.vi. Editer le connecteur correspondant à une sortie (le nombre aléatoire *2+3). b) Afficher sur un nouveau VI un Waveform chart et le relier en parallèle à l'indicateur précédent (depuis le panneau avant, Control, Graph, WaveformChart). Exécuter en mode Run continuously. Sauver sous Exemple waveform.vi c) Tester les options du chart : a. Cliquer sur le bouton droit de la souris sur le chart, choisir Show et essayer les différentes options. b. Changer l'échelle du chart en ordonnée en remplaçant un nombre par un autre (via l'outil Texte en cliquant sur le nombre). c. Essayer l'option Autoscale X et Y Waveform Chart 10,0 5,0 0,0-5,0-10,0 0 Plot 0 100 Les chaînes de caractères 4. Manipuler des chaînes de caractères Afficher sur un indicateur chaîne (Controls, String & Table) une chaîne de caractères fournie par un Contrôleur chaîne, et indiquer sa longueur sur un indicateur numérique (utiliser Functions, String, String Length). Sauver sous Chaines de caractères.vi 5. Concaténer des chaînes de caractères Afficher une chaîne de 3 lignes issue de la concaténation (1 chaîne par ligne) de 3 chaînes de caractères entrées au clavier sur le Panneau Avant (utiliser Functions, String, Concatenate Strings). Sauver sous Concatenation de Chaines.vi. 4

6. Extraire un nombre d'une chaîne de caractères Afficher avec 3 décimales sur un indicateur numérique la valeur d un nombre réel dont les chiffres figurent dans une chaîne de caractères, à partir d une position donnée dans la chaîne (utiliser Functions, String, Additional String to Number Functions, From Exp/Fract/Eng). Sauver sous Chaine a Nombre reel.vi. 7. Transformer un entier en hexadécimal Installer un contrôleur numérique correspondant à un entier non signé inférieur à 256 sur le panneau avant. Afficher ce nombre en représentation hexadécimale dans un indicateur numérique et dans un indicateur chaîne de 2 caractères (utiliser Functions, String, Additional String to Number Functions, To Hexadecimal). Sauver sous Entier a Chaine hexadecimale.vi. Les booléens 8. Utiliser des indicateurs et contrôleurs booléens Vertical Switch Square LED Round LED Afficher un contrôleur et un indicateur booléen. Changer leurs labels (en général, par défaut, ON/OFF) tels que le contrôleur donne le choix STOP/MARCHE et l'indicateur ROUGE/VERT. Les relier tel que lorsqu'on clique sur STOP, l'indicateur affiche ROUGE sur fond rouge (et si MARCHE, on ait alors VERT sur fond vert). (Utiliser Controls, Boolean; alterner entre les deux positions avec l'outil en forme de main en cliquant sur le booleen). Sauver sous booleens.vi 9. Les "mechanical actions" associés aux boutons booléens On associe à tout bouton booléen une mechanical action (accessible par le bouton droit de la souris quand on clique sur le booléen en panneau avant). Ce mechanical action définit le type d'interrupteur qu'on utilise. Par exemple, des interrupteurs reviennent à leur position initiale quand on les a pressés, d'autres non. Reprendre le vi précédent, et tester les différents mechanical action possibles en observant attentivement en mode run continuously ce qui se passe pendant que vous appuyez sur le bouton, puis quand vous relâchez la pression. La mise au point d'un programme, l'utilisation de l'aide 10. Corriger une erreur Lorsqu'il y a une erreur (bug) dans un programme, Labview offre différents outils pour en trouver l'origine. Ouvrir à nouveau Operation simple.vi. Puis créez une erreur volontaire. Par exemple, coupez un fil. Le symbole flèche brisée apparaît. Voici les étapes possibles pour débugger : Cliquer sur cette flèche brisée : la liste des erreurs apparaît. Double-cliquez sur l'une d'elle, Labview vous renvoie vers le lieu de l'erreur (ici le fil cassé). Réparez. 5

11. Suivre pas à pas une exécution Parfois, votre programme vous renvoie un résultat inattendu, mais ne signale pas d'erreur. Pour trouver d'où vient le problème, il faut suivre son exécution pas à pas et vérifier la valeur des différentes variables au fur et à mesure de l'exécution. Ouvrir à nouveau Operation simple.vi. Pour mettre un point d'arrêt : utiliser l'outil en forme de rond rouge Set/Clear Break Point (accessible dans la palette d outils..) et placer un point d'arrêt dans le programme. Vérifier l'effet à l'exécution. Utiliser également l'outil Probe Data (rond jaune avec un P dedans sur la palette d outils) en le plaçant sur des fils. Vérifier son effet à l'exécution. 12. Utiliser l'aide Lorsqu'on hésite sur l'utilisation d'un vi proposé par Labview, enclencher l'aide automatique (Help/Show Help ou CTRL-H). Vérifier par exemple son effet quand vous vous placez dans le diagramme de Simulation manip.vi sur votre icône Mult puis sur le générateur de nombre aléatoire. (on voit là tout l'intérêt, dés qu'on programme un vi, de bien écrire dans son "vi info" une aide claire!) Parfois, on souhaite une aide plus complète, pour voir en détail le fonctionnement, les options et des exemples associés à une fonctionnalité. Dans ce cas, aller dans Help/Online reference/index. Par exemple, chercher l'aide sur les waveform charts. La structure de choix Case, les menus Attention, pour la suite, ne surtout pas utiliser l'option run continuously. 13. Utiliser la structure case pour une question/réponse. Réaliser un programme qui pose à l utilisateur une question et lui demande de répondre par OUI ou NON, puis qui affiche un commentaire correspondant. Utiliser un contrôleur booléen pour que l'utilisateur donne sa réponse, dont vous changerez le texte ON/OFF. Le relier à la structure case, accessible depuis Functions, Structure. Utiliser dans les deux fenêtres de case (false/true) un "One Button Dialog" dont vous choisirez le message correspondant (dans functions/time & dialog). Sauver sous le nom Question Reponse.vi. 14. Utiliser la structure case pour un choix dans un menu. On veut réaliser un programme qui propose plusieurs choix à l utilisateur, et qui fasse une action par choix. a) Sur le panneau avant, créer un menu (List & ring/menu ring). Entrer les différents choix dans le menu (au minimum trois), par exemple différents musiciens: pour cela, il faut avec l'outil texte, entrer dans le menu ring un premier choix. Attention, ne pas ensuite faire un retour chariot, puis un deuxième choix, etc. Ca correspondrait en fait toujours au seul premier choix avec un intitulé de plusieurs lignes. Au lieu de cela : ressortir du menu, puis bouton droit de la souris sur le menu, et choisir Add Item After, et recommencer. Labview considère le menu comme un nombre entier qui vaut 0 si c'est le premier choix, 1 si c'est le deuxième, etc. 6

b) Relier dans le diagramme ce menu à une structure Case. c) Faire apparaître pour chaque nom de musicien un morceau de musique qu'il a composé. Sauver sous Choix menu.vi. Les tableaux à une dimension 15. Faire un tableau de réels et le tracer. a) Afficher un tableau en panneau avant (Array & Cluster/array), y placer un contrôleur numérique (cela définit alors le type de tableau, ici un tableau de réels). b) Entrer 4 valeurs dans le tableau (on peut se déplacer dedans avec le petit indicateur sur sa gauche, ou bien en l'agrandissant). c) Les multiplier par 2 (on remarquera qu'on peut faire une opération arithmétique sur l'ensemble du tableau d'un seul coup, et que les fils sont alors plus épais). d) Tracer le tableau dans un waveform chart. Sauver sous Tableau de réels.vi. 16. Faire un tableau de LEDS (booleens) représentant un entier en binaire Afficher, à l aide d un Tableau (Array) d Indicateurs «LED», l état des bits (bit à 0 diode éteinte ; bit à 1 diode allumée) de l octet représentant un nombre entier non signé inférieur à 256. Présenter les bits de poids faible à droite (comme en écriture binaire). On utilisera Functions, Numeric, Conversion, Number To Boolean Array et Functions, Array, Reverse 1D Array. Sauver sous Tableau de booléens.vi. La structure For 17. Utilisation d'une boucle for simple a) Réaliser un programme qui affiche l indice d une boucle «For» à l intérieur et à l extérieur de la boucle sur deux indicateurs différents. Ajouter une fonction Wait (Functions, Time & Dialog, Wait) dans la boucle pour ralentir le processus. Sauver sous Boucle for simple.vi. Pour pouvoir connecter l indicateur à l extérieur de la boucle, il faudra utiliser l option Enable/disable indexing du fil à sa sortie de la boucle (cliquer sur le bouton droit de la souris sur le petit carré au passage du fil par le cadre de la boucle). b) Changer ensuite l'option enable/disable indexing et relier l indice de la boucle à un tableau extérieur à la boucle For. Observer le changement correspondant de la taille du fil de sortie : il sort un tableau ou un nombre. Sauver sous Boucle for et tableau.vi. 18. Utilisation d'une boucle for pour un calcul incrémenté Réaliser un programme utilisant une boucle for pour calculer la somme des N premiers nombres entiers (l'utilisateur choisit N). Pour cela, on doit utiliser un shift register qui se place avec bouton droit de la souris sur le cadre de la boucle. Ce que l'on met dans le shift register de droite au tour i de la boucle apparaît dans celui de gauche au tour i+1, ce qui permet de faire des calculs incrémentés. Sauver sous Boucle for et shift register.vi. 7

19. Générer un tableau de mesures et en calculer la moyenne et l'écart type Générer dans une boucle for N mesures aléatoires via l'icône du vi Simulation manip.vi. L'utilisateur choisit N. Cela revient à simuler la mesure d'un échantillonnage de N points. Tracer le tableau de ces N mesures ainsi généré dans un waveform chart. Calculer et afficher la moyenne et l'écart type de ce tableau de mesures en utilisant le vi Functions, Mathematics, Probability & Statistics, Standard Deviation. Sauver sous Simulation echantillonnage.vi. La structure While 20. Utilisation d'une boucle de type while simple. a) Créer une boucle while dont l'arrêt est commandé par un bouton booléen mis en panneau avant. Réaliser un programme qui affiche l indice de la boucle While à l intérieur et à l extérieur de la boucle sur deux indicateurs différents. Ajouter une fonction Wait (Functions, Time & Dialog, Wait) dans la boucle pour ralentir le processus. Sauver sous Boucle while simple.vi. b) Tester l effet de différents choix de mechanical actions sur le bouton commandant l arrêt de la boucle (voir exo 8). La structure Sequence 21. Utilisation d'une séquence. Une séquence permet, comme au cinéma, de décider d'une succession d'actions dans le temps. Créer un programme utilisant une séquence (Functions, Structure, Sequence) qui : a) Premiere étape de la séquence : multiplie un nombre entré en panneau avant par 2. b) Deuxième étape : attend 2 secondes (wait). c) Troisième étape : renvoie le résultat en panneau avant. Pour ajouter la deuxième et troisième étape à la premiere, cliquer sur le bouton droit de la souris sur le cadre de Sequence, choisir Add frame after (frame en anglais signifie cadre). Pour faire passer le nombre généré par la première étape à la troisième étape, il faut choisir via le bouton droit de la souris "Add sequence local" : cela crée un petit boîtier dans lequel on peut envoyer un nombre via un fil, qu'on peut récupérer ensuite lors des étapes suivantes de la séquence. Sauver sous Utilisation sequence.vi. 8

Les agrégats (clusters) 22. Utilisation des agrégats (clusters) Un agrégat est un type de variable particulier, qui consiste en l'agrégation de plusieurs variables, pas nécessairement du même type (donc ce n'est pas un tableau). Par exemple, une mesure physique peut fournir une tension, une température, et un code d'erreur (ON si pas de problème, OFF si la mesure est mauvaise). On peut avoir avantage à agréger ces trois variables (2 réels et un booléen) en une seule. a) Construire un agrégat à partir des trois variables susnommées via l'outil functions, cluster, bundle. Il faudra étirer l'outil depuis son coin inférieur droit pour avoir 3 entrées. b) Extraire de cet agrégat la variable température et la mettre sur un indicateur en panneau avant : pour cela, utiliser l'outil unbundle qui désagrège l'agrégat. Sauver sous Agrégat simple.vi. Les graphes XY 23. Tracé de Y fonction de X : graphes XY. On a déjà vu l'utilisation des waveform charts qui tracent une quantité en fonction du temps. On veut maintenant tracer un tableau Y en fonction d'un tableau X. Pour cela, il faut construire un agrégat des deux tableaux (cluster en anglais). a) Utiliser une boucle for pour générer un tableau des N premiers entiers, et un tableau des N premiers entiers au carré. b) Agréger les deux tableaux en un agrégat de tableaux via l'outil Functions, Cluster, Bundle. Envoyer cet agrégat vers un graph XY. Sauver sous Tracé d'une courbe XY.vi. c) On veut pouvoir utiliser les différents outils graphiques : zoom, curseur Pour cela, avec le bouton droit de la souris sur le graph, faire show cursor display et show palette. a. Sur la palette, essayer de faire des zooms en jouant aussi sur l'autoscale X et Y. b. Les curseurs : avec l'outil main, cliquer sur le curseur display pour l'activer. Essayer avec la souris les différentes options (cliquer sur le cadenas pour accrocher ou non le curseur au graphe, essayer de le centrer dans l'image avec l'option bring to center, essayer de faire apparaître un deuxième curseur, ) 24. Tracé de deux courbes (X,Y). On a construit un agrégat de 2 tableaux XY pour le tracer. Pour tracer plusieurs graphes XY sur un même graphe, il faut cette fois-ci faire un tableau des différents agrégats XY. 9

a) Reprendre le vi précédent et le sauver sous Tracé de 2 courbes XY.vi. Générer un autre tableau Y représentant cette fois-ci le cube des N premiers entiers. Utiliser de même un bundle pour agréger X et le nouveau Y. b) Utiliser ensuite Functions, array, build array pour faire un tableau à partir des deux agrégats (quand l'outil build array apparaît, il n'a qu'une entrée, et il faut l'étirer avec la souris depuis son coin inférieur droit pour faire apparaître les deux entrées nécessaires). c) Envoyer le tableau ainsi construit d'agrégats vers le graphe XY. d) Sur le graphe XY en panneau avant, étirer la légende en haut à droite du graphe, pour voir les 2 légendes, puis choisir une autre couleur et un autre tracé pour la deuxième courbe (bouton droit de la souris sur sa légende). Sauver. 25. Tracé d'une courbe avec barre d'erreur : X, Y ± Y (facultatif) Reprendre l'exercice précédent, le sauver sous Tracé avec barres d'erreur.vi. Pour le deuxième tableau, remplacer le calcul du cube d'un entier par un tableau donnant une barre d'erreur (choisir une erreur constante pour commencer, ou bien un nombre aléatoire avec random). On veut tracer (X, Y), et (X,Y+erreur), et (X, Y-erreur). Reprendre la même construction que précédemment pour générer et tracer ces 3 courbes. Choisir astucieusement leur apparence (le graphe XY en points et les enveloppes en trait fin par exemple). Sauver. 26. Graphes XY au cours du temps et pas à la fin de la boucle. Ouvrir XY_Online.vi de la bibliothèque DEMO.LLB. Il permet de tracer un graphe XY non pas à la fin de la boucle mais pendant son exécution. L'utiliser, comprendre son fonctionnement et son intérêt. Les "formula node" 27. Utilisation du "formula node" pour calculer simplement des formules mathématiques. Ouvrir Operation simple.vi et le sauver sous Operation avec formula node.vi. On va remplacer les opérateurs arithmétiques par un formula node, accessible depuis Functions, structure, formula node. Placer une entrée et une sortie (bouton droit de la souris sur le cadre) et écrivez dedans le nom des variables (par exemple x en entrée et y en sortie). Ecrire dans le cadre la formule à effectuer suivie d'un ";", par exemple "y=2*x+3;". Tester son fonctionnement. Essayer ensuite une formule à plusieurs variables d'entrées (calculer par exemple z=cos(2*pi*sqrt(y^2+x^2))). 10

Les variables locales et globales 28. Utilisation des variables locales dans un programme. Ouvrir à nouveau le vi Utilisation sequence.vi. Le sauver sous Utilisation variables locales.vi. On veut maintenant ne plus utiliser la petite boîte sequence local mais une variable locale. En effet, quand le programme commencera à être volumineux, on ne s'y retrouvera plus entre nos fils et nos sequence local. On va donc stocker un fil dans une variable locale qu'on pourra ensuite utiliser d'ailleurs. Dans cet exemple, placer la variable de la première étape dans une variable locale (functions, structure, local) appelée X (cliquer sur la variable locale pour l affecter à l un des controles du panneau avant). Puis rappeler cette variable depuis l'outil variable locale dans la 3 ème étape. 29. Utilisation des variables globales. Parfois, on veut pouvoir appeler depuis différents programmes des variables dites "globales". Par exemple, quand on initialise une carte, on entre ses paramètres depuis un programme qui l'initialise. On veut pouvoir réutiliser ces paramètres ensuite depuis un autre programme qui utilise la carte pour mesurer. Pour cela, les variables sont mises dans un troisième programme spécial, qui ne contient qu'un panneau avant sans diagramme, et dans lequel on place les variables. Voici comment faire: a) Ouvrir un nouveau programme et le sauver sous Modifie Variables Globales.vi. Afficher une variable globale dans son diagramme via Functions, Structures, Global. Double cliquer dessus. Vous êtes envoyés vers un nouveau vi (ne contenant pas de diagramme) nommé Global 1. b) Sauvez le sous un autre nom : Mes variables globales.vi. Placer dedans deux contrôleurs numériques X et Y. Sauver. c) Sur le panneau avant de Modifie Variables Globales.vi mettre deux indicateurs de sortie X2 et Y2. Dans le diagramme, faire les opérations X2 = X*X, Y=2*Y puis Y2=Y. Pour appeler X et Y sur le diagramme, il faut utiliser Functions/Select a VI et appeler Mes variables globales.vi. Avec le bouton droit de la souris sur la variable globale, choisissez select item et choisissez la variable à manipuler (X ou Y) ainsi que son état (contrôleur ou indicateur). d) Créer un nouveau VI appelé Utilisation Variables globales.vi. Y mettre une séquence à 3 étapes. Dans la première étape, faire afficher le contenu des variables globales X et Y. Dans la 2 ème étape, appeler Modifie Variables Globales.vi et afficher ses sorties X2 et Y2 sur des indicateurs. e) Dans la 3 ème étape, afficher à nouveau le contenu des variables globales X et Y. Les résultats affichés dans Utilisation Variables globales.vi prennent en compte les modifications effectuées dans Modifie Variables Globales.vi : c est la raison d être des variables globales. 11

Les fichiers 30. Les fichiers texte a) Ouvrir Fichier_Texte_Write.vi dans DEMO.LLB. Modifier la constante Path pour que le chemin d accès soit dirigé sur votre répertoire (voir paragraphe correspondant du manuel à ce sujet). Comprendre le programme et l utiliser pour créer le fichier MonPremierEssai.dat constitué d enregistrements de deux nombres réels. b) Ouvrir Fichier_Texte_Read.vi dans DEMO.LLB. Modifier le chemin d accès. Comprendre le programme et l utiliser pour relire le fichier MonPremierEssai.dat créé précédemment. c) Ouvrir Fichier_Texte_Write_Seq.vi dans DEMO.LLB. Modifier la constante Path pour que le chemin d accès soit dirigé sur votre répertoire. Comprendre le programme. Quelle est la différence par rapport à Fichier_Texte_Write.vi? Modifier-le, après l avoir sauvegardé sous un nouveau nom Mon_Fichier_Texte_Write_Seq.vi pour qu il enregistre en plus en première colonne l indice i de la boucle. Utiliser ce VI pour créer MonDeuxièmeEssai.dat. d) Tout l intérêt du format d enregistrement texte est de pouvoir relire simplement les fichiers avec n importe quel autre logiciel. Essayer de relire MonDeuxièmeEssai.dat avec le Notepad de Windows. Utiliser maintenant le logiciel d analyse de données Kaleidagraph pour tracer la troisième colonne de MonDeuxièmeEssai.dat en fonction de la seconde. 31. Les fichiers Datalog (facultatif) Répétez la même opération avec les programmes concernant les fichiers Datalog (utiliser les VI Fichier_Datalog_Write.vi et Fichier_Datalog_Read.vi de DEMO.LLB). Simulation d une mesure bruitée et filtrage 32. Génération d une mesure bruitée (facultatif) Ecrire un programme qui simule une mesure de tension fluctuant de manière aléatoire entre -2 V et +2 V, à laquelle se rajoute un bruit sinusoïdal de 50 Hz d amplitude variable. Le signal total et le signal non bruité seront écrits dans un fichier texte. Sauver ce programme sous le nom SimuleBruit.vi. 33. Utilisation d un filtre (facultatif) Relire les données précédentes et utiliser un filtre pour supprimer le 50 Hz. Comparer graphiquement le signal originel non bruité et le signal réel filtré. Sauver le programme sous le nom UtilisationFiltre.vi. Mesure à intervalles fixes ou contrôlés par l utilisateur 12

34. Simulation d une mesure (facultatif) Ecrire un programme simulant une mesure de température fluctuant de manière sinusoïdale autour d une valeur moyenne qui augmente de 300K à 1500K. A chaque température, on associe une mesure de tension fictive V = 4*T+5. Sauver ce programme sous le nom TempeCroiss.vi.. 35. Prise d une mesure à intervalle régulier (facultatif) Ecrire un programme qui simule une mesure de température (à l aide de TempeCroiss.vi) et ne sauvegarde les mesures dans un fichier qu à intervalles réguliers de température. Sauver ce programme sous le nom Acquisition Reguliere.vi. 36. Prise d une mesure à la demande (facultatif) Ecrire un programme qui simule une mesure de température (à l aide de TempeCroiss.vi) lorsque l utilisateur appuie sur un bouton «MESURE». Prévoir également un bouton «ARRET» pour quitter le programme. Sauver ce programme sous le nom Acquisition a la demande.vi. 13