Buscar este blog
miércoles, 17 de noviembre de 2010
Costmap configuration
$roscd itesm_demo
$mkdir config
$cd config
I created four files in this folder. The description of each of them follows:
1. costmap_common_params.yaml: Parameters that are common both for local and global costmaps:
obstacle range: determines the maximum range sensor reading that will result in an obstacle being put into the costmap.
raytrace range: determines the range to which we will raytrace freespace given a sensor reading.
footprint: in the case of specifying the footprint, the center of the robot is assumed to be at (0.0, 0.0) and both clockwise and counterclockwise specifications are supported.
Inflation radius: The inflation radius should be set to the maximum distance from obstacles at which a cost should be incurred.
2. global_costmap_params.yaml: long term plans over the entire environment
global frame: defines what coordinate frame the costmap should run in
robot base frame: defines the coordinate frame the costmap should reference for the base of the robot.
static map: determines whether or not the costmap should initialize itself based on a map served by the map_server.
3. local_costmap_params.yaml: local planning and obstacle avoidance
Rolling window: parameter to true means that the costmap will remain centered around the robot as the robot moves through the world.
4. base_local_planner_configuration.-yaml: The base_local_planner is responsible for computing velocity commands to send to the mobile base of the robot given a high-level plan
jueves, 29 de julio de 2010
Stage and navigation stack tutorial
This entry is based on the following tutorial:
http://www.ros.org/wiki/move_base_stage/Tutorials/stage%20and%20navigation%20stack
Following are the elements of the awesomeros package and a small description of their functions.
1. World file: willow.world
It is located at awesomeros/world/willow.world, it is required by stage and it describes the characteristics of the simulation environment.
2. Map server: willow.yaml
Located at world//willow.yaml. A map is required by navigation stack to work on. The yaml file determines the occupancy, resolution and location characteristics of the map being used.
3. Costmaps: they store information about obstacles in the map
3.1 costmap_common_params.yaml: configurations that both costmaps (local and global) should follow.
3.2 global_costmap_params.yaml: configuration of long-term plans over the entire environment.
3.3 local_costmap_params.yaml: configuration for local planning and obstacle avoidance.
4. Base local planner: base_local_planner_params.yaml
It is responsible for computing velocity commands to send to the mobile base of the robot.
5. Navfn: navfn_params.yaml
It provides a fast interpolated navigation function that can be used to create plans for a mobile base.
6. Move_base: move_base.xml
This package lets you move your robot to the desired position using all the previously mentioned nodes of the navigation stack.
7. Amcl: amcl_node.xml
It is a probabilistic location system for mobile robots in 2D.
8. Rviz: rviz.xml and rviz.vcg.
It is a 3D visualization environment
9. Launch file: launch/robot.launch
It acts as a container for all the elements of the package.
Running the launch file and the rviz configuration file lets us set goals in rviz.
The most significant topics published while running this tutorials are the ones of the move_base node.
And the transforms among frames are broadcasted only by stageros and amcl.