JP2011209203A - Self-position estimating device and self-position estimating method - Google Patents

Self-position estimating device and self-position estimating method Download PDF

Info

Publication number
JP2011209203A
JP2011209203A JP2010078891A JP2010078891A JP2011209203A JP 2011209203 A JP2011209203 A JP 2011209203A JP 2010078891 A JP2010078891 A JP 2010078891A JP 2010078891 A JP2010078891 A JP 2010078891A JP 2011209203 A JP2011209203 A JP 2011209203A
Authority
JP
Japan
Prior art keywords
self
position estimation
estimation unit
sensor
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP2010078891A
Other languages
Japanese (ja)
Inventor
Atsushi Miyamoto
敦史 宮本
Kenichiro Nagasaka
憲一郎 長阪
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2010078891A priority Critical patent/JP2011209203A/en
Publication of JP2011209203A publication Critical patent/JP2011209203A/en
Withdrawn legal-status Critical Current

Links

Images

Landscapes

  • Length Measuring Devices With Unspecified Measuring Means (AREA)
  • Manipulator (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
  • Optical Radar Systems And Details Thereof (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a self-position estimating device capable of estimating self position with high precision at a high sampling cycle.SOLUTION: The self-position estimating device includes an inner field sensor which detects operation information through the shifting mechanism of an autonomous shifting device that is equipped with a shifting mechanism and can move in a predetermined space, a first self-position estimating part which estimates self-position at a first sampling cycle based on a detection result obtained by the outer field sensor for detecting spatial information about the predetermined space, and a second self position estimating part which estimates self position at a sampling cycle that is higher than the first sampling cycle based on a self position estimation result from the first self position estimating part and the operation information of the autonomous shifting device which is detected by the inner field sensor.

Description

本発明は、自己位置推定装置および自己位置推定方法に関し、より詳細には、作業空間を自律的に移動可能な自律移動装置の自己位置推定装置および自己位置推定方法に関する。   The present invention relates to a self-position estimation apparatus and a self-position estimation method, and more particularly to a self-position estimation apparatus and a self-position estimation method of an autonomous mobile device that can autonomously move in a work space.

近年、自律的に移動し、様々な作業を行うロボットが実現されつつある。このような自律移動型ロボットには、例えば、原子力プラント等におけるメンテナンス作業や災害現場での救助作業、宇宙空間での作業等のように、人間の立ち入りが困難な環境での作業の遂行が期待されている。   In recent years, robots that move autonomously and perform various tasks are being realized. Such autonomous mobile robots are expected to perform work in environments where human access is difficult, such as maintenance work at nuclear power plants, rescue work at disaster sites, work in outer space, etc. Has been.

一方で、自律移動ロボットを家庭内へ導入し、家庭内でユーザの介助を行わせることについても、期待が高まっている。例えば、高齢者や車椅子利用者の生活支援として、ユーザにとっては身体的に困難を伴う作業を自律移動型ロボットに代行させることで、ユーザの負荷を軽減することができる。   On the other hand, there is an increasing expectation that autonomous mobile robots will be introduced into the home and users will be assisted in the home. For example, the burden on the user can be reduced by substituting an autonomous mobile robot for work that is physically difficult for the user as life support for the elderly and wheelchair users.

ロボットが部屋等の所定の空間内を自律的に移動できるためには、自己の存在する環境を認識して空間内における自己位置を推定し、自己の移動経路を特定できることが必要である。自己位置を推定するための手法としては、例えば、下記非特許文献1には、カメラの位置や姿勢とカメラの画像に映る特徴点の位置とを同時に推定可能なSLAM(Simultaneous Localization And Mapping)とよばれる技術を応用して、実空間内に存在する物体の3次元位置を表現する環境マップを動的に生成する手法が記載されている。なお、単眼カメラを用いたSLAM技術の基本的な原理は、下記非特許文献1において説明されている。   In order for a robot to move autonomously in a predetermined space such as a room, it is necessary to be able to recognize its own environment, estimate its own position in the space, and specify its own movement route. As a method for estimating the self-position, for example, the following Non-Patent Document 1 discloses SLAM (Simultaneous Localization And Mapping) that can simultaneously estimate the position and orientation of the camera and the position of the feature point reflected in the camera image. A technique for dynamically generating an environment map representing a three-dimensional position of an object existing in real space by applying a so-called technique is described. The basic principle of SLAM technology using a monocular camera is described in Non-Patent Document 1 below.

従来にも、上記のSLAMを用いた手法やその他の手法を用いて、高精度な自己位置推定を行う方法はあった。例えば、特許文献1には、複数の全方位カメラを用いて移動ロボットの位置を認識する方法が開示されている。また、特許文献2には、環境内に配置されたマーカを検出することでロボットの位置を認識することの可能な移動ロボットが開示されている。特許文献3には、姿勢回転偏差の時間的変化量を用いて自己位置を推定する方法が開示されている。   Conventionally, there has been a method of performing self-position estimation with high accuracy using the above-described method using SLAM and other methods. For example, Patent Document 1 discloses a method for recognizing the position of a mobile robot using a plurality of omnidirectional cameras. Patent Document 2 discloses a mobile robot capable of recognizing the position of the robot by detecting a marker arranged in the environment. Patent Document 3 discloses a method for estimating a self-position using a temporal change amount of a posture rotation deviation.

特開2008−229834号公報JP 2008-229834 A 特開2006−346767号公報JP 2006-346767 A 特許第4246696号公報Japanese Patent No. 4246696

Andrew J.Davison, “Real-Time Simultaneous Localization and Mapping with a Single Camera”, Proceedings of the 9th IEEE International Conference on Computer Vision Volume 2, 2003, pp.1403-1410Andrew J. Davison, “Real-Time Simultaneous Localization and Mapping with a Single Camera”, Proceedings of the 9th IEEE International Conference on Computer Vision Volume 2, 2003, pp.1403-1410

しかし、いずれの方法も、例えば特許文献1のようにセンサの特性上、低いサンプリング周期でしか情報を取得できなかったり、アルゴリズムの特性上、演算に多くの時間が必要とするものであったりした。このため、これらの方法により自己位置推定を行った場合、遅れを伴い、低いサンプリング周期でしか自己位置推定値を取得することができないという問題があった。一方、ロボットの移動機構から検出される駆動量を用いて、比較的高いサンプリング周期で自己位置推定値を取得することも可能である。かかる方法では、ロボットの初期位置からの差に基づき自己位置を推定するため、移動するにつれて初期位置からの誤差が増加し、高精度な自己位置推定をすることができない。また、移動機構のスリップ等によっても、検出値と実際の動きとの差が生じて、推定精度が低下する可能性がある。   However, either method can acquire information only with a low sampling period due to the characteristics of the sensor, for example, as in Patent Document 1, or may require a lot of time for calculation due to the characteristics of the algorithm. . For this reason, when self-position estimation is performed by these methods, there is a problem that the self-position estimation value can be acquired only with a low sampling period with a delay. On the other hand, it is also possible to acquire the self-position estimation value with a relatively high sampling period by using the drive amount detected from the moving mechanism of the robot. In this method, since the self-position is estimated based on the difference from the initial position of the robot, the error from the initial position increases as the robot moves, and high-precision self-position estimation cannot be performed. Also, slippage of the moving mechanism may cause a difference between the detected value and the actual movement, which may reduce the estimation accuracy.

また、ロボットの運動制御等のように、1ms、あるいはそれ以下の周期で演算を行うシステムの制御において、上記方法による自己位置推定値をそのまま用いると、不連続な値として入力されてしまい、制御精度を阻害する要因となってしまう。さらに、自己位置推定値をもとに、環境物体を認識する場合においては、自己位置推定値の更新が遅れると正確な環境物体の位置を取得することができなくなる。   Also, in the control of a system that performs calculations with a period of 1 ms or less, such as robot motion control, if the self-position estimation value by the above method is used as it is, it will be input as a discontinuous value, and control It becomes a factor that impedes accuracy. Further, in the case of recognizing an environmental object based on the self-position estimation value, if the update of the self-position estimation value is delayed, the accurate position of the environmental object cannot be acquired.

そこで、本発明は、上記問題に鑑みてなされたものであり、本発明の目的とするところは、高サンプリング周期で、高精度に自己位置を推定することが可能な、新規かつ改良された自己位置推定装置および自己位置推定方法を提供することにある。   Accordingly, the present invention has been made in view of the above problems, and an object of the present invention is to provide a new and improved self-position capable of estimating the self-position with high sampling period and high accuracy. The object is to provide a position estimation device and a self-position estimation method.

上記課題を解決するために、本発明のある観点によれば、移動機構を備え、所定の空間を移動可能な自律移動装置の移動機構による動作情報を検出する内界センサ、および所定の空間内に関する空間情報を検出する外界センサによる検出結果に基づいて、第1のサンプリング周期で自己位置を推定する第1の自己位置推定部と、第1の自己位置推定部による自己位置推定結果と、内界センサにより検出された自律移動装置の動作情報とに基づいて、第1のサンプリング周期よりも高いサンプリング周期で自己位置を推定する第2の自己位置推定部と、を備える、自己位置推定装置が提供される。   In order to solve the above-described problems, according to an aspect of the present invention, an inner world sensor that includes a moving mechanism and detects operation information by a moving mechanism of an autonomous mobile device that can move in a predetermined space, and a predetermined space A first self-position estimation unit that estimates a self-position in a first sampling period based on a detection result by an external sensor that detects spatial information about the self-position, a self-position estimation result by a first self-position estimation unit, A self-position estimation device comprising: a second self-position estimation unit that estimates the self-position at a sampling period higher than the first sampling period based on the operation information of the autonomous mobile device detected by the field sensor. Provided.

自己位置推定装置は、空間内の空間情報を環境マップとして記憶する記憶部をさらに備えることもできる。第1の自己位置推定部は、環境マップの空間情報、内界センサの検出値および外界センサの検出値に基づいて、自律移動装置の空間における自己位置を推定する位置推定部と、位置推定部により推定された自己位置と、外界センサの検出値とに基づいて、記憶部の環境マップを更新する更新部と、を備える。   The self-position estimation apparatus can further include a storage unit that stores space information in the space as an environment map. The first self-position estimation unit includes a position estimation unit that estimates a self-position in the space of the autonomous mobile device based on the spatial information of the environment map, the detection value of the internal sensor, and the detection value of the external sensor, and a position estimation unit And an update unit that updates the environment map of the storage unit based on the self-position estimated by the above and the detection value of the external sensor.

外界センサは、自律移動装置から空間内に存在する物体までの距離を取得する距離センサであり、第1の自己位置推定部は、距離センサの位置姿勢と当該距離センサによる測距値に基づき認識された物体の位置とを同時に推定するSLAMを用いて、環境マップを動的に生成してもよい。   The external sensor is a distance sensor that acquires the distance from the autonomous mobile device to an object that exists in the space, and the first self-position estimation unit recognizes based on the position and orientation of the distance sensor and the distance measured by the distance sensor. The environment map may be dynamically generated by using SLAM that simultaneously estimates the position of the detected object.

第2の自己位置推定部は、内界センサの検出値に基づく時間発展モデルと、第1の自己位置推定部により推定された自律移動装置の自己位置に基づく観測モデルとを備える拡張カルマンフィルタを用いて、自律移動装置の空間における自己位置を推定してもよい。   The second self-position estimation unit uses an extended Kalman filter including a time evolution model based on the detection value of the internal sensor and an observation model based on the self-position of the autonomous mobile device estimated by the first self-position estimation unit. Thus, the self position in the space of the autonomous mobile device may be estimated.

第2の自己位置推定部は、第1の自己位置推定部により推定された自己位置結果に内界センサの検出値を加算した加算値を用いて、観測モデルを生成してもよい。   The second self-position estimation unit may generate an observation model using an addition value obtained by adding the detection value of the inner world sensor to the self-position result estimated by the first self-position estimation unit.

内界センサは、自律移動装置の駆動機構の駆動量を検出する位置センサであってもよい。   The inner world sensor may be a position sensor that detects the driving amount of the driving mechanism of the autonomous mobile device.

第1のサンプリング周期は、外界センサの検出周期とし、第2のサンプリング周期は、内界センサの検出周期としてもよい。   The first sampling period may be a detection period of the external sensor, and the second sampling period may be a detection period of the internal sensor.

また、上記課題を解決するために、本発明の別の観点によれば、移動機構を備え、所定の空間を移動可能な自律移動装置の移動機構による動作情報を検出する内界センサ、および所定の空間内に関する空間情報を検出する外界センサによる検出結果に基づいて、第1の自己位置推定部によって、第1のサンプリング周期で自己位置を推定するステップと、第2の自己位置推定部による自己位置推定結果と、内界センサにより検出された自律移動装置の動作情報とに基づいて、第2の自己位置推定部によって、第1のサンプリング周期よりも高いサンプリング周期で自己位置を推定するステップと、を含む、自己位置推定方法が提供される。   In order to solve the above-described problem, according to another aspect of the present invention, an inner world sensor that includes a moving mechanism and detects operation information by a moving mechanism of an autonomous mobile device that can move in a predetermined space, and a predetermined A step of estimating a self-position at a first sampling period by a first self-position estimating unit based on a detection result by an external sensor that detects spatial information relating to the inside of the space, and a self by a second self-position estimating unit Based on the position estimation result and the operation information of the autonomous mobile device detected by the internal sensor, the second self-position estimating unit estimates the self-position at a sampling period higher than the first sampling period; A self-position estimation method is provided.

以上説明したように本発明によれば、高サンプリング周期で、高精度に自己位置を推定することが可能な、自己位置推定装置および自己位置推定方法を提供することができる。   As described above, according to the present invention, it is possible to provide a self-position estimation apparatus and a self-position estimation method capable of estimating a self-position with high sampling period and high accuracy.

本発明の実施形態に係る自己位置推定装置による自律移動ロボットの自己位置推定の概略を説明する説明図である。It is explanatory drawing explaining the outline of the self-position estimation of the autonomous mobile robot by the self-position estimation apparatus which concerns on embodiment of this invention. 同実施形態に係る自己位置推定装置の機能構成を示すブロック図である。It is a block diagram which shows the function structure of the self-position estimation apparatus which concerns on the same embodiment. 同実施形態に係る自己位置推定装置による自己位置推定方法を示すフローチャートである。It is a flowchart which shows the self-position estimation method by the self-position estimation apparatus which concerns on the same embodiment. 同実施形態に係る自己位置推定装置による自己位置推定方法を示すシーケンス図である。It is a sequence diagram which shows the self-position estimation method by the self-position estimation apparatus which concerns on the same embodiment. EKF自己位置推定部による自己位置推定値の算出手段を示す説明図である。It is explanatory drawing which shows the calculation means of the self-position estimated value by an EKF self-position estimation part. 同実施形態に係る自己位置推定装置のハードウェア構成の一例を示すブロック図である。It is a block diagram which shows an example of the hardware constitutions of the self-position estimation apparatus which concerns on the embodiment.

以下に添付図面を参照しながら、本発明の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。   Exemplary embodiments of the present invention will be described below in detail with reference to the accompanying drawings. In addition, in this specification and drawing, about the component which has the substantially same function structure, duplication description is abbreviate | omitted by attaching | subjecting the same code | symbol.

なお、説明は以下の順序で行うものとする。
1.自己位置推定装置による自己位置推定の概要
2.自己位置推定装置の構成
3.自己位置推定方法
4.ハードウェア構成例
The description will be made in the following order.
1. 1. Outline of self-position estimation by self-position estimation device 2. Configuration of self-position estimation apparatus 3. Self-position estimation method Hardware configuration example

<1.自己位置推定装置による自己位置推定の概要>
まず、図1に基づいて、本実施形態に係る自己位置推定装置100を用いた空間における自己位置推定の概略について説明する。なお、図1は、本実施形態に係る自己位置推定装置100による自律移動ロボット10の自己位置推定の概略を説明する説明図である。
<1. Outline of self-position estimation by self-position estimation device>
First, based on FIG. 1, the outline of the self-position estimation in the space using the self-position estimation apparatus 100 which concerns on this embodiment is demonstrated. FIG. 1 is an explanatory diagram for explaining an outline of self-position estimation of the autonomous mobile robot 10 by the self-position estimation apparatus 100 according to the present embodiment.

本実施形態に係る自己位置推定装置100は、自己の存在する空間において自己の位置を推定する装置である。例えば、図1に示すように、部屋に存在する自律移動型ロボット(以下、単に「ロボット」とも称する。)10が、部屋のどの位置に存在するかを自己位置推定装置100によって推定することができる。自律移動型ロボット10は、移動機構(例えば、図2に示す車輪14)と、空間を認識するための物体までの距離(測距値)を取得する距離センサ(例えば、図2に示すレーザレンジファインダ12)とを備えている。ロボット10は、移動機構の駆動量と取得した測距値とを用いて自己位置推定装置100により自己位置を推定することで、部屋を自律的に移動することが可能となる。   The self-position estimation apparatus 100 according to the present embodiment is an apparatus that estimates the self-position in a space where the self exists. For example, as shown in FIG. 1, an autonomous mobile robot (hereinafter, also simply referred to as “robot”) 10 existing in a room can estimate the position in the room by the self-position estimation apparatus 100. it can. The autonomous mobile robot 10 includes a moving mechanism (for example, the wheel 14 shown in FIG. 2) and a distance sensor (for example, a laser range shown in FIG. 2) that acquires a distance (ranging value) to the object for recognizing the space. And a finder 12). The robot 10 can move the room autonomously by estimating the self position by the self position estimating apparatus 100 using the driving amount of the moving mechanism and the acquired distance measurement value.

また、自己位置推定装置100は、距離センサにより認識された物体情報に基づいて、部屋の状況を表す環境マップを生成する。環境マップには、机1やタンス3等のような、部屋内で認識された物体の位置や形状、重量等の物体に関する情報が記憶されている。ロボット10は、このような環境マップを参照することで、自己の存在する空間の状態を認識して、目的に沿った移動経路を決定することができる。   In addition, the self-position estimation apparatus 100 generates an environment map that represents the state of the room based on the object information recognized by the distance sensor. The environment map stores information related to the object such as the position, shape, and weight of the object recognized in the room, such as the desk 1 or the chest 3. The robot 10 can recognize a state of a space in which the robot 10 exists by referring to such an environment map and determine a movement route according to the purpose.

このとき、ロボット10の動作の精度を高めるためには、自己の存在する空間における自己位置を正しく認識し、ロボット10を動作させるための制御量を正確に算出する必要がある。ロボット10の運動制御や自己位置推定値に基づく物体認識においては、高サンプリング周期で制御量を算出する必要があるため、自己位置推定値の更新も高サンプリング周期で行う必要がある。本実施形態に係る自己位置推定装置100は、このようなロボット10の動作制御にも適用可能な、高サンプリング周期で、高精度に自己位置推定値を算出できるものである。以下、図2〜図5に基づいて、本実施形態に係る自己位置推定装置100およびこれによる自己位置推定方法について詳細に説明する。   At this time, in order to increase the accuracy of the operation of the robot 10, it is necessary to correctly recognize the self position in the space where the robot 10 exists and to accurately calculate the control amount for operating the robot 10. In the object recognition based on the motion control of the robot 10 and the self-position estimation value, it is necessary to calculate the control amount with a high sampling period, and therefore the self-position estimation value needs to be updated with a high sampling period. The self-position estimation apparatus 100 according to the present embodiment can calculate a self-position estimation value with high accuracy at a high sampling period, which can be applied to the operation control of the robot 10. Hereinafter, based on FIGS. 2 to 5, the self-position estimation apparatus 100 according to the present embodiment and the self-position estimation method using the same will be described in detail.

<2.自己位置推定装置の構成>
まず、図2に基づいて、本実施形態に係る自己位置推定装置100の機能構成について説明する。なお、図2は、本実施形態に係る自己位置推定装置100の機能構成を示すブロック図である。
<2. Configuration of self-position estimation device>
First, a functional configuration of the self-position estimation apparatus 100 according to the present embodiment will be described based on FIG. FIG. 2 is a block diagram illustrating a functional configuration of the self-position estimation apparatus 100 according to the present embodiment.

自己位置推定装置100は、図2に示すように、車輪エンコーダ取得部110と、SLAM自己位置推定部120と、環境マップ記憶部130と、EKF自己位置推定部140と、運動制御部150とを備える。   As shown in FIG. 2, the self-position estimation apparatus 100 includes a wheel encoder acquisition unit 110, a SLAM self-position estimation unit 120, an environment map storage unit 130, an EKF self-position estimation unit 140, and a motion control unit 150. Prepare.

車輪エンコーダ取得部110は、自律移動型ロボット10の移動機構による動作情報を検出する内界センサである。本実施形態に係る自律移動型ロボット10は、移動機構として複数の車輪14を備えている。各車輪14には、車輪14を回転駆動するアクチュエータの回転を検出するエンコーダが設けられている。車輪エンコーダ取得部110は、車輪14に設けられたエンコーダの検出値(エンコーダ値)を取得する。そして、車輪エンコーダ取得部110は、検出値をSLAM自己位置推定部120およびEKF自己位置推定部140へ出力する。   The wheel encoder acquisition unit 110 is an internal sensor that detects operation information by a moving mechanism of the autonomous mobile robot 10. The autonomous mobile robot 10 according to the present embodiment includes a plurality of wheels 14 as a moving mechanism. Each wheel 14 is provided with an encoder that detects the rotation of an actuator that rotationally drives the wheel 14. The wheel encoder acquisition unit 110 acquires a detection value (encoder value) of an encoder provided on the wheel 14. Wheel encoder acquisition unit 110 then outputs the detected value to SLAM self-position estimation unit 120 and EKF self-position estimation unit 140.

SLAM自己位置推定部120は、上述したSLAMを利用して、環境マップ、内界センサおよび外界センサの検出結果に基づき、自己位置推定値を算出する。SLAM自己位置推定部120は、自己位置推定を行う位置推定部122と、環境マップ記憶部130に記憶された環境マップを更新する環境マップ更新部124とからなる。   The SLAM self-position estimation unit 120 calculates the self-position estimation value based on the detection results of the environment map, the inner world sensor, and the outer world sensor using the above-described SLAM. The SLAM self-position estimation unit 120 includes a position estimation unit 122 that performs self-position estimation and an environment map update unit 124 that updates the environment map stored in the environment map storage unit 130.

位置推定部122は、まず、内界センサである車輪14に設けられたエンコーダの値を取得する車輪エンコーダ取得部110の取得値から車輪速度を算出し、解析的に自己位置を更新する。その後、位置推定部122は、外界センサであるレーザレンジファインダ12により検出された測距値と、環境マップ記憶部130の環境マップとのマッチングを行い、SLAM自己位置推定部120における最終的な自己位置推定値を算出する。位置推定部122による自己位置推定は、低いサンプリング周期、例えば100msで自己位置を推定する。位置推定部122により算出された自己位置推定値は、環境マップ更新部124およびEKF自己位置推定部140へ出力される。   First, the position estimation unit 122 calculates the wheel speed from the acquired value of the wheel encoder acquisition unit 110 that acquires the value of the encoder provided in the wheel 14 that is the internal sensor, and analytically updates the self position. After that, the position estimation unit 122 performs matching between the distance value detected by the laser range finder 12 that is an external sensor and the environment map in the environment map storage unit 130, and the final self in the SLAM self-position estimation unit 120. A position estimate is calculated. The self-position estimation by the position estimation unit 122 estimates the self-position with a low sampling period, for example, 100 ms. The self-position estimation value calculated by the position estimation unit 122 is output to the environment map update unit 124 and the EKF self-position estimation unit 140.

環境マップ更新部124は、レーザレンジファインダ12により検出された測距値と、位置推定部122により推定された自己位置推定値とに基づき、環境マップを更新する。環境マップ更新部124は、入力されたレーザレンジファインダ12の測距値および自己位置推定値とから、空間内の物体の位置姿勢を算出し、環境マップ記憶部130の環境マップを更新する。   The environment map update unit 124 updates the environment map based on the distance measurement value detected by the laser range finder 12 and the self-position estimation value estimated by the position estimation unit 122. The environment map update unit 124 calculates the position and orientation of the object in the space from the distance measurement value and the self-position estimation value of the input laser range finder 12, and updates the environment map in the environment map storage unit 130.

環境マップ記憶部130は、実空間内に存在する物体の3次元位置を表現する環境マップを記憶する。環境マップは、例えば、レーザレンジファインダ12やカメラ(図示せず。)によって撮影された画像から認識された物体(例えば、机1やタンス3等)の情報を記憶する。物体の情報としては、例えば、三次元形状や位置、姿勢情報等がある。   The environment map storage unit 130 stores an environment map that represents a three-dimensional position of an object existing in the real space. The environment map stores, for example, information on an object (for example, the desk 1 or the chest 3) recognized from an image photographed by the laser range finder 12 or a camera (not shown). Examples of the object information include a three-dimensional shape, position, and posture information.

EKF自己位置推定部140は、SLAM自己位置推定部120により算出された自己位置推定値と、内界センサである車輪14に設けられたエンコーダの値を取得する車輪エンコーダ取得部110の取得値とに基づいて、自己位置推定値を算出する。EKF自己位置推定部140は、拡張カルマンフィルタ(Extended Kalman Filter;EKF)を用いて、高サンプリング周期で高精度な自己位置推定を行う。   The EKF self-position estimation unit 140 includes a self-position estimation value calculated by the SLAM self-position estimation unit 120 and an acquisition value of the wheel encoder acquisition unit 110 that acquires a value of an encoder provided on the wheel 14 that is an internal sensor. Based on the above, a self-position estimation value is calculated. The EKF self-position estimating unit 140 performs high-precision self-position estimation with a high sampling period using an extended Kalman filter (EKF).

拡張カルマンフィルタは、内界センサの検出値に基づく時間発展モデルと、SLAM自己位置推定部120において算出された自己位置推定値に基づく観測モデルとを有する。EKF自己位置推定部140は、時間発展モデルと観測モデルとの同定を行うことにより、自己位置推定値を算出することができる。EKF自己位置推定部140での自己位置推定は、車輪エンコーダ取得部110の取得タイミング(例えば、1ms周期)で行われる。なお、EKF自己位置推定部140による自己位置推定処理の詳細については後述する。EKF自己位置推定部140により算出された自己位置推定値は、運動制御部150に出力される。   The extended Kalman filter has a time evolution model based on the detection value of the internal sensor and an observation model based on the self-position estimation value calculated by the SLAM self-position estimation unit 120. The EKF self-position estimation unit 140 can calculate a self-position estimation value by identifying the time evolution model and the observation model. The self-position estimation in the EKF self-position estimation unit 140 is performed at the acquisition timing (for example, 1 ms cycle) of the wheel encoder acquisition unit 110. Details of the self-position estimation processing by the EKF self-position estimation unit 140 will be described later. The self-position estimation value calculated by the EKF self-position estimation unit 140 is output to the motion control unit 150.

運動制御部150は、EKF自己位置推定部140により算出された自己位置推定値を用いて、自律移動型ロボット10の運動制御を行う。運動制御部150は、ロボット10に所望の動作を行わせるための運動制御値を算出し、当該運動制御値に基づいてロボット10の車輪14を回転するモータ等の駆動機構(図示せず。)を駆動させる。   The motion control unit 150 performs motion control of the autonomous mobile robot 10 using the self-position estimation value calculated by the EKF self-position estimation unit 140. The motion control unit 150 calculates a motion control value for causing the robot 10 to perform a desired motion, and a drive mechanism (not shown) such as a motor that rotates the wheels 14 of the robot 10 based on the motion control value. Drive.

<3.自己位置推定方法>
次に、図3〜図5に基づいて、本実施形態に係る自己位置推定装置100による自己位置推定方法について説明する。図3は、本実施形態に係る自己位置推定装置100による自己位置推定方法を示すフローチャートである。図4は、本実施形態に係る自己位置推定装置100による自己位置推定方法を示すシーケンス図である。図5は、EKF自己位置推定部140による自己位置推定値の算出手段を示す説明図である。
<3. Self-position estimation method>
Next, a self-position estimation method by the self-position estimation apparatus 100 according to the present embodiment will be described based on FIGS. FIG. 3 is a flowchart showing a self-position estimation method by the self-position estimation apparatus 100 according to the present embodiment. FIG. 4 is a sequence diagram showing a self-position estimation method by the self-position estimation apparatus 100 according to the present embodiment. FIG. 5 is an explanatory diagram illustrating a self-position estimation value calculation unit by the EKF self-position estimation unit 140.

自己位置推定装置100による自己位置推定方法では、図3に示すように、まず、車輪エンコーダ取得部110により、車輪14の回転位置を測定するエンコーダの検出値(エンコーダ値)を取得する(ステップS100)。車輪エンコーダ取得部110は、ロボット10の移動機構である車輪14の回転位置をエンコーダにより検出し、エンコーダ値としてSLAM自己位置推定部120およびEKF自己位置推定部140へ出力する。   In the self-position estimation method performed by the self-position estimation apparatus 100, as shown in FIG. 3, first, a detection value (encoder value) of an encoder that measures the rotational position of the wheel 14 is acquired by the wheel encoder acquisition unit 110 (step S100). ). The wheel encoder acquisition unit 110 detects the rotational position of the wheel 14 that is the moving mechanism of the robot 10 by the encoder, and outputs the detected value to the SLAM self-position estimation unit 120 and the EKF self-position estimation unit 140 as encoder values.

