Dual-motor tailsitters

@tridge Initial test of Qhover indicates that the integrator isn’t initialized properly. Engaging qhover from qstabilize causes throttle to drop with loss of altitude then surge with a large gain. Seems OK once it settles down.

@kd0aij ok, thanks. Can you post a DF log of that? Shouldn’t be hard to fix.

I think we need a new parameter for that. What should we call it though? It really is a gain for yaw by differential thrust. Does RUDDER_GAIN capture that? Can you think of a better name? I’d like it to be a 0 to 1 value, or perhaps a percentage.

1 Like

@tridge, log’s on the way. I was going to try reducing the rudder contribution here to make FW mode differential yaw more reasonable: https://github.com/ArduPilot/ardupilot/blob/master/libraries/AP_Motors/AP_MotorsTailsitter.cpp#L69

Also, I’ve not managed to figure out why the buzzer is going off when I throttle up; can’t find any params which would set a low voltage warning, or log messages which indicate a warning. Of course I still haven’t set up a GCS for flight testing.

Mark and I have settled on RUDD_DT_SCALE, where DT means "differential thrust"
Mark will test a patch for it today

Hi, I am running into mag issues, I think with the mag in the vertical ?
random yaw commands, have not had a reliable hover
I will swap to another board and let you know the results
also with my controllers have had yaw issues in ff and was thinking
of using a diff pressure sensor( airspeed ) sensing on both sides of the vertical
stabilizer, any input on that idea?

@mrjadkowski https://github.com/ArduPilot/ardupilot/pull/6005 adds the rudder gain parameter that Tridge proposed (beware: Tridge hasn’t reviewed it yet). It bench tests OK for me at 10%, but you can set it to zero to completely disable differential thrust for FW yaw control.

Have you double-checked your external compass orientation? There is an error in the wiki that says external compass orientation should be relative to the flight controller, but I’ve found that it actually needs to be set relative to the aircraft. In this case, relative to the aircraft in forward flight attitude. If you look at the orientation of my compass, I have it set to ROTATION_NONE even though my AHRS_ORIENTATION is YAW_270.

I haven’t connected the Stryker’s external compass, but it’s not unusual to orient it differently to the FC. Are you saying ROTATION_NONE is not the orientation of your external compass?
Wait, I misread your post and I probably haven’t read that wiki. I had just assumed that compass orientation was vehicle relative, same as FC orientation. That’s true for PX4, but this is my first ArduPlane config…

@mrjadkowski Does this look correct? https://github.com/ArduPilot/ardupilot_wiki/pull/762

thats correct, thanks. merged

mag orientation is quite likely an issue.
Here is how to test orientation:

  • put airframe in fixed wing level flight attitude
  • open MissionPlanner tuning and select just mx, my and mz
  • in northern hemisphere mz should be positive
  • now roll airframe to right. my should go up and mz should go down
  • back to fixed wing level, then tilt nose down. mx should go up, mz should go down
1 Like

I read in this thread to increase the Yaw P up to 3.
In the Wiki http://ardupilot.org/plane/docs/parameters.html?highlight=parameter%20list#q-a-rat-yaw-p-yaw-axis-rate-controller-p-gain
a max of 0.5 is mentionned.
And are the Params Q_A_RAT… the correct ones to tune the tailsitter in Kopter Mode?

Yeah, the Q_A_RAT_[X] parameters are used to tune the hover controller. I matched my Q_A_RAT_YAW_P, _I, _IMAX, and _D parameters equal to the Q_A_RAT_PIT parameters, and it worked pretty well for me. Mission planner will tell you that those values are out of range, but the controller handles them fine. See post #96 from @tridge.

1 Like

Thanks for the quick answer.
Which values do you use?
The defaults are verry low.

Off the top of my head, I think I’m using .25 for P and I for pitch, roll, and yaw. Those values aren’t perfect, but the airplane is hovering very well with them.

the max values in the docs are not setup for tailsitters, they are for small quadcopters


I would like to ask,how to do the x5 motor mounts fabricated and glued?
Thank you.

The motor mounts are made from 1" x 1" square carbon tube, with tabs made from 1" x .5" 90 degree carbon angle. I cut two slots in the wing using a hot wire, and slid the tubes down through the slots. The tubes were then bonded to the wing inside and outside with 3M 2216 epoxy. The thrust angle is roughly 0-0, but I didn’t actually measure it.

What is the scaling for the RUDD_DT_GAIN parameter? I loaded the latest build and it defaulted to 10. Is that 10%?