Hey guys, our team haw recently built a large (2000mm diameter) octacopter UAV with a 40 kg Payload capability.
Unfortunately, the drone becomes unstable almost immediately after takeoff. The stock PID tuning seems completely off. There are no mechanical issues with the frame, arms, motors (we have enhanced all the connections and made it super rigid). The Pixhawk 6X FMU sits on vibration dampeners (is this correct or should we hard mount the Pixhawk to the frame ?)
The drone appear to do a wobble and increasing oscillations in both pitch and roll axes begin to appear as soon as you move the sticks during the tuning phase.
We have tried zeroing the I term, and reducing the P and G gains of the rate in both pitch and roll. Also, we reduced the attitude P gainsand the behaviour of the drone got better but it is still not flyable.
Are there any other parameters that we should be aware of (maybe harmonic notch filters etc). Does anyone have experience with massive drones and PID on PX4 ?
I will provide some photos and flight logs for reference.
MC_ROLL_P and MC_PITCH_P for the attitued controller were reduced from 6.5 to 4.0.
MC_PITCHRATE_D was reduced from 0.003 (default value) to 0.001.
MC_ROLLRATE_D the same reduction as pitch.
MC_ROLLRATE_P was reduced from 0.15 default to 0.05
The I term was set to 0, in an attempt to reduce the low frequency oscillations of the UAV.
The throttle curve was set to 0.3
Any advice on how to continue from this point ?
Thanks in advance,
George Katevatis
If you share a link to the log that would help.
I think what you tried makes mostly sense. One more thing to consider might be to increase MC_ROLLRATE_P slightly instead of reducing it, just as a try.
To avoid crashing, I would build some sort of setup that allows you to tune it without falling on the ground, e.g. suspended on a rope (with a kill switch ready).
And let me tag @bresch here, he might have better advice than me.
These are the log files from 4 different flights we did while tweaking some of the PID loop parameters. Some videos are also in the folder for reference.
We haven’t yet autotuned the UAV, we change the relevant parameters manually for now, until we can achieve a stable hover.
Hey Julian,
we had another testing round and the behaviour of the drone seems better. The is still a low frequency oscillation on pitch and roll axis. Here is the link containing 2 flight logs and 2 videos for reference.
There seems to be high accelerations on z axis, a 80-90 Hz resonance frequency and quite a lost of vibrations. Also the magnetometer seems to have noise and some unwanted yaw rotations were seen without any input from the pilot.
Should we hard mount the pixhawk 6x to the frame ? Also, a notch filter will be applied around the resonance frequency and gyro_cutoff frequency will be adjusted accordingly.
We are also thinking of adding a dummy weight of 20 Kg near the C.G because the UAV seems a bit light and overpowered without any payload. What do you think ? Is this something we should try in your opinion ?
Any other suggestions or parameters we should take into account in the next flight ?
Thanks for the help,
George
Which autopilot are you using?
What’s the hover throttle? If it is too extreme there isn’t enough control margin and it would be hard to tune.
By the way, I don’t have the time to download and look at log files, so if you want me to look at a log, please upload to logs.px4.io and share the link here.
The hover throttle is at 40%. I will try to reduce the max_throttle parameter or add a payload for the next test.
The Flight controller is the Pixhawk 6X (PX4_FMU_V6X (V6X003)). The firmware is PX4 v1.15.2. These are the logs :
The two flight have slighlty different pid values and parameters. The second one seems a bit better.
The flights were made in Position mode which is not tuned, so that might interfere with the stability of the drone. I will try to fly in stabilized mode next time.