JP2017083663A - Coincidence evaluation device and coincidence evaluation method - Google Patents

Coincidence evaluation device and coincidence evaluation method Download PDF

Info

Publication number
JP2017083663A
JP2017083663A JP2015212282A JP2015212282A JP2017083663A JP 2017083663 A JP2017083663 A JP 2017083663A JP 2015212282 A JP2015212282 A JP 2015212282A JP 2015212282 A JP2015212282 A JP 2015212282A JP 2017083663 A JP2017083663 A JP 2017083663A
Authority
JP
Japan
Prior art keywords
measurement
map
point
recording
evaluation
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
JP2015212282A
Other languages
Japanese (ja)
Other versions
JP6649743B2 (en
Inventor
融 空閑
Toru Kuga
融 空閑
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.)
Sharp Corp
Original Assignee
Sharp Corp
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 Sharp Corp filed Critical Sharp Corp
Priority to JP2015212282A priority Critical patent/JP6649743B2/en
Publication of JP2017083663A publication Critical patent/JP2017083663A/en
Application granted granted Critical
Publication of JP6649743B2 publication Critical patent/JP6649743B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Instructional Devices (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a coincidence evaluation device that evaluates coincidence between a recording point of recording information and a measurement point more accurately.SOLUTION: A loop detection part 42 calculates each position evaluation value representing coincidence between position information on each plot on a reference map 53a and a position of a plot, calculated from measurement data, on the map. The loop detection part 42 further calculates each direction evaluation value representing coincidence between direction information on each plot on an azimuth map 53b and a measurement direction of the plot calculated from the measurement data. The loop detection part 42 furthermore evaluates whether the plot calculated from the measurement plot coincides with each plot on the reference map 53a based upon respective calculated position evaluation values and respective direction evaluation values.SELECTED DRAWING: Figure 1

Description

本発明は、一致性評価装置および一致性評価方法に関する。   The present invention relates to a consistency evaluation apparatus and a consistency evaluation method.

従来、建物内や屋外の限定された領域内を自律的に走行する自律走行体が知られている。また、近年、自律走行体が移動すべき領域であって、周囲の環境に応じたマップを作成する機能を有する自律走行体が開発されている。距離センサを有するロボットによるマップ作成手法の一つとして、SLAM(Simultaneous Localization and Mapping)が知られている。SLAMに関する技術の例が、以下に説明するように非特許文献1〜4に開示されている。   Conventionally, an autonomous traveling body that autonomously travels within a limited area inside a building or outdoors is known. In recent years, an autonomous traveling body has been developed which is a region where the autonomous traveling body should move and has a function of creating a map according to the surrounding environment. SLAM (Simultaneous Localization and Mapping) is known as one of map creation methods by a robot having a distance sensor. Examples of technologies related to SLAM are disclosed in Non-Patent Documents 1 to 4 as described below.

図17は、非特許文献1の技術を説明するための図である。非特許文献1には、スキャンマッチの一方式が開示されている。この方式では、基準スキャンを用いて図17に示す基準マップを作成する。この基準マップは、複数のグリッドによって構成されている。各グリッドは、基準マップにおけるそのグリッドがある場所での物体(壁など)の検出確率を表す値を有する。図17の(b)において、白い場所では検出確率が高く、黒い場所では低い。   FIG. 17 is a diagram for explaining the technique of Non-Patent Document 1. Non-Patent Document 1 discloses a method of scan matching. In this method, a reference map shown in FIG. 17 is created using a reference scan. This reference map is composed of a plurality of grids. Each grid has a value representing the detection probability of an object (such as a wall) at the location of the grid in the reference map. In FIG. 17B, the detection probability is high at a white place and low at a black place.

非特許文献1の技術では、基準スキャンに含まれる各測定点を、基準グリッドマップに投影させる。そして、投影させた各点の位置を中心として、所定のぼやけ範囲に亘って等方(同心円状)に確率分布を算出する。ここで、検出確率およびぼやけ範囲は、計算効率の観点から、理論値(有理数)ではなく、規定範囲(たとえば0〜255)内の整数等によって表される。   In the technique of Non-Patent Document 1, each measurement point included in the reference scan is projected onto the reference grid map. Then, a probability distribution is calculated isotropically (concentrically) over a predetermined blur range with the position of each projected point as the center. Here, from the viewpoint of calculation efficiency, the detection probability and the blurring range are represented not by theoretical values (rational numbers) but by integers within a specified range (for example, 0 to 255).

基準マップの生成後、スキャンマッチの対象とするスキャン(以下、基準スキャン)をs、基準マップに投影する。次に、基準スキャンの位置に関するx、y、およびθ値を、所定の探索範囲で変化させることによって、基準マップ内の探索範囲を全域走査する。これにより、所定の評価値が得られる。最後に、各評価値P[θ][x][y]を加重平均することによって、最大評価位置(x、y、θ)を算出する。この位置が、対象スキャンのマッチ位置に決定される。   After the generation of the reference map, a scan (hereinafter referred to as a reference scan) to be subjected to scan matching is projected onto the reference map. Next, the entire search range in the reference map is scanned by changing the x, y, and θ values related to the position of the reference scan within a predetermined search range. Thereby, a predetermined evaluation value is obtained. Finally, the maximum evaluation position (x, y, θ) is calculated by weighted averaging the evaluation values P [θ] [x] [y]. This position is determined as the match position of the target scan.

非特許文献2には、非特許文献1に開示されたスキャンマッチを利用するSLAMの一例が開示されている。   Non-Patent Document 2 discloses an example of SLAM that uses the scan match disclosed in Non-Patent Document 1.

図18は、非特許文献3の技術を説明するための図である。非特許文献3には、スキャンマッチの一方式が開示されている。この技術では、基準マップを構成する各グリッドが、所定の方位値を有している。各グリッドの方位値は、対応するグリッドの位置がスキャンによって検出されたときの測定方向を平均することによって、算出される。また、図18に示すように、薄い壁に対しては、グリッドが2つの方位値を有することによって、1つのグリッドが壁の表裏2面を表現する。   FIG. 18 is a diagram for explaining the technique of Non-Patent Document 3. Non-Patent Document 3 discloses a method of scan matching. In this technique, each grid constituting the reference map has a predetermined azimuth value. The orientation value of each grid is calculated by averaging the measurement directions when the position of the corresponding grid is detected by scanning. Also, as shown in FIG. 18, for a thin wall, the grid has two orientation values, so that one grid represents the front and back surfaces of the wall.

図19は、非特許文献4の技術を説明するための図である。非特許文献4には、スキャンデータを用いたマップ生成の一方式が開示されている。この技術では、スキャンデータと、それに隣接するデータとの位置関係に基づき壁の向きを推測する。そして、図19に示すように、この推測結果に基づき、スキャンデータに含まれる各点の測定距離の誤差を補正する。   FIG. 19 is a diagram for explaining the technique of Non-Patent Document 4. Non-Patent Document 4 discloses a map generation method using scan data. In this technique, the direction of the wall is estimated based on the positional relationship between scan data and data adjacent thereto. And as shown in FIG. 19, based on this estimation result, the error of the measurement distance of each point contained in scan data is correct | amended.

Real-Time Correlative Scan Matching, Olson et al, Robotics and Automation, 2009. ICRA '09. IEEE International Conference on Page(s):4387-4393Real-Time Correlative Scan Matching, Olson et al, Robotics and Automation, 2009. ICRA '09 .IEEE International Conference on Page (s): 4387-4393 Efficient Sparse Pose Adjustment for 2D Mapping, Konolige et al, Intelligent Robots and Systems (IROS), 2010 IEEE/RSJ International Conference on Page(s):22-29Efficient Sparse Pose Adjustment for 2D Mapping, Konolige et al, Intelligent Robots and Systems (IROS), 2010 IEEE / RSJ International Conference on Page (s): 22-29 High Quality Pose Estimation by Aligning Multiple Scans to a Latent Map”, Huang et al, Robotics and Automation (ICRA), 2010 IEEE International Conference on Page(s):1353-1360High Quality Pose Estimation by Aligning Multiple Scans to a Latent Map ”, Huang et al, Robotics and Automation (ICRA), 2010 IEEE International Conference on Page (s): 1353-1360 Highly Accurate Maximum Likelihood Laser Mapping by Jointly Optimizing Laser Points and Robot Pose, Ruhnke M. et al , Robotics and Automation (ICRA), 2011 IEEE International Conference on Page(s):2812-2817Highly Accurate Maximum Likelihood Laser Mapping by Jointly Optimizing Laser Points and Robot Pose, Ruhnke M. et al, Robotics and Automation (ICRA), 2011 IEEE International Conference on Page (s): 2812-2817

非特許文献1の技術では、各グリッドが、検出点における検出確率の情報は有するが、方向の情報は有しない。したがって、壁の表裏を区別することができない。そのため、スキャンマッチ時に、逆向きの壁同士を一致させる間違いによって、通路が一本ずれた形で対象スキャンと基準スキャンとがマッチしてしまうなど、スキャンマッチが正確になされない場合がある。   In the technique of Non-Patent Document 1, each grid has detection probability information at a detection point, but does not have direction information. Therefore, the front and back of the wall cannot be distinguished. For this reason, there is a case where the scan match is not accurately performed, for example, the target scan and the reference scan are matched in a form in which the passage is shifted by one due to an error in matching the opposite walls in the scan match.

非特許文献2の技術は非特許文献1のスキャンマッチを利用するものであるので、非特許文献1と同様の問題がある。   Since the technique of Non-Patent Document 2 uses the scan match of Non-Patent Document 1, there is a problem similar to that of Non-Patent Document 1.

特許文献3の技術では、グリッドが1または2の方位値を有する。したがって、グリッドは、3面以上から測定された点(細い棒など)を正しく表現することができない。その結果、スキャンマッチによる評価結果が不適切に上下する問題がある。また、この技術には、グリッドが「2つの方位値」を有する場合があるという例外処理が必要になる。この例外処理は、スキャンマッチにおける繰り返しループ処理内の最内ループに配置される。この結果、スキャンマッチに要する計算時間が著しく長くなるという問題もある。   In the technique of Patent Document 3, the grid has 1 or 2 orientation values. Therefore, the grid cannot correctly represent points (thin bars, etc.) measured from three or more surfaces. As a result, there is a problem that the evaluation result by the scan match goes up and down inappropriately. This technique also requires exception handling where the grid may have “two orientation values”. This exception processing is arranged in the innermost loop in the repeated loop processing in the scan match. As a result, there is also a problem that the calculation time required for the scan match becomes extremely long.

特許文献4には、スキャンごとの距離誤差を低減する技術が開示されるにすぎず、これをスキャンマッチに適用する工夫は何ら示されていない。   Patent Document 4 merely discloses a technique for reducing the distance error for each scan, and does not show any device for applying this to scan matching.

本発明は、上記の問題点に鑑みてなされたものである。そしてその目的は、記録情報における記録点と、測定点との一致性をより正確に評価することができる一致性評価装置および一致性評価方法を提供することにある。   The present invention has been made in view of the above problems. An object of the present invention is to provide a consistency evaluation apparatus and a consistency evaluation method that can more accurately evaluate the consistency between a recorded point in recorded information and a measurement point.

本発明の一態様に係る一致性評価装置は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録部と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得部と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出部と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価部と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価部と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価部とを備えていることを特徴としている。   The coincidence evaluation apparatus according to an aspect of the present invention includes a recording unit that records position information and direction information on a map for at least one recording point as recording information, and a distance between a predetermined measurement position and surrounding measurement points. And an acquisition unit that acquires measurement data representing the measurement direction from the measurement position to the measurement point, and a calculation that calculates the position and measurement direction of the measurement point on the map based on the acquired measurement data Each position evaluation representing the degree of coincidence between the position information on the map of each recording point in the recording information and the position on the map of the measurement point calculated from the acquired measurement data A position evaluation unit that calculates a value, direction information of each recording point in the recording information, and measurement of the measurement point calculated from the acquired measurement data A direction evaluation unit for calculating each direction evaluation value representing a degree of coincidence with each direction, and each of the recording points in the recording information based on the calculated position evaluation value and each direction evaluation value. And a coincidence evaluation unit that performs an evaluation on whether or not they match.

本発明の一態様に係る一致性評価方法は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録工程と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得工程と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出工程と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価工程と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価工程と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価工程とを有することを特徴としている。   The coincidence evaluation method according to one aspect of the present invention includes a recording step of recording position information and direction information on a map for at least one recording point as recording information, and a distance between a predetermined measurement position and surrounding measurement points. And an acquisition step for acquiring measurement data representing the measurement direction from the measurement position to the measurement point, and a calculation for calculating the position and measurement direction of the measurement point on the map based on the acquired measurement data Each position evaluation representing the degree of coincidence between the position information on the map of each recording point in the recording information and the position on the map of the measurement point calculated from the acquired measurement data A position evaluation step for calculating a value, direction information of each recording point in the recording information, and the measurement calculated from the acquired measurement data A direction evaluation step for calculating each direction evaluation value representing a degree of coincidence with each measurement direction, and each of the measurement points in the record information based on the calculated position evaluation value and each direction evaluation value. And a coincidence evaluation step for evaluating whether or not the recording points coincide with each other.

本発明の一態様によれば、記録情報における記録点と、測定点との一致性をより正確に評価することができるという効果を奏する。   According to one aspect of the present invention, there is an effect that it is possible to more accurately evaluate the coincidence between a recording point in recording information and a measurement point.

本発明の実施形態1に係るロボットの要部構成を示すブロック図である。It is a block diagram which shows the principal part structure of the robot which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係るロボットの外観を示す図である。It is a figure which shows the external appearance of the robot which concerns on Embodiment 1 of this invention. 本発明の実施形態1に係るロボットが備えるを説明する図である。It is a figure explaining the robot which concerns on Embodiment 1 of this invention is provided. 本実施形態に係るロボットにおけるマップ作成の概要を説明する図である。It is a figure explaining the outline | summary of the map creation in the robot which concerns on this embodiment. 本発明の実施形態1における、方位マップを構成するグリッドにおいて定義される方位区分の詳細を説明するための図である。It is a figure for demonstrating the detail of the orientation division defined in the grid which comprises the orientation map in Embodiment 1 of this invention. 本発明の実施形態1における方位ビット値の算出例および方位マップの例を示す図である。It is a figure which shows the example of calculation of the azimuth | direction bit value in Embodiment 1 of this invention, and the example of an azimuth | direction map. 本発明の実施形態1におけるノード追加部による処理の流れを示すフローチャートである。It is a flowchart which shows the flow of a process by the node addition part in Embodiment 1 of this invention. 本発明の実施形態1におけるループ検出部による処理の流れを示すフローチャートである。It is a flowchart which shows the flow of the process by the loop detection part in Embodiment 1 of this invention. 本発明の実施形態1における基準マップを作成するための処理手順を示す図である。It is a figure which shows the process sequence for producing the reference | standard map in Embodiment 1 of this invention. 本発明の実施形態1におけるマッチ位置算出のための基本的な処理手順を示す図である。It is a figure which shows the basic process sequence for the match position calculation in Embodiment 1 of this invention. 本発明の実施形態1における方位マップを作成するための処理手順を示す図である。It is a figure which shows the process sequence for producing the orientation map in Embodiment 1 of this invention. 本発明の実施形態1に係るマッチ位置算出のための追加処理を示す図である。It is a figure which shows the additional process for the match position calculation which concerns on Embodiment 1 of this invention. 本発明の実施形態1における方位評価の一例を説明する図である。It is a figure explaining an example of direction evaluation in Embodiment 1 of the present invention. 本発明の実施形態2における方位マップを構成するグリッドにおいて定義される方位区分の詳細を説明するための図である。It is a figure for demonstrating the detail of the orientation division defined in the grid which comprises the orientation map in Embodiment 2 of this invention. 本発明の実施形態2における方位ビット値の算出例および方位マップの例を示す図である。It is a figure which shows the example of a calculation of the direction bit value in Embodiment 2 of this invention, and the example of an orientation map. 本発明の実施形態3に係るロボットの要部構成を示すブロック図である。It is a block diagram which shows the principal part structure of the robot which concerns on Embodiment 3 of this invention. 非特許文献1の技術を説明するための図である。It is a figure for demonstrating the technique of a nonpatent literature 1. FIG. 非特許文献2の技術を説明するための図である。It is a figure for demonstrating the technique of a nonpatent literature 2. FIG. 非特許文献3の技術を説明するための図である。It is a figure for demonstrating the technique of a nonpatent literature 3. FIG.

〔実施形態1〕
図1〜図7を参照して、本発明の実施形態1について以下に説明する。
Embodiment 1
A first embodiment of the present invention will be described below with reference to FIGS.

(ロボット1の概要)
本実施形態に係るロボット1(一致性評価装置)は、清掃作業を行う機能を有し、さらに、左右独立した駆動輪によって平面である床面を自律的に走行可能な装置である。本実施軽形態では、ロボット1は床面の清掃を行う自律走行体であるものとする。図示しないが、ロボット1は、清掃作業を行うための作業ユニットを備える。作業ユニットは、床に落ちているゴミを吸引する吸引部や、モップ、洗浄液タンクおよび廃液タンクを有するウェット洗浄部等を有する。なお、作業ユニットが有する機能は清掃に限定されず、たとえば、回転する刈刃を有することで芝を刈る芝刈り機能であってもよい。
(Overview of robot 1)
The robot 1 (matching evaluation device) according to the present embodiment is a device that has a function of performing a cleaning operation and that can autonomously travel on a flat floor surface by left and right independent drive wheels. In this embodiment, the robot 1 is an autonomous traveling body that cleans the floor. Although not shown, the robot 1 includes a work unit for performing a cleaning work. The work unit includes a suction unit that sucks dust falling on the floor, a wet cleaning unit including a mop, a cleaning liquid tank, and a waste liquid tank. In addition, the function which a work unit has is not limited to cleaning, For example, the lawn mowing function which mows a lawn by having a rotating cutting blade may be sufficient.

ロボット1は、周囲の地形などの環境に応じて、自律走行して清掃すべき領域や清掃順等を特定するためのマップを作成する機能を有する。ロボット1は、マップを作成する機能として、ロボット1が自律走行をしてマップを作成する機能を有する。   The robot 1 has a function of creating a map for specifying an area to be cleaned and a cleaning order according to an environment such as surrounding terrain and the like. The robot 1 has a function of creating a map by making the robot 1 autonomously travel as a function of creating a map.

(座標系)
本実施形態において、ロボット1aは、マップ作成のために、それぞれ区別される複数の座標系を用いる。具体的には、車体座標系、センサ座標系、ワールド座標系、およびグリッド座標系が用いられる。
(Coordinate system)
In the present embodiment, the robot 1a uses a plurality of coordinate systems that are distinguished from each other for map creation. Specifically, a vehicle body coordinate system, a sensor coordinate system, a world coordinate system, and a grid coordinate system are used.

車体座標系とは、ロボット1a中の所定の基準点を原点とする座標系である。原点は、ロボット1aの各駆動輪22の中央にある。ロボット1aの進行方向前方へ向かう方向を、x軸プラス方向とし、左側に向かう方向をy軸プラス方向とする。   The vehicle body coordinate system is a coordinate system having a predetermined reference point in the robot 1a as an origin. The origin is at the center of each drive wheel 22 of the robot 1a. The forward direction of the robot 1a is defined as the x-axis plus direction, and the left direction is defined as the y-axis plus direction.

センサ座標系とは、図3に示すように、LRF3から見た座標系のことである。車体座標系に、LRF3の取り付け位置分のオフセットを加えることによって、センサ座標系が得られる。   The sensor coordinate system is a coordinate system viewed from the LRF 3 as shown in FIG. A sensor coordinate system is obtained by adding an offset corresponding to the attachment position of the LRF 3 to the vehicle body coordinate system.

ワールド座標系は、ロボット1a内部で計算する、所定の外部基準点を原点とする座標系である。たとえば、ロボット1aの走行開始時のロボット1aの座標を原点として設定される。ワールド座標系は、オドメトリ座標系とも呼ばれる。   The world coordinate system is a coordinate system that is calculated inside the robot 1a and that has a predetermined external reference point as the origin. For example, the coordinates of the robot 1a when the robot 1a starts running are set as the origin. The world coordinate system is also called an odometry coordinate system.

グリッド座標系は、後述するマップにおいてグリッド数で各座標を表す座標系である。マップにおける右方向をx軸プラス方向とし、上方向をy軸プラス方向とする。グリッド座標系における原点は、この座標系の利用場面によって異なり、適宜設定される。   The grid coordinate system is a coordinate system that represents each coordinate by the number of grids in a map described later. The right direction in the map is the x-axis plus direction, and the upward direction is the y-axis plus direction. The origin in the grid coordinate system differs depending on the use situation of this coordinate system and is set as appropriate.

(ロボット1の構成)
図1は、本発明の実施形態1に係るロボット1の要部構成を示すブロック図である。この図に示すように、ロボット1は、駆動部2、LRF(Laser Range Finder)3、制御部4、および記憶部5(記録部)を備えている。
(Configuration of robot 1)
FIG. 1 is a block diagram showing a main configuration of a robot 1 according to Embodiment 1 of the present invention. As shown in this figure, the robot 1 includes a drive unit 2, an LRF (Laser Range Finder) 3, a control unit 4, and a storage unit 5 (recording unit).

(駆動部2)
駆動部2は、左右2式のモータ21、駆動輪22、およびエンコーダ23を備えている。モータ21は、駆動輪22と接続されており、制御部4による制御に応じて駆動輪22を回転させる。駆動輪22は、本体部の左右に1つずつ配されている。2個の駆動輪22は、自身に接続されているモータ21によって回転する。エンコーダ23は、各駆動輪22に接続されている。各駆動輪22の回転数を検出し制御部4へ出力する。
(Driver 2)
The drive unit 2 includes two left and right motors 21, drive wheels 22, and an encoder 23. The motor 21 is connected to the drive wheel 22 and rotates the drive wheel 22 in accordance with control by the control unit 4. One drive wheel 22 is arranged on each of the left and right sides of the main body. The two drive wheels 22 are rotated by a motor 21 connected to itself. The encoder 23 is connected to each drive wheel 22. The number of rotations of each drive wheel 22 is detected and output to the control unit 4.

(LRF3)
LRF3は、光学式の距離センサを回転軸周りに回転させながら回転軸と直交する走査平面内の周囲物体までの距離を測定する測定器である。LRF3は、レーザ光出力部31、レーザ光受光部32およびスキャンデータ出力部33を備えている。レーザ光出力部31、レーザ光受光部32は、LRF3における所定の回転軸で回転する走査機構上に配置されている。
(LRF3)
The LRF 3 is a measuring instrument that measures a distance to a surrounding object in a scanning plane orthogonal to the rotation axis while rotating an optical distance sensor around the rotation axis. The LRF 3 includes a laser beam output unit 31, a laser beam receiver 32, and a scan data output unit 33. The laser beam output unit 31 and the laser beam receiver 32 are arranged on a scanning mechanism that rotates around a predetermined rotation axis in the LRF 3.

図2は、本発明の実施形態1に係るロボット1の外観を示す図である。この図に示すように、LRF3は、ロボット1のうち進行方向前側の面である、本体部の前面に配されている。なお、さらに、本体部の前面とは逆側である本体部の後面にも配されていてもよい。LRF3は、レーザ光Lを放射状に出力して水平面内をスキャンすることで、ロボット1と、ロボット1の周囲の壁10などの物体とのセンサ座標系における距離を測定し、スキャンデータとして出力するものである。   FIG. 2 is a diagram illustrating an appearance of the robot 1 according to the first embodiment of the present invention. As shown in this figure, the LRF 3 is disposed on the front surface of the main body, which is the front surface of the robot 1 in the traveling direction. Furthermore, it may be arranged also on the rear surface of the main body that is opposite to the front surface of the main body. The LRF 3 measures the distance in the sensor coordinate system between the robot 1 and an object such as the wall 10 around the robot 1 by outputting the laser beam L radially and scanning the horizontal plane, and outputs it as scan data. Is.

図3は、本発明の実施形態1に係るロボット1が備えるLRF3を説明する図である。LRF3は、レーザ光Lの照射した角度と、照射してから反射するまでに要した時間とに基づいて、ある時点での測定方向についてのレーザ光Lを反射した障害物の距離を検出する、いわゆるTOF(time of flight)の原理による障害物検知(センシング)を行う。LRF3は、その回転軸が略鉛直方向になるようにロボット1に設置されている。LRF3は、回転軸を回転しつつ繰り返し、測定光の発信と反射光の受信とを行うことによって、略水平面内の周囲各方向の距離を測定する。   FIG. 3 is a diagram illustrating the LRF 3 provided in the robot 1 according to the first embodiment of the present invention. The LRF 3 detects the distance of the obstacle that has reflected the laser light L in the measurement direction at a certain time point based on the irradiation angle of the laser light L and the time required from the irradiation to the reflection. Obstacle detection (sensing) based on the so-called TOF (time of flight) principle. The LRF 3 is installed in the robot 1 so that its rotation axis is substantially vertical. The LRF 3 repeatedly measures the distance in each direction in a substantially horizontal plane by repeatedly transmitting the measurement light and receiving the reflected light while rotating the rotating shaft.

図3に示すように、LRF3の左右方向の視野は、ロボット1の進行方向前方を0度として、左右100度である。LRF3は、1度ごとに距離を測定する。上述したように、本実施形態では、ロボット1の進行方向前方へ向かう方向をセンサ座標系におけるx軸プラス方向とする。また、当該x軸と直角に交差する方向をy軸方向とする。さらに、ロボット1を平面視したとき、x軸から反時計回り方向を角度のプラス方向とし、x軸から時計回り方向を角度のマイナス方向とする。さらに、y軸のうち、x軸プラス方向を反時計回りへ90度回転させた方向(図3の紙面左向き方向)をy軸プラス方向とし、x軸プラス方向から時計回りへ90度回転させた方向(図3の紙面右向き方向)をy軸マイナス方向とする。   As shown in FIG. 3, the field of view of the left and right direction of the LRF 3 is 100 degrees to the left and right, with the forward direction of the robot 1 being 0 degrees. The LRF 3 measures the distance every 1 degree. As described above, in the present embodiment, the forward direction of the robot 1 is defined as the x-axis plus direction in the sensor coordinate system. Further, the direction perpendicular to the x-axis is defined as the y-axis direction. Furthermore, when the robot 1 is viewed in plan, the counterclockwise direction from the x-axis is the plus direction of the angle, and the clockwise direction from the x-axis is the minus direction of the angle. Further, in the y-axis, the x-axis plus direction rotated 90 degrees counterclockwise (the leftward direction in FIG. 3) is defined as the y-axis plus direction, and the x-axis plus direction is rotated 90 degrees clockwise from the x-axis plus direction. The direction (the right direction in FIG. 3) is the y-axis minus direction.

LRF3が取得するスキャンデータは、−100度〜0度〜+100度の合計201件の測定データによって構成されている。LRF3は、測定周期ごとに、現在の測定位置において周囲の測定点に対する測定を行い、それによって取得したスキャンデータを制御部4に出力する。LRF3の測定周期は任意で設定すればよいが、一例として、50msであるものとする。   The scan data acquired by the LRF 3 is composed of a total of 201 measurement data of −100 degrees to 0 degrees to +100 degrees. The LRF 3 measures the surrounding measurement points at the current measurement position for each measurement cycle, and outputs the scan data acquired thereby to the control unit 4. The measurement period of LRF3 may be set arbitrarily, but is assumed to be 50 ms as an example.

LRF3は、ある方位の距離が測定できなかった場合、その方位の距離データを、あかじめ設定した所定の無効値とする。このLRF3によって距離が測定できなかった場合とは、その方位の壁までの距離が遠すぎたり、反射率が低くすぎたりするなどによって、レーザ光Lの反射光の強度が小さすぎ、レーザ光受光部32が反射光を検出できない場合や、ロボット1の周囲の光が強すぎることでレーザ光受光部32がレーザ光Lの反射光を識別できない場合などを挙げることができる。   When the distance in a certain azimuth cannot be measured, the LRF 3 sets the distance data in that azimuth as a predetermined invalid value set in advance. The case where the distance could not be measured by this LRF3 means that the intensity of the reflected light of the laser light L is too small because the distance to the wall in that direction is too far or the reflectance is too low. The case where the part 32 cannot detect the reflected light or the case where the laser light receiving part 32 cannot identify the reflected light of the laser light L due to the light around the robot 1 being too strong can be cited.

また、無効値は、LRF3として規定されている定格距離よりも大幅に大きな値を設定しておく。一例として、LRF3の定格距離が10mと定められている場合、無効値は99mと設定しておく。この場合、LRF3が測定したスキャンデータが99mである場合、その方位に存在する壁は、LRF3にて距離を測定できない程遠い位置に存在すると判定できる。   The invalid value is set to a value that is significantly larger than the rated distance defined as LRF3. As an example, when the rated distance of the LRF 3 is set to 10 m, the invalid value is set to 99 m. In this case, when the scan data measured by the LRF 3 is 99 m, it can be determined that the wall existing in that direction exists at a position far enough that the distance cannot be measured by the LRF 3.

(制御部4)
制御部4は、ノード追加部41(取得部、算出部、位置評価部、方向評価部、一致性評価部)、ループ検出部42(取得部、算出部、位置評価部、方向評価部、一致性評価部)、およびマップ生成部43を備えている。ノード追加部41、ループ検出部42、およびマップ生成部43は、後述するSLAM機能を実現する構成要素である。
(Control unit 4)
The control unit 4 includes a node addition unit 41 (acquisition unit, calculation unit, position evaluation unit, direction evaluation unit, consistency evaluation unit), loop detection unit 42 (acquisition unit, calculation unit, position evaluation unit, direction evaluation unit, coincidence) Sex evaluation unit) and a map generation unit 43. The node addition unit 41, the loop detection unit 42, and the map generation unit 43 are components that realize an SLAM function to be described later.

