omdl  v0.9.5
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_define output_scad (false)
46  \amu_define output_console (false)
47 
48  \amu_define title (Flat head socket cap screws)
49  \amu_define notes_table ()
50 
51  \amu_include (include/amu/scope_table.amu)
52 
53  \note The measurements in the table above are shown with:
54  \c length_unit_base="mm". These measurements will
55  convert when the base units are changed. See \ref units_length
56  for more information on setting the base units.
57 
58  | References: |
59  |:---------------------------|
60  | ANSI B18.3.5M |
61  | ASME |
62  | [ANSI/ASME B18.3.5M-1986] |
63 
64  [ANSI/ASME B18.3.5M-1986]: https://webstore.ansi.org/standards/asme/ansiasmeb185m1986r2002
65 *******************************************************************************/
66 
67 //! <map> ANSI B18.3.5M fastener data table columns map.
68 //! \hideinitializer
70 [
71  ["ns", "nominal size"],
72  ["tp", "thread pitch"],
73  ["b_max", "body diameter"],
74  ["b_min", "body diameter"],
75  ["a_max", "head diameter"],
76  ["a_min", "head diameter"],
77  ["h_ref", "head height"],
78  ["h_tol", "head height"],
79  ["j_nom", "hex socket size"],
80  ["t_min", "key engagement"],
81  ["w_min", "wall thickness"],
82  ["d_max", "drill allowance"]
83 ];
84 
85 //! <table> ANSI B18.3.5M fastener data table rows.
86 //! \hideinitializer
88 [
89  [ "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)],
90  [ "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)],
91  [ "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)],
92  [ "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)],
93  [ "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)],
94  ["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)]
95 ];
96 
97 //! @}
98 //! @}
99 
100 //----------------------------------------------------------------------------//
101 // openscad-amu auxiliary scripts
102 //----------------------------------------------------------------------------//
103 
104 /*
105 BEGIN_SCOPE table;
106  BEGIN_OPENSCAD;
107  include <omdl-base.scad>;
108  include <database/component/fastener/ansi_b18_3_5m.scad>;
109 
110  // temporary override for table presentation.
111  // function l_mm(v) = round_s(length(v,"mm"), 4);
112 
113  length_unit_base = "mm";
114 
115  n = true; // number
116  hi = true; // include heading id
117  ht = true; // include heading description
118 
119  tr = dtr_fastener_metric_screws_ansi_b18_3_5m;
120  tc = dtc_fastener_metric_screws_ansi_b18_3_5m;
121 
122  table_write( tr, tc, number=n, heading_id=hi, heading_text=ht );
123 
124  // end_include
125  END_OPENSCAD;
126 
127  BEGIN_MFSCRIPT;
128  include --path "${INCLUDE_PATH}" {var_init,var_gen_term}.mfs;
129  include --path "${INCLUDE_PATH}" scr_make_mf.mfs;
130  END_MFSCRIPT;
131 END_SCOPE;
132 */
133 
134 //----------------------------------------------------------------------------//
135 // end of file
136 //----------------------------------------------------------------------------//
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.