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
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
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
);
}
|