ROBOTIS-GIT / open_manipulator

OpenManipulator for controlling in Gazebo and Moveit with ROS
http://emanual.robotis.com/docs/en/platform/openmanipulator/
Apache License 2.0
325 stars 146 forks source link

Unable to initialize the manipulator #211

Open cybernetchi opened 3 years ago

cybernetchi commented 3 years ago

Running Ubuntu 18.04.05 on vmware ROS2 Dashing

Hi I am a totally beginner of dynamixels and ros2 I have a couple of XM430-W210-R, trying to build my own robot arm with the OpenManipulator packages I have installed the ros2 dashing and the openManipuatorX packages but failed to start the controller:

$ ros2 launch open_manipulator_x_controller open_manipulator_x_controller.launch.py [INFO] [launch]: All log files can be found below /home/cybernetchi/.ros/log/2021-06-14-15-24-01-350158-ubuntu-25180 [INFO] [launch]: Default logging verbosity is set to INFO [INFO] [open_manipulator_x_controller-1]: process started with pid [25190] [ERROR] [open_manipulator_x_controller-1]: process has died [pid 25190, exit code -11, cmd '/home/cybernetchi/colcon_ws/install/open_manipulator_x_controller/lib/open_manipulator_x_controller/open_manipulator_x_controller /dev/ttyUSB0 1000000 __node:=open_manipulator_x_controller __params:=/home/cybernetchi/colcon_ws/install/open_manipulator_x_controller/share/open_manipulator_x_controller/param/open_manipulator_x_controller_params.yaml'].

I try to connect to the servos with the Dynmixel Wizard 2.0, they work fine. and I also tested with the read_write_node example, they also work fine. Any help will be appreciated! THX

ROBOTIS-Will commented 3 years ago

Hi @cybernetchi

It is recommended not to run on a virtual machine as it makes difficult to find the problem.

Have you configured your DYNAMIXEL baudrate to 1000000 bps? Also, make sure that your U2D2 is assigned to the /dev/ttyUSB0.

In order to run the OpenMANIPULATOR-X package, you need 5 XM430-W210 DYNAMIXEL modules.

cybernetchi commented 3 years ago

Hi @ROBOTIS-Will

Thank you for answering. I figured it was my IDs are not matching.

Where should I configure my Dynamixel ID?

In the documentation it says I should change IDs in open_manipulator_x/open_manipulator_x_libs/src/open_manipulator_x.cpp

but I found that I should change it in open_manipulator_x/open_manipulator_x_libs/include/open_manipulator_x.hpp

and how about the baudrate and the usb input? where should I configure them?

Also, will the documentation update the 'Perception' part for ROS2 soon?

Thank you for the patience!

ROBOTIS-Will commented 3 years ago

Hi,

The serial port and baudrate are defined as below at controller launch. https://github.com/ROBOTIS-GIT/open_manipulator/blob/ros2/open_manipulator_x_controller/launch/open_manipulator_x_controller.launch.py#L31

The very basic features to operate the manipulator will be updated first, then other examples or applications (such as perceptions) might be scheduled for the update based on users feedback and internal review. Thank you.