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

Recommendations for ROS 2 Humble and Gazebo demo for robot arm?

asked 2023-03-07 14:52:05 -0500

dcconner gravatar image

I'm looking for a working demo using ROS 2 Humble and Gazebo for a robot arm. It seems the classic demos (e.g. RRBot) and MoveIt are all using kinematic simulations with just RViz.

Does anyone have a preferred demo that works "out of the box" for ROS 2 Humble and Gazebo, and preferably with a ROS 2 controls and Moveit setup as well.

edit retag flag offensive close merge delete

Comments

1

So I asked what I thought was a simple question, but somehow missed the recent simulation hell that has descended. So there are out of date Gazebo classic simulations, then some Ignition simulation work during ROS 2 conversions, but that is now back to new Gazebo (to replace Ignition), which cannot run along side Gazebo "classic". None of which are fully integrated with fast evolving ROS 2 controllers. So I'm more confused than ever about the best path forward for new development and what the transition path should look like as we convert old packages to ROS 2. Should we convert simulation to "new Gazebo (Ign?), or continue using Gazebo "classic". Is there some document that provides the current "best practices" for ROS 2 Humble and Rolling? It seems things are much less stable than I presumed, and I'm more confused about how to advise the new students I'm onboarding.

dcconner gravatar image dcconner  ( 2023-03-09 11:23:18 -0500 )edit

3 Answers

Sort by ยป oldest newest most voted
1

answered 2023-04-01 17:20:59 -0500

danzimmerman gravatar image

An update to my above comment about the UR Gazebo Classic simulation. The issue there was related to the ODE parameter fmax, see

https://github.com/UniversalRobots/Un...

and more detail here:

https://github.com/UniversalRobots/Un...

Still don't exactly know how it should be fixed formally, but there is a workaround if you modify the ur_description package to add friction to the joint <dynamics> tags in the URDF.

This friction parameter passes through to the ODE physics engine and sets fmax, and then the UR Gazebo simulation works.

I also did seem to get a working UR Ignition simulation on ROS Rolling natively installed on Ubuntu Jammy, but I didn't dig much into whether everything was working.

edit flag offensive delete link more
1

answered 2023-03-08 17:40:35 -0500

shonigmann gravatar image

updated 2023-03-13 12:11:43 -0500

You might find either of these interesting:

Not sure how stable/recently updated these are though. Bear in mind that these might not be that far from the "kinematic" simulations in RViz as they might appear, depending on the controllers that they use under the hood (as I discuss a bit in this question). But depending on what you need, they might be sufficient.

Edit:

edit flag offensive delete link more

Comments

I looked at the Panda one, but it is older Ignition simulation, which stimulated my comment on my main question. <sigh>

dcconner gravatar image dcconner  ( 2023-03-09 11:27:23 -0500 )edit

Neither of the UR simulation packages work for me yet.

Re the Gazebo "Classic" see

https://github.com/UniversalRobots/Un...

I will probably push forward toward Ignition (which of course confusingly is now just called Gazebo) because "Classic" is EOL in 2025.

The UR packages have been working well for me otherwise but I don't think simulation is a high maintainer priority with all the other changes going on, and I expect some of the ros2_control evolution is keeping other robot package maintainers similarly busy keeping the real robots working well.

danzimmerman gravatar image danzimmerman  ( 2023-03-12 20:31:28 -0500 )edit
0

answered 2023-03-08 04:02:40 -0500

ljaniec gravatar image

Perhaps you can check out the other simulator, Webots, with its example project like here:

Do you have to use Gazebo? Why?

edit flag offensive delete link more

Comments

"Have to" - No. I have used Gazebo in the past, and preferred to stick with it just because of inertia and given that all of my old ROS 1 demos use Gazebo. I was honestly surprised that I couldn't find a working demo with ROS 2 at this stage. Gazebo seems to be working fine for wheeled mobile robots, but I can't find a good arm demo.

dcconner gravatar image dcconner  ( 2023-03-08 08:56:16 -0500 )edit

Okay, I find both simulators quite ok, with Webots being a bit more stable and easier to use.

I found this "Open Class: ROS2 Motion Planning using C++":

"In this Open Class, we will learn how to control a robotic arm with ROS2 using Moveit2 and the move group C++ API."

You can watch it and fork the ROSject to check it out. It won't be an out-of-the-box experience when trying it out locally, but it is better than nothing, I think.

ljaniec gravatar image ljaniec  ( 2023-03-08 09:54:39 -0500 )edit

Looks like the simulation in that class is in ROS 1 and using ROS 1-to-2 bridge. So not what I was hoping for.

dcconner gravatar image dcconner  ( 2023-03-08 17:12:23 -0500 )edit

Yes, you are right, I skipped the first 15 min and didn't see the ROS 1 bridge commands... Next to the @shonigmann links in the other answer, you can also check this one: https://github.com/KCL-BMEIS/lbr_fri_...

ljaniec gravatar image ljaniec  ( 2023-03-08 19:38:39 -0500 )edit
1

I saw that one, and posted comment on https://github.com/KCL-BMEIS/lbr_fri_... related to Humble issues when I tried.

dcconner gravatar image dcconner  ( 2023-03-09 11:26:34 -0500 )edit

Question Tools

2 followers

Stats

Asked: 2023-03-07 14:52:05 -0500

Seen: 2,878 times

Last updated: Apr 01 '23