本文介绍 ROS武功秘籍

ROS武功秘籍

This article was original written by Jin Tian, welcome re-post, first come with https://jinfagang.github.io . but please keep this copyright info, thanks, any question could be asked via wechat: jintianiloveu

这是ros的一系列记录,其中包括,从0到自己做一个仿真机器人的所有流程。包括自己录制地图,使用地图,进行导航, 机器人控制,局部规划,全局规划,避障算法等一系列应用。

导航

导航部分包含了整个机器人核心模块,没有导航机器人无法走,没有导航,你的避障算法在牛逼也没有用武之地。但是此时此刻,我们需要掌握的并不是直接到导航这一步。而是见地图。 那么问题来了,这地图要怎么建呢?这里的地图有两个,一个是2D的地图,一个是3D的点云地图(高精度地图),我们先看看使用很广泛的2D地图是如何建立起来的。

  1. 首先安装相应的依赖
cd ~/catkin_ws/src/
git clone https://github.com/ros-perception/openslam_gmapping
git clone https://github.com/ros-perception/slam_gmapping.git
git clone https://github.com/ros-planning/navigation.git
git clone https://github.com/ros/geometry2.git
git clone https://github.com/ros-planning/navigation_msgs.git
cd ~/catkin_ws && catkin_make

此时,你所需要的slam_gmapping 等包就具备了。接下来要做什么呢?

  1. 启动仿真机器人,我们实时的录一段地图

接下来,得实时的来录制一段地图了。我们要玩的东西,就是turtlebot3,一个基于gazebo的仿真机器人。

git clone https://github.com/ROBOTIS-GIT/turtlebot3.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3_machine_learning
git clone https://github.com/ROBOTIS-GIT/turtlebot3_msgs.git
git clone https://github.com/ROBOTIS-GIT/turtlebot3_simulations

所有的东西就安装完了,此时此刻,我们需要启动一下世界里面的gazebo机器人。

# add robot model to zshrc
echo 'export TURTLEBOT3_MODEL=waffle' >> ~/.zshrc
roslaunch turtlebot3_gazebo turtlebot3_world.launch