CN109213146A - 自主移动装置、自主移动方法以及程序存储介质 - Google Patents

自主移动装置、自主移动方法以及程序存储介质 Download PDF

Info

Publication number
CN109213146A
CN109213146A CN201810727535.7A CN201810727535A CN109213146A CN 109213146 A CN109213146 A CN 109213146A CN 201810727535 A CN201810727535 A CN 201810727535A CN 109213146 A CN109213146 A CN 109213146A
Authority
CN
China
Prior art keywords
map
autonomous device
location estimation
oneself
oneself position
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
CN201810727535.7A
Other languages
English (en)
Other versions
CN109213146B (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Publication of CN109213146A publication Critical patent/CN109213146A/zh
Application granted granted Critical
Publication of CN109213146B publication Critical patent/CN109213146B/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, 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/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
    • 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/0238Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using obstacle or wall sensors
    • G05D1/024Control 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
    • 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/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0016Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement characterised by the operator's input device
    • 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/0011Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement
    • G05D1/0022Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots associated with a remote control arrangement characterised by the communication link
    • 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/0088Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
    • 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/0219Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory ensuring the processing of the whole working surface
    • 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/0225Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving docking at a fixed facility, e.g. base station or loading bay
    • 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/0242Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using non-visible light signals, e.g. IR or UV signals
    • 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/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
    • 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/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/0248Control 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 in combination with a laser

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Electromagnetism (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Optics & Photonics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Game Theory and Decision Science (AREA)
  • Medical Informatics (AREA)
  • Mathematical Physics (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本发明提供的自主移动装置(100)中,基于来自构成为使自主移动装置(100)移动的驱动部的信息、来自驱动部以外的信息来分别估计自主移动装置(100)的自己位置。物***置取得部(13)取得自主移动装置(100)的周围的物体的位置。地图生成部14基于驱动系位置估计部(11)或非驱动系位置估计部(12)估计出的自己位置和物***置取得部(13)取得的位置来在地图存储部(23)生成环境地图。地图控制部(16)在非驱动系位置估计部(12)变得能估计自己位置的追踪定时的情况下,使用在根据非驱动系位置估计部(12)不再能估计自己位置的迷路定时确定的基准定时存储在地图存储部(23)的环境地图。改善了不能生成自主移动装置的高精度的地图的情况的应对。

Description

自主移动装置、自主移动方法以及程序存储介质
关于本申请,主张以在2017年7月5日申请的日本专利申请特愿2017-131894为基础的优先权,将该基础申请的内容全都引入到本申请中。
技术领域
本发明涉及自主移动装置、自主移动方法以及程序记录介质。
背景技术
根据用途而自主进行移动的自主移动装置不断普及。例如已知为了室内的清扫而自主进行移动的自主移动装置。一般,这样的自主移动装置需要进行实空间的地图的生成和实空间内的自己位置的估计。
作为用于生成实空间的地图的手法,例如已知SLAM(Simultaneous LocalizationAnd Mapping,即时定位与地图构建)法。在SLAM法中,通过从摄像机拍摄的动态图像中的多个帧,追踪同一特征点来进行交替估计自己位置(自机的三维位置)和特征点的三维位置的处理。例如在特开2016-52515号公报中公开了能一边用SLAM法生成周围的地图一边进行移动的移动式机器人。
现有技术文献
专利文献
专利文献1:JP特开2016-52515号公报
SLAM法由于使用特征点的三维位置来估计自己位置,因此若能估计三维位置的特征点的个数少,自己位置的估计精度就会降低,或者不再能进行自己位置的估计(迷路状态)。自主移动装置所生成的地图由于是使用自己位置的信息生成,因此若自己位置的估计精度降低,生成的地图的精度也会降低。并且在专利文献1中并没有记载在不能生成高精度的地图(生成的地图的精度会降低)的情况下应怎样处理。因此,在现有的自主移动装置中,在不能生成高精度的地图的情况的应对尚有改善的余地。
发明内容
本发明为了解决上述问题而提出,目的在于,改善不能生成自主移动装置的高精度的地图的情况的应对。
为了达成上述目的,本发明的一个方式提供自主移动装置,一边生成环境地图一边估计自己位置,具备:驱动系位置估计部,其基于来自构成为使所述自主移动装置移动的驱动部的信息来估计所述自主移动装置的自己位置;非驱动系位置估计部,其基于来自所述驱动部以外的信息来估计所述自己位置;物***置取得部,其取得所述自主移动装置的周围的物体的位置;地图生成部,其基于所述驱动系位置估计部或所述非驱动系位置估计部估计出的自己位置和所述物***置取得部取得的物体的位置来在地图存储部生成包含所述物体的位置的环境地图;和地图控制部,其在成为所述非驱动系位置估计部变得能估计所述自己位置的追踪定时的情况下,使用在根据所述非驱动系位置估计部不再能估计所述自己位置的迷路定时确定的基准定时存储于所述地图存储部的环境地图。
发明的效果
根据本发明,能改善不能生成自主移动装置的高精度的地图的情况的应对。
附图说明
若配合以下的附图考虑以下的详细的记述,则能得到本申请的更深的理解。
图1是表示本发明的实施方式1所涉及的自主移动装置的功能结构的图。
图2是表示实施方式1所涉及的自主移动装置的外观的图。
图3A是表示用距离传感器的扫描例的图。
图3B是表示在距离传感器得到的测距数据的示例的图。
图4是表示实施方式1所涉及的自主移动装置的软件模块的整体结构的图。
图5是说明实施方式1所涉及的自主移动装置所解决的课题的图。
图6是说明实施方式1所涉及的自主移动装置的课题解决方法的图。
图7是实施方式1所涉及的地图生成模块的流程图。
图8是实施方式1所涉及的自己位置估计处理的流程图。
图9是实施方式1所涉及的移动控制模块的流程图。
图10是说明本发明的实施方式2所涉及的自主移动装置的课题解决方法的图。
图11是表示实施方式2所涉及的自主移动装置的功能结构的图。
图12是实施方式2所涉及的地图生成模块的流程图。
图13是表示本发明的变形例2所涉及的自主移动装置的功能结构的图。
图14是表示变形例2所涉及的自主移动装置的外观的图。
图15是表示变形例2所涉及的自主移动装置的软件模块的整体结构的图。
图16是变形例2所涉及的地图生成模块的流程图。
具体实施方式
以下参考图表来说明本发明的实施方式所涉及的自主移动装置、自主移动方法以及程序。另外,图中对相同或相当部分标注相同附图标记。
(实施方式1)
本发明的实施方式所涉及的自主移动装置是一边生成周围的地图一边对应于用途自主进行移动的装置。该用途例如是警备监视用、屋内清扫用、宠物用、玩具用等。
如图1所示那样,本发明的实施方式1所涉及的自主移动装置100具备控制部10、存储部20、传感器部30、摄像部41、驱动部42、通信部43。
控制部10由CPU(Central Processing Unit,中央处理器)等构成,通过执行存储于存储部20的程序来实现后述的各部(驱动系位置估计部11、非驱动系位置估计部12、物***置取得部13、地图生成部14、移动控制部15、地图控制部16)的功能。另外,控制部10具备计时器(未图示),能对经过时间进行计数。
存储部20由ROM(Read Only Memory,只读存储器)、RAM(Random Access Memory,随机存取存储器)等构成,在功能上包含图像存储部21、特征点存储部22、地图存储部23、地图保管部24以及测距数据存储部25。在ROM中存储控制部10的CPU执行的程序、执行程序上预先需要的数据。在RAM中存储在程序执行中生成或变更的数据。
在图像存储部21中存储摄像部41所拍摄的图像。但也可以为了节约存储容量而不存储拍摄的全部图像。自主移动装置100使用图像存储部21中存储的多个图像,通过SLAM处理来进行自机位置(自己位置以及朝向)的估计。关于自机位置的估计中所用的图像,还和该图像的信息一起存储拍摄该图像时的自机位置的信息。
在特征点存储部22,对于存储于图像存储部21的图像中所含的特征点当中求取实空间中的三维位置(X,Y,Z)得到的特征点,将其三维位置和该特征点的特征量建立关联进行存储。所谓特征点,是图像中的边角部分等图像内的特征性的部分,能使用SIFT(Scale-Invariant Feature Transform,尺度不变特征变换)、SURF(Speeded Up RobustFeatures,加速稳健特征)等算法取得。另外,特征点的特征量例如是用SIFT等得到的特征量。在上述的SLAM处理中,由于基于存储于特征点存储部22的特征点的三维位置来进行自己位置的估计,因此能认为特征点存储部22存储SLAM用的地图的信息。
在地图存储部23中,存储基于来自传感器部30的信息而由地图生成部14生成的环境地图。环境地图是如下那样的占有格子地图:将自主移动装置移动的地面分割成例如5cm×5cm的格子(网格),将与各格子点对应的位置(以格子点为中心的与该格子相同形状的区域)上的障碍物的存在概率表征为该格子点的值。另外,也可以取代「与各格子点对应的位置」而使用「与各格子对应的位置(格子的区域)」。另外,占有格子地图的各格子点的值由于该场所存在障碍物的可能性越高则成为越大的值,不存在障碍物的可能性越高则成为越小的值,因此只是为了方便而称作「存在概率」,并不需要是严格的存在概率。作为记录为占有格子地图的各格子点的值的存在概率的数值,可以是存在概率P(0到1的范围的实数)的值本身,但在本实施方式中使用对数几率L(整数)。关于P与L的关系,若将k设为正的常数,则能用以下的式(1)表征。
P=1-1/(1+exp(kL))…(1)
如从式(1)获知的那样,在P=0.5时L=0,P=0时L=-∞,P=1时L=∞,通过使用对数几率,能用整数值处置概率。并且能根据将各格子点的值L与基准值比较时的大小来表征与该格子点对应的位置上的障碍物的存否。另外,在本实施方式中,作为L的值,将最小值(Lmin)设为-127,将最大值(Lmax)设为127,将占有格子地图的各格子点的值的初始值设为L=0。并且例如处理为:若L大于存在基准值(例如10),则在格子点存在障碍物,若L不足不存在基准值(例如-10),则在该格子点不存在障碍物,若L为不存在基准值以上不足存在基准值,则该格子点上的障碍物的存否不明。当然,这些值能任意变更。
地图保管部24是地图控制部16为了保存存储于地图存储部23的环境地图的信息而用的存储区域。
在在测距数据存储部25中,将表示后述的距离传感器31检测到的到物体的距离的测距数据和检测该物体的角度的信息一起存储。
传感器部30具备检测存在于自主移动装置100的周围的物体的传感器。在实施方式1中,传感器部30具备检测存在于周围的物体、取得到该物体的距离(测距数据)的距离传感器31。距离传感器31例如如图2所示那样由在自主移动装置100的上部所具备的二维激光扫描器构成。距离传感器31通过如图3所示那样在给定的角度范围(例如-30度到+30度的范围)进行激射光的扫描,来每隔给定的角度(例如1度)取得到存在于周围的该角度范围的物体的距离(测距数据)。若在该方向上没有物体,就没有针对该角度的测距数据。例如若距离传感器31进行图3A所示的扫描,就能取得图3B所示的测距数据。距离传感器31定期(例如以1秒30次的频度)对周围进行观测(扫描),若检测到物体,就将表示到该物体的距离的测距数据和检测该物体的角度的信息发送到控制部10。于是,控制部10将这些信息(到物体的距离以及检测该物体的角度)登录到测距数据存储部25。
摄像部41如图2所示那样具备单镜头的摄像装置(摄像机)。摄像部41例如以30fps(frames per second,帧每秒)取得图像(帧)。自主移动装置100一边基于摄像部41逐次取得的图像,通过SLAM处理实时认识自己位置和周围环境,一边进行自主移动。
驱动部42是独立2轮驱动型,是具备车轮和电动机的移动单元,构成为使自主移动装置100移动。在图2中,将右边的车轮表示为驱动部42a,将左边的车轮表示为驱动部42b。自主移动装置100能通过2个车轮的相同方向驱动来进行前后的平行移动(并进移动),通过2个车轮的相反方向驱动来进行原地的转弯(朝向变更),能通过改变2个车轮各自速度的驱动来进行转弯移动(并进+转弯(朝向变更)移动)。另外,在各个车轮具备旋转编码器,用旋转编码器测量车轮的旋转数,能利用车轮的直径或车轮间的距离等几何学上的关系来计算并进移动量以及转弯量。
例如若将车轮的直径设为D,将旋转数设为R(由旋转编码器测定),则在该车轮的接地部分的并进移动量成为π·D·R。另外,若将车轮的直径设为D,将车轮间的距离设为1,将右车轮的旋转数设为RR,将左车轮的旋转数设为RL,则朝向变更的转弯量成为(若将右转弯设为正)360°×D×(RL-RR)/(2×I)。通过将该并进移动量、转弯量逐次加在一起,驱动部42作为所谓的里程计发挥功能,能用在自机的位置(以移动开始时的自己位置以及朝向为基准的自己位置以及朝向)的估计中。在此,将自机的「朝向」也说成自机的「姿态」。
但从里程计得到的自己位置以及朝向的精度多因车轮的摩耗或打滑等而成为低的精度。特别在误差不断累积的关系上,随着时间经过而精度变差。另外,也可以取代车轮而具备履带,也可以具备多个(例如2条)腿而用腿行走,由此进行移动。在这些情况下,也能基于两个履带的活动、腿的活动来与车轮的情况同样地估计自己位置和朝向(姿态)。
通信部43是用于与外部装置进行通信的模块,在与外部装置进行无线通信的情况下是包含天线的无线模块。例如通信部43是用于进行基于Bluetooth(注册商标)的近距离无线通信的无线模块。通过使用通信部43,自主移动装置100能与外部进行数据的收发等。例如在用户对自主移动装置100指示目的地时,可以经由该通信部43传达目的地的信息。
接下来说明控制部10的功能。控制部10包含驱动系位置估计部11、非驱动系位置估计部12、物***置取得部13、地图生成部14、移动控制部15以及地图控制部16,进行自己位置的估计、环境地图的生成、自主移动装置100的移动控制等。另外,控制部10能应对多线程功能,并行执行多个线程(不同的处理的流程)。
驱动系(驱动类)位置估计部11从驱动部42取得里程计的信息来估计自主移动装置100的自己位置以及姿态。
非驱动系(非驱动类)位置估计部12使用多个由摄像部41拍摄并存储在图像存储部21的图像(拍摄图像),通过SLAM处理来估计自主移动装置100的自己位置以及姿态。在SLAM处理中,若图像中的特征点的数少就不能进行自己位置的估计。在此,将表征能用SLAM处理进行自己位置的估计的信息称作追踪信息,非驱动系位置估计部12还取得该追踪信息。若非驱动系位置估计部12能进行自己位置的估计,则追踪信息是「追踪中」或「追踪状态」,若不能进行自己位置的估计,则追踪信息是「迷路中」或「迷路状态」。
物***置取得部13使用来自传感器部30的信息来取得周围的物体的位置(以自主移动装置100的位置以及姿态为基准的相对位置)。更具体地,物***置取得部13取得表示到传感器部30所具备的距离传感器31检测到的物体的距离的测距数据、和检测该物体的角度。
地图生成部14基于驱动系位置估计部11或非驱动系位置估计部12估计出的自己位置以及姿态、和物***置取得部13取得的周围的物体的位置(以自主移动装置100的位置以及姿态为基准的相对位置)来生成包含该物体所存在的位置的环境地图,存储到地图存储部23。该环境地图如上述那样将平面分割成格子,在各格子点记录表示用传感器部30检测到的物体的存在概率的数值。
移动控制部15基于存储于地图存储部23的环境地图的信息来设定到目的地的移动路径,控制驱动部42,使自机沿着设定的移动路径移动。
地图控制部16在非驱动系位置估计部12不再能估计自己位置时,在该时间点将存储于地图存储部23的环境地图的信息固定。在此,所谓「将环境地图的信息固定」,是指将环境地图的信息保存到地图保管部24和停止环境地图的信息的更新。然后,地图控制部16在之后非驱动系位置估计部12变得能估计自己位置时将环境地图的信息的固定解除。在此,所谓「将环境地图的信息的固定解除」,是指在通过将环境地图的信息保存到地图保管部24来进行环境地图的信息的固定的情况下将保存于地图保管部24的环境地图返回地图存储部23。另外,在通过停止环境地图的信息的更新来进行环境地图的信息的固定的情况下,是指恢复环境地图的更新。
以上说明了自主移动装置100的功能结构。接下来参考图4来说明自主移动装置100的控制部10所执行的软件模块的整体结构。图4中,非驱动系位置估计模块51与以上述功能结构说明的非驱动系位置估计部12对应,驱动系位置估计模块52与以上述功能结构说明的驱动系位置估计部11对应。另外,地图生成模块53与地图生成部14对应,移动控制模块54与移动控制部15对应。
若自主移动装置100的电源接通,则这些软件模块分别作为不同线程启动,并行开始执行。非驱动系位置估计模块51使用从摄像部41取得的图像信息进行SLAM处理,对自己位置以及姿态进行估计。驱动系位置估计模块52使用从驱动部42取得的里程计信息来估计自己位置以及姿态。地图生成模块53,基于非驱动系位置估计模块51或驱动系位置估计模块52估计出的自己位置以及姿态、和从距离传感器31得到的测距数据以及角度,来生成环境地图。
移动控制模块54基于非驱动系位置估计模块51或驱动系位置估计模块52估计出的自己位置以及姿态、和地图生成模块53生成的环境地图来设定路径,基于设定的路径来生成控制驱动部42的移动控制信息(主要是速度信息)。然后,驱动部42基于移动控制模块54生成的移动控制信息被驱动,进行向目的地的移动。
在此,参考图5来说明自主移动装置100解决的课题。考虑图5的(1)所示那样,自主移动装置100从A地点向B地点一边左转向一边移动并进行接近障碍物70的活动的情况。这时,若在用摄像部41取得的多个图像的各自中包含大量特征点,非驱动系位置估计部12就能通过SLAM处理估计自己位置(追踪中),地图生成部14就能生成图5的(2)所示那样精度高的环境地图。
但若在用摄像部41取得的多个图像的各自中仅包含基准值(例如10个)以下的特征点,则非驱动系位置估计部12就不能进行基于SLAM处理的自己位置的估计(迷路中)。于是,自主移动装置100进行仅基于驱动系位置估计部11的自己位置的估计,但基于驱动系位置估计部11的自己位置的估计如上述那样,多因车轮的摩耗或打滑等而成为低的精度。为此,地图生成部14生成的环境地图就会成为图5的(3)所示那样为精度低的地图。若地图的精度低,有时就会设定不适合的路径,或找不到路径。
为此如图6所示那样,若SLAM处理成为迷路状态,自主移动装置100就保存该时间点(迷路定时:T11)的环境地图,若SLAM处理恢复成追踪状态,就在该时间点(追踪定时:T2)读入先前保存的环境地图,这样的话,就能删除迷路中的精度低的环境地图的信息,因此能防止环境地图的精度降低。另外,将保存环境地图的定时称作基准定时(T12)。在本实施方式中基准定时(T12)=迷路定时(T11)。
为了自主移动装置100能保持尽可能长的时间的图5的(2)所示那样的精度高的环境地图,在不能进行基于SLAM处理的自己位置的估计的情况下暂时保存环境地图,在变得能进行基于SLAM处理的自己位置的估计时使暂时保存的环境地图恢复,以下对这样的机制进行说明。首先参考图7来说明地图生成模块53的处理内容。另外,以下,用二维排列变量MA[i,j]表征存储于地图存储部23的环境地图,用二维排列MS[i,j]表征存储于地图保管部24的环境地图。在此,若将xsize设为环境地图的X方向的最大的格子点的坐标,将ysize设为环境地图的Y方向的最大的格子点的坐标,则0≤i≤xsize,0≤j≤ysize。另外,表示地图保管部24中是否保存有环境地图的标记变量SF也存储于地图保管部24(若是SF=0,则表示不保存环境地图,若是SF=1则表示保存环境地图)。
首先地图生成部14将存储于地图存储部23的环境地图初始化(步骤S101)。另外,这时地图保管部24也进行初始化。环境地图的初始化通过将占有格子地图的全部格子点的值都设为0来进行。具体地,对0≤i≤xsize,0≤j≤ysize的全部i以及j执行MA[i,j]=0。然后将表示地图保管部24中是否保存有环境地图的标记变量SF置位成0。
接下来控制部10判定自主移动装置100是否结束动作(步骤S102)。在用户断开自主移动装置100的电源的情况下、或蓄电池的剩余电量低于给定量(例如剩余3%等)的情况下等,自主移动装置100结束动作。若自主移动装置100结束动作(步骤S102“是”),就结束处理。若未结束动作(步骤S102“否”),则控制部10进行自己位置估计处理来取得当前的自己位置以及姿态(步骤S103)。关于自己位置估计处理的详细之后叙述。
接下来,地图控制部16判定是否非驱动系位置估计部12不再能估计自己位置(SLAM处理的追踪信息从追踪状态变化为迷路状态)(步骤S104)。在非驱动系位置估计部12不再能估计自己位置的情况下(步骤S104“是”),地图控制部16将存储于地图存储部23的环境地图保存到地图保管部24(步骤S105)。具体地,对0≤i≤xsize,0≤j≤ysize的全部i以及j执行MS[i,j]=MA[i,j],对变量SF置位1。步骤S105也称作地图控制步骤。然后前进到步骤S108。
若追踪信息未从追踪状态变化为迷路状态(步骤S104“否”),则地图控制部16判定非驱动系位置估计部12是否不再能估计自己位置(SLAM处理的追踪信息从迷路状态变化为追踪状态)(步骤S106)。若非驱动系位置估计部12没有变得能估计自己位置(步骤S106“否”),就前进到步骤S108。
在非驱动系位置估计部12变得能估计自己位置的情况下(步骤S106“是”),地图控制部16将地图存储部23的环境地图清空,并将保存在地图保管部24的环境地图读入到地图存储部23(步骤S107)。具体地,对0≤i≤xsize,0≤j≤ysize的全部i以及j执行MA[i,j]=MS[i,j],将变量SF置位成0。然后前进到步骤S108。
在步骤S108中,物***置取得部13从测距数据存储部25取得测距数据以及角度。步骤S108也称作物***置取得步骤。然后,地图生成部14使用在步骤S103取得的自己位置以及姿态的信息,将物***置取得部13取得的测距数据以及角度变换成环境地图中的坐标,登录到环境地图(步骤S109)。步骤S109也被称作地图生成步骤。然后回到步骤S102。
以下说明步骤S109中的将测距数据登录到环境地图的具体例。例如,若在距离传感器31检测到的物体的环境地图中的坐标是[m,n],则地图生成部14首先执行MA[m,n]=MA[m,n]+Δr。在此,Δr是距离传感器31确认到各格子点上的物体的存在时对该格子点的值加上的更新量,Δr的值例如是10。其中,在若加上Δr则MA[m,n]超过最大值Lmax的情况下,设为MA[m,n]=Lmax。
接下来,地图生成部14从在距离传感器31的观测(扫描)范围内未检测到障碍物的格子点的值减去更新量Δr。具体地,关于检测到障碍物的方向,对[m,n]的跟前的全部[i,j]执行MA[i,j]=MA[i,j]-Δr,关于未检测到障碍物的方向,对距离传感器31的观测范围内的全部[i,j]执行MA[i,j]=MA[i,j]-Δr。但在若减去Δr则MA[i,j]低于最小值Lmin的情况下,设为MA[i,j]=Lmin。
通过以上的处理,在距离传感器观测到物体的格子点的值变大,在距离传感器的观测范围内未观测到物体的格子点的值变小。由此,各格子点的值被视作以对数几率表征物体的存在概率的值。另外,作为环境地图的各格子点的值,也可以取代对数几率L来记录观测次数(距离传感器31观测(扫描)该格子点的次数)和检测次数(距离传感器31检测到在该格子点的位置存在障碍物的次数)的配对,将各格子点上的障碍物的存在概率定义为检测次数相对观测次数的比例。
以上结束了图7所示的地图生成模块53的流程图的说明,但在图7的处理中,从成为迷路状态(步骤S104“是”)起到成为追踪状态(步骤S106“是”)为止的期间(迷路期间)的环境地图,是直到在步骤S107从地图保管部读入原本的环境地图(本来的环境地图)为止之间的临时的环境地图,也称作简易地图。并且,在使用该临时的环境地图(简易地图)的期间,能认为本来的环境地图(保存于地图保管部24的环境地图)的更新停止。因此,步骤S105的处理也能说是将环境地图(的信息)固定的处理。另外,通过步骤S107的处理,简易地图被置换成本来的环境地图,本来的环境地图的更新恢复,因此步骤S107的处理可以说是将环境地图(的信息)的固定解除的处理。
接下来参考图8来说明在图7的步骤S103进行的自己位置估计处理。首先,驱动系位置估计部11基于从驱动部42得到的里程计信息来取得自主移动装置100的自己位置以及姿态(步骤S201)。步骤S201也称作驱动系位置估计步骤。接下来,非驱动系位置估计部12取得基于摄像部41拍摄的图像的信息的SLAM处理的追踪信息(步骤S202)。
然后,控制部10判定SLAM处理的追踪信息是否是「追踪中」(步骤S203)。若SLAM处理的追踪信息是「追踪中」(步骤S203“是”),则非驱动系位置估计部12基于摄像部41拍摄的图像的信息,通过SLAM处理取得自主移动装置100的自己位置以及姿态(步骤S204)。步骤S204也称作非驱动系位置估计步骤。然后,非驱动系位置估计部12将基于SLAM处理得到的自己位置以及姿态输出到控制部10(步骤S205),结束处理。
另一方面,若在步骤S203,SLAM处理的追踪信息不是「追踪中」(步骤S203“否”),则驱动系位置估计部11求取前次的自己位置估计处理的步骤S201中取得的自己位置以及姿态、与本次的步骤S201中取得的自己位置以及姿态的差分,将该差分加到前次的自己位置估计处理中输出到控制部10的自己位置以及姿态,将结果输出到控制部10(步骤S206),结束处理。
以上结束了图8所示的自己位置估计处理的流程图的说明,接下来使用在地图生成模块53生成的地图来设定到目的地的路径,参考图9来说明到目的地为止进行移动控制的移动控制模块54的处理内容。
首先控制部10判定自主移动装置100是否结束动作(步骤S301)。若结束动作(步骤301“是”),则结束处理。若未结束动作(步骤S301“否”),则移动控制部15判定是否设定了目的地(步骤S302)。有自主移动装置100的用户经由通信部43设定目的地的情况,还有自主移动装置100根据需要(例如蓄电池剩余电量低于给定量(例如10%)的情况下将充电站设定为目的地等)自主设定目的地的情况。
若未设定目的地(步骤S302“否”),则回到步骤S301。若设定了目的地(步骤S302“是”),则移动控制部15取得地图生成部14生成的在该时间点为最新的环境地图(步骤S303)。接下来移动控制部15通过图8所示的自己位置估计处理取得当前的自己位置以及姿态(步骤S304)。然后,移动控制部15基于取得的环境地图、自己位置以及姿态和设定的目的地来设定从当前位置到目的地的路径(步骤S305)。
然后,移动控制部15判定能否设定路径(路径是否存在)(步骤S306)。若不存在路径(步骤S306“否”),则进行向用户通知该意思等错误处理(步骤S307),回到步骤S301。若存在路径(步骤S306“是”),则移动控制部15判定自机是否抵达目的地(步骤S308)。另外,由于在路径的信息中还包含目的地的信息,因此移动控制部15通过判定当前的位置是否与路径中所含的目的地一致,能判定是否抵达目的地。
若抵达目的地(步骤S308“是”),则移动控制部15控制驱动部42使移动停止(步骤S310),回到步骤S301。若未抵达目的地(步骤S308“否”),则移动控制部15控制驱动部42,使得沿着路径移动(步骤S309),回到步骤S303。
以上结束图9所示的移动控制模块54的流程图的说明。若SLAM处理中不能进行自己位置的估计的状态(迷路状态)长时间持续,环境地图的精度就会变低,但如以上说明的那样,自主移动装置100通过在SLAM处理成为迷路状态时保存环境地图,回到追踪状态时读入该保存的环境地图,能删除迷路中登录在环境地图中的精度低的信息,能提升环境地图的精度。
(实施方式2)
在实施方式1所涉及的自主移动装置100中,SLAM处理为迷路中登录于环境地图的数据(障碍物的位置等信息),在SLAM处理恢复到追踪状态时会丢失。在SLAM处理为迷路中,由于自己位置的估计精度低,因此这些数据的精度也变低,自主移动装置100通过将SLAM处理为迷路中的数据在SLAM处理恢复到追踪状态时全部删除,来在环境地图中仅留下精度高的信息。但在刚从追踪状态成为迷路状态后的一定期间,里程计的信息的精度的降低并没有那么大。另外,即将恢复到追踪状态前的里程计的信息能通过基于恢复后的自己位置进行倒算来抑制精度的降低。为此,SLAM处理的追踪信息在刚变化为迷路状态后以及即将变化为追踪状态前的各自的一定期间,利用使用里程计的信息估计出的自己位置的信息,对这样的实施方式2进行说明。
如图10所示那样,实施方式2所涉及的自主移动装置即使SLAM处理成为迷路状态(迷路定时:T11),也用里程计的信息估计自己位置,在经过给定的时间(基准延迟时间)后保存该时间点(基准定时:T12)的环境地图。然后,若SLAM处理恢复成追踪状态,则在该时间点(追踪定时:T2)读入先前保存的环境地图,并基于恢复成追踪状态后的自己位置来补正即将恢复到追踪状态前的里程计的信息,基于该补正过的里程计信息将在迷路中得到的物体的位置登录到环境地图。如此,能不失去刚迷路后和即将追踪前的精度没有太降低的环境地图的信息地删除迷路中的精度低的环境地图的信息,因此能防止环境地图的精度降低。在本实施方式中,基准定时(T12)=迷路定时(T11)+基准延迟时间。
实施方式2所涉及的自主移动装置101如图11所示那样,是在实施方式1所涉及的自主移动装置100的存储部20追加了物***置存储部26的结构。
在物***置存储部26中,在非驱动系位置估计部12的SLAM处理的追踪信息为迷路状态的期间,存储物***置取得部13取得的周围的物体的位置(以自主移动装置101的位置以及姿态为基准的相对位置)、和驱动系位置估计部11估计出的自己位置以及姿态的基准保存时间(例如3分钟)份的履历。物***置取得部13由于取得表示到距离传感器31检测到的物体的距离的测距数据和检测该物体的角度,因此物***置存储部26存储该测距数据以及角度、和驱动系位置估计部11估计出的自己位置以及姿态的履历。
自主移动装置101的控制部10所执行的软件模块的整体结构,与实施方式1所涉及的自主移动装置100相同,在图4中示出。但由于自主移动装置101的地图生成模块53的处理与实施方式1所涉及的地图生成模块53的处理(图7)不同,因此参考图12来进行说明。除了这点以外,自主移动装置101与自主移动装置100相同。
另外,与实施方式1同样,以下将存储于地图存储部23的环境地图用二维排列变量MA[i,j]表征,将存储于地图保管部24的环境地图用二维排列MS[i,j]表征,将表示是否在地图保管部24中正保存有环境地图的标记变量用变量SF表征。另外,将保存于物***置存储部26的数据(从距离传感器31得到的测距数据以及角度和从驱动系位置估计部11得到的自己位置以及姿态)用结构体的一维排列变量BS[k]表征,将保存这些数据的时刻用一维排列变量TS[k]表征,将保存于物***置存储部26的数据的个数用变量BC表征。BC的初始值是0,k的值的范围成为0≤k<BC。
首先地图生成部14将存储于地图存储部23的环境地图初始化(步骤S401)。另外,这时地图保管部24以及物***置存储部26也进行初始化。具体地,对0≤i≤xsize,0≤j≤ysize的全部i以及j执行MA[i,j]=0。然后对变量SF以及变量BC置位0。
接下来控制部10判定自主移动装置100是否结束动作(步骤S402)。若自主移动装置100结束动作(步骤S402“是”),则结束处理。若未结束动作(步骤S402“否”),则物***置取得部13从测距数据存储部25取得测距数据以及角度(步骤S403)。然后控制部10进行自己位置估计处理来取得当前的自己位置以及姿态(步骤S404)。该自己位置估计处理与实施方式1相同,是图8所示的处理内容。
接下来控制部10判定SLAM处理的追踪状态是否是「迷路中」(步骤S405)。在此,成为判定对象的追踪状态在步骤S404中执行的自己位置估计处理(图8)的步骤S202取得。若SLAM处理的追踪状态不是「迷路中」(步骤S405“否”),则控制部10判定为环境地图正保存在地图保管部24中(步骤S411)。这能通过标记变量SF的值是1还是0来判定。若环境地图未保存在地图保管部24(步骤S411“否”),则前进到步骤S419。
若环境地图正保存在地图保管部24(步骤S411“是”),则地图控制部16将地图存储部23的环境地图清空,并将正保存在地图保管部24的环境地图读入到地图存储部23,将保存在地图保管部24的环境地图删除(步骤S412)。具体地,对0≤i≤xsize,0≤j≤ysize的全部i以及j执行MA[i,j]=MS[i,j],将变量SF置位成0。
然后地图控制部16判定在物***置存储部26中是否存在数据(步骤S413)。具体判定变量BC是1以上还是0。若BC为1以上,则表征存在数据,若BC为0,则表征不存在数据。若在物***置存储部26不存在数据(步骤S413“否”),则前进到步骤S419。
若在物***置存储部26存在数据(步骤S413“是”),则地图控制部16从物***置存储部26取得测距数据以及角度和自己位置以及姿态(步骤S414)。具体地,地图控制部16取得结构体的一维排列变量BS[BC-1]的值。然后地图控制部16求取在步骤S414取得的自己位置以及姿态与驱动系位置估计部11估计出的最新的自己位置以及姿态的差分(步骤S415)。接下来,地图控制部16对非驱动系位置估计部12估计出的最新的自己位置以及姿态上加上在步骤S415求得的差分,来估计过去的自己位置(步骤S416)。
然后地图控制部16使用估计出的过去的自己位置的信息将在步骤S414取得的测距数据以及角度变换成环境地图中的坐标,登录到环境地图(步骤S417)。然后地图控制部16将在步骤S414取得的测距数据以及角度和自己位置以及姿态从物***置存储部26删除(步骤S418)。具体地,将变量BC的值减1。然后回到步骤S413。
另一方面,若在步骤S405的判定中SLAM处理的追踪状态是「迷路中」(步骤S405“是”),则地图控制部16判定SLAM处理的追踪状态从「追踪中」变化到「迷路中」起是否经过了基准延迟时间(例如3分钟)(步骤S406)。若未经过基准延迟时间(步骤S406“否”),则前进到步骤S419。
若经过了基准延迟时间(步骤S406“是”),则地图控制部16判定在地图保管部24是否保存环境地图完毕(步骤S407)。具体来说,判定变量SF是1还是0。若环境地图在地图保管部24保存完毕(步骤S407“是”),则前进到步骤S409。若环境地图在地图保管部24未保存完毕(步骤S407“否”),则地图控制部16将正存储于地图存储部23的环境地图保存到地图保管部24(步骤S408)。具体地,对0≤i≤xsize,0≤j≤ysize的全部i以及j执行MS[i,j]=MA[i,j],对变量SF置位1。然后前进到步骤S409。
在步骤S409,地图控制部16将在步骤S403取得的测距数据以及角度和在步骤S404取得的自己位置以及姿态保存到物***置存储部26。具体地,在结构体的一维排列变量BS[BC]保存这些值(测距数据以及角度和自己位置以及姿态),将当前时刻保存到一维排列变量TS[BC],将变量BC的值加1。
接下来,地图控制部16将保存于物***置存储部26的数据当中基准保存时间之前的数据从物***置存储部26删除(步骤S410)。具体地,寻找0≤k<BC-1的范围的一维排列TS[k]的值当中小于(当前时刻-基准保存时间)的值,若找到(将找到的值设为TS[p]),则对成为0≤k<BC-p-1的全部k按照k的从小到大的顺序依次执行BS[k]=BS[k+p+1]以及TS[k]=TS[k+p+1]。然后从变量BC减去p+1。
然后地图生成部14使用在步骤S404取得的自己位置以及姿态的信息,将在步骤S403取得的测距数据以及角度变换成环境地图中的坐标,并登录到环境地图(步骤S419)。这里的向环境地图的登录的具体例与图7的步骤S109的具体例同样。然后回到步骤S402。
在以上说明的实施方式2所涉及的地图生成模块中,即使非驱动系位置估计部12的SLAM处理成为迷路状态,只要在到经过基准延迟时间为止的期间SLAM处理回到追踪状态,就不会失去在该期间记录在环境地图的信息。另外,在直到经过基准延迟时间为止的期间SLAM处理未回到追踪状态的情况下,也能缩短不在环境地图记录信息的时间。然后在基准延迟时间的期间以及基准保存时间的期间,由于里程计的信息中所含的误差小,因此还能抑制环境地图的精度的降低。
另外,在实施方式2中,在图12的步骤S406,地图控制部16判定SLAM处理的追踪状态从「追踪中」变化为「迷路中」起是否经过了基准延迟时间,但并不限于此。例如在步骤S406,地图控制部16判定SLAM处理的追踪状态从「追踪中」变化为「迷路中」起自主移动装置101是否移动了给定距离(例如3m),并进行处理,使得若移动了给定距离则前进到步骤S407,若未移动给定距离则前进到步骤S419。这是因为,认为由于自主移动装置101的里程计的精度的降低也依赖于移动距离,因此在不太移动的期间即使持续基于里程计的自己位置的估计,精度的降低也少。由此能进一步缩短不在环境地图记录信息的时间。
另外,在实施方式2中,在图12的步骤S410,地图控制部16将保存于物***置存储部26的数据当中、基准保存时间之前的数据从物***置存储部26删除,但并不限于此。例如可以在步骤S410,地图控制部16将保存于物***置存储部26的过去的数据当中从当前的自己位置离开基准移动距离(例如3m)(沿着移动路径的路程)的数据从物***置存储部26删除。由此,在追踪恢复时,自主移动装置101能将该时间点(追踪定时:T2)的距自己位置基准移动距离以内的移动范围内的物***置存储部的数据登录到环境地图。如上述那样,这是因为,认为在移动距离短的期间基于里程计所进行的自己位置的估计精度的降低少。由此能进一步缩短不在环境地图记录信息的时间。
(变形例1)
在上述的各实施方式中,非驱动系位置估计部12通过SLAM处理来估计自主移动装置100、101的自己位置以及姿态,但并不限于此。例如自主移动装置也可以具备取得来自GPS(Global Positioning System,全球定位***)卫星的电波的电波接收部,非驱动系位置估计部12基于来自GPS卫星的电波中所含的信息来估计自己位置以及姿态。另外,并不限于来自GPS卫星的电波,也可以使用来自便携电话的基站的电波、来自无线LAN(Local AreaNetwork,局域网)的基站的电波、RFID(Radio Frequency Identifier,射频标签)等来估计自己位置。另外,在该情况下,通过自主移动装置具备方位传感器,能得到自主移动装置的朝向(姿态)的信息。
在非驱动系位置估计部12用电波来估计自己位置的情况下,控制部10基于电波的接收状况来判定非驱动系位置估计部12能否估计自己位置。即,若非驱动系位置估计部12能接收能估计自己位置的电波,就是追踪状态,若不能接收能估计自己位置的电波,就是迷路状态。
以上的变形例1所涉及的自主移动装置在不能通过SLAM处理进行自己位置的估计的情况下,也能基于来自电波接收部的信息生成精度高的环境地图。另外,在不再能从电波接收部得到信息的情况下保存环境地图,在变得能从电波接收部得到信息的情况下读入该保存的环境地图,从而能删除在变得不再能用电波接收部得到信息的期间登录在环境地图的精度低的信息,能提升环境地图的精度。
(变形例2)
在上述的各实施方式中,传感器部30具备距离传感器31,但并不限于此。在此说明传感器部30具备检测碰撞到物体的碰撞传感器的变形例2。
变形例2所涉及的自主移动装置102如图13所示那样,是在传感器部30追加检测向物体的碰撞的碰撞传感器32、在存储部20追加碰撞数据存储部27的结构。在碰撞数据存储部27存储检测到碰撞的碰撞传感器32的基于自主移动装置102中的位置得到的表示碰撞的物体的位置(以自主移动装置102的中心位置以及正面为基准的相对位置以及方向)的数据(碰撞数据)。
碰撞传感器32的个数是任意的,在图14所示的示例中,自主移动装置102作为碰撞传感器32而具备自主移动装置102的正前方的碰撞传感器32b、比正前方稍靠右的碰撞传感器32a和比正前方稍靠左的碰撞传感器32c。若物体碰撞到这些碰撞传感器32,被碰撞的碰撞传感器32就将检测到碰撞通知给控制部10。于是控制部10基于该时间点的自主移动装置102的自己位置以及朝向和通知碰撞检测的碰撞传感器32的自主移动装置102中的位置,来将表示碰撞的物体的位置的碰撞数据登录到碰撞数据存储部27。
自主移动装置102的控制部10所执行的软件模块的整体结构,如图15所示那样,成为对参考图4说明的自主移动装置100的软件模块的整体结构追加碰撞传感器32的结构。自主移动装置102的地图生成模块53还使用从碰撞传感器32得到的碰撞数据生成环境地图。除了这点以外都与自主移动装置100相同。
参考图16来说明自主移动装置102的地图生成模块53的处理内容。该处理与参考图7说明的自主移动装置100的地图生成模块53的处理内容除了一部分以外其他都共通,因此以不同点为中心进行说明。
从步骤S101到步骤S109的处理与图7的处理相同。紧接着步骤S109,物***置取得部13从碰撞数据存储部27取得碰撞数据(步骤S111)。然后,地图生成部14使用在步骤S103取得的自己位置以及姿态的信息,将在步骤S111取得的碰撞数据变换成环境地图中的坐标,登录到环境地图(步骤S112)。然后回到步骤S102。
以下说明步骤S112中的将碰撞数据登录到环境地图的具体例。例如,若在碰撞传感器32检测到的物体的环境地图中的坐标是[m,n],则地图生成部14首先执行MA[m,n]=MA[m,n]+Δc。在此,Δc是碰撞传感器32确认到各格子点上的物体的存在时对该格子点的值上加上的更新量,Δc的值例如是10。其中,在若加上Δc则MA[m,n]超过最大值Lmax的情况下,设为MA「m,n]=Lmax。
接下来,地图生成部14从与自主移动装置102的当前的自己位置对应的格子点的值减去更新量Δc。具体地,若自己位置的坐标是[p,q],则执行MA[p,q]=MA[p,q]-Δc。其中,在若减去Δc则MA[p,q]低于最小值Lmin的情况下,设为MA[p,q]=Lmin。
另外,上述是地图更新方法的一例。认为从距离传感器31得到的数据多包含误差,但在从碰撞传感器32得到的数据中几乎不含误差。因此可以是,在碰撞传感器32检测到的物体的环境地图中的坐标是[m,n]的情况下,地图生成部14执行MA[m,n]=Lmax,在这时的自己位置的坐标是[p,q]的情况下,地图生成部14执行MA[p,q]=Lmin。另外,也可以能将Δc的值按每个格子点的各坐标来对值进行变更。
另外也可以是,地图生成部14分开准备从距离传感器31得到的环境地图和从碰撞传感器32得到的环境地图,生成将它们综合的环境地图。例如可以,地图生成部14在二维排列MA[i,j]生成从距离传感器31得到的环境地图,在二维排列MB[i,j]生成从碰撞传感器32得到的环境地图,作为将它们综合的环境地图,如以下那样生成二维排列MI[i,j]。(1)若MA[i,j]<0且MB[i,j]<0,则MI[i,j]=min(MA[i,j],MB[i,j]);(2)若MA[i,j]≥0或MB[i,j]≥0,则MI[i,j]=max(MA[i,j],MB[i,j])
在地图生成部14如此按传感器部30中所含的多个传感器的每一个来准备多个环境地图的情况下,在地图保管部24中也准备能保存多个环境地图的区域,地图控制部16将多个环境地图分别保存到地图保管部24。例如地图生成部14在二维排列MA[i,j]生成从距离传感器31得到的环境地图,在二维排列MB[i,j]生成从碰撞传感器32得到的环境地图,在这样的情况下,在地图保管部24中存储用于保存从距离传感器31得到的环境地图的二维排列MAS[i,j]和用于保存从碰撞传感器32得到的环境地图的二维排列MBS[i,j]。
通过以上的地图生成模块的处理,即使存在距离传感器31不能检测的物体,变形例2所涉及的自主移动装置102只要碰撞到物体就能通过碰撞传感器32检测到该物体,能将其登录到环境地图。并且,若该登录时SLAM处理是追踪状态,则该物体的信息作为精度高的信息处置,因此不会从环境地图删除,若在登录时SLAM处理是迷路状态,则该物体的信息作为精度低的信息处置,在恢复到追踪状态时删除。如此能提升环境地图的精度。
(变形例3)
传感器部30所具备的传感器并不限于距离传感器31以及碰撞传感器32。传感器部30可以具备检测周围是否存在地面来检测不存在地面的场所的绝壁(洞、悬崖等)的绝壁传感器,地图生成部14将绝壁传感器检测到的绝壁的信息也记录到环境地图。另外,传感器部30例如可以具备检测不佳道路的地面传感器、检测地上淋湿的部分或积水的水分传感器等。通过增加传感器部30所具备的传感器的种类,自主移动装置能生成能更灵活应对各种环境的环境地图。
另外,在上述实施方式1以及变形例2中,在测距数据存储部25中将表示到距离传感器31检测到的物体的距离的测距数据(从自主移动装置起的相对位置数据)和检测该物体的角度的信息一起存储,但并不限于此。例如可以在测距数据存储部25中存储表示在距离传感器31检测到的物体(障碍物)的位置(绝对位置)的数据,该数据基于在离传感器31观测(扫描)周围时的自主移动装置的自己位置以及朝向、和距离传感器31取得的测距数据以及角度而得到。如此,在地图生成模块(图7、图16)中,在将测距数据登录到环境地图时,不需要将测距数据变换成地图的坐标的处理。
关于上述变形例2中的碰撞数据存储部27也同样,都存储表示碰撞的物体(障碍物)的位置(绝对位置)的数据,该数据基于碰撞传感器32检测到碰撞时的自主移动装置102的自己位置以及朝向、和检测到该碰撞的碰撞传感器32的自主移动装置102中的位置而得到。如此,在地图生成模块(图16)中,在将碰撞数据登录到环境地图时,不需要将碰撞数据变换成地图的坐标的处理。
另外,在上述的各实施方式中,也可以没有距离传感器31,取而代之具备深度摄像机或声呐,将由此观测到的障碍物记录到环境地图。
另外,在上述的各实施方式中,也可以没有距离传感器31,通过利用摄像部41拍摄的图像的visual SLAM来检测障碍物,将以visual SLAM检测到的障碍物记录到环境地图。
另外,自主移动装置100、101、102的各功能能通过通常的PC(Personal Computer,个人计算机)等计算机也能实施。具体地,在上述实施方式中,说明为自主移动装置100、101、102所进行的自主移动控制处理的程序预先存储在存储部20的ROM中。但也可以将程序容纳在软盘、CD-ROM(Compact Disc Read Only Memory,只读光盘)、DVD(DigitalVersatile Disc,数字多功能盘)以及MO(Magneto-Optical Disc,光磁盘)等计算机可读的记录介质来分发,通过将该程序读入到计算机进行安装来实现上述的各功能,构成这样的计算机。
以上说明了本发明的优选的实施方式,但本发明并不限定于相关的特定的实施方式,在本发明中包含权利要求的范围所记载的发明和其等同的范围。

Claims (19)

1.一种自主移动装置,一边生成环境地图一边估计自己位置,具备:
驱动系位置估计部,其基于来自构成为使所述自主移动装置移动的驱动部的信息来估计所述自主移动装置的自己位置;
非驱动系位置估计部,其基于来自所述驱动部以外的信息来估计所述自己位置;
物***置取得部,其取得所述自主移动装置的周围的物体的位置;
地图生成部,其基于所述驱动系位置估计部或所述非驱动系位置估计部估计出的自己位置和所述物***置取得部取得的物体的位置,来在地图存储部生成包含所述物体的位置的环境地图;和
地图控制部,其在成为所述非驱动系位置估计部变得能估计所述自己位置的追踪定时的情况下,使用在根据所述非驱动系位置估计部不再能估计所述自己位置的迷路定时确定的基准定时存储于所述地图存储部的环境地图。
2.根据权利要求1所述的自主移动装置,其中,
所述地图控制部将在所述基准定时存储于所述地图存储部的环境地图保存在地图保管部,在成为所述追踪定时的情况下使保存于所述地图保管部的环境地图回到所述地图存储部。
3.根据权利要求1所述的自主移动装置,其中,
所述地图控制部停止在所述基准定时存储于所述地图存储部的环境地图的更新,在成为所述追踪定时的情况下恢复所述环境地图的更新。
4.根据权利要求1所述的自主移动装置,其中,
所述自主移动装置还具备:
摄像部,其取得周围的图像,
所述非驱动系位置估计部基于所述摄像部取得的图像的信息来估计自己位置。
5.根据权利要求1所述的自主移动装置,其中,
所述物***置取得部使用来自取得到所述物体的距离即测距数据的距离传感器的信息来取得所述物体的位置。
6.根据权利要求1所述的自主移动装置,其中,
所述物***置取得部使用来自检测碰撞到所述物体的碰撞传感器的信息来取得所述物体的位置。
7.根据权利要求1所述的自主移动装置,其中,
所述基准定时是从在所述非驱动系位置估计部不再能估计所述自己位置的迷路定时起基准延迟时间后或给定距离移动后。
8.根据权利要求7所述的自主移动装置,其中,
所述自主移动装置还具备:
物***置存储部,其保存所述物***置取得部取得的物体的位置以及所述驱动系位置估计部估计出的自己位置的到基准保存时间前为止或基准移动距离以内的履历,
在成为所述追踪定时的情况下,所述地图控制部基于所述非驱动系位置估计部估计出的自己位置和保存于所述物***置存储部的物体的位置以及自己位置,将到所述基准保存时间前为止或所述基准移动距离以内的所述物体的位置记录在所述基准定时的环境地图中来使用。
9.根据权利要求8所述的自主移动装置,其中,
在成为所述追踪定时的情况下,所述地图控制部求取所述非驱动系位置估计部估计出的自己位置与所述驱动系位置估计部估计出的自己位置的差分,将所述差分和保存于所述物***置存储部的物体的位置以及自己位置相加,来估计到所述基准保存时间前为止或所述基准移动距离以内的所述物体的位置,并记录到所述环境地图。
10.根据权利要求1~9中任一项所述的自主移动装置,其中,
所述地图生成部算出与所述物***置取得部取得的所述物体的位置对应的所述环境地图上的位置上的所述物体的存在概率,将所述存在概率记录到所述环境地图。
11.根据权利要求10所述的自主移动装置,其中,
所述物***置取得部对每个给定的方向确认物体的存否,在确认到物体的存在的情况下,取得到所述物体的距离即测距数据,
所述地图生成部将取得所述测距数据的次数相对所述物***置取得部确认过所述物体的存否的次数的比例作为所述存在概率记录到所述环境地图。
12.根据权利要求10所述的自主移动装置,其中,
所述地图生成部通过对数几率将所述存在概率记录到所述环境地图。
13.根据权利要求1所述的自主移动装置,其中,
所述地图生成部按所述物***置取得部取得所述物体的位置所用的信息的每个种类生成多个环境地图,
所述地图控制部将所述多个环境地图分别个别固定。
14.一种自主移动装置,一边生成环境地图一边估计自己位置,
在不再能估计所述自主移动装置的自己位置的情况下停止将所述环境地图保存到地图保管部,或者停止所述环境地图的更新,在变得能估计所述自己位置的情况下,使用保存的所述环境地图或停止了更新的所述环境地图。
15.根据权利要求14所述的自主移动装置,其中,
在不再能以用于生成环境地图的拍摄图像估计所述自己位置的迷路期间中,使用所述自主移动装置的里程计的信息来生成简易地图并使用,在变得能以所述拍摄图像估计所述自己位置的情况下,将所述简易地图置换成不再能估计所述自己位置的情况下保存的环境地图或停止更新的环境地图。
16.根据权利要求14所述的自主移动装置,其中,
在不再能以用于生成所述环境地图的拍摄图像估计所述自己位置的迷路期间中,预先保存所述自主移动装置的里程计的信息,在变得能以所述拍摄图像估计所述自己位置的情况下,将以所述拍摄图像估计出的自己位置作为基准,按照预先保存的所述里程计的信息来估计过去的所述自己位置,使其反映到所述环境地图。
17.一种自主移动方法,用于一边生成环境地图一边估计自己位置的自主移动装置,所述自主移动方法包括:
驱动系位置估计步骤,基于来自构成为使所述自主移动装置移动的驱动部的信息来估计所述自主移动装置的自己位置;
非驱动系位置估计步骤,基于来自所述驱动部以外的信息来估计所述自己位置;
物***置取得步骤,取得所述自主移动装置的周围的物体的位置;
地图生成步骤,基于在所述驱动系位置估计步骤或所述非驱动系位置估计步骤估计出的自己位置、和在所述物***置取得步骤取得的物体的位置来在地图存储部生成包含所述物体的位置的环境地图;和
地图控制步骤,在所述非驱动系位置估计步骤中成为能估计所述自己位置的追踪定时的情况下,使用在根据所述非驱动系位置估计步骤中不再能估计所述自己位置的迷路定时确定的基准定时存储于所述地图存储部的环境地图。
18.一种自主移动方法,用于一边生成环境地图一边估计自己位置的自主移动装置,
在所述自主移动装置不再能估计自己位置的情况下停止将所述环境地图保存在地图保管部,或停止所述环境地图的更新,在所述自主移动装置变得能估计自己位置的情况下,使用保存的所述环境地图或停止更新的环境地图。
19.一种程序记录介质,存储有程序,该程序用于使计算机执行:
驱动系位置估计步骤,基于来自构成为使自主移动装置移动的驱动部的信息来估计所述自主移动装置的自己位置;
非驱动系位置估计步骤,基于来自所述驱动部以外的信息来估计所述自己位置;
物***置取得步骤,取得所述自主移动装置的周围的物体的位置;
地图生成步骤,基于所述驱动系位置估计步骤或所述非驱动系位置估计步骤中估计出的自己位置、和所述物***置取得步骤中取得的物体的位置来在地图存储部生成包含所述物体的位置的环境地图;以及
地图控制步骤,在所述非驱动系位置估计步骤中成为能估计所述自己位置的追踪定时的情况下,使用在所述非驱动系位置估计步骤中根据不再能估计所述自己位置的迷路定时确定的基准定时存储于所述地图存储部的环境地图。
CN201810727535.7A 2017-07-05 2018-07-04 自主移动装置、自主移动方法以及程序存储介质 Active CN109213146B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-131894 2017-07-05
JP2017131894A JP7087290B2 (ja) 2017-07-05 2017-07-05 自律移動装置、自律移動方法及びプログラム

Publications (2)

Publication Number Publication Date
CN109213146A true CN109213146A (zh) 2019-01-15
CN109213146B CN109213146B (zh) 2021-07-13

Family

ID=64903168

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810727535.7A Active CN109213146B (zh) 2017-07-05 2018-07-04 自主移动装置、自主移动方法以及程序存储介质

Country Status (3)

Country Link
US (1) US10698416B2 (zh)
JP (1) JP7087290B2 (zh)
CN (1) CN109213146B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112578789A (zh) * 2019-09-30 2021-03-30 日本电产株式会社 移动体
CN113748392A (zh) * 2019-05-17 2021-12-03 村田机械株式会社 输送车***、输送车以及控制方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11835343B1 (en) 2004-08-06 2023-12-05 AI Incorporated Method for constructing a map while performing work
US11274929B1 (en) * 2017-10-17 2022-03-15 AI Incorporated Method for constructing a map while performing work
US10422648B2 (en) * 2017-10-17 2019-09-24 AI Incorporated Methods for finding the perimeter of a place using observed coordinates
JP6687313B1 (ja) * 2019-03-26 2020-04-22 三菱ロジスネクスト株式会社 搬送システム
KR102224637B1 (ko) 2019-07-05 2021-03-08 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102275300B1 (ko) 2019-07-05 2021-07-08 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102361130B1 (ko) 2019-07-11 2022-02-09 엘지전자 주식회사 이동 로봇 및 그 제어방법
KR102297496B1 (ko) * 2019-07-11 2021-09-02 엘지전자 주식회사 인공지능을 이용한 이동 로봇 및 이동 로봇의 제어방법
JP7293057B2 (ja) * 2019-09-13 2023-06-19 株式会社東芝 放射線量分布表示システムおよび放射線量分布表示方法
US11592570B2 (en) * 2020-02-25 2023-02-28 Baidu Usa Llc Automated labeling system for autonomous driving vehicle lidar data
JP2022065749A (ja) * 2020-10-16 2022-04-28 株式会社キビテク 移動体の制御システム
WO2022172831A1 (ja) * 2021-02-10 2022-08-18 株式会社Preferred Networks 情報処理装置
CN117589154B (zh) * 2024-01-19 2024-05-24 深圳竹芒科技有限公司 自移动设备的重定位方法、自移动设备和可读存储介质

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001060111A (ja) * 1999-08-20 2001-03-06 Mitsubishi Heavy Ind Ltd 無人搬送車の走行制御システム
JP2004178341A (ja) * 2002-11-28 2004-06-24 Toyota Industries Corp 軌道式ループ台車の搬送制御方法及び搬送システム
CN1525744A (zh) * 2003-02-27 2004-09-01 卡西欧计算机株式会社 相机装置及相机装置的启动方法、程序
US20040243286A1 (en) * 2003-01-31 2004-12-02 Lilley Hal Dwayne Anti hijacking fail-safe system with alert locator tracking capabilities
WO2006014893A2 (en) * 2004-07-26 2006-02-09 Harold Harrison System and method for determining rail safety limits
WO2009017884A1 (en) * 2007-08-01 2009-02-05 General Electric Company Method for locomotive navigation and track identification using video
CN102811352A (zh) * 2011-06-03 2012-12-05 卡西欧计算机株式会社 运动图像生成方法及运动图像生成装置
CN104583888A (zh) * 2012-09-28 2015-04-29 株式会社日立制作所 自主移动装置及自主移动***
CN104858871A (zh) * 2015-05-15 2015-08-26 珠海市一微半导体有限公司 机器人***及其自建地图和导航的方法
CN105380562A (zh) * 2014-09-03 2016-03-09 戴森技术有限公司 移动式机器人
CN105867381A (zh) * 2016-04-25 2016-08-17 广西大学 一种基于概率地图的工业机器人路径搜索优化算法
CN106541407A (zh) * 2015-09-18 2017-03-29 三星电子株式会社 清洁机器人及其控制方法
CN206096933U (zh) * 2016-09-29 2017-04-12 翁锦祥 一种智能物料搬运***
CN106647734A (zh) * 2016-10-12 2017-05-10 北京京东尚科信息技术有限公司 自动导引车、路径规划方法与装置
CN106681323A (zh) * 2016-12-22 2017-05-17 北京光年无限科技有限公司 一种用于机器人的交互输出方法以及机器人
CN106774326A (zh) * 2016-12-23 2017-05-31 湖南晖龙股份有限公司 一种导购机器人及其导购方法
CN106859504A (zh) * 2015-12-10 2017-06-20 卡西欧计算机株式会社 自主移动装置、自主移动方法
CN106896807A (zh) * 2015-12-17 2017-06-27 卡西欧计算机株式会社 自主移动装置以及自主移动方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5141507B2 (ja) * 2008-08-25 2013-02-13 村田機械株式会社 自律移動装置

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001060111A (ja) * 1999-08-20 2001-03-06 Mitsubishi Heavy Ind Ltd 無人搬送車の走行制御システム
JP2004178341A (ja) * 2002-11-28 2004-06-24 Toyota Industries Corp 軌道式ループ台車の搬送制御方法及び搬送システム
US20040243286A1 (en) * 2003-01-31 2004-12-02 Lilley Hal Dwayne Anti hijacking fail-safe system with alert locator tracking capabilities
CN1525744A (zh) * 2003-02-27 2004-09-01 卡西欧计算机株式会社 相机装置及相机装置的启动方法、程序
WO2006014893A2 (en) * 2004-07-26 2006-02-09 Harold Harrison System and method for determining rail safety limits
WO2009017884A1 (en) * 2007-08-01 2009-02-05 General Electric Company Method for locomotive navigation and track identification using video
CN102811352A (zh) * 2011-06-03 2012-12-05 卡西欧计算机株式会社 运动图像生成方法及运动图像生成装置
CN104583888B (zh) * 2012-09-28 2016-12-21 株式会社日立制作所 自主移动装置及自主移动***
CN104583888A (zh) * 2012-09-28 2015-04-29 株式会社日立制作所 自主移动装置及自主移动***
CN105380562A (zh) * 2014-09-03 2016-03-09 戴森技术有限公司 移动式机器人
CN104858871A (zh) * 2015-05-15 2015-08-26 珠海市一微半导体有限公司 机器人***及其自建地图和导航的方法
CN106541407A (zh) * 2015-09-18 2017-03-29 三星电子株式会社 清洁机器人及其控制方法
CN106859504A (zh) * 2015-12-10 2017-06-20 卡西欧计算机株式会社 自主移动装置、自主移动方法
CN106896807A (zh) * 2015-12-17 2017-06-27 卡西欧计算机株式会社 自主移动装置以及自主移动方法
CN105867381A (zh) * 2016-04-25 2016-08-17 广西大学 一种基于概率地图的工业机器人路径搜索优化算法
CN206096933U (zh) * 2016-09-29 2017-04-12 翁锦祥 一种智能物料搬运***
CN106647734A (zh) * 2016-10-12 2017-05-10 北京京东尚科信息技术有限公司 自动导引车、路径规划方法与装置
CN106681323A (zh) * 2016-12-22 2017-05-17 北京光年无限科技有限公司 一种用于机器人的交互输出方法以及机器人
CN106774326A (zh) * 2016-12-23 2017-05-31 湖南晖龙股份有限公司 一种导购机器人及其导购方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113748392A (zh) * 2019-05-17 2021-12-03 村田机械株式会社 输送车***、输送车以及控制方法
CN112578789A (zh) * 2019-09-30 2021-03-30 日本电产株式会社 移动体

Also Published As

Publication number Publication date
JP7087290B2 (ja) 2022-06-21
US10698416B2 (en) 2020-06-30
US20190011929A1 (en) 2019-01-10
CN109213146B (zh) 2021-07-13
JP2019016089A (ja) 2019-01-31

Similar Documents

Publication Publication Date Title
CN109213146A (zh) 自主移动装置、自主移动方法以及程序存储介质
JP7082545B2 (ja) 情報処理方法、情報処理装置およびプログラム
KR102158029B1 (ko) 전파 지도를 이용한 실내위치 인식 방법 및 장치
US10698100B2 (en) Method and device for determining the position of a vehicle
TWI548258B (zh) 藉由評估基本運動模式來進行運動偵測的方法和裝置
CN103925923B (zh) 一种基于自适应粒子滤波器算法的地磁室内定位***
US9544730B2 (en) Applying indoor magnetic fields for acquiring movement information
JP3561473B2 (ja) 物***置の追跡・検知方法及びビークル
JP2019518222A (ja) リアルタイムオンラインエゴモーション推定を有するレーザスキャナ
CN115086606A (zh) 移动目标的监控方法、装置、***、存储介质及机器人
CN109213142B (zh) 自主移动装置、自主移动方法以及存储介质
KR20190045915A (ko) 불안정한 센서를 캘리브레이트하기 위한 시스템 및 방법
US10545031B2 (en) Portable terminal device, recording medium, and correction method
EP3311186A1 (en) Systems and methods for locating tags within a space
JP4984659B2 (ja) 自車両位置推定装置
US20150308831A1 (en) Apparatus for inferring pedestrian position based on pedestrian movement detection, and method therefor
JPWO2018061084A1 (ja) 自己位置推定方法及び自己位置推定装置
JP2021103593A (ja) 自律移動装置、地図情報の処理方法及びプログラム
CN104197929A (zh) 一种基于地磁和wifi的定位方法、装置及***
CN207908969U (zh) 一种固态雷达清扫机器人
EP2345870A2 (en) On-board unit for vehicle telemetry
CN110018684A (zh) 一种固态雷达清扫机器人
JP2016218026A (ja) 情報処理装置、測位方法およびプログラム
CN108414969A (zh) 基于无线传感器网络实现移动机器人最大范围定位的方法
JP6664258B2 (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