Plugins / ezrobot / Dynamixel

Dynamixel

Connect and control Robotis Dynamixel Servos to the EZ-B v4. This open-source plugin converts the Virtual Servo ports on the EZ-B v4 (v0-v99) to control Robotis Dynamixel Servos.

Register   Download Plugin

This plugin is version 16, was last modified on 9/10/2017, and is 330,643 Bytes. The author is ezrobot.

Requirements

This plugin requires EZ-Builder for Microsoft Windows PC.

  Get EZ-Builder for Windows

Plugin Details

Connect and control Robotis Dynamixel Servos to the EZ-B v4. This open-source plugin converts the Virtual Servo ports on the EZ-B v4 (v0-v99) to control Robotis Dynamixel Servos.

Port
There are two options for connecting the Dynamixel servos. The default option for the EZ-B v4 (not IoTiny) is UART 1 (port D5). The second option is low speed serial of any digital port for both EZ-B v4 and IoTiny. To reference the pins of the EZ-B, consult the tutorial for the EZ-B by clicking here.

Voltage
Most Dynamixel servo documentation states the operating voltage is between 9-12 volts, with optimal being 11 volts. Check the documentation for your dynamixel servo model to ensure your power source is sufficient. If you experience unusual behavior of Dynamixel servos, the first common issue is insufficient power. Symptoms will be flashing error LED's on the servos or non-operation.

Description
Dynamixel Servos are very different than regular hobby PWM servos. Firstly, they are considered much more professional due to their design which is specific for the use in robotics. Each Dynamixel Servo contains a microprocessor. The microprocessor is told what position to move the servo into over TTL at the configured baud rate.

Dynamixel v1 Protocol
The EZ-B v4 supports the use of Dynamixel Servos using the version 1.

Dynamixel v2 Protocol
The EZ-B v4 supports the use of Dynamixel Servos using the version 2.

*note: Both v1 and v2 protocol servos can be used at the same time. The configuration menu allows you to assign which protocol is used per port.

Servo ID
The Dynamixel Servos each have a unique ID. Because they are chained together through one cable, each servo must be given a unique ID. Servos with the same ID will respond to the same commands, and therefore mirror their behaviour. New Dynamixel Servos come pre-configured with the ID of 01. Servo V0 relates to dynamixel ID:0, V1 is dynamixel ID:1, v2 is dynamixel ID:2, and so on...

Using this configuration utility, you can assign new ID's to servos. You may also test the servo to ensure the ID was successful.

Servo LEDs
The LEDs on the dynamixel servo can be controlled using the EZ-Script ControlCommand(). View the Cheat Sheet when editing a script to see the available ControlCommand syntax for the Dynamixel plugin.

Electrical Wiring
User-inserted image

Source Code
Dynamixel-src.zip