Add bezel for Turris Omnia's LEDs
This commit is contained in:
parent
de20fc8636
commit
68c293377e
52
Turris_Omnia_LED_Bezel.scad
Normal file
52
Turris_Omnia_LED_Bezel.scad
Normal file
@ -0,0 +1,52 @@
|
||||
LED_HEIGHT=9;
|
||||
LED_WIDTH=5;
|
||||
LED_DEPTH=8;
|
||||
LED_SPACING=5;
|
||||
LED_AMOUNT=12;
|
||||
|
||||
BEARING_SPACING=5;
|
||||
BEARING_DIAMETER=3;
|
||||
|
||||
THICKNESS=1;
|
||||
$fn = 36;
|
||||
|
||||
module led_frame() {
|
||||
// left spacer
|
||||
cube([LED_SPACING/2-THICKNESS, LED_DEPTH + THICKNESS, THICKNESS]);
|
||||
|
||||
// the box
|
||||
translate([LED_SPACING/2 - THICKNESS, 0, 0])
|
||||
difference() {
|
||||
cube([LED_WIDTH + THICKNESS*2, LED_DEPTH + THICKNESS, LED_HEIGHT + THICKNESS]);
|
||||
translate([THICKNESS, 0, 0])
|
||||
cube([LED_WIDTH, LED_DEPTH, LED_HEIGHT]);
|
||||
}
|
||||
|
||||
// right spacer
|
||||
translate([LED_SPACING/2 + LED_WIDTH + THICKNESS, 0, 0])
|
||||
cube([LED_SPACING/2 - THICKNESS, LED_DEPTH + THICKNESS, THICKNESS]);
|
||||
}
|
||||
|
||||
module bearing() {
|
||||
// the bearing "circles"
|
||||
translate([0, (LED_DEPTH + THICKNESS)/2, 0])
|
||||
difference() {
|
||||
cylinder(d=LED_DEPTH + THICKNESS, THICKNESS);
|
||||
cylinder(d=BEARING_DIAMETER, THICKNESS);
|
||||
}
|
||||
|
||||
// the connection bar to the LED frames
|
||||
difference() {
|
||||
cube([BEARING_SPACING, LED_DEPTH + THICKNESS, THICKNESS]);
|
||||
translate([0, (LED_DEPTH + THICKNESS)/2, 0])
|
||||
cylinder(d=BEARING_DIAMETER, THICKNESS);
|
||||
}
|
||||
}
|
||||
|
||||
translate([-BEARING_SPACING, 0, 0])
|
||||
bearing();
|
||||
|
||||
for(i = [0 : LED_AMOUNT - 1]) {
|
||||
translate([i * (LED_WIDTH + LED_SPACING), 0, 0])
|
||||
led_frame();
|
||||
}
|
Loading…
Reference in New Issue
Block a user