首页 > 代码库 > implement "slam_karto" package in Stage simulation
implement "slam_karto" package in Stage simulation
slam_karto
ROS Wiki: http://wiki.ros.org/slam_karto
Source: https://github.com/ros-perception/slam_karto
Reliance: open_karto - https://github.com/ros-perception/open_karto
fetch_gazebo - https://github.com/fetchrobotics/fetch_gazebo
pr2_navigation - https://github.com/pr2/pr2_navigation
navigation_2d - https://github.com/skasperski/navigation_2d
Implementing karto_stage.launch:
1. Error: ResourceNotFound: karto
Use crtl+shift+F to find all "karto" packages, and replace it as slam_karto.
Eg:
For all $(find karto), we should modify them to $(find slam_karto).
2. ERROR: cannot launch node of type [stage/stageros]: can‘t locate node [stageros] in package [stage]
Use crtl+shift+F to find all "stage" packages, and replace it as stage_ros which is pre-installed in ROS.
3. err: Model type laser not found in model typetable (/tmp/binarydeb/ros-indigo-stage-4.1.1/libstage/world.cc CreateModel)
err: Unknown model type laser in world file. (/tmp/binarydeb/ros-indigo-stage-4.1.1/libstage/world.cc CreateModel)
ANSWER: http://answers.ros.org/question/33973/stage-error-in-fuerte/
An easy solution: $ perl -p -i -e ‘s/laser/ranger/g‘ $(find . -name *.world) $(find . -name *.inc)
Tip:
Use comment <!-- & --> to disable some lines to position the error source.
in willow-pr2-5cm.world
looks like you also have to wrap your laser in a "sensor" block...
define topurg ranger
(
sensor(
range_max 30.0
fov 270.25
samples 1081
)
# generic model properties
color "black"
size [ 0.05 0.05 0.1 ]
)
Has now become:
define topurg ranger
(
sensor(
range_max 30.0
fov 270.25
samples 1081
)
# generic model properties
color "black"
size [ 0.05 0.05 0.1 ]
)
4. rviz Robot Model Status Error ---- no robot model imported
Because there is no robot model imported. For now, just ignore it.
5. run slam in stage and rviz
$ roslaunch slam_karto karto_stage.launch
use Nav_goal in rviz to navigate the robot
implement "slam_karto" package in Stage simulation