论文解读 | 机器人路径跟踪的受控纯追踪法

news2024/11/16 20:53:08

 原创 | 文 BFT机器人

01 摘要

这篇文章是关于机器人路径跟踪的受控纯追踪算法的研究。文章介绍了传统的纯追踪算法以及相关变体,并提出了受控纯追踪算法作为本文的主要贡献。该算法旨在适应实际环境中的服务和工业移动机器人,提供方法来调整机器人的平移速度以适应当前条件。文章还讨论了该算法在实际机器人系统中的实现和实验验证,并提供了结论。

02 受控纯追踪算法与其他局部轨迹规划技术的不同

受控纯追踪算法是一种局部轨迹规划技术,适用于现实世界中受约束和部分可观测环境中的服务和工业移动机器人。它提供了使机器人的平移速度适应当前条件的方法,例如在急转弯或在受限区域操作时降低速度。该算法使用线性调节成本函数在各种实际的移动机器人环境中提供高质量的行为。与其他局部轨迹规划技术相比,受控纯追踪是专门为移动机器人设计的,并提供了根据当前条件调整速度的方法。

03 受控纯追踪算法的目的是什么

该算法旨在提高服务和工业移动机器人在实际环境中的性能,特别是在受限制和部分可观测的环境中。它提供了一种方法来调整机器人的平移速度以适应当前条件,例如在转弯处或在狭窄区域操作时减少机器人速度。文章还通过实验验证了该算法的有效性,并指出该算法已经被广泛应用于实际机器人系统中。因此,该算法有助于提高服务和工业移动机器人在各种行业中的性能和应用范围。

04 算法的核心是什么?

其核心是通过调整机器人的平移速度以适应当前条件来提高机器人在实际环境中的性能。该算法使用线性调节成本函数来实现这一目标,并提供了高质量的行为,适用于各种实际移动机器人环境。相比传统纯追踪算法,受控纯追踪算法可以更好地适应实际环境,并提高机器人的安全性和效率。因此,该算法的核心是通过调整机器人速度来适应当前环境,从而提高机器人在实际环境中的性能和安全性。

05 论文原理

调节纯追求算法的第一阶段是变换输入路径到机器人的基坐标系中并进行修剪。在此过程中,路径曲率的确定被简化为公式1所示的简单代数表达式。

A. 受控纯追踪算法

变换前,确定,所有先前点将从存储路径中永久删除,以防止将来对过时的数据进行不必要的转换。转换后的路径也对所有的点进行修剪,其中,因为它们足够远,在t时不需要考虑它们。这些远路径点继续保存在存储的路径中,以便将来迭代,直到机器人沿着路径前进时接收到新的路径。

接下来,RPP(Regulated Pure Pursuit)将使用与公式2中描述的纯追踪算法相同的前瞻性选择机制。

前瞻距离与速度和前视增益成正比,以便在移动更快的同时使用更长的距离,从而不留下误导结果的机会。这在较大的平移速度范围内稳定了路径跟踪行为。该距离用于选择前导点。虽然路径点之间的插值被发现可以明显提高自动驾驶汽车速度下稀疏路径的平滑性,但从经验上看,在使用典型网格地图规划分辨率(0.025 m - 0.1 m)的服务和工业机器人速度下,这并没有带来太大的好处。然而,插值有利于在稀疏路径分辨率(0.1 - 1.0m)中使用。

期望的线速度,接下来由曲率和接近启发式进一步处理。两种启发式方法都适用于线速度,文章中取两者的最大值。

将接近启发式算法应用于机器人接近动态障碍物或固定基础设施时的线速度。这样做的目的是在碰撞可能性特别高的受限环境中减慢机器人的速度。降低固定基础设施附近的速度,通过减少狭小空间中小路径变化的影响,降低碰撞的可能性。

降低工业和服务机器人在接近动态主体(如人类)时的速度是一项常见的安全要求——允许机器人更快地做出反应,以防止潜在的伤害。该启发式的线性公式通过的比值和增益α来降低速度,以调整单个系统的响应。测试的其他公式,如指数和二次公式,对接近物体的惩罚太大,只包含一个狭窄的增益范围,这将导致在接近障碍物和完成机器人任务的速度之间进行可接受的权衡。

其中是应用启发式算法的障碍物的接近距离,是到障碍物的当前距离,α是缩放攻击行为启发式函数的增益,要求α≤1.0。α值越高,机器人在接近障碍物时的速度越快。的值应该根据机器人应用的系统需求来确定,即在机器人开始放慢其最大速度之前,障碍物可以接近到什么程度。

