【文献】
鏡 慎吾,センサフュージョン−センサネットワークの情報処理構造,電子情報通信学会論文誌,日本,電子情報通信学会,2005年12月 1日,No.12,1404-1412ページ
(58)【調査した分野】(Int.Cl.,DB名)
前記移動装置の移動空間上に予め設定されている少なくとも一つのノードを認識し、前記ノード認識結果と予め設けられたローカルマップとの比較を通じてノード検出の不確実性を除去したノード検出情報を生成して前記第2分散フィルタに提供する前処理部をさらに含む、請求項1に記載の移動装置。
前記第2分散フィルタは、前記移動装置の移動空間上に予め設定されている少なくとも一つのノード検出を通じて前記絶対位置情報を生成する、請求項10に記載の移動装置の位置認識方法。
前処理部が、前記移動装置の移動空間上に予め設定されている少なくとも一つのノードを認識し、前記ノード認識結果と予め設けられたローカルマップとの比較を通じてノード検出の不確実性を除去したノード検出情報を生成して前記第2分散フィルタに提供することをさらに含む、請求項10に記載の移動装置の位置認識方法。
【発明を実施するための形態】
【0021】
以下では、添付の図面を参照して、本発明の実施例を詳細に説明する。
【0022】
図1は、本発明の実施例に係る移動装置の一例である歩行ロボットの外観構成図である。
図1に示されるように、本発明の実施例に係る移動装置の一例である歩行ロボット10は、人間と同様に、二つの脚16L、16Rによって直立移動する二足歩行ロボットであって、頭12、胴体13、二つの腕14L、14Rからなる上体11と、二つの脚16L、16Rからなる下体15と、を有する。頭12において人間の目の形状を有した機構部には、移動空間の周囲を撮影するためのカメラ120が装着される。
【0023】
参照符号において、数字の後ろの“L”と“R”は、それぞれロボット10の左側(left)と右側(right)を示す。
【0024】
本発明の実施例では、移動装置として二足歩行ロボットを例に挙げて説明したが、その他にも家庭での掃除ロボット、公共場所用サービスロボット、生産現場での搬送ロボット、作業者支援ロボットなどの多様な形態の移動ロボット、及び自律移動機能を有してはいないが、人間が携帯し、移動しながら操作できるモバイル機器(携帯電話のような移動通信機器など)に対して本発明を適用することができる。
【0025】
図2は、
図1に示される歩行ロボットの主要機構及び関節構造を示した図である。
図2に示されるように、歩行ロボット10の頭12には、移動空間の周囲を撮影するカメラ120が設置される。
【0026】
頭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で直線で示される構造)により連結される。
【0027】
上体11の下側に設置される腰関節部21には、上体11を支持するための骨盤26が連結される。骨盤26は、ペルビスリンク27を介してヒップ関節部22に連結される。ペルビスリンク27には、歩行ロボット10の姿勢情報(角度情報)を検出するための慣性センサ130(Inertial Measurement Unit;IMU)が設置される。慣性センサ130は、重力方向と慣性系に対してペルビスリンク27の相対的角度を検出して、ロール方向、ピッチ方向、ヨー方向の姿勢情報(角度情報)を発生させる。この慣性センサ130は、ペルビスリンク27だけでなく胴体13、頭12などに設置することも可能である。
【0028】
図2に示されていないが、歩行ロボット10の各関節部18,19,20,21,22,23,24には、動力(電気、油圧)により各回転関節25を駆動するモータなどのアクチュエーター(
図3の“駆動部”に該当)と、各アクチュエーターの回転角度、すなわち、各回転関節25の回転角度を検出するエンコーダ(
図3の110)とが設置される。歩行ロボット10の動作全般を制御する制御部(
図3の200)は、このようなアクチュエーターを適切に制御することによって歩行ロボット10の多様な動作を具現できる。
【0029】
図3は、
図1に示される歩行ロボットの制御系統を示したブロック図である。
図3に示されるように、本発明の実施例に係る移動装置の一例である歩行ロボット10の制御系統は、センサモジュール100、制御部200、格納部400及び駆動部450を含む。
【0030】
センサモジュール100は、歩行ロボット10に関する情報及び移動空間に関する情報を検出するための複数のセンサ110,120,130を含んでなる。センサモジュール100は、歩行ロボット10の歩行に関連する回転関節の回転角度情報を獲得するためのエンコーダ110(encoder)、歩行ロボット10が歩行している移動空間の周辺を撮影するためのカメラ120、歩行ロボット10の姿勢情報(角度情報)を検出するための慣性センサ130などの多様なセンサを含むことができる。
【0031】
センサモジュール100において、エンコーダ110は、ヒップ関節部22、膝関節部23及び足首関節部24に設けられた各回転関節25を回転駆動するために設置されたアクチュエーター(駆動部)の回転角度を検出する。
【0032】
センサモジュール100において、カメラ120は、被写体から反射される光を検出し、これをデジタル信号に変換して移動空間の周辺の映像情報を獲得する。カメラ120としては、CCD(charge−coupled device)カメラ、CMOS(complementary metal oxide)カメラ、TOF(Time of Flight)カメラなどを用いることができ、その他にも、歩行ロボット10が歩行する経路上に位置する物体に対する映像情報を獲得できる装置であれば、いかなる装置でも使用できることは勿論である。
【0033】
センサモジュール100において、慣性センサ130は、歩行ロボット10の加速度、速度、方向(角度)などの多様な航法関連情報を測定するためのもので、ペルビスリンク27のロール方向、ピッチ方向、ヨー方向の傾き及び回転角度を測定する。慣性センサ130は、歩行ロボット10の角度を測定する傾きセンサ、及び角速度を測定する角速度センサを含む。ここで、傾きセンサとしては加速度計が使用され、角速度センサとしてはレートジャイロスコープ(rate−gyroscope)が使用される。
【0034】
制御部200は、歩行ロボット10の動作全般を制御し、第1〜5前処理部210〜250及び位置認識部300を含む。
【0035】
第1〜5前処理部210〜250は、エンコーダ110、カメラ120及び慣性センサ130から伝達される検出情報(回転角度情報、映像情報、慣性検出情報)に対して演算処理(preprocessing)を行って、歩行ロボット10の位置認識のために必要な測定情報(measured data)を算出し、算出された測定情報を位置認識部300に提供する。
【0036】
位置認識部300は、第1〜5前処理部210〜250から提供された各種情報を用いて、歩行ロボット10自身の位置及び姿勢を推定する。位置認識部300の構成については、後述する
図4を参照して詳細に説明する。
【0037】
格納部400は、歩行ロボット10が位置認識を行うために必要とする事前情報、及び位置認識の結果を格納するためのもので、格納部400には、リンク(関節部と関節部との間を連結する機構構造)の機構情報(長さ情報)、歩行ロボット10の歩行過程で複数のアルゴリズム(複数のフィルタ)を用いて算出される歩行ロボット10の位置認識結果(標識の位置情報、歩行ロボットの位置/姿勢情報)、及び複数のアルゴリズムのうち、特にSLAMアルゴリズムを用いて作成される移動空間(作業空間)に対するローカルマップなどが格納される。
【0038】
本発明の実施例では、位置認識を行うために必要とする事前情報及び位置認識の結果を格納するための格納部400が別途に設けられる構成を例に挙げて説明したが、格納部400の構成を採用せずに、制御部200内の内部メモリに位置認識のための事前情報などを格納するように構成してもよい。
【0039】
駆動部450は、各関節部18,19,20,21,22,23,24をなす各回転関節25に電気又は油圧による動力を伝達するためのモータなどのアクチュエーターであって、制御部200から伝達される制御信号に応じて各関節部18,19,20,21,22,23,24の各回転関節25を回転駆動する。
【0040】
以下では、
図4を参照して、
図3に示される位置認識部300の構成を詳細に説明する。
図4は、
図3に示される位置認識部の構成を示した図である。
【0041】
図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)の絶対位置情報とを融合して、持続的で且つ効果的な位置認識を行う。
【0042】
本発明の実施例において、位置認識部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は、同化部を有さない。
【0043】
第1〜5ローカルフィルタ310,320,330,340,350及び融合フィルタ360の各予測部312,322,332,342,352,362は、以前の更新ステップで推定(認識)された歩行ロボット10の位置/姿勢情報から歩行ロボット10の新しい位置/姿勢情報を予測する。
【0044】
第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の位置/姿勢情報を更新する。
【0045】
第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の更新された絶対位置/姿勢情報を融合する。
【0046】
すなわち、第1〜5ローカルフィルタ310,320,330,340,350は、各センサ110,120,130の検出情報を用いて更新された歩行ロボット10の位置/姿勢情報を融合フィルタ360に伝達し、融合フィルタ360は、伝達された歩行ロボット10の位置/姿勢情報を融合/更新して第1〜4ローカルフィルタ310,320,330,340にフィードバックする過程を行う。第5ローカルフィルタ350には、融合フィルタ360の更新された位置/姿勢情報がフィードバックされない。
【0047】
以下では、第5ローカルフィルタ350を除外した残りの第1〜4ローカルフィルタ310,320,330,340の共通した動作過程について説明する。本発明の実施例では、第1〜4ローカルフィルタ310,320,330,340がカルマンフィルタ(Kalman filterからなる場合を例に挙げて説明する。
【0048】
第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を有する。
【0049】
共通に第1〜4ローカルフィルタ310,320,330,340の予測ステップでは、推定状態変数に基づいた等速度運動モデル(constant velocity model)を用いて更新ステップでセンサ情報(より詳しくは測定情報)と融合(fusion)する前に、現在の状態変数を下の数式(1)のようにモデリングする。
【0050】
【数1】
ここで、n
vは速度のノイズ成分で、n
wは角速度のノイズ成分である。
【0051】
第1〜4ローカルフィルタ310,320,330,340の更新ステップでは、各センサ110,120,130の検出情報に対する前処理を通じて獲得した測定情報z(k)、及び予測ステップで求めた状態変数x
L(k|k−1)を用いて算出した予測観測値h(k)を用いてカルマンフィルタ更新(Kalman Filter Update)を行う。予測された歩行ロボット10の位置/姿勢情報に対する更新が行われた後には、下の数式(2)及び数式(3)のように情報フィルタ(information filter)に対する入力形態で融合フィルタ360に必要な情報を伝達する。
【0052】
【数2】
ここで、H(k)は、予測測定情報h(k)のヤコビアン行列(Jacobian matrix)であり、R(k)は、測定情報z(k)の不確実性を表現する共分散行列(covariance matrix)を意味する。
【0053】
センサモジュール100から検出情報が入力される毎に、基本的にこの二つの過程(予測と更新)が反復して行われ、融合フィルタ360から位置認識結果(更新された歩行ロボットの相対位置/姿勢情報)の入力がある場合、同化ステップでは、第1〜4ローカルフィルタ310,320,330,340の更新ステップで更新された歩行ロボット10の相対位置/姿勢情報に、融合フィルタ360の位置認識結果(更新された歩行ロボットの位置/姿勢情報)を、更新ステップと類似したカルマンフィルタ更新(Kalman Filter Update)を使用して反映する。これは、独立して駆動される第1〜4ローカルフィルタ310,320,330,340に異なるセンサの検出情報が反映されることにより、それぞれのセンサが他のセンサの検出情報を共有することを意味する。これによって、それぞれのセンサは、他のセンサの検出情報を通じて自分の検出情報を補完できるので、全体フィルタシステム300の位置推定の正確度を大きく向上させることができる。
【0054】
図5は、
図4に示した第5前処理部250の構成を示す図である。第5前処理部250は、カメラ120及び慣性センサ130から伝達される検出情報(回転角度情報、映像情報、慣性検出情報)に対して演算処理(preprocessing)を行って、歩行ロボット10の移動空間上に設定されているノード(Node)(
図6の説明参照)を検出する。ノードA〜Eの検出のために、第5前処理部250はノード認識部252とノードマッチング部254を含む。ノード認識部252は、カメラ120から伝達される検出情報(映像情報)を分析して歩行ロボット10の移動空間上に予め設定されているノードを認識する。ノードマッチング部254は、ノード認識結果に含まれ得る不確実性を除去してノード認識率を高めるためのものである。
【0055】
図6を参照して、本発明の実施例に係るノード認識方法をより具体的に説明すると、次の通りである。
図6は、本発明の実施例に係るノード設定状態を示した図である。ノード認識は、現在の映像から抽出した特徴点情報を用いて、格納部400に格納されているローカルマップ上の特徴点情報と比較することを意味する。このとき、対応する特徴点の数が多いノードを決定して、歩行ロボット10の現在の位置に隣接したノードを判断する。
【0056】
本発明の実施例では、融合フィルタ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次元地図をノード情報として追加的に活用できる。
【0057】
ノード検出方法は、ノード認識(Node Recognition)とノードマッチング(Node Matching)の二つの過程からなる。ノード検出方法の1番目の過程であるノード認識は、カメラ120を通じて確保した映像から抽出した特徴点情報を、格納部400に格納されている特徴点情報と比較することである。この比較を通じて、対応する特徴点の数が多いノードを認識できる。
【0058】
ノード検出方法の2番目の過程であるノードマッチングは、認識したノード座標系内でロボットの姿勢(位置及び方向)を決定する過程である。ノードを含むローカルマップ内の特徴点は、ノード座標系内で3次元位置と対応する不確実性情報(Covariance)を有している。ノードマッチング過程で、それぞれのマッチングされる特徴点間の関係を用いると、ノード座標系内での歩行ロボット10の3次元姿勢と対応する不確実性情報を計算することができ、そのために、下の数式(4)が使用される。
【0059】
【数3】
数式(4)は、ノード検出結果として得たノードのローカル座標系に対する歩行ロボット10の3次元姿勢O
1x
v及び不確実性情報O
1P
vを示したもので、O1rvは、歩行ロボット10の3次元位置(x,y,z)で、O
1q
vは、歩行ロボットの3次元姿勢(角度)情報(quaternion)である。
【0060】
このような過程を通じて求めたノード座標系に対する歩行ロボット10の位置は、下の数式(5)を用いて、位相学的地図情報からワールド原点座標系に対する位置に変換可能であり、位相学的ノードの観測情報として融合フィルタ360に伝達される。
【0061】
【数4】
数式(5)は、数式(4)の値を全体移動空間の原点座標系に対して3次元姿勢Gx
vに変換したものであって、Gr
vは、原点座標系に対するロボットの3次元位置であり、Gq
vは、3次元角度情報であり、R()は、3次元姿勢(角度)情報(quaternion)を回転マトリックス(Rotational Matrix)に変換させる関数であり、x演算子は、角度変換演算(quaternion product)を意味し、Fは、ヤコビアン(Jacobian)変換を示す。
【0062】
第5ローカルフィルタ350で取り扱われる位相学的ノード情報は空間上に分布しているため、更新のためのノード認識情報の頻度数が少なく、一定周期ごとのサンプリングも不可能である。したがって、第1〜4ローカルフィルタ310,320,330,340とは異なり、推定をするための状態変数X
L(k|k)としてワールド原点座標系に対する3次元位置r及び3次元姿勢(quaternion)qのみを有する。
【0063】
推定状態変数からは速度成分を求めることができないため、推定状態変数に基づいた絶対位置モデル(Constant Position Model)を使用して、更新過程でノード情報と融合(Fusion)する前に、現在の状態変数を数式(6)のようにモデリングする。この過程は、第5ローカルフィルタ350の予測ステップで、ノード情報の更新と関係なく、一定時間ごとに周期的に行われる。
【0064】
【数5】
数式(6)は、絶対位置モデル(Constant Position Model)を用いて位置/姿勢を推定する過程を示した数式であって、X
L(k|k−1)は、位相学的情報(Topological Information)を処理する第5ローカルフィルタの状態変数(state)を示し、3次元位置rと3次元姿勢(quaternion)qで構成される。すなわち、以前のステップ(k−1)での状態変数をそのまま維持しつつ、ノイズ成分のみを反映する。数式(6)において、n
rは、速度のノイズ成分で、n
θは、角速度のノイズ成分である。
【0065】
第5ローカルフィルタの更新過程では、ノード検出を通じて得た測定情報z(k)(下の数式(7)参照)、及び予測過程で求めた状態変数X
L(k|k−1)を用いて得た予測観測情報h(k)(下の数式(8)参照)を用いてカルマンフィルタ更新(Kalman Filter Update)を行う。
【0066】
【数6】
数式(7)は、更新を行うために、数式(5)で求めた情報をz(k)、R(k)に代入したものである。
【0067】
【数7】
数式(8)は、予測された状態変数情報(r(k|k−1)、q(k|k−1))、及び基準として定めた以前のステップで推定された状態変数値(r_ref(k−1|k−1)、q_ref(k−1|k−1))を用いて予測観測値h(k)を求めることを示したものである。
【0068】
位相学的ノード情報を扱うフィルタモジュールは、ワールド原点座標系に対する絶対位置及び方向値を用いて更新を行う。しかし、3次元姿勢(quaternion)qの非線形性のため直接的なカルマンフィルタ更新の適用が難しいので、以前のステップで推定された状態変数値を基準として定め、その値に対する変化量を下の数式(9)及び数式(10)のように求めて、ロドリゲスの回転公式(Rodrigues’ rotation formula)の形態に変換した後、更新過程を行う。
【0069】
【数8】
数式(9)と数式(10)は、h(k)の構成要素であるΔr、Δqを計算するためのもので、R
−1(q
ref)は、3次元位置/姿勢情報(quaternion)を回転マトリックス(Rotational Matrix)に変換する関数の逆関数である。
【0070】
更新が完了すると、第1〜4ローカルフィルタ310,320,330,340と同様に、前述した数式(2)及び数式(3)のように情報フィルタ(information filter)に対する入力形態で融合フィルタ360に必要な情報を伝達する。
【0071】
以下では、
図7乃至
図11を参照して、第1〜5ローカルフィルタ310,320,330,340,350を用いて歩行ロボット10の位置を認識する過程を説明する。
【0072】
<第1ローカルフィルタ310の動作>
図7は、
図4に示される第1ローカルフィルタ310を用いた歩行ロボット10の位置認識方法を示したフローチャートである。第1ローカルフィルタ310は、歩行ロボット10の位置認識を行うためのセンサとしてエンコーダ110を使用し、歩行ロボット10のオドメトリ(odometry)情報を用いて予測された歩行ロボット10の位置/姿勢情報を更新する。説明の便宜上、第1ローカルフィルタ310をオドメトリフィルタと定義する。
【0073】
本発明の実施例の動作説明のための初期条件として、格納部400には、歩行ロボット10が位置認識を行うための事前情報として歩行ロボット10のリンク(関節部と関節部との間を連結する機構構造)の機構情報(長さ情報)が予め格納されていることを前提とする。また、時間的前後関係と関連して、以下で記述する以前のステップはk−1と、以前のステップの次のステップ(現在のステップと表示されてもよい)は、kと表示する。
【0074】
図7に示されるように、第1ローカルフィルタ310の予測部312は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から歩行ロボット10の次のステップkの位置/姿勢情報を予測する(710)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
【0075】
次に、第1前処理部210は、エンコーダ110から、歩行ロボット10の歩行に関連する関節部をなす回転関節の回転角度情報を獲得する(720)。
【0076】
その後、第1前処理部210は、格納部400に予め格納されている各リンク(link)の機構情報、及びエンコーダ110から入力された各回転関節の回転角度情報を用いてオドメトリ情報を算出する(730)。オドメトリ情報は、移動空間上の原点座標系(歩行ロボットが歩行動作を始めた地点を原点とする座標系)に対する歩行ロボット10の位置(座標)情報及び姿勢(角度)情報を意味し、推測航法(dead reckoning)を用いて累積する方式で算出する。
【0077】
次に、第1前処理部210は、ステップkとステップk−1のオドメトリ情報を用いて、歩行ロボット10の相対的な姿勢変化情報を算出する(740)。算出された歩行ロボット10の相対的な姿勢変化情報が、前述した測定情報z(k)となる。
【0078】
オドメトリフィルタである第1ローカルフィルタ310において予測観測情報h(k)は、下の数式(11)のように示すことができる。
【0079】
【数9】
したがって、更新部314は、算出された歩行ロボット10の相対的な姿勢変化情報を前述した数式(2)のz(k)に代入し、数式(11)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(750)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部314は、更新された歩行ロボット10の位置/姿勢情報を同化部316に伝送する。
【0080】
その後、同化部316は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(760)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(760での‘はい’)、同化部316は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部312に伝送する(770)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
【0081】
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(760での‘いいえ’)、同化ステップは行わずに、動作780に進む。
【0082】
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(780)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
【0083】
歩行ロボット10の移動が停止されないと(780での‘いいえ’)、制御部200は、動作710に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(780での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
【0084】
<第2ローカルフィルタ320の動作>
図8は、
図4に示される第2ローカルフィルタ320を用いた歩行ロボット10の位置認識方法を示したフローチャートである。
【0085】
第2ローカルフィルタ320は、歩行ロボット10の位置認識を行うためのセンサとしてカメラ120を使用し、歩行ロボット10の相対的な姿勢変化情報を用いて予測された歩行ロボット10の位置/姿勢情報を更新する。説明の便宜上、第2ローカルフィルタ320を、視覚センサベースのオドメトリフィルタと定義する。
【0086】
図8に示されるように、第2ローカルフィルタ320内の予測部322は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測する(810)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
【0087】
次に、第2前処理部220は、カメラ120から移動空間周辺の映像情報を獲得する(820)。
【0088】
その後、第2前処理部220は、以前のステップk−1で獲得した映像情報及び現在のステップkで獲得した映像情報のそれぞれから視覚特徴点(feature)を抽出し、抽出された特徴点をマッチング(matching)する(830)。
【0089】
次に、第2前処理部220は、特徴点の抽出及びマッチングを通じて獲得した相関関係からオドメトリフィルタ310と同様に歩行ロボット10の相対的な姿勢変化情報を算出する(840)。算出された歩行ロボット10の相対的な姿勢変化情報が、前述した測定情報z(k)となる。
【0090】
視覚センサベースのフィルタである第2ローカルフィルタ320において予測観測情報h(k)は、下の数式(12)のように示すことができる。
【0091】
【数10】
したがって、更新部324は、算出された歩行ロボット10の相対的な姿勢変化情報を前述した数式(2)のz(k)に代入し、数式(12)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(850)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部324は、更新された歩行ロボット10の位置/姿勢情報を同化部326に伝送する。
【0092】
その後、同化部326は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(860)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(860での‘はい’)、同化部326は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部322に伝送する(870)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
【0093】
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(860での‘いいえ’)、同化ステップは行わずに、動作880に進む。
【0094】
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(880)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
【0095】
歩行ロボット10の移動が停止されないと(880での‘いいえ’)、制御部200は、動作810に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(880での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
【0096】
<第3ローカルフィルタ330の動作>
図9は、
図4に示される第3ローカルフィルタを用いた歩行ロボットの位置認識方法を示したフローチャートである。
【0097】
第3ローカルフィルタ330は、歩行ロボット10の位置認識を行うためのセンサとしてカメラ120を使用し、映像情報から抽出した特徴点の3次元位置情報と歩行ロボット10の3次元位置/姿勢情報とを同時に推定する。したがって、他のローカルフィルタ310,320,340,350とは異なり、特徴点の位置に対する状態変数yi(k|k)をさらに有することになる。
【0098】
説明の便宜上、第3ローカルフィルタ330を視覚センサベースのSLAM(Simultaneous Localization And Mapping)フィルタと定義する。視覚センサベースのSLAMフィルタは、ワールド座標系で歩行ロボット10の位置/姿勢情報を推定できるという長所があるが、特徴点の位置情報を状態変数として維持しているため、移動距離が増加するにつれて計算時間が増加するという短所も存在する。
【0099】
図9に示されるように、第3ローカルフィルタ330内の予測部332は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測し、以前の更新ステップk−1で推定(認識)された特徴点の位置情報から歩行ロボット10の次のステップkの特徴点の位置情報を予測する(910)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
【0100】
次に、第3前処理部230は、カメラ120から移動空間周辺の映像情報を獲得する(920)。その後、第3前処理部230は、格納部400に格納されている既存の標識と現在獲得された映像情報から抽出された特徴点との間の同一性を判断する(930)。すなわち、第3前処理部230は、特徴点の追跡(tracking)及びマッチング(matching)過程を通じて現在獲得された映像情報から抽出された特徴点が既存に標識として使用されていたのか、または新しい特徴点として登録しなければならないのかを判断する。
【0101】
次に、第3前処理部230は、既存に標識として登録された特徴点の位置情報と、現在獲得された映像情報から抽出されて既存の標識とマッチングされた特徴点の位置情報を算出する(940)。算出された既存の標識とマッチングされた特徴点の位置情報が、前述した測定情報z(k)となる。
【0102】
視覚センサベースのSLAMフィルタである第3ローカルフィルタ330において予測観測情報h(k)は、下の数式(13)のように示すことができる。
【0103】
【数11】
したがって、更新部334は、算出された既存の標識とマッチングされた特徴点の位置情報を前述した数式(2)のz(k)に代入し、数式(13)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報及び特徴点の位置情報を更新する(950)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部334は、更新された歩行ロボット10の位置/姿勢情報を同化部336に伝送する。
【0104】
その後、同化部336は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(960)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(960での‘はい’)、同化部336は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部332に伝送する(970)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
【0105】
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(960での‘いいえ’)、同化ステップは行わずに、動作980に進む。
【0106】
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(980)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
【0107】
歩行ロボット10の移動が停止されないと(980での‘いいえ’)、制御部200は、動作910に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(980での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
【0108】
<第4ローカルフィルタ340の動作>
図10は、
図4に示される第4ローカルフィルタ340を用いた歩行ロボット10の位置認識方法を示したフローチャートである。
【0109】
第4ローカルフィルタ340は、歩行ロボット10の位置認識を行うためのセンサとして慣性センサ130を使用し、3次元加速度情報及び3次元角速度情報を用いて予測された歩行ロボット10の位置/姿勢情報を更新する。説明の便宜上、第4ローカルフィルタ340をIMU(Inertial Measurement Unit)フィルタと定義する。
【0110】
図10に示されるように、第4ローカルフィルタ340の予測部342は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測する(1010)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
【0111】
次に、第4前処理部240は、慣性センサ130から慣性測定情報を獲得する(1020)。その後、第4前処理部240は、慣性センサ130を通じて検出された加速度情報及び角速度情報から3次元加速度情報及び3次元角速度情報を算出する(1030)。算出された3次元加速度情報及び3次元角速度情報が、前述した測定情報z(k)となる。
【0112】
IMUフィルタ340において予測観測情報h(k)は、下の数式(14)のように示すことができる。
【0113】
【数12】
したがって、更新部344は、算出された3次元加速度情報及び3次元角速度情報を前述した数式(2)のz(k)に代入し、数式(14)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(1040)。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。更新部344は、更新された歩行ロボット10の位置/姿勢情報を同化部346に伝送する。
【0114】
次に、同化部346は、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果(更新された位置/姿勢情報)が入力されるか否かを判断する(1050)。融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されると(1050での‘はい’)、同化部346は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に融合フィルタ360の位置認識結果を反映し、融合フィルタ360の位置認識結果が反映された歩行ロボット10の位置/姿勢情報を予測部342に伝送する(1060)。この過程は、位置認識アルゴリズムの同化(assimilation)ステップに該当する。
【0115】
一方、融合フィルタ360の更新部364から歩行ロボット10の位置認識結果が入力されない場合(1050での‘いいえ’)、同化ステップは行わずに、動作1070に進む。
【0116】
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(1070)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
【0117】
歩行ロボット10の移動が停止されないと(1070での‘いいえ’)、制御部200は、動作1010に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(1070での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
【0118】
<第5ローカルフィルタ350の動作>
図11は、
図4に示される第5ローカルフィルタ350を用いた歩行ロボット10の位置認識方法を示したフローチャートである。
【0119】
第5ローカルフィルタ350は、歩行ロボット10の位置認識を行うためのセンサとしてカメラ120を使用し、映像情報から抽出した特徴点の3次元位置情報を通じたノード認識と、歩行ロボット10の3次元位置/姿勢情報とを同時に推定する。したがって、他のローカルフィルタ310,320,330,340とは異なり、推定のための状態変数xL(k|k)としてワールド原点座標系に対する3次元位置r及び3次元姿勢(quaternion)qのみを有する。
【0120】
図11に示されるように、第5ローカルフィルタ350の予測部352は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報に新しいノード認識結果が反映された新しい歩行ロボット10の位置/姿勢情報から、歩行ロボット10の次のステップkの位置/姿勢情報を予測し、以前の更新ステップk−1で推定(認識)されたノードの位置情報から歩行ロボット10の次のステップkのノードの位置情報を予測する(1110)。この過程は、位置認識アルゴリズムの予測(prediction)過程に該当する。
【0121】
次に、第5前処理部250は、カメラ120から移動空間周辺の映像情報を獲得する(1120)。
【0122】
その後、第5前処理部250は、格納部400に格納されているローカルマップ情報と、現在獲得された映像情報から抽出された特徴点との間の同一性の判断を通じてノードを検出する(1130)。すなわち、第5前処理部250は、特徴点の追跡(tracking)及びマッチング(matching)過程を通じて現在獲得された映像情報から抽出された特徴点に対応するノードを検出する。
【0123】
次に、第5前処理部250は、検出されたノードの位置を基準としてローカルマップ上での歩行ロボット10の絶対位置/姿勢情報z(k)(数式(7)参照)を算出する(1140)。
【0124】
ノード検出を通じて算出された絶対位置/姿勢情報z(k)及び予測観測情報h(k)(数式(8)参照)を用いてカルマンフィルタ更新(Kalman Filter Update)を行う(1150)。すなわち、第5ローカルフィルタ350の更新部354は、算出された既存のノード位置情報を前述した数式(7)のz(k)に代入し、数式(6)のヤコビアン行列を算出して数式(2)及び数式(3)のH(k)に代入して、予測ステップで予測された歩行ロボット10の位置/姿勢情報及び特徴点の位置情報を更新する。この過程は、位置認識アルゴリズムの更新(update)ステップに該当する。
【0125】
第5ローカルフィルタ350の更新部354は、更新された歩行ロボット10の絶対位置/姿勢情報を融合フィルタ360の同化部366に提供する(1160)。第5ローカルフィルタ350から絶対位置/姿勢情報の提供を受けた融合フィルタ360の同化部366は、更新ステップで更新された歩行ロボット10の位置/姿勢情報に第5ローカルフィルタ350の絶対位置/姿勢情報を反映して融合フィルタ360の予測部362に伝送することにより、融合フィルタ360での位置認識アルゴリズムの同化(assimilation)過程が行われる。
【0126】
次に、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(1170)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
【0127】
歩行ロボット10の移動が停止されないと(1170の‘いいえ’)、制御部200は、動作1110に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(1170での‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
【0128】
以下では、再び
図4を参照して融合フィルタ360の動作過程について説明する。
【0129】
融合フィルタ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)を有する。
【0130】
【数13】
融合フィルタ360の動作フィルタとして情報フィルタを使用する理由は、融合フィルタ360の同化ステップで第1〜5ローカルフィルタ310,320,330,340,350から伝送される歩行ロボット10の位置認識結果(更新された位置/姿勢情報)を単純に下の数式(17)及び数式(18)のように足し算の形態で融合できるためである。
【0131】
【数14】
同化ステップで同化された歩行ロボット10の位置/姿勢情報を用いて更新された融合フィルタ360の位置/姿勢認識結果は、再び各第1〜4ローカルフィルタ310,320,330,340に伝達され、それによって、分散化されたフィルタシステム300全体の位置認識推定値の一貫性を維持することになる。
【0132】
このような分散化されたフィルタシステム300の構造は、第1〜5ローカルフィルタ310,320,330,340,350に問題が生じる場合、融合フィルタ360に伝達される情報を遮断することができ、第1〜5ローカルフィルタ310,320,330,340,350の問題のみ解決した後、再び位置認識動作を続けて行うことができるので、全体位置認識システムの強靭性を向上させることができる。
【0133】
<融合フィルタ360の動作>
図12は、
図4に示される融合フィルタ360を用いた歩行ロボットの位置認識方法を示したフローチャートである。
図12に示されるように、融合フィルタ360の予測部362は、以前の更新ステップk−1で推定(認識)された歩行ロボット10の位置/姿勢情報から歩行ロボット10の次のステップkの位置/姿勢情報を予測する(1210)。この過程は、位置認識アルゴリズムの予測(prediction)ステップに該当する。
【0134】
次に、同化部366は、第1〜5ローカルフィルタ310,320,330,340,350から歩行ロボット10の位置認識結果(更新された相対位置/姿勢情報及び絶対位置/姿勢情報)を獲得する(1220)。
【0135】
その後、同化部366は、第1〜5ローカルフィルタ310,320,330,340,350の位置認識結果を統合する(1230)。このとき、第5ローカルフィルタ350を通じて得た絶対位置/姿勢情報が他の第1〜4ローカルフィルタ310,320,330,340を通じて得た相対位置/姿勢情報に反映されることにより、第1〜4ローカルフィルタ310,320,330,340の相対位置/姿勢情報に含まれ得る誤差が改善されることができる。これによって、本発明の実施例に係る歩行ロボット10は持続的にさらに強靭な位置認識を行うことができる。
【0136】
次に、更新部364は、統合された位置認識結果を用いて予測ステップで予測された歩行ロボット10の位置/姿勢情報を更新する(1240)。この過程は、位置認識アルゴリズムの更新ステップに該当する。更新部364は、更新された歩行ロボット10の位置/姿勢情報を第1〜4ローカルフィルタ310,320,330,340の同化部316,326,336,346に伝送する(1250)。第5ローカルフィルタ350は、融合フィルタ360から情報のフィードバックを受けない。
【0137】
その後、制御部200は、歩行ロボット10の移動が停止されたか否かを判断する(1260)。制御部200は、入力部(図示せず)を通じて使用者から歩行ロボット10の歩行停止命令が入力されたり、エンコーダ110からこれ以上の回転角度情報が入力されない場合、歩行ロボット10の移動が停止したものと判断する。
【0138】
歩行ロボット10の移動が停止されないと(1260の‘いいえ’)、制御部200は、動作1210に戻り、歩行ロボット10の位置認識動作を続けて行うように制御する。歩行ロボット10の移動が停止された場合(1260の‘はい’)、制御部200は歩行ロボット100の位置認識過程を終了する。
【0139】
上記では、
図1乃至
図12を参照して、多様な移動装置のうち歩行ロボット10を例に挙げて、分散化されたフィルタシステムを用いて歩行ロボットの位置認識動作を行う場合を説明したが、歩行ロボットの他にも、多様な形態の移動ロボット、及び自律移動機能を有してはいないが人間が携帯し、移動しながら操作できる移動装置(携帯電話やタブレットなど)の場合にも、本発明で提示している分散化されたフィルタシステムを用いて位置認識動作を行うことが可能である。
【0140】
また、上記では、移動装置の位置認識を行うためのセンサとして、エンコーダ、カメラ、慣性センサを利用(総3個のセンサを利用)する場合を例に挙げて説明したが、その他にも、距離センサ、コンパスセンサ、衛星航法装置(Global Positioning System;GPS)など、移動装置の位置認識を行うのに利用され得るセンサ(または装置)であれば、いかなるセンサでも使用可能であることは勿論である。
【0141】
図13は、本発明の実施例に係る移動装置の位置認識方法を示したフローチャートである。以下では、
図13を参照して本発明の実施例に係る移動装置の位置認識方法を説明する。
【0142】
まず、各ローカルフィルタで移動装置の位置認識動作を行う(1310)。その後、各ローカルフィルタは、位置認識結果を融合フィルタに伝送する(1320)。次に、融合フィルタは、各ローカルフィルタから伝送された位置認識結果を融合する(1330)。
【0143】
その後、融合フィルタは、融合された位置認識結果を用いて移動装置の位置認識を行う(1340)。次に、融合フィルタは、位置認識結果を各ローカルフィルタに伝送する(1350)。その後、移動装置の移動が停止されたか否かを判断する(1360)。移動装置の移動が停止されないと(1360での‘いいえ’)、動作1310に戻り、移動装置の位置認識動作を続けて行う。
【0144】
一方、移動装置の移動が停止された場合(1360での‘はい’)、移動装置の位置認識過程を終了する。