Lab Windows 1 [PDF]

  • 0 0 0
  • Gefällt Ihnen dieses papier und der download? Sie können Ihre eigene PDF-Datei in wenigen Minuten kostenlos online veröffentlichen! Anmelden
Datei wird geladen, bitte warten...
Zitiervorschau

LabWindows/CVI

INTRODUCTION À LABWINDOWS/CVI

2

PRÉSENTATION D’UN PROJET

4

LES CONVENTIONS EXÉCUTION DU PROJET LA FENÊTRE DU CODE SOURCE

4 7 7

CONCEPTION DU PROJET

9

CONCEPTION DE L’INTERFACE UTILISATEUR GÉNÉRATION DE CODE EXÉCUTION DU PROJET

10 17 20

COMPLÉTER LE PROGRAMME AVEC UN DRIVER D’INSTRUMENT

21

ACQUÉRIR DES COURBES AVEC UN DRIVER D’INSTRUMENT INITIALISER L’INSTRUMENT AFFICHER LA COURBE SUR LE GRAPHE MODIFICATION DU PROGRAMME. CONCLUSION

21 22 27 31 36

LABWINDOWS/CVI : LA SOLUTION IDÉALE

38

L’ENGAGEMENT DE NATIONAL INSTRUMENTS

40

© National Instruments Corporation

1

Guide d’évaluation LabWindows/CVI

INTRODUCTION À LabWindows/CVI

En quoi consiste LabWindows/CVI LabWindows/CVI est un environnement ANSI C intégré, spécialement conçu pour les ingénieurs et scientifiques désireux de créer des applications d’instrumentation virtuelle. Typiquement, il s’agit de construire une application communiquant avec du matériel de manière à prendre des mesures, analyser puis présenter les résultats à l’utilisateur final. Doté de bibliothèques d’entrées/sorties, de routines d’analyse et d’outils de création d’interfaces utilisateurs, LabWindows/CVI offre tout ce dont vous avez besoin pour construire des systèmes de test et de mesure avancés. Que vous ayez à construire des systèmes de test automatisés, à contrôler des applications ou à mener des expériences en laboratoire, LabWindows/CVI simplifie toutes les tâches du développement. Depuis le milieu des années 1980, le micro-ordinateur s’est peu à peu révélé être la plate-forme idéale pour la chaîne d’acquisition de données. En effet, mettre le PC au cœur des systèmes de mesure, c’est créer des systèmes avec des architectures ouvertes, standardisées, communicantes et intuitives. Par exemple, le PC possède pratiquement toutes les interfaces possibles et imaginables. Utiliser le PC, c’est profiter directement des innovations technologiques de la micro-informatique : l’évolution des processeurs et la connectivité Internet sont deux exemples caractéristiques. Par exemple, à coût égal, la puissance des PC est multipliée par deux tous les deux ans. Mettre le PC au cœur des systèmes de mesure implique l’utilisation de logiciels. Cela nous oblige à revoir notre conception de l’instrumentation. Dans ce cadre, on appelle instrument virtuel une application qui, aux yeux de l’utilisateur final, se comporte à l’écran comme un instrument de mesure, mais qui, du point de vue matériel, met en œuvre tous les types de moyens de mesure (cartes d’acquisition, instruments conventionnels, etc.) Il suffit de combiner la technologie du PC (matériels et logiciels), pour construire soimême un système qui répondra exactement à ses besoins. Plus important, ce système est évolutif. En effet, il suffit de faire évoluer le matériel ou le logiciel pour voir les performances découplées ou les fonctionnalités étendues. Ce type d’évolution n’est pas possible avec les instruments classiques dont les performances et les fonctionnalités sont définies une fois pour toutes par le constructeur. Mettre le PC au cœur des systèmes de mesure nous oblige à utiliser différents moyens afin de rapatrier les mesures. Nous allons rapidement présenter certains de ces moyens, ce qui nous permettra d’évoquer une partie de l’offre matérielle de National Instruments. Cela fait déjà plus de 20 ans qu’ingénieurs et scientifiques utilisent les contrôleurs GPIB de National Instruments pour relever des mesures par l’intermédiaire d’instruments GPIB. L’offre est complète : des cartes de haute qualité faciles à installer, des transferts haute vitesse et des outils de développement et de configuration souples.

© National Instruments Corporation

2

Guide d’évaluation LabWindows/CVI

Comme vous pourrez le voir dans l’annexe, l’utilitaire Measurement & Automation eXplorer (MAX) simplifie la configuration des systèmes en mettant à votre disposition un accès rapide et simple aux instruments ainsi qu’aux assistants en ligne « Getting Started » et « Troubleshooting Wizards ». L’évolution des technologies électroniques permet d’insérer les instruments directement dans le PC et il est désormais possible de piloter l’instrument de mesure aussi simplement qu’un autre périphérique. National Instruments propose depuis plusieurs années, sous forme de solutions logicielles et matérielles, des instruments comme des oscilloscopes ou des multimètres. Jusqu’alors, la partie matérielle était assurée par des cartes multifonctions qui pouvaient être dans certains cas mal adaptées aux besoins réels : surdimensionnées pour remplacer un multimètre ou sous-dimensionnées pour remplacer un oscilloscope. Le recours aux instruments traditionnels reliés par GPIB à un PC restait parfois inévitable. Les cartes instruments (sur PC) proposent une alternative aux instruments traditionnels et sont une extension naturelle de l’instrumentation virtuelle. Elles offrent des performances similaires à celles des instruments classiques mais permettent de profiter de la souplesse des PC et de leurs évolutions futures. Notez bien que nous sommes convaincus que de la même façon que le traitement de texte a remplacé la machine à écrire, la carte instrument va dans certains cas se substituer à l’instrument traditionnel. Un instrument de mesure, qu’il soit traditionnel ou virtuel, a toujours pour rôle d’acquérir des données, de les analyser puis d’afficher l’information. La différence fondamentale entre les instruments traditionnels et les instruments virtuels réside dans la souplesse, infiniment plus grande, de l’instrument virtuel. En effet, ce dernier est défini par l’utilisateur, et non par le fournisseur. National Instruments propose un grand choix de cartes d’acquisition et de conditionnement du signal parmi lesquelles on retrouve les cartes multifonctions. Elles correspondent tout à fait à l’état d’esprit « instrumentation virtuelle » puisqu’elles peuvent être utilisées dans des applications très différentes. Afin d’automatiser un système de mesure, il faut utiliser un outil de développement pour élaborer l’application proprement dite.