调整速度后,算法确定路径曲率。角速度是使用调节速度计算的,而不是期望的线速度,这可以防止相对于目标曲率的相应欠冲行为。最后,角速度,可以用公式3简单地求出来。

算法的最后一步是检查我们的路径跟踪命令是否有当前或即将发生的碰撞,这是RPP的新功能。给定的角速度和调节的线速度可以在时间上向前投射,得到一个圆弧。弧上的点以网格地图单元分辨率向前采样一段时间。

碰撞检查是基于碰撞的持续时间,而不是基于前瞻点,这样机器人离碰撞总是至少有一段设定的持续时间。在低速行驶时,在几十米或几百秒之外的前方进行碰撞检查可能是不明智的。相反,时间模式允许在有限的空间中进行精细的操作,在这种空间中,当前的速度命令可能在短距离(但长时间)之外不被允许。

B.实验效果

本文提出了一种改进的基于点对特征的点云6D姿态估计方法。该方法提出了一种PCA算法中封闭几何的法向解的方法,并引入了一种通过将体素网格划分为等效角度单元的高效采样方法。最后,采用ICP的变体、基于拟合点的验证步骤和NMS算法进行细化和验证。实验结果表明,该方法具有较高的效率和鲁棒性,平均召回率为0.87。

图1 论文实验中使用的机器人

图2 全系统实验行程,全长70米。

机器人将沿着一条路线通过图7所示的校园建筑中的三个控制点。该路线包括无碰撞的开放空间、封闭的大厅和大约70米的盲急转弯。机器人使用每种算法重复三次路径,数据如表3所示。本实验的目的是将RPP算法在系统级的一般行为与现有变体进行比较。

数据表明在整个系统级行为上差别不大——导航的平均时间在85-95秒之间。与之前的实验一致,PP (Pure Pursuit)确实显示了稍短的行进距离和增加的跟踪误差对应于路径抄近路。

这个实验最引人注目的特点是算法之间缺乏特别独特的结果。尽管RPP在狭窄的走廊和完成急转弯时减慢了机器人的速度,但令人惊讶的是,这些动作对高级导航指标没有显著影响。当考虑到试验之间的标准差时,三种算法的任务完成时间和平均速度是一致的。RPP的系统级性能与APP非常相似,因此我们得出结论,RPP的额外好处对系统设计人员来说几乎没有坏处。

事实上,解决方案架构师可以在使用RPP时适度提高机器人的最大速度,因为它在转弯和靠近障碍物时速度会变慢(机器人应用中速度的常见限制因素)。这大大提高了机器人系统的整体效率,同时确保了更高质量的安全特性。

论文资料:https://arxiv.org/abs/2305.20026  

更多精彩内容请关注公众号:BFT机器人

本文为原创文章,版权归BFT机器人所有,如需转载请与我们联系。若您对该文章内容有任何疑问,请与我们联系,将及时回应。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/637180.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

关于spring boot报javax/servlet/MultipartConfigElement错误以及的问题

springboot在启动时报java.lang.NoClassDefFoundError: javax/servlet/MultipartConfigElement 解决方法:将pom.xml文件中的provided删掉

盛元广通生物化学重点实验室化学品信息化安全管理系统

生物化学重点实验室是国家基础研究和高技术研究的重要基地,是培养和造就高层次创新型人才的重要基地。为保障实验室化学品安全使用,实验人员可通过现场或移动端管理系统实现化学品安全使用与存储。盛元广通生物化学重点实验室化学品信息化安全管理系统具…

方波信号拆分及合成

1. 前言 数字处理器产生的都是方波信号, 做EMC会有各种高频率的辐射超标。比如下图为EMC测试辐射图,其中480MHz左右频率超标,那么就需要分析这个频率是谁产生的,但是整个系统都没有谁使用了这么高的频率信号。但是一般根据经验都知…

mysql-explain-其他

eq_ref 主键和唯一索引的所有部分被连接使用,最多只会返回一条符合条件的记录【主键关联查询】 ref: 根节点二分查找 没有使用唯一索引,而是走了普通索引【二级索引】或者唯一索引的部分前缀,有可能查出多个符合条件的行。 range 范围扫…

全网最全的Python教程(非常详细),从零基础入门到上岗!

Python的火,有目共睹。Python陆续登上了IEEE、PYPL排行榜单之首,对于Python的崛起TIOBE排行榜也给予了回应:由于全球流行度在过去一年中涨幅最高! 同时人工智能的兴起,也给了Python无限可能,让Python越来越…

Systick实现中断-GD32

定时器中断-GD32 include "gd32f10x.h" #include "systick.h" #include "LED.h"volatile static uint32_t delay_reload; volatile static uint32_t delay_value;/*!\brief configure systick\param[in] none\param[out] none\retval …

