wip - remove heat set inserts
This commit is contained in:
+42
-8
@@ -137,20 +137,27 @@ module heatSetInsert(screwType) {
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
module hexNutPocket_N(screwType, openSide=true) {
|
module hexNutPocket_N(screwType, openSide=true, backSpace=inf10, bridgeFront=false, bridgeBack=false ) {
|
||||||
|
|
||||||
|
heightSlack = bridgeFront || bridgeBack ? overhangSlack: xySlack;
|
||||||
|
|
||||||
if (screwType == "m3") {
|
if (screwType == "m3") {
|
||||||
hexNutPocketHelper_N(m3RadiusSlacked, m3HexNutWidthAcrossCorners / 2 + 0.3, m3HexNutThickness + 0.3, openSide=openSide);
|
hexNutPocketHelper_N(m3RadiusSlacked, m3HexNutWidthAcrossCorners / 2 + 0.3, m3HexNutThickness + heightSlack, openSide=openSide, backSpace=backSpace, bridgeFront=bridgeFront, bridgeBack=bridgeBack);
|
||||||
} else if (screwType == "m4") {
|
} else if (screwType == "m4") {
|
||||||
hexNutPocketHelper_N(m4RadiusSlacked, m4HexNutWidthAcrossCorners / 2 + 0.1, m4HexNutThickness + 0.2, openSide=openSide);
|
hexNutPocketHelper_N(m4RadiusSlacked, m4HexNutWidthAcrossCorners / 2 + 0.1, m4HexNutThickness + heightSlack, openSide=openSide, backSpace=backSpace, bridgeFront=bridgeFront, bridgeBack=bridgeBack);
|
||||||
} else {
|
} else {
|
||||||
error("Unsupported screw type");
|
error("Unsupported screw type");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
module hexNutPocketHelper_N(innerRadius, widthAcrossCorners, thickness, openSide=true) {
|
module hexNutPocketHelper_N(innerRadius, widthAcrossCorners, thickness, openSide=true, backSpace=inf10, bridgeFront=false, bridgeBack=false) {
|
||||||
|
|
||||||
|
assert (!(bridgeFront && bridgeBack));
|
||||||
|
assert (!(openSide && bridgeFront));
|
||||||
|
|
||||||
union() {
|
union() {
|
||||||
hull() {
|
hull() {
|
||||||
// hexagonal cylinder representing where the nut should fit
|
// hexagonal prism representing where the nut should fit
|
||||||
cylinder(r = widthAcrossCorners, h = thickness, center = true, $fn = 6);
|
cylinder(r = widthAcrossCorners, h = thickness, center = true, $fn = 6);
|
||||||
|
|
||||||
// negative volume for sliding in the nut
|
// negative volume for sliding in the nut
|
||||||
@@ -158,9 +165,36 @@ module hexNutPocketHelper_N(innerRadius, widthAcrossCorners, thickness, openSide
|
|||||||
cylinder(r = widthAcrossCorners, h = thickness, center = true, $fn = 6);
|
cylinder(r = widthAcrossCorners, h = thickness, center = true, $fn = 6);
|
||||||
}
|
}
|
||||||
|
|
||||||
// negative volume for screw lead
|
// negative volume for screw
|
||||||
translate(v = [0, 0, - 10])
|
union() {
|
||||||
cylinder(r = innerRadius, h = inf50, $fn = 32);
|
// screw lead spacing
|
||||||
|
translate(v = [0, 0, -backSpace])
|
||||||
|
cylinder(r = innerRadius, h = backSpace, $fn = 32);
|
||||||
|
|
||||||
|
cylinder(r=innerRadius, h=inf50, $fn=32);
|
||||||
|
|
||||||
|
if (bridgeFront) {
|
||||||
|
union() {
|
||||||
|
// first bridge layer
|
||||||
|
translate(v=[0,0,thickness/2 + 0.2/2])
|
||||||
|
cube(size=[2*innerRadius, GtoF(widthAcrossCorners)*2, 0.2], center=true);
|
||||||
|
|
||||||
|
translate(v=[0,0,thickness/2+ 0.3])
|
||||||
|
cube(size=[2*innerRadius, 2*innerRadius, 0.2], center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (bridgeBack) {
|
||||||
|
union() {
|
||||||
|
// first bridge layer
|
||||||
|
translate(v=[0,0,-(thickness/2 + 0.2/2)])
|
||||||
|
cube(size=[2*innerRadius, GtoF(widthAcrossCorners)*2, 0.2], center=true);
|
||||||
|
|
||||||
|
translate(v=[0,0,-(thickness/2+ 0.3)])
|
||||||
|
cube(size=[2*innerRadius, 2*innerRadius, 0.2], center=true);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (openSide) {
|
if (openSide) {
|
||||||
hull() {
|
hull() {
|
||||||
|
|||||||
+2
-2
@@ -19,9 +19,9 @@ radiusXYSlack = xySlack/2;
|
|||||||
|
|
||||||
zSlack = 0.0; // TODO figure out nice default value for this. keep in mind z shrinkage
|
zSlack = 0.0; // TODO figure out nice default value for this. keep in mind z shrinkage
|
||||||
|
|
||||||
overhangSlack = 0.6;
|
overhangSlack = 0.4;
|
||||||
|
|
||||||
supportedOverhangSlack = 0.5;
|
supportedOverhangSlack = 0.4;
|
||||||
|
|
||||||
|
|
||||||
// special slack cases, change if neccessary
|
// special slack cases, change if neccessary
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ assemblyInstructions();
|
|||||||
module assemblyInstructions () {
|
module assemblyInstructions () {
|
||||||
|
|
||||||
screwMask = false;
|
screwMask = false;
|
||||||
plasticMask = true;
|
plasticMask = false;
|
||||||
sideSupportRailMask = true;
|
sideSupportRailMask = true;
|
||||||
|
|
||||||
// Instruction List (in order)
|
// Instruction List (in order)
|
||||||
@@ -28,7 +28,7 @@ module assemblyInstructions () {
|
|||||||
// attachXBarWithYBar(at=$t);
|
// attachXBarWithYBar(at=$t);
|
||||||
// screwXBarAndYBar(at=$t);
|
// screwXBarAndYBar(at=$t);
|
||||||
// attachSideConnectorModulesToYBars(at=$t);
|
// attachSideConnectorModulesToYBars(at=$t);
|
||||||
// connectXYTrayWithMainRails(at=$t);
|
// connectXYTrayWithMainRails(at=1);
|
||||||
// insertDowelsIntoSideWall(at=$t);
|
// insertDowelsIntoSideWall(at=$t);
|
||||||
// propUpBottomXYTraywithSideWalls(at=$t);
|
// propUpBottomXYTraywithSideWalls(at=$t);
|
||||||
// attachXYTrays(at=$t);
|
// attachXYTrays(at=$t);
|
||||||
@@ -40,7 +40,7 @@ module assemblyInstructions () {
|
|||||||
|
|
||||||
// Final builds:
|
// Final builds:
|
||||||
// render()
|
// render()
|
||||||
finalSingle();
|
// finalSingle();
|
||||||
// finalDouble();
|
// finalDouble();
|
||||||
|
|
||||||
// Features:
|
// Features:
|
||||||
|
|||||||
+2
-2
@@ -8,10 +8,10 @@
|
|||||||
*/
|
*/
|
||||||
include <./profiles.scad>
|
include <./profiles.scad>
|
||||||
|
|
||||||
profileName = "default";
|
profileName = "micro";
|
||||||
profile = getProfile(profileName);
|
profile = getProfile(profileName);
|
||||||
|
|
||||||
// echo("Profile:", profile);
|
defaultLayerHeight = 0.3;
|
||||||
|
|
||||||
function getConfig(name) = getConfigValue(profile, name);
|
function getConfig(name) = getConfigValue(profile, name);
|
||||||
|
|
||||||
|
|||||||
@@ -41,9 +41,9 @@ module onYBarBasePlateConnectorPositive() {
|
|||||||
|
|
||||||
module onYBarBasePlateConnectorNegative() {
|
module onYBarBasePlateConnectorNegative() {
|
||||||
|
|
||||||
translate(v=[_heatSetX, _heatSetY, m3HeatSetInsertSlotHeightSlacked + _baseConnRecession])
|
translate(v=[_heatSetX, _heatSetY, 4 + _baseConnRecession])
|
||||||
mirror(v=[0,0,1])
|
mirror(v=[0,0,1])
|
||||||
heatSetInsertSlot_N(rackFrameScrewType, topExtension=inf10);
|
hexNutPocket_N("m3", openSide=false, backSpace=5, bridgeBack=true);
|
||||||
|
|
||||||
hull() {
|
hull() {
|
||||||
translate(v = [_heatSetX, _heatSetY, _baseConnRecession+overhangSlack])
|
translate(v = [_heatSetX, _heatSetY, _baseConnRecession+overhangSlack])
|
||||||
|
|||||||
@@ -15,9 +15,6 @@ include <./sideModuleYBarConnectors.scad>
|
|||||||
include <./stackYBarConnectors.scad>
|
include <./stackYBarConnectors.scad>
|
||||||
include <./basePlateYBarConnectors.scad>
|
include <./basePlateYBarConnectors.scad>
|
||||||
|
|
||||||
// WIP
|
|
||||||
partList = ["yBar", "xBar", "mainRail", "xyPlate", "sideModule"];
|
|
||||||
|
|
||||||
mirror(v=[1,0,0])
|
mirror(v=[1,0,0])
|
||||||
*connectorDebug(on="xBar", to="yBar", trans=identity);
|
*connectorDebug(on="xBar", to="yBar", trans=identity);
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
include <../../helper/screws.scad>
|
include <../../helper/screws.scad>
|
||||||
include <../../helper/common.scad>
|
include <../../helper/common.scad>
|
||||||
include <../../helper/matrix.scad>
|
include <../../helper/matrix.scad>
|
||||||
|
include <../../helper/halfspace.scad>
|
||||||
include <../../helper/slack.scad>
|
include <../../helper/slack.scad>
|
||||||
include <../../helper/dovetail.scad>
|
include <../../helper/dovetail.scad>
|
||||||
include <../../helper/halfspace.scad>
|
include <../../helper/halfspace.scad>
|
||||||
@@ -10,7 +11,8 @@ include <../sharedVariables.scad>
|
|||||||
include <../config.scad>
|
include <../config.scad>
|
||||||
|
|
||||||
mainRailHeatSetOnYBarDx = railSideMountThickness + 5;
|
mainRailHeatSetOnYBarDx = railSideMountThickness + 5;
|
||||||
mainRailHeatSetOnYBarDy = railFrontThickness + 4;
|
mainRailHeatSetOnYBarDy = railFrontThickness + 2;
|
||||||
|
|
||||||
module onYBarToMainRailNegative() {
|
module onYBarToMainRailNegative() {
|
||||||
|
|
||||||
slotSlack = xySlack;
|
slotSlack = xySlack;
|
||||||
@@ -20,20 +22,30 @@ module onYBarToMainRailNegative() {
|
|||||||
translate(v=[-slotZSlack/2, -slotSlack/2,0])
|
translate(v=[-slotZSlack/2, -slotSlack/2,0])
|
||||||
cube(size = [railTotalWidth+slotZSlack, railTotalDepth + slotSlack, railFootThickness]);
|
cube(size = [railTotalWidth+slotZSlack, railTotalDepth + slotSlack, railFootThickness]);
|
||||||
|
|
||||||
translate(v = [mainRailHeatSetOnYBarDx, mainRailHeatSetOnYBarDy, -m3HeatSetInsertSlotHeightSlacked])
|
translate(v = [mainRailHeatSetOnYBarDx, mainRailHeatSetOnYBarDy, -5])
|
||||||
heatSetInsertSlot_N(rackFrameScrewType);
|
rotate(a=[-45,0,0])
|
||||||
|
hexNutPocket_N("m3", openSide=false, backSpace=5);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
module onMainRailYBarConnectorPositive() {
|
module onMainRailYBarConnectorPositive() {
|
||||||
|
|
||||||
cube(size = [frontFaceWidth, sideSupportDepth+railFrontThickness, railFootThickness]);
|
cube(size = [frontFaceWidth, sideSupportDepth+railFrontThickness, railFootThickness]);
|
||||||
|
|
||||||
|
// TODO magic numbers
|
||||||
|
hull() {
|
||||||
|
cube(size = [frontFaceWidth, railFrontThickness+8, railFootThickness+4]);
|
||||||
|
translate(v = [0, railFrontThickness+14, 0])
|
||||||
|
cube(size = [frontFaceWidth, 1, railFootThickness]);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
module onMainRailYBarConnectorNegative() {
|
module onMainRailYBarConnectorNegative() {
|
||||||
|
|
||||||
translate(v = [mainRailHeatSetOnYBarDx, mainRailHeatSetOnYBarDy, railFootThickness])
|
screwOffset = 9;
|
||||||
counterSunkHead_N(rackFrameScrewType, screwExtension=inf10, headExtension=inf10);
|
|
||||||
}
|
translate(v = [mainRailHeatSetOnYBarDx, mainRailHeatSetOnYBarDy + screwOffset, -5 + screwOffset])
|
||||||
|
rotate(a=[-45,0,0])
|
||||||
|
counterSunkHead_N(rackFrameScrewType, screwExtension=inf50, headExtension=inf50);
|
||||||
|
|
||||||
|
}
|
||||||
|
|||||||
@@ -13,6 +13,7 @@ module onYBarSideModuleNegative() {
|
|||||||
translate(v = [-xySlack/2, -xySlack/2, -sideWallConnLugDepression])
|
translate(v = [-xySlack/2, -xySlack/2, -sideWallConnLugDepression])
|
||||||
cube(size = [sideWallConnW+xySlack, sideWallConnD+xySlack, sideWallConnLugDepression]);
|
cube(size = [sideWallConnW+xySlack, sideWallConnD+xySlack, sideWallConnLugDepression]);
|
||||||
|
|
||||||
translate(v = [yBarScrewHoleToOuterYEdge, yBarScrewHoleToFrontXEdge, -(m3HeatSetInsertSlotHeightSlacked+sideWallConnLugDepression)])
|
translate(v = [yBarScrewHoleToOuterYEdge, yBarScrewHoleToFrontXEdge, -(4+sideWallConnLugDepression)])
|
||||||
heatSetInsertSlot_N(rackFrameScrewType);
|
rotate(a=[0,0,90])
|
||||||
|
hexNutPocket_N("m3", openSide=false, backSpace=5, bridgeFront=true);
|
||||||
}
|
}
|
||||||
@@ -42,9 +42,10 @@ module onXBarToYBarNegative() {
|
|||||||
module onYBarToXBarNegative() {
|
module onYBarToXBarNegative() {
|
||||||
y = 27;
|
y = 27;
|
||||||
z = 6;
|
z = 6;
|
||||||
translate(v = [-m3HeatSetInsertSlotHeightSlacked, y, z])
|
translate(v = [-5, y, z])
|
||||||
|
rotate(a = [180, 0, 0])
|
||||||
rotate(a = [0, 90, 0])
|
rotate(a = [0, 90, 0])
|
||||||
heatSetInsertSlot_N(rackFrameScrewType);
|
hexNutPocket_N("m3", openSide=false, backSpace=5);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -8,7 +8,7 @@ include <../helper/matrix.scad>
|
|||||||
|
|
||||||
include <./connector/connectors.scad>
|
include <./connector/connectors.scad>
|
||||||
|
|
||||||
//mainRail();
|
*mainRail();
|
||||||
|
|
||||||
module mainRail() {
|
module mainRail() {
|
||||||
|
|
||||||
|
|||||||
@@ -7,7 +7,10 @@ include <../xBar.scad>
|
|||||||
yBar();
|
yBar();
|
||||||
|
|
||||||
|
|
||||||
translate(v=[40,0,0])
|
*difference() {
|
||||||
mirror(v=[1,0,0])
|
translate(v=[2,0,0])
|
||||||
rotate(a=[0,0,90])
|
cube(size=[16,10,6], center=true);
|
||||||
*xBar();
|
hexNutPocket_N("m3", openSide = false, backSpace = 5, bridgeFront = true);
|
||||||
|
}
|
||||||
|
|
||||||
|
*hexNutPocket_N("m3", openSide = false, backSpace = 5, bridgeBack = true);
|
||||||
+6
-4
@@ -50,12 +50,14 @@ yBarStackConnectorTrans = translate(v = [connectorXEdgeToYBarXEdge, connectorYEd
|
|||||||
|
|
||||||
yBarSideModuleConnectorTrans = translate(v = [
|
yBarSideModuleConnectorTrans = translate(v = [
|
||||||
yBarWidth-(railTotalWidth+railSlotToInnerYEdge+railSlotToSideWallSlot+sideWallConnectorSlotWidth),
|
yBarWidth-(railTotalWidth+railSlotToInnerYEdge+railSlotToSideWallSlot+sideWallConnectorSlotWidth),
|
||||||
sideWallSlotToXZ,
|
sideWallSlotToXZ,
|
||||||
yBarHeight]);
|
yBarHeight
|
||||||
|
]);
|
||||||
|
|
||||||
yBarMainRailConnectorTrans = translate(v = [
|
yBarMainRailConnectorTrans = translate(v = [
|
||||||
yBarWidth-(railTotalWidth+railSlotToInnerYEdge),
|
yBarWidth-(railTotalWidth+railSlotToInnerYEdge),
|
||||||
railSlotToXZ,
|
railSlotToXZ,
|
||||||
yBarHeight-railFootThickness]);
|
yBarHeight-railFootThickness
|
||||||
|
]);
|
||||||
|
|
||||||
yBarXBarConnectorTrans = translate(v = [yBarWidth+eps, 0, 0]);
|
yBarXBarConnectorTrans = translate(v = [yBarWidth+eps, 0, 0]);
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+1471
-1471
File diff suppressed because it is too large
Load Diff
+3281
-3281
File diff suppressed because it is too large
Load Diff
+1432
-1432
File diff suppressed because it is too large
Load Diff
+17864
-41160
File diff suppressed because it is too large
Load Diff
+157341
-58823
File diff suppressed because it is too large
Load Diff
+153544
-55026
File diff suppressed because it is too large
Load Diff
+896
-896
File diff suppressed because it is too large
Load Diff
+1792
-1792
File diff suppressed because it is too large
Load Diff
+4432
-4432
File diff suppressed because it is too large
Load Diff
+7274
-7274
File diff suppressed because it is too large
Load Diff
+37485
-35077
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user