VTOL vibrations and weird behavior

Hi,

We were testing and tuning our VTOL before we try to make a full transition, and had some strange problems that for now I can’t decipher.

First log is without the wings, where it performed well, in our opinion.
https://logs.px4.io/plot_app?log=4d5b21db-d50d-438d-84c7-9d9bbf70aad7

Second one is with the wings. It also performed well, didn’t do any weird movements or anything, but now that I am looking at logs, vibrations at 20Hz can be seen. We didn’t really see it in air, and since it performed well, we continued.
https://logs.px4.io/plot_app?log=90b6be81-c6b4-40e6-98fe-02e8bb33ca51

Next I changed some parametes, namely the MPC_ACC_HOR_MAX from 2 to 3 m/s^2, MPC_VEL_MANUAL from 4 to 8 m/s, and MPC_XY_VEL_MAX from 4 to 8m/s, to make it a bit faster.
I didn’t mess any PID values.

Next flight, seen from the third log, vibrations on one wings could be seen and heard, I presume coming from one motor, which was oscillating in speed and in some moments went to saturation.
Then the plane started positive pitching too much when going forward, even tho it has a pusher motor, and it started having unwanted yaw movements.
https://logs.px4.io/plot_app?log=4a0bd5aa-782a-4588-8f2a-f233136d6628

Changed back the values, even tho it doesn’t make any sense they would cause problems, but the problem persisted, as seen in the fourth log.
https://logs.px4.io/plot_app?log=eb6d5b0d-4566-4aac-8946-6d6ab3fa02e2

Does anybody have any idea?

Thanks!

Those are the most interesting plots, as they both show the cause and the symptoms: There is a huge oscillation in roll at 20Hz with the wings on, that then cause the controller to go nuts in trying to stabilize it.


If anyway possible then I would try to fix the issue in hardware directly, e.g. by stiffening up the wing/wing connector. Additionally you can set a notch filter at 20Hz, see Redirecting to latest version of document (main).
Once you’ve done that I would recommend to do extensive flying in Stabilized mode (Altitude if you’re more comfortable there) with aggressive maneuvers, and only proceed to Position flight mode once you’re happy with the flight behavior.
And don’t tune your vehicle without the wings on, the wings usually contribute massively to the roll inertia of the drone, so a tuning without the wings is like for a different vehicle.

Thanks for your reply.
Yeah, we also thought it went crazy because of the oscillations.

Regarding notch filter, we had some twitching on a different model, and we tried putting it around 20Hz , and that made it wobbly. I guess it needed those lower frequencies. Eventually, we solved that by tuning it better.

I suspect that tuning could be better on this one as well. It seemed ok and it responded well by looking at it, but looking more closely at the rate in logs and PID analysis, I thinke we set the rate D gain a bit high.

Gonna try lovering that one first, than if it doesn’t work, then we might go and try something with the wings.

I’ll keep you posted.

1 Like

https://logs.px4.io/plot_app?log=2483ec9d-6dbd-4bd1-8862-dbefef1f686c

This is the last log from yesterday’s testing. We had to lower the MC_ROLLRATE_D to minimum, as increasing it dramatically increases vibrations. We have mechanical vibrations, which in this phase are unavoidable, and we’ll settle for them for now.
Later we will have stiffer wings and everything else, so the problem might disappear.

We have tried picking up some speed with the pusher motor and then slowing it down, in position mode, and it did ok.
It does not like going back, as it then oscillates, but that might be because we have two wings, and had to tune the pitch gain quite aggressively so it doesn’t oscillate in forward motion and breaking.

We think it might be safe enough to try the transition, so that’s probably the next step.

https://logs.px4.io/plot_app?log=58da1060-ad5d-41f6-97fb-c711557df4ae

This is the log from out last flight.
After doing a transition, in stabilized mode, the plane started nose-diving down quite a lot, and the pilot switched back to manual. Unfortunately, that was all the testing for the day, as on landing, the plane had unexpected sudden loss of altitude, which caused it to land too hard and break a few things.

Few seconds after the transition, the system reported accel clipping errors.

Looking at the vibration levels, it seems like we have too much on z axis.

I don’t know yet whether that was the cause of plane pitching down or not.

We have tuned the FW part before on Bormatec Maya airframe, without quad motors, and just changed those parameters for the current airframe. Thr FW part i mean.
That should not cause any problems, right?

If anybody has any ideas, please let me know.
Thanks.

Regarding the last post I made, we think that the problem with the plane nose diving was because the pilot left the throttle stick too high before the transition, and the plane still needs tuning.

We have tried flying again directly in mission mode, and got the following logs.
https://logs.px4.io/plot_app?log=84bec2d0-8e9f-4736-811d-fa464242a746
https://logs.px4.io/plot_app?log=5cd9fdba-6324-48ef-9dbf-6572ab8a6b75

In transition it seemed like it was gonna crash, but somehow managed to pull itself out two times.
After the first one, we tried setting the back transition deceleration lower.
It did look better, as the transition was less violent, but then it just stayed in place and started having roll oscillations.
For safe measure, the pilot switched to position mode and landed that way.

I don’t know whether the estimator was trying to collect itself after such not ideal transition, and that caused those oscillations?

The estimator doesn’t show any issues. I think your issues are really control related. Regarding the nose dive after the front transition, you probably need to re-tune the pitchrate loop and the hight rate loop in TECS (but tune the pitchrate first):

Regarding the roll oscillation, the roll loop gain (MC_ROLL_P) is too high for a VTOL plane. Typical values are in the 2.5-4 range depending on the size.

Good luck

Yeah, I figured I’ll have to tune TECS again. Thanks.