canon_ble #82
|
@ -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);
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -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);
|
||||||
|
}
|
|
@ -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);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue