use<Write.scad>
$fn=100;
x_size = 20; // horizontal outer size of the aquarium pedestal.
y_size = 20; //
mount_hole = 3.5;
nut_size = 6.8;
SMA_dia = 6.5;
thickness = 10; //
wall_thickness = 3;
height = 55;
mount_hole = 3.7;
clear = 0.175;
MLAB_grid = 10.16;
x_holes = floor(x_size / MLAB_grid);
y_holes = floor(y_size / MLAB_grid);
MLAB_grid_xoffset = (x_size - (x_holes * MLAB_grid))/2;
MLAB_grid_yoffset = (y_size - (y_holes * MLAB_grid))/2;
//Top part
union () {
difference () {
cube([x_size, y_size , thickness ]);
// MLAB grid holes
grid_list = [for (j = [MLAB_grid_xoffset : MLAB_grid: x_size], i = [MLAB_grid_yoffset :MLAB_grid: y_size]) [j, i] ];
for (j = grid_list) {
translate (concat(j, [0]))
cylinder (h = 3, r= nut_size/2, $fn=6);
translate (concat(j, [3.2])) // one solid layer for slicer (the holes will be pierced on demand )
cylinder (h = thickness /3, r= mount_hole/2, $fn=30);
translate (concat(j, [6.0]))
cylinder (h = 10, r= nut_size/2, $fn=6);
}
};
difference () {
translate ([0, -wall_thickness, 0])
cube([y_size, wall_thickness , height ]);
translate ([ x_size/2, wall_thickness/2, (height - thickness)/3 + thickness - SMA_dia/2])
rotate([90,0,0]) {
translate([ 0, -11, wall_thickness/2 + wall_thickness ])
rotate([0,0,180])
write("GPS",h=3,t=1,center=true);
cylinder (h = 2*wall_thickness, r= SMA_dia/2, $fn=50);
}
translate ([ x_size/2, wall_thickness/2, 2*(height - thickness)/3 + thickness + SMA_dia/2 ])
rotate([90,0,0]){
translate([ 0, -11, wall_thickness/2 + wall_thickness])
rotate([0,0,180])
write("ANT",h=3,t=1,center=true);
cylinder (h = 2*wall_thickness, r= SMA_dia/2, $fn=50);
}
}
}