introduce slack config fale. also small edits to side wall stuff

This commit is contained in:
zhao
2023-04-08 10:36:31 -04:00
parent c6df6a9153
commit 16ba58e995
17 changed files with 111830 additions and 172539 deletions

BIN
.notes.txt.swp Normal file

Binary file not shown.

26
helper/slack.scad Normal file
View File

@ -0,0 +1,26 @@
/*
Slack config to standardize different usages of slack/tolerance values.
The purpose of this config is to introduce some consistency with how slack values defined in code. E.g. Why is the
slack value defined as 0.3 in this file, but 0.4 in another? This will also allow model-level adjustments for tighter
fitting parts, for when it might not convenient to adjust the actual 3d printer (using a 3d printer at a makerspace,
for example).
Some important details:
- The general philosophy for slack applications in this project is to subtract space from sockets, while not
modifying the plugs. TODO: enforce this
- Values are signed. Positive values can be interpreted as how much to remove from the socket along some dimension.
- This shouldn't be used to compensate for more serious part shrinkage (> +-0.5mm differences)
*/
xSlack = 0.3;
ySlack = 0.3;
radiusXYSlack = max(xSlack, ySlack)/2;
zSlack = 0.0; // TODO figure out nice default value for this. keep in mind z shrinkage
overhangSlack = 0.9;
supportedOverhangSlack = 0.9;

109
notes.txt.save Normal file
View File

@ -0,0 +1,109 @@
The following keystrokes are available in the main editor window.
Alternative keys are shown in parentheses:
^G (F1) Display this help text
^X (F2) Close the current buffer / Exit from nano
^O (F3) Write the current buffer (or the marked region) to disk
^R (Ins) Insert another file into current buffer (or into new buffer)
^W (F6) Search forward for a string or a regular expression
^\ (M-R) Replace a string or a regular expression
^K (F9) Cut current line (or marked region) and store it in cutbuffer
^U (F10) Paste the contents of cutbuffer at current cursor position
^T Execute a function or an external command
^J (F4) Justify the current paragraph
^C (F11) Display the position of the cursor
^/ (M-G) Go to line and column number
M-U Undo the last operation
M-E Redo the last undone operation
M-A (^6) Mark text starting from the cursor position
M-6 (M-^) Copy current line (or marked region) and store it in cutbuffer
M-] Go to the matching bracket
^Q Search backward for a string or a regular expression
M-Q Search next occurrence backward
M-W Search next occurrence forward
^B (◂) Go back one character
^F (▸) Go forward one character
^◂ (M-Space) Go back one word
^▸ (^Space) Go forward one word
^A (Home) Go to beginning of current line
^E (End) Go to end of current line
^P (▴) Go to previous line
^N (▾) Go to next line
M-▴ (M--) Scroll up one line without moving the cursor textually
M-▾ (M-+) Scroll down one line without moving the cursor textually
^▴ (M-7) Go to previous block of text
^▾ (M-8) Go to next block of text
M-( (M-9) Go to beginning of paragraph; then of previous paragraph
M-) (M-0) Go just beyond end of paragraph; then of next paragraph
^Y (PgUp) Go one screenful up
^V (PgDn) Go one screenful down
M-\ (^Home) Go to the first line of the file
M-/ (^End) Go to the last line of the file
M-◂ (M-<) Switch to the previous file buffer
M-▸ (M->) Switch to the next file buffer
^I (Tab) Insert a tab at the cursor position (or indent marked lines)
^M (Enter) Insert a newline at the cursor position
^H (Bsp) Delete the character to the left of the cursor
^D (Del) Delete the character under the cursor
M-Bsp (Sh-^Del) Delete backward from cursor to word start
^Del Delete forward from cursor to next word start
M-T Cut from the cursor position to the end of the file
M-J Justify the entire file
M-D Count the number of lines, words, and characters
M-V Insert the next keystroke verbatim
Suspend the editor (return to the shell)
^L Refresh (redraw) the current screen
M-} Indent the current line (or marked lines)
M-{ (Sh-Tab) Unindent the current line (or marked lines)
M-3 Comment/uncomment the current line (or marked lines)
^] Try and complete the current word
M-: Start/stop recording a macro
M-; Run the last recorded macro
M-Ins Place or remove an anchor at the current line
M-PgUp Jump backward to the nearest anchor
M-PgDn Jump forward to the nearest anchor
M-Del Throw away the current line (or marked region)
F12 Invoke the spell checker, if available
M-B Invoke the linter, if available
M-F Invoke a program to format/arrange/manipulate the buffer
^L Center the line where the cursor is
^S Save file without prompting
M-Z Hidden interface enable/disable
M-X Help mode enable/disable
M-C Constant cursor position display enable/disable
M-S Soft wrapping of overlong lines enable/disable
M-N Line numbering enable/disable
M-P Whitespace display enable/disable
M-Y Color syntax highlighting enable/disable
M-H Smart home key enable/disable
M-I Auto indent enable/disable
M-K Cut to end enable/disable
M-L Hard wrapping of overlong lines enable/disable
M-O Conversion of typed tabs to spaces enable/disable
M-M Mouse support enable/disable