© National Instruments Corporation

3

Guide d’évaluation LabWindows/CVI

PRÉSENTATION D’UN PROJET Les conventions LabWindows/CVI utilise les conventions des noms de fichiers standards et en définit quelques nouveaux. Les conventions suivantes sont utilisées pour les noms des fichiers. .c Source C .h Fichier d’en-tête C .obj Fichier objet (fichier C compilé) .lib Bibliothèque statique et importée .uir Interface utilisateur .fp Fichier contenant les fonctions du driver d’instrument L’éditeur du code source ressemble à n’importe quel autre éditeur de code source que vous connaissez, mais il comporte en plus de nombreuses caractéristiques utiles au développement de vos applications comme la possibilité d’insérer les modèles habituellement utilisés en C (boucle For, boucle While, etc.), codages de couleur, fenêtres partagées et tags. La séparation de fenêtres (Split windows) offre la possibilité de visualiser deux portions de votre code simultanément. Pour accéder à cette caractéristique, il suffit de tirer la double barre se trouvant dans la fenêtre de votre code source (juste en dessous de la barre d’outils). Les tags vous offrent la possibilité de poser des marques sur une ligne de code donnée. Appuyez sur pour poser un tag à un endroit donné et vous utiliserez par la suite ou pour sauter d’un tag à l’autre (avant et arrière respectivement). Développer un programme en LabWindows/CVI Lorsque vous programmez en LabWindows/CVI, il est conseillé de prendre des habitudes communes à tous les environnements de programmation. C’est une bonne idée de commencer par un organigramme de votre programme avant d’écrire le code de celui-ci. N’oubliez pas de commenter votre programme, cela vous permettra une meilleure gestion de votre code. Note à propos de LabWindows/CVI Avec LabWindows/CVI, vous travaillerez essentiellement avec trois fenêtres qui sont : la fenêtre du projet (.prj), la fenêtre du code source (.c) et la fenêtre de l’interface utilisateur (.uir) . À la différence des autres fenêtres en LabWindows/CVI, le titre de ces fenêtres change en fonction du programme sur lequel vous travaillez. L’extension est donc votre indice. Par exemple si vous travaillez sur le projet Sample1, comme cela sera le cas par la suite, vous remarquerez que l’extension du project est .prj et son titre c:\MeasurementStudio\cvi\tutorial\sample1.prj. Quand vous ouvrez le code source, vous avez accès à la fenêtre source avec .c comme extension de fichier.

© National Instruments Corporation

4

Guide d’évaluation LabWindows/CVI

Chargement d’un projet dans LabWindows/CVI 1/ Pour commencer, nous allons donc charger un projet existant, lequel ne contient pas d’interface utilisateur. Une fois que LabWindows/CVI est lancé, allez sur File et ouvrez un projet.

Figure 1-1 2/ Vous remonterez l’arborescence pour aller chercher le projet sample1.prj qui se trouve dans c:\MeasurementStudio\cvi\tutorial. La fenêtre ci-dessous apparaît.

Figure1-2 Maintenant, nous allons examiner quelques-unes des différentes fenêtres de LabWindows/CVI : les fenêtres « Project », « Standard I /O » et « Source ». La fenêtre Project comporte une barre de menu avec les options suivantes : • Le menu File contient des sélections pour le chargement, la sauvegarde et la création de nouveaux fichiers en LabWindows/CVI. Vous pouvez ouvrir n’importe quel type de fichier (Project, Source, Header, ou User Interface). • Le menu Edit contient des sélections pour ajouter ou supprimer des fichiers du projet. • Le menu Build contient des sélections de compilation. • Le menu Run contient des sélections pour l’exécution. • Le menu Window vous laisse le choix de naviguer rapidement vers les autres fenêtres comme Source, User Interface (interface utilisateur) et Standard I/O. • Le menu Options vous permet de configurer différents aspects dans l’environnement de programmation.

© National Instruments Corporation

5

Guide d’évaluation LabWindows/CVI

Le projet que vous avez ouvert, sample1.prj, est un exemple de base, comportant un seul fichier de code source. La fenêtre Project affiche des informations concernant le statut des fichiers qui comportent le projet.

Figure 1-3 1 2 3 4 5 6 7 8

Nom du fichier. Ce symbole vous indique si le fichier est ouvert. Un S à cette colonne vous indique qu’il a y eu des modifications depuis le dernier enregistrement. Un C à cette colonne vous indique que le fichier doit être compilé avant exécution. Un O à cette colonne vous indique que vous avez validé l’option « compiler à l’intérieur de l’objet ». Un I à cette colonne vous indique que le fichier est un programme de driver d’instrument. Date de la dernière modification. Heure de la dernière modification.

