You are viewing an older revision! See the latest version
Dynamixel AX12 Servo
Dynamixel AX-12+ Servo¶
This page is intended as a write-up / tear-down of the the Dynamixel AX-12+ servo motor that was used in the http://mbed.org/etch-a-sketch demo at Embedded Systems Conference.
Introduction¶
This little beast is a highly featured piece of kit. It's not the cheapest servo money can buy, but it is certainly very versatile, and delivers a serious bang for your buck.

The headline features are:
- 55g
- 7v - 10v supply
- 900mA maximum current
- 16.5kg/cm Holding torque
- 300 degree or continuous rotation
- Half duplex serial (8-N-1) interface, up to 1Mbps
- Feedback for position, temperature, load, voltage etc
It is really mechanically sound too, and comes with a mounting plate, a bracket to fit to the spindle and plenty of nuts and bolts to bolt it all together. It has been designed so that one servo canbe mounted on the spindle of another so you can do multple degrees of freedom just by mounting them on eachother.
As ever the first step is simply to establish communication with the AX-12. Once we are reliably reading and writing data to the the AX-12 we can think about an API that makes it simple to control.
Hello World!¶

#include "mbed.h"
#include "AX12.h"
int main() {
AX12 myax12 (p9, p10, 1);
while (1) {
myax12.SetGoal(60); // go to 60 degrees
wait (2.0);
myax12.SetGoal(240); // go to 240 degrees
wait (2.0);
}
}