登录

  • 登录
  • 忘记密码?点击找回

注册

  • 获取手机验证码 60
  • 注册

找回密码

  • 获取手机验证码60
  • 找回
毕业论文网 > 毕业论文 > 机械机电类 > 机械设计制造及其自动化 > 正文

未知环境下的机器人路径搜索算法与实验研究毕业论文

 2020-02-19 07:02  

摘 要

当今社会人类活动范围日渐扩大,而很多活动已经不适合人力来完成,使用机器人来完成这些任务,从而减少人力负担、规避可能存在的风险,便是如今时代工程人员需要研究的方向。作为一种新时代的生产工具,机器人表现出了极大的优越性。他们可以提高生产效率,减轻劳动强度,改变生产模式等。近年来机器人开始广泛应用于娱乐、体育、工业、服务领域中, 尤其在一些作业环境比较恶劣的情况下, 如焊接、火灾侦察、生化探测、隧道凿岩及抢险救灾等,将人们从危险,繁重,恶劣的工作环境中解放出来。

同步定位与地图构建 SLAM(Simultaneous Locali-zation and Mapping)是移动机器人研究领域的热点和难点,是移动机器人在未知环境中实现自主导航的前提。SLAM 是指移动机器人在未知环境移动过程中通过自身携带的传感器获得环境信息增量式建立环境地图,同时利用已建立的地图来更新自身的位置与位姿。同步定位与地图构建过程中位置和地图的估算形成了一个相辅相成、不断迭代的过程,其本质是一个状态估计问题,主要通过基于滤波器或基于平滑的方法进行求解。

移动机器人的路径搜索和导航是机器人学的传统课题,在假设机器人环境已知的条件下,已经有了大量的研究成果。在实际应用中,环境对于机器人来说往往只是部分已知甚至是完全未知的,不完整环境信息下的机器人导航通常是基于传感器数据的.和已知环境下的方法相比,基于传感器的方法更侧重发现一条可行的通往目标点的路径,而不是去寻找最优的路径。而本课题所研究的背景环境,便是在隧道挖掘过程中,设计隧道机器人去完成各种的探测工作。而对于这样一台隧道机器人而言,尽管隧道挖掘会有工程规划图,但隧道内的实际具体环境仍然是一个未知环境,因此需要做到在这样的未知环境下进行路径搜索,便是本课题研究的内容。

关键词:机器人;SLAM;人工智能; 自主探索

Abstract

In today's society, the scope of human activities is expanding, and many activities are not suitable for human beings to complete. Using robots to accomplish these tasks, thereby reducing the burden of manpower and avoiding possible risks, is the direction that engineers of today's era need to study. As a production tool of a new era, robots have shown great superiority. They can increase production efficiency, reduce labor intensity, and change production patterns. In recent years, robots have been widely used in the fields of entertainment, sports, industry, and service. Especially in some cases where the working environment is relatively harsh, such as welding, fire reconnaissance, biochemical detection, tunnel drilling and rescue and disaster relief, people are at risk. Heavy, ruined in a harsh working environment.

Synchronous Positioning and Map Construction SLAM (Simultaneous Locali-zation and Mapping) is a hotspot and a difficult point in the research field of mobile robots. It is the premise of mobile robots implementing autonomous navigation in an unknown environment. SLAM refers to the mobile robot incrementally establishing an environment map by obtaining environmental information through sensors carried by itself during the movement of an unknown environment, and using the established map to update its position and posture. Synchronous positioning and the estimation of position and map during map construction form a complementary and iterative process, which is essentially a state estimation problem, which is mainly solved by filter-based or smoothing-based methods.

The path search and navigation of mobile robots is a traditional subject of robotics. Under the assumption that the robot environment is known, there have been a lot of research results. In practical applications, the environment is often only partially known or even completely unknown to robots. Robot navigation under incomplete environmental information is usually based on sensor data. Compared with methods in known environments, sensor-based methods More focus on finding a viable path to the target point, rather than finding the optimal path. The background environment studied in this subject is to design tunnel robots to complete various exploration tasks during the tunnel excavation process. For such a tunnel robot, although the tunnel excavation will have an engineering plan, the actual specific environment in the tunnel is still an unknown environment. Therefore, it is necessary to perform path search in such an unknown environment. Content of the study.