Les projets que vous mettrez en œuvre avec LabWindows/CVI peuvent consister en de multiples fichiers de différents types. LabWindows/CVI est compatible avec les fichiers sources C, les bibliothèques partagées (DLL), les bibliothèques C, les fichiers d’interface utilisateur et les drivers d’instruments. Quand vous développerez des projets plus avancés, vous aurez juste à sélectionner « Add File To Project » du menu Edit et à sélectionner le type de fichier que vous souhaitez ajouter à votre projet.

Figure1-4

© National Instruments Corporation

6

Guide d’évaluation LabWindows/CVI

Exécution du projet Pour exécuter le projet, sélectionnez Run Project du menu Run. LabWindows/CVI va automatiquement compiler tous les fichiers sources, lier le projet aux bibliothèques utilisées et exécuter le code compilé. Notez que l’indicateur C disparaît de la liste de projets après la compilation. Quand le projet commence à s’exécuter le mot Running apparaît dans le coin supérieur gauche de votre fenêtre Project. Le projet sample1.prj est un programme facile qui va générer 100 nombres aléatoires et les afficher dans une fenêtre Standard I/O. Messages d’erreur Si des erreurs sont détectées durant la compilation ou le processus de liaison, alors un message d'erreur apparaît. La fenêtre de message d’erreur contiendra le nombre d’erreurs détectées dans chaque fichier source et leur description.

La fenêtre du code source La fenêtre du code source en LabWindows/CVI contient le code de votre projet. Après avoir exécuté votre projet, vous allez maintenant découvrir quelques caractéristiques de cette fenêtre. 1. Fermez la fenêtre Standard I/O en appuyant sur n’importe quelle touche si elle est encore active. 2. Double-cliquez sur le nom du fichier sample1.c dans la fenêtre Project pour afficher le code source. 3. Le code source devrait apparaître comme ci-dessous.

© National Instruments Corporation

7

Guide d’évaluation LabWindows/CVI

Le menu File de la fenêtre Source est similaire au menu File de la fenêtre Project. Avec le menu File, vous pouvez donc ouvrir, sauvegarder ou créer n’importe quel type de fichier reconnu par LabWindows/CVI. Avec le menu Edit, vous avez les outils relatifs à l’édition du code source. Pour sélectionner le mode d’exécution, vous vous servez du menu Run. Avec le menu Instruments, vous pouvez charger n’importe quel driver d’instrument présent dans votre système. Pour accéder aux bibliothèques LabWindows/CVI pour tout ce qui concerne l’acquisition, l’analyse et l’affichage des données, vous vous servez du menu Library. Les menus de la fenêtre Source sont étudiés plus en détails dans le manuel de l’utilisateur de LabWindows/CVI. La fenêtre Source est compatible avec les spécifications du ANSI C. Vous pouvez utiliser les structures du langage ANSI C ou bien les fonctions de bibliothèque standard pour développer votre application. LabWindows/CVI possède des outils de génération de code, ce qui réduit votre temps de développement. Nous parlerons plus en détails de ces outils de génération de code par la suite. La fenêtre de code source, la fenêtre des fonctions ainsi que la fenêtre d’affichage des variables ont des barres d’outils pour un accès rapide aux fonctions d’édition et de débogage. Les infobulles sont d’une aide précieuse pour la signification de telle ou telle icône de la barre d’outils. Et enfin vous avez la possibilité de personnaliser votre barre d’outils à partir du menu Options.

© National Instruments Corporation

8

Guide d’évaluation LabWindows/CVI

CONCEPTION DU PROJET Maintenant que nous avons analysé un projet existant nous allons passer à l’étape suivante qui consiste à réaliser son propre projet. Ouvrez un nouveau projet comme indiqué à la figure 2-1.

Figure 2-1 Répondez Yes à la question « Are you sure you want to unload the current project » car vous allez décharger le projet sample1.prj afin de créer un nouveau projet. LabWindows/CVI 6.0 permet de créer plusieurs projets dans un même espace de travail, mais dans cet exercice nous allons créer un nouveau projet dans un nouvel espace de travail. Lorsque la boîte de dialogue suivante apparaît (figure 2-2), choisissez l’option « Create Project In New Workspace » et cochez toutes les cases pour les options de transfert comme indiqué. (si par la suite vous avez une configuration particulière comme les options de compilation, d’exécution, etc., vous pouvez les transférer d’un projet à un autre).

© National Instruments Corporation

9

Guide d’évaluation LabWindows/CVI

Figure 2-2

Conception de l’interface utilisateur Dans ce nouveau projet, nous allons simuler une acquisition de données et afficher les résultats dans un graphe. Ouvrez une nouvelle interface utilisateur comme indiqué à la figure 2-3.

Figure 2-3 Vous avez donc une nouvelle interface utilisateur vide comme indiqué à la figure 2-4.

© National Instruments Corporation

10

Guide d’évaluation LabWindows/CVI

Figure 2-4 Définir la taille et le titre du Panel La taille et le titre de votre Panel (la fenêtre grise qui deviendra la fenêtre de votre application) d’interface utilisateur ne vous conviennent certainement pas. Vous allez donc personnaliser votre interface utilisateur. Pour modifier la taille de ce Panel, utilisez comme d’habitude le pointeur de la souris. Placez-le sur le coin inférieur droit du Panel (ce qui a pour effet de le transformer en une double flèche oblique), appuyez sur le bouton gauche de la souris, déplacez le pointeur jusqu’à ce que le Panel atteigne la taille souhaitée, puis relâchez le bouton de la souris. Double-cliquez n’importe où à l’intérieur de votre Panel pour lui attribuer un titre via la boîte de dialogue Edit Panel (figure 2-5). Dans le champ Panel Title, rentrez le nom Acquisition, puis cliquez sur OK. Vous pouvez consulter d’autres attributs en appuyant sur le bouton « Other Attributes ».

