JP6108818B2 - 移動装置及び移動装置の位置認識方法 - Google Patents

移動装置及び移動装置の位置認識方法 Download PDF

Info

Publication number
JP6108818B2
JP6108818B2 JP2012280327A JP2012280327A JP6108818B2 JP 6108818 B2 JP6108818 B2 JP 6108818B2 JP 2012280327 A JP2012280327 A JP 2012280327A JP 2012280327 A JP2012280327 A JP 2012280327A JP 6108818 B2 JP6108818 B2 JP 6108818B2
Authority
JP
Japan
Prior art keywords
information
filter
mobile device
node
walking robot
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.)
Active
Application number
JP2012280327A
Other languages
English (en)
Other versions
JP2013132748A (ja
Inventor
成 桓 安
成 桓 安
魯 山 郭
魯 山 郭
慶 植 盧
慶 植 盧
碩 浚 尹
碩 浚 尹
乘 龍 ▲ひょん▼
乘 龍 ▲ひょん▼
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of JP2013132748A publication Critical patent/JP2013132748A/ja
Application granted granted Critical
Publication of JP6108818B2 publication Critical patent/JP6108818B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J13/00Controls for manipulators
    • B25J13/08Controls for manipulators by means of sensing devices, e.g. viewing or touching devices
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0272Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3013Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system is an embedded system, i.e. a combination of hardware and software dedicated to perform a certain function in mobile devices, printers, automotive or aircraft systems
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/0274Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means using mapping information stored in a memory device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations

Description

本発明は、移動装置に装着された複数のセンサを通じて検出された情報を用いて、移動装置自身の位置を推定する位置認識方法に関する。
位置認識は、移動装置が自ら空間知覚能力を有する技術であって、移動装置の自律移動機能の具現や拡張現実(Augmented Reality;AR)の具現などにおける核心技術である。ここで、移動装置は、人間が操縦せずに、人間の目に該当するセンサがコンピュータのような判断機能を揃えており、自立的に移動することができる移動ロボット(ロボット掃除機、歩行ロボットなど)や、自律移動機能を有していないが、手に持って操作できる程度の小さい大きさを有しており、人間が携帯し、移動しながら操作できるモバイル機器(携帯電話のような移動通信機器など)などを含む。
ほとんどの位置認識技術は車輪を持つ移動ロボットの分野において発展してきた。このような技術は、カルマンフィルタ(Kalman Filter)または粒子フィルタ(Particle Filter)を核心アルゴリズムとして用いる単一フィルタ構造を有し、同時位置決め地図作成(Simultaneous Localization And Mapping;SLAM)という方式で具現される。予測(prediction)ステップと更新(update)ステップを反復して行うことで、移動ロボットの位置を推定する。予測ステップでは、ロボット動きモデル(Motion Model)を用いて次のステップでの位置を予測し、更新ステップでは、センサの情報を受け入れて、予測した移動ロボットの位置情報を更新する。
位置認識技術は、ロボットの本体に映像センサ(カメラ)や距離センサ(レーザーセンサ、超音波センサなど)を装着し、それぞれのセンサから獲得した情報を同時に処理するセンサ融合に関連する研究が主になされている。ロボットは、カメラから獲得した映像情報から抽出した特徴点やレーザーセンサなどを通じて検出された距離情報から獲得したコーナー、壁、格子地図などを自然標識(natural landmark)として用いて、自分と標識の位置情報を同時に推定する。
一般に、多重センサ融合を通じた位置認識の具現時に、センサの数が増加すると位置推定の正確度が向上するという特性がある。単一フィルタ構造を有した従来の位置認識技術は、センサの数が増加するとフィルタの構造及び具現過程が複雑になり、演算される情報が一つのフィルタにのみ集中してフィルタの情報処理負荷が増加する。特に、更新ステップでは、装着されたセンサの数に比例して測定情報の量が増加するため、フィルタの演算量が増加し、動作速度が遅くなるという問題がある。
また、単一フィルタ構造においては、フィルタが誤作動をしたり、誤ったセンサ情報が入力される場合にもこれを防止できる方案がないため、フィルタが外乱(disturbance)に対して脆弱になるしかない。その結果、ロボットの位置推定の結果も発散しやすくなる。一般に、一回でもフィルタの推定値が発散すると、元の機能へ復旧しにくく、映像情報を用いてロボットの位置認識を行う場合には、Kidnap Recoveryという別途の技術を具現して復旧が可能であるが、計算及び具現過程が複雑であるという問題がある。
それぞれ独立して動作する複数のローカルフィルタ(local filter)と、それぞれのローカルフィルタを通じて行われた位置認識の結果を融合する一つの融合フィルタ(fusion filter)とからなる分散化されたフィルタシステムを用いて移動装置の位置認識動作を行い、分散化されたフィルタシステムに正確な位相学的絶対位置/姿勢情報をさらに適用することにより、広い空間での移動装置(走行ロボットと歩行ロボット、携帯可能な移動機器など)の位置認識性能(位置認識の正確性及び収束性)がより改善された移動装置及び移動装置の位置認識方法を提案する。
本発明に係る移動装置は、少なくとも一つのセンサと、少なくとも一つのセンサの検出値を用いて現在の相対位置情報を生成する少なくとも一つの第1分散フィルタと、少なくとも一つのセンサの検出値を用いて現在の絶対位置情報を生成する少なくとも一つの第2分散フィルタと、第1分散フィルタの相対位置情報と第2分散フィルタの絶対位置情報とを融合して位置認識を行う融合フィルタと、を含む。
また、第2分散フィルタは、移動装置の移動空間上に予め設定されている少なくとも一つのノード検出を通じて絶対位置情報を生成する。
また、第2分散フィルタは、移動装置の位置/姿勢情報を予測する予測部と、少なくとも一つのセンサの検出値を用いて移動装置の予測された位置/姿勢情報を更新する更新部と、を含み、更新された位置/姿勢情報を融合フィルタに提供し、融合フィルタの位置/姿勢情報の更新に反映するようにする。
また、位置/姿勢情報の予測は周期的に行い、位置/姿勢情報の更新はノードが検出されるごとに行う。また、第1分散フィルタは、相対的位置情報を更新するとき、融合フィルタの融合された位置/姿勢情報を反映し、第2分散フィルタは、絶対的位置情報を更新するとき、融合された位置/姿勢情報を排除する。
また、移動装置の移動空間上に予め設定されている少なくとも一つのノードを認識し、ノード認識結果と予め設けられたローカルマップとの比較を通じてノード検出の不確実性を除去したノード検出情報を生成して第2分散フィルタに提供する前処理部をさらに含む。
また、前処理部は、ノード認識のためのノード認識部と、ノード検出の不確実性を除去するためのノードマッチング部と、を含む。また、ローカルマップを格納するための格納部をさらに含む。また、少なくとも一つのセンサは、移動装置の移動空間を撮影するためのカメラである。
本発明に係る移動装置の位置認識方法は、少なくとも一つの第1分散フィルタが少なくとも一つのセンサの検出値を用いて現在の相対位置情報を生成し、少なくとも一つの第2分散フィルタが少なくとも一つのセンサの検出値を用いて現在の絶対位置情報を生成し、融合フィルタが、第1分散フィルタの相対位置情報と第2分散フィルタの絶対位置情報とを融合して位置認識を行う。
また、第2分散フィルタは、移動装置の移動空間上に予め設定されている少なくとも一つのノード検出を通じて絶対位置情報を生成する。また、第2分散フィルタは、移動装置の位置/姿勢情報を予測する予測部と、少なくとも一つのセンサの検出値を用いて移動装置の予測された位置/姿勢情報を更新する更新部と、を含み、更新された位置/姿勢情報を融合フィルタに提供し、融合フィルタの位置/姿勢情報の更新に反映するようにする。
また、位置/姿勢情報の予測は周期的に行い、位置/姿勢情報の更新はノードが検出されるごとに行う。また、第1分散フィルタは、相対的位置情報を更新するとき、融合フィルタの融合された位置/姿勢情報を反映し、第2分散フィルタは、絶対的位置情報を更新するとき、融合された位置/姿勢情報を排除する。
また、前処理部が、移動装置の移動空間上に予め設定されている少なくとも一つのノードを認識し、ノード認識結果と予め設けられたローカルマップとの比較を通じてノード検出の不確実性を除去したノード検出情報を生成して第2分散フィルタに提供することをさらに含む。
また、前処理部は、ノード認識のためのノード認識部と、ノード検出の不確実性を除去するためのノードマッチング部と、を含む。また、ローカルマップを格納するための格納部をさらに含む。また、少なくとも一つのセンサは、移動装置の移動空間を撮影するためのカメラである。
提案された移動装置及びその位置認識方法によれば、それぞれ独立して動作する複数のローカルフィルタと、それぞれのローカルフィルタを通じて行われた位置認識の結果を融合する一つの融合フィルタとからなる分散化されたフィルタシステムを用いて移動装置の位置認識動作を行い、分散化されたフィルタシステムに正確な位相学的絶対位置情報をさらに適用することにより、広い空間での移動装置の位置認識性能(位置認識の正確性及び収束性、速度など)を改善する。
本発明の実施例に係る移動装置の一例である歩行ロボットの外観構成図である。 図1に示される歩行ロボットの主要機構及び関節構造を示した図である。 図1に示される歩行ロボットの制御系統を示したブロック図である。 図3に示される位置認識部の構成を示した図である。 図4に示される第5前処理部の構成を示した図である。 本発明の実施例に係るノード設定状態を示した図である。 図4に示される第1ローカルフィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。 図4に示される第2ローカルフィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。 図4に示される第3ローカルフィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。 図4に示される第4ローカルフィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。 図4に示される第5ローカルフィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。 図4に示される融合フィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。 本発明の実施例に係る移動装置の位置認識方法を示したフローチャートである。
以下では、添付の図面を参照して、本発明の実施例を詳細に説明する。
図1は、本発明の実施例に係る移動装置の一例である歩行ロボットの外観構成図である。図1に示されるように、本発明の実施例に係る移動装置の一例である歩行ロボット10は、人間と同様に、二つの脚16L、16Rによって直立移動する二足歩行ロボットであって、頭12、胴体13、二つの腕14L、14Rからなる上体11と、二つの脚16L、16Rからなる下体15と、を有する。頭12において人間の目の形状を有した機構部には、移動空間の周囲を撮影するためのカメラ120が装着される。
参照符号において、数字の後ろの“L”と“R”は、それぞれロボット10の左側(left)と右側(right)を示す。
本発明の実施例では、移動装置として二足歩行ロボットを例に挙げて説明したが、その他にも家庭での掃除ロボット、公共場所用サービスロボット、生産現場での搬送ロボット、作業者支援ロボットなどの多様な形態の移動ロボット、及び自律移動機能を有してはいないが、人間が携帯し、移動しながら操作できるモバイル機器(携帯電話のような移動通信機器など)に対して本発明を適用することができる。
図2は、図1に示される歩行ロボットの主要機構及び関節構造を示した図である。図2に示されるように、歩行ロボット10の頭12には、移動空間の周囲を撮影するカメラ120が設置される。
頭12は、首関節部17を介して上体11の胴体13と連結される。胴体13、二つの腕14L、14R及び二つの脚16L、16Rには、肩関節部18、肘関節部19、手首関節部20、腰関節部21、ヒップ関節部22、膝関節部23、足首関節部24などの複数の関節部が設置される。各関節部18,19,20,21,22,23,24には、自由度(degree of freedom;関節が動く方向の数)によって1個ないし3個の回転関節25を含む。例えば、ヒップ関節部22は、ヨー方向(yaw、Z軸まわりの回転)の回転関節25と、ピッチ方向(pitch、Y軸まわりの回転)の回転関節25と、ロール方向(roll、X軸まわりの回転)の回転関節25とを含んで3自由度を有する。各関節部18,19,20,21,22,23,24は、リンク(L;図2で直線で示される構造)により連結される。
上体11の下側に設置される腰関節部21には、上体11を支持するための骨盤26が連結される。骨盤26は、ペルビスリンク27を介してヒップ関節部22に連結される。ペルビスリンク27には、歩行ロボット10の姿勢情報(角度情報)を検出するための慣性センサ130(Inertial Measurement Unit;IMU)が設置される。慣性センサ130は、重力方向と慣性系に対してペルビスリンク27の相対的角度を検出して、ロール方向、ピッチ方向、ヨー方向の姿勢情報(角度情報)を発生させる。この慣性センサ130は、ペルビスリンク27だけでなく胴体13、頭12などに設置することも可能である。
図2に示されていないが、歩行ロボット10の各関節部18,19,20,21,22,23,24には、動力(電気、油圧)により各回転関節25を駆動するモータなどのアクチュエーター(図3の“駆動部”に該当)と、各アクチュエーターの回転角度、すなわち、各回転関節25の回転角度を検出するエンコーダ(図3の110)とが設置される。歩行ロボット10の動作全般を制御する制御部(図3の200)は、このようなアクチュエーターを適切に制御することによって歩行ロボット10の多様な動作を具現できる。
図3は、図1に示される歩行ロボットの制御系統を示したブロック図である。図3に示されるように、本発明の実施例に係る移動装置の一例である歩行ロボット10の制御系統は、センサモジュール100、制御部200、格納部400及び駆動部450を含む。
センサモジュール100は、歩行ロボット10に関する情報及び移動空間に関する情報を検出するための複数のセンサ110,120,130を含んでなる。センサモジュール100は、歩行ロボット10の歩行に関連する回転関節の回転角度情報を獲得するためのエンコーダ110(encoder)、歩行ロボット10が歩行している移動空間の周辺を撮影するためのカメラ120、歩行ロボット10の姿勢情報(角度情報)を検出するための慣性センサ130などの多様なセンサを含むことができる。
センサモジュール100において、エンコーダ110は、ヒップ関節部22、膝関節部23及び足首関節部24に設けられた各回転関節25を回転駆動するために設置されたアクチュエーター(駆動部)の回転角度を検出する。
センサモジュール100において、カメラ120は、被写体から反射される光を検出し、これをデジタル信号に変換して移動空間の周辺の映像情報を獲得する。カメラ120としては、CCD(charge−coupled device)カメラ、CMOS(complementary metal oxide)カメラ、TOF(Time of Flight)カメラなどを用いることができ、その他にも、歩行ロボット10が歩行する経路上に位置する物体に対する映像情報を獲得できる装置であれば、いかなる装置でも使用できることは勿論である。
センサモジュール100において、慣性センサ130は、歩行ロボット10の加速度、速度、方向(角度)などの多様な航法関連情報を測定するためのもので、ペルビスリンク27のロール方向、ピッチ方向、ヨー方向の傾き及び回転角度を測定する。慣性センサ130は、歩行ロボット10の角度を測定する傾きセンサ、及び角速度を測定する角速度センサを含む。ここで、傾きセンサとしては加速度計が使用され、角速度センサとしてはレートジャイロスコープ(rate−gyroscope)が使用される。
制御部200は、歩行ロボット10の動作全般を制御し、第1〜5前処理部210〜250及び位置認識部300を含む。
第1〜5前処理部210〜250は、エンコーダ110、カメラ120及び慣性センサ130から伝達される検出情報(回転角度情報、映像情報、慣性検出情報)に対して演算処理(preprocessing)を行って、歩行ロボット10の位置認識のために必要な測定情報(measured data)を算出し、算出された測定情報を位置認識部300に提供する。
位置認識部300は、第1〜5前処理部210〜250から提供された各種情報を用いて、歩行ロボット10自身の位置及び姿勢を推定する。位置認識部300の構成については、後述する図4を参照して詳細に説明する。
格納部400は、歩行ロボット10が位置認識を行うために必要とする事前情報、及び位置認識の結果を格納するためのもので、格納部400には、リンク(関節部と関節部との間を連結する機構構造)の機構情報(長さ情報)、歩行ロボット10の歩行過程で複数のアルゴリズム(複数のフィルタ)を用いて算出される歩行ロボット10の位置認識結果(標識の位置情報、歩行ロボットの位置/姿勢情報)、及び複数のアルゴリズムのうち、特にSLAMアルゴリズムを用いて作成される移動空間(作業空間)に対するローカルマップなどが格納される。
本発明の実施例では、位置認識を行うために必要とする事前情報及び位置認識の結果を格納するための格納部400が別途に設けられる構成を例に挙げて説明したが、格納部400の構成を採用せずに、制御部200内の内部メモリに位置認識のための事前情報などを格納するように構成してもよい。
駆動部450は、各関節部18,19,20,21,22,23,24をなす各回転関節25に電気又は油圧による動力を伝達するためのモータなどのアクチュエーターであって、制御部200から伝達される制御信号に応じて各関節部18,19,20,21,22,23,24の各回転関節25を回転駆動する。
以下では、図4を参照して、図3に示される位置認識部300の構成を詳細に説明する。図4は、図3に示される位置認識部の構成を示した図である。
図4に示されるように、位置認識部300は、複数の第1〜5フィルタ310〜350からなる分散化されたフィルタシステム(distributed filter system)の構造を有する。図4において第1〜4ローカルフィルタ310,320,330,340は、“現在の相対位置情報を生成する少なくとも一つの第1分散フィルタ”に区分でき、第5ローカルフィルタ350は、“現在の絶対位置情報を生成する少なくとも一つの第2分散フィルタ”に区分することができ、融合フィルタ360は、このような第1分散フィルタ(すなわち、第1〜4ローカルフィルタ310,320,330,340)の相対位置情報と第2分散フィルタ(すなわち、第5ローカルフィルタ350)の絶対位置情報とを融合して、持続的で且つ効果的な位置認識を行う。
本発明の実施例において、位置認識部300は、第1〜5ローカルフィルタ310〜350及び一つの融合フィルタ360を含んでなる。第1〜5ローカルフィルタ310〜350及び一つの融合フィルタ360は独立して動作するので、歩行ロボット10の位置認識を行うと、第1〜5ローカルフィルタ310〜350及び一つの融合フィルタ360のそれぞれから位置認識の結果を獲得できる。第1〜5ローカルフィルタ310〜350及び一つの融合フィルタ360のうち、第5ローカルフィルタ350を除外した残りの第1〜4ローカルフィルタ310,320,330,340及び融合フィルタ360は、それぞれ予測部312,322,332,342,362、更新部314,324,334,344,364及び同化部316,326,336,346,366を有し、歩行ロボット10の移動が停止するまで反復して予測(prediction)、更新(update)、同化(assimilation)を行う。第5ローカルフィルタ350は、予測部352と更新部354で構成され、第5ローカルフィルタ350は、同化部を有さない。
第1〜5ローカルフィルタ310,320,330,340,350及び融合フィルタ360の各予測部312,322,332,342,352,362は、以前の更新ステップで推定(認識)された歩行ロボット10の位置/姿勢情報から歩行ロボット10の新しい位置/姿勢情報を予測する。
第1〜5ローカルフィルタ310,320,330,340,350の各更新部314,324,334,344,354は、センサモジュール100の検出情報を用いて予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する。また、融合フィルタ360の更新部364は、第1〜5ローカルフィルタ310,320,330,340,350の各更新部314324,334,344,354から伝達される歩行ロボット10の位置認識結果(更新された位置/姿勢情報)を融合し、融合された情報を用いて予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する。
第1〜4ローカルフィルタ310,320,330,340の各同化部316,326,336,346は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に、融合フィルタ360の更新部364から伝達された歩行ロボット10の位置認識結果(更新された位置/姿勢情報)を反映する。ただし、第5ローカルフィルタ350は同化部を有さないので、同化過程を行わない。位相学的ノード情報を扱う第5ローカルフィルタ350において、予測過程は周期的に行われるが、更新過程はノードが検出された場合にのみ行われる。絶対的位置情報を用いる第5ローカルフィルタ350の場合、相対的位置情報を用いる残りの第1〜4ローカルフィルタ310,320,330,340よりも位置認識の正確度及び情報の質がさらに優れるので、他の位置/姿勢認識情報との同化過程は、むしろ第5ローカルフィルタ350の絶対位置/姿勢情報の一貫性(consistency)を低下させる要因になりうるためである。融合フィルタ360の同化部366は、予測ステップで予測された歩行ロボット10の位置/姿勢情報に、第1〜4ローカルフィルタ310,320,330,340の各更新部314,324,334,344から伝達される歩行ロボット10の更新された相対位置/姿勢情報、及び第5ローカルフィルタ350の更新部354から伝達される歩行ロボット10の更新された絶対位置/姿勢情報を融合する。
すなわち、第1〜5ローカルフィルタ310,320,330,340,350は、各センサ110,120,130の検出情報を用いて更新された歩行ロボット10の位置/姿勢情報を融合フィルタ360に伝達し、融合フィルタ360は、伝達された歩行ロボット10の位置/姿勢情報を融合/更新して第1〜4ローカルフィルタ310,320,330,340にフィードバックする過程を行う。第5ローカルフィルタ350には、融合フィルタ360の更新された位置/姿勢情報がフィードバックされない。
以下では、第5ローカルフィルタ350を除外した残りの第1〜4ローカルフィルタ310,320,330,340の共通した動作過程について説明する。本発明の実施例では、第1〜4ローカルフィルタ310,320,330,340がカルマンフィルタ(Kalman filterからなる場合を例に挙げて説明する。
第1〜4ローカルフィルタ310,320,330,340は、融合フィルタ360とは構造的に独立した形態からなっており、使用するセンサ110,120,130の種類及びセンサ110,120,130を通じて検出された情報の処理方式が互いに異なってもよい。第1〜4ローカルフィルタ310,320,330,340は、歩行ロボット10の位置/姿勢情報を推定するための状態変数xL(k|k)として、ワールド座標系(world coordinate)に対する3次元位置r、3次元姿勢(quaternion)q、3次元線速度v、ボディー座標系(Body coordinate)に対する3次元角速度wを有する。
共通に第1〜4ローカルフィルタ310,320,330,340の予測ステップでは、推定状態変数に基づいた等速度運動モデル(constant velocity model)を用いて更新ステップでセンサ情報(より詳しくは測定情報)と融合(fusion)する前に、現在の状態変数を下の数式(1)のようにモデリングする。
Figure 0006108818
ここで、nは速度のノイズ成分で、nは角速度のノイズ成分である。
第1〜4ローカルフィルタ310,320,330,340の更新ステップでは、各センサ110,120,130の検出情報に対する前処理を通じて獲得した測定情報z(k)、及び予測ステップで求めた状態変数x(k|k−1)を用いて算出した予測観測値h(k)を用いてカルマンフィルタ更新(Kalman Filter Update)を行う。予測された歩行ロボット10の位置/姿勢情報に対する更新が行われた後には、下の数式(2)及び数式(3)のように情報フィルタ(information filter)に対する入力形態で融合フィルタ360に必要な情報を伝達する。
Figure 0006108818
ここで、H(k)は、予測測定情報h(k)のヤコビアン行列(Jacobian matrix)であり、R(k)は、測定情報z(k)の不確実性を表現する共分散行列(covariance matrix)を意味する。
センサモジュール100から検出情報が入力される毎に、基本的にこの二つの過程(予測と更新)が反復して行われ、融合フィルタ360から位置認識結果(更新された歩行ロボットの相対位置/姿勢情報)の入力がある場合、同化ステップでは、第1〜4ローカルフィルタ310,320,330,340の更新ステップで更新された歩行ロボット10の相対位置/姿勢情報に、融合フィルタ360の位置認識結果(更新された歩行ロボットの位置/姿勢情報)を、更新ステップと類似したカルマンフィルタ更新(Kalman Filter Update)を使用して反映する。これは、独立して駆動される第1〜4ローカルフィルタ310,320,330,340に異なるセンサの検出情報が反映されることにより、それぞれのセンサが他のセンサの検出情報を共有することを意味する。これによって、それぞれのセンサは、他のセンサの検出情報を通じて自分の検出情報を補完できるので、全体フィルタシステム300の位置推定の正確度を大きく向上させることができる。
図5は、図4に示した第5前処理部250の構成を示す図である。第5前処理部250は、カメラ120及び慣性センサ130から伝達される検出情報(回転角度情報、映像情報、慣性検出情報)に対して演算処理(preprocessing)を行って、歩行ロボット10の移動空間上に設定されているノード(Node)(図6の説明参照)を検出する。ノードA〜Eの検出のために、第5前処理部250はノード認識部252とノードマッチング部254を含む。ノード認識部252は、カメラ120から伝達される検出情報(映像情報)を分析して歩行ロボット10の移動空間上に予め設定されているノードを認識する。ノードマッチング部254は、ノード認識結果に含まれ得る不確実性を除去してノード認識率を高めるためのものである。
図6を参照して、本発明の実施例に係るノード認識方法をより具体的に説明すると、次の通りである。図6は、本発明の実施例に係るノード設定状態を示した図である。ノード認識は、現在の映像から抽出した特徴点情報を用いて、格納部400に格納されているローカルマップ上の特徴点情報と比較することを意味する。このとき、対応する特徴点の数が多いノードを決定して、歩行ロボット10の現在の位置に隣接したノードを判断する。
本発明の実施例では、融合フィルタ360に絶対位置認識情報を提供するために、図6のように歩行ロボット10の移動空間上の一定地点をノードA〜Eに設定する。ノードA〜Eは、廊下の交差点やコーナーのような構造的特徴を有する地点や、多様な視覚情報を含む視覚的特徴を有する地点、または歩行ロボット10の移動時に正確な位置情報を必要とする地点などに指定できる。与えられた建物の設計図あるいは平面図からワールド原点座標系に対するノード座標系の位置を定めることができ、これから絶対位置情報が含まれたノードで構成される位相学的地図を構築できる。決定されたそれぞれのノードA〜Eにおいて、ノード認識及びマッチングのために、視覚センサベースのSLAMアルゴリズムを用いて映像情報から抽出した特徴点の3次元位置と、歩行ロボット10の3次元位置/姿勢情報とを同時に推定する。歩行ロボット10の移動空間上のどの一点をノード原点O1とし、このノード原点O1を中心にカメラ120を移動させて、カメラ120を通じて確保される映像情報から位置認識に必要な特徴点を抽出する。抽出された特徴点情報は、第5ローカルフィルタ350の状態変数として登録され、確率的なフィルタ技法を用いて持続的に特徴点の位置及びカメラの位置/姿勢情報を推定する。このような視覚センサベースのSLAMアルゴリズムの結果物として得たノードA〜Eの周辺の特徴点で構成されたローカルマップは格納部400に格納される。仮に3次元点群データ(3D Point Cloud Data)を得ることができるカメラ(例えば、ステレオカメラ又はTOFカメラなど)を使用する場合には、特徴点及び点群データで構成される3次元地図をノード情報として追加的に活用できる。
ノード検出方法は、ノード認識(Node Recognition)とノードマッチング(Node Matching)の二つの過程からなる。ノード検出方法の1番目の過程であるノード認識は、カメラ120を通じて確保した映像から抽出した特徴点情報を、格納部400に格納されている特徴点情報と比較することである。この比較を通じて、対応する特徴点の数が多いノードを認識できる。
ノード検出方法の2番目の過程であるノードマッチングは、認識したノード座標系内でロボットの姿勢(位置及び方向)を決定する過程である。ノードを含むローカルマップ内の特徴点は、ノード座標系内で3次元位置と対応する不確実性情報(Covariance)を有している。ノードマッチング過程で、それぞれのマッチングされる特徴点間の関係を用いると、ノード座標系内での歩行ロボット10の3次元姿勢と対応する不確実性情報を計算することができ、そのために、下の数式(4)が使用される。
Figure 0006108818
数式(4)は、ノード検出結果として得たノードのローカル座標系に対する歩行ロボット10の3次元姿勢O及び不確実性情報Oを示したもので、O1rvは、歩行ロボット10の3次元位置(x,y,z)で、Oは、歩行ロボットの3次元姿勢(角度)情報(quaternion)である。
このような過程を通じて求めたノード座標系に対する歩行ロボット10の位置は、下の数式(5)を用いて、位相学的地図情報からワールド原点座標系に対する位置に変換可能であり、位相学的ノードの観測情報として融合フィルタ360に伝達される。
Figure 0006108818
数式(5)は、数式(4)の値を全体移動空間の原点座標系に対して3次元姿勢Gxに変換したものであって、Grは、原点座標系に対するロボットの3次元位置であり、Gqは、3次元角度情報であり、R()は、3次元姿勢(角度)情報(quaternion)を回転マトリックス(Rotational Matrix)に変換させる関数であり、x演算子は、角度変換演算(quaternion product)を意味し、Fは、ヤコビアン(Jacobian)変換を示す。
第5ローカルフィルタ350で取り扱われる位相学的ノード情報は空間上に分布しているため、更新のためのノード認識情報の頻度数が少なく、一定周期ごとのサンプリングも不可能である。したがって、第1〜4ローカルフィルタ310,320,330,340とは異なり、推定をするための状態変数X(k|k)としてワールド原点座標系に対する3次元位置r及び3次元姿勢(quaternion)qのみを有する。
推定状態変数からは速度成分を求めることができないため、推定状態変数に基づいた絶対位置モデル(Constant Position Model)を使用して、更新過程でノード情報と融合(Fusion)する前に、現在の状態変数を数式(6)のようにモデリングする。この過程は、第5ローカルフィルタ350の予測ステップで、ノード情報の更新と関係なく、一定時間ごとに周期的に行われる。
Figure 0006108818
数式(6)は、絶対位置モデル(Constant Position Model)を用いて位置/姿勢を推定する過程を示した数式であって、X(k|k−1)は、位相学的情報(Topological Information)を処理する第5ローカルフィルタの状態変数(state)を示し、3次元位置rと3次元姿勢(quaternion)qで構成される。すなわち、以前のステップ(k−1)での状態変数をそのまま維持しつつ、ノイズ成分のみを反映する。数式(6)において、nは、速度のノイズ成分で、nθは、角速度のノイズ成分である。
第5ローカルフィルタの更新過程では、ノード検出を通じて得た測定情報z(k)(下の数式(7)参照)、及び予測過程で求めた状態変数X(k|k−1)を用いて得た予測観測情報h(k)(下の数式(8)参照)を用いてカルマンフィルタ更新(Kalman Filter Update)を行う。
Figure 0006108818
数式(7)は、更新を行うために、数式(5)で求めた情報をz(k)、R(k)に代入したものである。
Figure 0006108818
数式(8)は、予測された状態変数情報(r(k|k−1)、q(k|k−1))、及び基準として定めた以前のステップで推定された状態変数値(r_ref(k−1|k−1)、q_ref(k−1|k−1))を用いて予測観測値h(k)を求めることを示したものである。
位相学的ノード情報を扱うフィルタモジュールは、ワールド原点座標系に対する絶対位置及び方向値を用いて更新を行う。しかし、3次元姿勢(quaternion)qの非線形性のため直接的なカルマンフィルタ更新の適用が難しいので、以前のステップで推定された状態変数値を基準として定め、その値に対する変化量を下の数式(9)及び数式(10)のように求めて、ロドリゲスの回転公式(Rodrigues’ rotation formula)の形態に変換した後、更新過程を行う。
Figure 0006108818
数式(9)と数式(10)は、h(k)の構成要素であるΔr、Δqを計算するためのもので、R−1(qref)は、3次元位置/姿勢情報(quaternion)を回転マトリックス(Rotational Matrix)に変換する関数の逆関数である。
更新が完了すると、第1〜4ローカルフィルタ310,320,330,340と同様に、前述した数式(2)及び数式(3)のように情報フィルタ(information filter)に対する入力形態で融合フィルタ360に必要な情報を伝達する。
以下では、図7乃至図11を参照して、第1〜5ローカルフィルタ310,320,330,340,350を用いて歩行ロボット10の位置を認識する過程を説明する。
<第1ローカルフィルタ310の動作>
図7は、図4に示される第1ローカルフィルタ310を用いた歩行ロボット10の位置認識方法を示したフローチャートである。第1ローカルフィルタ310は、歩行ロボット10の位置認識を行うためのセンサとしてエンコーダ110を使用し、歩行ロボット10のオドメトリ(odometry)情報を用いて予測された歩行ロボット10の位置/姿勢情報を更新する。説明の便宜上、第1ローカルフィルタ310をオドメトリフィルタと定義する。
本発明の実施例の動作説明のための初期条件として、格納部400には、歩行ロボット10が位置認識を行うための事前情報として歩行ロボット10のリンク(関節部と関節部との間を連結する機構構造)の機構情報(長さ情報)が予め格納されていることを前提とする。また、時間的前後関係と関連して、以下で記述する以前のステップはk−1と、以前のステップの次のステップ(現在のステップと表示されてもよい)は、kと表示する。
図7に示されるように、第1ローカルフィルタ310の予測部312は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から歩行ロボット10の次のステップkの位置/姿勢情報を予測する(710)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
次に、第1前処理部210は、エンコーダ110から、歩行ロボット10の歩行に関連する関節部をなす回転関節の回転角度情報を獲得する(720)。
その後、第1前処理部210は、格納部400に予め格納されている各リンク(link)の機構情報、及びエンコーダ110から入力された各回転関節の回転角度情報を用いてオドメトリ情報を算出する(730)。オドメトリ情報は、移動空間上の原点座標系(歩行ロボットが歩行動作を始めた地点を原点とする座標系)に対する歩行ロボット10の位置(座標)情報及び姿勢(角度)情報を意味し、推測航法(dead reckoning)を用いて累積する方式で算出する。
次に、第1前処理部210は、ステップkとステップk−1のオドメトリ情報を用いて、歩行ロボット10の相対的な姿勢変化情報を算出する(740)。算出された歩行ロボット10の相対的な姿勢変化情報が、前述した測定情報z(k)となる。
オドメトリフィルタである第1ローカルフィルタ310において予測観測情報h(k)は、下の数式(11)のように示すことができる。
Figure 0006108818
したがって、更新部314は、算出された歩行ロボット10の相対的な姿勢変化情報を前述した数式(2)のz(k)に代入し、数式(11)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(750)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部314は、更新された歩行ロボット10の位置/姿勢情報を同化部316に伝送する。
その後、同化部316は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(760)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(760での‘はい’)、同化部316は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部312に伝送する(770)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(760での‘いいえ’)、同化ステップは行わずに、動作780に進む。
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(780)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
歩行ロボット10の移動が停止されないと(780での‘いいえ’)、制御部200は、動作710に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(780での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
<第2ローカルフィルタ320の動作>
図8は、図4に示される第2ローカルフィルタ320を用いた歩行ロボット10の位置認識方法を示したフローチャートである。
第2ローカルフィルタ320は、歩行ロボット10の位置認識を行うためのセンサとしてカメラ120を使用し、歩行ロボット10の相対的な姿勢変化情報を用いて予測された歩行ロボット10の位置/姿勢情報を更新する。説明の便宜上、第2ローカルフィルタ320を、視覚センサベースのオドメトリフィルタと定義する。
図8に示されるように、第2ローカルフィルタ320内の予測部322は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測する(810)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
次に、第2前処理部220は、カメラ120から移動空間周辺の映像情報を獲得する(820)。
その後、第2前処理部220は、以前のステップk−1で獲得した映像情報及び現在のステップkで獲得した映像情報のそれぞれから視覚特徴点(feature)を抽出し、抽出された特徴点をマッチング(matching)する(830)。
次に、第2前処理部220は、特徴点の抽出及びマッチングを通じて獲得した相関関係からオドメトリフィルタ310と同様に歩行ロボット10の相対的な姿勢変化情報を算出する(840)。算出された歩行ロボット10の相対的な姿勢変化情報が、前述した測定情報z(k)となる。
視覚センサベースのフィルタである第2ローカルフィルタ320において予測観測情報h(k)は、下の数式(12)のように示すことができる。
Figure 0006108818
したがって、更新部324は、算出された歩行ロボット10の相対的な姿勢変化情報を前述した数式(2)のz(k)に代入し、数式(12)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(850)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部324は、更新された歩行ロボット10の位置/姿勢情報を同化部326に伝送する。
その後、同化部326は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(860)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(860での‘はい’)、同化部326は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部322に伝送する(870)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(860での‘いいえ’)、同化ステップは行わずに、動作880に進む。
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(880)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
歩行ロボット10の移動が停止されないと(880での‘いいえ’)、制御部200は、動作810に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(880での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
<第3ローカルフィルタ330の動作>
図9は、図4に示される第3ローカルフィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。
第3ローカルフィルタ330は、歩行ロボット10の位置認識を行うためのセンサとしてカメラ120を使用し、映像情報から抽出した特徴点の3次元位置情報と歩行ロボット10の3次元位置/姿勢情報とを同時に推定する。したがって、他のローカルフィルタ310,320,340,350とは異なり、特徴点の位置に対する状態変数yi(k|k)をさらに有することになる。
説明の便宜上、第3ローカルフィルタ330を視覚センサベースのSLAM(Simultaneous Localization And Mapping)フィルタと定義する。視覚センサベースのSLAMフィルタは、ワールド座標系で歩行ロボット10の位置/姿勢情報を推定できるという長所があるが、特徴点の位置情報を状態変数として維持しているため、移動距離が増加するにつれて計算時間が増加するという短所も存在する。
図9に示されるように、第3ローカルフィルタ330内の予測部332は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測し、以前の更新ステップk−1で推定(認識)された特徴点の位置情報から歩行ロボット10の次のステップkの特徴点の位置情報を予測する(910)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
次に、第3前処理部230は、カメラ120から移動空間周辺の映像情報を獲得する(920)。その後、第3前処理部230は、格納部400に格納されている既存の標識と現在獲得された映像情報から抽出された特徴点との間の同一性を判断する(930)。すなわち、第3前処理部230は、特徴点の追跡(tracking)及びマッチング(matching)過程を通じて現在獲得された映像情報から抽出された特徴点が既存に標識として使用されていたのか、または新しい特徴点として登録しなければならないのかを判断する。
次に、第3前処理部230は、既存に標識として登録された特徴点の位置情報と、現在獲得された映像情報から抽出されて既存の標識とマッチングされた特徴点の位置情報を算出する(940)。算出された既存の標識とマッチングされた特徴点の位置情報が、前述した測定情報z(k)となる。
視覚センサベースのSLAMフィルタである第3ローカルフィルタ330において予測観測情報h(k)は、下の数式(13)のように示すことができる。
Figure 0006108818
したがって、更新部334は、算出された既存の標識とマッチングされた特徴点の位置情報を前述した数式(2)のz(k)に代入し、数式(13)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報及び特徴点の位置情報を更新する(950)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部334は、更新された歩行ロボット10の位置/姿勢情報を同化部336に伝送する。
その後、同化部336は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(960)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(960での‘はい’)、同化部336は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部332に伝送する(970)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(960での‘いいえ’)、同化ステップは行わずに、動作980に進む。
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(980)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
歩行ロボット10の移動が停止されないと(980での‘いいえ’)、制御部200は、動作910に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(980での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
<第4ローカルフィルタ340の動作>
図10は、図4に示される第4ローカルフィルタ340を用いた歩行ロボット10の位置認識方法を示したフローチャートである。
第4ローカルフィルタ340は、歩行ロボット10の位置認識を行うためのセンサとして慣性センサ130を使用し、3次元加速度情報及び3次元角速度情報を用いて予測された歩行ロボット10の位置/姿勢情報を更新する。説明の便宜上、第4ローカルフィルタ340をIMU(Inertial Measurement Unit)フィルタと定義する。
図10に示されるように、第4ローカルフィルタ340の予測部342は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測する(1010)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
次に、第4前処理部240は、慣性センサ130から慣性測定情報を獲得する(1020)。その後、第4前処理部240は、慣性センサ130を通じて検出された加速度情報及び角速度情報から3次元加速度情報及び3次元角速度情報を算出する(1030)。算出された3次元加速度情報及び3次元角速度情報が、前述した測定情報z(k)となる。
IMUフィルタ340において予測観測情報h(k)は、下の数式(14)のように示すことができる。
Figure 0006108818
したがって、更新部344は、算出された3次元加速度情報及び3次元角速度情報を前述した数式(2)のz(k)に代入し、数式(14)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(1040)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部344は、更新された歩行ロボット10の位置/姿勢情報を同化部346に伝送する。
次に、同化部346は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(1050)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(1050での‘はい’)、同化部346は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部342に伝送する(1060)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(1050での‘いいえ’)、同化ステップは行わずに、動作1070に進む。
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(1070)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
歩行ロボット10の移動が停止されないと(1070での‘いいえ’)、制御部200は、動作1010に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(1070での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
<第5ローカルフィルタ350の動作>
図11は、図4に示される第5ローカルフィルタ350を用いた歩行ロボット10の位置認識方法を示したフローチャートである。
第5ローカルフィルタ350は、歩行ロボット10の位置認識を行うためのセンサとしてカメラ120を使用し、映像情報から抽出した特徴点の3次元位置情報を通じたノード認識と、歩行ロボット10の3次元位置/姿勢情報とを同時に推定する。したがって、他のローカルフィルタ310,320,330,340とは異なり、推定のための状態変数xL(k|k)としてワールド原点座標系に対する3次元位置r及び3次元姿勢(quaternion)qのみを有する。
図11に示されるように、第5ローカルフィルタ350の予測部352は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に新しいノード認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測し、以前の更新ステップk−1で推定(認識)されたノードの位置情報から歩行ロボット10の次のステップkのノードの位置情報を予測する(1110)。この過程は、位置認識アルゴリズムの予測(prediction)過程に該当する。
次に、第5前処理部250は、カメラ120から移動空間周辺の映像情報を獲得する(1120)。
その後、第5前処理部250は、格納部400に格納されているローカルマップ情報と、現在獲得された映像情報から抽出された特徴点との間の同一性の判断を通じてノードを検出する(1130)。すなわち、第5前処理部250は、特徴点の追跡(tracking)及びマッチング(matching)過程を通じて現在獲得された映像情報から抽出された特徴点に対応するノードを検出する。
次に、第5前処理部250は、検出されたノードの位置を基準としてローカルマップ上での歩行ロボット10の絶対位置/姿勢情報z(k)(数式(7)参照)を算出する(1140)。
ノード検出を通じて算出された絶対位置/姿勢情報z(k)及び予測観測情報h(k)(数式(8)参照)を用いてカルマンフィルタ更新(Kalman Filter Update)を行う(1150)。すなわち、第5ローカルフィルタ350の更新部354は、算出された既存のノード位置情報を前述した数式(7)のz(k)に代入し、数式(6)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報及び特徴点の位置情報を更新する。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。
第5ローカルフィルタ350の更新部354は、更新された歩行ロボット10の絶対位置/姿勢情報を融合フィルタ360の同化部366に提供する(1160)。第5ローカルフィルタ350から絶対位置/姿勢情報の提供を受けた融合フィルタ360の同化部366は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に第5ローカルフィルタ350の絶対位置/姿勢情報を反映して融合フィルタ360の予測部362に伝送することにより、融合フィルタ360での位置認識アルゴリズムの同化(assimilation)過程が行われる。
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(1170)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
歩行ロボット10の移動が停止されないと(1170の‘いいえ’)、制御部200は、動作1110に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(1170での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
以下では、再び図4を参照して融合フィルタ360の動作過程について説明する。
融合フィルタ360の基本的な動作原理は、第1〜4ローカルフィルタ310,320,330,340の動作原理と類似しているが、融合フィルタ360は、第1〜4ローカルフィルタ310,320,330,340の動作フィルタとして使用されるカルマンフィルタ(Kalman filter)とデュアル(dual)タイプである情報フィルタ(information filter)を動作フィルタとして使用する。情報フィルタは、歩行ロボット10の位置及び姿勢を推定するために、状態変数(state)として、下の数式(15)及び数式(16)に示したように、情報状態ベクトルyG(k|k)と情報行列YG(k|k)を有する。
Figure 0006108818
融合フィルタ360の動作フィルタとして情報フィルタを使用する理由は、融合フィルタ360の同化ステップで第1〜5ローカルフィルタ310,320,330,340,350から伝送される歩行ロボット10の位置認識結果(更新された位置/姿勢情報)を単純に下の数式(17)及び数式(18)のように足し算の形態で融合できるためである。
Figure 0006108818
同化ステップで同化された歩行ロボット10の位置/姿勢情報を用いて更新された融合フィルタ360の位置/姿勢認識結果は、再び各第1〜4ローカルフィルタ310,320,330,340に伝達され、それによって、分散化されたフィルタシステム300全体の位置認識推定値の一貫性を維持することになる。
このような分散化されたフィルタシステム300の構造は、第1〜5ローカルフィルタ310,320,330,340,350に問題が生じる場合、融合フィルタ360に伝達される情報を遮断することができ、第1〜5ローカルフィルタ310,320,330,340,350の問題のみ解決した後、再び位置認識動作を続けて行うことができるので、全体位置認識システムの強靭性を向上させることができる。
<融合フィルタ360の動作>
図12は、図4に示される融合フィルタ360を用いた歩行ロボットの位置認識方法を示したフローチャートである。図12に示されるように、融合フィルタ360の予測部362は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報から歩行ロボット10の次のステップkの位置/姿勢情報を予測する(1210)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
次に、同化部366は、第1〜5ローカルフィルタ310,320,330,340,350から歩行ロボット10の位置認識結果(更新された相対位置/姿勢情報及び絶対位置/姿勢情報)を獲得する(1220)。
その後、同化部366は、第1〜5ローカルフィルタ310,320,330,340,350の位置認識結果を統合する(1230)。このとき、第5ローカルフィルタ350を通じて得た絶対位置/姿勢情報が他の第1〜4ローカルフィルタ310,320,330,340を通じて得た相対位置/姿勢情報に反映されることにより、第1〜4ローカルフィルタ310,320,330,340の相対位置/姿勢情報に含まれ得る誤差が改善されることができる。これによって、本発明の実施例に係る歩行ロボット10は持続的にさらに強靭な位置認識を行うことができる。
次に、更新部364は、統合された位置認識結果を用いて予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(1240)。この過程は、位置認識アルゴリズムの更新ステップに該当する。更新部364は、更新された歩行ロボット10の位置/姿勢情報を第1〜4ローカルフィルタ310,320,330,340の同化部316,326,336,346に伝送する(1250)。第5ローカルフィルタ350は、融合フィルタ360から情報のフィードバックを受けない。
その後、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(1260)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
歩行ロボット10の移動が停止されないと(1260の‘いいえ’)、制御部200は、動作1210に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(1260の‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
上記では、図1乃至図12を参照して、多様な移動装置のうち歩行ロボット10を例に挙げて、分散化されたフィルタシステムを用いて歩行ロボットの位置認識動作を行う場合を説明したが、歩行ロボットの他にも、多様な形態の移動ロボット、及び自律移動機能を有してはいないが人間が携帯し、移動しながら操作できる移動装置(携帯電話やタブレットなど)の場合にも、本発明で提示している分散化されたフィルタシステムを用いて位置認識動作を行うことが可能である。
また、上記では、移動装置の位置認識を行うためのセンサとして、エンコーダ、カメラ、慣性センサを利用(総3個のセンサを利用)する場合を例に挙げて説明したが、その他にも、距離センサ、コンパスセンサ、衛星航法装置(Global Positioning System;GPS)など、移動装置の位置認識を行うのに利用され得るセンサ(または装置)であれば、いかなるセンサでも使用可能であることは勿論である。
図13は、本発明の実施例に係る移動装置の位置認識方法を示したフローチャートである。以下では、図13を参照して本発明の実施例に係る移動装置の位置認識方法を説明する。
まず、各ローカルフィルタで移動装置の位置認識動作を行う(1310)。その後、各ローカルフィルタは、位置認識結果を融合フィルタに伝送する(1320)。次に、融合フィルタは、各ローカルフィルタから伝送された位置認識結果を融合する(1330)。
その後、融合フィルタは、融合された位置認識結果を用いて移動装置の位置認識を行う(1340)。次に、融合フィルタは、位置認識結果を各ローカルフィルタに伝送する(1350)。その後、移動装置の移動が停止されたか否かを判断する(1360)。移動装置の移動が停止されないと(1360での‘いいえ’)、動作1310に戻り、移動装置の位置認識動作を続けて行う。
一方、移動装置の移動が停止された場合(1360での‘はい’)、移動装置の位置認識過程を終了する。
10 歩行ロボット
100 センサモジュール
110 エンコーダ
120 カメラ
130 慣性センサ
200 制御部
210〜250 第1〜5前処理部
300 位置認識部
310〜340 第1〜4ローカルフィルタ(第1分散フィルタ)
350 第5ローカルフィルタ(第2分散フィルタ)
360 融合フィルタ
400 格納部
450 駆動部

Claims (18)

  1. 少なくとも一つのセンサと、
    前記少なくとも一つのセンサの検出値を用いて移動装置の現在の相対位置情報を生成する少なくとも一つの第1分散フィルタと、
    前記少なくとも一つのセンサの検出値を用いて前記移動装置の現在の絶対位置情報を生成する少なくとも一つの第2分散フィルタと、
    前記第1分散フィルタの前記相対位置情報と前記第2分散フィルタの前記絶対位置情報とを融合して位置認識を行う融合フィルタと、を含み、
    前記融合フィルタは、更新された位置/姿勢情報を前記少なくとも一つの第1分散フィルタに伝送し、
    前記少なくとも一つの第1分散フィルタは、前記移動装置の現在の相対位置情報を生成するとき前記融合フィルタからの更新された位置/姿勢情報を同化させる、
    移動装置。
  2. 第2分散フィルタは、前記移動装置の移動空間上に予め設定されている少なくとも一つのノード検出を通じて前記絶対位置情報を生成する、請求項1に記載の移動装置。
  3. 前記第2分散フィルタは、
    前記移動装置の位置/姿勢情報を予測する予測部と、
    前記少なくとも一つのセンサの検出値を用いて前記移動装置の前記予測された位置/姿勢情報を更新する更新部と、を含み、
    前記更新された位置/姿勢情報を前記融合フィルタに提供し、前記融合フィルタの位置/姿勢情報の更新に反映するようにする、請求項に記載の移動装置。
  4. 前記位置/姿勢情報の予測は、周期的に行い、
    前記位置/姿勢情報の更新は、前記ノード検出ごとに行う、請求項3に記載の移動装置。
  5. 前記第1分散フィルタは、前記対位置情報を更新するとき、前記融合フィルタの前記融合された位置/姿勢情報を反映し、
    前記第2分散フィルタは、前記絶対位置情報を更新するとき、前記融合された位置/姿勢情報を排除する、請求項3に記載の移動装置。
  6. 前記移動装置の移動空間上に予め設定されている少なくとも一つのノードを認識し、前記ノード認識結果と予め設けられたローカルマップとの比較を通じてノード検出の不確実性を除去したノード検出情報を生成して前記第2分散フィルタに提供する前処理部をさらに含む、請求項1に記載の移動装置。
  7. 前記前処理部は、
    前記ノード認識のためのノード認識部と、
    前記ノード検出の不確実性を除去するためのノードマッチング部と、を含んでなる、請求項6に記載の移動装置。
  8. 前記ローカルマップを格納するための格納部をさらに含む、請求項6または7に記載の移動装置。
  9. 前記少なくとも一つのセンサは、前記移動装置の移動空間を撮影するためのカメラである、請求項1に記載の移動装置。
  10. 少なくとも一つの第1分散フィルタが、少なくとも一つのセンサの検出値を用いて移動装置の現在の相対位置情報を生成し、
    少なくとも一つの第2分散フィルタが、前記少なくとも一つのセンサの検出値を用いて前記移動装置の現在の絶対位置情報を生成し、
    融合フィルタが、前記第1分散フィルタの前記相対位置情報と、前記第2分散フィルタの前記絶対位置情報とを融合して位置認識を行い、更新された位置/姿勢情報を前記少なくとも一つの第1分散フィルタに伝送し、
    前記少なくとも一つの第1分散フィルタは、前記移動装置の現在の相対位置情報を生成するとき前記融合フィルタからの更新された位置/姿勢情報を同化させる、
    移動装置の位置認識方法。
  11. 前記第2分散フィルタは、前記移動装置の移動空間上に予め設定されている少なくとも一つのノード検出を通じて前記絶対位置情報を生成する、請求項10に記載の移動装置の位置認識方法。
  12. 前記第2分散フィルタは、
    前記移動装置の位置/姿勢情報を予測する予測部と、
    前記少なくとも一つのセンサの検出値を用いて前記移動装置の前記予測された位置/姿勢情報を更新する更新部と、を含み、
    前記更新された位置/姿勢情報を前記融合フィルタに提供し、前記融合フィルタの位置/姿勢情報の更新に反映するようにする、請求項11に記載の移動装置の位置認識方法。
  13. 前記位置/姿勢情報の予測は、周期的に行い、
    前記位置/姿勢情報の更新は、前記ノード検出ごとに行う、請求項12に記載の移動装置の位置認識方法。
  14. 前記第1分散フィルタは、前記対位置情報を更新するとき、前記融合フィルタの前記融合された位置/姿勢情報を反映し、
    前記第2分散フィルタは、前記絶対位置情報を更新するとき、前記融合された位置/姿勢情報を排除する、請求項12に記載の移動装置の位置認識方法。
  15. 前処理部が、前記移動装置の移動空間上に予め設定されている少なくとも一つのノードを認識し、前記ノード認識結果と予め設けられたローカルマップとの比較を通じてノード検出の不確実性を除去したノード検出情報を生成して前記第2分散フィルタに提供することをさらに含む、請求項10に記載の移動装置の位置認識方法。
  16. 前記前処理部は、
    前記ノード認識のためのノード認識部と、
    前記ノード検出の不確実性を除去するためのノードマッチング部と、を含んでなる、請求項15に記載の移動装置の位置認識方法。
  17. 前記ローカルマップを格納するための格納部をさらに含む、請求項15または16に記載の移動装置の位置認識方法。
  18. 前記少なくとも一つのセンサは、前記移動装置の移動空間を撮影するためのカメラである、請求項10に記載の移動装置の位置認識方法。
JP2012280327A 2011-12-23 2012-12-21 移動装置及び移動装置の位置認識方法 Active JP6108818B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020110141334A KR101913332B1 (ko) 2011-12-23 2011-12-23 이동 장치 및 이동 장치의 위치 인식 방법
KR10-2011-0141334 2011-12-23

Publications (2)

Publication Number Publication Date
JP2013132748A JP2013132748A (ja) 2013-07-08
JP6108818B2 true JP6108818B2 (ja) 2017-04-05

Family

ID=48655363

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012280327A Active JP6108818B2 (ja) 2011-12-23 2012-12-21 移動装置及び移動装置の位置認識方法

Country Status (3)

Country Link
US (1) US9563528B2 (ja)
JP (1) JP6108818B2 (ja)
KR (1) KR101913332B1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9323250B2 (en) 2011-01-28 2016-04-26 Intouch Technologies, Inc. Time-dependent navigation of telepresence robots
US9098611B2 (en) 2012-11-26 2015-08-04 Intouch Technologies, Inc. Enhanced video interaction for a user interface of a telepresence network
US9361021B2 (en) 2012-05-22 2016-06-07 Irobot Corporation Graphical user interfaces including touchpad driving interfaces for telemedicine devices
WO2013176758A1 (en) * 2012-05-22 2013-11-28 Intouch Technologies, Inc. Clinical workflows utilizing autonomous and semi-autonomous telemedicine devices
US9671566B2 (en) 2012-06-11 2017-06-06 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US10262462B2 (en) 2014-04-18 2019-04-16 Magic Leap, Inc. Systems and methods for augmented and virtual reality
WO2015006784A2 (en) 2013-07-12 2015-01-15 Magic Leap, Inc. Planar waveguide apparatus with diffraction element(s) and system employing same
US10295338B2 (en) * 2013-07-12 2019-05-21 Magic Leap, Inc. Method and system for generating map data from an image
US10725550B2 (en) * 2014-01-07 2020-07-28 Nod, Inc. Methods and apparatus for recognition of a plurality of gestures using roll pitch yaw data
WO2015105146A1 (ja) * 2014-01-08 2015-07-16 独立行政法人産業技術総合研究所 進行方向推定装置及び進行方向推定方法
EP2933069B1 (en) * 2014-04-17 2019-07-03 Softbank Robotics Europe Omnidirectional wheeled humanoid robot based on a linear predictive position and velocity controller
JP6541026B2 (ja) * 2015-05-13 2019-07-10 株式会社Ihi 状態データ更新装置と方法
DE102016212695B4 (de) * 2016-05-31 2019-02-21 Siemens Aktiengesellschaft Industrieroboter
KR20180121244A (ko) * 2017-04-28 2018-11-07 엘지전자 주식회사 이동 로봇 및 그 제어방법
US10907972B2 (en) * 2018-03-29 2021-02-02 Intel Corporation 3D localization device
CN108628306B (zh) * 2018-04-10 2021-06-25 平安科技(深圳)有限公司 机器人行走障碍检测方法、装置、计算机设备和存储介质
KR102601141B1 (ko) * 2018-06-22 2023-11-13 삼성전자주식회사 이미지 센서와 복수의 지자기 센서를 융합하여 위치 보정하는 이동 로봇 장치 및 제어 방법
JP7225642B2 (ja) * 2018-09-27 2023-02-21 富士通株式会社 コミュニケーションロボット、制御方法及び制御プログラム
CN112394720A (zh) * 2019-08-15 2021-02-23 纳恩博(北京)科技有限公司 机器人的控制方法和装置、存储介质及电子装置
KR20220060766A (ko) 2020-11-05 2022-05-12 주식회사 인포웍스 관성센서를 이용한 보행항법 기반 상대/절대좌표 매칭 시스템 및 방법
WO2024057423A1 (ja) * 2022-09-13 2024-03-21 富士通株式会社 変換方法、変換プログラムおよび変換装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0914962A (ja) * 1995-06-28 1997-01-17 Komatsu Ltd 建設車両の位置計測装置
EP2106886B1 (en) * 2002-04-26 2011-03-23 Honda Giken Kogyo Kabushiki Kaisha Self-position estimating device for leg type movable robots
JP2004030445A (ja) * 2002-06-27 2004-01-29 National Institute Of Advanced Industrial & Technology 移動ロボットの自己位置推定方法及びシステム、並びにプログラム
US7689321B2 (en) * 2004-02-13 2010-03-30 Evolution Robotics, Inc. Robust sensor fusion for mapping and localization in a simultaneous localization and mapping (SLAM) system
KR100834761B1 (ko) * 2005-11-23 2008-06-05 삼성전자주식회사 이동 로봇의 자기 위치 인식 방법 및 장치
JP2008065562A (ja) * 2006-09-06 2008-03-21 Sony Corp 情報処理装置、および同定処理方法、並びにコンピュータ・プログラム
JP4413957B2 (ja) 2007-08-24 2010-02-10 株式会社東芝 移動物体検出装置および自律移動物体
KR100937096B1 (ko) 2008-02-27 2010-01-15 성균관대학교산학협력단 센서융합 시스템 및 센서융합 방법
US8265817B2 (en) 2008-07-10 2012-09-11 Lockheed Martin Corporation Inertial measurement with an imaging sensor and a digitized map
JP2011175393A (ja) * 2010-02-24 2011-09-08 Toyota Motor Corp 経路計画装置、自律移動ロボット、及び移動経路の計画方法

Also Published As

Publication number Publication date
US9563528B2 (en) 2017-02-07
US20130166137A1 (en) 2013-06-27
JP2013132748A (ja) 2013-07-08
KR101913332B1 (ko) 2018-10-31
KR20130073476A (ko) 2013-07-03

Similar Documents

Publication Publication Date Title
JP6108818B2 (ja) 移動装置及び移動装置の位置認識方法
EP2590042B1 (en) Walking robot performing position recognition using several local filters and a fusion filter
JP7353747B2 (ja) 情報処理装置、システム、方法、およびプログラム
US8873831B2 (en) Walking robot and simultaneous localization and mapping method thereof
EP3347875B1 (en) Localization of a robot in an environment using detected edges of a camera image from a camera of the robot and detected edges derived from a three-dimensional model of the environment
JP6462728B2 (ja) 自律ロボットの障害物の不在および存在の一方の確率のマップを構築する方法
JP4645601B2 (ja) 環境地図の生成方法及び移動ロボット
EP2952301B1 (en) Humanoid robot with collision avoidance and trajectory recovery capabilities
TWI827649B (zh) 用於vslam比例估計的設備、系統和方法
JP2005092820A (ja) 環境認識装置及び方法、経路計画装置及び方法、並びにロボット装置
Xiao et al. Indoor uav localization using a tether
EP1975046B1 (en) Legged locomotion robot
EP1975878B1 (en) Projective transformation convergence calculation method
US10197399B2 (en) Method for localizing a robot in a localization plane
JP2008059218A (ja) 自律走行ロボットの自己位置回復方法
KR20170138977A (ko) 보행 로봇 및 그의 위치 인식과 지도 작성을 동시에 수행하는 방법
KR101132713B1 (ko) 이동로봇의 이동 제어장치, 이를 구비하는 이동로봇 시스템 및 이동로봇의 이동 제어방법
WO2023082050A1 (zh) 一种基于双层滤波框架的高精度里程估计方法
CN105818145A (zh) 仿人机器人的分布式控制系统及方法
TW201540281A (zh) 機器人的行動輔助系統
CN114046800B (zh) 一种基于双层滤波框架的高精度里程估计方法
US11372475B2 (en) Information processing apparatus, information processing method, and floor modeling system
Tan et al. Mobile Robot Docking With Obstacle Avoidance and Visual Servoing
US20220388174A1 (en) Autonomous and teleoperated sensor pointing on a mobile robot
Marrón et al. Open platform and open software for an intelligent wheelchair with autonomous navigation using sensor fusion

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20151130

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170104

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: 20170221

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170307

R150 Certificate of patent or registration of utility model

Ref document number: 6108818

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250