Key words: robot; slam; artificial intelligence; automous exploration

目录

摘要 I

Abstract II

1 绪论 1

1.1 背景与意义 1

1.2国内外机器人SLAM发展现状 2

1.3 设计的方法与内容 4

1.3.1 设计的方法 4

1.3.2 设计的内容 4

2 机器人实验平台的搭建 5

2.1 机器人实验平台概述 5

2.1.1机器人硬件配置 5

2.1.2 机器人软件配置 5

3 SLAM算法的探索 6

3.1 SLAM算法的概述 6

3.2 Cartographer算法分析 6

3.2.1 Cartographer算法摘要 6

3.2.2 Cartographer机器人模型 6

3.2.3 点特征 7

3.2.4 线特征 8

3.2.5 占用网格图 8

3.2.6 Cartographer框架 10

3.2.7 Cartographer 实验结果 11

3.3 Hector算法分析 12

3.3.1 Hector算法摘要 12

3.3.2 Hector 算法实验结果 13

3.4 SLAM算法选择 14

4 自主探索算法分析 15

4.1 自主探索算法概述 15

4.2 自主探索算法实现 15

4.2.1 深度优先搜索 15

4.2.2 深度优先搜索实现 17

5全文总结 20

致谢 21

参考文献 22

1 绪论

1.1背景与意义

当今社会人类活动范围日渐扩大,而很多活动已经不适合人力来完成,使用机器人来完成这些任务,从而减少人力负担、规避可能存在的风险,便是如今时代工程人员需要研究的方向。作为一种新时代的生产工具,机器人表现出了极大的优越性。他们可以提高生产效率,减轻劳动强度,改变生产模式等。近年来机器人开始广泛应用于娱乐、体育、工业、服务领域中, 尤其在一些作业环境比较恶劣的情况下, 如焊接、火灾侦察、生化探测、隧道凿岩及抢险救灾等,将人们从危险,繁重,恶劣的工作环境中解放出来。

上个世纪 60 年代以来,工业生产领域中逐渐出现了机械加工,检测,装配,喷涂等各种类型的机器人,大大提高了产品质量和生产效率。然而随着机器人的不断发展,人们逐渐发现这些固定于某一位置操作的机器人不能满足很多现实的应用需求。这些商用的机器人存在一个根本性的缺点:缺乏机动性。其工作和运动的范围是有限的。因此在 20 世纪 80 年代后期,许多国家和地区开始有计划地开展了对移动机器人技术的研究。

移动机器人的路径搜索和导航是机器人学的传统课题,在假设机器人环境已知的条件下,已经有了大量的研究成果。在实际应用中,环境对于机器人来说往往只是部分已知甚至是完全未知的,不完整环境信息下的机器人导航通常是基于传感器数据的.和已知环境下的方法相比,基于传感器的方法更侧重发现一条可行的通往目标点的路径,而不是去寻找最优的路径。而本课题所研究的背景环境,便是在隧道挖掘过程中,设计隧道机器人去完成各种的探测工作。而对于这样一台隧道机器人而言,尽管隧道挖掘会有工程规划图,但隧道内的实际具体环境仍然是一个未知环境,因此需要做到在这样的未知环境下进行路径搜索,便是本课题研究的内容。