ここで、図4に示すように、車輪エンコーダ取得部110は、高サンプリング周期、例えば1msでエンコーダ値を取得することができる。車輪エンコーダ取得部110は、出力先の自己位置推定の処理周期に応じて、取得したエンコーダ値を出力する。すなわち、本実施形態においては、低サンプリング周期(例えば100ms)で自己位置推定を行うSLAM自己位置推定部120に対しては100msごとに、車輪エンコーダ取得部110からSLAM自己位置推定部120へエンコーダ値が出力される。一方、高サンプリング周期(例えば1ms)で自己位置推定を行うEKF自己位置推定部140に対しては1msごとに、車輪エンコーダ取得部110からEKF自己位置推定部140へエンコーダ値が出力される。   Here, as shown in FIG. 4, the wheel encoder acquisition unit 110 can acquire the encoder value at a high sampling period, for example, 1 ms. The wheel encoder acquisition unit 110 outputs the acquired encoder value in accordance with the processing cycle of self-position estimation of the output destination. That is, in the present embodiment, the encoder value is transmitted from the wheel encoder acquisition unit 110 to the SLAM self-position estimation unit 120 every 100 ms for the SLAM self-position estimation unit 120 that performs self-position estimation at a low sampling period (for example, 100 ms). Is output. On the other hand, an encoder value is output from the wheel encoder acquisition unit 110 to the EKF self-position estimation unit 140 every 1 ms for the EKF self-position estimation unit 140 that performs self-position estimation at a high sampling period (for example, 1 ms).

