Jump to content
Ultimaker Community of 3D Printing Experts
IRobertI

Any idiots guides to modelling threads?

Recommended Posts

This is one of those things that has bugged me for the longest time. I can't bloody model proper threads... And every time I try to learn (like for the past hour) I get incredibly frustrated and quit trying again for a few months.

So, does anyone have a very, and let me be clear, VERY, clear and straight forward step by step guide for this? I know about the wiki entry:

https://en.wikipedia.org/wiki/ISO_metric_screw_thread

It aint helping. It doesn't make sense to me that the internal and external threads are in contact in the pic, there should be a gap, no?

I've watched a few youtube vids on the subject but all the humming and hawing drives me insane. Some people should not be allowed to post vids... The closest to a decent video I've seen is

But for some reason I can't get the blocks to work afterwards and the guy in the video is another of those humming and hawing people that drives me nuts. "oops, what happened here, hmmm, oh, it was this *click click*". Can you tell I'm frustrated?

I'm using Solidworks which for some reason does not have any easy way to do this semi-automatically which kind of blows my mind.

Normally I would just make up threads and that works fine if you're just using it for something you made yourself, but now I need it to actually be correct.

There you go, a peek into the rambling mind of IRobertI in full frustration mode. I hope you enjoy me making a fool of myself :)

edit: Wait... haven't I posted a thread like this before? If so, I blame... shit, I dunno. Rage induced amnesia? yeah, let's go with that.

Edited by Guest

Share this post


Link to post
Share on other sites

And every time I try to learn (like for the past hour) I get incredibly frustrated and quit trying again for a few months.

 

The same here... it always ends up between 72_EmoticonsHDcom.pngand 70_EmoticonsHDcom.png

My solution: use the Poor man's openscad screw library or the OpenSCAD threads library - generate the needed threads with OpenScad, export in stl-format, import and use it in FreeCad...

Good enough for me.

bolt.png

  • Like 2

Share this post


Link to post
Share on other sites

Solidworks has a library of just about every thread there is but you have to pay for it; maybe if you have the top level of software it might come free?

Not sure how you create yours but e.g. for a threaded bolt we create a helix of appropriate dimensions, which is a pathway and then extrude a triangle along that pathway.

  • Like 1

Share this post


Link to post
Share on other sites

Ok, I've been looking over this some more and I guess the actual problem I'm having is this. Let's say you're making an M3 screw and nut. If I were to go by the numbers given by the wiki I would get threads that have absolutely no clearance between them. If you play around with any screw and nut you know that there is some tolerances involved.

If I measure an M3 screw here on my desk for example, it's actually 2.85mm. Same for a nut, the internal diameter is larger than 3mm. This is of course needed to make them work properly. So I guess what I need to know is how I calculate that tolerance?

Maybe I should change the title as it has more to do with the numbers than the actual modelling of the threads (I know how to do that).

Am I making any sense here? :p

Edited by Guest

Share this post


Link to post
Share on other sites

Ok, I've been looking over this some more and I guess the actual problem I'm having is this. Let's say you're making an M3 screw and nut. If I were to go by the numbers given by the wiki I would get threads that have absolutely no clearance between them. If you play around with any screw and nut you know that there is some tolerances involved.

If I measure an M3 screw here on my desk for example, it's actually 2.85mm. Same for a nut, the internal diameter is larger than 3mm. This is of course needed to make them work properly. So I guess what I need to know is how I calculate that tolerance?

Maybe I should change the title as it has more to do with the numbers than the actual modelling of the threads (I know how to do that).

Am I making any sense here? :p

 

Yes you are making sense.. Here's how I've been doing it, works most of the time, but sometimes I need to add 0.5mm onto "D" for the internal thread depending on the pitch and filament used

For External Thread (this example is 8mmx1.5)...

5a33168319893_ExternalThread.thumb.jpg.c71c66e037926c45916228ef01b3b43c.jpg

My equations as follows (exactly how I write them in solidworks):

D = 8 (used later for calculating the diameter of the bolt/shaft etc..)

P = 1.5

H = cos ( 30 ) * "P"

A = "H" / 8

B = "H" / 4

For the diamater of the bolt/shaft (what you are asking):

"D" - ( "H" / 8 )

For Internal Thread (example also 8mmx1.5)

5a3316832c869_InternalThread.thumb.jpg.398df9c830d06ef0c0dff5345a9a0de2.jpg

Equations are the same except for calculating the diameter of the hole, which is:

