Browse Source

Updated the glass slide holder.

master
Maximilian Stiefel 7 years ago
parent
commit
90cc4c901a
  1. 2
      cad/mechanics_rev4/housing/main.scad
  2. 31
      cad/mechanics_rev4/pcb/dimensions.scad
  3. 12
      cad/mechanics_rev4/pcb/glass_holder.scad
  4. 8122
      cad/mechanics_rev4/pcb/glass_holder.stl
  5. BIN
      cad/mechanics_rev4/pcb/glass_slide_holder.jpg
  6. 10614
      cad/mechanics_rev4/pcb/glass_slide_holder.stl
  7. 5154
      cad/mechanics_rev4/pcb/illuminator.stl
  8. 13
      cad/mechanics_rev4/pcb/led_illuminator.scad
  9. 1038
      cad/mechanics_rev4/pcb/leg.stl
  10. 23
      cad/mechanics_rev4/pcb/legs.scad
  11. 16
      cad/mechanics_rev4/pcb/main.scad
  12. BIN
      cad/mechanics_rev4/pcb/screen_shot_1.png
  13. BIN
      cad/mechanics_rev4/pcb/screenshot_2.png
  14. 24
      cad/mechanics_rev4/pcb/screw_holes.scad
  15. 30
      cad/mechanics_rev4/pcb/screw_sinkings.scad
  16. 14
      pcbs/analog_board_v0.2/analog_board_v0.2.kicad_pcb
  17. 26
      pcbs/analog_board_v0.2/analog_board_v0.2.kicad_pcb-bak
  18. 7
      pcbs/analog_board_v0.22/analog_board_v0.22.kicad_pcb
  19. 2
      pcbs/analog_board_v0.22/analog_board_v0.22.kicad_pcb-bak

2
cad/mechanics_rev4/housing/main.scad