一方、レーザレンジファインダ12は、ロボット10から空間内に存在する物体までの距離を測距値として取得する(ステップS110)。レーザレンジファインダ12は、エンコーダのように高いサンプリング周期で検出値を取得することができず、例えば図4に示すように、比較的低いサンプリング周期、例えば100ms周期で測距値を取得する。レーザレンジファインダ12は、取得した測距値を、SLAM自己位置推定部120へ出力する。   On the other hand, the laser range finder 12 acquires the distance from the robot 10 to an object existing in the space as a distance measurement value (step S110). The laser range finder 12 cannot acquire a detection value at a high sampling period unlike an encoder, and acquires a distance measurement value at a relatively low sampling period, for example, a 100 ms period as shown in FIG. The laser range finder 12 outputs the acquired distance measurement value to the SLAM self-position estimation unit 120.

SLAM自己位置推定部120は、レーザレンジファインダ12による測距値が入力されたタイミングで、自己位置推定処理を実行する(ステップS120)。SLAM自己位置推定部120は、図4に示すように、レーザレンジファインダ12による測距値と、この測距値の測定時点における車輪エンコーダ取得部110のエンコーダ値とに基づいて、自己位置推定処理を行う。SLAMによる自己位置推定処理は、例えば上記非特許文献1に記載の技術を用いて行うことができる。SLAM自己位置推定部120により算出された自己位置推定値は、EKF自己位置推定部140へ出力される。   The SLAM self-position estimation unit 120 executes self-position estimation processing at the timing when the distance measurement value from the laser range finder 12 is input (step S120). As shown in FIG. 4, the SLAM self-position estimation unit 120 performs self-position estimation processing based on the distance measurement value by the laser range finder 12 and the encoder value of the wheel encoder acquisition unit 110 at the time of measurement of the distance measurement value. I do. The self-position estimation process by SLAM can be performed using the technique described in Non-Patent Document 1, for example. The self-position estimation value calculated by the SLAM self-position estimation unit 120 is output to the EKF self-position estimation unit 140.

