X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=poster-tube-lid.scad;h=f68732815c3e81418ee278f42d392dac6e9dedc4;hb=d0fcf567a287b8f0298dbfc6e7e56468744b14d5;hp=110e4467f27618a5a63d206f2ae3828f42e7244f;hpb=e826cd9842a3c2037b3bf6c9173e88e1e64fa1a9;p=reprap-play.git diff --git a/poster-tube-lid.scad b/poster-tube-lid.scad index 110e446..f687328 100644 --- a/poster-tube-lid.scad +++ b/poster-tube-lid.scad @@ -11,7 +11,7 @@ main_cnr = 6.0; min_wall = 3; -rivet_posn = 6.0 + 1.5; +rivet_posn = 6.0 + 0.1; rivet_thick = 1.67; rivet_width = 4.15 + 1.0; rivet_tall = 5.51 + 1.49; @@ -20,7 +20,7 @@ over_rivet_wall = 1.0; side_rivet_gap = 1.5; inside_rivet_gap = 1.5; -bayo_interf = 1.25; +bayo_interf = 0.44; bayo_behind = 3.5; bayo_interf_width = 2.0; bayo_interf_slope = 0.5; @@ -52,8 +52,31 @@ jig_hole_dia = 3.0; jig_rim = 5; jig_mark = 5; +strap_hoop_thick = 6; +strap_hoop_inside = 10; +strap_hoop_strlen = 10; +strap_hoop_elevation = 45; + +sm_inner_circum = 239; +sm_main_thick = 2.5; +sm_main_width = 25; + +sm_bolt_dia = 3.5; +sm_bolt_shaft = 21.9; +sm_bolt_head_dia = 6.94 + 1.0; +sm_bolt_head_thick = 2.14; +sm_bolt_nut_width = 5.89 + 0.25; +sm_bolt_nut_thick = 3.68; + +sm_bolt_y_clear = 0.5; +sm_bolt_y_over = 0.5; + +sm_closure_cnr = 3.0; + // calculated +TAU = PI*2; + bayo_entry_x = bayo_entry; bayo_entry_z = bayo_entry; bayo_inramp_x = bayo_entry; @@ -86,6 +109,19 @@ jig_mark_rad = jig_mark + main_dia/2 + jig_thick; handling_dia = oring_bore + oring_thick*2 + min_wall*2; handling_angle = 45; +sm_inner_rad = sm_inner_circum / TAU; +sm_outer_rad = sm_inner_rad + sm_main_thick; + +smc_pos = [ 0, sm_inner_rad, 0 ]; + +smc_bolt_nut_dia = sm_bolt_nut_width / cos(30); + +smc_bolt_y = sm_bolt_dia/2 + sm_bolt_y_clear; +smc_max_y = smc_bolt_y + sm_bolt_y_over + + max(sm_bolt_head_dia/2, smc_bolt_nut_dia/2); +smc_cnr_c_x = sm_bolt_shaft/2 - sm_closure_cnr + - max(sm_bolt_head_thick, sm_bolt_nut_thick); + $fs= coarse ? 2.5 : 0.5; $fa= coarse ? 5 : 1; @@ -163,6 +199,38 @@ module MainProfile(){ } } +module StrapHoopProfile(){ + circle(r = strap_hoop_thick/2); +} + +module StrapHoop(){ ////toplevel + bigrad = strap_hoop_inside/2 + strap_hoop_thick/2; + extralen = strap_hoop_thick * 5; + + intersection(){ + rotate([strap_hoop_elevation, 0,0]){ + for (x= [ -1, +1 ] * bigrad) { + translate([x, -extralen, 0]) + rotate([-90,0,0]) + linear_extrude(height= extralen + strap_hoop_strlen + 0.1, + convexity=10) + StrapHoopProfile(); + } + translate([0, strap_hoop_strlen, 0]){ + intersection(){ + rotate_extrude(convexity=10) + translate([bigrad, 0,0]) + StrapHoopProfile(); + translate([0,50,0]) + cube([100,100,100], center=true); + } + } + } + translate([0, 50, 0]) + cube(100, center=true); + } +} + module HandlingProfile(){ // translate([ } @@ -268,6 +336,10 @@ module Cover(){ ////toplevel } } } +// translate(strap_hoop_thick * [-0.5, 0, +1]) +// translate([handling_dia/2, 0, -side_height]) +// rotate([0,180,0]) rotate([0,0,90]) +// StrapHoop(); } module SavingHole(){ @@ -304,13 +376,46 @@ module CoverTest2(){ ////toplevel module CoverTest1(){ ////toplevel difference(){ CoverTest2(); - for (r= [ 40, 147 ]){ - rotate([0,0, r]){ - translate([0,0, -10]) { - cube([ main_dia*3, main_dia * .55, 18], center=true); + difference(){ + for (r= [ 40, 147 ]){ + rotate([0,0, r]){ + translate([0,0, -10]) { + cube([ main_dia*3, main_dia * .53, 18], center=true); + } + } + } +// translate([ 50, 0, 0 ]) +// cube([ 100, +// strap_hoop_inside + strap_hoop_thick*2 + 1, +// 100 ], +// center=true); + } + } +} + +module StrapMountBolt(){ ///toplevel + // positioned relative to smc_pos +} + +module StrapMount(){ ////toplevel + difference(){ + union(){ + cylinder(r=sm_outer_rad, h=sm_main_width); + translate(smc_pos){ + linear_extrude(height=sm_main_width, convexity=10){ + hull(){ + for (m = [0,1]) mirror([m,0,0]) { + translate([-smc_cnr_c_x, smc_max_y - sm_closure_cnr]) + circle(r=sm_closure_cnr); + translate([-smc_cnr_c_x, -sm_inner_rad]) + square([1,1]); + } + } } } } + translate([0,0,-1]) + cylinder(r=sm_inner_rad, h=sm_main_width+2); } }