omdl  v0.9.5
OpenSCAD Mechanical Design Library
iso_4161.scad
Go to the documentation of this file.
1 //! [metric/nuts] Hexagon flange nut, style 1; ISO 4161.
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 (ISO 4161)
31  \amu_define group_brief ([metric/nuts] Hexagon flange nut, style 1; ISO 4161.)
32 
33  \amu_include (include/amu/pgid_path_pstem_pg.amu)
34  \amu_text parent (${parent}_Metric_Nuts)
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/nut_hex_flange.svg" types="html,latex")
46  \amu_text
47  (
48  \image html ${PATH_NAME}/diagrams/nut_hex_flange.svg "parameters"
49  \image latex ${PATH_NAME}/diagrams/nut_hex_flange.svg "parameters"
50  )
51 
52  \amu_define output_scad (false)
53  \amu_define output_console (false)
54 
55  \amu_define title (Hexagon flange nut, style 1)
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  | ISO 4161 |
68  | [ISO 4161] |
69  | [fasterner.eu] |
70 
71  [ISO 4161]: https://www.iso.org/standard/61523.html
72  [fasterner.eu]: https://www.fasteners.eu/standards/ISO/4161
73 *******************************************************************************/
74 
75 //! <map> ISO 4161 fastener data table columns map.
76 //! \hideinitializer
78 [
79  ["ns", "nominal size"],
80  ["tp", "thread pitch"],
81  ["f_max", "width across flats"],
82  ["f_min", "width across flats"],
83  ["g_min", "width across corners"],
84  ["h_hax", "thickness"],
85  ["h_min", "thickness"],
86  ["b_max", "flange diameter"]
87 ];
88 
89 //! <table> ISO 4161 fastener data table rows.
90 //! \hideinitializer
92 [
93  [ "M5",l_mm(0.80),l_mm( 8.00),l_mm( 7.78),l_mm( 8.79),l_mm( 5),l_mm( 4.7),l_mm(11.8)],
94  [ "M6",l_mm(1.00),l_mm(10.00),l_mm( 9.78),l_mm(11.05),l_mm( 6),l_mm( 5.7),l_mm(14.2)],
95  [ "M8",l_mm(1.25),l_mm(13.00),l_mm(12.73),l_mm(14.38),l_mm( 8),l_mm( 7.6),l_mm(17.9)],
96  ["M10",l_mm(1.50),l_mm(15.00),l_mm(14.73),l_mm(16.64),l_mm( 10),l_mm( 9.6),l_mm(21.8)],
97  ["M12",l_mm(1.75),l_mm(18.00),l_mm(17.73),l_mm(20.03),l_mm( 12),l_mm(11.6),l_mm(26.0)],
98  ["M16",l_mm(2.00),l_mm(24.00),l_mm(23.67),l_mm(26.75),l_mm( 16),l_mm(15.3),l_mm(34.5)],
99  ["M20",l_mm(2.50),l_mm(30.00),l_mm(29.16),l_mm(32.95),l_mm( 20),l_mm(18.9),l_mm(42.8)]
100 ];
101 
102 //! @}
103 //! @}
104 
105 //----------------------------------------------------------------------------//
106 // openscad-amu auxiliary scripts
107 //----------------------------------------------------------------------------//
108 
109 /*
110 BEGIN_SCOPE table;
111  BEGIN_OPENSCAD;
112  include <omdl-base.scad>;
113  include <database/component/fastener/iso_4161.scad>;
114 
115  // temporary override for table presentation.
116  // function l_mm(v) = round_s(length(v,"mm"), 4);
117 
118  length_unit_base = "mm";
119 
120  n = true; // number
121  hi = true; // include heading id
122  ht = true; // include heading description
123 
124  tr = dtr_fastener_metric_nuts_iso_4161;
125  tc = dtc_fastener_metric_nuts_iso_4161;
126 
127  table_write( tr, tc, number=n, heading_id=hi, heading_text=ht );
128 
129  // end_include
130  END_OPENSCAD;
131 
132  BEGIN_MFSCRIPT;
133  include --path "${INCLUDE_PATH}" {var_init,var_gen_term}.mfs;
134  include --path "${INCLUDE_PATH}" scr_make_mf.mfs;
135  END_MFSCRIPT;
136 END_SCOPE;
137 */
138 
139 //----------------------------------------------------------------------------//
140 // end of file
141 //----------------------------------------------------------------------------//
dtc_fastener_metric_nuts_iso_4161
Definition: iso_4161.scad:284
dtr_fastener_metric_nuts_iso_4161
Definition: iso_4161.scad:298
function l_mm(v)
Shorthand length conversion for millimeters.