そして、EKF自己位置推定部140は、拡張カルマンフィルタの原理に基づき、SLAM自己位置推定部120により算出された自己位置推定値と、車輪エンコーダ取得部110によるエンコーダ値とを用いて、自己位置推定値を算出する(ステップS130)。上述したように、エンコーダ値は高サンプリング周期で取得可能であるが、レーザレンジファインダ12による測距値はこれより低いサンプリング周期でしか取得することができない。したがって、SLAMを用いる場合、高精度に自己位置を推定することができる一方、ロボット10の運動制御等、リアルタイムが要求される状況においては、より高いサンプリング周期で自己位置を推定できることが望ましい。そこで、EKF自己位置推定部140は、高サンプリング周期で取得可能なエンコーダ値と、SLAM自己位置推定部120により高精度に推定された自己位置推定値とに基づき、高サンプリング周期で高精度な自己位置推定値を取得することを可能とする。   Then, the EKF self-position estimation unit 140 uses the self-position estimation value calculated by the SLAM self-position estimation unit 120 and the encoder value obtained by the wheel encoder acquisition unit 110 based on the principle of the extended Kalman filter. Is calculated (step S130). As described above, the encoder value can be acquired at a high sampling period, but the distance measurement value by the laser range finder 12 can be acquired only at a sampling period lower than this. Therefore, when using SLAM, the self-position can be estimated with high accuracy. On the other hand, in a situation where real-time is required, such as motion control of the robot 10, it is desirable that the self-position can be estimated with a higher sampling period. Therefore, the EKF self-position estimation unit 140 uses the encoder value that can be acquired with a high sampling period and the self-position estimation value estimated with high accuracy by the SLAM self-position estimation unit 120, so It is possible to obtain a position estimation value.

EKF自己位置推定部140は、拡張カルマンフィルタを用いてロボット10の自己位置推定値を算出するにあたり、まず、エンコーダ値に基づくオドメトリ出力値を算出する。オドメトリ出力値は、車輪エンコーダ取得部110から入力されたロボット10の車輪14の回転位置より算出される、車輪14の速度や角速度等である。EKF自己位置推定部140は、このオドメトリ出力値を、エンコーダのサンプリング周期で算出することが可能である。そして、EKF自己位置推定部140は、オドメトリ出力値に基づき拡張カルマンフィルタの時間発展モデルを構築する。   In calculating the self-position estimation value of the robot 10 using the extended Kalman filter, the EKF self-position estimation unit 140 first calculates an odometry output value based on the encoder value. The odometry output value is the speed or angular velocity of the wheel 14 calculated from the rotational position of the wheel 14 of the robot 10 input from the wheel encoder acquisition unit 110. The EKF self-position estimation unit 140 can calculate the odometry output value with the sampling period of the encoder. Then, the EKF self-position estimation unit 140 constructs a time evolution model of the extended Kalman filter based on the odometry output value.