目前不完整环境信息下的路径搜索与导航方法主要分为以下几类:第一类方法是在机器人行进过程中,通过传感器不断地收集环境信息,并根据新的环境信息频繁地重新规划和调整路径.机器人需要维护环境的全局地图,机器人根据当前的地图规划出路径,然后沿该路径前进一段时间,利用这段时间内收集到的新信息更新全局地图,然后用更新过的全局地图重新规划或调整现有的路径,如此循环直至到达目标位置。第二类是基于局部规划的方法.其基本思想是构造一个“导航函数”,用以在传感器读数和机器人行为动作之间建立映射关系.映射关系可以选用局部势能场法等固定的算法,也可以通过机器学习的办法来动态获得,如模糊规则法。由于“导航函数”在传感器数据相同的情况下会有相同的输出因此这类方法的主要困难是如何解决死循环以及局部极小值问题.第三类是完全应激式的方法,其代表是Bug算法系列(包括bug1、bug2等).在这类算法中,机器人沿连接目标点和机器人当前位置的最短直线前进,在遇到障碍时采用边缘跟踪的方法绕过障碍物,然后再次沿直线前进.该方法的主要不足是机器人无法在左右两个绕行方向间选择较优的一个,而错误的绕行方向常常严重增加路径长度,降低效率.

同步定位与地图构建 SLAM(Simultaneous Locali-zation and Mapping)是移动机器人研究领域的热点和难点,是移动机器人在未知环境中实现自主导航的前提。SLAM 是指移动机器人在未知环境移动过程中通过自身携带的传感器获得环境信息增量式建立环境地图,同时利用已建立的地图来更新自身的位置与位姿。同步定位与地图构建过程中位置和地图的估算形成了一个相辅相成、不断迭代的过程,其本质是一个状态估计问题,主要通过基于滤波器或基于平滑的方法进行求解。

1.2国内外机器人SLAM发展现状

同步定位与地图构建 SLAM(Simultaneous Locali-zation and Mapping)是移动机器人研究领域的热点和难点,是移动机器人在未知环境中实现自主导航的前提。SLAM 是指移动机器人在未知环境移动过程中通过自身携带的传感器获得环境信息增量式建立环境地图,同时利用已建立的地图来更新自身的位置与位姿。同步定位与地图构建过程中位置和地图的估算形成了一个相辅相成、不断迭代的过程,其本质是一个状态估计问题,主要通过基于滤波器或基于平滑的方法进行求解。

Doucet 等学者提 出 基 于 Rao-Blackwellized 粒 子 滤 波 器 RBPF(Rao-Black wellized Particle Filters)的 SLAM 方法,此算法能够较好的近似移动机器人位姿和环境地图的联合概率密度,但其存在计算复杂度较高、占用较大内存实时性较差等问题,因此之后很多学者针对该算法存在的问题进行了多种不同形式的改进;也有学者对激光雷达与单目视觉相融合的 SLAM 进行了研究,将移动机器人所处环境中的某些相关特征进行联合形成有意义的环境地标,虽然有效减少数据的不确定性,但其计算量大实时性差;还有一种基于退火参数优化混合提议分布的RBPF 算法,该算法不仅能够减少所需粒子数而且保持了粒子多样性,但实验验证其系统鲁棒性较低;也存在采用了在计算提议分布时将里程计信息与激光采集的距离信息进行融合的方法,验证了其可以有效减少了所需粒子数并降低了预测阶段机器人位姿的不确定性,但由于激光数据比较单一其实验效果仍然不佳。

传感器中常见使用的是激光雷达,激光雷达具有全天候、远距离、不受光线影响等优点,在智能机器人感知领域应用广泛。针对激光雷达点云(激光雷达扫描障碍物表面形成的反射点集合)数据特点,国内外研究者提出了很多有效的运动目标检测跟踪方法。常用的基于激光雷达的运动目标检测跟踪方法有基于栅格地图的方法和基于相似度匹配的方法,2013年Schutz等人提出一种基于多层激光雷达的障碍物建模与跟踪方法,该方法使用栅格地图对障碍物轮廓建模,克服传统的点模型和框模型对障碍物轮廓建模时信息的丢失,提高了运动目标检测跟踪正确率,但该方法栅格地图构建复杂,实时性较低。2016年中国科学技术大学的黄如林等人提出一种基于多特征融合的运动目标检测跟踪方法,该方法融合运动目标几何特征和回波脉冲宽度特征进行相邻帧间障碍物匹配,有效提高了运动目标检测跟踪正确率,但该方法在目标跟踪过程中,采用全局搜索的方式进行障碍物匹配,实时性仍然较低。而本课题同样采用激光雷达,在此基础之上可以采用与机器人视觉二者融合这样的更复杂的技术方法,通过具体的实验测试,收集数据并对这些数据进行分析处理,得出一个合理可行的路径搜索算法,便是本课题的任务。

