Dynamixel XL330 pulley: Difference between revisions

From IxD Studio
Jump to navigation Jump to search
No edit summary
No edit summary
Line 1: Line 1:
[[File:Xl330-pulley-rev.png|thumb]]
[[File:Xl330-pulley-rev.png|thumb]]
Code for OpenSCAD: https://openscad.org


<pre>
<pre>

Revision as of 09:04, 14 May 2026

Code for OpenSCAD: https://openscad.org


$fn=32;

w = 5.3; // pulley thickness 
inner = 6; // fixed number (inner radius non-overlapping with the servo's screw)
outer = 10; // adjust this number to increase the outer radius
screw = 1;

module mounts(screw, inner, outer){
    // module for screw mounts
    union(){
        union(){
            union(){
                translate([inner,0,-2]) cylinder(outer, screw, screw);
                translate([-inner,0,-2]) cylinder(outer, screw, screw);
            }
            translate([0,inner,-2]) cylinder(outer, screw, screw);
        }
        translate([0,-inner,-2]) cylinder(outer, screw, screw);
    }
}


module disc(inner, outer){
    difference(){
        cylinder(w, outer, outer);
        cylinder(w, inner/2, inner/2);
    }
}

module pully(inner, outer, r, w){
    difference(){
        difference(){
            rotate_extrude(convexity = 10) 
                translate([outer + 2, w/2, 0]) 
                    circle(r);
            rotate_extrude(convexity = 10) 
                translate([outer + (inner/2), w/2, 0]) 
                    circle(r);
        }
        // string hanging point
        translate([outer+0.5, 0, 0]) cylinder(2*w, screw/2, screw/2); 
    }
}

difference(){
    union(){
        pully(inner, outer, w/2, w);
        disc(inner, outer);
    }
    mounts(screw, inner, outer);
}


Other servo accessories

https://studio.cse.chalmers.se/mediawiki/index.php?title=Servo_accessories