Vex Differentials Explained

This is the vex differential my team used this year. It has been developed to have very minimal losses compared to most implementations. It uses custom bearing blocks and a specific type of differential to allow for very minimal losses to friction while driving and tilting.

If you are interested in learning even more here are some resources



Feel free to ask any questions or comment…

46 Likes

If you are interested in some of the math behind differentials…


differential2
Desmos Graph

Graph lines
    input 1:    x-axis (-100 to 100)
    input 2:    time (-100 to 100)
    
    green:      total speed
    
    blue:       utilization of output 1
    purple:     utilization of output 2
    
    red:        output 1 speed (utilization of output 1 scaled by total power)
    orange:     output 2 speed (utilization of output 2 scaled by total power)
    

This graph represents resulting speed of the outputs based on the input speeds. In the gif one of the inputs goes from negative full speed to positive full speed along the x-axis and the other input cycles through negative full speed to positive full speed over time, thus the animated graph. To see the exact equations look at the desmos graph (everything there is labeled).


If you want to program differntials it is very simple, if you just need the basics…

//VexCode example
FrontRight.spin(vex::forward, drive.rightPower + tilter.power, vex::percent);
BackRight.spin(vex::forward,  drive.rightPower - tilter.power, vex::percent);

FrontLeft.spin(vex::forward,  drive.leftPower + tilter.power, vex::percent);
BackLeft.spin(vex::forward,   drive.leftPower - tilter.power, vex::percent);

The design has two differentials, with the second outputs linked so, there three different values (drive.rightPower, drive.leftPower, tilter.power). For each differential one of the values you add to both motor and one of the values to add to one motor and subtract from the other.

11 Likes

WOW. That is impressive. You have taken VEX and V5 further than I ever imagined. I appreciate the detailed look under the hood of your robot. The VEX community is better off because of your effort to share and explain. Thank you.

  • Bob Mimlitch
    Co-founder VEX Robotics
    Chief Technology Officer at IFI
41 Likes

Wow. I’ve watched that video five times now and I just can’t get over how ridiculously complex that is. Good work.

7 Likes

Did you guys have any issues with motor burn outs? How long could the robot run before the motors needed a break?

1 Like

They would only start overheating after like a couple of hours of heavy practice. The only similar problem was wires losing connecting, since the cores make multiple revolutions, they get pulled around. The solution for that was securing them/holding them on each end before the port. On the motor side we just rubber banded the wire to the motor before the port connection and fix that problem.

2 Likes

Couple hours? Not of continuous use though right? I really just meant running the robot in driver practice for say 5 minutes, would they burn out before that time, last longer? How long can you continuously drive, in the context of a match, before they overheat?

1 Like

And the, the wires is an interesting issue, with an interesting fix. The bands on the motors was smart. How did you secure from the brain, or was there not an issue on that end?

1 Like

It’s just like having a normal 4 motor drive. I don’t think we ever had problems with overheating during a completions. As for the tilter, most teams have one motor, this is 4 motors with half the typical toqure ratio (2x speed ratio).

There was plenty of extra wire and room on that end. They were just bunched up and held in place, which was mainly just to hold the extra wire. The problem on the motor end is very little room.

2 Likes

Ok, cool, thanks. I’ve been doing some CAD for some transmissions and was just curious how they typically held up. The fix for the wire connection is impressive, very innovative. This is a really cool idea, thanks for sharing some info about it. I may borrow some of these ideas in the future.

1 Like

Please, feel free to use ideas from this design. Also if you are designing something similar, the most important thing with differential is managing the friction.

1 Like

Yeah, hopefully some grease will help to manage some of the friction. Besides the “core” gears resisting motion, did you have any other areas where friction was an issue, or needed to use grease?

1 Like

Besides the special bearings/rotating cores, everything’s just simple basic transition; just follow good build practices, like use bearing block, make sure their aligned. Obviously also remember that each gear/axle add friction. Grease can’t hurt wherever thing slide passed each other (turning axles).

1 Like

Okay, thanks for all of your help; One last thing, hopefully, would you recommend all high strength gears? I was planning to use all high strength gears, but are there any instances where regular gears might be better?

2 Likes

Cool Video. I have a couple remarks/questions in the context of the game.

4 motors for a tilter mechanism seems kinda overkill. I understand that this is how your tilter mechanism works, but it just seems like a bit of a waste since other teams are getting by with 1. As well as this, if I understand your implementation and code correctly, there would be significant power loss while using both subsystems together (This action is rare in the game, but useful in certain situations). Likewise, if one subsystem got locked up for some reason, the other would receive power, which might lead to some unintended side effects (ex. Being pinned on the perimeter locks the drive, leading to the tilter being powered and a potential loss of cubes. The 2nd issue can’t really be solved due to the limitations of the differential, but the design could be modified to where you have 2 motors directly driven to your drive and the other 2 motors on the differential to the tilter with a hard-mounted pivotable gear (I don’t know if I’m explaining this correctly sorry) which should act in the same way as your system. You still get a power bonus of 2 motors on the tilter (everyone else has 1) while also having direct power on your drive at all times, helping out in certain defensive situations and helping with power loss.

My second remark is a small one, albeit hopefully noteworthy. Your custom bearings was a drilled out 393 internal motor gear. Wouldn’t using those gears be illegal since you are using V5 motors on the robot? The gears are included in the motors and only the turbo variant are sold elsewhere. There have been rulings on using servo motor clutches in the past, but I do not remember any direct rulings about using the internal gears of 393 motors in a non-intended way in a different control system (If there is a ruling on this someone please link it to me).

Don’t take this as me hating on your build. I really think your build is cool and the video you made on it is really helpful for people who want to get into making differentials. I just had a few critiques on it that could potentially make it better in a competitive sense.

5 Likes

You have a valid point on the legality of the 393 motor gears. I’m not sure about that. However, if the drive is locked, trying to spin the wheels will not power the tilter.

2 Likes

The only difference is thin gears are smaller and high strength gears are strong, so I would use them based on your design limitations.

It was the only system that we could link with the drive, though it did also serves a purpose. It isn’t really showed in the video but the arms are mounted on the tilter, so to score in the high tower we lifted the arm and tilter. That being said, 4 motors did gives us much more power than we needed.

Yes, that is true, the losses are actual illustrated in that post and the desmos link. This was never a problem though since we typically don’t use both systems at once and since the tilter typically isn’t powered to full speed.

For example, if you powered the drive at 75% and the tilter at 25% you would have much less losses. Because there are 4 motor and it is geared to be fast when we do need to tilt and drive (which is rare) we do it with small loses.

gg

The tilter would not be powered because of this. The motors ‘fight’ each other when it comes to turning the cores. If the drive couldn’t move they would still put all the force toward the drive. Only if the motor started spinning in opposite direction would the cores turn and the tilter move. This could theoretically happen if one of the motor overheated quicker than the other, but other than that this behavior wouldn’t happen.

We asked the question this and it was the same as the past two years…
https://www.robotevents.com/VRC/2019-2020/QA/490

8 Likes

Hi! Late to the party but we used a similar concept but we switched it up a bit and did a tilter/ lift combo. If anyone‘s interested I can upload some photos and or video

10 Likes

Please post, it’s always great to have more reference designs.

6 Likes

Yes, I would love to see it!

2 Likes