@ -50,7 +50,7 @@ color(myColor1)
{
// Lid right
translate([housing_outside_width/2 + close*20, 0, 0])
!rotate([0, 90, 0])
rotate([0, 90, 0])
lid_l_r();
// Lid left

31
cad/mechanics_rev4/pcb/dimensions.scad

@ -5,7 +5,9 @@
// Last modification: 29.07.2017
/////////////////////////////////////////////////////////////////////////////////
allowance03 = 0.3;
allowance05 = 0.5;
allowance1 = 1;
// Glass dimensions
glass_slide_height = 1;
@ -18,22 +20,39 @@ holder_height = 3 + glass_slide_height + allowance05;
holder_depth = glass_slide_depth + allowance05 + 4;
holder_width = 80; // Width of the PCB
echo(holder_height=holder_height);
holder_bottom_side_thickness = 2;
// LED illuminator dimensions
led_illuminator_dia = 10;
led_illuminator_thickness = 2;
led_illuminator_dia = 12.5 - led_illuminator_thickness;
led_illuminator_height = 15;
led_illuminator_leg1_pos_y = -6.25;
led_illuminator_leg2_pos_y = 4;
led_illuminator_leg2_pos_x = -4.75;
led_illuminator_leg_dia = 2.2 - allowance05;
led_illuminator_leg_height = 4;
led_pos_x = 18;
led_pos_y = 13;
led_illuminator_thickness = 2;
led_illuminator_slot = 4;
led_illuminator_angle = 35;
leg_outer_dia = 5;
leg_inner_dia = 2.5;
// Screw dimensions
drill_dia_m3 = 3.2;
drill_depth = 7;
drill_sinking_dia1_m3 = 5.5;
drill_sinking_dia2_m3 = 3;
drill_sinking_height_m3 = 2;
// Leg dimensions
leg_width = 4;
leg_depth = 11;
leg_height = led_illuminator_height;
leg_inner_dia = 2.5;
leg_pos_y = 13;
leg_pos_x = 2.5;
leg_distance = 6.5;
leg_drill_depth = 7;
leg_diff1 = leg_depth - leg_distance;
//leg_drill_depth = 7;
leg_drill_depth = leg_height + 1;
myColor1 = "LimeGreen";
myColor1 = "Grey";

12
cad/mechanics_rev4/pcb/glass_holder.scad

@ -13,6 +13,10 @@
include <dimensions.scad>
use <dimensions.scad>
// Dimesnions
include <screw_sinkings.scad>
use <screw_sinkings.scad>
/////////////////////////////////////////////////////////////////////////////////
// Vars
/////////////////////////////////////////////////////////////////////////////////
@ -22,7 +26,7 @@ use <dimensions.scad>
/////////////////////////////////////////////////////////////////////////////////
module glass_holder()
{
translate([0, 0, holder_height/2 + leg_height -0.01])
//translate([0, 0, holder_height/2 + leg_height -0.01])
difference()
{
// Main body
@ -30,7 +34,7 @@ module glass_holder()
union()
{
// Cut glass slide out and make an entrance
translate([-2.5, 0, 2])
translate([-2.5, 0, holder_bottom_side_thickness])
cube([glass_slide_width + allowance05 + 5, glass_slide_depth + allowance05, holder_height], center = true);
// Cut out a cylinder for the LED
translate([glass_slide_width/2 - led_pos_x, 0, 0])
@ -38,6 +42,10 @@ module glass_holder()
// Cut out a "window" where the receiver photodiode is sitting
translate([glass_slide_width/2 - led_pos_x, glass_slide_depth/2, 2])
cube([window_size, 10, 10], center = true);
// Cut out holes for screws
translate([0, 0, -holder_bottom_side_thickness + 0.5])
rotate([180, 0, 0])
screw_sinkings(glass_slide_width - 2*leg_pos_x, 0, drill_sinking_dia1_m3, drill_sinking_dia2_m3, drill_sinking_height_m3);
}
}
}

8122
cad/mechanics_rev4/pcb/glass_holder.stl

File diff suppressed because it is too large

BIN
cad/mechanics_rev4/pcb/glass_slide_holder.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 25 KiB

10614
cad/mechanics_rev4/pcb/glass_slide_holder.stl

File diff suppressed because it is too large

5154
cad/mechanics_rev4/pcb/illuminator.stl

File diff suppressed because it is too large

13
cad/mechanics_rev4/pcb/led_illuminator.scad

@ -22,14 +22,21 @@ use <dimensions.scad>
/////////////////////////////////////////////////////////////////////////////////
module illuminator()
{
translate([glass_slide_width/2 - led_pos_x, 0, led_illuminator_height/2 + 0.01])
difference()
{
cylinder(r = led_illuminator_dia/2 + led_illuminator_thickness, led_illuminator_height, center = true);
union()
{
cylinder(r = led_illuminator_dia/2 + led_illuminator_thickness, h = led_illuminator_height + allowance03, center = true);
// The two legs
translate([0, led_illuminator_leg1_pos_y, - (led_illuminator_height + led_illuminator_leg_height)/2 - 0.01 ])
cylinder(r = (led_illuminator_leg_dia)/2, h = led_illuminator_leg_height, center = true);
translate([led_illuminator_leg2_pos_x, led_illuminator_leg2_pos_y, - (led_illuminator_height + led_illuminator_leg_height)/2 - 0.01 ])
cylinder(r = (led_illuminator_leg_dia)/2, h = led_illuminator_leg_height, center = true);
}
union()
{
// Cut out inner cylinder
cylinder(r = led_illuminator_dia/2, led_illuminator_height + 0.01, center = true);
cylinder(r = led_illuminator_dia/2, led_illuminator_height + +allowance03 + 0.01, center = true);
// Cut out slot
rotate([0, 0, led_illuminator_angle + 180])
translate([led_illuminator_dia/2, 0, -led_illuminator_height/2 - 0.01])

1038
cad/mechanics_rev4/pcb/leg.stl

File diff suppressed because it is too large

23
cad/mechanics_rev4/pcb/legs.scad

@ -26,27 +26,18 @@ module legs()
{
union()
{
// Legs at the left
for(y = [0, 1])
translate([glass_slide_width/2 - leg_pos_x, -y*leg_distance,0])
cylinder(r = leg_outer_dia/2, h = leg_height);
// Legs at the right
for(y = [0, 1])
translate([-glass_slide_width/2 + leg_pos_x, y*leg_distance, 0])
cylinder(r = leg_outer_dia/2, h = leg_height);
// Leg
translate([0, - leg_depth/2 + leg_diff1/2, leg_height/2])
cube([leg_width, leg_depth, leg_height], center = true);
}
union()
{
// Legs at the left
for(y = [0, 1])
translate([glass_slide_width/2 - leg_pos_x, -y*leg_distance, -0.01])
cylinder(r = leg_inner_dia/2, h = leg_drill_depth);
// Legs at the right
// Drill holes
for(y = [0, 1])
translate([-glass_slide_width/2 + leg_pos_x, y*leg_distance, -0.01])
translate([0, -y*leg_distance, -0.01])
cylinder(r = leg_inner_dia/2, h = leg_drill_depth);
}
}
}
}

16
cad/mechanics_rev4/pcb/main.scad

@ -14,7 +14,7 @@ include <dimensions.scad>
use <dimensions.scad>
// Module for the glass holder
include <glass_hollder.scad>
include <glass_holder.scad>
use <glass_holder.scad>
// Module for the legs
@ -36,7 +36,21 @@ $fs = 0.5; // minimum facet size is now 0.5 mm
/////////////////////////////////////////////////////////////////////////////////
color(myColor1)
{
// Glass holder
translate([0, 0, holder_height/2 + leg_height -0.01])
!translate([0, 0, holder_height/2])
glass_holder();
// Legs
translate([glass_slide_width/2 - leg_pos_x, 0, 0])
legs();
translate([-glass_slide_width/2 + leg_pos_x, 0, 0])
rotate([0, 0, 180])
legs();
translate([glass_slide_width/2 - led_pos_x, 0, led_illuminator_height/2 + 0.01])
//translate([0, 0, (led_illuminator_height + allowance03)/2])
//rotate([0, 180 ,0])
illuminator();
}

BIN
cad/mechanics_rev4/pcb/screen_shot_1.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
cad/mechanics_rev4/pcb/screenshot_2.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

24
cad/mechanics_rev4/pcb/screw_holes.scad

@ -0,0 +1,24 @@
/////////////////////////////////////////////////////////////////////////////////
// Module for four holes along a rectangle for screw threads.
//
// Author: Maximilian Stiefel
// Last modification: 09.07.2017
/////////////////////////////////////////////////////////////////////////////////
module screw_holes(xdim, ydim, dia, depth)
{
/////////////////////////////////////////////////////////////////////////
// Vars
/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
// Action
/////////////////////////////////////////////////////////////////////////
union(){
for(x=[-1, +1])
for(y=[-1, +1])
translate([x*xdim/2, y*ydim/2, 0])
cylinder(r = dia/2, h = depth, center =true);
}
}

30
cad/mechanics_rev4/pcb/screw_sinkings.scad

@ -0,0 +1,30 @@
/////////////////////////////////////////////////////////////////////////////////
// Module for four sinking holes, that cone-shaped screw heads can sink in.
//
// Author: Maximilian Stiefel
// Last modification: 09.07.2017
/////////////////////////////////////////////////////////////////////////////////
module screw_sinkings(xdim, ydim, dia1, dia2, depth)
{
/////////////////////////////////////////////////////////////////////////
// Vars
/////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////
// Action
/////////////////////////////////////////////////////////////////////////
union(){
for(x=[-1, +1])
for(y=[-1, +1])
translate([x*xdim/2, y*ydim/2, 0])
union()
{
translate([0, 0, -depth + 0.1])
cylinder(r = dia1/2, h = depth, center = true);
cylinder(r1 = dia1/2, r2 = dia2/2, h = depth, center = true);
}
}
}

14
pcbs/analog_board_v0.2/analog_board_v0.2.kicad_pcb

@ -5,7 +5,7 @@
(no_connects 0)
(area 68.642858 46.15 215.357144 148.850001)
(thickness 1.6)
(drawings 52)
(drawings 51)
(tracks 364)
(zones 0)
(modules 238)
@ -4682,18 +4682,6 @@
(gr_text " Distance 1st pin TSW-103-08-G-D-RA to plastic 1.52 mm\n+ Thickness Plastic 2.54 mm \n+ Deepness female connector BCS-103-F-D-TE 7.37 mm\n--------------------------------------\n11.43 mm\n\n-> PCB sits directly on backplane. " (at 131.25 55) (layer Dwgs.User)
(effects (font (size 1.5 1.5) (thickness 0.3)) (justify left))
)
(dimension 6.5 (width 0.3) (layer Dwgs.User)
(gr_text "6,5 mm" (at 118 107.25 90) (layer Dwgs.User)
(effects (font (size 1.5 1.5) (thickness 0.3)))
)
(feature1 (pts (xy 125 103.5) (xy 120.05 103.5)))
(feature2 (pts (xy 125 110) (xy 120.05 110)))
(crossbar (pts (xy 122.75 110) (xy 122.75 103.5)))
(arrow1a (pts (xy 122.75 103.5) (xy 123.336421 104.626504)))
(arrow1b (pts (xy 122.75 103.5) (xy 122.163579 104.626504)))
(arrow2a (pts (xy 122.75 110) (xy 123.336421 108.873496)))
(arrow2b (pts (xy 122.75 110) (xy 122.163579 108.873496)))
)
(gr_circle (center 125 110) (end 125 103.75) (layer Dwgs.User) (width 0.2))
(gr_circle (center 125 110) (end 124.25 107) (layer Dwgs.User) (width 0.2))
(dimension 3 (width 0.3) (layer Dwgs.User)

26
pcbs/analog_board_v0.2/analog_board_v0.2.kicad_pcb-bak

@ -5,7 +5,7 @@
(no_connects 0)
(area 68.642858 46.15 215.357144 148.850001)
(thickness 1.6)
(drawings 54)
(drawings 52)
(tracks 364)
(zones 0)
(modules 238)
@ -4676,30 +4676,6 @@
)
)
(dimension 13 (width 0.3) (layer Dwgs.User)
(gr_text "13,000 mm" (at 166.6 116.5 270) (layer Dwgs.User)
(effects (font (size 1.5 1.5) (thickness 0.3)))
)
(feature1 (pts (xy 180.5 123) (xy 167.5 123)))
(feature2 (pts (xy 180.5 110) (xy 167.5 110)))
(crossbar (pts (xy 170.2 110) (xy 170.2 123)))
(arrow1a (pts (xy 170.2 123) (xy 169.613579 121.873496)))
(arrow1b (pts (xy 170.2 123) (xy 170.786421 121.873496)))
(arrow2a (pts (xy 170.2 110) (xy 169.613579 111.126504)))
(arrow2b (pts (xy 170.2 110) (xy 170.786421 111.126504)))
)
(dimension 6.4 (width 0.3) (layer Dwgs.User)
(gr_text "6,400 mm" (at 173.7 117.1 270) (layer Dwgs.User)
(effects (font (size 1.5 1.5) (thickness 0.3)))
)
(feature1 (pts (xy 180.5 123) (xy 175.100001 123)))
(feature2 (pts (xy 180.5 116.6) (xy 175.100001 116.6)))
(crossbar (pts (xy 177.800001 116.6) (xy 177.800001 123)))
(arrow1a (pts (xy 177.800001 123) (xy 177.21358 121.873496)))
(arrow1b (pts (xy 177.800001 123) (xy 178.386422 121.873496)))
(arrow2a (pts (xy 177.800001 116.6) (xy 177.21358 117.726504)))
(arrow2b (pts (xy 177.800001 116.6) (xy 178.386422 117.726504)))
)
(gr_text <1 (at 136.3345 124.587) (layer F.SilkS)
(effects (font (size 1.5 1.5) (thickness 0.3)))
)

7
pcbs/analog_board_v0.22/analog_board_v0.22.kicad_pcb

@ -1,11 +1,11 @@
(kicad_pcb (version 4) (host pcbnew 4.0.6-e0-6349~52~ubuntu17.04.1)
(kicad_pcb (version 4) (host pcbnew 4.0.7-e0-6372~58~ubuntu17.04.1)
(general
(links 287)
(no_connects 0)
(area 62.150001 46.15 215.357144 157.700001)
(thickness 1.6)
(drawings 54)
(drawings 55)
(tracks 368)
(zones 0)
(modules 224)
@ -4552,6 +4552,9 @@
)
)
(gr_text Photodiode (at 118.4 125.5) (layer Dwgs.User)
(effects (font (size 1.5 1.5) (thickness 0.3)))
)
(dimension 50 (width 0.3) (layer Dwgs.User)
(gr_text "50,000 mm" (at 68.65 110 270) (layer Dwgs.User)
(effects (font (size 1.5 1.5) (thickness 0.3)))

2
pcbs/analog_board_v0.22/analog_board_v0.22.kicad_pcb-bak

@ -3,7 +3,7 @@
(general
(links 287)
(no_connects 0)
(area 104.949999 84.949999 185.050001 135.050001)
(area 62.150001 46.15 215.357144 157.700001)
(thickness 1.6)
(drawings 54)
(tracks 368)

Loading…
Cancel
Save