First customizations for CLIC demo system
This commit is contained in:
parent
a84ccfa59e
commit
47105977d4
1 changed files with 47 additions and 30 deletions
|
@ -4,7 +4,8 @@
|
|||
// Ease assembly
|
||||
|
||||
|
||||
$w=1.5; // wall thickness
|
||||
$w=2.5; // wall thickness
|
||||
$wf=1.5; // wall thickness for front and back faces
|
||||
$g=.2; // gap
|
||||
|
||||
$hl=123; // heatsink length
|
||||
|
@ -12,9 +13,9 @@ $hw=100; // heatsink width
|
|||
$hrailh=1.7 - $g; // heatsink rail height
|
||||
$hrailw=1.7 - $g; // heatsink rail witdth
|
||||
|
||||
$boxh=40.5; // box height
|
||||
$boxh=52.5; // box height
|
||||
$boxw=$hw + 2 * ($w + $g); // box width
|
||||
$boxl=$hl / 2 + ($w + $g); // box length
|
||||
$boxl=$hl / 2 + ($wf + $g); // box length
|
||||
|
||||
$feeth=5.3; // feet height
|
||||
|
||||
|
@ -54,9 +55,24 @@ module backBox() {
|
|||
|
||||
module frontLabel() {
|
||||
color("green")
|
||||
translate([$boxw / 2 - 6, $boxl - .5, $feeth + 5])
|
||||
translate([$boxw / 2 - 6, $boxl - .5, $feeth + 7.5])
|
||||
rotate([90, 0, 180])
|
||||
linear_extrude(2) text("Odroid M1", size=4);
|
||||
union() {
|
||||
translate([4,10.5,0])
|
||||
linear_extrude(2) text("Projet CLIC", size=5);
|
||||
translate([54,10.5,0])
|
||||
linear_extrude(2) text("projetclic.cc", size=5);
|
||||
translate([4,4,0])
|
||||
linear_extrude(2) text("YesWiki", size=5);
|
||||
translate([55.75,4,0])
|
||||
linear_extrude(2) text("yeswiki.net", size=5);
|
||||
translate([4,-2.5,0])
|
||||
linear_extrude(2) text("Le DistriLab", size=5);
|
||||
translate([60,-2.5,0])
|
||||
linear_extrude(2) text("distrilab.fr", size=5);
|
||||
}
|
||||
translate([0, $boxl, $feeth + $boxh - 38.5])
|
||||
corners(23, 92);
|
||||
}
|
||||
|
||||
module frontScrewoles() {
|
||||
|
@ -88,12 +104,12 @@ module connectors() {
|
|||
difference() {
|
||||
union() {
|
||||
connector($boxw - 2 * $w);
|
||||
translate([-$boxw / 2, 0, $feeth + $w + 12.55])
|
||||
translate([-$boxw / 2, 0, $feeth + $w + ($boxh-15.5)/2+0.05])
|
||||
rotate([0, 90, 0])
|
||||
connector(25, 0);
|
||||
translate([$boxw / 2, 0, $feeth + $w + 12.55])
|
||||
connector($boxh-15.5, 0);
|
||||
translate([$boxw / 2, 0, $feeth + $w + ($boxh-15.5)/2+0.05])
|
||||
rotate([0, -90, 0])
|
||||
connector(25, 0);
|
||||
connector($boxh-15.5, 0);
|
||||
}
|
||||
translate([$boxw / 2 - .5 * $w, -5, $feeth + $w])
|
||||
rotate([0, -45, 0])
|
||||
|
@ -137,13 +153,13 @@ module backHoles() {
|
|||
corners(24.26, 92);
|
||||
|
||||
translate([31.9, $boxl, $boxh - 9.92])
|
||||
cube([12.8, 5, 3.1], center=true);
|
||||
cube([12.8, 5+$w, 3.1], center=true);
|
||||
translate([19, $boxl, $feeth + $boxh - 13.8])
|
||||
rotate([90, 0, 0])
|
||||
cylinder(h=5, r=3, center=true, $fn=100);
|
||||
cylinder(h=5+$w, r=3, center=true, $fn=100);
|
||||
translate([-32.33, $boxl, $feeth + $boxh - 9.4])
|
||||
rotate([90, 0, 0])
|
||||
cylinder(h=5, r=2.85, center=true, $fn=100);
|
||||
cylinder(h=5+$w, r=2.85, center=true, $fn=100);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -153,44 +169,44 @@ module frontHoles() {
|
|||
corners(24.26, 92);
|
||||
// ethernet
|
||||
translate([34.42, $boxl, $feeth + $boxh - 14])
|
||||
cube([15.32, 5, 13.5], center=true);
|
||||
cube([15.32, 5+$wf, 13.5], center=true);
|
||||
// usb
|
||||
translate([-2.87, $boxl, $feeth + $boxh - 15.5])
|
||||
cube([14.5, 5, 16], center=true);
|
||||
cube([14.5, 5+$wf, 16], center=true);
|
||||
translate([-21, $boxl, $feeth + $boxh - 15.5])
|
||||
cube([14.5, 5, 16], center=true);
|
||||
cube([14.5, 5+$wf, 16], center=true);
|
||||
// power
|
||||
translate([-38.8, $boxl, $feeth + $boxh - 14.07])
|
||||
rotate([90, 0, 0])
|
||||
cylinder(h=5, r=3.725, center=true, $fn=100);
|
||||
cylinder(h=5+$wf, r=3.725, center=true, $fn=100);
|
||||
// hdmi
|
||||
translate([17.13, $boxl, $feeth + $boxh - 10.8]) {
|
||||
difference() {
|
||||
cube([15.35, 5, 6], center=true);
|
||||
cube([15.35, 5+$wf, 6], center=true);
|
||||
translate([-10, 0, 3])
|
||||
rotate([0, 45, 0])
|
||||
cube([6, 6, 6], center=true);
|
||||
cube([6, 6+$wf, 6], center=true);
|
||||
translate([10, 0, 3])
|
||||
rotate([0, -45, 0])
|
||||
cube([6, 6, 6], center=true);
|
||||
cube([6, 6+$wf, 6], center=true);
|
||||
}
|
||||
}
|
||||
// micro-usb
|
||||
translate([-21.21, $boxl, $feeth + $boxh - 4.3])
|
||||
difference() {
|
||||
cube([8, 5, 3], center=true);
|
||||
cube([8, 5+$wf, 3], center=true);
|
||||
translate([-5, 0, -1.5])
|
||||
rotate([0, -45, 0])
|
||||
cube([3, 6, 3], center=true);
|
||||
cube([3, 6+$wf, 3], center=true);
|
||||
translate([5, 0, -1.5])
|
||||
rotate([0, 45, 0])
|
||||
cube([3, 6, 3], center=true);
|
||||
cube([3, 6+$wf, 3], center=true);
|
||||
}
|
||||
|
||||
translate([-39, $boxl - 3.5, $feeth + $boxh - 13.3])
|
||||
cube([11, 5, 13], center=true);
|
||||
cube([11, 5+$wf, 13], center=true);
|
||||
translate([16.8, $boxl - 3.5, $feeth + $boxh - 11])
|
||||
cube([19, 5, 10], center=true);
|
||||
cube([19, 5+$wf, 10], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -286,8 +302,8 @@ module walls() {
|
|||
difference() {
|
||||
union() {
|
||||
// front wall
|
||||
translate([0, $boxl - $w / 2, $feeth + $boxh / 2])
|
||||
cube([$boxw, $w, $boxh], center=true);
|
||||
translate([0, $boxl - $wf / 2, $feeth + $boxh / 2])
|
||||
cube([$boxw, $wf, $boxh], center=true);
|
||||
// left wall
|
||||
translate([($boxw - $w) / 2, $boxl / 2, $feeth + $boxh / 2])
|
||||
cube([$w, $boxl, $boxh], center=true);
|
||||
|
@ -297,10 +313,10 @@ module walls() {
|
|||
}
|
||||
|
||||
// corners cuts
|
||||
translate([($boxw - $w) / 2 + 5, $boxl / 2, $feeth + 41.1])
|
||||
translate([($boxw - $w) / 2 + 5, $boxl / 2, $feeth + $boxh + 0.6])
|
||||
rotate([0,45,0])
|
||||
cube([20, $boxl + 10, 15],center=true);
|
||||
translate([-(($boxw - $w) / 2 + 5), $boxl / 2, $feeth + 41.1])
|
||||
translate([-(($boxw - $w) / 2 + 5), $boxl / 2, $feeth + $boxh + 0.6])
|
||||
rotate([0,-45,0])
|
||||
cube([20, $boxl + 10, 15],center=true);
|
||||
}
|
||||
|
@ -329,9 +345,9 @@ module walls() {
|
|||
}
|
||||
|
||||
module rails() {
|
||||
translate([($boxw / 2 - $w) - ($hrailw - $w / 2) / 2, $boxl / 2, $feeth + 33.8])
|
||||
translate([($boxw / 2 - $w) - ($hrailw - $w / 2) / 2, $boxl / 2, $feeth + $boxh-6.7])
|
||||
cube([$hrailw + $w / 2, $boxl - $w, $hrailh], center=true);
|
||||
translate([-(($boxw / 2 - $w) - ($hrailw - $w / 2) / 2), $boxl / 2, $feeth + 33.8])
|
||||
translate([-(($boxw / 2 - $w) - ($hrailw - $w / 2) / 2), $boxl / 2, $feeth + $boxh-6.7])
|
||||
cube([$hrailw + $w / 2, $boxl - $w, $hrailh], center=true);
|
||||
}
|
||||
|
||||
|
@ -374,3 +390,4 @@ module feet() {
|
|||
cube([$w * 2, $f * 2, $f * 2], center=true);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in a new issue