ros / urdfdom

URDF parser
http://ros.org/wiki/urdf
Other
97 stars 131 forks source link

inertia: Should explicitly state that no inertia == massless (inertialess) link? #138

Open EricCousineau-TRI opened 4 years ago

EricCousineau-TRI commented 4 years ago

Motivated by this discussion: https://github.com/osrf/sdformat/issues/199#issuecomment-622127508

Empty links in URDF are assumed to be massless and get converted into SDFormat frames

To substantiate this, I wanted to find a first-hand source, but trying to find one directly in specs / code is a bit harder than it should be? http://wiki.ros.org/urdf/XML/link

Walking through some various points that connect parsing to usage in KDL: https://github.com/ros/urdfdom/blob/0da4b20675cdbe14b532d484a1c17df85b4e1584/urdf_parser/src/link.cpp#L432 https://github.com/ros/urdfdom_headers/blob/e31d66ea4a1f753fcca05e2d046b3af20a3234b3/urdf_model/include/urdf_model/link.h#L196 https://github.com/ros/kdl_parser/blob/24597c21301c53b66a5e0ae22619210261f1a28f/kdl_parser/src/kdl_parser.cpp#L147-L151

I've stopped my search, but was going to dig into KDL itself: https://github.com/orocos/orocos_kinematics_dynamics/tree/master/orocos_kdl

Ultimately, it seems like "optional inertial" all the down to KDL means "zero-mass + zero-inertia", which is fine and sounds obvious if you say it out loud, but seems like it could be ambiguous.

It would be lovely to seethe XML page for it to look like:

inertial: (optional: defaults to zero mass and zero inertia)
EricCousineau-TRI commented 4 years ago

Edited Wiki page: http://wiki.ros.org/action/info/urdf/XML/link?action=diff&rev2=70&rev1=69

image

@scpeters When you have a chance, can you confirm this looks OK? If so, then we can close this.