Crank in position

Last week I decided to repair the window shade crank of my appartment, the plastic part to hold it was broken and felt everytime one used it. I went for a 3D printed replacement part.

I used OpenSCAD to model it. The website is not the fancier and the tool is not as advanced as graphical SCAD tools, but I enjoyed the fact that you program your 3D model, parameterize its size using variables that you add and multiply.

My crank was made out of a cylinder, inside which I extruded a small strip that would prevent it from getting out of its place. I also included a few slots close to the strip so that the cylinder can twist a bit when putting it in position.

// Structure dimensions
height = 98;
radius = 6;

hole_radius = 5;
hole_width = 2;
hole_offset = 10;

// Choices
thickness = 2;
slot_lenght = 15;
slot_width = 0.3;
slots = 8;

$fn = 30;

difference() {
  union() {
    difference() {
	   cylinder(h = height, r = radius + thickness, center = true);
	   cylinder(h = height, r = radius, center = true);
    }
    translate([0, 0, - height/2 + thickness/2]) {
      cylinder(h = thickness, r = radius + thickness, center = true);
    }
    translate([0, 0, height/2 - hole_offset - hole_width/2]) {
      difference() {
        cylinder(h = hole_width, r = radius + thickness, center = true);
        rotate_extrude() {
          polygon(points = [
            [0, -hole_width/2],
            [0, hole_width/2],
            [radius, hole_width/2],
            [hole_radius, 0],
            [hole_radius, -hole_width/2]
          ]);
        }
      }
    }
  }
    translate([0, 0, height/2 - hole_offset - hole_width/2 - slot_lenght/2]) {
    for (i = [1 : slots]) {
      rotate([0, 0, i * 360 / slots]) {
        cube(size = [radius + 2 * thickness, slot_width, slot_lenght]);
      }
    }
  }
}

Since I don’t have a personal 3D printer I ordered it from Scuplteo and had it delivered in a few days. I had to push harder than I expected to put it in its final position, but it handled the load and now works perfectly.

Crank in position