CN110007670A - 移动机器人定位建图方法 - Google Patents

移动机器人定位建图方法 Download PDF

Info

Publication number
CN110007670A
CN110007670A CN201910114730.7A CN201910114730A CN110007670A CN 110007670 A CN110007670 A CN 110007670A CN 201910114730 A CN201910114730 A CN 201910114730A CN 110007670 A CN110007670 A CN 110007670A
Authority
CN
China
Prior art keywords
particle
mobile robot
grating map
occupied
map
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
Application number
CN201910114730.7A
Other languages
English (en)
Other versions
CN110007670B (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.)
SICHUAN ARTIGENT ROBOTICS EQUIPMENT Co Ltd
Original Assignee
SICHUAN ARTIGENT ROBOTICS EQUIPMENT 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 SICHUAN ARTIGENT ROBOTICS EQUIPMENT Co Ltd filed Critical SICHUAN ARTIGENT ROBOTICS EQUIPMENT Co Ltd
Priority to CN201910114730.7A priority Critical patent/CN110007670B/zh
Publication of CN110007670A publication Critical patent/CN110007670A/zh
Application granted granted Critical
Publication of CN110007670B publication Critical patent/CN110007670B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • G01C21/34Route searching; Route guidance
    • G01C21/3453Special cost functions, i.e. other than distance or default speed limit of road segments
    • G01C21/3492Special cost functions, i.e. other than distance or default speed limit of road segments employing speed data or traffic data, e.g. real-time or historical
    • 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, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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/0221Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • 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/0234Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons
    • G05D1/0236Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using optical markers or beacons in combination with a laser
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control 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)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Electromagnetism (AREA)
  • Optics & Photonics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明公开了一种移动机器人定位建图方法,涉及机器人定位技术领域。移动机器人定位建图方法包括初始化移动机器人的位置和各分辨率的栅格地图,估算各栅格地图中激光束末端被占用可能性,迭代求解最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据,初始化粒子集,更新每个粒子中移动机器人的位置,选取目标粒子并扩充粒子集,扫描粒子集中粒子与对应栅格地图的匹配程度,计算扩充粒子集中粒子的权值,根据扩充粒子集中移动机器人的位置更新对应地图,选取备选粒子,更新最低分辨率的栅格地图。本发明公开的移动机器人定位建图方法解决了传统的基于粒子滤波SLAM系统由于轮式里程计误差导致定位误差较大,地图不精确的问题。

Description

