3dprint: add stiffness to panel, redesign side screws

This commit is contained in:
2023-06-22 22:13:51 +02:00
parent db32f53cf0
commit 818ac65352

View File

@@ -47,6 +47,7 @@ module screw_point(c_x, c_y, length = 5) {
cylinder(r=5.6/2+1, h=length); cylinder(r=5.6/2+1, h=length);
translate([0, 0, -epsilon]) translate([0, 0, -epsilon])
cylinder(r=(5.6+wiggle_room)/2, $fn=6, h=2+epsilon+wiggle_room); cylinder(r=(5.6+wiggle_room)/2, $fn=6, h=2+epsilon+wiggle_room);
cylinder(r=(2.5+wiggle_room)/2, h=length-2);
} }
} }
@@ -100,6 +101,8 @@ module panel() {
screw_point(61*2.54, 2.5*2.54); screw_point(61*2.54, 2.5*2.54);
screw_point(2*2.54, 37.5*2.54, length=14); screw_point(2*2.54, 37.5*2.54, length=14);
screw_point(61*2.54, 37.5*2.54, length=14); screw_point(61*2.54, 37.5*2.54, length=14);
// stiffness
translate([0, 61, -3]) cube([panel_width, 4, 3]);
} }
translate([0, 0, -cutout_depth+panel_thick-epsilon]) union() { translate([0, 0, -cutout_depth+panel_thick-epsilon]) union() {
// HDG led // HDG led
@@ -140,10 +143,10 @@ module panel() {
} }
} }
} }
translate([0, (panel_border-bottom_border)/2, 0]) rotate([0, 90, 0]) screw_block(); translate([0, (panel_border-bottom_border)/2+3, 0]) rotate([0, 90, 0]) screw_block(height=6);
translate([0, 100+panel_border+top_border/2-3, 0]) rotate([0, 90, 0]) screw_block(); translate([0, 100+panel_border+top_border/2, 0]) rotate([0, 90, 0]) screw_block();
translate([panel_width, (panel_border-bottom_border)/2, -6]) rotate([0, -90, 0]) screw_block(); translate([panel_width, (panel_border-bottom_border)/2+3, 0]) rotate([180, 90, 0]) screw_block(height=6);
translate([panel_width, 100+panel_border+top_border/2-3, -6]) rotate([0, -90, 0]) screw_block(); translate([panel_width, 100+panel_border+top_border/2, 0]) rotate([180, 90, 0]) screw_block();
//color("green") translate([panel_border, panel_border, -12]) cube([160, 100, 1]); // dummy PCB //color("green") translate([panel_border, panel_border, -12]) cube([160, 100, 1]); // dummy PCB
translate([0, -bottom_border, 0]) cube([panel_width, bottom_border, panel_thick]); translate([0, -bottom_border, 0]) cube([panel_width, bottom_border, panel_thick]);
@@ -153,16 +156,33 @@ module panel() {
[0, panel_height+top_border+panel_thick/tan(panel_angle)+epsilon]]); [0, panel_height+top_border+panel_thick/tan(panel_angle)+epsilon]]);
} }
module screw_block() { module screw_block(height = 5) {
difference() {
//cylinder(r=5.6/2+1, h=6);
translate([0, -3, 0]) cube([height, 6, 7]);
translate ([5.6/2, 0, 0]) {
translate([0, 0, -epsilon])
rotate([0, 0, 180/6]) cylinder(r=(5.6+wiggle_room)/2, $fn=6, h=2+epsilon+wiggle_room);
cylinder(r=(2.5+wiggle_room)/2, h=6);
}
}
/*
difference() { difference() {
cube([6, 6, 12]); cube([6, 6, 12]);
translate([3, 3, -epsilon]) cylinder(r=1.25+wiggle_room/2, h=10+epsilon); translate([3, 3, -epsilon]) cylinder(r=1.25+wiggle_room/2, h=10+epsilon);
} }*/
} }
side_screw_head_diam = 5.9+wiggle_room; side_screw_head_diam = 4+wiggle_room;
side_screw_shaft_diam = 3+wiggle_room; side_screw_shaft_diam = 2.5+wiggle_room;
side_screw_head_height = 2.7; side_screw_head_height = 1.1;
module sidescrew_hole() {
translate([0, 0, -1*side_screw_head_height+2*epsilon])
cylinder(r=side_screw_head_diam/2, h=side_screw_head_height);
translate([0, 0, -panel_thick])
cylinder(r=side_screw_shaft_diam/2, h=panel_thick);
}
module side(rightside = false) { module side(rightside = false) {
difference() { difference() {
@@ -179,21 +199,17 @@ module side(rightside = false) {
rotate([panel_angle, 0, 0]) { rotate([panel_angle, 0, 0]) {
translate([0, (panel_border-bottom_border)/2, 0]) rotate([0, 90, 0]) translate([0, (panel_border-bottom_border)/2, 0]) rotate([0, 90, 0])
if (rightside) { if (rightside) {
translate([3, 3, -epsilon-panel_thick]) translate([3, 3, 0]) sidescrew_hole();
cylinder(r1=side_screw_shaft_diam/2, r2=side_screw_head_diam/2, h=side_screw_head_height);
} else { } else {
translate([3, 3, 2*epsilon-side_screw_head_height]) translate([3, 3, -panel_thick+2*epsilon]) rotate([0, 180, 0]) sidescrew_hole();
cylinder(r2=side_screw_shaft_diam/2, r1=side_screw_head_diam/2, h=side_screw_head_height);
} }
translate([0, 100+panel_border+top_border/2-3, 0]) rotate([0, 90, 0]) translate([0, 100+panel_border+top_border/2-3, 0]) rotate([0, 90, 0])
if (rightside) { if (rightside) {
translate([3, 3, -epsilon-panel_thick]) translate([3, 3, 0]) sidescrew_hole();
cylinder(r1=side_screw_shaft_diam/2, r2=side_screw_head_diam/2, h=side_screw_head_height);
} else { } else {
translate([3, 3, 2*epsilon-side_screw_head_height]) translate([3, 3, -panel_thick+2*epsilon]) rotate([0, 180, 0]) sidescrew_hole();
cylinder(r2=side_screw_shaft_diam/2, r1=side_screw_head_diam/2, h=side_screw_head_height);
} }
if (rightside) { if (rightside) {
translate([-panel_thick-2*epsilon, panel_height - 27, -20]) cube([2*panel_thick, 10, 5]); translate([-panel_thick-2*epsilon, panel_height - 27, -20]) cube([2*panel_thick, 10, 5]);