Extensive Flight Control Issues
-
I've been having extensive issues regarding flight for a custom hexacopter built using the VOXL Flight Deck.
First, I should mention that the problem is unlikely the motors, ESCs or estimator. I had the drone clamped onto a heavy table and powered it up with props on. I executed
motor_test test -m n -p N
I had all 6 motors spinning at the same time with PWM ranging from 5%, 20%, 40%, 60%, 80% and 100%. As the PWM % increased, the RPM increased. In each PWM, all 6 motors were spinning at the same PWM.
Next, while the drone was still clamped I armed it and set the throttle to the max using virtual joystick. The expected behaved behavior would be all motors spin up to max PWM, and stay at that RPM until the throttle is changed. However, sometimes all motors spin up but (1 or 2) slow down or stop. Sometimes not all motors spin up.
I repeated this test with offboard mode, sending a velocity command (0,0,0.5,0) - corresponding to moving up at 0.5 m/s and observed the same result of inconsistent motor behaviour.
Overall, I can conclude that the motors and ESCs are not the problem.
Another test I ran involved the estimator. I had the drone powered up without probs. I had a small piece of tape on the motor shaft to provide visual aid. I increased throttle on stabilized mode. I tilted the drone and can see / hear the motors adjusting and attempting to level the drone. When I lower the left side of the drone, the motors on the left spin faster until I level the drone. This tells me the estimator is not the issue. This also tells me the controller is working as intended (but it doesn't tell me that the controller is tuned good enough or not).
So at this point I know the estimator, motors and ESCs are good to go.
The drone cannot take off, it usually tips over or becomes unstable. I've tried various values of gains for the rate controller and none of them have worked. The officially documented method for PX4 tuning requires that the drone can take off and hover well enough in the first place which my drone cannot.
So to recap, I have two issues:
1 - motors are behaving extremely inconsistently when attempting to fly (but behave fully as intended using the motor_test command)2 - when the motors do spin up "enough" it still can't take off as it flips or becomes extremely unstable. The drone overall cannot safely take off and in its current state I can't even start apply the tuning procedure.
At this point I really don't know what the problem is. It could be the PID gains on the rate controller, but I don't think the motor performance is consistent with some of the settings I've tried for the gains.
While clamped, I've tried maxing out all the gains and maxing out the throttle - some motors are still very inconsistent; some motors are much slower than others for example or straight up stop.
Each test was conducted with full batteries.