-
Notifications
You must be signed in to change notification settings - Fork 3
/
configuration_misumi2020.scad
195 lines (151 loc) · 7.39 KB
/
configuration_misumi2020.scad
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
// PRUSA iteration3
// Configuration file
// GNU GPL v3
// Josef Pr?sa <[email protected]>
// Václav 'ax' H?la <[email protected]>
// http://www.reprap.org/wiki/Prusa_Mendel
// http://github.com/prusajr/PrusaMendel
// PLEASE SELECT ONE OF THE CONFIGURATIONS BELOW
// BY UN-COMMENTING IT
// functions
include <inc/functions.scad>;
include <inc/metric.scad>;
include <inc/conf_bushing.scad>;
include <inc/conf_bearing.scad>;
include <inc/conf_extrusion.scad>;
include <inc/belts_pulleys.scad>;
include <inc/nuts_screws.scad>;
include <printer_conf.scad>;
// Custom settings here, tailor to your supplies and print settings
inch = 25.4;
// Select your belt type ******************************************************
//T2.5 conf_belt_T2_5
//T5 (strongly discouraged) conf_belt_T5
//HTD3 conf_belt_HTD3
//MXL conf_belt_MXL
//GT2 conf_belt_GT2
//GT2-3mm conf_belt_GT2_3mm
belt = conf_belt_GT2;
belt_width = 7;
// Select your pulley type ******************************************************
// GT2-3mm 17 groove pulley conf_pulley_17_GT2_3mm
// GT2 36 groove pulley conf_pulley_36_GT2
// GT2 40 groove pulley conf_pulley_40_GT2
pulley = conf_pulley_36_GT2;
// the motor has a cylinder on it that raises the base of the shaft 2mm, this value must be greater than 2mm
pulley_height_from_motor=3;
// Stepper motor dimensions
stepper_motor_height=42;
stepper_motor_width=42;
stepper_motor_padded=stepper_motor_width+2;
// distance between the center of the Z Lead screw and the center of the Z smooth rod. Default for Prusa i3 is 17
z_screw_rod_separation=17;
// Screws used to mount to the extrusion
// Thickness of the mounts (do not change unless you check for clearances)
support_wall_thickness=5;
motor_mount_thickness=10;
// Choose screws configuration ***************************************
// screw used for the Y idler bearing. make sure it matches the ID of the bearing.
y_bearing_screw = screw_M4_button_head;
y_bearing_nut = nut_M4;
// screw used to mount parts to the extrusion
ex_screw=screw_M5_button_head;
ex_nut=nut_jam_M5;
// extrusion parameters
// 10 series 8020 (inch) conf_ex_8020_10s
// 15 series 8020 (inch) conf_ex_8020_15s
// 20 series 8020 conf_ex_8020_20s
// 25 series 8020 conf_ex_8020_25s
// 30 series 8020 conf_ex_8020_30s
// Misumi 2020 conf_ex_misumi_2020
extrusion = conf_ex_misumi_2020;
// extrusion lengths
// You can delete these and just specify in millimeters below
y_length_in = 16;
x_width_in = 12;
z_height_in = 13;
top_x_width_in=x_width_in;
y_length = y_length_in * inch;
x_width = x_width_in * inch;
z_height = z_height_in * inch;
// Smooth rod length is automatically calculated by extrusion length (can do vice-versa)
// the width of the X axis smooth rod block is 50, we have 2, so add in 100
x_smooth_rod_length=(x_width+100);
y_smooth_rod_length=(y_length+extrusion[0]*2);
z_smooth_rod_length=(z_height+extrusion[0]);
// Choose bearing/bushing configuration ***************************************
// conf_b_* are in inc/conf_bushing.scad
bushing_x = conf_b_lm8uu;
bushing_y = conf_b_lm8uu;
bushing_z = conf_b_lm8uu;
bushing_retainer_add=(9*layer_height);
bushing_clamp_outer_radius_add1=((4*single_wall_width) < 2) ? floor(2/single_wall_width)*single_wall_width : (4*single_wall_width);
bushing_clamp_outer_radius_add=((4*single_wall_width) > 2.7) ? floor(2.6/single_wall_width)*single_wall_width : bushing_clamp_outer_radius_add1;
// Y carriage settings
y_carriage_screw = screw_M4_button_head;
y_carriage_hole_spacing = 29;
y_bushing_mount_thickness=(support_wall_thickness+2);
y_bushing_foot_height=bushing_y[2]+bushing_retainer_add;
// for longer bearings use one shorter in x-carriage to make place for belt attachment
// by default use same as xy
bushing_x_carriage = bushing_x;
x_smooth_rod_diameter=bushing_x[0]*2;
y_smooth_rod_diameter=bushing_y[0]*2;
z_smooth_rod_diameter=bushing_z[0]*2;
top_x_width = top_x_width_in * inch + z_smooth_rod_diameter + support_wall_thickness*2+stepper_motor_padded+z_screw_rod_separation*2+screw_head_top_dia(v_screw_hole(ex_screw, $fn=8))*2;
// Select idler bearing size **************************************************
//y_idler_washer=washer_inch_1_4;
x_idler_bearing = bearing_624_double;
y_idler_bearing = bearing_624_double;
// Fillets ********************************************************************
// mostly cosmetic, except z axis.
// 0 = no fillets
// 1 = fillet
use_fillets = 1;
// END of custom settings
// *******************
// Distance between Y rods
//y_rod_separation=100; // for Prusa i3 mounting compatability
y_rod_separation=140;
y_clamp_separation=100;
// this is where the bottom of the Y rod will be.
y_rod_height=support_wall_thickness+9;
// LM8UU dimensions
// LM8UU_length = conf_b[2];
// The thickness of the mount for the LM8UU is 2mm ( using lm8uu-holder-slim_v1-1 )
y_bushing_height = bushing_y[1]+y_bushing_mount_thickness;
y_belt_center=(y_rod_height+y_smooth_rod_diameter/2+y_bushing_height)-(pulley[8] + pulley_height_from_motor);
// this setting is for the Prusa i2 bed
y_belt_clamp_hole_distance=18;
// *******************
// You are not supposed to change this
xaxis_rod_distance = 45;
//calculated from settings
single_wall_width = width_over_thickness * layer_height;
x_idler_width = (x_idler_bearing[1] > 7 ? x_idler_bearing[1] : 7) + 2.5 * x_idler_bearing[3] ;
y_idler_width = (y_idler_bearing[1] > 7 ? y_idler_bearing[1] : 7) + 2.5 * y_idler_bearing[3] ;
//deltas are used to enlarge parts for bigger bearings
x_delta = ((bushing_x[1] <= 7.7) ? 0 : bushing_x[1] - 7.7) * 0.9;
y_delta = ((bushing_y[1] <= 7.7) ? 0 : bushing_y[1] - 7.7) * 0.9;
z_delta = (bushing_z[1] <= 7.7) ? 0 : bushing_z[1] - 7.7;
// Don't change these calculations. They are for calculating the Brace position.
brace_offset=(extrusion[0]*2-extrusion[0]*cos(30));
z_extrusion_pos=y_length/2+((-bushing_x[0]+0.5-(extrusion[0]/2+support_wall_thickness+stepper_motor_padded/2))-24-3.5+(50.5-(7.4444+32.0111+0.25)));
brace_pos=z_extrusion_pos-extrusion[0]*2;
echo("X axis extrusion length = ", x_width, " inch=", (x_width)/inch);
echo("top support X axis extrusion length = ", top_x_width, " inch=", (top_x_width)/inch);
echo("Y axis extrusion length = ", y_length, " inch=", (y_length)/inch);
echo("Z axis extrusion length = ", z_height, " inch=", (z_height)/inch);
echo("Z axis Brace length = ", (brace_pos+brace_offset-1-extrusion[0]/2)/cos(60), " inch=", (brace_pos+brace_offset-1-extrusion[0]/2)/cos(60)/inch);
echo("X axis smooth rod length = ", x_smooth_rod_length, " inch=", x_smooth_rod_length/inch);
echo("Y axis smooth rod length = ", y_smooth_rod_length, " inch=", y_smooth_rod_length/inch);
echo("Z axis smooth rod length = ", z_smooth_rod_length, " inch=", z_smooth_rod_length/inch);
echo("Drill locations:");
echo("For Z axis extrusion mount, drill Y axis extrusion at ", z_extrusion_pos, "inch=", z_extrusion_pos/inch, " from end." );
echo("For X axis top extrusion mount, drill top X axis extrusion at ", ((top_x_width-x_width)/2+extrusion[0]/2), "inch=", ((top_x_width-x_width)/2+extrusion[0]/2)/inch, "from both ends.");
//Check to be sure the pulley doesn't hit the Y bed
if ((y_rod_height+y_smooth_rod_diameter/2+y_bushing_height)-(pulley[0] + pulley_height_from_motor) < 2) echo ("Warning! Bed is too close to the pulley. Please change y_rod_height.");
echo("Distance between bed and Y pulley:", (y_rod_height+y_smooth_rod_diameter/2+y_bushing_mount_thickness)-(pulley[0] + pulley_height_from_motor));
// These constants define the geometry of the complete-printer.scad
bed_x_size=225;
bed_y_size=225;