New concept for the single light LED lamp

This commit is contained in:
Matt McWilliams 2024-10-11 17:39:05 -04:00
parent 3e8bd96beb
commit 90611c0206
1 changed files with 61 additions and 18 deletions

View File

@ -402,12 +402,20 @@ module sound_gate_bracket (pos = [0, 0, 0], rot = [0, 0, 0]) {
module gate_blank () {
X = LampGateX;
//front
translate([0, -6.25, 0]) cube([X-7.2, 1.2, 19.25], center = true);
//translate([0, -6.25, 0]) cube([X-7.2, 1.2, 19.25], center = true);
//middle
translate([0, -5.1, -0.5]) cube([X-4.2, 1.4, 19], center = true);
difference () {
union () {
translate([0, -5.1, -0.5]) cube([7.8, 1.8, 18], center = true);
translate([0, -8, -.75]) cube([4.8, 4, 17.5], center = true);
translate([0, -8.75, -.75]) cube([7.8, 3, 17.5], center = true);
}
translate([0, -9, -7.5]) cube([8, 4, 5], center = true);
translate([0, (-42.39 / 2) - 9.5, 0]) cylinder(r = R(42.39), h = 18 + 1, center = true, $fn = 240);
}
//top
translate([0, -5.9, 9]) cube([X-4.2, 3, 2], center = true);
//translate([0, -5.9, 9]) cube([X-4.2, 3, 2], center = true);
}
//standard, super, full, sound
module picture_gate (pos = [0, 0, 0], rot = [0, 0, 0], Type = "full", Width = 2) {
@ -485,11 +493,11 @@ module lamp_single (pos = [0, 0, 0]) {
translate([0, 45, 0]) cylinder(r = R(130), h = 4 + 1, center = true, $fn = 200);
}
//walls
translate([0, 15, WallZ]) difference () {
/*translate([0, 15, WallZ]) difference () {
rounded_cube([70, 40, 18], d = 4, center = true);
cube([70-6, 40-6, 18 + 1], center = true);
translate([0, -20, 0]) cube([10, 40-6, 18 + 1], center = true);
}
}*/
lamp_posts([0, 15, PostsZ]);
//
//picture_gate_bracket([0, -7, GateZ]);
@ -1136,19 +1144,52 @@ module sprocketed_roller_invert_solid (pos = [0, 0, 0]) {
}
}
module lamp_LEDs (pos = [0, 0, 0], rot = [0, 0, 0]) {
module lamp_LED_side (pos = [0, 0, 0], rot = [0, 0, 0]) {
D = 5.1;
X = LampGateX;
translate(pos) rotate(rot) {
difference () {
cube([X-4.2, 10, 16], center = true);
cube([LampGateX - 4.2, 10, 18], center = true);
rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
translate([0, 0, 5.2]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
translate([0, 0, -5.2]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
translate([0, 0, 5.5]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
translate([0, 0, -5.5]) rotate([90, 0, 0]) cylinder(r = R(D), h = 11, center = true);
translate([0, -6, 0]) cube([5.2, 10, 16 + 1], center = true);
translate([0, -6, 0]) cube([5.2 + 4, 10, 18 + 1], center = true);
}
}
}
module lamp_LEDs (pos = [0, 0, 0], rot = [0, 0, 0]) {
LightChannelY = 24;
LEDOffsetY = -2;
translate(pos) rotate(rot) {
union () {
lamp_LED_side([3.1, LEDOffsetY, 0], [0, 0, -7.5]);
lamp_LED_side([-3.1, LEDOffsetY, 0], [0, 0, 7.5]);
translate([0, 3.4 + LEDOffsetY, 0]) cube([0.8, 4, 18], center = true);
}
translate([0, -LightChannelY / 2, 0]) difference() {
cube([15, LightChannelY, 18], center = true);
translate([0, 7.6, 0]) cube([11, LightChannelY, 18 + 1], center = true);
translate([0, -1, 0]) cube([5, LightChannelY, 18 + 1], center = true);
//void for diffusion
translate([0, (LightChannelY / 2) -18.9, 0]) cube([12, 0.5, 18 + 1], center = true);
translate([6.5, (LightChannelY / 2) -18.9, 2]) cube([3, 1.5, 18], center = true);
translate([-6.5, (LightChannelY / 2) -18.9, 2]) cube([3, 1.5, 18], center = true);
translate([3.1, (LightChannelY / 2) + LEDOffsetY, 0]) rotate([0, 0, -7.5]) cube([LampGateX - 4.2, 15.5, 18 + 1], center = true);
translate([-3.1, (LightChannelY / 2) + LEDOffsetY, 0]) rotate([0, 0, 7.5]) cube([LampGateX - 4.2, 15.5, 18 + 1], center = true);
//bevel light
translate([0, (LightChannelY / 2) - 18.9 + 2.5, 0]) rotate([0, 0, 45]) cube([7, 7, 18 + 1], center = true);
//slide for gate
translate([0, (LightChannelY / 2) -22, 0]) cube([8, 2, 18 + 1], center = true);
}
//translate([0, -18.9, 0]) cube([5, 1/16, 16], center = true);
}
}
@ -1249,23 +1290,25 @@ module debug () {
//lamp
//difference () {
//lamp_dual([0, LampY, 0 + 1]);
lamp_single([0, 10, 0 + 1]);
//lamp_single([0, 10, 0 + 1]);
lamp_LEDs([0, 19, 10]);
picture_gate([0, 2.1, 10.5]);
// translate([45, LampY, 0 + 2]) cube([100, 100, 100], center = true);
//}
color("green") lamp_cover([0, LampY + 5, 21]);
//color("green") lamp_cover([0, LampY + 5, 21]);
color("red") lamp_bolts_voids([0, LampY + 5, (LampBoltH/2) - 1.5 - 2.5]);
//gates
//translate([-5.35, LampY -7.1, 11 + 1 + .1]) rotate([0, 0, 7]) color("blue") picture_gate();
//idle rollers
idle_roller([ IdleRollerPrintX, IdleRollerPrintY, 3]);
/*idle_roller([ IdleRollerPrintX, IdleRollerPrintY, 3]);
idle_roller([-IdleRollerPrintX, IdleRollerPrintY, 3]);
idle_roller([ IdleRollerStockX, IdleRollerStockY, 3]);
idle_roller([-IdleRollerStockX, IdleRollerStockY, 3]);
idle_roller([-IdleRollerStockX, IdleRollerStockY, 3]);*/
//idle roller path
translate([0, IdleRollerPrintY - 8, 10]) cube([200, .1, 16], center = true);
translate([0, IdleRollerStockY + 8, 10]) cube([200, .1, 16], center = true);
// translate([0, IdleRollerPrintY - 8, 10]) cube([200, .1, 16], center = true);
//translate([0, IdleRollerStockY + 8, 10]) cube([200, .1, 16], center = true);
if (UseDaylight) {
//feed
@ -1365,7 +1408,7 @@ module debug () {
electronics_panel([0, -100, -3]);
}
PART = "electronics_panel";
PART = "picture_gatex";
LIBRARY = true;
if (PART == "panel") {