0
$\begingroup$

Rosanswers logo

Hi,

I am on Ubuntu 16.04 LTS and ROS Kinetic. I am trying to control a Robotis Manipulator-H with MoveIt! and I have been able to do it in Gazebo (using this links: https://github.com/AS4SR/general_info/wiki/ROS-MoveIt!-and-Gazebo-Integration-(WIP) and https://github.com/eYSIP-2017/eYSIP-2017_Robotic_Arm/wiki/Interfacing-MoveIt%21-with-Gazebo), so now I am trying to do that in the real robot. I have searched a lot on how to do this but I can't really find anything... I have tried the package "dynamixel_controllers" and the tutorial in this link:

https://github.com/eYSIP-2017/eYSIP-2017_Robotic_Arm/wiki/Interfacing-Real-Robot-with-MoveIt%21

To connect the manipulator with MoveIt! but I wasn't able to do it since this tutorials uses the package "dynamixel_controllers" and it only works with Dynamixel motors and not Dynamixel PRO motors (which are the ones used bu the Manipulator-H). I also found out that I need an action server and a client server (or something like that) but since I am a newbie, I don't know how this properly works... can you guys give me any advices on how to connect the manipulator? I think this topic is a lot under documented...

Other packages that I tried but with no success: "dynamixel_workcbench" and "open_manipulator".

Thanks!, José Brito


Originally posted by znbrito on ROS Answers with karma: 95 on 2018-04-17

Post score: 0


Original comments

Comment by idrobot on 2018-06-14:
Hi Jose, Are you able to solve this issue to connect MoveIt to real Manipulator-H arm? Now, I have same problem here, but don't know how to solve. I would like to know your current situation. Thanks.

Comment by Ravi_Kanth on 2018-06-18:
Hi Jose, did u solved the problem. I'm also facing same problem but i'm using hubby HS422 servo motor, can i use dynamixel_controllers pkg for move it interface? I tried that but it is not working. Please help me..

Comment by znbrito on 2018-06-18:
Hello @idrobot and @Ravi_Kanth, yes I kinda solved the problem by adapting myself the packages from the implemented Robotis Open Manipulator. I did this by commenting the parts of the code where grips where mentioned and by adding the joints of the Robotis Manipulator-H to the following packages:

Comment by znbrito on 2018-06-18:
All in kinetic devel:

  • open_manipulator_description
  • open_manipulator_dynamixel_ctrl
  • open_manipulator_moveit
  • open_manipulator_msgs
  • open_manipulator_position_ctrl

Keep in mind that there are functions for Gazebo with parts that I didn't know hot to erase or change

Comment by znbrito on 2018-06-18:
I simply ignored them since I didn't need to used them! :)

Comment by znbrito on 2018-06-18:
To use, simply connect the manipulator to the PC via USB and type the following:

  • FIRST TERMINAL: $ sudo chmod a+rw /dev/ttyUSB0 $ roslaunch open_manipulator_dynamixel_ctrl dynamixel_controller.launch
  • SECOND TERMINAL: $ roslaunch open_manipulator_moveit open_manipulator_demo.launch

Comment by znbrito on 2018-06-18:
I had a problem still. Open manipulator has 4 joints, while the Manipulator-H has 6. The 5th and 6th joints were being read with a small offset error and I don't know why... luckily, I had another package (confidential) previously developed to read the joint values, so I used it and I now I am good!

Comment by znbrito on 2018-06-18:
Still I don't know how you would solve this problem, if you'd ever face it... one more thing, with this program you can only "plan and execute" and not "plan" and then "execute". This is because of the way the packages is developed, please see the link in me following comment

Comment by znbrito on 2018-06-18:
https://github.com/ROBOTIS-GIT/dynamixel-workbench/issues/141#issuecomment-383752996.

Best of lucks! José Brito

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

Hi :) Nice to see you again.

ROBOTIS has provided github repository for Manipulator-H (https://github.com/ROBOTIS-GIT/ROBOTIS-MANIPULATOR-H) I recommend to use this package to control it in Gazebo. Furthermore, dynamixel_controllers are not supported by ROBOTIS. This package doesn't support to Dynamixel PRO as i know.

In order to control Dynamixel PRO, you should use one of ROBOTIS official packages such as DynamiselSDK(https://github.com/ROBOTIS-GIT/DynamixelSDK), Dynamixel-Workbench(https://github.com/ROBOTIS-GIT/dynamixel-workbench) or ROBOTIS-Framework(https://github.com/ROBOTIS-GIT/ROBOTIS-Framework). Most of all, ROBOTIS-Framework is used to control Thormang3 which is assembled by Dynamixel PRO. So this package would be help you. If you have any question or issue, please visit there issue page.

Your main goal is to connect the manipulator to MoveIt!. Below steps would be help you.

  1. Make MoveIt! Package to use setup assistant (http://docs.ros.org/kinetic/api/moveit_tutorials/html/doc/setup_assistant/setup_assistant_tutorial.html)
  2. Control your Dynamixel by ROS package (https://github.com/ROBOTIS-GIT/ROBOTIS-Framework)
  3. Check which topic is to send joint position or planned path (For example "/move_group/display_planned_path")
  4. Connect path topic to joint control topic (https://github.com/ROBOTIS-GIT/open_manipulator/blob/master/open_manipulator_position_ctrl/src/position_controller.cpp#L414)

Good luck!


Originally posted by Darby Lim with karma: 811 on 2018-04-17

This answer was ACCEPTED on the original site

Post score: 1


Original comments

Comment by znbrito on 2018-04-18:
Hi, Darby, thanks for your response. Step one 1 I already did when controlling the manipulator in Gazebo. In step 2, I don't understand hat do you mean by controlling my Dynamixel by ROS package. Is this the package that should allow me to subscribe and publish joint states?

Comment by znbrito on 2018-04-18:
In step 3 and 4, the link that you sent me has a lot of gripper configurations and is not properly set to my manipulator... how can I properly configure it? And what launch files should I use? Your answer was a bit vague in that sense...

Comment by znbrito on 2018-04-18:
To make my manipulator work with Gazebo, I had to configure a lot of files and you didn't point my almost no one

Comment by Darby Lim on 2018-04-18:
Yes, you can control Dynamixel by topic to use that packages. When you pressed plan and execute button in Rviz, you can get a planned path through "/move_group/display_planned_path" topic. Subscribe it and publish to another topic related to control Dynamixel.

Comment by znbrito on 2018-04-18:
Hmm could you send me an example please? I am still very confused... In rviz gui for moveit the bluetooth sphere doesn't appear in the end effector, and that's why I know that something os wrong

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.