LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Sbrio Udp receive data

Hello 

i need to receive data over udp from a pc to sbrio

the data is 126 bytes and received every 5 ms

it is look like the sbrio cant follow this rate

i am using one loop to receive the data then pass it with queue to another loop for parsing.then to another loop for processing and to another loop that update the fpga outputs

for debugging , in the parsing loop i sent the data 0xAA and after the processing loop i send 0xBB . I expected to see in the wire shark :

receive 126 byte

transmit 1 byte

transmit 1 byte

but after some time i see

receive 126 byte 

receive 126 byte 

receive 226 byte…

and then

transmit 1 byte..does the sbrio can handle this data rate??

Thanks

Moran

0 Kudos
Message 1 of 3
(1,235 Views)

If I understand you correctly, you are sending 126 bytes over UDP at 200 time/sec, or about 200 K bits/sec, which seems "slow" to me for TCP/IP.  If you can't get this to work, the problem is probably Hardware (unlikely, as networks have come a long way and even WiFi talks about multiple megabits/sec), or Software.  You don't tell us anything about either your Hardware (except that some model of sbRIO is involved), and nothing at all about the Software that you are using (I assume it is LabVIEW code that you might have written or "borrowed").

 

Assuming that the problem is Software, we cannot suggest what is wrong with the software you are using if you do not attach all of the relevant LabVIEW code (as .VI files, not as "pictures" of Front Panels and Block Diagrams).  I'm sure that there are Forum members who could help you improve your code ...

 

Bob Schor

0 Kudos
Message 2 of 3
(1,220 Views)

Hi Bob

thanks for your reply 

i am using sbrio 9608 connecting directly to a pc

you are right about the data i am sending it is  200k bit /sec

the software i am using is Labview.

I will try to describe the overall structure of the code

i am using queues to pass data between loops

i have 4 loops:

first loop receive the udp packet (126 bytes)

and pass it directly to the second loop

 

second loop parse the data and rearrange it in a new array and pass it to the third loop

 

third loop performs some calculations on the data and pass the results to forth loop 

 

forth loop pass the results data to the FPGA

 

for debugging , i am sending back the data 0xAA

after finished the second loop and sending again the data 0xBB after the third loop 

and inspect it on a wire shark and i see that the pc sends the data (126 bytes) a few times before it received the debug bytes

i am also using a controls and indicators on the front panels , maybe it slows the performance??

 

It is a little bit difficult to post the code because  the pc i am working with doesn’t have direct connection to the internet 

Thanks

Moran

0 Kudos
Message 3 of 3
(1,191 Views)