4-cim vs. 6-mini-cim drivetrains

When you factor in time, the story changes significantly.

-Mike

If you current limit the CIM, it won’t heat up nearly as much, so the decay should be much longer than when running at peak power.

Are 6 CIMs combined irrelevant because the overall current draw is much larger? Thus causing robbing power from other mechanisms or causing brownouts?

I’m making that comparison because the total power and total current draw are in the same ballpark for 6 miniCIMs and 4 CIMs. Other combinations of motors are in a different power and current range.

Anecdotally ~ 4 CIMs of motors in drive is a comfortable spot from multiple points of view, and 6 is risky for most teams.

Yes. Six CIMs with no current limiting can take the robot down pretty quickly. Current limiting can be done at least three simple ways: configuring an SRX, traction limits, and software monitoring of the PDP current. Voltage ramping is another tool that can help except in pushing matches. There are a great number of fancy ways to do it.

What do team normally configure their current limits to in software? Is there a good practice in measuring what this limit should be? I was always afraid to use this method (we just use voltage ramp on our srxs) in fear of not fully utilizing the power of 6cims.

I find the comments about current limiting a 6-CIM drivetrain interesting—we ran our bot this year with 6 CIMs, 4" colsons and a 4.5:1 reduction with no current limiting. Looking at the DS logs, we didn’t really have brownout issues, even with some heavy acceleration.

I guess the worry is pushing matches. But if your driver actively avoids those, then at least from our experience, 6 CIM drivetrains without current limiting seem fine?

Could it be that the weight of your robot contributed to this? Looking at your robot’s TBA photo, it looks to be rather small compared to other robots (though this doesn’t guarantee that a robot is lightweight, it can certainly point to that being the case.)

Then again, I don’t have much experience with six-CIM drives, so I’m not sure how much robot weight actually impacts current draw.

Over the summer we went from a 6 CIM drive, to a 4 CIM drive to a 6 mini CIM drive using VEXpro’s 3 CIM ballshifter.

6 CIM: Worked well when we didn’t trip the main breaker, Did get very warm but we were only playing defense both days (so hot our alliance members were fanning them with clipboards in between elim matches)

4 CIM: Worked very well, didn’t have any problems with overheating

6 MINI CIM: Worked amazingly, brought or adjusted top speed in high from 20fps to 22fps, Slightly less pushing power and slightly harder to turn. However half way through the semis they get almost too hot to touch. Also works okay enough with 5 turning and one ‘sleeping’.

We loved using the 6 mini cim drive this summer and will be using it again in the near future

canTalon.setCurrentLimit(amps);
canTalon.EnableCurrentLimit(true);

We used 40 amps and it works great. It impacts performance far, far less than voltage ramping and works much better, in our experience.

If you do this, then your CIM gearbox could easily have less torque than an otherwise roughly equivalent miniCIM gearbox.

And some of the issue is the heat caused by the bushing, which would be if anything more of an issue at a higher RPM?

When data shows you one thing, I think it’s more prudent to act on that than to act on “well this data that doesn’t exist might show a different thing maybe”.

The CIM “ordinary” CIM stats show a higher torque at basically every current value than the mini-CIM.

Of course, this may still change in use due to heat accumulation even with the current-limiting.

Current-limited CIMs may also not offer enough benefit over mini-CIMs to be worth the extra weight and space.

We intend to test this.

Than the mini-CIM at the same current, instantaneously. The whole point is analyzing the problem over time. I look forward to seeing more data.

The firmware updates to the VRM and PDP (either in 2016 or 2017) fixed most robot-wide brownout issues. 6-CIM drive trains no longer need current limiting in order to prevent a robot reboot. In this video, we were trying to characterize what would happen to the robot with no current limiting on a 6-CIM drive train in high gear. Hilarity ensued.

Caveat: we did have SRX voltage ramping set to 12V per ~0.1 seconds, which was approximately how long the theoretical acceleration curve kept the current draw above 240 amps. The intent was to prevent issues with swift reversals of the joystick inputs.

Anecdote

(Side note, although this was with 2016 firmware for the PDP)
PDP current reading seems to be sllllllllllllow.

All,

This whole thing started because I stated in a post last season that my teams haven’t used CIMs for a few seasons and some people asked why.

I don’t expect everyone to run out and buy miniCIMs (please don’t as we will not have enough if that happens), but I wanted to share things I noticed and then tested.

Most of the discoveries were made during the dyno up/down test. As an aside, everything on motors.vex.com has a description of how we tested it. You do not need to assume how we tested, because we tell you in the “how we test” section.

We tested about 20 of each CIM and miniCIM. We tested CIMs you get from AndyMark and from VEX (they are the same motor from the same factory). They were all within 3-4% of each other. The stated motor manufacturer variance for these is 10%, but I have yet to see that much variance.

What we found is the CIMs ALWAYS heated up more than the miniCIMS during those tests. Now, we didn’t do anything with current limiting as we were just trying to quantify the motor specs as motor manufacturers do not do the up/down tests so their published performance data is a little higher than reality.

All of you need to make your own decisions on what to use and I’m not really interested in arguing with anyone on this subject. This is a complicated issue and I have found that testing with your specific configuration is always best.

Yes, I am sure our motors would have heated up more if we had more wheel scrub. However, I found it interesting that the motors didn’t heat up and our darn large breaker got so hot it would trip after about 2 or 3 hours of continuous practice. The motors (including the 775s) were happy.

I like distributing the heat across 6 motors. I just don’t like the weight hit of doing it with CIMs. 6 minis worked great for us (so did 4WD with all omnis) and we will likely use them again this year on our drive.

We have found that if you design your robot to win a pushing match you probably won’t be a high scoring robot (there are exceptions, but not many) in the latest styles of FRC games. What we have found to be more important is to make yourself “immovable” when trying to score. We did this by going to the rear peg when under heavy defense this last year. Depending on the game, 4 omnis may not make sense no matter what motors are driving them.

Why do I like 4 omnis? Simple. The T-bone! After 2011 Einstein when 973 made 217 their plaything by t-boning us I said, “never again”. If we used 4 omnis that year, then the 973 strategy would have been useless. Since we were protected when scoring omnis would have made perfect sense.

Anyway, I digress.

Paul

Maybe you can clarify? Because if I’m understanding you correctly, your statement is the exact opposite of what is being shown in the video. Wouldn’t current limiting have helped the robot not brownout in the video?

Yeah, the point of current-limiting is to avoid brownouts, not necessarily reboots. We’ve found it absolutely crucial, especially with closed-loop control which tends to cause very large current spikes when setpoints change suddenly.

Brownouts are when one or more (but not all) subsystems do not get the amount of voltage needed to stay powered on. I’ve (inherently) extended that meaning to be ‘critical’ subsystems. In 2014, we would have seen this robot sit idle for 45 or more seconds as either the radio or RIO rebooted. In this video, we hear the results of the software cutting output to the compressor in order to prevent a RIO or radio reboot. We also see the effects of the motor outputs being temporarily cut as the software allows system voltage to recover.

I agree that current limiting would have prevented wasting energy (which wasn’t under consideration at that time). At that point we were focused on the opportunity to do a few hours of real drive practice before bag & tag.

I suppose my point of view is “if a robot browns out and no one notices, did it matter?”.

I think this is a terminology issue; the motor on-off behavior seen in that video is exactly why we implemented current-limiting, and is what we (and a few other teams) have called “brownouts.”

Seems like we need more specific terms for the specific things the RoboRIO does to deal with voltage drop.

I mean the math is pretty simple. 6 > 4.