Battery Consumption and Current Limiting Question

Hi Chief Delphi! :wave:

Our Story :books:

Our team has been experiencing some issues with battery consumption during matches. Our batteries only last for about half the match before the robot starts browning out and stuttering on the field. Our batteries were purchased for this season, and while we competed with supply current limiting on all of our subsystems, it didn’t seem to solve the problem. We’ve made some changes over the offseason and it appears that we have at least mitigated the issue, but we’d like to know some of your insight on good current limiting practices and if our logs indicate that we’d be fine at a future event.

What We’ve Tried

During offseason, we’ve played around with different current limits, adding stator current limiting and trying out some values from other teams. This seemed to be slightly better, though we can’t completely confirm because we haven’t played a real match with these new values.

We’ve also analyzed PDH logs to see which motors take up the most current. We’ve found a few noticeable things:

  • Our intake sometimes drags on the ground, causing a current spike even when we’re not intaking and taking up a bit of current throughout the match
  • Our transfer actually uses quite a bit of current (~60 amps) for a split second when we’re shooting because of the note passing through

We have our logs & our code here- definitely let us know if you notice anything else that we missed!
logs.zip (24.3 MB)

Our Questions

Overall, we’re wondering what the cause of our quick brownouts may have been and if we resolved the issue. Are our new current draws normal? Is our robot just a power-hungry robot? Does our current limiting code just need to be better?

We appreciate your insight and are looking forward to diving into this new season with you guys!

10 Likes

What do your batteries report when tested with a battery beak?

Do you have access to a battery analyzer?

It’s possible that your batteries have seen significant degradation, so even with current limits, you’ll have issues. Knowing what you’re working with is the place to start.

2 Likes

Just as, if not more important, as supply limits are stator limits. These are enforced much more strictly and are generally recommended on motors that support it (Krakens & Falcons). Add those, your stator limits should be about 1.25-1.5x your supply limits.

We try to only use batteries that beak at:

  • Battery Charge: 110% or more
  • Internal Resistance (Rint): 0.016 or less

We unfortunately do not have a battery analyzer

Depending on the charger, reading 110% could be unusually low.

I’d try a known good battery from a nearby team, and if the issues persist, you can probably safely ignore this line of inquiry, but it’d be good to rule out.

8 Likes

110% could also be completely normal if the charger has a maintenance mode (most do nowadays), and the battery finished bulk and saturation phase charging many hours ago.

All in all the battery beak is good for relative measurements but to compare apples to apples you need to be consistent when testing (i.e. how long after charge complete do you test), else you are essentially trying to ascribe meaningful charge to a 1-2%diff in surface charge.

Discount double-checking your battery in another bot or another teams bot, or using a battery that works for them is more information that can inspire confidence that the problem lies elsewhere.

This thread recently I think may give your team some more insite on what to try for supply and stator current limits that may be more effective.

2 Likes

Far more intelligent people than myself on here when it comes to current limits…

But pointing a thermal camera at a robot can be very telling. That energy HAS to go somewhere. (You can also of course feel around for hot stuff which is less than optimal but all the same can help you)

10 Likes

Thats a good idea. Also for those wondering we use the NOCO Genius Gen Series 5A 1 and 3 bank Battery Charger

Which was featured with some great discussion in this post earlier this year:

2 Likes

The realpro chargers, in my experience, always leave the battery at 130%.

Tayler just confirmed that they’re using a NOCO, which does have intelligent maintenance, so 110% is totally reasonable, however.

4 Likes

Besides obvious loads like motors and solenoids, this technique may reveal loose connections and spots of high resistance (repeatedly flexed wire that is breaking strand by strand increasing resistance)!!

I’d give this a shot if you are struggling finding the area of concern or narrowing down the possibilities

2 Likes

How aggressively are you gearing your mechanisms? Specifically your drivetrain?

We spent most of the last season on MK4i L2.5 and L3.5 (we moved from Vortexes to Krakens and wanted to maintain the higher top speed for full field cycles) and had significantly more instances of matches where we limped to the finish than when we just ran NEOs on L2s the previous year.

We’re already planning to move back to L2 as our top speed for the foreseeable future as the reliability at the end of the match outweighs the slightly higher top speed for us, even in full field cycling games.

1 Like

the chart you posted looks normal to me: these are not “brownout” voltages.

you can set the brownout voltage if you have a roborio 2. we set it quite low:

RobotController.setBrownoutVoltage(5.5);

1 Like

Are there any negatives from setting the brownout voltage lower? Would it harm long-term battery health?

The more immediate problem would be other electrical things resetting or powering off due to low input voltage. Coprocessors especially, it will take seconds for them to reboot.

I doubt there is much impact to battery health from lowering brownout by a little bit. These batteries are getting abused quite a bit by FRC even with the default setting, 1v won’t add to that by much.

To tack on… Got any pictures of the robot and it’s wiring? Even if batteries are good, long/thin battery cables or loose connections have the potential to trigger brownouts or brownout like behavior.

1 Like

Lowering the brownout voltage on the v2 rio isn’t solving the root cause here. As far as I am concerned the OP problem needs to find out

  1. Are we starting with the same amount of energy as everyone else?

  2. Where is that energy going?

Lowering the brownout voltage is very much a bandaid here. Great choice to get something going at an event with an upcoming match, not a great choice to actually understand what is going on. Brownout voltage change is likely just kicking the can down the road.

5 Likes

I 2nd checking your electrical construction. Also, some swerve code winds up commanding the drive motors to run at the computed power without factoring in that the module may not yet have rotated into the desired position, This makes them fight each other, or try to move other modules with perpendicular wheels.

The IR camera should show this – run two tests, one where you just drive back and forth (so the modules don’t rotate) and one where you drive in the usual way. If the drive motors are way hotter after the second test, something like this is going on. If you’re not using swerve, this obviously doesn’t apply.

1 Like

I don’t have anything to add to the conversation wrt solutions, but I just want to commend you for how fantastic of a “question” post this is.
You’ve got all the things:

  • what the problem is
  • What you’ve tried
  • logs, code and additional information
  • actionable questions to answer

11/10, well done.

19 Likes

We (3128) have a CBA - bring a battery or 2 over, let’s check them out.

2 Likes

I hope OP takes you up on your offer. Even better is they buy a good battery analyzer. There are recent CD threads about various models, capabilities and price points.

OP didn’t mention the battery manufacturer. There are significant differences in batteries and once we even found a huge difference between two identical batteries bought together sitting on the shelf next to each other.

Discussions with one store’s personnel revealed that the slightly lower cost batteries were of lower quality. The specs appeared essentially similar to the somewhat higher priced batteries; they were “a good value” but they weren’t up to the demands of FRC matches.

[My team has bought different batteries from various sources and now buys M-K from AndyMark but I see even those batteries aren’t above some comment or criticism in CD threads.]