MATLAB Answers

how can i recieve Mavlink message through udp connection?

5 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!