Dynamixel XL330 cogs: Difference between revisions

From IxD Studio
Jump to navigation Jump to search
No edit summary
No edit summary
 
(4 intermediate revisions by the same user not shown)
Line 1: Line 1:
Download this OpenSCAD Library: https://github.com/chrisspen/gears
Download this OpenSCAD Library: https://github.com/chrisspen/gears
- How to install Libraries in OpenSCAD: https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Libraries
- How to install Libraries in OpenSCAD: https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Libraries
XL 330 manual: https://emanual.robotis.com/docs/en/dxl/x/xl330-m288/


Example cog for XL330:
Example cog for XL330:
<pre>
<pre>
use <gears/gears.scad>;
use <gears/gears.scad>;
// or: include <gears/gears.scad>
// or include --> include <gears/gears.scad>;


$fn=32;
$fn=32;
//spur_gear(modul=2, tooth_number=20, width=10, bore=10);
 
w = 5.3; // cog thickness  
w = 5.3; // cog thickness -- good size for the large screws included in the XL330
teeth = 24;
teeth = 24; // adjust number of teeth based on design
innner = 6;
inner = 6; // fixed number
outer = 10;
outer = 10; // adjust this number to the edge of the teeth so that it 'hides' the holes
screw = 1;
screw = 1;


difference(){
module mounts(screw, inner, outer){
     difference(){
     // module for screw mounts
         difference(){
    union(){
             difference(){
         union(){
                union(){
             union(){
                    difference(){
                 translate([inner,0,-2]) cylinder(outer, screw, screw);
                        cylinder(w, outer, outer);
                 translate([-inner,0,-2]) cylinder(outer, screw, screw);
                        cylinder(w, 3, 3);
                    }
                    spur_gear(modul=1, tooth_number=teeth, width=w, bore=innner);
                }
                 translate([innner,0,-2]) cylinder(outer, screw, screw);
                 }
            translate([-innner,0,-2]) cylinder(outer, screw, screw);
             }
             }
        translate([0,innner,-2]) cylinder(outer, screw, screw);
            translate([0,inner,-2]) cylinder(outer, screw, screw);
         }
         }
    translate([0,-innner,-2]) cylinder(outer, screw, screw);
        translate([0,-inner,-2]) cylinder(outer, screw, screw);
     }
     }
}
module disc(inner, outer){
    // disc to 'cover' the gear library holes in your design
    difference(){
        cylinder(w, outer, outer);
        cylinder(w, inner/2, inner/2);
    }
}
difference(){
    union(){
        spur_gear(modul=1, tooth_number=teeth, width=w, bore=inner);
        disc(inner, outer);
    }
    mounts(screw, inner, outer);
}
</pre>
</pre>


[[File:XL330-cog.png|thumb]]
[[File:XL330-cog.png|thumb]]
== Other XL330 servo accessories ==
https://studio.cse.chalmers.se/mediawiki/index.php?title=Servo_accessories

Latest revision as of 12:26, 7 May 2026

Download this OpenSCAD Library: https://github.com/chrisspen/gears

- How to install Libraries in OpenSCAD: https://en.wikibooks.org/wiki/OpenSCAD_User_Manual/Libraries

XL 330 manual: https://emanual.robotis.com/docs/en/dxl/x/xl330-m288/

Example cog for XL330:

use <gears/gears.scad>;
// or include --> include <gears/gears.scad>;

$fn=32;

w = 5.3; // cog thickness -- good size for the large screws included in the XL330
teeth = 24; // adjust number of teeth based on design
inner = 6; // fixed number
outer = 10; // adjust this number to the edge of the teeth so that it 'hides' the holes
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){
    // disc to 'cover' the gear library holes in your design
    difference(){
        cylinder(w, outer, outer);
        cylinder(w, inner/2, inner/2);
    }
}

difference(){
    union(){
        spur_gear(modul=1, tooth_number=teeth, width=w, bore=inner);
        disc(inner, outer);
    }
    mounts(screw, inner, outer);
}


Other XL330 servo accessories

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