diff options
| author | Nikita Kostovsky <nikita@kostovsky.me> | 2026-01-08 00:48:12 +0100 |
|---|---|---|
| committer | Nikita Kostovsky <nikita@kostovsky.me> | 2026-01-08 00:48:12 +0100 |
| commit | c4e2507f9c8a2884c7d8a8bf68bfb85a5448920f (patch) | |
| tree | 530296a35f101505b32c30660c0e21990d6b5452 /body/m12_connectors.scad | |
| parent | 7d3798f2a7c28d558d975d1844bb729fe8de0923 (diff) | |
add m12 connectors
Diffstat (limited to 'body/m12_connectors.scad')
| -rw-r--r-- | body/m12_connectors.scad | 124 |
1 files changed, 124 insertions, 0 deletions
diff --git a/body/m12_connectors.scad b/body/m12_connectors.scad new file mode 100644 index 0000000..9d28e1d --- /dev/null +++ b/body/m12_connectors.scad @@ -0,0 +1,124 @@ +include <helpers.scad> + +// m12 female body connector for soldering + +// female +// inner thick part length includes rubber o-ring, +// outer does not +m12_female_conn_body_thick_part_length = 3.6; +m12_female_conn_body_thick_part_d = 18; + +m12_female_conn_body_outer_part_length = 16; +m12_female_conn_body_outer_part_d = 15.1; +m12_female_conn_body_outer_part_flat_w = 13.4; + +m12_female_conn_body_wires_length = 20; +m12_female_conn_body_wires_d = 8; + +// male +m12_male_conn_body_thick_part_length = 3.6; +m12_male_conn_body_thick_part_d = 18; + +m12_male_conn_body_outer_part_length = 16; +m12_male_conn_body_outer_part_d = 12; +m12_male_conn_body_outer_part_flat_w = 10.6; + +m12_male_conn_body_wires_length = 20; +m12_male_conn_body_wires_d = 8; + +// wl - wires length +// wd - wires diameter +// tcl - inner (thick) part length +// tcd - inner (thick) part diameter +// ocl - outer connector length +// ocd - outer connector diameter +// ocfw - outer connector flat width +module m12_connector( + wl, + wd, + tcl, + tcd, + ocl, + ocd, + ocfw, +) +{ + rotate([90, 0, 0]) + { + // thick connector part inside scanner body + translate([0, 0, -tcl]) + cylinder($fn = dToFn(tcd), d = tcd, h = tcl); + + // outer connector part going outside through + // scanned body + cylinder($fn = dToFn(ocd), d = ocd, h = ocl); + + // soldered wires + translate([0, 0, -wl - tcl + wd / 2]) + cylinder($fn = dToFn(wd), d = wd, h = wl); + + translate([0, 0, -wl -tcl + wd / 2]) + sphere($fn = dToFn(wd), d = wd); + } +} + +module m12_female_conn_body() +{ + wl = m12_female_conn_body_wires_length; + wd = m12_female_conn_body_wires_d; + + tcl = m12_female_conn_body_thick_part_length; + tcd = m12_female_conn_body_thick_part_d; + + ocl = m12_female_conn_body_outer_part_length; + ocd = m12_female_conn_body_outer_part_d; + ocfw = m12_female_conn_body_outer_part_flat_w; + + rotate([90, 0, 0]) + { + // thick connector part inside scanner body + translate([0, 0, -tcl]) + cylinder($fn = dToFn(tcd), d = tcd, h = tcl); + + // outer connector part going outside through + // scanned body + cylinder($fn = dToFn(ocd), d = ocd, h = ocl); + + // soldered wires + translate([0, 0, -wl - tcl + wd / 2]) + cylinder($fn = dToFn(wd), d = wd, h = wl); + + translate([0, 0, -wl -tcl + wd / 2]) + sphere($fn = dToFn(wd), d = wd); + } +} + +module m12_female_connector() +{ + m12_connector( + m12_female_conn_body_wires_length, + m12_female_conn_body_wires_d, + + m12_female_conn_body_thick_part_length, + m12_female_conn_body_thick_part_d, + + m12_female_conn_body_outer_part_length, + m12_female_conn_body_outer_part_d, + m12_female_conn_body_outer_part_flat_w + ); +} + +module m12_male_connector() +{ + m12_connector( + m12_male_conn_body_wires_length, + m12_male_conn_body_wires_d, + + m12_male_conn_body_thick_part_length, + m12_male_conn_body_thick_part_d, + + m12_male_conn_body_outer_part_length, + m12_male_conn_body_outer_part_d, + m12_male_conn_body_outer_part_flat_w + ); +}
\ No newline at end of file |
