X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=blobdiff_plain;f=bike-lipo-box.scad;h=de982d933f4a14d3717b9e7ecf7716acce3ab077;hb=b0a1afde85d50c12b775e560cefe72662b1cbe05;hp=f173f9715aeba0158d96304b6eedf7d01b8a6978;hpb=fb46d813ea7050df70347a5ba6397455649dcd65;p=reprap-play.git diff --git a/bike-lipo-box.scad b/bike-lipo-box.scad index f173f97..de982d9 100644 --- a/bike-lipo-box.scad +++ b/bike-lipo-box.scad @@ -2,6 +2,7 @@ include include +include pxp6012_rad = 22.5 / 2 + 0.5; // make circular hole this size in outer wall pxp6012_rad_outer = 32.0 / 2 - 0.5; @@ -15,8 +16,20 @@ s1930_recess = 3; s1930_around = 3; s1930_behind = 3; +totx_inner = 180; +toty_outer = 95; +totz_outer = 31; + wallthick = 2.5; +// calculated + +totx_outer = totx_inner + wallthick*2; +toty_inner = toty_outer - wallthick*2; +totz_inner = totz_outer - wallthick*2; + +sb_box_sz = [totx_outer, totz_outer, toty_inner]; + // origin is at centre on outer face wall // outside is towards positive x // mounting is vertical @@ -68,43 +81,39 @@ module TestWall(){ ////toplevel } } -totx_outer = 30; -toty_outer = 25; -totz_inner = 8; - -$sealingbox_wallth = wallthick; -$sealingbox_floorth = 2.5; -$sealingbox_ceilth = 2.5; -$sealingbox_xbox = totx_outer; -$sealingbox_ybox = toty_outer; -$sealingbox_zbox = totz_inner; +ts_totx = 30; +ts_toty = 25; +ts_totz_inner = 8; -innertube = 1.0 + 0.2; -lidoverlap = 1.5; -lidoverhang = 6; -tubesealrad = 2.0; +ts_box_sz = [ts_totx, ts_toty, ts_totz_inner]; -include +$sealingbox_wallth = wallthick; +$sealingbox_floorth = wallthick; +$sealingbox_ceilth = wallthick; module TestSealBox(){ ////toplevel - TestSealBoxBox(); + $sealingbox_sz = ts_box_sz; + + SealingBox_RectBox(); ts_cidoff = ($sealingbox_cnrrad * (1-.7) + wallthick * .8) * [1,1]; translate(ts_cidoff) - Commitid_BestCount([totx_outer,toty_outer] - 2*ts_cidoff); + Commitid_BestCount([ts_totx,ts_toty] - 2*ts_cidoff); } module TestSealLid(){ ////toplevel + $sealingbox_sz = ts_box_sz; + difference(){ - TestSealBoxLid(); + SealingBox_RectLid(); - translate([totx_outer * .75, toty_outer/2, 0]) + translate([ts_totx * .75, ts_toty/2, 0]) cylinder(h=100, r=5); translate([-wallthick + $sealingbox_cnrrad*.5, $sealingbox_cnrrad*.5 - wallthick, - totz_inner + $sealingbox_ceilth]) - Commitid_BestCount([totx_outer * .75 - 2.5 - ($sealingbox_cnrrad*.5), - toty_outer - ($sealingbox_cnrrad*.5 - wallthick)*2]); + ts_totz_inner + $sealingbox_ceilth]) + Commitid_BestCount([ts_totx * .75 - 2.5 - ($sealingbox_cnrrad*.5), + ts_toty - ($sealingbox_cnrrad*.5 - wallthick)*2]); } } @@ -113,13 +122,45 @@ module TestSealLidPrint(){ ////toplevel } module ProfileDemos(){ ////toplevel + $sealingbox_sz = ts_box_sz; + SealingBox_WallProfile(); color("blue") SealingBox_FloorProfile(); SealingBox_LidProfile(); color("blue") SealingBox_CeilProfile(); - color("red") translate([-5,0]) square([1,totz_inner]); + color("red") translate([-5,0]) square([1,ts_totz_inner]); +} + +module Box(){ ////toplevel + $sealingbox_sz = sb_box_sz; + + chargingconn_x = pxp6012_rad_outer + 1 + $sealingbox_cnrrad; + switch_x = chargingconn_x + pxp6012_rad_outer + + s1930_y_outer/2 + s1930_around; + + difference(){ + union(){ + rotate([90,0,0]) + translate([-wallthick,-wallthick, -toty_inner]) + SealingBox_RectBox(); + + translate([switch_x, toty_inner, totz_inner/2]) + rotate([90,0,90]) + S1930_Positive(); + } + + // charging connector + translate([chargingconn_x, + toty_inner - (pxp6012_rad_outer + 5), + 10]) + cylinder(r= pxp6012_rad, h= totz_outer); + + translate([switch_x, toty_inner, totz_inner/2]) + rotate([90,0,90]) + S1930_Negative(); + } } - + //TestWall(); //ProfileDemos(); //TestSealBox();