© National Instruments Corporation

11

Guide d’évaluation LabWindows/CVI

Figure 2-5

À l’aide du menu Create, placez un graphe dans votre interface utilisateur comme indiqué à la figure 2-6. Votre graphe apparaît dans votre Panel. Pour changer sa taille, procédez exactement comme à l’étape précédente. Double-cliquez à l’intérieur du graphe pour accéder à la boîte de dialogue d’édition des attributs. Dans le champ Label de la catégorie Label Appearance, donnez le titre de « Graphe d’acquisition ». Le champ Constant Name spécifie le nom par lequel votre graphe sera appelé dans le code source, par défaut son nom est GRAPH, vous pouvez le laisser tel qu’il est, puisque c’est le seul graphe. Cliquez sur OK. Votre Panel apparaîtra comme indiqué à la figure 2-7. Utilisez le pointeur de la souris pour placer le titre de votre graphe où vous désirez.

© National Instruments Corporation

12

Guide d’évaluation LabWindows/CVI

Figure 2-6

Figure 2-7

À présent, placez deux boutons de commande de type « Square Command Button » à l’aide du menu Create comme indiqué à la figure 2-8.

© National Instruments Corporation

13

Guide d’évaluation LabWindows/CVI

Figure 2-8 Double-cliquez sur le premier bouton pour accéder à la boîte d’édition des attributs et remplissez les champs comme indiqué à la figure 2-9. Répétez l’opération pour le deuxième bouton et remplissez les champs comme indiqué à la figure 2-10.

Figure 2-9

© National Instruments Corporation

14

Guide d’évaluation LabWindows/CVI

Figure 2-10 Une fois achevée, l’interface utilisateur sera celle de la figure 2-11. La prochaine étape va consister à générer le code de l’application. Pour cela, il faut au préalable enregistrer l’interface utilisateur dans le répertoire de votre choix (par exemple c:\Temp\). Nommez-le « PremierProjet.uir ».

© National Instruments Corporation

15

Guide d’évaluation LabWindows/CVI

Figure 2-11

© National Instruments Corporation

16

Guide d’évaluation LabWindows/CVI

Génération de Code Pour l’instant, nous avons créé une interface utilisateur. À présent, il s’agit de générer le code source avec « Code Builder » qui va gérer notre interface utilisateur. Nous pouvons définir le type d’événements auxquels notre programme va réagir. Pour cela, sélectionnez Code>>Preferences>>Default Control Events à partir de l’interface utilisateur. Dans la boîte de dialogue « Control Callback Events », sélectionnez le type d’événements auxquels le programme va répondre. Dans ce projet, les commandes doivent réagir à un type particulier d’événements qui est « Event-Commit » (c’est-à-dire lorsque vous cliquez sur le bouton gauche ou sur ). Vérifiez que seul EVENT_COMMIT est sélectionné, puis cliquez sur OK.

Figure 2-12

Figure 2-13

© National Instruments Corporation

17

Guide d’évaluation LabWindows/CVI

Pour générer le code de votre interface utilisateur, servez-vous du menu Code et choisissez génération de tous les codes (Generate, puis All code…), comme à la figure 2-14.

Figure 2-14

Ensuite la boîte de dialogue apparaît comme à la figure 2-15. Dans le Champ « Target Files », sélectionnez « Create New Project » avec le menu déroulant. Les noms par défaut attribués à notre projet et le code source sont PremierProjet.prj et PremierProjer.c ; ils sont placés dans le même répertoire que notre fichier .uir (ici PremierProjet.uir). Dans le champ « Program Termination » sélectionnez QuitPROG comme indiqué. Ce champ détermine la fonction qui sera utilisée pour quitter le programme. Cliquez sur OK. Une fois que la génération du code est terminé, le projet est créé et il comprend deux fichiers qui sont PremierProjet.c et PremierProjet.uir. .

© National Instruments Corporation

18

Guide d’évaluation LabWindows/CVI

Figure 2-15 Il existe un troisième fichier PremierProjet.h qui a été généré au moment de l’enregistrement de l’interface utilisateur que nous pouvons rajouter à notre projet. Pour le rajouter à notre projet, bien que cela ne soit pas nécessaire, c’est très simple, il suffit simplement de procéder comme indiqué à la figure 2-16. Vous remonterez l’arborescence pour aller le chercher à son emplacement, il est dans le même répertoire que notre projet.

Figure 2-16

© National Instruments Corporation

19

Guide d’évaluation LabWindows/CVI

Exécution du projet Le projet est à présent terminé. Pour le lancer, sélectionnez Run Project dans le menu Run. Pour le moment la seule commande active dans l’interface utilisateur est le bouton QUIT. Dans le chapitre suivant, nous allons rajouter des fonctions à ce programme pour faire en sorte qu’une action sur le bouton Acquire permette d’afficher les données dans le graphe. Ensuite, nous obtiendrons une interface utilisateur complète capable d’acquérir et d’afficher des courbes.

Figure 2-17

© National Instruments Corporation

20

Guide d’évaluation LabWindows/CVI

