New parts

This commit is contained in:
2025-08-04 11:08:25 +02:00
parent e66309cbf2
commit 2e094815a5
57 changed files with 491291 additions and 1 deletions
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
Binary file not shown.
Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

+68
View File
@@ -0,0 +1,68 @@
$fn=60;
include <BOSL2/std.scad>
b_length=200;
b_height=42;
sb_height=5;
m_width=b_height+5;
m_length=b_length+5;
m_height=8;
wall=3;
blades=1;
sliders=4;
// board
module bladeboard() {
color("blue") difference() {
cuboid([200,2,42], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
// holes
translate([-97.5,2,18.5]) ycyl(l=m_width-wall, d=2.7);
translate([88,2,8.75]) ycyl(l=m_width-wall, d=2.7);
}
color("grey", alpha=0.5) translate([0,-9.5,0]) cuboid([200,17,40], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
}
module enclosure() {
difference() {
cuboid([m_length,m_width+2,m_height], rounding=1.5);
translate([0,0,sb_height]) rotate([-90,0,0]) cuboid([202,sb_height,m_width-2], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
translate([0,0,1]) rotate([-90,0,0]) cuboid([b_length-wall,sb_height,b_height-wall], rounding=2, edges=[TOP+LEFT,TOP+RIGHT,BOT+LEFT,BOT+RIGHT]);
translate([-97.5,18.5,0]) zcyl(l=m_height, d=2.7, rounding=-1);
translate([88,8.75,0]) zcyl(l=m_height, d=2.7, rounding=-1);
}
translate([-97.5,18.5,0]) tube(l=sb_height, od=6, id=2.7);
translate([88,8.75,0]) tube(l=sb_height, od=6, id=2.7);
/*[bladeboards]*/
* translate([0,0,6]) rotate([-90,0,0]) bladeboard();
}
difference() {
/*[rack]*/
for (i=[0:1:blades-1]) {
translate([0,i*m_width,0]) enclosure();
}
/*[sliding_base]*/
for (i=[0:50:50*(sliders-1)]) {
translate([i-90,m_width-60,-m_height-10]) rotate([90,0,90]) import("sliding_block_base.stl");
}
}
/*[quad_rack]*/
* color("blue", alpha=1) translate([0,-83.5,128]) rotate([0,90,0]) import("obj_1_Soquartz Blade 1 U Server Rack Mount Quad.stl");
color("red") {
difference() {
union() {
translate([0,0,23]) rotate([0,90,0]) rect_tube(h=m_length, size=m_width+5, wall=3, rounding=1.5, center=true);
translate([-m_length/2,0,23]) cuboid([3,m_width+5,m_width+5], rounding=1.5);
}
cuboid([m_length+2,m_width+2,m_height+1.5], rounding=1.5);
translate([-m_length/2,0,25]) xcyl(l=10, d=30);
for (i=[-2:1:2]) {
translate([i*40,0,47.5]) zcyl(l=3, d=30, rounding=-1.5);
translate([i*40,0,25]) ycyl(l=m_width+5, d=30, rounding=-1.5);
}
}
}
+75
View File
@@ -0,0 +1,75 @@
$fn=60;
include <BOSL2/std.scad>
// board
module board() {
color("blue") difference() {
cuboid([85,56,1], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
translate([-39,-24.5,0]) zcyl(l=2, d=3);
translate([-39,24.5,0]) zcyl(l=2, d=3);
translate([19,-24.5,0]) zcyl(l=2, d=3);
translate([19,24.5,0]) zcyl(l=2, d=3);
}
}
// fan
module fan() {
color("orange", alpha=.5) difference() {
cuboid([120,120,25], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
translate([-52.75,-52.75,0]) zcyl(l=25, d=4.5, rounding=-1);
translate([-52.75,52.75,0]) zcyl(l=25, d=4.5, rounding=-1);
translate([52.75,-52.75,0]) zcyl(l=25, d=4.5, rounding=-1);
translate([52.75,52.75,0]) zcyl(l=25, d=4.5, rounding=-1);
}
}
/*[sliding_base]*/
rotate([90,0,0]) {
translate([-72,-15,40]) import("sliding_block_base.stl");
translate([-72,-15,-60]) import("sliding_block_base.stl");
}
difference() {
translate([-5,0,0]) cuboid([140,130,3], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
translate([-10,0,0]) cuboid([60,40,3], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
translate([-39,-24.5,0]) zcyl(l=3, d=2.8);
translate([-39,24.5,0]) zcyl(l=3, d=2.8);
translate([19,-24.5,0]) zcyl(l=3, d=2.8);
translate([19,24.5,0]) zcyl(l=3, d=2.8);translate([-52.75,-52.75,0]) zcyl(l=3, d=2.8);
translate([-52.75,52.75,0]) zcyl(l=3, d=2.8);
translate([52.75,-52.75,0]) zcyl(l=3, d=2.8);
translate([52.75,52.75,0]) zcyl(l=3, d=2.8);
}
// pilars
color("cyan") {
difference() {
union() {
// tubes
translate([0,0,13]) {
translate([-52.75,-52.75,0]) tube(l=25, od=10, id=2.8);
translate([-52.75,52.75,0]) tube(l=25, od=10, id=2.8);
translate([52.75,-52.75,0]) tube(l=25, od=10, id=2.8);
translate([52.75,52.75,0]) tube(l=25, od=10, id=2.8);
}
// arches
translate([0,0,36.5]) {
translate([0,52.75,0]) cuboid([126,10,33], rounding=1);
translate([0,-52.75,0]) cuboid([126,10,33], rounding=1);
}
}
// holes
translate([0,0,36.5]) {
translate([52.75,52.75,0]) zcyl(l=33, d=4.5, rounding=-1);
translate([-52.75,52.75,0]) zcyl(l=33, d=4.5, rounding=-1);
translate([52.75,-52.75,0]) zcyl(l=33, d=4.5, rounding=-1);
translate([-52.75,-52.75,0]) zcyl(l=33, d=4.5, rounding=-1);
}
// fan
translate([0,0,37]) cuboid([122,122,27]);
}
}
translate([0,0,7]) board();
translate([0,0,37]) fan();
+15
View File
@@ -0,0 +1,15 @@
$fn=60;
include <BOSL2/std.scad>
items=2;
difference() {
cuboid([20,5,100], rounding=1);
translate([0,0,-40]) ycyl(l=5, d=5.5, rounding=-1);
translate([0,0,40]) ycyl(l=5, d=5.5, rounding=-1);
}
for (i=[0:50:50*(items-1)]) {
translate([-8,15.5,i-15]) rotate([0,180,180]) import("sliding_block_base.stl");
}
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.