Two 3D printed chain drive pulleys

I was mucking around with the Mine Trolley and associated mine trucks the other day, and suddenly thought how great it would be to do some Go-Motion with it. Of course I could just drag it along with a bit of fine nylon, but where would the technical challenge be in that? So I came up with the idea of putting a DC motor, battery and arduino controller in a new version of the Mine Trolley. Of course driving just one axle would be a bit too simple so I was keen to drive all three axles. A rubber band and pulleys would be too stretchy, but I had a fine chain that should work well if it had a suitable set of pulleys.

I had a look on thingiverse and it appeared that nobody else had made a pulley model for a classic chain link chain. So, after scratching around with a pencil to work out what parameters I needed, I jumped on OpenSCAD and came up with two parametric models. One has a neck, holes and nut slots for screwing it onto a shaft while the other is just a disk with the chain recesses which can be more easily adapted to other pulley body designs. Both are included here.

The diagram below describes the main variables required to produce a model that will fit a chain of any size using these OpenSCAD models.

Chain parameters to measure
Click on the image to get a higher resolution view.

Leff and α are both calculated so you don’t need to measure them. Leff is the effective length of the chain link taking into account the overlap between each link on either side. α is the angle made between adjacent links as they go around the perimeter of the pulley. Together with the number of links around the pulley, these two calculated variables are used to calculate the pitch circle diameter of the pulley.

The Parameters Used in the Models

The chain size and number of link pairs determines the size of the pulley. So the important variables to fiddle with are;

Llength: This is the outside length dimension of a single link.
Lwidth: This is the outside width dimension of a single link.
Lthickness: This is the diameter of the link “wire”.

N: The number of chain link pairs around the pulley. Please note this is pairs of links not the number of single links.

The pulley neck size is controlled by the following parameters;

Pwidth: Width of the pulley main drum which the chain recesses are cut into.
PstemD: This is the diameter of the pulley attachment neck. There is nothing to stop you putting dimensions in here that can’t accommodate the retaining screw or the shaft. We leave that to you, the user, to figure something sensible.
PneckL: This is the desired neck length.

AxleD: This is the axle diameter.
ScrewD: This is the retaining screw diameter.

There are a bunch of other parameters that you may wish to tweak too;

Ptol: Is the printing tolerance. It is used to provide a bit of space around the chain profile so that chain will fit into the recess despite a bit of spread from the extruded plastic.
PtolThk: This is a printing allowance for the “radially” orientated link thickness. This allows a bit of extra on either side of the link slot so any sagging of the printed filament can be easily removed or at least won’t interfere with the link sliding into the slot.
Wclr: On either side of the tangential link is a cutout slot. This parameter just controls the size of this slot.

CutD:There are some very stylish decorative holes in the end of the pulley. This parameter controls the diameter of these.
CutN: This controls the number of these extremely stylish holes.

The chain I am using is quite small with links that are 4mm long on their major dimension. I haven’t tried printing a version for a larger chain but I estimate it should print more tidily than this small size and also work better because the printed shapes will be a bit more clearly defined due to the print resolution not being a limiting factor.

The Models

Firstly, the models are available on Thingiverse where I have set them up to work with their Customiser. The links are included below.

Chainlink Pulley OpenSCAD Rendering

You can download the script from here: ChainLink_Drive_Pulleyv0.scad
or use it on the Thingiverse Customiser here: Parametric Chain Link Drive Pulley - Thingiverse

Chainlink Pulley Disk Version - OpenSCAD Rendering

You can download the script from here: ChainLink_Drive_PulleyBlankv0.scad
or use it on the Thingiverse Customiser here: Parametric Chain Link Drive Disk - Thingiverse


Creative Commons by-sa

This design by Hamish Trolove is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License.