ノード追加部41は、LRF3からの出力である距離情報(スキャンデータ)およびエンコーダ23からの出力である回転数情報から、各方位における壁等の障害物の距離および自己位置を表すノードと呼ばれる、所定のタイミングにおけるデータを生成し、ノード情報16cとして記憶部5に記憶する。ノード追加部41は、たとえば、ロボット1が所定距離や所定角度を移動したとき等、あらかじめ設定された所定のタイミングごとにノードを生成し、ノード51aとして記憶部5に順次追加して記憶する。   The node addition unit 41 is called a node representing the distance and the self-position of an obstacle such as a wall in each direction from the distance information (scan data) output from the LRF 3 and the rotation speed information output from the encoder 23. Data at a predetermined timing is generated and stored in the storage unit 5 as node information 16c. For example, when the robot 1 moves a predetermined distance or a predetermined angle, the node adding unit 41 generates a node at every predetermined timing set in advance, and sequentially adds and stores the node as a node 51a in the storage unit 5.

ノード追加部41は、各ノードをつなぎ合わせる際、各ノードに示されている自己位置を中心に、各ノードにおける障害物の位置同士が最もよく重なり合う位置を見つける、いわゆるスキャンマッチ処理を行う。これによって、ノード追加部41は、各ノード同士をつなぎ合わせる際の精度を向上させる。   When connecting the nodes, the node adding unit 41 performs a so-called scan match process that finds a position where the positions of the obstacles in each node best overlap with each other centering on the self-position indicated by each node. Thus, the node adding unit 41 improves the accuracy when connecting the nodes.

マップ生成部43は、測定範囲外形相当の面積を持つあらかじめ用意した空マップに、ノード追加部41がつなぎ合わせた各ノードにおける障害物の位置を描いていく。そして、マップ生成部43は、この空マップに入力した障害物の位置の内側を、ロボット1の走行可能領域として特定する。これによって、マップ生成部43はマップを作成し、作成したマップを出力マップ53cとして記憶部5に記憶する。   The map generation unit 43 draws the position of the obstacle at each node connected by the node addition unit 41 to an empty map prepared in advance having an area equivalent to the outer shape of the measurement range. Then, the map generation unit 43 specifies the inside of the position of the obstacle input in the sky map as a travelable area of the robot 1. Thereby, the map generation unit 43 creates a map, and stores the created map in the storage unit 5 as the output map 53c.

(記憶部5)
記憶部5は、ロボット1におけるマップ作成に関する各種のデータを記憶している。具体的には、記憶部5には、ノード群51、拘束群52、およびマップ群53が記憶されている。
(Storage unit 5)
The storage unit 5 stores various data related to map creation in the robot 1. Specifically, the storage unit 5 stores a node group 51, a constraint group 52, and a map group 53.

ノード群51は、ノード追加部41によって追加された複数のノード51aによって構成されている。各ノード51aは、LRF3の位置51bと、その位置51bにおいて取得されたスキャンデータ51cとによって構成されている。なお、各ノード51aには、生成順にノード番号が付与されている。ノード51aの位置51bは、ワールド座標系上の位置である。   The node group 51 includes a plurality of nodes 51 a added by the node adding unit 41. Each node 51a is configured by a position 51b of the LRF 3 and scan data 51c acquired at the position 51b. Each node 51a is assigned a node number in the order of generation. The position 51b of the node 51a is a position on the world coordinate system.

拘束群52は、ノード追加部41またはループ検出部42によって追加された複数の拘束52aによって構成されている。各拘束52aは、2つのノードの位置関係を規定するデータである。一方を基準ノードと呼び、他方を対象ノードと呼ぶ。各拘束52aでは、基準ノードのセンサ座標系における、対象ノードの位置が車体座標系において規定されている。   The constraint group 52 includes a plurality of constraints 52 a added by the node addition unit 41 or the loop detection unit 42. Each constraint 52a is data defining the positional relationship between two nodes. One is called a reference node and the other is called a target node. In each constraint 52a, the position of the target node in the sensor coordinate system of the reference node is defined in the vehicle body coordinate system.

マップ群53は、基準マップ53a(記録情報)、方位マップ53b(記録情報)、出力マップ53cによって構成されている。基準マップ53aは、少なくとも1つのノード51aを用いて作成され、各ノード51aに含まれるスキャンデータ51cに含まれる各測定データから算出されるプロット(測定点)の位置における壁の有無が規定されるマップである。   The map group 53 includes a reference map 53a (recording information), an orientation map 53b (recording information), and an output map 53c. The reference map 53a is created using at least one node 51a, and the presence or absence of a wall at the position of the plot (measurement point) calculated from each measurement data included in the scan data 51c included in each node 51a is defined. It is a map.

方位マップ53bは、少なくとも1つのノード51aを用いて作成され、各スキャンデータ51cに含まれる距離データから得られる各プロット(測定点)の方位を表す情報を有するマップである。   The orientation map 53b is a map that is created using at least one node 51a and has information representing the orientation of each plot (measurement point) obtained from the distance data included in each scan data 51c.

出力マップ53cは、追加された全ノード51aおよび全拘束52aの情報が反映された最終的なマップである。出力マップ53cは、まずワールド座標系においてマップ上に各ノード51aをプロットし、さらにワールド座標系上の各プロットの位置をグリッド座標系上の位置に換算することによって、作成される。出力マップ53cはたとえばロボット1aに出力され、ユーザの目に触れる。また、出力マップ53cは、たとえば経路探索または自立走行をロボット1が行う際の、ロボット1の内部制御にも利用される。   The output map 53c is a final map in which information of all added nodes 51a and all constraints 52a is reflected. The output map 53c is created by first plotting each node 51a on the map in the world coordinate system and further converting the position of each plot on the world coordinate system into a position on the grid coordinate system. The output map 53c is output to the robot 1a, for example, and touches the user's eyes. The output map 53c is also used for internal control of the robot 1 when the robot 1 performs route search or autonomous running, for example.

(マップ作成)
次に、主に図4を参照して、本実施形態におけるマップ作成の概要について説明する。
(Map creation)
Next, an outline of map creation in the present embodiment will be described mainly with reference to FIG.

