Servers by jDrones

Copter Tailsitters

hello Otto,
My post 29 gives relevant Q_frame parameter to make a copter X tailsitter with yaw controlled by motor differential torque and control surfaces. The frame type choice and differential torque feature is explained post 2.
A Copter tailsitter can fly very fast with large lean angle so several gain attenuation methods where developed. The parameter for choosing the method is q_tailsit_gscmsk.
But I dont know what features are already in plane stable release, we need some advise from @kd0aij

@losawing I just rebased the gain scaling PR on master and built new binaries for fmuv3/v4 here: pr-feature-tailsitter-gainscaling

As always, beware of new bugs or unexpected behavior changes with builds based on master.
I’ve renamed the previous build to “build_2019_08_01” in case you find a major problem with the new build. It flies OK for me in SITL though.

Regarding the tailsitter features which have made it into stable, I’m currently working on updating the wiki. “Copter” tailsitters are supported, but the only documentation currently present is in the parameter descriptions.

Setting Q_TAILSIT_MOTMX to a non-zero value (indicating which motors remain active in forward flight) is how a “copter” tailsitter frame is specified. Then Q_FRAME_CLASS and Q_FRAME_TYPE specify which motor layout to use. (Note that Q_FRAME_CLASS would never be “TailSitter” for a “copter” tailsitter)

There is basic tailsitter gainscaling based on attitude and throttle level in plane4.0 (stable), and it should handle high-speed forward flight fairly well, but the gainscaling options PR adds some new parameters plus an interpolation method from @iampete for finer control of your setup.

1 Like

Thanks for the update, glad to hear that copter tailsitter is now into stable. I had forgotten q_tailsit_motmx is the way to specify a copter tailsitter.
The weather is terribly windy since 2 or 3 weeks so I did not make any progress since the last video, it should be better next week.

Thanks for the reply, I’m “collecting” all datas to learn because I thinks about to transforme my Skywalker into a copter-tailsitter Plus.
Could you poste the Params of your wing showed here, please: : https://youtu.be/8JXYF0XCHHo

Thanks for your work, I follow in the background. :grinning:
Again a good team work.
Otto

hacker7mai.param (23.8 KB)
This is the closest parameter list I found. I have checked these parameters correspond to a quad + tailsitter. Q_tailsit_motmx is set to 15 which means copter tailsitter with all four motor running in plane mode. The description is in the full parameter list.
I guess you want to use plane 4.0 but this parameter list goes with a binaries that contains features and parameters which are not already in plane 4: The gain attenuation method is chosen with the help of q_tailsit_gscmsk parameter. But I think the way it works in plane 4 is a little different and is explained in the wiki http://ardupilot.org/plane/docs/qacro-mode.html
Also the differential thrust was not implement in May and I dont know if this feature is in plane 4.0.
A important parameter difference between copter and traditional tailsitter is about servo_function. Motors 1 to 4 are declared as 33 to 36 and for the correct mapping you have to refer to copter mapping.
I think the most important to begin is above, @kd0aij will correct me if I miss something.

Thanks alot. Yes of course, the params are not new, but I will learn about and try to understand it. At least, they are from a real and good flying wing. And I do not simply copy it.
In my case I intend not to use all four mots for plane mode. And I need more time so the plane 4.0 will then perhaps be ready.
Otto

@kd0aij
I made several flights with the new binaries. Tried q_hover, q_loiter, q_acro and fbwa.
To fly q_acro I had to lower gain scaling parameter to 0.05, spin min to 0.1 and q_throttle_expo to 0.1 but the result is very very good. Absolutely no oscillations can be seen whatever the attitude and throttle. There are no glitches and no rates limitation. The high gain attenuation has no effect on transition and hover stability (much better than with the batwing). While flying q_acro, motor surge can be heard, I suppose the differential thrust is active and want to correct the plane roll resulting in these surges. I will test other attenuation method soon.
Q_hover and q_loiter works good as usual. But yaw rate is limited to about 60°/s in q_hover mode but not in loiter mode. That was also true with the previous binaries. This limitation is not linked to q_tailsit_rll_mx. Anything else is OK.
I played a little with q_a_rat_yaw_flt parameters. Effect is not obvious, the only thing I can tell is about FLTE when low but not 0 the yaw become sluggish and oscillate. Do you have some ideas how to test these parameters ?

1 Like

