UniversalRobots / Universal_Robots_ROS2_Description

ROS2 URDF description for Universal Robots
BSD 3-Clause "New" or "Revised" License
137 stars 116 forks source link

Remove dependency on ur_robot_driver #6

Closed fmauch closed 2 years ago

fmauch commented 2 years ago

Currently, the description package has a dependency on the ur_robot_driver package. In my opinion this should not be necessary, as a driver should not really necessary to use a description. Currently, it is not even possible to view the description without the ur_robot_driver present.

https://github.com/UniversalRobots/Universal_Robots_ROS2_Description/blob/70f6b79b9e66fcf4305ecc103e6ecb4f34d6428d/launch/view_ur.launch.py#L119-L127

https://github.com/UniversalRobots/Universal_Robots_ROS2_Description/blob/70f6b79b9e66fcf4305ecc103e6ecb4f34d6428d/urdf/ur.ros2_control.xacro#L21

https://github.com/UniversalRobots/Universal_Robots_ROS2_Description/blob/70f6b79b9e66fcf4305ecc103e6ecb4f34d6428d/urdf/ur_macro.xacro#L83-L85

The setup files could probably be set to some default values independent of the driver. Thoughj I think that those driver parameters should be kept out of the description, as raised in https://github.com/UniversalRobots/Universal_Robots_ROS2_Driver/issues/261.

The HWInteface plugin, however, can probably not be replaced easily. This would probably require putting this into its own package, as well?

@destogl any comments / opinions on this?

destogl commented 2 years ago

We can simply remove default values for those recipes. This is fine and legit. (~addressing this in #5~ actually, you already did this)

Regarding hardware interface plugin... This can stay as it is because it will be first activated when one is using ros2_control, and at that point one is (probably) using driver already because it will use ur_bringup package. Independently if they are using driver or FakeHardware.