paper: Drive-Train (Drag-Race) Model

Thread created automatically to discuss a document in CD-Media.

Drive-Train (Drag-Race) Model
by: Clem1640

Excel Drive-Train Drag-Race model, and the mathematics behind it.

As a drive-train design tool, Team 1640 developed a mathematical model of an FRC robot drive-train at x=0, v=0 at t=0. at t>0, full drive power is applied. Wheels may slip. Position, velocity & acceleration are plotted versus time. A useful tool. Key design parameters are easily changed.

Drive-train Model.pdf (181 KB)
Drivetrain Model DB6.xls (287 KB)

Thanks for solving a question I’ve had for a while about the non-constant force applied by an electric motor to accelerating a robot. I couldn’t quite finalize any equations to get concrete undisputable answers.

Perhaps a more accurate way to model motor load due to robot mass is to assume that some percentage of the normal force (Fn) is transferred through the bearings to create a load on the motor. Typically roller bearings are >99% efficiency if perfectly aligned, yet this is not always the case; I’ve usually model 1% of the mass per bearing. Increasing number of wheels in contact with the floor as well as increasing robot weight creates higher motor loads, thus reducing top maximum speed as well. An important point is that the load is distributed among all of the motors in the model as well.

For example, in your spreadsheet tool, reduce the # of CIM Motors from 4 to 1. The top speed in reality would not remain the same after the reduction, though I suspect the shape of the acceleration curve is the same.

A simple recalculation for Vmu is all that’s needed since the load is a constant Vmu_new = (1-(total_loss_load/total_system_stall_torque))Vmu. Gearbox efficiency loss should also be similarly modeled, and could be a fraction of stall torque depending on the number of gearing stages (0.980.98*Tstall).

Another graph I found to be useful is a velocity vs distance traveled graph. This shows how much of the field it takes to accelerate to maximum speed and allows for readjustments based upon available motors and gearing options. It doesn’t matter what the top is speed if it takes the whole field to get up to it! It’s a simple graph of existing data.

It’s a similar idea, but I’m a big fan of gear ratio versus time to travel a specified distance. Most game usually have a certain distance you care about the most, I like to design for that. It doesn’t matter if you hit fullspeed in 30 feet if you do that once a match, and do 12 feet 30 times.

Cool paper. Acceleration in the context of FIRST is something I’ve been meaning to read up on and now I have a fancy Excel chart to help me figure it out and save time with calculations. Thanks! I’ll be sure to check up on this next build season.

I do have some rather nitpicky requests that I may just change in my own version (mainly wheel diameter over radius, support for the addition of an FP motor, etc), but I can’t complain too much.

JesseK brings up a good point about transmission (frictional) losses in the drive-train. I’ll look into this further (which will take some testing).

It doesn’t look too hard to solve equation 32 for t, thus deriving a new equation for t(x,G). I wonder what a carpet plot of that would look like…

So you would want to see time as a function of x (distance traveled) and G (gear reduction)? This is certainly do-able.

One problem with eq. 32, however, is that it assumes that the wheels maintain traction. The numerical calculations which generate the numbers and curves in the worksheet does not make this assumption. I used equations 28 and 32 to check the performance of the numerical solution (I can force wheel slip to FALSE to override the wheel slip check). The time step selected is based on running the comparison between numerical and analytical (eq 28 & 32) solutions side-by-side. When they yeild the same results, the time step is small enough.

Regarding drive-train frictional losses; after thinking about this further, I believe that these should be a per-robot value, whereas I’ve made it a per-motor value. This is an easy fix. When making this change and reducing number of CIMS, maximum speed now drops:
4 CIMS – 9.77 ft/s
3 CIMS – 9.31 ft/s
2 CIMS – 8.38 ft/s
1 CIM — 5.50 ft/s

At this point, the actual value of the drive-train frictional loss is just a SWAG (at best).

I modified this program for the Minibot climb. See my blog post.