2023-12-15 23:43:22 -05:00
|
|
|
|
|
|
|
|
include <BOSL/constants.scad>
|
2023-12-28 11:18:05 -05:00
|
|
|
use <BOSL/masks.scad>
|
2023-12-15 23:43:22 -05:00
|
|
|
use <BOSL/transforms.scad>
|
|
|
|
|
use <BOSL/shapes.scad>
|
|
|
|
|
use <BOSL/joiners.scad>
|
|
|
|
|
use <inserts/inserts.scad>
|
|
|
|
|
use <./bobbin.scad>
|
|
|
|
|
|
|
|
|
|
/* [Options] */
|
|
|
|
|
|
2023-12-28 11:18:05 -05:00
|
|
|
Gap = 47;
|
2023-12-15 23:43:22 -05:00
|
|
|
|
|
|
|
|
/* [Design] */
|
|
|
|
|
|
|
|
|
|
V_IN = 12;
|
|
|
|
|
Turns_Ratio = 85;
|
|
|
|
|
|
|
|
|
|
/* [Mount Stands] */
|
|
|
|
|
|
|
|
|
|
Mount_Hole_D = 4.36;
|
|
|
|
|
Mount_X = 74.38;
|
|
|
|
|
Mount_Y = 89.24;
|
|
|
|
|
|
|
|
|
|
BOX_WALL = 1.5;
|
|
|
|
|
|
2023-12-28 11:18:05 -05:00
|
|
|
/* [Bolt Lengths] */
|
|
|
|
|
|
|
|
|
|
Bolt_Length = 16;
|
|
|
|
|
Bolt_Offset = 0;
|
|
|
|
|
|
2023-12-15 23:43:22 -05:00
|
|
|
/* [Render Options] */
|
2023-12-28 11:18:05 -05:00
|
|
|
render_fs=.3;
|
2023-12-15 23:43:22 -05:00
|
|
|
render_fn=0;
|
2023-12-28 11:18:05 -05:00
|
|
|
render_fa=.3;
|
2023-12-15 23:43:22 -05:00
|
|
|
|
|
|
|
|
// Set Render Options
|
|
|
|
|
$fs= ($preview) ? $fs : render_fs;
|
|
|
|
|
$fn= ($preview) ? $fn : render_fn;
|
|
|
|
|
$fa= ($preview) ? $fa : render_fa;
|
|
|
|
|
|
|
|
|
|
zclear=2;
|
2023-12-28 11:18:05 -05:00
|
|
|
bolthead=7;
|
2023-12-15 23:43:22 -05:00
|
|
|
module print_specs() {
|
|
|
|
|
}
|
|
|
|
|
|
2023-12-28 11:18:05 -05:00
|
|
|
module terminal(bl=Bolt_Length, bz=Bolt_Offset-Bolt_Length, align=V_BOTTOM, orient=ORIENT_Z) {
|
2023-12-15 23:43:22 -05:00
|
|
|
orient_and_align([5,5,5.56], orig_align=V_BOTTOM, align=align, orient=orient) {
|
2023-12-28 11:18:05 -05:00
|
|
|
thread_insertM3(bl=bl, bz=bz);
|
2023-12-15 23:43:22 -05:00
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//
|
|
|
|
|
print_specs();
|
2023-12-28 11:18:05 -05:00
|
|
|
module terminal_mount(bl=Bolt_Length, bz=Bolt_Offset, be=2) {
|
|
|
|
|
basez=8;
|
|
|
|
|
difference() {
|
|
|
|
|
union() {
|
|
|
|
|
hull() xspread(n=3, l=Gap+bolthead) {
|
|
|
|
|
cyl(l=.4+bl+be, d=16,align=V_TOP);
|
|
|
|
|
}
|
|
|
|
|
cuboid([(Gap+bolthead+18),18,1],align=V_TOP);
|
|
|
|
|
}
|
|
|
|
|
up(bl+7+be) rotate([45,0,0]) fillet_mask_x(l=50,r=16,align=V_center);
|
|
|
|
|
xspread(n=2, l=Gap+bolthead) {
|
|
|
|
|
up(basez) cyl(l=bl, d=18,align=V_TOP);
|
|
|
|
|
terminal(bl=bl, align=V_TOP, orient=ORIENT_ZNEG, $die=true);
|
|
|
|
|
}
|
|
|
|
|
terminal(bl=bl, align=V_TOP, orient=ORIENT_ZNEG, $die=true);
|
|
|
|
|
up(basez)cuboid([18,18,bl],align=V_TOP);
|
2023-12-15 23:43:22 -05:00
|
|
|
}
|
2023-12-28 11:18:05 -05:00
|
|
|
xspread(n=3, l=Gap+bolthead) {
|
|
|
|
|
%terminal(bl=bl, align=V_TOP, orient=ORIENT_ZNEG);
|
2023-12-15 23:43:22 -05:00
|
|
|
}
|
|
|
|
|
}
|
2023-12-28 11:18:05 -05:00
|
|
|
|
|
|
|
|
terminal_mount();
|