3d-stuff/openscad/own/stoffel hotend tripod konus.../fan mount 40mm.scad

126 lines
2.2 KiB
OpenSCAD

// 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();
}
}