Dual-motor tailsitters

May be its a function of work intesity.
Just playing, no frustration if it does not work, and hard working great disappointment when not :wink:

Thank your for investigating. Sure, will gladly test it when you are ready.
Kind Regards Otto

1 Like

@Tridge,
Meanwhile I worked on your recommendation to increase Param I.
At first on my ā€œHardware-Simulator :wink:ā€ the rig.
And got an impressive Result as shown below.


Red = DesPitch, Green=Pitch

Need to be confirmed in the air.
Regards Otto

1 Like

yep, thats looking a lot better. A small amount of D should help too. Basically as you increase D you will find that your system can handle a larger P and I value without oscillating. But if you increase D too far then it will start oscillating due to D.
Usual rule is:

  • increase D until it oscillates, then choose half the smallest value that oscillates when you disturb it
  • then increase P and I, and when it oscillates, halve it
    these are extremely rough rules however, and real aircraft do unfortunately need experimenation. Luckily you have a great test rig for that.
    Iā€™d like to improve the default parameters for TVBS airframes. For that Iā€™d like to gather some ā€œgoodā€ values, and try to work out a set of reasonable defaults that will fly a mid-sized TVBS. Your results will help with that.

Thanks for the comment.

Ups, looks better but works worse :no_mouth:
Was it to much I ?

https://www.youtube.com/watch?v=BrFAALdGzD8
https://drive.google.com/open?id=0Bxldq38bfbqHYXd3alJzQ2ZlTjg

I tried D but even with 0.01 it starts immediatly shaking even with motors off.

This time, verry good Transition.
I could reproduce the ā€œFlameoutā€ after switching to QHOVER unfortunatly overhead in the video.

Regards, Otto

yes, I is adapting too fast. Are you familiar with the PIQx logs?


that is from the 2nd QHOVER part of your flight. It shows that the I term is oscillating. So this is almost certainly too much I. Try halving it.

then try 0.005. Keep halving until the oscillation stops. It is not uncommon to need very small D values. It is highly dependent on your aircraft and also on the vibration isolation you have.
Here is PIQP.I with pitch and desired pitch:


it really looks like the I term is driving the oscillation.
So start with the general rule of PID tuning - if a PID term causes oscillation then halve it. If it still causes oscillation then keep halving it till it doesnā€™t.
If you end up halving it so much that it goes to zero then look for some physical lag in the system (eg. some play in the servos that cause a lag).
Cheers, Tridge

Not yet, Thanks for the hint. I found it also in the MP Log Browser.
Verry interesting to investigate behavior.

4 dumping balls, the GPS is no more on top now.

Will continue.
Thank you for the help.
Otto

Iā€™m so excited to have found you guys! This is my first TailSitter build and I canā€™t wait to get it in the air. Itā€™s based off the SweepWings Flinch wing with 3D printed motor mounts. Iā€™ve been working with APM/Pixhawk for quite some time, both with Plane and Copter firmware. I also have a FireFLY 6 VTOL, which is a fun rig to fly. I have everything configured and read through many of the posts here. My question is what params would you suggest for a newbie that wants to get his Tailsitter to hover? Iā€™m not interested in forward flight just yet. I just want to hover and get comfortable flying vertically. All my control surfaces respond properly in Manual mode on the bench. When I switch to QHover my motors and elevons respond when moving my wing around by hand. My question is what should I expect to happen when I yaw? My elevons donā€™t respond at all and I canā€™t really tell if there is any difference in motor speeds. I just want to make sure I know what to expect before I try a maiden hover. Below is a picture of my setup and I realize my control surfaces may need to be larger based on what Iā€™ve read this in this thread. But figured Iā€™d get input from the community before I head outside. Thanks in advance for any advice.

1 Like

Welcome ! ā€¦your elevons and motor speed should be active in hover, and elevons respond like roll and pitch but with yaw input make sure you are up to date on software and reread this blog to check whatā€™s being worked on with parameters, motor speed would be for roll, assuming you want to fly it like a quad check the servo pinout with info available here as well, you have more homework! ā€¦hope this helps

2 Likes

Hi there!

Just wanted to share some of my exp with you.

For PID tuning I can recommend the scientific way to do that. (Zieglerā€“Nichols method)
https://en.wikipedia.org/wiki/Zieglerā€“Nichols_method
Basicly it works like that you built a rig for your model were it can rotate around its cg (as lorbass did). Then you increase P to where it starts oscillating. Then you measure the frequency and calculate the PID values.
I used a monopod with a ballhead for that. Ball in CG.

