Multifunction DAQ

cancel
Showing results for 
Search instead for 
Did you mean: 

hi,

Solved!
Go to solution

Hello Imran,

 

The transfer mechanism for analog output that you had to adjust shouldn't have an impact on the analog input with your device.  That leads me to believe that something in the code is causing this behavior that you're seeing.  In order to narrow down the problem, it would be great if you could try the analog output and input using only the LabWindows examples with the necessary adjustment for switching from DMA to interrupt.

 

For output, I'd suggest:

ContGen-IntClk.prj (you will need to add the property you added to your code to change the transfer mechanism to Interrupt)

 

For input:

ContAcq-IntClk.prj

 

If you'd rather, instead of using the input example, you can use test panels in Measurement & Automation to observe the Analog Input.  If this method produces the same behavior, could you attach some screenshots of the output you are viewing when you see it change to 'noise'?

 

Regards,

National Instruments
0 Kudos
Message 21 of 44
(1,910 Views)
Sir! waiting for reply please. Imran
0 Kudos
Message 22 of 44
(1,912 Views)

Imran,

 

Were you able to test what I suggested in my previous post, above?

 

Regards,

National Instruments
0 Kudos
Message 23 of 44
(1,909 Views)

o o o sory sir without looking your latest suggestion, i posted you"sir i"m waiting for your reply please"

I am going to do so as you suggested your highness right now.

 

Imran

0 Kudos
Message 24 of 44
(1,904 Views)

o o o sory sir without looking your latest suggestion, i posted you"sir i"m waiting for your reply please".

I am going to do so as you suggested your highness right now.

 

Imran

0 Kudos
Message 25 of 44
(1,903 Views)

Hello sir!

 

Sir i did as you recommended me for sinewave input and i am attaching some screen shots.

And for output Sir! I  think if by using other pc it generates sine wave(with the frequency of our interest) without changing data transfer mechanism it should be successfully generate on this pc without changing data transfer mechanism to intrupt.

 

Imran.

0 Kudos
Message 26 of 44
(1,881 Views)

Imran,

 

The reason for changing to interrupt for your PC is because of a known issue between the motherboard of that machine and DAQ devices.

 

It seems the problem you are running into here is that you approaching the limit in performance of your 6251 card (it has a 2.8 MS/s max for aggregate analog output).  I am going to look a bit further into the screenshots you provided and I will repost with what I conclude.

 

Regards,

National Instruments
0 Kudos
Message 27 of 44
(1,871 Views)

Hello sir!

 

Sir waiting for a kind reply.

 

Imran

0 Kudos
Message 28 of 44
(1,854 Views)

Hi Imran,

 

Going back to your original post:

 

---------------------------

 the pc in which daq device is working properly has following hardware:

 

1) intel(R) Core (TM) 2 cpu

6300@1.86GHz,1.86GHz

,1GB of RAM physical address extention. and 3 pci slots one of which contains my daq device

 

and the pc in which daq device is  not working properly has following hardware:

 

2) intel(R) Core (TM) 2 cpu,E8400 @ 3.00GHz

3.00GHz,2,1.97Gb of ram physical extention,and 4 pci slots.

------------------------------

 

since you can only observe your problem on the second machine and not on the first, this leads me to believe that the problem lies not with NI PCI 6251 card, but with the motherboard installed on the second machine. Also, in most cases for most optimal performance of your code you should use the DMA transfer method. Here is a paragraph that clarifies the difference between DMA and interrupt transfer methods.

 

--------------------------

Data Transfer Methods

There are three primary ways to transfer data across the PCI bus—Direct Memory Access (DMA), Interrupt Request (IRQ), and Programmed I/O.

Direct Memory Access (DMA)

DMA is a method to transfer data between the device and computer memory without the involvement of the CPU. This method makes DMA the fastest available data transfer method. National Instruments uses DMA hardware and software technology to achieve high throughput rates and to increase system utilization. DMA is the default method of data transfer for DAQ devices that support it.

Interrupt Request (IRQ)

IRQ transfers rely on the CPU to service data transfer requests. The device notifies the CPU when it is ready to transfer data. The data transfer speed is tightly coupled to the rate at which the CPU can service the interrupt requests. If you are using interrupts to transfer data at a rate faster than the rate the CPU can service the interrupts, your systems may start to freeze.

Programmed I/O

Programmed I/O is a data transfer mechanism where the user's program is responsible for transferring data. Each read or write call in the program initiates the transfer of data. Programmed I/O is typically used in software-timed (on-demand) operations.

Changing Data Transfer Methods between DMA and IRQ

On PCI or PXI M Series devices, each measurement and acquisition circuit (that is, AI, AO, and so on) has a dedicated DMA channel. So in most applications, all data transfers use DMA.

However, NI-DAQmx allows you to disable DMA and use interrupts. To change your data transfer mechanism between DMA and interrupts, use the following VIs/functions. For NI-DAQmx, use the Data Transfer Mechanism property node. For Traditional NI-DAQ (Legacy), use the Set DAQ Device Information VI or function.

---------------

 

Finally, another thing you can try on your second computer is to change the PCI slot of your DAQ card to a PCI slot that is closer to the CPU on your motherboard.

Mikhail
RF Toolkits, Product Support Engineer
National Instruments
0 Kudos
Message 29 of 44
(1,828 Views)

Hi sir!

 How can i do  change the PCI slot of  DAQ card?

 

 

Imran

0 Kudos
Message 30 of 44
(1,819 Views)