CN108508891B - 一种机器人重定位的方法 - Google Patents

一种机器人重定位的方法 Download PDF

Info

Publication number
CN108508891B
CN108508891B CN201810226498.1A CN201810226498A CN108508891B CN 108508891 B CN108508891 B CN 108508891B CN 201810226498 A CN201810226498 A CN 201810226498A CN 108508891 B CN108508891 B CN 108508891B
Authority
CN
China
Prior art keywords
robot
barrier
along
grid
wing diameter
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
Application number
CN201810226498.1A
Other languages
English (en)
Other versions
CN108508891A (zh
Inventor
李永勇
肖刚军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Amicro Semiconductor Co Ltd
Original Assignee
Zhuhai Amicro Semiconductor Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhuhai Amicro Semiconductor Co Ltd filed Critical Zhuhai Amicro Semiconductor Co Ltd
Priority to CN201810226498.1A priority Critical patent/CN108508891B/zh
Publication of CN108508891A publication Critical patent/CN108508891A/zh
Priority to KR1020207028134A priority patent/KR102333984B1/ko
Priority to EP18910525.7A priority patent/EP3770711A4/en
Priority to US16/982,068 priority patent/US11537142B2/en
Priority to JP2020550731A priority patent/JP7085296B2/ja
Priority to PCT/CN2018/120198 priority patent/WO2019179176A1/zh
Application granted granted Critical
Publication of CN108508891B publication Critical patent/CN108508891B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S17/00Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
    • G01S17/88Lidar systems specially adapted for specific applications
    • G01S17/93Lidar systems specially adapted for specific applications for anti-collision purposes
    • G01S17/931Lidar systems specially adapted for specific applications for anti-collision purposes of land vehicles
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • G05D1/0251Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means extracting 3D information from a plurality of images taken from different locations, e.g. stereo vision
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector

Landscapes

  • Engineering & Computer Science (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Physics & Mathematics (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Manipulator (AREA)
  • Numerical Control (AREA)

Abstract

本发明涉及一种机器人重新定位的方法,通过利用机器人沿孤立物体的边缘行走的路径作为参考,可以对机器人行走误差累积过大而造成的位置偏差进行修正,实现重新定位,从而提高机器人在后续导航行走时定位的准确性和行走效率。

Description

一种机器人重定位的方法
技术领域
本发明涉及机器人领域,具体涉及一种机器人重新定位的方法。
背景技术
目前,扫地机器人在清扫过程中,会由于陀螺仪或码盘等器件自身的缺陷或者地面打滑等原因,产生行走误差,并且该误差会逐渐累积,长时间累积的误差会导致机器人所构建的地图也存在很大误差。现有解决这种误差的方法中,比较有效的是加入摄像头进行视觉定位或者采用激光雷达进行测距定位,但是采用这些方式需要较高的硬件成本,不适于扫地机器人的推广应用。
发明内容
本发明提供了一种机器人重新定位的方法,不需要使用摄像头或者激光雷达等昂贵器件,也可以对机器人的位置进行重新确定,避免机器人行走误差累积过大而导致的定位不准确的问题,提高了机器人定位的准确性。本发明的具体技术方案如下:
一种机器人重定位的方法,包括如下步骤:步骤S1:机器人检测到障碍物,并进入步骤S2;步骤S2:沿所述障碍物的边缘行走,并判断沿所述障碍物的边缘行走的路径是否满足确定所述障碍物是孤立物体的条件,如果否,则进入步骤S3,如果是,则进入步骤S4;步骤S3:调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S2;步骤S4:确定所述障碍物是孤立物体,记录沿所述孤立物体的边缘行走的沿边路径,判断当前记录的沿边路径和此前已存储的沿边路径是否相似,如果否,则进入步骤S5,如果是,则进入S6;步骤S5:把所记录的沿所述孤立物体的边缘行走的沿边路径作为已存储的沿边路径,并返回步骤S3;步骤S6:把此前已存储的与当前记录的沿边路径相似的沿边路径作为参考定位路径,确定当前的沿边路径所在的第一局部地图和参考定位路径所在的第二局部地图,把形状和大小相同的第一局部地图和第二局部地图进行重叠,确定第一局部地图的当前的沿边路径中,与第二局部地图的参考定位路径重叠的部分所对应的栅格单元作为定位单元,将机器人当前位于所述定位单元时检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标。
进一步地,在步骤S1之后,且在步骤S2之前,还包括如下步骤:步骤S11:确定机器人检测到障碍物时所对应的栅格坐标;步骤S12:确定从当前时间往前推算的预设时间内机器人已存储的沿边路径;步骤S13:判断步骤S11中所确定的栅格坐标与步骤S12中所确定的沿边路径所对应的栅格坐标是否相同或者相邻,如果是,则进入步骤S14,如果否,则进入步骤S2;步骤S14:调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11。其中,步骤S13中所述的相邻是指两个栅格坐标所对应的栅格单元之间具有共同的一条边或者一个角点。
进一步地,步骤S2所述的沿所述障碍物的边缘行走,并判断沿所述障碍物的边缘行走的路径是否满足确定所述障碍物是孤立物体的条件,包括如下步骤:步骤S21:沿所述障碍物的边缘行走,并记录起始位置点的起始信息;步骤S22:判断机器人从所述起始位置点开始检测到的角度变化量是否达到360°,如果是,则进入步骤S23,否则继续沿所述障碍物的边缘行走,至机器人从所述起始位置点开始检测到的角度变化量达到360°,进入步骤S23;步骤S23:判断机器人是否回到步骤S21中所述的起始位置点,如果是,则确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件,否则进入步骤S24;步骤S24:继续沿所述障碍物的边缘行走,判断机器人是否回到步骤S21中所述的起始位置点,以及判断机器人从所述起始位置点开始检测到的角度变化量是否达到450°,如果机器人回到所述起始位置点且所述角度变化量没有达到450°,则确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件,如果机器人回到所述起始位置点且所述角度变化量超过了450°,或者机器人没有回到所述起始位置点且所述角度变化量超过了450°,则确定机器人沿所述障碍物的边缘行走的路径不满足确定所述障碍物是孤立物体的条件。
进一步地,在步骤S21之后,且在步骤S22之前,还包括如下步骤:步骤S211:检测机器人从所述起始位置点开始沿所述障碍物的边缘行走的距离和角度变化量;步骤S212:判断机器人从所述起始位置点开始行走的距离是否达到1.5米,如果是,则进入步骤S213,如果否,则机器人继续行走,至机器人行走的距离达到1.5米,进入步骤S213;步骤S213:判断机器人从所述起始位置点开始行走的角度变化量是否达到90°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S214;步骤S214:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的距离是否达到3米,如果是,则进入步骤S215,如果否,则机器人继续行走,至机器人行走的距离达到3米,进入步骤S215;步骤S215:判断机器人从所述起始位置点开始行走的角度变化量是否达到180°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S216;步骤S216:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的距离是否达到4.5米,如果是,则进入步骤S217,如果否,则机器人继续行走,至机器人行走的距离达到4.5米,进入步骤S217;步骤S217:判断机器人从所述起始位置点开始行走的角度变化量是否达到270°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S22。
进一步地,在步骤S21之后,且在步骤S22之前,还包括如下步骤:步骤S211:检测机器人从所述起始位置点开始沿所述障碍物的边缘行走的时间和角度变化量;步骤S212:判断机器人从所述起始位置点开始行走的时间是否达到1分钟,如果是,则进入步骤S213,如果否,则机器人继续行走,至机器人行走的时间达到1分钟,进入步骤S213;步骤S213:判断机器人从所述起始位置点开始行走的角度变化量是否达到90°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S214;步骤S214:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到2分钟,如果是,则进入步骤S215,如果否,则机器人继续行走,至机器人行走的时间达到2分钟,进入步骤S215;步骤S215:判断机器人从所述起始位置点开始行走的角度变化量是否达到180°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S216;步骤S216:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到3分钟,如果是,则进入步骤S217,如果否,则机器人继续行走,至机器人行走的时间达到3分钟,进入步骤S217;步骤S217:判断机器人从所述起始位置点开始行走的角度变化量是否达到270°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S218;步骤S218:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到4分钟,如果是,则进入步骤S22,如果否,则机器人继续行走,至机器人行走的时间达到4分钟,进入步骤S22。
进一步地,在步骤S23中所述的判断机器人回到步骤S21中所述的起始位置点之后,且在确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件之前,或者在步骤S24中所述的如果机器人回到所述起始位置点且所述角度变化量没有达到450°之后,且在确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件之前,还包括如下步骤:判断机器人沿所述障碍物行走一周所圈定的面积是否大于0.3平方米,如果是,进入确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件的步骤,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11。
进一步地,步骤S4中所述的记录沿所述孤立物体的边缘行走的沿边路径,判断当前记录的沿边路径和此前已存储的沿边路径是否相似,包括如下步骤:步骤S41:记录当前的所述沿边路径所对应栅格单元的栅格坐标,记录当前的所述沿边路径所围成的区域的栅格面积,记录当前的所述沿边路径所围成的区域的中心栅格单元的栅格坐标;步骤S42:判断当前的沿边路径所围成区域的中心栅格单元的栅格坐标与已存储的沿边路径所围成区域的中心栅格单元的栅格坐标的坐标差值是否大于第一预设坐标差值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径不相似,如果否,则进入步骤S43;步骤S43:判断当前的栅格面积与已存储的沿边路径所对应的区域的栅格面积的差值是否大于预设面积差值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径不相似,如果否,则进入步骤S44;步骤S44:基于当前的沿边路径所在的第一局部地图和已存储的沿边路径所在的第二局部地图,把形状和大小相同的第一局部地图和第二局部地图进行重叠,判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径相似,如果否,则进入步骤S45;步骤S45:将当前的沿边路径相对于已存储的沿边路径分别向上下左右四个方向平移N个栅格单元的距离,判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径相似,如果否,则确定当前记录的沿边路径和此前已存储的沿边路径不相似。其中,所述N为自然数,且1≤N≤3。
进一步地,步骤S44或者步骤S45中所述的判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,包括如下步骤:基于当前的沿边路径所在的第一局部地图和已存储的沿边路径所在的第二局部地图,将当前的沿边路径和已存储的沿边路径所对应的栅格单元都标示为1,其它的栅格单元标示为0;将所述第一局部地图和所述第二局部地图中相对应的栅格单元进行与运算;判断与运算后,所得到的标示为1的栅格单元的数量占已存储的沿边路径所对应的栅格单元的数量的比例是否大于预设比例值。
进一步地,步骤S6中所述的将机器人当前位于所述定位单元时检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标,包括如下步骤:步骤S61:判断所述定位单元中是否存在M个串连的栅格单元,且机器人当前记录的这M个串连的栅格单元的栅格坐标与所述参考定位路径中相应的栅格单元的栅格坐标的差值小于第二预设坐标差值,如果是,则进入步骤S62,如果否,则返回步骤S3;步骤S62:机器人行走至所述M个串连的栅格单元中的任意一个栅格单元,并进入步骤S63;步骤S63:将当前检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标。其中,所述M为自然数,且2≤M≤3。
进一步地,步骤S62中所述的机器人行走至所述M个串连的栅格单元中的任意一个栅格单元,包括如下步骤:步骤S621:判断所述M个串连的栅格单元是否只有一组,如果是,则直接行走至所述M个串连的栅格单元中的任意一个栅格单元,并进入步骤S63,如果否,则进入步骤S622;步骤S622:确定记录时间最早的一组所述M个串连的栅格单元,机器人行走至其中记录时间最早的一个栅格单元,并进入步骤S63。
进一步地,在步骤S6之后,还包括如下步骤:步骤S71:确定步骤S6中所述的机器人当前位于所述定位单元时检测到的栅格坐标为(X1,Y1),并进入步骤S72;步骤S72:确定步骤S6中所述的对应的参考定位路径中的栅格单元的栅格坐标为(X2,Y2),并进入步骤S73;步骤S73:确定栅格单元的边长为L,并进入步骤S74;步骤S74:将机器人在当前位置点检测到的坐标值(x1,y1)替换为(x2,y2),x2=x1-(X1-X2)*L,y2=y1-(Y1-Y2)*L。
进一步地,在步骤S6之后,还包括如下步骤:步骤S71:确定步骤S6中所述的机器人当前位于所述定位单元中心点时检测到的坐标值为(x1,y1);步骤S72:确定步骤S6中所述的对应的参考定位路径中的栅格单元的中心点的坐标值为(x2,y2);步骤S73:将机器人当前检测到的坐标值((x1,y1))替换为(x2,y2)。
本发明的有益效果包括:通过利用机器人沿孤立物体的边缘行走的路径作为参考,可以对机器人行走误差累积过大而造成的位置偏差进行修正,实现重新定位,从而提高机器人在后续导航行走时定位的准确性和行走效率。
附图说明
图1为本发明所述的机器人重定位的方法的流程示意图。
图2是第一局部地图和第二局部地图重叠后的示意图一
图3是第一局部地图和第二局部地图重叠后的示意图二。
图4是第一局部地图和第二局部地图重叠后的示意图三。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行详细描述。应当理解,下面所描述的具体实施例仅用于解释本发明,并不用于限定本发明。
本发明所述的机器人是一种智能清洁机器人(比如扫地机器人或者拖地机器人),下述实施例中提到的机器人都是指代智能清洁机器人。这些机器人能凭借一定的人工智能,自动在某些场合自动进行行走。机器人的机体上设有各种传感器,可检测行走距离、行走角度(即行进方向)、机体状态和障碍物等,如碰到墙壁或其他障碍物,会自行转弯,并依不同的设定,而走不同的路线,有规划地行走,还会根据行走过程中检测到的各种数据构建栅格地图,比如把检测到障碍物时所对应的栅格单元标示为障碍单元,把检测到悬崖时所对应的栅格单元标示悬崖单元,把正常行走通过的栅格单元标示为已走过单元等。本发明所述的机器人包括如下结构:带有左驱动轮和右驱动轮的能够自主行走的机器人机体,机体上设有人机交互界面,机体上设有障碍检测单元。机体内部设置有惯性传感器,所述惯性传感器包括加速度计和陀螺仪等,两个驱动轮上都设有用于检测驱动轮的行走距离的里程计(一般是码盘),还设有能够处理相关传感器的参数,并能够输出控制信号到执行部件的控制模块。
如图1所示的一种机器人重定位的方法,包括如下步骤:在步骤S1中,机器人一边行走一边进行行走数据的检测,当机器人前端的碰撞式传感器或者红外传感器检测到障碍物时,进入步骤S2。进入步骤S2后,机器人沿所述障碍物的边缘行走,并判断沿所述障碍物的边缘行走的路径是否满足确定所述障碍物是孤立物体的条件,其中,确定障碍物是孤立物体的条件,其具体条件可以根据不同的设计需求进行相应设置,比如,可以通过机器人开始沿障碍物的边缘行走的起始位置点和结束沿障碍物边缘行走的结束位置点的关系来进行判断,也可以通过在一定的时间内转动角度的变化量进行判断,也可以通过转动角度和栅格位置的关系进行判断,还可以把这些因素结合起来进行综合判断,等等。当机器人确定沿所述障碍物的边缘行走的路径不满足所述条件,则可以得知所述障碍物不是孤立物体,不能依据该障碍物进行重新定位,也不能把与该障碍物相关的数据作为定位参考依据,所以,进入步骤S3,机器人调整行走角度,朝远离障碍物的方向行走,离开所述障碍物。接着,机器人按系统规划的路径或者方式继续行走,当机器人前端的碰撞式传感器或者红外传感器再次检测到障碍物时,则返回步骤S2,继续判断该障碍物是不是孤立物体。在步骤S2中,当机器人确定沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件时,则进入步骤S4,机器人确定所述障碍物是孤立物体,并记录沿所述孤立物体的边缘行走的沿边路径,所记录的信息可以根据具体的设计需求进行相应设置,比如记录沿边路径所对应的栅格坐标,记录机器人行走在沿边路径所对应的栅格单元时陀螺仪检测到的角度,记录机器人在沿边路径的起点的时间以及在沿边路径的终点的时间,等等。然后,机器人判断当前记录的沿边路径和此前已存储的沿边路径是否相似,判断的方式也可以根据不同的设计需求进行相应设置,比如,通过当前记录的沿边路径所对应的栅格单元的栅格坐标与此前已存储的沿边路径所对应的栅格单元的栅格坐标进行对比,如果仅有少数几个栅格坐标不相同,则可以认为两条沿边路径是相似的;也可以通过当前记录的沿边路径所对应的栅格单元的整体排布方位与此前已存储的沿边路径所对应的栅格单元的整体排布方位的差异,如果仅有少数几个点的排布方位有差异,则可以认为两条沿边路径是相似的;还可以通过机器人沿边行走过程中单位时间内的角度变化率、沿边路径长度和沿边行走的总时间来进行判断,如果这几个参数都相同,则可以认为两条沿边路径是相似的;当然,还可以把所述这些因素相互结合起来进行综合判断。如果判断得出当前记录的沿边路径和此前已存储的沿边路径不相似,表明机器人当前所检测到的孤立物体,此前没有碰到过,没有沿该孤立物体的边缘行走的相关记录数据作为重新定位的参考,无法利用该孤立物体进行重新定位,所以,进入步骤S5,把所记录的沿所述孤立物体的边缘行走的沿边路径作为已存储的沿边路径,方便后续机器人再次碰到该孤立物体时,可以进行重新定位,然后再返回步骤S3。如果判断得出当前记录的沿边路径和此前已存储的沿边路径相似,表明机器人当前所检测到的孤立物体,此前已经碰到过,并且存储有沿该孤立物体的边缘行走过的沿边路径的相关记录数据,可以利用该孤立物体进行重新定位,所以,进入步骤S6,把此前已存储的沿该孤立物体的边缘行走的沿边路径作为参考定位路径,接着,确定当前的沿边路径所在的第一局部地图和参考定位路径所在的第二局部地图,即在栅格地图中圈定一个包含当前的沿边路径的部分地图作为第一局部地图,圈定一个包含参考定位路径的部分地图作为第二局部地图,所述第一局部地图和所述第二局部地图的大小和形状是相同的,但是具体的大小和形状可以根据具体的设计需求进行相应设置,比如把形状设置为圆心、正方形或者长方形,把局部地图的最大栅格坐标设置为比沿边路径中的最大栅格坐标大四个栅格单元,把局部地图的最小栅格坐标设置为比沿边路径中的最小栅格坐标小四个栅格单元,等等。紧接着,把形状和大小相同的第一局部地图和第二局部地图进行重叠,由于当前的沿边路径和参考定位路径是相似的,两者之间主要是栅格坐标的不同,而路径的整体形状是几乎相同的,仅有少数几个区别点,所以,通过将第一局部地图和第二局部地图进行重叠,就可以得出当前的沿边路径和参考定位路径相互重叠的部分,这些重叠的部分表明机器人沿着孤立物体的这段边缘行走时没有产生误差,可以采用这段边缘所对应的栅格坐标进行重新定位,而有一些不重叠的部分或者点,则表明机器人在对应的边缘段或者边缘点产生了行走误差,不适于作为重新定位的参考。因此,最后再确定第一局部地图的当前的沿边路径中,与第二局部地图的参考定位路径重叠的部分所对应的栅格单元作为定位单元,将机器人当前位于所述定位单元时检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标,从而实现机器人的重新定位。如图2所示,图2是第一局部地图和第二局部地图重叠后的示意图,图中的每个小方格表示一个栅格单元,标示有字母P的方格连成的路径为所述的当前的沿边路径,标示有字母B的方格连成的路径为所述的参考定位路径,在一个方格中即标示有字母P,又标示有字母B,则表示这是所述的当前的沿边路径和所述参考定位路径重叠的部分。由图2所示可知,这两条沿边路径只有左上角的两三个点出现一些差异,大部分路径是重叠的,所以,可以得出这两条路径是相似的,同时,机器人在任意一个同时含有B和P的方格所对应的位置,将当前检测到的栅格坐标,替换成对应的B方格中已存储的栅格坐标,即可实现机器人的重新定位。本实施例所述的方法,通过利用机器人沿孤立物体的边缘行走的路径作为参考,可以对机器人行走误差累积过大而造成的位置偏差进行修正,实现重新定位,从而提高机器人在后续导航行走时定位的准确性和行走效率。
作为其中一种实施方式,在步骤S1之后,且在步骤S2之前,还包括如下步骤:步骤S11,先通过机器人的陀螺仪和里程计所检测的数据,来确定机器人检测到障碍物时所处于的栅格单元以及该栅格单元所对应的栅格坐标。然后进入步骤S12,确定从当前时间往前推算的预设时间内机器人已存储的沿边路径,其中,所述预设时间可以根据具体的设计需求进行相应设置,优选的,可设置为10分钟至30分钟中的任意一值,本实施例设置为20分钟,即从当前时间往前推算20分钟,在这20分钟时间里,机器人已存储的沿边路径有哪些,机器人会对内存中的数据进行搜索,确定好相关的数据后,再进入步骤S13。在步骤S13中,机器人会把步骤S11中所确定的栅格坐标与步骤S12中所确定的沿边路径所对应的栅格坐标逐一进行对比分析,如果发现所对比的两个栅格坐标是相同或者相邻的,则认为当前障碍物已经在20分钟内碰到过,并且已经沿着它的边缘进行了沿边行走,如果机器人在较短的时间内频繁地绕同样的障碍物的边缘行走,会降低机器人的行走效率,同时,在较短的时间间隔内,机器人所累积的误差还不是很大,不需要进行重新定位,频繁的重新定位也会导致机器人的行走效率降低,所以,为了使机器人达到最佳的行走效率,在步骤S13中确定了步骤S11中所确定的栅格坐标与步骤S12中所确定的沿边路径所对应的栅格坐标相同或者相邻时,则进入步骤S14,机器人调整行走角度,朝远离障碍物的方向行走,离开所述障碍物。接着,机器人按系统规划的路径或者方式继续行走,当机器人前端的碰撞式传感器或者红外传感器再次检测到障碍物时,则返回步骤S11,重新开始判断再次检测到的障碍物是否符合相关要求。如果在栅格坐标的对比分析中,发现所对比的两个栅格坐标不相同,也不相邻,则认为在此前的20分钟内机器人没有碰到过该障碍物,并且,机器人已经行走了较长的时间,累积的误差也比较大了,所以,接着进入步骤S2,进一步判断该障碍物是不是符合能够使机器人进行重新定位的条件。其中,步骤S13中所述的相邻是指两个栅格坐标所对应的栅格单元之间具有共同的一条边或者一个角点。本实施例所述的方法,通过机器人在预设时间内所检测到的障碍物的情况,来判断机器人是否需要沿这个障碍物的边缘行走,从而提高机器人行走的效率,避免机器人行动的盲目性和重复性。
作为其中一种实施方式,步骤S2所述的沿所述障碍物的边缘行走,并判断沿所述障碍物的边缘行走的路径是否满足确定所述障碍物是孤立物体的条件,包括如下步骤:在步骤S21中,机器人沿所述障碍物的边缘行走,并基于陀螺仪和里程计检测到的数据,记录机器人开始沿边行走时的起始位置点的起始信息,所述起始信息可以包括起始位置点的点坐标值、起始位置点所对应的栅格单元的栅格坐标、行走的方向和开始行走的时间等信息。记录起始信息可以为了后续判断障碍物是不是孤立物体提供参考数据,也可以为后续寻找该障碍物时提供导航依据。记录好起始信息后,进入步骤S22,基于陀螺仪检测到的数据,判断机器人从所述起始位置点开始沿障碍物的边缘行走,机体转动的角度变化量是否达到360°,由此可以初步判断机器人是否行走了一圈,如果初步判断已经行走了一圈,则直接进入步骤S23,作进一步的确认。如果初步判断没有行走一圈,则继续沿所述障碍物的边缘行走,至机器人从所述起始位置点开始检测到的角度变化量达到360°,才进入步骤S23,作进一步的确认。在步骤S23中,机器人先判断是否回到步骤S21中所述的起始位置点,判断方式可以采用点坐标值是否相同的方式,如果检测到当前位置点的点坐标值与起始位置点的点坐标值相同,则认为机器人回到了起始位置点,从而可以确定机器人沿所述障碍物的边缘行走了一圈,通过沿边行走的路径可以得出所述障碍物是孤立物体,即满足了确定所述障碍物是孤立物体的条件,然后可以进入步骤S4,作下一步操作。由于机器人行走误差的影响,在陀螺仪检测到机体已经转动360°时,机器人可能还没有绕障碍物的边缘行走完一圈,没能回到起始位置点。当判断机器人从起始位置点开始检测到的角度变化量达到360°,但是,机器人又没有回到的起始位置点时,进入步骤S24,继续沿所述障碍物的边缘行走,判断机器人是否回到步骤S21中所述的起始位置点,以及判断机器人从所述起始位置点开始检测到的角度变化量是否达到450°。如果机器人回到所述起始位置点且所述角度变化量没有达到450°,则表明机器人此前的确是受误差的影响,而在450°范围内还能够回到起始位置点,说明所产生的误差在可接受的范围内,可以确定所述障碍物是孤立物体,即满足了确定所述障碍物是孤立物体的条件。如果机器人回到所述起始位置点,但是所述角度变化量超过了450°,或者机器人没有回到所述起始位置点,且所述角度变化量超过了450°,则表明所述障碍物不是孤立物体,确定机器人沿所述障碍物的边缘行走的路径不满足确定所述障碍物是孤立物体的条件。本实施例所述的方法,通过结合坐标值和机器人的转动角度,可以准确地判断机器人是否能够完整地绕障碍物行走一圈,进而准确得出机器人沿所述障碍物的边缘行走的路径是否满足确定所述障碍物是孤立物体的条件的结论,可以为后续机器人进行重新定位提供有效参考数据。
作为其中一种实施方式,在步骤S21之后,且在步骤S22之前,还包括如下步骤:步骤S211:基于里程计和陀螺仪,检测机器人从所述起始位置点开始沿所述障碍物的边缘行走的距离和角度变化量。然后进入步骤S212,判断机器人从所述起始位置点开始行走的距离是否达到1.5米,如果是,则进入步骤S213,如果否,则机器人继续行走,至机器人行走的距离达到1.5米,进入步骤S213。在步骤S213中,判断机器人从所述起始位置点开始行走的角度变化量是否达到90°,如果否,表明所述障碍物占地面积比较大,边缘线路比较长,不适于作为重新定位的参考物体,所以,机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,重新开始判断。如果机器人行走了1.5米,且转动的角度达到了90°,则可以初步判断该障碍物的占地面积大小适合,需进入步骤S214,作进一步判断。在步骤S214中,机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的距离是否达到3米,如果是,则进入步骤S215,如果否,则机器人继续行走,至机器人行走的距离达到3米,进入步骤S215。在步骤S215中,判断机器人从所述起始位置点开始行走的角度变化量是否达到180°,如果否,表明所述障碍物的前1.5米的边缘线路延伸角度比较合适,而1.5米至3米这段边缘线路的延伸角度比较大,很有可能障碍物的占地面积也随着变大,不适于作为重新定位的参考物体,所以,机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,重新开始判断。如果机器人行走了3米,且转动的角度达到了180°,则可以大致得出该障碍物的占地面积大小适合,但是,由于障碍物形状的不确定性,还需进入步骤S216,作最后的确认。在步骤S216中,机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的距离是否达到4.5米,如果是,则进入步骤S217,如果否,则机器人继续行走,至机器人行走的距离达到4.5米,进入步骤S217。在步骤S217中,判断机器人从所述起始位置点开始行走的角度变化量是否达到270°,如果否,表明所述障碍物的前3米的边缘线路延伸角度比较合适,而3米至4.5米这段边缘线路的延伸角度比较大,很有可能障碍物的占地面积也随着变大,不适于作为重新定位的参考物体,所以,机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,重新开始判断。如果机器人行走了4.5米,且转动的角度达到了270°,则可以得出该障碍物的占地面积大小适合,即使剩余边缘线路变化比较大,但也只有90°的变化范围,所以,对障碍物的整体大小影响不大,所以,可以最终确认该障碍物的占地面积大小适合,是作为机器人进行重新定位的最佳参考物体。本实施例所述的方法,通过结合沿障碍物边缘行走的路径的距离和角度变化关系,可以准确地判断所述障碍物的占地面积的大小情况,从而有效确定该障碍物是否适合作为机器人进行重新定位的参考物体,进而可以为后续机器人的重新定位提供准确的参考数据。
作为其中一种实施方式,在步骤S21之后,且在步骤S22之前,还包括如下步骤:步骤S211:基于机器人中的RTC时钟计时模块和陀螺仪,检测机器人从所述起始位置点开始沿所述障碍物的边缘行走的时间和角度变化量,然后进入步骤S212。在步骤S212中,机器人判断从所述起始位置点开始行走的时间是否达到1分钟,如果是,表明机器人沿障碍物的边缘行走了一定距离,则进入步骤S213,如果否,则机器人继续行走,至机器人行走的时间达到1分钟,进入步骤S213。在步骤S213中,判断机器人从所述起始位置点开始行走的角度变化量是否达到90°,如果否,表明机器人沿障碍物边缘的行走轨迹的变化所对应的障碍物的占地面积比较大,不适于作为重新定位的参考物体,所以,机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,重新开始判断。如果机器人已经行走了1分钟,并且转动的角度变化量达到90°,可以初步判断该障碍物的占地面积大小适合,需进入步骤S214,作进一步判断。在步骤S214中,机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到2分钟,如果是,表明机器人行走了更长的一段距离,则进入步骤S215,如果否,则机器人继续行走,至机器人行走的时间达到2分钟,进入步骤S215。在步骤S215中,判断机器人从所述起始位置点开始行走的角度变化量是否达到180°,如果否,表明所述机器人在开始的第1分钟沿障碍物边缘行走的边缘线路延伸角度比较合适,而第2分钟这段时间沿障碍物的边缘行走的边缘线路的延伸角度比较大,很有可能障碍物的占地面积也随着变大,不适于作为重新定位的参考物体,所以,机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,重新开始判断。如果机器人行走了2分钟,且转动的角度达到了180°,则可以大致得出该障碍物的占地面积大小适合,但是,由于障碍物形状的不确定性,还需进入步骤S216,作进一步的确认。在步骤S216中,机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到3分钟,如果是,则进入步骤S217,如果否,则机器人继续行走,至机器人行走的时间达到3分钟,才进入步骤S217。在步骤S217中,判断机器人从所述起始位置点开始行走的角度变化量是否达到270°,如果否,表明所述机器人开始的第1分钟和第2分钟沿障碍物边缘行走的边缘线路延伸角度比较合适,而第3分钟这段时间沿障碍物的边缘行走的边缘线路的延伸角度比较大,很有可能障碍物的占地面积也随着变大,不适于作为重新定位的参考物体,所以,机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,重新开始判断。如果机器人行走了3分钟,且转动的角度达到了270°,表明机器人前3分钟沿障碍物边缘行走的边缘线路的延伸角度也比较合理,则进入步骤S218,机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到4分钟,如果是,则进入步骤S22,判断机器人从所述起始位置点开始检测到的角度变化量是否达到360°,由此可以判断机器人是否沿障碍物的边缘行走了360°,实现沿边行走一圈。如果否,则机器人继续行走,至机器人行走的时间达到4分钟,才进入步骤S22进行360°的判断。本实施例所述的方法,通过逐个时间段地分析机器人的角度变化量,可以准确地判断所述障碍物的占地面积的大小情况,从而有效确定该障碍物是否适合作为机器人进行重新定位的参考物体,进而可以为后续机器人的重新定位提供准确的参考数据。
作为其中一种实施方式,在步骤S23中所述的判断机器人回到步骤S21中所述的起始位置点之后,且在确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件之前,或者在步骤S24中所述的如果机器人回到所述起始位置点且所述角度变化量没有达到450°之后,且在确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件之前,还包括如下步骤:判断机器人沿所述障碍物行走一周所圈定的面积是否大于0.3平方米,如果是,表明所述障碍物的占地面积大小比较合适,可以考虑作为机器人进行重新定位的参考物体,然后进入确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件的步骤,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,重新开始判断。由于作为机器人定位参考的物体不宜过大,也不宜过小,如果过大,则定位耗时较多,效率较低,如果过小,则定位不准确,效果不理想。所以,本实施例所述的方法,通过把占地面积大于0.3平方米作为限制条件,可以选出很理想的孤立物体作为后续机器人进行重新定位或者存储新的定位参数的参考。
作为其中一种实施方式,步骤S4中所述的记录沿所述孤立物体的边缘行走的沿边路径,判断当前记录的沿边路径和此前已存储的沿边路径是否相似,包括如下步骤:步骤S41:基于机器人的陀螺仪和里程计所检测到的数据,记录当前的所述沿边路径所对应栅格单元的栅格坐标,记录当前的所述沿边路径所围成的区域的栅格面积,记录当前的所述沿边路径所围成的区域的中心栅格单元的栅格坐标,其中,所述栅格坐标可以通过位置点的坐标值换算出来,所述栅格面积则可以通过栅格单元的数量计算出来。中心栅格单元的栅格坐标则可以通过该区域中的上下左右的最值栅格坐标计算出来,比如,该区域最上端的栅格坐标为(20,30),最下端的栅格坐标为(8,10),最左端的栅格坐标为(6,12),最右端的栅格坐标为(28,22),则计算得出中心栅格单元的栅格坐标为(6+(28-6)/2,10+(30-10)/2)=(17,20)。所述的中心并不仅仅是指规则形状下的正中心,当区域的形状不规则时,通过同样方式计算出来的栅格坐标,也可以作为该区域的中心栅格单元的栅格坐标。在记录好相关数据后,进入步骤S42,判断当前的沿边路径所围成区域的中心栅格单元的栅格坐标与已存储的沿边路径所围成区域的中心栅格单元的栅格坐标的坐标差值是否大于第一预设坐标差值,所述第一预设坐标差值可以根据具体的设计需求进行相应设置,可以设置为(2,2)或者(3,3),即判断所对比的栅格坐标中的X值是否大于2或3,Y值是否大于2或3,如果都是,则确定为大于第一预设坐标差值,否则确定为不大于第一预设坐标差值。当判断得出当前的沿边路径所围成区域的中心栅格单元的栅格坐标与已存储的沿边路径所围成区域的中心栅格单元的栅格坐标的坐标差值大于第一预设坐标差值,表明所对比的两条沿边路径所围成的区域的上下左右的最值栅格坐标的差异比较大,即两条沿边路径的形状有较大区别,所以,可以确定当前记录的沿边路径和此前已存储的沿边路径不相似。当判断得出当前的沿边路径所围成区域的中心栅格单元的栅格坐标与已存储的沿边路径所围成区域的中心栅格单元的栅格坐标的坐标差值小于或等于第一预设坐标差值,并不一定表明这两条栅格路径相似,需进入步骤S43,作进一步判断。在步骤S43中,判断当前的栅格面积与已存储的沿边路径所对应的区域的栅格面积的差值是否大于预设面积差值,所述预设面积差值可以根据具体的设计需求进行相应设置,可以设置为1至5个栅格单元的面积,由于行走误差的影响,如果设置的值过小,很难找到相适配的对象,如果设置的值过大,找到的对象的准确性又比较低,所以,本实施例设置为3个栅格单元的面积,如此可以达到最优匹配效果。而栅格面积可以基于沿边路径所对应的栅格单元的栅格坐标值,把每行栅格单元的个数或者每列栅格单元的个数相加起来,然后乘以每个栅格单元的面积,即可得到所述栅格面积。如果判断得出当前的栅格面积与已存储的沿边路径所对应的区域的栅格面积的差值大于预设面积差值,则表明两个区域的形状相差比较大,两条沿边路径的形状相差也比较大,所以,可以确定当前记录的沿边路径和此前已存储的沿边路径不相似。如果判断得出当前的栅格面积与已存储的沿边路径所对应的区域的栅格面积的差值小于或等于预设面积差值,并不一定表明这两条栅格路径相似,需要进入步骤S44作进一步判断。在步骤S44中,基于当前的沿边路径所在的第一局部地图和已存储的沿边路径所在的第二局部地图,把形状和大小相同的第一局部地图和第二局部地图进行重叠,判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,所述预设比例值可以根据具体的设计需求进行相应设置,本实施例设置为90%。如图3所示,图3是第一局部地图和第二局部地图重叠后的示意图,所选取的第一局部地图和第二局部地图都是栅格地图中长为15个栅格单元距离,宽为13个栅格单元距离的矩形局部地图,这两个局部地图都把沿边路径所对应的栅格单元包含在其中。图中的每个小方格表示一个栅格单元,标示有字母H的方格连成的路径为所述的当前的沿边路径,标示有字母Q的方格连成的路径为此前已存储的沿边路径,在一个方格中即标示有字母H,又标示有字母Q,则表示这是所述的当前的沿边路径和已存储的沿边路径重叠的部分。由图3所示可知,重叠的栅格单元有29个,标示有Q的栅格单元有32个,求得当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例为90.6%,大于预设比例值90%。表明这两条沿边路径大部分路径是重叠的,只有右上角的三个点出现一些差异。所以,经过综合判断,如果当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例大于预设比例值,可以最终确定当前记录的沿边路径和此前已存储的沿边路径相似。如果当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例小于或等于预设比例值,则需要进入步骤S45,作进一步判断。在步骤S45中,将当前的沿边路径相对于已存储的沿边路径分别向上下左右四个方向平移N个栅格单元的距离,判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值。如图4所示,图4是第一局部地图和第二局部地图重叠后的另一种示意图,图中的每个小方格表示一个栅格单元,标示有字母H的方格连成的路径为所述的当前的沿边路径,标示有字母Q的方格连成的路径为此前已存储的沿边路径,在一个方格中即标示有字母H,又标示有字母Q,则表示这是所述的当前的沿边路径和已存储的沿边路径重叠的部分。从图中可知,重叠的栅格单元仅有16个,占已存储的沿边路径中的栅格单元数量的比例为50%,远小于预设比例值90%。此时,需要将标示有H的沿边路径整体向上平移一个栅格单元的距离,得出如图3所示的重叠效果,通过如上所述的对图3的分析,可以最终确定当前记录的沿边路径和此前已存储的沿边路径相似。假设向上平移一个栅格单元的距离,得出的比例依然小于预设比例值,则继续向上平移一个栅格单元的距离,再次分析判断所得比例与预设比例值的关系,至平移N个栅格单元的距离后,也无法得出所述比例值大于预设比例值的结果,则回到原图4所示的状态,依次向下平移N个栅格单元的距离,依然无法得出所述比例值大于预设比例值的结果,则再次回到原图4所示的状态,依次类推,分别向左和右依次平移N个栅格单元的距离,如果最终也无法得出所述比例值大于预设比例值的结果,则可以确定当前记录的沿边路径和此前已存储的沿边路径不相似。在上述平移的过程中,只要有一次计算得出所述比例值大于预设比例值的结果,则可以确定当前记录的沿边路径和此前已存储的沿边路径相似。其中,所述N可以根据具体的设计需求进行相应设置,如果设置的值过小,则很难得到适配的对象,如果设置的值过大,则所得到的对象可能会存在较大的误差,不适于作为机器人重新定位的对象。优选的,N为自然数,且1≤N≤3,本实施例设置N=2。本实施例所述的方法,通过栅格单元重叠的方式来判断当前记录的沿边路径和此前已存储的沿边路径是否相似,可以得出比较准确的判断结果,有利于提高后续机器人进行重新定位的准确性。
作为其中一种实施方式,步骤S44或者步骤S45中所述的判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,包括如下步骤:基于当前的沿边路径所在的第一局部地图和已存储的沿边路径所在的第二局部地图,将当前的沿边路径和已存储的沿边路径所对应的栅格单元都标示为1,其它的栅格单元标示为0。将所述第一局部地图和所述第二局部地图中相对应的栅格单元进行与运算,即1与1的结果为1,1与0的结果为0,0与0的结果也为0。判断与运算后,所得到的标示为1的栅格单元的数量占已存储的沿边路径所对应的栅格单元的数量的比例是否大于预设比例值。本实施例所述的方法,把栅格单元进行二值化,再通过与运算的方式进行分析,可以快速准确地得出两条沿边路径中相互重叠的栅格单元的数量,从而可以快速准确地得出所述重叠的栅格单元的数量占已存储的沿边路径所对应的栅格单元的数量的比例是否大于预设比例值的结果,更高效地为后续机器人的定位提供准确的参考数据。其中,所述预设比例值和相关计算方式与上述的实施例相同,在此不再赘述。
作为其中一种实施方式,步骤S6中所述的将机器人当前位于所述定位单元时检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标,包括如下步骤:步骤S61:判断所述定位单元中是否存在M个串连的栅格单元,且机器人当前记录的这M个串连的栅格单元的栅格坐标与所述参考定位路径中相应的栅格单元的栅格坐标的差值小于第二预设坐标差值。其中,所述M的值可以根据具体的设计需求进行相应设置,M为自然数,且2≤M≤3,本实施例设置为3。所述第二预设坐标差值也可以根据具体的设计需求进行相应设置,本实施例设置为(2,2)。当机器人所记录的连续检测到的3个栅格单元的栅格坐标值与所述参考定位路径中相应的栅格单元的栅格坐标的差值都小于第二预设坐标差值(2,2),即所记录的栅格单元的栅格坐标的X值与参考定位路径中对应的栅格单元的栅格坐标的X值之间的差值小于2,且Y值之间的差值也小于2,则表明所对比的两条路径之间的位置差别不是很大,属于同一方位的物体,可以进入步骤S62,进行后续的定位修正。否则,表明所对比的两条路径之间的位置差别较大,可能不属于同一方位的物体,不能将此物体作为定位参考,需要返回步骤S3,离开当前障碍物,寻找下一个可以作为参考的物体。在步骤S62中,因为上述的连续的3个栅格单元的误差比较小,所以,机器人行走至这3个串连的栅格单元中的任意一个栅格单元,并进入步骤S63,将当前检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标,从而实现机器人的重新定位。由于机器人在前述的步骤中主要是进行沿边路径是不是相似的判断,如果家庭环境中出现占地面积和形状相同的两个物体,机器人仅依靠沿边路径相似就进行定位数据的修正,则很可能会出现差错。所以,本实施例所述的方法,通过检测并记录的沿边路径的栅格坐标与参考定位路径中栅格坐标的差值,来进一步判断当前物体与参考定位路径所对应的物体是否在同一位置,从而得出更准确的定位数据,机器人的定位修正更准确。
作为其中一种实施方式,步骤S62中所述的机器人行走至所述M个串连的栅格单元中的任意一个栅格单元,包括如下步骤:步骤S621:判断所述M个串连的栅格单元是否只有一组。由于当前物体和参考物体的位置相同且形状近似时,栅格坐标相同或近似的数量会比较多,所以,一般会出现多组所述M个串连的栅格单元,或者只有一组,但是该组的栅格单元非常多。如果只有一组,则直接行走至所述M个串连的栅格单元中的任意一个栅格单元,并进入步骤S63,将当前检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标,从而实现机器人的重新定位。如果有多组,则进入步骤S622,确定记录时间最早的一组所述M个串连的栅格单元,机器人行走至其中记录时间最早的一个栅格单元,并进入步骤S63,将当前检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标,从而实现机器人的重新定位。因为机器人行走的时间越久,产生的误差越大,所以,越早记录的数据越准确。本实施例所述的方法,在机器人进行定位时,选择时间最早的栅格单元进行定位数据的修正,更进一步地保证定位数据的准确性,更确保了机器人定位的准确性。
作为其中一种实施方式,在步骤S6之后,还包括如下步骤:步骤S71:确定步骤S6中所述的机器人当前位于所述定位单元时检测到的栅格坐标为(X1,Y1),并进入步骤S72。在步骤S72中,确定步骤S6中所述的对应的参考定位路径中的栅格单元的栅格坐标为(X2,Y2),并进入步骤S73。在步骤S73中,确定栅格单元的边长为L,并进入步骤S74。在步骤S74中,将机器人在当前位置点检测到的坐标值(x1,y1)替换为(x2,y2),x2=x1-(X1-X2)*L,y2=y1-(Y1-Y2)*L。假设(X1=10,Y1=20),(X2=12,Y2=21),L=20cm,机器人检测到当前位置点的坐标值为(x1=208,y1=412),求得(x2=248,y2=432),替换后即得机器人当前位置点的坐标值为(248,432)。由于机器人进行导航行走时,是先搜索出栅格路径,然后沿着栅格路径,逐个位置点的行走。所以,本实施例所述的方法,机器人在进行栅格坐标的定位修正之后,还需要进一步地进行具体位置点的坐标值的修正,可以保证机器人导航行走的准确性和高效性。
作为其中一种实施方式,在步骤S6之后,还包括如下步骤:步骤S71:基于陀螺仪和里程计检测到的数据,确定步骤S6中所述的机器人当前位于所述定位单元中心点时检测到的坐标值为(x1,y1),并进入步骤S72。在步骤S72中,基于所保存的已存储路径中对应的数据,确定步骤S6中所述的对应的参考定位路径中的栅格单元的中心点的坐标值为(x2,y2),并进入步骤S73。在步骤S73中,将机器人当前检测到的坐标值((x1,y1))替换为(x2,y2)。通过采用已存储数据直接替换的方法,更高效地进行具体位置点的坐标值的修正,保证了机器人导航行走的准确性和高效性。
以上这些实施例所述的栅格单元是指边长为20厘米的虚拟方格,由很多栅格单元连续排布所形成的具有一定长度和宽度的用于表示地理环境信息的地图就是栅格地图。根据栅格地图,机器人可以由一边行走一边检测到的数据得知当前所处的栅格单元位置,并可以实时更新栅格单元的状态,比如把顺利走过的栅格单元的状态标示为已走过,把碰撞到障碍物的栅格单元的状态标示为障碍物,把检测到悬崖的栅格单元的状态标示为悬崖,把没有到过的栅格单元的状态标示为未知,等等。此外,以上这些实施例所述的孤立物体是指不挨着墙壁或者不挨着靠墙物体的独立物体,且机器人能够沿着该独立物体的边缘行走一圈。其中,独立物体并不仅仅是指单一的物体,靠拢在一起并且能够形成连续的占地面积的多个物体,也属于所述的独立物体。此外,以上这些实施例所述的此前已存储的沿边路径是指机器人系统中已经在内存里存储好的沿其它符合一定条件的孤立物体的边缘行走时的沿边路径,包括存储沿边路径所对应的栅格单元的栅格坐标、沿边起始位置点所对应的栅格单元的栅格坐标、沿边结束位置点所对应的栅格单元的栅格坐标、沿边起始的时间、沿边结束的时间等等。这些在内存中存储的数据是不能随意删除的,可以用作机器人进行重新定位的参考数据。而所述当前记录的沿边路径,是指机器人系统中在缓存区暂时保存的沿当前障碍物的边缘行走的沿边路径,包括保存沿边路径所对应的栅格单元的栅格坐标、沿边起始位置点所对应的栅格单元的栅格坐标、沿边结束位置点所对应的栅格单元的栅格坐标、沿边起始的时间、沿边结束的时间等等。如果这些在缓存区保存的数据符合作为机器人进行重新定位的参考数据的要求,则会被存储进内存中,成为上述的已存储的沿边路径;如果不符合要求,则会被后续新记录的数据所覆盖。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。这些程序可以存储于计算机可读取存储介质(比如ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质)中。该程序在执行时,执行包括上述各方法实施例的步骤。
最后应说明的是:本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可,各实施例之间的技术方案是可以相互结合的。以上各实施例仅用于说明本发明的技术方案,而非对其限制,尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员依然可以对前述各实施例所记载的技术方案进行修改, 或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (11)

1.一种机器人重定位的方法,其特征在于,包括如下步骤:
步骤S1:机器人检测到障碍物,并进入步骤S2;
步骤S2:沿所述障碍物的边缘行走,并判断沿所述障碍物的边缘行走的路径是否满足确定所述障碍物是孤立物体的条件,如果否,则进入步骤S3,如果是,则进入步骤S4;
步骤S3:调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S2;
步骤S4:确定所述障碍物是孤立物体,记录沿所述孤立物体的边缘行走的沿边路径,判断当前记录的沿边路径和此前已存储的沿边路径是否相似,如果否,则进入步骤S5,如果是,则进入S6;
步骤S5:把所记录的沿所述孤立物体的边缘行走的沿边路径作为已存储的沿边路径,并返回步骤S3;
步骤S6:把此前已存储的与当前记录的沿边路径相似的沿边路径作为参考定位路径,确定当前的沿边路径所在的第一局部地图和参考定位路径所在的第二局部地图,把形状和大小相同的第一局部地图和第二局部地图进行重叠,确定第一局部地图的当前的沿边路径中,与第二局部地图的参考定位路径重叠的部分所对应的栅格单元作为定位单元,将机器人当前位于所述定位单元时检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标;
其中,步骤S2所述的沿所述障碍物的边缘行走,并判断沿所述障碍物的边缘行走的路径是否满足确定所述障碍物是孤立物体的条件,包括如下步骤:
步骤S21:沿所述障碍物的边缘行走,并记录起始位置点的起始信息;
步骤S22:判断机器人从所述起始位置点开始检测到的角度变化量是否达到360°,如果是,则进入步骤S23,否则继续沿所述障碍物的边缘行走,至机器人从所述起始位置点开始检测到的角度变化量达到360°,进入步骤S23;
步骤S23:判断机器人是否回到步骤S21中所述的起始位置点,如果是,则确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件,否则进入步骤S24;
步骤S24:继续沿所述障碍物的边缘行走,判断机器人是否回到步骤S21中所述的起始位置点,以及判断机器人从所述起始位置点开始检测到的角度变化量是否达到450°,如果机器人回到所述起始位置点且所述角度变化量没有达到450°,则确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件,如果机器人回到所述起始位置点且所述角度变化量超过了450°,或者机器人没有回到所述起始位置点且所述角度变化量超过了450°,则确定机器人沿所述障碍物的边缘行走的路径不满足确定所述障碍物是孤立物体的条件。
2.根据权利要求1所述的方法,其特征在于,在步骤S1之后,且在步骤S2之前,还包括如下步骤:
步骤S11:确定机器人检测到障碍物时所对应的栅格坐标;
步骤S12:确定从当前时间往前推算的预设时间内机器人已存储的沿边路径;
步骤S13:判断步骤S11中所确定的栅格坐标与步骤S12中所确定的沿边路径所对应的栅格坐标是否相同或者相邻,如果是,则进入步骤S14,如果否,则进入步骤S2;
步骤S14:调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11;
其中,步骤S13中所述的相邻是指两个栅格坐标所对应的栅格单元之间具有共同的一条边或者一个角点。
3.根据权利要求2所述的方法,其特征在于,在步骤S21之后,且在步骤S22之前,还包括如下步骤:
步骤S211:检测机器人从所述起始位置点开始沿所述障碍物的边缘行走的距离和角度变化量;
步骤S212:判断机器人从所述起始位置点开始行走的距离是否达到1.5米,如果是,则进入步骤S213,如果否,则机器人继续行走,至机器人行走的距离达到1.5米,进入步骤S213;
步骤S213:判断机器人从所述起始位置点开始行走的角度变化量是否达到90°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S214;
步骤S214:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的距离是否达到3米,如果是,则进入步骤S215,如果否,则机器人继续行走,至机器人行走的距离达到3米,进入步骤S215;
步骤S215:判断机器人从所述起始位置点开始行走的角度变化量是否达到180°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S216;
步骤S216:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的距离是否达到4.5米,如果是,则进入步骤S217,如果否,则机器人继续行走,至机器人行走的距离达到4.5米,进入步骤S217;
步骤S217:判断机器人从所述起始位置点开始行走的角度变化量是否达到270°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S22。
4.根据权利要求2所述的方法,其特征在于,在步骤S21之后,且在步骤S22之前,还包括如下步骤:
步骤S211:检测机器人从所述起始位置点开始沿所述障碍物的边缘行走的时间和角度变化量;
步骤S212:判断机器人从所述起始位置点开始行走的时间是否达到1分钟,如果是,则进入步骤S213,如果否,则机器人继续行走,至机器人行走的时间达到1分钟,进入步骤S213;
步骤S213:判断机器人从所述起始位置点开始行走的角度变化量是否达到90°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S214;
步骤S214:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到2分钟,如果是,则进入步骤S215,如果否,则机器人继续行走,至机器人行走的时间达到2分钟,进入步骤S215;
步骤S215:判断机器人从所述起始位置点开始行走的角度变化量是否达到180°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S216;
步骤S216:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到3分钟,如果是,则进入步骤S217,如果否,则机器人继续行走,至机器人行走的时间达到3分钟,进入步骤S217;
步骤S217:判断机器人从所述起始位置点开始行走的角度变化量是否达到270°,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11,如果是,则进入步骤S218;
步骤S218:机器人继续沿所述障碍物的边缘行走,并判断机器人从所述起始位置点开始行走的时间是否达到4分钟,如果是,则进入步骤S22,如果否,则机器人继续行走,至机器人行走的时间达到4分钟,进入步骤S22。
5.根据权利要求2所述的方法,其特征在于,在步骤S23中所述的判断机器人回到步骤S21中所述的起始位置点之后,且在确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件之前,或者在步骤S24中所述的如果机器人回到所述起始位置点且所述角度变化量没有达到450°之后,且在确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件之前,还包括如下步骤:
判断机器人沿所述障碍物行走一周所圈定的面积是否大于0.3平方米,如果是,进入确定机器人沿所述障碍物的边缘行走的路径满足确定所述障碍物是孤立物体的条件的步骤,如果否,则机器人调整行走角度,离开所述障碍物,继续行走,再次检测到障碍物时,则返回步骤S11。
6.根据权利要求1所述的方法,其特征在于,步骤S4中所述的记录沿所述孤立物体的边缘行走的沿边路径,判断当前记录的沿边路径和此前已存储的沿边路径是否相似,包括如下步骤:
步骤S41:记录当前的所述沿边路径所对应栅格单元的栅格坐标,记录当前的所述沿边路径所围成的区域的栅格面积,记录当前的所述沿边路径所围成的区域的中心栅格单元的栅格坐标;
步骤S42:判断当前的沿边路径所围成区域的中心栅格单元的栅格坐标与已存储的沿边路径所围成区域的中心栅格单元的栅格坐标的坐标差值是否大于第一预设坐标差值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径不相似,如果否,则进入步骤S43;
步骤S43:判断当前的栅格面积与已存储的沿边路径所对应的区域的栅格面积的差值是否大于预设面积差值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径不相似,如果否,则进入步骤S44;
步骤S44:基于当前的沿边路径所在的第一局部地图和已存储的沿边路径所在的第二局部地图,把形状和大小相同的第一局部地图和第二局部地图进行重叠,判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径相似,如果否,则进入步骤S45;
步骤S45:将当前的沿边路径相对于已存储的沿边路径分别向上下左右四个方向平移N个栅格单元的距离,判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,如果是,则确定当前记录的沿边路径和此前已存储的沿边路径相似,如果否,则确定当前记录的沿边路径和此前已存储的沿边路径不相似;
其中,所述N为自然数,且1≤N≤3。
7.根据权利要求6所述的方法,其特征在于,步骤S44或者步骤S45中所述的判断当前的沿边路径与已存储的沿边路径相互重叠的栅格单元数量占已存储的沿边路径中的栅格单元数量的比例是否大于预设比例值,包括如下步骤:
基于当前的沿边路径所在的第一局部地图和已存储的沿边路径所在的第二局部地图,将当前的沿边路径和已存储的沿边路径所对应的栅格单元都标示为1,其它的栅格单元标示为0;
将所述第一局部地图和所述第二局部地图中相对应的栅格单元进行与运算;
判断与运算后,所得到的标示为1的栅格单元的数量占已存储的沿边路径所对应的栅格单元的数量的比例是否大于预设比例值。
8.根据权利要求6或7所述的方法,其特征在于,步骤S6中所述的将机器人当前位于所述定位单元时检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标,包括如下步骤:
步骤S61:判断所述定位单元中是否存在M个串连的栅格单元,且机器人当前记录的这M个串连的栅格单元的栅格坐标与所述参考定位路径中相应的栅格单元的栅格坐标的差值小于第二预设坐标差值,如果是,则进入步骤S62,如果否,则返回步骤S3;
步骤S62:机器人行走至所述M个串连的栅格单元中的任意一个栅格单元,并进入步骤S63;
步骤S63:将当前检测到的栅格坐标替换为对应的参考定位路径中的栅格单元的栅格坐标;
其中,所述M为自然数,且2≤M≤3。
9.根据权利要求8所述的方法,其特征在于,步骤S62中所述的机器人行走至所述M个串连的栅格单元中的任意一个栅格单元,包括如下步骤:
步骤S621:判断所述M个串连的栅格单元是否只有一组,如果是,则直接行走至所述M个串连的栅格单元中的任意一个栅格单元,并进入步骤S63,如果否,则进入步骤S622;
步骤S622:确定记录时间最早的一组所述M个串连的栅格单元,机器人行走至其中记录时间最早的一个栅格单元,并进入步骤S63。
10.根据权利要求1所述的方法,其特征在于,在步骤S6之后,还包括如下步骤:
步骤S71:确定步骤S6中所述的机器人当前位于所述定位单元时检测到的栅格坐标为(X1,Y1),并进入步骤S72;
步骤S72:确定步骤S6中所述的对应的参考定位路径中的栅格单元的栅格坐标为(X2,Y2),并进入步骤S73;
步骤S73:确定栅格单元的边长为L,并进入步骤S74;
步骤S74:将机器人在当前位置点检测到的坐标值(x1,y1)替换为(x2,y2),x2=x1-(X1-X2)*L,y2=y1-(Y1-Y2)*L。
11.根据权利要求1所述的方法,其特征在于,在步骤S6之后,还包括如下步骤:
步骤S71:确定步骤S6中所述的机器人当前位于所述定位单元中心点时检测到的坐标值为(x1,y1);
步骤S72:确定步骤S6中所述的对应的参考定位路径中的栅格单元的中心点的坐标值为(x2,y2);
步骤S73:将机器人当前检测到的坐标值((x1,y1))替换为(x2,y2)。
CN201810226498.1A 2018-03-19 2018-03-19 一种机器人重定位的方法 Active CN108508891B (zh)

Priority Applications (6)

Application Number Priority Date Filing Date Title
CN201810226498.1A CN108508891B (zh) 2018-03-19 2018-03-19 一种机器人重定位的方法
KR1020207028134A KR102333984B1 (ko) 2018-03-19 2019-01-10 로봇의 리포지셔닝 방법
EP18910525.7A EP3770711A4 (en) 2018-03-19 2019-01-10 METHOD OF REPOSITIONING A ROBOT
US16/982,068 US11537142B2 (en) 2018-03-19 2019-01-10 Method for robot repositioning
JP2020550731A JP7085296B2 (ja) 2018-03-19 2019-01-10 ロボットの再測位方法
PCT/CN2018/120198 WO2019179176A1 (zh) 2018-03-19 2019-01-10 在此处键入发明名称

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810226498.1A CN108508891B (zh) 2018-03-19 2018-03-19 一种机器人重定位的方法

Publications (2)

Publication Number Publication Date
CN108508891A CN108508891A (zh) 2018-09-07
CN108508891B true CN108508891B (zh) 2019-08-09

Family

ID=63377748

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810226498.1A Active CN108508891B (zh) 2018-03-19 2018-03-19 一种机器人重定位的方法

Country Status (6)

Country Link
US (1) US11537142B2 (zh)
EP (1) EP3770711A4 (zh)
JP (1) JP7085296B2 (zh)
KR (1) KR102333984B1 (zh)
CN (1) CN108508891B (zh)
WO (1) WO2019179176A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108508891B (zh) 2018-03-19 2019-08-09 珠海市一微半导体有限公司 一种机器人重定位的方法
CN109528095B (zh) * 2018-12-28 2020-11-17 深圳市愚公科技有限公司 扫地记录图的校准方法、扫地机器人及移动终端
CN109965797B (zh) * 2019-03-07 2021-08-24 深圳市愚公科技有限公司 扫地机器人地图的生成方法、扫地机器人控制方法及终端
CN109916393B (zh) * 2019-03-29 2023-03-31 电子科技大学 一种基于机器人位姿的多重栅格值导航方法及其应用
CN111837587B (zh) * 2019-04-29 2024-04-19 苏州科瓴精密机械科技有限公司 自动割草机及其控制方法
CN111941418B (zh) * 2019-05-15 2024-03-08 苏州科瓴精密机械科技有限公司 自移动机器人的控制方法及自移动机器人系统
CN113343739B (zh) * 2020-03-02 2022-07-22 杭州萤石软件有限公司 可移动设备的重定位方法和可移动设备
CN111407188A (zh) * 2020-03-27 2020-07-14 深圳市银星智能科技股份有限公司 移动机器人重定位方法、装置及移动机器人
CN111938513B (zh) * 2020-06-30 2021-11-09 珠海市一微半导体有限公司 一种机器人越障的沿边路径选择方法、芯片及机器人
CN111897336A (zh) * 2020-08-02 2020-11-06 珠海市一微半导体有限公司 一种机器人沿边行为结束的判断方法、芯片及机器人
US11945469B2 (en) * 2020-11-25 2024-04-02 Zoox, Inc. Object uncertainty models
CN112558616B (zh) * 2020-12-28 2023-11-21 南京苏美达智能技术有限公司 一种智能自行走设备及控制方法
CN113344263B (zh) * 2021-05-28 2022-12-27 深圳市无限动力发展有限公司 沿边行走过程的轨迹闭合判断方法、装置及计算机设备
CN116539045A (zh) * 2023-07-05 2023-08-04 深之蓝(天津)水下智能科技有限公司 水下机器人定位方法、水下机器人、存储介质和电子设备

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102138769A (zh) * 2010-01-28 2011-08-03 深圳先进技术研究院 清洁机器人及其清扫方法
CN105094125A (zh) * 2014-05-09 2015-11-25 金宝电子工业股份有限公司 室内机器人及其定位方法
EP3075685A1 (fr) * 2015-04-02 2016-10-05 Gebo Packaging Solutions France Dispositif de convoyage par chariot autonome
CN106066179A (zh) * 2016-07-27 2016-11-02 湖南晖龙股份有限公司 一种基于ros操作系统的机器人位置丢失找回方法和控制系统
CN106610665A (zh) * 2015-10-22 2017-05-03 沈阳新松机器人自动化股份有限公司 一种基于gps的自主行进机器人
CN107368071A (zh) * 2017-07-17 2017-11-21 纳恩博(北京)科技有限公司 一种异常恢复方法及电子设备

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB0126497D0 (en) * 2001-11-03 2002-01-02 Dyson Ltd An autonomous machine
JP2004275468A (ja) * 2003-03-17 2004-10-07 Hitachi Home & Life Solutions Inc 自走式掃除機およびその運転方法
JP4533659B2 (ja) * 2004-05-12 2010-09-01 株式会社日立製作所 レーザー計測により地図画像を生成する装置及び方法
WO2007051972A1 (en) 2005-10-31 2007-05-10 Qinetiq Limited Navigation system
JP2007323402A (ja) * 2006-06-01 2007-12-13 Matsushita Electric Ind Co Ltd 自走式機器およびそのプログラム
KR100791386B1 (ko) * 2006-08-18 2008-01-07 삼성전자주식회사 이동 로봇의 영역 분리 방법 및 장치
JP5086942B2 (ja) * 2008-09-02 2012-11-28 トヨタ自動車株式会社 経路探索装置、経路探索方法、及び経路探索プログラム
CN104970741B (zh) 2009-11-06 2017-08-29 艾罗伯特公司 用于通过自主型机器人完全覆盖表面的方法和系统
JP2012194860A (ja) * 2011-03-17 2012-10-11 Murata Mach Ltd 走行車
US8798840B2 (en) * 2011-09-30 2014-08-05 Irobot Corporation Adaptive mapping with spatial summaries of sensor data
KR102527645B1 (ko) * 2014-08-20 2023-05-03 삼성전자주식회사 청소 로봇 및 그 제어 방법
GB201419883D0 (en) * 2014-11-07 2014-12-24 F Robotics Acquisitions Ltd Domestic robotic system and method
CN104731101B (zh) * 2015-04-10 2017-08-04 河海大学常州校区 清洁机器人室内场景地图建模方法及机器人
JP2017102705A (ja) * 2015-12-02 2017-06-08 株式会社リコー 自律移動装置及び自律移動装置システム
CN107037806B (zh) * 2016-02-04 2020-11-27 科沃斯机器人股份有限公司 自移动机器人重新定位方法及采用该方法的自移动机器人
CN107041718B (zh) * 2016-02-05 2021-06-01 北京小米移动软件有限公司 清洁机器人及其控制方法
US9908702B2 (en) 2016-02-05 2018-03-06 Invia Robotics, Inc. Robotic navigation and mapping
JP2018022215A (ja) * 2016-08-01 2018-02-08 村田機械株式会社 移動教示装置、及び、移動教示方法
KR101930870B1 (ko) * 2016-08-03 2018-12-20 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR20180023302A (ko) * 2016-08-25 2018-03-07 엘지전자 주식회사 이동 로봇 및 그 제어방법
CN106092104B (zh) 2016-08-26 2019-03-15 深圳微服机器人科技有限公司 一种室内机器人的重定位方法及装置
CN106323273B (zh) 2016-08-26 2019-05-21 深圳微服机器人科技有限公司 一种机器人重定位方法及装置
CN108508891B (zh) * 2018-03-19 2019-08-09 珠海市一微半导体有限公司 一种机器人重定位的方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102138769A (zh) * 2010-01-28 2011-08-03 深圳先进技术研究院 清洁机器人及其清扫方法
CN105094125A (zh) * 2014-05-09 2015-11-25 金宝电子工业股份有限公司 室内机器人及其定位方法
EP3075685A1 (fr) * 2015-04-02 2016-10-05 Gebo Packaging Solutions France Dispositif de convoyage par chariot autonome
CN106610665A (zh) * 2015-10-22 2017-05-03 沈阳新松机器人自动化股份有限公司 一种基于gps的自主行进机器人
CN106066179A (zh) * 2016-07-27 2016-11-02 湖南晖龙股份有限公司 一种基于ros操作系统的机器人位置丢失找回方法和控制系统
CN107368071A (zh) * 2017-07-17 2017-11-21 纳恩博(北京)科技有限公司 一种异常恢复方法及电子设备

Also Published As

Publication number Publication date
WO2019179176A1 (zh) 2019-09-26
US20210096580A1 (en) 2021-04-01
JP2021516403A (ja) 2021-07-01
US11537142B2 (en) 2022-12-27
JP7085296B2 (ja) 2022-06-16
KR20200127019A (ko) 2020-11-09
EP3770711A4 (en) 2021-09-29
CN108508891A (zh) 2018-09-07
KR102333984B1 (ko) 2021-12-02
EP3770711A1 (en) 2021-01-27
WO2019179176A8 (zh) 2020-09-17

Similar Documents

Publication Publication Date Title
CN108508891B (zh) 一种机器人重定位的方法
CN108196555B (zh) 自主移动机器人沿边行走的控制方法
CN205247205U (zh) 自主机器人
Krajník et al. Persistent localization and life-long mapping in changing environments using the frequency map enhancement
CN107860387B (zh) 植保无人机作业航线规划方法及植保无人机
CN103869814B (zh) 一种终端定位和导航方法以及可移动的终端
CN106980320A (zh) 机器人充电方法及装置
CN107436148A (zh) 一种基于多地图的机器人导航方法及装置
CN106406320A (zh) 机器人路径规划方法及规划路线的机器人
CN109407675A (zh) 机器人回座的避障方法和芯片以及自主移动机器人
CN112928799B (zh) 基于激光测量的移动机器人自动对接充电方法
CN110174112A (zh) 一种用于移动机器人自动建图任务的路径优化方法
CN113741438A (zh) 路径规划方法、装置、存储介质、芯片及机器人
CN112033410A (zh) 移动机器人环境地图构建方法、系统及存储介质
CN113387099B (zh) 地图构建方法、装置、设备、仓储系统及存储介质
CN113475977B (zh) 机器人路径规划方法、装置及机器人
CN108398129A (zh) 用于消防救援中人员位置与地图快速匹配的系统和方法
CN108398701A (zh) 车辆定位方法和装置
CN112857370A (zh) 一种基于时序信息建模的机器人无地图导航方法
CN114879660A (zh) 一种基于目标驱动的机器人环境感知方法
CN114460939A (zh) 复杂环境下智能行走机器人自主导航改进方法
CN113448340B (zh) 一种无人机的路径规划方法、装置、无人机及存储介质
CN113091749B (zh) 仿人机器人在复杂未知迷宫环境的行走导航和重定位方法
CN113503877A (zh) 机器人分区地图建立方法、装置及机器人
Nitsche et al. Hybrid mapping for autonomous mobile robot exploration

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