- 本教程来自:Nav2中文网
- Nav2交流社区:https://fishros.org.cn/forum
- ROS2/Nav2千人交流群:(QQ)139707339
- 更多精彩教程请关注微信公众号:鱼香ROS
- 欢迎添加机器人小伊微信,解锁机器人学习特殊服务
本文档将引导您完成安装 Nav2 二进制文件并在 Gazebo 模拟器中导航模拟 Turtlebot 3的过程。 [校准@haisenzeng]
注解
有关其他情况,例如从源代码构建或与其他类型的机器人一起工作,请参阅 编译和安装 。 [校准@haisenzeng]
警告
这是一个Turtlebot 3 操作说明的简化版本。如果您打算在此处提供的最小示例之外继续使用本机器人,我们强烈建议您遵循 official Turtlebot 3 manual [校准@haisenzeng]
安装- 按照官方文档中的说明安装 ROS 2 binary packages [校准@haisenzeng]
- 使用操作系统中的包管理器安装 Nav2 包: [校准@haisenzeng]
sudo apt install ros--navigation2 sudo apt install ros--nav2-bringup
- 安装Turtlebot 3 软件包: [校准@haisenzeng]
sudo apt install ros--turtlebot3*
-
在 GUI 中启动一个终端 [校准@haisenzeng]
-
设置秘钥环境变量: [校准@haisenzeng]
source /opt/ros//setup.bash export TURTLEBOT3_MODEL=waffle export GAZEBO_MODEL_PATH=$GAZEBO_MODEL_PATH:/opt/ros//share/turtlebot3_gazebo/models
-
在同一个终端中,运行: [校准@haisenzeng]
ros2 launch nav2_bringup tb3_simulation_launch.py
注解
对于
ROS2 Dashing Diademata
或更早版本请,使用nav2_simulation_launch.py
。然而,建议使用最新 ROS2长期支持发行版 保证更好的稳定性和功能完整性。 [校准@haisenzeng]此启动文件将在
turtlebot3_world
世界中使用AMCL定位器启动Nav2。它还将启动一个机器人状态发布端以提供一个带有 Turtlebot3 URDF 和 RVIZ 的 Gazebo 实例的转换,。 如果一切正确启动,你会看到RViz和Gazebogui这样: [校准@haisenzeng] -
单击 RViz左下角的 “启动” 按钮。这将导致Nav2变为激活状态。它应该改变外观以显示地图。
启动后,机器人最初不知道它在哪里。默认情况下,Nav2会等待用户给机器人一个大致的起始位置。查看机器人在Gazebo中的位置,并在地图上找到该位置。通过点击RViz中的"2D Pose Estimate" 按钮,然后通过在地图上机器人预估的位置处点击来设置机器人初始位置 。可以通过向前拖动刚才单击的位置来设置机器人起始的移动方向。 [校准@haisenzeng]
目前为止如果使用的都是默认值,则该机器人应大致如下图所示。 [校准@haisenzeng]
如果设置的机器人位置不完全正确,那也没关系。Nav2在导航时会对位置进行优化。如果愿意,也可以再次单击"2D Pose Estimate"按钮并重新尝试设置机器人的初始位置。 [校准@haisenzeng]
一旦设置好了机器人的初始位置,就会完成坐标变换树,同时Nav2将会完全激活并准备就绪。这时就可以看到机器人和点云了。 [校准@haisenzeng]
接下来,点击 “Navigaton2 Goal” 按钮并选择一个目的地。这会调用BT导航仪(navigator)通过动作服务器到达该目标位置。可以通过在RViz左下角显示的Navigation 2 rviz插件暂停(取消)或重置该动作。 [校准@haisenzeng]
现在就可以看到机器人在移动了! [校准@haisenzeng]
- 本文主要校准贡献:haisenzeng
- 本文遵循知识共享协议,禁止未授权商用转载