// stoffel-hotend tripod fan mount for deltas // by zeus - zeus@ctdo.de - CC-BY-NC-4.0 // -> https://www.thingiverse.com/zeus // -> https://github.com/zeus86 // 25.09.2014 mount_hole_distance=50; height=40; //======================================= mount_arm_w=8; mount_arm_block_l=mount_hole_distance/2; mount_arm_l=mount_hole_distance/2+mount_arm_w/2; mount_hole_dia=4.0; fan_size=40; fan_wall_t=2; fan_wall_h=fan_size; fan_wall_w=fan_size; fan_hole_distance=32; fan_hole_size=3.5; fan_wheel_d = fan_size*0.95; //======================================= // ============= PILLARS ============= module base_plate(){ module base_mount_hole(){ cylinder(r=mount_hole_dia/2,h=height*2,center=true,$fn=16); } module base_pillar(){ difference(){ translate([-mount_arm_block_l/2,0,0]){ cylinder(r=mount_arm_w/2,h=height,center=true,$fn=12); } translate([-mount_arm_block_l/2,0,0]){ base_mount_hole(); } } } difference(){ union(){ rotate([0,0,0]){translate([-mount_arm_block_l/2,0,0]){base_pillar();}} rotate([0,0,120]){translate([-mount_arm_block_l/2,0,0]){base_pillar();}} rotate([0,0,-120]){translate([-mount_arm_block_l/2,0,0]){base_pillar();}} } } } // ============ // ============// ============ // ============ module fan_mnt_hole(){ rotate([90,0,0]){cylinder(r=fan_hole_size/2,h=fan_wall_t+0.1,center=true,$fn=16);} } module fan_holes(){ translate([-fan_hole_distance/2,0,-fan_hole_distance/2]) { fan_mnt_hole(); } translate([fan_hole_distance/2,0,-fan_hole_distance/2]) { fan_mnt_hole(); } translate([-fan_hole_distance/2,0,fan_hole_distance/2]) { fan_mnt_hole(); } translate([fan_hole_distance/2,0,fan_hole_distance/2]) { fan_mnt_hole(); } } module fan_wall(){ difference(){ cube([fan_wall_w,fan_wall_t,fan_wall_h],center=true); rotate([90,0,0]){cylinder(r=fan_wheel_d/2,h=fan_wall_t+0.1,center=true);} fan_holes(); } } // ============ DRAWING ============ base_plate(); rotate([0,0,90]){ translate([0,-mount_arm_l/PI-mount_hole_dia*1.5,0]){ fan_wall(); } } rotate([0,0,210]){ translate([0,-mount_arm_l/PI-mount_hole_dia*1.5,0]){ fan_wall(); } } rotate([0,0,-30]){ translate([0,-mount_arm_l/PI-mount_hole_dia*1.5,0]){ fan_wall(); } }