Split housing & lid for easier 3d printing
This commit is contained in:
parent
5e39b0e9c4
commit
6763a5e66e
2 changed files with 116 additions and 51 deletions
|
@ -216,54 +216,3 @@ translate(offset_power_reg) {
|
||||||
wall_thickness - 0.1
|
wall_thickness - 0.1
|
||||||
]) corner_piece();
|
]) corner_piece();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// Lid
|
|
||||||
// -------------------------------------------
|
|
||||||
|
|
||||||
module screw_hole_indent() {
|
|
||||||
indent_depth = lid_lip_height + wall_thickness / 2;
|
|
||||||
indent_size = screw_diameter + 1.25;
|
|
||||||
translate([-indent_size/2, -indent_size/2, 0]) cube([
|
|
||||||
indent_size ,
|
|
||||||
indent_size ,
|
|
||||||
indent_depth
|
|
||||||
]);
|
|
||||||
translate([0, 0, indent_depth - 0.1]) cylinder(h = screw_length, d = screw_diameter, $fn = 25);
|
|
||||||
}
|
|
||||||
|
|
||||||
translate(offset_lid) {
|
|
||||||
difference() {
|
|
||||||
union() {
|
|
||||||
cube([
|
|
||||||
box_outside[0],
|
|
||||||
box_outside[1],
|
|
||||||
lid_base_height
|
|
||||||
]);
|
|
||||||
translate([wall_thickness, wall_thickness, lid_base_height]) cube([
|
|
||||||
box_outside[0] - (wall_thickness * 2),
|
|
||||||
box_outside[1] - (wall_thickness * 2),
|
|
||||||
lid_lip_height
|
|
||||||
]);
|
|
||||||
}
|
|
||||||
translate([0, 0, -0.1]) union() {
|
|
||||||
inset = corner_piece_size / 2 + wall_thickness;
|
|
||||||
translate([
|
|
||||||
inset,
|
|
||||||
inset,
|
|
||||||
]) screw_hole_indent();
|
|
||||||
translate([
|
|
||||||
box_outside[0] - inset,
|
|
||||||
inset,
|
|
||||||
]) screw_hole_indent();
|
|
||||||
translate([
|
|
||||||
box_outside[0] - inset,
|
|
||||||
box_outside[1] - inset
|
|
||||||
]) screw_hole_indent();
|
|
||||||
translate([
|
|
||||||
inset,
|
|
||||||
box_outside[1] - inset
|
|
||||||
]) screw_hole_indent();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
116
iot/Lid.scad
Normal file
116
iot/Lid.scad
Normal file
|
@ -0,0 +1,116 @@
|
||||||
|
////////////////
|
||||||
|
/// Settings ///
|
||||||
|
////////////////
|
||||||
|
|
||||||
|
// The thickness of the walls
|
||||||
|
wall_thickness = 4;
|
||||||
|
|
||||||
|
// The dimensions of the box on the inside
|
||||||
|
box_inside = [ 130, 140, 110 ];
|
||||||
|
|
||||||
|
// Screw dimensions
|
||||||
|
screw_diameter = 3;
|
||||||
|
screw_length = 6.3;
|
||||||
|
|
||||||
|
// The size of a breadboard
|
||||||
|
bb_size = [ 46, 35 ];
|
||||||
|
|
||||||
|
// -------------------------------------------
|
||||||
|
|
||||||
|
corner_piece_size = screw_diameter +
|
||||||
|
(wall_thickness * 2);
|
||||||
|
|
||||||
|
box_outside = [
|
||||||
|
box_inside[0] + (wall_thickness * 2),
|
||||||
|
box_inside[1] + (wall_thickness * 2),
|
||||||
|
box_inside[2] + (wall_thickness - 0.1)
|
||||||
|
];
|
||||||
|
|
||||||
|
// -------------------------------------------
|
||||||
|
|
||||||
|
// Offset of the Arduino - i.e. where it should be mounted in the box
|
||||||
|
offset_arduino = [53.4+8, 40, wall_thickness];
|
||||||
|
|
||||||
|
// Breadboard mounting specs
|
||||||
|
breadboard = [ bb_size[0], bb_size[1]+24+13, 49 ];
|
||||||
|
offset_breadboard = [70, 20, wall_thickness - 0.1];
|
||||||
|
bb_mount_height = 5;
|
||||||
|
|
||||||
|
// Battery location
|
||||||
|
battery = [ 60, 19, 70 ];
|
||||||
|
offset_battery = [
|
||||||
|
wall_thickness + corner_piece_size + 10,
|
||||||
|
box_inside[1] - battery[1],
|
||||||
|
0
|
||||||
|
];
|
||||||
|
|
||||||
|
// Power regulator mount settings
|
||||||
|
power_reg = [ 54, 31, 12 ];
|
||||||
|
power_reg_underneath = 9;
|
||||||
|
offset_power_reg = [
|
||||||
|
offset_arduino[0] + 10,
|
||||||
|
85,
|
||||||
|
wall_thickness
|
||||||
|
];
|
||||||
|
|
||||||
|
// Location of the lid - should not be touching the box - default is to the side of the box itself for easy 3d printing
|
||||||
|
offset_lid = [ 0, 0, 0 ];
|
||||||
|
|
||||||
|
// Based height of the lid
|
||||||
|
lid_base_height = wall_thickness * 1.5;
|
||||||
|
// Height of the extra lip to make the lid fit snugly
|
||||||
|
lid_lip_height = 2;
|
||||||
|
//offset_lid = [ 0, 0, box_outside[2] + 25 ];
|
||||||
|
|
||||||
|
// -------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// Lid
|
||||||
|
// -------------------------------------------
|
||||||
|
|
||||||
|
module screw_hole_indent() {
|
||||||
|
indent_depth = lid_lip_height + wall_thickness / 2;
|
||||||
|
indent_size = screw_diameter + 1.25;
|
||||||
|
translate([-indent_size/2, -indent_size/2, 0]) cube([
|
||||||
|
indent_size ,
|
||||||
|
indent_size ,
|
||||||
|
indent_depth
|
||||||
|
]);
|
||||||
|
translate([0, 0, indent_depth - 0.1]) cylinder(h = screw_length, d = screw_diameter, $fn = 25);
|
||||||
|
}
|
||||||
|
|
||||||
|
translate(offset_lid) {
|
||||||
|
difference() {
|
||||||
|
union() {
|
||||||
|
cube([
|
||||||
|
box_outside[0],
|
||||||
|
box_outside[1],
|
||||||
|
lid_base_height
|
||||||
|
]);
|
||||||
|
translate([wall_thickness, wall_thickness, lid_base_height]) cube([
|
||||||
|
box_outside[0] - (wall_thickness * 2),
|
||||||
|
box_outside[1] - (wall_thickness * 2),
|
||||||
|
lid_lip_height
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
translate([0, 0, -0.1]) union() {
|
||||||
|
inset = corner_piece_size / 2 + wall_thickness;
|
||||||
|
translate([
|
||||||
|
inset,
|
||||||
|
inset,
|
||||||
|
]) screw_hole_indent();
|
||||||
|
translate([
|
||||||
|
box_outside[0] - inset,
|
||||||
|
inset,
|
||||||
|
]) screw_hole_indent();
|
||||||
|
translate([
|
||||||
|
box_outside[0] - inset,
|
||||||
|
box_outside[1] - inset
|
||||||
|
]) screw_hole_indent();
|
||||||
|
translate([
|
||||||
|
inset,
|
||||||
|
box_outside[1] - inset
|
||||||
|
]) screw_hole_indent();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in a new issue