Compare commits

...

2 Commits

13 changed files with 19989 additions and 137 deletions

View File

@ -1,5 +1,5 @@
{ {
"version": "1.8.17", "version": "1.8.19",
"ext_port": 1111, "ext_port": 1111,
"profiles": { "profiles": {
"mcopy": { "mcopy": {

2
app/package-lock.json generated
View File

@ -1,6 +1,6 @@
{ {
"name": "mcopy-app", "name": "mcopy-app",
"version": "1.8.17", "version": "1.8.19",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {

View File

@ -1,6 +1,6 @@
{ {
"name": "mcopy-app", "name": "mcopy-app",
"version": "1.8.17", "version": "1.8.19",
"description": "GUI for the mcopy small gauge film optical printer platform", "description": "GUI for the mcopy small gauge film optical printer platform",
"main": "main.js", "main": "main.js",
"scripts": { "scripts": {

View File

@ -1,5 +1,5 @@
{ {
"version": "1.8.17", "version": "1.8.19",
"ext_port": 1111, "ext_port": 1111,
"profiles": { "profiles": {
"mcopy": { "mcopy": {

4
package-lock.json generated
View File

@ -1,12 +1,12 @@
{ {
"name": "mcopy", "name": "mcopy",
"version": "1.8.17", "version": "1.8.19",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "mcopy", "name": "mcopy",
"version": "1.8.17", "version": "1.8.19",
"license": "MIT", "license": "MIT",
"dependencies": { "dependencies": {
"arduino": "file:app/lib/arduino", "arduino": "file:app/lib/arduino",

View File

@ -1,6 +1,6 @@
{ {
"name": "mcopy", "name": "mcopy",
"version": "1.8.17", "version": "1.8.19",
"description": "Small gauge film optical printer platform", "description": "Small gauge film optical printer platform",
"main": "build.js", "main": "build.js",
"directories": { "directories": {

View File

@ -1,5 +1,5 @@
{ {
"version": "1.8.17", "version": "1.8.19",
"ext_port": 1111, "ext_port": 1111,
"profiles": { "profiles": {
"mcopy": { "mcopy": {

View File

@ -93,15 +93,17 @@ module panel_cap_voids (pos = [0, 0, 0]) {
module LED_void (pos = [0, 0, 0], rot = [0, 0, 0], flip = false) { module LED_void (pos = [0, 0, 0], rot = [0, 0, 0], flip = false) {
LEDVoidD = 5; LEDVoidD = 5;
LightVoidD = 2.5; LightVoidD = 2.5;
EmitterZ = 39.5;
ReceiverZ = 65;
translate(pos) rotate(rot) { translate(pos) rotate(rot) {
rotate([0, 90, 0]) { rotate([0, 90, 0]) {
cylinder(r = R(LightVoidD), h = 80, center = true, $fn = 40); cylinder(r = R(LightVoidD), h = 80, center = true, $fn = 40);
if (flip) { if (flip) {
translate([0, 0, -37.5]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40); translate([0, 0, -EmitterZ]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40);
translate([0, 0, 65]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40); translate([0, 0, ReceiverZ]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40);
} else { } else {
translate([0, 0, 37.5]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40); translate([0, 0, EmitterZ]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40);
translate([0, 0, -65]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40); translate([0, 0, -ReceiverZ]) cylinder(r = R(LEDVoidD), h = 80, center = true, $fn = 40);
} }
} }
} }
@ -178,7 +180,7 @@ module stepper_mount_block (pos = [0, 0, 0]) {
union () { union () {
translate([0, 0, -5]) cube([NEMA17OuterWidth, NEMA17OuterWidth, H], center = true); translate([0, 0, -5]) cube([NEMA17OuterWidth, NEMA17OuterWidth, H], center = true);
LED_prop([0, 19, -4.5 + 7.5], [0, 0, 45], flip = true); LED_prop([0, 19, -4.5 + 7.5], [0, 0, 45], flip = true);
LED_prop([0, -19, -4.5 + 10.5], [0, 0, 45], H = 9, flip = false); LED_prop([0, -19, -4.5 + 11.5], [0, 0, 45], H = 9, flip = false);
} }
//corners //corners
for (i = [0 : 3]) { for (i = [0 : 3]) {
@ -229,7 +231,8 @@ module octagon_void (pos = [0, 0, 0], D = 25, H = 5.01) {
module gate_bolt_and_nut_void (pos = [0, 0, 0]) { module gate_bolt_and_nut_void (pos = [0, 0, 0]) {
translate(pos) { translate(pos) {
cylinder(r = R(5), h = PanelZ + 1, center = true, $fn = 40); cylinder(r = R(5.2), h = PanelZ + 1, center = true, $fn = 40);
translate([0, 0, -1.5]) hex(9.2, 4.5);
} }
} }
@ -283,14 +286,6 @@ module gate_key (pos = [0, 0, 0], rot = [0, 0, 0]) {
gate_key_set_screw_void([0, 6, -2.5]); gate_key_set_screw_void([0, 6, -2.5]);
gate_key_set_screw_void([0, 6, -10]); gate_key_set_screw_void([0, 6, -10]);
} }
/*translate([0, 0, 3]) {
for (i = [0 : 7]) {
rotate([0, 0, i * (360 / 8)]) {
translate([OctoVoidX, 0, 0]) rotate([0, 45, 0]) cube([2, 35, 2], center = true);
//translate([OctoVoidX, 0, 0]) rotate([90, 0, 0]) cylinder(r = R(2), h = 35, center = true, $fn = 30);
}
}
}*/
} }
} }
@ -321,7 +316,11 @@ module panel (pos = [0, 0, 0], rot = [0, 0, 0]) {
// //
nub_void([NubX, 0, 0]); nub_void([NubX, 0, 0]);
} }
difference () {
stepper_mount([0, 0, -(StepperMountZ / 2) - (PanelZ / 2)]); stepper_mount([0, 0, -(StepperMountZ / 2) - (PanelZ / 2)]);
translate([GateBoltX, GateBoltY, -20]) hex(9.2, 50);
translate([GateBoltX, -GateBoltY, -20]) hex(9.2, 50);
}
} }
} }
@ -340,16 +339,16 @@ module debug () {
union () { union () {
intersection () { intersection () {
panel(); panel();
translate([0, -50, 0]) cube([60, 100, 150], center = true); //translate([0, -50, 0]) cube([60, 100, 150], center = true);
} }
} }
//translate([50, 0, 0]) rotate([0, 0, 45]) cube([100, 250, 150], center = true); //translate([50, 0, 0]) rotate([0, 0, 45]) cube([100, 250, 150], center = true);
} }
gate_key([0, -KeyDistance / 2, -13.5], [0, 0, 45]); color("black") gate_key([0, -KeyDistance / 2, -13.5], [0, 0, 0]);
} }
PART = "gate_key"; PART = "gate_keyx";
if (PART == "gate_key") { if (PART == "gate_key") {
gate_key(); gate_key();

View File

@ -191,6 +191,19 @@ module side_lens_sled_bearing_plate (pos = [0, 0, 0], rot = [0, 0, 0]) {
translate(pos) rotate(rot) { translate(pos) rotate(rot) {
difference () { difference () {
cube([25, Y, 15.9], center = true); cube([25, Y, 15.9], center = true);
//sides
translate([-9, 24, 0]) cube([25, Y, 15.9 + 1], center = true);
translate([-9, -24 , 0]) cube([25, Y, 15.9 + 1], center = true);
//inner
translate([-1, 0, 0]) cylinder(r = R(27), h = 11, center = true, $fn = 120);
translate([-10, 0, 0]) cube([25, Y, 11], center = true);
translate([-14, 0, 0])cube([25, Y, 15.9 + 1], center = true);
translate([-2, 0, 0]) cylinder(r = R(8), h = 15.9 + 1, center = true, $fn = 60);
//m5
translate([0, 16, 0]) rotate([0, 90, 0]) cylinder(r = R(5.2), h = 40, center = true, $fn = 40);
translate([0, -16, 0]) rotate([0, 90, 0]) cylinder(r = R(5.2), h = 40, center = true, $fn = 40);
} }
} }
} }
@ -205,6 +218,13 @@ module lens_sled_m3_bolt_voids (pos = [0, 0, 0], rot = [0, 0, 0]) {
} }
} }
module lens_sled_m5_bolt_nut_voids (pos = [0, 0, 0], rot = [0, 0, 0]) {
translate(pos) rotate(rot) {
cylinder(r = R(5.2), h = 40, center = true, $fn = 40);
translate([0, 0, -3.5]) rotate([0, 0, 360/12]) hex(9.2, 5);
}
}
module lens_sled (pos = [0, 0, 0], rot = [90, 0, 0]) { module lens_sled (pos = [0, 0, 0], rot = [90, 0, 0]) {
Y = 40; Y = 40;
LensDriveX = -ThreadedRodSpacing / 2; LensDriveX = -ThreadedRodSpacing / 2;
@ -237,8 +257,13 @@ module lens_sled (pos = [0, 0, 0], rot = [90, 0, 0]) {
// //
lens_sled_m3_bolt_voids([(RailEndX / 2) - (Y / 2), LensFrameM3VoidsZ, 0]); lens_sled_m3_bolt_voids([(RailEndX / 2) - (Y / 2), LensFrameM3VoidsZ, 0]);
lens_sled_m3_bolt_voids([(-RailEndX / 2) + (Y / 2), LensFrameM3VoidsZ, 0]); lens_sled_m3_bolt_voids([(-RailEndX / 2) + (Y / 2), LensFrameM3VoidsZ, 0]);
}
//m5 bolt + nut
lens_sled_m5_bolt_nut_voids([(RailEndX / 2) - (40 / 2), 0, 16], [0, 90, 0]);
lens_sled_m5_bolt_nut_voids([(RailEndX / 2) - (40 / 2), 0, -16], [0, 90, 0]);
lens_sled_m5_bolt_nut_voids([(-RailEndX / 2) + (40 / 2), 0, 16], [0, -90, 0]);
lens_sled_m5_bolt_nut_voids([(-RailEndX / 2) + (40 / 2), 0, -16], [0, -90, 0]);
}
//rail ends for snug fit //rail ends for snug fit
end_2020([LensFrameSpacingX, LensFrameM3VoidsZ - (6 / 2) - 5.1, 0], [90, 0, 0]); end_2020([LensFrameSpacingX, LensFrameM3VoidsZ - (6 / 2) - 5.1, 0], [90, 0, 0]);
end_2020([-LensFrameSpacingX, LensFrameM3VoidsZ - (6 / 2) - 5.1, 0], [90, 0, 0]); end_2020([-LensFrameSpacingX, LensFrameM3VoidsZ - (6 / 2) - 5.1, 0], [90, 0, 0]);
@ -318,20 +343,20 @@ module debug () {
bearing_roller_inner(); bearing_roller_inner();
} }
color("blue") side_lens_sled_bearing_plate([(RailSpacing / 2) + 30, -90, 0]); color("blue") side_lens_sled_bearing_plate([(RailSpacing / 2) + 23.5, -90, 0]);
//bearing_roller(); //bearing_roller();
//debug //debug
//translate([-RailSpacing / 2, 0, 0]) rotate([90, 0, 0]) rail_debug(175); //translate([-RailSpacing / 2, 0, 0]) rotate([90, 0, 0]) rail_debug(175);
color("green") translate([RailSpacing / 2, 0, 0]) rotate([90, 0, 0]) linear_extrude(height=175) 2020_profile(); //color("green") translate([RailSpacing / 2, 0, 0]) rotate([90, 0, 0]) linear_extrude(height=175) 2020_profile();
//translate([ThreadedRodSpacing / 2, 40, 0]) rotate([90, 0, 0]) color("blue") NEMA17(); //translate([ThreadedRodSpacing / 2, 40, 0]) rotate([90, 0, 0]) color("blue") NEMA17();
//translate([-ThreadedRodSpacing / 2, 40, 0]) rotate([90, 0, 0]) color("blue") NEMA17(); //translate([-ThreadedRodSpacing / 2, 40, 0]) rotate([90, 0, 0]) color("blue") NEMA17();
} }
PART = "lens_sledx"; PART = "lens_sled";
if (PART == "rail_end") { if (PART == "rail_end") {
rail_end(); rail_end();
@ -343,6 +368,8 @@ if (PART == "rail_end") {
bearing_roller(); bearing_roller();
} else if (PART == "bearing_roller_inner") { } else if (PART == "bearing_roller_inner") {
rotate([180, 0, 0]) bearing_roller_inner(); rotate([180, 0, 0]) bearing_roller_inner();
} else if (PART == "side_lens_sled_bearing_plate") {
rotate([0, 90, 0]) side_lens_sled_bearing_plate();
} else { } else {
debug(); debug();
} }

File diff suppressed because it is too large Load Diff

View File

@ -104292,7 +104292,7 @@ solid OpenSCAD_Model
vertex 60.2 15 -10.2 vertex 60.2 15 -10.2
endloop endloop
endfacet endfacet
facet normal -1.34192e-17 -0.447214 0.894427 facet normal -1.34191e-17 -0.447214 0.894427
outer loop outer loop
vertex 60.2 3.50217 -1.54546 vertex 60.2 3.50217 -1.54546
vertex 75 3.50215 -1.54547 vertex 75 3.50215 -1.54547

View File

@ -70034,7 +70034,7 @@ solid OpenSCAD_Model
vertex 75 2.26233 1.44791 vertex 75 2.26233 1.44791
endloop endloop
endfacet endfacet
facet normal -1.34192e-17 0.447214 0.894427 facet normal -1.34191e-17 0.447214 0.894427
outer loop outer loop
vertex 60.2 2.49783 -1.54546 vertex 60.2 2.49783 -1.54546
vertex 75 2.49779 -1.54544 vertex 75 2.49779 -1.54544
@ -70657,7 +70657,7 @@ solid OpenSCAD_Model
vertex 60.2 15 -10.2 vertex 60.2 15 -10.2
endloop endloop
endfacet endfacet
facet normal -1.34192e-17 -0.447214 0.894427 facet normal -1.34191e-17 -0.447214 0.894427
outer loop outer loop
vertex 60.2 3.50217 -1.54546 vertex 60.2 3.50217 -1.54546
vertex 75 3.50215 -1.54547 vertex 75 3.50215 -1.54547

File diff suppressed because it is too large Load Diff