一种机器人自主路径规划的方法技术

技术编号:24681198 阅读:104 留言:0更新日期:2020-06-27 07:26
本发明专利技术具体涉及一种机器人自主路径规划的方法,机器人在正常行走过程中,通过激光测距传感器反馈的周边轮廓信息,并根据激光测距传感器反馈的测距信号判断是否有障碍物存在,在机器人行走前方有障碍物信号,对障碍物进行分割,获取障碍物特征点,然后判断障碍物特征点放入包络线轨迹中进行判断是否存在包含关系,从而进行自主路径规划,提高在复杂运行环境下的机器人运行效率。

A method of autonomous path planning for robot

【技术实现步骤摘要】
一种机器人自主路径规划的方法
本专利技术属于机器人控制技术
,具体涉及一种机器人自主路径规划的方法。
技术介绍
随着机器人控制技术的不断发展,智能搬运机器人被逐步广泛的应用于仓储物流、生产搬运、电商分拣等行业场景中。在智能搬运机器人应用的过程中,机器人安全性受到了大家的重点关注,机器人的主动安全避障传感装置被大量用于机器人设计中,如:超声波距离感应器、红外距离传感器、激光测距传感器、点云障碍物传感器等。但大多数应用了测距传感器的机器人,仅实现了机器人主动停止等待,待障碍物移除后再继续按照预定路径完成运动的方式。如果障碍物一直存在,则机器人始终会在原地等待,大大降低了机器人的运行效率。亟待提出一种在机器人探测到障碍物后能够进行自主绕行,完成自主通过障碍物的技术方案来解决上述技术问题。
技术实现思路
针对上述问题,本专利技术提供了一种在机器人探测到障碍物后能够进行自主绕行,完成通过障碍物的机器人自主路径规划的方法,以期提高在复杂运行环境下的机器人运行效率。具体技术方案是:一种机器人自主路径规划的方法,包括如下步骤:步骤101,机器人按照调度系统下方的预定行走路径进行运行,并实时获取机器人在地图中的坐标位置;步骤102,机器人在正常行走过程中,通过激光测距传感器反馈的周边轮廓信息,通过导引定位算法计算出在地图系统中机器人的绝对坐标位置及航向角;步骤103,机器人根据激光测距传感器反馈的测距信号判断是否有障碍物存在,如果在一定距离内没有反馈障碍信号则继续执行步骤101,向前继续运行;如果发现障碍物则进入步骤104;步骤104,如果判断在机器人行走前方有障碍物信号,则根据激光测距传感器扫描的平面点阵数据对障碍物进行分割,获取障碍物特征点,割方法如下:分割方法如下:(1)取起始角度值作为最近点、左边界点、右边界点的值;(2)取下一角度值(角度步长由传感器决定),计算与上一值得变化量;(3)若变化量小于-200mm,则将截至到上一角度值作为一个障碍物;若变化量小于200mm,则更新左边界值和最近点的值;若变化量大于200,则往后取10个值判断是否都大于200mm,若是则将截至到上一角度值作为一个障碍物,若否则更新左边界值和最近点的值;(4)若到达终止角度则将当前数据作为一个障碍物,若未到达终止角度则返回步骤(2);步骤105,将障碍物特征点分割提取后,对机器人将要行走的路径进行分割,形成包络线;分割方法如下:若曲线段的最小曲率半径大于等于10000mm,整个段等效为直线;若曲线段的最小曲率半径小于10000mm,则需要对曲线段切割:(1)求出起点u和对应的曲率半径,作为小段的起始值;(2)将u增加步长值取0.005,求出新的曲率半径,若u大于等于1.0,则生成一个小直线段并结束分割;(3)若小段的起始曲率半径大于50000mm,新曲率半径小于50000,则生成一个小直线段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);(4)若小段的起始曲率半径小于50000mm,新曲率半径大于50000mm,则生成一个小圆弧段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);(5)若新曲率半径与小段起始曲率半径的差值大于小段起始曲率半径的5%,则生成一个小段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);完成机器人路径分割后,需要根据每个分割段,计算机器人运行到该分割段上时的包络线范围,计算方法如下:1、当切割的段是一个直线段:为避免机器人运动偏差和等效切割带来的偏差,需要将机器人的机械尺寸做膨胀,目前将机器人的四条边均往外膨胀50mm;根据直线段EF可以生成对应的的矩形由四个顶点ABCD,且A、B、C、D四点的坐标是可计算的;车辆宽:W=实际车宽+50*2;车辆前长:L1=实际前车长+50;车辆后长:L2=实际后车长+50;2、当切割段是一个曲线段:切割得到的曲线并不是圆弧,为了便于计算将其等效为圆弧;圆弧的起点和终点即曲线的起点和终点,圆弧的等效半径取曲线起点半径和终点半径的平均值,根据圆弧的几何性质可以求出等效圆心点O,根据切割曲线段EF可以生成部分圆环O-ABCD;圆环等效半径:圆环内半径:圆环外半径:步骤106,当形成机器人包络线后,会将整个机器人在曲线内运行的整体轮廓轨迹获得,此时需要将障碍物特征点放入包络线轨迹中进行判断是否存在包含关系;判断方法如下:车辆运动扫过的区域被等效为多个矩形和部分圆环,要判断特征点是否在包络线内即判断特征点是否在一个或多个矩形和部分圆弧内;(1)判断一个点是否在矩形内假设存在点P和矩形ABCD,则点P在矩形内的充要条件为:*>0.0且*<0.0且*>0.0且*<0.0(2)判断一个点是否在部分圆环内假设存在点P和部分圆环0-ABCD,则点P在部分圆环内的充要条件为:<<且<||<步骤107,当判断障碍物特征点处于包络线矩形内或者部分圆环内时开始进行自主路径规划,具体方法如下:A.基本型值点选择:角度选择:选取上一障碍物与本障碍物在初始路径上的投影形成的向量方向作为本次型值点的角度;坐标选择:在障碍物特征点的基础上沿本型值点角度的垂直方向往外延伸半车宽(包括膨胀宽度)得到型值点坐标;B.扩展分析:(1)通过基本型值点选择得到的型值点并不一定可通过,需要对型值点构成的矩形进一步做障碍物检测,若检测失败则继续往外延伸,直到检测成功或超出允许的距离;(2)在绕行障碍物的过程中必然会经过障碍物的一侧,所以在分析新障碍物时先做边缘检测,即根据物体的左右特征点分别计算两个型值点,并选取较优的一个,进而确定绕行此障碍物的方向;定义评价函数量化型值点的质量:其中,beforeDistance是上一型值点到本型值点的距离;leftDistance是本型值点到本初始路径段的终点的距离;viaDiffAngle是本型值点与上一型值点的角度差;originalDistance是本型值点与投影点的距离;分母上表示的是对应参数的左右型值点参数之和;Q值越小则对应的型值点质量越高;(3)通过测试发现型值点密集易造成曲率半径变化极不均匀,故将离上一型值点或本障碍物边界型值点距离小于半车长的型值点舍弃;C.额外型值点:由于仅依靠特征点产生的型值点会造成曲率半径不均匀,还需要根据由特征点计算而来的型值点增加额外的型值点;(1)相邻型值点为同向扩张:当两型值点距离大于半车长,将两型值点的中点沿型值点向量的垂直方向延伸100mm,作为额外型值点;(2)相邻型值点为非同向扩张:将上一基本型值点和本次基本型值点的连线称为弦;若弦本文档来自技高网...

