AX-12+ Smart Robot Arm Overview

AX-12 Smart Robotic Arm
AX-12 Smart Robotic Arm

The all aluminum AX-12+ Smart Robotic Arm is an affordable feature rich PUMA designed articulated robotic arm. The major advantage of the AX-12+ Robotic Arm over RC style arms is the ability to shut down in the event of overheating, overloading, or out-of-range voltage levels. AX-12s can also be queried in real time to report position, load, speed, voltage, and temperature.

CrustCrawler robotic manipulators can be found at many organizations from pharmaceuticals to research facilities to schools and universities. Making an investment in a robotic arm can be a daunting and expensive task.  We hope that the information presented here can help you make an informed decision.  If you have any questions please visit our community forums.  You’ll find a wealth of information and very knowledgeable folks ready to help

Aluminum Bracket System (Rigid Links)

Steel Ball Bearing Rotating Base
Steel Ball Bearing Rotating Base

The AX-12+ Smart Robotic Arm is manufactured in the USA from precision cut .063 gauge 5052 brushed aluminum. Each bracket has a scratch resistant type II anodized finish in gun barrel gray. Joint brackets contain integrated PEM nuts for easy assembly and disassembly. The planar arm assembly is attached to a turntable base containing 4 carbon steel ball bearings each with a 20lbs load capacity.

Positioning and Response System

The robotic arm positioning system encompasses 5 revolute joints AX-12 Bus Connections

AX-12 Bus Connections
interconnected through a 1M bps (1,000,000 bits per second) multi-drop ½ duplex serial bus (8 bit, 1 stop bit, and no parity). Revolute joints are made up of either one or two Dynamixel AX-12 servos. The AX-12 smart robotic arm uses a dual AX-12 drive system in the shoulder and elbow joints which bear the heaviest load.

The serial bus AX-12 Network

AX-12 Network
bus consists of ground, power, and signal lines which pass through each of the 7 AX-12 to form a multi-drop serial bus or daisy chain.

Dynamixel Communication Protocol

The Dynamixel communication protocol AX-12 Packets

AX-12 Packets
is an openly published instruction/status packet protocol. Instruction packets are sent from a controller to the Dynamixel network. Response packets sent from the Dynamixel network back to the controller. Since every Dynamixel AX-12 on the network is given a unique ID, only the AX-12 addressed in the instruction packet will execute the instruction. Instructions can also be broadcast to all AX-12s on the network. The Dynamixel communication protocol can be found in the Dynamixel AX-12+ manual starting on page 9.

Instruction Packet Examples

Light the LED on AX-12 ID 6
0xFF 0xFF 0x06 0x04 0x03 0x19 0x01 0xD8


SyncWrite instruction that places the arm in the rest position
0xFF 0xFF 0xFE 0x27 0x83 0x1E 0x04 0x01 0x43 0x01 0x64 0x00 0x02 0x61 0x00 0x64 0x00 0x03 0x94 0x03 0x64 0x00 0x04 0x9A 0x03 0x64 0x00 0x05 0x62 0x00 0x64 0x00 0x06 0x0E 0x02 0x64 0x00 0x07 0x3E 0x02 0x64 0x00 0xD2

Controller Options

CrustCrawler provides several controller options for use with the AX-12 Smart Arm; USB2Dynamixel, Propeller, and CM-5.

The USB2Dynamixel USB2Dynamixel

USB2Dynamixel
is CrustCrawler's most popular Dynamixel bus interface device. The USB2Dynamixel connects your USB port directly to the Dynamixel AX-12 serial network. Software running on a computer sends instruction packets to the USB2Dynamixel. The USB2Dynamixel forwards the instruction to the Dynamixel network. Response packets are received through the USB2Dynamixel controller and back to the computer. The USB2Dynamixel comes with a USB extension cable. A separate 7-10V 5A source is required to power the AX-12 network!

The Parallax Propeller Demo Board Propeller Demo Board

Propeller Demo Board
functions much like the USB2Dynamixel once loaded with the DynaBus serial driver (free download). A computer running software can send and receive Dynamixel network packets through the Propeller. The difference between the Propeller and USB2Dyanmixel is the Propeller can be easily programmed to accept instructions at 2400 baud to 1M bps and pass those instructions to the Dynamixel network at 1M bps. That means any TTL serial device can be used to send instructions to the robot arm through the Propeller. The Propeller contains 8 parallel processors called COGS, there is no compiler-driven or operating system-driven splitting of tasks among multiple cogs. A shared system clock keeps each cog on the same time reference, allowing for true deterministic timing and synchronization. Each COG can execute code at 20 MIPS or 160 MIPS total for the Propeller. DynaBus uses one COG, the other 7 COGs can be busy doing other tasks like processing sensor data in real-time or buffering an input stream from a wireless device. The free DynaBus Embedded download contains open source drivers, an instruction manual, and a debug tool. The Propeller option comes with a USB cable. A separate 7-10V 5A power source is required to power the AX-12 network!

The CM-5 CM-5

CM-5
option is designed more for novice users. This CM-5 option comes with comprehensive software (Bioloid) that makes controlling the arm very easy. The motion editor has a move and teach feature where the arm can be positioned manually and saved for later play back. The Behavior Programmer takes the motion editor one step further allowing playback of one or many saved motions files. The CM-5 option comes with a serial cable, battery pack, and 12V power supply.

Open Source Software Options

CrustCrawler provides open source PC software options for communicating with the Propeller or USB2Dynamixel controllers. More information can be found on the resource page.

The CrustCrawler Dynamixel API is an open source .NET library designed to send and receive asynchronous communication packets to and from the Propeller or USB2Dynamixel controller.The API provides easy access to Dynamixel commands and control table (registers). The API can handle status packet errors which are reported as exceptions. The API comes with a Unit Test form that demonstrates how to use the API and invoke its methods.

Forest Moon C# Source Code Scott Ferguson of forestmoon.com created several open source AX-12 libraries and a Control your AX-12 Smart Arm with a PC joystick Demo. Scott´s software is very comprehensive and it comes with excellent help files. .NET programmers will really appreciate the time put into these classes.

The USB2Dynamixel SDK contains libraries and example source code for VB.NET, C#, LabVIEW, MATLAB, JAVA, C/C++, and python. Download it today, heck it's free!