3d-stuff/openscad/own/delta-extrusion-40mm-fan-mount/fanadapter.scad

48 lines
1.6 KiB
OpenSCAD

// 40mm fan adapter for delta frames
// by zeus - zeus@ctdo.de - CC-BY-NC-4.0
// -> https://www.thingiverse.com/zeus
// -> https://github.com/zeus86
// 2016-02-26
// ---
//some vars
$fn=24;
mnt_hole_dia=5.1;
fan_hole_dia=4;
fan_hole_dist=32.5;
fan_dia_effective=40;
base_w=40*1.75;
base_t=3;
base_h=40+2*mnt_hole_dia;
standoff_h=7;
//====================================
module standoff(){
translate([0,0,standoff_h/2+base_t/2]){
difference(){
cylinder(r1=fan_hole_dia,r2=fan_hole_dia*0.75,h=standoff_h,center=true);
cylinder(r=fan_hole_dia/2,h=standoff_h+1,center=true);
}
}
}
module base(){
difference(){
cube([base_w,base_h,base_t],center=true);
cylinder(r=fan_dia_effective/2,h=base_t+1,center=true,$fn=48);
translate([-(base_w/2-mnt_hole_dia),+(base_h/2-mnt_hole_dia),0])cylinder(r=mnt_hole_dia/2,h=base_t+1,center=true);
translate([+(base_w/2-mnt_hole_dia),+(base_h/2-mnt_hole_dia),0])cylinder(r=mnt_hole_dia/2,h=base_t+1,center=true);
translate([-(base_w/2-mnt_hole_dia),-(base_h/2-mnt_hole_dia),0])cylinder(r=mnt_hole_dia/2,h=base_t+1,center=true);
translate([+(base_w/2-mnt_hole_dia),-(base_h/2-mnt_hole_dia),0])cylinder(r=mnt_hole_dia/2,h=base_t+1,center=true);
}
translate([-(fan_hole_dist/2),+(fan_hole_dist/2),0])standoff();
translate([+(fan_hole_dist/2),+(fan_hole_dist/2),0])standoff();
translate([-(fan_hole_dist/2),-(fan_hole_dist/2),0])standoff();
translate([+(fan_hole_dist/2),-(fan_hole_dist/2),0])standoff();
}
base();