diff options
author | Elena ``of Valhalla'' Grandi <valhalla@trueelena.org> | 2016-07-23 10:38:55 +0200 |
---|---|---|
committer | Elena ``of Valhalla'' Grandi <valhalla@trueelena.org> | 2016-07-23 10:38:55 +0200 |
commit | 1d0f3df3f8a582f637adcf6da5673d36e5f11a4d (patch) | |
tree | 7515372fca4e60d43694b6b28fa4a568ee20eb6b /src | |
parent | c9f84e2c4aafaf7d7c81bfee3b188b295ec2c2ba (diff) |
imported rotary tools
Diffstat (limited to 'src')
-rw-r--r-- | src/rotary_tools_handle.scad | 35 | ||||
-rw-r--r-- | src/rotary_wheel-gear_saw_theet.scad | 33 | ||||
-rw-r--r-- | src/rotary_wheel-gear_saw_theet_angle.scad | 36 | ||||
-rw-r--r-- | src/rotary_wheel-measuring.scad | 25 | ||||
-rw-r--r-- | src/rotary_wheel-pins.scad | 22 |
5 files changed, 151 insertions, 0 deletions
diff --git a/src/rotary_tools_handle.scad b/src/rotary_tools_handle.scad new file mode 100644 index 0000000..b4dc581 --- /dev/null +++ b/src/rotary_tools_handle.scad @@ -0,0 +1,35 @@ + +// Wheel radius +r = 20; +// Vertical clearance for the wheel, as a ratio +r_clear = 1.25; + +// Handle radius +handle_r = 6; +// Handle height (excluding wheel support) +handle_h = 100; + +// Axle radius +axle_r = 2.5; + +supp_x = 4; +supp_y = handle_r * sqrt(3); +supp_z = r * r_clear + supp_y/2; + +rotate([90,0,0]) difference() { + union() { + translate([0, 0, -handle_h]) cylinder(r=handle_r, h=handle_h, $fn=6); + hull() { + translate([0, 0, -handle_r*2]) + cylinder(r=handle_r, h=handle_r*2, $fn=6); + translate([-handle_r, -supp_y/2, 0]) + cube([supp_x, supp_y, supp_z]); + translate([handle_r-supp_x, -supp_y/2, 0]) + cube([supp_x, supp_y, supp_z]); + } + } + translate([-handle_r+supp_x, -supp_y/2-1, 0]) + cube([(handle_r-supp_x)*2, supp_y+2, supp_z+2]); + translate([0, 0, r*r_clear]) rotate([0, 90, 0]) + cylinder(r=axle_r, h=handle_r*2+2, center=true); +} diff --git a/src/rotary_wheel-gear_saw_theet.scad b/src/rotary_wheel-gear_saw_theet.scad new file mode 100644 index 0000000..3d0262c --- /dev/null +++ b/src/rotary_wheel-gear_saw_theet.scad @@ -0,0 +1,33 @@ +use <MCAD/involute_gears.scad> + +// Wheel radius (approximated) +r = 20; +// Wheel tickness +thickness = 2; +// Hub tickness +max_thickness = 3; +// Axle radius +axle_r = 3; + +teeth = r*1.15; + +$fn=30; + +gear ( + number_of_teeth=teeth, + circular_pitch=300, + diametral_pitch=false, + pressure_angle=38, + clearance = 0.2, + gear_thickness=thickness, + rim_thickness=thickness, + rim_width=5, + hub_thickness=max_thickness, + hub_diameter=axle_r*3, + bore_diameter=axle_r*2, + circles=0, + backlash=0, + twist=0, + involute_facets=0, + flat=false +); diff --git a/src/rotary_wheel-gear_saw_theet_angle.scad b/src/rotary_wheel-gear_saw_theet_angle.scad new file mode 100644 index 0000000..d447f0c --- /dev/null +++ b/src/rotary_wheel-gear_saw_theet_angle.scad @@ -0,0 +1,36 @@ +use <MCAD/involute_gears.scad> + +// Wheel radius (approximated) +r = 20; +// Wheel tickness +thickness = 2; +// Hub tickness +max_thickness = 3; +// Axle radius +axle_r = 3; + +teeth = r*1.15; + +$fn=30; + +intersection() { + cylinder(r1=r*1.1, r2=r/2, h=max_thickness); + gear ( + number_of_teeth=teeth, + circular_pitch=300, + diametral_pitch=false, + pressure_angle=38, + clearance = 0.2, + gear_thickness=thickness, + rim_thickness=thickness, + rim_width=5, + hub_thickness=max_thickness, + hub_diameter=axle_r*3, + bore_diameter=axle_r*2, + circles=0, + backlash=0, + twist=0, + involute_facets=0, + flat=false + ); +} diff --git a/src/rotary_wheel-measuring.scad b/src/rotary_wheel-measuring.scad new file mode 100644 index 0000000..8e3c980 --- /dev/null +++ b/src/rotary_wheel-measuring.scad @@ -0,0 +1,25 @@ + +// Circunference +c = 100; +// Number of marks +marks = 10; +// Wheel tickness +thickness = 2; +// Hub tickness +max_thickness = 3; +// Axle radius +axle_r = 3; + +r = c/PI/2; + +difference() { + union() { + cylinder(r=r, h=thickness); + cylinder(r=axle_r*2, h=max_thickness); + } + for (i = [0:marks]) { + rotate([0, 0, i*360/marks]) translate([r*0.75, -0.5, thickness-1]) cube([r, 1, 2]); + } + translate([r/2, -0.5, thickness-1]) cube([r, 1, 2]); + cylinder(r=axle_r, h=max_thickness*2+1, center=true, $fn=30); +} diff --git a/src/rotary_wheel-pins.scad b/src/rotary_wheel-pins.scad new file mode 100644 index 0000000..e22024f --- /dev/null +++ b/src/rotary_wheel-pins.scad @@ -0,0 +1,22 @@ + +// Wheel radius (approximated) +r = 20; +// Number of pins +pins = 23; +// Wheel tickness +thickness = 2; +// Hub tickness +max_thickness = 3; +// Axle radius +axle_r = 3; + +difference() { + union() { + for (i = [0:pins]) { + rotate([0, 0, i*360/pins]) translate([0, -0.5, 0]) cube([r, 1, 2]); + } + cylinder(r=r*0.9, h=thickness); + cylinder(r=axle_r*2, h=max_thickness); + } + cylinder(r=axle_r, h=max_thickness*2+1, center=true, $fn=30); +} |