【技术保护点】
1.一种机器人自主路径规划的方法,其特征在于:包括如下步骤:/n步骤101,机器人按照调度系统下方的预定行走路径进行运行,并实时获取机器人在地图中的坐标位置;/n步骤102,机器人在正常行走过程中,通过激光测距传感器反馈的周边轮廓信息,通过导引定位算法计算出在地图系统中机器人的绝对坐标位置及航向角;/n步骤103,机器人根据激光测距传感器反馈的测距信号判断是否有障碍物存在,如果在一定距离内没有反馈障碍信号则继续执行步骤101,向前继续运行;如果发现障碍物则进入步骤104;/n步骤104,如果判断在机器人行走前方有障碍物信号,则根据激光测距传感器扫描的平面点阵数据对障碍物进行分割,获取障碍物特征点,割方法如下:/n分割方法如下:/n(1)取起始角度值作为最近点、左边界点、右边界点的值;/n(2)取下一角度值(角度步长由传感器决定),计算与上一值得变化量;/n(3)若变化量小于-200mm,则将截至到上一角度值作为一个障碍物;若变化量小于200mm,则更新左边界值和最近点的值;若变化量大于200,则往后取10个值判断是否都大于200mm,若是则将截至到上一角度值作为一个障碍物,若否则更新左边界值和最近点的值;/n(4)若到达终止角度则将当前数据作为一个障碍物,若未到达终止角度则返回步骤(2);/n步骤105,将障碍物特征点分割提取后,对机器人将要行走的路径进行分割,形成包络线;/n分割方法如下:/n若曲线段的最小曲率半径大于等于10000mm,整个段等效为直线;/n若曲线段的最小曲率半径小于10000mm,则需要对曲线段切割:/n(1)求出起点u和对应的曲率半径,作为小段的起始值;/n(2)将u增加步长值取0.005,求出新的曲率半径,若u大于等于1.0,则生成一个小直线段并结束分割;/n(3)若小段的起始曲率半径大于50000mm,新曲率半径小于50000,则生成一个小直线段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);/n(4)若小段的起始曲率半径小于50000mm,新曲率半径大于50000mm,则生成一个小圆弧段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);/n(5)若新曲率半径与小段起始曲率半径的差值大于小段起始曲率半径的5%,则生成一个小段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);/n完成机器人路径分割后,需要根据每个分割段,计算机器人运行到该分割段上时的包络线范围,计算方法如下:/n1、当切割的段是一个直线段:/n为避免机器人运动偏差和等效切割带来的偏差,需要将机器人的机械尺寸做膨胀,目前将机器人的四条边均往外膨胀50mm;根据直线段EF可以生成对应的的矩形由四个顶点ABCD,且A、B、C、D四点的坐标是可计算的;/n车辆宽:W = 实际车宽 + 50*2;/n车辆前长:L1 = 实际前车长 + 50;/n车辆后长:L2 = 实际后车长 + 50;/n2、当切割段是一个曲线段:/n切割得到的曲线并不是圆弧,为了便于计算将其等效为圆弧;圆弧的起点和终点即曲线的起点和终点,圆弧的等效半径取曲线起点半径和终点半径的平均值,根据圆弧的几何性质可以求出等效圆心点O,根据切割曲线段EF可以生成部分圆环O-ABCD;/n圆环等效半径:...

