CN111055274A - 一种机器人路径的平滑方法及机器人 - Google Patents
一种机器人路径的平滑方法及机器人 Download PDFInfo
- Publication number
- CN111055274A CN111055274A CN201911192145.5A CN201911192145A CN111055274A CN 111055274 A CN111055274 A CN 111055274A CN 201911192145 A CN201911192145 A CN 201911192145A CN 111055274 A CN111055274 A CN 111055274A
- Authority
- CN
- China
- Prior art keywords
- path
- curve
- sub
- smoothing
- end point
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000009499 grossing Methods 0.000 title claims abstract description 90
- 238000000034 method Methods 0.000 title claims abstract description 26
- 238000005070 sampling Methods 0.000 claims description 110
- 238000004590 computer program Methods 0.000 claims description 4
- 238000004422 calculation algorithm Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000004888 barrier function Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Numerical Control (AREA)
Abstract
本申请适用于计算机技术领域,提供了一种机器人路径的平滑方法及机器人,包括:获取待平滑的全局路径;从全局路径确定第N个子路径,并对第N个子路径进行平滑处理,得到第N个子路径的平滑曲线;基于第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对第N+1个子路径进行平滑处理,得到第N+1个子路径的平滑曲线;重复执行该步骤,直至检测到第N+1个子路径的终点为全局路径的终点时,基于每个子路径对应的平滑曲线生成全局路径对应的平滑全局路径。通过上述方式,对全局路径中的每一段子路径均进行了平滑处理,提高了平滑全局路径平滑性,使得机器人根据平滑全局路径行走时非常稳定,进而提高了机器人的工作效率以及安全性。
Description
技术领域
本申请属于计算机技术领域,尤其涉及一种机器人路径的平滑方法及机器人。
背景技术
目前,机器人通常采用A*(A-Star)算法、快速扩展随机树(Rapidly exploringRandom Tree,RRT)路径规划算法等进行机器人的全局路径规划。然而,传统的这些路径规划算法规划出的全局路径平滑性很差,不利于机器人稳定行走。
发明内容
有鉴于此,本申请实施例提供了一种机器人路径的平滑方法及机器人,以解决传统的路径规划算法规划出的全局路径平滑性很差,不利于机器人稳定行走的问题。
本申请实施例的第一方面提供了一种机器人路径的平滑方法,包括:
获取待平滑的全局路径;
从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线;N为大于或等于1 的整数;
基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点不是所述全局路径的终点时,将 N递增1,并返回执行所述基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径。
进一步地,为了提升路径的平滑性,从所述全局路径确定第N 个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线可以包括:
从所述全局路径中截取所述第N个子路径;
对所述第N个子路径进行采样,得到所述第N个子路径对应的采样曲线簇;
对所述采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果;
基于每个所述评分结果,选取评分最高的曲线作为所述第N个子路径对应的平滑曲线。
进一步地,为了使得到的采用曲线簇更准确,对所述第N个子路径进行采样,得到所述第N个子路径对应的采样曲线簇可以包括:基于预设速度值、预设角速度值以及预设采样次数,对所述第N个子路径进行采样,得到所述采样曲线簇。
进一步地,为了准确地计算采样曲线簇中每条曲线对应的评分,对所述采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果可以包括:
计算每条所述曲线中包含的各个采样点与所述全局路径对应的终点之间的第一距离的总和;
计算每条所述曲线中包含的各个采样点与所述第N个子路径之间的第二距离的总和;
计算每条所述曲线中包含的各个采样点与障碍物之间的第三距离的总和;
基于预设权重系数、所述第一距离的总和、所述第二距离的总和以及所述第三距离的总和,计算每条曲线对应的评分结果。
进一步地,为了准确地计算采样曲线簇中每条曲线对应的评分,基于预设权重系数、所述第一距离的总和、所述第二距离的总和以及所述第三距离的总和,计算每条曲线对应的评分结果可以包括:
计算所述第一权重系数与每条曲线对应的第一距离的总和之间的乘积,得到每条曲线对应的第一乘积;
计算所述第二权重系数与每条曲线对应的第二距离的总和之间的乘积,得到每条曲线对应的第二乘积;
计算所述第三权重系数与每条曲线对应的第三距离的总和之间的乘积,得到每条曲线对应的第三乘积;
计算所述第一乘积、所述第二乘积以及所述第三乘积之和,得到每条曲线对应的评分结果。
进一步地,为了准确选取每个子路径对应的平滑曲线,进而提升基于这些平滑曲线生成的平滑全局路径的平滑性,基于每个所述评分结果,选取评分最高的曲线作为所述第N个子路径对应的平滑曲线可以包括:
基于每个所述评分结果对每条所述曲线进行排序;
根据排序结果确定所述第N个子路径对应的平滑曲线。
进一步地,为了提升平滑全局路径的平滑性,进而使机器人根据该平滑全局路径行走时更加平稳,当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径可以包括:
获取每条所述平滑曲线对应的起点和终点;
基于每个所述起点以及每个所述终点各自在所述全局路径中对应的位置,拼接所有所述平滑曲线,得到所述平滑全局路径。
本发明实施例的第三方面提供了另一种机器人,包括处理器、输入设备、输出设备和存储器,所述处理器、输入设备、输出设备和存储器相互连接,其中,所述存储器用于存储支持终端执行上述方法的计算机程序,所述计算机程序包括程序指令,所述处理器被配置用于调用所述程序指令,执行以下步骤:
获取待平滑的全局路径;
从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线;N为大于或等于1 的整数;
基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点不是所述全局路径的终点时,将 N递增1,并返回执行所述基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径。
本发明实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取待平滑的全局路径;
从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线;N为大于或等于1 的整数;
基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点不是所述全局路径的终点时,将 N递增1,并返回执行所述基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径。
本申请实施例提供的一种机器人路径的平滑方法及机器人具有以下有益效果:
本申请实施例,通过获取待平滑的全局路径;从全局路径确定第 N个子路径,并对第N个子路径进行平滑处理,得到第N个子路径的平滑曲线;基于第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对第N+1个子路径进行平滑处理,得到第N+1个子路径的平滑曲线;重复执行该步骤,直至检测到第N+1个子路径的终点为全局路径的终点时,基于每个子路径对应的平滑曲线生成全局路径对应的平滑全局路径。通过上述方式,对全局路径中的每一段子路径均进行了平滑处理,提高了平滑全局路径平滑性,使得机器人根据平滑全局路径行走时非常稳定,进而提高了机器人的工作效率以及安全性。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本申请一实施例提供的一种机器人路径的平滑方法的实现流程图;
图2是本申请提供的曲线对应的采样曲线簇示意图;
图3是本申请提供的待平滑的全局路径示意图;
图4是本申请提供的平滑全局路径示意图;
图5是本申请一实施例提供的一种机器人的示意图;
图6是本申请另一实施例提供的一种机器人的示意图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
请参见图1,图1是本发明实施例提供的一种机器人路径的平滑方法的示意流程图。本实施例中机器人路径的平滑方法的执行主体为机器人。如图1所示的机器人路径的平滑方法包括:
S101:获取待平滑的全局路径。
机器人获取待平滑的全局路径。具体地,机器人可通过常规的路径规划算法预先规划全局路径,并将规划好的全局路径标记为待平滑的全局路径。也可以是其他终端将待平滑的全局路径发送给机器人,机器人接收其他设备发送的待平滑的全局路径。
S102:从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线;N为大于或等于1的整数。
机器人基于待平滑的全局路径确定第N个子路径,并对第N个子路径进行平滑处理,得到第N个子路径对应的平滑曲线;其中,N 为大于或等于1的整数。具体地,机器人在待平滑的全局路径中截取第N个子路径,对第N个子路径进行采样,得到第N个子路径对应的采样曲线簇;对采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果;基于每个评分结果,选取评分最高的曲线作为第N 个子路径对应的平滑曲线。如N等于1时,机器人在待平滑的全局路径中截取第1个子路径,可以理解为在待平滑的全局路径中截取第 1段局部路径;对该子路径进行采样,得到与其对应的采样曲线簇;对采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果,选取评分最高的曲线作为该子路径对应的平滑曲线。
进一步地,为了提升路径的平滑性,S102可以包括S1021-S1024,具体如下:
S1021:从所述全局路径中截取所述第N个子路径。
机器人从待平滑的全局路径中截取第N个子路径。例如,当N 等于1时,从待平滑的全局路径的起点开始截取预设长度的路径,将其标记为第1个子路径。
S1022:对所述第N个子路径进行采样,得到所述第N个子路径对应的采样曲线簇。
机器人对第N个子路径进行采样,得到第N个子路径对应的采样曲线簇。具体地,可基于预设速度值、预设角速度值以及预设采样次数,对第N个子路径进行多次采样,得到第N个子路径对应的采样曲线簇。每次采样会得到一条采样曲线,对第N个子路径进行多次采样可得到多条采样曲线,这些采样曲线组合生成第N个子路径对应的采样曲线簇。如图2所示的采样曲线簇,由多条采样曲线构成,它们起点相同,每条曲线向不同的方向延伸。
进一步地,为了使得到的采用曲线簇更准确,S1022可以包括:基于预设速度值、预设角速度值以及预设采样次数,对所述第N个子路径进行采样,得到所述采样曲线簇。
具体地,可通过预设公式对第N个子路径进行采样,公式如下:
其中,Px、Py表示每一条采样曲线中各个采样点的坐标,Pth表示每一条采样曲线中各个采样点对应的方向角,根据该公式对子路径进行采样时,每一个采样点的生成均依赖于与其相邻的上一个采样点的坐标以及方向角。v、ω分别为预设速度值以及预设角速度值,均可预先设定、调整,当v、ω确定后基于该公式对子路径采样便可得到一条采样曲线;变换v、ω的值,继续对该子路径进行多次采样,得到多个不同的采样曲线;这些采样曲线构成了第 N个子路径对应的采样曲线簇。
S1023:对所述采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果。
机器人对采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果。具体地,可通过评分公式计算采样曲线簇中每条曲线对应的评分,评分公式如下:
F=α·Sg+β·Sp+γ·Sobs其中,Sg表示每条曲线中包含的各个采样点与待平滑的全局路径对应的终点之间的距离的总和,Sp表示每条曲线中包含的各个采样点与该曲线对应的子路径之间的距离的总和, Sobs表示每条曲线中包含的各个采样点与障碍物之间的距离的总和。α表示Sg对应的权重系数,β表示Sp对应的权重系数,λ表示Sobs对应的权重系数;F表示每条曲线对应的评分结果,即每条曲线对应的分数。具体地,机器人计算每条曲线中包含的各个采样点与待平滑的全局路径对应的终点之间的距离的总和;计算每条曲线中包含的各个采样点与第N个子路径之间的距离的总和;计算每条曲线中包含的各个采样点与障碍物之间的距离的总和;计算每个距离的总和与其对应的权重系数之间的乘积,计算所有的乘积之和得到每条曲线对应的评分结果。
进一步地,为了准确地计算采样曲线簇中每条曲线对应的评分, S1023可以包括S10231-S10234,具体如下:
S10231:计算每条所述曲线中包含的各个采样点与所述全局路径对应的终点之间的第一距离的总和。
机器人计算每条曲线中包含的各个采样点与待平滑的全局路径对应的终点之间的第一距离的总和。具体地,获取待平滑的全局路径对应的终点,计算每条曲线中包含的各个采样点与待平滑的全局路径对应的终点之间的距离值,将计算得到的同一条曲线上的采样点对应的距离值相加,得到该条曲线对应的第一距离的总和。通过同样的方式计算采样曲线簇中每条曲线对应的第一距离的总和。
S10232:计算每条所述曲线中包含的各个采样点与所述第N个子路径之间的第二距离的总和。
机器人计算每条曲线中包含的各个采样点与第N个子路径之间的第二距离的总和。具体地,可以是获取每条曲线中包含的各个采样点在第N个子路径中对应的垂直采样点,计算每个采样点与其对应的垂直采样点之间的距离值,将计算得到的同一条曲线上的采样点对应的距离值相加,得到该条曲线对应的第二距离的总和。采样曲线簇中的某些曲线会出现与子路径重合的情况,此时该曲线中的采样点与第N个子路径之间的距离可记为0。也可以是获取第N个子路径对应的终点,计算每条曲线中包含的各个采样点与第N个子路径对应的终点之间的距离值,将计算得到的同一条曲线上的采样点对应的距离值相加,得到该条曲线对应的第二距离的总和。通过同样的方式计算采样曲线簇中每条曲线对应的第二距离的总和。
S10233:计算每条所述曲线中包含的各个采样点与障碍物之间的第三距离的总和。
机器人计算每条曲线中包含的各个采样点与障碍物之间的第三距离的总和。具体地,获取机器人预设范围内的障碍物对应的位置坐标,计算每个曲线中包含的各个采样点与障碍物对应的位置坐标之间的距离值,将计算得到的同一条曲线上的采样点对应的距离值相加,得到该条曲线对应的第三距离的总和。通过同样的方式计算采样曲线簇中每条曲线对应的第三距离的总和。
S10234:基于预设权重系数、所述第一距离的总和、所述第二距离的总和以及所述第三距离的总和,计算每条曲线对应的评分结果。
机器人基于预设权重系数、第一距离的总和、第二距离的总和以及第三距离的总和,计算每条曲线对应的评分结果。具体地,预设权重系数可以包括第一权重系数、第二权重系数以及第三权重系数,第一权重系数表示每条曲线中包含的各个采样点与待平滑的全局路径对应的终点之间的距离的总和对应的权重系数;第二权重系数表示每条曲线中包含的各个采样点与该曲线对应的子路径之间的距离的总和对应的权重系数;第三权重系数表示每条曲线中包含的各个采样点与障碍物之间的距离的总和对应的权重系数。计算每个距离的总和与其对应的权重系数之间的乘积,计算所有的乘积之和得到每条曲线对应的评分结果。
进一步地,为了准确地计算采样曲线簇中每条曲线对应的评分, S10234可以包括S102341-S102344,具体如下:
S102341:计算所述第一权重系数与每条曲线对应的第一距离的总和之间的乘积,得到每条曲线对应的第一乘积。
预设权重系数可根据实际情况预先设置,预设权重系数可以包括第一权重系数、第二权重系数以及第三权重系数;其中,第一权重系数表示每条曲线中包含的各个采样点与待平滑的全局路径对应的终点之间的距离的总和对应的权重系数。机器人计算第一权重系数与每条曲线对应的第一距离的总和之间的乘积,得到每条曲线对应的第一乘积。
S102342:计算所述第二权重系数与每条曲线对应的第二距离的总和之间的乘积,得到每条曲线对应的第二乘积。
第二权重系数表示每条曲线中包含的各个采样点与该曲线对应的子路径之间的距离的总和对应的权重系数;机器人计算第二权重系数与每条曲线对应的第二距离的总和之间的乘积,得到每条曲线对应的第二乘积。
S102343:计算所述第三权重系数与每条曲线对应的第三距离的总和之间的乘积,得到每条曲线对应的第三乘积。
第三权重系数表示每条曲线中包含的各个采样点与障碍物之间的距离的总和对应的权重系数;机器人计算第三权重系数与每条曲线对应的第三距离的总和之间的乘积,得到每条曲线对应的第三乘积。
S102344:计算所述第一乘积、所述第二乘积以及所述第三乘积之和,得到每条曲线对应的评分结果。
将同一条曲线对应的第一乘积、第二乘积以及第三乘积相加,得到的结果为该条曲线对应的评分结果;通过同样的方式计算每条曲线对应的评分结果。
S1024:基于每个所述评分结果,选取评分最高的曲线作为所述第N个子路径对应的平滑曲线。
机器人基于每个评分结果,选取评分最高的曲线作为第N个子路径对应的平滑曲线。具体地,机器人获取每条曲线对应的评分结果,在这些评分结果中选取评分最高的曲线,将该曲线作为第N个子路径对应的平滑曲线。该平滑曲线即为最后生成的平滑全局路径中第N 个子路径对应的路径。
进一步地,为了准确选取每个子路径对应的平滑曲线,进而提升基于这些平滑曲线生成的平滑全局路径的平滑性,S1024可以包括 S10241-S10242,具体如下:
S10241:基于每个所述评分结果对每条所述曲线进行排序。
机器人基于每个评分结果对每条曲线进行排序。具体地,每条曲线都有一个与之对应的评分结果即分数,对这些分数从大到小排列,或者从小到大排列,相应地也就对所有的曲线进行了排列。
S10242:根据排序结果确定所述第N个子路径对应的平滑曲线。
具体地,选取评分最高的曲线作为第N个子路径对应的平滑曲线。当排列顺序为从大到小排列时,选取第一条曲线作为第N个子路径对应的平滑曲线;当排列顺序为从小到大排列时,选取最后一条曲线作为第N个子路径对应的平滑曲线。
S103:基于所述第N个子路径的平滑曲线的终点,确定第N+1 个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1 个子路径的平滑曲线。
机器人基于第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对第N+1个子路径进行平滑处理,得到第N+1个子路径的平滑曲线。具体地,获取第N个子路径对应的平滑曲线的终点,将该终点作为第N+1个子路径的起点,基于这个起点在待平滑的全局路径中对应的位置,截取预设长度的路径,将其标记为第N+1个子路径;对第N+1个子路径进行平滑处理,得到第N+1个子路径对应的平滑曲线。其中,对第N+1个子路径进行平滑处理的过程与对第N 个子路径进行平滑处理的过程类似,具体请参考对第N个子路径进行平滑处理的过程,此处不再赘述。
进一步地,在S103之后机器人检测第N+1个子路径的终点是否为待平滑的全局路径的终点;当第N+1个子路径的终点不是待平滑的全局路径的终点时,执行S104;当第N+1个子路径的终点为待平滑的全局路径的终点时,执行S105。
S104:当所述第N+1个子路径的终点不是所述全局路径的终点时,将N递增1,并返回执行所述基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线。
具体地,当机器人检测到第N+1个子路径的终点不是待平滑的全局路径的终点时,返回执行S103,即返回执行基于第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对第N+1个子路径进行平滑处理,得到第N+1个子路径的平滑曲线。
S105:当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径。
当机器人检测到第N+1个子路径的终点是待平滑的全局路径的终点时,基于每个子路径对应的平滑曲线生成全局路径对应的平滑全局路径。具体地,获取每条平滑曲线对应的起点和终点;基于每个起点以及每个终点各自在待平滑全局路径中对应的位置,拼接所有平滑曲线,得到平滑全局路径。
请参考图3以及图4,图3是未进行平滑处理前的全局路径,即待平滑的全局路径,显然图3所示的路径中有许多拐角,这会导致机器人根据该路径行驶时不稳定,影响机器人的工作效率,对机器人的安全造成一定的威胁。图4在白色的路径中有一条较细的曲线,是由多个采样曲线簇中评分最高的曲线拼接而成,拼接得到的曲线就是平滑全局路径。显然,机器人根据平滑全局路径行驶时非常稳定,进而提高了机器人的工作效率,保障了机器人的安全。
进一步地,为了提升平滑全局路径的平滑性,进而使机器人根据该平滑全局路径行走时更加平稳,S105可以包括S1051-S1052,具体如下:
S1051:获取每条所述平滑曲线对应的起点和终点。
机器人获取每条平滑曲线对应的起点,以及获取每条平滑曲线对应终点,并进行标记。
S1052:基于每个所述起点以及每个所述终点各自在所述全局路径中对应的位置,拼接所有所述平滑曲线,得到所述平滑全局路径。
机器人获取每条平滑曲线对应的起点以及终点在全局路径中对应的位置,并基于位置的先后将所有的平滑曲线进行拼接,得到平滑全局路径。
本申请实施例,通过获取待平滑的全局路径;从全局路径确定第 N个子路径,并对第N个子路径进行平滑处理,得到第N个子路径的平滑曲线;基于第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对第N+1个子路径进行平滑处理,得到第N+1个子路径的平滑曲线;重复执行该步骤,直至检测到第N+1个子路径的终点为全局路径的终点时,基于每个子路径对应的平滑曲线生成全局路径对应的平滑全局路径。通过上述方式,对全局路径中的每一段子路径均进行了平滑处理,提高了平滑全局路径平滑性,使得机器人根据平滑全局路径行走时非常稳定,进而提高了机器人的工作效率以及安全性。
请参见图5,图5是本申请一实施例提供的一种机器人的示意图。该机器人包括的各单元用于执行图1对应的实施例中的各步骤。具体请参阅图1各自对应的实施例中的相关描述。为了便于说明,仅示出了与本实施例相关的部分。参见图5,包括:
获取单元210,用于获取待平滑的全局路径;
第一处理单元220,用于从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线;N为大于或等于1的整数;
第二处理单元230,用于基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
第三处理单元240,用于当所述第N+1个子路径的终点不是所述全局路径的终点时,将N递增1,并返回执行所述基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1 个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
生成单元250,用于当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径。
进一步地,所述第一处理单元220包括:
截取单元,用于从所述全局路径中截取所述第N个子路径;
采样单元,用于对所述第N个子路径进行采样,得到所述第N 个子路径对应的采样曲线簇;
评分单元,用于对所述采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果;
选取单元,用于基于每个所述评分结果,选取评分最高的曲线作为所述第N个子路径对应的平滑曲线。
进一步地,所述采样单元具体用于:基于预设速度值、预设角速度值以及预设采样次数,对所述第N个子路径进行采样,得到所述采样曲线簇。
进一步地,所述评分单元包括:
第一计算单元,用于计算每条所述曲线中包含的各个采样点与所述全局路径对应的终点之间的第一距离的总和;
第二计算单元,用于计算每条所述曲线中包含的各个采样点与所述第N个子路径之间的第二距离的总和;
第三计算单元,用于计算每条所述曲线中包含的各个采样点与障碍物之间的第三距离的总和;
第四计算单元,用于基于预设权重系数、所述第一距离的总和、所述第二距离的总和以及所述第三距离的总和,计算每条曲线对应的评分结果。
进一步地,所述第四计算单元具体用于:
计算所述第一权重系数与每条曲线对应的第一距离的总和之间的乘积,得到每条曲线对应的第一乘积;
计算所述第二权重系数与每条曲线对应的第二距离的总和之间的乘积,得到每条曲线对应的第二乘积;
计算所述第三权重系数与每条曲线对应的第三距离的总和之间的乘积,得到每条曲线对应的第三乘积;
计算所述第一乘积、所述第二乘积以及所述第三乘积之和,得到每条曲线对应的评分结果。
进一步地,所述选取单元具体用于:
基于每个所述评分结果对每条所述曲线进行排序;
根据排序结果确定所述第N个子路径对应的平滑曲线。
进一步地,所述生成单元250具体用于:
获取每条所述平滑曲线对应的起点和终点;
基于每个所述起点以及每个所述终点各自在所述全局路径中对应的位置,拼接所有所述平滑曲线,得到所述平滑全局路径。
请参见图6,图6是本申请另一实施例提供的一种机器人的示意图。如图6所示,该实施例的机器人3包括:处理器30、存储器31 以及存储在所述存储器31中并可在所述处理器30上运行的计算机可读指令32。所述处理器30执行所述计算机可读指令32时实现上述各个机器人路径的平滑方法实施例中的步骤,例如图1所示的S101 至S105。或者,所述处理器30执行所述计算机可读指令32时实现上述各实施例中各单元的功能,例如图5所示单元210至250功能。
示例性的,所述计算机可读指令32可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器31中,并由所述处理器30执行,以完成本申请。所述一个或多个单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令32在所述机器人3中的执行过程。例如,所述计算机可读指令32可以为获取单元、第一处理单元、第二处理单元、第三处理单元以及生成单元,各单元具体功能如上所述。
所述机器人可包括,但不仅限于,处理器30、存储器31。本领域技术人员可以理解,图6仅仅是机器人3的示例,并不构成对机器人3的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述机器人还可以包括输入输出设备、网络接入设备、总线等。
所称处理器30可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array, FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器31可以是所述机器人3的内部存储单元,例如机器人3的硬盘或内存。所述存储器31也可以是所述机器人3的外部存储设备,例如所述机器人3上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器31还可以既包括所述机器人3的内部存储单元也包括外部存储设备。所述存储器31用于存储所述计算机可读指令以及所述机器人所需的其他程序和数据。所述存储器 31还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神范围,应包含在本申请的保护范围之内。
Claims (10)
1.一种机器人路径的平滑方法,其特征在于,包括:
获取待平滑的全局路径;
从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线;N为大于或等于1的整数;
基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点不是所述全局路径的终点时,将N递增1,并返回执行所述基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径。
2.如权利要求1所述的平滑方法,其特征在于,所述从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线包括:
从所述全局路径中截取所述第N个子路径;
对所述第N个子路径进行采样,得到所述第N个子路径对应的采样曲线簇;
对所述采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果;
基于每个所述评分结果,选取评分最高的曲线作为所述第N个子路径对应的平滑曲线。
3.如权利要求2所述的平滑方法,其特征在于,所述对所述第N个子路径进行采样,得到所述第N个子路径对应的采样曲线簇包括:
基于预设速度值、预设角速度值以及预设采样次数,对所述第N个子路径进行采样,得到所述采样曲线簇。
4.如权利要求2所述的平滑方法,其特征在于,所述对所述采样曲线簇中的每条曲线进行评分,得到每条曲线对应的评分结果包括:
计算每条所述曲线中包含的各个采样点与所述全局路径对应的终点之间的第一距离的总和;
计算每条所述曲线中包含的各个采样点与所述第N个子路径之间的第二距离的总和;
计算每条所述曲线中包含的各个采样点与障碍物之间的第三距离的总和;
基于预设权重系数、所述第一距离的总和、所述第二距离的总和以及所述第三距离的总和,计算每条曲线对应的评分结果。
5.如权利要求4所述的平滑方法,其特征在于,所述预设权重系数包括第一权重系数、第二权重系数以及第三权重系数,所述基于预设权重系数、所述第一距离的总和、所述第二距离的总和以及所述第三距离的总和,计算每条曲线对应的评分结果包括:
计算所述第一权重系数与每条曲线对应的第一距离的总和之间的乘积,得到每条曲线对应的第一乘积;
计算所述第二权重系数与每条曲线对应的第二距离的总和之间的乘积,得到每条曲线对应的第二乘积;
计算所述第三权重系数与每条曲线对应的第三距离的总和之间的乘积,得到每条曲线对应的第三乘积;
计算所述第一乘积、所述第二乘积以及所述第三乘积之和,得到每条曲线对应的评分结果。
6.如权利要求2所述的平滑方法,其特征在于,所述基于每个所述评分结果,选取评分最高的曲线作为所述第N个子路径对应的平滑曲线包括:
基于每个所述评分结果对每条所述曲线进行排序;
根据排序结果确定所述第N个子路径对应的平滑曲线。
7.如权利要求1至6任一项所述的平滑方法,其特征在于,所述当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径包括:
获取每条所述平滑曲线对应的起点和终点;
基于每个所述起点以及每个所述终点各自在所述全局路径中对应的位置,拼接所有所述平滑曲线,得到所述平滑全局路径。
8.一种机器人,其特征在于,包括:
获取单元,用于获取待平滑的全局路径;
第一处理单元,用于从所述全局路径确定第N个子路径,并对所述第N个子路径进行平滑处理,得到所述第N个子路径的平滑曲线;N为大于或等于1的整数;
第二处理单元,用于基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
第三处理单元,用于当所述第N+1个子路径的终点不是所述全局路径的终点时,将N递增1,并返回执行所述基于所述第N个子路径的平滑曲线的终点,确定第N+1个子路径,并对所述第N+1个子路径进行平滑处理,得到所述第N+1个子路径的平滑曲线;
生成单元,用于当所述第N+1个子路径的终点为所述全局路径的终点时,基于每个所述子路径对应的平滑曲线生成所述全局路径对应的平滑全局路径。
9.一种机器人,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机可读指令,其特征在于,所述处理器执行所述计算机可读指令时实现如权利要求1至7任一项所述的方法。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911192145.5A CN111055274B (zh) | 2019-11-28 | 2019-11-28 | 一种机器人路径的平滑方法及机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911192145.5A CN111055274B (zh) | 2019-11-28 | 2019-11-28 | 一种机器人路径的平滑方法及机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111055274A true CN111055274A (zh) | 2020-04-24 |
CN111055274B CN111055274B (zh) | 2021-12-17 |
Family
ID=70299068
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911192145.5A Active CN111055274B (zh) | 2019-11-28 | 2019-11-28 | 一种机器人路径的平滑方法及机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111055274B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880539A (zh) * | 2020-07-30 | 2020-11-03 | 上海高仙自动化科技发展有限公司 | 智能机器人的移动控制方法及装置、智能机器人及可读存储介质 |
CN112256030A (zh) * | 2020-10-20 | 2021-01-22 | 乐聚(深圳)机器人技术有限公司 | 机器人的足迹生成方法、装置、机器人及介质 |
CN113199474A (zh) * | 2021-04-25 | 2021-08-03 | 广西大学 | 一种机器人行走与作业智能协同的运动规划方法 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4518033B2 (ja) * | 2006-03-22 | 2010-08-04 | トヨタ自動車株式会社 | 経路作成方法、移動体および移動体制御システム |
CN107631734A (zh) * | 2017-07-21 | 2018-01-26 | 南京邮电大学 | 一种基于D*_lite算法的动态平滑路径规划方法 |
CN108705532A (zh) * | 2018-04-25 | 2018-10-26 | 中国地质大学(武汉) | 一种机械臂避障路径规划方法、设备及存储设备 |
CN109033176A (zh) * | 2018-06-25 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 道路曲率的确定方法、装置、存储介质和计算机设备 |
CN109799822A (zh) * | 2019-01-30 | 2019-05-24 | 中国石油大学(华东) | 移动机器人全局平滑路径规划方法 |
CN109916421A (zh) * | 2019-03-18 | 2019-06-21 | 北京智行者科技有限公司 | 路径规划方法及装置 |
CN109947101A (zh) * | 2019-03-18 | 2019-06-28 | 北京智行者科技有限公司 | 路径平滑处理方法及装置 |
-
2019
- 2019-11-28 CN CN201911192145.5A patent/CN111055274B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4518033B2 (ja) * | 2006-03-22 | 2010-08-04 | トヨタ自動車株式会社 | 経路作成方法、移動体および移動体制御システム |
CN107631734A (zh) * | 2017-07-21 | 2018-01-26 | 南京邮电大学 | 一种基于D*_lite算法的动态平滑路径规划方法 |
CN108705532A (zh) * | 2018-04-25 | 2018-10-26 | 中国地质大学(武汉) | 一种机械臂避障路径规划方法、设备及存储设备 |
CN109033176A (zh) * | 2018-06-25 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 道路曲率的确定方法、装置、存储介质和计算机设备 |
CN109799822A (zh) * | 2019-01-30 | 2019-05-24 | 中国石油大学(华东) | 移动机器人全局平滑路径规划方法 |
CN109916421A (zh) * | 2019-03-18 | 2019-06-21 | 北京智行者科技有限公司 | 路径规划方法及装置 |
CN109947101A (zh) * | 2019-03-18 | 2019-06-28 | 北京智行者科技有限公司 | 路径平滑处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
张禹 等: "基于数字海图的自主水下机器人路径规划研究", 《机器人》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111880539A (zh) * | 2020-07-30 | 2020-11-03 | 上海高仙自动化科技发展有限公司 | 智能机器人的移动控制方法及装置、智能机器人及可读存储介质 |
CN111880539B (zh) * | 2020-07-30 | 2024-04-19 | 上海高仙自动化科技发展有限公司 | 智能机器人的移动控制方法及装置、智能机器人及可读存储介质 |
CN112256030A (zh) * | 2020-10-20 | 2021-01-22 | 乐聚(深圳)机器人技术有限公司 | 机器人的足迹生成方法、装置、机器人及介质 |
CN112256030B (zh) * | 2020-10-20 | 2021-06-15 | 乐聚(深圳)机器人技术有限公司 | 机器人的足迹生成方法、装置、机器人及介质 |
CN113199474A (zh) * | 2021-04-25 | 2021-08-03 | 广西大学 | 一种机器人行走与作业智能协同的运动规划方法 |
CN113199474B (zh) * | 2021-04-25 | 2022-04-05 | 广西大学 | 一种机器人行走与作业智能协同的运动规划方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111055274B (zh) | 2021-12-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111055274B (zh) | 一种机器人路径的平滑方法及机器人 | |
US11161246B2 (en) | Robot path planning method and apparatus and robot using the same | |
CN110969649B (zh) | 一种激光点云与地图的匹配评价方法、介质、终端和装置 | |
US20150081203A1 (en) | Shortest path determination for large graphs | |
US20160125266A1 (en) | Image Processing Method, Image Processing Device, And Image Processing Program | |
KR102239588B1 (ko) | 이미지 처리 방법 및 장치 | |
CN109827584B (zh) | 路径规划方法、装置、电子设备与存储介质 | |
WO2021016806A1 (zh) | 高精度地图定位方法、系统、平台及计算机可读存储介质 | |
WO2015016836A1 (en) | Dynamical methods for solving mixed-integer optimization problems | |
US20210088345A1 (en) | System and method for autonomous motion planning | |
Jaillet et al. | Efficient asymptotically-optimal path planning on manifolds | |
US20220327740A1 (en) | Registration method and registration apparatus for autonomous vehicle | |
US7836421B2 (en) | Semiconductor layout design apparatus and method for evaluating a floorplan using distances between standard cells and macrocells | |
CN113205090A (zh) | 图片矫正方法、装置、电子设备及计算机可读存储介质 | |
US10694459B2 (en) | Positioning access points selection | |
US10145679B2 (en) | Three-dimensional shape measuring device and three-dimensional shape measuring method | |
CN109416748B (zh) | 基于svm的样本数据更新方法、分类系统和存储装置 | |
CN113358119B (zh) | 路径规划方法、装置、电子设备及存储介质 | |
US20130238985A1 (en) | Methods and devices for eliminating cracks within pages | |
CN114647816A (zh) | 车道线的确定方法、装置、设备及存储介质 | |
CN114812576A (zh) | 地图匹配方法、装置及电子设备 | |
JP2004139485A (ja) | 要約地図生成装置、道路地図変換装置、該プログラム、及び要約地図サービスシステム | |
US10162909B2 (en) | Device placement automatic calculation apparatus | |
US11393069B2 (en) | Image processing apparatus, image processing method, and computer readable recording medium | |
Movchan et al. | Parallel algorithm for local-best-match time series subsequence similarity search on the Intel MIC architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Unit 7-11, 6th Floor, Building B2, No. 999-8 Gaolang East Road, Wuxi Economic Development Zone, Wuxi City, Jiangsu Province, China 214000 Patentee after: Youdi Robot (Wuxi) Co.,Ltd. Country or region after: China Address before: 5D, Building 1, Tingwei Industrial Park, No. 6 Liufang Road, Xingdong Community, Xin'an Street, Bao'an District, Shenzhen City, Guangdong Province Patentee before: UDITECH Co.,Ltd. Country or region before: China |
|
CP03 | Change of name, title or address |