05-15-2009 04:39 PM
I'm using a few month old PCI-6251, interfacing through Matlab.
I'm sending 50 ms pulses of noise through the output channel, but some 20% of the time the output gets cut short. It sends perhaps a 10 ms pulse. I checked samplesAvailable and they are all there before sending, and all gone afterwards (for both correct and incorrect outputs).
The same code running on another machine with the same model board (1+ years old) does not have this problem.
Differences between the two setups:
good one:
intel dual core
matlab2007b
board is connected to a CB-68LP (I think that's the model name)
bad one:
intel quad core
matlab2008a
board is connected to BNC-2120
any suggestions would be appreciated. I don't think that matlab is the issue, however, there have been times when one system crashed on the same code which the other one ran flawlessly.
05-18-2009 10:02 AM
I would recommend to switch the hardware between the two computers (PCI device and then breakout board) to see if the problem follows the hardware. That would take Matlab out of the equation and maybe be able to identify the piece of hardware causing the issue.
If the problem follows the hardware we could run a few tests in Measurement and Automation Explorer (MAX) to test the PCI card and breakout board. To do this, open MAX and navigate to your PCI-6251. Right click on the device and select test panels. From here, you can perform an analog output to see if you your AO channels are working. Also, there is a diagnostic utility you could run on the PCI-6251 to see if you receive any errors.
DAQ Diagnostic Utility 2.0 - Windows 2000/NT/XP
http://joule.ni.com/nidu/cds/view/p/id/566/lang/en
05-18-2009 01:28 PM
Thanks Jordan for the help.
I tried switching the boards, and the problem did not follow. Not wanting to rule out a hardware problem I ran the diagnostic tool and got an output error:
Testing AO Finite Sample Clock... (FAIL) ************ Test FAILED for the following reason ************ Error -200016 occurred at DAQmx Wait Until Done.vi:1 Possible reason(s): Measurements: Onboard device memory underflow. Because of system and/or bus-bandwidth limitations, the driver could not write data to the device fast enough to keep up with the device output rate. Reduce your sample rate, alter the data transfer method (from interrupts to DMA), use a product with more onboard memory, or reduce the number of programs your computer is executing concurrently.
So it looks like the problem lies in the lower quality of the motherboard. I'll look into the suggested solutions.