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

Robot model parameter not found

asked 2019-03-01 16:25:19 -0600

the3kr gravatar image

updated 2019-03-18 03:01:32 -0600

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'?

error.

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?

Thanks.

Edit:

[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>
    run_interactive(opt.group_name)
  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
edit retag flag offensive close merge delete

Comments

Could you please clarify why you've built MoveIt from source on Kinetic?

gvdhoorn gravatar image gvdhoorn  ( 2019-03-02 14:30:49 -0600 )edit

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?

the3kr gravatar image the3kr  ( 2019-03-02 17:43:32 -0600 )edit

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
gvdhoorn gravatar image gvdhoorn  ( 2019-03-03 01:17:21 -0600 )edit

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
gvdhoorn gravatar image gvdhoorn  ( 2019-03-03 01:19:15 -0600 )edit

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.

gvdhoorn gravatar image gvdhoorn  ( 2019-03-03 01:36:48 -0600 )edit

Thanks. I've installed the binary. But I can't remember the guide/tutorial I followed, I'll share it once I find it.

the3kr gravatar image the3kr  ( 2019-03-03 09:05:34 -0600 )edit

2 Answers

Sort by ยป oldest newest most voted
1

answered 2019-03-02 12:34:06 -0600

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
edit flag offensive delete link more

Comments

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.

the3kr gravatar image the3kr  ( 2019-03-02 12:52:55 -0600 )edit
1

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)

jarvisschultz gravatar image jarvisschultz  ( 2019-03-02 14:18:24 -0600 )edit

@jarvisschultz I've updated the question to show the robot_description.

the3kr gravatar image the3kr  ( 2019-03-02 17:54:10 -0600 )edit

Hey,@jarvisschultz! Have you already fixed it? I have the same problem

caru gravatar image caru  ( 2019-09-09 08:17:00 -0600 )edit
1

answered 2019-11-19 11:35:39 -0600

Void gravatar image

updated 2019-11-19 11:35:52 -0600

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.

edit flag offensive delete link more

Question Tools

3 followers

Stats

Asked: 2019-03-01 16:25:19 -0600

Seen: 10,457 times

Last updated: Nov 19 '19