07-31-2008 09:40 AM
08-01-2008
03:52 PM
- last edited on
09-30-2025
10:24 AM
by
Content Cleaner
Hi Fuqface,
Thanks for posting to the NI discussion forums. I found a PCI-6111 from our equipment library and I was able to run your application without receiving any errors. Can you provide any more details about when the error occurs, what settings you are using for the buffer, number of scans, etc… Is there an error number associated with the error message?
Is this an existing application that somebody wrote for? It looks like the application was written using the Traditional NI-DAQ driver. Do you plan on using this application for a number of years? If so, I would strongly recommend using the new NI-DAQmx driver VIs to program the acquisition. The NI-DAQmx driver is easier to program and can greatly reduce development time. If you are interested, I would be glad to point you to some resources such as:
Learn 10 Functions in NI-DAQmx and Handle 80 Percent of Your Data Acquisition Applications
Transition from Traditional NI-DAQ to NI-DAQmx in LabVIEW
Getting Started with NI-DAQmx: Main Page
08-04-2008 10:56 AM
08-05-2008 10:09 AM
The NI PCI-6111 is an older device, but it is supported by NI-DAQmx and Traditional NI-DAQ. If you check the read me file for one of the latest versions of NI-DAQmx you will see that it is listed as a supported device.
The 10444 error may be caused when you are trying to allocate a buffer size that goes beyond the memory limitations of your computer. On my computer (which has 2 gig of RAM) I got the same error when I tried to set the buffer size greater than 25M or so. Try allocating a smaller buffer size.
The 10089 error may be caused because of the number of scans
to acquire value that you have wired into the AI Start VI. You are setting the
number of scans to acquire by multiplying the Acquired Time Period by the Scan
Rate. You need to be careful that this
value doesn’t exceed the buffer space you have allocated. For example, you set a scan rate of 5M
samples and try to acquire for 2 seconds, that means you are telling the driver
you want 10M samples when you have only allocated a buffer size of 5M.
On a side note, you are reading all of the scans at once by setting the Number of Scans to Read to be -1. Essentially your while loop is only going to execute once and it will read all 5M samples in the first iteration. If you want more processing resources available to perform all the other operations in the same while loop, first add some execution timing to the while loop (like a Wait Until Next VI with a constant of a few ms wired to it), and set the Number of Scans to Read to be something other than -1. For example you could read in 10,000 samples for each time the read VI is called. The read VI is simply taking samples out of the buffer that you allocated and putting them into LabVIEW memory so that you can perform operations on them.