また、EKF自己位置推定部140は、オドメトリ出力値をSALM自己位置推定部120により算出されたSLAMによる自己位置推定値に加算する処理を行う。図4および図5に示すように、EKF自己位置推定部140は、オドメトリ出力値とSLAMによる自己位置推定値とを融合し、自己位置推定値を算出するが、これらの値の取得タイミングは相違する。このため、SLAMによる自己位置推定値をそのまま利用すると、かかる値が不連続な値として拡張カルマンフィルタに入力されることになる。   Further, the EKF self-position estimation unit 140 performs a process of adding the odometry output value to the self-position estimation value by SLAM calculated by the SALM self-position estimation unit 120. As shown in FIGS. 4 and 5, the EKF self-position estimation unit 140 fuses the odometry output value and the self-position estimation value by SLAM to calculate the self-position estimation value, but the acquisition timing of these values is different. To do. For this reason, if the self-position estimation value by SLAM is used as it is, such a value is input to the extended Kalman filter as a discontinuous value.

そこで、SLAM自己位置推定部120による自己位置推定値に、EKF自己位置推定部140による自己位置推定処理に用いるエンコーダのオドメトリ出力値と同一の値を、SLAM自己位置推定部120による自己位置推定値に加算する。これにより、SLAM自己位置推定部120により推定された時点の自己位置推定値からのロボット10の移動を含めた値が、エンコーダのサンプリング周期と同じ周期(例えば、1ms)で取得される。この取得値に基づき、観測モデルが構築される。したがって、EKF自己位置推定部140は、同一タイミングで取得された値に基づくモデルより、自己位置推定値を算出することができる。   Therefore, the same value as the odometry output value of the encoder used for the self-position estimation process by the EKF self-position estimation unit 140 is set as the self-position estimation value by the SLAM self-position estimation unit 120. Add to. Thus, a value including the movement of the robot 10 from the self-position estimation value estimated by the SLAM self-position estimation unit 120 is acquired at the same cycle (for example, 1 ms) as the sampling cycle of the encoder. Based on this acquired value, an observation model is constructed. Therefore, the EKF self-position estimation unit 140 can calculate a self-position estimation value from a model based on values acquired at the same timing.

EKF自己位置推定部140は、内界センサである車輪14の検出値に基づく時間発展モデルと、SLAM自己位置推定部120において算出された自己位置推定値に基づく観測モデルとを有する拡張カルマンフィルタを用いて、自己位置推定値を算出する。拡張カルマンフィルタは、誤差のある観測値を用いて動的システムの状態を推定するためのオブザーバである。拡張カルマンフィルタは、前時刻の推定状態から現時刻の推定状態を算出する予測フェーズと現時刻の観測結果を用いて推定値を補正する更新フェーズとからなり、入力値xt−1、Pt−1、u、yから出力値x、Pを得る。予測フェーズおよび更新フェーズは、公知の下記数式1〜5によって表される。 The EKF self-position estimation unit 140 uses an extended Kalman filter having a time evolution model based on the detected value of the wheel 14 that is an internal sensor and an observation model based on the self-position estimation value calculated by the SLAM self-position estimation unit 120. The self-position estimation value is calculated. The extended Kalman filter is an observer for estimating the state of a dynamic system using observations with errors. The extended Kalman filter includes a prediction phase for calculating an estimated state at the current time from an estimated state at the previous time, and an update phase for correcting the estimated value using the observation result at the current time. The input value x t−1 , P t− Output values x t and P t are obtained from 1 , u t and y t . The prediction phase and the update phase are represented by the following mathematical formulas 1 to 5.

Figure 2011209203
Figure 2011209203

ここで、xは状態推定値、Pは誤差の共分散、uは制御値、yは観測値、g()は状態予測、h()は観測予測、Aは時間発展モデルのヤコビ行列、Cは観測モデルのヤコビ行列、Rは時間発展モデルの共分散、Qは観測モデルの共分散、Kはカルマンゲインを示す。   Where x is the state estimate, P is the error covariance, u is the control value, y is the observed value, g () is the state prediction, h () is the observation prediction, A is the Jacobian matrix of the time evolution model, C Is the Jacobian matrix of the observation model, R is the covariance of the time evolution model, Q is the covariance of the observation model, and K is the Kalman gain.

具体的には、EKF自己位置推定部140は、図5に示すように、車輪エンコーダ取得部110によるエンコーダ値から算出される車輪速度(オドメトリ出力値)に基づく時間発展モデルにより、オドメトリ自己位置推定を行う。時間発展モデルは、下記数式6により表される。   Specifically, as shown in FIG. 5, the EKF self-position estimation unit 140 estimates the odometry self-position using a time evolution model based on the wheel speed (odometry output value) calculated from the encoder value obtained by the wheel encoder acquisition unit 110. I do. The time evolution model is expressed by the following Equation 6.

Figure 2011209203
Figure 2011209203

ここで、xはx軸方向における位置、yはy軸方向における位置、θは旋回角度であり、x=(x、y、θ)である。また、vは並進速度、wは回転速度、εは分散を示す。すなわち、数式6では、オドメトリ出力値に基づき推定された時刻tにおける自己位置推定値を表している。 Here, x is a position in the x-axis direction, y is a position in the y-axis direction, θ is a turning angle, and x = (x, y, θ) T. Further, v is a translation speed, w is a rotation speed, and ε is dispersion. That is, Equation 6 represents the estimated self-position value at time t estimated based on the odometry output value.

また、EKF自己位置推定部140は、SLAM自己位置推定部120による自己位置推定値よりロボット10の位置および方位を取得し、推定されたロボット10の位置および方位、そして車輪速度に基づく観測モデルにより、SLAM自己位置推定を行う。観測モデルは、下記数式7により表される。   Further, the EKF self-position estimation unit 140 acquires the position and orientation of the robot 10 from the self-position estimation value obtained by the SLAM self-position estimation unit 120, and uses an observation model based on the estimated position and orientation of the robot 10 and the wheel speed. SLAM self-position estimation. The observation model is expressed by the following mathematical formula 7.

Figure 2011209203
Figure 2011209203

ここで、uは直前のSLAM自己位置推定時刻、δは分散を示す。すなわち、数式7では、SLAM自己位置推定値に基づき推定された時刻tにおける自己位置推定値を表している。ここで、数式7の右辺第1項括弧内の2項よりわかるように、時刻t−uにおいて算出されたSLAM自己位置推定値(左側の項)に、時刻t−u+1から現時刻tまでの車輪14による移動距離(右側の項)が加算されている(図5の積分器における加算処理)。このようにして、拡張カルマンフィルタの2つのモデルの同期を取り、推定精度を高めるようにしている。   Here, u is the immediately preceding SLAM self-position estimation time, and δ is the variance. In other words, Formula 7 represents the self-position estimation value at time t estimated based on the SLAM self-position estimation value. Here, as can be seen from the two terms in the first term parenthesis on the right side of Equation 7, the SLAM self-position estimation value (left term) calculated at time tu is the time from time tu + 1 to the current time t. The travel distance (right term) by the wheel 14 is added (addition processing in the integrator of FIG. 5). In this way, the two models of the extended Kalman filter are synchronized to improve the estimation accuracy.

EKF自己位置推定部140は、数式6および7より表されるモデルを用いて、数式1〜5に基づきロボット10の空間内における推定位置を算出する。このように、EKF自己位置推定部140は、高精度のSLAMによる自己位置推定値と、高いサンプリング周期で取得されるオドメトリ出力値とを用いて、高精度かつ高サンプリング周期で自己位置を推定することができる。   The EKF self-position estimation unit 140 calculates the estimated position in the space of the robot 10 based on the mathematical expressions 1 to 5 using the models expressed by the mathematical expressions 6 and 7. As described above, the EKF self-position estimation unit 140 estimates the self-position with high accuracy and high sampling period using the self-position estimation value by high-accuracy SLAM and the odometry output value acquired with high sampling period. be able to.

その後、EKF自己位置推定部140は、算出した自己位置推定値を運動制御部150へ出力する。運動制御部150は、EKF自己位置推定部140により推定された自己位置に基づき、ロボット10が移動・作業するための駆動機構の制御値を算出し、ロボット10の制御を行う(ステップS140)。   Thereafter, the EKF self-position estimation unit 140 outputs the calculated self-position estimation value to the motion control unit 150. Based on the self position estimated by the EKF self position estimation unit 140, the motion control unit 150 calculates a control value of a drive mechanism for the robot 10 to move and work, and controls the robot 10 (step S140).

以上、本実施形態に係る自己位置推定装置100による自己位置推定方法について説明した。かかる方法によれば、低サンプリング周期でのSLAMを用いた自己位置推定結果と、高サンプリング周期で取得可能な車輪エンコーダ取得部110からのオドメトリ出力とを拡張カルマンフィルタによって融合する。これにより、低サンプリング周期で推定された自己位置推定結果を、より実位置に近いものに補正することができ、高サンプリング周期で高精度な自己位置推定を行うことが可能となる。   The self-position estimation method by the self-position estimation apparatus 100 according to the present embodiment has been described above. According to this method, the self-position estimation result using the SLAM at the low sampling period and the odometry output from the wheel encoder acquisition unit 110 that can be acquired at the high sampling period are fused by the extended Kalman filter. As a result, the self-position estimation result estimated in the low sampling period can be corrected to be closer to the actual position, and high-precision self-position estimation can be performed in the high sampling period.

