High speed flights with some anomolies

#1

I am in the process of setting up a custom “H” configuration quad, designed for high speed. It uses 4x MN5212 motors with t-motor 18x6.1 props. AUW is about 4.5Kg, so this thing has the thrust/weight ratio of almost 4:1.

flight #2:

log file here:

https://review.px4.io/plot_app?log=2dba1a74-dab5-4b8a-b650-9e4fc366d4c7

Conditions were quite calm. winds about 2m/s at ground level.

I configured this system to tilt the motors forward 15 degrees, and used SENS_BOARD_Y_OFF to correct this. In this way it hovers at 0 degrees pitch, but with the props “out of plane”. The goal of this effort was to present a smaller cross-section to airflow at high speed.

I successfully flew a simple “out and back” mission at up to 20m/s. As speed increased a strange thing started to happen when reaching the last (upwind in this case) waypoint. When stopping at this point a large roll and yaw error would be present. I could tell from the ground the system was fighting HARD to correct this, but for whatever reason couldn’t manage it. After a few seconds it would sort itself out and be fine, but this is behavior is quite disturbing. The same issue was not observed when stopping at the downwind waypoint.

I flew a second similar system without the motor tilt, and it seemed fine, but had it’s own set of issues (more on this below). Could this tilt angle be to blame? If so I would have expected to see the same problem on the downwind leg.

flight #4.

A different system than with the first issue. No motor tilt angle, but otherwise the same.

https://logs.px4.io/plot_app?log=5f108d0f-731b-44ea-aab7-528e09025277

When transitioning from the last waypoint back to the first (re-starting the mission) very high “spikes” in roll angle are commanded. Why is this? I spread the initial and final waypoints apart a little and the problem went away.

It also seems that a considerable roll error is present at certain times. The tuning seemed good, I turned down the stock gains just a little to prevent oscillations, and overall it felt pretty good for a large system.

I conducted 6 flights in total on this day. Other logs show similar issues, I can provide them if required. Please also look at the vibration levels on each system. I have the autopilots mounted on silicone dampers that normally work quite well, so I’m not sure what is going on, or if this is fine.

1 Like
#2

Hi @DrProton,
First of all, I see some huge vibration in raw acceleration. How did you mount your FC on the frame? any damping, shock absorber applied? In my experience, high vibration cause a lot of problems especially when flying with big motor, prop setup.

Also if you see vibration of the drone when roll and pitch input, you can try increasing small amount of D gains (MC_ATT_P? or MC_ATT_R_D?) in attitude controller.
You can increase it by small amount like +0.01 until it does not vibrate with roll and pitch input.

Good luck!

Kyu

#3

Which log do you see the high vibration in? The flight controllers are different between the systems, but both are using these:

I think I figured out the problem with high vibration on roll/y in flight 4, had to do with damper geometry. I fear a greater problem having to do with mechanical resonance in the airframe itself.

What sort of amplitude should I expect on the raw accels?

I can try cranking the gains up a little, but it doesn’t take much to get oscillation. Maybe I’ll play a little more with the D term like you suggest.

Thinking about the yaw/roll error on flight 2. At this time there is a large drop in throttle level, maybe this is causing it to lose some control authority. Would MC_AIRMODE help with this?

#4

Definitely! It seems that some motors are hitting the lower saturation during those loss of control phases. That’s the “problem” with overpowered drones :slight_smile: Enabling airmode should solve that.

This is due to the discontinuities in the setpoint generator. This problem is fixed in the Master dev branch.

#5

Bresch,

The system that was experiencing the spikes was running the master branch. I haven’t brought my local branch up to date for a few weeks, when was the patch made?

#6

@DrProton two weeks ago: https://github.com/PX4/Firmware/pull/10746

1 Like
#7

I merged in the changes, but have not done a thorough test yet. What I have done seems promising. I did notice that when MPC_AUTO_MODE=3 the system yaws toward the next waypoint while accelerating toward it. This is contrary to the previous behavior where the yaw motion would be completed before accelerating to the next point.

Is there a way to get the old yaw behavior back with the new waypoint mode?

Another log here:

https://review.px4.io/plot_app?log=603d5ff9-4cc4-44f9-af6c-c08df65cbc42

flew in some moderate wind today (25-30kph). There is a long portion of this flight were motor 2 is at PWM_MIN, despite having MC_AIRMODE enabled. Why is this?

#8

Unfortunately, I don’t think the current implementation allows to align to the next waypoint before moving to it. I can add that when I have a bit of time.
About the part with the two motors at PWM_MIN, the current airmode only increase collective throttle to unsaturate roll and pitch. During that portion of flight, the motors are saturated because of the large yaw control.
Soon will be released a new multicopter mixer that allows full airmode (including yaw): https://github.com/PX4/Firmware/pull/10962

#9

Hi @DrProton ,

I just implemented “yaw before accelerating” feature in this PR: https://github.com/PX4/Firmware/pull/12348

Feel free to try and comment back!