当前位置: 代码迷 >> 综合 >> turtlebot2 自主导航(机器人模拟gmapping的slam过程)
  详细解决方案

turtlebot2 自主导航(机器人模拟gmapping的slam过程)

热度:23   发布时间:2023-12-08 05:12:16.0

仿真环境

操作系统:ubuntu 16.04
ROS版本:kinetic
Gazebo版本:Gazebo7.11.0
仿真机器人:turtlebot
前期准备:

0、安装完整版的ROS。
kinetic版的ROS安装完后自带Gazebo7.0,注意,不同版本的ROS推荐使用不同的gazebo,在kinetic版本的ROS下,推荐使用Gazebo7.x,建议安装与自己ROS版本对应的Gazebo,这个Gazebo官网上有说明。

1.安装turtlebot2

首先你的电脑需要是ubuntu16.04系统,ROS版本是kinetic,我安装的是最全的那个kinetic

然后:

1)打开终端(ctrl+Alt+T)

sudo apt-get update

2)安装turtlebot相应的源,参考创客智造中indigo的源,链接如下:
继续在终端中:

sudo apt-get install ros-kinetic-turtlebot ros-kinetic-turtlebot-apps ros-kinetic-turtlebot-interactions ros-kinetic-kobuki-ftdi ros-kinetic-ar-track-alvar-msgs ros-kinetic-turtlebot-simulator

3)上面我们安装的源和indogo的相比,少了两个ros-kinetic-rocon-remocon 与ros-kinetic-rocon-qt-library,这两个需要手动安装:

cd ~/catkin_ws/src
git clone https://github.com/robotics-in-concert/rocon_qt_gui.git
git clone https://github.com/turtlebot/turtlebot_simulator.git

上面最后一个链接原来叫simulation,不过会下载不了,因为文件名现在已经变了,我进github里面看过,改成了simulator,而且自己下载后用起来也没问题,所以在这里是可以clone的。

下载后,在src里面会看到两个package。

4)回到catkin_ws目录下执行catkin_make,但是发现显示缺少东西,这时候还需要下载两个依赖源;

sudo apt-get install pyqt4-dev-tools
sudo apt-get install pyqt5-dev-tools

然后再catkin_make,显示成功就没问题啦。

2.接下来按照创客智造教程里面继续仿真就可以,主要用到两个可视化界面,一个gazebo,一个是rviz。在下载kinetic的时候,这两个软件包都有,但是,在你根据教程启动:

roscore
//新启动一个终端
roslaunch turtlebot_gazebo turtlebot_world.launch

在这里插入图片描述3.使用ros官方自带的gmapping算法建图

roslaunch turtlebot_gazebo gmapping_demo.launch

4.使用rviz查看 或 ./nav_rviz.sh

roslaunch turtlebot_rviz_launchers view_navigation.launch

5.使用键盘控制turtlebot移动

roslaunch turtlebot_teleop keyboard_teleop.launch 

6.先安装map-server

sudo apt-get install ros-kinetic-map-server

保存地图

rosrun map_server map_saver -f map/mygazebo

导航

1.关闭所有终端,修改map/mygazebo.yaml文件的路径(根据自己电脑路径做修改)
在这里插入图片描述

2按下面重新启动:

roslaunch turtlebot_gazebo turtlebot_world.launch
roslaunch turtlebot_gazebo amcl_demo.launch map_file:=/home/xx/map/mygazebo.yaml
roslaunch turtlebot_rviz_launchers view_navigation.launch

在这里插入图片描述ok,第一部分完成,接下来进一步学习源码

  相关解决方案