summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--hardware/enclosure/olsndot_clamp_base.scad62
-rw-r--r--hardware/enclosure/olsndot_clamp_stoppers.scad2
2 files changed, 55 insertions, 9 deletions
diff --git a/hardware/enclosure/olsndot_clamp_base.scad b/hardware/enclosure/olsndot_clamp_base.scad
index e5bf43f..177a61a 100644
--- a/hardware/enclosure/olsndot_clamp_base.scad
+++ b/hardware/enclosure/olsndot_clamp_base.scad
@@ -1,6 +1,23 @@
eps = 0.01;
-module clamp(l=90, w=20, h=10, d1=25, d2=35, o=10, hdia1=5, hdia2=10, hd=1, nw=7.8, nd=3, notch_sf=0.75, notch_d=2, notch_a=10, notch_o=1, edge_a=5, edge_d=12) {
+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() {
@@ -19,9 +36,9 @@ module clamp(l=90, w=20, h=10, d1=25, d2=35, o=10, hdia1=5, hdia2=10, hd=1, nw=7
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=hdia1, h=l);
- cylinder(d=hdia2, h=hd);
- translate([0, 0, h-nd/2]) hexagon(nw, nd+2*eps);
+ cylinder(d=6, h=l);
+ cylinder(d=12, h=hd);
+ translate([-11/2, -11/2, h-4]) cube([11, 11, 5]);
}
}
}
@@ -37,23 +54,52 @@ nut_depth=5.5;
nut_off_y = 80/2;
nut_off_x = 20;
-module base($fn=25, cw=90, sw=15, sh=10, strut_spacing=30, clamp_dist=90) {
+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=90, 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, clamp_dist, 0]) clamp(l=cw, h=sh);
+ */
/*
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
index 9ca8a63..8be528d 100644
--- a/hardware/enclosure/olsndot_clamp_stoppers.scad
+++ b/hardware/enclosure/olsndot_clamp_stoppers.scad
@@ -1,7 +1,7 @@
w = 20;
h = w;
d = 5;
-hole_dia = 5;
+hole_dia = 6;
hole_d = 4;
hole_fringe = 1.5;
fringe_extra = 1.0;