how can i recieve Mavlink message through udp connection?

2 views (last 30 days)
im really new to Mavlink and uav toolbox..
im trying to recieve Mavlink message from px4 by using udp connection.
before that , im doing some practice by making Mavlink message by myself and send it to locol
i made Attitude message and i gave a sine wave to value of 'roll' parameter. and sent to localhost (loopback)
and using udp recieve block , i could recieve the message i just sent. but the result of roll (as you can see in the scope ) dosent really change in real time...
result should be the sine wave .
i hav no idea why the value is not being update . does someone know how to solve this problem??
thank you for reading my poor english

Accepted Answer

Ankur Bose
Ankur Bose on 13 Jan 2021
Hi,
I can see the Status outport of the Deserializer block is 0 which indicates that no new message is being received. I also see that the output data is not a smooth sine curve. All this leads me to believe that the data read size/ sample rate in the UDP receive is not appropriate.
If you are using the Instrument Control Toolbox UDP receive, I suggest you keep the data size to a large value(ex -200). Also read at a faster rate that you are writing. Use the Status outport of UDP receive to trigger a Triggered subsystem. Put the deserializer inside the trigger subsystem.
Hope that helps,
Ankur
  3 Comments

Sign in to comment.

More Answers (0)

Products


Release

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by