移动机器人定位建图方法
技术领域
本发明涉及机器人定位技术领域,尤其是涉及一种移动机器人定位建图方法。
背景技术
定位导航是移动机器人实现智能化的前提之一,目前,许多移动机器人同时定位与建图(SLAM)系统使用使用栅格形式表示地图,使用粒子滤波迭代的更新机器人位置状态与地图状态。
粒子滤波的核心思想在于使用较多的样本代表待估计状态的所有可能性结果,主要分为采样,加权,重采样三个步骤。采样所使用的提议分布主要来源于移动机器人的里程计估计与激光雷达观测数据,每一次采样都需要大量的计算来对里程计数据进行校准,而当机器人发生打滑,碰撞等现象时,此提议分布很难准确反应机器人的真实位置状态,从而导致粒子集中的每个粒子所代表的位置都无法与地图相匹配,系统误差大大增加。同时重采样的发生也会使粒子的多样性下降,使整个SLAM系统很难从错误的定位信息中恢复,导致地图的撕裂,在此地图基础上的路径规划与避障等操作也将格外困难。
发明内容
有鉴于此,本发明的目的在于提提供一种移动机器人定位建图方法,以改善上述问题。
为了实现上述目的,本发明采用如下技术方案:
一种移动机器人定位建图方法,应用于移动机器人,所述移动机器人包括用于采集激光雷达数据的激光雷达以及用于采集里程计数据的编码器和陀螺仪,所述方法包括:
初始化移动机器人的位置和各分辨率的栅格地图;
根据获取到的上一时刻的移动机器人位置ξt-1和当前时刻的激光雷达数据,估算出各栅格地图中激光束末端被占用可能性;
构建每个栅格地图中激光束末端被占用可能性的最小二乘误差函数,并通过迭代算法得到最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ;
初始化粒子集,所述初始粒子集包括多个粒子,每个粒子中包括栅格地图和对应的移动机器人的位置;
根据里程计的采样数据更新每个粒子中移动机器人的位置;
从粒子集中选取权值最大的多个粒子作为目标粒子,其中对于权值相同的粒子按照随机方式进行选取;
根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ扩充目标粒子,得到扩充后的粒子集;
扫描匹配扩充后的粒子集的每个粒子中激光雷达数据与对应的栅格地图的匹配程度。
根据每个粒子中激光雷达数据与对应的栅格地图的匹配程度,得到扩充后的粒子集中每个粒子的权值,其中,当扩充后的粒子集中的有效粒子低于预先设定的阈值时,对扩充后的粒子集中的粒子进行重采样。
根据扩充后的粒子集中每个粒子中移动机器人的位置更新对应的地图,得到多个更新后的地图。
选取与多个更新后的地图所对应的多个粒子中权值最大的粒子作为备选粒子,得到所述备选粒子中移动机器人在对应的栅格地图中的位置ξ′t
依据所述位置变换数据Δξ和所述上一时刻的移动机器人位置ξt-1更新移动机器人的当前位置,并将更新后的所述当前位置与对应栅格地图的匹配程度同所述位置ξ′t与对应栅格地图的匹配程度进行比较,选择其中匹配程度最高所对应的位置更新各分辨率的栅格地图。
可选的,所述根据获取到的上一时刻的移动机器人位置ξt-1和当前时刻的激光雷达数据,估算出各栅格地图中激光束末端被占用可能性,包括:
根据各栅格地图中上一时刻的移动机器人位置ξt-1和获得的当前时刻的激光雷达数据,得到各栅格地图中当前时刻激光端点的全局坐标数据;
根据各栅格地图中当前时刻激光端点的全局坐标数据的周围四个网格被占用可能性,估算出各栅格地图中激光束末端被占用可能性。
可选的,所述迭代算法为梯度下降法、信任区域法、牛顿高斯迭代法或Levenberg-Marquardt算法。
可选的,所述根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ扩充目标粒子,得到扩充后的粒子集,包括:
根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ对粒子集中所有粒子中的移动机器人位置进行更新,得到准目标粒子;
将所有准目标粒子与所有目标粒子的集合作为扩充后的粒子集。
可选的,初始化的栅格地图中每个网格被占用的可能性为初始化的栅格地图中激光束末端被占用的可能性为li=li+locc,初始化的栅格地图中激光束末端与机器人之间的网格被占用的可能性为li=li+lfree,p(mi)表示栅格地图中网格mi被占据的概率,p(mi)初始值为0.5,locc为正数,lfree为负数。
可选的,估算出的各栅格地图中激光束末端被占用可能性的计算公式为
,其中,M(x0,y0)表示网格(x0,y0)被占据的概率,M(x0,y1)表示网格(x0,y1)被占据的概率,M(x1,y0)表示网格(x1,y0)被占据的概率,M(x1,y1)表示网格(x1,y1)被占据的概率,(x0,y0)、(x0,y1)、(x1,y0)和(x1,y1)分别为激光束末端周围的4个网格。
可选的,每个栅格地图中激光束末端被占用可能性的最小二乘误差函数为其中,M(Skt-1+Δξ))表示第k个激光束末端所对应网格被占据的概率。
可选的,最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ为其中整体表示M(Skt-1))对ξt-1的导数,表示M对Skt-1)求导,表示Skt-1)对ξt-1求导,T为矩阵中的转置符号,ξt-1表示表示t-1时刻的移动机器人位置,Skt-1)表示根据第k个激光束末端位置ξt-1计算得到的光束端点坐标。
可选的,所述有效粒子的计算公式为其中,表示扩充后的粒子集中归一化后的粒子权值,i表示扩充后的粒子集中粒子的序号。
与现有技术相比,本发明的有益效果在于:
本发明提供的移动机器人定位建图方法能够解决SLAM系统中由于轮子打滑,碰撞等现象造成里程计误差较大导致定位不准确的问题,解决粒子滤波由于重采样造成的粒子衰减问题,提高移动机器人定位精度的同时解决栅格地图的撕裂问题。
附图说明
图1为本发明较佳实施例提供的移动机器人的功能模块图。
图2为本发明较佳实施例提供的移动机器人定位建图方法的流程图。
图3为图2中步骤S103的子步骤的流程图。
附图标记说明:100-移动机器人;110-激光雷达;120-编码器;130-陀螺仪。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
术语“第一”、“第二”、“第三”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参阅图1,发明较佳实施例提供的移动机器人100的功能模块图,移动机器人100包括有激光雷达110、编码器120和陀螺仪130。激光雷达110用于采集激光雷达数据,编码器120用于采集移动机器人100的速度信息,陀螺仪130用于采集移动机器人100的角度信息。根据编码器120采集到的速度信息和陀螺仪130采集到的角度信息积分,即能够得到移动机器人100的里程计数据。移动机器人100的里程计数据表项为移动机器人再全局坐标系下的位置数据(x,y,θ)T,x,y分别表示横纵坐标,θ表示与x轴夹角。激光雷达数据体现为障碍物与移动机器人100的相对距离以及角度,用表示。
请参阅图2,本发明实施例提供了一种应用于移动机器人100的移动机器人定位建图方法,下面将对图2所示的流程进行详细阐述。
步骤S101,初始化移动机器人的位置和各分辨率的栅格地图。
具体的,在进行移动机器人定位建图时,首先移动机器人100初始其位置,移动机器人100的位置现为全局二维坐标下的坐标值与朝向,表现为(x,y,θ)T,若无特殊情况,此位置初始化为(0,0,0)T,代表移动机器人100的起始建图位置为全局坐标系下的原点位置。
与此同时,移动机器人100初始化多个分辨率的栅格地图,栅格地图是指将整个二维空间分割为一定大小的网格,每个网格有一个二进制值代表其状态,0代表网格处无障碍,1代表网格处有障碍,网格的大小称为分辨率,分辨率越小地图越精细。本发明实施例中栅格地图为3个,该3个栅格地图的分辨率均不相同。
初始化栅格地图时,采用对数形式进行初始化,初始化的栅格地图中每个网格被占用的可能性为初始化的栅格地图中激光束末端被占用的可能性为li=li+locc,初始化的栅格地图中激光束末端与机器人之间的网格被占用的可能性为li=li+lfree其中,p(mi)表示栅格地图中网格mi被占据的概率,由于在初始化时不知道每个网格是否被占用,因此初始化时p(mi)的取值为0.5,由于激光束末端处(障碍物处)的网格必然被占用,因此locc取值为正,p(mi)的取值趋近于1,li=li+locc的取值变大,向+∞趋近,激光束末端(障碍物处)与机器人之间的网格则未被占用,因此lfree取值为负,p(mi)的取值趋近于0,li=li+lfree的取值变小,向-∞趋近。
步骤S102,根据获取到的上一时刻的移动机器人位置和当前时刻的激光雷达数据,估算出各栅格地图中激光束末端被占用可能性。
在进行移动机器人定位建图时,移动机器人100通过激光雷达采集得到激光雷达数据,针对每一个栅格地图,在初始化后的下一时刻开始,移动机器人100根据上一时刻移动机器人100的位置ξt-1=(xt-1,yt-1t-1)和当前时刻激光雷达110采集到的激光雷达数据,计算出当前时刻激光束末端的全局坐标S(ξt-1),由于已知移动机器人100的初始位置和激光雷达110采集到的激光雷达数据,因此上一时刻移动机器人100的位置)必然为已知,即必然能够计算出当前时刻激光束末端的全局坐标S(ξt-1)。
然后,根据各栅格地图中当前时刻激光端点(即激光束末端)的全局坐标数据的周围四个网格被占用可能性,估算出各栅格地图中激光束末端(所对应的网格)被占用可能性。
在各个栅格地图中,激光束末端(所对应的网格)被占用可能的计算公式性为
,其中,M(x0,y0)表示网格(x0,y0)被占据的概率,M(x0,y1)表示网格(x0,y1)被占据的概率,M(x1,y0)表示网格(x1,y0)被占据的概率,M(x1,y1)表示网格(x1,y1)被占据的概率,(x0,y0)、(x0,y1)、(x1,y0)和(x1,y1)分别为激光束末端周围的4个网格,x0和y0分别表示网格(x0,y0)的横纵坐标,x0和y1分别表示网格(x0,y1)的横纵坐标,x1和y0分别表示网格(x1,y0)的横纵坐标,x1和y1分别表示网格(x1,y1)的横纵坐标。
针对每个栅格地图进行上述的操作,即可得到各个栅格地图中激光束末端(对应的网格)被占用可能性。
步骤S103,迭代求解最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据。
请参阅图3,步骤S103包括如下子步骤:
子步骤S1031:构建每个栅格地图中激光束末端被占用可能性的最小二乘误差函数。
估算出各栅格地图中激光束末端被占用可能性后,移动机器人100首先构建每个栅格地图中激光束末端被占用可能性的最小二乘误差函数,由于激光束末端的网格必然是被占用的,因此各栅格地图中激光束末端被占用可能性的取值无限趋近于1,因此每个栅格地图中激光束末端被占用可能性的最小二乘误差函数可以用表示,其中,M(Skt-1+Δξ))表示第k个激光束末端所对应网格被占据的概率。
子步骤S1032:通过迭代算法得到最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据。
然后,通过迭代算法得到最低分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据Δξ,其中整体表示M(Skt-1))对ξt-1的导数,表示M对Skt-1)求导,表示Skt-1)对ξt-1求导,T为矩阵中的转置符号,ξt-1表示表示t-1时刻的移动机器人位置,Skt-1)表示根据第k个激光束末端位置ξt-1计算得到的光束端点坐标。
在进行迭代时,首先计算最高分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据,然后根据计算最高分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据进行迭代,计算次高分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据,然后根据次高分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据进行迭代,计算最低分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据Δξ。
本发明实施例中,所述迭代算法可以采用,但不限于梯度下降法、信任区域法、牛顿高斯迭代法或Levenberg-Marquardt算法等。
步骤S104,初始化粒子集。
在开始进行移动机器人定位建图的同时,移动机器人还初始化粒子集,该粒子集中包括多个粒子,每个粒子中包括栅格地图和对应的移动机器人位置,其中每个粒子被赋予相应的权值,在初始化时,每个粒子被赋予的权值相同。例如,若初始化的粒子集中包括10个粒子,则每个粒子的权值均为1/10。
步骤S105,根据里程计的采样数据更新每个粒子中移动机器人的位置。
里程计数据的内容为移动机器人100在全局坐标系下的初始位置估计与角度估计,由于编码器120与陀螺仪130的固有误差、机器人发生打滑,漂移,碰撞等原因产生的误差等等,导致里程计初始估计准确性较差。因此移动机器人100会对里程计数据进行误差采样,并根据里程计的采样数据更新每个粒子中移动机器人100的位置。
对于t时刻的第i个粒子,其更新中移动机器人100的位置的公式为其中,分别表示t时刻的第i个粒子的轮式里程数据中的横坐标、纵坐标以及与x轴夹角,分别表示t-1时刻的第i个粒子的轮式里程数据中的横坐标、纵坐标以及与x轴夹角,ε(Δx,δx)表示以Δx为均值,方差为δx的高斯分布随机数,ε(Δy,δy)表示以Δy为均值,方差为δy的高斯分布随机数,ε(Δθ,δθ)表示以Δθ为均值,方差为δθ的高斯分布随机数,Δx表示t-1时刻到t时刻的横坐标差值,Δy表示t-1时刻到t时刻的纵坐标差值,Δθ表示t-1时刻到t时刻的与x轴夹角的差值,δx表示移动机器人位置在x轴方向的噪声方差,δy表示移动机器人位置在y轴方向的噪声方差,δθ表示移动机器人位置的角度噪声方差。
步骤S106,从粒子集中选取权值最大的多个粒子作为目标粒子。
根据里程计的采样数据更新每个粒子中移动机器人100的位置后,移动机器人100计算粒子集每个粒子的权值,并从粒子集中选取权值最大的多个粒子作为目标粒子。粒子集中粒子的权值是以前一时刻的粒子的权值为依据计算得来的,粒子集中粒子的权值计算公式为其中,表示第i个粒子t-1时刻的地图,zt表示t时刻的激光雷达数据,表示第i个粒子所对应的移动机器人位置,代表t时刻第i个粒子的权值,表示t-1时刻第i个粒子的权值,权值越大的粒子表示此粒子的代表的机器人位置越接近于真实位置,dist表示激光端点与与地图中最近障碍物的距离,δhit表示激光数据的噪声方差,prob函数计算均值0,方差为δhit的高斯分布在dist处的概率值,k表示第k束激光束。另外,选取目标粒子时,对于权值相同的粒子按照随机方式进行选取。
步骤S107,扩充粒子集。
然后,移动机器人100根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据Δξ扩充目标粒子,得到扩充后的粒子集。
具体的,首先移动机器人100根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ对粒子集中所有粒子中的移动机器人100位置进行更新,得到准目标粒子。然后,将所有准目标粒子与所有被选取的目标粒子的集合作为扩充后的粒子集。
步骤S108,扫描匹配扩充后的粒子集的每个粒子中激光雷达数据与对应的栅格地图的匹配程度。
然后,移动机器人100不停的小幅度移动,从而移动每个粒子中的机器人位置使得,并多次计算得到多个的值,选择其中最大的一个,即为每个粒子中激光雷达数据与对应的栅格地图的匹配程度。其中,移动的次数是有限制的,过大的移动次数会使系统的运算复杂度大大增加。
步骤S109,计算扩充后的粒子集中每个粒子的权值。
得到每个粒子中激光雷达数据与对应的栅格地图的匹配程度后,移动机器人100首先计算扩充后的粒子集中有效粒子的个数,并判断扩充后的粒子集中有效粒子的个数是否低于预先设的阈值,所述有效粒子的计算公式为其中,表示扩充后的粒子集中归一化后的粒子权值,i表示扩充后的粒子集中粒子的序号。
如果低于预先设定的阈值,则对扩充后的粒子集中的粒子进行重新采样,以剔除权值较低的粒子,保留权值较高的粒子,采样的过程就是用部分有效粒子代替权值较低的粒子。
步骤S110,根据扩充后的粒子集中每个粒子中移动机器人的位置更新对应的地图,得到多个更新后的地图。
与此同时,移动机器人100根据扩充后的粒子集中每个粒子中移动机器人100的位置更新对应的地图,得到多个更新后的地图。在进行更新时,粒子所对应的网格地图,其激光束末端对应的网格更新依据公式li=li+locc进行更新,激光束末端与机器人之间的网格更新依据公式li=li+lfree进行更新。
步骤S111,选取备选粒子,得到备选粒子中机器人在对应的栅格地图中的位置。
然后移动机器人100从地图更新后的该粒子集中,选择权值最大所对应的粒子,将该粒子作为备选粒子并得到该备选粒子中移动机器人100在对应的栅格地图中的位置ξ′t
步骤S112,更新各分辨率的栅格地图。
得到最低分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据Δξ、上一时刻的移动机器人位置ξt-1以及备选粒子中移动机器人100在对应的栅格地图中的位置ξ′t后,所述移动机器人100首先依据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人100的位置变换数据Δξ和上一时刻的移动机器人位置ξt-1更新最低分辨率的栅格地图中移动机器人100的当前位置,然后将更新后的当前位置与对应栅格地图(最低分辨率的栅格地图)的匹配程度跟(备选粒子中移动机器人在对应的栅格地图中的)位置ξ′t与其对应的栅格地图的匹配程度进行比较,选择两个匹配程度中匹配程度最高所对应的位置,然后依据该匹配程度最高所对应的位置更新各分辨率的栅格地图。
综上所述,本发明实施例提供的移动机器人定位建图方法解决了传统的基于粒子滤波SLAM系统由于轮式里程计误差导致定位误差较大,地图不精确的问题。具体的,由于轮式里程计的误差较大,在粒子滤波进行采样时即便已经在机器人位置附近进行高斯随机数采样,但采样得到的粒子集所代表的机器人位置不能代表机器人的真实位置,直接导致后续的扫描匹配,权值计算等步骤毫无意义。更近一步,根据采样后粒子内机器人位置数据得到的雷达光束端点与地图匹配程度变低,各粒子权值下降,重采样步骤频繁发生,粒子多样性减少,这些问题会导致机器人定位发生不可修复的错误,根据此定位结果构建的地图也无法保证精确性。
使用本发明的扩充粒子集的粒子滤波算法,采样步骤中的机器人相对位置数据不仅仅来自于里程计,其中一部分权值较大的粒子所维护的机器人移动相对位置数据来自于激光雷达最小二乘匹配,同时此匹配结果也经过了粒子滤波的扫描匹配,计算权值等步骤,进一步提升了机器人定位精度。考虑极端情况,当机器人运动过程中出现打滑,碰撞等现象时,机器人本身位置不发生移动,但由于轮子持续转动导致里程计数据持续积累,根据此数据进行的采样过程误差极大,根据此位置得到的地图很容易发生撕裂或重复叠加的情况。由于本发明使用的最小二乘匹配算法对粒子集的扩充,即使里程计数据出现上述错误,仍可以根据激光雷达计算出机器人实际位置值,有效提升建图效果。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (9)

