NOTE : The following instruction has been tested on
Ubuntu 16.04 and
ROS Kinetic Kame.
WARNING : If you would like to control OpenMANIPULATOR-X on OpenCR (Embedded board) instead of using ROS, please set it up as described in OpenCR Setup.
Download and install
Ubuntu 16.04 on your PC.
If you need more help with installing Ubuntu, check out the step-by-step guide from the link below.
The following script will allow you to simplify the ROS installation procedure. Run the following commands in a terminal window. The terminal application can be found with the Ubuntu search icon on the top left corner of the screen. The shortcut key to open a terminal is
t. After installing ROS, please reboot PC.
$ sudo apt-get update $ sudo apt-get upgrade $ wget https://raw.githubusercontent.com/ROBOTIS-GIT/robotis_tools/master/install_ros_kinetic.sh && chmod 755 ./install_ros_kinetic.sh && bash ./install_ros_kinetic.sh
NOTE: In order to check which packages are installed, please check this link out. install_ros_kinetic.sh
If you prefer manual installation, please follow the link below.
Install dependent packages for OpenMANIPULATOR-X. Run the following commands in a terminal window.
NOTE: The terminal application can be found with the Ubuntu search icon on the top left corner of the screen. Shortcut key for terminal is
$ sudo apt-get install ros-kinetic-ros-controllers ros-kinetic-gazebo* ros-kinetic-moveit* ros-kinetic-industrial-core
$ cd ~/catkin_ws/src/ $ git clone https://github.com/ROBOTIS-GIT/DynamixelSDK.git $ git clone https://github.com/ROBOTIS-GIT/dynamixel-workbench.git $ git clone https://github.com/ROBOTIS-GIT/dynamixel-workbench-msgs.git $ git clone https://github.com/ROBOTIS-GIT/open_manipulator.git $ git clone https://github.com/ROBOTIS-GIT/open_manipulator_msgs.git $ git clone https://github.com/ROBOTIS-GIT/open_manipulator_simulations.git $ git clone https://github.com/ROBOTIS-GIT/robotis_manipulator.git $ cd ~/catkin_ws && catkin_make
If the catkin_make command has been completed without any errors, all the preparations for using OpenMANIPULATOR-X are done.
Connect micro USB (connected to PC), DYNAMIXEL’s(OpenMANIPULATOR-X), and 12V Power to U2D2 and U2D2 power hub board as shown below.
USB Latency Timer Setting
In linux(ubuntu) environment, USB latency time is set to 16ms by default. Follow the steps below to set the communication latency time to the lowest value (1ms) between DYNAMIXEL’s and PC connected via USB.
Open a terminal window and run the roscore.
With the roscore running, open a new terminal window and enter the following command to set usb latency time.
$ rosrun open_manipulator_controller create_udev_rules
TIP: This entered command set USB latency timer to 1 ms. If you would like to see the setting, run the following command in a terminal.
This section explains how to set up OpenCR as a communication board between ROS Packages of PC and DYNAMIXEL’s of OpenMANIPULATOR-X.
If you want to operate OpenMANIPULATOR-X on embedded system (OpenCR) without ROS, please refer OpenCR Setup.
Connect micro USB (connected to PC), Dynamixel’s(OpenMANIPULATOR-X), and 12V Power to OpenCR as shown below.
NOTE : Please refer the detailed description of OpenCR.
Upload Source code
Please refer to the following pages to install the Arduino IDE and enable the OpenCR board in the Arduino IDE environment.
After completing all the above settings, open the Arduino IDE and open
usb to dxl example source code as shown below.
usb_to_dxl on Arduino IDE for OpenCR.
usb to dxl example source to OpenCR.
When the upload is completed, the following comments are displayed in the log window.
If it is shown different comments than this, try uploading again. Refer to the OpenCR for details.
TIP: If an error of
cmd_read_board_name fail: 0xF020 occurs constantly during upload, please refer to OpenCR e-manual to enter the firmware recovery mode and upload the source code again after entering mode.