4 // Josef Průša <iam@josefprusa.cz> and contributors
5 // http://www.reprap.org/wiki/Prusa_Mendel
6 // http://prusamendel.org
7 // Alterations for reprap wilson by M. Rice <mrice411@gmail.com>
9 include <configuration.scad>
12 idler_offs_z = -1; // negative here means "up" when installed
16 tensioner_size_z = 12;
18 module x_end_idler_base(){
22 module x_end_idler_holes(){
24 translate([0,idler_offs_y,idler_offs_z]) {
25 #translate(v=[0,-22,30.25]) rotate(a=[0,-90,0]) cylinder(h = 80, r=idler_bearing_inner_d/2+.3, $fn=30);
26 #translate(v=[2,-22,30.25]) rotate(a=[0,-90,0]) cylinder(h = 10, r=idler_bearing_inner_d/2 + 1, $fn=30);
27 #translate(v=[-21.5,-22,30.25]) rotate(a=[0,-90,0]) rotate(a=[0,0,30]) cylinder(h = 80, r=idler_bearing_inner_d, $fn=6);
29 // create a notch for the X tensioner, to improve the length of
31 translate (v=[0,-22,30.25]) translate(v=[-10,-20,1]) #difference() {
32 rotate(a=[45,0,0]) cube(size=[30,22,22],center=true);
33 translate(v=[0,14,0]) cube(size=[31,4,8],center=true);
40 mirror([0,1,0]) difference(){
45 // added ridges to keep the tensioner from pitching
46 for (x = [-9.8, -20.2], z = [center_z-tensioner_size_z/2 - .5, center_z+tensioner_size_z/2 + .5]) {
48 translate(v=[x,1, z]) intersection () {
49 rotate ([45, 0, 90]) cube(size=[20,d, d],center=true);
50 translate ([(x < -15) ? d : -d, 0, 0]) rotate ([0, 0, 90]) cube(size=[20,d*2, d*2],center=true);