図4は、本実施形態に係るロボット1aにおけるマップ作成の概要を説明する図である。   FIG. 4 is a diagram for explaining the outline of map creation in the robot 1a according to the present embodiment.

ロボット1は、自己位置を推定しつつマップを作成する、いわゆるSLAM(Simultaneous Localization and Mapping)処理を用いることによって、マップを作成する。ロボット1は、移動するにつれて、ノード追加部41、ループ検出部42、およびマップ生成部43がそれぞれ所定の処理を実行することによって、マップを作成する。   The robot 1 creates a map by using a so-called SLAM (Simultaneous Localization and Mapping) process that creates a map while estimating its own position. As the robot 1 moves, the node addition unit 41, the loop detection unit 42, and the map generation unit 43 execute a predetermined process to create a map.

(ノード追加部41の処理)
1.オドメトリ処理
ノード追加部41は、まず、オドメトリ処理を実行する。エンコーダ23は、駆動輪22の回転数を回転数情報として制御部4へ出力する。LRF3のスキャンデータ出力部33は、あらかじめ設定された所定の測定周期(たとえば50ms)ごとに、スキャンデータを制御部4へ出力する。そして、ノード追加部41は、駆動輪22の回転数から車体の移動距離と方位を計算することによって、ロボット1が有するワールド座標系上の自己の位置(x、y、θ)を計算する(すなわちオドメトリ処理を行う)。これによって、ノード追加部41は、ロボット1のワールド座標系上の自己位置を認識する。続いて、ノード追加部41は、自己の位置(x、y、θ)に、LRF3の取り付け分のオフセットを加えることによって、ワールド座標系上のLRF3の位置(x、y、θ)を算出する。
(Processing of the node addition unit 41)
1. Odometry Processing The node addition unit 41 first executes odometry processing. The encoder 23 outputs the rotational speed of the drive wheel 22 to the control unit 4 as rotational speed information. The scan data output unit 33 of the LRF 3 outputs scan data to the control unit 4 every predetermined measurement period (for example, 50 ms) set in advance. Then, the node adding unit 41 calculates the position (x, y, θ) of the robot 1 on the world coordinate system by calculating the moving distance and direction of the vehicle body from the rotational speed of the driving wheel 22 ( That is, odometry processing is performed). Thereby, the node adding unit 41 recognizes the self position of the robot 1 on the world coordinate system. Subsequently, the node adding unit 41 adds an offset for the attachment of the LRF 3 to its own position (x, y, θ) to thereby position the LRF 3 on the world coordinate system (x s , y s , θ s ). Is calculated.

2.ノード追加処理
次にノード追加部41は、ロボット1が、距離または方位角が所定以上となる程度移動するごとに、そのときのLRF3の位置(x、y、θ)およびスキャンデータからなるノード51aとして記憶部5に記憶する。
2. Node Addition Processing Next, each time the robot 1 moves to the extent that the distance or azimuth is equal to or greater than a predetermined value, the node addition unit 41 calculates the position (x s , y s , θ s ) and scan data of the LRF 3 at that time And stored in the storage unit 5 as a node 51a.

各ノードは、LRF3からの出力をSLAM処理に適したタイミングでノード追加部41が生成するものである。LRF3からの出力として、一例として50msごとなど、比較的、短い時間間隔で一式のスキャンデータが制御部4へ出力されるため、このLRF3の出力ごとにノードを生成するとデータ量が多くなりすぎる。このため、ノード追加部41は、適度に間引いた時間間隔で、各ノード51aを生成し記憶部5へ記憶していく。なお、このノード追加部41がノード51aを生成するタイミングは、任意で設定すればよい。   In each node, the node addition unit 41 generates the output from the LRF 3 at a timing suitable for SLAM processing. As an output from the LRF 3, a set of scan data is output to the control unit 4 at relatively short time intervals such as every 50 ms as an example. Therefore, if a node is generated for each output of the LRF 3, the amount of data becomes too large. For this reason, the node addition unit 41 generates and stores each node 51 a in the storage unit 5 at a time interval appropriately thinned out. In addition, what is necessary is just to set arbitrarily the timing which this node addition part 41 produces | generates the node 51a.

3.拘束追加
次にノード追加部41は、記憶部5に記憶された各ノード情報51aを参照し、各ノードの位置関係を算出する。ノード追加部41は、オドメトリ処理による平面座標上のLRF3の(x、y、θ)を初期値として、各ノードにおける距離形状同士が最もよく重なり合う位置関係を見つける、いわゆるスキャンマッチ処理を行い、各ノード同士をつなぎ合わせる際の壁等の障害物の精度を向上させる。あるノードと他のノードとの位置関係は、拘束と呼ばれる。すなわちノード追加部41は、スキャンマッチによって各ノード間の拘束を作成し、これを表す拘束情報52aを記憶部5に記憶する。
3. Constraint addition Next, the node addition unit 41 refers to each node information 51a stored in the storage unit 5, and calculates the positional relationship of each node. The node addition unit 41 performs so-called scan matching processing that finds the positional relationship in which the distance shapes at each node most closely overlap each other with (x s , y s , θ s ) of the LRF3 on the plane coordinates by odometry processing as an initial value. And improve the accuracy of obstacles such as walls when connecting nodes together. The positional relationship between one node and another node is called constraint. That is, the node adding unit 41 creates a constraint between the nodes by the scan match, and stores the constraint information 52 a representing this in the storage unit 5.

(ループ検出部42の処理)
ループ検出部42は、ループ閉合処理を実行する。この処理は、ロボット1の軌跡上において、ロボット1が同じ場所を2回通るループ経路がある場合に、マップを正しく作成するために、ループ経路における最初の位置と最後の位置とが一致するようにマップを変形する処理のことである。言い換えると、ループ経路における最初の位置と最後の位置とが一致する拘束を生成し、これに基づいてノードの位置を修正することである。図4の例では、ノードN2からノードN1への拘束がこれに該当する。
(Processing of the loop detection unit 42)
The loop detection unit 42 executes a loop closing process. In this process, when there is a loop path in which the robot 1 passes through the same place twice on the trajectory of the robot 1, the first position and the last position in the loop path coincide with each other in order to correctly create a map. This is the process of transforming the map. In other words, a constraint in which the first position and the last position in the loop path coincide with each other is generated, and the position of the node is corrected based on the constraint. In the example of FIG. 4, the constraint from the node N2 to the node N1 corresponds to this.

ループ閉合処理は、ループ検出処理およびグラフ最適化処理を含む。   The loop closing process includes a loop detection process and a graph optimization process.

1.ループ検出処理
図4の例では、ループ検出部42は、スキャンマッチを実行することによって、ループ経路を構成するノードN2からノードN1への拘束を生成する。その際、ループ検出部42は、拘束判定の対象であるノードを対象に、各方位における壁10までの距離を平面座標系に投影演算することで一式の距離形状を生成する。ノードごとに、LRF3が検出した壁10の位置は、制御部4において、複数の点Pからなる距離形状で表される。
1. Loop Detection Processing In the example of FIG. 4, the loop detection unit 42 generates a constraint from the node N2 constituting the loop path to the node N1 by executing a scan match. At that time, the loop detection unit 42 generates a set of distance shapes by projecting the distance to the wall 10 in each azimuth on the planar coordinate system for the node that is the target of the constraint determination. For each node, the position of the wall 10 detected by the LRF 3 is represented by a distance shape including a plurality of points P in the control unit 4.

図4の(b)は、ノードN1での距離形状を表している。図4の(c)は、ノードN1から、ロボット1が移動経路Rを通って移動した後のノードN2での距離形状を表している。   FIG. 4B shows the distance shape at the node N1. FIG. 4C shows a distance shape at the node N2 after the robot 1 has moved through the movement route R from the node N1.

ループ検出部42は、ノードN1における距離形状と、ノードN2における距離形状とに基づき、ノードN1とノードN2との拘束を生成する。その際、ループ検出部42は、図4の(d)のようにノードN1とノードN2との位置関係を正しく算出できれば、適切な拘束を生成することができる。一方、図4の(e)のようにノードN1とノードN2との位置関係を間違って算出(外れ値を算出)してしまうと、誤った拘束を生成する。図4の(e)では、ノードN1の距離形状における壁と、ノードN2の距離形状における壁とを、壁の表裏を間違えて重ね合わせている。なお、外れ値(Outlier)とは、一般的には、統計などで集団から離れたところにあるデータを示す用語であり、本来は、間違った値という意味を持たないが、SLAMの分野では、外れ値は「他のデータと矛盾する間違った値」の意味で実質的に用いられる。   The loop detection unit 42 generates a constraint between the node N1 and the node N2 based on the distance shape at the node N1 and the distance shape at the node N2. At that time, if the loop detection unit 42 can correctly calculate the positional relationship between the node N1 and the node N2 as shown in FIG. 4D, it can generate an appropriate constraint. On the other hand, if the positional relationship between the node N1 and the node N2 is erroneously calculated (outlier is calculated) as shown in FIG. 4E, an erroneous constraint is generated. In FIG. 4E, the wall in the distance shape of the node N1 and the wall in the distance shape of the node N2 are overlapped with the front and back of the wall being mistaken. In addition, outliers (Outliers) are generally terms that indicate data that is away from the group in statistics and the like, and originally have no meaning as wrong values, but in the SLAM field, Outliers are effectively used to mean “wrong values that contradict other data”.

本発明によって実現される新規なスキャンマッチは、ループ検出部42によるループ閉合に関する拘束生成時に特に用いられる。このスキャンマッチによって、図4の(e)のような誤った拘束を生成することを防止し、図4の(d)に示すような正しい拘束を生成することが実現される。なお、本発明のスキャンマッチは、上述したノード追加部41による通常の拘束生成時に用いてもよい。   The novel scan match realized by the present invention is particularly used when a constraint relating to loop closure is generated by the loop detection unit 42. By this scan match, it is possible to prevent generation of an erroneous constraint as shown in FIG. 4E and to generate a correct constraint as shown in FIG. Note that the scan match of the present invention may be used during normal constraint generation by the node addition unit 41 described above.

2.グラフ最適化処理
ループ検出部42は、新たに生成した拘束を記憶部5に記憶する。これにより、新たな拘束が基準マップ53aに追加される。ループ検出部42は、追加した拘束を含む基準マップ53a内の全拘束の誤差を最小化するように、基準マップ53a内の全ノードの位置を調整する(グラフ最適化)。この処理によって、ループ経路における開始位置と終了位置とが一致する。ループ検出部42は、具体的なグラフ最適処理として、たとえば非特許文献2に記載された従来の方法を利用することができる。この処理は本発明における本質的な特徴点ではないため、これ以上の詳細な説明は省略する。
2. Graph Optimization Processing The loop detection unit 42 stores the newly generated constraint in the storage unit 5. As a result, a new constraint is added to the reference map 53a. The loop detection unit 42 adjusts the positions of all the nodes in the reference map 53a so as to minimize the error of all the constraints in the reference map 53a including the added constraint (graph optimization). By this processing, the start position and the end position in the loop path coincide with each other. The loop detection unit 42 can use, for example, a conventional method described in Non-Patent Document 2 as specific graph optimization processing. Since this process is not an essential feature point in the present invention, further detailed description is omitted.

(マップ生成部43の処理)
マップ生成部43は、測定範囲外形相当の面積を持つあらかじめ用意した空マップに、各ノードにおける障害物の位置である各点Pの位置を描いていく。マップ生成部43は、最初は未知領域である空マップ上の、壁や柱等の障害物の位置座標を、各ノードにおける障害物を表す各点Pの位置から算出し、空マップに入力していく。そして、マップ生成部43は、この空マップに入力した各点Pの位置の内側を、ロボット1の走行可能領域として特定する。これによって、マップ生成部43は出力マップ53cを作成し記憶部5に記憶する。
(Processing of the map generation unit 43)
The map generation unit 43 draws the position of each point P, which is the position of the obstacle at each node, on an empty map prepared in advance having an area corresponding to the outer shape of the measurement range. The map generation unit 43 first calculates the position coordinates of obstacles such as walls and pillars on the empty map, which is an unknown area, from the position of each point P representing the obstacle at each node, and inputs it to the empty map. To go. Then, the map generation unit 43 specifies the inside of the position of each point P input to this sky map as the travelable area of the robot 1. As a result, the map generation unit 43 creates an output map 53 c and stores it in the storage unit 5.

(方位区分の定義)
詳しくは後述するが、本実施形態のロボット1aは、基準マップ53aに加えて、各基準スキャンに含まれるプロットの方位を表す所定の方位マップ53bを作成することによって、スキャンマッチを正確に実行する。図5は、本発明の実施形態1における、方位マップ53bを構成するグリッドGにおいて規定される方位区分の詳細を説明するための図である。方位マップ53bは、複数のグリッドGによって構成されている。各グリッドGは、その位置に壁が測定された場合、どの方位から測定されたかを、以下に説明する方位ビット値(記録点の測定方向の情報)として保持する。各グリットGには、全方位範囲が所定の方位範囲ごとに区分された複数の方位区分が規定されている。図5に示すように、本実施形態では、方位マップ53b内の各グリッドGにおいて規定される方位区分は8種類であり、それぞれ、45度分の異なる角度範囲を有する。具体的には次のとおりである:
方位区分0=0〜22.5°および337.5〜360°間
方位区分1=22.5〜67.5°間
方位区分2=67.5〜112.5°間
方位区分3=112.5〜157.5°間
方位区分4=157.5〜202.5°間
方位区分5=202.5〜247.5°間
方位区分6=247.5〜292.5°間
方位区分7=292.5〜337.5°間。
(Definition of orientation classification)
As will be described in detail later, the robot 1a of the present embodiment accurately executes a scan match by creating a predetermined orientation map 53b representing the orientation of the plot included in each reference scan in addition to the reference map 53a. . FIG. 5 is a diagram for explaining details of the azimuth divisions defined in the grid G constituting the azimuth map 53b in the first embodiment of the present invention. The orientation map 53b is composed of a plurality of grids G. Each grid G, when a wall is measured at that position, holds from which azimuth it is measured as an azimuth bit value (information on the measurement direction of a recording point) described below. Each grid G is defined with a plurality of azimuth sections in which the entire azimuth range is divided into predetermined azimuth ranges. As shown in FIG. 5, in this embodiment, there are eight types of azimuth divisions defined in each grid G in the azimuth map 53b, each having a different angle range of 45 degrees. Specifically:
Azimuth section 0 = 0 to 22.5 ° and 337.5 to 360 ° Azimuth section 1 = 22.5 to 67.5 ° Azimuth section 2 = 67.5 to 112.5 ° Azimuth section 3 = 112. Between 5 and 157.5 ° Orientation section 4 = Between 157.5 and 202.5 degrees Orientation section 5 = Between 202.5 and 247.5 degrees Orientation section 6 = Between 247.5 and 292.5 degrees Orientation section 7 = Between 292.5-337.5 °.

このように複数の方位区分0〜7は、グリッドGにおける全方位範囲が整数値の個数に均等に区分されたものである。なお、本実施形態では、方位マップ53bにおけるx軸プラス方向を、方位マップ53bにおける0度方向とする。   As described above, the plurality of azimuth sections 0 to 7 are obtained by equally dividing the entire azimuth range in the grid G into the number of integer values. In the present embodiment, the x-axis plus direction in the orientation map 53b is defined as the 0 degree direction in the orientation map 53b.

ノード追加部41は、方位マップ53bの作成時、まず、スキャンデータ51c中の各プロットの戻り光線方位が属する方位区分を算出する。戻り光線方位とは、グリッドGからLRF3に向かう光線の方向を方位マップ53bにおいて見た角度のことである。   When creating the azimuth map 53b, the node adding unit 41 first calculates the azimuth classification to which the return beam azimuth of each plot in the scan data 51c belongs. The return beam azimuth is an angle obtained by viewing the direction of the beam from the grid G toward the LRF 3 in the azimuth map 53b.

グリッドGにおいて、各方位区分に加えて所定の隣接幅があらかじめ規定されている。本実施形態では隣接幅は1である。ノード追加部41は、プロットの戻り光線方位が属する方位区分を隣接幅だけ広げることによって、プロットの戻り光線方位に対応する、数値列としての方位範囲を算出する。戻り光線方位が属する方位区分と、そのとき算出される方位範囲との関係は次のとおりである。   In the grid G, a predetermined adjacent width is defined in advance in addition to each orientation section. In this embodiment, the adjacent width is 1. The node adding unit 41 calculates an azimuth range as a numerical sequence corresponding to the return ray azimuth of the plot by expanding the azimuth section to which the return ray azimuth of the plot belongs by the adjacent width. The relationship between the azimuth classification to which the return beam azimuth belongs and the azimuth range calculated at that time is as follows.

方位区分=0のとき、方位範囲=(7、0、1)
方位区分=1のとき、方位範囲=(0、1、2)
方位区分=2のとき、方位範囲=(1、2、3)
方位区分=3のとき、方位範囲=(2、3、4)
方位区分=4のとき、方位範囲=(3、4、5)
方位区分=5のとき、方位範囲=(4、5、6)
方位区分=6のとき、方位範囲=(5、6、7)
方位区分=7のとき、方位範囲=(6、7、0)。
When the direction division = 0, the direction range = (7, 0, 1)
When direction division = 1, direction range = (0, 1, 2)
When azimuth division = 2, azimuth range = (1,2,3)
When azimuth division = 3, azimuth range = (2, 3, 4)
When azimuth division = 4, azimuth range = (3, 4, 5)
When direction division = 5, direction range = (4, 5, 6)
When azimuth division = 6, azimuth range = (5, 6, 7)
When the orientation division = 7, the orientation range = (6, 7, 0).

ここで、方位範囲における各数字は、グリッドGにおいて規定される方位区分の番号を示す。   Here, each number in the azimuth range indicates a azimuth division number defined in the grid G.

