0
$\begingroup$

Rosanswers logo

I noticed that robots in Stage can drive through walls. Is that expected?

I'm using ROS Kinetic under Ubuntu 16.04, as follows:

rosrun stage_ros stageros  /opt/ros/kinetic/share/stage/worlds/pioneer_walle.world

and

rosrun turtlesim turtle_teleop_key /turtle1/cmd_vel:=/robot_0/cmd_vel

Then, when I command the robot from the telop terminal, it passes straight through the walls in Stage, as if they weren't there.

Stage does print out warning messages about more than one ranger not being supported, but it doesn't sound like that would be related to this problem, right?


Originally posted by The Martin on ROS Answers with karma: 52 on 2018-09-13

Post score: 0


Original comments

Comment by Delb on 2018-09-13:
If you check the topics with rostopic list you can see that there are only informations from the scan, odometry, cmd_vel etc.. but none about a collision or a bumper to detect it so it's sound normal. And yes the warning is simply because there are two robots.

Comment by The Martin on 2018-09-13:
But I thought that Stage would still check for collisions, even if the (simulated) robot doesn't have a sensor to detect the collision. If my memory serves me, that's how it used to work in older versions.

Comment by Delb on 2018-09-13:
It is possible but you have to implement it and tell the robot to use a bumper (or any other sensor that can tell the robot is touching something) If you are no restrained to Stage maybe you should use Gazebo.

Comment by allenh1 on 2018-09-13:
@The Martin That's definitely not expected behavior! I'd be curious to see if the p2os version of the pioneer world replicates this behavior. (see p2os_urdf and p2os_launch)

$\endgroup$

1 Answer 1

0
$\begingroup$

Rosanswers logo

World file objects, like robots and maps usually have a parameter called obstacle_return, which makes them collide with other objects around or not. If set to 1, it will collide, and 0 it won't. Please take a look here for deeper info: https://player-stage-manual.readthedocs.io/en/latest/WORLDFILES/

In the case of your simulation, I could see that the pioneer_walle.world includes a map.inc file, and the map described has a obstacle_return parameter set to 0. I believe if you change it to 1, robots should collide with the obstacles.


Originally posted by lucascoelho with karma: 497 on 2018-09-13

This answer was ACCEPTED on the original site

Post score: 0


Original comments

Comment by The Martin on 2018-09-14:
Indeed! Strange, though, that all the map files that ship with Stage have obstacle_return 0.

Comment by lucascoelho on 2018-09-18:
I've added a link the file that has obstacle_return 0

$\endgroup$

Your Answer

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