ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

How to create a URDF file for pybullet from stl files or otherwise?

asked 2020-11-29 09:34:58 -0500

kfa22 gravatar image

I am trying to build a model of a real robot to train in pybullet (Bittle/Nybble by Petoi). The maker has not published any files, but on Thingiverse I can find .stl files. What would be the best way to create a URDF model?

Approaches tried:

  • recreate each component in Fusion 360. This takes a lot of time.
  • import .stl files to Fusion 360, connect via joints and export to URDF via: https://github.com/yanshil/Fusion2PyB.... Disadvantage is that .stl files cannot be joined as they are not Fusion files, so they need to be converted to BRep first, which is a hassle.
  • Create the URDF file by hand in xml. Might be the easiest, as long as I can get accurate inertia values for each component. However, this seems impossible from .stl files (Properties shows nothing helpful in Fusion).

Does anyone know a better solution? I feel I am missing something obvious here, surely Roboticists create URDF files all the time, using .stl files..

edit retag flag offensive close merge delete

Comments

I would also like to ask you to not cross-post your question to multiple sites: it seems you've posted this to SE as well: How to create a URDF file for pybullet from stl files or otherwise?.

Even though I've already answered, I'm going to close this as a duplicate, until you figure out which one you'd like to keep open.

gvdhoorn gravatar image gvdhoorn  ( 2020-11-30 02:48:35 -0500 )edit

just saw this, will delete the copy on stackexchange: https://robotics.stackexchange.com/qu...

kfa22 gravatar image kfa22  ( 2021-01-02 03:32:03 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2020-11-30 02:46:46 -0500

gvdhoorn gravatar image

Approaches tried:

  • [..]
  • Create the URDF file by hand in xml. Might be the easiest, as long as I can get accurate inertia values for each component. However, this seems impossible from .stl files (Properties shows nothing helpful in Fusion).

I feel I am missing something obvious here, surely Roboticists create URDF files all the time, using .stl files..

well, they do, but they don't all need "accurate inertia values for each component". That's a requirement you have.

STLs really only capture the shape of objects, nothing more, as you already discovered.

You'll probably have to use any of the available methods for estimating dynamic parameters from meshes (such as this one: Inertial parameters of triangle meshes.

Or ask the creator of the robot you mention nicely for the information you are lacking.

edit flag offensive delete link more

Question Tools

3 followers

Stats

Asked: 2020-11-29 09:34:58 -0500

Seen: 1,842 times

Last updated: Nov 30 '20