View File

@ -1,6 +1,7 @@
include <../../helper/math.scad>
include <../../helper/halfspace.scad>
include <../../helper/magnet.scad>
include <../../helper/slack.scad>
include <../config.scad>
include <./sideWallMagnetMount.scad>
@ -59,7 +60,11 @@ module sideWallBase() {
}
union() {
hingeHole();
hingeHole(extraZ=2);
translate(v=[0,0,sideWallZ])
mirror(v=[0,0,1])
hingeHole(extraZ=2);
// Trim parts of the wall for rotational clearance
halfspace(p=[0, sideWallY-2.5, 0], vpos=[-0.5,1,0]); // flat area to limit rotation against the main rail
@ -81,9 +86,9 @@ module sideWallBase() {
cube(size=[eps, 2*hingeHoleShellR, sideWallZ]);
}
module hingeHole() {
module hingeHole(extraZ) {
translate(v = [hingePoleDx , hingePoleDy, 0])
cylinder(r = hingeHoleR, h = sideWallZ);
cylinder(r = hingeHoleR, h = hingePoleH+extraZ);
}
}
@ -130,19 +135,34 @@ module sideWallBase() {
module sideWallVerticalRibs(numRibs, ribZ, ribYDiff, ribR=1, ribExtrusion=1) {
ribRampLength = 5;
intersection() {
for (i = [0:numRibs-1]) {
translate(v = [sideWallThickness, i*ribYDiff, (sideWallZ-ribZ)/2])
translate(v = [sideWallThickness, i*ribYDiff, (sideWallZ-ribZ)/2])
translate(v = [ribExtrusion-ribR, 0, 0])
hull() {
translate(v = [0, 0, ribZ-ribR])
sphere(r = ribR);
translate(v = [0, 0, ribR])
sphere(r = ribR);
}
verticalRib(ribExtend=4, ribWidth=2);
}
halfspace(vpos=[1,0,0], p=[0,0,0]);
}
module verticalRib(ribExtend, ribWidth) {
minkowski() {
hull() {
cube(size = [eps, ribWidth, eps]);
translate(v = [0, 0, ribRampLength])
cube(size = [ribExtend, ribWidth, ribZ-2*ribRampLength]);
translate(v = [0, 0, ribZ])
cube(size = [eps, ribWidth, eps]);
}
sphere(r=0.5);
}
}
}

View File

@ -1,25 +1,29 @@
include <./sideWallBase.scad>
*sideWallLeft();
module sideWallLeft() {
applyEpicVentilation()
applySideWallVerticalRibs()
render()
sideWallBase();
module applyEpicVentilation() {
apply_n() {
for (i = [1:8]) {
translate(v = [0, 35, i * 10 + 8])
vent();
}
children(0);
}
module vent() {
minkowski() {
sphere(r=1);
cube(size = [10, 40, 3]);
}
}
children(0);
}
}
module applySideWallVerticalRibs() {

View File

@ -7,23 +7,26 @@ module sideWallRight() {
applyEpicVentilation()
mirror(v=[1,0,0])
applySideWallVerticalRibs()
render()
sideWallBase();
module applyEpicVentilation() {
apply_n() {
for (i = [1:8]) {
translate(v = [-10, 35, i*10+8])
vent();
}
children(0);
}
module vent() {
minkowski() {
sphere(r=1);
cube(size = [10, 40, 3]);
}
}
children(0);
}
}
module applySideWallVerticalRibs() {

View File

@ -2,6 +2,7 @@
include <../config.scad>
include <../sharedVariables.scad>
include <../../helper/magnet.scad>
include <../../helper/slack.scad>
sideWallConnW = 7;
sideWallConnD = 20;
@ -18,7 +19,7 @@ innerSideWallToYBarMagnetConn = magnetFaceToSideWallConnOuterYEdge + sideWallSlo
hingePoleR = 2;
hingePoleH = 5;
hingeHoleR = hingePoleR + 0.2;
hingeHoleR = hingePoleR + radiusXYSlack;
sideWallZHingeSlack = 0.3;

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -2505,6 +2505,160 @@ solid OpenSCAD_Model
vertex 27.7271 0 4.24463
endloop
endfacet
facet normal -0 0 1
outer loop
vertex 7 95 2
vertex 32 6 2
vertex 32 95 2
endloop
endfacet
facet normal 0 0 1
outer loop
vertex 32 6 2
vertex 7 95 2
vertex 7 6 2
endloop
endfacet
facet normal 0.989178 -0 0.146718
outer loop
vertex 2.02408 6 6.50991
vertex 2.09607 95 6.02455
vertex 2.02408 95 6.50991
endloop
endfacet
facet normal 0.989178 0 0.146718
outer loop
vertex 2.09607 95 6.02455
vertex 2.02408 6 6.50991
vertex 2.09607 6 6.02455
endloop
endfacet
facet normal 0.146718 0 0.989178
outer loop
vertex 6.02455 95 2.09607
vertex 6.50991 6 2.02408
vertex 6.50991 95 2.02408
endloop
endfacet
facet normal 0.146718 0 0.989178
outer loop
vertex 6.50991 6 2.02408
vertex 6.02455 95 2.09607
vertex 6.02455 6 2.09607
endloop
endfacet
facet normal 1 -0 0
outer loop
vertex 2 6 15
vertex 2 95 7
vertex 2 95 15
endloop
endfacet
facet normal 1 0 0
outer loop
vertex 2 95 7
vertex 2 6 15
vertex 2 6 7
endloop
endfacet
facet normal 0.427558 0 0.903988
outer loop
vertex 4.64302 95 2.59039
vertex 5.08658 6 2.3806
vertex 5.08658 95 2.3806
endloop
endfacet
facet normal 0.427558 0 0.903988
outer loop
vertex 5.08658 6 2.3806
vertex 4.64302 95 2.59039
vertex 4.64302 6 2.59039
endloop
endfacet
facet normal 0.903988 -0 0.427558
outer loop
vertex 2.3806 6 5.08658
vertex 2.59039 95 4.64302
vertex 2.3806 95 5.08658
endloop
endfacet
facet normal 0.903988 0 0.427558
outer loop
vertex 2.59039 95 4.64302
vertex 2.3806 6 5.08658
vertex 2.59039 6 4.64302
endloop
endfacet
facet normal 0.671568 0 0.740943
outer loop
vertex 3.46447 95 3.46447
vertex 3.82803 6 3.13495
vertex 3.82803 95 3.13495
endloop
endfacet
facet normal 0.671568 0 0.740943
outer loop
vertex 3.82803 6 3.13495
vertex 3.46447 95 3.46447
vertex 3.46447 6 3.46447
endloop
endfacet
facet normal 0.336879 0 0.941548
outer loop
vertex 5.08658 95 2.3806
vertex 5.54858 6 2.2153
vertex 5.54858 95 2.2153
endloop
endfacet
facet normal 0.336879 0 0.941548
outer loop
vertex 5.54858 6 2.2153
vertex 5.08658 95 2.3806
vertex 5.08658 6 2.3806
endloop
endfacet
facet normal 0.514103 0 0.857728
outer loop
vertex 4.22215 95 2.84265
vertex 4.64302 6 2.59039
vertex 4.64302 95 2.59039
endloop
endfacet
facet normal 0.514103 0 0.857728
outer loop
vertex 4.64302 6 2.59039
vertex 4.22215 95 2.84265
vertex 4.22215 6 2.84265
endloop
endfacet
facet normal 0.5957 0 0.803207
outer loop
vertex 3.82803 95 3.13495
vertex 4.22215 6 2.84265
vertex 4.22215 95 2.84265
endloop
endfacet
facet normal 0.5957 0 0.803207
outer loop
vertex 4.22215 6 2.84265
vertex 3.82803 95 3.13495
vertex 3.82803 6 3.13495
endloop
endfacet
facet normal 0.998795 -0 0.0490746
outer loop
vertex 2 6 7
vertex 2.02408 95 6.50991
vertex 2 95 7
endloop
endfacet
facet normal 0.998795 0 0.0490746
outer loop
vertex 2.02408 95 6.50991
vertex 2 6 7
vertex 2.02408 6 6.50991
endloop
endfacet
facet normal 0.803207 -0 0.5957
outer loop
vertex 2.84265 6 4.22215
@ -2519,6 +2673,48 @@ solid OpenSCAD_Model
vertex 3.13495 6 3.82803
endloop
endfacet
facet normal 0.0490746 0 0.998795
outer loop
vertex 6.50991 95 2.02408
vertex 7 6 2
vertex 7 95 2
endloop
endfacet
facet normal 0.0490746 0 0.998795
outer loop
vertex 7 6 2
vertex 6.50991 95 2.02408
vertex 6.50991 6 2.02408
endloop
endfacet
facet normal 0.857728 -0 0.514103
outer loop
vertex 2.59039 6 4.64302
vertex 2.84265 95 4.22215
vertex 2.59039 95 4.64302
endloop
endfacet
facet normal 0.857728 0 0.514103
outer loop
vertex 2.84265 95 4.22215
vertex 2.59039 6 4.64302
vertex 2.84265 6 4.22215
endloop
endfacet
facet normal 0.941548 -0 0.336879
outer loop
vertex 2.2153 6 5.54858
vertex 2.3806 95 5.08658
vertex 2.2153 95 5.54858
endloop
endfacet
facet normal 0.941548 0 0.336879
outer loop
vertex 2.3806 95 5.08658
vertex 2.2153 6 5.54858
vertex 2.3806 6 5.08658
endloop
endfacet
facet normal 0.242991 0 0.970029
outer loop
vertex 5.54858 95 2.2153
@ -2547,34 +2743,6 @@ solid OpenSCAD_Model
vertex 3.46447 6 3.46447
endloop
endfacet
facet normal -0 0 1
outer loop
vertex 7 95 2
vertex 32 6 2
vertex 32 95 2
endloop
endfacet
facet normal 0 0 1
outer loop
vertex 32 6 2
vertex 7 95 2
vertex 7 6 2
endloop
endfacet
facet normal 0.0490746 0 0.998795
outer loop
vertex 6.50991 95 2.02408
vertex 7 6 2
vertex 7 95 2
endloop
endfacet
facet normal 0.0490746 0 0.998795
outer loop
vertex 7 6 2
vertex 6.50991 95 2.02408
vertex 6.50991 6 2.02408
endloop
endfacet
facet normal 0.970029 -0 0.242991
outer loop
vertex 2.09607 6 6.02455
@ -2589,174 +2757,6 @@ solid OpenSCAD_Model
vertex 2.2153 6 5.54858
endloop
endfacet
facet normal 0.998795 -0 0.0490746
outer loop
vertex 2 6 7
vertex 2.02408 95 6.50991
vertex 2 95 7
endloop
endfacet
facet normal 0.998795 0 0.0490746
outer loop
vertex 2.02408 95 6.50991
vertex 2 6 7
vertex 2.02408 6 6.50991
endloop
endfacet
facet normal 0.146718 0 0.989178
outer loop
vertex 6.02455 95 2.09607
vertex 6.50991 6 2.02408
vertex 6.50991 95 2.02408
endloop
endfacet
facet normal 0.146718 0 0.989178
outer loop
vertex 6.50991 6 2.02408
vertex 6.02455 95 2.09607
vertex 6.02455 6 2.09607
endloop
endfacet
facet normal 0.514103 0 0.857728
outer loop
vertex 4.22215 95 2.84265
vertex 4.64302 6 2.59039
vertex 4.64302 95 2.59039
endloop
endfacet
facet normal 0.514103 0 0.857728
outer loop
vertex 4.64302 6 2.59039
vertex 4.22215 95 2.84265
vertex 4.22215 6 2.84265
endloop
endfacet
facet normal 0.857728 -0 0.514103
outer loop
vertex 2.59039 6 4.64302
vertex 2.84265 95 4.22215
vertex 2.59039 95 4.64302
endloop
endfacet
facet normal 0.857728 0 0.514103
outer loop
vertex 2.84265 95 4.22215
vertex 2.59039 6 4.64302
vertex 2.84265 6 4.22215
endloop
endfacet
facet normal 0.903988 -0 0.427558
outer loop
vertex 2.3806 6 5.08658
vertex 2.59039 95 4.64302
vertex 2.3806 95 5.08658
endloop
endfacet
facet normal 0.903988 0 0.427558
outer loop
vertex 2.59039 95 4.64302
vertex 2.3806 6 5.08658
vertex 2.59039 6 4.64302
endloop
endfacet
facet normal 1 -0 0
outer loop
vertex 2 6 15
vertex 2 95 7
vertex 2 95 15
endloop
endfacet
facet normal 1 0 0
outer loop
vertex 2 95 7
vertex 2 6 15
vertex 2 6 7
endloop
endfacet
facet normal 0.989178 -0 0.146718
outer loop
vertex 2.02408 6 6.50991
vertex 2.09607 95 6.02455
vertex 2.02408 95 6.50991
endloop
endfacet
facet normal 0.989178 0 0.146718
outer loop
vertex 2.09607 95 6.02455
vertex 2.02408 6 6.50991
vertex 2.09607 6 6.02455
endloop
endfacet
facet normal 0.941548 -0 0.336879
outer loop
vertex 2.2153 6 5.54858
vertex 2.3806 95 5.08658
vertex 2.2153 95 5.54858
endloop
endfacet
facet normal 0.941548 0 0.336879
outer loop
vertex 2.3806 95 5.08658
vertex 2.2153 6 5.54858
vertex 2.3806 6 5.08658
endloop
endfacet
facet normal 0.336879 0 0.941548
outer loop
vertex 5.08658 95 2.3806
vertex 5.54858 6 2.2153
vertex 5.54858 95 2.2153
endloop
endfacet
facet normal 0.336879 0 0.941548
outer loop
vertex 5.54858 6 2.2153
vertex 5.08658 95 2.3806
vertex 5.08658 6 2.3806
endloop
endfacet
facet normal 0.427558 0 0.903988
outer loop
vertex 4.64302 95 2.59039
vertex 5.08658 6 2.3806
vertex 5.08658 95 2.3806
endloop
endfacet
facet normal 0.427558 0 0.903988
outer loop
vertex 5.08658 6 2.3806
vertex 4.64302 95 2.59039
vertex 4.64302 6 2.59039
endloop
endfacet
facet normal 0.671568 0 0.740943
outer loop
vertex 3.46447 95 3.46447
vertex 3.82803 6 3.13495
vertex 3.82803 95 3.13495
endloop
endfacet
facet normal 0.671568 0 0.740943
outer loop
vertex 3.82803 6 3.13495
vertex 3.46447 95 3.46447
vertex 3.46447 6 3.46447
endloop
endfacet
facet normal 0.5957 0 0.803207
outer loop
vertex 3.82803 95 3.13495
vertex 4.22215 6 2.84265
vertex 4.22215 95 2.84265
endloop
endfacet
facet normal 0.5957 0 0.803207
outer loop
vertex 4.22215 6 2.84265
vertex 3.82803 95 3.13495
vertex 3.82803 6 3.13495
endloop
endfacet
facet normal 0 -1 0
outer loop
vertex 25.5858 95 8.64576

File diff suppressed because it is too large Load Diff