Tips from Leticia

From Robin

Jump to: navigation, search

Leticia did some mapping and localization with Tiago, as well as autonomously gripping objects for her master thesis. Here are some tips of different packages, links, and lessons from her on these topics.

Contents

Interesting packages:

  • move_base
  • dynamic_reconfigure - to change some configs like max velocity in the code
  • jsk_data
  • moveit_core
  • octomap
  • pal repo

Interesting links:

Create a new map using gmapping on the real robot:

Turn off map_server and localization on the web commander.

To visualize:

 rviz rviz

To start the mapping:

 roslaunch pal_navigation_cfg_tiago mapping_gmapping. Launch

To navigate with the robot to create the room map:

 rosrun key_teleop key_teleop.py

To save the map:

 rosrun map_server map_saver

Then, you will have a map.pgm and map.yaml with the data.


Localize the real robot in a map:

Turn off change_controllers, map_server and head_manager on the web commander.

To visualize, add the topics that you want:

 rviz rviz

Create this launch file and launch it:

<?xml version="1.0" encoding="UTF-8"?>
<launch>
	<arg name="map_file" default="$(find my_package) /maps/map-yaml"/>
	<!-- Run the map server -->
<node name="map_server" pkg="map_server" type="map_server" args="$(arg map_file)" />

<node pkg="rosservice" type="rosservice" name="global_loc" args="call /global_localization " />
</launch>

To navigate with the robot until it finds the correct pose on the map:

 rosrun key_teleop key_teleop.py

Note:

  • Maybe you will need to restart that launch and the localization at the web commander several times until the amcl converges to the correct pose.
  • Restart move_base at the web commander to update the map size with your new map.
  • Asymmetric environments are better for mapping and localization.
Personal tools
Front page