[ros-users] Costmap_2d_tutorials without stageros?

Tully Foote tfoote at willowgarage.com
Mon Apr 19 17:26:17 UTC 2010


Dan,
I think your problem can be solved by settting the parameter /use_sim_time
to true.  This will make ros::Time::now() return simulation time as
broadcast by the bag file or stageros or gazebo on the /clock topic, instead
of the system time.  For more info see http://www.ros.org/wiki/Clock

Tully

On Mon, Apr 19, 2010 at 10:12 AM, Daniel Maier <
maierd at informatik.uni-freiburg.de> wrote:

> Hi Eitan,
>
> Thanks for the hint. I tried it with the -b option and now I receive the
> following warning:
>
> [ WARN] 1270644364.295866960: Costmap2DROS transform timeout. Current
> time: 1270644364.2959, global_pose stamp: 1260460808.9770, tolerance:
> 0.3000
>
> which is caused by Costmap2DROS calling ros::Time::now() to check the
> validity of the tfs.
> I guess stageros republishes my laser messages as base_scan with a shifted
> timestamp so the problem does not occur in this case.
>
> Is there any way around this?
> Dan
>
> On Mon, 19 Apr 2010 18:45:14 +0200, Eitan Marder-Eppstein
> <eitan at willowgarage.com> wrote:
>
> > Dan,
> >
> > Are you publishing time when you playback the bag? If not, this could be
> > the
> > problem. Try using the "-b" option of rosplay to publish simulation time.
> > Stageros does this by default so that could be why things work from the
> > bag
> > when the simulator is up, but not otherwise.
> >
> > Hope this helps,
> >
> > Eitan
> >
> >
> > On Mon, Apr 19, 2010 at 8:35 AM, Daniel Maier <
> > maierd at informatik.uni-freiburg.de> wrote:
> >
> >>
> >> On Mon, 19 Apr 2010 16:52:42 +0200, Brian Gerkey
> >> <gerkey at willowgarage.com>
> >> wrote:
> >>
> >> > hi Daniel,
> >> >
> >> > costmap_2d can definitely be used without stageros.  But it needs a
> >> > source of laser data and transforms.  When you comment out stageros
> >> > from your launch file, you're no longer feeding any data into the
> >> > costmap.  That's why callbacks aren't being invoked.  Laser and
> >> > transform data could come from a simulation (e.g., stageros), a
> >> > physical robot, or playback of logged data from a bag file
> >> > (http://www.ros.org/wiki/Bags).
> >> >
> >> >       brian.
> >>
> >> Hi Brian,
> >>
> >> Thanks for your answer. I think I missed to provide some information.
> >> My laser data is stored in a bag file and published by rosbag in the
> >> topic
> >> /laser.
> >> The frame_id of /laser is /Laser_frame.
> >> /odom is the odometry frame and /Base_link the first (and only) child of
> >> /odom representing the robot base.
> >>
> >> So my tf tree looks (simplified) like this:
> >> /odom-> /Base_link -> /Pantilt_link -> /Laser_frame
> >>
> >> With stageros running the costmap created by the costmap_2d_tutorial
> >> node
> >> seems to be using my laser data from the aforementioned bag file.
> >> If I outcomment stageros in the launch file, nothing happens.
> >> In both cases I am using the same costmap_params.yaml file.
> >>
> >> Any ideas?
> >> Best,
> >> Dan
> >>
> >>
> >> >
> >> > On Mon, Apr 19, 2010 at 6:28 AM, Daniel Maier
> >> > <maierd at informatik.uni-freiburg.de> wrote:
> >> >> Hi!
> >> >>
> >> >> I think about using costmap_2d in one of my projects so I played
> >> around
> >> >> with the costmap_2d_tutorials.
> >> >> Is it possible to run the costmap without stageros?
> >> >> Here is a launch file I use for bringing up a costmap:
> >> >>
> >> >> <launch>
> >> >>   <param name="/use_sim_time" value="true"/>
> >> >>   <node pkg="costmap_2d_tutorials" type="costmap_test"
> >> respawn="false"
> >> >> name="costmap_test" output="screen">
> >> >>     <rosparam file="$(find nav)/costmap_params.yaml" command="load"
> >> >> ns="costmap" />
> >> >>   </node>
> >> >>   <!--
> >> >>   <node pkg="stage" type="stageros" name="stageros" args="$(find
> >> >> 2dnav_stage)/worlds/willow-pr2-2.5cm.world" respawn="false" >
> >> >>     <param name="base_watchdog_timeout" value="0.2"/>
> >> >>   </node>
> >> >>   -->
> >> >> </launch>
> >> >>
> >> >> If I include the stageros node everything works as expected (I
> >> guess).
> >> >> If I don't, the laserScanCallback in costmap_2d_ros.cpp is not being
> >> >> called.
> >> >>
> >> >> Here is my costmap_params.yaml file:
> >> >>
> >> >> global_frame: /odom
> >> >> robot_base_frame: Base_link
> >> >> update_frequency: 5.0
> >> >> publish_frequency: 2.0
> >> >> transform_tolerance: 0.3
> >> >> obstacle_range: 12.5
> >> >> max_obstacle_height: 1.0
> >> >> raytrace_range: 13.5
> >> >> inscribed_radius: 0.15
> >> >> circumscribed_radius: 0.29
> >> >> inflation_radius: 0.4
> >> >> observation_sources: laser
> >> >> laser:
> >> >>  data_type: LaserScan
> >> >>  expected_update_rate: 0.2
> >> >>  observation_persistence: 5.0
> >> >>  marking: true
> >> >>  clearing: true
> >> >>  max_obstacle_height: 0.9
> >> >>  min_obstacle_height: 0.08
> >> >>
> >> >> static_map: false
> >> >> rolling_window: true
> >> >> width: 10.0
> >> >> height: 10.0
> >> >> resolution: 0.025
> >> >> map_type: voxel
> >> >> origin_x: 0.0
> >> >> origin_y: 0.0
> >> >> origin_z: 0.0
> >> >> z_resolution: 0.2
> >> >> z_voxels: 10
> >> >> unknown_threshold: 6
> >> >> mark_threshold: 0
> >> >> cost_scaling_factor: 10.0
> >> >> lethal_cost_threshold: 100
> >> >>
> >> >>
> >> >> Thanks for your help,
> >> >> Dan
> >> _______________________________________________
> >> ros-users mailing list
> >> ros-users at code.ros.org
> >> https://code.ros.org/mailman/listinfo/ros-users
> >>
>
> _______________________________________________
> ros-users mailing list
> ros-users at code.ros.org
> https://code.ros.org/mailman/listinfo/ros-users
>



-- 
Tully Foote
Systems Engineer
Willow Garage, Inc.
tfoote at willowgarage.com
(650) 475-2827
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ros.org/pipermail/ros-users/attachments/20100419/3d98bd87/attachment-0003.html>


More information about the ros-users mailing list