summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Schmidt <timschmidt@gmail.com>2010-09-25 10:24:43 -0400
committerTimothy Schmidt <timschmidt@gmail.com>2010-09-25 10:24:43 -0400
commit3538a1be9f577fb91956d4606bf8b56d49660dbd (patch)
tree031ade39a68a58f2d59500f38ed8194ac35028d8
parent90b46e4345fa31d756da6ef7a3034b7971d774a1 (diff)
parentf6fc6fa8e8a20ff9f9a812c2d3920a8b70c296be (diff)
downloadparameterized-mendel-3538a1be9f577fb91956d4606bf8b56d49660dbd.tar.gz
parameterized-mendel-3538a1be9f577fb91956d4606bf8b56d49660dbd.zip
Merge branch 'master' of http://github.com/tbuser/parameterized-mendel
-rw-r--r--filament-spindle/spindle-bearing-bracket_2off.scad60
-rw-r--r--filament-spindle/spindle-corner-bracket_8off.scad90
-rw-r--r--filament-spindle/spindle-hub_1off.scad102
-rw-r--r--filament-spindle/spindle-spool-hub_1off.scad85
-rw-r--r--filament-spindle/spindle-spool-spoke_4off.scad72
-rw-r--r--filament-spindle/spindle-support-bearing-bracket_4off.scad77
-rw-r--r--filament-spindle/spindle-tube-fitting.scad68
-rw-r--r--filament-spindle/spindle-tube-holder_1off.scad52
-rw-r--r--filament-spindle/spindle.scad60
-rw-r--r--power-bracket.scad4
10 files changed, 668 insertions, 2 deletions
diff --git a/filament-spindle/spindle-bearing-bracket_2off.scad b/filament-spindle/spindle-bearing-bracket_2off.scad
new file mode 100644
index 0000000..0fa4925
--- /dev/null
+++ b/filament-spindle/spindle-bearing-bracket_2off.scad
@@ -0,0 +1,60 @@
+/*
+ * Mendel Filament Spindle Bearing Bracket 2off
+ * 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>
+
+include <spindle.scad>
+
+bearing_bracket_width = 22;
+bearing_bracket_length = 21;
+bearing_bracket_height = 33;
+
+module bearing_bracket() {
+ difference () {
+
+ // TODO: chamfer?
+ box(bearing_bracket_width, bearing_bracket_length, bearing_bracket_height);
+
+ // shaft
+ translate([0, bearing_bracket_length/2-rod_diameter+1, bearing_bracket_height/2-rod_diameter+1]) {
+ rotate([-90, 0, -90]) {
+ spindle_hole_horiz(bearing_bracket_width+2);
+ }
+ }
+
+ // front nut
+ translate([0, -bearing_bracket_length/2+3-1, bearing_bracket_height/2-rod_diameter+1]) {
+ // top side cutout
+ translate([0, 0, rod_diameter/2]) box(rod_diameter, rod_diameter-1, rod_diameter);
+
+ rotate([0, -90, 90]) {
+ spindle_hole_vert(rod_diameter+2);
+ }
+ rotate([90, 0, 0]) {
+ spindle_nut_cavity(rod_diameter-1);
+ }
+ }
+
+ }
+}
+
+translate([0, 0, bearing_bracket_length/2]) {
+ rotate([-90]) bearing_bracket();
+}
diff --git a/filament-spindle/spindle-corner-bracket_8off.scad b/filament-spindle/spindle-corner-bracket_8off.scad
new file mode 100644
index 0000000..f1f2e40
--- /dev/null
+++ b/filament-spindle/spindle-corner-bracket_8off.scad
@@ -0,0 +1,90 @@
+/*
+ * Mendel Filament Spindle Corner Bracket 8off
+ * 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>
+
+include <spindle.scad>
+
+corner_bracket_width = 28;
+corner_bracket_length = 28;
+corner_bracket_height = 33;
+
+module corner_bracket() {
+ difference () {
+
+ // TODO: chamfer?
+ box(corner_bracket_width, corner_bracket_length, corner_bracket_height);
+
+ // bottom side hole
+ translate([-corner_bracket_width/2+rod_diameter-1, 0, -corner_bracket_height/2+rod_diameter-1]) {
+ rotate([0, -90, 90]) {
+ spindle_hole_horiz(corner_bracket_length+2);
+ }
+ }
+
+ // left mid hole
+ translate([0, corner_bracket_length/2-rod_diameter+1, 0]) {
+ rotate([-90, -90, -90]) {
+ spindle_hole_horiz(corner_bracket_width+2);
+ }
+ }
+
+ // right mid hole
+ translate([0, -corner_bracket_length/2+rod_diameter-1, 0]) {
+ rotate([-90, -90, -90]) {
+ spindle_hole_horiz(corner_bracket_width+2);
+ }
+ }
+
+ // left vert hole
+ translate([corner_bracket_width/2-rod_diameter-1, corner_bracket_length/2-rod_diameter, 0]) {
+ spindle_hole_vert(corner_bracket_height+2);
+
+ translate([0, 0, corner_bracket_width/2-2]) {
+ spindle_nut_cavity(rod_diameter+2);
+ }
+ }
+
+ // right vert hole
+ translate([corner_bracket_width/2-rod_diameter-1, -corner_bracket_length/2+rod_diameter, 0]) {
+ spindle_hole_vert(corner_bracket_height+2);
+
+ translate([0, 0, corner_bracket_width/2-2]) {
+ spindle_nut_cavity(rod_diameter+2);
+ }
+ }
+
+
+ /*
+ translate([0, -corner_bracket_length/2+3-1, corner_bracket_height/2-rod_diameter+1]) {
+ // top side cutout
+ translate([0, 0, rod_diameter/2]) box(rod_diameter, rod_diameter-1, rod_diameter);
+
+ rotate([90, 0, 0]) {
+ spindle_nut_cavity(rod_diameter-1);
+ }
+ }
+ */
+ }
+}
+
+translate([0, 0, corner_bracket_height/2]) {
+ corner_bracket();
+}
diff --git a/filament-spindle/spindle-hub_1off.scad b/filament-spindle/spindle-hub_1off.scad
new file mode 100644
index 0000000..9429e15
--- /dev/null
+++ b/filament-spindle/spindle-hub_1off.scad
@@ -0,0 +1,102 @@
+/*
+ * Mendel Filament Spindle Hub 1off
+ * 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>
+
+include <spindle.scad>
+
+hub_width = 40;
+hub_length = 40;
+hub_height = 33;
+
+module hub() {
+ difference () {
+
+ // base shape box and a crude chamfer
+ intersection() {
+ box(hub_width, hub_length, hub_height);
+ cylinder(hub_height+2, hub_width/2+3.5, hub_width/2+3.5, center=true);
+ }
+
+ // center rod and bearing support
+ cylinder(hub_height+2, bearing_608_rad_h-2, bearing_608_rad_h-2, center=true);
+ translate([0, 0, hub_height/2-(bearing_608_len+6)/2+1]) {
+ cylinder((bearing_608_len+6)+1, bearing_608_rad_h, bearing_608_rad_h, center=true);
+ }
+
+ // left nut
+ translate([-hub_width/2+3-1, 0, hub_height/2-rod_diameter+1]) {
+ rotate([0, -90, 0]) {
+ spindle_hole_horiz(rod_diameter+2);
+ }
+ rotate([90, 0, 90]) {
+ spindle_nut_cavity(rod_diameter-1);
+ }
+ }
+
+ // right nut
+ translate([+hub_width/2-3+1, 0, hub_height/2-rod_diameter+1]) {
+ rotate([0, -90, 0]) {
+ spindle_hole_horiz(rod_diameter+2);
+ }
+ rotate([90, 0, 90]) {
+ spindle_nut_cavity(rod_diameter-1);
+ }
+ }
+
+ // front nut
+ translate([0, -hub_width/2+3-1, hub_height/2-rod_diameter+1]) {
+ rotate([0, -90, 90]) {
+ spindle_hole_horiz(rod_diameter+2);
+ }
+ rotate([90, 0, 0]) {
+ spindle_nut_cavity(rod_diameter-1);
+ }
+ }
+
+ // back nut
+ translate([0, +hub_width/2-3+1, hub_height/2-rod_diameter+1]) {
+ rotate([0, -90, 90]) {
+ spindle_hole_horiz(rod_diameter+2);
+ }
+ rotate([90, 0, 0]) {
+ spindle_nut_cavity(rod_diameter-1);
+ }
+ }
+
+ // left support rod
+ translate([-hub_width/2+rod_diameter, 0, -hub_height/2+rod_diameter]) {
+ rotate([90, -90, 0]) {
+ spindle_hole_horiz(hub_length+2);
+ }
+ }
+
+ // right support rod
+ translate([hub_width/2-rod_diameter, 0, -hub_height/2+rod_diameter]) {
+ rotate([90, -90, 0]) {
+ spindle_hole_horiz(hub_length+2);
+ }
+ }
+ }
+}
+
+translate([0, 0, hub_height/2]) {
+ hub();
+}
diff --git a/filament-spindle/spindle-spool-hub_1off.scad b/filament-spindle/spindle-spool-hub_1off.scad
new file mode 100644
index 0000000..b6240d4
--- /dev/null
+++ b/filament-spindle/spindle-spool-hub_1off.scad
@@ -0,0 +1,85 @@
+/*
+ * Mendel Filament Spindle Spool Hub 1off
+ * 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>
+
+include <spindle.scad>
+
+spool_hub_height = 5;
+spool_hub_diameter = 75;
+spool_hub_spoke_width = 20;
+spool_hub_spoke_length = 20; // made oversized so that spool ID is adjustable
+
+spool_hub_bolt_diameter = 3; // 4mm would be better, but I only have 3mm at the moment
+
+module spool_hub() {
+ difference() {
+ cylinder(spool_hub_height,spool_hub_diameter/2,spool_hub_diameter/2,center=true);
+
+ // center hole
+ spindle_hole_vert(spool_hub_height+2);
+
+ // left mounting hole
+ translate([-rod_diameter, 0, 0]) {
+ cylinder(spool_hub_height+2, spool_hub_bolt_diameter/2, spool_hub_bolt_diameter/2, center=true);
+ }
+
+ // right mounting hole
+ translate([rod_diameter, 0, 0]) {
+ cylinder(spool_hub_height+2, spool_hub_bolt_diameter/2, spool_hub_bolt_diameter/2, center=true);
+ }
+
+ // back mounting hole
+ translate([0, rod_diameter, 0]) {
+ cylinder(spool_hub_height+2, spool_hub_bolt_diameter/2, spool_hub_bolt_diameter/2, center=true);
+ }
+
+ // front mounting hole
+ translate([0, -rod_diameter, 0]) {
+ cylinder(spool_hub_height+2, spool_hub_bolt_diameter/2, spool_hub_bolt_diameter/2, center=true);
+ }
+
+ // back spoke cutout
+ translate([0, spool_hub_diameter/2-spool_hub_spoke_length/2, 0]) {
+ box(spool_hub_spoke_width, spool_hub_spoke_length, spool_hub_height+2);
+ }
+
+ // front spoke cutout
+ translate([0, -spool_hub_diameter/2+spool_hub_spoke_length/2, 0]) {
+ box(spool_hub_spoke_width, spool_hub_spoke_length, spool_hub_height+2);
+ }
+
+ // left spoke cutout
+ translate([-spool_hub_diameter/2+spool_hub_spoke_length/2, 0]) {
+ rotate([0, 0, 90]) box(spool_hub_spoke_width, spool_hub_spoke_length, spool_hub_height+2);
+ }
+
+ // right spoke cutout
+ translate([spool_hub_diameter/2-spool_hub_spoke_length/2, 0, 0]) {
+ rotate([0, 0, 90]) box(spool_hub_spoke_width, spool_hub_spoke_length, spool_hub_height+2);
+ }
+
+ }
+}
+
+translate([0, 0, spool_hub_height/2]) {
+ spool_hub();
+}
+
diff --git a/filament-spindle/spindle-spool-spoke_4off.scad b/filament-spindle/spindle-spool-spoke_4off.scad
new file mode 100644
index 0000000..07f6e2a
--- /dev/null
+++ b/filament-spindle/spindle-spool-spoke_4off.scad
@@ -0,0 +1,72 @@
+/*
+ * Mendel Filament Spindle Spool Spokes 4off
+ * 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>
+
+include <spindle.scad>
+
+spool_spoke_height = 90;
+spool_spoke_width = 20;
+spool_spoke_length = 5; // thickness
+
+spool_spoke_mount_inset = spool_spoke_length+10;
+spool_spoke_mount_inset = 20;
+
+spool_spoke_hub_inset = 25;
+
+module spool_spoke() {
+ union() {
+
+ difference() {
+ box(spool_spoke_width, spool_spoke_length, spool_spoke_height);
+
+ // create an inside perimeter so that raftless plugin doesn't screw up infill
+ translate([0,0,-spool_spoke_height/2/2]) {
+ box(spool_spoke_width/2/2, spool_spoke_length+2, spool_spoke_height/2/2);
+ }
+ }
+
+ // top
+ translate([0, -spool_spoke_hub_inset/2+spool_spoke_length/2, spool_spoke_height/2-spool_spoke_length/2]) {
+ box(spool_spoke_width, spool_spoke_hub_inset, spool_spoke_length);
+ }
+
+ // reinforcement TODO: make fully parametric
+ polyhedron(points=[[-2.5, -2.5, 0],[2.5, -2.5, 0],[-2.5, -spool_spoke_hub_inset+spool_spoke_length, 45],[2.5, -spool_spoke_hub_inset+spool_spoke_length, 45],[-2.5, 0, 45],[2.5, 0, 45]], triangles=[[0, 3, 1],[3,0,2],[1,3,5],[4,2,0],[0,5,4],[0,1,5],[5,2,4],[5,3,2]]);
+
+ // base
+ difference() {
+ translate([0, -spool_spoke_mount_inset/2+spool_spoke_length/2, -spool_spoke_height/2+spool_spoke_length/2]) {
+ box(spool_spoke_width, spool_spoke_mount_inset, spool_spoke_length);
+ }
+
+ // mounting bolt
+ translate([0, -spool_spoke_mount_inset/2+spool_spoke_length/2-spool_spoke_length/2, -spool_spoke_height/2+spool_spoke_length/2]) {
+ rotate([0, 0, -90]) hole_horiz(3, spool_spoke_length+2);
+ }
+ }
+ }
+}
+
+//spool_spoke();
+
+rotate([-90,0,-90]) {
+ translate([0,-spool_spoke_length/2,0]) spool_spoke();
+}
diff --git a/filament-spindle/spindle-support-bearing-bracket_4off.scad b/filament-spindle/spindle-support-bearing-bracket_4off.scad
new file mode 100644
index 0000000..996c739
--- /dev/null
+++ b/filament-spindle/spindle-support-bearing-bracket_4off.scad
@@ -0,0 +1,77 @@
+/*
+ * Mendel Filament Spindle Support Bearing Bracket 4off
+ * 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>
+
+include <spindle.scad>
+
+support_bearing_bracket_width = 40;
+support_bearing_bracket_length = 21;
+support_bearing_bracket_height = 33;
+
+module support_bearing_bracket() {
+ difference () {
+
+ // TODO: chamfer?
+ box(support_bearing_bracket_width, support_bearing_bracket_length, support_bearing_bracket_height);
+
+ // shaft
+ translate([0, support_bearing_bracket_length/2-rod_diameter+1, 0]) {
+ rotate([-90, 0, -90]) {
+ spindle_hole_horiz(support_bearing_bracket_width+2);
+ }
+ }
+
+ // front nut
+ translate([0, 0, support_bearing_bracket_height/2-rod_diameter+1]) {
+ rotate([0, -90, 90]) {
+ spindle_hole_vert(support_bearing_bracket_length+2);
+ }
+ }
+
+ translate([0, -support_bearing_bracket_length/2+3-1, support_bearing_bracket_height/2-rod_diameter+1]) {
+ // top side cutout
+ translate([0, 0, rod_diameter/2]) box(rod_diameter, rod_diameter-1, rod_diameter);
+
+ rotate([90, 0, 0]) {
+ spindle_nut_cavity(rod_diameter-1);
+ }
+ }
+
+ // left support rod
+ translate([-support_bearing_bracket_width/2+rod_diameter, 0, -support_bearing_bracket_height/2+rod_diameter]) {
+ rotate([90, -90, 0]) {
+ spindle_hole_vert(support_bearing_bracket_length+2);
+ }
+ }
+
+ // right support rod
+ translate([support_bearing_bracket_width/2-rod_diameter, 0, -support_bearing_bracket_height/2+rod_diameter]) {
+ rotate([90, -90, 0]) {
+ spindle_hole_vert(support_bearing_bracket_length+2);
+ }
+ }
+
+ }
+}
+
+translate([0, 0, support_bearing_bracket_length/2]) {
+ rotate([-90]) support_bearing_bracket();
+}
diff --git a/filament-spindle/spindle-tube-fitting.scad b/filament-spindle/spindle-tube-fitting.scad
new file mode 100644
index 0000000..3193ae2
--- /dev/null
+++ b/filament-spindle/spindle-tube-fitting.scad
@@ -0,0 +1,68 @@
+/*
+ * Mendel Filament Spindle Tube Fitting
+ * DO NOT PRINT THIS - it's just used to cut out a mounting hole in the tube holder
+ * 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>
+
+include <spindle.scad>
+
+tube_fitting_height = 20;
+
+tube_fitting_exit_diameter = 10.7;
+tube_fitting_exit_height = 8;
+
+tube_fitting_entry_diameter = 10.6;
+
+tube_fitting_inside_nut_height = 11.2;
+//tube_fitting_inside_nut_depth = 4.7;
+tube_fitting_inside_nut_depth = tube_fitting_height/2+2.5;
+
+tube_fitting_outside_nut_height = 16.2;
+tube_fitting_outside_nut_depth = 3.4;
+
+module tube_fitting() {
+ union() {
+
+ // smaller diameter entry side
+ //cylinder(tube_fitting_height, tube_fitting_entry_diameter/2, tube_fitting_entry_diameter/2, center=true);
+ rotate([0,0,90]) {
+ hole_horiz(tube_fitting_entry_diameter/2, tube_fitting_height);
+ }
+
+ // exit side
+ /*
+ translate([0, 0, -tube_fitting_height/2+tube_fitting_exit_height/2]) {
+ cylinder(tube_fitting_exit_height, tube_fitting_exit_diameter/2, tube_fitting_exit_diameter/2, center=true);
+ }
+ */
+
+ // inside nut
+ translate([0, 0, -tube_fitting_height/2+tube_fitting_inside_nut_depth/2]) {
+ hexagon(tube_fitting_inside_nut_height, tube_fitting_inside_nut_depth);
+ }
+
+ // outside mounting nut
+ translate([0, 0, tube_fitting_height/2-tube_fitting_outside_nut_depth/2]) {
+ hexagon(tube_fitting_outside_nut_height, tube_fitting_outside_nut_depth);
+ }
+ }
+}
+
+//tube_fitting(); \ No newline at end of file
diff --git a/filament-spindle/spindle-tube-holder_1off.scad b/filament-spindle/spindle-tube-holder_1off.scad
new file mode 100644
index 0000000..6a9be82
--- /dev/null
+++ b/filament-spindle/spindle-tube-holder_1off.scad
@@ -0,0 +1,52 @@
+/*
+ * Mendel Filament Spindle Tube Holder 1off
+ * 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>
+
+include <spindle.scad>
+include <spindle-tube-fitting.scad>
+
+tube_holder_width = rod_diameter+4; // 18
+tube_holder_length = 28; // 41
+tube_holder_height = 16; // 25
+
+module tube_holder() {
+ difference () {
+
+ // TODO: add a chamfer?
+ box(tube_holder_width, tube_holder_length, tube_holder_height);
+
+ // rod hole
+ translate([0, -tube_holder_length/2+rod_diameter/2+2, 0]) {
+ spindle_hole_vert(tube_holder_height+2);
+ }
+
+ // tube fitting
+ translate([0, tube_holder_length/2/2/2, 0]) {
+ rotate([90, 0, 90]) {
+ tube_fitting();
+ }
+ }
+ }
+}
+
+translate([0, 0, tube_holder_height/2]) {
+ tube_holder();
+}
diff --git a/filament-spindle/spindle.scad b/filament-spindle/spindle.scad
new file mode 100644
index 0000000..76d4e7a
--- /dev/null
+++ b/filament-spindle/spindle.scad
@@ -0,0 +1,60 @@
+/*
+ * Mendel Filament Spindle Include
+ * 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>
+
+rod_diameter = 8;
+
+module spindle_hole_vert(l) {
+ if (rod_diameter == 8) {
+ m8_hole_vert(l);
+ } else if (rod_diameter == 4) {
+ m4_hole_vert(l);
+ } else if (rod_diameter == 3) {
+ m3_hole_vert(l);
+ } else {
+ cylinder(l,rod_diameter/2,rod_diameter/2,center=true);
+ }
+}
+
+module spindle_hole_horiz(l) {
+ if (rod_diameter == 8) {
+ m8_hole_horiz(l);
+ } else if (rod_diameter == 4) {
+ m4_hole_horiz(l);
+ } else if (rod_diameter == 3) {
+ m3_hole_horiz(l);
+ } else {
+ hole_horiz(rod_diameter, l);
+ }
+}
+
+module spindle_nut_cavity(l) {
+ if (rod_diameter == 8) {
+ m8_nut_cavity(l);
+ } else if (rod_diameter == 4) {
+ m4_nut_cavity(l);
+ } else if (rod_diameter == 3) {
+ m3_nut_cavity(l);
+ } else {
+ // FIXME: this is probably wrong...
+ hexagon(rod_diameter+5, l);
+ }
+}
diff --git a/power-bracket.scad b/power-bracket.scad
index 4278dc4..f7377b8 100644
--- a/power-bracket.scad
+++ b/power-bracket.scad
@@ -17,8 +17,8 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
-<mendel.inc>
-<mendel.conf>
+include <mendel.inc>
+include <mendel.conf>
// side holes on stepper-plate.par (maybe add to mendel.conf?)
mounting_hole_spacing=30;