wip on base connector

This commit is contained in:
zhao
2023-01-13 17:21:30 -05:00
parent ba1dc567b7
commit eecdf8c49e
8 changed files with 9053 additions and 78 deletions

View File

@ -4,8 +4,6 @@ include <../helper/screws.scad>
include <./config.scad>
include <./derivedConfig.scad>
include <./xyBarConnector.scad>
include <./xBarBasePlateConnector.scad>
// Temporary
include <./yBar.scad>
@ -49,7 +47,7 @@ module xBar() {
// TODO refactor - probably better off mirroring the side faces and hulling the shell
difference() {
union() {
intersection () {
intersection() {
positive();
halfspace(vpos = [1, 0, 1], p = [0.5, 0, 0]);
@ -69,21 +67,10 @@ module xBar() {
yBarConnectorFromX_N();
}
}
// TODO change me?
translate(v=[0,xBarWidth,0])
basePlateMount();
translate(v=[xBarDepth,xBarWidth,0])
mirror(v=[1,0,0])
basePlateMount();
}
xBar();
}
translate(v=[-30,0,0])
*yBar();
xBar();

View File

@ -1,53 +0,0 @@
include <../helper/common.scad>
include <../helper/screws.scad>
include <./config.scad>
module basePlateMount() {
screwHoleToBase = 6;
mountHeight = 10;
mountWidth = 10;
mountThickness = 2;
module support() {
r = 4;
difference () {
translate(v = [0, mountThickness, r/2])
rotate(a = [90, 0, 0])
rotate(a = [0, 0, 90])
cylinder(h = mountThickness, r = r, $fn = 3);
cube(size=[inf10, inf10, inf10]);
}
//translate([-r/2, -2,0])
//cube(size=[r/2, 0.1, 0.1]);
}
module positive() {
cube(size = [mountWidth, mountThickness, mountHeight]);
translate(v=[mountWidth,0,0])
mirror(v=[1,0,0])
hull() {
support();
}
}
module basePlateMount() {
translate(v=[0,-mountThickness,0])
difference() {
positive();
translate(v = [mountWidth/2, inf50/2, screwHoleToBase])
rotate(a = [90, 0, 0])
cylinder(h = inf50, r = screwRadiusSlacked(rackFrameScrewType));
}
}
basePlateMount();
}

View File

@ -45,10 +45,12 @@ module yBarConnectorFromXLug() {
// TODO fix this up, no center=true
translate(v = [-1, y1+(y2-y1)/2, 0])
rotate(a = [0, 45, 0])
scale(v=[0.90,0.90,0.95])
scale(v=[0.90,0.95,0.90])
cube(size = [3, 10, 6], center = true);
mirror(v=[0,0,1])
halfspace(vpos=[0,0,1], p=[0,0,0]);
halfspace(vpos=[1,0,0], p=[-2,0,0]);
}
}

View File

@ -11,6 +11,7 @@ include <./mainRail.scad>
include <./stackConnector.scad>
include <./xyBarConnector.scad>
include <./sideWallConnector.scad>
include <./yBarBasePlateConnector.scad>
// TODO clean up
// TODO: How do I nicely explain this?
@ -24,6 +25,8 @@ yBarHeight = 15;
yBarWallThickness = 3;
yBarRoundness = baseRoundness;
joinCornerDepth = 32;
echo("Bar total depth: ", yBarDepth);
echo("Bar total width: ", yBarWidth);
@ -34,8 +37,8 @@ module yBar() {
difference() {
sphericalFiletEdge(yBarWidth, yBarDepth, yBarHeight, yBarRoundness);
translate(v = [yBarWallThickness, 32, yBarWallThickness])
cylindricalFiletEdge(yBarWidth, yBarDepth-32*2, yBarHeight, yBarRoundness);
translate(v = [yBarWallThickness, joinCornerDepth, yBarWallThickness])
cylindricalFiletEdge(yBarWidth, yBarDepth-2*joinCornerDepth, yBarHeight, yBarRoundness);
}
}
@ -55,7 +58,7 @@ module yBar() {
}
}
module sideBar() {
module yBar() {
module mirrorOtherCorner() {
children(0);
@ -67,12 +70,30 @@ module yBar() {
}
difference() {
positive();
mirrorOtherCorner()
singleCornerNoStackConnector_N();
union() {
positive();
mirrorOtherCorner()
translate(v=[yBarWidth-12, joinCornerDepth,0.01])
yBarBasePlateMount_P(mountX=12, mountZ=yBarHeight);
}
union() {
mirrorOtherCorner()
singleCornerNoStackConnector_N();
mirrorOtherCorner()
translate(v=[yBarWidth-12, joinCornerDepth, 0])
yBarBasePlateMount_N();
}
}
}
sideBar();
yBar();
}
translate(v=[yBarWidth-12, joinCornerDepth, m3CounterSunkHeadLength])
*yBarBasePlateMount_N();
yBar();
//counterSunkHead_N("m3", 1, 1);

View File

@ -0,0 +1,28 @@
include <../helper/common.scad>
include <../helper/screws.scad>
include <./config.scad>
module yBarBasePlateMount_P(mountX=12, mountY=12, mountZ=12) {
cube(size=[mountX, mountY, mountZ]);
}
module yBarBasePlateMount_N(innerEdgeToScrew=6, baseConnectorRecession = 2) {
translate(v=[innerEdgeToScrew,innerEdgeToScrew, m3HeatSetInsertSlotHeightSlacked + baseConnectorRecession])
mirror(v=[0,0,1])
heatSetInsertSlot_N(rackFrameScrewType, topExtension=inf10);
translate(v=[2,2,0])
cube(size=[inf50,8,baseConnectorRecession]);
translate(v=[innerEdgeToScrew,innerEdgeToScrew, baseConnectorRecession+m3CounterSunkHeadLength])
mirror(v=[0,0,1])
*counterSunkHead_N(rackFrameScrewType, screwExtension=0, headExtension=eps);
}
*difference() {
yBarBasePlateMount_P();
yBarBasePlateMount_N(innerEdgeToScrew=6,wallThickness=3);
}
*yBarBasePlateMount_N(innerEdgeToScrew=6);