また、本実施形態の自己位置推定方法では、SLAMによる自己位置推定結果をEKF自己位置推定部140に入力する前に、車輪エンコーダ取得部110からのオドメトリ出力を加算する。これにより、EKF自己位置推定部140による自己位置推定結果が不連続な値とならず、この自己位置推定値を用いたロボット10の運動制御等の制御を高精度に行うことが可能となる。   Further, in the self-position estimation method of the present embodiment, the odometry output from the wheel encoder acquisition unit 110 is added before the self-position estimation result by SLAM is input to the EKF self-position estimation unit 140. Thereby, the self-position estimation result by the EKF self-position estimation unit 140 does not become a discontinuous value, and it becomes possible to perform control such as motion control of the robot 10 using the self-position estimation value with high accuracy.

<4.ハードウェア構成例>
本実施形態にかかる自己位置推定装置100による一部の処理は、ハードウェアにより実行させることもでき、ソフトウェアによって実行させることもできる。この場合、自己位置推定装置100は、図6に示すようなコンピュータとして構成することもできる。以下、図6に基づいて、本実施形態に係る自己位置推定装置100の一ハードウェア構成例について説明する。
<4. Hardware configuration example>
A part of the processing by the self-position estimation apparatus 100 according to the present embodiment can be executed by hardware or can be executed by software. In this case, the self-position estimation apparatus 100 can also be configured as a computer as shown in FIG. Hereinafter, a hardware configuration example of the self-position estimation apparatus 100 according to the present embodiment will be described with reference to FIG.

本実施形態にかかる入力ユニットを構成する自己位置推定装置100は、上述したように、コンピュータ等の情報処理装置により実現することができ、マニピュレータ10を備える自律分散型ロボットに設けることができる。自己位置推定装置100は、図6に示すように、CPU(Central Processing Unit)101と、ROM(Read Only Memory)102と、RAM(Random Access Memory)103と、ホストバス104aとを備える。また、自己位置推定装置100は、ブリッジ104と、外部バス104bと、インタフェース105と、入力装置106と、出力装置107と、ストレージ装置(HDD)108と、ドライブ109と、接続ポート111と、通信装置113とを備える。   As described above, the self-position estimation apparatus 100 configuring the input unit according to the present embodiment can be realized by an information processing apparatus such as a computer, and can be provided in an autonomous distributed robot including the manipulator 10. As shown in FIG. 6, the self-position estimation apparatus 100 includes a CPU (Central Processing Unit) 101, a ROM (Read Only Memory) 102, a RAM (Random Access Memory) 103, and a host bus 104a. Further, the self-position estimation device 100 includes a bridge 104, an external bus 104b, an interface 105, an input device 106, an output device 107, a storage device (HDD) 108, a drive 109, a connection port 111, and a communication. Device 113.

CPU101は、演算処理装置および制御装置として機能し、各種プログラムに従って自己位置推定装置100内の動作全般を制御する。また、CPU101は、マイクロプロセッサであってもよい。ROM102は、CPU101が使用するプログラムや演算パラメータ等を記憶する。RAM103は、CPU101の実行において使用するプログラムや、その実行において適宜変化するパラメータ等を一時記憶する。これらはCPUバスなどから構成されるホストバス104aにより相互に接続されている。   The CPU 101 functions as an arithmetic processing device and a control device, and controls the overall operation within the self-position estimation device 100 according to various programs. Further, the CPU 101 may be a microprocessor. The ROM 102 stores programs and calculation parameters used by the CPU 101. The RAM 103 temporarily stores programs used in the execution of the CPU 101, parameters that change as appropriate during the execution, and the like. These are connected to each other by a host bus 104a including a CPU bus.

ホストバス104aは、ブリッジ104を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス104bに接続されている。なお、必ずしもホストバス104a、ブリッジ104および外部バス104bを分離構成する必要はなく、一のバスにこれらの機能を実装してもよい。   The host bus 104 a is connected to an external bus 104 b such as a PCI (Peripheral Component Interconnect / Interface) bus via the bridge 104. Note that the host bus 104a, the bridge 104, and the external bus 104b are not necessarily configured separately, and these functions may be mounted on one bus.

入力装置106は、マウス、キーボード、タッチパネル、ボタン、マイク、スイッチおよびレバーなどユーザが情報を入力するための入力手段と、ユーザによる入力に基づいて入力信号を生成し、CPU101に出力する入力制御回路などから構成されている。ユーザは、該入力装置106を操作することにより、ロボットの自己位置推定装置100に対して各種のデータを入力したり処理動作を指示したりすることができる。   The input device 106 includes an input means for a user to input information, such as a mouse, keyboard, touch panel, button, microphone, switch, and lever, and an input control circuit that generates an input signal based on the input by the user and outputs the input signal to the CPU 101. Etc. By operating the input device 106, the user can input various data and instruct processing operations to the robot's self-position estimation device 100.

出力装置107は、例えば、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Diode)装置およびランプなどの表示装置や、スピーカなどの音声出力装置を含む。   The output device 107 includes, for example, a liquid crystal display (LCD) device, an OLED (Organic Light Emitting Diode) device and a display device such as a lamp, and an audio output device such as a speaker.

ストレージ装置108は、自己位置推定装置100の記憶部の一例であり、データ格納用の装置である。ストレージ装置108は、記憶媒体、記憶媒体にデータを記録する記録装置、記憶媒体からデータを読み出す読出し装置および記憶媒体に記録されたデータを削除する削除装置などを含んでもよい。ストレージ装置108は、例えば、HDD(Hard Disk Drive)で構成される。このストレージ装置108は、ハードディスクを駆動し、CPU101が実行するプログラムや各種データを格納する。   The storage device 108 is an example of a storage unit of the self-position estimation device 100 and is a device for storing data. The storage device 108 may include a storage medium, a recording device that records data on the storage medium, a reading device that reads data from the storage medium, a deletion device that deletes data recorded on the storage medium, and the like. The storage device 108 is composed of, for example, an HDD (Hard Disk Drive). The storage device 108 drives a hard disk and stores programs executed by the CPU 101 and various data.

ドライブ109は、記憶媒体用リーダライタであり、自己位置推定装置100に内蔵、あるいは外付けされる。ドライブ109は、装着されている磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリ等のリムーバブル記録媒体に記録されている情報を読み出して、RAM103に出力する。   The drive 109 is a storage medium reader / writer, and is built in or externally attached to the self-position estimation apparatus 100. The drive 109 reads information recorded on a mounted removable recording medium such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and outputs the information to the RAM 103.

接続ポート111は、外部機器と接続されるインタフェースであって、例えばUSB(Universal Serial Bus)などによりデータ伝送可能な外部機器との接続口である。また、通信装置113は、例えば、通信網15に接続するための通信デバイス等で構成された通信インタフェースである。また、通信装置112は、無線LAN(Local Area Network)対応通信装置であっても、ワイヤレスUSB対応通信装置であっても、有線による通信を行うワイヤー通信装置であってもよい。   The connection port 111 is an interface connected to an external device, and is a connection port with an external device capable of transmitting data by USB (Universal Serial Bus), for example. The communication device 113 is a communication interface configured with a communication device or the like for connecting to the communication network 15, for example. The communication device 112 may be a wireless LAN (Local Area Network) compatible communication device, a wireless USB compatible communication device, or a wire communication device that performs wired communication.

なお、本実施形態に係る自己位置推定装置100は、必ずしも図6に示すハードウェアを備える必要はない。例えば、入力装置106や表示装置107、ストレージ装置108、ドライブ109、接続ポート111、通信装置113等については、自己位置推定装置100とは別の装置として、自己位置推定装置100と接続して使用できるようにしてもよい。   Note that the self-position estimation apparatus 100 according to the present embodiment does not necessarily include the hardware illustrated in FIG. For example, the input device 106, the display device 107, the storage device 108, the drive 109, the connection port 111, the communication device 113, etc. are connected to the self-position estimation device 100 and used as a device different from the self-position estimation device 100. You may be able to do it.

以上、添付図面を参照しながら本発明の好適な実施形態について詳細に説明したが、本発明はかかる例に限定されない。本発明の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本発明の技術的範囲に属するものと了解される。   The preferred embodiments of the present invention have been described in detail above with reference to the accompanying drawings, but the present invention is not limited to such examples. It is obvious that a person having ordinary knowledge in the technical field to which the present invention pertains can come up with various changes or modifications within the scope of the technical idea described in the claims. Of course, it is understood that these also belong to the technical scope of the present invention.

例えば、上記実施形態では、SLAMによる自己位置推定値と内界センサによるオドメトリ出力値とを、拡張カルマンフィルタを用いて融合したが、本発明はかかる例に限定されない。例えば、拡張カルマンフィルタの代わりに、パーティクルフィルタ等を用いてもよい。なお、パーティクルフィルタを利用すると計算量が莫大に増加するため、拡張カルマンフィルタを用いるのが好適である。   For example, in the above embodiment, the self-position estimation value by SLAM and the odometry output value by the internal sensor are fused using the extended Kalman filter, but the present invention is not limited to such an example. For example, a particle filter or the like may be used instead of the extended Kalman filter. Note that the use of a particle filter greatly increases the amount of calculation, so it is preferable to use an extended Kalman filter.

