Error 200279 Continuous DAQ Assistant

I am getting Error 200279 while running my VI.  I am using a DAQ assistant with four channels set to Continuous Samples with a rate of 1K and Samples to Read at 100.  The error comes up at different times.  It can happen right after starting the vi or it has happened as late as 2 1/2 hours of running the vi.  I added the DAQmx property node to observe the number of available samples per channel.  The number of available samples is stays at 0 but then will spike in a few seconds until it goes over 10,000 available samples and the error pops up.
I'm at a loss as to what might be causing the sudden spike of samples because the program does the same calculations each iteration of the loops.  Therefore, I don't believe the program is running to slow to read the samples.
Thanks for the help,
Tony

I am writing to a file called datalog.csv.  At first I thought it might have been the cause.  When I got the vi, the data is recorded to datalog.csv at a period determined by an input, Sample Rate.  The fastest I have written to the file was 20 ms (50 times a second) which meant the program was opening, writing to, and closing datalog.csv 50 times a second.  So I did change how the data was saved by moving data writing to a separate loop and by only opening the closing the file once. but I still got the error, so I changed the program back to the way it was.
a little bit of input on the vi.  it is for controlling a tesile strength tester.  it controls the amount of tension is being pulled on a powerline cable.  the controller in the vi is the bottom loop.  writing to datalog and the data acquisition are located in the top loop.
Thanks
Attachments:
cabletest_v2_input_test.vi ‏747 KB

