sb/feature/coolingFanMount #1
@ -45,6 +45,12 @@ difference(){
|
|||||||
translate([x,h-y,0])m3();
|
translate([x,h-y,0])m3();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//cooling fan mount
|
||||||
|
for(x=[24]){
|
||||||
|
for(y=[33.7,11.7]){
|
||||||
|
translate([x,h-y,0])m3();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
67
coolingFanMount.scad
Normal file
67
coolingFanMount.scad
Normal file
@ -0,0 +1,67 @@
|
|||||||
|
/* mount options */
|
||||||
|
wt = 5; // wall thickness (min 5mm for m2 inserts)
|
||||||
|
tb = 40;
|
||||||
|
bpt = 7;
|
||||||
|
|
||||||
|
|
||||||
|
/* fan size */
|
||||||
|
lf = 40; // length
|
||||||
|
tf = 10; // thickness
|
||||||
|
lhf = 34.8; // distance mounting holes
|
||||||
|
lof = 28; // length of outlet
|
||||||
|
wof = 8; // width of outlet
|
||||||
|
rc = 2; // radius corners
|
||||||
|
|
||||||
|
|
||||||
|
t= tb-bpt-tf;
|
||||||
|
$fn= 100;
|
||||||
|
|
||||||
|
module through(l=7, lh=3.3, lt=1, lb=1){
|
||||||
|
union(){
|
||||||
|
translate([0,0,l-lh])cylinder(h=lh+lt, d=5.6);
|
||||||
|
translate([0,0,-lb])cylinder(h=l+lh+lb, d=3.5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module m3 (h=8, lt=1){
|
||||||
|
//translate([0,0,-lt])cylinder(h, d=2.5); // tapped M3
|
||||||
|
translate([0,0,-lt])cylinder(h, d=4); // rutex insert
|
||||||
|
}
|
||||||
|
|
||||||
|
module m2 (h=8, lt=1){
|
||||||
|
translate([0,0,-lt])cylinder(h, d=1.5); // tapped M3
|
||||||
|
//translate([0,0,-lt])cylinder(h, d=3.2); // rutex insert
|
||||||
|
}
|
||||||
|
|
||||||
|
module mount(){
|
||||||
|
translate([4,4,-12])difference(){
|
||||||
|
hull(){
|
||||||
|
translate([0,0,6])cylinder(h=6, d=8);
|
||||||
|
translate([4,-4,0])cube([0.01,8,12]);
|
||||||
|
}
|
||||||
|
translate([0,0,12])mirror([0,0,1])through(l=10,lb=1,lt=1,lh=7);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
difference(){
|
||||||
|
union(){
|
||||||
|
hull(){
|
||||||
|
for(x=[rc, lf-rc]){
|
||||||
|
for(y=[rc, lf-rc]){
|
||||||
|
translate([x,y])cylinder(h=wt,r=rc);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
translate([lf,5,wt+8])rotate([0,90,0])mount();
|
||||||
|
translate([lf,lf-5-8,wt+8])rotate([0,90,0])mount();
|
||||||
|
}
|
||||||
|
|
||||||
|
for(x=[(lf-lhf)/2, (lf-lhf)/2+lhf]){
|
||||||
|
for(y=[(lf-lhf)/2, (lf-lhf)/2+lhf]){
|
||||||
|
translate([x,y])m2();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
translate([8, 0,wt/2])rotate([-90,0,0])m2();
|
||||||
|
translate([lf-8, 0,wt/2])rotate([-90,0,0])m2();
|
||||||
|
}
|
BIN
stl/BaseLeft.stl
BIN
stl/BaseLeft.stl
Binary file not shown.
BIN
stl/coolingFanMount.stl
Normal file
BIN
stl/coolingFanMount.stl
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user