ノード追加部41は、あるプロットに対して算出した方位範囲を用いて、方位マップ53bにおける当該プロットに対応するグリッドGの方位ビット値を算出する。方位ビット値とは、方位範囲に含まれる各0〜7の数値の有無を、それぞれ1桁〜8桁目のビット(測定方向の存在を示す評価値)の真偽に対応させ、各ビットをOR演算することによって算出される値(測定方向の情報)である。具体的には、方位範囲に含まれる数字に対応する桁のビットを1とし、含まれない数字に対応する桁のビットを0として、各ビットの値をOR演算する。これにより、本実施形態の方位ビット値は0〜255のいずれかの値を取る。方位ビット値が0であれば、グリッドGにおける方位区分の値はすべて0である。一方、方位ビット値が255であれば、グリッドGにおける方位区分の値はすべて1である。   The node addition unit 41 calculates the azimuth bit value of the grid G corresponding to the plot in the azimuth map 53b using the azimuth range calculated for a certain plot. The azimuth bit value corresponds to the presence / absence of the numerical values of 0 to 7 included in the azimuth range with the true / false of the 1st to 8th bits (evaluation value indicating the presence of the measurement direction). It is a value (measurement direction information) calculated by OR operation. Specifically, the bit of the digit corresponding to the number included in the azimuth range is set to 1, and the bit of the digit corresponding to the number not included is set to 0, and the value of each bit is ORed. Thereby, the azimuth | direction bit value of this embodiment takes any value of 0-255. If the azimuth bit value is 0, the values of the azimuth sections in the grid G are all 0. On the other hand, if the azimuth bit value is 255, the values of the azimuth divisions in the grid G are all 1.

図6は、本発明の実施形態1における方位ビット値の算出例および方位マップ53bの例を示す図である。この図の(a)では、1つのグリッドGが9つの同じ大きさのサブグリッドGに分割され、中央を除く8つの各サブグリッドGに対して、図15に規定される方位区分0〜7のうち、サブグリッドGの配置によって決まる方位に対応する方位区分の番号が振られている。   FIG. 6 is a diagram illustrating a calculation example of the direction bit value and an example of the direction map 53b according to the first embodiment of the present invention. In (a) of this figure, one grid G is divided into nine sub-grids G of the same size, and for each of the eight sub-grids G excluding the center, the orientation sections 0 to 7 defined in FIG. Among these, the number of the direction division corresponding to the direction determined by the arrangement of the subgrid G is assigned.

図6の(a)に示すように、プロットの戻り光線方位が方位区分1に含まれる場合、方位区分1には方位区分0および2が隣接している。そのため、方位範囲=(0、1、2)である。この場合、このプロットに対応するグリッドGの方位ビット値は、2^0|2^1|2^2=0000111b=07h(16進数)である。これを10進数で表すと、2+2+2=7である。 As shown in FIG. 6A, when the return beam azimuth of the plot is included in the azimuth section 1, the azimuth sections 1 and 2 are adjacent to each other. Therefore, the azimuth range = (0, 1, 2). In this case, the orientation bit value of the grid G corresponding to this plot is 2 ^ 0 | 2 ^ 1 | 2 ^ 2 = 0000111b = 07h (hexadecimal number). When this is expressed in decimal, it is 2 0 +2 1 +2 2 = 7.

ノード追加部41は、あるプロットに対応するグリッドGに対して算出した方位ビット値を、このグリッドGが有する方位ビット値の既存値と論理OR演算することによって、このグリッドGの方位ビット値を更新する。この結果、グリッドGは、複数の異なるプロットから算出される複数の方位区分を表す方位ビット値を有することができるようになる。たとえばグリッドGの方位ビット値が15(2+2+2+2)であれば、このグリッドGでは、方位区分0〜3がすべて「有」であることが分かる。 The node adding unit 41 logically ORs the azimuth bit value calculated for the grid G corresponding to a certain plot with the existing value of the azimuth bit value of the grid G, thereby obtaining the azimuth bit value of the grid G. Update. As a result, the grid G can have azimuth bit values representing a plurality of azimuth sections calculated from a plurality of different plots. For example, if the azimuth bit value of the grid G is 15 (2 0 +2 1 +2 2 +2 3 ), it can be seen that in this grid G, the azimuth sections 0 to 3 are all “present”.

図6の(b)に、本実施形態における方位マップ53bの例を示す。この例では、2つのスキャンデータを合成することによって作成された方位マップ53bを示す。ノードN11において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる2つのプロットが、グリッドG1およびグリッドG2に向かっている。したがって、グリッドG1およびグリッドG2におけるこれらのプロットの投影に対応する方位範囲(戻り光線方位が属する方位区分およびその隣接箇所)が「有」になる(図中の網掛け箇所)。   FIG. 6B shows an example of the orientation map 53b in the present embodiment. In this example, an orientation map 53b created by combining two scan data is shown. When the scan data acquired at the node N11 is projected onto the orientation map 53b, two plots included in the scan data are directed to the grid G1 and the grid G2. Therefore, the azimuth range corresponding to the projection of these plots on the grid G1 and the grid G2 (the azimuth section to which the return beam azimuth belongs and its adjacent location) becomes “present” (shaded location in the figure).

一方、ノードN12において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる2つのプロットが、グリッドG1〜G3に向かっている。したがって、グリッドG1〜G3におけるこれらのプロットの投影に対応する方位範囲が「有」になる(図中の網掛け箇所)。   On the other hand, when the scan data acquired at the node N12 is projected onto the orientation map 53b, two plots included in the scan data are directed toward the grids G1 to G3. Therefore, the azimuth range corresponding to the projection of these plots on the grids G1 to G3 is “present” (shaded portion in the figure).

本実施形態では、各グリッドGの方位区分が8種類であるので、各グリッドGが有することができる方位ビット値は、8ビット(0〜255までのいずれか)の値を取る。したがって、各グリッドGにおけるプロットの方位を細かく規定することができる。   In this embodiment, since each grid G has eight types of azimuth divisions, the azimuth bit value that each grid G can have takes a value of 8 bits (any one of 0 to 255). Therefore, the orientation of the plot in each grid G can be defined in detail.

(処理の流れ)
図7および図8を参照して、ノード追加部41における処理の流れおよびループ検出部42による処理の流れをそれぞれ以下に説明する。図7は、本発明の実施形態1におけるノード追加部41による処理の流れを示すフローチャートである。図8は、本発明の実施形態1におけるループ検出部42による処理の流れを示すフローチャートである。ロボット1では、ノード追加部41による一連の処理およびループ検出部42による一連の処理は、並行して実行される。
(Process flow)
With reference to FIG. 7 and FIG. 8, the flow of processing in the node addition unit 41 and the flow of processing in the loop detection unit 42 will be described below. FIG. 7 is a flowchart showing a flow of processing by the node adding unit 41 according to the first embodiment of the present invention. FIG. 8 is a flowchart showing a flow of processing performed by the loop detection unit 42 according to the first embodiment of the present invention. In the robot 1, a series of processes by the node addition unit 41 and a series of processes by the loop detection unit 42 are executed in parallel.

図7に示すように、ノード追加部41はまず、エンコーダ23から取得した回転量情報と、スキャンデータ出力部33から取得したスキャンデータとを用いて、オドメトリ処理を実行する(S1)。次に、ノード追加部41は、ノードを追加すべきかを判定する(S2)。S2がNOなら、図7の処理は最初に戻る。一方、S2がYESなら、ノード追加部41は、スキャンマッチを実行することによって、ノードおよび拘束を生成する(S3)。以下では、このとき拘束と共に追加される最新のノードを対象ノードと呼び、その一つ前に追加されたノードを基準ノードと呼ぶ。ノード追加部41は、生成したノードおよび拘束を基準マップ53aに追加する(S4、S5)。この後、図7の処理はS1に戻る。すなわちノード追加部41は、図7に示す一連の処理を繰り返し実行する。   As shown in FIG. 7, the node adding unit 41 first executes odometry processing using the rotation amount information acquired from the encoder 23 and the scan data acquired from the scan data output unit 33 (S1). Next, the node adding unit 41 determines whether to add a node (S2). If S2 is NO, the process of FIG. 7 returns to the beginning. On the other hand, if S2 is YES, the node adding unit 41 generates a node and a constraint by executing a scan match (S3). Hereinafter, the latest node added together with the constraint at this time is called a target node, and the node added immediately before is called a reference node. The node adding unit 41 adds the generated node and constraint to the reference map 53a (S4, S5). Thereafter, the process of FIG. 7 returns to S1. That is, the node adding unit 41 repeatedly executes a series of processes shown in FIG.

図8に示すように、ループ検出部42はまず、ループを構成する拘束の候補に残りがあるか否かを判定する(S11)。本実施形態では、拘束の候補とは、ノード番号が所定値(たとえば10)以上離れている2つのノードのことである。これらの2つのノードのうち、一方を基準ノードNR1、他方を対象ノードNTと称する。ループ検出部42は、拘束として追加すべきか否かを判定済みの2つのノードの組み合わせについては、その記録を残しておく。そして、記録済みの組み合わせの2つのノードについては、S11において、拘束候補から除外する。S11がNOなら、ループ検出部42は一定時間待機する(S12)。この後、図8の処理はS11に戻る。   As shown in FIG. 8, the loop detection unit 42 first determines whether or not there is a remaining constraint candidate constituting the loop (S11). In the present embodiment, the constraint candidates are two nodes whose node numbers are separated by a predetermined value (for example, 10) or more. Of these two nodes, one is referred to as a reference node NR1 and the other as a target node NT. The loop detection unit 42 keeps a record of the combination of two nodes that have already been determined whether or not to be added as constraints. Then, two nodes of the recorded combination are excluded from the constraint candidates in S11. If S11 is NO, the loop detection unit 42 waits for a predetermined time (S12). Thereafter, the processing of FIG. 8 returns to S11.

一方、S11がYESなら、ループ検出部42は、拘束候補の1件を評価する(S13)。次にループ検出部42は、拘束を追加すべきか否かを判定する(S14)。具体的には、ループ検出部42は、2つのノードの位置間の距離が、所定値(たとえば5メートル)よりも小さい場合、これらの2つのノード間の拘束を追加すべきであると判定する。S14がYESなら、ループ検出部42はスキャンマッチを実行し(S15)、その結果に基づき、拘束を基準マップ53aに追加する(S15)。その後、ループ検出部42はグラフ最適化を実行する(S16)。この後、図8の処理はS11に戻る。すなわちループ検出部42は、図8に示す一連の処理を繰り返し実行する。   On the other hand, if S11 is YES, the loop detection unit 42 evaluates one constraint candidate (S13). Next, the loop detection unit 42 determines whether or not a constraint should be added (S14). Specifically, when the distance between the positions of the two nodes is smaller than a predetermined value (for example, 5 meters), the loop detection unit 42 determines that a constraint between the two nodes should be added. . If S14 is YES, the loop detection unit 42 executes a scan match (S15), and adds a constraint to the reference map 53a based on the result (S15). Thereafter, the loop detection unit 42 performs graph optimization (S16). Thereafter, the processing of FIG. 8 returns to S11. That is, the loop detection unit 42 repeatedly executes a series of processes shown in FIG.

(スキャンマッチの詳細)
図9〜図12を参照して、本実施形態におけるスキャンマッチの詳細を説明する。図9は、本実施形態における基準マップ53aを作成するための処理手順を示す図である。図10は、本実施形態におけるマッチ位置算出のための基本的な処理手順を示す図である。図9および図10に示す一連の処理は、従来技術と同様のものである。一方、図11および図12に示す一連の処理は、それぞれ、図8および図10に対して追加で行われる、本実施形態に特有な処理である。
(Details of scan match)
The details of the scan match in the present embodiment will be described with reference to FIGS. FIG. 9 is a diagram showing a processing procedure for creating the reference map 53a in the present embodiment. FIG. 10 is a diagram showing a basic processing procedure for calculating the match position in the present embodiment. A series of processes shown in FIG. 9 and FIG. 10 are the same as those in the prior art. On the other hand, a series of processes shown in FIGS. 11 and 12 are processes peculiar to the present embodiment, which are additionally performed on FIGS. 8 and 10, respectively.

本実施形態において、ノード追加部41およびループ検出部42のうち少なくともいずれかが、図9〜図12に示すスキャンマッチ処理を行うことができる。以下では、ループ検出部42が、まず基準マップ53aおよび方位マップ53bを作成し、これらのマップを用いてマッチ位置の算出処理を実行することを例に挙げて、図9〜図12に示すスキャンマッチの詳細を説明する。   In the present embodiment, at least one of the node addition unit 41 and the loop detection unit 42 can perform the scan match process shown in FIGS. In the following description, the loop detection unit 42 first creates the reference map 53a and the orientation map 53b, and executes the match position calculation processing using these maps. Explain the details of the match.

(基準マップ53aの作成)
ループ検出部42は、まず、複数のグリッド(領域)によって区分されている空の基準マップ53aを用意する。各グリッドのサイズ(一辺の長さ)は固定値であり、本実施形態では50mmとする。基準マップ53aのサイズ(一辺の長さ)は固定値であり、本実施形態では400グリッドとする。このサイズは、概ね、LRF3を定格距離の2倍をグリッドサイで割った値に決定する。基準マップ53aの原点は、その中央にある。基準マップ53aの各座標軸方向は、いずれも、基準ノードNR1のセンサ座標系における各座標軸方向に合わせて作成される。各グリッドは、基準マップ53a内のそのグリッドの位置における所定のグリッド値(占有確率)を有する。この占有確率は、そのグリッドの位置に実際の壁がある確率のことである。基準マップ53aの各グリッドに元々規定される座標情報と、そのグリッドの値との組み合わせが、記録点または測定点の位置情報に相当する。空の基準マップ53aの作成時点において、すべてのグリッドの値(占有確率)は、後述する所定の最低値である。
(Creation of reference map 53a)
The loop detection unit 42 first prepares an empty reference map 53a divided by a plurality of grids (regions). The size (length of one side) of each grid is a fixed value, and is 50 mm in this embodiment. The size (length of one side) of the reference map 53a is a fixed value, and is 400 grids in this embodiment. This size is roughly determined by dividing LRF3 by twice the rated distance divided by the grid size. The origin of the reference map 53a is in the center. Each coordinate axis direction of the reference map 53a is created according to each coordinate axis direction in the sensor coordinate system of the reference node NR1. Each grid has a predetermined grid value (occupancy probability) at the position of the grid in the reference map 53a. This occupancy probability is the probability that an actual wall is at the position of the grid. A combination of coordinate information originally defined for each grid of the reference map 53a and a value of the grid corresponds to position information of a recording point or a measurement point. At the time of creating the empty reference map 53a, all grid values (occupancy probabilities) are predetermined minimum values to be described later.

ループ検出部42は、少なくとも1つのスキャンを用いて、基準マップ53aを作成する。ここでいう少なくとも1つのスキャンとは、ノード群51に含まれる、基準ノードNR1を含む所定数(たとえば過去の5件)のノードである。以下では、ループ検出部42が、5つのノードNR1〜NR5を用いて基準マップ53aを作成する例を説明する。   The loop detection unit 42 creates the reference map 53a using at least one scan. The at least one scan here is a predetermined number of nodes (for example, the past five) including the reference node NR1 included in the node group 51. Hereinafter, an example in which the loop detection unit 42 creates the reference map 53a using the five nodes NR1 to NR5 will be described.

まず、ループ検出部42は、基準マップ53aにおける、5つのノードを1つずつ対象スキャンとして選択する。そして、対象スキャン内のスキャンデータ51cに含まれる各測定データから、評価対象である各プロットの位置P[x、y]を算出する。この位置P[x、y]は、基準マップ53aにおけるプロットに対するグリッドの座標(グリッド座標)である。具体的には、ノード追加部41は、対象ノード内のスキャンデータに含まれる−100度から+100度までの各方位における壁10までの各距離を、基準ノードNR1のセンサ座標系において該当ノードNRの位置および方位を起点にして平面座標系に投影演算し、これによって得られた各座標をグリッドサイズで割ることによって、グリッド座標である各対象プロットの各位置P[x、y](測定点の位置)を算出する。これにより、1つの対象スキャンから201件のプロット位置P[x、y]が算出される。   First, the loop detection unit 42 selects five nodes one by one as the target scan in the reference map 53a. Then, the position P [x, y] of each plot to be evaluated is calculated from each measurement data included in the scan data 51c in the target scan. The position P [x, y] is a grid coordinate (grid coordinate) with respect to the plot in the reference map 53a. Specifically, the node adding unit 41 calculates each distance to the wall 10 in each direction from −100 degrees to +100 degrees included in the scan data in the target node in the corresponding node NR in the sensor coordinate system of the reference node NR1. The position and orientation of each of the target plots, which are grid coordinates, are calculated by projecting the coordinates and the obtained coordinates onto the plane coordinate system and dividing the obtained coordinates by the grid size (measurement points). Is calculated). Thereby, 201 plot positions P [x, y] are calculated from one target scan.

図9に示す処理では、所定のぼやけ幅があらかじめ決定されている。このぼやけ幅は、x軸方向およびy方向のいずれにおいても、−w〜w(Wは整数)の範囲の値を取り得る。ループ検出部42は、x軸方向の所定のぼやけ幅xと、y軸方向のぼやけ幅yの組み合わせごとに、図9の7行および8行の処理を実行する。 In the process shown in FIG. 9, a predetermined blur width is determined in advance. This blur width can take a value in the range of −w to w (W is an integer) in both the x-axis direction and the y-direction. Loop detecting unit 42, a predetermined blur width x d in the x-axis direction, for each combination of y-axis direction of the blur width y d, it executes the 7 rows and 8 rows of the processing of FIG.

まずループ検出部42は、プロット位置P[x、y]を、x軸方向にxだけずらし、かつ、y軸方向にyだけずらしたことによって、位置P[x+x、y+x]を算出する。そして、P[x+x、y+x]に対応するグリッドにおける占有確率(測定点の存在を示す評価値)を、算出する。なお、ループ検出部42は、この処理を全xdおよび全ydの組み合わせに対して実行することによって、P[x、y]を頂点とする正規分布を算出することができる。 Loop detecting unit 42 First, the plot position P [x, y], and shifted by x d in the x-axis direction, and, by shifted by y d in the y-axis direction, the position P [x + x d, y + x d] a calculate. Then, the occupancy probability (evaluation value indicating the presence of the measurement point) in the grid corresponding to P [x + x d , y + x d ] is calculated. Note that the loop detection unit 42 can calculate a normal distribution having P [x, y] as a vertex by executing this process on a combination of all xd and all yd.

