I’d like to try quadplane using Cube and big props setup like 27"-29".
Any advice for the start, procedure and settings (parameters, tuning)?
I intend to use FW 3.9.8 and manual tune the quad part.
I’m mainly concerned about the quad ESCs response with spool-up time, spinning props fast enough to follow ATT.DesRoll and Pitch.
I was searching in arducopter section to find some info, but almost everything is related to Autotune (aggr, filt etc).
Questions about filters:
Q_A_RAT_PIT_FILT and Q_A_RAT_RLL_FILT are 10Hz by default. Should I go dawn to 5? Or it only matters with q_autotune in dev fw?
Thanks.
Hello Robin, I previously tuned a quadplane with 29’’ props, here’s some tips that was picked up:
If you want to be gentle on the motors during spool-up (given the high inertia from the large props), you can increase Q_M_SPOOL_TIME. Mine were doubled from the default values and it had no problems.
The spinning props responded quickly enough to handle gradual changes in roll and pitch, so long as the PIDs are tuned correctly.
Not able to answer this; but they were left as default on my quadplane and had no problems with tuning.
Tuning of parameters for QSTABILIZE
As the documentation states, the most important set of PIDs to tune are your Q_A_RAT parameters:
Q_A_RAT_RLL_P/I/D
Q_A_RAT_PIT_P/I/D
Q_A_RAT_YAW_P/I/D
When you tune these params, perform the tuning in QSTABILIZE mode first. Doing it in QHOVER or QLOITER introduces additional layers of controls (height and position contollers) which will mess with your tuning.
What tuning method you use depends on the preference of each user. Personally, I like to use the following method:
Zero the roll rate I and D params, and set the P param to a low value
How low you want to set the starting P value depends on the thrust-weight ratio of your quadplane; the higher the ratio, the less aggressive your PIDs should be. Mine had a high thrust-weight ratio (for most quadplanes) of 2.41, so we decided on a conservative initial P value of 0.08. It turned out to be VERY conservative, but better to spend more time on tuning than to see the bird oscillating out of control!
Takeoff in QSTABLIZE, and give it a few gentle rolls. Increase the P value in small increments (0.05 for me) until you start to see oscillations
You can then add in a bit of D (Mine was added in increments of 0.0005) until the oscillations become less pronounced.
For I tuning, if you see that the aircraft is consistently drifting in any one direction when your sticks are centred, add in some I value until the drift is minimized. Otherwise, we usually won’t touch it.
Repeat for pitch and yaw. You may find that the pitch and yaw rate PIDs may be higher than roll rate; the physical design of fixed-wing planes means they are more sluggish along the pitch axis, and multicopters have inherently poor yaw authority.
TLDR: For each axis, zero the I and D gains, start with a low P gain. Increment the P until you see oscillations, then add in some D to damp out the oscillations. Add in I if necessary to correct for drift/wind. This is a conservative method which we use for large quadplanes, to minimize chances of crashing due to over-aggressive PIDs.
Tuning the aircraft based on pilot feel alone is usually sufficient. But if you are chasing accuracy, then the dataflash logs will help. You can refer to Arducopter’s equivalent tuning documentation.
The idea is that ATT.Roll and ATT DesRoll should be tracking relatively well. I found that slight offset between the 2 is normal, but oscillations should be minimal.
You should also graph Rate.RDes and Rate.R (Desired Roll and Actual Roll Rates) and make sure that those track well too.
If you want to see visualization of how the multirotor PIDs are working to correct the aircraft, the plots are found in the PIQR/PIQP/PIQY sections of the dataflash log entries.
You might achieve very accurate PID gains for the multirotor, if the dataflash logs are used properly (:
Tuning for QHOVER and QLOITER
QHOVER and QLOITER controllers usually require minimal, if any tuning. The default params work well most of the time. But in case you want a more accurate tune of these modes:
QHOVER tuning is explained in the Arducopter equivalent AltHold mode
The equivalent quadplane params are:
Acceleration: Q_P__ACCZ_P/I/D
Velocity: Q_P__VELZ_P
Position: Q P_POSZ_P
QLOITER tuning is explained in the Arducopter equivalent Loiter mode:
Thank you very much for the thorough answer!
I have some nice experience with smaller quadplane without mayor problems.
But with this, bigger one, encounter problem resulted in easy crash during tuning process (only with a broken prop).
Basically, I started tuning the PID in calm weather in the same way as you described it.
Everything went ok with small movements on the RC transmitter.
Since it was stable and relatively responsive, I started with faster and slightly larger movements on the transmitter, after that quadplane started to swing and goes down uncontrolled.
down.
It seems like ESCs don’t respond fast enough. Maybe just ESCs settings like acceleration rate are to low?
After quick analyze I have also noticed Vibration level was a bit high, but in safe margins as I understand from documentation (green zone).
Can you take a quick look on this log of last try, please? https://drive.google.com/open?id=1ocZdy7RdcMdPIbbJ7VEFFDkl7yansvr5
Thanks!
I took a quick look at the logs. My initial guess is that your roll and pitch rate PIDs are too aggressive.
Even with small movements on the stick, the actual pitch rate (orange) is already overshooting the desired pitch rate (brown; hence it also affects the actual and desired pitch angles. Not surprisingly, this problem becomes aggravated with large stick movements.
There is indeed a slight lag between desired and actual graphs, but this lag is usually normal. If the PIDs are properly tuned then it shouldn’t be that big of a problem (unless you are flying acrobatics which require very fast response times, which probably isn’t what large quadplanes are designed for )
Try decreasing your roll and pitch rate P/I gains, and see how it goes.
I changed VTOL ESCs with other ones, different firmware, new props.
In parameters, I also changed both FILT parameters from 10 to 8 (Q_A_RAT_PIT_FILT and Q_A_RAT_RLL_FILT). As I understand, this is LPF (low pass filter).
There is very little information on this, in ardu it’s just written; if props are bigger then 13inch, then this value should be 10.
I changed PID settings as you suggested and
I left PID for pitch and roll on default value, I =0.25 and D = 0.4
For first try I lower Q_A_RAT_PIT_P from 0.25 (from last time) to 0.10
Plane it was not so locked, but control and attitude was OK, immediately the feeling was better.
Then I gradually increased P by 0.04 to P = 0.26, when the weather was going bad and I had to finish. So I think, I can go even higher with P, no frequent oscillations yet.
Overall, feeling on stick was nice, looked locked, good response and attitude is OK, too – I think.
Q_loiter mode seems to be OK, no problems so far.
I wonder why my P is already quite high compared to your 0.08?
And once again, can I ask you to take a look on my logs, please? I am still learning.
For future tests I’m bit afraid about test with fast stick movement (stick deflection and release). Bad
experience from last test.
Is there any danger and what i should be aware of?
I also intend to increase MOT_SPIN_MIN to higher value (now is def. 0.15) and decrease maх angle (Q_ANGLE_MAX,3000), to 2000 maybe? This was a tip somewhere in this forum.
The overshoot is small enough to not be noticeable for gentle stick movements in flight. But it may cause trouble when you start doing fast stick movements. Hence, it is best to learn how to check the logs for this sort of symptoms.
I suggest you decrease your Pitch and Roll Rate P slightly, and then recheck your logs to see is the overshoot still occurs.
0.08 was my starting rate P values. Final rate P values were also around the range of 0.2 - 0.25. But take it with a pinch of salt as not every airframe is the same: It depends on a variety of factors such as thrust-weight ratio, airframe stiffness, etc.
Are you sure D should be 0.4? That seems way too high; default rate D is 0.0036. Too high a D is bad for your motors; you can read up more on the effects of P, I and D here.
Hi, guys very interesting post you have here. Im trying to tune a BabyShark VTOL plane, the previous owner did tune it with a CUAV V5+, and I changed it to a Cube Orange. And add it a gymbal cámera and revamped the radio. I was worndering if it was a good idea to take the PID parámeters (If I understand correctly they are the Q_A_***) of the CUAV V5+ and copy pasted to the Cube Orange (Same later for the plane PIDs). But Im not sure if this parámeters values are flight controller specific or if they depend on the physical caracteristics of the craft (wheight, volume, etc…). I guess Im a little scared of flying for the first time without tuning…
Sorry for bad english, hope I made my self clear enough