移动机器人技术-课件 项目6-任务4-基于ROS的机器人SLAM算法和导航.pptx

移动机器人技术-课件 项目6-任务4-基于ROS的机器人SLAM算法和导航.pptx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

项目六:移动机器人高阶认知与实践

基于Turbot3机器人的实践

任务四:基于ROS的机器人SLAM算法和导航

任务目标:

1.了解SLAM的基本定义、分类。

2.了解并实践基于激光雷达的Gmapping算法。

3.了解并实践基于视觉的cartographer算法。

4.熟悉并实践机器人导航算法。

知识储备一SLAM的基本定义

SLAM(SimultaneousLocalizationandMapping,同时定位与地图构建)问题可以简单描述为:

将一个移动设备(如机器人、无人机、手机、汽车、智能穿戴设备等)从一个未知环境中的未知位置出发,在运动过程中通过传感器(如激光雷达、相机等)观测定位自身位置和姿态,让移动设备一边移动一边以增量的形式描绘出此环境地图,从而达到同时定位和地图构建的目的。

知识储备一SLAM的基本定义

SLAM最早被应用在机器人领域,其目的是在没有任何先验知识的情况下,根据传感器数据能够自主构建周围环境地图,同时根据这个地图推测自身的位置。一般来说,机器人自主移动到指定位置的过程可以分解为定位、建图和路径规划三个任务,而SLAM主要解决定位与建图问题。

知识储备一SLAM的基本定义

定位是用于估计机器人相对于地图的位姿(位置与姿态),建图是指机器人创建环境空间模型的过程。地图一方面可以帮助机器人配合自身的传感器进行实时定位,同时也用于后续展开行动时,导航过程的路径规划。

自主运动的两大基本问题

我在什么地方?——定位

周围环境是什么样子?——建图

定位与建图=内外兼修

定位侧重对自身的了解,建图侧重对外在的了解

相互关联

准确的定位需要精确的地图

精确的地图来自准确的定位

知识储备二SLAM的分类

SLAM主要可分为基于激光的SLAM和基于视觉的SLAM。

基于激光的SLAM方法是成熟且可信的方法,能提供机器人本体与周围环境障碍物间的距离信息,能以较高精度检测出机器人周围障碍点的角度和距离,进而实现SLAM、避障等功能。但激光雷达存在着价格昂贵、获取信息量有限(稀疏点云、无彩色信息)等缺点。视觉SLAM是以相机为主要传感器的SLAM系统,相比于激光雷达,同样的检测相机成本低,且采集的图像信息比激光雷达得到的信息丰富,有利于后期的处理,但存在着计算量大、对环境假设强和易受干扰等缺点。

知识储备三经典开源SLAM算法

1.基于激光雷达的Gmapping算法

Gmapping是一个基于2D激光雷达使用RBPF(Rao-BlackwellizedParticleFilters)算法完成二维栅格地图构建的SLAM算法。其优点是Gmapping可以实时构建室内环境地图,在较小场景中计算量少,且地图精度较高,同时对激光雷达扫描频率要求较低。但随着环境增大,构建地图所需的内存和计算量就会变得巨大,因此Gmapping不适合大场景构图。

2.基于cartographerslam算法

Cartographer是Google推出的一套基于图优化的激光SLAM算法,它同时支持2D和3D激光SLAM,可以跨平台使用,支持Lidar、IMU、Odemetry、GPS、Landmark等多种传感器配置。是目前落地应用最广泛的激光SLAM算法之一。cartographer采用基于google开发的ceres非线性优化的方法,基于submap子图构建全局地图的思想,能有效的避免建图过程中环境中移动物体的干扰。并能天然的输出协方差矩阵,后端优化的输入项。

工程实践一基于激光雷达的Gmapping算法构建地图

1.下载rosgmapping包,并把算法包放置到工程包里。放置目录为:~/home/leo/src/mapping。该步骤是在LEO机器人进行。

LEO:$cd~/dashgo_ws

LEO:$chmod777leo-R

LEO:$catkin_make

LEO:$sourcedevel/setup.bash

2.PC端远程进入LEO机器人,并在LEO机器人中启动建图launch文件。

CP:$ssheaibot@00

LEO:$roslaunchdashgo_navgmapping_imu.launch

3.在电脑PC端启动rviz(可视化),观察建图过程。

PC:$exportROS_MASTER_URI=00:11311

PC:$roslaunchdashgo_rvizview_navigation.launch

工程实践一基于激光雷达的Gmapping算法构建地图

4.启动键盘操作

CP:$ssheaibot@00

LEO:$cd~/leo_ws

LEO:$sourcedevel/setup.bash

LEO:$rosrundashgo_tools

文档评论(0)

balala11 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档