From c4e2507f9c8a2884c7d8a8bf68bfb85a5448920f Mon Sep 17 00:00:00 2001 From: Nikita Kostovsky Date: Thu, 8 Jan 2026 00:48:12 +0100 Subject: add m12 connectors --- body/m12_connectors.scad | 124 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 124 insertions(+) create mode 100644 body/m12_connectors.scad (limited to 'body/m12_connectors.scad') 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 + +// 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 -- cgit v1.2.3-70-g09d2