FRC 5987 Galactic Swerve Mk3

After a bunch of different swerve modules were modeled by our team over the last few months we have finally decided to build a swerve module this offseason. We have been working on it for a little while now and this is what we have so far. It’s been through a few design reviews and revisions so it’s very close to being a finished product.

Our goal in this module’s design is for it to have a footprint as small as possible, to be as thin as possible and also to be completely manufacturable in house (lathe, 3 axis CNC, 3d printer).

We chose to use a 775 RedLine for the turning for two reasons: we have no experience working with Neo motors and also we already have a lot of 775 RedLine motors and Talon SRXs and would rather not spend more money on Neos and SPARK MAXes.

GrabCAD Link

Weight: 2.16kg / 4.75lbs
Footprint: 176mm x 131.6mm x 133.5mm / 7in x 5.2in x 5.25in
Drive Gear Ratio: 11.64 : 1
Free Speed: 3 (m/s) / 9.6 (ft/s)
Loaded Speed: 2.6 (m/s) / 8.5 (ft/s)
Steering Gear Ratio: 43.17 : 1
Free Speed: 7.2 rps
Loaded Speed: 6.5 rps


Standard reminder that this means basically nothing (and hurts more than it helps imo), but you’ve included free speed so it’s all cool.


Nice module!

This is a little slow for a modern brushless module. If you want to speed it up, the trick to getting faster free speeds from a module of this architecture is Andymark’s 16T 20DP motor pinion.


Or smaller bevel ratio! This is a big reason I’m a big fan of 2:1 bevel reduction. Results in easier speed options with a normal pinion on the drive motor when the drive motor is on the coaxial axis like this module is.


Very pretty design!

I don’t have a lot of experience with swerves, but I recommend a bearing below your small bevel gear. This will help keep the gears together under torque (when reaction forces are trying to separate them).


We have actually thought about that and came to a partial conclusion. Because we want to manufacture everything in house, adding the bearing hole in that block is going to add more time and difficulty to the manufacturing of the part. The bearing seemed not super necessary and adding it would also mean that you have to take the whole module apart to get that shaft out, unlike now where we can just remove the bolt at the end of the shaft. I thought we should try it first without a bearing and if the shaft bends, add one.


We don’t really have that much flexibility with the bevel, were getting them from SDS which only sells the 4:1 combination were using in the CAD, and since were in Israel ordering directly from KHK isn’t really an option. WCP shipping also hasn’t worked out that well for us in the past.


:eyes: Looks like a redline to me



You are absolutely right lol. I always write 775 Pro because its shorter even though we use 775 RedLines. I fixed it in the post.


Haha sorry if it came off as rude, meant that as a joke since they’re basically interchangeable.

I love the module design! It’s clean and compact, but it doesn’t look dangerously cramped. We’re currently in the process of looking at different module designs to take inspiration from and this will definitely be one we look to.

Thank you!

1 Like

Depends on the game of course, but in general this is a multi year investment into design and prototype, so I agree with you more than I disagree.


+1, we’re currently at a free speed of 3.9 m/s with falcons, and we’re pretty much at the friction limit of the blue nitrile rough top treads.

1 Like

That’s 12.8ft/s for all you standard folk out there.

You really think that speed is the friction limit?

1 Like

A Falcon geared to 3.9 m/s (12.8 ft/s) free speed produces 315 N of force at 100 Amps (a common max current limit). A full weight (70 kg) robot sitting on 4x 1.2 CoF wheels has a max traction force of 206 N per wheel. Meaning the wheel is slipping while the robot is below 1-206/315 = 35% of free speed, or 1.35 m/s or 4.4 ft/s.

The higher your top speed is, the lower your relative slip point* will be. There are positives and negatives to having your slip point be higher or lower, and they’re different for WCD vs swerve.

* relative slip point = slip speed / top speed


I think what you are saying is that the wheel slipping occurs during acceleration. When you gear for a lower top speed, you apply more torque to the wheels during acceleration which will cause the wheels to slip. Since the gear ratio selection is typically a tradeoff between acceleration and top speed, it might not make any sense to gear at a higher gear ratio than the point where you start slipping. Above that gear ratio, you don’t gain any more acceleration (because your wheels will just slip) but you will still loose top speed, so that would be a bad trade.

The 3rd factor we think about is pushing power which would be more likely limited by a sustained current of 40 Amps (instead of the short peak limit of 100 Amps). Even if you are wheel slip limited for acceleration, picking a higher gear ratio might give you more pushing power and could still be advantageous if that is your design goal.

Back to @PatrickW’s observation that the 11.64:1 Drive Gear ratio seems a little slow, I second that observation. We were geared at 8:1 with 4" wheels and NEO motors at our event this season and when we went back to look at the ZebraDart data for our robot, we found that there were many times where we had reached the max speed of the robot for extended periods of time. We are thinking about reducing our drive ratio to 6:1 (we ran that ratio with the same ratio in 2018) to see if that improves our cycle time (and if our drivers like that higher speed).


