detection of task over DIO

Hello

How can I know that triggered external DIO out of finite samples have completed execution?

I see there is a 'DAQmx is task performed?', but it means that I have to constantly monitor the task. Is there a way to generate an event or declaring that the task is completed?

Also, if I use the "Start.Reftrggerable" correctly and task arm iteself once it fires, how I know how often the task is completed, that is the same question as above, how know exactly if the task is accomplished and don't miss not events of the?

Thank you

There are the DAQmx wait until what Done.vi.  It is in the pallets, right next to Scripture DAQmx.

I'll have to do some digging to see if there is a number of triggers property hides somewhere in the DAQmx API.

Tags: NI Hardware

Similar Questions

  • Firefox continues to run even after the release in Manager Windows tasks and has about as much memory to affect other applications

    Firefox continues to run even after the release in Manager Windows tasks and has about as much memory to affect other applications. Firefox.exe must be completed manually in Windows Task Manager. Is there a software patch that will force the release of memory and all the resources of the computer that was using Firefox, when it is finished?

    This has happened

    A few times a week

    == I see only the program in the Manager of tasks over the past months but the problem could took place for more

    See this:
    https://support.Mozilla.com/en-us/KB/Firefox+hangs#Hang_at_exit

  • Graphical glitch in background task manager?

    A small thin line made their appearance in the Manager of tasks over the past month and becomes stronger and more evident of the day. In the beginning, it was fair points. This mean?

    well known for the two latest updates (3?).

    away from the approach of Apple 'best possible', but just cosmetic.

    does not hurt...

  • Redeclenchables buffered count task of edge

    Hi all

    I worked on 'Buffered Retriggerable counting task dashboard' on a single window input channel, let me describe what I want to achieve:

    Create a CI to count the rising edges finished with the (for example external sample clock Dev1/di/SampleClock) at some rate of sampling and CI.edge.Term together in a PFI which is wired to another channel of digital input. In addition, I would like to define "start redeclenchables trigger" for this CI by another PFI line.

    It turns out that I can put only 'arms start trigger' on this channel of entry of the counter, instead of "start trigger" since the 200452 error: attribute not supported in the context of task showed up at the beginning of digital edge trigger configuration. It seems that I can put only 'start redeclenchables trigger' on output special counter and use two counters to reach above, but I was wondering if there is a way to accomplish through single window. Any suggestion is appreciated.

    Set the THIS ongoing task - it won't take samples when the task finished di which is actually the same thing as having a task over redeclenchables CI triggered.

    If you want the count to reset each trigger, you could configure the entry as a Reset counter line well trigger.

    Best regards

  • Error reading DAQmx multichannel. DAQmx believes that there are several channels in my task.

    Hello

    I get the error message added when you try to use my VI DAQmx Read.  LabVIEW tells me that I'm trying to read a single channel when my task is configured for multiple channels.  However, as you can see in the task panel, this is not the case!  If I try to use DAQmx Read to generate a waveform with many channels, the VI runs without error, but I don't want a picture of waveform 1 d...  Any tips?

    Kind regards

    Steve

    Without seeing the code all I can offer only a possibility.

    Something else in your code is changing the task of wine and let the reference.  Wine is then stored with many channels, but these changes are not saved to the MAX which means that when the task in this section of code is not identical to the task UP.  Hit a knot DAQmx task over there and read 'Channels' to confirm my suspicions

  • code error-50103. Program hangs after the departure of task, readout and task of clearing.

    I'm having trouble with this unique analogue read. The situation is the following. I have a thread that executes a task. The task runs for continuous, but sometimes based on acquisition

    a push of button in the GUI I need one analog reading from a single channel. I firstly to stop the first task, and then create the next task, read and erase and stop it.

    This function is also called via a timer to get a temperature and a resistivity of reading. The timer calls are interested in the temperature and the pressure of the button wants the resistivity.

    Its the same function but can be called at two different instances. I put in a thread variable secure to ensure that he expects to be each other before reading again. It crashes right away,

    It blocks randomely at about the 6th or 7th instance of analog read.

    My first guess after reading the forum LABVIEW on ni.com, is that he doesn't like when I start and disable the task over and over again. Here is the fucntion is called with a handshake goes, but the

    key to watch is the analog read. The handshake stops the task running in the thread momentarily to analog playback and then it starts again.

    I use v9.0 CVI. I use the USB DAQ 6259. The "BOLD" area below is where the error occurs.

    int daq6259ReadCuvette(float64 data[2])
    {
    Int32 daqError = 0;    DAQmx error code
    errorMsg tank [ERRORMSGSIZE]; error message
    int start = 0;     start time
    passed int = 0;    elapsed time
    float64 * cuvetteData;     data
    Seek_set Int32 = 0;    number of analog readings
    errorCluster localError = {0}; structure of local error to store error information
    allocate memory for the data of the Bowl
    If ((cuvetteData = (float64*) malloc (NUMCUVCHANNELS * sizeof (float64))) == NULL)
    memory allocation of {failed
    errorEnqueue (1, -1, __LINE__, __FILE__, "Bowl DAQ task Memory Allocation Failed");
    Returns - 1;
    }

    cuvetteReady (1); define the ready indicator = 1 to stop the task of daq1 in daq1 wire
    Start = clock(); set a start time
     
    While (cuvetteReady (2)) //poll for the tank handles or timeout if the wait is > 5000 ms
    {
    If (gMpvsError)
    Returns - 1;
    Sleep (100);     sleep 1ms to record usage of the processor
    WAIT 1 DAQ LOOP UNTIL SYSTEM SHUTDOWN
    elapsed = clock() - start;
    If (time > = 5000) //check for 5 seconds timeout during the stoppage of work daq1
    {
    errorEnqueue (1, -1, __FILE__, __LINE__, "cannot stop the device DAQ, Bowl was unread");
    cuvetteReady (1);  the ready value = 1 signal to restart the task daq1 in daq1 wire
    Returns - 1;    Returns - 1 as a standard error code
    }
    }
     
     TAKE THE READING OF THE BOWL!
    If ((daqError = DAQmxCreateTask("",&gCuvetteTask)) == 0) //create Bowl read task
    {//create voltage channel
    If ((daqError = DAQmxCreateAIVoltageChan (gCuvetteTask, cuvChan,"", DAQmx_Val_RSE,)))
    (MINVOLT, MAXVOLT, DAQmx_Val_Volts, NULL)) == 0)
    {//DAQmx analog read
    If ((daqError = DAQmxReadAnalogF64 (gCuvetteTask, 1, 10, DAQmx_Val_GroupByScanNumber,)))
    cuvetteData, 1 * NUMCUVCHANNELS, & Seek_set, NULL)) == 0)
    {
    If ((daqError = stop6259DaqTask (& gCuvetteTask))! = 0)
    {
    DAQmxGetErrorString (daqError, errorMsg, 256);
    errorEnqueue (2, daqError, __LINE__, __FILE__, errorMsg);
    }
    If ((daqError = DAQmxClearTask (gCuvetteTask))! = 0)
    {
    DAQmxGetErrorString (daqError, errorMsg, 256);
    errorEnqueue (2, daqError, __LINE__, __FILE__, errorMsg);
    }
    }
    }
    }
    the ready value = 1 signal to restart the task daq1 in daq1 wire. He will leave the while loop
    in threadManagement waiting for the task of the toilet read of the Cup.
    cuvetteReady (1);
     
    If (daqError! = 0) //check DAQmx error
    {
    DAQmxGetErrorString(daqError,errorMsg,256);
    errorEnqueue(1,daqError,__LINE__,__FILE__,errorMsg);
    error return;
    }
     
    If data (Seek_set > 0) //set VAT values read
    {
    Data [0] = cuvetteData [0];   value of resistivity
    data [1] = cuvetteData [1];   the temperature value
    }

    return 0;        No finished errors
    }

    He was crashing at the same point over and over again. Essentially, in order to reproduce this scenario, you have a thread that is running with a task that runs continuously, so you want to stop and

    start a new task with a single read analogue.

    Could you go through this list of 7 possible causes (of the knowledge base) and see if any of those who are causing it?

  • Detection of changing DAQmx online PFI (unbuffered)?

    Hello!

    I'm developing a detection of change on a line of digital input to a software event trigger.  I use the PCIe 6321 DAQ board.

    It works well with an IO line buffered (i.e. any line of port0, see extract of code). However, as I need the lines buffered for other tasks, I would use one of the lines, PFI (port 1 or 2).

    Now, if I use for instance port1/line2, I get error-201062: "selected lines do not support buffering operations. Ensure that lines are supported buffering operations are used in the task. If you use the calendar to change detection, the task should be replaced by without buffer to support these lines. »

    So, is there a way to make the detection of change on a line without buffer?

    I have searched the web for help and resources, but did not find anything useful.

    I would be happy to advice or suggestions.

    Best regards

    Sebastian

    No, only non - PFI port 0 lines will support the detection of changes in hardware.  Otherwise, you're stuck with the search on ports software 1 or 2, with a limited time resolution and no guarantee to catch all the changes.

    -Kevin P

  • display the date in the task bar

    I bought a new netbook for my wife and see that the date is now displayed in the bar tasks over time.  How to display the date like this on my laptop more old?

    Hi Dlthrasher,

    ·         Did you do changes on the computer before the show?

    Follow the suggestions below for a possible solution:

    Method 1: I suggest you to check the date and time settings in control Panel. You can see the article for more information:

     

    Change the display of dates, times, currencies, and measures

    http://Windows.Microsoft.com/en-us/Windows-Vista/change-the-display-of-dates-times-currency-and-measurements

    Method 2: Try the SFC (System File Checker) scan on the computer.

    How to use the System File Checker tool to fix the system files missing or corrupted on Windows Vista or Windows 7

    http://support.Microsoft.com/kb/929833

    Let us know if you need more assistance.

  • How to stop Audio recording when no sound is detected

    Hello friends,

    I want to develop the application which is record audio (implementation of this part, I already had)... but I want to stop recording when device has been not detect any noise over 2 sec audio...

    I already convert the data byte in data short tosigned that is giving me the length of the sound...

    int level = (signedShortToInt (b) * 100 / 32767); b is the data buffer

    mutable public static int signedShortToInt (byte [] b) {}
    result int = (b [0] & 0xff). (b [1] & 0xff)<>
    return the result;
    }

    I'm familiar with the sound of noise of air is in normal recording...

    Air noise level not more than 100 (im guessing).

    so I had checked the voice level is below 100 it will stop recording...

    My idea is correct or not?

    private void jesuissuper (byte [] buffer) {}
     
    for (int i = 0; i)< buffer.length;="" i++)="">
    Byte [] b = new byte [] {[i] buffer, buffer [i + 1]};
    int level = (signedShortToInt (b) * 100 / 32767);
    If (100 > level) {}
    Voice.StopThread ();
    }
    }
    }

    My Question is... How can I stop the recording when the level is low up to 2 sec and it is the Correctmethod to find the sound level?

    Hello guys,.

    I have not found any Solution for this so I drop this idea...

    I had found my solution up to convert PCM ampltude data... Using the Amplitude level I can is find the noise data and hat is given voice. and stop Audio in usin it

    But not audio recorded in the camera store...

    Thank you...

  • Synchronization of two inputs frequency meter with several analog inputs

    Hi all

    I'm relatively new to LabVIEW and I'm trying to collect data from multiple sources with calendar sync on the acquisition, but I can't understand. My problem is that I have two inputs frequency meter, an optical tachometer reading one pulse per revolution and a max flow meter machines with a 12000 k coefficient. I can't find a way to synchronize the calendar with my multiple analog inputs. I tried to first get the speedometer to synchronize with the analog inputs following the example linked here. (https://decibel.ni.com/content/docs/DOC-10785) So far every time I run it I get an error on the DAQmx read timeout or an error "several sample clock pulses have been detected" (see image).  It seems if I slow the way to down to say 10 hz and make sampling rate ensure that the tachometer signal is more than 800-1000 rpm (13-17 Hz) before starting the VI then the program will run without error until the ROTATION speed is below this threshold, then the "sample Multiple clock pulses" error occurs.  The code is attached below.

    Does anyone know of a better way to synchronize the entries of frequency of the counter with analog inputs?  I would like to have a VI that can display 0 RPM (and possibly 0 flow as well, but I think I need to understand the timing of a meter before I have add another, because it seems that I can't have two counters to the same task). Any help on this would be greatly appreciated.

    LabVIEW version 13.0

    Chassis cDAQ-9178 with NI 9401 for both counter inputs and NI 9205 for the analog inputs.

    Thank you!

    Richard

    I know the error requires to restart the task at least (this particular error puts the material in a State that cannot be recovered from during execution of the task - I've been down this road before) but I'm surprised that you would have to delete and re-create the task altogether.  And then I had to do this to workaround other questions in the past.  It is awkward and should be considered a bug, if this is indeed the behavior.

    Honestly, regardless of this bug, the way the material dealing with the situation of several sample clock edges makes measures of sampling frequency clocked essentially unusable for purposes of synchronization (in my opinion anyway) If you encounter a more slow than your sample clock rate.  You are supposed to be "synchronization" of the measure, but it really no longer applies if you have to restart the task over and over again (if you must delete it or not).

    Workarounds can get kind of creation (which isn't really a good thing).  For example, you can configure a measure of implicit frequency to keep a buffer of frequencies and use a leader board task (source is the frequency signal, sample clock is the sample clock HAVE) to establish a correlation between the index of your buffer of frequency for singing HAVE sample clock.

    Best regards

  • Data are automatically downloaded to the computer.

    Original title: automatic download

    Hello

    I am facing a problem about automatic download of data. Even if my computer does not all tasks over the internet, by clicking on 'View network status' I see that bytes are received. What happens for each internet connection. However, speed is not affected. I can surf and download stuff pretty quickly. I disabled automatic updates and notifications of the app. I have Norton Antivirus and a complete analysis of the system has not revealed any virus.
    I am unable to change the Sync settings on connections inhalers option and I think that the problem is perhaps due to this. It is 'ON '. I can't change it because whenever I try to log in my Microsoft Account users, after entering my email address, I get "Please Wait". I want to know why I'm getting this and how I can solve this problem.
    If you think that the automatic download is due to something else (like a virus, perhaps), please tell me what to do. Because of this problem my internet Bill is going through the roof. If someone can provide a solution I will be immensely grateful.

    Thanks for the help of microwave blue. The problem was caused by a spyware. He was automatically transfer large amounts of data. I solved the problem by following these steps:

    1. I uninstalled Norton Internet Security, because I had the feeling that for some reason he was not be able to detect the virus that was responsible for large data transfers.
    2. I have activated Windows Defender and updated.
    3. I uninstalled all free software (like Karl, etc), as well as known spyware with programs (free WildTangent games).
    4. I had not updated Windows for some time, so I downloaded and installed all updates pending (important as optional).
    A comprehensive analysis by Windows Defender detected Adware:Win32 / WebCake. I discovered that this causes pop-ups to appear in browsers.
    The big unknown transfers have stopped now. I am really impressed by Windows Defender. Regarding Norton, it's a really lame antivirus. Better to move to Windows Defender/Microsoft Security Essentials.
    Please tell me about perfmon.exe. I can now see what process is changing the amount of data.
  • Archives as a filter action

    In my opinion, it would be a great feature to have "Archive" as a filter action.
    This way I could create a filter that detects the messages over X days and "archive".
    In this way we, the users, will depend not the other users writing and maintaining the Add-ons that make this very simple action.
    I hope that it is considered a feature request.

    Thank you.

    Looks like a bug has been files https://bugzilla.mozilla.org/show_bug.cgi?id=661271 perhaps you can vote for her!

  • Stalls of the PCF, spinning ball, can't do the instant capture

    I have my library on an external drive.  When I go to make instant great project, it crashes.  It can also block by choosing just part of an audio file

    in the timeline.

    I had just turned computer market with no other programs running.  How wrong what? I can work on the project, but unable to save it.

    Another thing that happens is when FCP opens, it runs a task over and over again, about once per second for

    go from 0% to 100%, then repeat.  Whatever it is, it does not interfere with editing.

    Model name: iMac

    Model identifier: iMac11, 3

    Processor name: Intel Core i5

    Processor speed: 2.8 GHz

    Number of processors: 1

    Total number of Cores: 4

    (By heart) L2 Cache: 256 KB

    L3 Cache: 8 MB

    Memory: 8 GB

    Processor speed of interconnection: 4.8 GT/s

    Boot ROM version: IM112.0057.B03

    Version of the SCM (System): 1.59f2

    Available: 348,31 GB (348,310,138,880 bytes)

    Capacity: 999,35 GB (999,345,127,424 bytes)

    Open the window background, see what this task.  Click on the clock in the toolbar to do. Once you identify what is this background task, you will know what the problem is.  He can always try to be the ingestion of sequences, or optimized creation or clips of proxy, or to render in the background.  I suggest very strongly going into preferences and disabling background rendering.

    I also highly recommend hit you your RAM up to 16 GB.  8 is the bare minimum and really not enough for serious editing.  And do not forget that your libraries and media are on an external drive, which is fast.  As USB 3.0 (if you iMac supports that) or love at first sight.  Finally, remember all the connected readers have at least 15% of their total capacity, each, left as open space.

  • With PCI-6229 NMI Parity error

    Currently, I'm trying to get a PCI-6229 to work with one of our lab computers. We'll use LabVIEW 8.5.1 with DAQmx 6.7.1 to program the card. Using our measurement VI owner, the computer will crash at some point (not really in reproducible way) with a blue screen saying "NMI: Parity Check / Memory parity error. All the tests of auto and examples of NOR (delivered with LabVIEW) perform well however.

    Most likely, this problem is not a RAM issue (MemTest I tried, different memory chips, different memory banks). Also, the PCI computer bus works very well otherwise (for any other acquisition cards for example). Annoying enough, the card seems to do a great job in an old and slow computer. Which is maybe something to look at? Or are there other ideas?
    Our workplace is a Fujitsu-Siemens of Celsius M460 with BIOS version 6.00 rel. 1.09 running Windows XP (32-bit version). The software to use with the card is LabVIEW 8.5.1 with DAQmx 6.7.1.

    Dear Lutz,

    I could reproduce the blue screen, and
    changed your program in order to avoid the race condition. What is
    actually happens is you want 2 tasks over time the
    AOSampleClock as a source before the task of AO started.

    When
    programming as in the example I sent you (see attachment VI), you
    shouldn't deal with this blue screen problem more. However, I recognize
    that such a thing should not happen even when it's 'bad' programming... I'm going to
    inform the development so that it will be corrected with the next DAQmx
    version of the driver.

    Merry Christmas,

    P. Lawrence

    National Instruments

  • How to change DI unbuffered mode

    My request is when a fall from digital input (camera ready) edge arrives, it will trigger a pulse counter 0, open the shutter of camer.

    The following code does this:

    camShutterOutputTask.COChannels.CreatePulseChannelTime ("Dev1/ctr0", "",)
    COPulseTimeUnits.Seconds, COPulseIdleState.Low,
    0,
    0.000001,
    (((double) exposure_time) / 1e6);

    camShutterOutputTask.Triggers.StartTrigger.ConfigureDigitalEdgeTrigger ("/ PFI0/Dev1", DigitalEdgeStartTriggerEdge.Falling);
    camShutterOutputTask.Triggers.StartTrigger.Retriggerable = true;

    On my PCIe-6323, PFI0 is by default configured with P1.0, so I connected physically ready to P1.0 camera entry.

    I just want to trigger the camera several times. After the required number of triggers, I'll just ignore all the following input signals. The following code configures the input channel to do so:

    camReadyInputTask.DIChannels.CreateChannel ("Dev1/port1/$line0", "", ChannelLineGrouping.OneChannelForEachLine);
    () camReadyInputTask.Timing.ConfigureChangeDetection
    "",
    "Dev1/port1/$line0,"
    (SampleQuantityMode.FiniteSamples, num_of_frames);

    The problem is when I run the program, I get the error: "some lines do not support buffering operations. Ensure that lines are supported buffering operations are used in the task. If you use the calendar to change detection, the task should be replaced by without buffer to support these lines. »

    If I use port 0 in the code instead of port 1, he makes the mistake, and it limits the number of input signals just like what I need. However, port 0 is not connecting to any PFI, so I can't use it in the trigger to start for the shutter of the camera.

    Does anyone know how is:

    1. change a task in unbuffered mode or

    2 re - router port 0 to a PFI?

    Thanks for the reply Ashly. I'm new to DAQmx and there is still a lot to learn.

    The loop thing involves waiting timed software and concerns me.

    I have found a workaround that calls a callback function whenever the meter changes its output:

    camShutterOutputTask.SynchronizeCallbacks = true;
    camShutterOutputTask.CounterOutput += new CounterOutputEventHandler (camShutter_callback);

    ...

    ' Private Sub camShutter_callback (object sender, CounterOutputEventArgs e)
    {
    trigger_count ++;
    Console.WriteLine ("trigger count =" + trigger_count. (ToString());
    If (trigger_count > = num_of_frames * 2)
    {
    Try
    {
    camShutterOutputTask.Stop ();
    camShutterOutputTask.Dispose ();

    ...

    startCaptureButton.Enabled = true;
    }
    catch (System.Exception Exception)
    {
    MessageBox.Show (exception. (Message);
    }
    }
    }

    In camShutter_callback(), I continue to follow a global counter and if it is greater than num_of_frames * 2 (since the callback will be triggered by rising and falling pulse edge), I stop all tasks.

Maybe you are looking for

  • Cannot save the recent contacts

    After receiving a call, I would like to save this number in my contacts.  In the recent folder, this is the number on the top.  Save it is not presented as an option anywhere. Based on the number of course it reminds By pressing the i takes me to a n

  • Trojan Horse Java/feat zc cannot print from pad to Word or programs in black

    I've found a Trojan with MalWatebytes. > Java/feat zc and removed. But now I can't print in black of any program? I'm on Windows XP Home SP3, the printer is a Canon MP560, I removed & reinstalled the printer and software, no help. I also towards the

  • USB (series VISA) during reset problem

    Hello Immediately to the problem that I'm using communications series in labview with microcntroller. Anyway, whenever I connect the USB cable then Labview detects the port and make the communication. But in the average process if I press delivery to

  • probem Office

    Whenever I try to copy a photo or a folder on my desktop by right-clicking & trying to copy & paste a windows Explorer window appears wanting me to report to microsoft this problem asking to send error report or don't send or to debug, but no matter

  • message during shutdown, "windows live messenger preventing stop" I use vista

    I use vista and when I try to stop that I get a sasying message that windows live keeps me to stop. screen fade on evevtually then will stop.