73 lines
1.8 KiB
OpenSCAD
73 lines
1.8 KiB
OpenSCAD
// Arri-S Animation Motor
|
|
|
|
include <../common.scad>;
|
|
|
|
BarrelDiameter = 40;
|
|
BarrelLength = 75;
|
|
|
|
SeatDiameter = 20;
|
|
SeatLength = 3;
|
|
|
|
CapLength = 30;
|
|
CapDiameter = 30;
|
|
CapThickness = 3;
|
|
|
|
CapCatchDiameter = 28;
|
|
CapCatchLength = 2;
|
|
CapCatchOffset = 24;
|
|
|
|
CapRimDiameter = 37;
|
|
CapRimThickness = 3;
|
|
|
|
NotchDiameter = 2;
|
|
NotchOffset = 3;
|
|
|
|
DriveLength = 8;
|
|
DriveDiameter1 = 14;
|
|
DriveDiameter2 = 12;
|
|
|
|
module motorBarrel () {
|
|
$fn = 200;
|
|
cylinder(r = BarrelDiameter / 2, r2 = (BarrelDiameter - 1) / 2, h = BarrelLength, center = true);
|
|
}
|
|
|
|
module motorSeat () {
|
|
$fn = 120;
|
|
cylinder(r = SeatDiameter / 2, h = SeatLength, center = true);
|
|
}
|
|
|
|
module motor () {
|
|
motorBarrel();
|
|
translate([0, 0, (BarrelLength / 2) + (SeatLength / 2)]) motorSeat();
|
|
//notch
|
|
$fn = 50;
|
|
translate([BarrelDiameter / 2, 0, -(BarrelLength / 2) + NotchOffset]) {
|
|
rotate([0, 90, 0]) {
|
|
cylinder(r = NotchDiameter / 2, h = 1, center = true);
|
|
translate([0, 0, NotchDiameter / 4]) sphere(r = NotchDiameter / 2);
|
|
}
|
|
}
|
|
}
|
|
|
|
module capBellowsAdapter () {
|
|
$fn = 200;
|
|
difference () {
|
|
cylinder(r = CapDiameter / 2, h = CapLength, center = true);
|
|
cylinder(r = (CapDiameter - CapThickness) / 2, h = CapLength + 1, center = true);
|
|
//catch
|
|
translate([0, 0, (CapLength / 2) - CapCatchOffset]) difference () {
|
|
cylinder(r = (CapDiameter + 1) / 2, h = CapCatchLength, center = true);
|
|
cylinder(r = CapCatchDiameter / 2, h = CapCatchLength + 1, center = true);
|
|
}
|
|
}
|
|
translate([0, 0, (CapLength / 2) + (CapRimThickness / 2)]) {
|
|
difference () {
|
|
cylinder(r = CapRimDiameter / 2, h = CapRimThickness, center = true);
|
|
cube([CapDiameter - CapThickness - 8, CapDiameter - CapThickness - 8, CapRimThickness + 1], center = true);
|
|
}
|
|
}
|
|
}
|
|
|
|
motor();
|
|
//capBellowsAdapter();
|