"D" - ( 1.082532 * "P* )

These work with eachother as well as with real fasteners.

Also note, I'm using the swept cut method (not sure what other methods there are)

5a33168319893_ExternalThread.thumb.jpg.c71c66e037926c45916228ef01b3b43c.jpg

5a3316832c869_InternalThread.thumb.jpg.398df9c830d06ef0c0dff5345a9a0de2.jpg

Edited by Guest
  • Like 1

Share this post


Link to post
Share on other sites

Yup I think @JohnK 's figure of 0.5mm added to ID is a good starting point. We have certainly used less, but it depends and some experimentation will almost certainly be required. We have not done enough to get an exact figure for various filaments, we tend to use "inserts for plastic" these days where possible.

Share this post


Link to post
Share on other sites

The clearance you are looking for is a deviation from the nominal screw diameter. What you need to do is look up the actual dimensions for the thread. These standards are well established and they are freely available.

You can find them in a lot of places such as here. mdmetric.com thread chart

Also you'll see the thread form is not a simple equilateral triangle.

Any other arbitrary corrections factors will be fudge at best, and will not scale.

Share this post


Link to post
Share on other sites

My solution: use the Poor man's openscad screw library or the OpenSCAD threads library - generate the needed threads with OpenScad, export in stl-format, import and use it in FreeCad...

Good enough for me.

 

I also sometimes use openscad, for stuff like gears, but it's easier to export to .step (vs STL) so you can make better adjustments in most other software. Read here how;

https://forum.lulzbot.com/viewtopic.php?t=243

Share this post


Link to post
Share on other sites

 

Ok, I've been looking over this some more and I guess the actual problem I'm having is this. Let's say you're making an M3 screw and nut. If I were to go by the numbers given by the wiki I would get threads that have absolutely no clearance between them. If you play around with any screw and nut you know that there is some tolerances involved.

......

These work with eachother as well as with real fasteners.

Also note, I'm using the swept cut method (not sure what other methods there are)

 

That´s also the way I usually design screws for 3D-print in SolidWorks - unfortunately a workaround. I need it seldom so I had no time up to now to make a parametrized library object...

Share this post


Link to post
Share on other sites

I found 0.5 clr on all faces of the thread profile works pretty good on my UM2. I dont follow any particular screw standard,i just draw my own (as all standards are based on steel tolerances, not plastic) and make sure there is 0.5 clr on everything.

I love my UM but if your trying to print M3 threads on your UM i would say this is the wrong tool for the job.

Share this post


Link to post
Share on other sites

For simple modelling/printing threads there is a automated way. Do to it with Autodesk Inventor 2016 (or below) and a third party plugin named coolOrange threadModeler:

https://apps.autodesk.com/INVNTOR/en/Detail/Index?id=2540506896683021779

But you need to set a special windows variable to make it work.

http://forums.autodesk.com/t5/inventor-general-discussion/inventor-2016-hole-feature-bug/m-p/5622185#M545741

I've tested this with a custom M10 bolt, printed in high quality. M10 is doable but not perfect. So greater than M10 should be fine.

Inventor.thumb.png.2e458c0b122b97165d8a120ddc145edd.png

cura.thumb.png.96282d70b0a5439751224e10da7e9b01.png

print.thumb.JPG.04c0d8eb824112f7591fad8df0a97d05.JPG

Inventor.thumb.png.2e458c0b122b97165d8a120ddc145edd.png

cura.thumb.png.96282d70b0a5439751224e10da7e9b01.png

print.thumb.JPG.04c0d8eb824112f7591fad8df0a97d05.JPG

Share this post


Link to post
Share on other sites

 

Wow, pretty cool you can print the  M3

Not being funny these are standard parts for a reason.  

Surely its easier (and cheaper) just to buy some?:p

 

Oh of course, it was more for the challenge.

It's nice to be able to print a model and print every part of it, including the screws :)

 

Plus the printed ones are not as strong, even in ABS. But like you say, it's for the challenge and the fun of an all 3D printed project, even the screws.

As a side thought, in electronics sometimes you don't want conductive fasteners and so plastic or nylon ones are a better choice. So 3D printing them can be useful in some contexts too.

Though now, I think we have kind of hijacked Robert's thread and we should get back on topic. Sorry Robert! :D

Share this post


Link to post
Share on other sites

Hello Robert,

You did not mention the purpose of the thread: does it absolutely have to be a 3D-printed thread? Or must it be a connection that can be disassembled? And would using standard nuts and bolts also be acceptable?

I tried designing threads too, but due to the inaccuracies and tolerances in the printing process, I gave up. I had to post-process each thread with thread-cutting tools anyway to remove all blobs, strings, hairs,..., and to make it fit.

Thread cutting in PLA is quite difficult due to the low glass transition temp. The threads tended to melt, after which I could not remove my cutting tools anymore, without breaking the part. Even when going very slow, manually, and with good lubrication. Also, the threads proved to be very weak and to wear out very fast. Lightly tightening an M4 in PLA a few times was enough to destroy it.

So I switched to standard nylon nuts and bolts instead.

In one part I design a hex hole, in which the nut fits perfectly, and is recessed. This hex shape prevents the nut from turning around. Usually I also design-in a sort of retention clip to prevent the nut from falling out when there is no bolt in it.

In the other part I design a round hole, in which the bolt head fits, also recessed.

And then I only need straight holes with 0.5mm clearance. After printing, I quickly go through the holes with a simple drill, to clean out the blobs and strings.

And that's it.

This gives a nice connection, with nice recessed standard heads and nuts, but with far less work and problems than designing and 3D-printing custom threads. The nylon screws (or whatever plastic you want) are stronger than the ones you could ever print. And they always fit out of the box.

This alternative requires far less design work, makes editing the model faster (requires less CPU and graphics power), requires far less post-processing work, and gives a much stronger connection.

I know it's not an answer to your question, but could this be an option for your design too?

Share this post


Link to post
Share on other sites

One observation I just thought of: How important is metric compatibility?

If you just want threads, and you don't need a standard like metric, then I believe you can just use 45 degree equilateral triangles, spiraled up. Give a 0.2 or so arbitrary tolerance from nut to bolt, and the your done. Similar to the previously mentioned Poor Man's.

In other words, you can make it easier on yourself and just choose values that work for you.

It is trying to adhere to the metric standard that makes threading hard to model, I suggest.

Then again, if you are trying to understand metric, specifically, then that is a different story. :)

Anyway, just a thought. Hope it helps.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

Welcome to the Ultimaker Community of 3D printing experts. Visit the following links to read more about our Terms of Use or our Privacy Policy. Thank you!