|
@@ -52,13 +52,16 @@ contact_border = 0.5;
|
|
|
contact_offset = 0.3;
|
|
contact_offset = 0.3;
|
|
|
|
|
|
|
|
// cutout offset from edge of capsule
|
|
// cutout offset from edge of capsule
|
|
|
-contact_cutout = 1.7;
|
|
|
|
|
-contact_cutout_gnd = 2.2;
|
|
|
|
|
|
|
+contact_cutout = 2.2;
|
|
|
|
|
+contact_cutout_gnd = 2.5;
|
|
|
|
|
|
|
|
// support depth
|
|
// support depth
|
|
|
disk_depth = 0.9;
|
|
disk_depth = 0.9;
|
|
|
disk_edge = 0.49;
|
|
disk_edge = 0.49;
|
|
|
|
|
|
|
|
|
|
+// thinkness of sleeve
|
|
|
|
|
+sleeve_edge = 0.66;
|
|
|
|
|
+
|
|
|
// adjustment for the inner radius of the capsule holder
|
|
// adjustment for the inner radius of the capsule holder
|
|
|
// measured inside diameter of a trial print was around 7.5 to 8.2
|
|
// measured inside diameter of a trial print was around 7.5 to 8.2
|
|
|
// instead of 10, capsule diameter was 9.99)
|
|
// instead of 10, capsule diameter was 9.99)
|
|
@@ -82,9 +85,9 @@ module contact (trans, angle, cutout, slot = false) {
|
|
|
cube([contact_width, capsule_radius + wall / 2, disk_depth]);
|
|
cube([contact_width, capsule_radius + wall / 2, disk_depth]);
|
|
|
}
|
|
}
|
|
|
// cutout for clip from edge of disk
|
|
// cutout for clip from edge of disk
|
|
|
- translate([contact_width, capsule_radius - cutout, 0]) {
|
|
|
|
|
- cylinder(r = contact_width / 2 * 1.25, h = disk_depth, $fn = facets);
|
|
|
|
|
- //cube([contact_width, 0.8, disk_depth]);
|
|
|
|
|
|
|
+ translate([contact_width / 2, capsule_radius - cutout, 0]) {
|
|
|
|
|
+ cube([contact_width, contact_width, disk_depth]);
|
|
|
|
|
+ //cylinder(r = contact_width / 2 * 1.25, h = disk_depth, $fn = facets);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
} else {
|
|
} else {
|
|
@@ -93,9 +96,9 @@ module contact (trans, angle, cutout, slot = false) {
|
|
|
// channel for clip
|
|
// channel for clip
|
|
|
cube([contact_width, capsule_radius + wall, disk_depth]);
|
|
cube([contact_width, capsule_radius + wall, disk_depth]);
|
|
|
}
|
|
}
|
|
|
- translate([contact_width, capsule_radius - cutout, 0]) {
|
|
|
|
|
- //cube([contact_width, 0.8, disk_depth]);
|
|
|
|
|
- cylinder(r = contact_width / 2 * 1.25, h = disk_depth, $fn = facets);
|
|
|
|
|
|
|
+ translate([contact_width / 2, capsule_radius - cutout, 0]) {
|
|
|
|
|
+ cube([contact_width, contact_width, disk_depth]);
|
|
|
|
|
+ //cylinder(r = contact_width / 2 * 1.25, h = disk_depth, $fn = facets);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
@@ -105,7 +108,7 @@ module contact (trans, angle, cutout, slot = false) {
|
|
|
|
|
|
|
|
|
|
|
|
|
// main capsule holder
|
|
// main capsule holder
|
|
|
-translate([capsule_radius * 3.0, capsule_radius * 3, 0]) {
|
|
|
|
|
|
|
+*translate([capsule_radius * 3.0, capsule_radius * 3, 0]) {
|
|
|
difference() {
|
|
difference() {
|
|
|
cylinder(r = capsule_radius + wall, h = capsule_height, $fn = facets);
|
|
cylinder(r = capsule_radius + wall, h = capsule_height, $fn = facets);
|
|
|
cylinder(r = capsule_radius + fudge, h = capsule_height, $fn = facets);
|
|
cylinder(r = capsule_radius + fudge, h = capsule_height, $fn = facets);
|
|
@@ -114,7 +117,7 @@ translate([capsule_radius * 3.0, capsule_radius * 3, 0]) {
|
|
|
|
|
|
|
|
|
|
|
|
|
// back plate with contact springs
|
|
// back plate with contact springs
|
|
|
-difference() {
|
|
|
|
|
|
|
+*difference() {
|
|
|
union() {
|
|
union() {
|
|
|
difference() {
|
|
difference() {
|
|
|
union() {
|
|
union() {
|
|
@@ -159,17 +162,17 @@ translate([capsule_radius * 3 , 0, 0]) {
|
|
|
cylinder(r = capsule_radius + wall, h = capsule_height * 2 / 3, $fn = facets);
|
|
cylinder(r = capsule_radius + wall, h = capsule_height * 2 / 3, $fn = facets);
|
|
|
}
|
|
}
|
|
|
difference() {
|
|
difference() {
|
|
|
- cylinder(r = capsule_radius + wall, h = disk_edge, $fn = facets);
|
|
|
|
|
- cylinder(r = capsule_radius, h = disk_edge, $fn = facets);
|
|
|
|
|
|
|
+ cylinder(r = capsule_radius + wall, h = sleeve_edge, $fn = facets);
|
|
|
|
|
+ cylinder(r = capsule_radius, h = sleeve_edge, $fn = facets);
|
|
|
}
|
|
}
|
|
|
// back plate for contacts 1 / 2
|
|
// back plate for contacts 1 / 2
|
|
|
- translate([-(contact_width + 2 * contact_border), capsule_radius / 2, 0]) {
|
|
|
|
|
- cube([(contact_width + 2 * contact_border) * 2, capsule_radius / 2, disk_edge]);
|
|
|
|
|
|
|
+ translate([-(contact_width + 2 * contact_border) + 0.1, capsule_radius / 2 - 0.3, 0]) {
|
|
|
|
|
+ cube([(contact_width + 2 * contact_border) * 2 - 0.2, capsule_radius / 2 + 0.3, sleeve_edge]);
|
|
|
}
|
|
}
|
|
|
// back plate for GND contact
|
|
// back plate for GND contact
|
|
|
rotate([0, 0, 90]) {
|
|
rotate([0, 0, 90]) {
|
|
|
translate([-(contact_width + 2 * contact_border), capsule_radius * 1 / 3, 0]) {
|
|
translate([-(contact_width + 2 * contact_border), capsule_radius * 1 / 3, 0]) {
|
|
|
- cube([(contact_width + 2 * contact_border), capsule_radius * 2 / 3, disk_edge]);
|
|
|
|
|
|
|
+ cube([(contact_width + 2 * contact_border), capsule_radius * 2 / 3, sleeve_edge]);
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|