discuss@lists.openscad.org

OpenSCAD general discussion Mailing-list

View all threads

How to introduce tolerance for threads in BOSL2?

RB
roald.baudoux@brutele.be
Tue, Dec 21, 2021 9:34 AM

Hello,

I am trying to use BOSL2 thread to create threads to screw some large cylinders together (imagine a bolt with a 300mm diameter), a bit like what you would find between a bottle and a cap.

How do I set some tolerance between them with the goal of FDM printing the parts?

I’ve set a smaller diameter for the inner cylinder with a gap of 0.2mm around it. But maybe the $slop variable could be used for that purpose? However I don’t understand how to use it.

Hello, I am trying to use BOSL2 thread to create threads to screw some large cylinders together (imagine a bolt with a 300mm diameter), a bit like what you would find between a bottle and a cap. How do I set some tolerance between them with the goal of FDM printing the parts? I’ve set a smaller diameter for the inner cylinder with a gap of 0.2mm around it. But maybe the $slop variable could be used for that purpose? However I don’t understand how to use it.
D
dpa
Tue, Dec 21, 2021 11:03 AM

You know the wiki? https://github.com/revarbat/BOSL2/wiki/threading.scad
For me it is all clear. Try changing $sloop with this example (sliced
thread):

include <BOSL2/std.scad>
include <BOSL2/threading.scad>
$slop = 0.1;
front_half(y=.1) back_half(y=-.1)
{
threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1);
threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1);
}
[image: Bildschirmfoto 2021-12-21 um 12.01.24.png]

Am Di., 21. Dez. 2021 um 10:34 Uhr schrieb roald.baudoux@brutele.be:

Hello,

I am trying to use BOSL2 thread to create threads to screw some large
cylinders together (imagine a bolt with a 300mm diameter), a bit like what
you would find between a bottle and a cap.

How do I set some tolerance between them with the goal of FDM printing the
parts?

I’ve set a smaller diameter for the inner cylinder with a gap of 0.2mm
around it. But maybe the $slop variable could be used for that purpose?
However I don’t understand how to use it.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

You know the wiki? https://github.com/revarbat/BOSL2/wiki/threading.scad For me it is all clear. Try changing $sloop with this example (sliced thread): include <BOSL2/std.scad> include <BOSL2/threading.scad> $slop = 0.1; front_half(y=.1) back_half(y=-.1) { threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1); threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1); } [image: Bildschirmfoto 2021-12-21 um 12.01.24.png] Am Di., 21. Dez. 2021 um 10:34 Uhr schrieb <roald.baudoux@brutele.be>: > Hello, > > I am trying to use BOSL2 thread to create threads to screw some large > cylinders together (imagine a bolt with a 300mm diameter), a bit like what > you would find between a bottle and a cap. > > How do I set some tolerance between them with the goal of FDM printing the > parts? > > I’ve set a smaller diameter for the inner cylinder with a gap of 0.2mm > around it. But maybe the $slop variable could be used for that purpose? > However I don’t understand how to use it. > > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
KT
Kevin Toppenberg
Tue, Dec 21, 2021 12:48 PM

I typically use a value of 0.5 for my tolerance.  I include this manually
in my construction because I want to control which parts are made smaller
and which ones are made larger.

I've never seen the $slop variable before.

Kevin

On Tue, Dec 21, 2021 at 4:34 AM roald.baudoux@brutele.be wrote:

Hello,

I am trying to use BOSL2 thread to create threads to screw some large
cylinders together (imagine a bolt with a 300mm diameter), a bit like what
you would find between a bottle and a cap.

How do I set some tolerance between them with the goal of FDM printing the
parts?

I’ve set a smaller diameter for the inner cylinder with a gap of 0.2mm
around it. But maybe the $slop variable could be used for that purpose?
However I don’t understand how to use it.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I typically use a value of 0.5 for my tolerance. I include this manually in my construction because I want to control which parts are made smaller and which ones are made larger. I've never seen the $slop variable before. Kevin On Tue, Dec 21, 2021 at 4:34 AM <roald.baudoux@brutele.be> wrote: > Hello, > > I am trying to use BOSL2 thread to create threads to screw some large > cylinders together (imagine a bolt with a 300mm diameter), a bit like what > you would find between a bottle and a cap. > > How do I set some tolerance between them with the goal of FDM printing the > parts? > > I’ve set a smaller diameter for the inner cylinder with a gap of 0.2mm > around it. But maybe the $slop variable could be used for that purpose? > However I don’t understand how to use it. > > > > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RP
Ronaldo Persiano
Tue, Dec 21, 2021 1:19 PM

I typically use a value of 0.5 for my tolerance.  I include this manually
in my construction because I want to control which parts are made smaller
and which ones are made larger.

I've never seen the $slop variable before.