Great! Thanks for testing.
I assume this was the bi-wing copter tailsitter and GSCMSK=2?

Interesting that Q_TAILSIT_GSCMIN is so low at 0.05; I guess that would mean the elevons are more effective than with the batwing?
It might be a good idea to scale the differential yaw torque with airspeed also, if the surging is happening in forward flight (the log should help with that).
You might try reducing Q_A_RAT_YAW_FF to see if it is causing the surging.

The defaults for FLTE and FLTT are both zero, meaning no filter on PID loop error and target values. They should probably stay that way. FILT was renamed to FLTD and the default value for quadplane roll/pitch is 10Hz (20Hz for copters). A copter tailsitter might benefit from a larger value for roll or pitch, but I’m not sure. I thought @lthall had written some documentation on tuning those params for Copter, but I can’t find it now.


last flight log, yes, it was the biplane and gscmask=2
4 control surfaces directly on propellers wash make ailerons very very effective, oscillations that forced me to reduce the scaling parameter were with plane roll
My test wing is now dismantled to get back the electronic.

It looks like the torque response for bodyframe roll is pretty large in QACRO:

So I’d try reducing Q_A_RAT_YAW_FF.

Have you tried the no-yaw-torque X frame type? That’s Q_FRAME_CLASS=17.
I can’t remember whether we determined if it was necessary for a bi-wing with elevons.

@losawing, @kd0aij,
After a lot of annoyance with Updating Win 7, I hat to reinstall the whole PC.
But now, the work can continue.
I plan to modify the small wing to a Copter-Tailsitter. What is your meaning about this setup?


And to use the DJI Snail System: https://www.dji.com/ch/snail/info#specs
With 4 Props 6x3", Battery 3S, 3000 mAh. The weight would be 920 gr.
Would the Mot Distance behind be enoughe with 240 mm. (9.5")

1 Like

That’s a good idea to use again your Caipirinha. The 240 mm distance between top and bottom motors seems fine. I had 220 mm on my test wing (1200mm wing span) and 180mm on my jet wing (980mm wing span) so you will probably get more pitch authority. The CG will be relatively high when the wing will sit on his tail, so you can expect the wing to tip. Maybe some legs below motor mounts will help.

Thanks for the feedback.

CG is 24 cm from the ground.
Yes, one of the disadvantage of Tailsitters. I will add thin carbon sticks to the elevons from tip to tip (vertical in Plane mode) a least for hover tests.

Edit: Or do you mean tip while hovering?

No, I meant during landing. I am pretty sure hovering will be solid.

Nice looking model. Are you planning to add it to the SITL_models repo?

I made it about 2 years about as vectored Tailsitter for Tridge. I don’t know if it worked it was not the best
idea that I made the designe, Tridge the Test with comment, and redesigne by me and test… and so on. Therefore Tridge installed also the 3DStudio to do it by himself.
For me its difficult to test, because my RF8 makes troubles on different PC’s. It needs to edit the model, but everytime when I quit edit, RF8 crashed. And no answer from RF8 support. I was used to develope MS Flight Simulator Aircrafts, Landscape, Airport, Panels and Gauges. But was frustrated about the quality of RF8 and stopped to use it. Below a Pic of my setup, approach cologne (Germany) airport at night.

2 Likes

Very nice simulation setup!
The CatTailsitter in SITL_models flies, but it is extremely difficult for me to hover in QACRO mode. Not sure exactly what the issue is there. Here’s a short clip of qhover mode in RF8 with my version edited to match @losawing 's Batwing and flying with my gainscaling PR:

Yes. this cat I made from the data of a real non vectored tailsitter from David. Nice to see it in the air.
As I knew, it was difficult to fly even in QStabilize. David tried to find the reason and worked with different CG.
I did the 3D Design only, and Tridge the nescessary for RF8.

Motivated by your question, I had a look to my last project for the simulator.
Also I hoped that the “Exit Editor” issue has solved in the new update in the last 18 month.
This is not the case, when exit Editor the title menu bar doesn’t work anymore.
The same issue is with all standard Aircrafts.
Here the last job “Called SkyCat”,a vectored Tailsitter, not ready to fly yet. Perhaps you can complete it if possible at this state.


And the Params of the last RC Flight:
https://drive.google.com/open?id=14-2ggwSIAIUfexQvZ0sKoSk06lh_atuu

Servers by jDrones