How to send and receive data using UDP on the same computer?

29 次查看(过去 30 天)
I want to use UDP to send and receive a data from a same computer in real time. I have an s-function block which get data from another software(optitrack) and I want to send this data to another simulink model on the same computer. I am just wondering if this can be possible by just using the 'DSP System Toolbox' sender and receiver udp blocks. I used '127.0.0.1' for the ip address to send the data and used '0.0.0.0' to receive it. Notice: I first packed the data from the s-function block and then connected it to UDP sender and for the receiver side I unpacked the data using Unpack block but still didn't work.
  5 个评论
Kidus Guye
Kidus Guye 2018-8-23
Check this out. I used this example. https://www.mathworks.com/examples/simulink-desktop-real-time/mw/sldrt_product-sldrtex_packetio-packet-input-output?s_tid=srchtitle
Vaibhav Arora
Vaibhav Arora 2019-9-17
Although any of the blocks from different libraries can be used, use the UDP send and UDP receive blocks from the embedded coder library. Use '127.0.0.1' for the remote IP address of both the blocks.
The remote IP port of the send block should match the local IP port of the receive block. Additionally, you should use byte pack and byte unpack blocks to pack the data into uint8.
For the receive block, let the receive buffer size have the default value. 'Maximum length for Messafe' parameter of the receive block would depend on the data packed. For example, if you expect to pack 4 double values using the input bus of byte pack and send it through UDP send, then this value should be 32 (4*8).
Output variable-size signal should be unchecked. Blocking time blocks UDP receive until it receives a message from UDP send.

请先登录,再进行评论。

回答(0 个)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by