From 883d6d95cbdebc5e159dc2beee0f5d9972e602e6 Mon Sep 17 00:00:00 2001 From: Vitaliy Filippov Date: Tue, 17 Nov 2015 23:17:06 +0000 Subject: [PATCH] simplify mount, add single_bevel() --- torsen.scad | 51 +++++++++++++++++++++++++++------------------------ 1 file changed, 27 insertions(+), 24 deletions(-) diff --git a/torsen.scad b/torsen.scad index 9bf6fc1..60d9da1 100644 --- a/torsen.scad +++ b/torsen.scad @@ -11,6 +11,7 @@ module torsen_diff_36t() { }*/ //import("/var/home/vitali/LEGO Creations/cad/gear_36_solid_pre.stl"); rotate([90, 0, 0]) double_bevel_36t(); + //rotate([-90, 0, 0]) single_bevel(32); translate([0, 5, 0]) rotate([90, 0, 0]) cylinder(r=30, h=2, center=true, $fn=100); translate([0, -5, 0]) rotate([90, 0, 0]) cylinder(r=30, h=2, center=true, $fn=100); rotate([90, 0, 0]) cylinder(r=2.6, h=10, center=true); @@ -18,35 +19,23 @@ module torsen_diff_36t() { } translate([0, 0, 8]) difference() { union() { - hull() { - translate([0, 8, 0]) rotate([90, 0, 90]) cylinder(r=2.8, h=8, center=true); - translate([0, 0, 0]) rotate([90, 0, 90]) cylinder(r=2.8, h=8, center=true); - } - hull() { - translate([-3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - translate([-3.6, 0, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - } - hull() { - translate([3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - translate([3.6, 0, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - } + translate([0, 8, 0]) rotate([90, 0, 90]) cylinder(r=2.8, h=8, center=true); + translate([0, 8-2.8, 0]) cube([8, 2.8*2, 2.8*2], center=true); + translate([-3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); + translate([-3.6, 8-3.6, 0]) cube([0.8, 3.6*2, 3.6*2], center=true); + translate([3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); + translate([3.6, 8-3.6, 0]) cube([0.8, 3.6*2, 3.6*2], center=true); translate([0, 8, 0]) rotate([90, 0, 90]) axle(h=16, axlemesh=1.75); } } translate([0, 0, -8]) difference() { union() { - hull() { - translate([0, 8, 0]) rotate([90, 0, 90]) cylinder(r=2.8, h=8, center=true); - translate([0, 0, 0]) rotate([90, 0, 90]) cylinder(r=2.8, h=8, center=true); - } - hull() { - translate([-3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - translate([-3.6, 0, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - } - hull() { - translate([3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - translate([3.6, 0, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); - } + translate([0, 8, 0]) rotate([90, 0, 90]) cylinder(r=2.8, h=8, center=true); + translate([0, 8-2.8, 0]) cube([8, 2.8*2, 2.8*2], center=true); + translate([-3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); + translate([-3.6, 8-3.6, 0]) cube([0.8, 3.6*2, 3.6*2], center=true); + translate([3.6, 8, 0]) rotate([90, 0, 90]) cylinder(r=3.6, h=0.8, center=true); + translate([3.6, 8-3.6, 0]) cube([0.8, 3.6*2, 3.6*2], center=true); translate([0, 8, 0]) rotate([90, 0, 90]) axle(h=16, axlemesh=1.75); } } @@ -60,6 +49,20 @@ module axle(h = 24, axleradius = 2.4, axlemesh = 1.85) { } } +module single_bevel(nteeth = 28) +{ + union() { + intersection() { + translate([0, 0, 1.5]) + linear_extrude(slices=5, height=2.5, scale=(nteeth/2+1-2.5*tan(45))/(nteeth/2+1)) + gear_concat_flat(mm_per_tooth=3.4, number_of_teeth=nteeth, backlash=2, clearance=0.8, trim_factor=0.7); + cylinder($fn=nteeth*2, h=4, r=2.98*(nteeth/2+1)/3.1415926+0.5); + } + cylinder($fn=nteeth*2, h=4, r=2.98*(nteeth/2-1)/3.1415926); + cylinder($fn=nteeth*2, h=1.5, r=2.98*(nteeth/2+1)/3.1415926+0.5); + } +} + // An attempt to make something like standard 36t double bevel gear... // std lego 36t gear outer radius = ~36.5 // std lego 36t gear root radius = ~32.2