Similar Messages

  • Error when placing DAQ Assistant..

    Hi,
    When I place a DAQ Assistant to a Block diagram, an error as shown in the attachment(Japanese) displays.
    For your reference, here is the English translation.
    "--------------------------- [ Engine was not found. ] LabVIEW ---------------------------
    LabVIEW run time LVBrokerAux71 is a version. 7.1 (or compatible version) LabVIEW run time Engine is required. For solving this problem, please contact the manufacturer of LVBrokerAux71.
    ---------------------------OK --------------------------- "
    What I have to do to avoid this error and to use Data Acquisition easily?
    NB: I am using Japanese version of LabVIEW
    Thanks in Advance
    Aneesh.

    Hi,
    Have you installed the DAQ driver. If not, then you can find it for your particular device at thissite. If you have installed DAQ, make sure it is the most up to date driver. This broker file is a part of the driver install, and it should be in this directory:
    C:\Program Files\National Instruments\Shared\LabVIEW Broker
    I hope this helps. Have a Great Day!
    George

  • Error with 2 Daq assistant

    Hello
    Another noob joining the community. Here is my question.
    What am i doing wrong? I use 2 Daq assistants on the NI9401 module this is for digital input and output. I use it for generating 2 signals. If i test it with 1 it works but if i go to 2 or more it fails. This is the error i get . I have also added the program as an attachment.
    Thanks in advance.
    Solved!
    Go to Solution.

    Hello,
    That error means that the DIO task is reserved and cannot be obtained by one of the DAQ assistants. There is actually a nice example program on what you want to do. It can be found here:
    https://decibel.ni.com/content/docs/DOC-11632
    This example does not use the DAQ Assistasnt but the DAQmx API VIs (which the DAQ Assistant is using also anyway). If the order is not important (and since the these DIO tasks are software timed it is probably not an issue you can also choose to use the error cluster from one DAQ assistant and wire it to the other (see attached VI). Doing it that way you force one DAQ task to wait for the other one to finish. In that way they cannot run at the same time preventing for the error to happen.
    regards,
    Rik Prins, CLD
    Applications Engineering Specialist Northern Europe, National Instruments
    Please tip your answer providers with kudos.
    Any attached Code is provided As Is. It has not been tested or validated as a product, for use in a deployed application or system,
    or for use in hazardous environments. You assume all risks for use of the Code and use of the Code is subject
    to the Sample Code License Terms which can be found at: http://ni.com/samplecodelicense
    Attachments:
    2 Daq assistant generating error (3).vi ‏169 KB

  • Day Long Continuous DAQ Occasionally Getting a 200279 Error

    So I'm pretty new to LabVIEW but I am attempting to create a continuous data aquistion VI that will record data average it to display and record a data point once every second. 
    The problem is that no matter what I change I cannot avoid getting a
    Error -200279 occurred at DAQmx Read (Analog 1D Wfm NChan NSamp).vi
    Possible reason(s):
    Measurements: Attempted to read samples that are no longer available. The requested sample was previously available, but has since been overwritten.
    Odd thing is that on some occasions, the VI can run for over a day and not return any error and sometimes the VI will only run for 8 hours and then stop due to the 200279 error. This is incredibly frustraiting. I'll attach my code; if anyone would want to look at it I'd be forever in your debt. 
    Attachments:
    BatteryTest.vi ‏100 KB

    Just some thoughts.
    1.  You do not need the seperate VI to configure the output buffer.  When you setup the timing, the Samples per Channel determines the buffer size when using Continuous Acquisition.  Set the Samples per Channel to the 30000.  Maybe the extra VI's effort is ignored for some reason and the buffer is really only 1000 samples (1 second's worth)?
    2.  No need to use the property node to see how many samples are available.  Set the number of samples to read to -1 and it will read all of the available points.  Per the DAQmx Read VI help "If the task acquires samples continuously and you set this input to -1, this VI reads all the samples currently available in the buffer."
    3.  If you want to grab data once every second, simply hard code the 1000 into the wait.
    4.  Think about offloading the file write to another loop using a queue.  Look into the Producer-Consumer architecture for more details.  If the file write is taking a very long time, this could cause issues.  But 1 second is a long time, so this is likely not your problem.
    There are only two ways to tell somebody thanks: Kudos and Marked Solutions
    Unofficial Forum Rules and Guidelines

  • Error message from labview when trying to set up the DAQ assistant

    I recieve a message from labview when I try to set up the DAQ assistant and select a channel to use. The error I get states "An exception occured within the external code called by a Call Library Node. This might have corrupted LabView's memory. Save any work to a new location and restart labview". Labview then freezes. I have reset the DAQ device in trying to slove this but I still get the same message. How do I solve this?? thanks - mars2006

    Hi Mars-
    It sounds like your NI-DAQ installation may have become corrupted. I would suggest uninstalling and reinstalling the DAQmx 7.4 driver to correct this problem and ensure that you're up to date. This download is available here: NI-DAQ 7.4
    If the problem persists you may want to uninstall and reinstall LabVIEW and then NI-DAQ in that order. The error message will usually give an indication as to which VI the error occurred in. Please let us know which VI is failing if you're unable to avoid the error with these suggestions.
    Have a good day-
    Tom W
    National Instruments

  • How to deal with the Error-89130 about the DAQ assistant?

    Once prss the "test" button of the DAQ assistant, the "Error-89130 occurred at DAQ Assistant" show up. It`s no doublt that the labview programme with a DAQ assistant  can`t be run and instead  the " Error-88303 occurred at DAQMx star Task Vi:1" or " Error-88304..." show up while other labview programme without DAQ assistant can run corrrectly. I have reseted or reinstalled the DAQmx, but it didn`t work.  Any other ideas for troubleshooting this? Thanks

    Please refer to this KB, and see whether it works. If problem also exists, please tell the DAQmx version and the DAQ card name.
    Haifeng Xu
    NISH AE

  • Unknown error when adding a DAQ assistant to a blank VI in LabView 2014

    Hello,
    I currently have an issue when I try to add a DAQ assistant to a blank VI  in LabView 2014 Service Pack 1, version 14.0.1.
    It was working previously and has now stopped working.  I have reinstalled LabView 2014 but the problem still exists.
    I have also reinstalled NI-DAQmx 14.5 but this did not cure the problem either.  
    I have made sure that the C:\Program files\National Instruments\MAX folder has Read & execute, List folder contents, Read function allowed for the user account in use on Windows 8.1
    Thanks in advance for the help.
    Scott.

    As soon an the DAQ assistant is dropped onto the VI block diagram an error window pops up stating that "An unknow error has occurred" with an ok button.   This does not force LV to close, the DAQ assistant icon stays on the block diagram, the block is non functional i/o signals available to wire to, I can not access any properties for the DAQ assistant.  Other than that LV appears to be functioning.

  • Error -2147220733 occurred at DAQ Assistant (in Measurement and Automation Explorer)

    Ok!  Just before the weekend I figured out how to make channels in Measurement and Automation Explorer for inputs through a couple different NI input devices (USB-9211A & PCI-6229 DAQ).  Things were going well.  Loaded up the computer today, added a few more channels.  Worked fine.  Now all of a sudden, any channel I make has an error and if I try modifying existing channels and saving, I get same error:
    "This global channel currently has an error.  You can save the global channel, but it cannot be used until all errors have been fixed.  Press "Yes" to save anyway, or "No" to cancel and show the error."
    If I hit yes, the channel is non functional.  After hitting no, I get:
    "Error -2147220733 occurred at DAQ Assistant.  Possible Reason(s): "
    with no possible reasons listed.  I tried restarting the program.  I tried restarting the computer.  I verified connections.  Searched for the above stated error number on ni.com, google.ca, and in the MAX help files, and found absolutely nothing.  I have no clue what to do.  Any help would indeed be very much appreciated.

    Hi there,
    This is my first time on here and I've only been using this software for a couple of days so it's possible I'm making a trivial error but I thought I'd post here anyway as I can't find anything on the net about my problem.
    I also get an error while trying to save:
    Error -2147220733 occurred at DAQ Assistant
    Possible Reason(s):
    Requested Code: -2147220733
    But mine comes about in different circumstances to the one in the original post on this thread by Kahless. I was editting a VI logger task and within that I was trying to edit an NI-DAQmx Task. I was trying to change the clock settings, specifically I was attempting to change the Rate (Hz) from the 1k default to just 20, or 200. I got the error while trying to save so changed it back to 1k, but the error persisted even though I'd set it back to what it was.
    I thought at first it might be simply that I was trying to edit an NI-DAQmx task within VILogger, so I tried making the ammendment directly but the problem was still there. 
    Any ideas?
    Many thanks.

  • Once running the labview program which contain DAQ Assistant ,the message of "ERROR-50405....." appear.

    Once running the labview program which contain DAQ Assistant and can be run without any error before, the message box of "ERROR-50405....." appear which capture down in the attachment. We use PCI6221 and LabVIEW 8.0 in Windows XP. I also found that the Device Manager of Window have recognized the PCI6221.
    Any help on this situation would be great.
    Attachments:
    labview error.JPG ‏145 KB

    Hi~
    This error is due to signal interference between the device and the computer. This could be environmental or due to the PCI Controller. You can on a different computer to see whether this problem persists.

  • Simulated device in MAX, self tests without error and has working Test Panels, but doesn't show up in DAQ assistant.

    I'm trying to create a development machine where we can test new code without using our physical hardware. I've followed this guide in setting up a simulated device. I can get to step 3.2b, but the device does not show up in the DAQ assistant. In MAX, the device self tests and self calibrates successfully, and when I open the test panels, I see some sort of signal. I assume this is a default simulated input since I haven't told the device to look for anything? Note that the two devices I'm trying to create show up in the Devices and Interfaces section, but that even after running Self-Calibrate, the Self-Calibration date is still unspecified.
    When I try to test the device and create a voltage input according to the guide, I am unable to see either device in the DAQ task creator.
    Steps 1 and 2 of this guide are obviously satisfied. Step 3 is not, but this is unsurprising since a simulated device wouldn't be found in the Device Manager anyways. Also, I am not running RT, so step 4 is satisfied.
    Does anyone have any ideas?
    Solved!
    Go to Solution.

    That would be because the PXI 5124 is a digitizer not a analog input device.  You need to use the NI SCOPE driver not NI DAQmx
    Jeff

  • Error 200279 - buffering

    Hello all,
    I am relatively new to labview so any help you can offer is greatly appreciated.
    I am hitting the same problem as a few other people but the solutions that have been previously posted aren't working for me.
    I am trying to acquire, graph and write to file three voltage analog inputs.  I want to sample at 10 kHz but the moment i take the sampling rate above about 5kHz i get the dreaded 200279 error after a period of time.   
    I am using a Pentium4 2.5 GHz computer with 512mb ram with the 6025E card LabVIEW7.1 so i'm quite sure my system is capable.
    I started with the express vi's but found i had no control of the input buffer size, i then broke the daq.assistant.vi down so i could include the config.input.buffer.vi but I am still hitting the same problem when i approach the sampling rate i require. 
    I am relatively unfamiliar with technicalities of LabVIEW so maybe i am missing something simple.
    Andy

    Hi Emma,
    Thanks for the response, I have included my vi for you to look at.
    I have include my orginal vi, creatively entitled Andy's3.vi. I have also included one called Andy's4.vi which includes a DAQmx Read properties code which an author called Zador posted, it seemed relevant so i have attempted to include its functionalities.
    I have tinkered with the andy's.vi in-line with other posts and found that increasing the input buffer only seems to delay the onset of the 200279 error and also slow the computer considerably. The andy'4.vi seems to delay the error permanently but with the same slowing of the pc.
    To re-iterate my issue. I wish to be able to collect from three sources of data continuously at 10kHz at least for a 60 second period. I do however need the graphs to be always-on so i can monitor the experiment but I only want to collect and record data when i trigger the button on the front end. An to correct a typo from my previous post i have an M-Series 6250 card.
    Any advice you have regarding this issue or my vi in general will be very helpful.
    Thanks,
    Andy
    Attachments:
    andy's3.vi ‏415 KB
    andy's4.vi ‏433 KB

  • How to properly read data from one DAQ-assistant and write simultaneously with another DAQ-assistant (which is inside a loop)

    Hello.
    I'm a newbie working on my Master's thesis conserning a project that is based on old G-code made by another newbie so bear with me.
    I need to create a sequance of output controls. For this I'm using a for loop that eventually creates two triangular ramps during a period of 90 seconds. I've confirmed that this function works properly by measuring the actual output of the DAQ-decice (NI USB 6353).
    The problem is the following: During this controll-cycle I need to simultanously collect data from the same DAQ-device. At this point there is only one DAQ-assistant output-block in the main loop of the program and all the signals are derived from it to where they are needed.There is a case-structure (the bottom case structure in the picture) that contains the functions needed to collect the data during the test cycle. However these two actions, outputting data and inputting data, are not synchronized in any way which may be the reason why I get the 200279 error or alternatively the 200284 error during the test cycle. I've tried changing the sample rate, buffer size and the timeout time as adviced but nothing seems to help.
    What would be the simplest way to solve this problem?
    Help is greatly appreciated!
    Attachments:
    problem.jpg ‏206 KB

    Thanks for quick reply.
    However, I did try it (see the picture) but I still have a problem: I only get 100 samples / channel during the test sequence (all from the first seconds of the sequence) in total even though I've set the data aqcuiring DAQ-assistant as "continous" and "samples to read = 95k" and rate is 1000Hz.
    Edit.
    And lastly, I have trouble adding this "extra" DAQ-assistant to the vi. because I get an error about a resource (The 6353) being reserved, even though I connected a false constant to the "STOP" -input of the main DAQ-assistant.
    Attachments:
    is_this_what_you_meant.jpg ‏212 KB

  • How can I programmatically change the voltage range settings in a DAQ Assistant

    Hi,
    First post here.  
    I need to be able to change the voltage range properties of a daqmx DAQ Assistant based on user input.  My hardware, an SCXI-1102C does not allow changing this property on a running task, so I'd like to either set the analog input voltage range before the DAQ Assistant activates, or pause the DAQ Assistant immediately after it starts, set the values and then resume.
    I don't know how to edit the task ahead of time because the DAQ assistant creates the task when it runs, and there is no task before that.
    In the attached picture, I have a conditional section, set to run only if the while loop iteration is 0.  I take the task from the Daq assistant, send it to a stop task vi, set the property, and then send the task on to the start task vi. I can watch it run with the debug light on, and everything seems to work correctly, but on the second (and all the other) iteration of the loop, I read out AI.Max and it seems like the DAQ Assistant has re set it back to 5V.  Can anyone see what is going wrong here?
    BTW, this is continuous acquisition and the code does not produce error messages when it runs.
    I did come across a similar question that someone posted here back in 2006, but his question was specifically aimed at a Labview API (VB, I think), and not an actual G solution.
    Attached are the actual vi in question and a png image of the block diagram.
    Thanks! 
    Ruby K
    Solved!
    Go to Solution.
    Attachments:
    Labview_question.PNG ‏14 KB
    Sample_AIV.vi ‏91 KB

    First, if you want to start getting beyond the basics with DAQ, you are going to have to stop using the DAQ assistant and do it with lower level DAQmx VI's.  There are hundreds of examples in the example finder.  You can even right click on the DAQ assistant and select open front panel.  That will create a subVI that you can open and see what is going on behind the scenes.  Do it.  I think you'll find the DAQ task is being recreated on each (though I'm not 100% of how the settings are established or maintained in each section of that subVI).
    The second problem is you have a bit of a race condition on iteration 0.  Those two DAQ property nodes are running at the same time.  So when you read the AI.Max, it may be happening before or after the AI.Max is set in your case structure.
    Third, make sure you wire up your error wires.

  • In Labview 8.5, what happens if the signal input exceeds the signal input range set by the DAQ Assistant?

    Hello all,
    This should be a pretty simple question, but I can't seem to find the answer on-line and don't currently have the capabilities to test this:
    I'm using LabVIEW 8.5 and have a VI that imports sensor data through the DAQ Assistant. In the configuration tab there is a signal input range. What happens if my sensor exceeds this range? Will I get a warning? Will the value default to the maximum (or minimum)? I was interested in writing in some code to display an error as I approach the limits of this range, but was unsure if I also needed to include some code to display an error if the range is exceeded as well.
    Thanks for the help,
    Tristan
    Solved!
    Go to Solution.

    Hello Tristan,
    The behavior depends on the range you choose and the device you are using.
    If you are using a device with only one valid input range, we will use this range even if you set a smaller minimum and maximum in the DAQ Assistant.  Thus, if your device only supports ±10V and you set the range to ±8V, you will still continue to get valid data after your sensor exceeds 8V until you approach 10V.  Once you reach the limit of the range of your device, the output will "rail" and just return the maximum value until the signal drops below the maximum again.
    Note: A device that is nominally ±10V usually has some overshoot (like ±10.2V) that is typically specced in the manual.
    However, if you are using a device with multiple input ranges then things get more complex.
    The NI-DAQmx drive will pick the smallest range that fully encompasses the range you choose.  So, suppose your device supports the following input ranges: ±0.2V, ±1, ±5V, and ±10V and you choose 0V - 3V as the range in the DAQ assistant.  The NI-DAQmx driver is going to look at your input range and the list of input ranges that your hardware supports and choose the smallest that encompasses the full range you set.  This would the ±5V, because that's the only range that contains up to 3V.  As a result, any input signal between ±5V will be returned and any outside this range will "rail" to either the maximum or minimum value.
    We do this because using smaller ranges make more effective use of the resolution of the ADC.  Thus we try to use the most efficient range based on what you request without picking a range that will cause you to miss data.
    Let me know if I can clarify this further. 
    Seth B.
    Staff Test Engineer | National Instruments
    Certified LabVIEW Developer
    Certified TestStand Developer
    “Engineers like to solve problems. If there are no problems handily available, they will create their own problems.”- Scott Adams

  • Stuck in Error -200279

    My program involves several DAQ tasks that run in lockstep, after the fashion of the "Multi-Function-Synch AI-AO" example. Works very well in general, but if anything ever interrupts the flow of the program, I get permanently stuck with error -200279. Here is the precise report:
    Error -200279 occurred at DAQmx Read (Analog 1D Wfm NChan NSamp).vi:1
    Possible reason(s):
    Attempted to read samples that are no longer available. The requested sample was previously available, but has since been overwritten.
    Increasing the buffer size, reading the data more frequently, or specifying a fixed number of samples to read instead of reading all available samples might correct the problem.
    Property: RelativeTo
    Requested Value: Current Read Position
    Property: Offset
    Requested Value: 0
    Task Name: Analog input
    And once I am in this state, the only way I can find to get out of it is to kill and restart all my tasks. Surely there is a better way? How do I resynchronize so that the computer quits asking for old samples and gladly accepts the ones that are there NOW?
    Here are a couple of reliable ways to bring on this problem: 1. Hit a breakpoint while debugging. This is very exasperating, when you can't use a breakpoint without destroying the very operation you're trying to debug. 2. The user presses a button that opens a file dialog. Even though my main program consists of several parallel loops, and the file dialog is called from a DIFFERENT LOOP from the one that is doing the data acquisition. That's a problem anyway. How can I bring up a file dialog without stopping my DAQ flow in midstream?
    Help eagerly appreciated. This problem is stopping my program from being the industrial-strength job that my scientist users need.
    Thanks,
    Ken
    Solved!
    Go to Solution.

    Hi Dan,
    Agree with you in general.  In our specific case, we need to recognize the error but then immediately move on and get the next available data.  What I think I understand from earlier in the thread is you need to manually move the RelativeTo and Offset to the most recent data and then continue.  Here's what I have tried, and it seems to work.  This is placed in the error handing code (essentialy in the DAQmxErrChk, so you have to worry about recursion because of calls to DAQmxErrChk).
         Case -200279
             ' Force DAQmx to read the most recent sample in the buffer
             DAQmxErrChk (DAQmxSetReadOffset(ByVal AITaskHandle, -1&)) 
             DAQmxErrChk (DAQmxSetReadRelativeTo(ByVal AITaskHandle, DAQmx_Val_MostRecentSamp)) 
             ' now read just one value to resynch everything
             DAQmxErrChk (DAQmxReadAnalogF64(AITaskHandle, -1, 1#, DAQmx_Val_GroupByChannel, AIData(0), 1&, sampsperchanread, ByVal 0&))
             ' now reset DAQmx to read from the current position from now on
             DAQmxErrChk (DAQmxSetReadOffset(ByVal AITaskHandle, 0&))
             DAQmxErrChk (DAQmxSetReadRelativeTo(ByVal AITaskHandle, DAQmx_Val_CurrReadPos))
    The only problem is I don't really know if this is working as expected!  Not sure how to really tell.
    Van

Maybe you are looking for