Screw Library 3D Printer Model

Author: @
License: CC BY-SA
File formats: stl,scad
Download type: zip
Size:74.9KB

The file 'Screw Library 3D Printer Model' is (stl,scad) file type, size is 74.9KB.

Summary

This is the Thing page for the Screw Library I am working on. I could be talked into releasing it as Public Domain, but have left it as CC-BY-SA for now, at least until it's fully stabilized.

The latest code is available on GitHub here:

https://github.com/syvwlch/Thingiverse-Projects/tree/master/Threaded%20Library

Currently, the library allows you to create a threaded rod with a trapezoidal profile, like the Acme or metric lead screws that are so common in CNC machines.

The trapezoidThread module creates the rod along Z, centered in X and Y, but not in Z. Same logic as cylinders with center=false.

The parameters are the following:

length
// axial length of the threaded rod
// used to calculate how many turns to create
// the rod is NOT trimmed to this length!!!

pitch
// axial distance from crest to crest

pitchRadius
// radial distance from center to mid-profile

threadHeightToPitch
// ratio between profile height and pitch
// default value is 0.5

profileRatio
// ratio between raised profile and pitch
// default value is 0.5

threadAngle
// angle between the two faces of the thread, in degrees
// std value for Acme is 29 or for metric lead screw is 30
// default value is 30

RH
// true if thread winds clockwise along shaft
// i.e.follows the Right Hand Rule
// default value is true

clearance
// radial clearance, normalized to thread height
// default value is 0.1

backlash
// axial clearance, normalized to pitch
// default value is 0.1

stepsPerTurn
// number of facets to create per turn
// default value is 24

You can create a triangular profile thread by setting profileRatio to zero, but that is cumbersome. I will create a separate module for that and add it to this page, later.

UPDATE:

I have added a trapezoidThreadNegativeSpace module to create a negative space of a thread with the proper clearances to screw on, as long as you give it the same parameters. It can add two chamfered holes at the entries. It takes the following parameters on top of the ones needed for trapezoidThread:

length
// thickness of the part to be drilled out by this object

countersunk
// depth of the 45 degree chamfers, normalized to pitch
// default value is zero, no chamfer

I have also added a trapezoidNut module which uses the above negative space module to create a hexagonal lead nut with the right clearances to screw onto any thread that shares the same parameters. It takes the following additional parameters:

radius
// outer radius of the nut

LeadNut-Cut.stl 153.9KB
LeadNut_fixed.stl 64.7KB
LeadScrew-Cut.stl 188.1KB
LeadScrew_fixed.stl 90.7KB
Thread_Library.scad 11.1KB
Tread_Test.scad 2.0KB