Skip to content
Snippets Groups Projects
Commit 2f73217f authored by Michael DM Dryden's avatar Michael DM Dryden
Browse files

gears meshed

parent 3b438a7d
No related merge requests found
......@@ -4,11 +4,10 @@ include <MCAD/nuts_and_bolts.scad>;
include <MCAD/involute_gears.scad>;
// gear parameters
innerRadius=3.1;//shaft radius, in mm
borders=2.5;//how thick should the borders around the central "shaft" be, in mm
diametralPitch=12;
numberOfTeeth=14;
pressureAngle=20*pi/180;
circular_pitch=350;
//diametralPitch=12;
//numberOfTeeth=10;
pressureAngle=25;
centerAngle=25;//angle at center of teeth
// magnet
......@@ -21,29 +20,29 @@ rodRad=3;
linearBearingOD=12;
linearBearingHeight=19;
//rack(innerRadius,borders,diametralPitch,numberOfTeeth,pressureAngle,centerAngle);
union(){
translate([-80,0,0]){
color("blue") magnetPlate();
// color("blue") magnetPlate();
color("red") pillar(30);
translate([40,0,-15])
motorSide();
color("orange")
translate([40,0, 5])
rotate([0,180,0])
pinion(7);
translate([40,0,2])
rotate([0,180,360/10*.5])
pinion(10);
// color("green")
// translate([40,0,1])
// for (y = [-1,1]){
// translate([0, y*(magnetLength+5+2*(rodRad+3))/2, 0])
// bearingClamp();
// }
color("green")
translate([40,0,0])
for (y = [-1,1]){
translate([0, y*(magnetLength+5+2*(rodRad+3))/2, 0])
bearingClamp();
}
}
// color("Purple") endPlate(30);
color("Purple") endPlate(30);
}
// Magnet plate
......@@ -83,6 +82,10 @@ module pillar(spacing = 30){
cavitySideThickness = 10;
cavityEndThickness = 10; // shouldn't be smaller than 10 or nut hole is too far in
// Rack parameters
innerRadius=0;//shaft radius, in mm
borders=5;//how thick should the borders around the central "shaft" be, in mm
translate([0, -width/2, -thickness/2])
difference(){
cube([length,width,thickness]);
......@@ -100,6 +103,10 @@ module pillar(spacing = 30){
translate([cavityEndThickness, cavitySideThickness, -1])
cube([length-cavityEndThickness*2, width-cavitySideThickness*2, thickness+2]);
}
translate([length/2, -width/2+7.2, -thickness/2+2])
rotate([0,0,180])
rack(innerRadius, borders, 180/circular_pitch*20, 10, pressureAngle*pi/180, centerAngle);
}
......@@ -137,7 +144,7 @@ module endPlate(spacing = 30){
module motorSide(){
$fn=50;
thickness = 5;
thickness = 4;
length = 50;
width = (magnetLength+5)+(2*(rodRad+3))+(linearBearingOD+3);
......@@ -206,49 +213,65 @@ module bearingClamp(){
}
module pinion(teeth){
//double helical gear
{
$fn=50;
twist=200;
height=15;
pressure_angle=30;
//double helical gear
$fn=50;
twist=centerAngle;
height=12;
pressure_angle=pressureAngle;
trap_width = 6; //nut trap width across flats
hardware_bore = 3.4; //set screw clearence hole
bore_diameter = innerRadius;
//sets nut trap boss dimensions
boss_length = 15/2 + 2;
boss_width = trap_width + 3;
trap_length = trap_width/2;
mirror([0,0,1])
gear (number_of_teeth=teeth,
circular_pitch=circular_pitch,
pressure_angle=pressure_angle,
clearance = 0.2,
gear_thickness = height/2,
rim_thickness = height/2,
rim_width = 10,
hub_thickness = height/2,
hub_diameter=15,
bore_diameter=bore_diameter,
circles=4,
twist=twist);
difference()
{
union() //gear with boss for hardware on it
{
gear (number_of_teeth=teeth,
circular_pitch=400,
pressure_angle=pressure_angle,
clearance = 0.2,
gear_thickness = height/4,
rim_thickness = height/2,
rim_width = 10,
hub_thickness = height,
hub_diameter=15,
bore_diameter=5,
circles=4,
twist=twist/teeth);
mirror([0,0,1])
gear (number_of_teeth=teeth,
circular_pitch=400,
circular_pitch=circular_pitch,
pressure_angle=pressure_angle,
clearance = 0.2,
gear_thickness = height/2,
rim_thickness = height/2,
rim_width = 10,
hub_thickness = height/2,
hub_diameter=15,
bore_diameter=5,
hub_thickness = height,
hub_diameter=18,
bore_diameter=bore_diameter,
circles=4,
twist=twist/teeth);
twist=twist);
translate([bore_diameter/2, -boss_width/2, height/2]) //center the cube
cube([boss_length-bore_diameter/2, boss_width, height/2]); //boss the set screw lives in
}
union() //set screw hardware removed parts
{
translate([bore_diameter/2+1.3, -trap_width/2, height-trap_width*1.2])
cube([trap_length,trap_width,trap_width*1.3]); //nut trap box
translate([0, 0, height-0.6*trap_width]) //shift up
rotate([0,90,0]) //lay flat
cylinder(h=boss_length+1, r = hardware_bore/2); //hardware hole
}
}
// gear_with_setscrew(
// module_number = 2, //standard metric way of specing a gear
// shaft_diameter = 5,
// trap_width = 6,
// hardware_bore = 3.4,
// number_of_teeth = teeth,
// hub_thickness = 13.5,
// rim_thickness = 8,
// no_bore = false,
// twist=twist/teeth);
}
\ No newline at end of file
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment