Acquisition -synchronisation de 2 voies en lecture

Bonjour à tous,
je souhaiterais écrire une tension sinusoidale  sur une entrée analogique AI 1  à partir d'une voie DAQ de  sortie AO1 . Jusque là tout va bien.
Ensuite lire ( acquisition ) la voie AI1 et la voie AI 2 en  synchronisant le départ d'acquisition  (sur un font montant par exemple ) sur la voie AI1 . Et là rien ne va  ! J'ai essayé avec un déclenchement sur APFI0 mais si je met un seuil l'acquisition de se lance pas. Il faudrait peut être lancer l'acquisition quelques ms avant l'écriture sur AO1 mais je n'ai pas trouvé de solution.
Quelques ms d'écart ne sont pas critiques si je les connais...
Il y a t'il un moyen ?
Merci .
Cordialement.

Bonjour,
Pouvez-vous nous transmsttre plus d'information ?
Quelle carte utilisez-vous ?
Avec quelle version de LabVIEW et de NI DAQmx travaillez-vous ?
Cordialement
Guillaume D

Similar Messages

  • Data acquisition synchronisation Arduino/LabView

    Hello,
    I'm trying to acquire force sensor values using an Arduino board (reading the data and controlling a motor) and LabView. The data acquisition rate is tunable according to the motor condition, meaning a high acquisition rate (short delay) during the ON state of the motor and a low acquisition rate (long delay) during the OFF state of the motor.
    I managed to acquire the data, but till now I always find some "0" values though I'm applying a continuous force on the sensor. I guess the main problem is the synchronisation of the "datarate" on the Arduino board and the acquisition time point in LabView.
    I hope that you could halp me, since I'm trying since weeks to overcome this problem. You will find both the LabView and the Arduino source codes in the attachment.
    Attachments:
    CBR control_opti.vi ‏206 KB
    CBR_Arduino.docx ‏15 KB

    Dear all,
    last week I had some limited time, which I could dedicate to my work with Labview. Unfortunately I'm not able to solve the problem with the Consumer/Producer architecture. It seems to be the appropiate solution, but due to my limited knowledge I'm not capable of doing that.
    I will add my modifications (CBR control_Prod-Cons.vi) to give you an idea about what I've achieved so far. I appriciate any help of you, since this story is driving me crazy. Additionally, I attach a JPG showing the readout I'm obtaining with the old version (CBR control.vi), where the red circles indicate the problem with the "0" values.
    Thank you again,
    Cheers 
    Attachments:
    CBR control_Prod-Cons.vi ‏203 KB
    sensor read out.JPG ‏164 KB
    CBR control.vi ‏206 KB

  • Erreur -200152 sur l'eeprom de la carte 8 voies 4472

    Bonjour,
    J'utilise un chassis pxi -1031 DC sur lequel est connecté deux cartes d'acquisition: une carte 8 voies 4472 et une carte 32 voies 6229.
    Je déclenche l'acquisition simultanée des cartes à l'aide d'un programme labview.
    Mon problème est le suivant:
    Il arrive que la carte 8 voies ne déclenche pas l'acquisition et fait planter le programme. Quand cela arrive, il peut apparaitre deux erreurs:
    - soit erreur -200152 données lues à partir de l'eeprom du périphérique ne sont pas valides (meme erreur lors de l'auto test sous MAX)
    - soit erreur -89125 AUcune ligne de déclenchement n'a pu etre trouvée. Et dans ce cas les deux cartes passent tres bien l'auto test sous MAX, de meme que l'acquisition d'une carte à la fois. C'est l'acquisition simultanée qui ne fonctionne pas.
    Je précise que le redémarrage de l'ordinateur et du chassis peut parfois résoudre le probleme (et parfois non)
    Si quelqu'un a une idée sur l'origine de ce probleme, je le remercie d'avance.
    Bien cordialement.

    Bonjour,
    Concernant l'erreur -200152, il y a un contournement vous pouvez vous référer à ce document : http://digital.ni.com/public.nsf/allkb/CD582258164​5D90C862572BC005EA7B2?OpenDocument
    Pour l'erreur -89125 il semblerait que cela soit lié à la configuration du chassis  :
    http://digital.ni.com/public.nsf/allkb/281704A664F​B80BC862572700001410E?OpenDocument
    http://www.ni.com/white-paper/11136/en
    Il est néanmoins étrange cela ne soit pas reproductbible, pouvez-vous nous dire si vous faites des manipulation particulières avant les essais où ça ne marche pas ?
    Cordialement
    Jean-Luc D. NI France
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Journées techniques : du contrôle d'instruments aux bancs de test
    Du 4 au 13 juin : Grenoble - Pari...

  • Problème synchronisation PCI 6733

    Bonjour,
    Ce post est un peu la continuation d'un autre initié sur la base d'une PCI 6733. Les voies analogiques sont le résultat de calculs, 1 seconde de signal est préalablement calculé et envoyé aux buffeurs de la carte. Parallèlement les signaux digitaux sont eux aussi calculé sur cette durée de 1s et envoyés au même moment que les voies analogiques dans la tache correspondante (les fréquences d'échantillonnage des signaux sont les mêmes, ie même nombre de points analogiques et numériques. Pour chaque type de voie 10 buffeurs sont définis (donc un décalage de 10 entre ce qui calculé et ce qui est joué).
    Ma question: de temps en temps, on peut constater en sortie de carte un décalage (non fixe, entre 100ms et plus d'une seconde) de synchronisation entre les voies analogiques et numériques. A l'envoi sur les taches Dacqmx, les voies sont synchrones, en sortie de carte PCI 6733, elles ne le sont plus.
    1/ Sachant que le problème est aléatoire, et qu'un arrêt de l'application et un redémarrage suffise pour que tout rentre dans l'ordre, puis-je trouver un moyen de détecter ce problème et le signaler à l'utilisateur via l'interface?
    2/ D'ou pourrait venir ce décalage , et surtout comment s'assurer de la synchronisation des 2 types de voies?
    Merci pour votre aide,
    Cordialement.

    Bonjour,
    Avez-vous fait un benchmark de vos calculs ?
    Combien de temps prend un calcul d'une seconde de signal? Il serait intéressant de connaitre cela.
    Par ailleurs, il y a des fonctions DAQmx qui permettent de connaitre l'état du buffer de la carte. Cela pourrait donner une indication supplémentaire sur l'origine du problème.
    Afin de mieux vuos aider, pouvez-vous nous dire en quoi vous développez : LabVIEW, CVI, autre ?
    Cordialement
    Jean-Philippe C.
    National Instruments France

  • Acquisition DAQmx read

    Bonjour,
    Je suis en train de réaliser une application qui fait l'acquisitionde deux signaux en sortie d'accéléromètre!!
    Mon problème est quand je fais le contrôle du bruit j'ai une erreur qui s'affiche (voir capture), et ça vients de mon DAQmx Read
    Les deux vi en piece jointe sont pour l'acquisition d'une des voies, et en faite j'ai exactement les mêmes pour l'autre voie j'ai juste changé la chaîne que je lis!!!
    Si vous avez une idée merci
    Arnaud
    Pièces jointes :
    Essai Projet final.zip ‏32 KB
    Acquisiton.JPG ‏15 KB

    Je viens d'utiliser ton vi qui marche plutôt bien!!! Par contre je vois pas trop comment faire pour indexer mon tableau!!
    Après mon traitement du signal, j'ai un 1D array of Cluster of 3 éléments et je sais pas comment choisir ma courbe a afficher!!!
    Pièces jointes :
    Affichage.JPG ‏192 KB

  • Réalisatio​n de l'acquisit​ion des quatres voies du module NI USB 9161

    Les logiciels(NI datalogger,Measurement & automation), fournies avec le module NI USB 9161, permettent'ils l'acquisition simultané des quatres voies du module USB 9161??
    Le logiciel VIdataloggerlite permet t'il de réaliser cette acquisition??

    Les logiciels(NI datalogger,Measurement & automation), fournies avec le module NI USB 9161, permettent'ils l'acquisition simultané des quatres voies du module USB 9161??
    Le logiciel VIdataloggerlite permet t'il de réaliser cette acquisition??

  • Compact DAQ Acquisitio​n sur plusieurs modules

    Bonjour,
    Nous devons réaliser une petit enregistreur sur la base de matériel Compact
    DAQ.
    L’enregistreur doit pouvoir enregistrer les voies de plusieurs modules
    (température (USB 9213), tension (USB 9215))...
    Dans le petit programme en pièce jointe je pense ne pas utiliser la meilleure
    méthode pour acquérir les voies et mesures.
    trois problèmes sont rencontrés
    1- une même tâche ne peut contenir l'acquisition de voies de modules
    distincts, ce qui m'oblige à créer deux tâches en acquisition, une pour les
    voies "tension" une autre pour les voies "température".
    Cela reste possible à faire mais complique le diagramme et ne facilite pas
    l'ajout ou le retrait de modules et l'acquisition de voies (diagramme impacté).
    2- dans le programme écrit la fréquence d'acquisition doit être unique pour
    l'ensemble des modules. Il suffit de mettre la fréquence une à 1Hz et la deux à
    10Hz pour constater que la fréquence pour les deux tâches sera forcée à 1 Hz la
    fréquence possible est ici limitée par le module le plus lent (thermocouple).
    Une acquisition rapide des voies "tension" n'est alors pas
    réalisable.
     3- avec la configuration pénalisante de l'acquisition de l'ensemble
    des voies thermocouple du module USB 9213 la fréquence Max est fixée à 75Hzen
    utilisant en fréquence 1 50Hz et en deux 1Hz pour tester la robustesse du
    programme on obtient rapidement L'erreur -200279:Tentative de lecture
    d'échantillons qui ne sont plus disponibles. L'échantillon demandé était
    auparavant disponible, mais il a été écrasé depuis.
    Je pense que la technique globale pour acquérir les voies des modules
    n'est certainement pas adaptée. Une aide salutaire sur ce pb nous sera dès plus
    utile...
    Merci d'avance
    CS
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    ENREGISTREUR_USB_DAQ.zip ‏68 KB

    je dispose d'un chassis cDAQ-9178, CompactDAQ chassis (8 slot USB)
    la configuration du matériel est récupérable à l'adresssuivante: 
    http://ohm.ni.com/advisors/compactdaq?configid=CD1​720585&elq=c067d1165fac4266bfced875dfa57429
    Un élément de réponse pour réaliser l'acquisition multifréquences, est de modifier le mode de relecture des voies Daqmx. La solution est fonctionnelle, reste que la méthode n'est pas très souple car en cas d'ajout de voies et de modules il faut obligatoirement modifier le diagramme.
    CS
    Pièces jointes :
    ENREGISTREUR_USB_DAQ.zip ‏69 KB

  • Résolution carte NI 9234

    Bonjour,
    J'ai une carte NI9234 que j'utilise pour acquérir une sinusoide entre (-200mV; 200mV)
    J'utilise pour acquérir mes échantillons, la fonction DAQmxReadBinaryI32. Pourriez vous me dire comment sont organisées les données dans le buffer de lecture ?
    Les 24bits que je lis (Résolution de la carte) sont ils bit de poid fort à gauche ou à droite ?
    J'utilise la fonction DAQmxCreateAIVoltageChan pour créer ma voie de lecture. Quelle min et max je doit mêttre pour avoir la résolution la plus précise ?, Comment cela influence les données que je lis ?
    Merci d'avance pour vos réponses,
    Cordialement,
    Stéphane

    Bonjour,
    En réalité, le 9234 ne possède pas de buffer, c'est plutot le chassis l'utilisant (cDAQ, USB/ETH 1 slot etc) qui en possède un.
    Maintenant, il n'y a pas vraiment d'utilité de savoir comment chaque bit est placé, DAQmx retourne les valeurs directement interprétable.
    Maintenant si vous voulez récupérer du RAW (la valeur sur un I32, I16 par ex.) il faudra comme je l'ai dit, reconvertir les valeurs dans la gamme voulu.
    Cad par exemple pour un +=5V la valeur maximale relative du I32 = 5V et la valeur minimale négative du I32 = -5V.
    Ou alors vous pouvez aussi récupérer la valeur directement convertie sur un float via DAQmxReadAnalogF64 par exemple.
    Dans tous les cas, il n'y a pas besoin de venir jouer avec les octets/bits renvoyés.
    Pour toutes autres précisions et exemples vous pourrez vous référer au manuel de référence C de DAQmx:
    NI-DAQmx C Reference Help
    http://digital.ni.com/manuals.nsf/websearch/6A79EF​4F9F30AFC086257A4400600861
    Aussi, si ce n'est pas déjà fait, installer le support de DAQmx pour les langages textuels qui vient aussi installer des exemples C, .NET etc:
    Installing NI-DAQmx Examples for LabWindows/CVI
    http://digital.ni.com/public.nsf/allkb/BA4DF79463C​884BD86256E0B00813E1E?OpenDocument
    que vous retrouverez alors ici:
    Location of ANSI C NI-DAQmx Shipping Examples and DAQmx Library File for Windows
    http://digital.ni.com/public.nsf/allkb/FB26BDA52FF​FD4EE86257124005C36C3
    Vous trouverez facilement des exemples d'acquisition prêt à l'emploi, qui vous aiderons à démarrer.
    Cdlt
    Victor F. | Application Engineer
    Certified LabVIEW Developer | Certified TestStand Architect
    National Instruments France

  • Plusieurs graph sur un graph déroulant

    Bonjour,
    Je travaille sur une application dans laquelle j'ai un graph déroulant qui affiche les valeurs reçu par différents thermocouples. Le nombre de thermocouple utilisé n'est pas fixe il est défini par l'utilisateur. Toutes les 30 sec, mon programme fait une acquisition sur toutes les voies définies par l'utilisateur et stock les données dans un tableau (chaque élément du tableau correspond à une voie). Pour afficher toutes ces données dans un même graph déroulant, je transforme ce tableau en cluster et je l'envoi sur le graph.
    Voila mon problème : pour transformer un tableau en cluster, ou dés qu'on veut utiliser un cluster de façon général, il faut définir ce cluster (nombre et type d'éléments) dans le programme. Or moi je ne peut pas car c'est l'utilisateur qui choisit le nombre de voies, je ne connait donc pas à l'avance le nombre d'élément de ce cluster ... Pour l'instant je définit une très grande taille de cluster mais bon ça affiche plein de courbe à 0 et c'est un peu moche ...
    Du coup je me demandais si il existait une meilleur technique pour afficher plusieurs courbes sur un même graph ? Ou peut-être que le graph déroulant est une solution mais que je m'en sert mal ?
    Merci d'avance je suis un peut perdu là ....

    Hi.
    Kia to get a faster answer on this part of forum you should post in English. You know where is the french forum .
    Similar thread.
    Thanks Ramses for your reply.
    Regards.
    Romain D.
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    NIDays 2010 : Conférence mondiale de l'instrumentation virtuelle
    >>Détails et Inscription<<

  • Afficher plusieurs courbes dans un graph déroulant

    Bonjour,
    Je travaille sur une application dans laquelle j'ai un graph déroulant qui affiche les valeurs reçu par différents thermocouples. Le nombre de thermocouple utilisé n'est pas fixe il est défini par l'utilisateur. Toutes les 30 sec, mon programme fait une acquisition sur toutes les voies définies par l'utilisateur et stock les données dans un tableau (chaque élément du tableau correspond à une voie). Pour afficher toutes ces données dans un même graph déroulant, je transforme ce tableau en cluster et je l'envoi sur le graph.
    Voila mon problème : pour transformer un tableau en cluster, ou dés qu'on veut utiliser un cluster de façon général, il faut définir ce cluster (nombre et type d'éléments) dans le programme. Or moi je ne peut pas car c'est l'utilisateur qui choisit le nombre de voies, je ne connait donc pas à l'avance le nombre d'élément de ce cluster ... Pour l'instant je définit une très grande taille de cluster mais bon ça affiche plein de courbe à 0 et c'est un peu moche ...
    Du coup je me demandais si il existait une meilleur technique pour afficher plusieurs courbes sur un même graph ? Ou peut-être que le graph déroulant est une solution mais que je m'en sert mal ?
    Merci d'avance je suis un peut perdu là ....

    avec un graph xy cela me parait plus facile ( tableau de n clusteur ) pour n courbes
    si le graph déroulant est remplaçable ?

  • Utilisatio​n NI USB-6356 sur un banc moteur

    Bonjour,
    Je souhaite utiliser une carte NI USB-6356 sur un banc moteur pour récupérer 3 I 3 U et couple - vitesse. Je souhaite fonctionner par tâches mais je n'arrive pas à synchroniser mes 8 voies, quelqu'un pourrait-il m'aider?
    Merci d'avance.
    Cordialement.

    Bonjour,
    Je t'invite vivement à jeter un oeil à ce lien ci-dessous, tu y trouveras une quantité importante d'exemple en DAQ et spécialement sur la syncrho.
    Index of DAQmx Shipping Examples (2011 and previous)
    https://decibel.ni.com/content/docs/DOC-25713
    Cordialement,
    Matthieu RICORD
    National Instruments France
    #adMrkt{text-align: center;font-size:11px; font-weight: bold;} #adMrkt a {text-decoration: none;} #adMrkt a:hover{font-size: 9px;} #adMrkt a span{display: none;} #adMrkt a:hover span{display: block;}
    Été de LabVIEW 2014
    12 présentations en ligne, du 30 juin au 18 juillet

  • Synchroniser DO avec acquisition de plusieurs AI

    Bonjour,
    Apres plusieurs recherches infructueuses, je poste mon probleme dans ce forum.
    Je travaille sous Labview 10 avec une carte PCI-6321.
    Mon objectif est d'arriver à synchroniser les sorties numériques avec l'acquisition de plusieurs voies analogiques.
    Autrement dit j'envoie un pattern numérique sur les DO (qui à terme, vont piloter l'état d'un multiplexeur) et je souhaite faire l'acquisition de plusieurs AI à chaque nouveau bit généré.
    Je poste mon programme actuel qui est une adaptation de l'exemple "Correlated AI AO DI DO".
    Celui-ci fonctionne très bien pour plusieurs voies DO et 1 seule voie AI.
    Lorsque j'essaie de faire l'acquisition de plusieurs voies AI, l'acquisition perd quelques points et les AI et DO se désynchronisent de temps a autre.
    Ce problème est persistant si: je change la fréquence d'acquisition, la taille du buffer pour les voies numeriques.
    J'espere avoir été clair et que quelqu'un pourra m'éclairer.
    Merci
    Smiral
    Résolu !
    Accéder à la solution.
    Pièces jointes :
    Sync_DOAI_MUX.vi ‏37 KB

    Salut,
    La première chose qui m'étonne, c'est que tes commandes sont définies sur Dev9, mais que ta constante pour l'horloge partagée est sur Dev1. Est-ce normal?
    Ensuite, si j'ai bien compris, j'ai l'impression que c'est plutôt ta génération de signaux numériques qui doit contrôler le cadencement de ton acquisition, non?
    Du coup,pourquoi n'utilises-tu pas plutôt la DO/Sample Clock? Ainsi, tu aurais une impulsion générée à chaque émission d'un bit numérique, qui déclencherait l'acquisition.
    Sinon, comme ça, je ne vois pas d'autres incohérences. Aurais-tu des informations plus précises sur les moments et les codnitions où la synchronisation ne se fait plus?
    Cordialement,
    Olivier L. | Certified LabVIEW Developer

  • NICard 6031E Acquisition too slow when synchronisation with ATMEGA128

    Hello:
    I have an NI Card 6031E acquiring in HARDWARE SAMPLE CLOCK timing mode which means I supply a clock from an ATMEGA128 and the card acquires a value after each CLOCK high from another ASIC (Multiplexer chip).
    The clock comes from a microcontroller ATMEGA128.
    PROBLEM: I send an ' r ' character to the ATMEGA128 and subsequently I call the SAMPLE CLOCK timing read function in my user interface Visual C++ 6.0 on the PC. I am trying to synchronise PC with ATMEGA and NICARD data read, BUT I CANT DO IT.
    The thing is when the ' r ' char is received at the ATMEGA128 this one does what it has to do just ONCE and may be does it too fast for the NICARD to read the values supplied by the CLOCK from the ATMEGA128.
    The ATMEGA128 supplies a few digital binary signals (0 or 1) to the ASIC and the ASIC having received that particular sequence or digital waveform it sends the data (128 values one after each CLOCK high) to the NICARD.
    Therefore, each CLOCK high delivers a value to the NICARD from the ASIC. The problem is that it seems I loose the data on the NICARD because the sequence is done very fast at the ATMEGA128 and the NICARD takes 480us I think to perform an instruction. I tried placing the READ function before sending the r char but it blocks.
    I need SYNCHRONISATION between the NICARD acquiring values and the ATMEGA128 sending the clock and the ASIC sending data. Can I use other CHARS. I am lost! HELP! -)
    Thanks,
    Javi

    The ATMEGA128 code structure and CLOCK signal is as such:
    1 - FOR loop, therefore repeats itself always until you come out of the program execution.
    INSIDE FOR LOOP:
    2 - wait 1 microsecond, CLOCK HIGH, wait 1 micro second and CLOCK LOW
    3 - wait 26.4 microseconds, another FOR loop and inside it, (128 times CLOCK HIGH, wait 1 micro second and CLOCK LOW, and wait 26.4 micro seconds).
    4 - Once finished program goes back to 1
    So therefore the frequency of the CLOCK is of 37878.78 Hz or 37878.78 HIGH CLOCKS or samples per second which comes from 1/26.4microseconds.
    However, the initial first CLOCK on the FOR loop starting in section 1 is HIGH after 1 microsecond as described in section 2.
    The sampling frequency is set at 50000 samples per second on the NICARD, so therefore it is a sufficient setting for a 37878.78 Hz CLOCK.
    I acquire the data via an NICARD and my code sends an "r" character from the VISUAL C++ user interface to the ATMEGA128 and when the ATMEGA128 receives the "r" char it SENDS the CLOCK (and relevant waveform) to an ASIC. Then when the NICARD receives the CLOCK it acquires 1 sample on every CLOCK HIGH.
    I noticed a few days ago that when I start the CLOCK from the ATMEGA (same as sending an "r" char to the ATMEGA) on another Visual C++ application without the NICARD acquisition software functions and at the same time I start the Visual c++ application with the NICARD functions, I get almost the correct data.
    It seems that separating both Visual C++ applications PARTIALLY works but it does not make much sense.
    The difference between both is just having the NICARD functions present or not present, it seems, although it could be something else too.
    As you can see the synchronisation between the NICARD (HARDWARE TIMING CLOCK) data acquisition and the ATMEGA128 or ASIC sending data is performed via the sending of the "r" char to the ATMEGA128.
    Thanks.
    Javi.

  • Boucle lecture de voie

    Bonjour,
    Je suis bloqué sur mon programme et ca me gêne assez pour avancer dans mon projet : lorsque je veux lire les voies d'un Almemo (thermomètre) la lecture est OK le traitement etc est OK mais le changement de voie pose problème.
    En effet, si je rentre comme condition dans le VI que j'ai créé qu'il y a 3 sondes utilisées, je suis in-ca-pa-ble de faire recommencer la lecture en voie 1 lorsque les lectures sur les 3 voies (comprendre voie1, voie2, et voie 3) ont été effectuées.
    Or il me faut 30 lectures de ces 3 voies.
    Dans le VI que je vous joins : "Liste sonde" représente la 1ere sonde utilisée. Si la sonde choisie est la 2e, il faut faire : lecture sur la 2, puis lecture sur la 3, et recommencer lecture sur voie 2, etc etc..
    Si quelqu'un a une solution à me proposer, j'ai essayé avec des boucles while, for, mais ca me concatène les valeurs en sortie et ce n'est pas ce que je veux, il me les faut les une à la suite des autres.
    Cdlt, Thomas
    Edit : mauvais forum.
    Solved!
    Go to Solution.
    Attachments:
    changement voie.vi ‏12 KB

    Bonjour Thomas,
    J'ai modifié ton code, dis-moi si cela te convient, je ne suis pas sûr d'avoir exactement compris ce que tu voulais mais cela me semble s'en rapprocher :
    Bonne journée à toi,
    M-Junior

  • Synchronisation de l'acquisition de signaux analogique par un codeur incrémental

    Bonjour,
    Pour mon stage, je dois réaliser un VI par le biais de LabVIEW. Ce VI sera utilisé dans de le cadre de la caractérisation de moteur électrique.
    J'ai à ma disposition un cDAQ-9174 avec 2 modules qui sont : 9215 pour les signaux analogiques et 9411 pour les signaux numériques.
    On me demande de faire l'acquisition de signaux analogique comme un capteur de couple, une sonde à effet hall, ... en fonction de la position angulaire du moteur. Pour déterminer cette dernière, j'ai un codeur incrémental avec une résolution de 5000 point sachant qu'il possède une voie A, B et un index de position.
    Pour le moment, je suis parvenu à réaliser un projet permettant de mettre la position angulaire et la valeur de la tension du capteur dans un tableau pour chaque position différente. Je rencontre un problème qui est que je n'ai aucun contrôle sur l'échantillonnage. En effet, je n'ai pas un pas angulaire constant. Si l'utilisateur fait tourner le moteur très lentement, on arrive à avoir un échantillon tous les 0.018°, mais s'il tourne à une vitesse d'environ 15s/tour, il se peut que l'on ait des échantillons tous les degrés.
    J'aimerai faire une acquisition de mes signaux analogiques à chaque nouveaux angles avec une résolution angulaire choisit par l'utilisateur.
    J'ai mis une pièce jointe montant mon VI réalisé.
    En vous remerciant par avance
    Cordialement
    Pièces jointes :
    VI.jpg ‏135 KB

    Je n'ai pas beaucoup de temps en ce moment pour entrer dans tous les détails mais le principe consiste à utiliser le codeur pour déclencher les acquisitions de manière matérielle.
    Cela revient à dire qu'un échantillon de chaque signal AI et un échantillon de position est lu à chaque changement d'état de ce signal de déclenchement.
    Dans les exemples s'installant avec LabVIEW, vous trouverez des VIs montrant comment procéder pour une acquisition déclenchée par un signal externe.
    Si la résolution de 5000 impulsions/tour du codeur est suffisante, il vous suffit d'utiliser le signal A (ou B) du codeur en l'adaptant si nécessaire pour les niveaux TTL de la NI-9215. En utilisant un LS7184 configuré en mode X4, cette résolution pourrait être facilement multipliée par 4 en ajoutant de plus un filtrage hardware pour éliminer les éventuels parasites sur les signaux.
    C'est un principe que j'applique fréquemment avec les cartes DAQ multifonctions PCI. Il faudrait toutefois encore vérifier que le déclenchement externe est supporté par les deux modules que vous utilisez; vérification que je n'ai pas le temps de faire.

