1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
|
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 = 12;
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 = 12;
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
intersection()
{
cylinder($fn = dToFn(ocd), d = ocd, h = ocl);
// cutter for flat part of outer connector
translate([0, 0, ocl / 2])
cube([ocd * 1.1, ocfw, ocl * 2], center = true);
}
// 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
);
}
//m12_male_connector();
|