Finally made the thread printable

This commit is contained in:
Sebastian 2015-12-13 18:07:46 +01:00
parent 12ee92fa47
commit 5e84476367
3 changed files with 52 additions and 31 deletions

View File

@ -4,7 +4,7 @@ bumper_diameter = 85;
body_diameter = 70;
body_hole_diameter = body_diameter - 10;
tube_outer_diameter = 75;
tube_outer_diameter = 76;
m3nut_diameter = 6.5;
m3nut_depth = 3.6;
@ -14,12 +14,12 @@ m3hole_depth = (body_diameter - body_hole_diameter) / 2 - m3nut_depth + 0.5;
height_unit = 5;
thread_diameter = body_diameter - 10;
thread_diameter = body_diameter - 12;
thread_hole_diameter = thread_diameter - 5;
thread_pitch = 3;
thread_pitch = 4;
thread_lenght_top = 12.5;
thread_lenght_lid = 7.5;
thread_tolerance = 0.1;
thread_tolerance = 0.25;
lid_diameter = body_diameter - 5;
lid_tolerance = 0.1;

View File

@ -4,19 +4,36 @@ use <cap.scad>;
use <threads.scad>;
module thread() {
intersection() {
metric_thread(thread_diameter - thread_tolerance,
thread_pitch,
thread_lenght_lid);
union() {
translate([0, 0, 0.5 * height_unit])
cylinder(r = thread_diameter / 2,
h = thread_lenght_lid - 0.5 * height_unit);
cylinder(r2 = thread_diameter / 2,
r1 = thread_diameter / 2 - height_unit,
h = 0.5 * height_unit);
}
}
}
difference() {
union() {
translate([0, 0, 0.25 * height_unit])
cylinder(r = lid_diameter / 2 - lid_tolerance,
cylinder(r = lid_diameter / 2,
h=0.5 * height_unit,
center=true);
translate([0, 0, -thread_lenght_lid])
metric_thread(thread_diameter - thread_tolerance,
thread_pitch,
thread_lenght_lid);
thread();
}
union() {

View File

@ -4,39 +4,43 @@ use <threads.scad>;
use <cap.scad>;
module thread() {
metric_thread(thread_diameter + thread_tolerance,
thread_pitch,
thread_lenght_top,
internal=true);
translate([0, 0, thread_lenght_top - height_unit])
cylinder(r2 = body_hole_diameter / 2,
r1 = thread_hole_diameter / 2,
h = height_unit);
cylinder(r1 = body_hole_diameter / 2,
r2 = thread_hole_diameter / 2,
h = height_unit);
}
difference() {
cap();
// Hole for the lid
union() {
// Actual lid hole
translate([0, 0, 1.25 * height_unit])
cylinder(r = lid_diameter / 2,
h = 0.5 * height_unit + 0.01,
center = true);
// Add a little bevel to smooth the thread start
translate([0, 0, (0.125 + 0.75) * height_unit])
cylinder(r2 = lid_diameter / 2,
r1 = thread_diameter / 2,
h = 0.25 * height_unit + 0.01,
center = true);
// Metric Thread
translate([0, 0, - height_unit])
metric_thread(thread_diameter + thread_tolerance,
thread_pitch,
thread_lenght_top,
internal=true);
translate([0, 0, - 1 * height_unit])
thread();
// Put a little support unter the thread
// Make the rest of the cap hollow
translate([0, 0, -height_unit])
cylinder(r2 = thread_hole_diameter / 2,
r1 = body_hole_diameter / 2,
cylinder(r = body_hole_diameter / 2,
h = 1 * height_unit + 0.01,
center = true);
}
}
}