Rosanswers logo

I've created a move_group configuration for my robot but anytime I try to run the moveit_commander using rosrun moveit_commander moveit_commander_cmdline.py, I get a

Robot model parameter not found! Did you remap 'robot_description'?


When I ran my rosparam list|grep robot_description_semantic and rosparam list|grep robot_description. I noticed the robot_description and robot_description_semantic are in the namespace /robot/robot_description and /robot/robot_description_semantic. How do I run moveit_commander in a specific namespace since I'm running multiple robot?



[ERROR] [1551552307.036199597, 701.961000000]: Robot model parameter not found! Did you remap 'robot_description'?
Traceback (most recent call last):
  File "/home/user/catkin_ws/src/moveit/moveit_commander/bin/moveit_commander_cmdline.py", line 166, in <module>
  File "/home/user/catkin_ws/src/moveit/moveit_commander/bin/moveit_commander_cmdline.py", line 91, in run_interactive
    c = MoveGroupCommandInterpreter()
  File "/home/user/catkin_ws/src/moveit/moveit_commander/src/moveit_commander/interpreter.py", line 65, in __init__
    self._robot = RobotCommander()
  File "/home/user/catkin_ws/src/moveit/moveit_commander/src/moveit_commander/robot.py", line 151, in __init__
    self._r = _moveit_robot_interface.RobotInterface(robot_description, ns)
RuntimeError: RobotInterfacePython: invalid robot model

Originally posted by the3kr on ROS Answers with karma: 91 on 2019-03-01

Post score: 4

Original comments

Comment by gvdhoorn on 2019-03-02:
Could you please clarify why you've built MoveIt from source on Kinetic?

Comment by the3kr on 2019-03-02:
I can't really remember why, but most likely because the guide I used built from source. But it seems to work fine. Is there any reason why I shouldn't?

Comment by gvdhoorn on 2019-03-03:\

Is there any reason why I shouldn't?

yes, multiple in fact:

  • building MoveIt takes quite some time
  • source builds are not automatically updated
  • you're tracking a development branch (ie: not a stable release)
  • potential for vague problems
  • difficult to reproduce for others

Comment by gvdhoorn on 2019-03-03:
If you don't need the from-source build, I'd actually strongly recommend to remove it and just do a:

sudo apt install ros-kinetic-moveit

Comment by gvdhoorn on 2019-03-03:
Could you please also tell us which guide/tutorial you followed? Building from source is only needed/desirable in a few select situations. For most users, installing the binaries makes much more sense, so I'd like to make sure the page you refer to explains that.

Comment by the3kr on 2019-03-03:
Thanks. I've installed the binary. But I can't remember the guide/tutorial I followed, I'll share it once I find it.


2 Answers 2


Rosanswers logo

There are several ways to accomplish this:

  1. The ns parameter in a <node> tag in a launch file sets the namespace that the node runs in: http://wiki.ros.org/roslaunch/XML/node (You could also use many other tags that let you specify a ns attribute, e.g., the <group> tag)
  2. You could also use the ROS_NAMESPACE environment variable.
  3. You could use the __ns "special key" remapping argument with rosrun

Originally posted by jarvisschultz with karma: 9031 on 2019-03-02

This answer was ACCEPTED on the original site

Post score: 1

Original comments

Comment by the3kr on 2019-03-02:
Your answer answers the question, but it doesn't seem to fix the problem I have. I've updated the question to show the error with the traceback. Thanks.

Comment by jarvisschultz on 2019-03-02:
Looks like there is something about your /robot/robot_description parameter that is causing it to not be parsed correctly. You could edit your question to provide a copy of that parameter (use rosparam get -p /robot/robot_description > tmp.urdf and add tmp.urdf)

Comment by the3kr on 2019-03-02:
@jarvisschultz I've updated the question to show the robot_description.

Comment by caru on 2019-09-09:
Hey,@jarvisschultz! Have you already fixed it? I have the same problem


Rosanswers logo

I fixed this by doing

rosrun moveit_commander moveit_commander_cmdline.py robot_description:="wx200/robot_description"

As you noticed, you can find your robot description by doing

rosparam list | grep robot_description

Although, after it starts, I can't seem to get the "use" command to work.

Originally posted by Void with karma: 71 on 2019-11-19

This answer was NOT ACCEPTED on the original site

Post score: 1


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.