Line 14... |
Line 14... |
14 |
clear = 0.175; |
14 |
clear = 0.175; |
15 |
|
15 |
|
16 |
|
16 |
|
17 |
|
17 |
|
18 |
|
18 |
|
- |
|
19 |
|
19 |
MLAB_grid_xoffset = MLAB_grid/2; |
20 |
MLAB_grid_xoffset = MLAB_grid/2; |
20 |
MLAB_grid_yoffset = MLAB_grid/2; |
21 |
MLAB_grid_yoffset = MLAB_grid/2; |
21 |
|
22 |
|
22 |
grid_list = [for (j = [MLAB_grid_xoffset : MLAB_grid: x_size], i = [MLAB_grid_yoffset :MLAB_grid: y_size]) |
23 |
grid_list = [for (j = [MLAB_grid_xoffset : MLAB_grid: x_size], i = [MLAB_grid_yoffset :MLAB_grid: y_size]) |
23 |
if ((j>(x_size-10) && i>(y_size-10)) || (j<10 && i<10) || (j<10 && i>(y_size-10)) || (j>(x_size-10) && i<10) ) [j, i] ]; |
24 |
if ((j>(x_size-10) && i>(y_size-10)) || (j<10 && i<10) || (j<10 && i>(y_size-10)) || (j>(x_size-10) && i<10) ) [j, i] ]; |
24 |
|
25 |
|
25 |
|
26 |
|
- |
|
27 |
//------------parameters--------------------------- |
- |
|
28 |
|
- |
|
29 |
nY = 8; |
- |
|
30 |
nX = 6; |
- |
|
31 |
|
- |
|
32 |
|
- |
|
33 |
meshX=x_size-4*pile_radius; |
- |
|
34 |
meshY=y_size-4*pile_radius; |
- |
|
35 |
|
- |
|
36 |
// width of solid part of grid |
- |
|
37 |
meshSolid=1.2; |
- |
|
38 |
// width of blank part of grid |
- |
|
39 |
//meshSpaceX=(y_size-4*pile_radius)/8; |
- |
|
40 |
//meshSpaceY=(y_size-4*pile_radius)/8; |
- |
|
41 |
// thickness in Z direction |
- |
|
42 |
|
- |
|
43 |
|
- |
|
44 |
//------------------------------------------------- |
- |
|
45 |
//nX=meshX/(meshSolid+meshSpaceX); |
- |
|
46 |
//nY=meshY/(meshSolid+meshSpaceY); |
- |
|
47 |
|
- |
|
48 |
meshSpaceX = (meshX - meshSolid*nX)/nX; |
- |
|
49 |
meshSpaceY = (meshY - meshSolid*nY)/nY; |
- |
|
50 |
|
- |
|
51 |
|
26 |
difference () { |
52 |
difference () { |
27 |
union () { |
53 |
union () { |
28 |
for (j = grid_list) { |
54 |
for (j = grid_list) { |
29 |
translate (concat(j, [0])) |
55 |
translate (concat(j, [0])) |
30 |
cylinder (h = pedestal_height, r= pile_radius, $fn=20); |
56 |
cylinder (h = pedestal_height, r= pile_radius, $fn=20); |
Line 45... |
Line 71... |
45 |
translate (concat(j, [0])) |
71 |
translate (concat(j, [0])) |
46 |
cylinder (h = 3, r= (nut_size+clear)/2, $fn=6); |
72 |
cylinder (h = 3, r= (nut_size+clear)/2, $fn=6); |
47 |
translate (concat(j, [3.2])) // one solid layer for slicer (the holes will be pierced on demand ) |
73 |
translate (concat(j, [3.2])) // one solid layer for slicer (the holes will be pierced on demand ) |
48 |
cylinder (h = pedestal_height, r= mount_hole/2, $fn=10); |
74 |
cylinder (h = pedestal_height, r= mount_hole/2, $fn=10); |
49 |
} |
75 |
} |
- |
|
76 |
|
- |
|
77 |
|
50 |
} |
78 |
} |
51 |
|
79 |
|
- |
|
80 |
translate ([2*pile_radius, 2*pile_radius, 0]) // central hole in module support |
- |
|
81 |
union() |
- |
|
82 |
{ |
- |
|
83 |
for (i=[1:nX-1]) { |
- |
|
84 |
translate([i*(meshSolid+meshSpaceX) - meshSolid/2,0,0]) cube(size=[meshSolid, meshY, thickness],center=false); |
- |
|
85 |
} |
- |
|
86 |
|
- |
|
87 |
for (i=[1:nY-1]) { |
- |
|
88 |
translate([0,i*(meshSolid+meshSpaceY) - meshSolid/2,0]) cube(size=[meshX, meshSolid, thickness],center=false); |
- |
|
89 |
|
- |
|
90 |
} |
- |
|
91 |
} |
- |
|
92 |
|