Dynamixel XL330 horns: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
| (2 intermediate revisions by the same user not shown) | |||
| Line 68: | Line 68: | ||
</pre> | </pre> | ||
[[File: | |||
[[File:Xl330-horn-modular.png|thumb]] | |||
Latest revision as of 04:23, 2 May 2026
XL330 horns
OpenSCAD code
$fn=32;
inner = 6; // 6mm inner empty space for front hornet screw
outer = 8.25; // 8.25mm outer radius of XL330 servo hornet
r = 0.8; // d=1.6mm pins on the XL330 servo hornet (inlet)
l = 2.5; // l=2.5mm, how deep the inlet travel in the hornet -- 2.5mm
t = 2; // t=2mm, global thickness
d = 16; // d=16mm, front/back hand distance
h = 30; // h=30mm, upper hand distance
module pins(r, l, t){
/* r: radius, l: length, t: thickness */
translate([inner,0,t]) cylinder(l, r, r);
translate([-inner,0,t]) cylinder(l, r, r);
translate([0,inner,t]) cylinder(l, r, r);
translate([0,-inner,t]) cylinder(l, r, r);
}
module disc(thichness=t){
difference(){
union(){
cylinder(t, outer, outer);
cylinder(t, t, t);
}
cylinder(t, inner/2, inner/2);
}
}
module frontArm(d, t){
difference(){
translate([-outer/2, 0, 0]) cube([outer, d, t]);
cube([2*inner,2*inner,2*t],true);
}
}
module upperArm(d, h, t){
rotate([90,0,0]) translate([-outer/2, 0, -d]) cube([outer, h, t]);
}
module backArm(d, h, t){
union(){
translate([-outer/2, -(2*t), h]) cube([outer, d+(2*t), t]);
translate([0, 0, h-t]) cylinder(t, inner/2, inner/2);
}
}
//
union(){
union(){
union(){
union(){
pins(r, l, t);
disc(t);
}
frontArm(d, t);
}
upperArm(d, h, t);
}
backArm(d, h, t);
}