1.一种移动机器人定位建图方法,应用于移动机器人,所述移动机器人包括用于采集激光雷达数据的激光雷达以及用于采集里程计数据的编码器和陀螺仪,其特征在于,所述方法包括:
初始化移动机器人的位置和各分辨率的栅格地图;
根据获取到的上一时刻的移动机器人位置ξt-1和当前时刻的激光雷达数据,估算出各栅格地图中激光束末端被占用可能性;
构建每个栅格地图中激光束末端被占用可能性的最小二乘误差函数,并通过迭代算法得到最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ;
初始化粒子集,所述初始粒子集包括多个粒子,每个粒子中包括栅格地图和对应的移动机器人的位置;
根据里程计的采样数据更新每个粒子中移动机器人的位置;
从粒子集中选取权值最大的多个粒子作为目标粒子,其中对于权值相同的粒子按照随机方式进行选取;
根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ扩充目标粒子,得到扩充后的粒子集;
扫描匹配扩充后的粒子集的每个粒子中激光雷达数据与对应的栅格地图的匹配程度;
根据每个粒子中激光雷达数据与对应的栅格地图的匹配程度,得到扩充后的粒子集中每个粒子的权值,其中,当扩充后的粒子集中的有效粒子低于预先设定的阈值时,对扩充后的粒子集中的粒子进行重采样;
根据扩充后的粒子集中每个粒子中移动机器人的位置更新对应的地图,得到多个更新后的地图;
选取与多个更新后的地图所对应的多个粒子中权值最大的粒子作为备选粒子,得到所述备选粒子中移动机器人在对应的栅格地图中的位置ξ′t
依据所述位置变换数据Δξ和所述上一时刻的移动机器人位置ξt-1更新移动机器人的当前位置,并将更新后的所述当前位置与对应栅格地图的匹配程度同所述位置ξ′t与对应栅格地图的匹配程度进行比较,选择其中匹配程度最高所对应的位置更新各分辨率的栅格地图。
2.根据权利要求1所述的方法,其特征在于,所述根据获取到的上一时刻的移动机器人位置ξt-1和当前时刻的激光雷达数据,估算出各栅格地图中激光束末端被占用可能性,包括:
根据各栅格地图中上一时刻的移动机器人位置ξt-1和获得的当前时刻的激光雷达数据,得到各栅格地图中当前时刻激光端点的全局坐标数据;
根据各栅格地图中当前时刻激光端点的全局坐标数据的周围四个网格被占用可能性,估算出各栅格地图中激光束末端被占用可能性。
3.根据权利要求1所述的方法,其特征在于,所述迭代算法为梯度下降法、信任区域法、牛顿高斯迭代法或Levenberg-Marquardt算法。
4.根据权利要求1所述的方法,其特征在于,所述根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ扩充目标粒子,得到扩充后的粒子集,包括:
根据最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ对粒子集中所有粒子中的移动机器人位置进行更新,得到准目标粒子;
将所有准目标粒子与所有目标粒子的集合作为扩充后的粒子集。
5.根据权利要求1所述的方法,其特征在于,初始化的栅格地图中每个网格被占用的可能性为初始化的栅格地图中激光束末端被占用的可能性为li=li+locc,初始化的栅格地图中激光束末端与机器人之间的网格被占用的可能性为li=li+lfree,p(mi)表示栅格地图中网格mi被占据的概率,p(mi)初始值为0.5,locc为正数,lfree为负数。
6.根据权利要求1所述的方法,其特征在于,估算出的各栅格地图中激光束末端被占用可能性的计算公式为,其中,M(x0,y0)表示网格(x0,y0)被占据的概率,M(x0,y1)表示网格(x0,y1)被占据的概率,M(x1,y0)表示网格(x1,y0)被占据的概率,M(x1,y1)表示网格(x1,y1)被占据的概率,(x0,y0)、(x0,y1)、(x1,y0)和(x1,y1)分别为激光束末端周围的4个网格。
7.根据权利要求1所述的方法,其特征在于,每个栅格地图中激光束末端被占用可能性的最小二乘误差函数为其中,M(Skt-1+Δξ))表示第k个激光束末端所对应网格被占据的概率。
8.根据权利要求7所述的方法,其特征在于,最低分辨率的栅格地图中上一时刻到当前时刻移动机器人的位置变换数据Δξ为其中整体表示M(Skt-1))对ξt-1的导数,表示M对Skt-1)求导,表示Skt-1)对ξt-1求导,T为矩阵中的转置符号,ξt-1表示表示t-1时刻的移动机器人位置,Skt-1)表示根据第k个激光束末端位置ξt-1计算得到的光束端点坐标。
9.根据权利要求7所述的方法,其特征在于,所述有效粒子的计算公式为其中,表示扩充后的粒子集中归一化后的粒子权值,i表示扩充后的粒子集中粒子的序号。
CN201910114730.7A 2019-02-14 2019-02-14 移动机器人定位建图方法 Active CN110007670B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910114730.7A CN110007670B (zh) 2019-02-14 2019-02-14 移动机器人定位建图方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910114730.7A CN110007670B (zh) 2019-02-14 2019-02-14 移动机器人定位建图方法

