CN113359766B - 一种移动机器人的移动控制方法、以及移动机器人 - Google Patents
一种移动机器人的移动控制方法、以及移动机器人 Download PDFInfo
- Publication number
- CN113359766B CN113359766B CN202110756426.XA CN202110756426A CN113359766B CN 113359766 B CN113359766 B CN 113359766B CN 202110756426 A CN202110756426 A CN 202110756426A CN 113359766 B CN113359766 B CN 113359766B
- Authority
- CN
- China
- Prior art keywords
- path
- angle
- slope
- map
- mobile robot
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 230000008569 process Effects 0.000 claims abstract description 19
- 238000004140 cleaning Methods 0.000 claims description 32
- 238000012937 correction Methods 0.000 claims description 23
- 238000004590 computer program Methods 0.000 claims description 8
- 230000009471 action Effects 0.000 claims description 6
- 230000008859 change Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 28
- 238000000605 extraction Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000010276 construction Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0238—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
- G05D1/024—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors in combination with a laser
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0257—Control of position or course in two dimensions specially adapted to land vehicles using a radar
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0276—Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Aviation & Aerospace Engineering (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Optics & Photonics (AREA)
- Electromagnetism (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Abstract
本申请公开了一种移动机器人的移动控制方法,该方法包括,在移动机器人侧,控制移动机器人的行进路径满足:当所行进的第一路径与设定目标之间的第一角度不满足设定的角度阈值时,或者从任一位置处开始,所行进的第二路径为直线路径线段,且该直线路径线段的距离满足设定的距离阈值;其中,所述第二路径用于根据在第二路径行进过程中所获取位置信息进行行进方向的调整。本申请提高了行进路线与设定目标之间的契合度,减少了地图数据中噪声数据对移动机器人的行进路径所带来的干扰,使得移动路径得以精细化控制。
Description
技术领域
本发明涉及移动机器人控制领域,特别地,涉及一种移动机器人的移动控制方法。
背景技术
移动机器人可以通过SLAM(地图构建和定位)方式来构建地图和在移动过程中进行定位。由于所采集的雷达描述数据中存在一定的噪声,会导致移动机器人在实际的空间中行进的方向和地图中行进的方向存在一定偏差。
作为一个例子,为便于清洁路径规划,清洁机器人需要将地图进行摆正,从而使得地图相对于用户达到横平竖直的效果。参见图1所示,图1为由雷达描述数据所构成的地图与移动机器人相对位置关系的一种示意图,图中,左图为地图被摆正前的一种示意,右图为地图被摆正后的一种示意。
在对地图进行摆正时,一种方式是通过霍夫变化,从雷达描述数据中提取出地图边框中的最长直线,计算该最长直线与设定的水平线之间的角度,然后根据该角度将地图中的所有数据进行旋转。
然而,由于雷达描述数据中存在一定的噪声,无法保证所提取的直线和实际完全一致。参见图2所示,图2为直线提取结果的一种示意图。图中,*为所采集的雷达数据,灰色实线为所提取的直线结果,清洁机器人以所提取直线结果作为墙体。参见图3所示,图3为雷达描述数据与真实直线的一种示意图。图中,所呈现的直线为真实的墙体,离散的黑点为所采集的雷达描述数据。
鉴于基于雷达描述数据所提取的直线与实际墙体存在不一致,故而所提取的直线与实际墙体存在角度偏差。参见图4所示,图4为所提取的直线与实际墙体存在角度偏差的一种示意图。假设,所提取的直线与水平方向的角度为θ1,墙体与水平方向的角度为θ2,则两者之间的角度偏差Δθ为θ2-θ1。
由此可见,当清洁机器人以θ1对地图进行摆正后,清洁机器人与实际墙体之间仍存在角度偏差Δθ,如果仍以θ1作为与墙体平行的角度,则在实际的清扫中,就会存在与墙体不平行的情况。对于扫地机器人而言,其工作角度与墙体不平行会对给用户体验带来比较大的影响,而且影响清扫的效率。
而对于其他移动机器人而言,地图摆正后可能导致移动机器人在实际的空间中行进的方向和地图中行进的方向存在一定偏差,从而对移动机器人的行进路径造成困扰。
发明内容
本发明提供了一种移动机器人的移动控制方法,以消除移动机器人实际行进方向与地图中的行进方向之间的偏差。
本发明提供的一种移动机器人的移动控制方法,该方法包括,在移动机器人侧,控制移动机器人的行进路径满足:
当所行进的第一路径与设定目标之间的第一角度不满足设定的第一角度阈值时,或者从任一位置处开始,
所行进的第二路径为直线路径线段,且该直线路径线段的距离满足设定的距离阈值;
其中,
所述第二路径用于根据在第二路径行进过程中所获取位置信息进行行进方向的调整。
较佳地,所述行进路径还满足:
所述第二路径之后的第三路径与所述设定目标之间的第二角度满足设定角度阈值;其中,第一路径、第二路径、第三路径按照时间顺序依次行进;该方法还包括:
当所行进的第一路径与设定目标之间的第一角度差不满足设定角度阈值时,或,在当前位置处,
根据在第二路径行进过程中所获取位置信息进行行进方向的调整,使得所述第三路径与所述设定目标之间的第二角度满足所述角度阈值。
较佳地,所述根据在第二路径行进过程中所获取位置信息进行行进方向的调整,包括:
获取移动机器人在第二路径中的第一位置处的第一位置信息、以及,第二位置处的第二位置信息,其中,第一位置与第二位置之间的距离满足所述距离阈值,
根据第一位置信息和第二位置信息,计算第二路径的第二斜率,
判断第二斜率是否等于设定的第二斜率阈值,其中,第二斜率阈值根据所述设定目标所确定的目标直线的斜率确定,
如果是,则禁止行进方向的调整,按照当前行进方向行进第三路径,
否则,计算第二斜率的反正切值,得到第三角度;计算第二斜率阈值的反正切值,得到第四角度,将第三角度与第四角度之差作为用于调整行进方向的修正角度,并按照修正角度调整当前行进方向。
较佳地,所述所行进的第一路径与设定目标之间的第一角度不满足设定的第一角度阈值,按照如下方式判定:
获取第一路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的第一斜率,
判断第一斜率是否等于第一斜率阈值,
如果不等于,则判定第一路径与设定目标之间的第一角度不满足设定的第一角度阈值;
所述第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值,按照如下方式判定:
获取第三路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的第三斜率,
判断第三斜率是否等于第三斜率阈值,
如果等于,则判定第三路径与设定目标之间的第二角度满足设定的第二角度阈值。
较佳地,所述使得所述第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值,包括:
在第二路径中的第二位置处,按照修正角度调整当前行进方向,控制移动机器人按照调整后的进行方向进行所述第三路径。
较佳地,所述任一位置处为移动机器人完成SLAM方式构建地图或加载地图时的当前位置,
该方法进一步包括,
移动机器人通过SLAM方式构建地图或加载地图后,将所述地图进行摆正,使得所述地图中的最长直线边框呈现为与水平方向或竖直方向一致。
较佳地,所述将所述地图进行摆正包括:
通过霍夫变化,对地图中的地图数据进行直线提取,
选择地图中具有最长直线线段的边框,拟合该边框中所述直线的直线方程,
根据直线方程中的斜率,计算该直线的与水平方向或竖直方向的夹角,得到用于地图摆正的摆正角度,
对地图中所有的地图数据按照所述摆正角度进行旋转,得到摆正后的地图数据;
所述根据在第二路径行进过程中所获取位置信息进行行进方向的调整,包括:
控制移动机器人本体旋转,使得移动机器人的当前行进方向与所述设定目标所确定的目标直线方向一致,并按照当前行进方向行进所述第二路径。
较佳地,所述第一路径和第三路径为弓字形路径中的直线路径,所述第一角度阈值与第二角度阈值相等,
该方法进一步包括:
在移动机器人按照规划的弓字形路径行进过程中,当所行进的第一路径与设定目标之间的第一角度不满足设定的角度阈值时,判断当前行进的第二路径是否有障碍物,如果没有,则根据该第二路径上任意两位置处的位置信息,计算第二路径的第二斜率,
当第二斜率不等于设定的第二斜率阈值时,执行所述根据第二路径所获取位置信息进行行进方向的调整的步骤,将弓字形路径中的剩余直线路径作为第三路径,按照调整后的行进方向行进。
本发明还提供的一种移动控制装置,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现前述任一所述移动控制方法的步骤。
本发明又提供一种移动机器人,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现任一所述移动控制方法的步骤。
本申请提供的移动机器人的移动控制方法,通过设定的行进路径,使得移动机器人的行进路径按照设定的目标移动,消除了移动机器人实际行进方向与地图中的行进方向之间的偏差,提高了行进路线与设定目标之间的契合度,减少了地图数据中噪声数据对移动机器人的行进路径所带来的干扰,使得移动路径得以精细化控制。
附图说明
图1为由雷达描述数据所构成的地图与移动机器人相对位置关系的一种示意图。
图2为直线提取结果的一种示意图。
图3为雷达描述数据与真实直线的一种示意图。
图4为所提取的直线与实际墙体存在角度偏差的一种示意图。
图5a为所检测到的地图摆正后与实际墙体不存在偏差的一种示意图
图5b为所检测到的地图摆正后与实际墙体存在偏差的一种示意图。
图6为本申请移动控制方法的一种示意图。
图7为移动机器人坐标与一直线的一种关系示意图。
图8为实施例一移动控制方法的一种流程示意图。
图9为摆正后的地图中直线与移动机器人坐标的一种关系示意图。
图10为移动机器人行进方向与设定目标平行的一种示意图。
图11为移动机器人移动轨迹的一种示意图,
图12为实施例一变形的一种流程示意图。
图13为图12实施方式下移动机器人移动轨迹的一种示意图。
图14为实施例二移动控制方法的一种流程示意图。
图15为本实施例二清洁路径的一种示意图。
图16为本申请移动控制装置的一种示意图。
图17为本申请移动控制装置或移动机器人的一种示意图。
图18为本申请实施例中可移动的清洁机器人的一种示意图。
具体实施方式
为了使本申请的目的、技术手段和优点更加清楚明白,以下结合附图对本申请做进一步详细说明。
为便于理解本申请技术手段的原理,以清洁机器人为例,参见图5a和5b所示,图5a为所检测到的地图摆正后与实际墙体不存在偏差的一种示意图,在该图中,移动机器人从位置1按照与实际墙体平行的直线路径移动到位置2时,移动机器人在地图中行进路径与实际行进路径一致。
图5b为所检测到的地图摆正后与实际墙体存在偏差的一种示意图,由于摆正后的地图与实际墙体之间存在角度偏差,移动机器人从位置1按照与所提取直线平行的直线路径移动到位置2时,在移动机器人在地图中行进路径与实际行进路径是有区别的,存在所提取直线与实际墙体之间的误差,也就是说,移动机器人行进的路径与实际墙体不平行。
从图5b中的几何关系可见,通过从位置1到位置2之间具有设定阈值距离的直线路径线段与墙体之间的夹角,即可得到地图进行摆正的角度误差,从而对该误差进行消除。
基于上述技术手段的原理,上述实际墙体可以演变为设定目标,较佳地,目标可以为物理空间中的任意直线。
本申请提出的移动控制方法,控制移动机器人的行进路径满足:
当所行进的第一路径与设定目标之间的第一角度不满足设定的第一角度阈值时,所行进的第二路径为直线路径,且该直线路径的距离满足设定的距离阈值;
所述第二路径之后的第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值;
其中,
第一路径、第二路径、第三路径按照时间顺序依次行进。
本申请的移动控制方法,通过特定的移动路径控制,使得移动机器人的行进路径被实时调整,提高了行进轨迹与设定目标之间的契合度。
参见图6所示,图6为本申请移动控制方法的一种示意图。在移动机器人侧,执行以下步骤:
步骤601,根据第一路径中的任意两位置的位置信息,判断第一路径与设定目标之间的第一角度是否满足设定的第一角度阈值,
如果是,则保持当前行进方向行进,结束本流程,
否则,执行步骤602,
步骤602,根据第二路径所获取位置信息进行行进方向的调整,
步骤603,按照调整后的行进方向行进第三路径,使得所述第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值。
其中,第一角度阈值可以与第二角度阈值相同,也可以不同。
为便于理解本申请,以下以移动机器人为例来进行说明。
参见图7所示,图7为移动机器人坐标与一直线的一种关系示意图。其中,移动机器人相对于用户的水平方向为x轴,与水平方向垂直的竖直方向为y轴,该方向也为移动机器人的前进方向,所述直线与水平方向呈一定角度。
实施例一
本实施例用于地图摆正后的移动控制。在进行地图摆正后,控制移动机器人按照与目标呈设定角度的直线路径,从第一位置行进至第二位置,其中,第一位置和第二位置之间的距离为设定距离阈值;根据在第一位置和第二位置处分别获取的全局位置信息,判断用于地图摆正的角度是否与目标的角度存在偏差,当存在偏差时,消除该偏差。
参见图8所示,图8为实施例一移动控制方法的一种流程示意图。在移动机器人侧,当移动机器人构建地图或者加载地图之后,移动机器人在当前位置处,执行如下步骤:
步骤801,通过霍夫变换,对地图中作为地图数据的雷达描述数据进行直线提取,选择其中最长的直线,拟合该最长直线的直线方程,该直线方程可以表示为:
y=kx+b
较佳地,所述最长的直线位于地图边框上。
所述拟合最长直线的直线方程可利用最小二乘法求取斜率和截距。具体为:
假设线段上的坐标点分别是(x1,y1),(x2,y2),……(xM,yM)其中M是坐标点的数量;构建目标函数,以求解使得线段中的坐标点与估计坐标点之间的残差取得最小值时的斜率k以及截距b。以坐标点的y坐标为例,用数学式表达为:
其中,T表示矩阵转置。
步骤802,根据拟合的直线方程,确定所述最长直线与水平方向或者竖直方向的角度θ1,以便作为用于地图摆正的摆正角度。
其中,
所述最长直线与水平方向的角度为拟合直线方程的斜率的反正切值,用数学式表达为:
θ1=tan-1k
或者,所述最长直线与竖直方向的角度为拟合直线方程的斜率的反余切值。
步骤803,将角度θ1作为摆正角度,对所构建地图进行摆正,即:对于地图中所有雷达描述数据旋转角度-θ1,将旋转后的雷达描述数据予以保存,得到摆正后的地图中的雷达描述数据。
具体而言,对于任一雷达描述数据pn,其对应的坐标为(xn,yn),当旋转-θ1后,雷达描述数据p′n其对应的坐标为(x′n,y′n),其中,
x′n=xncos(-θ1)+ynsin(-θ1)
y′n=xnsin(-θ1)+yncos(-θ1)
参见图9所示,图9为摆正后的地图中直线与移动机器人坐标的一种关系示意图。也就是说,图7中的直线和移动机器人按照顺时针反向旋转了θ1而得到图9,其中θ1即为摆正角度。
上述步骤801~803完成了地图的摆正。
鉴于地图摆正过程中基于地图数据而进行直线提取时因噪声数据的存在而导致的偏差,故可直接通过第二路径的行进过程来进行消除。
步骤804,设移动机器人当前位置为第一位置,采集第一位置处的雷达数据,通过地图匹配可获取第一位置处的坐标为(X′1,Y′1)。控制移动机器人本体旋转,使得移动机器人行进方向与设定目标一致,其中,目标为物理空间中的一直线,例如,室内环境下的一墙体,空旷环境下两信标所确定的直线等。
参见图10所示,图10为移动机器人行进方向与设定目标平行的一种示意图。其中,设定目标为水平直线,行进方向为水平方向,即移动机器人坐标系的y轴方向。在这种情形下,根据图10中的角度关系,移动机器人逆时针旋转θ1-90°。
步骤805,控制移动机器人按照与设定目标一致的方向行进,即,根据陀螺仪当前角度行进,当行进达到设定距离阈值的第二位置处时,采集第二位置处的雷达数据,将所采集的雷达数据与地图中雷达描述数据进行匹配,得到匹配结果,从而获取到第二位置处的坐标信息,记为(X′2,Y′2)。
步骤806,判断由第一位置与第二位置所确定的直线的第二斜率是否等于设定的第二斜率阈值,如果是,说明地图摆正和/或所提取的直线的正确,则不需要消除偏差,否则,说明地图摆正和/或所提取的直线的不正确,则执行步骤807,以进行偏差消除。其中,第二斜率阈值根据设定目标所确定的目标直线的斜率确定。
例如,结合图10所示,设定目标为水平直线,则第二斜率阈值为0。在该实施例中,可以是,判断第一位置与第二位置所确定的直线是否与水平直线是否平行,即,根据第一位置和第二位置之间的x坐标是否存在变化量确定是否平行,如果存在变化量,则判定为平行,否则,判定为不平行。
步骤807,计算第二斜率的反正切值,得到第三角度,计算第二斜率阈值的反正切值,得到第四角度,将第三角度与第四角度之差作为用于调整行进方向的修正角度,并按照修正角度调整当前行进方向,以行进第三路径。
用数学式表达为:
θ4=tan-1Th
Δθ=θ3-θ4
其中,θ3为第三角度,θ4为第四角度,Th为设定的第二斜率阈值。
以图10为例,设定目标为水平方向,则第二斜率阈值为0,故而修正角度为:
例如,若陀螺仪在第一位置处的角度为β1,则调整当前陀螺仪的角度为β2,其中,
β2=β1+Δθ
参见图11所示,图11为移动机器人移动轨迹的一种示意图,图中,移动机器人最先行进的直线路径线段a(第一路径)与目标不平行,该第一路径与目标之间的夹角为第一角度,行进直线路径线段b(第二路径)后,所行进的直线路径线段c(第三路径)与目标保持平行,该第三路径与目标之间的夹角为第二角度(因二者平行,图中未示出)。
本实施例实现了消除了移动机器人在利用激光雷达进行SLAM建图或地图加载时,由于直线提取导致的地图摆正误差,提高了移动机器人的行进路径的精确性。
参见图12所示,图12为实施例一变形的一种流程示意图。作为一种变形,所述步骤804~步骤806可以变形为:
步骤804',地图摆正后,控制移动机器人本体旋转,使得移动机器人行进方向与设定目标一致,以旋转后的当前行进方向按照第一路径行进,较佳地,第一路径为直线路径,
步骤805',获取第一路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的第一斜率,
其中,通过第一斜率的反正切值可以计算出第一角度,
步骤806',判断第一斜率是否等于设定的第一斜率阈值,其中,第一斜率阈值根据设定目标所确定的目标直线的斜率确定;
如果是,则保持当前行进方向不变,
否则,移动机器人通过雷达检测周边障碍物,控制移动机器人本体旋转,使得移动机器人行进方向朝向无障碍物区域中,
步骤807',以陀螺仪当前角度从第一位置按照第二路径行进至与第一位置具有设定阈值距离的第二位置。当行进达到设定阈值距离的第二位置处时,获取第二位置处的坐标。其中,第二路径为直线路径。
步骤808',判断第一位置与第二位置所确定的直线的第二斜率是否小于设定的第二斜率阈值,如果是,则说明地图摆正和/或所提取的直线的正确,则不需要消除偏差,否则,说明地图摆正和/或所提取的直线的不正确,则执行步骤807,以进行偏差消除。
参见图13所示,图13为图12实施方式下移动机器人移动轨迹的一种示意图,其中,第一路径可以为非直线路径,例如,设定目标为雷达检测到的某物体外轮廓,在该情形下根据设定目标所确定的目标直线为外轮廓上某点的切线,当第一路径与设定目标的外轮廓契合度不满足设定的契合阈值时,移动机器人行进直线路径线段L(第二路径)后,所行进第三路径与目标的外轮廓契合度满足设定契合度。
该实施方式避免了物理空间障碍物的影响,提高了偏差修正的灵活性。
实施例二
参见图14所示,图14为实施例二移动控制方法的一种流程示意图。在清洁机器人侧,清洁机器人加载地图、并按照规划的弓字形清洁路径进行清洁的过程中:
步骤1401,当所行进的第一直线路径与设定目标之间的第一角度不满足设定的第一角度阈值时,判断当前行进的第二直线路径是否有障碍物,如果没有,则根据该路径上任意两位置处的坐标,计算该直线路径的第二斜率,否则,不计算该直线路径的第二斜率,返回步骤1401,
其中,第一角度可以按照如下方式获得:基于第一路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的第一斜率,计算第一斜率的反正切值。
较佳地,所述两位置之间的距离等于设定的距离阈值,
步骤1402,判断第二直线路径的斜率是否等于设定的第二斜率阈值,或者,判断该第二直线路径的斜率是否与上一直线路径的斜率相同,
如果是,按照既定清洁路径行进,返回步骤1401,
否则,则执行步骤1403,
步骤1403,根据第二直线路径的斜率,计算其反正切值,得到第三角度;根据上一直线路径的斜率,计算其反正切值,得到第四角度,或者,根据第二斜率阈值,计算该第二斜率阈值的反正切值,得到第四角度;计算第三角度与第四角度之差,得到修正角度,
步骤1404,按照修正角度,调整陀螺仪当前角度,以调整后的角度继续行进第三直线路径。
步骤1405,获取第三路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的第三斜率,其中,第三斜率的反正切值为第三角度,
步骤1406,判断第三斜率是否等于设定的第三斜率阈值,
如果等于,则判定第三路径与设定目标之间的第二角度满足设定的第二角度阈值,保持当前行进方向继续行进,
否则,将第三路径作为第二路径,返回步骤1403,直至直线路径结束。
在本实施例中,第一斜率阈值、第二斜率阈值、第三斜率阈值相等,第一角度阈值、第二角度阈值相等。
参见图15所示,图15为本实施例二清洁路径的一种示意图。图中,直线路径a与上一直线路径b不平行,通过本实施例,使得下一直线路径c与直线路径b平行;或者,直线路径d中的第一部分与上一直线路径c不平行,通过本实施例,使得直线路径d中的第二部分与直线路径c平行。
本实施例可以在弓字形清洁路径中实现直线路径斜率的实时调整,从而使得清洁区域实现了无遗漏清洁,有利于提高清洁度。
参见图16所示,图16为本申请移动控制装置的一种示意图。所述控制装置包括,
控制模块,用于控制移动机器人行进,
调整模块,用于当所行进的第一路径与设定目标之间的第一角度差不满足设定的第一角度阈值时,或者,在任一位置处,根据在第二路径行进过程中所获取位置信息进行行进方向的调整,使得所述第二路径之后的第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值。
所述调整模块包括,
定位子模块,用于获取移动机器人在第二路径中的第一位置处的第一位置信息、以及,第二位置处的第二位置信息,其中,第一位置与第二位置之间的距离满足所述距离阈值,
触发子模块,用于根据第一位置信息和第二位置信息,计算第二路径的第二斜率,当第二斜率等于设定的第二斜率阈值时,触发计算子模块进行修正角度的计算,
计算子模块,用于计算第二斜率的反正切值,得到第三角度;计算第二斜率阈值的反正切值,得到第四角度;将第三角度与第四角度之差作为用于调整行进方向的修正角度输出至控制模块。
该控制装置还包括,
检测模块,用于获取当前路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的斜率,判断该斜率是否等于设定的斜率阈值,如果是,则判定当前路径与设定目标之间的角度满足设定的角度阈值,否则,判定当前路径与设定目标之间的角度不满足设定的角度阈值,触发调整模块启动。
参见图17所示,图17为本申请移动控制装置或移动机器人的一种示意图。包括,存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序实现本申请所述移动控制方法的步骤。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
参见图18所示,图18为本申请实施例中可移动清洁机器人的一种示意图。该清洁机器人包括,
地图数据获取模块,例如,包括有激光雷达传感器,该模块用于在控制模块的控制下,采集清洁机器人所在空间的环境信息,并根据环境信息建立地图、以及定位清洁机器人在地图中的位置;
行动模块,用于在控制模块的控制下驱使清洁机器人移动;
清洁模块,用于在控制模块的控制下进行清扫;
存储模块,用于保存地图数据获取模块所采集和建立的地图信息。
控制模块,用于控制行动模块,当所行进的第一路径与设定目标之间的第一角度不满足设定的第一角度阈值时,或者从任一位置处开始,控制所行进的第二路径为直线路径线段,且该直线路径线段的距离满足设定的距离阈值;
其中,
所述第二路径用于根据在第二路径行进过程中所获取位置信息进行行进方向的调整。
所述控制模块还用于当所行进的第一路径与设定目标之间的第一角度差不满足设定角度阈值时,或,在当前位置处,根据在第二路径行进过程中所获取位置信息进行行进方向的调整,使得所述第三路径与所述设定目标之间的第二角度满足所述角度阈值。
所述控制模块还用于:通过SLAM方式构建地图或加载地图后,通过霍夫变换,对地图中作为地图数据的雷达描述数据进行直线提取,选择其中最长的直线,拟合该最长直线的直线方程,根据拟合的直线方程,确定所述最长直线与水平方向或者竖直方向的角度θ1,对于地图中所有雷达描述数据旋转角度-θ1,将旋转后的雷达描述数据予以保存,得到摆正后的地图中的雷达描述数据,将摆正后的地图中的雷达描述数据存储于存储模块中。
具体地,
作为一个例子,控制模块获取移动机器人在第二路径中的第一位置处的第一位置信息、以及,第二位置处的第二位置信息,其中,第一位置与第二位置之间的距离满足所述距离阈值;根据第一位置信息和第二位置信息,计算第二路径的第二斜率,判断第二斜率是否等于设定的第二斜率阈值,其中,第二斜率阈值根据所述设定目标所确定的目标直线的斜率确定;如果是,则禁止行进方向的调整,按照当前行进方向行进第三路径;否则,计算第二斜率的反正切值,得到第三角度,计算第二斜率阈值的反正切值,得到第四角度,将第三角度与第四角度之差作为用于调整行进方向的修正角度,并按照修正角度调整当前行进方向。所述控制模块可以包括图17中的存储器和处理器。
本发明实施例还提供了一种计算机可读存储介质,所述存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现所述移动控制方法的步骤。
对于装置/网络侧设备/存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (11)
1.一种移动机器人的移动控制方法,其特征在于,该方法包括,在移动机器人侧,控制移动机器人的行进路径满足:
当所行进的第一路径与设定目标之间的第一角度不满足设定的第一角度阈值时,或者从任一位置处开始,
所行进的第二路径为直线路径线段,且该直线路径线段的距离满足设定的距离阈值;
其中,
第二路径用于:根据在第二路径行进过程中所获取的第一位置信息和第二位置信息,确定所述第二路径与所述设定目标之间用于调整行进方向的修正角度,以按照该修正角度进行行进方向的调整;
所述根据在第二路径行进过程中所获取的第一位置信息和第二位置信息,确定所述第二路径与所述设定目标之间用于调整行进方向的修正角度,包括:
获取移动机器人在第二路径中的第一位置处的第一位置信息、以及,第二位置处的第二位置信息,
根据第一位置信息和第二位置信息,计算第二路径的第二斜率,
在第二斜率不等于设定的第二斜率阈值的情形下,计算第二斜率的反正切值,得到第三角度,计算第二斜率阈值的反正切值,得到第四角度,其中,第二斜率阈值根据所述设定目标所确定的目标直线的斜率确定,
将第三角度与第四角度之差作为修正角度。
2.如权利要求1所述的方法,其特征在于,所述行进路径还满足:
所述第二路径之后的第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值;其中,第一路径、第二路径、第三路径按照时间顺序依次行进;
该方法还包括:
当所行进的第一路径与设定目标之间的第一角度差不满足设定的第一角度阈值时,或,在当前位置处,
根据所述修正角度进行行进方向的调整,使得所述第三路径与所述设定目标之间的第二角度满足所述第二角度阈值。
3.如权利要求2所述的方法,其特征在于,所述第一位置与所述第二位置之间的距离满足所述距离阈值,
所述根据在第二路径行进过程中所获取的第一位置信息和第二位置信息,确定所述第二路径与所述设定目标之间用于调整行进方向的修正角度,还包括:
在第二斜率等于设定的第二斜率阈值的情形下,则禁止行进方向的调整,按照当前行进方向行进第三路径。
4.如权利要求3所述的方法,其特征在于,所述所行进的第一路径与设定目标之间的第一角度不满足设定的第一角度阈值,按照如下方式判定:
获取第一路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的第一斜率,
判断第一斜率是否等于第一斜率阈值,
如果不等于,则判定第一路径与设定目标之间的第一角度不满足设定的第一角度阈值;
所述第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值,按照如下方式判定:
获取第三路径中任意两位置处的位置信息,根据位置信息计算由该两位置所确定直线的第三斜率,
判断第三斜率是否等于第三斜率阈值,
如果等于,则判定第三路径与设定目标之间的第二角度满足设定的第二角度阈值。
5.如权利要求3所述的方法,其特征在于,所述使得所述第三路径与所述设定目标之间的第二角度满足设定的第二角度阈值,包括:
在第二路径中的第二位置处,按照修正角度调整当前行进方向,控制移动机器人按照调整后的进行方向进行所述第三路径。
6.如权利要求1至5任一所述的方法,其特征在于,所述任一位置处为移动机器人完成SLAM方式构建地图或加载地图时的当前位置,
该方法进一步包括,
移动机器人通过SLAM方式构建地图或加载地图后,将所述地图进行摆正,使得所述地图中的最长直线边框呈现为与水平方向或竖直方向一致。
7.如权利要求6所述的方法,其特征在于,所述将所述地图进行摆正包括:
通过霍夫变化,对地图中的地图数据进行直线提取,
选择地图中具有最长直线线段的边框,拟合该边框中所述直线的直线方程,
根据直线方程中的斜率,计算该直线的与水平方向或竖直方向的夹角,得到用于地图摆正的摆正角度,
对地图中所有的地图数据按照所述摆正角度进行旋转,得到摆正后的地图数据;
所述根据所述修正角度进行行进方向的调整,包括:
控制移动机器人本体旋转,使得移动机器人的当前行进方向与所述设定目标所确定的目标直线方向一致,并按照当前行进方向行进所述第二路径。
8.如权利要求2至5任一所述的方法,其特征在于,所述第一路径和第三路径为弓字形路径中的直线路径,所述第一角度阈值与第二角度阈值相等,
该方法进一步包括:
在移动机器人按照规划的弓字形路径行进过程中,当所行进的第一路径与设定目标之间的第一角度不满足设定的角度阈值时,判断当前行进的第二路径是否有障碍物,如果没有,则根据该第二路径上任意两位置处的位置信息,计算第二路径的第二斜率,
当第二斜率不等于设定的第二斜率阈值时,执行所述根据修正角度进行行进方向的调整的步骤,将弓字形路径中的剩余直线路径作为第三路径,按照调整后的行进方向行进。
9.一种移动控制装置,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8任一所述移动控制方法的步骤。
10.一种移动机器人,其特征在于,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8任一所述移动控制方法的步骤。
11.如权利要求10所述的移动机器人,其特征在于,所述移动机器人为可移动的清洁机器人,所述清洁机器人还包括:
地图数据获取模块,用于采集清洁机器人所在空间的环境信息,并根据环境信息建立地图、以及定位清洁机器人在地图中的位置;
行动模块,用于驱使清洁机器人移动;
清洁模块,用于进行清扫;
存储模块,用于保存地图数据获取模块所采集和建立的地图信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110756426.XA CN113359766B (zh) | 2021-07-05 | 2021-07-05 | 一种移动机器人的移动控制方法、以及移动机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110756426.XA CN113359766B (zh) | 2021-07-05 | 2021-07-05 | 一种移动机器人的移动控制方法、以及移动机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113359766A CN113359766A (zh) | 2021-09-07 |
CN113359766B true CN113359766B (zh) | 2023-06-23 |
Family
ID=77538119
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110756426.XA Active CN113359766B (zh) | 2021-07-05 | 2021-07-05 | 一种移动机器人的移动控制方法、以及移动机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113359766B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114179069A (zh) * | 2021-12-10 | 2022-03-15 | 邵阳职业技术学院 | 一种工业机器人路径自动修正方法及系统 |
WO2023160369A1 (zh) * | 2022-02-26 | 2023-08-31 | 追觅创新科技(苏州)有限公司 | 移动方向纠偏方法、移动方向纠偏方法、系统及自移动机器人 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090058615A (ko) * | 2007-12-05 | 2009-06-10 | 포스데이타 주식회사 | 이동로봇의 주행 제어 방법 및 이를 이용한 이동 로봇 |
CN108021136A (zh) * | 2017-12-08 | 2018-05-11 | 北京奇虎科技有限公司 | 机器人沿行进路线行进的控制方法、装置及机器人 |
WO2018108179A1 (zh) * | 2016-12-15 | 2018-06-21 | 苏州宝时得电动工具有限公司 | 自移动设备及其定位故障报警方法和自动工作系统 |
CN108354524A (zh) * | 2017-01-26 | 2018-08-03 | 好样科技有限公司 | 自动清洁机及其控制方法 |
WO2019054057A1 (ja) * | 2017-09-14 | 2019-03-21 | ヤンマー株式会社 | 作業車両用の自律走行システム |
CN112180947A (zh) * | 2020-10-22 | 2021-01-05 | 湖南格兰博智能科技有限责任公司 | 一种移动机器人初始行进方向选择方法及其设备 |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3770383B2 (ja) * | 2000-11-09 | 2006-04-26 | 株式会社山梨ティー・エル・オー | 走行ロボット,そのティーチング方法および制御方法 |
JP3818653B2 (ja) * | 2003-06-26 | 2006-09-06 | トヨタ自動車株式会社 | 車両用走行支援装置 |
US20190176321A1 (en) * | 2015-09-30 | 2019-06-13 | AI Incorporated | Robotic floor-cleaning system manager |
US20170368691A1 (en) * | 2016-06-27 | 2017-12-28 | Dilili Labs, Inc. | Mobile Robot Navigation |
KR20210093240A (ko) * | 2018-11-29 | 2021-07-27 | 가부시끼 가이샤 구보다 | 자동 주행 제어 시스템, 자동 주행 제어 프로그램, 자동 주행 제어 프로그램을 기록한 기록 매체, 자동 주행 제어 방법, 제어 장치, 제어 프로그램, 제어 프로그램을 기록한 기록 매체, 제어 방법 |
JP7356264B2 (ja) * | 2019-05-29 | 2023-10-04 | アマノ株式会社 | 自律走行作業装置 |
GB2584839B (en) * | 2019-06-12 | 2022-12-21 | Dyson Technology Ltd | Mapping of an environment |
CN111007861B (zh) * | 2019-12-24 | 2023-11-17 | 北京旷视机器人技术有限公司 | 轨迹跟踪控制方法、装置、系统及移动机器人 |
CN111297248B (zh) * | 2020-03-31 | 2021-11-30 | 深圳市银星智能科技股份有限公司 | 清洁机器人及其清洁模式 |
CN112327837A (zh) * | 2020-10-28 | 2021-02-05 | 深圳市银星智能科技股份有限公司 | 机器人行进方法、非易失性计算机可读存储介质及机器人 |
-
2021
- 2021-07-05 CN CN202110756426.XA patent/CN113359766B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090058615A (ko) * | 2007-12-05 | 2009-06-10 | 포스데이타 주식회사 | 이동로봇의 주행 제어 방법 및 이를 이용한 이동 로봇 |
WO2018108179A1 (zh) * | 2016-12-15 | 2018-06-21 | 苏州宝时得电动工具有限公司 | 自移动设备及其定位故障报警方法和自动工作系统 |
CN108354524A (zh) * | 2017-01-26 | 2018-08-03 | 好样科技有限公司 | 自动清洁机及其控制方法 |
WO2019054057A1 (ja) * | 2017-09-14 | 2019-03-21 | ヤンマー株式会社 | 作業車両用の自律走行システム |
CN108021136A (zh) * | 2017-12-08 | 2018-05-11 | 北京奇虎科技有限公司 | 机器人沿行进路线行进的控制方法、装置及机器人 |
CN112180947A (zh) * | 2020-10-22 | 2021-01-05 | 湖南格兰博智能科技有限责任公司 | 一种移动机器人初始行进方向选择方法及其设备 |
Non-Patent Citations (1)
Title |
---|
服务机器人导航与调度系统技术研究;邹风山;赵彬;;微型机与应用(第07期) * |
Also Published As
Publication number | Publication date |
---|---|
CN113359766A (zh) | 2021-09-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113359766B (zh) | 一种移动机器人的移动控制方法、以及移动机器人 | |
CN109212531B (zh) | 确定目标车辆取向的方法 | |
US10698100B2 (en) | Method and device for determining the position of a vehicle | |
US7696894B2 (en) | Method for determining a relative position of a mobile unit by comparing scans of an environment and mobile unit | |
KR101309415B1 (ko) | 로봇 시스템 및 지도 갱신 방법 | |
US11512975B2 (en) | Method of navigating an unmanned vehicle and system thereof | |
US20220169280A1 (en) | Method and Device for Multi-Sensor Data Fusion For Automated and Autonomous Vehicles | |
CN110082753A (zh) | 确定车辆位置的方法 | |
KR102327901B1 (ko) | 이동하는 오브젝트 센서의 정렬을 교정하기 위한 방법 | |
CN111637877B (zh) | 机器人定位方法、装置、电子设备和非易失性存储介质 | |
EP3341809A1 (en) | Gps data correction for automated vehicle | |
ES2655978T3 (es) | Procedimiento de estimación de la desviación angular de un elemento móvil con relación a una dirección de referencia | |
US20220176989A1 (en) | High precision position estimation method through road shape classification-based map matching and autonomous vehicle thereof | |
CN111113422B (zh) | 机器人定位方法、装置、计算机可读存储介质及机器人 | |
CN110637209B (zh) | 估计机动车的姿势的方法、设备和具有指令的计算机可读存储介质 | |
CN113580134B (zh) | 视觉定位方法、设备、机器人、存储介质及程序产品 | |
Konrad et al. | Localization in digital maps for road course estimation using grid maps | |
CN114440928A (zh) | 激光雷达与里程计的联合标定方法、机器人、设备和介质 | |
CN113835422B (zh) | 一种视觉地图构建方法和移动机器人 | |
CN116026318A (zh) | 基于多传感器融合slam和磁导的组合导航方法及存储介质 | |
D’Adamo et al. | Registration of three‐dimensional scanning LiDAR sensors: An evaluation of model‐based and model‐free methods | |
CN113261007A (zh) | 用于自动和自主车辆的多传感器数据融合的方法和装置 | |
US20220080997A1 (en) | Lane uncertainty modeling and tracking in a vehicle | |
JP2017181195A (ja) | 測定装置、測定方法、及び、プログラム | |
WO2023162017A1 (ja) | 位置姿勢推定装置、位置姿勢推定システム、およびセンサ設置方法 |
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 |