Rev Author Line No. Line
4073 kaklik 1 use<Write.scad>
2 $fn=100;
3  
4125 kaklik 4 x_size = 20; // horizontal outer size of the pedestal.
4073 kaklik 5 y_size = 20; //
6 mount_hole = 3.5;
7 nut_size = 6.8;
4410 kaklik 8 SMA_dia = 6.1;
4151 kaklik 9 SMA_flat = 3.15;
4073 kaklik 10 thickness = 10; //
4125 kaklik 11 wall_thickness = 2;
4073 kaklik 12 height = 55;
13  
14 mount_hole = 3.7;
15 clear = 0.175;
16  
17 MLAB_grid = 10.16;
18  
19 x_holes = floor(x_size / MLAB_grid);
20 y_holes = floor(y_size / MLAB_grid);
21  
22 MLAB_grid_xoffset = (x_size - (x_holes * MLAB_grid))/2;
23 MLAB_grid_yoffset = (y_size - (y_holes * MLAB_grid))/2;
24  
25 //Top part
26  
27 union () {
28  
29 difference () {
30 cube([x_size, y_size , thickness ]);
31  
32 // MLAB grid holes
33 grid_list = [for (j = [MLAB_grid_xoffset : MLAB_grid: x_size], i = [MLAB_grid_yoffset :MLAB_grid: y_size]) [j, i] ];
34  
35 for (j = grid_list) {
36 translate (concat(j, [0]))
4907 kaklik 37 cylinder (h = 3, r= nut_size/2, $fn=6);
4073 kaklik 38 translate (concat(j, [3.2])) // one solid layer for slicer (the holes will be pierced on demand )
4907 kaklik 39 cylinder (h = thickness /3, r= mount_hole/2, $fn=30);
4073 kaklik 40 translate (concat(j, [6.0]))
4907 kaklik 41 cylinder (h = 10, r= nut_size/2, $fn=6);
4073 kaklik 42 }
4907 kaklik 43 };
44 // vertical to horizontal brick connection
45 translate ([ 0, 0, thickness - sqrt(2 * wall_thickness*wall_thickness) / 2]) // move to correct positon on square diagonal
46 rotate([45,0,0])
47 cube([x_size, wall_thickness , wall_thickness ]);
4073 kaklik 48  
49 difference () {
50  
4125 kaklik 51 translate ([0, -wall_thickness, 0]) // vertical brick
4073 kaklik 52 cube([y_size, wall_thickness , height ]);
4125 kaklik 53  
54 // SMA connector holes
4073 kaklik 55 translate ([ x_size/2, wall_thickness/2, (height - thickness)/3 + thickness - SMA_dia/2])
56 rotate([90,0,0]) {
4074 kaklik 57 difference () {
58 cylinder (h = 2*wall_thickness, r= SMA_dia/2, $fn=50);
4151 kaklik 59 translate([ 0, SMA_flat , wall_thickness/2 + wall_thickness ])
4074 kaklik 60 cube([SMA_dia, 1 , thickness ], center=true);
61 }
4073 kaklik 62 }
63  
64 translate ([ x_size/2, wall_thickness/2, 2*(height - thickness)/3 + thickness + SMA_dia/2 ])
65 rotate([90,0,0]){
4074 kaklik 66 difference () {
67 cylinder (h = 2*wall_thickness, r= SMA_dia/2, $fn=50);
4151 kaklik 68 translate([ 0, SMA_flat , wall_thickness/2 + wall_thickness ])
4074 kaklik 69 cube([SMA_dia, 1 , thickness ], center=true);
70 }
4125 kaklik 71  
72 }
4907 kaklik 73  
74 }
4125 kaklik 75 // texts
76  
77 translate ([ x_size/2, wall_thickness/2, (height - thickness)/3 + thickness - SMA_dia/2])
4085 kaklik 78 rotate([90,0,0]) {
79 translate([ 0, -11, wall_thickness/2 + wall_thickness ])
80 rotate([0,0,180])
4102 kaklik 81 write("GPS",h=5,t=2,space= 1.1, font = "Letters.dxf", center=true);
4085 kaklik 82 }
83  
84 translate ([ x_size/2, wall_thickness/2, 2*(height - thickness)/3 + thickness + SMA_dia/2 ])
85 rotate([90,0,0]){
86 translate([ 0, -11, wall_thickness/2 + wall_thickness])
87 rotate([0,0,180])
4125 kaklik 88 write("ANT",h=5,t=2, space= 1.1, font = "Letters.dxf",center=true);
4085 kaklik 89 }
4125 kaklik 90  
91  
4073 kaklik 92 }
93  
94