【技术特征摘要】
1.一种机器人自主路径规划的方法,其特征在于:包括如下步骤:
步骤101,机器人按照调度系统下方的预定行走路径进行运行,并实时获取机器人在地图中的坐标位置;
步骤102,机器人在正常行走过程中,通过激光测距传感器反馈的周边轮廓信息,通过导引定位算法计算出在地图系统中机器人的绝对坐标位置及航向角;
步骤103,机器人根据激光测距传感器反馈的测距信号判断是否有障碍物存在,如果在一定距离内没有反馈障碍信号则继续执行步骤101,向前继续运行;如果发现障碍物则进入步骤104;
步骤104,如果判断在机器人行走前方有障碍物信号,则根据激光测距传感器扫描的平面点阵数据对障碍物进行分割,获取障碍物特征点,割方法如下:
分割方法如下:
(1)取起始角度值作为最近点、左边界点、右边界点的值;
(2)取下一角度值(角度步长由传感器决定),计算与上一值得变化量;
(3)若变化量小于-200mm,则将截至到上一角度值作为一个障碍物;若变化量小于200mm,则更新左边界值和最近点的值;若变化量大于200,则往后取10个值判断是否都大于200mm,若是则将截至到上一角度值作为一个障碍物,若否则更新左边界值和最近点的值;
(4)若到达终止角度则将当前数据作为一个障碍物,若未到达终止角度则返回步骤(2);
步骤105,将障碍物特征点分割提取后,对机器人将要行走的路径进行分割,形成包络线;
分割方法如下:
若曲线段的最小曲率半径大于等于10000mm,整个段等效为直线;
若曲线段的最小曲率半径小于10000mm,则需要对曲线段切割:
(1)求出起点u和对应的曲率半径,作为小段的起始值;
(2)将u增加步长值取0.005,求出新的曲率半径,若u大于等于1.0,则生成一个小直线段并结束分割;
(3)若小段的起始曲率半径大于50000mm,新曲率半径小于50000,则生成一个小直线段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);
(4)若小段的起始曲率半径小于50000mm,新曲率半径大于50000mm,则生成一个小圆弧段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);
(5)若新曲率半径与小段起始曲率半径的差值大于小段起始曲率半径的5%,则生成一个小段,使用新的u和曲率半径去更新小段的起始值并返回到步骤(2);
完成机器人路径分割后,需要根据每个分割段,计算机器人运行到该分割段上时的包络线范围,计算方法如下:
1、当切割的段是一个直线段:
为避免机器人运动偏差和等效切割带来的偏差,需要将机器人的机械尺寸做膨胀,目前将机器人的四条边均往外膨胀50mm;根据直线段EF可以生成对应的的矩形由四个顶点ABCD,且A、B、C、D四点的坐标是可计算的;
车辆宽:W=实际车宽+50*2;
车辆前长:L1=实际前车长+50;
车辆后长:L2=实际后车长+50;
2、当切割段是一个曲线段:
切割得到的曲线并不是圆弧,为了便于计算将其等效为圆弧;圆弧的起点和终点即曲线的起点和终点,圆弧的等效半径取曲线起点半径和终点半径的平均值,根据圆弧的几何性质可以求出等效圆心点O,根据切割曲线段EF可以生成部分圆环O-ABCD;
圆环等效半径:
圆环内半径:<...

【专利技术属性】
技术研发人员:陶珊珊
申请(专利权)人:云南和富科技有限公司
类型:发明
国别省市:云南;53

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1