次に、ループ検出部42は、P[x+x、y+x]に対応するグリッドにおける、占有確率の既存値を、基準マップ53aから取得する。ループ検出部42は、対象プロットのP[x+x、y+x]に対して算出した占有確率と、P[x+x、y+x]に対応するグリッドにおける占有確率の既存値とを比較する。そして、より大きい方の値を、基準マップ53aにおけるP[x+x、y+x]に対応するグリッドに書き込む。P[x+x、y+x]に対して算出した占有確率が既存値よりも大きければ、P[x+x、y+x]に対応するグリッドの占有確率が新たな値(記録点の存在を示す評価値)に更新される。 Next, the loop detection unit 42 acquires the existing value of the occupation probability in the grid corresponding to P [x + x d , y + x d ] from the reference map 53a. The loop detection unit 42 compares the occupation probability calculated for P [x + x d , y + x d ] of the target plot with the existing value of the occupation probability in the grid corresponding to P [x + x d , y + x d ]. Then, the larger value is written in the grid corresponding to P [x + x d , y + x d ] in the reference map 53a. If the occupation probability calculated for P [x + x d , y + x d ] is larger than the existing value, the occupation probability of the grid corresponding to P [x + x d , y + x d ] is a new value (an evaluation indicating the existence of a recording point). Value).

以上の処理によって、ループ検出部42は、基準マップ53aを作成する。ループ検出部42は、スキャンマッチを実行するたびに、基準マップ53aを作り直す。これは、基準マップ53aの作成に用いられるノード51a(複数のノード51aが用いられる場合はノード範囲)が、スキャンマッチごとに異なるからである。なお、基準マップ53aにおける各グリッドの(占有確率)を輝度に対応させて画像化すると、図17の(b)に示すようなマップが得られる。   Through the above processing, the loop detection unit 42 creates the reference map 53a. The loop detection unit 42 recreates the reference map 53a every time a scan match is executed. This is because the node 51a (node range when a plurality of nodes 51a is used) used for creating the reference map 53a is different for each scan match. When the (occupancy probability) of each grid in the reference map 53a is imaged in correspondence with the luminance, a map as shown in (b) of FIG. 17 is obtained.

本実施形態では、ループ検出部42は、図9に示す一連の処理を実行するとき、さらに、図11に示す一連の処理も実行することによって、基準マップ53aに加えて方位マップ53bも作成する。図11は、本実施形態における方位マップ53bを作成するための処理手順を示す図である。   In the present embodiment, when executing the series of processing shown in FIG. 9, the loop detection unit 42 also creates the orientation map 53b in addition to the reference map 53a by also executing the series of processing shown in FIG. . FIG. 11 is a diagram showing a processing procedure for creating the orientation map 53b in the present embodiment.

ループ検出部42は、図9の1行目の処理によって空の基準マップ53aを作成するとき、さらに、図11の1.1行目の処理によって、空の方位マップ53bを作成する。方位マップ53bのサイズ、グリッドサイズ、および原点の位置は、いずれも空の基準マップ53aと同じである。ただし、方位マップ53bのグリッドは、占有確率ではなく方位ビット値を値として有し、各グリッドの初期値はいずれも0とする。方位マップ53bの各グリッドに元々規定される座標情報と、そのグリッドの値との組み合わせが、記録点または測定点の方向情報に相当する。   When the loop detection unit 42 creates the empty reference map 53a by the process of the first line in FIG. 9, the loop detection unit 42 also creates the empty direction map 53b by the process of the 1.1 line of FIG. The orientation map 53b has the same size, grid size, and origin position as the empty reference map 53a. However, the grid of the orientation map 53b has not the occupation probability but the orientation bit value as a value, and the initial value of each grid is 0. A combination of coordinate information originally defined for each grid of the orientation map 53b and a value of the grid corresponds to direction information of a recording point or a measurement point.

(方位マップ53bの作成)
ループ検出部42は、図9の8行目の処理を実行するとき、さらに、図11の8.1行〜8.5行に示す処理を実行することによって、必要に応じて方位マップ53bにおける各グリッドの値を更新する。具体的には、まずループ検出部42は、基準マップ53aにおけるP[x+x、y+x]に対応するグリッドの占有確率を取得し、それが0であるか否かを判定する。そして、占有確率が0ではない場合、ループ検出部42は、P[x+x、y+x]に対応するグリッドの方位区分および隣接幅に基づき、P[x+x、y+x]の方位範囲を算出する(8.2行)。次にループ検出部42は、算出したP[x+x、y+x]の方位範囲に基づき、P[x+x、y+x]の方位ビット値を算出する(8.3行)。最後にループ検出部42は、P[x+x、y+x]の方位ビット値と、方位マップ53bにおけるP[x+x、y+x]に対応するグリッドの既存値と論理OR演算する。ループ検出部42は、この演算によって得た値を、方位マップ53bにおける当該グリッドの書き込むことによって、当該グリッド既存値を更新する(8.4行)。
(Creation of orientation map 53b)
When the loop detection unit 42 executes the process on the eighth line in FIG. 9, the loop detection unit 42 further executes the process shown on the 8.1th line to the 8.5th line in FIG. Update the value of each grid. Specifically, the loop detection unit 42 first acquires the occupancy probability of the grid corresponding to P [x + x d , y + x d ] in the reference map 53a, and determines whether or not it is zero. When occupancy probability is not 0, the loop detector 42, calculates the azimuth range of P [x + x d, y + x d] Based on the orientation division and the adjacent width of the grid corresponding to, P [x + x d, y + x d] (Line 8.2). Then the loop detector 42, the calculated P [x + x d, y + x d] based on the orientation range, the azimuth is calculated bit value of P [x + x d, y + x d] (8.3 lines). Finally the loop detector 42 in the, P [x + x d, y + x d] and azimuth bit value, P [x + x d, y + x d] in orientation map 53b to the existing value and the logical OR operation of the grid corresponding to. The loop detection unit 42 updates the grid existing value by writing the value obtained by this calculation into the grid in the orientation map 53b (line 8.4).

以上の処理によって、ループ検出部42は、方位マップ53bを作成する。ループ検出部42は、スキャンマッチを実行するたびに、方位マップ53bを作り直す。これは、方位マップ53bの作成に用いられるノード51a(複数のノード51aが用いられる場合はノード範囲)が、スキャンマッチごとに異なるからである。   Through the above processing, the loop detection unit 42 creates the orientation map 53b. The loop detection unit 42 recreates the orientation map 53b each time a scan match is executed. This is because the node 51a (node range when a plurality of nodes 51a is used) used for creating the orientation map 53b is different for each scan match.

(マッチ位置の算出)
ループ検出部42は、続いて図10に示す処理を実行することによって、基準マップ53aにおける対象スキャンのマッチ位置を算出する。ループ検出部42は、まず、基準マップ53aにおいて対象スキャンを探索するときの所定の探索範囲を算出する。本実施形態では、ループ検出部42は、探索範囲として、θの最小値θmin、最大値θmax、および間隔θstep、xの最小値xminおよびxmax、ならびにyの最小値yminおよび最大値ymaxを算出する。xmin、xmax、ymin、およびymaxは、いずれもグリッド座標でありかつ整数値を取る。xmin、xmax、ymin、ymax、θmin、およびθmaxは、それぞれ探索開始位置PS(x、y、θ)に対して所定の探索幅を加えることによって、決定される。具体的には、探索開始位置PSは基準ノードNR1の位置から見た対象ノードNTの位置として、ノードNR1におけるセンサ座標系で算出されたのち、グリッド座標に換算して決定される。さらに、xmin、xmax、ymin、ymax、θminおよびθmaxは、それぞれ所定値w2またはwθを用いて、以下の通り算出される。
(Match position calculation)
Subsequently, the loop detection unit 42 calculates the target scan match position in the reference map 53a by executing the processing shown in FIG. The loop detection unit 42 first calculates a predetermined search range when searching for a target scan in the reference map 53a. In the present embodiment, the loop detection unit 42 includes, as search ranges, a minimum value θ min, a maximum value θ max , and an interval θ step , a minimum value x min and x max of x, and a minimum value y min of y and The maximum value y max is calculated. x min , x max , y min , and y max are all grid coordinates and take integer values. x min , x max , y min , y max , θ min , and θ max are determined by adding a predetermined search width to the search start position PS (x, y, θ), respectively. Specifically, the search start position PS is determined as the position of the target node NT viewed from the position of the reference node NR1, calculated in the sensor coordinate system at the node NR1, and then converted into grid coordinates. Further, x min , x max , y min , y max , θ min, and θ max are calculated as follows using the predetermined value w2 or wθ, respectively.

max=PS(x)+w2
min=PS(x)−w2
max=PS(y)+w2
min=PS(y)−w2
θmax=PS(θ)+wθ
θmin=PS(θ)−wθ
次に、ループ検出部42は、θmin〜θmaxのうちいずれかのθと、xmin〜xmaxのうちいずれかのxと、ymin〜ymaxのうちいずれかのyとの異なる組み合わせごとに、図10の5行〜7行の処理を実行する。このときループ検出部42は、θをθstepずつ順次増加させ、xおよびyを1つずつ順次増加させる。
x max = PS (x) + w2
x min = PS (x) −w2
y max = PS (y) + w2
y min = PS (y) −w2
θ max = PS (θ) + wθ
θ min = PS (θ) −wθ
Next, the loop detecting unit 42, and either theta o of theta min through? Max, and one of x o of x min ~x max, and either y o of y min ~y max For each of the different combinations, the processing of lines 5 to 7 in FIG. 10 is executed. At this time, the loop detection unit 42 sequentially increases θ by θ step and sequentially increases x o and yo by one.

具体的には、ループ検出部42はまず、対象スキャンの各オフセット後プロットを算出する(5行)。ここでいうオフセット後プロットとは、対象スキャンを基準マップ53aにおけるオフセットされた座標(x、y、θ)に投影した場合の各プロットのことである。対象スキャンには合計201件のプロットが含まれるので、全オフセット後プロットは、各座標(x、y)を要素とする201件の配列である。 Specifically, the loop detection unit 42 first calculates a post-offset plot of the target scan (line 5). The post-offset plot here refers to each plot when the target scan is projected onto the offset coordinates (x o , y o , θ o ) in the reference map 53a. Since the target scan includes a total of 201 plots, the plot after all offsets is an array of 201 having each coordinate (x, y) as an element.

次に、ループ検出部42は、基準マップ53aにおける各オフセット後プロットに対応する各グリッドの占有確率を取得する(6行)。これにより、合計201個の占有確率(
記録点の存在を示す評価値)が取得される。
Next, the loop detection unit 42 acquires the occupation probability of each grid corresponding to each post-offset plot in the reference map 53a (line 6). As a result, a total of 201 occupation probabilities (
An evaluation value indicating the presence of a recording point) is acquired.

ループ検出部42は、全オフセット後プロット分の各占有確率を総合(積算)することによって、現在のオフセット位置(x、y、θ)における所定のオフセット確率を算出する(7行)。これにより、201個の占有確率に基づき1つのオフセット確率が算出される。このオフセット確率は、基準マップ53aにおける記録済みのプロット(測定された壁)の位置と、スキャンデータ51cから算出されるプロットの位置との一致度合いを示す位置評価値である。 The loop detection unit 42 calculates a predetermined offset probability at the current offset position (x o , y o , θ o ) by integrating (accumulating) each occupation probability for the plots after all offsets (line 7). . Thereby, one offset probability is calculated based on 201 occupation probabilities. This offset probability is a position evaluation value indicating the degree of coincidence between the position of the recorded plot (measured wall) in the reference map 53a and the position of the plot calculated from the scan data 51c.

以上の処理によって、ループ検出部42は、一つの対象スキャンに対して、全部でオフセット回数NO=(2×wθ÷θstep+1)×(2×w2+1)×(2×w2+1)個のオフセット確率を算出する。ループ検出部42は、こうして算出した全オフセット条件のオフセット確率とオフセット量(x、y、θ)とを掛け合わせ、これにより得られたx、y、およびθの各201件の総和をオフセット回数NOで除算する(すなわち加重平均する)ことによって、基準マップ53aにおける対象スキャンのマッチ位置(x、y、θ)を算出する(行11)。なお、x、y、およびθは、整数ではなく、小数点以下の値を持つ数である。 As a result of the above processing, the loop detection unit 42 has a total number of offsets NO = (2 × wθ ÷ θ step +1) × (2 × w2 + 1) × (2 × w2 + 1) offset probabilities for one target scan. Is calculated. The loop detection unit 42 multiplies the offset probability and the offset amount (x o , y o , θ o ) of all offset conditions calculated in this way, and the sum total of 201 each of x, y, and θ obtained as a result. Is divided by the number of offsets NO (ie, weighted average) to calculate the target scan match position (x m , y m , θ m ) in the reference map 53a (line 11). Note that x m , y m , and θ m are not integers but numbers having a value after the decimal point.

(マッチ位置算出の追加処理)
図12は、本実施形態に係るループ検出部42によって実行されるスキャンマッチの追加処理を示す図である。ループ検出部42は、図10の5行に示す処理を実行するとき、さらに、図12の5.1行に示す処理を実行する。具体的には、ループ検出部42は、算出されたオフセット後プロットの各点について、戻り光線方位が属する方位区分を求め、さらに、それを元に方位ビット値(全201件)を算出する。
(Additional processing for calculating match position)
FIG. 12 is a diagram showing scan match addition processing executed by the loop detection unit 42 according to the present embodiment. When the loop detection unit 42 executes the process shown in line 5 of FIG. 10, it further executes the process shown in line 5.1 of FIG. Specifically, the loop detection unit 42 obtains an azimuth section to which the return beam azimuth belongs for each point of the calculated post-offset plot, and further calculates an azimuth bit value (a total of 201 cases) based thereon.

さらに、ループ検出部42は、図10の行6に示す処理を実行するとき、図12の6.1行〜6.4行に示す処理を追加で実行する。具体的には、ループ検出部42は、方位マップ53bにおける各オフセット後プロットに対応する各グリッドから、現在の方位ビット値(全201個)を取得する(6.1行)。次に、ループ検出部42は、オフセット後プロットごとに、対応するプロット方位区分のビット値と、対応するグリッドの現在の方位ビット値とをAND演算する(6.2行)。すなわちこのAND演算は、201件の方位ビット値のすべてに対して行われる。このAND演算によって得られる演算結果は、方位マップ53bに記録済みのプロットの測定方向と、対象スキャンから算出されたプロットの測定方向との一致度合いを示す方向評価値である。   Furthermore, when executing the process shown in line 6 of FIG. 10, the loop detection unit 42 additionally executes the processes shown in lines 6.1 to 6.4 of FIG. Specifically, the loop detection unit 42 acquires the current azimuth bit value (a total of 201) from each grid corresponding to each post-offset plot in the azimuth map 53b (line 6.1). Next, for each post-offset plot, the loop detection unit 42 ANDs the bit value of the corresponding plot orientation section and the current orientation bit value of the corresponding grid (line 6.2). In other words, this AND operation is performed on all the 201 bearing bit values. The calculation result obtained by the AND calculation is a direction evaluation value indicating the degree of coincidence between the measurement direction of the plot recorded in the orientation map 53b and the measurement direction of the plot calculated from the target scan.

ループ検出部42は、あるオフセット後プロットにおける演算結果が偽の場合、方位が一致しないと判定し、方位マップ53bにおける当該オフセットプロットに対応するグリッドから取得した占有確率を、所定の最低値に変更する(6.3行)。ここでいう最低値とは、占有確率の最大値(基準マップ53a作成時における正規分布の頂点の値)に対して十分小さな値、たとえば最大値の100分の1の値である。一方、あるオフセット後プロットにおける演算結果が真の場合、方位が一致したと判定し、基準マップ53aにおける当該オフセット後プロットに対応するグリッドから取得した占有確率を、現在の値に維持する。これにより、201件の各占有確率が、最低値に変更されるか、または、現在の値のままになる。方位が一致すればするほど、各占有確率が最低値に変更される可能性が低くなるので、図10の7行において算出されるオフセット確率の値は、より高くなる。   When the calculation result in a certain post-offset plot is false, the loop detection unit 42 determines that the azimuths do not match, and changes the occupation probability obtained from the grid corresponding to the offset plot in the azimuth map 53b to a predetermined minimum value. (Line 6.3). The minimum value here is a value sufficiently small relative to the maximum value of the occupation probability (the value of the vertex of the normal distribution at the time of creating the reference map 53a), for example, a value that is 1/100 of the maximum value. On the other hand, when the calculation result in a certain post-offset plot is true, it is determined that the azimuths match, and the occupation probability acquired from the grid corresponding to the post-offset plot in the reference map 53a is maintained at the current value. Thereby, each occupation probability of 201 cases is changed to the lowest value or remains at the current value. The more the orientations match, the lower the probability that each occupation probability will be changed to the lowest value, so the value of the offset probability calculated in line 7 in FIG. 10 becomes higher.

このように、本実施形態では、各グリッド値(占有確率)が、方向評価値に基づき、最低値に変更されるか、または現在の値に維持されるので、各グリッド値から算出される位置評価値(オフセット確率)は、結果的に、方向評価値を内包する値であると言える。このことは、本実施形態において位置評価値(オフセット確率)に基づき評価を行うことが、位置評価値と、それに内包される方向評価値との両方に基づき評価を行うことと同義であることを、意味する。   As described above, in the present embodiment, each grid value (occupancy probability) is changed to the lowest value or maintained at the current value based on the direction evaluation value, and thus the position calculated from each grid value. As a result, it can be said that the evaluation value (offset probability) is a value including the direction evaluation value. This means that the evaluation based on the position evaluation value (offset probability) in this embodiment is synonymous with the evaluation based on both the position evaluation value and the direction evaluation value included therein. ,means.

