omdl  v0.9.8
OpenSCAD Mechanical Design Library
ansi_b18_3_5m.scad
Go to the documentation of this file.
1 //! [metric/screws] Flat head socket cap screws; ANSI B18.3.5M; ASME.
2 /***************************************************************************//**
3  \file
4  \author Roy Allen Sutton
5  \date 2024
6 
7  \copyright
8 
9  This file is part of [omdl] (https://github.com/royasutton/omdl),
10  an OpenSCAD mechanical design library.
11 
12  The \em omdl is free software; you can redistribute it and/or modify
13  it under the terms of the [GNU Lesser General Public License]
14  (http://www.gnu.org/licenses/lgpl.html) as published by the Free
15  Software Foundation; either version 2.1 of the License, or (at
16  your option) any later version.
17 
18  The \em omdl is distributed in the hope that it will be useful,
19  but WITHOUT ANY WARRANTY; without even the implied warranty of
20  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
21  Lesser General Public License for more details.
22 
23  You should have received a copy of the GNU Lesser General Public
24  License along with the \em omdl; if not, write to the Free Software
25  Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
26  02110-1301, USA; or see <http://www.gnu.org/licenses/>.
27 
28  \details
29 
30  \amu_define group_name (ANSI B18.3.5M)
31  \amu_define group_brief ([metric/screws] Flat head socket cap screws; ANSI B18.3.5M; ASME.)
32 
33  \amu_include (include/amu/pgid_path_pstem_pg.amu)
34  \amu_text parent (${parent}_Metric_Screws)
35 *******************************************************************************/
36 
37 //----------------------------------------------------------------------------//
38 
39 /***************************************************************************//**
40  \amu_include (include/amu/group_in_parent_start.amu)
41  \amu_include (include/amu/includes_required.amu)
42 
43  \details
44 
45  \amu_copy (files="diagrams/screw_socket_hex_flat.svg" types="html,latex")
46  \amu_text
47  (
48  \image html ${PATH_NAME}/diagrams/screw_socket_hex_flat.svg "parameters"
49  \image latex ${PATH_NAME}/diagrams/screw_socket_hex_flat.svg "parameters"
50  )
51 
52  \amu_define output_scad (false)
53  \amu_define output_console (false)
54 
55  \amu_define title (Flat head socket cap screws)
56  \amu_define notes_table ()
57 
58  \amu_include (include/amu/scope_table.amu)
59 
60  \note The measurements in the table above are shown with:
61  \c length_unit_base="mm". These measurements will
62  convert when the base units are changed. See \ref units_length
63  for more information on setting the base units.
64 
65  | References: |
66  |:---------------------------|
67  | ANSI B18.3.5M |
68  | ASME |
69  | [ANSI/ASME B18.3.5M-1986] |
70 
71  [ANSI/ASME B18.3.5M-1986]: https://webstore.ansi.org/standards/asme/ansiasmeb185m1986r2002
72 *******************************************************************************/
73 
74 //! <map> ANSI B18.3.5M data table columns map.
75 //! \hideinitializer
77 [
78  ["ns", "nominal size"],
79  ["tp", "thread pitch"],
80  ["b_max", "body diameter"],
81  ["b_min", "body diameter"],
82  ["a_max", "head diameter"],
83  ["a_min", "head diameter"],
84  ["h_ref", "head height"],
85  ["h_tol", "head height"],
86  ["j_nom", "hex socket size"],
87  ["t_min", "key engagement"],
88  ["w_min", "wall thickness"],
89  ["d_max", "drill allowance"]
90 ];
91 
92 //! <table> ANSI B18.3.5M data table rows.
93 //! \hideinitializer
95 [
96  [ "M3",l_mm(0.50),l_mm( 3.00),l_mm(2.86),l_mm( 6.72),l_mm( 5.35),l_mm(1.86),l_mm(0.30),l_mm(2.0),l_mm(1.1),l_mm(0.25),l_mm(0.3)],
97  [ "M4",l_mm(0.70),l_mm( 4.00),l_mm(3.82),l_mm( 8.96),l_mm( 7.80),l_mm(2.48),l_mm(0.30),l_mm(2.5),l_mm(1.5),l_mm(0.45),l_mm(0.4)],
98  [ "M5",l_mm(0.80),l_mm( 5.00),l_mm(4.82),l_mm(11.20),l_mm( 9.75),l_mm(3.10),l_mm(0.35),l_mm(3.0),l_mm(1.9),l_mm(0.66),l_mm(0.5)],
99  [ "M6",l_mm(1.00),l_mm( 6.00),l_mm(5.82),l_mm(13.44),l_mm(11.70),l_mm(3.72),l_mm(0.35),l_mm(4.0),l_mm(2.2),l_mm(0.70),l_mm(0.6)],
100  [ "M8",l_mm(1.25),l_mm( 8.00),l_mm(7.78),l_mm(17.92),l_mm(15.60),l_mm(4.96),l_mm(0.40),l_mm(5.0),l_mm(3.0),l_mm(1.16),l_mm(0.8)],
101  ["M10",l_mm(1.50),l_mm(10.00),l_mm(9.78),l_mm(22.40),l_mm(19.50),l_mm(6.20),l_mm(0.50),l_mm(6.0),l_mm(3.6),l_mm(1.62),l_mm(0.9)]
102 ];
103 
104 //! @}
105 //! @}
106 
107 //----------------------------------------------------------------------------//
108 // openscad-amu auxiliary scripts
109 //----------------------------------------------------------------------------//
110 
111 /*
112 BEGIN_SCOPE table;
113  BEGIN_OPENSCAD;
114  include <omdl-base.scad>;
115  include <database/component/fastener/ansi_b18_3_5m.scad>;
116 
117  // temporary override for table presentation.
118  // function l_mm(v) = round_s(length(v,"mm"), 4);
119 
120  length_unit_base = "mm";
121 
122  n = true; // number
123  hi = true; // include heading id
124  ht = true; // include heading description
125 
126  tr = dtr_fastener_metric_screws_ansi_b18_3_5m;
127  tc = dtc_fastener_metric_screws_ansi_b18_3_5m;
128 
129  table_write( tr, tc, number=n, heading_id=hi, heading_text=ht );
130 
131  // end_include
132  END_OPENSCAD;
133 
134  BEGIN_MFSCRIPT;
135  include --path "${INCLUDE_PATH}" {var_init,var_gen_term}.mfs;
136  include --path "${INCLUDE_PATH}" scr_make_mf.mfs;
137  END_MFSCRIPT;
138 END_SCOPE;
139 */
140 
141 //----------------------------------------------------------------------------//
142 // end of file
143 //----------------------------------------------------------------------------//
dtc_fastener_metric_screws_ansi_b18_3_5m
dtr_fastener_metric_screws_ansi_b18_3_5m
function l_mm(v)
Shorthand length conversion for millimeters.