Hey, it’s ya boy, back for round 2 of “Andrew asks hard to answer engineering questions so he can make workshops for his students”. You may know me from hit classics such as “why are bolts hard to understand” and “obvious WCP fanboy”. Today’s question is about robot CoG.
I can’t count the number of times I’ve been told “low CoG = good”, and while that idea is helpful, it doesn’t give much to go by. The reason for low CoG is to make the robot more stable and prevent tipping, but there’s a few other variables that go into that, such as:
wheel support base area
CoG XY distance from wheel support base center
change in CoG with extensions
While it still rings true that “lower = better”, what’s the least low per a wheel support base area one can go? If I had a wheel support base of 23x23 (28x28 swerve frame) and no extensions, what would be a “good enough” low CoG for a high speed game like Charged Up? Is 12" off the ground low enough? 10? 8? How much “tippyness” difference do those 2" make? Does the 2" difference between 12" and 10" have the same effect on tippyness as the 2" difference between 10" and 8"?
I know this is a more complex dynamics situation that doesn’t have as clear-cut and easy math as the fastener question from earlier, so I’m looking more for lots of empirical and “rectal-removed” data, which I hope enough of which will show some kinds of trends that can provide more rules of thumb to go alongside the existing rule of “low = gud”
If it’s any help, my team has had great balancing success and we have a relatively low center of gravity, paired with tank wheels. I’m not on mechanical, so I don’t know exactly what our CoG is, but I know we built it with the goal of having a low CoG.
Something that you are probably already aware of, but I want to mention anyway: Is that the tippyness can be defined by the maximum accelerations that the robot can handle. A lower center of gravity will allow higher accelerations as the center of gravity won’t be able to impart a large enough torque to tip the robot over.
So good enough is hard to calculate, least of all when we don’t know how the game will play out. If I could have it my way I would stick the COG in the bumper zone, but we can’t have everything.
As with anything mechanical, prototyping helps, dynamic systems with lots of moving parts (that are not necessarily linkages) are hard. There is a reason that F1 teams test aero in the wind tunnel (the last team that tried CFD only drowned at the back of the field)
The “8 vs 10” thing somewhat depends on the X/Y distribution of that mass. But at the end of the day those forces that want to tip you are just a moment.
Remember with low bumper zones you can gain a fulcrum that is outside of the frame perimeter.
Can’t you calculate the maximum acceleration that keeps your wheels in contact with the ground for a given COG and wheelbase using physics? Ideally you should make sure the drivebase configuration is such that this value is higher than (g * COF of wheels).
It’s complicated by the fact that the fastest FRCFIRST Robotics Competition robots tip slightly when accelerating.
That’s what I did, see James’s post above. It has worked quite well for us, with a total of one tip-over all season, and that was a jump off the charge station.
TLDR - As robots go faster, all weight needs to go even lower.
If there’s one thing that Charged Up has made clear, is that tipping is a dynamics problem, not a statics problem. Two robots can have identical CoG heights, placements, and drive dimensions - yet one robot can fall over in situations the other doesn’t because of differences in robot velocity, moment of inertia, and momentum. We often simplify things in physics and engineering to be point masses, but the reality is that they are not. Robots do have mass above their CoG/CoM, and that mass has inertia. Moreover, that mass has momentum, and as you apply an unbalanced force to the robot (such as a collision with another robot at the bumper level or even wheels suddenly changing direction) that angular impulse is going to generate a torque on the robot.
Low CoG is important, very important. But Low CoG is only one factor in robot tippiness these days as teams cram more and more power into their drivetrains and collisions produce even larger ∆v. Moments of Inertia play a huge role in determining the results of a rapid change in speed in FRC.
Low CG benefits are not linear, gut check is get to the region of the bumper zone and you’ll be OK.
Illustrate by getting one of your students to model* tipping a robot until CG is directly aligned above where its touching carpet for a few different theoretical CG locations (like 5", 10", 15", 20", maybe 25" for giggles). This is a starting point, probably not conservative enough to get 4414-class movement.
Our 2022 robot can basically drive its own wheels out from under itself, I’ll try to remember to get a measurement tomorrow…
Horizontal acceleration is limited by wheelie-ing. Zero wheelie = max accel.
Sum of moments around the center of mass… moment keeping the front wheels down is wheelbase, moment kicking the front wheels up is CG height.
To accelerate at 1g (the friction limit, assuming a 1.0 coefficint of friction, and sufficient drive power available) this triangle needs to be equal lengths
The funny thing is with swerve, you end up limited to two points of contact, which means two drive motors on COTSCommercial, off-the-shelf products, and so you’re not actually putting down everything your JVN Calculator says you can if those front wheels are lifting.
The lower your CG, the less front wheel lift you’ll get, and the more those extra motors on the leading edge can do for you before they break traction.
*(take this year’s CAD model and make some screenshots with it tipped up at different angles, should take less than half an hour from explaining what you want to having images in a slide deck)
708 was driving over in auto, 2720 caught the edge of the charge station with their bumper holding it up. Not the most elegant charge station crossing for us.
Impressive. I’d say our frame/swerves/plate/angle iron/winch motor/compressor/battery complex was more than that and all “on the deck”. Having had a top heavy robot the year before we were taking no chances.
We chose to go small this year and knew tipping was a real risk that needed to be mitigated. The first time we extended our arm without any of the weight, we decided to go all in. We ended we about a 1/2” of steel bolted under the frame to bring us to max weight. Seeing the huge benefits the stability granted us on the field, I would definitely do it again.
@Wesley and I took a stab at calculating the maximum robot speed that avoid tipping if the robot hits a perfectly rigid object at an arbitrary height at or below the CG height. There are a lot of ways to approach this problem and we found more than a few that were a gross mess. This is the best option we identified, which uses a rotated coordinate system centered at the impact site.
This euqation yields the remarkably sane answer (for our robot’s approximate numbers and assumptions) of just under our maximum free speed being a tippable velocity. This roughly lines up with our experiential data of never tipping when hitting a wall or other robot at as close to full speed as we could drive. With drivetrain losses we can’t ever hit our theoretical free speed of 5m/s.
Equation text available to copy/paste at your discretion. sqrt(2 * 9.8m/s^2 * cos(atan((9in-4in)/13in)) * sqrt((9in - 4in)^2+13in^2))/(sin(atan((9in-4in)/13in)))
I think it’s neat that if the impact height = cg height the maximum speed is infinity (which is exactly true).