LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

data capture continuously using NI PXI 6562

 

Hi,

 

   I am using NI PXI 6562 and labview 2009 to capture lvds data at 100MHz.

 

   I need to have at least 100 million data points ( 1 second ), but the labview crashes if I tried to capture more than 4 million points.

   (memory problem) I attached the block I am using.

Screen shot 2011-02-04 at 1.52.49 PM.png

 

   I used niHSDIO fetch waveform. And after fetching, I put this data to FIR filtering in Array from.

 

   I am only watching the output after filtering. So I don't need the whole 100 million data points at the same time, but I want to see the output continuously without multiple triggering and capturing.

   (I am doing multiple capturing 4 million points each time until I got 100 million points. But in this way, the whole 100 million points are not contiguous.)

 

   I am wondering if there is any way of seeing data without the act of capturing fixed N points (moving fixed N points from PXI 6562 memory to desktop computer memory) but continuously updating the new data and erasing the old ones so that I am always seeing the last N or some points incessantly. 

 

Thank You

0 Kudos
Message 1 of 5
(2,395 Views)

Kidhyun,

 

Is there any further configuration you are doing to the left of your screenshot (i.e. Session Initialized or Sample Clock Initilization)?

 

When you say that LabVIEW is crashing, are you refering to an error message being thrown, or is the program itself actually shutting down?

 

Also, have you taken a look at our LabVIEW examples (Help >>Find Examples >> Hardware Input and Output >>Modular Instruments >>NI-HSDIO >>Dynamic Acquisition)?

There should be an example there that may show a bit more about the setup you are looking for. I'll have to take a deeper look through them to find the exact one to point you to, but they're always a good starting point.

It sounds like you may want to perform an acquisiton in a loop and update the data as you go, so look for an example that focuses on that.

 

Let me know about the above and hopefully we can narrow down your problem from here.

 

Timothy

Timothy S.
Senior Technical Support Engineer
0 Kudos
Message 2 of 5
(2,351 Views)

Kidhyun,

 

After looking through things a bit more, the issue you are running in to may be more of a card bandwidth and actual LabVIEW memory issues.

 

You may want to look in to using a producer-consumer loop design to help alleviate some of these issues.

 

The following articles are good reads on the subject and should provide more light on what you are trying to accomplish.

 

High-Speed Data Streaming: Programming and Benchmarks
http://zone.ni.com/devzone/cda/tut/p/id/5897

 

NI-HSDIO Steam To Disk (Acquistion) Using Win32 File I/O
http://zone.ni.com/devzone/cda/epd/p/id/5271

 

Timothy

Timothy S.
Senior Technical Support Engineer
0 Kudos
Message 3 of 5
(2,333 Views)

Hi,

 

   Thanks for the explanation. 

   About crashing, sometimes the whole labview software shut down, and sometimes, it only says the memory error occurred. (such as memory allocation)

   I think it comes from capturing too many data points.

   I produces error when I tried to capture 4 million double floating point numbers, and I need to capture 100 million points. So I wanted to avoid just installing more memory in the PC to solve this discrepancy of 4 mil vs 100 mil. (I guess there is a limit on how much memory the labview can handle.)

   I will look into your suggestions in the second post. 

 

 

0 Kudos
Message 4 of 5
(2,311 Views)

Kidhyun,

 

Have you been able to acquire this data into the onboard memory of the HSDIO before your system crashes?

How many channels are you using for this acquisition? If you are using 8 or less, you can also look in to changing the data width to a lower level of 1 byte (instead of 2) which would increase the amount of onboard memory that is being allocated to each channel. This might allow you to gather all of the data on to the onboard memory where you could then fetch it as needed.

 

The following article, "HSDIO Data Width and Memory Allocation" at the below link should provide some insight for this.

http://digital.ni.com/public.nsf/allkb/E5170A54988EF81A8625725A006103BB

 

Timothy

Timothy S.
Senior Technical Support Engineer
0 Kudos
Message 5 of 5
(2,292 Views)