Hexacopter Crash during takeoff Loiter MODE

hello ,

i have made a hexacopter with 15kgs payload capability. i have been flying it using qground controller app. and using it as agricultural drone and spraying farms.
on my last flight i had a crash during takeoff. i have the logs for the same and will be attaching also i have the crash video which i will upload and share here if needed. basically during takeoff the drone was in loiter mode and instead of climbing it acclerated to the back direction without any liftoff and landing gear being on ground. i had to switch mode to alt hold and then i disarmed it.

specification of drone .

motor- hobbywing x8
prop- 3090, 30 inch prop
FC- pixhawk cube orange
tx- skydroid t10
batt- lipo 22000*2
fame size- motor to motor- 158cm
height - 60 cm

requesting some inputs on reason for the crash.

00000056.BIN (988 KB)

Sorry, only just saw this…

Looks like your motor outputs are oscillating a lot even before takeoff. Could be a sign of bad tune, flexible frame or landing gear. It could just be because of some resonance with the payload and sloshing.

On the map you can see GPS positions and IMU position (red) never agree and there is quite a bit of wandering. The blended position almost agrees, but not well enough in the end. I think that caused the crash since you arm and take off in Loiter and the craft is trying to move before landing gear even leaves the ground.

Set FENCE_ENABLE,1
The Fence setting will prevent you from arming in ANY flight mode until there’s a good GPS 3D fix and Home can be set. Check the altitude and radius, you could even set the polygon to suit jobs. This would likely have prevented your accident.
You do have to wait for some time, but you get used to it and it’s worth it compared to the price of broken props or worse.
This thing is too big to be taking chances with.

I would definitely set these BATT parameters
BATT_ARM_VOLT,44.30
BATT_CRT_VOLT,42.00
BATT_LOW_VOLT,43.20
BATT_FS_CRT_ACT,1
BATT_FS_LOW_ACT,2

Check your GPS_GNSS_MODE and GPS_GNSS_MODE2 params, probably a value of 65 would work well for your region. You will see the difference in GPA Delta in logs, the update rate. It should be steady at 200ms. Reducing the number of constellations in this way eases the load on the GPS unit and can often allow a quicker fix and even improved accuracy.

You can set INS_HNTC2_ENABLE,0 since it is essentially disabled by INS_HNTC2_REF,0 and it’s doing nothing.
You probably should lower FFT_MINHZ,80 down to around 40

You can safely set these:
PSC_ACCZ_I,0.512
PSC_ACCZ_P,0.256
ATC_THR_MIX_MAN,0.5

Hey

Thanks so much for the response.

1- regaridng motor oscilation - yes our drone before take off has been oscillating a lot. The first timr we flew it didnt not oscillate but after about 10 flights and test with 15kgs payload it picked up the oscillation before takeoff. The farme isnt flexible landing gear i will cross check once again in next flight on 4th sept. Regarding the motor being bad tune how do we go about that. What parameters shall we look into for that.

2- i will uodate the fence pramter for our next flight .

3- regarding waiting- we did wait until the drone had 3d fix in loiter mode and only then we took off… do you mean to say we should wait more ??

4- i will update the batt parameters.

5- gps params i will uodate to 65 confirm for region (india)

6- gpa delta i will check if its 200ms and let you know here.

7- FFT_MINHZ will set to 40 and update here with new log .

8- regarding PSC_ACCZ_I and accz_p… we had done these changes to reduce the vibration/oscialltion when it was hovering wirh 15kgs payload. I will make changes as pwr your recomndation and share the log if the whole drone is vibrating .

Thabk you for all your inputs

Also just a queetion should we auto tune with max payload of 15kgs or with no payload ??

Hey

1- regaridng motor oscilation - yes our drone before take off has been oscillating a lot. The first timr we flew it didnt not oscillate but after about 10 flights and test with 15kgs payload it picked up the oscillation before takeoff. The farme isnt flexible landing gear i will cross check once again in next flight on 4th sept. Regarding the motor being bad tune how do we go about that. What parameters shall we look into for that.

2- i will uodate the fence pramter for our next flight .

3- regarding waiting- we did wait until the drone had 3d fix in loiter mode and only then we took off… do you mean to say we should wait more ??

4- i will update the batt parameters.

5- gps params i will uodate to 65 confirm for region (india)

6- gpa delta i will check if its 200ms and let you know here.

7- FFT_MINHZ will set to 40 and update here with new log .

8- regarding PSC_ACCZ_I and accz_p… we had done these changes to reduce the vibration/oscialltion when it was hovering wirh 15kgs payload. I will make changes as pwr your recomndation and share the log if the whole drone is vibrating .

Thabk you for all your inputs

For the oscillations at arming try this:
ATC_RAT_YAW_P,0.8
ATC_RAT_YAW_I,0.08
If this has some effect you can go even lower if it helps, like 0.5/0.05
If it makes no difference you could put them back to original and we will check more.

Regarding the fence and waiting for 3D Fix, you can see in telemetry (or hear in spoken telem like yappu telemetry script on transmitter) “3D Fix acquired” then you have to wait more until “Home position set”. I might have the exact wording wrong but you get the picture.
The advantage of having the fence set is you just cant arm until that second stage where home position can be set, so you know you are good to fly even if you cant see or hear telemetry.

The strategy for Autotune is start with the lightest possible takeoff weight, no payload.
Autotune or even manual tuning should (hopefully) give the best possible tune for your frame/motor/props/ESCs and so on…
Compare the lightest take off weight used for Autotune, and the typical take off weight with payload and change these parameters accordingly:

  • new ATC_ACCEL_P_MAX = ATC_ACCEL_P_MAX x (min_TOW / max_TOW)
  • new ATC_ACCEL_R_MAX = ATC_ACCEL_R_MAX x (min_TOW / max_TOW)
  • new ATC_ACCEL_Y_MAX = ATC_ACCEL_Y_MAX x (min_TOW / max_TOW)

Exact digits and decimal places are not critical so just round them to the nearest 100 or 1000

For example if you have a takeoff weight of 4kg and ATC_ACCEL_P_MAX,118884 after Autotune
Add 3kg payload gives:
new ATC_ACCEL_P_MAX = 118884 x ( 4 / 7 )
new ATC_ACCEL_P_MAX = 67933.714
new ATC_ACCEL_P_MAX = 67000 or 68000 (not critical, probably be more conservative)

Hello ,

So we made the changes it worked perfect. The first log is the first flight with oscillation value (ATC_RAT_YAW_P ) 0.8 & (ATC_RAT_YAW_I) 0.08

The second flight had very less to no visible oscillation (ATC_RAT_YAW_P) 0.5 & ( & ATC_RAT_YAW_I)0.05 was updated. We made the changes in fence also.

Our next test flight we will be changing the auto tune setting as you had written .

Please have a look at the log and if it looks better.

Also the gnss mode we made it to 66(GLONASS+SBAS) as there was no option for 65

logs are in this link: Aurducopter logs - Google Drive

Hello ,

So we made the changes it worked perfect. The first log is the first flight with oscillation value (ATC_RAT_YAW_P ) 0.8 & (ATC_RAT_YAW_I) 0.08

The second flight had very less to no visible oscillation (ATC_RAT_YAW_P) 0.5 & ( & ATC_RAT_YAW_I)0.05 was updated. We made the changes in fence also.

Our next test flight we will be changing the auto tune setting as you had written .

Please have a look at the log and if it looks better.

Also the gnss mode we made it to 66(GLONASS+SBAS) as there was no option for 65

logs are in this link: Aurducopter logs - Google Drive