CN111033425A - 移动体、位置推断装置以及计算机程序 - Google Patents
移动体、位置推断装置以及计算机程序 Download PDFInfo
- Publication number
- CN111033425A CN111033425A CN201880053276.2A CN201880053276A CN111033425A CN 111033425 A CN111033425 A CN 111033425A CN 201880053276 A CN201880053276 A CN 201880053276A CN 111033425 A CN111033425 A CN 111033425A
- Authority
- CN
- China
- Prior art keywords
- environment map
- posture
- partial environment
- partial
- 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.)
- Withdrawn
Links
- 238000004590 computer program Methods 0.000 title claims description 16
- 230000009466 transformation Effects 0.000 claims abstract description 29
- 230000015654 memory Effects 0.000 claims description 24
- 238000004422 calculation algorithm Methods 0.000 claims description 6
- 230000007613 environmental effect Effects 0.000 claims description 6
- 101100400452 Caenorhabditis elegans map-2 gene Proteins 0.000 claims description 2
- 230000036544 posture Effects 0.000 description 67
- 238000010586 diagram Methods 0.000 description 36
- 230000006854 communication Effects 0.000 description 30
- 238000004891 communication Methods 0.000 description 30
- 238000000034 method Methods 0.000 description 15
- 230000008859 change Effects 0.000 description 14
- 238000012545 processing Methods 0.000 description 14
- 230000032258 transport Effects 0.000 description 14
- 230000014509 gene expression Effects 0.000 description 13
- 239000011159 matrix material Substances 0.000 description 11
- 238000005259 measurement Methods 0.000 description 11
- 239000003550 marker Substances 0.000 description 7
- 230000008569 process Effects 0.000 description 6
- 239000004065 semiconductor Substances 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D61/00—Motor vehicles or trailers, characterised by the arrangement or number of wheels, not otherwise provided for, e.g. four wheels in diamond pattern
- B62D61/10—Motor vehicles or trailers, characterised by the arrangement or number of wheels, not otherwise provided for, e.g. four wheels in diamond pattern with more than four wheels
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D57/00—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track
- B62D57/02—Vehicles characterised by having other propulsion or other ground- engaging means than wheels or endless track, alone or in addition to wheels or endless track with ground-engaging propulsion means, e.g. walking members
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B62—LAND VEHICLES FOR TRAVELLING OTHERWISE THAN ON RAILS
- B62D—MOTOR VEHICLES; TRAILERS
- B62D63/00—Motor vehicles or trailers not otherwise provided for
- B62D63/02—Motor vehicles
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/26—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
- G01C21/28—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network with correlation of data from several navigational instruments
- G01C21/30—Map- or contour-matching
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01C—MEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
- G01C21/00—Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
- G01C21/38—Electronic maps specially adapted for navigation; Updating thereof
- G01C21/3804—Creation or updating of map data
- G01C21/3833—Creation or updating of map data characterised by the source of data
- G01C21/3837—Data obtained from a single source
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0274—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01S—RADIO 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/00—Systems using the reflection or reradiation of electromagnetic waves other than radio waves, e.g. lidar systems
- G01S17/88—Lidar systems specially adapted for specific applications
- G01S17/89—Lidar systems specially adapted for specific applications for mapping or imaging
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/10—Simultaneous control of position or course in three dimensions
- G05D1/101—Simultaneous control of position or course in three dimensions specially adapted for aircraft
Landscapes
- Engineering & Computer Science (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Transportation (AREA)
- Combustion & Propulsion (AREA)
- Chemical & Material Sciences (AREA)
- Mechanical Engineering (AREA)
- Computer Networks & Wireless Communication (AREA)
- Electromagnetism (AREA)
- Aviation & Aerospace Engineering (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Traffic Control Systems (AREA)
- Navigation (AREA)
Abstract
本公开的位置推断装置具有:外界传感器(102);存储装置(104),其存储多个部分环境地图,该多个部分环境地图包含通过坐标变换的关系而连结的第1部分环境地图和第2部分环境地图;以及位置推断装置(106),其进行来自外界传感器(102)的扫描数据与部分环境地图的匹配,推断移动体的位置和姿势。位置推断装置(106)在移动体(10)的推断位置从第1部分环境地图上移动到第2部分环境地图上时,根据坐标变换的关系来确定第1部分环境地图上的移动体的推断位置和推断姿势在第2部分环境地图上的对应位置和对应姿势,根据第1部分环境地图上的移动体的推断位置和推断姿势的历史来校正开始进行用于推断第2部分环境地图上的移动体的位置和姿势的匹配的时机下的第2部分环境地图上的对应位置和对应姿势,将校正后的对应位置和对应姿势作为初始值而进行匹配。
Description
技术领域
本公开涉及移动体、位置推断装置以及计算机程序。
背景技术
正在开发像无人搬送车(无人搬送台车)和移动机器人那样可自主移动的移动体。
在日本特开2010-092147号公报中,公开了如下的自主移动装置:通过从激光测距仪取得的局部地图与事先准备的部分地图的匹配而进行自身位置推断。
现有技术文献
专利文献
专利文献1:日本特开2010-092147号公报
发明内容
发明要解决的课题
日本特开2010-092147号公报所公开的自主移动装置在进行局部地图与部分地图的匹配时,使用安装于马达或驱动轮的旋转编码器(以下,简称为“编码器”)的输出来计算本机的移动量。
本公开的实施方式提供无需使用编码器的输出就能够进行自身位置推断的移动体。
用于解决课题的手段
在非限定性的例示的实施方式中,本公开的移动体具有:外界传感器,其扫描环境并周期性地输出扫描数据;存储装置,其存储多个部分环境地图,该多个部分环境地图包含通过坐标变换的关系而连结的第1部分环境地图和第2部分环境地图;以及位置推断装置,其进行所述扫描数据与从所述存储装置读出的所述多个部分环境地图中的任意部分环境地图的匹配,推断移动体的位置和姿势。所述位置推断装置在所述移动体的推断位置从所述第1部分环境地图上移动到所述第2部分环境地图上时,根据所述坐标变换的关系来确定所述第1部分环境地图上的所述移动体的推断位置和推断姿势在所述第2部分环境地图上的对应位置和对应姿势。然后,所述位置推断装置根据所述第1部分环境地图上的所述移动体的推断位置和推断姿势的历史来校正开始进行用于推断所述第2部分环境地图上的所述移动体的位置和姿势的匹配的时机下的所述第2部分环境地图上的所述对应位置和所述对应姿势。接着,所述位置推断装置将所述校正后的所述对应位置和所述对应姿势作为初始值而进行用于推断所述第2部分环境地图上的所述移动体的所述位置和所述姿势的所述匹配。
在非限定性的例示的实施方式中,本公开的位置推断装置是移动体的位置推断装置,与外界传感器和存储装置连接,该外界传感器扫描环境并周期性地输出扫描数据,该存储装置存储多个部分环境地图,该多个部分环境地图包含通过坐标变换的关系而连结的第1部分环境地图和第2部分环境地图,其中,所述位置推断装置具有:处理器;以及存储器,其存储使所述处理器进行动作的计算机程序。所述处理器按照所述计算机程序的指令,在所述移动体的推断位置从所述第1部分环境地图上移动到所述第2部分环境地图上时执行以下内容:根据所述坐标变换的关系来确定所述第1部分环境地图上的所述移动体的推断位置和推断姿势在所述第2部分环境地图上的对应位置和对应姿势;根据所述第1部分环境地图上的所述移动体的推断位置和推断姿势的历史来校正开始进行用于推断所述第2部分环境地图上的所述移动体的位置和姿势的匹配的时机下的所述第2部分环境地图上的所述对应位置和所述对应姿势;以及将所述校正后的所述对应位置和所述对应姿势作为初始值而进行用于推断所述第2部分环境地图上的所述移动体的所述位置和所述姿势的所述匹配。
在非限定性的例示的实施方式中,本公开的计算机程序是在上述的位置推断装置中使用的计算机程序。
发明效果
根据本公开的移动体的实施方式,环境地图由多个部分环境地图构成,即使在移动过程中切换部分环境地图时,也能够进行自身位置推断而不使用编码器的输出。
附图说明
图1是示出本公开的移动体的实施方式的结构例的图。
图2是示意性地示出移动体进行移动的环境的例子的平面布局图。
图3是示出图2所示的环境的第1部分环境地图M1和第2部分环境地图M2的图。
图4是示出第1部分环境地图M1和第2部分环境地图M2的配置关系的例子的图。
图5是示出第1部分环境地图M1坐标系(X1Y1坐标系)和第2部分环境地图M2(X2Y2坐标系)之间的关系的图。
图6A是示出时刻=t的第1部分环境地图上的移动体的位置和姿势的图。
图6B是示出时刻=t和t+Δt的第2部分环境地图上的移动体的位置和姿势的图。
图7A是示出第1部分环境地图M1的图。
图7B是示意性地示出外界传感器在时刻t所取得的扫描数据SD(t)的例子的图。
图7C是示意性地示出扫描数据SD(t)相对于第1部分环境地图M1的匹配完成的状态的图。
图8A是示意性地示出构成扫描数据的点云从初始的位置进行旋转和平移而接近环境地图的点云的情形的图。
图8B是示出扫描数据的刚体变换后的位置和姿势的图。
图9是示出记载了时刻t的移动体的第1部分环境地图的图。
图10A是示出时刻t的第2部分环境地图M2上的移动体10的位置和姿势的图。
图10B是示出时刻t+Δt的第2部分环境地图M2上的移动体10的位置和姿势的图。
图11是示意性地示出在时刻t+Δt从外界传感器取得的扫描数据SD(t+Δt)的例子的图。
图12A是示出扫描数据SD(t+Δt)的点云与第2部分环境地图M2的点云之间的相对较大的位置偏差的图。
图12B是示出扫描数据SD(t+Δt)的点云与第2部分环境地图M2的点云之间的相对较小的位置偏差的图。
图13是示意性地示出时刻t-Δs、t、t+Δt的移动体10的位置和姿势的俯视图。
图14是示出本公开的实施方式中的位置推断装置的动作的一部分的流程图。
图15是示出本公开的实施方式中的位置推断装置的动作的一部分的流程图。
图16是示出本公开的实施方式中的位置推断装置的动作的一部分的流程图。
图17是示出本公开的移动体的另一结构例的图。
图18是示出包含本公开的移动体的移动体控制***的概要的图。
图19是示出AGV所处的环境的一例的立体图。
图20是示出连接之前的AGV和牵引台车的立体图。
图21是示出连接后的AGV和牵引台车的立体图。
图22是本实施方式的例示的AGV的外观图。
图23A是示出AGV的第1硬件结构例的图。
图23B是示出AGV的第2硬件结构例的图。
图24是示出运行管理装置的硬件结构例的图。
具体实施方式
<词语>
“无人搬送车”是指手动或自动地将货物装载到主体、自动行驶至所指示的场所、再手动或自动地卸货的无轨车辆。“无人搬送车”包含无人牵引车和无人叉车。
词语“无人”是指不需要人来操纵车辆,不排除无人搬送车搬送“人(例如装卸货物的人)”的情况。
“无人牵引车”是牵引着手动或自动地装载、卸掉货物的台车而自动行驶至所指示的场所的无轨车辆。
“无人叉车”是具有使用于移载货物的货叉等进行升降的门架、将货物自动移载到货叉等并自动行驶至所指示的场所、进行自动货物装卸作业的无轨车辆。
“无轨车辆”是具有车轮和使车轮旋转的电动马达或发动机的移动体(vehicle)。
“移动体”是搭载人或货物而进行移动的装置,具有产生移动用的驱动力(traction)的车轮、双足或多足行走装置、螺旋桨等驱动装置。本公开中的词语“移动体”不仅包含狭义上的无人搬送车,也包含移动机器人、服务机器人以及无人机。
“自动行驶”包含无人搬送车基于通过通信而连接的计算机的运行管理***的指令的行驶、基于无人搬送车所具有的控制装置的自主行驶。自主行驶不仅包含无人搬送车沿着规定的路径朝向目的地的行驶,也包含追随追踪目标的行驶。另外,无人搬送车也可以暂时进行基于作业人员的指示的手动行驶。虽然“自动行驶”通常包含“引导式”的行驶和“无引导式”的行驶双方,但在本公开中,是指“无引导式”的行驶。
“引导式”是指连续或断续地设置引导体、利用引导体来引导无人搬送车的方式。
“无引导式”是指不设置引导体而进行引导的方式。本公开的实施方式的无人搬送车具有位置推断装置,能够进行无引导式的行驶。
“位置推断装置”是根据激光测距仪等外界传感器所取得的传感器数据而推断环境地图上的自身位置的装置。
“外界传感器”是感测移动体的外部的状态的传感器。外界传感器例如有激光测距仪、照相机(或图像传感器)、LIDAR(Light Detection and Ranging:光探测和测距)、毫米波雷达、超声波传感器以及磁传感器。
“内界传感器”是感测移动体的内部的状态的传感器。内界传感器例如有旋转编码器(以下,有时简称为“编码器”)、加速度传感器以及角加速度传感器(例如陀螺仪传感器)。
“SLAM(スラム)”是Simultaneous Localization and Mapping(同时定位与地图构建)的缩写,是指同时进行自身位置推断和环境地图制作。
<本公开的移动体的基本结构>
参照图1。在图1所示的例示的实施方式中,本公开的移动体10具有扫描环境并周期性地输出扫描数据的外界传感器102。外界传感器102的典型例是激光测距仪(LRF)。LRF周期性地向周围放射例如红外线或可见光的激光束来扫描周围的环境。激光束例如被墙壁、柱子等构造物、或放置在地面上的物体等的表面反射。LRF接收激光束的反射光而计算与各反射点的距离,并输出表示各反射点的位置的测定结果的数据。在各反射点的位置反映了反射光的到来方向和距离。测定结果的数据(扫描数据)有时被称为“环境测量数据”或“传感器数据”。
外界传感器102对环境的扫描例如是针对以外界传感器102的正面作为基准的左右135度(总计270度)的范围的环境而进行的。具体而言,一边在水平面内按照规定的步进角来改变方向一边放射脉冲状的激光束、检测各激光束的反射光而测量距离。如果步进角为0.3度,则能够得到由总计901步的角度所决定的方向上的与反射点的距离的测定数据。在该例子中,外界传感器102所进行的周围的空间的扫描实质上与地面平行,是平面的(二维的)。但是,外界传感器也可以进行三维的扫描。
扫描数据的典型例能够用构成每次扫描所取得的点云(point cloud)的各点的位置坐标来表现。点的位置坐标是由与移动体10一同移动的局部坐标系规定的。这样的局部坐标系可以被称为移动体坐标系或传感器坐标系。在本公开中,将固定于移动体10的局部坐标系的原点定义为移动体10的“位置”,将局部坐标系的朝向(orientation)定义为移动体10的“姿势”。以下,有时将位置和姿势合起来称为“姿态”。
当用极坐标系来显示扫描数据的情况下,各点的位置可以由表示相对于局部坐标系的原点的“方向”和“距离”的数值组构成。能够将极坐标系的显示转换为正交坐标系的显示。在以下的说明中,为了简单,假设为用正交坐标系来显示从外界传感器输出的扫描数据。
移动体10具有位置推断装置(自身位置推断装置)106和存储多个部分环境地图的存储装置104。多个部分环境地图包含通过坐标变换的关系而连结起来的第1部分环境地图和第2部分环境地图。多个部分环境地图也可以包含直接或间接与第1部分环境地图和第2部分环境地图连结的其他部分环境地图。
位置推断装置106对从外界传感器102取得的扫描数据与从存储装置104读出的多个部分环境地图中的任意部分环境地图进行匹配,推断移动体10的位置和姿势即姿态。该匹配被称为图案匹配或扫描匹配,能够按照各种算法来执行。匹配算法的典型例是Iterative Closest Point(ICP:迭代最近点)算法。
在图示的例子中,移动体10还具有驱动装置108、自动行驶控制装置110以及通信电路112。驱动装置108是产生用于使移动体10移动的驱动力的装置。驱动装置108的例子包含通过电动马达或发动机而进行旋转的车轮(驱动轮)、通过马达或其他致动器而进行动作的双足或多足行走装置。车轮可以是麦克纳姆轮等全方位轮。另外,移动体10也可以是在空中或水中移动的移动体或气垫船,该情况下的驱动装置108包含通过马达而进行旋转的螺旋桨。
自动行驶控制装置110操作驱动装置108而对移动体10的移动条件(速度、加速度、移动方向等)进行控制。自动行驶控制装置110可以使移动体10沿着规定的行驶路径移动,也可以按照从外部提供的指令使移动体10移动。位置推断装置106在移动体10移动的过程中或停止的过程中计算移动体10的位置和姿势的推断值。自动行驶控制装置110参照该推断值来控制移动体10的行驶。
可以将位置推断装置106和自动行驶控制装置110作为整体而称为行驶控制装置120。行驶控制装置120能够由处理器和存储器构成,该存储器保存有对处理器的动作进行控制的计算机程序。这样的处理器和存储器能够通过一个或多个半导体集成电路而实现。
通信电路112是移动体10与包含外部的管理装置、其他移动体或操作人员的移动终端设备等的通信网络连接而进行数据和/或指令的交换的电路。
<环境地图>
图2是示意性地示出移动体10进行移动的环境200的例子的平面布局图。在图2中,粗直线例如表示建筑物的固定壁202。环境200是更大的环境的一部分。
图3是示出构成图2所示的环境200的地图(环境地图M)的第1部分环境地图M1和第2部分环境地图M2的图。环境地图M也可以包含第1部分环境地图M1和第2部分环境地图M2以外的其他部分环境地图。图中的各点204相当于构成环境地图M的点云的各点。在本公开中,有时将环境地图M的点云称为“参照点云”,将扫描数据的点云称为“数据点云”或“源点云”。匹配例如是指将扫描数据(数据点云)相对于位置固定的部分环境地图(参照点云)进行对位。在进行基于ICP算法的匹配的情况下,具体而言,在参照点云与数据点云之间选择相对应的点对,以使构成各对的点彼此的距离(误差)最小化的方式调整数据点云的位置和朝向。
在图3中,为了简单,将点204等间隔地排列在多个线段上。现实的环境地图M中的点云可以具有更复杂的配置图案。环境地图M不限于点云地图,也可以是以直线或曲线作为构成要素的地图,也可以是占据栅格地图。即,只要环境地图M具有能够在扫描数据与环境地图M之间进行匹配的构造即可。
当移动体10位于图3所示的位置PA时,进行在位置PA外界传感器所取得的扫描数据与第1部分环境地图M1的匹配。其结果为,求出了移动体10的位置和姿势的推断值。移动体10的位置和姿势是用第1部分环境地图M1的坐标系来表现的。另外,当移动体10通过了位置PB而移动到位置PC时,进行在位置PC外界传感器所取得的扫描数据与第2部分环境地图M2的匹配。其结果为,求出了移动体10的位置和姿势的推断值。此时的移动体10的位置和姿势不是用第1部分环境地图M1的坐标系、而是用第2部分环境地图M2的坐标系来表现的。这样,移动体10的位置和姿势的“值”能够用根据移动体10的位置而选择出的部分环境地图的坐标系来表现。另一方面,位置PB位于第1部分环境地图M1与第2部分环境地图M2的重复区域内。因此,当移动体10位于图3的位置PB时,移动体10的位置和姿势能够具有基于第1部分环境地图M1的坐标系的值和基于第2部分环境地图M2的坐标系的值双方。
即使在移动体10没有位于第1部分环境地图M1与第2部分环境地图M2的重复区域内时,只要已知第1部分环境地图M1的坐标系与第2部分环境地图M2的坐标系的关系,就能够从一个坐标系中的值变换为另一个坐标系中的值。
如图4所示,包含第1部分环境地图M1和第2部分环境地图M2在内的多个部分环境地图的配置不限于平行。在这样的情况下,第1部分环境地图M1的坐标系与第2部分环境地图M2的坐标系之间的变换不仅需要单纯的平移移动,也需要旋转移动。
图5是示意性地示出第1部分环境地图M1的坐标系(X1Y1坐标系)与第2部分环境地图M2的坐标系(X2Y2坐标系)之间的关系的图。在图5所示的例子中,移动体10的位置在X1Y1坐标系中具有P1=(x1,y1)的值,在X2Y2坐标系中具有P2=(x2,y2)的值。移动体10的姿势(朝向)在X1Y1坐标系中具有θ1的值,在X2Y2坐标系中具有θ2的值。这里,θ2-θ1=β。即,X2Y2坐标系是使X1Y1坐标系逆时针旋转角度β,再平移Q=(Δx,Δy)而得到的坐标系。
在图5中也示出了作为移动体10的局部坐标系(传感器坐标系)的UV坐标系。扫描数据是用UV坐标系来表现的。第i部分环境地图(i为1以上的整数)Mi上的移动体10的位置是UV坐标系的原点在第i部分环境地图Mi的坐标系Mi中的坐标值(xi,yi)。移动体10的姿势(朝向)是UV坐标系相对于第i部分环境地图Mi的坐标系Mi的朝向(θi)。θi以逆时针方向为“正”。
在用1P=(x1,y1,θ1,1)来表示X1Y1坐标系中的移动体10的状态、用2P=(x2,y2,θ2,1)来表示X2Y2坐标系中的移动体10的状态的情况下,以下的关系成立。
[数学式1]
这里,能够像下述的数学式2所示那样用1T2来表示数学式1的右边的变换矩阵。此时,将数学式1的式子简单地表示为下述的数学式3。
[数学式2]
[数学式3]
1P=1T2 2P
另外,从数学式1的式子导出了数学式4的式子。
[数学式4]
如以下的数学式5所示,当用2T1来表示1T2的逆矩阵时,得到了数学式6的式子。
[数学式5]
1T2 -1=2T1
[数学式6]
2P=2T1 1P
上述的数学式1和数学式4的关系式规定了第1部分环境地图M1与第2部分环境地图M2的关系。通过确定了这样的关系,能够在表示X1Y1坐标系中的移动体10的位置和姿势的(x1,y1,θ1)与表示X2Y2坐标系中的移动体10的位置和姿势的(x2,y2,θ2)之间进行相互变换。在本公开中,当已知某个部分环境地图的坐标系与其他部分环境地图的坐标系之间的配置关系时,定义为这些“部分环境地图连结”。
在本公开的实施方式中,由于第1部分环境地图M1与第2部分环境地图M2连结,因此例如在移动体10位于图3中的位置PB时,能够通过使用数学式4的式子、根据第1部分环境地图M1中的移动体10的位置和姿势(x1,y1,θ1)而计算第2部分环境地图M2中的移动体10的位置和姿势(x2、y2、θ2)。
要想“连结”第1部分环境地图M1和第2部分环境地图M2,只要在制作地图时,在第1部分环境地图M1和第2部分环境地图M2各自的坐标系中对第1部分环境地图M1与第2部分环境地图M2的边界区域或重复区域内的具有物理上相同的位置和姿势的移动体10取值即可。具体而言,只要使位于该位置的移动体10的位置推断装置执行使用了第1部分环境地图M1的自身位置推断和使用了第2部分环境地图M2的自身位置推断并分别输出(x1,y1,θ1)和(x2,y2,θ2)即可。在后面对位置推断装置的动作进行说明。只要已知(x1,y1,θ1)和(x2,y2,θ2),就能够根据数学式1或数学式4来计算作为未知数的Δx、Δy以及β。其结果为,确定了由平移和旋转所规定的变换矩阵的参数(Δx,Δy,β),“连结”建立。
图6A是示意性地示出从相互连结的第1部分环境地图M1向第2部分环境地图M2切换的时刻=t的移动体10的位置和姿势、即姿态(x1,y1,θ1)的图。在图6A中记载了第1部分环境地图M1的X1Y1坐标系。另一方面,图6B是示意性地示出时刻=t的移动体10的位置和姿势(x2,y2,θ2)以及时刻=t+Δt的移动体10的位置和姿势(x2',y2',θ2')的图。在图6B中记载了第2部分环境地图M2的X2Y2坐标系。
当在时刻=t进行从第1部分环境地图M1向第2部分环境地图M2的切换的情况下,为了从存储装置104(图1)读出第2部分环境地图M2而开始匹配,需要例如Δt的时间。因此,在时间Δt的期间内,移动体10的位置和姿势从(x2,y2,θ2)变化为(x2',y2',θ2')。
例如,当在移动体10的驱动轮上安装有编码器的情况下,能够通过测量而取得移动体10的位置和姿势的变化量(Δx2,Δy2,Δθ2)=(x2'-x2,y2'-y2,θ2'-θ2)。而且,在进行后述的匹配时,能够使用基于编码器输出而从(x2,y2,θ2)校正后的值、即(x2',y2',θ2')作为初始值。
但是,在本公开的实施方式中,无需使用编码器等内界传感器的输出,在切换部分环境地图之后进行匹配。关于这一点的详细内容在后面说明。
<匹配>
图7A是示出第1部分环境地图M1的图。图7B是示意性地示出外界传感器在时刻t所取得的扫描数据SD(t)的例子的图。图7B中的扫描数据SD(t)是用位置和姿势随着移动体10而改变的传感器坐标系来显示的。为了易于理解,用白圈来记载构成扫描数据SD(t)的点。扫描数据SD(t)是用以外界传感器102的正面作为V轴、以从V轴顺时针旋转90°后的方向作为U轴的UV坐标系来表现的。移动体10、更准确地说是外界传感器102位于UV坐标系的原点。在本公开中,当移动体10前进时,移动体10向外界传感器102的正面、即V轴的方向前进。
图7C是示意性地示出扫描数据SD(t)相对于第1部分环境地图M1的匹配完成的状态的图。在匹配完成的状态下,外界传感器取得扫描数据SD(t)时的传感器坐标系的位置和姿势与第1部分环境地图M1的坐标系的位置和姿势之间的关系是确定的。这样,确定了时刻t的移动体10的位置(传感器坐标系的原点)和姿势(传感器坐标系的朝向)的推断值(位置识别)。
图8A是示意性地示出构成扫描数据的点云从初始的位置进行旋转和平移而接近环境地图的点云的情形的图。将构成时刻t的扫描数据的点云的K个点中的第k个(k=1,2,...,K-1,K)点的坐标值设为Zt,k,将与该点对应的环境地图上的点的坐标值设为mk。此时,能够将针对K个对应点计算出的误差的平方和即Σ(Zt,k-mk)2作为成本函数来评价两个点云中的对应点的误差。以减小(Zt,k-mk)2的方式来确定旋转和平移的刚性变换。刚体变换是用包含旋转的角度和平移的矢量作为参数的变换矩阵(齐次变换矩阵)来规定的。
图8B是示出扫描数据的刚体变换后的位置和姿势的图。在图8B所示的例子中,扫描数据与地图的匹配尚未完成,在两个点云之间仍然存在较大的误差(位置偏差)。为了缩小该位置偏差,进一步进行刚体变换。这样,当误差成为低于规定的值的大小时,匹配完成。
图9是示出记载了表示通过匹配而求出的时刻t的推断位置和推断姿势的移动体10的第1部分环境地图的图。
图10A是示出时刻t的第2部分环境地图M2上的移动体10的位置和姿势的图。图10B是示出时刻t+Δt的第2部分环境地图M2上的移动体10的位置和姿势的图。在时刻t,第2部分环境地图M2的读出未完成,在时刻t+Δt,能够开始相对于第2部分环境地图M2的匹配。
图11是示意性地示出在时刻t+Δt从外界传感器取得的扫描数据SD(t+Δt)的例子的图。在使该扫描数据SD与第2部分环境地图M2匹配时,如果使用图10A所示的移动体10的位置和姿势作为移动体10的初始值,则如图12A所示,扫描数据SD(t+Δt)的点云与第2部分环境地图M2的点云之间的位置偏差大。因此,存在匹配所需的时间增加、或者匹配未在规定的时间内完成而导致位置识别失败的可能性。在存在这样的可能性的情况下,在切换部分环境地图时,有时也需要使移动体停止或者减速的措施。但是,如果使用图10B所示的位置和姿势作为移动体10的初始值,则如图12B所示,扫描数据SD(t+Δt)的点云与第2部分环境地图M2的点云之间的位置偏差变小。其结果为,匹配所需的时间缩短,匹配的可靠度也提高。
关于这样在切换部分环境地图时移动体10移动这一课题,以往是通过根据编码器等内界传感器的输出而测量移动体10的移动量来解决的。但是,在本公开的实施方式中,通过以下方法解决了上述课题,而无需使用内界传感器来测定移动量。
首先,将开始切换部分环境地图的时刻设为t,将切换部分环境地图所需的时间设为Δt。另外,用t-Δs来表示切换部分环境地图之前的输出移动体10的位置和姿势的最新推断值的时刻。具体而言,能够周期性地、例如每20毫秒~40毫秒地输出移动体10的位置和姿势的推断值。在该例子中,Δs例如为25毫秒。
图13是示意性地示出时刻t-Δs、t、t+Δt的移动体10的位置的俯视图。根据时刻t-Δs的移动体10的位置的推断值(输出值)和时刻t的移动体10的位置的推断值(输出值)而计算了移动体10的每个时间Δs内的位置和姿势的变化率。通过使用该变化率,能够确定时刻t+Δt的移动体10的位置的预测值。关于位置的变化率(移动速度),也可以代替时刻t-Δs的位置而参照时刻t-2×Δs、时刻t-3×Δs等过去的多个位置来确定,或者除了时刻t-Δs的位置之外,还参照时刻t-2×Δs、时刻t-3×Δs等过去的多个位置来确定。
另一方面,切换部分环境地图所需的时间Δt为50毫秒左右。一般来说,Δt大于Δs。这里,假定为,在切换部分环境地图的场所,移动体10的姿势(朝向)几乎不变化。因此,在Δt的期间内可以忽略姿势的变化。但是,也可以考虑移动体10在切换部分环境地图的场所的变化。在该情况下,能够根据在过去的多个位置取得的姿势的推断值来预测时刻t+Δt的姿势。
这里需要注意的是,每个时间Δs内的移动体10的“位置的变化率(移动速度)”是矢量,因此依赖于所使用的地图的坐标系。因此,通过进行上述的规定连结关系的坐标变换而将根据第1部分环境地图M1计算出的“位置的变化率”换算为第2部分环境地图M2的坐标系中的“位置的变化率”。即,能够在根据第1部分环境地图M1上的移动体10的推断位置和推断姿势的历史而确定了第1部分环境地图M1上的移动体10的移动速度之后,根据移动速度来预测第2部分环境地图M1上的移动体10的位置和姿势。
再次参照图6A和图6B。首先,通过变换矩阵来计算与时刻t的第1部分环境地图M1的坐标系上的位置和姿势(x1,y1,θ1)对应的、时刻t的第2部分环境地图M2的坐标系上的对应位置和对应姿势(x2,y2,θ2)。即,根据坐标变换的关系来确定第2部分环境地图M2上的对应位置和对应姿势。进而,根据“位置的变化率”,将时刻t的第2部分环境地图M2上的位置和姿势的值(x2,y2,θ2)校正为时刻t+Δt的第2部分环境地图M2上的位置和姿势的值(x2',y2',θ2')。这里,使用近似式θ2'=θ2。
这样,在本公开的实施方式中,首先,根据部分环境地图的连结关系而计算第1部分环境地图M1上的移动体10的推断位置和推断姿势在第2部分环境地图M2上的对应位置和对应姿势。然后,根据第1部分环境地图M1上的移动体10的推断位置和推断姿势的历史来校正这些对应位置和对应姿势。校正的计算所需的时间Δt是依赖于开始进行用于推断第2部分环境地图M2上的移动体10的位置和姿势的匹配的时机(时刻t+Δ)而确定的。并且,将这样校正后的对应位置和对应姿势作为初始值而进行用于推断第2部分环境地图M2上的移动体10的位置和姿势的匹配。
根据通过位置识别所取得的时刻t-Δs和时刻t的移动体10的位置和姿势的推断值来确定时刻t+Δt的移动体10的位置和姿势的预测值的方法不限于上述的例子。
首先,可以根据时刻t-Δs和时刻t的第1部分环境地图M1上的“位置的变化率”来计算时刻t+Δt的第1部分环境地图M1的坐标系上的位置和姿势的预测值。然后,可以通过变换矩阵而将时刻t+Δt的第1部分环境地图M1的坐标系上的位置和姿势的预测值变换为第2部分环境地图M2的坐标系上的值。
或者,首先,可以通过变换矩阵而将通过位置识别所取得的时刻t-Δs和时刻t的移动体10的位置和姿势的推断值分别变换为第2部分环境地图M2上的值。然后,可以计算第2部分环境地图M2的坐标系中的“位置的变化率”,确定时刻t+Δt的移动体10的位置和姿势的预测值。
通过上述的方法,在本公开的实施方式中,能够在根据第1部分环境地图M1上的移动体10的推断位置和推断姿势的历史而确定了第1部分环境地图M1上的移动体10的移动速度之后,根据该移动速度来预测时刻t+Δt的第2部分环境地图M1上的移动体10的位置和姿势。因此,作为在切换地图后的时刻t+Δt开始的匹配的初始值,无需使用内界传感器的输出就能够取得适当的值。
<位置推断装置的动作流程>
参照图1以及图14至图16,对本公开的实施方式中的位置推断装置的动作流程进行说明。
首先,参照图14。
在步骤S10中,位置推断装置106判定移动体10的位置是否位于部分环境地图的切换位置。如果为“否”,则前进到步骤S20。在后面对步骤S20进行说明。如果为“是”,则前进到步骤S12。
在步骤S12中,位置推断装置106切换部分环境地图。此时,从图1的存储装置104读出根据移动体10的位置而选择出的部分环境地图。将所读出的部分环境地图存储于位置推断装置106的存储器(未图示)中。此时,无需从存储器中删除切换前的部分环境地图。该存储器的存储容量小于存储装置104的存储容量,不需要的部分环境地图可以从存储器删除。
在步骤S14中,根据从存储装置104新读出的下一个部分环境地图与上一个部分环境地图之间的连结关系而计算、取得下一个部分环境地图上的移动体的位置和姿势。此时,位置推断装置106执行使用了数学式4的变换矩阵的变换。
在步骤S16中,位置推断装置106计算开始进行下一个部分环境地图上的匹配的时机下的移动体的位置和姿势的预测值。
在步骤S20中,位置推断装置106在刚切换了部分环境地图之后,将上述的预测值作为初始值而开始进行匹配、执行位置识别计算。
以下,参照图15,对步骤S20的位置识别计算进行更详细的说明。
首先,在步骤S22中,位置推断装置106从外界传感器102取得扫描数据。
在步骤S24中,位置推断装置106使用在步骤S16中计算出的预测值而进行初始对位。在不切换部分环境地图时、即步骤S10的判定为“否”时,能够将时刻t的位置和姿势作为初始值而进行匹配。但是,也可以通过参照图13所说明的方法而计算取得最新的扫描数据的时刻的位置和姿势的预测值,并将预测值作为初始值来进行匹配。
在步骤S30中,本实施方式的位置推断装置106进行基于ICP算法的位置偏差校正。
以下,参照图16,对步骤S30的位置偏差校正进行说明。
首先,在步骤S32中,搜索对应点。具体而言,选择部分环境地图上的与构成扫描数据所包含的点云的各点对应的点。
在步骤S34中,以缩小扫描数据与部分环境地图之间的对应点间距离的方式进行扫描数据的旋转和平移的刚体变换(坐标变换)。这是以减小对应点间距离、即对应点的误差的总和(平方和)的方式对坐标变换矩阵的参数进行最优化。该最优化是通过迭代计算而进行的。
在步骤S36中,判定迭代计算是否收敛。具体而言,在即使改变坐标变换矩阵的参数,对应点的误差的总和(平方和)的减少量也低于规定的值时,判定为收敛。在不收敛时,返回到步骤S32,重复进行从搜索对应点起的处理。在步骤S36中,当判定为收敛时,前进到步骤S38。
在步骤S38中,使用坐标变换矩阵将扫描数据的坐标值从传感器坐标系的值变换为部分环境地图的坐标系的值。
根据本公开的移动体,在切换部分环境地图之后,匹配所需的时间大幅增加、或者匹配未在规定的时间内完成而导致位置识别失败的可能性降低。因此,在切换部分环境地图时,不需要使移动体停止或者减速的措施。
另外,无需使用旋转编码器等内界传感器的输出来进行位置和姿势的推断。特别是,由于旋转编码器在车轮打滑时会产生较大的误差,并且该误差会累积,因此测定值的可靠度低。进而,基于旋转编码器的测定无法应用于使用麦克纳姆轮等全方位轮、双足或多足行走装置进行移动的移动体、或者气垫船和无人机等飞行体。与此相对,本公开的位置推断装置能够应用于通过多用的驱动装置而进行移动的各种移动体。
本公开的移动体无需具备驱动装置。例如可以是由用户驱动的手推车。为了用户,这样的移动体可以在显示装置的地图上显示或者通过声音而传递从位置推断装置取得的移动体的位置、或者位置和姿势。
图17是示出本公开的移动体10的另一结构例的图。该图所示的移动体10具有导航装置114,该导航装置114使用从位置推断装置106输出的移动体的位置、或者位置和姿势的信息而对用户进行引导。为了通过图像或声音而对用户进行引导,该导航装置114与显示装置116连接。显示装置116能够在地图上显示当前位置和目标位置、或者发出“停止”或“向右转”等声音。因此,用户能够推着移动体10而将其移动至目的地。这样的移动体10的例子是手推车、其他推车。
根据具有图17所示的结构的移动体10,路线引导是根据预先存储于导航装置114内的存储器(未图示)中的目的地或路径而执行的。
<例示的实施方式>
以下,对本公开的移动体的实施方式进行更详细的说明。在本实施方式中,作为移动体的一例,举出无人搬送车。在以下的说明中,使用缩写将无人搬送车表述为“AGV(Automatic Guided Vehicle)”。以下,与移动体10同样地,对“AGV”标注参照标号“10”。
(1)***的基本结构
图18示出了本公开的例示的移动体管理***100的基本结构例。移动体管理***100包含至少一台AGV 10和进行AGV 10的运行管理的运行管理装置50。在图18中也记载了由用户1进行操作的终端装置20。
AGV 10是能够进行在行驶时不需要磁带等引导体的“无引导式”行驶的无人搬送车。AGV 10能够进行自身位置推断,并将推断的结果发送给终端装置20和运行管理装置50。AGV 10能够按照来自运行管理装置50的指令而在环境S内自动行驶。
运行管理装置50是跟踪各AGV 10的位置而对各AGV 10的行驶进行管理的计算机***。运行管理装置50可以是台式PC、笔记本型PC和/或服务器计算机。运行管理装置50经由多个接入点2而与各AGV 10进行通信。例如,运行管理装置50将各AGV 10接下来应朝向的位置的坐标的数据发送给各AGV 10。各AGV 10定期地、例如每250毫秒地向运行管理装置50发送表示自身的位置和姿势(orientation)的数据。当AGV 10到达所指示的位置时,运行管理装置50发送再接下来应朝向的位置的坐标的数据。AGV 10也能够根据输入到终端装置20中的用户1的操作而在环境S内行驶。终端装置20的一例是平板计算机。
图19示出了三台AGV 10a、10b以及10c所处的环境S的一例。假设任何AGV均在图中的进深方向上行驶。AGV 10a和10b正在搬送载置于顶板上的货物。AGV 10c追随前方的AGV10b而行驶。另外,为了便于说明,在图19中标注了参照标号10a、10b以及10c,但以下表述为“AGV 10”。
AGV 10除了搬送载置于顶板上的货物的方法之外,也能够利用与自身连接的牵引台车来搬送货物。图20示出了连接之前的AGV 10和牵引台车5。在牵引台车5的各腿设置有脚轮。AGV 10与牵引台车5机械连接。图21示出了连接后的AGV 10和牵引台车5。当AGV 10行驶时,牵引台车5被AGV 10牵引。通过对牵引台车5进行牵引,AGV 10能够搬送载置于牵引台车5上的货物。
AGV 10与牵引台车5的连接方法是任意的。这里,对一例进行说明。在AGV 10的顶板上固定有板6。在牵引台车5上设置有具有缝的引导件7。AGV 10接近牵引台车5而将板6***于导向件7的缝中。当***完成时,AGV 10将未图示的电磁锁式销贯通于板6和引导件7,施加电磁锁定。由此,AGV 10与牵引台车5物理连接。
再次参照图18。各AGV 10与终端装置20例如能够一对一地连接而进行依据蓝牙(Bluetooth(注册商标))标准的通信。各AGV 10与终端装置20也能够利用一个或多个接入点2而进行依据Wi-Fi(注册商标)的通信。多个接入点2例如经由交换型集线器3而相互连接。在图18中记载了两个接入点2a、2b。AGV 10与接入点2a以无线的方式连接。终端装置20与接入点2b以无线的方式连接。AGV 10发出的数据在由接入点2a接收到之后,经由交换型集线器3转送给接入点2b,再从接入点2b发送给终端装置20。另外,终端装置20发出的数据在由接入点2b接收到之后,经由交换型集线器3转送给接入点2a,再从接入点2a发送给AGV10。由此,实现了AGV 10与终端装置20之间的双向通信。多个接入点2也经由交换型集线器3与运行管理装置50连接。由此,在运行管理装置50与各AGV 10之间也实现了双向通信。
(2)环境地图的制作
为了使AGV 10能够一边推断自身位置一边行驶,制作环境S内的地图。在AGV10上搭载有位置推断装置和LRF,能够利用LRF的输出来制作地图。
AGV 10通过用户的操作而转变为数据取得模式。在数据取得模式下,AGV 10开始使用LRF来取得传感器数据。
位置推断装置将传感器数据蓄积于存储装置中。当环境S内的传感器数据的取得完成时,将蓄积于存储装置中的传感器数据发送给外部装置。外部装置例如是具有信号处理用处理器并且安装有地图制作计算机程序的计算机。
外部装置的信号处理用处理器将每次扫描所取得的传感器数据彼此叠加。通过信号处理用处理器重复进行叠加处理,能够制作环境S的地图。外部装置将制作出的地图的数据发送给AGV 10。AGV 10将制作出的地图的数据保存于内部的存储装置中。外部装置也可以是运行管理装置50,也可以是其他装置。
也可以不是由外部装置、而是由AGV 10来制作地图。只要由AGV 10的微控制器单元(微型计算机)等的电路来进行上述的外部装置的信号处理用处理器所执行的处理即可。当在AGV 10内制作地图的情况下,不再需要将所蓄积的传感器数据发送给外部装置。通常认为传感器数据的数据容量较大。由于不需要向外部装置发送传感器数据,因此能够避免占用通信线路。
另外,用于取得传感器数据的环境S内的移动能够通过AGV 10按照用户的操作进行行驶而实现。例如,AGV 10经由终端装置20以无线的方式从用户接收指示向前后左右各方向移动的行驶指令。AGV 10按照行驶指令在环境S内向前后左右行驶以制作地图。在AGV10与操纵杆等操纵装置以有线的方式连接的情况下,可以根据来自该操纵装置的控制信号而在环境S内向前后左右行驶以制作地图。也可以通过人推着搭载有LRF的测量台车走路来取得传感器数据。
另外,虽然在图18和图19中示出了多台AGV 10,但AGV也可以是一台。在存在多台AGV 10的情况下,用户1能够使用终端装置20、从登记的多个AGV中选择一台AGV 10来制作环境S的地图。
当制作出地图以后,各AGV 10能够一边利用该地图来推断自身位置一边自动行驶。
(3)AGV的结构
图22是本实施方式的例示的AGV 10的外观图。AGV 10具有两个驱动轮11a和11b、四个脚轮11c、11d、11e以及11f、框架12、搬送台13、行驶控制装置14以及LRF 15。两个驱动轮11a和11b分别设置在AGV 10的右侧和左侧。四个脚轮11c、11d、11e、11f配置于AGV 10的四角。另外,虽然AGV 10也具有与两个驱动轮11a和11b连接的多个马达,但未在图22中示出多个马达。另外,在图22中示出了位于AGV 10的右侧的一个驱动轮11a和两个脚轮11c、11e、以及位于左后部的脚轮11f,但由于左侧的驱动轮11b和左前部的脚轮11d被框架12遮挡,因此没有明示。四个脚轮11c、11d、11e以及11f能够自由转弯。在以下的说明中,也将驱动轮11a和驱动轮11b分别称为车轮11a和车轮11b。
行驶控制装置14是对AGV 10的动作进行控制的装置,主要具有包含微型计算机(后述)的集成电路、电子部件以及搭载有它们的基板。行驶控制装置14进行上述的与终端装置20之间的数据的收发以及预处理运算。
LRF 15例如是如下的光学设备:放射红外的激光束15a并检测该激光束15a的反射光,由此测定与反射点的距离。在本实施方式中,AGV 10的LRF 15例如在以AGV 10的正面为基准的左右135度(总计270度)的范围的空间内,一边每0.25度地改变方向,一边放射脉冲状的激光束15a并检测各激光束15a的反射光。由此,能够每0.25度地取得由总计1081步的角度所决定的方向上的与反射点的距离的数据。另外,在本实施方式中,LRF 15所进行的周围的空间的扫描实质上与地面平行,是平面的(二维的)。然而,LRF 15也可以进行高度方向的扫描。
根据AGV 10的位置和姿势(朝向)以及LRF 15的扫描结果,AGV 10能够制作环境S的地图。能够在地图上反映AGV的周围的墙壁、柱子等构造物、载置于地面上的物体的配置。地图的数据保存于在AGV 10内设置的存储装置中。
以下,有时将AGV 10的位置和姿势、即姿态(x,y,θ)简称为“位置”。
如上所述,行驶控制装置14对LRF 15的测定结果和自身所保持的地图数据进行比较来推断自身的当前位置。地图数据也可以是由其他AGV 10制作出的地图数据。
图23A示出了AGV 10的第1硬件结构例。另外,图23A也示出了行驶控制装置14的具体结构。
AGV 10具有行驶控制装置14、LRF 15、两台马达16a和16b、驱动装置17以及车轮11a和11b。
行驶控制装置14具有微型计算机14a、存储器14b、存储装置14c、通信电路14d以及位置推断装置14e。微型计算机14a、存储器14b、存储装置14c、通信电路14d以及位置推断装置14e通过通信总线14f而连接,能够相互收发数据。LRF 15也经由通信接口(未图示)与通信总线14f连接,将作为测量结果的测量数据发送给微型计算机14a、位置推断装置14e和/或存储器14b。
微型计算机14a是执行用于对包含行驶控制装置14在内的整个AGV 10进行控制的运算的处理器或控制电路(计算机)。典型地,微型计算机14a是半导体集成电路。微型计算机14a将作为控制信号的PWM(Pulse Width Modulation:脉冲宽度调制)信号发送给驱动装置17而对驱动装置17进行控制以调整对马达施加的电压。由此,马达16a和16b分别以期望的转速进行旋转。
也可以与微型计算机14a独立地设置有对左右的马达16a和16b的驱动进行控制的一个以上的控制电路(例如微型计算机)。例如,马达驱动装置17也可以具有分别对马达16a和16b的驱动进行控制的两个微型计算机。
存储器14b是存储由微型计算机14a执行的计算机程序的易失性的存储装置。存储器14b也可以被用作微型计算机14a和位置推断装置14e进行运算时的工作存储器。
存储装置14c是非易失性的半导体存储装置。但是,存储装置14c也可以是以硬盘为代表的磁记录介质或以光盘为代表的光学式记录介质。并且,存储装置14c也可以包含用于相对于任何记录介质写入和/或读出数据的头装置以及该头装置的控制装置。
存储装置14c存储要行驶的环境S的地图数据(包含多个部分环境地图的环境地图M)、以及一个或多个行驶路径的数据(行驶路径数据)R。环境地图M能够通过AGV 10在地图制作模式下进行动作而制作出再存储到存储装置14c中。行驶路径数据R是在制作出地图M之后从外部发送的。在本实施方式中,环境地图M和行驶路径数据R存储于相同的存储装置14c中,但也可以存储于不同的存储装置中。
对行驶路径数据R的例子进行说明。
在终端装置20是平板计算机的情况下,AGV 10从平板计算机接收表示行驶路径的行驶路径数据R。此时的行驶路径数据R包含表示多个标记的位置的标记数据。“标记”表示要行驶的AGV 10的通过位置(经由点)。行驶路线数据R至少包含表示行驶开始位置的开始标记和表示行驶结束位置的结束标记的位置信息。行进路径数据R还可以包含一个以上的中间经由点的标记的位置信息。在行驶路径包含一个以上的中间经由点的情况下,将从开始标记起依次经由该行驶经由点而到达结束标记的路径定义为行驶路径。各标记的数据除了包含该标记的坐标数据之外,也可以包含移动至下一个标记之前的AGV 10的朝向(角度)和行驶速度的数据。当AGV 10在各标记的位置暂时停止而进行自身位置推断和向终端装置20的通知等的情况下,各标记的数据可以包含加速到达该行驶速度所需的加速时间和/或从该行驶速度减速直至在下一个标记的位置停止所需的减速时间的数据。
也可以不是由终端装置20、而是由运行管理设备50(例如,PC和/或服务器计算机)对AGV 10的移动进行控制。在该情况下,可以是,每当AGV 10到达标记时,运行管理装置50指示AGV 10向下一个标记移动。例如,AGV 10从运行管理装置50接收接下来应朝向的目标位置的坐标数据、或者与该目标位置的距离和应前进的角度的数据作为表示行驶路径的行驶路径数据R。
AGV 10能够一边使用所制作的地图和在行驶中取得的LRF 15所输出的传感器数据来推断自身位置,一边沿着所存储的行驶路径行驶。
通信电路14d例如是进行依据蓝牙(Bluetooth(注册商标))和/或Wi-Fi(注册商标)标准的无线通信的无线通信电路。任何标准均包含使用了2.4GHz频段的频率的无线通信标准。例如在使AGV 10行驶以制作地图的模式下,通信电路14d进行依据蓝牙(Bluetooth(注册商标))标准的无线通信,一对一地与终端装置20进行通信。
位置推断装置14e进行制作地图的处理以及在行驶时推断自身位置的处理。位置推断装置14e根据AGV 10的位置和姿势以及LRF的扫描结果而制作环境S的地图。在行驶时,位置推断装置14e从LRF 15接收传感器数据,并且读出存储于存储装置14c中的环境地图M。通过将根据LRF 15的扫描结果制作出的局部地图数据(传感器数据)与更大范围的环境地图M进行匹配而识别环境地图M上的自身位置(x,y,θ)。位置推断装置14e生成表示局部地图数据与环境地图M一致的程度的“可靠度”的数据。能够将自身位置(x,y,θ)和可靠度的各数据从AGV 10发送给终端装置20或运行管理设备50。终端装置20或运行管理装置50能够接收自身位置(x,y,θ)和可靠度的各数据并在内置或所连接的显示装置上显示。
在本实施方式中,微型计算机14a和位置推断装置14e是不同的构成要素,但这只是一个例子。也可以是能够独立地进行微型计算机14a和位置推断装置14e的各动作的一个芯片电路或半导体集成电路。在图23A中示出了包括微型计算机14a和位置推断装置14e的芯片电路14g。以下,对微型计算机14a和位置推断装置14e分别独立设置的例子进行说明。
两台马达16a和16b分别安装于两个车轮11a和11b以使各车轮旋转。即,两个车轮11a和11b分别是驱动轮。在本说明书中,对马达16a和马达16b分别是驱动AGV 10的右轮和左轮的马达的情况进行说明。
驱动装置17具有马达驱动电路17a和17b,该马达驱动电路17a和17b用于调整分别对两台马达16a和16b施加的电压。马达驱动电路17a和17b分别包含所谓的逆变器电路。马达驱动电路17a和17b根据从微型计算机14a或马达驱动电路17a内的微型计算机发送的PWM信号而将在各马达中流动的电流接通或断开,由此调整对马达施加的电压。
图23B示出了AGV 10的第2硬件结构例。在第2硬件结构例中,具有激光定位***14h,微型计算机14a与各构成要素一对一地连接,这些点与第1硬件结构例(图23A)不同。
激光定位***14h具有位置推断装置14e和LRF 15。位置推断装置14e和LRF 15例如通过以太网(注册商标)线缆而连接。位置推断装置14e和LRF 15的各动作如上所述。激光定位***14h向微型计算机14a输出表示AGV 10的姿态(x,y,θ)的信息。
微型计算机14a具有各种通用I/O接口或通用输入输出端口(未图示)。微型计算机14a经由该通用输入输出端口而与通信电路14d、激光定位***14h等行驶控制装置14内的其他构成要素直接连接。
关于图23B,除了上述的结构以外,其余与图23A的结构相同。因此,省略相同的结构的说明。
本公开的实施方式中的AGV 10也可以具有未图示的障碍物检测传感器和保险杠开关等安全传感器。
(4)运行管理装置的结构例
图24示出了运行管理装置50的硬件结构例。运行管理装置50具有CPU 51、存储器52、位置数据库(位置DB)53、通信电路54、地图数据库(地图DB)55以及图像处理电路56。
CPU 51、存储器52、位置DB 53、通信电路54、地图DB 55以及图像处理电路56通过通信总线57而连接,能够相互收发数据。
CPU 51是对运行管理装置50的动作进行控制的信号处理电路(计算机)。典型地说,CPU 51是半导体集成电路。
存储器52是存储由CPU 51执行的计算机程序的易失性的存储装置。存储器52也可以用作CPU 51进行运算时的工作存储器。
位置DB 53保存表示可能成为各AGV 10的目的地的各位置的位置数据。位置数据例如可以用由管理人员在工厂内虚拟设定的坐标来表示。位置数据由管理人员决定。
通信电路54例如进行依据以太网(注册商标)标准的有线通信。通信电路54与接入点2(图18)以有线的方式连接,能够经由接入点2与AGV 10进行通信。通信电路54经由总线57从CPU 51接收应发送给AGV 10的数据。另外,通信电路54将从AGV 10接收到的数据(通知)经由总线57发送给CPU 51和/或存储器52。
地图DB 55保存AGV 10所行驶的工厂等的内部的地图的数据。只要是与各AGV 10的位置具有一对一的对应关系的地图即可,数据的形式不限。例如,保存于地图DB 55中的地图也可以是使用CAD制作出的地图。
位置DB 53和地图DB 55可以构建在非易失性的半导体存储器上,也可以构建在以硬盘为代表的磁记录介质或以光盘为代表的光学式记录介质上。
图像处理电路56是生成在监视器58上显示的影像的数据的电路。图像处理电路56专门在管理人员操作运行管理装置50时进行动作。在本实施方式中,特别省略进一步的详细说明。另外,监视器58也可以与运行管理装置50一体化。另外,也可以由CPU 51进行图像处理电路56的处理。
在上述的实施方式的说明中,作为一例,举出了在二维空间(地面)行驶的AGV。然而,本公开也能够应用于在三维空间中移动的移动体、例如飞行体(无人机)。在无人机一边飞行一边制作三维空间地图的情况下,能够将二维空间扩展成三维空间。
上述概括的方式也可以通过***、方法、集成电路、计算机程序或记录介质而实现。或者,也可以通过***、装置、方法、集成电路、计算机程序以及记录介质的任意组合而实现。
产业上的可利用性
本公开的移动体能够在工厂、仓库、建筑现场、物流、医院等中适当用于货物、部件、成品等物品的移动和搬送。
标号说明
1:用户;2a、2b:接入点;10:AGV(移动体);11a、11b:驱动轮(车轮);11c、11d、11e、11f:脚轮;12:框架;13:搬送台;14:行驶控制装置;14a:微型计算机;14b:存储器;14c:存储装置;14d:通信电路;14e:位置推断装置;16a、16b:马达;15:LRF;17a、17b:马达驱动电路;20:终端装置(平板计算机等移动计算机);50:运行管理装置;51:CPU;52:存储器;53:位置数据库(位置DB);54:通信电路;55:地图数据库(地图DB);56:图像处理电路;100:移动体管理***。
Claims (8)
1.一种移动体,其具有:
外界传感器,其扫描环境并周期性地输出扫描数据;
存储装置,其存储多个部分环境地图,该多个部分环境地图包含通过坐标变换的关系而连结的第1部分环境地图和第2部分环境地图;以及
位置推断装置,其进行所述扫描数据与从所述存储装置读出的所述多个部分环境地图中的任意一个部分环境地图的匹配,推断所述移动体的位置和姿势,
所述位置推断装置在所述移动体的推断位置从所述第1部分环境地图上移动到所述第2部分环境地图上时,根据所述坐标变换的关系来确定所述第1部分环境地图上的所述移动体的推断位置和推断姿势在所述第2部分环境地图上的对应位置和对应姿势,根据所述第1部分环境地图上的所述移动体的推断位置和推断姿势的历史来校正开始进行用于推断所述第2部分环境地图上的所述移动体的位置和姿势的匹配的时机下的所述第2部分环境地图上的所述对应位置和所述对应姿势,将所述校正后的所述对应位置和所述对应姿势作为初始值而进行用于推断所述第2部分环境地图上的所述移动体的所述位置和所述姿势的所述匹配。
2.根据权利要求1所述的移动体,其中,
所述位置推断装置根据所述第1部分环境地图上的所述移动体的推断位置和推断姿势的历史来确定所述第1部分环境地图上的所述移动体的移动速度,根据所述移动速度来预测所述时机下的所述第2部分环境地图上的所述移动体的位置和姿势。
3.根据权利要求1或2所述的移动体,其中,
所述位置推断装置通过迭代最近点算法而进行所述匹配。
4.根据权利要求1至3中的任意一项所述的移动体,其中,
所述移动体具有全方位轮、双足或多足行走装置中的任意装置。
5.根据权利要求1至3中的任意一项所述的移动体,其中,
所述移动体具有显示装置,该显示装置通过图像和/或声音而显示所述位置推断装置推断出的所述移动体的所述位置、或者所述位置和所述姿势。
6.根据权利要求5所述的移动体,其中,
所述移动体具有导航装置,该导航装置根据目的地以及所述位置推断装置推断出的所述移动体的所述位置和所述姿势而对用户引导路径。
7.一种位置推断装置,其是移动体的位置推断装置,与外界传感器和存储装置连接,该外界传感器扫描环境并周期性地输出扫描数据,该存储装置存储多个部分环境地图,该多个部分环境地图包含通过坐标变换的关系而连结的第1部分环境地图和第2部分环境地图,其中,
所述位置推断装置具有:
处理器;以及
存储器,其存储使所述处理器进行动作的计算机程序,
所述处理器按照所述计算机程序的指令,在所述移动体的推断位置从所述第1部分环境地图上移动到所述第2部分环境地图上时执行以下内容:
根据所述坐标变换的关系来确定所述第1部分环境地图上的所述移动体的推断位置和推断姿势在所述第2部分环境地图上的对应位置和对应姿势;
根据所述第1部分环境地图上的所述移动体的推断位置和推断姿势的历史来校正开始进行用于推断所述第2部分环境地图上的所述移动体的位置和姿势的匹配的时机下的所述第2部分环境地图上的所述对应位置和所述对应姿势;以及
将所述校正后的所述对应位置和所述对应姿势作为初始值而进行用于推断所述第2部分环境地图上的所述移动体的所述位置和所述姿势的所述匹配。
8.一种计算机程序,其用于权利要求7所述的位置推断装置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2017-169726 | 2017-09-04 | ||
JP2017169726 | 2017-09-04 | ||
PCT/JP2018/030306 WO2019044498A1 (ja) | 2017-09-04 | 2018-08-14 | 移動体、位置推定装置、およびコンピュータプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111033425A true CN111033425A (zh) | 2020-04-17 |
Family
ID=65525340
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880053276.2A Withdrawn CN111033425A (zh) | 2017-09-04 | 2018-08-14 | 移动体、位置推断装置以及计算机程序 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20200363212A1 (zh) |
JP (1) | JP6825712B2 (zh) |
CN (1) | CN111033425A (zh) |
WO (1) | WO2019044498A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11073403B2 (en) * | 2018-01-12 | 2021-07-27 | Uatc, Llc | Map selection for vehicle pose system |
CN109240314B (zh) * | 2018-11-09 | 2020-01-24 | 百度在线网络技术(北京)有限公司 | 用于采集数据的方法和装置 |
CN111982132B (zh) * | 2019-05-22 | 2022-06-14 | 合肥四维图新科技有限公司 | 数据处理方法、装置和存储介质 |
JP7338369B2 (ja) * | 2019-09-27 | 2023-09-05 | 富士通株式会社 | 環境地図調整値算出方法および環境地図調整値算出プログラム |
JP7318589B2 (ja) * | 2020-05-25 | 2023-08-01 | 株式会社ダイフク | 物品搬送設備 |
CN113485327B (zh) * | 2021-06-30 | 2024-02-02 | 三一机器人科技有限公司 | 末端工位定位方法、装置及电子设备 |
CN113984073B (zh) * | 2021-09-29 | 2024-05-28 | 杭州电子科技大学 | 一种基于方位的移动机器人协同校正算法 |
CN114812576A (zh) * | 2022-05-23 | 2022-07-29 | 上海钛米机器人股份有限公司 | 地图匹配方法、装置及电子设备 |
WO2024053145A1 (ja) * | 2022-09-07 | 2024-03-14 | ソニーグループ株式会社 | 情報処理装置、情報処理方法およびプログラム |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1865855A (zh) * | 2005-04-28 | 2006-11-22 | 株式会社Ntt都科摩 | 位置推断装置以及位置推断方法 |
CN102538779A (zh) * | 2010-10-25 | 2012-07-04 | 株式会社日立制作所 | 机器人***以及地图更新方法 |
WO2014076844A1 (ja) * | 2012-11-19 | 2014-05-22 | 株式会社日立製作所 | 自律移動システムおよび管制装置 |
CN105424049A (zh) * | 2014-09-16 | 2016-03-23 | 株式会社东芝 | 移动***置推测装置 |
CN105593877A (zh) * | 2013-10-04 | 2016-05-18 | 高通股份有限公司 | 基于动态地构建的环境地图数据进行物体追踪 |
CN106339001A (zh) * | 2015-07-09 | 2017-01-18 | 松下电器(美国)知识产权公司 | 地图生成方法、移动机器人以及地图生成*** |
JP2017097537A (ja) * | 2015-11-20 | 2017-06-01 | 日本精工株式会社 | 案内用ロボット |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5018458B2 (ja) * | 2007-12-25 | 2012-09-05 | トヨタ自動車株式会社 | 座標補正方法、座標補正プログラム、及び自律移動ロボット |
JP2015215651A (ja) * | 2014-05-08 | 2015-12-03 | 株式会社日立製作所 | ロボットおよび自己位置推定方法 |
-
2018
- 2018-08-14 CN CN201880053276.2A patent/CN111033425A/zh not_active Withdrawn
- 2018-08-14 WO PCT/JP2018/030306 patent/WO2019044498A1/ja active Application Filing
- 2018-08-14 US US16/638,517 patent/US20200363212A1/en not_active Abandoned
- 2018-08-14 JP JP2019539336A patent/JP6825712B2/ja active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1865855A (zh) * | 2005-04-28 | 2006-11-22 | 株式会社Ntt都科摩 | 位置推断装置以及位置推断方法 |
CN102538779A (zh) * | 2010-10-25 | 2012-07-04 | 株式会社日立制作所 | 机器人***以及地图更新方法 |
WO2014076844A1 (ja) * | 2012-11-19 | 2014-05-22 | 株式会社日立製作所 | 自律移動システムおよび管制装置 |
CN105593877A (zh) * | 2013-10-04 | 2016-05-18 | 高通股份有限公司 | 基于动态地构建的环境地图数据进行物体追踪 |
CN105424049A (zh) * | 2014-09-16 | 2016-03-23 | 株式会社东芝 | 移动***置推测装置 |
CN106339001A (zh) * | 2015-07-09 | 2017-01-18 | 松下电器(美国)知识产权公司 | 地图生成方法、移动机器人以及地图生成*** |
JP2017097537A (ja) * | 2015-11-20 | 2017-06-01 | 日本精工株式会社 | 案内用ロボット |
Also Published As
Publication number | Publication date |
---|---|
US20200363212A1 (en) | 2020-11-19 |
WO2019044498A1 (ja) | 2019-03-07 |
JP6825712B2 (ja) | 2021-02-03 |
JPWO2019044498A1 (ja) | 2020-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6816830B2 (ja) | 位置推定システム、および当該位置推定システムを備える移動体 | |
JP6825712B2 (ja) | 移動体、位置推定装置、およびコンピュータプログラム | |
US20200110410A1 (en) | Device and method for processing map data used for self-position estimation, mobile body, and control system for mobile body | |
TWI665538B (zh) | 進行障礙物之迴避動作的移動體及記錄其之電腦程式的記錄媒體 | |
JP2019168942A (ja) | 移動体、管理装置および移動体システム | |
JP7081881B2 (ja) | 移動体および移動体システム | |
CN110998472A (zh) | 移动体以及计算机程序 | |
JP7111424B2 (ja) | 移動体、位置推定装置、およびコンピュータプログラム | |
JP7136426B2 (ja) | 管理装置および移動体システム | |
CN111971633B (zh) | 位置推断***、具有该位置推断***的移动体以及记录介质 | |
JP2019175137A (ja) | 移動体および移動体システム | |
JP2019175136A (ja) | 移動体 | |
JP2020166702A (ja) | 移動体システム、地図作成システム、経路作成プログラムおよび地図作成プログラム | |
JP7396353B2 (ja) | 地図作成システム、信号処理回路、移動体および地図作成方法 | |
JP2019067001A (ja) | 移動体 | |
CN112578789A (zh) | 移动体 | |
JP2019148871A (ja) | 移動体および移動体システム | |
JPWO2019059299A1 (ja) | 運行管理装置 | |
JP2020166701A (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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200417 |
|
WW01 | Invention patent application withdrawn after publication |