- The test is done on
ROS 2 Dashing Diadematainstalled in
- Make sure ROS dependencies are installed before performing these instructions. - Install ROS 2 Packages
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 18.04 on your PC. Tutoral guide will be helpful for you to install Ubuntu Desktop.
As OpenMANIPULATOR-P operates on Robot Operating System(ROS), it requies to intall
ROS 2 Dashing Diademata.
The following script will allow you to simplify the ROS 2 installation procedure. Run the following commands in a terminal window.
After installing ROS 2, please reboot PC.
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 update && sudo apt upgrade $ wget https://raw.githubusercontent.com/ROBOTIS-GIT/open_manipulator/ros2/install_ros_dashing.sh && chmod 755 ./install_ros_dashing.sh && bash ./install_ros_dashing.sh
NOTE: In order to check which packages are installed, please check this link out. install_ros_dashing.sh
If you prefer a manual installation，following link guides you how to install ROS 2 on your PC
Install dependent packages for OpenMANIPULATOR-X. Run the following commands in a terminal window.
$ sudo apt install ros-dashing-python* ros-dashing-rqt*
$ cd ~/robotis_ws/src/ $ git clone -b ros2 https://github.com/ROBOTIS-GIT/DynamixelSDK.git $ git clone -b ros2 https://github.com/ROBOTIS-GIT/dynamixel-workbench.git $ git clone -b ros2 https://github.com/ROBOTIS-GIT/open_manipulator.git $ git clone -b ros2 https://github.com/ROBOTIS-GIT/open_manipulator_msgs.git $ git clone -b ros2 https://github.com/ROBOTIS-GIT/open_manipulator_dependencies.git $ git clone -b ros2 https://github.com/ROBOTIS-GIT/robotis_manipulator.git $ cd ~/robotis_ws && colcon build --symlink-install
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 platform) 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 following command to set usb latency time.
$ ros2 run open_manipulator_x_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(OpenMANIPULATOR-X), and 12V Power to OpenCR as shown below.
NOTE : Please refer to 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.