また、上記実施形態では、外界センサとしてレーザレンジファインダ12を用いたが、本発明はかかる例に限定されず、例えばステレオカメラ等を用いてもよい。   Moreover, in the said embodiment, although the laser range finder 12 was used as an external sensor, this invention is not limited to this example, For example, you may use a stereo camera etc.

さらに、上記実施形態では、SLAM自己位置推定部120による自己位置推定処理を100ms周期で行い、EKF自己位置推定部130による自己位置推定処理を1ms周期で行ったが、本発明はかかる例に限定されない。EKF自己位置推定部140のサンプリング周期がSLAM自己位置推定部120のサンプリング周期よりも高い場合に、本発明は適用可能である。   Furthermore, in the above-described embodiment, the self-position estimation process by the SLAM self-position estimation unit 120 is performed in a 100 ms cycle, and the self-position estimation process by the EKF self-position estimation unit 130 is performed in a 1 ms cycle. However, the present invention is limited to this example. Not. The present invention is applicable when the sampling period of the EKF self-position estimation unit 140 is higher than the sampling period of the SLAM self-position estimation unit 120.

10 自律移動型ロボット
12 レーザレンジファインダ
14 車輪
100 自己位置推定装置
110 車輪エンコーダ取得部
120 SLAM自己位置推定部
122 位置推定部
124 環境マップ更新部
130 環境マップ記憶部
140 EKF自己位置推定部
150 運動制御部
DESCRIPTION OF SYMBOLS 10 Autonomous mobile robot 12 Laser range finder 14 Wheel 100 Self-position estimation apparatus 110 Wheel encoder acquisition part 120 SLAM self-position estimation part 122 Position estimation part 124 Environmental map update part 130 Environmental map memory | storage part 140 EKF self-position estimation part 150 Motion control Part

Claims (8)

移動機構を備え、所定の空間を移動可能な自律移動装置の前記移動機構による動作情報を検出する内界センサ、および前記所定の空間内に関する空間情報を検出する外界センサによる検出結果に基づいて、第1のサンプリング周期で自己位置を推定する第1の自己位置推定部と、
前記第1の自己位置推定部による自己位置推定結果と、前記内界センサにより検出された前記自律移動装置の動作情報とに基づいて、前記第1のサンプリング周期よりも高いサンプリング周期で自己位置を推定する第2の自己位置推定部と、
を備える、自己位置推定装置。
Based on a detection result by an external sensor that detects movement information by the movement mechanism of the autonomous mobile device that includes a movement mechanism and can move in a predetermined space, and an external sensor that detects spatial information in the predetermined space, A first self-position estimation unit that estimates the self-position in a first sampling period;
Based on the self-position estimation result by the first self-position estimation unit and the operation information of the autonomous mobile device detected by the internal sensor, the self-position is determined at a sampling period higher than the first sampling period. A second self-position estimating unit to estimate;
A self-position estimation apparatus comprising:
前記空間内の空間情報を環境マップとして記憶する記憶部をさらに備え、
前記第1の自己位置推定部は、
前記環境マップの空間情報、前記内界センサの検出値および前記外界センサの検出値に基づいて、前記自律移動装置の前記空間における自己位置を推定する位置推定部と、
前記位置推定部により推定された自己位置と、前記外界センサの検出値とに基づいて、前記記憶部の環境マップを更新する更新部と、
を備える、請求項1に記載の自己位置推定装置。
A storage unit for storing space information in the space as an environment map;
The first self-position estimation unit includes:
A position estimation unit that estimates the self-position of the autonomous mobile device in the space based on the spatial information of the environment map, the detection value of the internal sensor, and the detection value of the external sensor;
An update unit that updates the environment map of the storage unit based on the self-position estimated by the position estimation unit and the detection value of the external sensor,
The self-position estimation apparatus according to claim 1, comprising:
前記外界センサは、前記自律移動装置から前記空間内に存在する物体までの距離を取得する距離センサであり、
前記第1の自己位置推定部は、前記距離センサの位置姿勢と当該距離センサによる測距値に基づき認識された物体の位置とを同時に推定するSLAMを用いて、前記環境マップを動的に生成する、請求項2に記載の自己位置推定装置。
The external sensor is a distance sensor that acquires a distance from the autonomous mobile device to an object existing in the space,
The first self-position estimation unit dynamically generates the environment map using SLAM that simultaneously estimates the position and orientation of the distance sensor and the position of an object recognized based on a distance measurement value by the distance sensor. The self-position estimation apparatus according to claim 2.
前記第2の自己位置推定部は、前記内界センサの検出値に基づく時間発展モデルと、前記第1の自己位置推定部により推定された前記自律移動装置の自己位置に基づく観測モデルとを備える拡張カルマンフィルタを用いて、前記自律移動装置の前記空間における自己位置を推定する、請求項1〜3のいずれか1項に記載の自己位置推定装置。   The second self-position estimation unit includes a time development model based on a detection value of the inner world sensor and an observation model based on the self-position of the autonomous mobile device estimated by the first self-position estimation unit. The self-position estimation apparatus according to any one of claims 1 to 3, wherein a self-position in the space of the autonomous mobile apparatus is estimated using an extended Kalman filter. 前記第2の自己位置推定部は、前記第1の自己位置推定部により推定された自己位置結果に前記内界センサの検出値を加算した加算値を用いて、前記観測モデルを生成する、請求項4に記載の自己位置推定装置。   The second self-position estimation unit generates the observation model using an addition value obtained by adding the detection value of the inner world sensor to the self-position result estimated by the first self-position estimation unit. Item 5. The self-position estimation apparatus according to Item 4. 前記内界センサは、前記自律移動装置の駆動機構の駆動量を検出する位置センサである、請求項1に記載の自己位置推定装置。   The self-position estimation apparatus according to claim 1, wherein the inner world sensor is a position sensor that detects a driving amount of a driving mechanism of the autonomous mobile device. 前記第1のサンプリング周期は、前記外界センサの検出周期であり、
前記第2のサンプリング周期は、前記内界センサの検出周期である、請求項1に記載の自己位置推定装置。
The first sampling period is a detection period of the external sensor,
The self-position estimation apparatus according to claim 1, wherein the second sampling period is a detection period of the inner world sensor.
移動機構を備え、所定の空間を移動可能な自律移動装置の前記移動機構による動作情報を検出する内界センサ、および前記所定の空間内に関する空間情報を検出する外界センサによる検出結果に基づいて、第1の自己位置推定部によって、第1のサンプリング周期で自己位置を推定するステップと、
前記前記第2の自己位置推定部による自己位置推定結果と、前記内界センサにより検出された前記自律移動装置の動作情報とに基づいて、第2の自己位置推定部によって、前記第1のサンプリング周期よりも高いサンプリング周期で自己位置を推定するステップと、
を含む、自己位置推定方法。
Based on a detection result by an external sensor that detects movement information by the movement mechanism of the autonomous mobile device that includes a movement mechanism and can move in a predetermined space, and an external sensor that detects spatial information in the predetermined space, Estimating a self-position at a first sampling period by a first self-position estimation unit;
Based on the self-position estimation result by the second self-position estimation unit and the operation information of the autonomous mobile device detected by the internal sensor, the second self-position estimation unit performs the first sampling. Estimating the self-position with a sampling period higher than the period;
A self-position estimation method including:
JP2010078891A 2010-03-30 2010-03-30 Self-position estimating device and self-position estimating method Withdrawn JP2011209203A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010078891A JP2011209203A (en) 2010-03-30 2010-03-30 Self-position estimating device and self-position estimating method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010078891A JP2011209203A (en) 2010-03-30 2010-03-30 Self-position estimating device and self-position estimating method

Publications (1)

Publication Number Publication Date
JP2011209203A true JP2011209203A (en) 2011-10-20

Family

ID=44940416

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010078891A Withdrawn JP2011209203A (en) 2010-03-30 2010-03-30 Self-position estimating device and self-position estimating method

Country Status (1)

