How to change the parameters in the Quadrotor Plant for a different UAV mass?

11 views (last 30 days)
I have not had any success in trying to figure out what parameters to chose for a higher quadcopter mass in the quadrotor plant block. After many tries, the quadrotor simply does not take off with different parameters. I would appreciate any ideas on how to calculate the PD gains for a different mass. Thank you!

Accepted Answer

Jianxin Sun
Jianxin Sun on 7 Nov 2022
Instead of changing the PD gains on the block, you should increase the commanded thrust to drive a heavier UAV. For example, in order to be able the take-off, the commanded thrust should be higher than the gravity force. So if your mass is 1 and gravity acceleration is 9.8 then the commanded thrust should be higher than 9.8.
Tudor-Stefan Tonca
Tudor-Stefan Tonca on 19 Nov 2022
Thank you for the tip. I have tried increasing the saturation, but without success. I have spent much time trying different values for the output saturation limits, because changing only the saturation block for the thrust did not do anything. The best outcome that I've obtained was the quadcopter flying the mission, but missing checkpoints, having random altitudes and flight speeds and not reaching the landing point, but flying past it.
However, I have managed to solve the issue as it follows:
I have added a Gain to the thrust signal, right after the saturation block, calculated as follows: Gain = Desired Mass/Initial mass. For example, for a mass of 5 kg, the gain would be 50.
The same applies for changing the velocity: adding a gain equal to desired velocity/initial velocity (3 m/s) right before the velocity command output.
By adding gain to multiply the thrust as stated, I have managed to solve the issue. I have also tested the method for different mass values and it works perfectly each time.
Thank you all once again for your help. It's very appreciated.

Sign in to comment.

More Answers (1)

Tudor-Stefan Tonca
Tudor-Stefan Tonca on 19 Nov 2022
Dear all,
I have managed to solve the issue as it follows:
Changed the mass parameter in the configuration tab as desired mass. Set the Initial thrust as desired mass * 9.81.
Gain block added on the thrust signal, being equal to desired mass/ actual mass (0.1 kg). (or desired mass * 10)
Thank you all for your help, interest and tips.

Community Treasure Hunt

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

Start Hunting!