If you gear higher than the minimum to slip at stall you don’t gain any acceleration at stall but you will still have max acceleration for longer as you speed up and the motor’s torque falls linearly. It does somewhat worsen the tradeoff, but it doesn’t completely get rid of it. Otherwise we’d all be geared to 20 ft/s because that’s the speed where the Falcon has wheel slip only at stall and is traction limited at all other speeds. That’s the point I was trying to make: lowering your top speed doesn’t increase your max acceleration, but it increases the amount of time you stay there before acceleration starts to drop.

Agreed, I don’t know how that slipped past our design review meeting. We’re likely going to change it to somewhere around 14 ft/s or an 8:1 gear ratio. Some of the students have been arguing to go even faster (up to 18 ft/s) but I’m urging them to start at a reasonable speed and then increase it from there if we aren’t happy.

1 Like

I guess that is one of the nice things about being off-season. I haven’t looked into this yet, but when I hear things like “try this and see if it works”… I ask myself is it possible to get some ball park answers/predictions with math while designing.

Edit 1:
Nice rendering by the way… I like when people take the time to pay attention to materials and textures in their CAD!

1 Like

Excellent points.

What speeds were you running at ISR#2 where you competed? Being a tall robot, it did not seem like you ever had a lot of room to get up to full speed the way that low robots could in the trench run, but even so, it would be a good comparison point to use for your new design.

Did you guys have ZebraDarts at ISR#1 or ISR#2 over there in Israel? We had them at our first district event and we were able to study the data to see how closely our actual on-field performance matched up with the drivetrain simulator predictions. Unfortunately the data is a little too noisy to get really smooth plots of acceleration or steady max speeds. But it is easy to see in the data when you have reached a max speed as the plot of speed versus time levels off and bounces around in a fairly narrow range. We actually got pretty decent agreement between our predicted top speed (theoretical free speed) of 12.6 ft/s and measured speeds of around 12 ft/s sustained for several seconds.

If you did not have them at ISR to study your own robot or other robots that you competed with, you may want to look around for other events where they were used and study some of the robots that were performing particularly well (in terms of cycle time) to see what speeds they were actually running at. That data might give you some ideas for gear ratios. Certainly starting at a comfortable speed and increasing after some drive time is a great strategy.

I personally feel that this year’s game has lots of opportunity for faster than normal drivetrain speeds, especially if you are going to go back to the loading station for your PCs and make several long cycles up and down the field in a typical match. The data from the ZebraDart system certainly supports that feeling. But it will boil down to whether we can take advantage of the higher speed or not while threading the needle through the trench.

1 Like

Erez, Where is the motor controller?


You wanted math, you got math.

The force on bevel gear teeth can be calculated as such:

T is the torque on the small gear, which is the stall torque of the motor times the preceding gear ratio. If the total ratio is 8:1 and the bevel gear is 4:1 then the preceding stage needs to be 2:1, so:

T = \tau_s G = 4.69 \cdot 2 = 9.38 \text{ Nm}

I was also able to find this drawing of a bevel gear from KHK with the same specs as the one from SDS:

We can see that the center of the tooth is about l_{av} = \frac{22.5+10.43}{2} = 16.45 \text{ mm} from the face, and r_{av} = \frac{\frac{19.62}{2}+\frac{26.66}{2}}{2} = 11.57 \text{ mm} from the shaft center. From the drawing we also get that \phi = 20^{\circ} and \gamma = 90-17.03 = 72.97^{\circ}.

So using equation (13-37) we get:

W_t = \frac{T}{r_{av}} = \frac{9.38}{0.01157} = 810.7 \text{ N}

And equation (13-38) gives:

W_r = W_t \tan\phi \cos\gamma = 810.7 \tan(20^{\circ})\cos(72.97^{\circ}) = 86.4 \text{ N}

The magnitude of the sum of these vectors is:

F = \sqrt{810.7^2 + 86.4^2} = 815.3 \text{ N}

7075 Aluminum has a Young’s Modulus of E = 71.7 \text{ GPa}, and 1/2" hex axle has an area moment of inertia of I = 0.0601(0.5 \cdot 0.0254)^4 = 1.56 \cdot 10^{-9} \text{ m}^4

We can therefore calculate the deflection of the shaft as:

\delta = \frac{F \cdot l_{av}^3}{3EI} = \frac{815.3 \cdot 0.01645^3}{3 \left( 71.7 \cdot 10^9 \right) \cdot \left(1.56 \cdot 10^{-9} \right)} = 1.1 \cdot 10^{-5} \text{ m} = 0.011 \text{ mm}

So according to this, the displacement is basically negligible. We’ll build and test it in the offseason to confirm this math.