discuss@lists.openscad.org

OpenSCAD general discussion

View all threads

Re: vise screw question

RW
Raymond West
Fri, Jul 22, 2022 10:11 AM

Here's a basic thread maker. You just need to draw the thread profile.
(But I usually use NopHead's code for standard threads.)

//threadrw

// square thread

p=5; //pitch
t= 2.5; // depth of thread
l= 60; //length of thread
od=10; //outside diam

/*
module profile(){ //square thread
  square([1,p]);  //Make 1 wide 'cos can't draw lines
  square ([t+1,t]);
}

*/

module profile(){ //buttress thread
   polygon (points=[[0,0],[0,p],[1,p],[1,p-1],[t,1],[t,0]]);
}

module section(){
   rotate([90,0,0])
   linear_extrude(od/60)
   {
    square([od-t,p]);
    translate ([od-t-1,0,0])
    profile();
    }
}

num=360*(l/p);
   for (j=[0:1:num])
   {
      translate([0,0,j*p/360])
       rotate([0,0,j])
       section();
}

////end

square threads do not work with half nuts, acme is OK. If wood screw for
vice, the a buttress thread is best. Make the nut first and turn the
screw to fit.

You can play around with the linear_extrude and the for loop, to get
different resolution, but for wood and plastic, no need to sweat the
small stuff.

Try it for a short length first, it takes a while to f6.

On 21/07/2022 23:37, Bogdan Caramalac via Discuss wrote:


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

Here's a basic thread maker. You just need to draw the thread profile. (But I usually use NopHead's code for standard threads.) //threadrw // square thread p=5; //pitch t= 2.5; // depth of thread l= 60; //length of thread od=10; //outside diam /* module profile(){ //square thread   square([1,p]);  //Make 1 wide 'cos can't draw lines   square ([t+1,t]); } */ module profile(){ //buttress thread    polygon (points=[[0,0],[0,p],[1,p],[1,p-1],[t,1],[t,0]]); } module section(){    rotate([90,0,0])    linear_extrude(od/60)    {     square([od-t,p]);     translate ([od-t-1,0,0])     profile();     } } num=360*(l/p);    for (j=[0:1:num])    {       translate([0,0,j*p/360])        rotate([0,0,j])        section(); } ////end square threads do not work with half nuts, acme is OK. If wood screw for vice, the a buttress thread is best. Make the nut first and turn the screw to fit. You can play around with the linear_extrude and the for loop, to get different resolution, but for wood and plastic, no need to sweat the small stuff. Try it for a short length first, it takes a while to f6. On 21/07/2022 23:37, Bogdan Caramalac via Discuss wrote: > _______________________________________________ > OpenSCAD mailing list > To unsubscribe send an email to discuss-leave@lists.openscad.org
GH
gene heskett
Fri, Jul 22, 2022 10:54 AM

On 7/22/22 06:14, Raymond West wrote:

Here's a basic thread maker. You just need to draw the thread profile.
(But I usually use NopHead's code for standard threads.)

//threadrw

// square thread

p=5; //pitch
t= 2.5; // depth of thread
l= 60; //length of thread
od=10; //outside diam

/*
module profile(){ //square thread
  square([1,p]);  //Make 1 wide 'cos can't draw lines
  square ([t+1,t]);
}

*/

module profile(){ //buttress thread
   polygon (points=[[0,0],[0,p],[1,p],[1,p-1],[t,1],[t,0]]);
}

module section(){
   rotate([90,0,0])
   linear_extrude(od/60)
   {
    square([od-t,p]);
    translate ([od-t-1,0,0])
    profile();
    }
}

num=360*(l/p);
   for (j=[0:1:num])
   {
      translate([0,0,j*p/360])
       rotate([0,0,j])
       section();
}

////end

square threads do not work with half nuts, acme is OK. If wood screw
for vice, the a buttress thread is best. Make the nut first and turn
the screw to fit.

Or in the version I'm working on, I made the screw first, then used
the screw to design the nuts.  Accuracy of the buttress was somewhat
compromised by the choice of mill tool shape used to cut it, so the nut
was similarly
edited recursively to gain a good fit. Works well but I've not yet
actually put it
into a leg vise. I have two more parts to design and make before I assemble
the whole thing.

I used a 2 start buttress because its a vise screw but square would also
work
but its not as strong. The 2 start makes both half nuts identical.

You can play around with the linear_extrude and the for loop, to get
different resolution, but for wood and plastic, no need to sweat the
small stuff.

Try it for a short length first, it takes a while to f6.

On 21/07/2022 23:37, Bogdan Caramalac via Discuss wrote:


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

Cheers, Gene Heskett.

"There are four boxes to be used in defense of liberty:
soap, ballot, jury, and ammo. Please use in that order."
-Ed Howdershelt (Author, 1940)
If we desire respect for the law, we must first make the law respectable.

On 7/22/22 06:14, Raymond West wrote: > Here's a basic thread maker. You just need to draw the thread profile. > (But I usually use NopHead's code for standard threads.) > > //threadrw > > > // square thread > > p=5; //pitch > t= 2.5; // depth of thread > l= 60; //length of thread > od=10; //outside diam > > /* > module profile(){ //square thread >   square([1,p]);  //Make 1 wide 'cos can't draw lines >   square ([t+1,t]); > } > > */ > > module profile(){ //buttress thread >    polygon (points=[[0,0],[0,p],[1,p],[1,p-1],[t,1],[t,0]]); > } > > > module section(){ >    rotate([90,0,0]) >    linear_extrude(od/60) >    { >     square([od-t,p]); >     translate ([od-t-1,0,0]) >     profile(); >     } > } > > num=360*(l/p); >    for (j=[0:1:num]) >    { >       translate([0,0,j*p/360]) >        rotate([0,0,j]) >        section(); > } > > ////end > > > square threads do not work with half nuts, acme is OK. If wood screw > for vice, the a buttress thread is best. Make the nut first and turn > the screw to fit. Or in the version I'm working on, I made the screw first, then used the screw to design the nuts.  Accuracy of the buttress was somewhat compromised by the choice of mill tool shape used to cut it, so the nut was similarly edited recursively to gain a good fit. Works well but I've not yet actually put it into a leg vise. I have two more parts to design and make before I assemble the whole thing. I used a 2 start buttress because its a vise screw but square would also work but its not as strong. The 2 start makes both half nuts identical. > > You can play around with the linear_extrude and the for loop, to get > different resolution, but for wood and plastic, no need to sweat the > small stuff. > > Try it for a short length first, it takes a while to f6. > > > On 21/07/2022 23:37, Bogdan Caramalac via Discuss wrote: >> _______________________________________________ >> 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 Cheers, Gene Heskett. -- "There are four boxes to be used in defense of liberty: soap, ballot, jury, and ammo. Please use in that order." -Ed Howdershelt (Author, 1940) If we desire respect for the law, we must first make the law respectable. - Louis D. Brandeis Genes Web page <http://geneslinuxbox.net:6309/>