![]() |
omdl
v0.9.8
OpenSCAD Mechanical Design Library
|
Screw mounts tabs, mount slots, mount posts, etc. More...
Files | |
file | mounts.scad |
Screw mounts tabs, mount slots, mount posts, etc. | |
Functions | |
module | mount_screw_tab (wth, screw, brace, size, vr, vrm) |
A mount tab with screw hole and support brace. More... | |
module | mount_screw_slot (wth, screw, cover, size, align, mode, f) |
A screw mount slot with optional cover envelope. More... | |
module | mount_screw_slot_md (wth, screw, cover, size, align, mode, f, slots=1) |
A multi-directional screw mount slot with optional cover envelope. More... | |
module | mount_screw_post (post, screw, bore_sft, fins, cut) |
A screw mount post with screw bore and optional fins. More... | |
Screw mounts tabs, mount slots, mount posts, etc.
Requires: |
---|
include <omdl-base.scad>; |
include <models/3d/fastener/screws.scad>; |
include <parts/3d/enclosure/mounts.scad>; |
module mount_screw_post | ( | post | , |
screw | , | ||
bore_sft | , | ||
fins | , | ||
cut | |||
) |
A screw mount post with screw bore and optional fins.
post | <datastruct> post (see below). |
screw | <datastruct> screw bore (see below). |
bore_sft | <datastruct> self-forming threads screw bore (see below). |
fins | <datastruct> fins (see below). |
cut | <datastruct> cut (see below). |
Construct a screw mount post with screw bore, fins, and diagonal cut at base. The post and fins have preset rounding configurations, but also support manual rounding specifications. The post screw bore is removed using either screw_bore(), or screw_bore_tsf(), or both. All relevant screw bore features are made available, including nut-slot cut-outs as shown in the examples below. The post can be configured with a diagonally cut base to facilitate 3D printing posts without base support, such as those attached elevated on walls.
screw
and bore_sft
may be used together when it is desired to create a recessed screw head and a bore with self forming threads. The screw
bore diameter will need to be sufficiently reduced so as to not remove the self-forming thread engagement cylinders.e | data type | default value | parameter description |
---|---|---|---|
0 | <decimal-list-2 | decimal> | required | pd: post diameter(s) |
1 | <decimal> | required | ph: post height |
2 | <integer-list-4 | integer | string> | 0 | rounding mode |
3 | <decimal-list-4 | decimal> | min(pd)/8 | rounding radius |
The post base and top can have different diameters by assigning a list [pdb, pdt]. This is useful for 3D printing unsupported wall attached posts. When pd
is assigned a decimal the base and top diameters will be equal. The rounding mode can be assigned one of the preset configuration strings: {"p1", ..., "p13"} or assigned a custom value. Both the rounding mode and rounding radius can be assigned a list, to control each edge individually, or a single value when all edges shall be the same.
e | data type | default value | parameter description |
---|---|---|---|
0 | <decimal> | required | d: bore diameter |
1 | <decimal> | pd | l: bore length |
2 | <datastruct> | undef | h: screw head |
3 | <datastruct> | undef | n: screw nut |
4 | <datastruct> | undef | s: nut slot cutout |
5 | <datastruct> | undef | f: bore scale factor |
See screw_bore() for documentation of the data types for the screw parameters.
e | data type | default value | parameter description |
---|---|---|---|
0 | <decimal> | required | d: bore diameter |
1 | <decimal> | pd | l: bore length |
2 | <datastruct> | undef | t: thread engagement |
See screw_bore_tsf() for documentation of the data types for the self-forming threads screw bore parameters.
e | data type | default value | parameter description |
---|---|---|---|
0 | <integer> | required | fin count |
1 | <integer> | 0 | fin type: {0=triangular, 1=rectangular} |
2 | <decimal-list-3 | decimal> | [ph*5/8, pd/4, pd/8] | size scale factors: [h, l, w] |
3 | <integer-list-n | integer | string> | 0 | rounding mode |
4 | <decimal-list-n | decimal> | (see below) | rounding radius |
5 | <decimal> | 360 | distribution angle |
The rounding mode can be assigned one of the preset configuration strings: {"p1", ..., "p6"} or assigned custom values. Both the rounding mode and rounding radius can be assigned a list, to control each edge individually, or a single value when all edges shall be the same.
e | data type | default value | parameter description |
---|---|---|---|
0 | <decimal> | 0 | cut x-angle |
1 | <decimal> | 0 | cut post base offset |
2 | <decimal> | 0 | cut z-rotation |
3 | <decimal> | 4 | cube removal scale |
The cut
parameter can be used to cut the base of the post at an angle. As previously discussed, this is useful for 3D-printing wall-attached posts that does not have lower support.
Screw mount post example script
front | top | diag |
---|---|---|
![]() | ![]() | ![]() |
Definition at line 1280 of file mounts.scad.
module mount_screw_slot | ( | wth | , |
screw | , | ||
cover | , | ||
size | , | ||
align | , | ||
mode | , | ||
f | |||
) |
A screw mount slot with optional cover envelope.
wth | <decimal> wall thickness. |
screw | <datastruct> screw bore (see below). |
cover | <decimal-length-3 | decimal> cover envelope; a list [co, ct, cb], the cover over and around the top and base, or a single decimal to set (co=ct=cb). |
size | <decimal> slot length. |
align | <integer-list-3 | integer> mount alignment; a list [ax, ay, az] or a single integer to set ax. |
mode | <integer> mode {0=cover, 1=slot (negative), 2=cover with slot removed}. |
f | <decimal-list-2 | decimal> scale factor; a list [fd, fh], the bore diameter and bore height scale factors, or a single decimal to specify fd only. The default values for both fd and fh is 1. |
Construct a screw mount slot with an opening that allows for the insertion and interlocking of a screw head. The mount is secured to the screw by sliding the screw head into the mount slot. The mount can be used with and without a cover. The parameter size
is optional and when not specified, its value is 3 * d (the screw neck diameter).
e | data type | default value | parameter description |
---|---|---|---|
0 | <decimal> | required | d : neck diameter |
1 | <datastruct> | [d*2, d/2] | h : screw head |
See screw_bore() for documentation of the data types for the screw parameters d
and h
.
Screw mount slot example script
front | top | diag |
---|---|---|
![]() | ![]() | ![]() |
Definition at line 629 of file mounts.scad.
module mount_screw_slot_md | ( | wth | , |
screw | , | ||
cover | , | ||
size | , | ||
align | , | ||
mode | , | ||
f | , | ||
slots | = 1 |
||
) |
A multi-directional screw mount slot with optional cover envelope.
wth | <decimal> wall thickness. |
screw | <datastruct> screw bore (see below). |
cover | <decimal-length-3 | decimal> cover envelope; a list [co, ct, cb], the cover over and around the top and base, or a single decimal to set (co=ct=cb). |
size | <decimal> slot length. |
align | <integer-list-3 | integer> mount alignment; a list [ax, ay, az] or a single integer to set ax. |
mode | <integer> mode {0=cover, 1=slot (negative), 2=cover with slot removed}. |
f | <decimal-list-2 | decimal> scale factor; a list [fd, fh], the bore diameter and bore height scale factors, or a single decimal to specify fd only. The default values for both fd and fh is 1. |
slots | <datastruct | integer> slot count and separation angle. |
Construct a screw mount slot with an opening that allows for the insertion and interlocking of a screw head. The mount is secured to the screw by sliding the screw head into the mount slot. The mount can be used with and without a cover. The parameter size
is optional and when not specified, its value is 3 * d (the screw neck diameter).
This is a version of mount_screw_slot() that supports multiple slots equally divided around a circle.
e | data type | default value | parameter description |
---|---|---|---|
0 | <decimal> | required | d : neck diameter |
1 | <datastruct> | [d*2, d/2] | h : screw head |
See screw_bore() for documentation of the data types for the screw parameters d
and h
.
e | data type | default value | parameter description |
---|---|---|---|
0 | <integer> | required | sc : slot count |
1 | <decimal> | 360/sc | sa : slot separation angle |
Multi-directional screw mount slot example script
front | top | diag |
---|---|---|
![]() | ![]() | ![]() |
Definition at line 947 of file mounts.scad.
module mount_screw_tab | ( | wth | , |
screw | , | ||
brace | , | ||
size | , | ||
vr | , | ||
vrm | |||
) |
A mount tab with screw hole and support brace.
wth | <decimal> wall thickness. |
screw | <datastruct | decimal> screw bore; structured data or a single decimal to set the bore diameter. |
brace | <decimal-list-2 | decimal> brace percentage; a list [by, bz] or a single decimal to set (by=bz). |
size | <decimal-list-2 | decimal> tab size; a list [sx, sy]. |
vr | <decimal-list-4 | decimal> rounding radius; a list [v1r, v2r, v3r, v4r] or a single decimal for (v1r=v2r=v3r=v4r). |
vrm | <integer> rounding mode {0|1|2|3|4}. |
Construct a mount tab with a screw hole. The parameters wth
and screw
are required (the others are optional). When brace
is specified, braces are constructed to support and reinforce the connection to the adjacent structure. The brace-to-tab and brace-to-wall lengths can be specified independently. When the size
if not supplied, a default size will be used based on the specified mount tab features.
e | data type | default value | parameter description |
---|---|---|---|
0 | <decimal> | required | d: bore diameter |
1 | (see below) | undef | h: screw head |
2 | (see below) | undef | t: tolerance |
See screw_bore() for documentation of the data types for the screw bore parameters h
and t
.
Screw mount tab example script
top | right | diag |
---|---|---|
![]() | ![]() | ![]() |
Definition at line 361 of file mounts.scad.