Réinitialisation des sorties après stop task DAQmx

Bonjour,
J'ai une carte d'acquisition entrée/sortie.
Avant une boucle while, je démarre une tâche en configurant les 96 sorties numériques de ma carte. --> fonction Démarrer tâche DAQmx
Dans ma boucle while, je passe à l'état haut successivement mes 96 sorties de ma carte. ---> fonction Ecrire DAQmx
Au bout de mes 96 itérations, je quitte la boucle while. J'arrête et supprime ma tache. --> fonction Stopper et Supprimer DAQmx
Dans l'aide de la fonction "Stopper tâche", je peux lire que la fonction renvoie l'état dans lequel mes sorties se trouvaient avant la fonction "Démarrer tâche".
Pourtant, je constate que mes sorties restent à l'état haut après la fonction "stopper tache", elles ne sont pas réinitialisées à l'état bas.
Comment dois je faire pour réinitialiser simplement mes 96 sorties?
J'espère que vous pourrez me renseigner
Résolu !
Accéder à la solution.

Merci pour votre réponse.
De ce fait, j'ai une nouvelle question.
Mon programme met successivement à 0 puis à 1 toutes mes sorties numériques, selon le principe d'un chenillard.
Autrement dit, durant toute la durée de l'exécution, une seule de mes sorties numériques est à l'état haut.
Dans le cas où je quitte ma boucle while avec un bouton d'interruption, je souhaiterai remettre à zéro uniquement la sortie numérique qui est passée à l'état haut au moment de l'évenement.
J'ai essayé de mettre à zéro l'élément de mon tableau correspondant à l'indice (nombre d'itérations effectuées) avant de quitter la boucle.
Et d'envoyer cette donnée dans "Ecrire DAQmx". (voir la fonction en sortie de boucle sur l'image en pièce jointe). Cela n'a pas fonctionné
Merci de votre aide
Pièces jointes :
VI.JPG ‏155 KB

