USA
Asked — Edited

Sudo'S Guide To Dynamixels

PLEASE NOTE: THIS GUIDE IS OUTDATED. BADLY. (remind me later to fix this and spiff it up a bit, please)

So, you finally have your EZ-B v4. You love it already, and you're ready to hook this baby up to some sort of Dynamixel powered creation. You go to plug everything in, and - wait. You have no idea how to set those Dynamixels up.

Well, I do, and I'll show you how.

SECTION 1: GETTING TO KNOW DYNAMIXELS

User-inserted image

Dynamixels are intelligent servos that can track not only position, but temperature, speed, and load. The servo can automagically shut itself of incase of a failure. These servos are also incredibly strong. But there's one feature in particular that is useful, but at the same time a little hard to wrap your head around. In this section, we will cover daisy chaining and other features of the AX-12A Dynamixel; however, most of the servos in the Dynamixel family work exactly alike, so this guide can help you with most models.

User-inserted image

On the back of all of your Dynamixels, you will notice a couple things. A place for a bolt, a light, two wire ports, and the ID. Lets go over all of them so you know what they do:

Light - Blinks once when turning on. If the light is flashing, there is a failure of some sort.

Screw hole - Allows you to attach the Dynamixel to a bracket.

Wire ports - Allows you to connect to other Dynamixels, in a long strand of servos, both to and from other Dynamixels. This means both ports work the same way, which means it doesn't matter which side is plugged in. (see image below)

ID - What the EZ-B and ARC address the Dynamixel as.

User-inserted image

PART 2: CONNECTING YOUR DYNAMIXELS TO THE EZ-B

All Dynamixels must plug into port D5 in order to properly work. This means that all of your Dynamixels must plug into one port. If you have more than one strand of connectable Dynamixels, you will have to use a Dynamixel splitter hub, like this one here:

User-inserted image

You can either run a cable to the EZ-B via a power base or via the powered splitter. I advise that you use only one, as using both at once can brown out the EZ-B.

Q: So, now that that's done, what power supply do I use? Mains or a battery pack?

User-inserted image

A: Both will work just fine. Just make sure you have an adequate power supply at around 10v.

"But wait!" you scream. "Dynamixels can run at 9v-12v! Why 10v?"

Because voltage is gradually lost over time depending on how many servos you're running at once, as well as when the EZ-B is powered on. The more servos you have, the higher you should up your voltage to get a steady 10v overall.

So, if you have power running to the EZ-B, Dynamixels set up to port D5 (as well as the optional splitter) you should have something resembling this:

User-inserted image

Now that you're powered on, lets move into ARC and get your Dynamixels running.

PART 3: OPERATING THE DYNAMIXELS WITH ARC