Publications (2)

Publication Number Publication Date
CN110007670A true CN110007670A (zh) 2019-07-12
CN110007670B CN110007670B (zh) 2021-11-23

Family

ID=67165698

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910114730.7A Active CN110007670B (zh) 2019-02-14 2019-02-14 移动机器人定位建图方法

Country Status (1)

Country Link
CN (1) CN110007670B (zh)

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110604515A (zh) * 2019-09-11 2019-12-24 深圳市银星智能科技股份有限公司 多机协作系统及清洁设备
CN110779528A (zh) * 2019-11-07 2020-02-11 四川长虹电器股份有限公司 基于粒子滤波器的定位恢复方法及机器人设备
CN110900610A (zh) * 2019-12-11 2020-03-24 哈尔滨工业大学 一种基于lm算法和粒子滤波算法优化的工业机器人标定方法
CN111105495A (zh) * 2019-11-26 2020-05-05 四川阿泰因机器人智能装备有限公司 一种融合视觉语义信息的激光雷达建图方法及系统
CN111210870A (zh) * 2019-12-27 2020-05-29 青岛海洋科学与技术国家实验室发展中心 蛋白质分类方法
CN111207754A (zh) * 2020-02-28 2020-05-29 上海交通大学 基于粒子滤波器的多机器人编队定位方法及机器人设备
CN111324116A (zh) * 2020-02-14 2020-06-23 南京航空航天大学 基于粒子滤波的机器人定位方法
CN111421548A (zh) * 2020-04-21 2020-07-17 武汉理工大学 一种移动机器人定位方法及系统
CN111551184A (zh) * 2020-03-27 2020-08-18 上海大学 一种移动机器人slam的地图优化方法及系统
CN111578932A (zh) * 2020-05-28 2020-08-25 长沙中联重科环境产业有限公司 一种基于多线激光雷达的建图方法、装置、介质及设备
CN111765884A (zh) * 2020-06-18 2020-10-13 北京海益同展信息科技有限公司 机器人重定位方法、装置、电子设备及存储介质
CN112100298A (zh) * 2020-08-17 2020-12-18 深圳市优必选科技股份有限公司 一种建图方法、装置、计算机可读存储介质及机器人
CN112581613A (zh) * 2020-12-08 2021-03-30 纵目科技(上海)股份有限公司 一种栅格地图的生成方法、系统、电子设备及存储介质
CN113032411A (zh) * 2021-03-02 2021-06-25 上海景吾智能科技有限公司 在已有地图的基础上更新局部地图的方法、系统及介质
US20220261008A1 (en) * 2021-02-16 2022-08-18 Sony Group Corporation Circuitry and method

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060041331A1 (en) * 2004-08-05 2006-02-23 Samsung Electronics Co., Ltd. Method used by robot for simultaneous localization and map-building
KR20070026912A (ko) * 2005-08-27 2007-03-09 한국과학기술원 입자 필터 프레임 워크에서 전방향 시각센서 기반 위치추정 및 매핑을 위한 방법
CN104898660A (zh) * 2015-03-27 2015-09-09 中国科学技术大学 一种提高机器人路径规划效率的室内地图构建方法
CN105509755A (zh) * 2015-11-27 2016-04-20 重庆邮电大学 一种基于高斯分布的移动机器人同步定位与地图构建方法
CN105606102A (zh) * 2016-01-27 2016-05-25 中国地质大学(武汉) 一种基于格网模型的pdr室内定位方法及系统
CN106595659A (zh) * 2016-11-03 2017-04-26 南京航空航天大学 城市复杂环境下多无人机视觉slam的地图融合方法
CN107450577A (zh) * 2017-07-25 2017-12-08 天津大学 基于多传感器的无人机智能感知系统和方法
CN107478214A (zh) * 2017-07-24 2017-12-15 杨华军 一种基于多传感器融合的室内定位方法及系统
CN108037484A (zh) * 2017-11-30 2018-05-15 百色学院 一种室内led可见光定位方法、系统及装置
CN108733062A (zh) * 2018-06-25 2018-11-02 山东大学 家庭陪护机器人自主充电系统及方法

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060041331A1 (en) * 2004-08-05 2006-02-23 Samsung Electronics Co., Ltd. Method used by robot for simultaneous localization and map-building
KR20070026912A (ko) * 2005-08-27 2007-03-09 한국과학기술원 입자 필터 프레임 워크에서 전방향 시각센서 기반 위치추정 및 매핑을 위한 방법
CN104898660A (zh) * 2015-03-27 2015-09-09 中国科学技术大学 一种提高机器人路径规划效率的室内地图构建方法
CN105509755A (zh) * 2015-11-27 2016-04-20 重庆邮电大学 一种基于高斯分布的移动机器人同步定位与地图构建方法
CN105606102A (zh) * 2016-01-27 2016-05-25 中国地质大学(武汉) 一种基于格网模型的pdr室内定位方法及系统
CN106595659A (zh) * 2016-11-03 2017-04-26 南京航空航天大学 城市复杂环境下多无人机视觉slam的地图融合方法
CN107478214A (zh) * 2017-07-24 2017-12-15 杨华军 一种基于多传感器融合的室内定位方法及系统
CN107450577A (zh) * 2017-07-25 2017-12-08 天津大学 基于多传感器的无人机智能感知系统和方法
CN108037484A (zh) * 2017-11-30 2018-05-15 百色学院 一种室内led可见光定位方法、系统及装置
CN108733062A (zh) * 2018-06-25 2018-11-02 山东大学 家庭陪护机器人自主充电系统及方法

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110604515B (zh) * 2019-09-11 2021-05-28 深圳市银星智能科技股份有限公司 多机协作系统及清洁设备
CN110604515A (zh) * 2019-09-11 2019-12-24 深圳市银星智能科技股份有限公司 多机协作系统及清洁设备
CN110779528A (zh) * 2019-11-07 2020-02-11 四川长虹电器股份有限公司 基于粒子滤波器的定位恢复方法及机器人设备
CN111105495A (zh) * 2019-11-26 2020-05-05 四川阿泰因机器人智能装备有限公司 一种融合视觉语义信息的激光雷达建图方法及系统
CN110900610A (zh) * 2019-12-11 2020-03-24 哈尔滨工业大学 一种基于lm算法和粒子滤波算法优化的工业机器人标定方法
CN110900610B (zh) * 2019-12-11 2022-04-22 哈尔滨工业大学 一种基于lm算法和粒子滤波算法优化的工业机器人标定方法
CN111210870A (zh) * 2019-12-27 2020-05-29 青岛海洋科学与技术国家实验室发展中心 蛋白质分类方法
CN111210870B (zh) * 2019-12-27 2024-03-08 青岛海洋科技中心 蛋白质分类方法
CN111324116A (zh) * 2020-02-14 2020-06-23 南京航空航天大学 基于粒子滤波的机器人定位方法
CN111324116B (zh) * 2020-02-14 2021-09-21 南京航空航天大学 基于粒子滤波的机器人定位方法
CN111207754A (zh) * 2020-02-28 2020-05-29 上海交通大学 基于粒子滤波器的多机器人编队定位方法及机器人设备
CN111551184B (zh) * 2020-03-27 2021-11-26 上海大学 一种移动机器人slam的地图优化方法及系统
CN111551184A (zh) * 2020-03-27 2020-08-18 上海大学 一种移动机器人slam的地图优化方法及系统
CN111421548B (zh) * 2020-04-21 2021-10-19 武汉理工大学 一种移动机器人定位方法及系统
CN111421548A (zh) * 2020-04-21 2020-07-17 武汉理工大学 一种移动机器人定位方法及系统
CN111578932A (zh) * 2020-05-28 2020-08-25 长沙中联重科环境产业有限公司 一种基于多线激光雷达的建图方法、装置、介质及设备
CN111578932B (zh) * 2020-05-28 2021-12-24 长沙中联重科环境产业有限公司 一种基于多线激光雷达的建图方法、装置、介质及设备
CN111765884A (zh) * 2020-06-18 2020-10-13 北京海益同展信息科技有限公司 机器人重定位方法、装置、电子设备及存储介质
CN112100298A (zh) * 2020-08-17 2020-12-18 深圳市优必选科技股份有限公司 一种建图方法、装置、计算机可读存储介质及机器人
CN112100298B (zh) * 2020-08-17 2024-04-19 深圳市优必选科技股份有限公司 一种建图方法、装置、计算机可读存储介质及机器人
CN112581613A (zh) * 2020-12-08 2021-03-30 纵目科技(上海)股份有限公司 一种栅格地图的生成方法、系统、电子设备及存储介质
US20220261008A1 (en) * 2021-02-16 2022-08-18 Sony Group Corporation Circuitry and method
CN113032411A (zh) * 2021-03-02 2021-06-25 上海景吾智能科技有限公司 在已有地图的基础上更新局部地图的方法、系统及介质

