ROBOTIS-GIT / open_manipulator_p

OpenManipulator-P for controlling in Gazebo and Moveit with ROS
Apache License 2.0
41 stars 21 forks source link

How to determine inertia values for open_manipulator_p #57

Closed nicolasfrick closed 3 years ago

nicolasfrick commented 3 years ago

Hi @rjshim, I'd like to simulate open_manipulator_p in Gazebo and creating a custom setup. Now, I wonder which inertia values I have to take for the links of open_manipulator_p. One of two inertia tensors in link 1-6 is commented out and the other seems to satisfy only symetric objects. I tried to check the commented inertia against the values in the specs but neither the mass, nor the origin of COG seems to match. A hint for the correct values would be great. Thank you very much!

JaehyunShim commented 3 years ago

Hi @nico358,

Thank you for your interest in our manipulator. May I ask you for what purpose you need that information in your program? You would not need it unless you are trying to torque-control the robot.

Ryan

nicolasfrick commented 3 years ago

Hi @rjshim, we want to train deep learning models in simulation and apply these to our real open_manipulator_p. I think imprecise inertia values make the pretraining useless because the learned information is not correct.

JaehyunShim commented 3 years ago

@nico358 Unfortunately, we do not have any further development plans for this product. @ROBOTIS-Will Any advice?

ROBOTIS-Will commented 3 years ago

Hi @nico358 , The mass and inertial information in the URDF doesn't seem to be reflecting the latest frame and hardware changes. I'll see if I can get an accurate data from the dev team and get back to you. Thanks!

ROBOTIS-David commented 3 years ago

Hi @nico358

Thank you for raising the issue ! The wrong information on e-Manual will be fixed ASAP :)

Have a great day.

nicolasfrick commented 3 years ago

Hi @ROBOTIS-David, @ROBOTIS-Will,

that's great! Will the values be updated in urdf files as well?

Thank you very much for your support!

@towardthesea is also joining this thread.

ROBOTIS-David commented 3 years ago

@JaehyunShim Hi Shim, The mass properties on the e-Manual has been updated.

JaehyunShim commented 3 years ago

@ROBOTIS-David Thanks :0

@nico358

As mentioned in the last comment, the inertia data is updated on our manual. Please test with it and let us know if you have more questions. However, since Dynamixels are not torque controllable actuators I do not suggest you try any sort of torque control with the inertia data. I will close this issue.

nicolasfrick commented 3 years ago

Hi @ROBOTIS-David, @rjshim, @towardthesea,

thank you very much for considering my issue! I've tried the patch (https://github.com/ROBOTIS-GIT/open_manipulator_p/pull/59) with gazebo and get the following inertia visualization: inertia

I think there are still problems with the inertia values. I've also noticed a discrepancy in the robot description of the urdf and the [specification] (https://emanual.robotis.com/docs/en/platform/openmanipulator_p/specification/#specification): Link1 in the spec refers to link2 in the urdf (all links are transposed by 1) and link6 inertia values was not updated.

Link1 (mesh): link1 Link2 (mesh): link2

JaehyunShim commented 3 years ago

@nico358

Test with this commit and let us know if it works. We haven't tested all the features of the robot with it yet so we haven't merged it.

Or, as @ROBOTIS-David said above, we uploaded the inertia data of each link on our manual. Please check on it and modify the URDF file in the description folder accordingly.

Jaehyun

nicolasfrick commented 3 years ago

@JaehyunShim

I've tested the commit and get the results seen in my comment (https://github.com/ROBOTIS-GIT/open_manipulator_p/issues/57#issuecomment-712705234). It looks like the COM origins are not derived with every link centered in a new reference frame. The COM origins therefore shift while adding up the failure in XYZ coordinates. The inertia should look something like that in Gazebo: Screenshot from 2020-10-25 15-38-45

Edit: The values in the manual correspond to them in the urdf.

Nicolas