From 9d3bf24627c4830ca0fa5ff9f0fe36af2cda738f Mon Sep 17 00:00:00 2001 From: mattmcw Date: Tue, 7 Jun 2022 07:55:47 -0400 Subject: [PATCH] Hardware ideas for capper mount and flag. Need to model servo and add places for endstops --- scad/capper.scad | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ scad/common.scad | 5 ++++- 2 files changed, 52 insertions(+), 1 deletion(-) create mode 100644 scad/capper.scad diff --git a/scad/capper.scad b/scad/capper.scad new file mode 100644 index 0000000..d878bdc --- /dev/null +++ b/scad/capper.scad @@ -0,0 +1,48 @@ +include ; + +// Using a Tower Pro SG-5010 servo + +// https://www.thingiverse.com/thing:83806 - Lego mount (has dimensions of servo body) +// https://www.thingiverse.com/thing:5241574 - Robot arm (just cool) + +LensVoidDiameter = 40; //mm +LensZ = 80; +LensY = 20; + +CapOffsetX = -50; +CapOffsetY = -11; + +module Mount () { + $fn = 200; + difference(){ + union(){ + difference(){ + cylinder(r=R(LensVoidDiameter)+15, h=LensY, center=true); + cylinder(r=R(LensVoidDiameter)+5, h=LensY+1, center=true); + } + translate([0,0,-(LensY/4)-(5/4)]) difference(){ + cylinder(r=R(LensVoidDiameter)+5, h=R(LensY)-R(5), center=true); + cylinder(r=R(LensVoidDiameter), h=LensY+1, center=true); + } + } + translate([0,R(LensVoidDiameter),0])cube([LensVoidDiameter*2, LensVoidDiameter, 5], center=true); + } + +} + +module Cap () { + $fn = 200; + difference(){ + union(){ + translate([CapOffsetX,CapOffsetY,0]){ + cylinder(r=R(LensVoidDiameter) + 4, h=4, center = true); + translate([35,(LensVoidDiameter/4)+1,0]) cube([50,R(LensVoidDiameter),4], center=true); + } + cylinder(r=5,h=10,center=true); + } + cylinder(r=2,h=10+1,center=true); + } +} + +Mount(); +translate([-CapOffsetX,-CapOffsetY,0]) rotate([0,0,-60]) Cap(); \ No newline at end of file diff --git a/scad/common.scad b/scad/common.scad index f0f53a3..48417a4 100644 --- a/scad/common.scad +++ b/scad/common.scad @@ -29,4 +29,7 @@ module trap_cube(height = 19, top_x = 30, top_y = 34, bottom_x = 45, bottom_y = cube([bottom_x - wall_thickness, bottom_y - wall_thickness, 0.1], center=true); } } -} \ No newline at end of file +} + +echo("common.scad - R()"); +function R (diameter) = diameter / 2.0; \ No newline at end of file