なお、ループ検出部42は、算出された各位置評価値および各方向評価値に基づき、対象スキャンのプロットが基準マップ53aにおける記録済みのプロットに一致するか否かに関する評価を行ってもよい。その際、ループ検出部42は、基準マップ53aに記録済みのプロットのうち、位置評価値が所定の範囲内であり、かつ、方向評価値が所定の範囲内であるプロットを、対象スキャンの測定点と一致する一致点または当該一致点の候補と判定することができる。   Note that the loop detection unit 42 may perform an evaluation on whether or not the plot of the target scan matches the recorded plot in the reference map 53a based on the calculated position evaluation value and direction evaluation value. At that time, the loop detection unit 42 measures a target scan of plots whose position evaluation value is within a predetermined range and whose direction evaluation value is within a predetermined range among the plots recorded in the reference map 53a. It can be determined as a matching point that matches the point or a candidate for the matching point.

(方位評価の一例)
図13は、本実施形態における方位評価の一例を説明する図である。この図には、方位マップ53bの一部分を示す。
(Example of orientation evaluation)
FIG. 13 is a diagram for explaining an example of orientation evaluation in the present embodiment. This figure shows a part of the orientation map 53b.

図13において、対象スキャンのオフセット位置が位置O21になったとき、方位マップ53bに投影されたプロットPA1〜PA3は、方位マップ53bにおけるG21〜G23に向かう。ここで、プロットPA1〜PA3に対して算出される方位区分(図12における斜線箇所)は、グリッドG21〜G23において真である方位区分(図12における網掛け箇所)に重なっている。これにより、プロットPA1〜PA3の方位ビット値と、グリッドG21〜G23の方位ビット値既存値とをそれぞれAND演算すれば、いずれも演算結果は真となる。したがって、3つのプロットPA1〜PA3のすべておいて、その方位が、基準マップ53aにおける対応グリッドG21〜G23のすべての方位と一致しているので、オフセット位置O21における対象スキャンのオフセット確率は高くなる。   In FIG. 13, when the offset position of the target scan becomes the position O21, the plots PA1 to PA3 projected on the orientation map 53b are directed to G21 to G23 in the orientation map 53b. Here, the azimuth sections (shaded portions in FIG. 12) calculated for the plots PA1 to PA3 overlap the true azimuth sections (shaded portions in FIG. 12) in the grids G21 to G23. As a result, if the AND bit values of the plots PA1 to PA3 and the existing values of the azimuth bit values of the grids G21 to G23 are ANDed, the result of the calculation becomes true. Accordingly, in all the three plots PA1 to PA3, the azimuth coincides with all the azimuths of the corresponding grids G21 to G23 in the reference map 53a, so that the offset probability of the target scan at the offset position O21 is high.

一方、図13において、対象スキャンのオフセット位置が位置O22になったとき、方位マップ53bに投影されたプロットPB1〜PB3は、方位マップ53bにおけるG31〜G33に向かう。ここで、プロットPB1〜PB3に対して算出される方位区分(図12における斜線箇所)のうち、グリッドG31〜G233において真である方位区分(図13における網掛け箇所)に重なっているのは、わずかにプロットPB3のみである。すなわち、プロットPB2およびPB3の方位区分は、対応するグリッドG32およびG33において偽である方位区分(図13における空白箇所)に重なっている。これにより、プロットPB1の方位ビット値とグリッドG33の方位ビット値の既存値とをAND演算すれば結果は真になるが、プロットPB2およびPB3の各方位ビット値と、グリッドG32およびG31の各方位ビット値の既存値とをそれぞれAND演算すれば、結果はいずれも偽になる。したがって、3つのプロットPB1〜PB3のうち、その方位が、基準マップ53aにおける対応グリッドG31〜G33の方位と一致しているのは1つのみであるので、オフセット位置O22における対象スキャンのオフセット確率は低くなる。   On the other hand, in FIG. 13, when the offset position of the target scan becomes the position O22, the plots PB1 to PB3 projected on the orientation map 53b are directed to G31 to G33 in the orientation map 53b. Here, among the azimuth segments (hatched portions in FIG. 12) calculated for the plots PB1 to PB3, they overlap with the azimuth segments (shaded portions in FIG. 13) that are true in the grids G31 to G233. Only a plot PB3 is present. That is, the azimuth sections of the plots PB2 and PB3 overlap the false azimuth sections (blank portions in FIG. 13) in the corresponding grids G32 and G33. As a result, when the AND operation is performed on the azimuth bit value of the plot PB1 and the existing value of the azimuth bit value of the grid G33, the result becomes true. However, the azimuth bit values of the plots PB2 and PB3 and the azimuths of the grids G32 and G31 If each of the existing bit values is ANDed, the result will be false. Accordingly, only one of the three plots PB1 to PB3 has the same orientation as that of the corresponding grids G31 to G33 in the reference map 53a. Therefore, the offset probability of the target scan at the offset position O22 is Lower.

以上のように、図13の例では、オフセット位置O21におけるオフセット確率が、オフセット位置O22におけるオフセット確率よりも高い。したがって、スキャンマッチによって対象スキャンのマッチ位置として算出されるのは、よりオフセット確率が高いオフセット位置O21の方である。すなわち、ループ検出部42は、対象スキャンを基準マップ53aにおけるより正しい位置にスキャンマッチすることができる。   As described above, in the example of FIG. 13, the offset probability at the offset position O21 is higher than the offset probability at the offset position O22. Accordingly, the offset position O21 having a higher offset probability is calculated as the match position of the target scan by the scan match. That is, the loop detection unit 42 can scan-match the target scan to a more correct position in the reference map 53a.

一方、従来のスキャンマッチでは、本実施形態のような、方位マップ53bを用いた、プロットの戻り光線方位が属する方位区分の算出(方位ビット値の算出)を行わない。したがって、オフセット位置O22のオフセット確率は、オフセット位置O21のオフセット確率と同じように高くなる。このことから、スキャンマッチ時の探索範囲にオフセット位置O21およびオフセット位置O22の両方が含まれていれば、対象スキャンのマッチ位置として、よりオフセット位置O22に近い位置が算出されることになる。本来なら、この対象スキャンのマッチ位置はよりオフセット位置OAに近い位置に算出されるべきであるので、従来技術ではマッチ位置に誤差が生じる結果となる。   On the other hand, in the conventional scan match, the calculation of the azimuth section (calculation of the azimuth bit value) to which the return beam azimuth of the plot belongs is not performed using the azimuth map 53b as in the present embodiment. Therefore, the offset probability of the offset position O22 is as high as the offset probability of the offset position O21. From this, if both the offset position O21 and the offset position O22 are included in the search range at the time of the scan match, a position closer to the offset position O22 is calculated as the match position of the target scan. Originally, the match position of this target scan should be calculated at a position closer to the offset position OA, so that the conventional technique results in an error in the match position.

特に、スキャンマッチ時の探索範囲にオフセット位置O21が含まれずにオフセット位置O22が含まれる場合、この誤差が極端に大きくなる。具体的には、対象スキャンに含まれる各プロットによって規定される一対の壁のうち、本来なら正しくマッチされるべき壁ではなく、その反対側にある壁の方が、基準マップ53aにおけるいずれかの基準スキャンに含まれる各プロットによって規定される壁に、マッチしてしまう不具合が発生する(図4の(e)のような外れ値の発生)。   In particular, when the offset range O21 is not included in the search range at the time of the scan match but the offset position O22 is included, this error becomes extremely large. Specifically, out of a pair of walls defined by each plot included in the target scan, a wall on the opposite side is not a wall that should be matched correctly, but any of the walls in the reference map 53a. A defect that matches the wall defined by each plot included in the reference scan occurs (occurrence of an outlier as shown in FIG. 4E).

(変形例)
基準マップ53aの原点、分解能、および座標方向は、上述した例に限らず、他の値に設定されてもよい。このことは、方位マップ53bおよび出力マップ53cでも同様である。
(Modification)
The origin, resolution, and coordinate direction of the reference map 53a are not limited to the example described above, and may be set to other values. The same applies to the orientation map 53b and the output map 53c.

方位マップ53bにおける方位区分は、上述した8種類に限らず、任意の種類であればよい。コンピュータの構成上、方位区分の種類は8×2(nは0以上の整数)種類であることが望ましい。 The azimuth | direction division in the azimuth | direction map 53b is not restricted to eight types mentioned above, What is necessary is just arbitrary types. In view of the configuration of the computer, it is desirable that the types of orientation sections are 8 × 2 n (n is an integer of 0 or more).

各方位区分の値と角度範囲との対応関係は、上述の例に限らず、他の関係に変更することができる。たとえば、方位区分0を、x軸方向を基準とした0〜22.5°および337.5〜360°範囲ではなく、別の範囲としてもよい。   The correspondence relationship between the value of each azimuth section and the angle range is not limited to the above example, and can be changed to another relationship. For example, the azimuth section 0 may be a range other than the 0-22.5 ° and 337.5-360 ° ranges based on the x-axis direction.

方位マップ53bの各グリッドにおける隣接幅は、1以外の値、たとえば2または0であってもよい。   The adjacent width in each grid of the orientation map 53b may be a value other than 1, for example, 2 or 0.

上述の例では、ノード追加部41が、基準マップ53aの生成時に、併せて方位マップ53bを生成し、その際、隣接幅分の他の方位が含まれるように各グリッドにおける方位を算出しているが、本発明はこれに限られない。たとえば、ループ検出部42が、対象スキャンの各方位ビット値を算出する際(図12の5.1行)に、これに隣接するビットを真にするようにしてもよい。   In the above example, the node adding unit 41 generates the orientation map 53b at the time of generating the reference map 53a, and calculates the orientation in each grid so that other orientations for the adjacent width are included. However, the present invention is not limited to this. For example, when the loop detection unit 42 calculates each azimuth bit value of the target scan (line 5.1 in FIG. 12), a bit adjacent thereto may be made true.

〔実施形態2〕
図14および15を参照して、本発明に係る実施形態2を以下に説明する。上述した実施形態1と共通する各部材には同じ符号を付し、詳細な説明を省略する。
[Embodiment 2]
Embodiment 2 according to the present invention will be described below with reference to FIGS. Each member common to Embodiment 1 described above is denoted by the same reference numeral, and detailed description thereof is omitted.

(方位区分の定義)
図14は、本発明の実施形態2における方位マップ53bを構成するグリッドにおいて定義される方位区分の詳細を説明するための図である。この図に示すように、本実施形態では、方位マップ53b内の各グリッドにおいて定義される方位区分は、4種類であり、それぞれ、90度分の異なる角度範囲を有する。具体的には次のとおりである:
方位区分0:0〜90°間
方位区分1:90〜180°間
方位区分2:180〜270°間
方位区分3:270〜360°間。
(Definition of orientation classification)
FIG. 14 is a diagram for explaining the details of the orientation sections defined in the grid constituting the orientation map 53b according to the second embodiment of the present invention. As shown in this figure, in the present embodiment, there are four types of orientation categories defined in each grid in the orientation map 53b, each having a different angle range of 90 degrees. Specifically:
Azimuth section 0: Between 0 and 90 degrees Azimuth section 1: Between 90 and 180 degrees Azimuth section 2: Between 180 and 270 degrees Azimuth section 3: Between 270 and 360 degrees

なお、本実施形態では、隣接幅は0である。   In the present embodiment, the adjacent width is zero.

ノード追加部41は、スキャンデータ51cに含まれるあるプロットの戻り光線方位が属する方位区分の番号がnである場合、このプロットの方位ビット値を、2であると算出する。 The node adding unit 41 calculates the azimuth bit value of this plot as 2 n when the number of the azimuth section to which the return ray azimuth of a plot included in the scan data 51c belongs is n.

図15は、本発明の実施形態2における方位ビット値の算出例および方位マップ53bの例を示す図である。この図の(a)に示すように、プロットの戻り光線方位が方位区分0に含まれる場合、このプロットに対応するグリッドGの方位ビット値は、2=1である。算出される方位ビット値の値は、そのプロットの戻り光線方位が属する方位区分に応じて、2=1(方位区分0)、2=2(方位区分1)、2=4(方位区分2)、または2=8(方位区分4)のいずれかである。 FIG. 15 is a diagram illustrating a calculation example of the direction bit value and an example of the direction map 53b according to the second embodiment of the present invention. As shown in (a) of this figure, when the return ray azimuth of the plot is included in the azimuth section 0, the azimuth bit value of the grid G corresponding to this plot is 2 0 = 1. The value of the calculated azimuth bit value is 2 0 = 1 (azimuth division 0), 2 1 = 2 (azimuth division 1), 2 2 = 4 (azimuth) according to the azimuth division to which the return beam azimuth of the plot belongs. Either division 2) or 2 3 = 8 (azimuth division 4).

ノード追加部41は、実施形態1と同様に、あるプロットに対応するグリッドGに対して算出した方位ビット値を、このグリッドGが有する方位ビット値の既存値と論理OR演算することによって、このグリッドGの方位ビット値を更新する。この結果、グリッドGは、複数の異なる方位区分の有無を表す方位ビット値を有することができる。たとえばグリッドGの方位ビット値が3(2+2)であれば、このグリッドGでは方位区分0および方位区分1が「有」であることが分かる。 As in the first embodiment, the node adding unit 41 performs a logical OR operation on the azimuth bit value calculated for the grid G corresponding to a certain plot with the existing value of the azimuth bit value of the grid G. The direction bit value of the grid G is updated. As a result, the grid G can have an orientation bit value that represents the presence or absence of a plurality of different orientation sections. For example, if the azimuth bit value of the grid G is 3 (2 0 +2 1 ), it can be seen that the azimuth section 0 and the azimuth section 1 are “present” in this grid G.

図15の(b)に、本実施形態における方位マップ53bの例を示す。この例では、2つのスキャンデータを合成することによって作成された方位マップ53bを示す。ノード21において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる2つのプロットが、グリッドG41およびグリッドG42に向かっている。したがって、グリッドG41およびグリッドG42におけるこれらのプロットの投影に対応する方位区分が「有」になる(図中の網掛け箇所)。   FIG. 15B shows an example of the orientation map 53b in the present embodiment. In this example, an orientation map 53b created by combining two scan data is shown. When the scan data acquired at the node 21 is projected onto the orientation map 53b, two plots included in the scan data are directed toward the grid G41 and the grid G42. Therefore, the orientation division corresponding to the projection of these plots in the grid G41 and the grid G42 is “present” (shaded portion in the figure).

一方、ノード22において取得されたスキャンデータを方位マップ53bに投影すると、このスキャンデータに含まれる3つのプロットが、グリッドG41〜G43に向かっている。したがって、グリッドG41〜G43におけるこれらのプロットの投影に対応する方位区分が「有」になる(図中の網掛け箇所)。   On the other hand, when the scan data acquired at the node 22 is projected onto the orientation map 53b, three plots included in the scan data are directed toward the grids G41 to G43. Therefore, the orientation division corresponding to the projection of these plots in the grids G41 to G43 is “present” (shaded portion in the figure).

本実施形態では、各グリッドの方位区分が4種類であるので、各グリッドが有することができる方位ビット値は、4ビット(0〜15までのいずれか)の値を取る。したがって、グリッドの方位ビット値が8ビット(0〜255までのいずれか)の値を取る実施形態1に比べて、方位マップ53bのサイズを小さくすることができるという利点が得られる。   In this embodiment, since each grid has four types of azimuth divisions, the azimuth bit value that each grid can have takes a value of 4 bits (any one of 0 to 15). Therefore, there is an advantage that the size of the orientation map 53b can be reduced compared to the first embodiment in which the grid orientation bit value is 8 bits (any one of 0 to 255).

〔実施形態3〕
図16を参照して、本発明に係る実施形態3を以下に説明する。上述した実施形態1または2と共通する各部材には同じ符号を付し、詳細な説明を省略する。
[Embodiment 3]
A third embodiment according to the present invention will be described below with reference to FIG. Each member common to the above-described first or second embodiment is denoted by the same reference numeral, and detailed description thereof is omitted.

図16は、本発明の実施形態3に係るロボット1aの要部構成を示すブロック図である。この図に示すように、ロボット1aは、駆動部2、LRF3、制御部4a、記憶部5、およびディスプレイ6を備えている。駆動部2、LRF3、および記憶部5は、実施形態1および2と同様である。一方、制御部4は、実施形態1または2に係るロボット1が備える各部材に加えて、さらにマップ表示部44を備えている。   FIG. 16 is a block diagram showing a main configuration of a robot 1a according to Embodiment 3 of the present invention. As shown in this figure, the robot 1a includes a drive unit 2, an LRF 3, a control unit 4a, a storage unit 5, and a display 6. The drive unit 2, the LRF 3, and the storage unit 5 are the same as those in the first and second embodiments. On the other hand, the control unit 4 further includes a map display unit 44 in addition to the members included in the robot 1 according to the first or second embodiment.

本実施形態では、マップ生成部43は、出力マップ53cを構成する各グリッドの方位ビット値を算出することによって、方位マップ53bと同等の方位マップを作成する。マップ生成部43は、方位ビット値を含まないグリッドからなる通常のマップと、方位ビット値を有するグリッドからなる方位マップとによって構成される出力マップ53cを作成し、マップ表示部44に出力する。マップ表示部44は、入力された出力マップ53cをディスプレイ6に表示させる。   In the present embodiment, the map generation unit 43 creates an orientation map equivalent to the orientation map 53b by calculating the orientation bit value of each grid constituting the output map 53c. The map generation unit 43 creates an output map 53c composed of a normal map composed of a grid that does not include an orientation bit value and an orientation map composed of a grid having an orientation bit value, and outputs the output map 53c to the map display unit 44. The map display unit 44 displays the input output map 53 c on the display 6.

