From 245b158f1d0d4059b44856d604cc8b3396c4b249 Mon Sep 17 00:00:00 2001 From: Chris Palmer Date: Thu, 5 Mar 2020 10:15:42 +0000 Subject: [PATCH] Added threads to fuseholder. --- tests/fuseholder.scad | 3 ++- tests/png/fuseholder.png | Bin 18372 -> 26161 bytes vitamins/fuseholder.scad | 53 +++++++++++++++++++++++++-------------- 3 files changed, 36 insertions(+), 20 deletions(-) diff --git a/tests/fuseholder.scad b/tests/fuseholder.scad index 835b9ca..aab8cf5 100644 --- a/tests/fuseholder.scad +++ b/tests/fuseholder.scad @@ -24,4 +24,5 @@ module fuseholders() fuseholder(6); if($preview) - fuseholders(); + let($show_threads = 1) + fuseholders(); diff --git a/tests/png/fuseholder.png b/tests/png/fuseholder.png index e3333f32c8f670e88f5717674b396d66f8f1d319..b71976df8ed909298b5864b6dc1af86ba723e8f0 100644 GIT binary patch literal 26161 zcmV)ZK&!urP)004R>004l5008;`004mK004C`008P>0026e000+ooVrmw00002 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%0DO|9c zcQR)Z6z_R_Q0vBc2EnJmA^7V<5AMgy$a#2~Rg90hiR1HE+F~BXSGb*=*WM-DpBOcY z_PKpm^Kjuik66*+n6jkKMO{v3W5*Ps3XY?+77d)k8Hv^_kpfc0 z@)7jVSRYf9$RsZ>w?_>mnt9P&Lw@lqb<&E+ysC6<@?>2haD0;rtLIoidTwk38+xCmsh|||MDUp zF7+|iZ$5?zO|E$m)2_hG7S8mit^Mu=a!J`Z#mkellcnvke|x4)Y(6GvlrXTH*tz;b zDM$n1)WZ6N{&849WMBeaRP)iaHGjM~GxiTr72RIPi#2H2O;rtq>58Pci^+jBchSYR znU^VDckfi+7mL*sYPvqQY~O(Y+Fkxa{<13+@d8zg_J7V@KXlmWVjaA(cm1&_i+~W+ z;Q<&K7@F%DT+}l(a5prwFgCO>Hia4(S{N8uT0h485AYCk_aFBn{~s{6FuC*}Ks)iV Q*&zUcJGjCc?EK>X4Q`@gWB>pF diff --git a/vitamins/fuseholder.scad b/vitamins/fuseholder.scad index cf36ccc..8873ccf 100644 --- a/vitamins/fuseholder.scad +++ b/vitamins/fuseholder.scad @@ -23,6 +23,7 @@ include <../utils/core/core.scad> include use <../utils/tube.scad> +use <../utils/thread.scad> module fuseholder_hole(h = 100) //! Hole with flats for fuseholder extrude_if(h) @@ -39,7 +40,8 @@ module fuseholder(thickness) { //! Fuseholder with nut in place for specified pa flange_d = fuseholder_diameter(); flange_t = 2; height = 33.2; - thread_d = 11.7; + thread_d = 12; + thread_p = 1; thread = 15; bot_d = 10.4; top_d = 8.7; @@ -59,24 +61,28 @@ module fuseholder(thickness) { //! Fuseholder with nut in place for specified pa // // Nut // + colour = grey40; vflip() translate_z(thickness) - explode(height) - color("dimgrey") { - tube(or = nut_d / 2, ir = 5, h = nut_flange_t, center = false); + explode(height) { + color(colour) { + tube(or = nut_d / 2, ir = thread_d / 2, h = nut_flange_t, center = false); linear_extrude(height = nut_t) difference() { circle(d = nut_d, $fn = 6); - circle(5); + circle(d = thread_d); } } + if(show_threads) + female_metric_thread(thread_d, thread_p, nut_t, false, colour = colour); + } // // Body // explode(height + 5, offset = -height - 4) { - color("dimgrey") { + color(colour) { tube(or = flange_d / 2, ir = 5.2, h = flange_t, center = false); cylinder(r = 5, h = flange_t - 1); @@ -89,26 +95,35 @@ module fuseholder(thickness) { //! Fuseholder with nut in place for specified pa } vflip() { - linear_extrude(height = thread) - intersection() { - circle(d = thread_d); + if(!show_threads) + linear_extrude(height = thread) + intersection() { + circle(d = thread_d - 0.3); - square([100, 10.8], center = true); - } - render() difference() { - translate_z(thread) - cylinder(d1 = bot_d, d2 = top_d, h = height - flange_t - thread); + square([100, 10.8], center = true); + } + render() difference() { + translate_z(thread) + cylinder(d1 = bot_d, d2 = top_d, h = height - flange_t - thread); - for(side = [-1, 1]) - translate([side * (contact_slot_d / 2 + 1) - 1, -contact_slot_w / 2, contact_slot_z]) - cube([2, contact_slot_w, 100]); - } + for(side = [-1, 1]) + translate([side * (contact_slot_d / 2 + 1) - 1, -contact_slot_w / 2, contact_slot_z]) + cube([2, contact_slot_w, 100]); + } } + if(show_threads) + vflip() + render() intersection() { + male_metric_thread(thread_d, thread_p, thread, false, colour = colour); + + translate_z(thread / 2) + cube([100, 10.8, thread + 1], center = true); + } } // // Side contacts // - color("silver") vflip() + color(silver) vflip() for(side = [-1, 1]) translate([side * contact_slot_d / 2, 0, contact_slot_z]) rotate([0, -70, 90 - side * 90])