Partie 2 : Acquisition de données avec une carte Daqmx Measurement and automation Explorer (MAX) Programmation à l’aide de l’assistant Programmation par tâches
a) Measurement and Automation Explorer (MAX) Affiche la liste des périphériques et des instruments connectés au système. Permet d’exécuter des tests pour vérifier le bon fonctionnement des périphériques connectés Permet la configuration du matériel Permet de créer et modifier les voies, les tâches, les interfaces…. Il faut absolument lancer Measurement & automation avant de lancer le programme sous LabView pour vérifier que tous les instruments avec lesquel nous voulons communiquer sont connectés.
MAX Vérification que la carte d’acquisition est bien connectée On peut modifier le nom du périphérique (clic droit sur le nom par défaut puis Renommer) Une fois que l’on constate le bon fonctionnement de la carte d’acquisition, on peut fermer MAX Première vérification du bon fonctionnement de la carte d’acquisition
Les modules USB6009 Sur ces modules, possibilités d’utiliser soit: Des entrées (AI *) ou sorties (AO *) analogiques Des entrées ou sorties numériques (P*.**) Une entrée compteur (PFI0). Même brochage pour les modules USB 6008, Différences : 6008 Input résolution = 12 bits alors que 6009 c’est sur 14 bits Et Max sampling rate 48 kS/s pour le 6009 et 10 kS/s pour le 6008. Courant maxi 8.5 mA
b) Programmation à l’aide de l’assistant Cet assistant se trouve dans E/S mesures/DAQmx-Acquisition de données
Choix si l’on veut une entrée (acquérir) ou une sortie (générer) puis le type (analogique, compteur ou numérique) Dans l’assistant, il propose une sortie compteur mais il n’en existe pas sur les modules USB 6009. Lorsqu’on sélectionne puis qu’on clique sur suivant, il affiche « aucun périphérique connecté ».
Choix du n° de la voie utilisée puis configuration des paramètres Gamme du signal d’entrée, il définira la résolution On peux sélectionner plusieurs voies à la fois avec CTRL ou MAJ Résolution = delta V/2^14 (pour le 6009 et 12 pour le 6008)
Paramètres de cadencement Mode d’acquisition : on peut lire un seul échantillon (les deux paramètres suivants sont alors inutiles) ou N échantillons pour permettre un moyennage. Echantillons à lire : Définit le nombre de fois où l’on va lire la tension lorsqu’on exécute une fois la tâche Fréquence : représente la vitesse à laquelle est lu chaque échantillon, est limitée à 48kHz pour le 6009 et 10kHz pour le 6008 Cadencement=échatillonage
Configuration du terminal Mode différentiel : DIFF (le meilleur) Mode Referenced Single Ended : RSE mode référencé à une masse commune (pas recommandé) Mode Non Referenced Single Ended :NRSE mode masse commune non référencé (bon) Signal référencé : alimentations, générateurs de signaux, tout ce qui se connecte dans une prise secteur référencée à la terre Signal non référencé : piles, thermocouples, transformateurs, …….
Connexion des entrées analogiques
Exemple 1 : Id Vd Diode V1 R V2 Nous allons générer une tension V1 qui varie de 0 à 5V. Cette tension augmentera d’un pas: p = 5 /(« Nbre de mesures » (défini par l’utilisateur)-1). On utilisera un assistant DAQmx : générer une tension
Avantages et inconvénients de l’assistant Très simple d’utilisation : il suffit de compléter tous les éléments demandés par l’assistant au fur et à mesure. Réutilisation du programme sans modification impossible: si le module a été branché sur un autre port que celui utilisé lors de la programmation, il faudra soit : Ouvrir MAX et renommer le périphérique comme lors de la programmation Rouvrir l’assistant et recréer la tâche
c) Programmation par tâches La programmation est un peu plus compliquée, mais on maîtrise mieux l'organisation du programme. L'algorithme est le suivant : Définir la voie dans E/S de mesures Créer la tâche correspondante Faire démarrer la tâche E/S de mesures Effectuer la lecture (ou l’écriture) E/S de mesures Arrêter lecture E/S de mesures Supprimer la tâche E/S de mesures Remarque : Pour la voie physique, par défaut c’est une entrée analogique, pour changer, cliquez avec le bouton droit sur le constante et choisir Filtrage du nom E/S puis choisir le Type.
Exemple : Générer une tension Exemple : Lire une tension Remarque : Pour piloter deux voies en même temps, il faut indiquer les deux voies en les concaténant séparées d’une virgule (,) . Les valeurs des tensions sont alors données par un tableau où la première valeur du tableau correspond à la première voie (avant la ,) et la deuxième valeur à la deuxième voie (après la ,) Mêmes fonctions mais options différentes AI = entrée et AO=Sortie Cette configuration permet un moyennage des mesures
Exemple 2 : E/S analogiques On se ramène à la caractérisation d’une diode dont on mesure V2=f(V1). Ce programme devra posséder les fonctionnalités suivantes : acquisition du signal brut V2=f(V1) traitement, calcul de Id=g(Vd) représentation graphique enregistrement d’une série de valeurs Lecture d’une mesure précédemment réalisée V1 R Diode V2 Vd Id
Analyse du programme : On aura 3Vis : Lire.vi : lecture du fichier tableur. Rec.vi : enregistrer un fichier tableur (V1 , V2, Id et Vd). VI principal nommé Acquisition_DEL.VI