Compare commits

...

7 Commits

23 changed files with 155 additions and 55 deletions

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 80 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 73 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 78 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 62 KiB

After

Width:  |  Height:  |  Size: 82 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 69 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 132 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 88 KiB

After

Width:  |  Height:  |  Size: 136 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 68 KiB

After

Width:  |  Height:  |  Size: 118 KiB

99
notes/stacking_debug.scad Normal file
View File

@ -0,0 +1,99 @@
/**
* Used to workshop the stacking screw
* */
module stacking_debug () {
translate([0, 0, 72 + 72 + 36]) {
color("blue") gnal_spindle_top();
}
translate([0, 0, 72 + 72]) rotate([0, 180, 0]) intersection () {
gnal_50ft_top();
cylinder(r = 50 / 2, h = 50, center = true);
}
translate([0, 0, 72 + 30]) {
color("blue") rotate([0, 180, 0]) gnal_spindle_bottom();
}
translate([0, 0, 72 + 36]) difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
}
translate([0, 0, 36 + 30]) {
color("green") rotate([0, 180, 0]) gnal_stacking_spindle();
}
translate([0, 0, 72]) difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
}
translate([0, 0, 30]) {
color("green") rotate([0, 180, 0]) gnal_stacking_spindle();
}
translate([0, 0, 36]) difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
}
color("blue") translate([0, 0, 12 + 3]) gnal_spacer_16();
//#1 - bottom spiral
difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
translate([0, 0, -8]) spiral_insert_void();
}
color("blue") translate([0, 0, -12]) gnal_spiral_bottom_insert_16();
}
module stacking_debug2 () {
translate([0, 0, 72 + 47]) {
color("blue") gnal_spindle_top();
}
translate([0, 0, 72 + 26]) rotate([0, 180, 0]) intersection () {
gnal_50ft_top();
cylinder(r = 50 / 2, h = 50, center = true);
}
translate([0, 0, 72 - 4]) {
color("blue") rotate([0, 180, 0]) gnal_spindle_bottom();
}
translate([0, 0, 72 + 8]) difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
}
translate([0, 0, 36 + 8]) {
color("green") rotate([0, 180, 0]) gnal_stacking_spindle();
}
translate([0, 0, 55.5]) difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
}
translate([0, 0, 20]) {
color("green") rotate([0, 180, 0]) gnal_stacking_spindle();
}
translate([0, 0, 32]) difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
}
color("blue") translate([0, 0, 12 + 3 + 5]) gnal_spacer_16();
//#1 - bottom spiral
translate([0, 0, 8]) difference () {
cylinder(r = 50 / 2, h = 16, center = true);
cylinder(r = 22.5 / 2, h = 16 + 1, center = true);
translate([0, 0, -8]) spiral_insert_void();
}
color("blue") translate([0, 0, 11]) gnal_spiral_bottom_insert_16();
H = 120;
translate([0, 0, H / 2 - 2]) color("red") cube([1, 50, H], center = true);
}

View File