Also Published As

Publication number Publication date
CN110007670B (zh) 2021-11-23

Similar Documents

Publication Publication Date Title
CN110007670A (zh) 移动机器人定位建图方法
CN108594816B (zh) 一种通过改进orb-slam算法实现定位与构图的方法和系统
Zhang et al. Hierarchical topic model based object association for semantic SLAM
Einhorn et al. Finding the adequate resolution for grid mapping-cell sizes locally adapting on-the-fly
CN106714110A (zh) 一种Wi‑Fi位置指纹地图自动构建方法及系统
Kollar et al. Efficient Optimization of Information-Theoretic Exploration in SLAM.
CN110333720A (zh) 一种基于粒子滤波的slam优化方法
CN110458174A (zh) 一种无序点云关键特征点精确提取方法
Tully et al. A unified bayesian framework for global localization and slam in hybrid metric/topological maps
CN104504709A (zh) 一种基于特征球的室外场景三维点云数据的分类方法
Agarwal Robust graph-based localization and mapping
Besselmann et al. VDB-Mapping: a high resolution and real-time capable 3D mapping framework for versatile mobile robots
CN114119920A (zh) 三维点云地图构建方法、系统
Ortolf et al. A recursive approach to multi-robot exploration of trees
Ruddick et al. Design and performance evaluation of an infotaxis-based three-dimensional algorithm for odor source localization
CN113721254A (zh) 一种基于道路指纹空间关联矩阵的车辆定位方法
Zhang et al. A new PHD-SLAM method based on memory attenuation filter
CN115585814B (zh) 一种基于沉降机制的飞行器变尺度地形跟随方法
CN114186112B (zh) 一种基于贝叶斯优化多重信息增益探索策略的机器人导航方法
Neloy et al. Alpha-N-V2: Shortest path finder automated delivery robot with obstacle detection and avoiding system
CN106251364A (zh) 目标跟踪方法及装置
CN113137971A (zh) 一种适用于即时定位与地图构建的ransac改进方法
Petereit Adaptive State× Time Lattices: A contribution to mobile robot motion planning in unstructured dynamic environments
Sun et al. Indoor Li-DAR 3D mapping algorithm with semantic-based registration and optimization
CN117649545B (zh) 基于人工智能的喷涂轨迹规划方法及系统

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