Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Tutorial panda robot not shown in rviz2 #1596

Closed
Gleis1234 opened this issue Oct 3, 2022 · 10 comments
Closed

Tutorial panda robot not shown in rviz2 #1596

Gleis1234 opened this issue Oct 3, 2022 · 10 comments
Labels
bug Something isn't working

Comments

@Gleis1234
Copy link

Description

In the Getting Started tutorial https://moveit.picknik.ai/humble/doc/tutorials/quickstart_in_rviz/quickstart_in_rviz_tutorial.html Step 1 the demo is launched. The panda robot arm should be shown in rviz2. This does not work

Your environment

  • ROS Distro: Humble
  • OS Version: 22.04
  • Binary build
  • If binary, which release version?
  • If source, which branch?

Steps to reproduce

Launch demo:

ros2 launch moveit2_tutorials demo.launch.py rviz_tutorial:=true 

The motion planning display style is already selected, also /panda_link0 as fixed frame is entered.

Expected behaviour

Rviz2 opens and the robot arm is shown in the window.

Actual behaviour

Rviz2 opens, but the window shows an empty grid.

Backtrace or Console output

[[rviz2-1] Warning: class_loader.impl: SEVERE WARNING!!! A namespace collision has occurred with plugin factory for class rviz_default_plugins::displays::InteractiveMarkerDisplay. New factory will OVERWRITE existing one. This situation occurs when libraries containing plugins are directly linked against an executable (the one running right now generating this message). Please separate plugins out into their own library or just don't link against the library and use either class_loader::ClassLoader/MultiLibraryClassLoader to open.
[rviz2-1] at line 253 in /opt/ros/humble/include/class_loader/class_loader/class_loader_core.hpp
[rviz2-1] [ERROR] [1664800782.948878720] [moveit_ros_visualization.motion_planning_frame]: Action server: /recognize_objects not available
[rviz2-1] [INFO] [1664800782.977610024] [moveit_ros_visualization.motion_planning_frame]: MoveGroup namespace changed: / -> . Reloading params.
[rviz2-1] [INFO] [1664800782.988861299] [moveit_rdf_loader.rdf_loader]: Loaded robot model in 0.00549758 seconds
[rviz2-1] [INFO] [1664800782.988957820] [moveit_robot_model.robot_model]: Loading robot model 'panda'...
[rviz2-1] [INFO] [1664800783.541611722] [moveit_rdf_loader.rdf_loader]: Loaded robot model in 0.00391155 seconds
[rviz2-1] [INFO] [1664800783.541687151] [moveit_robot_model.robot_model]: Loading robot model 'panda'...
[rviz2-1] [ERROR] [1664800783.559800993] [moveit_background_processing.background_processing]: Exception caught while processing action 'loadRobotModel': parameter 'robot_description_planning.joint_limits.panda_joint1.max_velocity' has invalid type: Wrong parameter type, parameter {robot_description_planning.joint_limits.panda_joint1.max_velocity} is of type {double}, setting it to {string} is not allowed.
[rviz2-1] [INFO] [1664800783.562051220] [moveit_rdf_loader.rdf_loader]: Loaded robot model in 0.00222893 seconds
[rviz2-1] [INFO] [1664800783.562092566] [moveit_robot_model.robot_model]: Loading robot model 'panda'...
[rviz2-1] [ERROR] [1664800783.567869445] [moveit_background_processing.background_processing]: Exception caught while processing action 'loadRobotModel': parameter 'robot_description_planning.joint_limits.panda_joint1.max_velocity' has invalid type: Wrong parameter type, parameter {robot_description_planning.joint_limits.panda_joint1.max_velocity} is of type {double}, setting it to {string} is not allowed.

]

During the build there is an error noted:

[stderr: moveit_setup_srdf_plugins
/home/guenther/ws_moveit2/src/moveit2/moveit_setup_assistant/moveit_setup_srdf_plugins/include/moveit_setup_srdf_plugins/rotated_header_view.hpp:0: Note: No relevant classes found. No output generated.
]

@Gleis1234 Gleis1234 added the bug Something isn't working label Oct 3, 2022
@Nils-ChristianIseke
Copy link
Contributor

@Gleis1234 Can not reproduce the error. As soon as i add the MotionPlanning Plugin (following the tutorial) the robot is shown in rviz.

I had the same issue some time ago, i think i solved it by doing a clean build, therefore removing the workspace:

rm -r ~/ws_moveit2/

After that following the tutorial again helped. Following the tutorial you need to switch to the humble branch of moveit2 after the command vcs import < moveit2_tutorials/moveit2_tutorials.repos :

cd ~/ws_moveit2/src/moveit2
git switch humble
cd ..

@Gleis1234
Copy link
Author

@Nils-ChristianIseke Do you build from the src dir or from the workspace dir?

@Gleis1234
Copy link
Author

@Nils-ChristianIseke I did as you advised. Removed the WS and build it up again, switched git switch humble . The build completed with 4 stderr.
Launching the RVIZ demo ends up again with 2 exceptions as described above.

@AndyZe
Copy link
Member

AndyZe commented Oct 3, 2022

Can you paste a screenshot of RViz after you add the Motion Planning Display?

Also, can you please try switching to Cyclone DDS? It's very easy to switch, just install it:

sudo apt install ros-rolling-rmw-cyclonedds-cpp

Then export the env variable. You may want to add this to ~/.bashrc to source it automatically

export RMW_IMPLEMENTATION=rmw_cyclonedds_cpp

@Gleis1234
Copy link
Author

Screenshot_RVIZ
I wonder that "Motion Planning", "Trajectory" and "Planning Scene" were already added to the Displays window.
I will try to switch to Cyclone DDS.

@AndyZe
Copy link
Member

AndyZe commented Oct 3, 2022

I don't see any obvious errors. There would be a red X on MotionPlanning if, for example, a key parameter were missing. It looks like a straight-up graphics glitch.

@AndyZe
Copy link
Member

AndyZe commented Oct 3, 2022

You could also add a tf display and verify that the tf frames are there. I bet they will be.

@Gleis1234
Copy link
Author

@AndyZe Did you see the exception

[rviz2-1] [ERROR] [1664800783.559800993] [moveit_background_processing.background_processing]: Exception caught while processing action 'loadRobotModel': parameter 'robot_description_planning.joint_limits.panda_joint1.max_velocity' has invalid type: Wrong parameter type, parameter {robot_description_planning.joint_limits.panda_joint1.max_velocity} is of type {double}, setting it to {string} is not allowed.

?

@AndyZe
Copy link
Member

AndyZe commented Oct 3, 2022

I did not. That parameter comes from here: https://github.com/ros-planning/moveit_resources/blob/ros2/panda_moveit_config/config/joint_limits.yaml

Seems OK to me?

I'll fire up my Ubuntu22 and test it

@Gleis1234
Copy link
Author

Gleis1234 commented Oct 3, 2022

I think I found the point. I had activated german locals.
Thank you for the support. The hint to the yaml showed my the the right way.
Setting LC_NUMERIC=en_US.UTF-8 helped.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants