You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.6 KiB
44 lines
1.6 KiB
7 years ago
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
// Glass slide holder to be mounted on the PCB.
|
||
|
//
|
||
|
// Author: Maximilian Stiefel
|
||
|
// Last modification: 29.06.2017
|
||
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
// Includes
|
||
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
// Dimesnions
|
||
|
include <dimensions.scad>
|
||
|
use <dimensions.scad>
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
// Vars
|
||
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
|
||
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
// Action
|
||
|
/////////////////////////////////////////////////////////////////////////////////
|
||
|
module glass_holder()
|
||
|
{
|
||
|
translate([0, 0, holder_height/2 + leg_height -0.01])
|
||
|
difference()
|
||
|
{
|
||
|
// Main body
|
||
|
cube([holder_width, holder_depth, holder_height], center = true);
|
||
|
union()
|
||
|
{
|
||
|
// Cut glass slide out and make an entrance
|
||
|
translate([-2.5, 0, 2])
|
||
|
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])
|
||
|
cylinder(r = led_illuminator_dia/2, h = 20, center = true);
|
||
|
// 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);
|
||
|
}
|
||
|
}
|
||
|
}
|