Maybe you are looking for

  • TextEdit control of HTMLB

    Hi, I want to disable the text area using textEdit control of HTMLB. if I set disabled= "true" in jsp file, then portal throws runtime error "attribute disabled is not available in HTMLB". Any suggestion. Thanks in advance. Manish

  • Error PRVF-5150 encountered while installing GI 11.2.0.3 on AIX 6.1 server

    I am building a RAC cluster on IBM pSeries hardware running AIX 6.1. The ASM LUNs for storing the vote disk and OCR (as well as all future db files) are on NetApp storage. I have built RAC clusters before, using IBM storage, but this is my first time

  • How to download/save a AI file from Web

    Hi all, I need to download some ai files from my client's web application in which, whenever I click the links from their web, my acrobat pdf reader 8.0 will be pop-up and I cannot save the ai files under the acrobat pdf reader. Recently, I don't hav

  • Import some, not all, address cards

    At work, my iMac's Addressbook has hundreds of cards that I don't need or want in my MacBook Pro I just got. I would like, though, to import into the MB Pro lots of cards from the iMac that I do want. Is there a way to do this other than laboriously

  • IBCM Software updates, Do I need an Internet SUP or not?

    Hi, A quick description of our current setup (relevant bits at least): Site server Windows Server 2012 R2 with ConfigMgr 2012 R2 C3 primary site, with intranet client only SUP DMZ server Windows Server 2012 R2 with MP and DP roles installed (no SUP)