Country Link
JP (1) JP2011209203A (en)

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012103819A (en) * 2010-11-08 2012-05-31 Fujitsu Ltd Position estimation method, position estimation device and program
WO2012153629A1 (en) * 2011-05-12 2012-11-15 株式会社Ihi Device and method for controlling prediction of motion
JP2012236254A (en) * 2011-05-12 2012-12-06 Ihi Corp Device and method for holding moving body
JP2012245568A (en) * 2011-05-25 2012-12-13 Ihi Corp Device and method for controlling and predicting motion
JP2012247835A (en) * 2011-05-25 2012-12-13 Ihi Corp Robot movement prediction control method and device
KR101454824B1 (en) * 2013-04-03 2014-11-03 국방과학연구소 System and Method for estimating positions of an autonomous mobile vehicle
JP2015152991A (en) * 2014-02-12 2015-08-24 株式会社デンソーアイティーラボラトリ Self-location estimation device and self-location estimation method
WO2016006588A1 (en) * 2014-07-09 2016-01-14 パイオニア株式会社 Mobile object control device, mobile object control method, mobile object control program, and recording medium
JP2017134617A (en) * 2016-01-27 2017-08-03 株式会社リコー Position estimation device, program and position estimation method
JP2018010412A (en) * 2016-07-12 2018-01-18 株式会社リコー Information processing equipment, information processing method and information processing program
JP2018532204A (en) * 2015-11-02 2018-11-01 スターシップ テクノロジーズ オウStarship Technologies OUE Device and method for autonomous self-location estimation
US10119804B2 (en) 2014-11-12 2018-11-06 Murata Machinery, Ltd. Moving amount estimating apparatus, autonomous mobile body, and moving amount estimating method
CN109129482A (en) * 2018-08-29 2019-01-04 武汉理工大学 A kind of method of dynamic Compensating Robot linear guide kinematic error
WO2019138640A1 (en) * 2018-01-10 2019-07-18 ソニー株式会社 Information processing device, information processing method, and program
JP2019158640A (en) * 2018-03-14 2019-09-19 トヨタ自動車株式会社 Position estimation system, position detection method, and program
WO2020049945A1 (en) * 2018-09-04 2020-03-12 ソニー株式会社 Self-localization device, information processing device, and self-localization method
JP2020517023A (en) * 2017-04-11 2020-06-11 珠海市一微半導体有限公司Amicro Semiconductor Co., Ltd. Robot motion control method based on map prediction
JP2021517284A (en) * 2018-03-26 2021-07-15 京東方科技集團股▲ふん▼有限公司Boe Technology Group Co.,Ltd. Indoor positioning methods, indoor positioning systems, indoor positioning devices and computer readable media
JP2021176052A (en) * 2020-05-01 2021-11-04 株式会社豊田自動織機 Self-position estimating device
CN113841068A (en) * 2019-05-16 2021-12-24 三菱电机株式会社 Information processing apparatus, information processing method, and information processing program
WO2023218825A1 (en) * 2022-05-13 2023-11-16 株式会社日立インダストリアルプロダクツ Robot control system, conveyance system, and robot control method

Cited By (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012103819A (en) * 2010-11-08 2012-05-31 Fujitsu Ltd Position estimation method, position estimation device and program
WO2012153629A1 (en) * 2011-05-12 2012-11-15 株式会社Ihi Device and method for controlling prediction of motion
JP2012236254A (en) * 2011-05-12 2012-12-06 Ihi Corp Device and method for holding moving body
US9108321B2 (en) 2011-05-12 2015-08-18 Ihi Corporation Motion prediction control device and method
JP2012245568A (en) * 2011-05-25 2012-12-13 Ihi Corp Device and method for controlling and predicting motion
JP2012247835A (en) * 2011-05-25 2012-12-13 Ihi Corp Robot movement prediction control method and device
KR101454824B1 (en) * 2013-04-03 2014-11-03 국방과학연구소 System and Method for estimating positions of an autonomous mobile vehicle
JP2015152991A (en) * 2014-02-12 2015-08-24 株式会社デンソーアイティーラボラトリ Self-location estimation device and self-location estimation method
WO2016006588A1 (en) * 2014-07-09 2016-01-14 パイオニア株式会社 Mobile object control device, mobile object control method, mobile object control program, and recording medium
JPWO2016006588A1 (en) * 2014-07-09 2017-04-27 パイオニア株式会社 MOBILE BODY CONTROL DEVICE, MOBILE BODY CONTROL METHOD, MOBILE BODY CONTROL PROGRAM, AND RECORDING MEDIUM
JP2018200732A (en) * 2014-07-09 2018-12-20 パイオニア株式会社 Mobile body controller, mobile body control method, mobile body control program, and recording medium
US10119804B2 (en) 2014-11-12 2018-11-06 Murata Machinery, Ltd. Moving amount estimating apparatus, autonomous mobile body, and moving amount estimating method
US11989028B2 (en) 2015-11-02 2024-05-21 Starship Technologies Oü Mobile robot system and method for generating map data using straight lines extracted from visual images
JP2018532204A (en) * 2015-11-02 2018-11-01 スターシップ テクノロジーズ オウStarship Technologies OUE Device and method for autonomous self-location estimation
US11042165B2 (en) 2015-11-02 2021-06-22 Starship Technologies Oü Mobile robot system and method for autonomous localization using straight lines extracted from visual images
US11747822B2 (en) 2015-11-02 2023-09-05 Starship Technologies Oü Mobile robot system and method for autonomous localization using straight lines extracted from visual images
US11579623B2 (en) 2015-11-02 2023-02-14 Starship Technologies Oü Mobile robot system and method for generating map data using straight lines extracted from visual images
JP7147119B2 (en) 2015-11-02 2022-10-05 スターシップ テクノロジーズ オウ Device and method for autonomous self-localization
JP2017134617A (en) * 2016-01-27 2017-08-03 株式会社リコー Position estimation device, program and position estimation method
JP2018010412A (en) * 2016-07-12 2018-01-18 株式会社リコー Information processing equipment, information processing method and information processing program
JP2020517023A (en) * 2017-04-11 2020-06-11 珠海市一微半導体有限公司Amicro Semiconductor Co., Ltd. Robot motion control method based on map prediction
WO2019138640A1 (en) * 2018-01-10 2019-07-18 ソニー株式会社 Information processing device, information processing method, and program
US11926038B2 (en) 2018-01-10 2024-03-12 Sony Corporation Information processing apparatus and information processing method
JP7091733B2 (en) 2018-03-14 2022-06-28 トヨタ自動車株式会社 Position estimation system, position detection method, and program
JP2019158640A (en) * 2018-03-14 2019-09-19 トヨタ自動車株式会社 Position estimation system, position detection method, and program
JP2021517284A (en) * 2018-03-26 2021-07-15 京東方科技集團股▲ふん▼有限公司Boe Technology Group Co.,Ltd. Indoor positioning methods, indoor positioning systems, indoor positioning devices and computer readable media
JP7247186B2 (en) 2018-03-26 2023-03-28 京東方科技集團股▲ふん▼有限公司 Indoor positioning method, indoor positioning system, indoor positioning device and computer readable medium
CN109129482B (en) * 2018-08-29 2021-05-25 武汉理工大学 Method for dynamically compensating motion error of linear guide rail of robot
CN109129482A (en) * 2018-08-29 2019-01-04 武汉理工大学 A kind of method of dynamic Compensating Robot linear guide kinematic error
WO2020049945A1 (en) * 2018-09-04 2020-03-12 ソニー株式会社 Self-localization device, information processing device, and self-localization method
CN113841068A (en) * 2019-05-16 2021-12-24 三菱电机株式会社 Information processing apparatus, information processing method, and information processing program
JP2021176052A (en) * 2020-05-01 2021-11-04 株式会社豊田自動織機 Self-position estimating device
JP7322799B2 (en) 2020-05-01 2023-08-08 株式会社豊田自動織機 Self-localization device
WO2023218825A1 (en) * 2022-05-13 2023-11-16 株式会社日立インダストリアルプロダクツ Robot control system, conveyance system, and robot control method

Similar Documents

Publication Publication Date Title
JP2011209203A (en) Self-position estimating device and self-position estimating method
US11009941B2 (en) Calibration of measurement units in alignment with a skeleton model to control a computer system
JP3945279B2 (en) Obstacle recognition apparatus, obstacle recognition method, obstacle recognition program, and mobile robot apparatus
Chen Kalman filter for robot vision: a survey
CN109885080B (en) Autonomous control system and autonomous control method
Zhang et al. An RGB-D camera based visual positioning system for assistive navigation by a robotic navigation aid
TWI827649B (en) Apparatuses, systems and methods for vslam scale estimation
Neto et al. 3-D position estimation from inertial sensing: Minimizing the error from the process of double integration of accelerations
JP5276931B2 (en) Method for recovering from moving object and position estimation error state of moving object
KR20120046974A (en) Moving robot and simultaneous localization and map-buliding method thereof
He et al. Wearable ego-motion tracking for blind navigation in indoor environments
Zhang et al. An indoor navigation aid for the visually impaired
Amanatiadis A multisensor indoor localization system for biped robots operating in industrial environments
Tomažič et al. Fusion of visual odometry and inertial navigation system on a smartphone
JP2003271975A (en) Method of extracting plane, extractor therefor, program therefor, recording medium therefor, and robot system mounted with plane extractor
JP2003266349A (en) Position recognition method, device thereof, program thereof, recording medium thereof, and robot device provided with position recognition device
Kachurka et al. WeCo-SLAM: Wearable cooperative SLAM system for real-time indoor localization under challenging conditions
JP2008009999A (en) Plane extraction method, and device, program, and storage medium therefor, and imaging device
WO2022238189A1 (en) Method of acquiring sensor data on a construction site, construction robot system, computer program product, and training method
Moore et al. Simultaneous local and global state estimation for robotic navigation
Yuan et al. Development of a human-friendly robot for socially aware human-robot interaction
JP2009178782A (en) Mobile object, and apparatus and method for creating environmental map
Kohlbrecher et al. Grid-based occupancy mapping and automatic gaze control for soccer playing humanoid robots
Jayawardana et al. Train a robot to climb staircase using vision-base system
Chen et al. Perception system design for low-cost commercial ground robots: Sensor configurations, calibration, localization and mapping

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20130604