COMPLÉTER LE PROGRAMME AVEC UN DRIVER D’INSTRUMENT Dans le chapitre précédent, nous avons créé le projet PremierProjet.prj dans l’environnement LabWindows/CVI. Sachez toutefois qu’il ne s’agit que d’un squelette de programme. Dans ce chapitre nous allons utiliser un simple driver d’instrument pour acquérir les données, et ensuite les afficher dans le graphe de l’interface utilisateur. Un driver d’instrument se compose d’un ensemble de fonctions qui servent à programmer un instrument ou un groupe d’instruments associés. Les fonctions de haut niveau figurant dans un driver d’instrument englobent un grand nombre de fonctions de bas niveau, dont des opérations de lecture et d’écriture GPIB, VXI, RS232, de conversion de données ou de mise à l’échelle. L’exemple de module présenté dans ce chapitre ne communique pas avec un véritable instrument, mais illustre la façon dont on s’en sert pour acquérir une courbe depuis un oscilloscope.

Acquérir des courbes avec un driver d’instrument Pour être complet, il faut que le programme lise un tableau de données générées à partir d’un driver d’instrument, puis qu’il les affiche dans un graphe. Pour ce faire, nous allons modifier la fonction AquirePROG dans le fichier source PremierProjet.c. Certains drivers viennent avec le package « Measurement Studio », mais n’hésitez pas à consulter notre site Internet où vous trouverez un nombre considérable de drivers d’instruments que vous pouvez télécharger gratuitement. Le driver d’instrument dont nous avons besoin se compose de plusieurs fichiers, tous présents sur le disque dur. Nous pouvons le rajouter au projet facilement en quelques étapes : Sélectionnez Add Files To Project>>Instrument (*.fp) dans le menu Edit de la fenêtre project.

Figure 3-1 Le fichier scope.fp que nous devons sélectionner se trouve dans le répertoire …MeasurementStudio\cvi\tutorial. Pour le rajouter au projet, il suffira de le sélectionner, puis de cliquer sur Add et ensuite sur OK. © National Instruments Corporation

21

Guide d’évaluation LabWindows/CVI

Dans la fenêtre Project, double-cliquez sur PremierProjet.c pour ouvrir la fenêtre d’édition de Source. Puis dans la fenêtre du code, placez-vous au niveau de la fonction AcquirePROG pour rajouter du code.

Figure 3-2

Placez le curseur sur la ligne vierge qui se trouve juste au-dessous de l’instruction Event_Commit, de la fonction AquirePROG comme indiqué à la figure 3-2.

Initialiser l’instrument Nous allons à présent utiliser le driver d’instrument de l’oscilloscope pour générer du code en vue d’acquérir une courbe. Le code sera généré au niveau de la fonction AquirePROG. Rappelons que cette fonction s’exécute quand on clique sur le bouton Acquire. Première étape : ouvrez le panneau de fonction 1/ Sélectionnez l’option Sample Oscilloscope dans le menu Instrument. C’est le driver d’instrument que nous venons de charger, il comporte quatre fonctions simples qui vont permettre au programme de communiquer avec notre instrument (oscilloscope).

Figure 3-3

2/ Sélectionnez la fonction Initialize et cliquez sur le bouton Select. Le panneau de fonction d’initialisation de l’oscilloscope apparaît comme l’illustre la figure 3-5.

© National Instruments Corporation

22

Guide d’évaluation LabWindows/CVI

Figure 3-4

Figure 3-5

Les panneaux de fonctions sont avant tout des représentations graphiques des fonctions. Ce sont des outils interactifs qui servent à construire et tester les appels de fonction de votre bibliothèque. Ces panneaux de fonctions proposent une aide en ligne complète. Cliquez avec le bouton droit de la souris sur le panneau de fonction pour afficher l’aide en ligne de la fonction Initialize. Les panneaux de fonctions génèrent aussi du code. Lorsque vous entrez des valeurs dans les champs du panneau de fonction, l’appel de fonction se crée automatiquement en bas de l’écran (dans la partie blanche de la fenêtre).

© National Instruments Corporation

23

Guide d’évaluation LabWindows/CVI

Deuxième étape : initialiser la fonction driver d’instrument 1/ Entrez « 1 » dans le champ Address 2/ Entrez « err » dans le champ Error 3/ Vous devez déclarer la variable err, pour cela, pendant que le champ Error est actif, vous sélectionnez Declare Variable dans le menu Code. Cochez les deux cases « Execute declaration… » et « Add declaration… » comme indiqué à la figure 3-6, puis cliquez sur OK.

Figure 3-6 4/ Sélectionnez Run Function Panel dans le menu Code. Cliquez sur Yes lorsqu’une boîte de dialogue vous propose d’enregistrer toute modification avant l’exécution. Cette boîte de dialogue apparaît chaque fois que vous procédez à une modification. Si aucune erreur n’est détectée en cours d’exécution, le paramètre Error vaut 0. Sinon, vous pouvez cliquer avec le bouton droit de la souris sur le champ Error pour visualiser l’aide en ligne correspondante. Une fois que vous avez rempli les paramètres et validé la ligne de code, les étapes suivantes vont vous permettre d’insérer l’appel de fonction dans le code et effacer le panneau de fonction à l’écran. Troisième étape : insérer la fonction dans le fichier source 1/ Sélectionnez Insert Function Call dans le menu Code pour recopier le code généré dans la fenêtre d’édition de source. 2/ Sélectionnez Close dans le menu File pour fermer le panneau de fonction. L’appel de fonction pour initialiser le driver d’instrument devrait maintenant s’afficher dans votre code source à l’endroit où vous avez laissé le curseur. Lire les données de l’instrument L’une des fonctions les plus importantes de tout driver d’instrument consiste à lire les données émises par un instrument et à convertir les données brutes obtenues en un format directement utilisable par votre programme. Par exemple, un oscilloscope numérique renvoie une courbe sous forme de chaîne de nombres ASCII séparés par une virgule. Ensuite, le driver d’instrument analyse la chaîne de caractères, met à

