Overpowered quadcopter - U8 Motors 135 kV 29" propellers

Hi,

I have a build which is really overpowered (the servo outputs are around 1300, with a lot of saturated values of 1200). This is my setup:

  • U8 135 kV Motors
  • TURNIGY K-Force 120A-HV ESCs
  • 12S (2 6S 16000 mAh LiPos in series)
  • 29*9.5 TMotor Propellers

AUW of about 9 kg (my payload includes a somewhat heavy gimbal and camera).

I have trouble tuning the PIDs to make it fly decently in Alt. Hold (I really want to do an Autotune, but without good behavior in Alt. Hold there’s no use in trying). Moreover, the motor - propeller combination makes my frame vibrate a bit (although I’m not sure if it’s a tuning issue).

I made the following assumptions for some parameters:
ATC_RAT_PIT_FILT = 10 (default was 20, changed because of recommendations in the Autotune page)
ATC_RAT_RLL_FILT = 10 (same as ATC_RAT_PIT_FILT)
ATC_RAT_YAW_FILT = 10 (same as ATC_RAT_PIT_FILT)

Should I decrease this down to 5, for example? What determines if this value is too low/too high? Maybe something in the flight logs?

I used my radio knob to tune the ATC_ANG_RLL_P and ATC_ANG_PIT_P to 6.7, which makes the flight in Stabilize a little controllable (it’s not as smooth as I would like, but at least it responds quite good in roll/pitch).

I was trying to tune ATC_RAT_RLL_P and ATC_RAT_PIT_P in the same way, but when I was lowering the values the copter crashed. The original values (seen in the log) are 0.09, and it became uncontrollable at 0.085, which was the value where it crashed.

I have two logs for today’s flights: one just Stabilize and a bit of Alt. Hold, which was the tuning of the ATC_ANG_RLL_P parameters and another one in Alt. Hold, which was the attempt of tuning the ATC_RAT_RLL_P and further crash.

I have a couple of concerns with both logs, which I’ll describe below:

00000004.BIN

  • The yaw is really twitchy, I’m not sure if I should tune it using the ATC_ANG_YAW_P as I did with the Roll/Pitch, but the response is really bad as it is.

  • The roll/pitch is better with the ATC_ANG set to 6.7, but I still have some oscillations, specially when the desired value is a flat line at 0. What parameter should I tune to improve this (I haven’t deal with I and D gains yet, I’ve been just tuning the P parameters).

  • The motor outputs saturate a lot at 1200.

00000005.BIN

  • The yaw magically corrected (or maybe there’s something else I’m not seeing). I only changed P values of roll/pitch, how can the yaw have improved?

  • The ThO and ThH values are really low (around 0.15). I thought the recommended values were between 0.2 and 0.9. This and my low servo values definitely tell me that the copter is overpowered, but what happens when this values are too low? Is there any side effect of this that could affect my flight?

  • Again, some servo values saturate at 1200 a lot. In this case, when I reduced my ATC_RAT_RLL_P and ATC_RAT_PIT_P to 0.085, I can see in the logs that the output of C2 goes higher than normal (then followed by C1) and it’s at that point where the drone crashes.

My theory of why this happened and some other weird errors in flight is that since the copter is overpowered, sometimes some motors go to 1200 and saturate for a lot of time. Because of that, while tuning manually, if one output goes high, the other should go lower, but because it’s already at 1200, there’s no way it can go lower and to compensate the opposite motor goes higher than it was supossed to be. That’s why it went to a high value and the copter crashed. Does this make any sense?

For now, I’ll replace the damaged parts and reduce the propellers to some new 26x8.5 (the smallest I see the U8 motors allow). Maybe I could also add some weight to make this servo output curve go a little higher.

I also noticed I have somewhat high vibrations in the Z-axis, but my Pixhawk is heavily damped, so I’m not sure if I can do any better than what I currently have.

Do you have any recommendation? I’m sorry for the lengthy post, but there are a lot of doubts I have with this type of configuration (slow motors, big propellers) and they could help anyone else looking for information.

Best,

Javier

000004.bin
000005.bin

Either add some weight or go with smaller props. Either choice will raise the required hover throttle.

HINT: More prop isn’t always better…

While using smaller props would help, it is not a solution, assuming you chose the big props for a reason, such as heavy lift capacity or long endurance. If your current AUW is what you expect to be flying all the time, then yeah, downsizing your props may be appropriate. That said, it is certainly possible to get a copter to be well-tuned with a hover of 15%, but it does require a lot of care. Here’s a few things I found in your params that may help:

Double check your RC input and motor output PWM ranges.
Your RC min and max inputs are 1094 to 1934, while your motor output range is 1100 to 1800. This isn’t a problem, but I wanted to make sure you had set this configuration intentionally; make sure your ESC’s are calibrated to expect a PWM range that is the same as your MOT_PWM_MIN/MAX values.

Lower your motor minimum throttle
Your MOT_SPIN_ARM is 0.15 and MOT_SPIN_MIN is 0.2. This is default, but know that this means that your motors cannot use the bottom 20% of the PWM range. You will probably be able to set these values lower so that your motors have a bit more room on the bottom end. Experiment with MOT_SPIN_ARM to put it as low as possible where the motors will still reliably spin up when you arm the copter. Then, set MOT_SPIN_MIN a bit higher than that; you might end up with something like 0.07 and 0.09, which will give your motors an extra ~50 PWM to work with on the bottom end.

Motor throttle expo
This one requires a bit more effort, but may be worth it. Arducopter assumes that the throttle-thrust curve is roughly exponential; the parameter MOT_THST_EXPO describes the expo curve it uses. The problem is that some ESC manufacturers have thrust linearization built into their ESC’s; T-Motor and KDE are known to do this, for example. This linearization means that Arducopter’s thrust curve assumption is wrong, so it isn’t getting the same thrust response at low throttle vs. high throttle, which can have implications with tuning. I don’t know about the big Turnigy ESCs, but maybe someone out there has tested them, or maybe you’re willing to set up a test stand to measure it yourself.

Other thoughts

  • Make sure you have regenerative braking/active freewheeling turned on in your ESC settings. Essential for big props like these.
  • Check your mechanics. Mysterious yaw issues may indicate that your motors are not level or something similar. Check your center of gravity.
  • Vibration can affect stability, even if it doesn’t appear to in the Vibration logs. A flight controller being well damped doesn’t mean much if the vibrations are occurring at the damper’s natural frequency, for example. Enabling high rate IMU logging to do an FFT analysis would give some insight here, and would also give direction on what filter settings to use. But this should come later.
  • A Pixhawk 2.1 or other high quality FC with damped IMU’s might be a worthy investment for a big ship like this.
  • Set your MOT_BAT_VOLT_MIN and MAX. That’s not the problem here, but it will help with stability in long flights.
1 Like

Hi, I’m working with Javier in this peculiar drone. To bring you up to date. The next possible solutions was tested:

  1. Increase weight(3kg according Ecalc) to work with 50% of throttle, this worked but the current consuption increasse and the motors warmed to much.

  2. Using a smaller propellers, We tried first win 26’’ propellers. improved was noted, so we decided use a 22’’ propellers. This works well the throtle is in 50% and the motors remains cold.

  3. In 1 and 2 little PIDs adjusment was realized. And after 2 we decide apply the Autotune.

The Autotune PIDs are acceptable, flight well in stabilize mode, but there are other problems, please visit:
https://discuss.ardupilot.org/t/pitch-axis-oscillation-in-auto-mode-big-copter/28389