Fix for wade brushing against the carriage
[clinton/prusa3.git] / box_frame / extras / wade-gears.scad
1 // Herringbone extruder gears
2 // GNU GPL v3
3 // Václav 'ax' Hůla <axtheb@gmail.com>
4 // Josef Průša <josefprusa@me.com>
5
6 include <../configuration.scad>
7 use <inc/parametric_involute_gear_v5.0.scad>
8
9 gear_distance = 40;
10
11 small();
12 %translate([gear_distance, 0, 0]) rotate([0, 180, 92]) big(); //this should touch, teeth should mesh
13 translate([-gear_distance - 10, 10, 0]) big();
14
15 gear_width=12;
16 teeth_small=15;
17 teeth_big=49;
18 teeth_twist=400;
19 circular_pitch = (gear_distance * 180 * 2) / (teeth_small + teeth_big);
20 echo (circular_pitch);
21
22 module small(){
23 difference() {
24 union() {
25 mirror([0, 0, 1 ]) gear (number_of_teeth=teeth_small,
26 circular_pitch=circular_pitch,
27 gear_thickness = gear_width/2,
28 rim_thickness = gear_width/2,
29 hub_thickness = 0,
30 hub_diameter = 18,
31 bore_diameter = 5.25,
32 circles=0,
33 twist = teeth_twist/teeth_small);
34 gear (number_of_teeth=teeth_small,
35 circular_pitch=circular_pitch,
36 gear_thickness = gear_width/2,
37 rim_thickness = gear_width,
38 hub_thickness = 0,
39 hub_diameter = 18,
40 bore_diameter = 5.25,
41 circles=0,
42 twist = teeth_twist/teeth_small*2);
43 //hub. Two part to make it thicker
44 translate([0, 0, gear_width / 2 + 0.5]) {
45 cylinder(r1=8, r2=11, h=2.5);
46 }
47 translate([0, 0, gear_width / 2 + 3]) {
48 cylinder(r=11, h=6);
49 }
50 }
51 //bore
52 translate([0, 0, -gear_width / 2 + 0.1]) cylinder(r=5.25 / 2, h=gear_width + 9.2);
53
54 translate([0, 0, gear_width / 2 + 4.5]) rotate([0, 90, 0]) {
55 cylinder(r=m3_diameter / 2, h=20);
56 translate([0, 0, 5]) nut(m3_nut_diameter, 2.5, false);
57 translate([-10, -m3_nut_diameter / 2, 5]) cube([10, m3_nut_diameter, 2.5]);
58 }
59 }
60 }
61
62 hole_size=6.6;
63
64 module big(){
65 difference() {
66 union(){
67 mirror([0, 0, 1]) gear (number_of_teeth=teeth_big,
68 circular_pitch=circular_pitch,
69 gear_thickness = gear_width/2,
70 rim_thickness = gear_width/2,
71 hub_thickness = 0,
72 hub_diameter = 0,
73 bore_diameter = 0,
74 circles=0,
75 twist = teeth_twist/teeth_big);
76 gear (number_of_teeth=teeth_big,
77 circular_pitch=circular_pitch,
78 gear_thickness = gear_width/2,
79 rim_thickness = gear_width/2,
80 hub_thickness = 0,
81 hub_diameter = 18,
82 bore_diameter = 18,
83 circles=0,
84 twist = teeth_twist/teeth_big);
85 }
86 //reduce mass
87 translate([0, 0, 3 - gear_width / 2]) rotate([0, 0, 90])
88 cylinder(r1=24, r2=28, h=gear_width - layer_height * 9 + 1, $fn=36);
89 //bore
90 translate([0, 0, -gear_width / 2 - 0.1]) cylinder(r=m8_diameter / 2, h=gear_width + 9.2);
91 for (hole=[0:5]) {
92 rotate([0, 0, 360 / 6 * hole + 30]) translate([17,0,-10]) rotate(12) {
93 cylinder(r=hole_size, h=20);
94 cube([hole_size, hole_size, 20]);
95 }
96 }
97
98 }
99 //threaded bolt trap
100 difference(){
101 translate([0, 0, -gear_width / 2]) cylinder(r=10, h=7 + layer_height * 9);
102 translate([0, 0, -gear_width / 2 + layer_height * 6 + 2]) nut(13.1, h=10);
103 translate([0, 0, -gear_width / 2 - 0.1]) cylinder(r=m8_diameter / 2, h=gear_width + 9.2);
104 }
105
106 }