I did this tuning for my tailsitter and this is the very first test last weekend:
https://youtu.be/bveC647_JCI
(note that the gauges are not all functioning)

Did another flight after that and QLoiter was working flawless right from the start!
https://www.dropbox.com/s/2udtksz4uxkcf82/2017-09-16%2017.38.06.mp4?dl=0

Had some problems with my ESC losing sync to the motor when transitioning. So my log isnā€™t saying anything for the transition. But think I fixed it.
Will do another test with FBWA this WE and post logs.

Here is the log from the Qloiter, if one interested.
https://www.dropbox.com/s/zi0zjag9pst21df/00000020.BIN?dl=0

Cheers,
David

3 Likes

Denis, great that youā€™re vlogging the build! A good ā€œhow-toā€ would be really useful for people.
For those who havenā€™t seen it: https://youtu.be/dH67gT6yz1k

1 Like

yaw with a classic tailsitter like this is done purely with the elevons, not with motor speeds. So if you yaw the aircraft in QSTABILIZE you should see it responding with body-frame roll of the elevons. If it isnā€™t then check your Q_A_RAT_YAW* parameters. Try increasing them a lot to see if its just the size of the response that is too small.
Note that ArduPilot defaults to quadcopter-like tick inputs when hovering, so if you are used to prop-hang with 3D planes you may find it confusing. You can set Q_TAILSIT_INPUT to change this if you want to.
With elevons that small you will need some pretty large values for Q_A_RAT_PIT* and Q_A_RAT_YAW*. Iā€™d suggest starting with double the defaults and see how that goes.
Also read the very interesting post from @palm369 today on using Ziegler-Nichols tuning with tailsitters. He has much larger elevons though and that makes a huge difference.
Good luck with your flights, and thanks for making some great videos!
Cheers, Tridge

1 Like

that tune looks great! I think that is the best tune Iā€™ve seen yet for a non-vectored tailsitter.

I notice that you still had some FF on pitch and yaw, which isnā€™t covered by the ZN method. Did you try adjusting that at all? I notice your flight had 0.2, which is the default, but Iā€™m more curious about whether you found a way to incorporate the FF into the ZN approach.
Cheers, Tridge

Nice work palm369 !
Your plane has really huge elevons.

Would be interesting to know how it will perform in windy conditions.

Thanks James. Just trying to share my experience as I learn more about these tailsitters. Once I get comfortable I plan on putting together a series that shows how to get into the air.

Thank you, Tridge. Iā€™m going to dive in this weekend and will report back.

Hi Tridge,
Now I learned how to profit of the information of this LOG.
Before I did not know, where the oscilations came from.
In the meantime I fount another critical Param during FBWA Flight.

Here the result of the modifications.
Rig-Test


Real Test
https://drive.google.com/file/d/0Bxldq38bfbqHYlJEbHBab2EzaW8/view?usp=sharing
https://drive.google.com/file/d/0Bxldq38bfbqHaDhYallzeURlbU0/view?usp=sharing

There are still some oscilations in the section after FBWA.

As to see in the video, 10 kph Wind are difficult
Can I increase Q_ANGLE_MAX to get more Thrust forward in Copter Mode?

Did you already modify the Backtransition as promised?

Regards
Otto

Thanks man.

Actually I had no specific reason to put the FF 0.2 there. However the P_crit was determined without FF. Only remember that FF is better for flight via control surfaces instead of rotors, so I left it for yaw and pitch.

Still without Zieglerā€“Nichols method, but decreased pitch P and a pinch of pitch I (instead of 0) it looks better:

Thanks all for the explanation about PIDs and PIQx logs

Rolf

2 Likes

yes, looks like D oscillation in pitch for FBWA. As usual, halve the parameter when you see oscillation.

yes, but to really improve flight a lot in wind weā€™ll need to move to the control strategy that Paul is developing. For now increasing Q_ANGLE_MAX makes sense, but Iā€™d like to get Pauls controller into a release soon.

I have started working on it. I have already discovered that both the forward and back transition code needs work. The forward transition is not doing what it is supposed to do as well. It works, but it should be much smoother.
Iā€™ll post when I have something to test.
Cheers, Tridge

@palm369

thanks for making the Ziegler-Nichols-Method known here.

How do you calculate the values exactly ?

I think, that P is simply 60% of P-Value under stable oscillation frequency ?

But how do you calculate I and D from the oscillation period ?

Q_A_RAT_PIT_I = oscillation period [Unit second]/2 ?
Q_A_RAT_PIT_D = oscillation period [Unit second]/8 ?

Regards Rolf