Skip to content

Commit

Permalink
Added drive gear and fixed bevelling on spider coupler.
Browse files Browse the repository at this point in the history
  • Loading branch information
clothbot committed Apr 1, 2012
1 parent 5c9468d commit 13def4e
Show file tree
Hide file tree
Showing 2 changed files with 44 additions and 4 deletions.
10 changes: 8 additions & 2 deletions pump_v3/functions_and_parts.scad
Expand Up @@ -49,8 +49,14 @@ module spider_coupler(
union() {
translate([0,0,-bevel_dr]) cylinder(r=axle_d/2,h=thickness+2*bevel_dr,center=false);
translate([0,0,thickness-bevel_dr]) cylinder(r2=axle_d/2+2*bevel_dr,r1=axle_d/2,h=2*bevel_dr,center=false);
translate([0,0,thickness]) rotate([45,0,0]) cube(size=[outer_d,2*bevel_dr,2*bevel_dr],center=true);
translate([0,0,thickness]) rotate([45,0,90]) cube(size=[outer_d,2*bevel_dr,2*bevel_dr],center=true);
translate([0,shrink,thickness]) rotate([45,0,0])
translate([0,-bevel_dr,-bevel_dr]) cube(size=[outer_d,2*bevel_dr,2*bevel_dr],center=false);
translate([0,-shrink,thickness]) rotate([45,0,180])
translate([0,-bevel_dr,-bevel_dr]) cube(size=[outer_d,2*bevel_dr,2*bevel_dr],center=false);
translate([shrink,0,thickness]) rotate([45,0,90])
translate([0,-bevel_dr,-bevel_dr]) cube(size=[outer_d,2*bevel_dr,2*bevel_dr],center=false);
translate([-shrink,0,thickness]) rotate([45,0,-90])
translate([0,-bevel_dr,-bevel_dr]) cube(size=[outer_d,2*bevel_dr,2*bevel_dr],center=false);
}
}
}
Expand Down
38 changes: 36 additions & 2 deletions pump_v3/peristaltic_pump.scad
Expand Up @@ -20,6 +20,7 @@ middle_gear_bearing_od=Bearing_608_OD(grow=1.0);
gear_d=roller_bearing_od+tube_od;
gear_num_teeth=17;
drive_gear_thickness=4.0;
motor_gear_thickness=10.0;

bevel_dr=0.5;
gear_clearance=0.1;
Expand Down Expand Up @@ -58,20 +59,53 @@ module roller_drive_gear(
spider_coupler( thickness=gear_thickness/4, outer_d=3*gear_d/4, axle_d=axle_d, bevel_dr=bevel_dr, shrink=0.2);
}

module motor_drive_gear(
gear_d=gear_d, gear_num_teeth=gear_num_teeth
, gear_thickness=drive_gear_thickness
, gear_clearance=gear_clearance
, bevel_dr=bevel_dr, axle_d=motor_axle_d
) {
$fs=0.1;
difference() {
intersection() {
gear(number_of_teeth=gear_num_teeth
, circular_pitch=gear_circular_pitch(gear_d,gear_num_teeth)
, gear_thickness=gear_thickness, rim_thickness=gear_thickness
, bore_diameter=axle_d, clearance=gear_clearance/2
, hub_thickness=0
, hub_diameter=0
);
cylinder(r1=gear_d/2,r2=gear_d/2+gear_thickness,h=gear_thickness,center=false);
cylinder(r2=gear_d/2,r1=gear_d/2+gear_thickness,h=gear_thickness,center=false);
}
translate([0,0,gear_thickness]) rotate([180.0,0])
translate([0,0,-bevel_dr])
spider_coupler( thickness=gear_thickness/4+2*bevel_dr
, outer_d=3*gear_d/4+bevel_dr, axle_d=axle_d-2*bevel_dr, bevel_dr=bevel_dr/2,shrink=-0.2);
}
translate([0,0,gear_thickness])
spider_coupler( thickness=gear_thickness/4, outer_d=3*gear_d/4, axle_d=axle_d, bevel_dr=bevel_dr, shrink=0.2);
}


module drive_gears(
gear_d=gear_d, gear_num_teeth=gear_num_teeth, gear_spacing=1.0
, roller_gear_thickness=drive_gear_thickness, motor_gear_thickness=drive_gear_thickness
, roller_gear_thickness=drive_gear_thickness, motor_gear_thickness=motor_gear_thickness
, roller_axle_d=roller_axle_d, motor_axle_d=motor_axle_d
, roller_gear_count=roller_count
, gear_clearance=0.4
, bevel_dr=bevel_dr
) {
$fs=0.1;
motor_drive_gear(
gear_d=gear_d, gear_num_teeth=gear_num_teeth, gear_thickness=motor_gear_thickness, gear_spacing=gear_spacing
, axle_d=motor_axle_d, gear_clearance=gear_clearance, bevel_dr=bevel_dr
);
for(i=[0:roller_gear_count-1]) assign( rotAngle=360*i/roller_gear_count ) {
rotate([0,0,rotAngle]) translate([gear_d+gear_clearance+gear_spacing,0,0]) rotate([0,0,-2*rotAngle])
roller_drive_gear(
gear_d=gear_d, gear_num_teeth=gear_num_teeth, gear_thickness=roller_gear_thickness, gear_spacing=gear_spacing
, roller_axle_d=roller_axle_d, gear_clearance=gear_clearance, bevel_dr=bevel_dr
, axle_d=roller_axle_d, gear_clearance=gear_clearance, bevel_dr=bevel_dr
);
}
}
Expand Down

0 comments on commit 13def4e

Please sign in to comment.