© National Instruments Corporation

24

Guide d’évaluation LabWindows/CVI

l’échelle les données en tension, puis les place dans un tableau en mémoire à votre place. 1/ Sélectionnez Read Waveform dans le driver d’instrument Sample Oscilloscope du menu Instrument. Le panneau de fonction Read Waveform s’affiche alors de la façon suivante (figure 3-7).

Figure 3-7 2/ Réglez le champ Channel sur 2. Channel 1 est une onde sinusoïdale et Channel 2 un ensemble de données aléatoires. Déclarer les variables dans les panneaux de fonction La fonction Read Waveform sert à présenter les données sous forme de tableau. Avant de pouvoir exécuter cette fonction, il faut déclarer un tableau. Vous pouvez déclarer des variables, comme par exemple un tableau, à partir d’un panneau de fonction. Pour ce faire, les étapes suivantes vont vous aider pour la déclaration. 1/ Cliquez sur le champ Waveform et tapez « tableau ». 2/ Sélectionnez Declare Variable dans le menu Code pour déclarer la variable « tableau » en mémoire. Vous voyez alors apparaître une boîte de dialogue avec la variable « tableau » automatiquement insérée dans le champ Variable Name. 3/ Tapez « 100 » dans le champ « Number of Elements ».

© National Instruments Corporation

25

Guide d’évaluation LabWindows/CVI

4/ Vérifiez que les cases « Execute declaration » et « Add declaration to top of target file » sont bien cochées et cliquez sur OK.

Figure 3-8 Compléter le panneau de fonction Read Waveform Terminez la configuration du panneau de fonction avant de l’exécuter de la façon suivante. 1/ Cliquez sur le champ Sample Periode pour mettre en surbrillance. 2/ Sélectionnez Declare Variable dans le menu Code. 3/ Tapez Delta_t dans le champ Variable Name. Vérifiez que les cases « Execute declaration » et « Add Declaration… » sont bien cochées et cliquez sur OK. 4/ Cliquez sur le champ Xzero pour le mettre en surbrillance. 5/ Sélectionnez Declare Variable dans le menu Code. 6/ Tapez x_zero dans le champ Variable Name. Vérifiez que les cases « Execute declaration » et « Add Declaration… » sont bien cochées et cliquez sur OK. 7/ Tapez err dans le champ Error. Cette variable a déjà été déclarée précédemment. 8/ Sélectionnez Run Function Panel dans le menu Code pour exécuter le panneau de fonction. Enregistrez les changements avant de lancer l’exécution. Si vous avez correctement exécuté la fonction Initialize, le champ Read Waveform Error devrait afficher 0. Une fois la fonction exécutée, vous voyez apparaître une rangée de cases dans le champ Waveform, ce qui signifie que les données figurent bien dans le tableau. 9/ [Optionnel] Vous pouvez double-cliquer sur les tirets qui se trouvent dans le champ Waveform. Cela activera l’éditeur de tableau et vous permettra d’inspecter les valeurs récupérées. 10/ Sélectionnez Insert Function Call dans le menu Code pour recopier le code généré dans la fenêtre d’édition de source. 11/ Fermez le panneau de fonction. La ligne de code suivante existe désormais dans votre fonction AquirePROG. err = scope_read_waveform (2, tableau, &valeur, &X_zero);

© National Instruments Corporation

26

Guide d’évaluation LabWindows/CVI

Afficher la courbe sur le graphe À présent, notre programme peut acquérir des données. L’étape suivante consiste à utiliser la fonction Plot Y, qui sert à tracer le contenu d’un tableau de données acquises dans le graphe de l’interface utilisateur. Les étapes suivantes vont vous aider à afficher et à sélectionner la fonction Plot Y. 1/ Ouvrez le panneau de fonction Plot Y. Il se trouve dans le menu Library>>User Interface>>Controls/Graphs/Strip Charts>>Graph and Strip Charts>>Plotting and Deleting. 2/ Remplissez les champs du panneau de fonction comme indiqué à la figure 3-9. Panel Handle : panelHandle Control ID : PANEL_GRAPHE Y Array : tableau Number of Points : 100

Figure 3-9 Nota : Pour remplir les champs « panelHandle » et « Y Array », vous pouvez utiliser la fonction Select Variable du menu Code et sélectionner les variables correspondantes soient : « panelHandle » et « tableau ». Ces variables sont déjà déclarées.

© National Instruments Corporation

27

Guide d’évaluation LabWindows/CVI

Ensuite vous activez le champ Control ID en cliquant dessus, puis vous placez la constante PANEL_GRAPHE avec l’option Select UIR Constant du menu Code 3/ Dans le panneau de fonction Plot Y, sélectionnez Insert Function Call du menu Code pour insérer la fonction Plot Y dans votre code source. 4/ Fermez le panneau de fonction. Les modifications que vous avez apportées dans la fonction AquirePROG devraient correspondre au code source présenté dans la section suivante. Enregistrez les modifications apportées.

Afficher le programme Une fois terminé, le fichier source doit comprendre le code suivant :

© National Instruments Corporation

28

Guide d’évaluation LabWindows/CVI

Exécuter le projet Nous disposons maintenant d’un projet complet, nommé PremierProjet.prj. Vous pouvez visualiser le statut de chaque fichier associé au projet de la fenêtre Project et modifier chacun d’entre eux. Sélectionnez Run Poject dans le menu Run pour exécuter le code. Au cours du processus de compilation, LabWindows/CVI va reconnaître que votre programme nécessite le fichier d’en-tête scope.h. Il va donc proposer de l’insérer dans votre code source. Cliquez sur Yes pour ajouter ce fichier inclus dans votre programme. Voici les étapes qui se déroulent lorsque vous exécutez le programme. •