1.3 设计的方法与内容

1.3.1 设计的方法

本文应用前人的机器人导航的技术,结合目前实验室的设备和自己对算法的理解。拟采用如下方法:

1,使用已有的机器人底盘上的stm32,读取激光雷达和轮子里程计的数据。

2,使用已有的Cartographer和hector算法,完成绘制地图的工作。

3,使用深度优先搜索,完成自主探索的功能

1.3.2 设计的内容

本文的设计内容主要包括实验的具体开展工作,应遵循以下几点原则:

(1)机器人底盘的移动速度不能过快,防止发生危险;

(2)应设置急停按钮,避免出现危险时,机器人无法停下;

(3)能远程使用电脑操控,方便调试;

(4)能远程通过电脑进行可视化,方便结果的展示;

(5)尽量与周围的物体保持一定的安全距离;

根据上述设计原则,本文主要就以下几部分进行设计分析。

(1)硬件配置

根据要求,应把激光雷达放在底盘的中心,同时也把断电开关放在容易够到的地方。速度不能超过0.2m/s,使用树莓派来进行和远程电脑的通信。

(2)软件配置

使用ROS的rviz可视化工具,方便查看机器人的行走状态和建出的地图。

2 机器人实验平台的搭建

2.1 机器人实验平台概述

2.1.1机器人硬件配置

根据设计理论,现设计出的机器人底盘如图2-1所示:

图2-1 机器人平台图

其中底盘左右两轮的伺服电机和激光雷达直接与stm32相连,stm32将接受到的数据处理后,通过树莓派wifi发送至电脑进行可视化,同时也从电脑接受行走和停止的命令。Stm32也有单独的硬件控制按钮,用于紧急停车,确保安全。

平台直径1010mm,两驱动轮之间距离710mm,激光雷达所在高度30mm,障碍物较少,视野清晰。

2.1.2 机器人软件配置

根据硬件设备的具体型号,选用keil uvision的c语言对Stm32进行开发,为了把精力花在算法的研究上,树莓派的串口通讯及wifi传输数据使用python开发,windows上的可视化工具使用的是ros的rviz。

3 SLAM算法的探索

3.1 SLAM算法的概述

要想让机器人能准确的在位置环境自主探索,首先要让机器人在人手动操纵的情况下建立对环境描述准确的地图。拟采用Google的Cartographer算法和Johannes Meyer的Hector算法。

3.2 Cartographer算法分析

3.2.1 Cartographer算法摘要

Cartographer是一种基于卡夫曼滤波的SLAM算法与网格映射技术相结合的方法。它是一个基于特征的解决方案,解决了SLAM问题,顾名思义,它的核心是一个扩展的卡尔曼滤波器。选择意味着几个限制,即算法假定高斯噪声,并要求对运动和测量模型进行线性化。尽管存在这些问题,但事实证明它是解决大满贯问题的成功方法。有关算法本身的更多详细信息,请参阅参考文献2、11和12。

基于马哈拉诺比距离的最近邻关联方法被用来匹配新的观察结果和过滤器状态空间中已经存在的物体。此外,还保留了一份候选名单,以防止使用虚假检测。只有当一个对象在短时间内被检测到3次时,它才会被添加到状态空间中。

以上是毕业论文大纲或资料介绍,该课题完整毕业论文、开题报告、任务书、程序设计、图纸设计等资料请添加微信获取,微信号:bysjorg。

相关图片展示:

您需要先支付 80元 才能查看全部内容!立即支付

企业微信

Copyright © 2010-2022 毕业论文网 站点地图