fanuc_experimental
fanuc_experimental copied to clipboard
lrmate200id_moveit_cfg: demo of controlling LRMate200iD with Moveit on Gazebo
Hi, thanks for the PR.
Can you tell me how this is related to #20?
(moved to general discussion from on-commit comment)
The problem with adding an exec_depend
on fanuc_lrmate200id_gazebo
to fanuc_lrmate200id_moveit_config
is that all users -- even those who just want to use fanuc_lrmate200id_moveit_config
with real hardware -- will have to install all of Gazebo, and all its dependencies. That doesn't seem very nice - especially not when you want to run move_group
on a headless machine.
In the case of the ABB IRB 120(T) and its Gazebo support package, for that reason, we chose to keep the Gazebo dependency (brought in transitively through abb_irb120_gazebo
) optional, by not including it in abb_irb120_moveit_config/package.xml
.
Instead, we only included the moveit_planning_execution_gazebo.launch
file, and added an explanatory piece of text at the top (see abb_irb120_moveit_config/launch/moveit_planning_execution_gazebo.launch).
I'd prefer something like that for this lrmate200id
package as well, and would appreciate it if you could make the necessary changes. It'd also mean renaming the gazebo_demo.launch
to moveit_planning_execution_gazebo.launch
.
There was some debate over whether the mpe_gazebo.launch
file should actually not be in a different package, like the abb_irb120_gazebo
package itself. Problem is that that package has no dependency on MoveIt, and it doesn't need it either, as it's perfectly possible to use Gazebo without MoveIt.
An alternative could be to create a new package, abb_irb120_gazebo_moveit_config
which would contain just the mpe_gazebo.launch
file, and exec_depend
both on abb_irb120_moveit_config
and abb_irb120_gazebo
.
It would cleanly separate the dependencies, but a drawback is that it would add 1 + N
packages for each N
variants we want to add Gazebo support for.
The layout of abb_irb120_gazebo
(and the packages in staubli_experimental
) is certainly not the only way these things can be done, so I'm open to suggestions. Any ideas?
@shaun-edwards?
Can you tell me how this is related to #20?
This PR depends on #20
Ok, I removed the dependency on fanuc_lrmate200id_gazebo
and renamed the launch file to moveit_planning_execution_gazebo.launch
.
Hello I'm wondering if there is a reason this hasn't been merged in yet? I think it would be very useful for the community to have a gazebo model for these robots.
The reason is/was that there are various aspects of the PR which weren't in a state that they were acceptable for inclusion in the repository.
I'd have to take another look to see what those were.
I think it would be very useful for the community to have a gazebo model for these robots.
while in general I agree, we have to keep in mind that Gazebo is a moving target, with sometimes very different behaviour between the different versions. What works well in one version does not have to work in others.
If we start adding Gazebo support packages for the robots here, it will significantly increase maintenance.
Edit: just took a quick look: the inertial
and dynamics
elements appear to only contain default values. This makes the xacro:macro
compatible with Gazebo, but does not result in representative dynamic behaviour.