summaryrefslogtreecommitdiff
path: root/v1.0/power-bracket.scad
blob: f7377b8c066f9c7f297be22aa1aa59778f3d33ac (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
/*
 *  Mendel Power Bracket (replaces XLR bracket)
 *  by Tony Buser <tbuser@gmail.com>
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 3 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful,
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
*/

include <mendel.inc>
include <mendel.conf>

// side holes on stepper-plate.par (maybe add to mendel.conf?)
mounting_hole_spacing=30;

// XLR or COAX
// if COAX, might want bracket_height to be smaller to reduce uneeded print time
// but you'd need smaller bolts...
type="COAX";

// probably 20 for XLR and 8 for COAX
// might be best to set COAX plug diameter a little small and drill it out later
plug_diameter=8;

bracket_length=40; // 40
bracket_width=20; // 20
bracket_height=25; // 25

module power_plug_bracket() {
	// Main block
	difference () {
		box(bracket_length, bracket_width, bracket_height);

		translate([-mounting_hole_spacing/2, 0, 0]) {
			m4_hole_vert(bracket_height+2);
		}

		translate([mounting_hole_spacing/2, 0, 0]) {
			m4_hole_vert(bracket_height+2);
		}

		if (type=="XLR") {
			xlr_cutout();
		} else {
			coax_cutout();
		}		
	}
}

module xlr_cutout() {
	translate([0, 0, bracket_height/2-plug_diameter/2]) {
		rotate([90,0,0]) {
			cylinder(r=plug_diameter/2, h=bracket_width+2, center=true);
		}

		translate([0, 0, plug_diameter/2]) {
			cube([plug_diameter, bracket_width+2, plug_diameter], center=true);
		}
	}
}

module coax_cutout() {
	//translate([0, 0, bracket_height/2-plug_diameter/2])
	rotate([90,-90,0]) {
		// threaded plug diameter
		hole_horiz(plug_diameter/2,bracket_width);

		// make inside larger for the base
		translate([0, 0, -6]) {
			hole_horiz(plug_diameter/2+3,bracket_width);
		}

		// add a large outside for mounting ring to screw into
		translate([0, 0, bracket_width/2]) {
			hole_horiz(plug_diameter/2+3,4);
		}
	}
}

translate([0, 0, bracket_height/2]) {
	//xlr_cutout();
	//coax_cutout();
	power_plug_bracket();
}