Skip to content
This repository

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse code

Misc improvements.

  • Loading branch information...
commit 76185941a88643bace751b5543bad12d0db86356 1 parent 12ecac4
Christopher Olah authored May 11, 2011
56  x-carriage-mendel.scad
... ...
@@ -1,24 +1,50 @@
1 1
 
2 2
 x_rod_spacing = 50;
  3
+two_extruders=false;
  4
+
3 5
 difference(){
4 6
 
5  
-union(){
6  
-translate([0,0,1])
7  
-	cube([x_rod_spacing+22, 35,5],center=true);
8  
-for (x=[-1,1]) for (y=[-1,1])
9  
-	translate([x_rod_spacing/2*x,12*y,0]) grip();
10  
-translate([(x_rod_spacing+22)/2,0,1]) difference(){
11  
-	cube([18,11,5],center=true);	
12  
-	cube([14,6,6],center=true);
13  
-}
14  
-}
  7
+	union(){
  8
+		if (!two_extruders)
  9
+			translate([0,0,1])
  10
+				cube([x_rod_spacing+22, 35,5],center=true);
  11
+		if (two_extruders)
  12
+			translate([0,15,1])
  13
+				cube([x_rod_spacing+22, 65,5],center=true);
  14
+		for (x=[-1,1]) 
  15
+			for (y=[-1,1]){
  16
+				if (!two_extruders)
  17
+					translate([x_rod_spacing/2*x,12*y,0]) grip();
  18
+				if (two_extruders)
  19
+					translate([x_rod_spacing/2*x,12*y+15*(y+1),0]) grip();
  20
+			}
  21
+		translate([(x_rod_spacing+22)/2,0,1]) {
  22
+			if (!two_extruders) difference(){
  23
+				cube([20,20,5],center=true);	
  24
+				cube([16,15,6],center=true);
  25
+			}
  26
+			if (two_extruders) translate([0,15,0]) 
  27
+				difference(){
  28
+					cube([20,20,5],center=true);	
  29
+					cube([16,15,6],center=true);
  30
+				}
  31
+		}
15 32
 
16  
-for (x=[-1,1]) union(){
17  
-	translate([50/2*x,0,0]) cylinder(r=5/2,h=20,center=true);
18  
-	translate([50/2*x,0,2]) cylinder(r=8.3/2,h=3,center=true,$fn=6);
19  
-}
  33
+	}
  34
+
  35
+	for (x=[-1,1]) union(){
  36
+		translate([50/2*x,-1,0]) cylinder(r=5/2,h=20,center=true);
  37
+		translate([50/2*x,-1,2]) cylinder(r=8.3/2,h=3,center=true,$fn=6);
  38
+	}
  39
+	cube([27,20,10],center=true);
20 40
 
21  
-cube([27,20,10],center=true);
  41
+	if(two_extruders) translate([0,31,0]){
  42
+		for (x=[-1,1]) union(){
  43
+			translate([50/2*x,0,0]) cylinder(r=5/2,h=20,center=true);
  44
+			translate([50/2*x,0,2]) cylinder(r=8.3/2,h=3,center=true,$fn=6);
  45
+		}
  46
+		cube([27,20,10],center=true);
  47
+	}
22 48
 
23 49
 
24 50
 }
51  z-motor-mount.scad
@@ -11,39 +11,44 @@
11 11
 include <configuration.scad>
12 12
 include <common.scad>
13 13
 
  14
+module diagonal_rod() {
  15
+	for (y=[-1,1]) translate([0,38*y,-40]) rotate([30*y,0,0]) cylinder (h=100,r=4.2);
  16
+}
  17
+
  18
+module diagonal_rod_cube (slide = 0, size = [16,16,10]) {
  19
+	for (y=[-1,1]) translate([0,37*y,-40]) rotate([30*y,0,0])
  20
+			translate([0,0,50+slide]) cube(size=size,center=true);
  21
+}
  22
+
  23
+module vertical_rods() {
  24
+	translate([30,0,-25]) cylinder(h = 80, r=4.6);
  25
+	translate([0,0,-25]) cylinder(h = 80, r=4.6);
  26
+}
  27
+
  28
+
14 29
 difference(){
15 30
 	// Main body:
16 31
 	union(){
17  
-		if (two_top_rods) {
18  
-			translate([0,0,0]) cube(size = [58,60,16], center = true);
19  
-			translate([0,0,-4]) cube(size = [58,76,8], center = true);
20  
-			for (y=[-1,1])  translate ([-29,30*y,0]) rotate([0,90,0]) cylinder(h =58, r=8, $fn=30);
21  
-		}else {
22  
-			translate([-5,0,-0.5]) cube(size = [70,60,15], center = true);
23  
-		}		 
24  
-		translate ([26.5,0,-8]) cylinder(h=15,r=8);
25  
-		intersection() { 	translate([0,0,92]) cube(size=[200,200,200], center = true); // cleanup the base
26  
-			union() {
27  
-				for (y=[-1,1]) translate([0,38*y,0]) rotate([(90-vert_angle)*y,0,0]) translate([0,0,3]) cylinder(r=10,h=18,center=true);
28  
-			}
29  
-		}
  32
+		translate([-20,0,0]) cube(size = [40,60,16], center = true);
  33
+		translate([-20,0,-4]) cube(size = [40,76,8], center = true);
  34
+		translate([-10,0,-4.5]) cube(size = [60,43,7], center = true);
  35
+		for (y=[-1,1])  translate ([-40,30*y,0]) rotate([0,90,0])
  36
+			cylinder(h = 40, r=8, $fn=30);
  37
+		translate ([-32.25,0,0]) diagonal_rod_cube(size = [15.5,16,10],slide=1);
30 38
 	}
31 39
 	// Motor sits in this
32 40
 	translate([-2.1,0,3.1]) motor();
33 41
 	//The vertical rod goes through here
34  
-	translate ([-2,0,-50]) vertical_rods();
  42
+	translate ([-32,0,-55]) vertical_rods();
  43
+
35 44
 	//Diagonal rod and nut space
36  
-	translate ([0,0,0]) diagonal_rod();
  45
+	translate ([-32,0,0]) diagonal_rod();
  46
+	translate ([-32,0,0]) diagonal_rod_cube(size=[17,16,10],slide=-15);
  47
+	translate ([-32,0,0]) diagonal_rod_cube(size=[17,16.1,10],slide=10);
  48
+	translate ([-33,0,6]) cube([17,5,5],center=true);
37 49
 	//top rod(s):
38  
-	if (two_top_rods) {
39  
-		for (y=[-1,1]) translate([-50,30*y,0]) rotate([0,90,0]) cylinder(h = 100, r=4.5);
40  
-		
41  
-	}else {
42  
-		translate([-50,0,0]) rotate([0,90,0]) cylinder(h = 22.5, r=4.0);
43  
-	}
  50
+	for (y=[-1,1]) translate([-50,30*y,0]) rotate([0,90,0]) cylinder(h = 100, r=4.5);
44 51
 
45  
-	// create even rest for nuts of diagonal rods
46  
-	for (y=[-1,1]) translate([0,38*y,0]) rotate([(90-vert_angle)*y,0,0]) translate([0,0,-11]) cylinder(r=10,h=10,center=true);
47 52
 }
48 53
 
49 54
 

0 notes on commit 7618594

Please sign in to comment.
Something went wrong with that request. Please try again.