LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

TCP communication Windows 7

HI!

I have a simple problem probably related to Windows 7. I have a cRIO-9014 that is constantly acquiring data from FPGA through DMA. cRIO stores these data to USB HD and sends through TCP to a computer with Windows 7 OS installed. The problem is that there is a lag between data displayed on Windows 7 and cRIO. This problem is, I think caused by data processing time in Windows and time necessary to deliver data from cRIO to Win7. What can i do to reduce the delay?

cRIO reads data from DMA, checks whether there is more than 400 samples. If yes, checks if there is more than 100 000 samples. If yes stores data to USB HD and does not send it through TCP. (this is becouse cRIO usually waits for to long in TCP Write). If there is >400 and <100000 stores data to USB HD and sends through TCP (timeout 5000ms). This makes me sure that no data will be missing in DMA channel. 

There is, of course, mechanism assuring constant connection through TCP with Win7 (error handling procedure, reconnecting...). But storing data to USB HD is of highest priority.

 

Delivering data to Win7 is also very important. How to achive both goals?

 

Win7: no defender, no antivirus, no firewall.

 

Thank You All!

 

 

 

0 Kudos
Message 1 of 2
(2,226 Views)

Dear przemmo,

 

  What version of LabVIEW are you using? I it is 2010 than you could use Network Streams instead of TCP communication. You can read more about this easy to use technology on the following link:

 

http://zone.ni.com/devzone/cda/tut/p/id/12267

 

At the end of this article there are some benchmarks as well. Try to separate the logging and communication part on the block diagram so the logging won't hang the sending of data to host. Between two loops you might communicate with the RT FIFO functions.

 

By the way, how big delay are we speaking about?

 

Let me know how things work out!

 

Best,

 

David Varga

NIH

0 Kudos
Message 2 of 2
(2,154 Views)