Besides setting $slop globally you always can set it at each call to get a
specific tolerance for one part:

threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1, $slop=.3);
threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1, $slop=.5);

It has the same effect as $fn for circles and spheres.

> > I typically use a value of 0.5 for my tolerance. I include this manually > in my construction because I want to control which parts are made smaller > and which ones are made larger. > > I've never seen the $slop variable before. > Besides setting $slop globally you always can set it at each call to get a specific tolerance for one part: threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1, $slop=.3); threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1, $slop=.5); It has the same effect as $fn for circles and spheres.
RB
roald.baudoux@brutele.be
Tue, Dec 21, 2021 4:27 PM

Thank you everyone!

Thank you everyone!
KT
Kevin Toppenberg
Tue, Dec 21, 2021 4:31 PM

So does $slop grow the part by this amount?, i.e. increase each dimension
by that amount?
Thanks
Kevin

On Tue, Dec 21, 2021 at 8:19 AM Ronaldo Persiano rcmpersiano@gmail.com
wrote:

I typically use a value of 0.5 for my tolerance.  I include this manually

in my construction because I want to control which parts are made smaller
and which ones are made larger.

I've never seen the $slop variable before.

Besides setting $slop globally you always can set it at each call to get a
specific tolerance for one part:

threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1, $slop=.3);
threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1, $slop=.5);

It has the same effect as $fn for circles and spheres.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

So does $slop grow the part by this amount?, i.e. increase each dimension by that amount? Thanks Kevin On Tue, Dec 21, 2021 at 8:19 AM Ronaldo Persiano <rcmpersiano@gmail.com> wrote: > I typically use a value of 0.5 for my tolerance. I include this manually >> in my construction because I want to control which parts are made smaller >> and which ones are made larger. >> >> I've never seen the $slop variable before. >> > > Besides setting $slop globally you always can set it at each call to get a > specific tolerance for one part: > > threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1, $slop=.3); > threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1, $slop=.5); > > It has the same effect as $fn for circles and spheres. > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >
RP
Ronaldo Persiano
Tue, Dec 21, 2021 5:40 PM

I don't have any experience with BOSL2 threads. The intention of my post is
to call to your attention that it is possible to control the clearance on a
part basis by using $slop as a parameter of the part module call instead of
setting it globally.

Looking at the code and experimenting a little bit, I found that $slop acts
only on internal threads by increasing its diameter by 4*slop. It seems to
not have any effect on threaded rods. The documentation of threaded rods
needs updating.

Em ter., 21 de dez. de 2021 às 17:32, Kevin Toppenberg kdtop3@gmail.com
escreveu:

So does $slop grow the part by this amount?, i.e. increase each dimension
by that amount?
Thanks
Kevin

On Tue, Dec 21, 2021 at 8:19 AM Ronaldo Persiano rcmpersiano@gmail.com
wrote:

I typically use a value of 0.5 for my tolerance.  I include this manually

in my construction because I want to control which parts are made smaller
and which ones are made larger.

I've never seen the $slop variable before.

Besides setting $slop globally you always can set it at each call to get
a specific tolerance for one part:

threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1, $slop=.3);
threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1, $slop=.5);

It has the same effect as $fn for circles and spheres.


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org


OpenSCAD mailing list
To unsubscribe send an email to discuss-leave@lists.openscad.org

I don't have any experience with BOSL2 threads. The intention of my post is to call to your attention that it is possible to control the clearance on a part basis by using $slop as a parameter of the part module call instead of setting it globally. Looking at the code and experimenting a little bit, I found that $slop acts only on internal threads by increasing its diameter by 4*slop. It seems to not have any effect on threaded rods. The documentation of threaded rods needs updating. Em ter., 21 de dez. de 2021 às 17:32, Kevin Toppenberg <kdtop3@gmail.com> escreveu: > So does $slop grow the part by this amount?, i.e. increase each dimension > by that amount? > Thanks > Kevin > > On Tue, Dec 21, 2021 at 8:19 AM Ronaldo Persiano <rcmpersiano@gmail.com> > wrote: > >> I typically use a value of 0.5 for my tolerance. I include this manually >>> in my construction because I want to control which parts are made smaller >>> and which ones are made larger. >>> >>> I've never seen the $slop variable before. >>> >> >> Besides setting $slop globally you always can set it at each call to get >> a specific tolerance for one part: >> >> threaded_rod(spin=180, d=30, l=20, pitch=2, $fa=1, $fs=1, $slop=.3); >> threaded_nut(od = 50, id=30, h=20, pitch=2, $fa=1, $fs=1, $slop=.5); >> >> It has the same effect as $fn for circles and spheres. >> _______________________________________________ >> OpenSCAD mailing list >> To unsubscribe send an email to discuss-leave@lists.openscad.org >> > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org >