LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

How to run TCP/IP Tx in cRIO vi only when value changes?

My design uses NI's TPC-2006 as the user interface for a cRIO-based product.  I use TCP/IP to exchange data between the TPC-2006 and cRIO.  My code causes the TPC to lock up after a variable number of minutes, typically about 10.  The OS is completely locked and requires a power cycle to recover.
 
Based on the theory that the TPC-2006 is not keeping up with the TCP/IP packets sent by cRIO, I want to try configuring cRIO to transmit only when it has something new to say.  The event structure that I use for the TPC-2006 won't work on cRIO.  Can anyone out there suggest another approach?
Jeff
Climbing the Labview learning curve!
Sanarus Medical
Pleasanton, CA
0 Kudos
Message 1 of 3
(2,576 Views)
Anyone?  TIA!
Jeff
Climbing the Labview learning curve!
Sanarus Medical
Pleasanton, CA
0 Kudos
Message 2 of 3
(2,567 Views)

Hi Jeff,

The simplest way to reduce transmission overhead in this scenario would be to encase your existing TCP/IP routine in a case structure that only executes if the data element you're interested in is not equal to its last value (stored in a shift register).  This shouldn't add much in the way of computational overhead on the RT side, but should reduce the flood of data if the value doesn't change very often.  Keep in mind also that if you have LabVIEW 8, you can use Shared Variables to send the data over your tcp/ip connection only when a new value is written to the variable - this may meet your needs just as well.

Cheers,

Matt Pollock
National Instruments
0 Kudos
Message 3 of 3
(2,563 Views)