ROS与navigation教程-turtlebot-现有地图的自主导航
ROS与navigation教程-turtlebot-现有地图的自主导航
说明:
- 介绍如何完成建图之后,实现自主导航
步骤:
- 主机,新终端, 启动turtlebot
$ roslaunch turtlebot_bringup minimal.launch
- 主机,新终端, 启动指定地图
$ export TURTLEBOT_MAP_FILE=/tmp/my_map.yaml
例如
export TURTLEBOT_MAP_FILE:=
rospack find turtlebot_navigation/maps/willow-2010-02-18-0.10.yaml
主机,新终端,启动amcl
$ roslaunch turtlebot_navigation amcl_demo.launch
- 从机,新终端, 启动rviz
$ roslaunch turtlebot_rviz_launchers view_navigation.launch --screen
使用Remocon
新终端,执行
Remocon
指定地图:
export TURTLEBOT_MAP_FILE=/tmp/my_map.yaml
选择PC Pairing/Navigation
效果图:
在rviz中操作
(1)定位
刚启动,turtlebot并不知道自己在地图的什么位置,所以需要先初始化定位:
- 点击"2D Pose Estimate" 按钮
- 然后观察turtlebot机器人在地图中的大概位置,在该位置按住鼠标左键,并拖出一个箭头,箭头代表turtlebot的方向,此方向应该跟turtlebot的前方方向一致。
你会看到在turtlebot周边有很多小箭头围绕,这些小箭头就是评估机器人目前的相对位置,同时激光边缘应该跟墙面是重合的,如果不一致就重复定位操作,确保定位正确。
注意:在rviz中要设置 global options 的 fixed frame为 "map",再使用"2D Pose Estimate"
(2) 遥控
- 遥控可以与导航包一起使用,操控优先于自主导航命令。在进行自主导航之前,可以先进行遥控,可以让turtlebot的定位箭头进行聚合,让定位更加准确。
(3) 发送导航目标
当做好定位,就可以开始进行导航
发送目标:
- 点击"2D Nav Goal" 按钮
- 点住地图某点,并拖出一个箭头,再松开,即可指定目标点
设置成功之后,机器人即自动导航到目标点,如果中间要停止,就发送当前位置给机器人。
获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号