Canon EF bellows adapter

This commit is contained in:
Matt McWilliams 2023-04-01 19:24:29 -04:00
parent 13702a3d5b
commit c1a51f1ce8
3 changed files with 79 additions and 67 deletions

View File

@ -1,63 +1,65 @@
//Title: Canon EF Mount Body Cap //Title: Canon EF Mount Body Cap
//Modified By: Robert Macgregor //Modified By: Robert Macgregor
//Date: March 29, 2014 //Date: March 29, 2014
//Original Author: Alex English - ProtoParadigm //Original Author: Alex English - ProtoParadigm
//Original Date: 8-8-2011 //Original Date: 8-8-2011
//License: GPL2 //License: GPL2
//$fs = .1; //$fs = .1;
$fn = 50; $fn = 120;
module EFmount() { module EFmount_body() {
//$fa = 1; //$fa = 1;
union() { union() {
translate([0,0,-1]) translate([0,0,-1])
cylinder(h = 5.8, r = 66.5/2); //outer grip cylinder(h = 5.8, r = 66.5/2); //outer grip
translate([0, 0, 6]) translate([0, 0, 6])
cylinder(h = 5, r = 50.5/2); cylinder(h = 5, r = 50.5/2);
translate([0, 0, 4]) translate([0, 0, 4])
cylinder(h = 3, r = 54/2); //lip cylinder(h = 3, r = 54/2); //lip
//translate([0, 0, 12.5]) //inner mounting hole //translate([0, 0, 12.5]) //inner mounting hole
//cylinder(h = 3.2, r1 = 39.7/2, r2 = 39.5/2); //cylinder(h = 3.2, r1 = 39.7/2, r2 = 39.5/2);
translate([0, 0, 7]) translate([0, 0, 7])
threads(); threads();
rotate([0, 0, -33]) rotate([0, 0, -33])
translate([-67/2, 0, 1.9]) translate([-67/2, 0, 1.9])
cube(size=[1, 2, 5.8], center = true); //alignment mark cube(size=[1, 2, 5.8], center = true); //alignment mark
} }
} }
module threads() { module threads() {
difference() { difference() {
cylinder(h = 4, r = 53.2/2); //thread outer cylinder(h = 4, r = 53.2/2); //thread outer
cylinder(h = 4, r = 50.4/2); //thread cylinder cylinder(h = 4, r = 50.4/2); //thread cylinder
cylinder(h = 2.6, r = 54/2); //gap lip to thread cylinder(h = 2.6, r = 54/2); //gap lip to thread
for(i = [ [0, 0, 0], [180, 0, -70], [0, 0, -120], [180, 0, -180], [0, 0, -230], [180, 0, -300] ]) for(i = [ [0, 0, 0], [180, 0, -70], [0, 0, -120], [180, 0, -180], [0, 0, -230], [180, 0, -300] ])
{ {
rotate(i) rotate(i)
translate([-35, 0, -5]) translate([-35, 0, -5])
cube(size=[40, 18, 10]); cube(size=[40, 18, 10]);
} }
} }
intersection() { intersection() {
difference() { difference() {
cylinder(h = 4, r = 54/2); cylinder(h = 4, r = 54/2);
cylinder(h = 4, r = 50.4/2); cylinder(h = 4, r = 50.4/2);
} }
translate([-54/2+.4, 0, 0]) translate([-54/2+.4, 0, 0])
cube(size=[4, 1.9, 4], center = false); //thread stopper cube(size=[4, 1.9, 4], center = false); //thread stopper
} }
} }
difference() { module EFmount () {
EFmount(); difference() {
translate([0, 0, 1.4]) EFmount_body();
cylinder(h = 10, r = 41.5/2); translate([0, 0, 1.4])
for(k = [44.639 : 8.639 : 385]) { cylinder(h = 10, r = 41.5/2);
rotate([0, 0, -k]) for(k = [44.639 : 8.639 : 385]) {
translate([-68/2, 0, -1.1]) rotate([0, 0, -k])
cylinder(h = 6, r = 2); translate([-68/2, 0, -1.1])
} cylinder(h = 6, r = 2);
//cylinder(h = 17, r = 33/2); }
//cylinder(h = 17, r = 33/2);
}
} }

View File

@ -0,0 +1,13 @@
include <./Canon_EF_body_cap.scad>;
include <./common/common.scad>;
difference () {
union () {
EFmount();
translate([0, 0, -3]) cylinder(r = 38 / 2, h = 10, center = true, $fn = 360);
}
//guide
translate([0, 0, -3]) rotate([0, 0, 8.75]) translate([0, -26, 0]) cylinder(r = R(3), h = 4, center= true);
//center void
cylinder(r = 32 / 2, h = 30, center = true, $fn = 360);
}

View File

@ -9,6 +9,7 @@ MountY = 97.6;
MountZ = 73; MountZ = 73;
CameraY = 15; CameraY = 15;
CameraBoltD = 6.4;
function hypotenuese(X) = sqrt(pow(X, 2) + pow(X, 2)); function hypotenuese(X) = sqrt(pow(X, 2) + pow(X, 2));
@ -107,15 +108,11 @@ module canon_m_50_mount () {
//void around camera bolt //void around camera bolt
translate([0, CameraY, (Z/2) - 15]) cylinder(r = R(30), h = 20, center = true, $fn = 100); translate([0, CameraY, (Z/2) - 15]) cylinder(r = R(30), h = 20, center = true, $fn = 100);
//void for camera bolt //void for camera bolt
translate([0, CameraY, (Z/2)]) cylinder(r = R(5), h = 20 + 1, center = true, $fn = 60); translate([0, CameraY, (Z/2)]) cylinder(r = R(CameraBoltD), h = 20 + 1, center = true, $fn = 60);
//void for base bolts //void for base bolts
base_nut_void([0, SPACING/2, -(Z/2) + 10]); base_nut_void([0, SPACING/2, -(Z/2) + 10]);
base_nut_void([0, -SPACING/2, -(Z/2) + 10]); base_nut_void([0, -SPACING/2, -(Z/2) + 10]);
//bolt access
//translate([0, 0, -10]) rotate([0, 45, 0]) cube([ACCESS, Y + 1, ACCESS], center = true);
//translate([0, 0, -10 - (ACCESS/2) + (10/4)])cube([DIAG, Y + 1, 10], center = true);
} }
} }
} }