LabWindows/CVI compile le code source PremierProgramme.c qu’il lie ensuite avec les bibliothèques correspondantes dans LabWindows/CVI. • L’interface utilisateur s’affiche, prête à recevoir des informations du clavier ou de la souris. • Lorsque vous cliquez sur le bouton Acquire, LabWindows/CVI exécute la fonction associée au bouton, soit AquirePROG. La fonction AcquirePROG lit les données en provenance de l’instrument simulé avant de les afficher sur le graphe de l’interface utilisateur. Remarque : lorsque vous cliquez sur Acquire plusieurs fois de suite, les données des acquisitions précédentes restent affichées. Vous pouvez modifier la fonction AquirePROG en incluant la fonction DeleteGraphPlot comme dans l’extrait de code suivant. Cela permet de n’afficher qu’une seule courbe à chaque fois qu’il y a action sur le bouton Acquire. Le panneau de la fonction DeleteGraphPlot se trouve dans le menu Library sous User Interface>>Controls/Graphs/Strip Charts>>Graphs and Strip Charts>>Graph Plotting and Deleting.

© National Instruments Corporation

29

Guide d’évaluation LabWindows/CVI

© National Instruments Corporation

30

Guide d’évaluation LabWindows/CVI

Modification du programme. Sachant que le driver d’instrument peut générer une sinusoïde ou bien une courbe aléatoire, nous allons modifier le programme pour permettre à l’utilisateur de choisir la courbe qu’il souhaite tracer. Pour cela, ouvrez votre interface utilisateur et placez un « Menu Ring » comme cidessous et agrandissez-le en vous servant du pointeur de souris. Puis double-cliquez dessus pour accéder à la boîte de dialogue d’édition d’attributs.

Figure 3-10

Dans le champ Label, donnez le titre « Selection » à votre menu Ring. Ensuite double-cliquez sur le bouton Label/Values Pairs… pour accéder au panneau éditeur du Label.

© National Instruments Corporation

31

Guide d’évaluation LabWindows/CVI

Figure 3-11

Une fois que vous accédez au panneau éditeur du Label (Edit Label/Values Pairs), tapez « Sinusoïde » dans le champ Label et « 1 » dans le champ Value comme décrit à la figure 3-12, ensuite cliquez sur le bouton Below, puis tapez « Aléatoire » dans le champ Label, et « 2 » dans le champ Value. Cliquez sur OK pour fermer le panneau d’éditeur du Label et à nouveau sur OK pour fermer la boîte de dialogue « Edit Ring ». Enregistrez les modifications et fermez l’interface utilisateur.

© National Instruments Corporation

32

Guide d’évaluation LabWindows/CVI

Figure 3-12

Ouvrez votre fenêtre code source afin de le modifier pour prendre en compte les changements apportés à votre interface utilisateur. Placez votre curseur à l’intérieur de la fonction AcquirePROG sur une ligne vierge et apportez les modifications suivantes. Le but de l’exercice est de récupérer la valeur retournée par la sélection de l’opérateur (PANEL_RING) et ensuite de l’utiliser dans la fonction de lecture scope_read_waveform. Si le choix de l’opérateur est « Sinusoïde », la valeur retournée est 1 et si le choix est « Aléatoire », la valeur retournée est 2.

© National Instruments Corporation

33

Guide d’évaluation LabWindows/CVI

Pour récupérer le choix de l’opérateur, vous utiliserez la fonction Get Control Value. Elle se trouve dans Library>>User Interfaces>>Controls/Graphs/Strip Charts…/General Functions. Vous accédez au panneau de la figure 3-14.

Figure 3-13

© National Instruments Corporation

34

Guide d’évaluation LabWindows/CVI

Figure 3-14

Remplissez votre panneau comme ci-dessus (figure 3-14), puis déclarez votre variable « function » qui doit récupérer la valeur du choix de l’opérateur. Vérifiez que pour la déclaration vous avez coché les deux cases comme à la figure 3-15.

Figure 3-15

© National Instruments Corporation

35

Guide d’évaluation LabWindows/CVI

À présent, nous allons modifier la fonction de lecture pour prendre en compte la variable « function ». Pour cela, placez votre pointeur de souris sur la fonction scope_read_waveform, cliquez droit et choisissez l’option « Recall Function Panel » (Figure 3-16). Sélectionnez le champ Channel, puis appuyez sur + T. Puis, dans ce même champ tapez « function » ensuite insérez votre fonction Code>>Insert Function Call. Dans la boîte de dialogue qui s’ouvre par la suite, choisissez l’option Replace.

Figure 3-16 Une fois ces modifications faites, votre « Callback » AcquirePROG devrait ressembler à la portion de code ci-dessous.

Conclusion Si aucune erreur de programmation n’a été faite, le programme doit être compilé correctement puis exécuté. En résumé, à chaque clic sur le bouton Acquire, le programme exécute la fonction associée. L’ancienne courbe est effacée et une nouvelle courbe est tracée. L’opérateur peut à tout moment choisir le type de courbe à afficher.

© National Instruments Corporation

36

Guide d’évaluation LabWindows/CVI

Figure 3-17

© National Instruments Corporation

37

Guide d’évaluation LabWindows/CVI