Connect to your EZ-B as usual (We won't be covering connections in this guide). Bring up a servo control panel and go to the servo configuration screen as shown below.

User-inserted image

Click the Dynamixel box and scroll down until you see the ID of the Dynamixel you want to move (the ID on the back of the servo). In this demonstration, we'll be selecting Dynamixel AX18.

User-inserted image

Select it and save the configuration. Congrats, you just set up your first Dynamixel in ARC! It should operate just like a normal servo. This applies to all servo control functions.

PART 4 (EXTRA): ASSIGNING A NEW ID TO BLANK SERVOS

When you buy a Dynamixel that doesn't come in the kit, the ID sticker will sometimes be blank, which means it hasn't be assigned a "real" ID. However, a tool in ARC can give Dynamixels a new ID.

First, open up the Dynamixel Config. control in ARC. You should see something similar to this:

User-inserted image

All blank servos are assigned ID 1. If you have a dynamixel with the ID 1 already, remove it before you proceed. Simply choose the new ID you want (in this case, AX18) and press execute. ARC will assign it a new ID. That's it, you're done! You can also write the ID on the blank tag if so desired.

GUIDE LAST UPDATED: 12/9/2014


ARC Pro

Upgrade to ARC Pro

Unleash your creativity with the power of easy robot programming using Synthiam ARC Pro

#65  

Here is the control table for the AX-12 servos.DynamixelControlTable.pdf

I have moved on to another system to control my AX-12 servos using python. Without a proper working UART the EZ B is no use to me.

Its really too bad because it had a lot of potential.

Best of luck

#66  

I'm also starting to get tired of the major problems that ARC has with dynamixels. I mean, its cool that they're working on their own bots, but full dynamixel support was promised and as you can see the only "support" dynamixel users get is the "it'll be out in a week" nonsense. It would be nice to get a actual timeframe of the fix, since right now my bot is basically dead in the water. I made this guide in preparation for a supposed fix but that's obviously not coming soon. I waited a year just for the controller with my robot built just to recieve a product that doesnt work like it should have. I'm looking into a different controller since I'd really like to get Shogun up and running.

@mtibera

What controller are you using? I'm trying to find some good options

PRO
Belgium
#67  

oldrobotbuilder.

ive seen the traith locker.you may never use that.goodluck .

#68  

Just to clarify my earlier post -

I think EZ-Robot is a great company, it just doesn't work for me right now:)

#69  

I also need to use the UART for my projects... I am sure DJ is working on the UART issues... I am also sure the list of changes he wants/needs to make is still quite long...

#70  

Its going to be a major rewrite for him. Basically he has created his own scripting language to control the EZ B. So its easier for novices to write code without having to learn C, C++ or C#. Its what python is , but the difference is DJ has had to do this all by himself, python script is all open source and has taken years to work out the bugs.

If he has made an error anywhere in his code he might have to start from scratch. A major undertaking for one individual.

For myself I picked up an HP Stream 8 tablet that runs Windows . Using all python code I can contol my Dynamixels servos and receive data from my analog sensors via arduino using the same data bus system that controls the servos.

I have opencv installed for vision, motion detection and color tracking. At least I can experiment without being frustrated with communication issues.

Ez-B has some real potential for serious hackers but if he can't get the UART working properly it will sadly just be a remote controlled toy.

To tell difference between a real robot system and a remote controlled toy look for " the Wizard behind the curtain ".

If Toto finds a techy behind the curtain on a laptop, android or I-pad you have a remote controlled toy not a True Robot.

#71  

I am very upset that DJ would put out a product that has such great potential but major, destructive flaws.

If you use the EZ Robotics software with AX12-A servos THEY WILL BE BRICKED!

This has caused me a lot of time and money.

I got the EZ-B4 to drive the AX-12As on my 'bot but the performance was poor and erratic. I decided to go back to the CM-530 for primary control and use the UART to interface between EZ B4 and CM-530. It was when I went back I found my AX-12s BRICKED. I thought that my CM-530 was damaged when I was setting it up to talk to the EZ-B4 via the UART. I ordered and received a replacement. When the replacement got here I plugged in the servo chain to see: [ID-001] UNKNOWN : : [ID-016] UNKNOWN

I got in touch with Kyle of TrossenRobotics (where I bought the 'bot kit) and we exchanged troubleshooting tips and results for several days. @nomad18.08 suggested I should try the USB2Dynamixel to reprogram each servo. Kyle thought that was a good idea too. I ordered the device. Just after the order had been placed @mtiberia posted the script that UNBRICKED all of the servos.

So -- with the help from: @Sudo @nomad18.08 and especially @mtiberia I have been able to restore my bot to where it was 2 months ago. I now find out that the EZ B4 UART (my backup solution) doesn't work either.

I must echo the thoughts of @Sudo, @mtiberia, and @Richard R and conclude that:

"I have moved on to another system to control my AX-12 servos using python. Without a proper working UART the EZ B is no use to me. Its really too bad because it had a lot of potential."

"full dynamixel support was promised and as you can see the only "support" dynamixel users get is the "it'll be out in a week" nonsense. . ."

"I think EZ-Robot is a great company, it just doesn't work for me right now"

"I also need to use the UART for my projects"

I think DJ owes us all an explanation.

PRO
Belgium
#72  

oldrobotbilder

sorry to hear this.but whit the cm510 they all hopefully restore. i know the feeling.cause due to other person i lost 10 servo's.