This drive-base was developed by FRC 2468 Team Appreciate with sponsorship and support from Vex Robotics. The design is almost completely built using VexPro parts and shows just how versatile the VersaFrame system can be.
Team 2468 also developed a build instruction document using Vex Robotics’s format. The document is available at vexrobotics.com
A documentation of the entire development process will be available on FRC2468.org in the resources section. The CAD of the module is already available for download from the same section.
Without further ado… here’s the first reveal video of 2016!
Do you maybe have a couple of up close pictures, of video showing the different components? Love your reveal video but it would useful to be able to see the individual components without having to search frame by frame
Wow! Can you specify which parts are custom and how those parts would be made? I want to know how close you can get to a swerve using Vexpro COTS items as much as possible.
I see 2 ma3 absolute encoders on the module rotation. Is it just to provide a second choice of mounting, or does the use of 2 encoders help the accuracy/consistency/something? The ma3 encoder from Andymark is $45 each, and I find it hard to justify $180 extra if every other swerve uses only one encoder for position.
Love the amount of COTS Vex stuff! While is is fun to draw custom CNCed stuff, it is much harder to work within the constraints of COTS (especially for teams like mine who no longer have CNC access) and low cost tools (drill press, hand tools)
Suggestion - Make PDFs of the 3 big SLDDRW files and put the PDF in your ZIP file (those 3 combined are ~240 MB).
Actually, the left encoder (the one on the BAG output) is the steering encoder, while the right encoder (the one on the drive axle) is the drive encoder. Of course, drive encoders are optional with swerve, but after living through last season without drive encoders on swerve for autonomous, we thought it was important to include it.
There are only a couple of truly custom parts - most of the parts are machined from COTS parts. While designing, we intentionally avoided any parts that would require the use of the CNC, and so the most complex tools required for construction are a mill and a lathe.
To answer your question - the U gusset holding the wheel module together is custom, and the encoder mounts as well as the encoder coupler are all 3D-printed. There is a support tube around the drive shaft machined from a McMaster-Carr part, and a support block as well. If memory serves, everything else is machined from COTS parts.
A couple of STEP files would be greatly appreciated. What version of SolidWorks were these done in? I can’t open in Inventor 2016, which usually opens most SolidWorks files fine.
Will all machined parts be available for purchase?
I see only a few that require machining (some are hard to tell if they are tightly toleranced diameters or clearance holes). For example the side C channel (Item 1) has a 1.125 hole, but also has face bearing gussets to support the bearings inside the upright. Is that a clearance hole in the C channel or is it meant to be tightly toleranced and support the bearing?
Great use of the 3/8 hex gear as a VersaHub (didn’t know they don’t have a 3/8 hex VersaHub).
Still can’t figure out the square cutout on the main 2x1 tube
Very neat. I’m looking at the CAD right now, and a lot of stuff is very well incorporated. The weight seems to be around 6.7lbs after I went through and checked the weights on the motors and stuff, although I’m sure I missed a lot. ~7lbs would be a closer estimate I think.
Cool stuff:
Clamping bearing block for rotation
8mm to hex adapter for a pulley instead of gear reduction
Encoder mount doubles as a spacer
Use of versatube for the top of the module
Bearing gussets for spacing out gears in module
5a. Supported by C-channel
5b. The only precise gear-thing on the whole module
No need for precision except on a few parts
5c. Mostly drill press and chopsaw work, and not that much of either
Some possible improvements:
To make it more feasible for teams without a mill/lathe (or those who want to assemble faster), a few parts screw things up: the module rotation/support tube, and the block that mounts the aforementioned to the module. Both are relatively precise parts unfortunately, and I think it would be possible to convert it to low-precision and remove them.
1a. Why the custom U-gusset instead of two right-angle gussets on each side?
The encoder mounts are cool, but 3D printers are expensive. It seems to be possible to replace them with simpler pieces.
Encoder-shaft coupler on the versaplanetary can be removed and replaced with a versaplanetary encoder. This also removes the MA3, so it doesn’t cost too much extra.
The square slot in the tube. I think like this can just be a 1.25" diameter hole, or even 1.375" to allow for more tensioning.
The slot for the bearing tensioner for the belt. You already have a tensioner with a WCP cam. According to SDP-SI’s belt calculator you don’t need the tensioner to achieve good contact with the 18t pulley anyway; what pushed you to have it?
5/16-18 taps on the bottom shaft instead of 1/4-20 (thunderhex makes the latter easy) and the hole running all the way through the 3/8" shaft on the upper shaft of the module.
Bronze thrust bearings instead of roller. A completely personal preference, but they only cost a few dollars more so I like the tradeoff.
Use of a 48t gear as a faux versahub for the timing belt pulley. I had to do this once and did not like it. There has to be a better way…
The machined parts will not be available for purchase. This project was developed as an “example of using Vex parts” like the VersaFrame Chassis models Vex shows on their homepage. All the CAD and machining drawings are online, and the module was designed so that a team with a manual mill, lathe, drill press, chop/miter saw, and a 3D printer could build it on their own.
For the most part, the tolerance is pretty loose, within 0.015" should be fine.
You picked a very interesting example with the question about the clearance v. tight-tolerance hole. The face bearing mount was attached to help with the machining process as much as to be the extra support. Although not critical, the bearing holes in the C-channels should come out easily within a tight tolerance if you machine smartly.
For the face bearing gusset, the machining operation should be:
Attach gusset to the C-Channel by match drilling and putting screws in the corners. (I suggest milling these holes precisely on one of the C-channels and then match drilling the others with that one)
Put 3/8"ID bearings in the large holes in the gusset so that the bearings can’t slide around sideways. At this point there still wouldn’t be a hole in the C-Channel for the bearings.
Use a transfer punch through the hole in the bearings so that you now know exactly where the centers of the bearings would be on the C-channel.
Take the gusset off and drill out the holes in the punched locations.
Assemble, and the holes should match up!
So the reasoning for using the 3/8" gear was that Vex only sells hubs that are supposed to be broached by the teams to the size they need. We quickly realized that many of the teams wouldn’t have an expensive 3/8" Hex broach just lying around in their shops. Since it’s way cheaper to buy the gears with the pattern than buy a 3/8" hex broach for just the modules, we decided to go ahead and use the gears as hubs.
The square cutout is clearance for the tube that extends through the VersaBlock. The large area allows plenty of room for machining tolerances and tensioning the system by moving the VersaBlock.
The main problem with the right-angle gussets from Vex was that we didn’t feel they were quite long enough for supporting the module. The U-gusset is “taller” and therefore the screws can be installed further apart and make the structure significantly more rigid. The U-gusset can still be drilled out by hand if you download the drawing from Vex and paste it onto sheet metal.
We might make that change to the design in the future. The current design doesn’t have the VersaPlanetary encoder because we developed the VersaSwerve system before they were released.
The main reason was because Vex didn’t have the length of the belt that would work perfectly. The current belt is a little on the long side, and we had to account for that with the tensioner. One size shorter, and the CIM motor would have been too close to the wheel module.