LabWindows/CVI : LA SOLUTION IDÉALE Bien que vous ayez terminé la lecture de ce guide d’évaluation, rappelez-vous toutefois que vous n’avez fait qu’effleurer la programmation avec LabWindows/CVI. En effet, ses capacités vont bien au-delà de ce que vous avez abordé jusqu’à présent. LabWindows/CVI offre une solution idéale pour vos besoins de programmation en matière d’instrumentation, avec des caractéristiques en perpétuelle amélioration et un grand nombre de boîtes à outils complémentaires.

Des caractéristiques supplémentaires pour répondre à vos besoins National Instruments ne cesse d’améliorer et d’augmenter les possibilités de LabWindows/CVI en ajoutant des boîtes à outils et des options de support matériel. LabWindows/CVI garantit une entière compatibilité avec les outils de programmation standards. Toutes les bibliothèques d’instrumentation, d’analyse et d’interface utilisateur de LabWindows/CVI sont disponibles sous forme de DLL standards 32 bits pour les environnements de programmation C/C++ de Microsoft, Borland, Symantec et Watcom. En plus des fichiers standards exécutables (.exe), LabWindows/CVI vous permet également de construire des DLL 32 bits compatibles non seulement avec vos outils C/C++ à usage universel, mais aussi avec Visual Basic et LabVIEW. Comme toujours, LabWindows/CVI vous offre la solution de driver d’instrument la plus complète du marché : soit quelque 600 drivers pour des instruments proposés par plus de 65 instrumentiers différents. La bibliothèque de drivers d’instruments inclut des drivers pour les instruments GPIB, VXI, série et CAMAC. En outre, l’Aliance Systems VXIplug&play a adopté LabWindows/CVI comme technologie essentielle et fondement à la normalisation industrielle.

© National Instruments Corporation

38

Guide d’évaluation LabWindows/CVI

Des boîtes à outils complémentaires National Instruments propose toute une série de boîtes à outils complémentaires à LabWindows/CVI qui vous serviront dans des domaines d’applications bien spécifiques. Ces boîtes à outils sont des bibliothèques ou des utilitaires qui répondent aux besoins des marchés, industries ou domaines d’applications très spécialisés. •

SQL Toolkit (Windows uniquement) : il s’agit d’un ensemble de bibliothèques que vous pouvez utiliser pour vous connecter à plus de 30 bases de données locales ou déportées. Avec ces bibliothèques, vous pouvez connecter vos programmes de test directement à une base de données pour enregistrer les résultats ou télécharger les paramètres de test.



PID Control Toolkit : il s’agit d’un ensemble d’algorithmes pour le contrôle PID que vous pouvez intégrer dans vos applications de gestion et de contrôle de processus.



Internet Developers Toolkit (Windows uniquement) : il s’agit d’une bibliothèque de fonctions qui vous aide à créer un serveur Web en vue d’afficher vos panneaux d’interface utilisateur LabWindows/CVI sur Internet. Les utilisateurs du Web peuvent ainsi cliquer sur ces panneaux pour interagir avec vos applications LabWindows/CVI. Vous pouvez également envoyer des E-mail à partir de vos applications et de vos fichiers de transfert vers et depuis les serveurs FTP.



Digita Filter Design Toolkit : il s’agit d’un outil de conception polyvalent destiné au conditionnement de signaux, aux systèmes de commande ainsi qu’au traitement de signaux numériques.



Third-Octave Analysis Toolkit (Windows uniquement) : il s’agit d’un analyseur sur PC en tiers d’octave prêt-à-l’emploi.

© National Instruments Corporation

39

Guide d’évaluation LabWindows/CVI

L’ENGAGEMENT DE NATIONAL INSTRUMENTS LabWindows/CVI est le fruit d’un engagement de longue date pris par National Instruments : offrir des outils qui simplifient le développement de systèmes d’instrumentation en utilisant des langages standards. En choisissant LabWindows/CVI comme environnement de développement, vous enrichissez le nombre de scientifiques et d’ingénieurs qui profitent déjà de la puissance de la programmation C ANSI et de la souplesse de Windows pour leur système d’instrumentation.

La formation des clients National Instruments propose des cours de formation approfondis de trois jours sur LabWindows/CVI. Vous y apprendrez à construire rapidement vos applications. Les informations et les astuces de développement qui vous y sont présentées peuvent accroître votre productivité dans LabWindows/CVI. Ces cours sont proposés tous les mois dans nos locaux. Sachez en outre que vous sont également proposées des formations de deux jours sur le GPIB et l’acquisition de données qui devraient vous renseigner sur les systèmes dans leur totalité. Le programme Alliance Le programme Alliance est un réseau de conseillers et de développeurs tierce partie, tous spécialistes de LabWindows/CVI. Le manuel National Instruments Solutions répertorie les bibliothèques et les utilitaires supplémentaires développés par les membres de notre programme Alliance pour vous aider à utiliser LabWindows/CVI. Il vous fournit par ailleurs les coordonnées des spécialistes LabWindows/CVI que vous pouvez solliciter pour vous aider à personnaliser vos applications. Le support technique National Instruments vous fournit une multitude de précieuses informations qui vous aideront à compléter vos applications. Vous pouvez utiliser nos sites Internet (Web et FTP) pour télécharger des informations importantes ou des exemples de produits, des documents informatifs ou des astuces relatives au développement technique. Un forum technique sur LabWindows/CVI existe sur Internet pour que vous puissiez discuter de vos difficultés avec d’autres utilisateurs de LabWindows/CVI. Par ailleurs, National Instruments vous propose les services d’ingénieurs hautement qualifiés qui vous assurent une assistance technique rapide et efficace. Les clients de National Instruments peuvent contacter notre service support technique par : E-mail : [email protected] Fax : 01 48 14 24 14

© National Instruments Corporation

40

Guide d’évaluation LabWindows/CVI