asp.net试卷自动生成系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net试卷自动生成系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言开发 asp.net试卷自动生成系统VS开发sq…

Java 泛型:概念、语法和应用

文章目录 一、什么是 Java 泛型?二、为什么要使用泛型三、Java 泛型的语法四、Java 泛型的应用五、Java 泛型的示例六、总结 随着 Java 编程语言的不断发展和更新,Java 1.5 版本引入了一项全新的特性——Java 泛型(Java Generic)&…

Classic AUTOSAR专题 | I/O模块简介

书接上回,上期专题内容中小怿介绍了Classic AUTOSAR之存储模块,相信大家对存储以及NvM已经有了初步的认识了解。接下来我们将继续介绍Classic AUTOSAR专题之I/O模块,同时感兴趣的小伙伴还请持续关注后续内容~ 01 AUTOSAR I/O功能概述 I/O(Inp…

2023年6月DAMA-CDGA/CDGP数据治理工程师认证这里报名

DAMA认证为数据管理专业人士提供职业目标晋升规划,彰显了职业发展里程碑及发展阶梯定义,帮助数据管理从业人士获得企业数字化转型战略下的必备职业能力,促进开展工作实践应用及实际问题解决,形成企业所需的新数字经济下的核心职业…

深度学习应用篇-自然语言处理-命名实体识别[9]:BiLSTM+CRF实现命名实体识别、实体、关系、属性抽取实战项目合集(含智能标注)【下篇】

【深度学习入门到进阶】必看系列,含激活函数、优化策略、损失函数、模型调优、归一化算法、卷积模型、序列模型、预训练模型、对抗神经网络等 专栏详细介绍:【深度学习入门到进阶】必看系列,含激活函数、优化策略、损失函数、模型调优、归一化…

ZYNQ 7020 开发板开机检测

拿到开发板后检测开发板能否正常工作。 检测需要的工具:电脑、显示器(有HDMI接口)、HDMI线、鼠标、键盘、网线、USB转串口驱动软件。 在检测之前,先要在自己的电脑上安装好终端工具和USB转串口的驱动软件。 终端工具我安装的是 MobaXterm。 USB转串口的驱…

深入理解JavaScript模块化开发

前言: 随着JavaScript应用程序的复杂性不断增加,模块化开发成为了一种必备的技术。通过将代码划分为模块,我们可以提高代码的可维护性、可重用性和可扩展性。在本文中,我们将深入探讨JavaScript模块化开发的概念、优势和不同的模块…

热门自定义报表系统推荐,哪款自定义报表系统更功能更强大?

随着企业管理的日益复杂,越来越多的企业需要一款高效、灵活、易用的自定义报表系统来满足其各种报表制作和数据分析需求。然而,在众多自定义报表系统中,哪款更加强大?今天,我将向大家推荐5款热门自定义报表系统&#x…

设施设备管理系统

凡尔码搭建设施设备管理系统是一种为企业和机构提供维护和管理设备、设施、建筑物和环境等设施的系统。它通过自动化设施的巡检计划、保养计划、通知和维护任务,使设施维护管理的工作更高效率、更科学化,并提高了设施设备的可靠性和使用价值。该系统具有…

asp.net学生考勤管理系统VS开发sqlserver数据库web结构c#编程Microsoft Visual Studio

一、源码特点 asp.net学生考勤管理系统 是一套完善的web设计管理系统,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为vs2010,数据库为sqlserver2008,使用c#语言开发 asp.net试卷自动生成系统VS开发sq…

谈谈 NLP中 大语言模型 LLM的In-Context Learning(ICL) 能力

In-Context Learning(ICL) 1.介绍 自GPT-3首次提出了In-Context Learning(ICL)的概念而来,ICL目前已经变成了一种经典的LLMs使用方法。 2.思路 ICL主要思路是,给出少量的标注样本,设计任务相关的指令形成提示模板,用于指导待测…

Can We Predict Australian Rainfall?建立LSTM模型预测澳大利亚平均降雨量

数据集:Rain in Australia | Kaggle 数据探索 首先df pd.read_csv(weatherAUS.csv)读入数据,df.shape查看形状为(145460, 23)。 通过df[RainTomorrow].value_counts(dropnaFalse)查看下雨与不下雨标签各自的数量,No为110316,Ye…

初识分类问题

分类问题 根据尺寸把图像分类为纵向图像和横向图像,是二分类问题。 将图像数据转换为坐标: 白色的点是纵向图像,黑色的点是横向图像 若增加更多的图像数据: 分类的目的就是找到这条线,用一条线将图中白色的点和黑色的…