@ -3,6 +3,8 @@
include <../libraries/gnal_v3.scad>;
SPOKE_COUNT = 24;
FN = 200;
$fn = FN;
module gnal_100ft_spiral (spiral_count = 60, od = 298.75, quarter = false) {
outer_d = 299;
@ -250,9 +252,6 @@ module gnal_100ft_top () {
}
}
FN = 200;
$fn = FN;
module film_guide (rotations = 60, id = 45.55, spacing = 2.075, bottom = -2) {
spiral(rotations, id, spacing, bottom, $fn);
//reinforce outer spiral
@ -278,18 +277,20 @@ if (PART == "spiral") {
gnal_100ft_top();
} else if (PART == "spacer") {
gnal_spacer();
} else if (PART == "spacer_16") {
gnal_spacer_16();
} else if (PART == "insert_s8") {
gnal_spiral_bottom_insert_s8();
} else if (PART == "insert_16") {
gnal_spiral_bottom_insert_16();
} else if (PART == "insert_single") {
gnal_spiral_bottom_insert_single();
} else if (PART == "spacer_16") {
gnal_spacer_16();
} else if (PART == "spindle_top") {
gnal_spindle_top();
} else if (PART == "spindle_bottom") {
gnal_spindle_bottom();
} else if (PART == "spindle_single") {
gnal_spindle_single();
} else if (PART == "spindle_stacking") {
rotate([0, 180, 0]) gnal_stacking_spindle();
}

View File

@ -3,6 +3,8 @@
include <../libraries/gnal_v3.scad>;
SPOKE_COUNT = 24;
FN = 200;
$fn = FN;
module gnal_50ft_spiral (spiral_count = 40, od = 215.75, quarter = false) {
outer_d = 215;
@ -180,9 +182,6 @@ module gnal_50ft_top () {
}
}
FN = 200;
$fn = FN;
module film_guide (rotations = 40, id = 45.55 - .5, spacing = 2.075, bottom = -2) {
spiral(rotations, id, spacing, bottom, $fn);
//reinforce outer spiral
@ -193,39 +192,6 @@ module film_guide (rotations = 40, id = 45.55 - .5, spacing = 2.075, bottom = -2
}
module gnal_stacking_spindle () {
OD = 10.5 + .3;
IN_LEN = 21;
LEN = 17.1;
ALT_LEN = 27.1;
difference () {
union () {
gnal_spindle_base();
translate([0, 0, -23.75]) gnal_spacer_solid();
}
//inner screw negative
translate([0, 0, -30]) union() {
if (DEBUG) {
cylinder(r = OD / 2, h = IN_LEN);
} else {
metric_thread (diameter=OD, pitch=PITCH, thread_size = THREAD, length = IN_LEN);
}
translate([0, 0, 0.2]) {
if (DEBUG) {
cylinder(r = OD / 2, h = IN_LEN);
} else {
metric_thread (diameter=OD, pitch=PITCH, thread_size = THREAD, length = IN_LEN);
}
}
}
}
difference () {
outer_screw(LEN - 2);
}
}
PART="spiral";
if (PART == "spiral") {
@ -242,22 +208,21 @@ if (PART == "spiral") {
gnal_50ft_top();
} else if (PART == "spacer") {
gnal_spacer();
} else if (PART == "spacer_16") {
gnal_spacer_16();
} else if (PART == "insert_s8") {
gnal_spiral_bottom_insert_s8();
} else if (PART == "insert_16") {
gnal_spiral_bottom_insert_16();
} else if (PART == "insert_single") {
gnal_spiral_bottom_insert_single();
} else if (PART == "spacer_16") {
gnal_spacer_16();
} else if (PART == "spindle_top") {
gnal_spindle_top();
} else if (PART == "spindle_bottom") {
gnal_spindle_bottom();
} else if (PART == "spindle_single") {
gnal_spindle_top();
} else if (PART == "stacking") {
//stacking();
gnal_spindle_single();
} else if (PART == "spindle_stacking") {
rotate([0, 180, 0]) gnal_stacking_spindle();
} else if (PART == "spiral_test") {
difference () {
@ -271,6 +236,8 @@ if (DEBUG) {
echo("WARNING: DEBUG is enabled");
}
/*
echo($vpt);
echo($vpr);
echo($vpd);
echo($vpd);
*/

View File

@ -18,7 +18,6 @@ include <./Triangles.scad>;
*/
DEBUG = false;
FINE = 200;
OD = 10 + .5;
@ -238,7 +237,7 @@ module spiral_insert_void () {
module gnal_spiral_bottom_insert_s8 () {
$fn = 160;
OD = 10.5 + .3;
void_d = 18 - .3;
void_d = 18 - .6;
H = 17;
D2 = INSERT_D;
@ -279,7 +278,7 @@ module gnal_spiral_bottom_insert_16 () {
$fn = 160;
OD = 10.5 + .3;
void_d = 18 - .3;
void_d = 18 - .6;
H = 17 + 8;
D2 = INSERT_D;
@ -332,7 +331,7 @@ module gnal_spiral_bottom_insert_16 () {
**/
module gnal_spiral_bottom_insert_single () {
$fn = 160;
void_d = 18 - .3;
void_d = 18 - .6;
H = 17;
D2 = INSERT_D;
@ -792,4 +791,37 @@ module gnal_spindle_single () {
translate([0, 0, -37.5 - SINGLE_INSERT + (21 / 2) - 1]) {
cylinder(r = 10 / 2, h = 21, center = true, $fn = FINE);
}
}
module gnal_stacking_spindle () {
OD = 10.5 + .3;
IN_LEN = 21;
LEN = 17.1;
ALT_LEN = 27.1;
difference () {
union () {
gnal_spindle_base();
translate([0, 0, -23.75]) gnal_spacer_solid();
}
//inner screw negative
translate([0, 0, -30]) union() {
if (DEBUG) {
cylinder(r = OD / 2, h = IN_LEN);
} else {
metric_thread (diameter=OD, pitch=PITCH, thread_size = THREAD, length = IN_LEN);
}
translate([0, 0, 0.2]) {
if (DEBUG) {
cylinder(r = OD / 2, h = IN_LEN);
} else {
metric_thread (diameter=OD, pitch=PITCH, thread_size = THREAD, length = IN_LEN);
}
}
}
}
difference () {
outer_screw(LEN - 2);
}
}

View File

@ -14,7 +14,7 @@ DIST=./stl
CSG=./csg
IMG=./img
NOTES=./notes/${V}.csv
STEP=true
STEP=false
LOGGING=true
#"quarter_a" "quarter_b" "quarter_c" "quarter_d"
@ -23,7 +23,8 @@ LOGGING=true
FILES=(
"spindle_bottom"
"spindle_top"
"spindle_single"
"spindle_single"
"spindle_stacking"
"insert_s8"
"insert_16"
"spacer"
@ -118,9 +119,9 @@ render_part () {
fullPath=`realpath "${stl}"`
data="import(\"${fullPath}\");"
echo data > "${tmp}.scad"
openscad -o "$png" --imgsize=2048,2048 --colorscheme=DeepOcean "${tmp}.scad"
openscad -o "$png" --csglimit=2000000 --imgsize=2048,2048 --colorscheme=DeepOcean "${tmp}.scad"
else
openscad -o "$png" --imgsize=2048,2048 --colorscheme=DeepOcean -D "PART=\"${FILE}\"" "${scad}"
openscad -o "$png" --csglimit=1000000 --imgsize=2048,2048 --colorscheme=DeepOcean -D "PART=\"${FILE}\"" "${scad}"
fi
}

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.