その際、マップ表示部44は、図13と同様に、各グリッドを方位区分ごとにサブグリッドに分割して表示し、さらに、各サブグリッドにおいて方位の真偽(壁検出の有無)を表示する。この結果、通常のマップに加えて、方位ごとの壁の有無もディスプレイ6に表示される。したがってロボット1aのユーザは、より詳細なマップを視認することができる。   At that time, the map display unit 44 divides and displays each grid into sub-grids for each azimuth division, and further displays the true / false of the azimuth (whether or not wall detection is performed) in each sub-grid, as in FIG. . As a result, in addition to the normal map, the presence or absence of a wall for each direction is also displayed on the display 6. Therefore, the user of the robot 1a can visually recognize a more detailed map.

〔まとめ〕
本発明の態様1に係る一致性評価装置は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録部と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得部と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出部と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価部と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価部と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価部とを備えていることを特徴としている。
[Summary]
The coincidence evaluation apparatus according to aspect 1 of the present invention provides a distance between a recording unit that records position information and direction information on a map for at least one recording point as recording information, and a predetermined measurement position and surrounding measurement points. And an acquisition unit that acquires measurement data representing the measurement direction from the measurement position to the measurement point, and a calculation that calculates the position and measurement direction of the measurement point on the map based on the acquired measurement data Each position evaluation representing the degree of coincidence between the position information on the map of each recording point in the recording information and the position on the map of the measurement point calculated from the acquired measurement data A position evaluation unit that calculates a value, direction information of each recording point in the recording information, and measurement of the measurement point calculated from the acquired measurement data A direction evaluation unit for calculating each direction evaluation value representing a degree of coincidence with each direction, and each of the recording points in the recording information based on the calculated position evaluation value and each direction evaluation value. And a coincidence evaluation unit that performs an evaluation on whether or not they match.

上記の構成によれば、位置評価値および方向評価値の双方に基づき、記録点と測定点との一致性が評価されるので、方向の一致性を考慮しない従来技術とは異なり、測定方向が異なる測定点と記録点とが誤って一致すると評価されることが防止される。したがって、測定点と記録点との一致性をより正確に評価することができる。   According to the above configuration, since the coincidence between the recording point and the measurement point is evaluated based on both the position evaluation value and the direction evaluation value, the measurement direction is different from the related art that does not consider the direction coincidence. It is prevented from being evaluated that different measurement points and recorded points coincide with each other. Therefore, it is possible to more accurately evaluate the coincidence between the measurement point and the recording point.

本発明の態様2に係る一致性評価装置は、上記態様1において、上記算出部は、少なくとも1つの上記測定位置において取得された上記測定データに基づき、当該測定データごとに上記マップ上における各上記測定点の位置および測定方向を算出し、上記記録部は、s算出された上記測定点ごとの上記位置および測定方向に基づき、各上記測定点に対応する上記マップ上の各上記記録点の上記位置情報および上記方向情報を、上記記録情報として記録することを特徴としている。   The coincidence evaluation apparatus according to aspect 2 of the present invention is the above-described aspect 1, wherein the calculation unit is configured to calculate each of the above-described maps on the map for each measurement data based on the measurement data acquired at at least one of the measurement positions. The position of the measurement point and the measurement direction are calculated, and the recording unit calculates the s of the recording point on the map corresponding to the measurement point based on the calculated position and measurement direction for each of the measurement points. The position information and the direction information are recorded as the recording information.

上記の構成によれば、測定データを用いて記録情報を生成することができるので、あらかじめ記録情報が用意されていなくても、一致性評価装置が自ら生成した記録情報における記録点と測定点との一致性を評価することができる。   According to the above configuration, since the recording information can be generated using the measurement data, even if the recording information is not prepared in advance, the recording point and the measuring point in the recording information generated by the consistency evaluation device itself Can be evaluated.

本発明の態様3に係る一致性評価装置は、上記態様1または2において、上記一致性評価部は、上記記録情報における上記マップ上の各上記記録点のうち、上記位置評価値が所定の範囲内であり、かつ、上記方向評価値が所定の範囲内である上記記録点を、上記測定点と一致する一致点または当該一致点の候補と判定するか、または一致度を算出することを特徴としている。   In the coincidence evaluation device according to aspect 3 of the present invention, in the aspect 1 or 2, the coincidence evaluation unit is configured such that the position evaluation value is a predetermined range among the recording points on the map in the recording information. And the recording point having the direction evaluation value within a predetermined range is determined as a matching point that matches the measurement point or a candidate for the matching point, or a matching degree is calculated. It is said.

上記の構成によれば、記録点と測定点との一致点または当該一致点の候補を適切に判定することができる。   According to said structure, the coincidence point of a recording point and a measurement point or the candidate of the said coincidence point can be determined appropriately.

本発明の態様4に係る一致性評価装置は、上記態様1〜3のいずれかにおいて、上記一致性評価部は、各上記位置評価値および各上記方向評価値に基づき、上記測定点が上記記録情報における上記マップ上のどの上記記録点に一致するかに関する1つの評価値を算出し、上記1つの評価値に基づいて、上記測定点に一致する上記記録情報における上記マップ上の1つの上記記録点を判定するか、または上記マップ上の一致位置を算出することを特徴としている。   In the coincidence evaluation device according to aspect 4 of the present invention, in any one of the above aspects 1 to 3, the coincidence evaluation unit records the measurement points on the basis of the position evaluation values and the direction evaluation values. One evaluation value regarding which of the recording points on the map in the information matches is calculated, and one of the recordings on the map in the recording information that matches the measurement point based on the one evaluation value It is characterized in that a point is determined or a matching position on the map is calculated.

上記の構成によれば、測定点に一致する一つの記録点を適切に判定したり、マップ上の記録点と測定点との一致位置を適切に算出したりすることができる。   According to the above configuration, it is possible to appropriately determine one recording point that matches the measurement point, or to appropriately calculate the matching position between the recording point and the measurement point on the map.

本発明の態様5に係る一致性評価装置は、上記態様1〜4のいずれかにおいて、上記位置評価部は、上記マップにおける、上記記録点の上記位置情報と上記測定点の上記位置との相対的な位置関係に基づき、上記記録点と上記測定点との一致度合いを表す上記位置評価値を算出することを特徴としている。   In the coincidence evaluation device according to aspect 5 of the present invention, in any one of the aspects 1 to 4, the position evaluation unit is configured to make a relative relationship between the position information of the recording point and the position of the measurement point in the map. The position evaluation value representing the degree of coincidence between the recording point and the measurement point is calculated based on a typical positional relationship.

上記の構成によれば、測定点と記録点との相対的な位置関係に基づき、測定点と記録点との一致性を評価することができる。   According to the above configuration, the coincidence between the measurement point and the recording point can be evaluated based on the relative positional relationship between the measurement point and the recording point.

本発明の態様6に係る一致性評価装置は、上記態様1〜5のいずれかにおいて、上記取得部は、上記測定位置と、異なる複数の上記測定点との各上記距離と、当該測定位置から複数の上記測定点のそれぞれへの各上記測定方向とを表す複数の上記測定データを取得し、上記算出部は、取得された上記複数の測定データのそれぞれに基づき、上記測定データごとに上記マップ上における上記測定点の位置および測定方向を算出し、上記一致性評価部は、異なる上記測定点ごとに算出された上記各位置評価値および上記各方向評価値を総合することによって、複数の上記測定点のそれぞれに一致する複数の上記記録点を判定するか、または1つの一致度を算出することを特徴としている。   In the consistency evaluation apparatus according to Aspect 6 of the present invention, in any one of Aspects 1 to 5, the acquisition unit is configured to calculate the distance between the measurement position and a plurality of different measurement points, and the measurement position. A plurality of the measurement data representing each of the measurement directions to each of the plurality of measurement points is acquired, and the calculation unit is configured to map the map for each measurement data based on each of the acquired plurality of measurement data. By calculating the position and measurement direction of the measurement point above, the consistency evaluation unit combines the position evaluation value and the direction evaluation value calculated for each of the different measurement points, thereby obtaining a plurality of the above-described evaluation values. It is characterized in that a plurality of recording points that match each of the measurement points are determined, or one matching degree is calculated.

上記の構成によれば、複数の測定点と複数の記録点との一致性を一度に判定したり、複数の測定点と複数の記録点との一致性に関する1つの一致度を算出したりすることができる。   According to the above configuration, the coincidence between the plurality of measurement points and the plurality of recording points is determined at one time, or one coincidence degree regarding the coincidence between the plurality of measurement points and the plurality of recording points is calculated. be able to.

本発明の態様7に係る一致性評価装置は、上記態様1〜6のいずれかにおいて、上記マップは、複数の領域に区分されており、上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき上記測定点の存在を示す評価値および上記測定点の測定方向を算出し、上記記録部は、上記マップの上記領域ごとに算出された上記測定点の存在を示す評価値および上記測定点の測定方向に基づき、上記測定点に対応する上記マップ上の上記記録点の存在を示す評価値および上記方向情報を、上記記録情報として記録することを特徴としている。   In the consistency evaluation device according to aspect 7 of the present invention, in any one of the above aspects 1 to 6, the map is divided into a plurality of regions, and the calculation unit performs the above operation for each region in the map. An evaluation value indicating the presence of the measurement point and a measurement direction of the measurement point are calculated based on the measurement data, and the recording unit calculates the evaluation value indicating the presence of the measurement point calculated for each region of the map and the Based on the measurement direction of the measurement point, an evaluation value indicating the existence of the recording point on the map corresponding to the measurement point and the direction information are recorded as the recording information.

上記の構成によれば、領域ごとに記録点の存在を示す評価値および記録点の方向情報が規定された記録情報を記録することができる。   According to the above configuration, it is possible to record the recording information in which the evaluation value indicating the existence of the recording point and the direction information of the recording point are defined for each region.

本発明の態様8に係る一致性評価装置は、上記態様6において、各上記領域において、所定の方位範囲ごとに区分された複数の方位区分が規定されており、上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき当該領域の各上記方位区分における上記測定点の測定方向の存在を示す各評価値を組み合わせた上記測定方向の情報を算出することを特徴としている。   In the coincidence evaluation device according to aspect 8 of the present invention, in the aspect 6, in each of the areas, a plurality of azimuth sections divided for each predetermined azimuth range are defined. For each of the regions, information on the measurement direction is calculated by combining evaluation values indicating the presence of the measurement direction of the measurement points in the orientation sections of the region based on the measurement data.

上記の構成によれば、各領域における記録点の各方位からの測定方向の有無がより詳細に規定された記録情報を記録することができる。   According to said structure, the recording information by which the presence or absence of the measurement direction from each direction of the recording point in each area | region was prescribed | regulated in detail can be recorded.

本発明の態様9に係る一致性評価装置は、上記態様8において、上記複数の方位区分は、上記領域における全方位範囲が整数値の個数に均等に区分されたものであることを特徴としている。   The coincidence evaluation apparatus according to aspect 9 of the present invention is characterized in that, in the aspect 8, the plurality of azimuth divisions are obtained by equally dividing all azimuth ranges in the region into the number of integer values. .

上記の構成によれば、記録点の測定方向の有無が方位ごとに均等に評価された記録情報を記録することができる。   According to said structure, the recording information by which the presence or absence of the measurement direction of the recording point was evaluated equally for every azimuth | direction can be recorded.

本発明の態様10に係る一致性評価装置は、上記態様8または9において、上記算出部は、上記複数の方位区分のうち1つの方位区分に対応する上記測定点の測定方向を算出した場合、当該1つの方位区分と、当該1つの方位区分に隣接する複数の上記方位区分とにそれぞれ上記測定点の測定方向の存在を示す上記評価値を割り当てることによって、上記測定方向の情報を算出することを特徴としている。   In the consistency evaluation device according to aspect 10 of the present invention, in the aspect 8 or 9, when the calculation unit calculates a measurement direction of the measurement point corresponding to one azimuth section among the plurality of azimuth sections, Calculating the measurement direction information by assigning the evaluation value indicating the existence of the measurement direction of the measurement point to the one azimuth section and the plurality of azimuth sections adjacent to the one azimuth section. It is characterized by.

上記の構成によれば、ある方向からの記録点の測定方向の有無を、より広がりを持たせて、記録情報における記録点の測定方向の情報に反映させることができる。   According to the above configuration, the presence / absence of the measurement direction of the recording point from a certain direction can be reflected more widely in the information on the measurement direction of the recording point in the recording information.

本発明の態様11に係る一致性評価方法は、少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録工程と、所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得工程と、取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出工程と、上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価工程と、上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価工程と、算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価工程とを有することを特徴としている。   The coincidence evaluation method according to aspect 11 of the present invention includes a recording step of recording position information and direction information on a map for at least one recording point as recording information, and a distance between a predetermined measurement position and surrounding measurement points. And an acquisition step for acquiring measurement data representing the measurement direction from the measurement position to the measurement point, and a calculation for calculating the position and measurement direction of the measurement point on the map based on the acquired measurement data Each position evaluation representing the degree of coincidence between the position information on the map of each recording point in the recording information and the position on the map of the measurement point calculated from the acquired measurement data A position evaluation step for calculating a value, direction information of each recording point in the recording information, and the measurement calculated from the acquired measurement data. Based on the direction evaluation step for calculating each direction evaluation value representing the degree of coincidence with the measurement direction of the point, and each position evaluation value and each direction evaluation value calculated, And a coincidence evaluation step for evaluating whether or not the recording points coincide with each other.

上記の構成によれば、測定点と記録点との一致性をより正確に評価することができる。   According to said structure, the coincidence of a measurement point and a recording point can be evaluated more correctly.

〔ソフトウェアによる実現例〕
ロボット1における制御部4(およびロボット1aにおける制御部4a)の制御ブロックは、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、CPU(Central Processing Unit)を用いてソフトウェアによって実現してもよい。
[Example of software implementation]
The control block of the control unit 4 in the robot 1 (and the control unit 4a in the robot 1a) may be realized by a logic circuit (hardware) formed in an integrated circuit (IC chip) or the like, or a CPU (Central Processing Unit) ) May be implemented by software.

後者の場合、ロボット1における制御部4(およびロボット1aにおける制御部4a)は、各機能を実現するソフトウェアであるプログラムの命令を実行するCPU、プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)がプログラムを記録媒体から読み取って実行することによって、本発明の目的が達成される。記録媒体としては、「一時的でない有形の媒体」、たとえば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介してコンピュータに供給されてもよい。なお、本発明は、プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。   In the latter case, the control unit 4 in the robot 1 (and the control unit 4a in the robot 1a) can read a program command, which is software that realizes each function, a program, and various data by a computer (or CPU). ROM (Read Only Memory) or a storage device (these are referred to as “recording media”), a RAM (Random Access Memory) for developing programs, and the like. And the objective of this invention is achieved when a computer (or CPU) reads a program from a recording medium and executes it. As the recording medium, a “non-temporary tangible medium” such as a tape, a disk, a card, a semiconductor memory, a programmable logic circuit, or the like can be used. The program may be supplied to the computer via any transmission medium (such as a communication network or a broadcast wave) that can transmit the program. Note that the present invention can also be realized in the form of a data signal embedded in a carrier wave in which the program is embodied by electronic transmission.

(付記事項)
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態も、本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることによって、新しい技術的特徴を形成できる。
(Additional notes)
The present invention is not limited to the above-described embodiments, and various modifications can be made within the scope of the claims. Embodiments obtained by appropriately combining technical means disclosed in different embodiments are also included in the technical scope of the present invention. Furthermore, a new technical feature can be formed by combining the technical means disclosed in each embodiment.

各実施形態では、自律走行体の一例として清掃用のロボットを挙げて説明したが、本発明は清掃用のロボットに限定されるものではない。たとえば、空気清浄機器、撮影機器、各種ロボット機器(たとえば、警備ロボット、家事支援ロボット、動物型ロボット等)に対しても本発明を適用できる。   In each embodiment, a cleaning robot has been described as an example of an autonomous traveling body, but the present invention is not limited to a cleaning robot. For example, the present invention can be applied to air cleaning devices, photographing devices, and various robot devices (for example, security robots, housework support robots, animal type robots, etc.).

ロボット1における制御部4および記憶部5は、ロボット1から離れた場所にある別のマップ生成装置(コンピュータ)に備えられていてもよい。この場合、ロボット1とマップ作成装置は、ロボットシステムを構成する。ロボット1は、駆動部2、LRF3、および図示しない送信部を備えている。一方、マップ作成装置は、制御部4、記憶部5、および図示しない受信部を備えている。ロボット1は、取得した回転情報およびスキャンデータを通信部を通じてマップ作成装置に送信する。マップ作成装置は、図示しない受信部を通じて回転情報およびスキャンデータを受信し、これらの情報およびデータを用いて出力マップを作成する。   The control unit 4 and the storage unit 5 in the robot 1 may be provided in another map generation device (computer) located away from the robot 1. In this case, the robot 1 and the map creation device constitute a robot system. The robot 1 includes a drive unit 2, an LRF 3, and a transmission unit (not shown). On the other hand, the map creation device includes a control unit 4, a storage unit 5, and a receiving unit (not shown). The robot 1 transmits the acquired rotation information and scan data to the map creation device through the communication unit. The map creation device receives rotation information and scan data through a receiving unit (not shown), and creates an output map using these information and data.

ロボット1は、LRF3の代わりに、自身と環境(障害物)との距離を測定できることが任意のアレイセンサ(たとえば超音波アレイセンサ)を備えていてもよい。この場合、アレイセンサがスキャンデータまたはそれと同等の距離測定データを生成し、制御部4に出力する。   The robot 1 may include an arbitrary array sensor (for example, an ultrasonic array sensor) that can measure the distance between the robot 1 and the environment (obstacle) instead of the LRF 3. In this case, the array sensor generates scan data or distance measurement data equivalent to the scan data and outputs it to the control unit 4.

