My transmission design for the Mini Combat Robot uses large servo gears. Unfortunately the output from these gears is a spline shaft. I had to come up with a way to easily adapt to the spline without making a sketchy connection with the servo horns that are meant for those servo gears. My first technique for making a servo spline can be done with a milling machine. It's a fairly straight forward and doesn't require special tools.
I put a "blank" shaft into a collet block. The collet block isn't required, however holding a round part vertically in a vise can be difficult to align. It also has a good chance of slipping which could break tools and ruin the part. The first thing I did was drill a set of starter holes. I used a small carbide ball end mill because it was the only tool that could make a mark smaller than the drill bit I wanted to use. Each hole corresponds to one of the teeth in the spline. I designed the holes so the outer edge would meet up with the tip of each spline tooth.
Once I made all of the starter dents, I proceeded to use the final size drill bit. Each hole was very close, but none of the holes intersected. If the holes intersect the drill bit will likely drift and break. The final step was to mill out the center. Milling out the center creates the inner part of the spline. It is important to design the geometry such that the leftover wall between the drilled holes fits between the spline teeth. I simply plunged and endmill down to the desired depth and let it swirl around to the correct diameter. This opened all of the holes drilled to the center.
This is the final shaft. The part fit snugly on the spline and didn't seem to damage the spline even under loading conditions. I used this part on the Mini Combat Robot until a design iteration forced me to a 3D printed design (I no longer had access to a mill). Any mill with CNC or even a digital readout can produce splined holes.
This is a 3D Printed replacement for the metal adapter. I needed a different pulley, but I couldn't use the metal spline shaft for the upgraded design. I decided to 3D print an adapter instead. I used the same geometry as the metal spline and simply printed a new adapter. It also slipped right on and worked first try.
Here is the 3D printed servo adapter as well as a splined shaft that copied the original servo spline. I doubt an FDM type 3D printer could produce the details required for this spline to work, so I'm glad I went with the SLA type 3D printer (Form1+). Making giant servo splines led me to test miniature servo splines.
The first part to my process to make a servo spline is getting a picture of the spline itself. I use this picture and one reference dimension (the outside diameter of the spline) to trace the spline profile. This seems to be pretty reliable and is able to get details that my calipers can't measure.
Here is a screen shot from the CAD I used for the servo spline. I get the spline dimensions by tracing the profile that comes from the drawing. It is surprisingly fast to CAD this way. The camera image reveals a lot of details that my measuring instruments won't capture.
Here is a servo spline made for a micro size servo (9g servo). The printer was able to handle the small details required to make the spline.
The gear fit perfectly onto the servo first try. I attempted to strip the spline, however I only managed to cut myself with the 3D printed gear teeth. I was unable to get the spline to skip on the servo.
For future projects using large servos I will attempt to make more metal shafts and splines. I find them more durable than the 3D printed parts. I also know the servo gears will strip before the metal spline slips. The 3D printed splines for smaller servos are too awesome. I'm still amazed the printer can handle details like that. The cool part is these splines can be put into any 3D printed part. It doesn't matter whether the part is round, square, or even a hexapod leg!