Sending data to UDP Receive Block Simulink

2 visualizaciones (últimos 30 días)
m8freckles
m8freckles el 21 de Mzo. de 2017
Respondida: m8freckles el 31 de Mzo. de 2017
Hey! I need to send data (two rotation matrix) through UDP port. The size of my data is a 3x6 matrix and i'm using this code to send it to a UDP Receive Block on Simulink:
host='192.168.135.240';
port='3333';
echoudp('on',3333);
u=udp(host,3333);
fopen(u);
a=rand(3,3);
b=ones(3,3);
data=[a b];
fwrite(u,data(:),'double');
fclose(u);
delete(u);
clear('u');
echoudp('off');
I do receive the data on my UDP receive block and display them in the simulink model, but my problem is that i need to run three times the mfile before the data are shown on the display. The block parameters in the simulink model are shown in figure.
Have you any idea how to solve this problem? Thank you!

Respuesta aceptada

Mahesh Pai
Mahesh Pai el 29 de Mzo. de 2017
Editada: Mahesh Pai el 29 de Mzo. de 2017
It is my understanding that you need to send a UDP packet multiple times for successfully receiving it on the other machine. The configuration you have mentioned above looks correct. The below document mentions some troubleshooting steps for the UDP interface in MATLAB:
The troubleshooting document also mentions that UDP is not a reliable protocol and packets can be dropped. You may need to try sending or receiving multiple times.

Más respuestas (1)

m8freckles
m8freckles el 31 de Mzo. de 2017
Ok,thank you for your help!

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by