MATLAB: A Question on UDP Receive Block

simulinksystem objectsudp

Hello Everyone… I am trying to receive UDP Data via Ethernet in Simulink. I have three questions in regard to this.
1) There are two UDP Receive Blocks in Simulink library browser , One in DSP System TOolbox and Instrumentation Control Toolbox. What is the functional difference between these two blocks… I mean why one is preferred over other..
2) Does "UDP Receive" has to be used only with conjuction with UDP Send… i.e If I send UDP packets using "UDP Send " block from another Simulink on Same (or) different Computer???? I believe answer is NO.
The Reason Why I am asking this question is , I used two different computers and Tried to send Data using UDP SEND and UDP Receive … It Worked… But When I am trying to Send UDP Packets of simple numbers (or) String from another environment (PERL) on different computer, I simply see Zeros on the Receiving side. No matter what I tried on Simulink . (I guess I am missing some simple part)
3) Is there anyone who has tried Sending Data from different Environment (like PERL ) and successfully captured what was sent on SIMULINK platform. If Yes, Are you doing any kind of packing-unpacking at eother side (or Just Sending Raw Numbers. ) ?
Any Idea (or) direction is highly appreciated Please let me know if you have any questions.

Best Answer

http://www.mathworks.com/help/dsp/ref/udpreceive.html cannot be non-blocking. It also supports variable-length signals. The documentation on it is explicit about support for generated code.
http://www.mathworks.com/help/instrument/udpreceive.html supports non-blocking. It is not obvious whether it supports variable-length signals. It is not obvious whether code generation is supported.
Does "UDP Receive" has to be used only with conjuction with UDP Send
No, you should be able to receive data from outside. I have not tried it myself, but I have seen enough messages to know that people have been able to get it to work.
Related Question