11-25-2008 08:13 PM
Hi,
Beside reflective memory, I would like to know what is the most efficient way to share 200 kHz data measured with a PXI chassis and embedded controller with another PC. Just to describe the setup, we are planning to write some Labview software to process the data in real-time, but we also want to keep some old legacy software that need this data for post processing.
The concern I have is that the processing done on the embedded controller is very intensive and I am looking for the way that will be the least demanding to the CPU, but capable to transfer all data wihtout loosing any (16 channels, 200 kHz).
11-26-2008 04:23 PM
I would rank your options this way (with #1 being the least demanding on your controller's memory):
1. FTP from the PC to the controller's hard drive, copy over the data, and then delete it. This way, the PC is doing all the work, and the controller is left to just gather data and do its own processing. The catch is that your network capabilities will determine how fast you can do this. Also, you'd have to make sure you aren't deleting data the controller hasn't processed yet.
2. Store the data in Shared Variables, so that both the controller and the PC can see and use the variables in real-time as they are updated. However, lots of shared variables = very messy code.
3. TCP/IP is your last option for transferring data. It will be the most demanding on the controller since it will need to open and close ports and handshake.
With all of these, you shouldn't lose any data if it's programmed properly.