Max allowed current from battery parameter is actually maximum current per motor

Running tests on a small quadcopter, the current being drawn from the battery is 10A while loitering at a constant height.

Despite the MOT_BAT_CURR_MAX being set to 15A (which, in documentation, should be the maximum current drawn from the battery), the flight log reports current peaks up to ~39A.

We’ve come to the conclusion that the MOT_BAT_CURR_MAX parameter refers to the current drawn per motor rather than total current. When testing the drone at MOT_BAT_CURR_MAX = 5A, the flight log reported peaks up to ~19A (or just under 5A per motor).

Be careful setting your maximum current in case of tripping your fuse, your value is likely:

MOT_BAT_CURR_MAX = {controller fuse value}/{number of motors}

I don’t think this is quite correct. Code reference below shows total current monitor output as the input to the limiter.

The integrator may be a bit slow to respond, so spikes above the set limit could easily be observed. Poor current sensor calibration could also be to blame.

2 Likes

As much as I’m inclined to agree based on the programme we ran tests and, current spikes aside, the highest non-instantaneous currents were limited by a value four times that of our parameter setting (indicating the parameter defining the per-motor maximum current). I think I can get the flight logs if need be.

We settled for a 10A setting which meant that at any point during a flight (especially including maximum speed vertical acceleration) the highest currents were 35-40A. It should also be noted that the normal running current was 10-15A which is already above the maximum parameter setting provided it actually referred to the maximum permissible battery current.

We ran a test limiting it at 5A and in the same way the above situation was 35-40A, this test was limited at 17-20A.

Again, still open to discussion but practically it doesn’t seem to be working in its intended way.

Please provide the .bin log files for your tests.

1 Like

Hi @LeoCripps,

As @LupusTheCanine says we really need to see an onboard log file or it’s all guesswork.

BTW, the current limiting code will never reduce the throttle less than the hover throttle plus a safety margin which is no more than 20% (see code here).