ロボット1は、LRF3の代わりに、3次元の距離データを測定することができる任意の3次元測定センサを備えてもよい。この場合、3次元測定センサは、3次元の距離データを取得し、制御部4に出力する。制御部4は、3次元の距離データに基づき、3次元の各種マップを作成する。この態様では、方位区分を、実世界における特定の座標平面を境界とする8象限に対応させて決定することが好ましい。具体的には、ロボット1の上方向をz軸プラス方向として、x軸、y軸、およびz軸のプラス方向およびマイナス方向の組み合わせ(2=8通り)のそれぞれを、方位区分0〜7に割り当てる。これにより、各グリッドにおいて定義される方位区分が実施形態1と同様に8種類となるため、計算上都合がよくなる。 The robot 1 may include an arbitrary three-dimensional measurement sensor that can measure three-dimensional distance data instead of the LRF 3. In this case, the three-dimensional measurement sensor acquires three-dimensional distance data and outputs it to the control unit 4. The control unit 4 creates various three-dimensional maps based on the three-dimensional distance data. In this aspect, it is preferable that the azimuth section is determined in correspondence with eight quadrants having a specific coordinate plane in the real world as a boundary. Specifically, with the upward direction of the robot 1 as the z-axis plus direction, each of the x-axis, y-axis, and z-axis plus / minus combinations (2 3 = 8) is assigned to the azimuth divisions 0 to 7. Assign to. As a result, since there are eight types of azimuth divisions defined in each grid as in the first embodiment, the calculation is convenient.

1、1a ロボット
2 駆動部
3 LRF
4、4a 制御部(取得部)
5 記憶部(記録部)
6 ディスプレイ
21 モータ
22 各駆動輪
22 駆動輪
23 エンコーダ
31 レーザ光出力部
32 レーザ光受光部
33 スキャンデータ出力部
41 ノード追加部(算出部、位置評価部、方向評価部、一致性評価部)
42 ループ検出部(算出部、位置評価部、方向評価部、一致性評価部)
43 マップ生成部
44 マップ表示部
1, 1a Robot 2 Drive unit 3 LRF
4, 4a Control unit (acquisition unit)
5. Storage unit (recording unit)
6 Display 21 Motor 22 Each driving wheel 22 Driving wheel 23 Encoder 31 Laser light output unit 32 Laser light receiving unit 33 Scan data output unit 41 Node addition unit (calculation unit, position evaluation unit, direction evaluation unit, consistency evaluation unit)
42 Loop detection unit (calculation unit, position evaluation unit, direction evaluation unit, consistency evaluation unit)
43 Map generation unit 44 Map display unit

Claims (11)

少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録部と、
所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得部と、
取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出部と、
上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価部と、
上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価部と、
算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価部とを備えていることを特徴とする一致性評価装置。
A recording unit for recording position information and direction information on a map for at least one recording point as recording information;
An acquisition unit for acquiring measurement data representing a distance between a predetermined measurement position and a surrounding measurement point and a measurement direction from the measurement position to the measurement point;
Based on the acquired measurement data, a calculation unit that calculates the position and measurement direction of the measurement point on the map;
Each position evaluation value representing the degree of coincidence between the position information on the map of each recording point in the recording information and the position on the map of the measurement point calculated from the acquired measurement data is calculated. A position evaluation unit to perform,
A direction evaluation unit that calculates each direction evaluation value representing the degree of coincidence between the direction information of each recording point in the recording information and the measurement direction of the measurement point calculated from the acquired measurement data;
A consistency evaluation unit that performs an evaluation on whether or not the measurement point matches each recording point in the recording information based on the calculated position evaluation value and each direction evaluation value. Characteristic consistency evaluation device.
上記算出部は、少なくとも1つの上記測定位置において取得された上記測定データに基づき、当該測定データごとに上記マップ上における各上記測定点の位置および測定方向を算出し、
上記記録部は、算出された上記測定点ごとの上記位置および測定方向に基づき、各上記測定点に対応する上記マップ上の各上記記録点の上記位置情報および上記方向情報を、上記記録情報として記録することを特徴とする請求項1に記載の一致性評価装置。
The calculation unit calculates a position and a measurement direction of each measurement point on the map for each measurement data based on the measurement data acquired at at least one measurement position,
The recording unit uses the position information and the direction information of each recording point on the map corresponding to each measurement point as the recording information based on the calculated position and measurement direction for each measurement point. The consistency evaluation apparatus according to claim 1, wherein the consistency evaluation apparatus records the consistency.
上記一致性評価部は、上記記録情報における上記マップ上の各上記記録点のうち、上記位置評価値が所定の範囲内であり、かつ、上記方向評価値が所定の範囲内である上記記録点を、上記測定点と一致する一致点または当該一致点の候補と判定するか、または、一致度を算出することを特徴とする請求項1または2に記載の一致性評価装置。   The coincidence evaluation unit includes the recording points in which the position evaluation value is within a predetermined range and the direction evaluation value is within a predetermined range among the recording points on the map in the recording information. The coincidence evaluation device according to claim 1, wherein the coincidence point is determined as a coincidence point or a candidate for the coincidence point, or the degree of coincidence is calculated. 上記一致性評価部は、各上記位置評価値および各上記方向評価値に基づき、上記測定点が上記記録情報における上記マップ上のどの上記記録点に一致するかに関する1つの評価値を算出し、上記1つの評価値に基づいて、上記測定点に一致する上記記録情報における上記マップ上の1つの上記記録点を判定するか、または上記マップ上の1つの一致位置を算出することを特徴とする請求項1〜3のいずれか1項に記載の一致性評価装置。   The coincidence evaluation unit calculates one evaluation value related to which recording point on the map in the recording information matches the measurement point based on each position evaluation value and each direction evaluation value, Based on the one evaluation value, one recording point on the map in the recording information that matches the measurement point is determined, or one matching position on the map is calculated. The coincidence evaluation apparatus according to any one of claims 1 to 3. 上記位置評価部は、上記マップにおける、上記記録点の上記位置情報と上記測定点の上記位置との相対的な位置関係に基づき、上記記録点と上記測定点との一致度合いを表す上記位置評価値を算出することを特徴とする請求項1〜4のいずれか1項に記載の一致性評価装置。   The position evaluation unit represents the position evaluation representing a degree of coincidence between the recording point and the measurement point based on a relative positional relationship between the position information of the recording point and the position of the measurement point in the map. The consistency evaluation apparatus according to claim 1, wherein a value is calculated. 上記取得部は、上記測定位置と、異なる複数の上記測定点との各上記距離と、当該測定位置から複数の上記測定点のそれぞれへの各上記測定方向とを表す複数の上記測定データを取得し、
上記算出部は、取得された上記複数の測定データのそれぞれに基づき、上記測定データごとに上記マップ上における上記測定点の位置および測定方向を算出し、
上記一致性評価部は、異なる上記測定点ごとに算出された上記各位置評価値および上記各方向評価値を総合することによって、複数の上記測定点のそれぞれに一致する複数の上記記録点を判定するか、または1つの一致度を算出することを特徴とする請求項1〜5のいずれか1項に記載の一致性評価装置。
The acquisition unit acquires a plurality of measurement data representing the distances between the measurement position and the plurality of different measurement points, and the measurement directions from the measurement position to the measurement points. And
The calculation unit calculates a position and a measurement direction of the measurement point on the map for each measurement data based on each of the acquired measurement data,
The coincidence evaluation unit determines a plurality of recording points that match each of the plurality of measurement points by combining the position evaluation values and the direction evaluation values calculated for the different measurement points. 6. The coincidence evaluation apparatus according to claim 1, wherein one coincidence degree is calculated.
上記マップは、複数の領域に区分されており、
上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき上記測定点の存在を示す評価値および上記測定点の測定方向を算出し、
上記記録部は、上記マップの上記領域ごとに、上記領域を上記記録点として、算出された上記測定点の存在を示す評価値および上記測定点の測定方向を、上記記録情報として記録することを特徴とする請求項1〜6のいずれか1項に記載の一致性評価装置。
The map is divided into multiple areas,
The calculation unit calculates, for each region in the map, an evaluation value indicating the presence of the measurement point and a measurement direction of the measurement point based on the measurement data,
The recording unit records, for each region of the map, the evaluation value indicating the existence of the measurement point calculated and the measurement direction of the measurement point as the recording information with the region as the recording point. The coincidence evaluation apparatus according to any one of claims 1 to 6, characterized in that it is characterized in that:
各上記領域において、所定の方位範囲ごとに区分された複数の方位区分が規定されており、
上記算出部は、上記マップにおける上記領域ごとに、上記測定データに基づき当該領域の各上記方位区分における上記測定点の測定方向の存在を示す各評価値を組み合わせた上記測定方向の情報を算出することを特徴とする請求項7に記載の一致性評価装置。
In each of the above-mentioned areas, a plurality of azimuth sections divided for each predetermined azimuth range are defined,
The calculation unit calculates, for each region in the map, information on the measurement direction by combining each evaluation value indicating the presence of the measurement direction of the measurement point in each azimuth section of the region based on the measurement data. The coincidence evaluation apparatus according to claim 7.
上記複数の方位区分は、上記領域における全方位範囲が整数値の個数に均等に区分されたものであることを特徴とする請求項8に記載の一致性評価装置。   9. The coincidence evaluation apparatus according to claim 8, wherein the plurality of azimuth divisions are obtained by equally dividing all azimuth ranges in the region into integer numbers. 上記算出部は、上記複数の方位区分のうち1つの方位区分に対応する上記測定点の測定方向を算出した場合、当該1つの方位区分と、当該1つの方位区分に隣接する複数の上記方位区分とにそれぞれ上記測定点の測定方向の存在を示す上記評価値を割り当てることによって、上記測定方向の情報を算出することを特徴とする請求項8または9に記載の一致性評価装置。   When the calculation unit calculates the measurement direction of the measurement point corresponding to one azimuth section among the plurality of azimuth sections, the one azimuth section and the plurality of azimuth sections adjacent to the one azimuth section The coincidence evaluation apparatus according to claim 8 or 9, wherein the information on the measurement direction is calculated by assigning the evaluation value indicating the existence of the measurement direction of the measurement point to each. 少なくとも1つの記録点に対するマップ上における位置情報および方向情報を、記録情報として記録する記録工程と、
所定の測定位置と周囲の測定点との距離と、当該測定位置から上記測定点への測定方向とを表す測定データを取得する取得工程と、
取得された上記測定データに基づき、上記マップ上における上記測定点の位置および測定方向を算出する算出工程と、
上記記録情報における各上記記録点の上記マップ上における位置情報と、取得された測定データから算出された上記測定点の上記マップ上における位置との、それぞれの一致度合いを表す各位置評価値を算出する位置評価工程と、
上記記録情報における各上記記録点の方向情報と、取得された上記測定データから算出された上記測定点の測定方向とのそれぞれの一致度合いを表す各方向評価値を算出する方向評価工程と、
算出された上記各位置評価値および上記各方向評価値に基づき、上記測定点が上記記録情報における各上記記録点に一致するか否かに関する評価を行う一致性評価工程とを有することを特徴とする一致性評価方法。
A recording step of recording position information and direction information on the map for at least one recording point as recording information;
An acquisition step of acquiring measurement data representing a distance between a predetermined measurement position and a surrounding measurement point, and a measurement direction from the measurement position to the measurement point;
Based on the acquired measurement data, a calculation step for calculating the position and measurement direction of the measurement point on the map;
Each position evaluation value representing the degree of coincidence between the position information on the map of each recording point in the recording information and the position on the map of the measurement point calculated from the acquired measurement data is calculated. A position evaluation process to perform,
A direction evaluation step for calculating each direction evaluation value representing a degree of coincidence between the direction information of each recording point in the recording information and the measurement direction of the measurement point calculated from the acquired measurement data;
And a consistency evaluation step for evaluating whether or not the measurement point matches each recording point in the recording information based on the calculated position evaluation value and the direction evaluation value. Consistency evaluation method.
JP2015212282A 2015-10-28 2015-10-28 Matching evaluation device and matching evaluation method Active JP6649743B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015212282A JP6649743B2 (en) 2015-10-28 2015-10-28 Matching evaluation device and matching evaluation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015212282A JP6649743B2 (en) 2015-10-28 2015-10-28 Matching evaluation device and matching evaluation method

Publications (2)

Publication Number Publication Date
JP2017083663A true JP2017083663A (en) 2017-05-18
JP6649743B2 JP6649743B2 (en) 2020-02-19

Family

ID=58712055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015212282A Active JP6649743B2 (en) 2015-10-28 2015-10-28 Matching evaluation device and matching evaluation method

Country Status (1)

Country Link
JP (1) JP6649743B2 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020502627A (en) * 2016-11-01 2020-01-23 ブレーン コーポレーションBrain Corporation Systems and methods for robot mapping
JP2021005031A (en) * 2019-06-27 2021-01-14 三菱重工業株式会社 Map generation device, method for generating map, and program
JP2022535033A (en) * 2019-07-19 2022-08-04 ネイバーラボス コーポレーション Apparatus and method for generating three-dimensional maps using aerial photographs
JP2022540906A (en) * 2019-07-16 2022-09-20 エルジー エレクトロニクス インコーポレイティド Mobile robot and its control method
US11700989B2 (en) 2019-07-11 2023-07-18 Lg Electronics Inc. Mobile robot using artificial intelligence and controlling method thereof
US11774976B2 (en) 2019-07-05 2023-10-03 Lg Electronics Inc. Moving robot and control method thereof
US11774982B2 (en) 2019-07-11 2023-10-03 Lg Electronics Inc. Moving robot and control method thereof

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252346A (en) * 2005-03-11 2006-09-21 Secom Co Ltd Mobile robot
JP2009205226A (en) * 2008-02-26 2009-09-10 Toyota Motor Corp Autonomous moving robot, method of estimating self position, method and apparatus for creating environmental map, and data structure of environmental map
JP2009252162A (en) * 2008-04-10 2009-10-29 Toyota Motor Corp Apparatus and method for generating map data
JP2015146091A (en) * 2014-02-03 2015-08-13 トヨタ自動車株式会社 Position estimation method of mobile robot

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006252346A (en) * 2005-03-11 2006-09-21 Secom Co Ltd Mobile robot
JP2009205226A (en) * 2008-02-26 2009-09-10 Toyota Motor Corp Autonomous moving robot, method of estimating self position, method and apparatus for creating environmental map, and data structure of environmental map
JP2009252162A (en) * 2008-04-10 2009-10-29 Toyota Motor Corp Apparatus and method for generating map data
JP2015146091A (en) * 2014-02-03 2015-08-13 トヨタ自動車株式会社 Position estimation method of mobile robot

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
友納 正裕: "ユークリッド変換に不変な特徴量を用いた二次元大域スキャンマッチング方式", 日本ロボット学会誌, vol. 第25巻 第3号, JPN6019026648, 15 April 2007 (2007-04-15), JP, pages 66 - 77, ISSN: 0004073927 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2020502627A (en) * 2016-11-01 2020-01-23 ブレーン コーポレーションBrain Corporation Systems and methods for robot mapping
JP2021005031A (en) * 2019-06-27 2021-01-14 三菱重工業株式会社 Map generation device, method for generating map, and program
US11774976B2 (en) 2019-07-05 2023-10-03 Lg Electronics Inc. Moving robot and control method thereof
US11700989B2 (en) 2019-07-11 2023-07-18 Lg Electronics Inc. Mobile robot using artificial intelligence and controlling method thereof
US11774982B2 (en) 2019-07-11 2023-10-03 Lg Electronics Inc. Moving robot and control method thereof
JP2022540906A (en) * 2019-07-16 2022-09-20 エルジー エレクトロニクス インコーポレイティド Mobile robot and its control method
JP7356567B2 (en) 2019-07-16 2023-10-04 エルジー エレクトロニクス インコーポレイティド Mobile robot and its control method
JP2022535033A (en) * 2019-07-19 2022-08-04 ネイバーラボス コーポレーション Apparatus and method for generating three-dimensional maps using aerial photographs
JP7460660B2 (en) 2019-07-19 2024-04-02 ネイバーラボス コーポレーション Apparatus and method for generating 3D maps using aerial photographs

Also Published As

Publication number Publication date
JP6649743B2 (en) 2020-02-19

Similar Documents

Publication Publication Date Title
JP6649743B2 (en) Matching evaluation device and matching evaluation method
US10422648B2 (en) Methods for finding the perimeter of a place using observed coordinates
CN111881239B (en) Construction method, construction device, intelligent robot and readable storage medium
CN111590595B (en) Positioning method and device, mobile robot and storage medium
CN113741438B (en) Path planning method, path planning device, storage medium, chip and robot
EP3447532A2 (en) Hybrid sensor with camera and lidar, and moving object
US20090149990A1 (en) Method, medium, and apparatus for performing path planning of mobile robot
CN110553652A (en) robot multi-sensor fusion positioning method and application thereof
CN107742304B (en) Method and device for determining movement track, mobile robot and storage medium
CN110850859B (en) Robot and obstacle avoidance method and obstacle avoidance system thereof
CN111522022B (en) Dynamic target detection method of robot based on laser radar
CN110895408B (en) Autonomous positioning method and device and mobile robot
CN112506200B (en) Robot positioning method, device, robot and storage medium
CN113768419B (en) Method and device for determining sweeping direction of sweeper and sweeper
CN114842106A (en) Method and apparatus for constructing grid map, self-walking apparatus, and storage medium
CN116465393A (en) Synchronous positioning and mapping method and device based on area array laser sensor
AU2021273605B2 (en) Multi-agent map generation
Jung et al. Structured light 2D range finder for simultaneous localization and map-building (SLAM) in home environments
CN113534805B (en) Robot recharging control method, device and storage medium
CN115546303A (en) Method and device for positioning indoor parking lot, vehicle and storage medium
JPWO2018180175A1 (en) Moving object, signal processing device, and computer program
Eryomin et al. Optical Sensors Fusion Approaches for Map Construction: A Review of Recent Studies
CN117419733A (en) Method for identifying a map of the surroundings with errors
CN116843846A (en) Point cloud data generation method and device, electronic equipment and storage medium
Bonin-Font et al. Combining obstacle avoidance with robocentric localization in a reactive visual navigation task

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180920

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190618

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190716

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190722

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200117

R150 Certificate of patent or registration of utility model

Ref document number: 6649743

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150