Similar Messages

  • Echec de la connexion wi fi après réinitialisation des réglages réseau

    Mon Iphone ne se connecte plus aux réseaux wi-fi habituels. "Choississez un réseau" tourne dans le vide. Via la page assistance du site d'Apple, j'ai suivi les conseils. La réinitialisation des réglages réseau a résolu mon problème il y a un mois. Depuis hier, le problème est revenu et la solution de la réinitialisation ne fonctionne pas... Merci de m'aider.
    Isabelle

    Bonjour, je ne comprends pas tous les termes que vous utilisez, mais je vais vous faire part de mon expérience. Mes ordis sont sur réseaux WiFi. Lorsque j'installe la première fois le WiFi me demande mon mot de passe. Par la suite, a chaque fois que j'ouvre un ordinateur, j'ai a chaque fois le message suivant  "Votre ordinateur n'a pu accéder à votre réseau Wifi. Je ne m'en occupe pas, parce qu'il va trouver le réseau de toute façon au de quelques secondes. Un technlicien m'a expliqué qu'il y a un modlule qui veut aller plus vite que l'autre et me signale un messsage d'erreur. Puis il trouve le réseau et ne dit plus rien.
    Google translation added by moderator:
    Hello, I do not understand all the terms you use, but I'm going to share my experience. My ordis are on WiFi networks. When I install first WiFi asks for my password. Thereafter, every time I open a computer, I each time the message "Your computer could access your wireless network. I do not mind because it will find the network anyway in a few seconds. a technlicien explained to me that there is a modlule who wants to go faster than the other and tells me an error messsage. Then he finds the network and not say nothing.
    Moderator comment: Please do post in your native language, but as the language of this community is English, please also provide a translation so that members may assist you better. Thank you.
    Modérateur commentaire: Se il vous plaît de ne pas poster dans votre langue maternelle, mais comme la langue de cette communauté est l'anglais, se il vous plaît fournir également une traduction afin que les membres peuvent mieux vous aider. Merci.

  • Initialisation des états de boutons dans une structure case

    Bonjour à tous,
    J'ai créer une un claseur contenant des fiches (1, 2, 3, etc...) sur la gauche de mon Front Panel (FP). Sur chaques fiches il y plusieurs boutons type bouléen. Les fiches correspondent à une structure "case".
    Chaque fiche comporte un schéma de test avec des vannes et des boutons (on/off). Comment définir la position initiale de ces boutons?
    En cliquant sur ces boutons, le schéma se modifie (changement de couleur/position) et lorque le schéma est conforme à la procédure de test, un signal (true) est communiqué vers un diagramme de mesure (à droite du FP) et y active le bouton "start".
    Comme la mesure est la même pour toute les configuration validée de chaques fiches, est-il possible d'avoir un seul fil d'activation du bouton start depuis la structure case (sous-entendu seule le "case" actif envoi un signal)?
    De plus, lors de l'exécution, je souhaiterai que le changement de fiche (de 1 à 2 par exemple), réinitialise l'ensemble des boutons présent sur toutes les fiches (y compris la fiche sélectionnée).
    Merci pour vos conseils, je redécouvre LV après 20 ans, et le programme à sacrément évolué (ou ma mémoire est trouée ).

    Bonjour MarYve,
    Que voulez vous dire par "Comment définir la position initiale de ces boutons?" Est-ce que vous faites référence à la valeur des boutons où bien les boutons changement litérallement de position sur la face avant?
    Pour ce qui est de l'initialisation des valeurs des booléans vous pouvez utiliser des varialbes local sur un changement de valeur du classeur, voir example en pièce jointe.
    Je vous suggère aussi de suivre ce tutoriel:
    http://www.ni.com/white-paper/5241/en/
    Attachments:
    initboolean.vi ‏11 KB

  • DaqMX - Access TDMS dt and timestamp Before "Stop Task" is called

    When using DaqMX to store sampled data to a TDMS file, how can I access the Start Time and dt? Is there a property Node, etc I can read from? The TDMS file does not include the datestamp and dt until AFTER the "Stop Task" is called (looks like another Labview bug), and I need to view it while the task is still running. See attached
    Attachments:
    DaqMX_TDMS_NoDatestamp_Example V2.vi ‏31 KB

    I suppose I should clarify... So our application generates the TDMS file during functional test; the TDMS file is to be used for troubleshooting reasons only when a failure occurs. When we get a failure during functional test, the requirement is that the software pauses on failure. When this happens, we need to be able to open the TDMS file to look at various signals to see how they behaved during functional test to help us arrive at the Root Caue. The issue is that until the "DAQmx Close Task" VI is called, Labview does not store the To and DT information in the TDMS file (not sure why this is, appears to be a bug). Since we cannot terminate the functional test due to our Pause on Failure requirement, when we look at the TDMS file for debug purposes, it shows the timestamp starting in the year 1903, and it inferrs a DT of 1 second, rather than 10ms. This is very embarrassing to show to the customer.
    It's obvious that Labview knows the DT and To, but only chooses to write it to the TDMS file when we Close the task. Any insight? TDMS files are made to be viewable while Labview is writing to them, but waiting until the end to store the Timing information is a Huge drawback to using them with DAQmx...

  • Buffered analog output puts out additional sample on aborting or stopping task

    I'm using DAQmx and LV 8.2
    I'm doing a buffered analog output operation where the sample clock is driven by pulses from ctr0 on the same device (PXI-6070E).  When I end the analog output task, either with the DAQmx stop task or DAQmx control task (abort option selected), the AO puts out one additional point from the buffer.  (I have checked by setting breakpoints and stepping through the code that the additional point is definitely generated when the analog ouput task is aborted)
    I need the output to remain where it was before the stop task command is issued.  How do I fix this?
    Thanks,
    Marc

    I'm watching to see if there hasn't been a sample output in a certain length of time, then terminating the task if there hasn't been.  Specifically, I have ctr0 outputting pulses to drive the task based on input from the AnalogComparisonEvent terminal.  I'm using a counter on a different PXI device to count the number of pulses and monitoring this count to determine if another sample has been output.  I'm outputting the ctr0 pulse to PFI3 as well, and I'm monitoring both the ctr0 output (which drives the ao clock) and the analog output itself on an oscilloscope.
    Basically I'm sitting in a while loop waiting for the monitoring counter to fail to increment.  Then I terminate the while loop and stop the analog output task.  I can watch the analog output on the oscilloscope while I step through the program.  Immediately before the daqmx control task - abort (or daqmx stop if I don't abort first, or daqmx clear, if I don't abort or stop) vi runs, the analog output remains outputting the last sample.  Immediately after the abort, stop, or clear, the analog output advances one sample in the buffer. 
    During this time, ctr0 does not output another pulse, so the scan clock should not advance.
    Thanks,
    Marc

  • DAQmx Stop Task error -50550

    Hi,
    I'm occasionally encountering error -50550 while attempting to stop an AI Task; though its occurrence is sporadic:
    LabVIEW Error Details:
    Error Code: -50550
    Source: DAQmx Stop Task.vi:3 Task Name: AllAI
    Description: Error -50550 occurred at DAQmx Stop Task.vi:3 Possible reason(s): A synchronization object was not acquired within the time limit. The operation could not be completed as specified. Task Name: AllAI
    The way I've currently written my VI, I'm creating an AI voltage task with a sampling rate of 1k and buffer size of 50k. I start the task use the daqmx read in a while loop until I reach a threshold, and then fall out of the loop and stop the task.
    I'm using LabVIEW 8, DAQmx 8 on WinXP.
    Anyone have any idea of the cause or cure?
    Thanks in advance,
    Glyn

    Hi Glyn,
    Unfortunately, I do not have many ideas about that error.  Can you post the portion of your code that demonstrates this error so that I can try to see it?  Also, how often do you see this error?  It sounds like it is not every time that you run the program.
    Thanks,
    Laura

  • Multi-nive​aux de tensions des sorties numériques NI9375

    Bonjour,
    Avec un module NI9375, je souhaite obtenir simultanément des sorties avec des niveaux de tensions différents. J'ai besoin de sorties en +10V et à la fois de sorties en + 24V. Est-ce possible avec ce module NI9375 ?
    Merci,
    Cordialement. 

    Bonjour gnetma65,
    En vous appuyant sur la documentation du module (OPERATING INSTRUCTIONS AND SPECIFICATIONS NI 9375), à la page 20, il est indiqué la règle de calcul pour les tension de sortie du module. La tension en sortie dépend directement du la tension externe que vous appliquez (Vsup) ainsi que de la charge du matériel que vous cablez à votre sortie.
    Si vous plannifiez de vous servir des sorties pour alimenter du matériel, sachant que c'est la charge qui jouera sur le courant (et donc sur la tension), il sera difficile pour vous de générer 10V ou 24V. De plus, sachant que la formule régissant la tension de sortie dépend directement de Vsup et qu'il n'y qu'un seul Vsup pour tout le module, vous ne pourrez pas avoir deux tensions aussi espacées (ça aurait pu à peu près passer si ça avait été 10 et 12V). Enfin, il faut aussi tenir compte du courant maximal que peut débiter le module sur les différentes sorties (page 14 et 20 pour ces informations dans la documentation).
    Je vous invite à demander à discuter avec une personne du service commercial en appelant le 01 57 66 24 24. Vous pourrez expliquer clairement vos besoins et vos contraintes et ainsi bénéficier de conseils pour choisir le bon module.
    Cordialement,
    Jérémy C.
    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;}
    Travaux Pratiques d'initiation à LabVIEW et à la mesure
    Du 2 au 23 octobre, partout en France

  • Initialisation des entrées,sorties et graphe( valeurs par défaut) à chaque exécution

    bonjour je suis en stage, et j'aimerai savoir comment initialiser mes entrées , sorties et mes graphes aux valeurs par défaut que je leur ai donné.
    cordialement

    Si tu utilises un Loop a l'interieur de ton programme, tu peux les initialiser a l'exterieure (gauche) du Loop (boucle?).
    Je recommende de ne PAS utiliser des variables locales.
    Est-ce que tu as une partie de ton code disponible que tu pourrais attacher a ta reponse?
    De cette facon je pourrais verifier ton code.
    R
    Message Edited by JoeLabView on 07-10-2008 11:13 AM

  • Augmenter la fréquence des sorties numériques

    Bonjour,
    Pour piloter des micros moteurs, j'utilise les sorties numériques d'un boitier National Instrument SC-2345, ce boitier est relié à une carte DAQCard 6024E et elle même relier au PC.
    Le programme sous LabView fonctionne bien (la table de vérité correspond au 4 fenêtres).....le micro moteur tourne.....mais très lentement. Pour que ce moteur fonctionne normalement il faudrait une fréquence de fonctionnement de 200HZ.
    Je vous fais parvenir 2 VI:
    Le 1ier ---------> micromoteur_1.vi:  c'est avec ce VI là que le moteur tourne....mais lentement.
    Le 2ième -------------> micromoteur_réglage_fréquence_horloge_cadencement.vi: après plusieurs recherches dans les exemples et avoir été conseillé j'ai apporté des modifications. Au lieu d'ouvrir et de fermer 4 voies dans 4 fenêtres.....j'en ouvre et en ferme qu'une. Il y a donc 4 sorties numériques dans une voie, j'ai rajouté aussi une horloge de cadencement (pour faire faure tourner le moteur à 200HZ), et un tableau pour faire évoluer la table de vérité.
    Ce deuxième VI me remonte un défaut. Auriez vous une autre solution? Merci pour votre aide.
    Attachments:
    micromoteur_1.vi ‏114 KB
    micromoteur_réglage_fréquence_horloge_cadencement.vi ‏28 KB

    French to English for more responses
    Hello,
    To control micro motors, using the digital outputs of a box National Instrument SC-2345, this cabinet is connected to a 6024E card DAQCard and even connect to the PC.
    The program works well under LabView (the truth table corresponds to 4 windows )..... micro engine running ..... but very slowly. For this engine should be operating normally an operating frequency of 200Hz.
    I send you 2 VI:
    The 1st ---------> micromoteur_1.vi is with this VI is that the engine is running .... but slowly. 
    The 2nd -------------> micromoteur_réglage_fréquence_horloge_cadencement.vi after several searches in the examples and have been advised I have made changes. Instead of opening and closing 4 tracks in 4 windows ..... I opened and closed one. There are therefore 4 digital outputs in a way, I added a clock timing (faure to run the engine to 200Hz), and a table to change the truth table. 
    The second VI me back a fault. Would you suggest any other solution? Thank you for your help.

  • Stopping task in the progress in queue

    Hi
    I have MDB where I start process of sending mails. I have a list of emails in file, and remove one after another. Now I'd like to add function of stopping this task. I've added a check of STATUS attribute in the file. So, when task will see that status is STOPPED should leave sending mails function. The problem is that message with request of stop (it invokes method that changes status in xml file) goes to end of the queue (which is quite logical...).
    Could anybody give me a hint what to do? This is JBoss' MDB with Queue destination.
    Thanks in advance,
    Michal

    You may try to use selectors. This way you should be able to select a certain message only.

  • Does Stop task reset a quadrature encoder counter?

    I am using an M-Series PCI-6280 board, with one of its onboard counters wired as a quadrature encoder.
    1)I start the counter task, take a set of measurements with the counter, and then stop the task.
    2) The encoder which the encoder counter is monitoring continues to output quadrature encoder signals into the PCI board's counter.
    3) I start the task again, and perform another set of measurements.
    Which of the following occurs?
    Upon starting the task again, the counter's previous value was wiped and the measurements taken in (3) start at 0 counts. 
    The counter keeps the value it had before it was stopped and subsequently started, and the measurements in (3) cumulate on top of the measurements taken in (1). 
    The counter keeps the value it had before it was stopped, continues to increment/decrement position in (2) even after the task is stopped, and when the task is started in (3) the counter value is cumulative with the quadrature encoder pulses in (1) and (2). 
    Thanks in advance for the help. 
    Solved!
    Go to Solution.

    Hello acmap,
    In this case The behavior will be the following:
    Upon starting the task again, the counter's previous value was wiped and the measurements taken in (3) start at 0 counts.
    However, you can specify the initial count value of the counter on the Initial Count terminal of the DAQmx Start Task VI, so it doesn't have to start at zero, and you can implement the behavior described in your second option.
    Daniel

  • Comment adapter une structure evenementielle sur des sorties rafraichies par polling?

    Bonjour
    Je suis en train de programmer avec vision. J'utilise la fonction "IMAQ count objects" pour detecter les personnes en mouvement sur une camera. et je retourne des booleens selon la zone de la camera ou les gens passent.
    Je dois ensuite traiter le flux de personnes selon l'etat de ces booleens. Le plus simple serait que j'utilise de la programmation evenementielle afin de verifier l'etat de tous les booleens lorsque l'un d'eux change de valeur.
    Probleme: Mon programme fait de la scrutation et donc les booleens sont rafraichis en permanence. La structure evenement ne fonctionne qu'avec les commandes, mais pas par des indicateurs. et meme si je triche en reecrivant le booleen dans une commande par noeud de propriete "valeur(sign)", la structure evenement s'enclenche a chaque reecriture, y compris si la valeur reste la meme.
    Y a t il donc un autre moyen d'adapter une programmation evenementielle a un programme fonctionnant par scrutation, via les sorties booleens ou la fonction IMAQ count objects?
    Merci d'avance pour votre reponse.
    bonne journée.
    Résolu !
    Accéder à la solution.

    Ton explication est probablement hermétique pour certains.
    Un morceau de code (la solution dont tu parles) aurait été un "plus" pour le forum.

  • Comment créer des sorties pour mes VIs.

    Bonjour,
    j'essaie d'ouvrir des VIs à partir d'un VI principal contenant une liste déroulante. Mes "sous-VIs" contiennent chacun une table, le problème est qu'ils ne semblent pas posséder de sortie(au vue de l'icone)alors que j'aimerai que ces tables ou que le "done reading"soient considérées comme telles.
    Pouvez-vous m'aider?
    Attachments:
    essaitable1.vi ‏46 KB
    type_de_cellules1.vi ‏18 KB

    Voici la marche à suivre pour définir les entrées/sorties pour un VI : (version anglaise de LV)
    1) Clic avec la souris droite sur l'icône
    2) Sélectionner Show connector
    3) Choisir le type de connecteur en fonction du nombre d'entrées et de sorties. Pour ce faire, nouveau clic avec la souris droite sur l'icône --> Pattern --> Sélectionner un type
    4) Attribuer chacune des entrées et sorties à l'une des cases du connecteur. Pour ce faire, cliquer sur la case à connecter (devient noire) et puis cliquer sur l'objet de la face à relier à cette case.
    5) Convention : bien que cela ne soit pas obligatoire, il est fortement recommandé de connecter les entrées sur la gauche et les sorties sur la droite. C
    eci facilitera la lisibilité du code en évitant des fils de liaison partant dans tous les sens.
    6) Pour les entrées : définir si leur connexion est optionnelle, recommandé (avertisemment dans fenêtre d'erreur si pas relié) ou obligatoire (erreur si pas relié). Pour ce faire, clic de souris droite sur la case correspondant à l'entrée sur le connecteur --> This connection is --> Sélectionner une des 3 options.

  • Depuis une réinitialisation des réglages réseau je n'arrive plus à me connecter à ma livebox en wifi

    Bonjour,
    Depuis une réinitialisation de mes réglages réseau mon mot de passe wifi de ma livebox ne passe plus. Mon iphone indique "mot de passe incorrect", pourquoi ?

    Bonjour a tous,
    En expliquant mon problème, je me doutait qu'il serait difficilement compréhensible.Avant de poster mon vi deffectueux, je pense avoir identifié le problème, mais j'aimerai avoir confirmation.
    En effet je crois que cela est dût aux limites physique de mon réseaux GPIB.Je m'explique: Si dans mon VI je demande de lire en permanence une donnée issu de mon réseaux GPIB, il m'est impossile d'envoyer (en même temps) des instructions sur le réseaux GPIB.
    Je doit donc synchroniser, au sein de ma séquence l'envoi et le rapatriment de données.
    Mon raisonnement vous parrait-il juste?
    Merci.

  • I am getting a voltage spike on starting and stopping a daqmx task

    Hello,
    I am having a problem with a PXI-4461 DSA board that I can't explain.  When starting or stopping an analog output task, I am getting a voltage spike before the generation starts and after it stops.  We have put a speaker on the output, and the spike sounds like a "pop" when that happens.  However, the pop goes away when the card is also acquiring an analog input in the card.  This is a repeatable event, and very strange.  We have used the two examples "ContAcqGraph Voltage" for the analog input and the "Retriggering_Analog_Output_Waveform_Generation" to generate this phenomena.
    Has anyone ever seen this before?  Is our card the culprit?
    Thanks,
    Rob

    Hey Rob,
         I found out some information that might be helpful to you.  There was a problem identified with that particular SVT example awhile ago where spikes would happen due to a Device Reset during the generation.  This device reset was performed by default in the example if there was an error with the AO generation.  Since your code was based off of this example, I believe that there's a Device Reset happening due to some error.  If you could, please go through your application and ensure proper error chaining so that any errors generated are seen by the user.  You can also go through and probe the error clusters coming out of the VIs in order to get a quick picture of what might be happening. 
         The specific VI in question is "SVT Close Swept Sine (DAQmx).vi".  You can set a breakpoint before the "DAQmx Reset Device.vi" on the block diagram and verify that this is happening(see attachment screenshot).  Let me know what you find out.
    Good luck
    Gavin Goodrich
    National Instruments
    Attachments:
    svt_close_swept_sine.jpg ‏35 KB

Maybe you are looking for