第7章---机器人导航(仿真)

本文介绍了SLAM建图算法、坐标系之间的转换,包括雷达测距到机器人距离的转换,以及rviz中坐标系的设置。重点讲解了amcl定位节点和代价地图的构成,如静态地图、动态障碍物处理和自定义地图数据。
摘要由CSDN通过智能技术生成

 1.SLAM建图算法

 2.

词的解释
解释
单继承在坐标系转换时一个坐标系:只能有一个父级,可以有多个子级
定位跳变

无跳变:下一次计数都是基于上一次的计算,不会出现突然变大或变小

跳变:每次测距没有关系,都是从参考点开始的;传感器本身有误差,同一个距离测距,第一次是5m,第二次是4.9m,会有0.1m误差,这就情况就成为跳变。

所需的坐标变换
雷达坐标系→基坐标系雷达测距,测出来的是雷达的,还要转换成机器人自身与障碍物的距离
基坐标系→里程计坐标系

机器人走的过程中的定位有关

里程计和传感器结合使用

导航过程:http://t.csdn.cn/SvCxv

3.rviz显示 

  •  这里的Fixed Frame是参考的根坐标系:下拉可更改
      <!-- 关键参数:坐标系 -->
      <param name="base_frame" value="base_footprint"/><!--底盘坐标系-->
      <param name="map_frame" value="map"/><!--地图坐标系-->
      <param name="odom_frame" value="odom"/> <!--里程计坐标系-->

在这三种不同坐标系下展示的结果是不一样的

  • 左下角Add添加的是组件,对应功能添加对应组件

4.保存地图的yaml文件的参数:

#1.声明地图图片资源的路径(相对路径或绝对路径)
image: /home/interest/fz6/src/navigation7/map/test.pgm  #绝对路径
#2.地图刻度尺,单位是:米/像素
resolution: 0.050000

#3.地图的位姿(相对于rviz中的原点的位姿);
# 按照右手坐标系,红轴向上,绿轴向左,以右下角为参照偏移
# 值1:x方向上的偏移量
# 值2:y方向上的偏移量
# 值3:地图的偏航角度(单位是弧度)
origin: [-50.000000, -50.000000, 0.000000]

# 4、5.结合用来判断地图上的某个像素是否是障碍物
# 最终地图结果:白色是可通行区域,黑色是障碍物,蓝灰是未知区域
# 判断规则:
#规则1.地图中的每个像素都有取值[0,255];白色255,黑色0;像素值设为x
#规则2:根据像素值计算一个比例:p=(255-x)/255;白色0,黑色1,灰色是介于0-1的值
#规则3:判断是否是障碍物,p>occupied_thresh就是障碍物;p<free_thresh就是无物,可以自由通行
#4.占用阈值
occupied_thresh: 0.65
#5.空闲阈值
free_thresh: 0.196

# 6.取反,颠倒黑白
negate: 0

5.编写amcl定位节点相关的launch文件

interest@interest:~$ roscd amcl
interest@interest:/opt/ros/noetic/share/amcl$ ls
cmake  examples  package.xml
interest@interest:/opt/ros/noetic/share/amcl$ ls examples/
amcl_diff.launch  amcl_omni.launch
interest@interest:/opt/ros/noetic/share/amcl$ gedit examples/amcl_diff.launch 
                                             //gedit打开文档内容

6.

代价地图的组成(多层叠加)
静态层SLAM绘制的静态地图
障碍物层导航中传感器感知的障碍物(可能是会移动的,不是固定的)
膨胀层给障碍物设置一个膨胀区,为避免碰撞而设置的安全区域
自定义层根据需要自己设置的地图数据,地图上没有后来自己添加的

7.Vscode中Ctrl+F搜索后能全部替换

 8.打印数据

rostopic echo /map >> map1.text   打印出一个文本
rostopic echo /map                打印到控制台

作者:21赛项负责人许燚

一、选题背景 随着科技的不断发展,机器人技术逐渐成为了人们关注的热点之一。而在现代物流、制造、煤矿等行业中,巡检机器人已成为智能物流、智能制造、智能煤矿的重要组成部分。而基于巡检机器人导航技术中,路径规划是其中的关键环节之一。目前,市面上有很多路径规划算法,如A*算法、Dijkstra算法、RRT算法等。但这些算法都有其局限性,所以我们需要一种更加高效、精准的算法。 二、选题意义 本课题旨在提出一种基于双向长短时记忆网络(Bi-LSTM)的巡检机器人路径规划算法,该算法利用Bi-LSTM的高效性能和能力,可以更加准确地对巡检机器人路径进行规划。同时,该算法具有以下优点: 1. 准确性高:Bi-LSTM能够实现序列到序列的映射,可以更精准地对路径进行规划。 2. 效率高:Bi-LSTM采用并行运算,可以大幅度缩短路径规划所需时间。 3. 适应性强:Bi-LSTM能够适应不同巡检机器人的路径规划需求,使路径规划更加灵活。 三、研究内容 本课题的具体研究内容包括: 1. 分析巡检机器人路径规划问题,研究现有路径规划算法的优缺点。 2. 设计基于双向长短时记忆网络的巡检机器人路径规划算法,提高路径规划的准确性和效率。 3. 对算法进行编程实现并进行实验验证,评估算法的性能和可行性。 四、研究方法 本课题的研究方法主要包括: 1. 文献研究:对现有的巡检机器人路径规划算法进行分析、总结并提取其优缺点,为后续的算法设计提供参考。 2. 算法设计:依据巡检机器人的行动特点,设计适合该机器人路径规划需求的基于Bi-LSTM的路径规划算法。 3. 编程实现与实验验证:利用Python等编程语言实现算法,利用真实的机器人数据和统计分析方法对算法进行验证,评估算法的性能和可行性。 五、进度计划 本课题的进度计划如下: 阶段 | 工作内容 | 时间安排 --|--|-- 第一阶段 | 文献研究和算法设计 | 2022年10月-2023年3月 第二阶段 | 算法编程实现和实验验证 | 2023年4月-2023年9月 第三阶段 | 数据分析和性能评估 | 2023年10月-2024年1月 第四阶段 | 论文撰写及答辩 | 2024年2月-2024年5月 六、预期成果 本课题预期达到以下成果: 1. 设计出一种基于Bi-LSTM的巡检机器人路径规划算法,通过实验验证该算法的性能和可行性。 2. 对比该算法与传统的路径规划算法,得出该算法的优势和不足。 3. 提出该算法在巡检机器人等领域中的应用前景,并对路径规划领域提出一些建议。 4. 完成论文的撰写和答辩。 七、参考文献 [1] 秦华杰. 基于遗传算法和Dijkstra算法的路径规划及其应用研究[D]. 河南大学, 2006. [2] 张旭, 王恒鹏. 基于RL和A*算法的无人机路径规划研究[J]. 计算机工程与应用, 2020, 56(2): 60-66. [3] 徐伟, 何桂军, 刘手旺. 基于改进的A*算法的无人机路径规划[J]. 系统仿真学报, 2021, 33(1): 92-100. [4] Hochreiter S && Schmidhuber J. Long Short-Term Memory[J]. Neural Computation, 1997, 9(8): 1735-1780.
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值