Take off goes wild

Hello eveyone!

Yesterday I took off my hexacopter as always, loiter mode, but at the moment of going up, the drone start to go right until the blue circle without any input. You can see in the pictures there in no other input in the remote, just THR up.

Before that, we got some mags problem, so we made a compass calibration with QGC, after that, no more warnings, but I think this have something to do about this problem.

Im checking the telemetry and I cant see any related data (that im aware about) making this strange turn happens.

Here is the bin file, hope some one can give me a hand.

thanks!

Why this priority?
COMPASS_PRIO1_ID,590114
COMPASS_PRIO2_ID,590114
COMPASS_PRIO3_ID,97539

And you should be using Magfit to calibrate the compass.

1 Like

Thanks, I didnt realize that until now, that is no the order I have set at the setup. Could QGC change the compass priority?

Thanks!

Doubt that, but I wouldn’t use QGC for Ardupilot configuration.

2 Likes

I did said the same to my customer… QGC just to fly…

When I first saw this I felt sure this would be a case of the arming checks and Fence being disabled and trying to take off before there is a good 3D Fix - but it’s not.
Although I dont understand the Fence parameters of 5000km radius and 15km altitude - you only need to set these to the radius and altitude with respect to the takeoff point, not for where you might travel to one day in the future. You could set radius 800m and altitude 140m unless your local laws or your certifications allow more.

There’s a couple of problems in this flight:

  1. vibrations - the flight controller and EKF do as they should and switch to a good IMU
  2. the movement looks commanded even though the RC input only shows some small correction. GPS position and speed are good, and they match IMU data so poor position data doesnt appear to be the issue.

Z axis vibrations are a bit high and could affect some aspects of flight and also the landing detector. The X and Y axis vibrations dont appear to be too high, but they are clearly at a frequency that affects the IMUs badly.
Just after you take off the flight controller switches to the second IMU because it’s not happy with the first IMU - in the log it looks like IMU0 is much more effected by the X and Y axis vibrations than IMU1. IMU2 is approximately the same as IMU0, and the only good looking Accel data is from IMU1. You will need to set EK3_PRIMARY,1 but dont neglect the vibrations, or you are compromising the built in redundancy of the IMUs.

ATC_INPUT_TC is very large, which means your RC control will be very sluggish - try 0.25 or less.

The real issue
The problems mentioned so far are just contributing factors. I think the real problem is a rangefinder mis-configuration. Parameters show two front facing rangefinders, which is unlikely. Probably one should be set as downward facing. I think both have issues. You can see in this screenshot the GPS speed is rising until both of the rangefinders go beyond a certain distance.

  1. rangefinder1 quickly goes out of range, and is a bit noisy anyway. Maybe it’s even useless as a forward facing unit.
  2. rangefinder2 reports very well and is likely downward facing - it’s readings closely match the actual altitude, but it’s set as forward-facing. So the copter uses the AVOID params to try and slide away from the “obstacle” - and does so until altitude reaches about 5m, where you can see the GPS speed decreases to nothing.

The thing that baffles me is the pitch, roll and speed all exceed the relevant AVOID parameters, but maybe there’s something else going on that I’m not aware of. I feel sure sorting out the rangefinders will solve the primary issue.

And of course dont forget about the vibrations.

Harmonic Notch Filter could do with configuration, but dont let that stop you from investigating and improving the vibrations. If your antivibration work is successful you could leave the harmonic notch filter disabled - but a test flight will verify that.
Start with these:

INS_HNTCH_ENABLE,1  // write this then refresh params to see the rest
INS_HNTCH_MODE,1
INS_HNTCH_BW,15
INS_HNTCH_FREQ,35
INS_HNTCH_FM_RAT,0.7
INS_HNTCH_HMNCS,3
INS_HNTCH_REF,0.18
INS_LOG_BAT_MASK,1

and do a cautious takeoff in Stabilise mode or AltHold just in case you need to land if there is any introduced side-effect. At these low frequencies, some lag in the PIDs can cause oscillations.

3 Likes

Thanks @xfacta , I appreciate all you help and time on the issue.

the Fence data is because customer is using UGSC, and for a reason I dont get it, he setup that way in the UGSC, and then sent to the FC. Im with you with the distance limits, the numbers you describe have much more sense, but any way, customer setup.

About the rangefinder issue, you are right, both facing down, I deliberated set up as front. Why? because customer has a hanging payload that interfere with the sensor in flight, so with that, the drone start to “jump” every time the laser get the hanging payload. I know that is wrong, but in that moment on the test field that was the solution to keep the testing day running, and i forgot to look for the correct configuration. I have noticed the heavy dust at the take off can be detected by laser rangefinders, and I produce some bad readings.

About the vibration, we are aware of that, this is a big drone, 28KG, hexacopter, and the arms foldable joints are not the best, our parts provider were not able to give us best quality parts. Can you recommend some parts providers? I think that is the origin of the vibrations.

EDITED
Set the rangefinders up correctly, downward facing and so on with RNGFNDx_ORIENT
then setting RCx_OPTION,10 enable or disable Rangefinder (I assume all rangefinders) and a corresponding switch and channel on your transmitter.

It’s almost impossible to buy a frame that doesnt need modifications. You will just have to do your best with trying to tighten up the arm folding mechanisms. Pay close attention to all the wiring too - it must be secured to the frame (not floating loose) and have just enough length and flexibility where it plugs into the flight controller so it doesnt transfer vibrations. The wiring should not be bunched up and pulling tight on the flight controller either.
Do some searches - there is some good discussions somewhere here with before and after shots.
Start with this one:

I also meant to say, for takeoffs and landing it’s good to have a large heavy mat of some sort, to keep dust and debris away. Heavy so it wont blow around, and it needs to be porous or fabric on top - not a smooth impregnable surface. If you cant get any of that “composite” rubber mat used in play grounds as soft-fall, you could try attaching a some old heavy duty rug to a sheet of rubber, or just use the rug. if it’s heavy enough.
https://www.bunnings.com.au/swing-slide-climb-1-x-1m-x-20mm-shock-pad-rubber-paver_p3321609

1 Like

Thanks @xfacta
About the rngfnd sensor facing down, there is any way to disable the behavior that adjust the height if the sensor detect something?