My Crazy Off The Shelf Parts Differential Sweve Drive

So I was thinking about how almost all of the differential swerve drives that exist today are waaaay out of the scope of my team’s machining capabilities because they require insanely huge bevel gears to work. I was thinking that and so I made this differential swerve module which uses only parts from vex, and stuff that can be made on a simple CNC Reuter. Here are some crappy screenshots.

Here is the CAD. The floating gears are supposed to be above and below a piece of box that this would be mounted on, they are what the pinion gears of the motors would mesh to. When powered by 2 mini cims this goes at 12.38 ft/s and draws 51.01 amps pushing according to the JVN design calc.

Hmmm interesting

Hmmm quite interesting


Very nice, I was considering offloading parts of the differential in a floating cage assembly when I was adapting Nuclearnerd’s Differential swerve to an FTC scale, but I like your implementation for the simplicity in exchange for some compactness. (My build log HERE)

A couple things to consider:

  • Sensor Placement - we can assume back shaft or similar for <generic motor>, you are going to need an azimuth encoder or a wheel encoder. (this design is a lot closer to being able to support all 4 sensor locations than other designs I have seen in the past, as you can bull wheel rpm off of your idler set before the bevel gears).
  • What are you considering for an azimuth bearing? a bushing, thrust bearing/ ball bearings, tapered roller, holding the whole assembly captive between smaller bearings?

But, everyone who is anyone knows the real future of differential swerve lies in the use of hypoid gearsets…

Actually, I already put a thrust bearing in there that goes around the versa key spacer, and I was thinking that this was just the swerve module part of the swerve so to avoid having any electronics on the actual module, and in extension any cables that could get tangled, that the encoder would be somewhere geared on the other side of the motor’s pinion gear.
Note: I have no idea what azimuth is, so I may have misinterpreted your comment

This is super cool! Very very impressive stuff. What’s the ratio for turning the module though? I feel like this could become uncontrollable at high speeds.

I was worried about that too, the turning ratio would be 12:72, which is OK I would say, but is kind of borderline on where it might not be enough when it gets under load. What do you guys think?

Your are correct in your assumption, azimuth refers to the angle of the wheel in relation to the frame of the module. You will meed to measure that, this can be done with a large spur gear that is coaxial with the azimuth angle of the module, or if you are using thunder hex (or drilling your own through-holes) you can drop a rod through it to measure it without having to worry about wire wrap or sliprings.

12:72 would be like 900 RPM off a CIM, or 3,200 RPM off a 775pro. That’s around ten times faster than other teams rotate their modules, so it would be pretty difficult to control I think.
Could you maybe do a gear down and then gear back up at the wheel?

This RPM calc isn’t accounting for initial reduction in the differential and running one motor forward and the other in reverse. Since it is differential swerve, so for a 775 pro: 18,730RPM *2 = 37,460 -> 37,460/6 = ~6,243 free-spin RPM azimuth change, this can be mitigated with minimal losses by slowing down your inputs (i.e. some versaplanetaries, 10:1 or 12:1 may be a decent place to start, but you will probably find yourself looking at 20:1 or greater))

Also there was a long debate about the role of carpet friction and wheel width in the previous linked threads.

This design is well suited for a gear down then back up, you should defiantly look into this. An option for in axle gearing is to totally abuse a planetary gear-set by holding the planet-carrier stationary… not ideal, nor COTS (seriously don’t do this, I think I talk about it in the previously linked threads)

** this post in no way was meant to be condescending

ok, so hold on. I might be losing track of what’s going on here, but as far as I can tell, the motors when rotating the whole module are turning in the same direction, and since they are mini CIMs the stall torque is 12.4 inch lbs and that is geared 12:72 initially so the torque should be divided by six, making it 2.07 ish lbs on the wheel itself which since they are 2 inches wide is actually exactly 2.07 inches since it’s one inch from the center. I have no idea whether or not that is enough torque, fun to think about though, I have a feeling it isn’t but if someone wants to come in and prove that with some fancy physics then that’d be pretty cool.

ok hold on a minute. So as far as I can tell, a mini CIM according to vex has a torque of 12.4 lb-in * 2 for 2 motors which means that since it is geared down by 12:72 in the input that it has a torque of 148.8 lb-in at the wheel, and since the wheel is only one inch from the center that it can exert 148.8 lbs of force at the edge of the wheel. I probably made an error somewhere in that assumption, but hey i haven’t taken physics yet so gimme a break. If someone who has a better understanding of physics wants to tell me why this isn’t true that would be great. I tried to make that as humble as possible, I really am hoping to learn something.

ok, so hold on. I’m not sure that I’m right about this, and also I’m not sure how to use chief delphi so this might be like the third time im saying this but here I go anyway. I’m not sure that I’m still following this conversation, I mean so ok the input is 12:72 on the pivot of the wheel, if a mini CIM has a stall torque of 12.4 lb-in and is beaing geared down by a factor of 6 then it should have 74.4 lb-in and then * 2 since there are two motors so 148.8 lb-in. Since the wheel is 2 inches wide and is pivoting around its center then it should be pushing the side with 148.8 lbs right? That sounds like enough to me, I’m not sure about any of that though, I haven’t taken physics yet so I probably messed up somewhere and am gonna look kinda dumb, but please if someone knows where I went wrong on this I would love to learn.

I really like this design. It’s easier to do with cots parts than my original idea. Like skyehawk mentioned though, you’re likely going to need to speed up the wheel bearing after the differential so that you can slow down the steering ratio.

Can you post a picture showing the bearings which support the rotating frame?

This is literaly playing with the bevel gear ratio, steering ratio, and the final drive ratio though. Simply gear selection, nothing crazy. See if you can tweak the steering ratio to something like 8:96, and get a 1:2 ratio on the bevels or a 1:2 on the final gearset (or a combination thereof “undoing” what you did with the steering ratio). This will result in very similar final wheel speed with better steering control.

Happy CADing :slight_smile:

I’m not sure which bearings you mean. Unless I forgot something (which is totally likely) then I think that the only two bearings not shown here are the ones that would be in the box that this is mounted on.

So I think that I am missing something here. As far as I can tell the torque on the wheel pivoting seems fine, If the stall torque of a mini CIM is 12.4 lb-in and the gearing ratio for the pivot is 12:72 then there should be 74.4 lb-in on the wheel per motor, and there are two of them so 148.8 lb-in total. I am probably doing some calculation wrong or something, but if not then 148.8 lb-in seems good enough to pivot a wheel? Please correct me where I am wrong, I haevn’t taken physics and would love to learn something new.

Nuclearnerd most likley means all bearings that are in contact w/ the frame. I.e. the thrust bearing (shown) and the other bearings that take the radial loading of the module in contact with the frame.

It’s not about torque, it’s managing the steering ratio. Ill ink up your screenshot later to point out what I mean. Can you post top, side, and bottom views? (And include the input motor pinion gears please)

Why not leave the bevels as is and swap the two gears that make up the final reduction? Then you could add a 3:1 reduction right at the beginning, which for a minimum would result in a ~330rpm module rotation speed at free speed- which is more than reasonable. Or 775s on a 9:1 VP.

The problem isn’t torque, it’s controllability. The slower your module rotates the better controllability it will have. Otherwise it’ll be too touchy on the controls.