summaryrefslogtreecommitdiff
path: root/hardware/enclosure
diff options
context:
space:
mode:
authorjaseg <git@jaseg.net>2018-07-17 15:56:47 +0200
committerjaseg <git@jaseg.net>2018-07-17 15:56:47 +0200
commitd07138f86f342e77c96d567c3120c1abc8afc017 (patch)
tree14d4f542176fba49505b2238d943c392169c36bb /hardware/enclosure
parentfe0edb53e01b8ccc77624768a56e405014a353bc (diff)
downloadolsndot-d07138f86f342e77c96d567c3120c1abc8afc017.tar.gz
olsndot-d07138f86f342e77c96d567c3120c1abc8afc017.tar.bz2
olsndot-d07138f86f342e77c96d567c3120c1abc8afc017.zip
Add/reorg enclosure OpenSCAD files
Diffstat (limited to 'hardware/enclosure')
-rw-r--r--hardware/enclosure/olsndot_base.scad110
-rw-r--r--hardware/enclosure/olsndot_clamp_base.scad105
-rw-r--r--hardware/enclosure/olsndot_clamp_stoppers.scad20
3 files changed, 0 insertions, 235 deletions
diff --git a/hardware/enclosure/olsndot_base.scad b/hardware/enclosure/olsndot_base.scad
deleted file mode 100644
index 2cea8b2..0000000
--- a/hardware/enclosure/olsndot_base.scad
+++ /dev/null
@@ -1,110 +0,0 @@
-
-/* A small, arbitrary unit to guard against rounding errors */
-eps = 0.1;
-alot = 1000;
-
-/* Base PCB size */
-pcb_width = 90;
-pcb_height = 50;
-
-bottom_thickness = 1.5;
-
-screw_base_dia = 8;
-screw_base_h = 5;
-screw_nut_dia = 5.4;
-screw_nut_h = 6;
-screw_hole_dia = 3.5;
-screw_hole_h = 6;
-
-module rounded_rect(w, h, r) {
- hull(){
- translate([w/2-r, h/2-r]) circle(r);
- translate([-(w/2-r), h/2-r]) circle(r);
- translate([w/2-r, -(h/2-r)]) circle(r);
- translate([-(w/2-r), -(h/2-r)]) circle(r);
- }
-}
-
-module single_screw_base() {
- translate([0, 0, bottom_thickness-eps]) linear_extrude(height=screw_base_h+eps) {
- circle(d=screw_base_dia);
- translate([-screw_base_dia/2, 0]) square([alot, alot]);
- translate([0, -screw_base_dia/2]) square([alot, alot]);
- }
-}
-
-w = pcb_width+10;
-h = pcb_height;
-l = 10;
-r = 10;
-t = 5;
-b = 5;
-s1_pos = [ w/2-l, h/2-b];
-s2_pos = [-w/2+r, -h/2+t];
-s3_pos = [ w/2-l, -h/2+t];
-s4_pos = [-w/2+r, h/2-b];
-module screw_bases() {
- intersection() {
- union() {
- translate(s1_pos) single_screw_base();
- translate(s2_pos) mirror([1,1,0]) single_screw_base();
- translate(s3_pos) mirror([0,1,0]) single_screw_base();
- translate(s4_pos) mirror([1,0,0]) single_screw_base();
- }
- cube([w+eps, h+eps, alot], center=true);
- }
-}
-
-
-module single_screw_hole() {
- translate([0, 0, bottom_thickness+screw_base_h+eps])
- mirror([0,0,1])
- union() {
- cylinder(h=screw_nut_h+eps, d=screw_nut_dia);
- cylinder(h=screw_hole_h+eps, d=screw_hole_dia);
- }
-}
-
-module screw_holes() {
- translate(s1_pos) single_screw_hole();
- translate(s2_pos) mirror([1,1,0]) single_screw_hole();
- translate(s3_pos) mirror([0,1,0]) single_screw_hole();
- translate(s4_pos) mirror([1,0,0]) single_screw_hole();
-}
-
-tab_w = 20;
-tab_h = 30;
-tab_thickness = 3;
-tab_hole_d = 9;
-module screw_tab() {
- difference() {
- translate([-tab_h/2, -eps, 0]) cube([tab_h, tab_w+eps, tab_thickness]);
- rotate([0, 0, -50]) translate([-alot/2, tab_h*0.6, -eps]) cube([alot, alot, tab_h+2*eps]);
- rotate([0, 0, 50]) translate([-alot/2, tab_h*0.6, -eps]) cube([alot, alot, tab_thickness+2*eps]);
- translate([0, tab_w/2, -eps]) cylinder(d=tab_hole_d, h=tab_thickness+eps*2);
- }
-}
-
-wall_height = bottom_thickness + 3;
-wall_thickness = 1.5;
-
-cutout_w = 25;
-cutout_h = 70;
-
-module carrier() {
- union() {
- difference() {
- translate([0, 0, wall_height/2]) cube([w, h, wall_height], center=true);
- translate([0, 0, bottom_thickness + alot/2]) cube([w-wall_thickness*2+eps, h-wall_thickness*2+eps, alot], center=true);
- cube([cutout_h, cutout_w, alot], center=true);
- }
- difference() {
- screw_bases();
- screw_holes();
- }
- translate([0, h/2, 0]) screw_tab();
- mirror([0,1,0]) translate([0, h/2, 0]) screw_tab();
- }
-}
-
-carrier($fn=25); \ No newline at end of file
diff --git a/hardware/enclosure/olsndot_clamp_base.scad b/hardware/enclosure/olsndot_clamp_base.scad
deleted file mode 100644
index ad09989..0000000
--- a/hardware/enclosure/olsndot_clamp_base.scad
+++ /dev/null
@@ -1,105 +0,0 @@
-eps = 0.01;
-
-module clamp(
- l=90,
- w=14,
- h=10,
- d1=30,
- d2=35,
- o=10,
- hdia1=5,
- hdia2=10,
- hd=5,
- nw=7.8,
- nd=3,
- notch_sf=0.75,
- notch_d=3,
- notch_a=10,
- notch_o=0.5,
- edge_a=5,
- edge_d=12) {
- translate([-h-l/2, -w/2, 0]) union() {
- translate([l+h-notch_d, 0, 0]) intersection() {
- difference() {
- cube([d1, w, d1]);
- //scale([notch_sf, 1, 1]) translate([(d1-h)/2, 0, h+(d1-h)/2]) rotate([0, -135, 0]) translate([0, -eps/2, 0]) cube([d1, w+eps, d1]);
- translate([notch_d, 0, h+notch_o]) mirror([1, 0, 0]) rotate([0, notch_a, 0]) translate([0, -eps/2, 0]) cube([d1, w+eps, d1]);
- }
- translate([d1-edge_a, 0, d1/2]) rotate([0, -90-45, 0]) cube([2*d1, w+eps, 2*d1]);
- translate([-d1-edge_d, 0]) cube([2*d1, w+eps, 2*d1]);
- }
- difference() {
- union() {
- cube ([l+h, w, h]);
- cube ([h, w, d2]);
- }
- rotate([0, 45, 0]) translate([-l/2, -eps/2, -d2/8*7]) cube([l, w+eps, d2]);
- translate([0, 0, d2]) rotate([0, 90+45, 0]) translate([-l/2, -eps/2, -d2/8*7]) cube([l, w+eps, d2]);
- translate([-eps/2, w/2, d2-o]) rotate([0, 90, 0]) union() {
- cylinder(d=6, h=l);
- cylinder(d=12, h=hd);
- translate([-11/2, -11/2, h-4]) cube([11, 11, 5]);
- }
- }
- }
-}
-
-module hexagon(size, height) {
- boxWidth = size/1.75;
- for (r = [-60, 0, 60]) rotate([0,0,r]) cube([boxWidth, size, height], true);
-}
-
-nut_dia = 5.3;
-nut_depth=5.5;
-nut_off_y = 80/2;
-nut_off_x = 20;
-
-module nut_holder(
- a = 30,
- b = 15,
- c = 10,
- d = 5.0,
- e = 4.0,
- ) {
-
- difference() {
- union() {
- translate([-b/2, -(a-b)/2, 0]) cube([b, a-b, c]);
- translate([0, -(a-b)/2, 0]) cylinder(d=b, h=c);
- translate([0, (a-b)/2, 0]) cylinder(d=b, h=c);
- }
- translate([0, a/2 - d, -eps]) {
- translate([0, 0, c-nut_depth+2*eps]) cylinder(d=nut_dia, h=nut_depth);
- cylinder(d=e, h=c+2*eps);
- }
- translate([0, -a/2 + d, -eps]) {
- translate([0, 0, c-nut_depth+2*eps]) cylinder(d=nut_dia, h=nut_depth);
- cylinder(d=e, h=c+2*eps);
- }
- }
-}
-
-module base($fn=25, cw=93, sw=15, sh=15, strut_spacing=30, clamp_dist=90) {
- d = 30;
- clamp(l=cw, h=sh);
- translate([-d, 0, 0]) nut_holder();
- translate([d, 0, 0]) nut_holder();
- /*difference() {
- translate([0, -clamp_dist/2, 0]) union() {
- */
- /*
- translate([0, 0, 0]) clamp(l=cw, h=sh);
- translate([-strut_spacing/2-sw, 0, 0]) cube([sw, clamp_dist, sh]);
- translate([ strut_spacing/2, 0, 0]) cube([sw, clamp_dist, sh]);
- */
- //}
- /*
- translate([nut_off_x, nut_off_y, -eps]) cylinder(d=nut_dia, h=nut_depth+eps);
- translate([nut_off_x, -nut_off_y, -eps]) cylinder(d=nut_dia, h=nut_depth+eps);
- translate([-nut_off_x, nut_off_y, -eps]) cylinder(d=nut_dia, h=nut_depth+eps);
- translate([-nut_off_x, -nut_off_y, -eps]) cylinder(d=nut_dia, h=nut_depth+eps);
- */
- //}
-}
-
-base(); \ No newline at end of file
diff --git a/hardware/enclosure/olsndot_clamp_stoppers.scad b/hardware/enclosure/olsndot_clamp_stoppers.scad
deleted file mode 100644
index 95dc31e..0000000
--- a/hardware/enclosure/olsndot_clamp_stoppers.scad
+++ /dev/null
@@ -1,20 +0,0 @@
-w = 20;
-h = w;
-d = 7;
-hole_dia = 6;
-hole_d = 4;
-hole_fringe = 1.5;
-fringe_extra = 1.0;
-eps = 0.001;
-
-module stopper() {
- difference() {
- union() {
- translate([-w/2, -h/2, 0]) cube([w, h, d]);
- translate([0, 0, d-eps]) cylinder(d1=hole_dia+2*hole_fringe+2*fringe_extra, d2=hole_dia+2*fringe_extra, h=hole_fringe);
- }
- translate([0, 0, d+hole_fringe-hole_d]) cylinder(d=hole_dia, h=hole_d+eps);
- }
-}
-
-stopper($fn=25); \ No newline at end of file