base and shroud ok
This commit is contained in:
parent
9b18ae9afd
commit
1943721187
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
*.stl
|
||||
!/stl/**
|
50
BaseLeft.scad
Normal file
50
BaseLeft.scad
Normal file
@ -0,0 +1,50 @@
|
||||
|
||||
t = 7;
|
||||
w = 35;
|
||||
h = 47.7;
|
||||
rc = 6.5;
|
||||
rcs = 2;
|
||||
|
||||
$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, lb=1){
|
||||
translate([0,0,-lb])cylinder(h+lb, d=2.5); // tapped M3
|
||||
//translate([0,0,-lb])cylinder(h+lb, d=4); // rutex insert
|
||||
}
|
||||
|
||||
difference(){
|
||||
hull(){
|
||||
translate([rc, rc])cylinder(h=t, r=rc);
|
||||
translate([rc,h-rc])cylinder(h=t, r=rc);
|
||||
translate([w-rcs, h-rcs])cylinder(h=t, r=rcs);
|
||||
translate([w-rcs, rcs])cylinder(h=t, r=rcs);
|
||||
}
|
||||
translate([30.4, h-14.75])through(l=t);
|
||||
translate([13.2, h-33.7])through(l=t);
|
||||
translate([-1, h-24-14,-1])hull(){
|
||||
cube([1,14, t+2]);
|
||||
translate([5,3])cylinder(h=t+2,r=3);
|
||||
translate([5,11])cylinder(h=t+2,r=3);
|
||||
}
|
||||
translate([35,h-19.5-31,-1])hull(){
|
||||
translate([0,3])cylinder(h=t+2,r=3);
|
||||
translate([0,28])cylinder(h=t+2,r=3);
|
||||
}
|
||||
translate([12,h-12,-1])cylinder(h=t+2,d=5.5);
|
||||
translate([32.3,h-52.3,-1])cylinder(h=t+2,d=11);
|
||||
//fan shroud
|
||||
for(x=[24.6]){
|
||||
for(y=[23.4,43.7]){
|
||||
translate([x,h-y,0])m3();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
55
BaseRight.scad
Normal file
55
BaseRight.scad
Normal file
@ -0,0 +1,55 @@
|
||||
|
||||
t = 7;
|
||||
w = 38;
|
||||
h = 47.7;
|
||||
rc = 6.5;
|
||||
rcs = 2;
|
||||
ofs = 88.1-w;
|
||||
|
||||
$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, lb=1){
|
||||
translate([0,0,-lb])cylinder(h+lb, d=2.5); // tapped M3
|
||||
//translate([0,0,-lb])cylinder(h+lb, d=4); // rutex insert
|
||||
}
|
||||
|
||||
difference(){
|
||||
hull(){
|
||||
translate([w-rc, rc])cylinder(h=t, r=rc);
|
||||
translate([w-rc,h-rc])cylinder(h=t, r=rc);
|
||||
translate([rcs, h-rcs])cylinder(h=t, r=rcs);
|
||||
translate([rcs, rcs])cylinder(h=t, r=rcs);
|
||||
}
|
||||
translate([72.2-ofs, h-14.75])through(l=t);
|
||||
translate([72.2-ofs, h-39.9])through(l=t);
|
||||
translate([82.1-ofs, h-6.65])through(l=t);
|
||||
translate([w-7, h-24-14,-1])hull(){
|
||||
translate([7,0])cube([1,14, t+2]);
|
||||
translate([3,3])cylinder(h=t+2,r=3);
|
||||
translate([3,11])cylinder(h=t+2,r=3);
|
||||
}
|
||||
translate([-1,h-19.5-31,-1])hull(){
|
||||
cube([0.01,31,t+2]);
|
||||
translate([12,3])cylinder(h=t+2,r=3);
|
||||
translate([12,28])cylinder(h=t+2,r=3);
|
||||
}
|
||||
|
||||
// translate([32.3,h-52.3,-1])cylinder(h=t+2,d=11);
|
||||
for(x=[72.6-ofs]){
|
||||
for(y=[33.4]){
|
||||
translate([x,h-y,0])m3();
|
||||
}
|
||||
}
|
||||
for(x=[64.6-ofs]){
|
||||
for(y=[11.4]){
|
||||
translate([x,h-y,0])m3();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
98
shroud.scad
Normal file
98
shroud.scad
Normal file
@ -0,0 +1,98 @@
|
||||
/* shroud options */
|
||||
wt = 3;
|
||||
tb = 40;
|
||||
bpt = 7;
|
||||
|
||||
|
||||
/* fan size */
|
||||
lf = 40;
|
||||
tf = 10;
|
||||
hd = 38;
|
||||
lhf = 32;
|
||||
rc = 4;
|
||||
/* heatsink size */
|
||||
lh = 30;
|
||||
wh = 26;
|
||||
th = 16;
|
||||
ofsx = 0;
|
||||
ofsy = 0;
|
||||
ofsz = 3.5;
|
||||
|
||||
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 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);
|
||||
}
|
||||
}
|
||||
}
|
||||
if (2*wt+hd> lf){
|
||||
translate([lf/2, lf/2])cylinder(h=wt, d=2*wt+hd);
|
||||
}
|
||||
hull(){
|
||||
for(x=[lf-rc]){
|
||||
for(y=[rc, lf-rc]){
|
||||
translate([x,y,0])cylinder(h=t,r=rc);
|
||||
}
|
||||
}
|
||||
}
|
||||
hull(){
|
||||
x=rc;
|
||||
translate([x,rc])cylinder(h=t,r=rc);
|
||||
translate([x,lf-rc])cylinder(h=1,r=rc);
|
||||
translate([x-1*rc,lf-1,t-12])cube([2*rc,1,12]);
|
||||
}
|
||||
hull(){
|
||||
translate([lf/2,lf/2, wt-0.1])cylinder(h=0.1,d=hd+2*wt);
|
||||
translate([lf/2-wh/2-wt+ofsx,lf/2-lh/2+ofsy,t-th+ofsz])cube([wh+2*wt,lh,0.01]);
|
||||
}
|
||||
translate([lf/2-wh/2-wt+ofsx,lf/2-lh/2+ofsy,t-th+ofsz])cube([wh+2*wt,lh,th]);
|
||||
for(x=[48]){
|
||||
for(y=[7.7,28]){
|
||||
translate([x,y,t])mirror([1,0,0])mount();
|
||||
}
|
||||
}
|
||||
for(x=[-8]){
|
||||
for(y=[18]){
|
||||
translate([x,y,t])mount();
|
||||
}
|
||||
}
|
||||
translate([0,48,t])rotate([0,0,-90])mount();
|
||||
}
|
||||
hull(){
|
||||
translate([lf/2,lf/2,-0.01])cylinder(h=wt+0.01,d=hd);
|
||||
translate([lf/2-wh/2+ofsx,lf/2-lh/2+ofsy-0.01,t-th+ofsz])cube([wh,lh+0.02,0.01]);
|
||||
}
|
||||
translate([lf/2-wh/2+ofsx,lf/2-lh/2+ofsy-0.01,t-th+ofsz])cube([wh,lh+0.02,th+0.01]);
|
||||
for(x=[(lf-lhf)/2, (lf-lhf)/2+lhf]){
|
||||
for(y=[(lf-lhf)/2, (lf-lhf)/2+lhf]){
|
||||
translate([x,y])m3();
|
||||
}
|
||||
}
|
||||
}
|
BIN
stl/BaseLeft.stl
Normal file
BIN
stl/BaseLeft.stl
Normal file
Binary file not shown.
BIN
stl/BaseRight.stl
Normal file
BIN
stl/BaseRight.stl
Normal file
Binary file not shown.
BIN
stl/shroud.stl
Normal file
BIN
stl/shroud.stl
Normal file
Binary file not shown.
Loading…
Reference in New Issue
Block a user