ROBOTIS-GIT / ROBOTIS-MANIPULATOR-H

ROS packages for the ROBOTIS MANIPULATOR-H
http://emanual.robotis.com/docs/en/platform/manipulator_h/introduction/
Apache License 2.0
10 stars 12 forks source link

Cannot run Manipulator-H with RH-P12-RN #35

Closed rob-pointcloud closed 4 years ago

rob-pointcloud commented 4 years ago

I have purchased both the Manipulator-H and RH-P12-RH from Robotis, and am using ROS to connect with each device. I am able to operate both devices successfully when I do so independently, however, when I try to bring them up together I receive error messages.

Here is what I am running:

1) roslaunch manipulator_h_bringup robotis_manipulator.launch {runs successfully} 2) [another terminal], sudo bash and then roslaunch manipulator_h_manager manipulator_h_manager.launch {runs successfully} 3) [another terminal] roslaunch rh_p12_rn_manager rh_p12_rn_manager.launch }{see the following error messages, and attached log files}

Note: if I do not startup the Manipulator H (skip steps #1 and #2 above) the gripper loads without error and I am able to operate successfully.

Also, if I reverse the order, bringing up the RH-P12-RN first, I still get errors (in the manipulator manager load)

Can you please help me resolve this error?

Thanks,

Rob image1 logs.zip

ROBOTIS-David commented 4 years ago

We suspect a port conflict as the 2 robot access to the same port /dev/tty0.

To resolve the conflict, use either of solutions.

1 ) Use two U2D2, USB communication converter, to connect to the gripper and manipulator, when running 2 separate program (Gripper Manager and Manipulator manager)

2 ) It is possible to operate 2 separate packages with just a one U2D2. Add RH-P12-RN module to a source code of MANIPULATOR-H based on ROBOTIS Framework,

Please refer to the associated links below, which helps the partner understand the details of solution.

Related Documents :

Creating Module: http://emanual.robotis.com/docs/en/software/robotis_framework_packages/tutorials/#creating-new-motion-module

RH-P12-RN base_module.cpp : https://github.com/ROBOTIS-GIT/RH-P12-RN/blob/master/rh_p12_rn_base_module/src/base_module.cpp

MANIPULATOR-H base_module.cpp : https://github.com/ROBOTIS-GIT/ROBOTIS-MANIPULATOR-H/blob/master/manipulator_h_base_module/src/base_module.cpp

ROBOTIS Framework Package Tutorial : http://emanual.robotis.com/docs/en/software/robotis_framework_packages/#robotis-framework-packages

U2D2 : http://emanual.robotis.com/docs/en/parts/interface/u2d2/

Thank you.

rob-pointcloud commented 4 years ago

Hello Robotis-David, thank you for your reply.

You note that there may be a port conflict between the two manager applications. Has anyone at Robotis tested this to see if you can reproduce the issue I am having, if not can someone please do so? I can see that Robotis has operated the gripper on the manipulator-H (https://www.youtube.com/watch?v=G2_LB14jfMo&t=51s). Was different controller software created to make this possible, if so can you provide me with that software?

It is difficult for me to believe that the basic controller software for the RH-P12-RN was designed so it would be incompatible to use with the Manipulator-H, since it is hard to imagine another use case for using the RH-P12-RH.

You mention that a fix could be to use two U2D2 connectors. I am using the gripper on the end of the Manipulator (I can't imagine another use case), can you clarify how this can be done with the standard Manipulator H and RH-P12-RH wiring?

If you are able to reproduce this for the Manipulator-H, can you also reproduce for the Open Manipulator? Or have you fixed this for the Open Manipulator?

ROBOTIS-David commented 4 years ago

Hi, I am deeply sorry for your inconvenience.

We are afraid that we provide or reproduce example codes of Manipulator-H with RH-P12-RN because the product has been discontinued. and the software of controlling the gripper and the manipulator are supposed to be used separately aside from OpenMANIPULATOR-PRO using RH-P12-RN(A).

However, fortunately, you can use Manipulator-H as OpenManipulator-PRO, if you proceed to (A) firmware version recovery–it is possible for you to use the gripper and manipulator at the same time without the port conflict.

OpenManipulator-PRO is composed of DYNAMIXEL PRO+ Series and it provides Graphic User Interface (GUI)

The steps are as following: Note : Please read DYNAMIXWEL Wizard document

  1. Recover the firmware of Manipulator-H and RH-P12-RN to (A) firmware version using DYNAMIXEL Wizard. NOTE : Make sure that you are recovering the proper model of DYNAMIXEL from joints: Manipulator-H Specification
  2. After the firmware recovery, follow the manual: OpenMANIPULATOR-PRO.
  3. Use the GUI program for operating your robot: Operation

Thank you.

rob-pointcloud commented 4 years ago

Thank you for this information, as long as I am able to use the Manipulator-H programmatically via ROS with the Open-Manipulator-H software that will work fine.

When proceeding with the Firmware recovery, can I keep the Manipulator wired together? I am hoping I do not have to remove all the wiring and connect each actuator prior to the firmware recovery, as this will be quite difficult. You can see below that each actuator is using separate IDs

ezgif com-gif-maker

ROBOTIS-David commented 4 years ago

Hi, we regret to inform that each wires should be disconnected before the firmware recovery. DYNAMIXEL Wizard 2.0 does not support multiple-firmware recovery (or upgrade). So, when you scan models using DYNAMIXEL Wizard 2.0, the program should detect just one actuator.

Thank you.

rob-pointcloud commented 4 years ago

Hi, I realized I never closed this one out. Having to disassemble the manipulator to reset the firmware was a real pain, but I was able to get my Manipulator-H to work with the Manipulator-Pro firmware update described above.

ROBOTIS-David commented 4 years ago

@Pointcloud-Rob

Yes, That was pain for doing it, but I am glad that the provided solutions works for your robot.

Have a great day :)