Added various plates

This commit is contained in:
2025-11-14 19:25:16 +01:00
parent b1e5c1e84b
commit cf6666cabc
35 changed files with 271 additions and 114 deletions

Binary file not shown.

After

Width:  |  Height:  |  Size: 117 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 128 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 302 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 35 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 24 KiB

After

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 28 KiB

After

Width:  |  Height:  |  Size: 44 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

@@ -1,20 +1,14 @@
fragments = 36;
d=3.96;
h=3;
include <BOSL2/std.scad>
module pcb() {
color("green") {
difference(){
cube(size = [170,170,h], center = false);
// mini-itx holes
translate([6.35,6.35+22.86,0])
cylinder(5, d/2, d/2, $fn = fragments, center=false);
translate([6.35,6.35+154.94,0])
cylinder(5, d/2, d/2, $fn = fragments, center=false);
translate([6.35+157.48,6.35,0])
cylinder(5, d/2, d/2, $fn = fragments, center=false);
translate([6.35+157.48,6.35+154.94,0])
cylinder(5, d/2, d/2, $fn = fragments, center=false);
}
color("green", alpha=.5) difference() {
cuboid([170,170,1.6], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
// mini-itx holes
translate([-78.74,74.84,5]) zcyl(l=20, d=2.7);
translate([-78.74,-80.1,5]) zcyl(l=20, d=2.7);
translate([78.74,-80.1,5]) zcyl(l=20, d=2.7);
translate([78.74,51.98,5]) zcyl(l=20, d=2.7);
}
}
}
*pcb();

View File

@@ -1,7 +1,6 @@
$fn=60;
include <BOSL2/std.scad>
include <boltsos_0.4.1/BOLTS.scad>
include <mini_itx_board.scad>
@@ -17,24 +16,28 @@ module pilar() {
}
// holes_positions
* color("red") {
translate([-78.7,-52.2,5]) zcyl(l=20, d=1);
translate([-78.7,80.1,5]) zcyl(l=20, d=1);
translate([78.8,80.1,5]) zcyl(l=20, d=1);
translate([78.8,-74.8,5]) zcyl(l=20, d=1);
color("red") {
translate([-78.74,74.84,5]) zcyl(l=20, d=1);
translate([-78.74,-80.1,5]) zcyl(l=20, d=1);
translate([78.74,-80.1,5]) zcyl(l=20, d=1);
translate([78.74,51.98,5]) zcyl(l=20, d=1);
}
* translate([-85,-81,10]) pcb();
color("cyan") {
// mini_itx_plate
rect_tube(3, frame_l, wall=frame_e*6, rounding=frame_e, irounding=frame_e/2, center=true);
color("yellow") {
// base_plate
difference() {
cuboid([frame_l,frame_l,frame_e], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
cuboid([frame_l-34,frame_l-34,frame_e+1], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
}
*rect_tube(3, frame_l, wall=frame_e*6, rounding=frame_e, irounding=frame_e/2, center=true);
// pcb_supports
translate([0,0,p_height-1]) {
translate([-78.7,-52.2,0]) pilar();
translate([-78.7,80.1,0]) pilar();
translate([78.8,80.1,0]) pilar();
translate([78.8,-74.8,0]) pilar();
translate([-78.74,74.84,0]) pilar();
translate([-78.74,-80.1,0]) pilar();
translate([78.74,-80.1,0]) pilar();
translate([78.74,51.98,0]) pilar();
}
}
}
translate([0,0,10]) pcb();

View File

@@ -0,0 +1,14 @@
include <BOSL2/std.scad>
module pcb() {
color("green", alpha=.5) difference() {
cuboid([120,120,1.6], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
// nano-itx holes
translate([-56.4,-41.9,5]) zcyl(l=20, d=2.7);
translate([-56.4,56.4,5]) zcyl(l=20, d=2.7);
translate([56.4,56.4,5]) zcyl(l=20, d=2.7);
translate([56.4,-56.4,5]) zcyl(l=20, d=2.7);
}
}
*pcb();

View File

@@ -0,0 +1,44 @@
$fn=60;
include <BOSL2/std.scad>
include <boltsos_0.4.1/BOLTS.scad>
include <nano_itx_board.scad>
frame_l=130;
frame_e=3;
p_height=5;
module pilar() {
difference() {
zcyl(l=p_height, d=8, rounding1=-2);
zcyl(l=p_height, d=3, rounding=-1);
}
}
// holes_positions
color("red") {
translate([-56.4,-41.9,5]) zcyl(l=20, d=1);
translate([-56.4,56.4,5]) zcyl(l=20, d=1);
translate([56.4,56.4,5]) zcyl(l=20, d=1);
translate([56.4,-56.4,5]) zcyl(l=20, d=1);
}
color("pink") {
// base_plate
difference() {
cuboid([frame_l,frame_l,frame_e], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
cuboid([frame_l-30,frame_l-30,frame_e+1], rounding=3, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
}
*rect_tube(3, frame_l, wall=frame_e*6, rounding=frame_e, irounding=frame_e/2, center=true);
// pcb_supports
translate([0,0,p_height-1]) {
translate([-56.4,-41.9,0]) pilar();
translate([-56.4,56.4,0]) pilar();
translate([56.4,56.4,0]) pilar();
translate([56.4,-56.4,0]) pilar();
}
}
translate([0,0,10]) pcb();

View File

@@ -3,13 +3,15 @@ $fn=60;
include <BOSL2/std.scad>
include <boltsos_0.4.1/BOLTS.scad>
include <nutsnbolts/cyl_head_bolt.scad>;
include <triple_ssd_mount.scad>
include <ssd_plate_addon.scad>
include <ssd_mount.scad>
include <fan_mount.scad>
base_l=190;
base_e=3;
b_height=5;
r_height=200;
hdd=1;
module screw(x) {
translate([0,-5,0]) rotate([90,90,0]) {
@@ -18,6 +20,31 @@ module screw(x) {
}
}
module corner() {
difference() {
union() {
cuboid([30,3,30], rounding=3, edges=[LEFT+TOP,LEFT+BOT]);
translate([50,0,-10]) cuboid([100,3,10]);
}
translate([15,0,15]) ycyl(l=3.5, d=40);
translate([-10,0,10]) screw(10.5);
translate([-10,0,-10]) screw(10.5);
translate([30,0,-10]) screw(10.5);
}
}
module s_height_corner() {
difference() {
union() {
cuboid([30,3,10], rounding=3, edges=[LEFT+TOP,LEFT+BOT]);
translate([50,0,0]) cuboid([100,3,10]);
}
translate([-10,0,0]) screw(10.5);
translate([-10,0,-10]) screw(10.5);
translate([30,0,0]) screw(10.5);
}
}
module base_plate() {
/*[front]*/
translate([0,0,13]) {
@@ -36,6 +63,24 @@ module base_plate() {
}
}
module s_height_plate() {
/*[front]*/
translate([0,0,3]) {
union() {
translate([-90,-97,0]) s_height_corner();
translate([90,-97,0]) mirror([1,0,0]) s_height_corner();
}
union() {
translate([-90,97,0]) s_height_corner();
translate([90,97,0]) mirror([1,0,0]) s_height_corner();
}
}
/*[plate]*/
translate([0,0,3]) rect_tube(7, size=[base_l,base_l+7], wall=base_e, center=true) {
attach(BOT) rect_tube(base_e, size=[base_l,base_l+7], wall=base_e*5, irounding=10, center=true);
}
}
module rail(h) {
difference() {
color("grey") cuboid([10,10,h], rounding=1);
@@ -53,20 +98,7 @@ module rail2(h) {
}
}
module corner() {
difference() {
union() {
cuboid([30,3,30], rounding=3, edges=[LEFT+TOP,LEFT+BOT]);
translate([50,0,-10]) cuboid([100,3,10]);
}
translate([15,0,15]) ycyl(l=3.5, d=40);
translate([-10,0,10]) screw(10.5);
translate([-10,0,-10]) screw(10.5);
translate([30,0,-10]) screw(10.5);
}
}
module connector() {
module b_connector() {
mirror ([0,0,1]) difference() {
union() {
cuboid([33,16,30], rounding=1);
@@ -84,6 +116,31 @@ module connector() {
}
}
module m_connector() {
mirror ([0,0,1]) difference() {
union() {
translate([0,-1.5,-20]) {
translate([-7,0,0]) cuboid([17,13,40], rounding=1);
translate([50,0,0]) cuboid([110,13,10], rounding=1);
}
}
translate([-12,0,-20]) cuboid([12,11,40], rounding=-1);
translate([-3,0,0]) {
translate([0,0,-10]) rotate([0,0,90]) screw(20);
translate([0,0,-30]) rotate([0,0,90]) screw(20);
}
translate([-11,0,0]) {
translate([0,0,-5]) ycyl(l=20, d=2);
translate([0,0,-15]) ycyl(l=20, d=2);
translate([0,0,-25]) ycyl(l=20, d=2);
translate([0,0,-35]) ycyl(l=20, d=2);
}
}
*difference() {
translate([-5,0,10]) rotate([0,90,0]) nutcatch_parallel("M4", clh=0.1);
translate([-3,0,10]) rotate([0,0,90]) screw(20);
}
}
module walls() {
difference() {
union() {
@@ -106,28 +163,63 @@ color("red") {
}
/*[rails]*/
translate([-105,-90,0]) mirror([0,1,0]) rail2(200);
translate([-105,90,0]) rail2(200);
translate([100,-90,0]) mirror([0,1,0]) rail(200);
translate([100,90,0]) rail(200);
// 1U
translate([120,90,-40]) rail(120);
// 1 U
translate([-130,90,-40]) rail(120);
// 1.5 U
translate([100,90,180]) rail(160);
translate([100,-90,180]) mirror([0,1,0]) rail(160);
// 2U
translate([100,-90,0]) mirror([0,1,0]) rail(200);
translate([100,90,0]) rail(200);
// 2U double
translate([-105,-90,0]) mirror([0,1,0]) rail2(200);
translate([-105,90,0]) rail2(200);
/*connectors*/
color("green") translate([0,0,-80]) rotate([0,0,90]) {
translate([-79,-100,0]) connector();
translate([79,-100,0]) mirror([1,0,0]) connector();
}
color("cyan") {
/*[plates_and_accessories]*/
translate([0,0,7]) {
base_plate();
rotate([0,0,90]) ssd_mount();
color("green") {
translate([0,0,-80]) rotate([0,0,90]) {
translate([-79,-100,0]) b_connector();
translate([79,-100,0]) mirror([1,0,0]) b_connector();
}
translate([0,0,-53]) {
base_plate();
translate([0,0,-0.5]) rotate([0,0,90])fan_mount();
rotate([0,0,90]) {
translate([-79,-100,80]) m_connector();
translate([79,-100,80]) mirror([1,0,0]) m_connector();
}
}
/*[plates_and_accessories]*/
translate([0,0,-53]) {
color("cyan") base_plate();
rotate([0,0,90]) {
color("cyan") ssd_plate_addon();
color("orange") translate([0,0,-3]) mirror([0,0,1]) mount();
}
}
translate([0,0,8]) {
color("pink") {
s_height_plate();
rotate([0,0,90]) {
translate([0,0,-0.5]) {
*ssd_plate_addon();
fan_mount();
}
}
}
}
translate([0,0,92.5]) {
mirror([0,0,1]) {
color("cyan") base_plate();
color("cyan") translate([0,0,-0.5]) fan_mount();
}
}
// addon
color("red") {
union() {
translate([-90,97,40]) corner();
translate([90,97,40]) mirror([1,0,0]) corner();
}
}

View File

@@ -0,0 +1,40 @@
include <BOSL2/std.scad>
hdd=1;
module addon() {
difference() {
union() {
rotate([0,0,41]) cuboid([175,10,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
rotate([0,0,-41]) cuboid([175,10,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
tube(od=122.5, id=112.5, l=3);
}
translate([60,52.5,0]) zcyl(l=10, d=4.5);
translate([60,-52.5,0]) zcyl(l=10, d=4.5);
translate([-60,52.5,0]) zcyl(l=10, d=4.5);
translate([-60,-52.5,0]) zcyl(l=10, d=4.5);
}
}
module walls(hdd) {
difference() {
union() {
cuboid([3,85,13+13*hdd], rounding=3, edges=[TOP+FRONT,TOP+BACK], anchor=BOT);
for(i=[0:13:13*hdd]) translate([-1.5,0,2+i]) ycyl(l=85, d=3);
}
for(i=[0:13:13*hdd]) {
translate([0,-38.5,7+i]) xcyl(l=3, d=3.5);
translate([0,38.5,7+i]) xcyl(l=3, d=3.5);
}
}
}
module mount() {
addon();
rect_tube(h=3, size=[85,85], wall=10, center=true);
translate([36.5,0,0]) walls(hdd);
translate([-36.5,0,0]) mirror([1,0,0]) walls(hdd);
}
*mount();

View File

@@ -0,0 +1,17 @@
include <BOSL2/std.scad>
module ssd_plate_addon() {
difference() {
union() {
rotate([0,0,41]) cuboid([250,15,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
rotate([0,0,-41]) cuboid([250,15,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
tube(od=172.5, id=147.5, l=3);
}
translate([60,52.5,0]) zcyl(l=10, d=4.5);
translate([60,-52.5,0]) zcyl(l=10, d=4.5);
translate([-60,52.5,0]) zcyl(l=10, d=4.5);
translate([-60,-52.5,0]) zcyl(l=10, d=4.5);
}
}
*ssd_plate_addon();

View File

@@ -1,33 +0,0 @@
include <BOSL2/std.scad>
module walls() {
difference() {
union() {
translate([0,0,19]) cuboid([3,85,38], rounding=3, edges=[TOP+FRONT,TOP+BACK]);
for(i=[2:13:28]) translate([-1.5,0,i]) ycyl(l=85, d=3);
}
for(i=[7:13:33]) {
translate([0,-38.5,i]) xcyl(l=3, d=3.5);
translate([0,38.5,i]) xcyl(l=3, d=3.5);
}
}
}
module ssd_mount() {
difference() {
union() {
rect_tube(h=3, size=[85,85], wall=10, center=true);
translate([36.5,0,0]) walls();
translate([-36.5,0,0]) mirror([1,0,0]) walls();
rotate([0,0,41]) cuboid([250,15,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
rotate([0,0,-41]) cuboid([250,15,3], rounding=5, edges=[FWD+RIGHT,FWD+LEFT,BACK+RIGHT,BACK+LEFT]);
tube(od=172.5, id=147.5, l=3);
}
translate([60,52.5,0]) zcyl(l=10, d=4.5);
translate([60,-52.5,0]) zcyl(l=10, d=4.5);
translate([-60,52.5,0]) zcyl(l=10, d=4.5);
translate([-60,-52.5,0]) zcyl(l=10, d=4.5);
}
}
*ssd_mount();

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
server_rack/stl/rail_2U.stl Normal file

Binary file not shown.

Binary file not shown.