urdfdom icon indicating copy to clipboard operation
urdfdom copied to clipboard

use SensorBase class as base class for sensors

Open YoheiKakiuchi opened this issue 11 years ago • 9 comments

I would like to use sensor descriptions on urdf_model. So, I added SensorBase class as base class for sensors including VisionSensor.

YoheiKakiuchi avatar Feb 15 '14 03:02 YoheiKakiuchi

@YoheiKakiuchi this is definitely interesting and I think a direction we need to pursue. However, the URDF is used by a number of people and we can't make any changes to the parser before they are made in the spec (http://wiki.ros.org/urdf/XML). I propose starting a discussion from http://wiki.ros.org/urdf/XML/sensor/; Perhaps we can create a new page with a proposal (link to ../sensor/ and and link from ../sensor/) and put up a description of the updated tag. Once that is there, we should send an e-mail to ros-users and have people comment on the proposal. Once we agree to the format, we can proceed to making changes in the parser. Does this sound reasonable? Attn: @hsu @wjwwood @davetcoleman @jbohren @k-okada @sachinchitta @nkoenig @ipa-fxm @ipa-mdl

isucan avatar Feb 16 '14 02:02 isucan

I support the idea of having general sensors included in the URDF. I think it would be good if we looked at what Gazebo is doing and maybe just adopt that convention for most of the common sensor types (Gazebo currently parses sensors inside a special sensor tag).

sachinchitta avatar Feb 17 '14 05:02 sachinchitta

+1 adopting Gazebo's conventions

davetcoleman avatar Feb 17 '14 05:02 davetcoleman

In addition to Gazebo, I hope to consider sensors used in OpenHRP3 and OpenRAVE. They are similar, but there are some difference. Sensors used in each program are listed.

Gazebo(sdf) http://gazebosim.org/sdf/dev.html camera, depth, multicamera, contact, gps, imu, ir and ray

OpenHRP3(vrml) http://www.openrtp.jp/openhrp3/en/create_model.html AccelerationSensor, GyroSensor, VisonSensor, ForceSensor, RangeSensor

OpenRAVE(collada) http://openrave.org/docs/latest_stable/collada_robot_extensions/ base_pinhole_camera, base_stereo_camera, base_laser2d, base_laser3d, base_flash_laser, base_encoder, base_force6d, base_imu, base_odometry

YoheiKakiuchi avatar Feb 18 '14 08:02 YoheiKakiuchi

It's too late. I added proposal page of sensor, please check them. http://wiki.ros.org/urdf/XML/sensor http://wiki.ros.org/urdf/XML/sensor/proposals

YoheiKakiuchi avatar Dec 10 '14 03:12 YoheiKakiuchi

Better link for latest SDFormat sensor model: http://sdformat.org/spec?ver=1.5&elem=sensor

davetcoleman avatar Dec 10 '14 19:12 davetcoleman

Hi, this is a very interesting topic to have sensors inside the urdf. From my personal experience an important aspect is the possibility to have a reference frame associated to the lecture of the sensor. For instance: if I have a force/torque sensor attached to my robot I will define it in a certain link and in a certain pose w.r.t the joint axis (similar as the origin tag in the urdf for the com parameter). I expect that the lecture from the sensor come w.r.t this pose therefore I would like to have a reference frame in that pose so I can transform lecture in other reference frames. Same as for IMU. What do you think?

EnricoMingo avatar Dec 11 '14 13:12 EnricoMingo

@YoheiKakiuchi - could you fill in the rest of the sensor information as well based on what the SDFormat has - if it works for Gazebo (and has been out for a while), there's no reason it can't work for ROS too. It would also be great to have a library of named sensors (with model numbers) so we can just reference them easily in our robot descriptions.

sachinchitta avatar Dec 12 '14 21:12 sachinchitta

The URDF is currently used in several software projects, some of which are outside the traditional ROS ecosystem, such as Drake, Phobos, SimulationConstructionSet, Morse, V-REP and probably many others. Many of this projects are already developing their own (mutually-incompatible) extensions of the URDF for supporting sensors.

Considering this it could make sense to give more visibility to this discussion? For example we could open a proper issue to discuss the proposal, and send an email to ROS-Users to alert people that could be interested in this topic but are not following the urdfdom repo.

traversaro avatar Dec 18 '14 13:12 traversaro