Add M4 as a reinforcement bolt that allows for a screw-on nut to hold a reel in place
This commit is contained in:
parent
3e2b57f066
commit
a5907409ca
|
@ -1,3 +1,5 @@
|
||||||
|
IN = 25.4;
|
||||||
|
|
||||||
|
|
||||||
echo("common.scad - rounded_cube()");
|
echo("common.scad - rounded_cube()");
|
||||||
module rounded_cube (cube_arr = [1, 1, 1], d = 0, center = false) {
|
module rounded_cube (cube_arr = [1, 1, 1], d = 0, center = false) {
|
||||||
|
|
|
@ -1,26 +1,29 @@
|
||||||
SQUARE_INNER = 7.8;
|
SQUARE_INNER = 7.8;
|
||||||
time = 0;
|
time = 0;
|
||||||
|
|
||||||
module reel_holder (top = true, base = true) {
|
module reel_holder (top = true, base = true, height = 18.5) {
|
||||||
$fn = 60;
|
$fn = 60;
|
||||||
|
topHeight = 3.5;
|
||||||
difference(){
|
difference(){
|
||||||
translate([0, 0, -1.5]) cube([SQUARE_INNER, SQUARE_INNER, 21.5], center= true);
|
translate([0, 0, -1.5]) cube([SQUARE_INNER, SQUARE_INNER, 21.5], center= true);
|
||||||
for (i = [0:4]) {
|
for (i = [0:4]) {
|
||||||
rotate([0, 0, (i * 90)]){
|
rotate([0, 0, (i * 90)]){
|
||||||
translate([(SQUARE_INNER / 2) + .4, (SQUARE_INNER / 2) + .4, 18.5 / 2]) rotate([0, -15, 45]) cube([2.5, SQUARE_INNER, SQUARE_INNER], center = true);
|
translate([(SQUARE_INNER / 2) + .4, (SQUARE_INNER / 2) + .4, height / 2]) rotate([0, -15, 45]) cube([2.5, SQUARE_INNER, SQUARE_INNER], center = true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
difference () {
|
if (top) {
|
||||||
union() {
|
difference () {
|
||||||
translate([0, 0, (18.5 / 2) + (3.5 / 2)]) cylinder(r = SQUARE_INNER / 2, h = 3.5, center = true);
|
union() {
|
||||||
translate([0, 0, (18.5 / 2) + (7.5 / 2)]) sphere(SQUARE_INNER / 2);
|
translate([0, 0, (height / 2) + (topHeight / 2)]) cylinder(r = SQUARE_INNER / 2, h = topHeight, center = true);
|
||||||
|
translate([0, 0, (height / 2) + (7.5 / 2)]) sphere(SQUARE_INNER / 2);
|
||||||
|
}
|
||||||
|
translate ([0, 0, (height / 2) + 7.5]) cube([10, 10, 2], center = true);
|
||||||
}
|
}
|
||||||
translate ([0, 0, (18.5 / 2) + 7.5]) cube([10, 10, 2], center = true);
|
|
||||||
}
|
}
|
||||||
if (base) {
|
if (base) {
|
||||||
difference () {
|
difference () {
|
||||||
translate([0, 0, -(18.5/ 2) - (3 / 2) - 3]) cylinder(r = 16 /2, h = 3, center = true);
|
translate([0, 0, -(height / 2) - (3 / 2) - 3]) cylinder(r = 16 /2, h = 3, center = true);
|
||||||
//translate([0, 0, -14.3]) cube([4, 4, 2], center = true); //notch
|
//translate([0, 0, -14.3]) cube([4, 4, 2], center = true); //notch
|
||||||
difference() {
|
difference() {
|
||||||
translate([0, 0, -14.3]) cylinder(r = 8 / 2, h = 2, center = true);
|
translate([0, 0, -14.3]) cylinder(r = 8 / 2, h = 2, center = true);
|
||||||
|
|
62
takeup.scad
62
takeup.scad
|
@ -13,6 +13,8 @@ MOTOR_SHAFT_HOBBLE = 1;
|
||||||
MOTOR_MOUNT_X = 32.5;
|
MOTOR_MOUNT_X = 32.5;
|
||||||
MOTOR_MOUNT_Y = 17.5;
|
MOTOR_MOUNT_Y = 17.5;
|
||||||
|
|
||||||
|
M4 = 4.1;
|
||||||
|
|
||||||
module hex (diag = 10, h = 1) {
|
module hex (diag = 10, h = 1) {
|
||||||
cylinder(r = diag / 2, h = h, center = true, $fn = 6);
|
cylinder(r = diag / 2, h = h, center = true, $fn = 6);
|
||||||
}
|
}
|
||||||
|
@ -96,7 +98,8 @@ module slip_coupling (MAGNET_H = 2.5) {
|
||||||
}
|
}
|
||||||
|
|
||||||
module daylight_spool_insert () {
|
module daylight_spool_insert () {
|
||||||
translate([0, 0, 14]) reel_holder(true, false);
|
translate([0, 0, 15.9]) reel_holder(false, false);
|
||||||
|
translate([0, 0, 3.25]) cylinder(r = R(18), h = 1.5, center = true, $fn = 240);
|
||||||
union () {
|
union () {
|
||||||
cube([25 - .4, 10 - .4, 5], center = true);
|
cube([25 - .4, 10 - .4, 5], center = true);
|
||||||
cube([10 - .4, 25 - .4, 5], center = true);
|
cube([10 - .4, 25 - .4, 5], center = true);
|
||||||
|
@ -185,6 +188,57 @@ module minimal_mount () {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
module m4_nut (H = 3.1) {
|
||||||
|
cylinder(r = R(8.1), h = 3.1, center = true, $fn = 6);
|
||||||
|
}
|
||||||
|
|
||||||
|
module daylight_spool_insert_reinforced () {
|
||||||
|
//internally Hex M4 40mm
|
||||||
|
difference () {
|
||||||
|
daylight_spool_insert();
|
||||||
|
cylinder(r = R(M4), h = 100, center = true, $fn = 60);
|
||||||
|
translate([0, 0, -1]) m4_nut();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module daylight_spool_insert_reinforced_nut () {
|
||||||
|
D = 30;
|
||||||
|
H = 6;
|
||||||
|
BUMPS = 60;
|
||||||
|
BUMP_D = 1.2;
|
||||||
|
difference() {
|
||||||
|
union () {
|
||||||
|
cylinder(r = R(D), h = H, center = true, $fn = 120);
|
||||||
|
for (i = [0 : BUMPS - 1]) {
|
||||||
|
rotate([0, 0, i * (360 / BUMPS)]) {
|
||||||
|
translate([R(D) - .1, 0, 0]) cylinder(r = R(BUMP_D), h = H, center = true, $fn = 20);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
//m4
|
||||||
|
translate([0 , 0, (H / 2) - (3.1 / 2) + 0.01]) m4_nut();
|
||||||
|
cylinder(r = R(M4), h = 100, center = true, $fn = 60);
|
||||||
|
//under void
|
||||||
|
translate([0, 0, -4]) cylinder(r = R(15), h = H, center = true, $fn = 120);
|
||||||
|
//top void
|
||||||
|
translate([0, 0, 4]) difference () {
|
||||||
|
cylinder(r = R(25), h = H, center = true, $fn = 120);
|
||||||
|
cylinder(r = R(12), h = H, center = true, $fn = 120);
|
||||||
|
}
|
||||||
|
//bevels
|
||||||
|
translate([0, 0, (H / 2) - (1 / 2)]) difference () {
|
||||||
|
cylinder(r = R(D) + 5, h = 1, center = true, $fn = 240);
|
||||||
|
cylinder(r2 = R(D), r1 = R(D) + 1, h = 1, center = true, $fn = 240);
|
||||||
|
}
|
||||||
|
|
||||||
|
translate([0, 0, (H / 2) - (1 / 2)]) difference () {
|
||||||
|
cylinder(r = R(D) + 5, h = 1, center = true, $fn = 240);
|
||||||
|
cylinder(r2 = R(D), r1 = R(D) + 1, h = 1, center = true, $fn = 240);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
module debug_assembled () {
|
module debug_assembled () {
|
||||||
translate([(46 / 2) - 14.5, 0, 0]) rotate([180, 0, 0]) geared_motor();
|
translate([(46 / 2) - 14.5, 0, 0]) rotate([180, 0, 0]) geared_motor();
|
||||||
color("green") translate([0, 0, 11]) mount_plate();
|
color("green") translate([0, 0, 11]) mount_plate();
|
||||||
|
@ -196,7 +250,7 @@ module debug_assembled () {
|
||||||
color("red") translate([0, 0, 34]) daylight_spool_insert();
|
color("red") translate([0, 0, 34]) daylight_spool_insert();
|
||||||
}
|
}
|
||||||
|
|
||||||
PART = "mount_plate";
|
PART = "daylight_spool_insert_reinforced_nut";
|
||||||
|
|
||||||
if (PART == "slip_coupling") {
|
if (PART == "slip_coupling") {
|
||||||
slip_coupling();
|
slip_coupling();
|
||||||
|
@ -209,6 +263,10 @@ if (PART == "slip_coupling") {
|
||||||
daylight_spool_insert();
|
daylight_spool_insert();
|
||||||
} else if (PART == "minimal_mount") {
|
} else if (PART == "minimal_mount") {
|
||||||
minimal_mount();
|
minimal_mount();
|
||||||
|
} else if (PART == "daylight_spool_insert_reinforced") {
|
||||||
|
daylight_spool_insert_reinforced();
|
||||||
|
} else if (PART == "daylight_spool_insert_reinforced_nut") {
|
||||||
|
daylight_spool_insert_reinforced_nut();
|
||||||
} else if (PART == "debug") {
|
} else if (PART == "debug") {
|
||||||
debug_assembled();
|
debug_assembled();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue