add profiles.scad

This commit is contained in:
zhao
2023-01-15 20:54:50 -05:00
parent 3ef4ea5cf9
commit 742e16dca5
9 changed files with 27400 additions and 30 deletions

View File

@ -6,32 +6,39 @@
- "_N" appended to a module is meant to denote that this module is a negative volume, and should only be used to
substract from other volumes. "_P" is meant to denote a positive value. Modules are positive by default.
*/
include <./profiles.scad>
profile = "default";
echo("Profile:", profile);
// Maximum width for rackmount units. Change this according your max expected enclosure width.
// Changing this will directly affect the required build volume.
maxUnitWidth = 200;
maxUnitWidth = getConfigValue(profile, "maxUnitWidth");
// Maximum (recommended) unit depth. There technically isn't a max unit depth because there's no physical bound on
// how far a rack unit can extrude back. This parameter basically controls the distance between the front of the front
// rails and the back of the back rails. Changing this will directly affect the required build volume.
maxUnitDepth = 200;
maxUnitDepth = getConfig("maxUnitDepth");
// Vertical distance between the midpoint of adjacent screws mounts. Affects build volume.
screwDiff = 10;
screwDiff = getConfig("screwDiff");
// Number screw slots on the main rail. Affects build volume.
numRailScrews = 20;
numRailScrews = getConfig("numRailScrews");
// Screw type used for rackmount units. See screws.scad.
mainRailScrewType = "m4";
mainRailScrewType = getConfig("mainRailScrewType");
// Screw type used to affix side rails.
mainRailSideMountScrewType = "m4";
mainRailSideMountScrewType = getConfig("mainRailSideMountScrewType");
// Screw type used for constructing the actual rack frame.
rackFrameScrewType = "m3";
rackFrameScrewType = getConfig("rackFrameScrewType");
// Currently, only m3 screws are supported here (tolerance issues)
assert(rackFrameScrewType == "m3");
// Fillet radius for main rack profile
baseRoundness = 5;
baseRoundness = getConfig("baseRoundness");
echo("numRailScrews", numRailScrews);