Let's Make Robots! | RobotShop

Modelling a Servo Spline

I have wanted to design my own servo arms for my robots without the need to attach the servo horns to them. With a 3D printer available I wondered if it was possible to manufacture hubs for the spline on the servo shaft. The problem was to know the geometry of the spline. I am not the only one to be frustrated about this it seems when I google on "SG-90 spline". Many have asked the question on forums but there hasn't been any clear answers on how the geometry of the splines look.

I wanted to capture a good quality image of the spline. I saw that there are USB microscopes for reasonable prices but didn't want to but one for only this project. What about the camera on my smart phone? I took some pictures of the servo from close distance with a steady hand being as vertical as possible. It is difficult to get a sharp image from a vertical position but after som trials it succeeded. It looked like this:

Then what? I need to export the image to my CAD program. I use Fusion 360 for my designs. It has a feature "Attach Canvas". The picture was inserted as canvas. The next thing was to have it scaled in order to model the hub. With calipers I measured the outer diameter to be 4.90 mm. So the canvas was adjusted in size to fit to that diameter. By zooming like crazy I could model the splines. It seems that the teeth on the spline are of a round shape. By modeling two circular arcs, one outer and inner and constrain them to share tangents, I could replicate the shape aorund a tooth. I added circles for outer, inner diameter and the circle at which the two arcs meet.

The constraints for the sketch is shown below. There was some tweaking before I got a decent shape around one of the teeth. Then the shape should be repeated in a circular pattern. At that moment I learnt that there are 21 teeth on the spline. I was comvinced that it was 20, the result I always arrived at when counting them (and expecting an even number). 

And then the test. Is it possible to 3D print. The answer is Yes. I use an Ultimaker 2 at the local Makerspace where I am member. It produced decent prints that would fit onto the servo shaft with a little tight fit, like the nylon horns that follow with the servos. I never really tried to make several versions of the spline. I was half expecting to fail on my first attempt and do several prints and tweak some of the measures to get one that works. Now it happened to work the first time.

So, is the resolution of the printer really that good to make these very small splines? Well, at least the teeth can be clearly be seen on the printed parts and the splines work as intended. I used a standard nozzle of 0.4 mm diameter and plain PLA. Some of the arms I did cracked after some using. Maybe the fit is a little buit too tight, but on the other side there isn't much to play with to get a too loose fit instead (where the hub slips while under load). 3D printed PLA clearly has it's limits when it comes to strength.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Thanks for posting. I hate it when it works the first time. Sets my expectations too high for the next project.

You might notice my reply above that my new batch of servos did not work with my design. So now my expectations are back to normal. :)

You are right Staffan a good resolution 3d printer is the key factor here. with Otto DIY i learned couple of interesting observations would like to share using PLA too:

1. The orientation of printing is important, for example with the leg of otto have an orientation facing the bed which unfortunatelly gave me more trouble adjusting the tolerance; needs some supports for the flat part, with the feet did nt have that issue, but is important to clean it a little bit with a knife after printed. At the end put stronger fit (smaller size) for the leg

2. The spline design i did it using a 3d model from GrabCAD and so far works; but seems there are hundreds of manufactures of SG-90 servos that i have found differences in diameter up to 1mm! making it almost impossible to have an average of size and tolerance (some would have strong fit others will be loose, very few actually perfect fit)

3. Found out with the time the teeth start to dissapear and then completely lost attachment, so my recommendation is to have the strongest fit at the begining and then would loose until the perfect match. as you mention at the end.

4. A chamfer at the end help to put the servo hub in; if the tolerance is too tight.

 The 3d model is here you can check the skecth spline quite similar to yours http://www.123dapp.com/123D_Design/OTTO-DIY/5658659

Thanks for the post


Thank your for the comment. As you write proper orientation in the printer is important. That is really a "design for production" part one has to consider. I also noticed your second point when I received a new batch of SG-90 servos. The servo spline had a much smaller diameter so my hub had a way too loose fit. In the design where I intend to use these servos I will design limbs where I mount the servo horns instead. I have "killed my darling" in a way but on this design there is room for the horn.