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

PR2: client not rights to move the robot

asked 2014-04-18 02:38:26 -0500

silgon gravatar image

updated 2014-11-22 17:05:46 -0500

ngrennan gravatar image

Commands from the robot to the robot are working, but command from the computer to the robot are not. Take for example the following command to move the head.

  rostopic pub -1 /head_traj_controller/command trajectory_msgs/JointTrajectory '{joint_names: ["head_pan_joint", "head_tilt_joint"], points: [ { positions: [0,0], velocities: [0,0], time_from_start: [2,0] } ]}'
rostopic pub -1 /head_traj_controller/command trajectory_msgs/JointTrajectory '{joint_names: ["head_pan_joint", "head_tilt_joint"], points: [ { positions: [1,0], velocities: [0,0], time_from_start: [2,0] } ]}'

When I run this command on the robot (connected through ssh), the head of the robot moves. But when I do it with my computer, it doesn't work. I can see and read all the topics though from my computer. I need to be able to control the robot from my computer in order to use for example rviz.

Any thoughts ?

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted

answered 2014-04-18 07:34:20 -0500

ahendrix gravatar image

I suspect this is a network/DNS problem.

You should be able to reproduce it by running the example talker on your computer and the listener on the robot.

I suspect the issue here is that the robot can't resolve the hostname of your computer. To verify, start up the listener on the robot and the talker on your computer, and then try to rosnode ping the talker from the robot. If it fails, you probably have a network problem. You can then run rosnode info on the talker to see which hostname it's using, and either fix the DNS entries for that hostname, add it to the /etc/hosts file on the robot, or set ROS_IP on your computer before starting the talker.

For more background, watch my Networking for ROS Users talk from ROSCON 2013

edit flag offensive delete link more



You're my hero dude (in fact when I was asking the question though you were going to answer)! In the lab there is no dns resolve for each computer, we got it only for the robot. Therefore, as you said, I set the ROS_IP variable and it works. And pretty nice explanation in your video. Thanks!

silgon gravatar image silgon  ( 2014-04-18 22:59:33 -0500 )edit

Question Tools

1 follower


Asked: 2014-04-18 02:38:26 -0500

Seen: 281 times

Last updated: Apr 18 '14