(57)【要約】【課題】ガイドレス走行を行う移動体における複数の駆動輪の摩耗を簡便に検出する。【解決手段】移動体は、複数の駆動輪と、前記複数の駆動輪にそれぞれ接続された複数のモータと、環境を繰り返しスキャンしてスキャンごとにセンサデータを出力する外界センサと、前記センサデータに基づき、前記移動体の位置および姿勢の推定値を示す第１位置情報を順次生成して出力する第１位置推定装置と、前記複数の駆動輪の各々の回転速度の計測値または推定値を取得し、前記計測値または前記推定値に基づき、前記移動体の位置および姿勢の推定値を示す第２位置情報を順次生成して出力する第２位置推定装置と、前記第１位置情報に基づいて計算される前記移動体の変位と、前記第２位置情報に基づいて計算される前記移動体の変位との差に基づき、前記複数の駆動輪の摩耗判定を行い、前記摩耗判定の結果を示す信号を出力する演算回路と、を備える。【選択図】図１
2019079171.tif 000002
【特許請求の範囲】
【請求項１】
移動体であって、
複数の駆動輪と、
前記複数の駆動輪にそれぞれ接続された複数のモータと、
環境を繰り返しスキャンしてスキャンごとにセンサデータを出力する外界センサと、
前記センサデータに基づき、前記移動体の位置および姿勢の推定値を示す第１位置情報を順次生成して出力する第１位置推定装置と、
前記複数の駆動輪の各々の回転速度の計測値または推定値を取得し、前記計測値または前記推定値に基づき、前記移動体の位置および姿勢の推定値を示す第２位置情報を順次生成して出力する第２位置推定装置と、
前記第１位置情報に基づいて計算される前記移動体の変位と、前記第２位置情報に基づいて計算される前記移動体の変位との差に基づき、前記複数の駆動輪の摩耗判定を行い、前記摩耗判定の結果を示す信号を出力する演算回路と、
を備える移動体。
【請求項２】
前記演算回路に接続された通信回路をさらに備え、
前記演算回路は、前記第１位置情報に基づいて計算される前記移動体の変位と、前記第２位置情報に基づいて計算される前記移動体の変位との差が閾値を超えたとき、前記通信回路を介して他の装置に、前記摩耗判定の結果を示す信号を送信する、請求項１に記載の移動体。
【請求項３】
前記摩耗判定の結果を示す信号は、前記複数の駆動輪の少なくとも１つについての摩耗の程度、交換の要否、および交換すべき時期の少なくとも１つの情報を含む、請求項１または２に記載の移動体。
【請求項４】
前記演算回路は、前記第１位置情報に基づいて計算される前記移動体の変位と、前記第２位置情報に基づいて計算される前記移動体の変位との差に応じたオドメトリ補正値を決定し、
前記第２位置推定装置は、前記オドメトリ補正値を用いて前記第２位置情報を補正した位置情報を、オドメトリ情報として出力する、
請求項１から３のいずれかに記載の移動体。
【請求項５】
前記演算回路は、外部の装置から前記摩耗判定を行うべき旨の指示を受けたとき、または、前回の摩耗判定から一定時間以上経過したとき、前記摩耗判定を行う、請求項１から４のいずれかに記載の移動体。
【請求項６】
前記演算回路は、前記複数の駆動輪の回転速度が一定値に保たれている期間に前記摩耗判定を行う、請求項１から５のいずれかに記載の移動体。
【請求項７】
前記演算回路は、前記移動体が旋回している間に前記摩耗判定を行う、請求項１から６のいずれかに記載の移動体。
【請求項８】
前記第１位置推定装置は、前記第１位置情報の信頼度を示すデータを出力し、
前記演算回路は、前記信頼度が閾値を超えているときのみ、前記摩耗判定を行う、
請求項１から７のいずれかに記載の移動体。
【請求項９】
前記演算回路は、
前記移動体の走行経路上の複数の位置ごとに、前記第１位置情報に基づいて計算される前記移動体の変位と、前記第２位置情報に基づいて計算される前記移動体の変位との差を計算し、前記差を示すデータを、前記複数の位置と関連付けて記憶装置に記録し、
記録した前記データに基づいて、前記複数の位置の中から、前記摩耗判定を行う位置を決定する、
請求項１から８のいずれかに記載の移動体。
【請求項１０】
前記記憶装置をさらに備え、
前記記憶装置は、環境地図を記憶し、
前記演算回路は、
前記環境地図における複数のエリアごとに前記差を示すデータを生成し、前記データを前記複数のエリアと関連付けて前記記憶装置に記録し、
記録した前記データに基づいて、前記複数のエリアの中から、前記摩耗判定を行うエリアを決定する、
請求項９に記載の移動体。
【請求項１１】
前記複数の駆動輪の回転速度をそれぞれ計測する複数のロータリエンコーダをさらに備え、
前記第２位置推定装置は、前記複数のロータリエンコーダから出力されたデータに基づき、前記第２位置情報を生成する、
請求項１から１０のいずれかに記載の移動体。
【請求項１２】
前記外界センサはレーザレンジファインダであり、
前記第１位置推定装置は、前記センサデータと環境地図とのマッチングを行うことにより、前記第１位置情報を生成する、
請求項１から１１のいずれかに記載の移動体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、移動体に関する。
【背景技術】
【０００２】
無人搬送車または移動ロボットなどの、自律的に移動する移動体の研究および開発が進められている。移動体が自律的に移動するためには、自己の位置および姿勢（以下、「自己位置」と称する）を認識する必要がある。自己位置は、たとえば、予め用意された環境地図のデータと、レーザレンジファインダなどの外界センサを用いて取得したデータとのマッチングを行うことによって推定され得る。自己位置はまた、車輪の回転速度（すなわち単位時間当たりの回転数）の積算値に基づいて推定することもできる。後者の方法で推定された位置情報を「オドメトリ情報」と称する。オドメトリ情報は、車輪の空転または摩耗などの要因によって誤差を生じやすい。
【０００３】
特開２００７−２２２８２号公報は、直線状のガイドに沿って走行する無人搬送車の車輪の摩耗量を推定して摩耗に伴う走行距離の誤差を補正する技術を開示している。この技術では、無人搬送車のコントローラは、所定の直進区間内を走行する無人搬送車の車輪の回転数を検出し、上記直進区間の実際の距離と、検出された車輪回転数および上記車輪の径の初期値から算出される走行距離算出値とを用いて、当該車輪の摩耗量を推定する。コントローラは、車輪の磨耗に伴って減少する当該搬送車の走行距離を補正して、当該搬送車を予め設定された所定の位置まで精度よく移動させる。さらに、コントローラは、摩耗量の推定値が予め設定された閾値を超えた場合に、車輪が交換時期に達したと判定する。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−２２２８２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本開示は、ガイドレス走行を行う移動体における複数の駆動輪の摩耗を簡便に検出する技術を提供する。
【課題を解決するための手段】
【０００６】
本開示の例示的な実施形態における移動体は、複数の駆動輪と、前記複数の駆動輪にそれぞれ接続された複数のモータと、環境を繰り返しスキャンしてスキャンごとにセンサデータを出力する外界センサと、前記センサデータに基づき、前記移動体の位置および姿勢の推定値を示す第１位置情報を順次生成して出力する第１位置推定装置と、前記複数の駆動輪の各々の回転速度の計測値または推定値を取得し、前記計測値または前記推定値に基づき、前記移動体の位置および姿勢の推定値を示す第２位置情報を順次生成して出力する第２位置推定装置と、前記第１位置情報に基づいて計算される前記移動体の変位と、前記第２位置情報に基づいて計算される前記移動体の変位との差に基づき、前記複数の駆動輪の摩耗判定を行い、前記摩耗判定の結果を示す信号を出力する演算回路と、を備える。
【発明の効果】
【０００７】
本開示の実施形態によれば、移動体における複数の駆動輪の摩耗を簡便に検出することができるため、メンテナンスを容易にすることができる。
【図面の簡単な説明】
【０００８】
【図１】図１は、本開示の例示的な実施形態における移動体１０の概略的な構成を示すブロック図である。
【図２】図２は、摩耗判定処理の一例を説明するための図である。
【図３】図３は、摩耗判定処理の他の例を説明するための図である。
【図４】図４は、摩耗判定処理のさらに他の例を説明するための図である。
【図５】図５は、環境地図の一例を示す図である。
【図６】図６は、環境地図を複数のエリアに分け、エリア毎の変位差の分布の例を示す図である。
【図７Ａ】図７Ａは、移動体１０の初期導入から、駆動輪１１１の摩耗の検出および通知が行われるまでの一連の流れの一例を示す図である。
【図７Ｂ】図７Ｂは、摩耗判定処理の他の例を示すフローチャートである。
【図８】図８は、本開示による、各ＡＧＶの走行を制御する制御システムの概要を示す図である。
【図９】図９は、ＡＧＶが存在する移動空間Ｓの一例を示す図である。
【図１０Ａ】図１０Ａは、接続される前のＡＧＶおよび牽引台車を示す図である。
【図１０Ｂ】図１０Ｂは、接続されたＡＧＶおよび牽引台車を示す図である。
【図１１】図１１は、本実施形態にかかる例示的なＡＧＶの外観図である。
【図１２Ａ】図１２Ａは、ＡＧＶの第１のハードウェア構成例を示す図である。
【図１２Ｂ】図１２Ｂは、ＡＧＶの第２のハードウェア構成例を示す図である。
【図１３Ａ】図１３Ａは、移動しながら地図を生成するＡＧＶを示す図である。
【図１３Ｂ】図１３Ｂは、移動しながら地図を生成するＡＧＶを示す図である。
【図１３Ｃ】図１３Ｃは、移動しながら地図を生成するＡＧＶを示す図である。
【図１３Ｄ】図１３Ｄは、移動しながら地図を生成するＡＧＶを示す図である。
【図１３Ｅ】図１３Ｅは、移動しながら地図を生成するＡＧＶを示す図である。
【図１３Ｆ】図１３Ｆは、完成した地図の一部を模式的に示す図である。
【図１４】図１４は、複数の部分地図によって１つのフロアの地図が構成される例を示す図である。
【図１５】図１５は、運行管理装置のハードウェア構成例を示す図である。
【図１６】図１６は、運行管理装置によって決定されたＡＧＶの移動経路の一例を模式的に示す図である。
【発明を実施するための形態】
【０００９】
＜用語＞
本開示の実施形態を説明する前に、本明細書において使用する用語の定義を説明する。
【００１０】
「無人搬送車」（ＡＧＶ）とは、本体に人手または自動で荷物を積み込み、指示された場所まで自動走行し、人手または自動で荷卸しをする無軌道車両を意味する。「無人搬送車」は、無人牽引車および無人フォークリフトを含む。
【００１１】
「無人」の用語は、車両の操舵に人を必要としないことを意味しており、無人搬送車が「人（たとえば荷物の積み下ろしを行う者）」を搬送することは除外しない。
【００１２】
「無人牽引車」とは、人手または自動で荷物の積み込み荷卸しをする台車を牽引して、指示された場所まで自動走行する無軌道車両である。
【００１３】
「無人フォークリフト」とは、荷物移載用のフォークなどを上下させるマストを備え、フォークなどに荷物を自動移載し指示された場所まで自動走行し、自動荷役作業をする無軌道車両である。
【００１４】
「無軌道車両」とは、車輪と、車輪を回転させる電気モータまたはエンジンを備える移動体（vehicle）である。
【００１５】
「移動体」とは、人または荷物を載せて移動する装置であり、移動のための駆動力(traction)を発生させる車輪、二足もしくは多足歩行装置、またはプロペラなどの駆動装置を備える。本開示における「移動体」の用語は、狭義の無人搬送車のみならず、モバイルロボット、サービスロボット、およびドローンを含む。
【００１６】
「自動走行」は、無人搬送車が通信によって接続されるコンピュータの運行管理システムの指令に基づく走行と、無人搬送車が備える制御装置による自律的走行とを含む。自律的走行には、無人搬送車が所定の経路に沿って目的地に向かう走行のみならず、追尾目標に追従する走行も含まれる。また、無人搬送車は、一時的に作業者の指示に基づくマニュアル走行を行ってもよい。「自動走行」は、一般には「ガイド式」の走行および「ガイドレス式」の走行の両方を含むが、本開示では「ガイドレス式」の走行を意味する。
【００１７】
「ガイド式」とは、誘導体を連続的または断続的に設置し、誘導体を利用して無人搬送車を誘導する方式である。
【００１８】
「ガイドレス式」とは、誘導体を設置せずに誘導する方式である。本開示の実施形態における無人搬送車は、自己位置推定装置を備え、ガイドレス式で走行することができる。
【００１９】
「自己位置推定装置」は、レーザレンジファインダなどの外界センサによって取得されたセンサデータに基づいて環境地図上における自己位置を推定する装置である。
【００２０】
「外界センサ」は、移動体の外部の状態をセンシングするセンサである。外界センサには、たとえば、レーザレンジファインダ（測域センサともいう）、カメラ（またはイメージセンサ）、ＬＩＤＡＲ（Light Detection and Ranging）、ミリ波レーダ、および磁気センサがある。
【００２１】
「内界センサ」は、移動体の内部の状態をセンシングするセンサである。内界センサには、たとえばロータリエンコーダ（以下、単に「エンコーダ」と称することがある）、加速度センサ、および角加速度センサ（たとえばジャイロセンサ）がある。
【００２２】
「SLAM（スラム）」とは、Simultaneous Localization and Mappingの略語であり、自己位置推定と環境地図作成を同時に行うことを意味する。
【００２３】
＜例示的な実施形態＞
前述のように、特開２００７−２２２８２号公報は、無人搬送車の車輪の摩耗を検出する技術を開示している。しかし、この技術は、直線状のガイドに沿って走行する無人搬送車を対象としており、実際の距離が既知である直線区間を無人搬送車に走行させる必要がある。このため、適用範囲が限定される。
【００２４】
ガイドレス走行を行う移動体については、これまで、駆動輪の摩耗を検出する有効な方法が知られていなかった。駆動輪の摩耗の検出は、目視によって行われることが一般的であった。駆動輪の摩耗を放置すると、駆動輪の回転速度に基づいて生成されるオドメトリ情報の誤差が次第に拡大していく。このため、オドメトリ情報を利用する移動体システムでは、人が定期的に駆動輪の摩耗状態を確認し、駆動輪の交換要否を判断する必要があった。
【００２５】
本発明者は、上記の課題を見出し、より簡便に摩耗を検出するために、以下に説明する本開示の実施形態の構成に想到した。
【００２６】
以下、添付の図面を参照しながら、本開示による移動体および移動体システムの一例を説明する。なお、必要以上に詳細な説明は省略する場合がある。たとえば、既によく知られた事項の詳細説明や実質的に同一の構成に対する重複説明を省略する場合がある。これは、以下の説明が不必要に冗長になるのを避け、当業者の理解を容易にするためである。本発明者らは、当業者が本開示を十分に理解するために添付図面および以下の説明を提供する。これらによって特許請求の範囲に記載の主題を限定することを意図するものではない。以下の説明において、同一または類似の構成要素には、同一の参照符号を付している。
【００２７】
図１は、本開示の例示的な実施形態における移動体１０の概略的な構成を示すブロック図である。移動体１０は、複数の駆動輪１１１と、複数の電気モータ（以下、単に「モータ」と称する）１０６と、外界センサ１０１と、第１位置推定装置１０３と、駆動装置１０７と、演算回路１０５と、記憶装置１１３と、通信回路１０４とを備えている。駆動装置１０７は、第２位置推定装置１０９を備えている。図１には、移動体１０の外部の装置である運行管理装置５０（以下、「管理装置５０」とも称する）も示されている。
【００２８】
複数のモータ１０６は、複数の駆動輪１１１にそれぞれ接続されている。複数のモータ１０６は、駆動装置１０７によって駆動され、複数の駆動輪１１１をそれぞれ回転させる。駆動装置１０７は、演算回路１０５からの指示に従い、複数のモータ１０６の回転を制御する。
【００２９】
駆動装置１０７は、インバータ回路などのモータ駆動回路を、モータ１０６ごとに備え得る。本実施形態では、駆動装置１０７は、オドメトリ情報を生成する第２位置推定装置１０９を備えているが、第２位置推定装置１０９は、駆動装置１０７から独立して設けられていてもよい。
【００３０】
本実施形態では、複数の駆動輪１１１および複数のモータ１０６のそれぞれの個数は２個である。しかし、この例に限定されず、他の個数、たとえば３個または４個であってもよい。
【００３１】
外界センサ１０１は、移動体１０の周囲の環境を繰り返し（たとえば周期的に）スキャンすることによって得たセンサデータを逐次出力する。外界センサ１０１の典型例はレーザレンジファインダである。外界センサ１０１はイメージセンサまたは超音波センサなどの他の種類のセンサであってもよい。
【００３２】
第１位置推定装置１０３は、外界センサ１０１から出力されたセンサデータに基づき、移動体１０の位置および姿勢の推定値を示す第１位置情報を順次出力する。第１位置推定装置１０３は、たとえば、記憶装置１１３に記録されている環境地図を参照し、環境地図とセンサデータとのマッチングを行うことにより、第１位置情報を生成する。この処理の具体例については後述する。第１位置推定装置１０３は、たとえばマイクロコントローラユニット（マイコン）などの、プロセッサを含む回路によって実現され得る。第１位置推定装置１０３は、第１位置情報に加えて、位置推定結果の確からしさを示す信頼度データを出力してもよい。信頼度データは、たとえば環境地図とセンサデータとの一致度を示す。
【００３３】
第２位置推定装置１０９は、複数の駆動輪１１１の各々の回転速度の計測値または推定値を取得し、その値に基づいて、移動体１０の位置および向きの推定値を示す第２位置情報を生成して順次出力する。第２位置推定装置１０９はまた、第２位置情報を必要に応じて補正したオドメトリ情報を生成する。第２位置推定装置１０９は、たとえば駆動装置１０７内のマイコンなどの、プロセッサを含む回路によって実現され得る。
【００３４】
図１に示す例では、移動体１０は、複数の駆動輪１１１の回転速度をそれぞれ計測する複数のロータリエンコーダ１０８を備えている。第２位置推定装置１０９は、複数のロータリエンコーダ１０８から出力されたデータに基づいて、第２位置情報を生成することができる。第２位置推定装置１０９は、たとえば複数のロータリエンコーダ１０８によって計測された複数の駆動輪１１１の回転速度（すなわち回転方向および単位時間当たりの回転数）に既知の計算式を適用して、移動体１０の変位ベクトルを算出する。その変位ベクトルを第２位置情報とすることができる。計算式は、たとえば各駆動輪１１１と路面との間に滑りが生じないと仮定したときの各駆動輪１１１の回転速度と移動体１０の変位とを関係付ける式であり得る。駆動輪１１１の単位時間（たとえば１秒）あたりの回転数をｎ、駆動輪１１１の直径をｄとすると、πｄｎが、その駆動輪１１１の単位時間あたりの移動量であるといえる。複数の駆動輪１１１のそれぞれについて、単位時間当たりの移動量を求め、それらの移動量の組み合わせから、移動体１０の位置（ｘ，ｙ）および姿勢（θ）の変化量を求めることができる。ここで、（ｘ，ｙ）は、移動体１０が移動する環境に固定された２次元座標系における移動体１０の基準点（たとえば外界センサが位置する点）の座標値である。θは、移動体１０の正面方向が基準方向（たとえばｘ方向）となす角度（反時計回りを正とする）を表す。計算式に代えて、同様の関係を規定するテーブルを利用して第２位置情報を求めてもよい。第２位置推定装置１０９は、複数のロータリエンコーダ１０８からの情報を用いる代わりに、各モータ駆動回路における電流または電圧の計測値に基づいてモータ１０６の回転速度を推定してもよい。
【００３５】
演算回路１０５は、移動体１０の動作を制御する回路である。演算回路１０５は、第１位置推定装置１０３から第１位置情報を取得し、第２位置推定装置１０９から第２位置情報を取得する。演算回路１０５は、第１位置情報に基づいて計算される移動体１０の変位（第１の変位）と、第２位置情報に基づいて計算される移動体１０の変位（第２の変位）との差（以下、「変位差」と称することがある）に基づき、複数の駆動輪１１１の摩耗判定を行う。なお、本明細書では、第１の変位と第２の変位との「比」に基づいて摩耗判定を行う場合も、第１の変位と第２の変位との「差」に基づいて摩耗判定を行うことに該当する。摩耗判定は、たとえば、変位差と各駆動輪１１１の回転速度とに基づいて、各駆動輪１１１の径の初期値からの減少量を推定し、推定した減少量に基づいて、摩耗の有無または摩耗の程度を判定する処理を含んでいてもよい。演算回路１０５は、摩耗判定の結果を示す信号を出力する。
【００３６】
「摩耗判定の結果を示す信号」は、たとえば、複数の駆動輪１１１の少なくとも１つについての摩耗の程度、交換の要否、および交換すべき時期の少なくとも１つの情報を含み得る。このような信号は、たとえば移動体１０の外部に位置する他の装置に送信され得る。
【００３７】
図１に示す例では、移動体１０は、演算回路１０５に接続された通信回路１０４を備えている。通信回路１０４は、移動体１０の外部の管理装置５０との間で無線通信を行う。演算回路１０５は、たとえば、第１位置情報に基づいて計算される移動体１０の変位（第１の変位）と、第２位置情報に基づいて計算される移動体１０の変位（第２の変位）との差が閾値を超えたとき、通信回路１０４を介して管理装置５０に、摩耗判定の結果を示す信号を送信する。ここで、「第１の変位と第２の変位との差が閾値を超える」とは、第１の変位と第２の変位との比、すなわち第１の変位の大きさを第２の変位の大きさで割った比が、閾値を下回ることと等価である。ある例において、当該比がたとえば７０％を下回った場合には、管理装置５０に上記信号が送られ得る。管理装置５０は、当該信号を受けて、駆動輪１１１の摩耗量が大きいことを検出する。このような信号は、たとえば移動体システムを利用するユーザが持つ情報端末に送信されてもよい。ユーザは、その信号に基づき、駆動輪１１１の交換時期を把握することができる。「摩耗判定の結果を示す信号」は、第１位置情報に基づいて計算される移動体１０の変位と、第２位置情報に基づいて計算される移動体１０の変位との差から導かれるデータであればよい。摩耗判定の結果を示す信号は、たとえば駆動輪１１１の径の初期値からの減少量の推定値でもよい。
【００３８】
演算回路１０５は、摩耗判定を任意のタイミングで行うことができる。摩耗判定は、移動体１０の運行を開始する前、および運行開始後の適当なタイミングで行われ得る。たとえば、演算回路１０５は、管理装置５０などの外部装置から摩耗判定を行うべき旨の指示を受けたとき、または、前回の摩耗判定から一定時間以上経過したとき、摩耗判定を行ってもよい。通常、駆動輪１１１の摩耗は短時間では進行せず、比較的長い時間をかけて進行する。このため、たとえば一週間ごと、一カ月ごと、三カ月ごと、半年ごと、一年ごと、といった一定時間ごとに摩耗判定を行ってもよい。
【００３９】
ある例では、移動体１０が一定の速度で直進しているときにのみ摩耗判定が行われる。その場合、演算回路１０５は、複数の駆動輪１１１の回転速度が一定値に保たれている期間に摩耗判定を行う。複数の駆動輪１１１の回転速度が同じである場合、移動体１０の姿勢の変化が殆ど生じない。このため、姿勢（θ）の情報を用いることなく、容易に摩耗判定を行うことができる。
【００４０】
摩耗判定は、移動体１０の旋回中に行ってもよい。旋回している状態は、左右の駆動輪１１１の回転数がほぼ等しく、回転方向が互いに逆の状態である。この場合、演算回路１０５は、複数の駆動輪１１１の回転状態から旋回していることを検知し、旋回中に摩耗判定を行う。旋回中は移動体１０の位置が殆ど変化しないため、狭いエリア内で摩耗判定が可能であるという利点がある。旋回中の摩耗判定には、姿勢（θ）の変化量が利用される。
【００４１】
摩耗判定は、上記の例の他、移動体１０が加速または減速を行っているとき、右折中、左折中などのタイミングで行うことも可能である。
【００４２】
第１位置推定装置１０３が第１位置情報の信頼度を示すデータを出力する場合、演算回路１０５は、信頼度が閾値を超えているときのみ、摩耗判定を行ってもよい。本実施形態における摩耗判定は、第１位置情報の信頼度が高いことを前提としている。このため、第１位置情報の信頼度が一定値以上の場合にのみ、摩耗判定を行うことは有効である。信頼度は、たとえば地図データとセンサデータとの間でＩＣＰ(Iterative Closest Point)マッチングを行ったときの、マッチングできたセンサデータのセンサデータ全体に対する割合であり得る。
【００４３】
演算回路１０５は、摩耗判定の結果を示す信号または変位差を示す信号（変位の比を示す信号を含む）を移動体１０の位置と関連付けて記憶装置１１３に記録してもよい。さらに、演算回路１０５は、移動体１０の走行経路上の複数の位置ごとに当該データを生成し、当該データを当該複数の位置と関連付けて記憶装置１１３に記録してもよい。このような記録を行っておくことで、位置によって床の状態、摩擦係数、または滑り易さが異なる場合に、摩耗判定に適した位置を把握することができる。演算回路１０５は、記録したデータに基づいて、複数の位置の中から、摩耗判定を行う位置を決定することができる。摩耗判定を行う位置は、たとえば滑りにくい位置から選択され得る。
【００４４】
以下、図２から図４を参照しながら、摩耗判定処理の例を説明する。図２から図４の例において、移動体１０は４つの車輪を有しているが、そのうちの２つ（後輪）が駆動輪１１１である。
【００４５】
図２は、摩耗判定処理の第１の例を模式的に示す図である。この例では、移動体１０が左にカーブを描きながら移動しているときに摩耗判定が行われる。この状態は、左側の駆動輪１１１よりも右側の駆動輪１１１の方が高い回転速度で回転している状態である。
【００４６】
ここで、時刻ｔにおける移動体１０の位置および姿勢（以下、「基準位置」と称する）を（ｘ（ｔ），ｙ（ｔ），θ（ｔ））とする。基準位置は、たとえば時刻ｔにおけるセンサデータから推定される第１位置情報であり得る。第１位置推定装置１０３および第２位置推定装置１０９の各々は、時刻ｔから微小時間Δｔが経過した後の基準位置からの変位を推定する。微小時間Δｔは、外界センサ１０１がセンサデータを出力する周期（たとえば数十ミリ秒から数百ミリ秒程度）と同じか、それよりも長い時間である。時刻ｔ＋Δｔにおける第１位置情報を（ｘ１（ｔ＋Δｔ），ｙ１（ｔ＋Δｔ），θ１（ｔ＋Δｔ））とする。時刻ｔ＋Δｔにおける第２位置情報を（ｘ２（ｔ＋Δｔ），ｙ２（ｔ＋Δｔ），θ２（ｔ＋Δｔ））とする。
【００４７】
第１位置情報に基づいて計算される移動体１０の変位は、（ｘ１（ｔ＋Δｔ）−ｘ（ｔ），ｙ１（ｔ＋Δｔ）−ｙ（ｔ），θ１（ｔ＋Δｔ）−θ（ｔ））で表される。第２位置情報に基づいて計算される移動体１０の変位は、（ｘ２（ｔ＋Δｔ）−ｘ（ｔ），ｙ２（ｔ＋Δｔ）−ｙ（ｔ），θ２（ｔ＋Δｔ）−θ（ｔ））で表される。よって、これらの変位の差は、（Δｘ，Δｙ，Δθ）＝（ｘ１（ｔ＋Δｔ）−ｘ２（ｔ＋Δｔ），ｙ１（ｔ＋Δｔ）−ｙ２（ｔ＋Δｔ），θ１（ｔ＋Δｔ）−θ２（ｔ＋Δｔ））と表される。
【００４８】
ここで、第１位置情報がほぼ正確であると仮定する。第１位置情報による変位と第２位置情報による変位との差（Δｘ，Δｙ，Δθ）は、第２位置情報の誤差を表すといえる。この誤差は、駆動輪１１１の摩耗が進行するほど大きくなる。
【００４９】
そこで、演算回路１０５は、この変位差ベクトル（Δｘ，Δｙ，Δθ）を計算し、その値に基づいて摩耗の程度を推定する。たとえば、変位差ベクトルの二乗和（Δｘ）２＋（Δｙ）２＋（Δθ）２またはその平方根の値の範囲と、摩耗の進行度との対応を規定するテーブルが予め用意され得る。演算回路１０５は、そのテーブルを参照して、変位差ベクトルの二乗和またはその平方根の値から、摩耗の進行度を決定することができる。この例ではΔθも考慮するが、Δθを考慮せず、（Δｘ）２＋（Δｙ）２の値に基づいて摩耗の進行度を決定してもよい。
【００５０】
変位差に代えて、変位の比（ｘ２（ｔ＋Δｔ）／ｘ１（ｔ＋Δｔ），ｙ２（ｔ＋Δｔ）／ｙ１（ｔ＋Δｔ），θ２（ｔ＋Δｔ）／θ１（ｔ＋Δｔ））を用いて同様の摩耗判定を行ってもよい。以下の他の例についても同様である。
【００５１】
図３は、摩耗判定処理の第２の例を模式的に示す図である。この例では、移動体１０が直進しているときに摩耗判定が行われる。この状態は、左側の駆動輪１１１および右側の駆動輪１１１が同じ回転速度で回転している状態である。なお、左右の駆動輪１１１の摩耗量が異なる場合、同じ回転速度で回転していても直進しないが、その影響は軽微であると仮定して無視する。
【００５２】
この例では、時刻ｔ＋Δｔでの第１位置情報における姿勢θ１（ｔ＋Δｔ）と、時刻ｔ＋Δｔでの第２位置情報における姿勢θ２（ｔ＋Δｔ）とが、ともに時刻ｔでの姿勢θ（ｔ）に実質的に等しい。このため、姿勢の変化は無視することができる。そこで、演算回路１０５は、座標の変位差を示すベクトル（Δｘ，Δｙ）を計算し、その値に基づいて摩耗の程度を推定する。たとえば、変位差ベクトルの二乗和（Δｘ）２＋（Δｙ）２またはその平方根の値の範囲と、摩耗の進行度との対応を規定するテーブルが予め用意され得る。演算回路１０５は、そのテーブルを参照して、変位差ベクトルの二乗和またはその平方根の値から、摩耗の進行度を決定することができる。
【００５３】
図４は、摩耗判定処理の第３の例を模式的に示す図である。この例では、移動体１０が旋回しているときに摩耗判定が行われる。ここでは移動体１０が右に旋回している場合の例を説明する。この状態は、左右の駆動輪１１１の回転方向が互いに逆であり、単位時間あたりの回転数が等しい状態である。この場合、座標（ｘ，ｙ）の変化量は無視できる。つまり、ｘ１（ｔ＋Δｔ）≒ｘ２（ｔ＋Δｔ）≒ｘ（ｔ）かつｙ１（ｔ＋Δｔ）≒ｙ２（ｔ＋Δｔ）≒ｙ（ｔ）と仮定できる。このため、演算回路１０５は、姿勢の変位差Δθ＝θ１（ｔ＋Δ）−θ２（ｔ＋Δｔ）のみに基づいて駆動輪１１１の摩耗判定を行ってもよい。
【００５４】
次に、摩耗量に応じたオドメトリ情報の補正処理の例を説明する。
【００５５】
駆動輪１１１の摩耗量が大きくなると、駆動輪１１１の回転速度から計算される第２位置情報の誤差が拡大する。その場合、オドメトリ情報として使用できなくなる。摩耗量があまりにも大きいと、駆動輪１１１の交換が必要になるが、摩耗量が軽微な場合、補正で対処することができる。そこで、本実施形態では、摩耗量に応じて第２位置情報の補正が行われる。演算回路１０５は、第１位置情報に基づいて計算される移動体１０の変位と、第２位置情報に基づいて計算される移動体１０の変位との差（または比）に応じたオドメトリ補正値または補正係数を決定する。第２位置推定装置１０９は、当該オドメトリ補正値または補正係数を用いて第２位置情報を補正した位置情報を、オドメトリ情報として出力する。この処理について、図３を参照して説明する。
【００５６】
演算回路１０５は、図３に示すように直進している状態で、外界センサ１０１から出力されたセンサデータに基づいて算出した移動距離と、ロータリエンコーダ１８ａから出力されたデータに基づいて算出した移動距離との比Ａを計算する。比Ａは、以下の数１で表される。
【数１】
2019079171.tif 000003
【００５７】
演算回路１０５は、この比Ａを補正係数として記憶装置に１１３に記録する。以降の走行時には、第２位置推定装置１０９は、ロータリエンコーダ１８ａから出力されたデータに基づいて算出した移動距離に、補正係数Ａを掛けた値を、補正後の移動距離として、オドメトリ情報を生成する。このような処理は、移動体１０の初期導入時、および運行開始後の適当なタイミングで行われ得る。補正係数Ａは、駆動輪１１１の摩耗の進行に伴い、更新される。このような補正係数Ａの更新を含むキャリブレーションを行うことにより、オドメトリ情報の信頼性が確保される。
【００５８】
オドメトリ情報の補正は、たとえば以下の方法によって行ってもよい。図２を参照して説明したように、第１位置情報による変位と第２位置情報による変位との差（Δｘ，Δｙ，Δθ）＝（ｘ１（ｔ＋Δｔ）−ｘ２（ｔ＋Δｔ），ｙ１（ｔ＋Δｔ）−ｙ２（ｔ＋Δｔ），θ１（ｔ＋Δｔ）−θ２（ｔ＋Δｔ））は、第２位置情報の誤差を表すといえる。そこで、演算回路１０５は、移動体１０の運行開始前および適当なタイミングで、この（Δｘ，Δｙ，Δθ）をオドメトリ補正値として記憶装置１１３に記録しておく。移動体１０の運行時には、第２位置推定装置１０９は、記録されたオドメトリ補正値に各駆動輪１１１の回転速度によって決まる係数を掛けた値を、第２位置情報が示す位置および姿勢の推定値に加算する。各駆動輪１１１の回転速度によって決まる係数は、たとえば、オドメトリ補正値を決定したときの移動速度に対する現在の移動速度の比であり得る。第２位置推定装置１０９は、このようにして補正した値を、新たなオドメトリ情報として出力する。
【００５９】
以上の処理により、より正確なオドメトリ情報を生成することができる。補正されたオドメトリ情報は、外界センサによって取得されるセンサデータを補完するために使用され得る。移動体１０は、通常はセンサデータに基づいて自己位置推定を行うが、その推定結果の信頼性が低い場合には、代わりにオドメトリ情報を利用して自己位置推定を行うことができる。駆動輪が摩耗すると、補正前のオドメトリ情報の誤差が大きくなり、センサデータの補完には使用し難い。しかし、本実施形態による補正を行うことにより、より好適なオドメトリ情報を得ることができる。
【００６０】
上記のような補正値の決定は、たとえば定期的に行われ得る。移動体１０の運行に伴い、駆動輪１１の摩耗が進行したり、路面の状態（たとえば摩擦係数）が微妙に変化したりする可能性がある。その場合、補正値の再設定が必要になる。そこで、移動体１０は、たとえば数週間から数ヶ月に一回程度、キャリブレーションを行い、摩耗の程度を示すデータまたは補正値を更新してもよい。このようなキャリブレーションは、移動体１０の通常運行時に適当なタイミングで行ってもよい。
【００６１】
本実施形態では、記憶装置１１３は環境地図を記憶している。環境地図は、移動体１０が移動する環境のレイアウトを示すデータである。環境地図は、たとえばレーザレンジファインダによって取得される点群データの集合であり得る。環境地図は、線分データの集合であってもよい。演算回路１０５は、環境地図における複数のエリアごとに上記の変位差を示すデータを生成し、当該データを複数のエリアと関連付けて記憶装置１１３に記憶させてもよい。
【００６２】
図５は、環境地図の一例を示す図である。図６は、環境地図を複数のエリアに分けた例を示す図である。図６に示すように、環境地図は、たとえば一定の大きさを有する複数の矩形のエリアに分割して管理されていてもよい。各エリアの一辺の長さは、たとえば数百ミリメートルから数メートル程度であり得る。演算回路１０５は、図示されるような複数のエリアごとに、第１位置情報に基づいて計算される移動体１０の変位と、第２位置情報に基づいて計算される移動体１０の変位（補正後の変位）との差を計算し、当該差を示すデータを、エリアを示す識別子とともに記憶装置１１３に記憶させてもよい。なお、補正後の変位差を計算する方法は、前述のいずれの方法でもよく、いずれのエリアについても同じ方法で計算される。各エリアにおける変位差は、複数回の計算値の平均値であってもよい。図６においては、計算された変位差の大きさに応じて異なる濃さでエリアが表現されている。濃く表現されたエリアほど、変位差が大きく、駆動輪１１１の滑りまたは空転が生じやすいといえる。このようなマップデータを予め生成しておくことにより、演算回路１０５は、駆動輪１１１の滑りまたは空転が生じやすいエリアを避けて摩耗判定を行うことができる。また、床面の材質または凹凸状態などがフロア内で異なる場合でも、オドメトリ情報の補正値をエリア毎に適切に設定することができる。
【００６３】
図７Ａは、移動体１０の初期導入から、駆動輪１１１の摩耗の検出および通知が行われるまでの一連の流れの一例を示す図である。この例では、移動体１０の導入時に初期キャリブレーションが行われる（ステップＳ１０）。初期キャリブレーションでは、演算回路１０５は、外界センサの出力に基づく移動距離と、駆動輪１１１の回転速度に基づく移動距離とが一致するように、前述の補正係数Ａを決定する。そして、演算回路１０５は、決定した補正係数Ａを、記憶装置１１３に記録しておく。この初期キャリブレーションは、駆動輪１１１と床面との間でスリップが生じない場所で行われる。
【００６４】
通常運行時には、移動体１０は、たとえば管理装置５０からの指示に従い、設定された走行経路を走行する。この際、第２位置推定装置１０９は、記録された補正係数Ａを用いて第２位置情報を補正することによってオドメトリ情報を生成する。また、移動体１０は、通常運行中に、走行経路の中からキャリブレーションに適した位置を探索する（ステップＳ１１）。具体的には、演算回路１０５は、走行中の経路の中で、外界センサの出力に基づく移動距離と、駆動輪１１１の回転速度に基づく移動距離との差がゼロに近い区間を探索する。探索結果は、たとえば図６に示すようなマップ情報として管理され得る。この区間の探索は、通常運行時に随時行われ得る。これにより、床面の状態が変化した場合には、キャリブレーションが行われる位置が更新され得る。
【００６５】
演算回路１０５は、補正係数Ａの決定または前回の更新から一定期間（たとえば１週間から数ヶ月程度）が経過したかを判断する（ステップＳ１２）。一定期間が経過していない場合にはステップＳ１１に戻り、一定期間が経過した場合にはステップＳ１３に進む。
【００６６】
演算回路１０５は、補正係数Ａの決定または前回の更新から一定期間が経過すると、運行経路上のキャリブレーション位置で、自動でキャリブレーションを行う（ステップＳ１３）。自動キャリブレーションでは、演算回路１０５は、外界センサの出力に基づく移動距離と、駆動輪１１１の回転速度に基づく移動距離（補正後の値）とが一致するように、補正係数Ａの再決定を行う。これは、一定期間が経過すると、駆動輪１１１の摩耗に伴い、一旦決定した補正係数Ａの更新の必要性が生じ得るからである。演算回路１０５は、補正係数Ａの更新を行う度に、補正係数Ａの更新後の値と初期値との差が閾値を超えるか否かを判定する（ステップＳ１４）。Ａの更新後の値と初期値との差が閾値を超える場合（たとえば、変化率が３０％以上になった場合など）には、駆動輪１１１の摩耗が、補正では対処できないほどに進行したと判断される。その場合、演算回路１０５は、移動体１０に搭載された表示装置または外部の装置（管理装置、端末装置、またはクラウド上のサーバ装置など）に、駆動輪１１１の摩耗の進行を通知する（ステップＳ１５）。これにより、ユーザまたは管理者は、駆動輪１１１の交換作業を速やかに開始することができる。
【００６７】
図７Ｂは、摩耗判定の動作の他の例を示すフローチャートである。この例では、まず第１位置推定装置１０３は、外界センサ１０１からセンサデータを周期的に取得する（ステップＳ１０１）。第１位置推定装置１０３は、このセンサデータに基づき、前述の方法で、移動体の位置を推定し、第１位置情報を生成する（ステップＳ１０２）。他方、第２位置推定装置１０９は、駆動輪の回転速度の計測値または推定値に基づき、移動体１０の位置を推定し、第２位置情報を生成する（ステップＳ１０３）。なお、ステップＳ１０３はステップＳ１０２の前に行われてもよい。次に、演算回路１０５は、第１位置情報に基づいて計算される変位と、第２位置情報に基づいて計算される変位との差を計算する（ステップＳ１０４）。計算方法は、たとえば前述のいずれかの方法が用いられ得る。演算回路１０５は、計算した変位差が閾値を超えるか否かを判定する（ステップＳ１０５）。判定がＹｅｓの場合、演算回路１０５は、通信回路１０４を介して、他の装置（たとえば管理装置５０）に、駆動輪１１１の摩耗が進行していること通知する（ステップＳ１０６）。この通知は、駆動輪１１１の交換時期または交換すべき旨を示す情報を含んでいてもよい。ステップＳ１０５の判定がＮｏの場合、管理装置５０などの他の装置に、駆動輪が正常であることを通知する（ステップＳ１０７）。この通知には、あとどの程度の期間で駆動輪１１１を交換すべきかを示す情報が含まれていてもよい。ステップＳ１０５においては、複数の閾値が設定されてもよい。複数の閾値と比較することにより、駆動輪１１１の摩耗の程度を段階的に判定できる。
【００６８】
以下、移動体および移動体システムのより具体的な例を説明する。以下の説明では、移動体が無人搬送車であるものとし、無人搬送車を「ＡＧＶ」と記述する。ＡＧＶについても参照符号「１０」を付して、「ＡＧＶ１０」と表記する。なお、以下の説明は、矛盾がない限り、ＡＧＶ以外の移動体、たとえば複数の駆動輪を有するロボットまたは有人の車両などにも同様に適用することができる。
【００６９】
（１）システムの基本構成
図８は、本開示による例示的な移動体管理システム１００の基本構成例を示している。移動体管理システム１００は、少なくとも１台のＡＧＶ１０と、ＡＧＶ１０の運行管理を行う運行管理装置５０とを含む。図８には、ユーザ１によって操作される端末装置２０も記載されている。
【００７０】
ＡＧＶ１０は、走行に磁気テープなどの誘導体が不要な「ガイドレス式」走行が可能な無人搬送台車である。ＡＧＶ１０は、自己位置推定を行い、推定の結果を端末装置２０および運行管理装置５０に送信することができる。ＡＧＶ１０は、運行管理装置５０からの指令に従って移動空間Ｓ内を自動走行することが可能である。
【００７１】
運行管理装置５０は各ＡＧＶ１０の位置をトラッキングし、各ＡＧＶ１０の走行を管理するコンピュータシステムである。運行管理装置５０は、デスクトップ型ＰＣ、ノート型ＰＣ、および／または、サーバコンピュータであり得る。運行管理装置５０は、複数のアクセスポイント２を介して、各ＡＧＶ１０と通信する。たとえば、運行管理装置５０は、各ＡＧＶ１０が次に向かうべき位置の座標のデータを各ＡＧＶ１０に送信する。各ＡＧＶ１０は、定期的に、たとえば１００ミリ秒ごとに自身の位置および姿勢（orientation）を示すデータを運行管理装置５０に送信する。指示した位置にＡＧＶ１０が到達すると、運行管理装置５０は、さらに次に向かうべき位置の座標のデータを送信する。ＡＧＶ１０は、端末装置２０に入力されたユーザ１の操作に応じて移動空間Ｓ内を走行することも可能である。端末装置２０の一例はタブレットコンピュータである。典型的には、端末装置２０を利用したＡＧＶ１０の走行は地図作成時に行われ、運行管理装置５０を利用したＡＧＶ１０の走行は地図作成後に行われる。
【００７２】
図９は、３台のＡＧＶ１０ａ、１０ｂおよび１０ｃが存在する移動空間Ｓの一例を示している。いずれのＡＧＶも図中の奥行き方向に走行しているとする。ＡＧＶ１０ａおよび１０ｂは天板に載置された荷物を搬送中である。ＡＧＶ１０ｃは、前方のＡＧＶ１０ｂに追従して走行している。なお、説明の便宜のため、図９では参照符号１０ａ、１０ｂおよび１０ｃを付したが、以下では、「ＡＧＶ１０」と記述する。
【００７３】
ＡＧＶ１０は、天板に載置された荷物を搬送する方法以外に、自身と接続された牽引台車を利用して荷物を搬送することも可能である。図１０Ａは接続される前のＡＧＶ１０および牽引台車５を示している。牽引台車５の各足にはキャスターが設けられている。ＡＧＶ１０は牽引台車５と機械的に接続される。図１０Ｂは、接続されたＡＧＶ１０および牽引台車５を示している。ＡＧＶ１０が走行すると、牽引台車５はＡＧＶ１０に牽引される。牽引台車５を牽引することにより、ＡＧＶ１０は、牽引台車５に載置された荷物を搬送できる。
【００７４】
ＡＧＶ１０と牽引台車５との接続方法は任意である。ここでは一例を説明する。ＡＧＶ１０の天板にはプレート６が固定されている。牽引台車５には、スリットを有するガイド７が設けられている。ＡＧＶ１０は牽引台車５に接近し、プレート６をガイド７のスリットに差し込む。差し込みが完了すると、ＡＧＶ１０は、図示されない電磁ロック式ピンをプレート６およびガイド７に貫通させ、電磁ロックをかける。これにより、ＡＧＶ１０と牽引台車５とが物理的に接続される。
【００７５】
再び図８を参照する。各ＡＧＶ１０と端末装置２０とは、たとえば１対１で接続されてＢｌｕｅｔｏｏｔｈ（登録商標）規格に準拠した通信を行うことができる。各ＡＧＶ１０と端末装置２０とは、１または複数のアクセスポイント２を利用してＷｉ−Ｆｉ（登録商標）に準拠した通信を行うこともできる。複数のアクセスポイント２は、たとえばスイッチングハブ３を介して互いに接続されている。図８には２台のアクセスポイント２ａ、２ｂが記載されている。ＡＧＶ１０はアクセスポイント２ａと無線で接続されている。端末装置２０はアクセスポイント２ｂと無線で接続されている。ＡＧＶ１０が送信したデータはアクセスポイント２ａで受信され、スイッチングハブ３を介してアクセスポイント２ｂに転送され、アクセスポイント２ｂから端末装置２０に送信される。また、端末装置２０が送信したデータは、アクセスポイント２ｂで受信され、スイッチングハブ３を介してアクセスポイント２ａに転送され、アクセスポイント２ａからＡＧＶ１０に送信される。これにより、ＡＧＶ１０および端末装置２０の間の双方向通信が実現される。複数のアクセスポイント２はスイッチングハブ３を介して運行管理装置５０とも接続されている。これにより、運行管理装置５０と各ＡＧＶ１０との間でも双方向通信が実現される。
【００７６】
（２）環境地図の作成
自己位置を推定しながらＡＧＶ１０が走行できるようにするため、移動空間Ｓ内の地図が作成される。ＡＧＶ１０には位置推定装置およびレーザレンジファインダが搭載されており、レーザレンジファインダの出力を利用して地図を作成できる。
【００７７】
ＡＧＶ１０は、ユーザの操作によってデータ取得モードに遷移する。データ取得モードにおいて、ＡＧＶ１０はレーザレンジファインダを用いたセンサデータの取得を開始する。レーザレンジファインダは周期的にたとえば赤外線または可視光のレーザビームを周囲に放射して周囲の空間Ｓをスキャンする。レーザビームは、たとえば、壁、柱等の構造物、床の上に置かれた物体等の表面で反射される。レーザレンジファインダは、レーザビームの反射光を受けて各反射点までの距離を計算し、各反射点の位置が示された測定結果のデータを出力する。各反射点の位置には、反射光の到来方向および距離が反映されている。測定結果のデータは「計測データ」または「センサデータ」と呼ばれることがある。
【００７８】
位置推定装置は、センサデータを記憶装置に蓄積する。移動空間Ｓ内のセンサデータの取得が完了すると、記憶装置に蓄積されたセンサデータが外部装置に送信される。外部装置は、たとえば信号処理プロセッサを有し、かつ、地図作成プログラムがインストールされたコンピュータである。
【００７９】
外部装置の信号処理プロセッサは、スキャンごとに得られたセンサデータ同士を重ね合わせる。信号処理プロセッサが重ね合わせる処理を繰り返し行うことにより、空間Ｓの地図を作成することができる。外部装置は、作成した地図のデータをＡＧＶ１０に送信する。ＡＧＶ１０は、作成した地図のデータを内部の記憶装置に保存する。外部装置は、運行管理装置５０であってもよいし、他の装置であってもよい。
【００８０】
外部装置ではなくＡＧＶ１０が地図の作成を行ってもよい。上述した外部装置の信号処理プロセッサが行った処理を、ＡＧＶ１０のマイクロコントローラユニット（マイコン）などの回路が行えばよい。ＡＧＶ１０内で地図を作成する場合には、蓄積されたセンサデータを外部装置に送信する必要が無くなる。センサデータのデータ容量は一般には大きいと考えられる。センサデータを外部装置に送信する必要がないため、通信回線の占有を回避できる。
【００８１】
なお、センサデータを取得するための移動空間Ｓ内の移動は、ユーザの操作に従ってＡＧＶ１０が走行することによって実現し得る。たとえば、ＡＧＶ１０は、端末装置２０を介して無線でユーザから前後左右の各方向への移動を指示する走行指令を受け取る。ＡＧＶ１０は走行指令にしたがって移動空間Ｓ内を前後左右に走行し、地図を作成する。ＡＧＶ１０がジョイスティック等の操縦装置と有線で接続されている場合には、当該操縦装置からの制御信号にしたがって移動空間Ｓ内を前後左右に走行し、地図を作成してもよい。レーザレンジファインダを搭載した計測台車を人が押し歩くことによってセンサデータを取得してもよい。
【００８２】
なお、図８および図９には複数台のＡＧＶ１０が示されているが、ＡＧＶは１台であってもよい。複数台のＡＧＶ１０が存在する場合、ユーザ１は端末装置２０を利用して、登録された複数のＡＧＶのうちから一台のＡＧＶ１０を選択して、移動空間Ｓの地図を作成させることができる。
【００８３】
地図が作成されると、以後、各ＡＧＶ１０は当該地図を利用して自己位置を推定しながら自動走行することができる。自己位置を推定する処理の説明は後述する。
【００８４】
（３）ＡＧＶの構成
図１１は、本実施形態にかかる例示的なＡＧＶ１０の外観図である。ＡＧＶ１０は、２つの駆動輪１１ａおよび１１ｂと、４つのキャスター１１ｃ、１１ｄ、１１ｅおよび１１ｆと、フレーム１２と、搬送テーブル１３と、走行制御装置１４と、レーザレンジファインダ１５とを有する。２つの駆動輪１１ａおよび１１ｂは、ＡＧＶ１０の右側および左側にそれぞれ設けられている。４つのキャスター１１ｃ、１１ｄ、１１ｅおよび１１ｆは、ＡＧＶ１０の４隅に配置されている。なお、ＡＧＶ１０は、２つの駆動輪１１ａおよび１１ｂに接続される複数のモータも有するが、複数のモータは図１４には示されていない。また、図１４には、ＡＧＶ１０の右側に位置する１つの駆動輪１１ａおよび２つのキャスター１１ｃおよび１１ｅと、左後部に位置するキャスター１１ｆとが示されているが、左側の駆動輪１１ｂおよび左前部のキャスター１１ｄはフレーム１２の蔭に隠れているため明示されていない。４つのキャスター１１ｃ、１１ｄ、１１ｅおよび１１ｆは、自由に旋回することができる。以下の説明では、駆動輪１１ａおよび駆動輪１１ｂを、それぞれ車輪１１ａおよび車輪１１ｂとも称する。
【００８５】
ＡＧＶ１０は、さらに、障害物を検知するための少なくとも１つの障害物センサ１９を備えている。図１１の例では、フレーム１２の４隅に４つの障害物センサ１９が設けられている。障害物センサ１９の個数および配置は、図１１の例とは異なっていてもよい。障害物センサ１９は、たとえば、赤外線センサ、超音波センサ、またはステレオカメラなどの、距離計測が可能な装置であり得る。障害物センサ１９が赤外線センサである場合、たとえば一定時間ごとに赤外線を出射し、反射された赤外線が戻ってくるまでの時間を計測することにより、一定距離以内に存在する障害物を検知することができる。ＡＧＶ１０は、少なくとも１つの障害物センサ１９から出力された信号に基づいて経路上の障害物を検知したとき、その障害物を回避する動作を行ってもよい。
【００８６】
走行制御装置１４は、ＡＧＶ１０の動作を制御する装置であり、主としてマイコン（後述）を含む集積回路、電子部品およびそれらが搭載された基板を含む。走行制御装置１４は、上述した端末装置２０とのデータの送受信、および、前処理演算を行う。
【００８７】
レーザレンジファインダ１５は、たとえば赤外線または可視光のレーザビーム１５ａを放射し、当該レーザビーム１５ａの反射光を検出することにより、反射点までの距離を測定する光学機器である。本実施形態では、ＡＧＶ１０のレーザレンジファインダ１５は、たとえばＡＧＶ１０の正面を基準として左右１３５度（合計２７０度）の範囲の空間に、０．２５度ごとに方向を変化させながらパルス状のレーザビーム１５ａを放射し、各レーザビーム１５ａの反射光を検出する。これにより、０．２５度ごと、合計１０８１ステップ分の角度で決まる方向における反射点までの距離のデータを得ることができる。なお、本実施形態では、レーザレンジファインダ１５が行う周囲の空間のスキャンは実質的に床面に平行であり、平面的（二次元的）である。しかしながら、レーザレンジファインダ１５は高さ方向のスキャンを行ってもよい。
【００８８】
ＡＧＶ１０の位置および姿勢（向き）と、レーザレンジファインダ１５のスキャン結果とにより、ＡＧＶ１０は、空間Ｓの地図を作成することができる。地図には、ＡＧＶの周囲の壁、柱等の構造物、床の上に載置された物体の配置が反映され得る。地図のデータは、ＡＧＶ１０内に設けられた記憶装置に格納される。
【００８９】
一般に、移動体の位置および姿勢は、ポーズ（ｐｏｓｅ）と呼ばれる。二次元面内における移動体の位置および姿勢は、ＸＹ直交座標系における位置座標（ｘ, ｙ）と、Ｘ軸に対する角度θによって表現される。ＡＧＶ１０の位置および姿勢、すなわちポーズ（ｘ, ｙ, θ）を、以下、単に「位置」と呼ぶことがある。
【００９０】
レーザビーム１５ａの放射位置から見た反射点の位置は、角度および距離によって決定される極座標を用いて表現され得る。本実施形態では、レーザレンジファインダ１５は極座標で表現されたセンサデータを出力する。ただし、レーザレンジファインダ１５は、極座標で表現された位置を直交座標に変換して出力してもよい。
【００９１】
レーザレンジファインダの構造および動作原理は公知であるため、本明細書ではこれ以上の詳細な説明は省略する。レーザレンジファインダ１５によって検出され得る物体の例は、人、荷物、棚、壁である。
【００９２】
レーザレンジファインダ１５は、周囲の空間をセンシングしてセンサデータを取得するための外界センサの一例である。そのような外界センサの他の例としては、イメージセンサおよび超音波センサが考えられる。
【００９３】
走行制御装置１４は、レーザレンジファインダ１５の測定結果と、自身が保持する地図データとを比較して、自身の現在位置を推定することができる。なお、保持されている地図データは、他のＡＧＶ１０が作成した地図データであってもよい。
【００９４】
図１２Ａは、ＡＧＶ１０の第１のハードウェア構成例を示している。また図１２Ａは、走行制御装置１４の具体的な構成も示している。
【００９５】
ＡＧＶ１０は、走行制御装置１４と、レーザレンジファインダ１５と、２台のモータ１６ａおよび１６ｂと、駆動装置１７と、車輪１１ａおよび１１ｂと、２つのロータリエンコーダ１８ａおよび１８ｂとを備えている。
【００９６】
走行制御装置１４は、マイコン１４ａと、メモリ１４ｂと、記憶装置１４ｃと、通信回路１４ｄと、位置推定装置１４ｅとを有している。マイコン１４ａ、メモリ１４ｂ、記憶装置１４ｃ、通信回路１４ｄおよび位置推定装置１４ｅは通信バス１４ｆで接続されており、相互にデータを授受することが可能である。レーザレンジファインダ１５もまた通信インタフェース（図示せず）を介して通信バス１４ｆに接続されており、計測結果である計測データを、マイコン１４ａ、位置推定装置１４ｅおよび／またはメモリ１４ｂに送信する。マイコン１４ａは、図１に示す演算回路１０５および第２位置推定装置１０９としての機能を有する。
【００９７】
マイコン１４ａは、走行制御装置１４を含むＡＧＶ１０の全体を制御するための演算を行うプロセッサまたは制御回路（コンピュータ）である。典型的にはマイコン１４ａは半導体集積回路である。マイコン１４ａは、制御信号であるＰＷＭ（Ｐｕｌｓｅ  Ｗｉｄｔｈ  Ｍｏｄｕｌａｔｉｏｎ）信号を駆動装置１７に送信して駆動装置１７を制御し、モータに印加する電圧を調整させる。これによりモータ１６ａおよび１６ｂの各々が所望の回転速度で回転する。
【００９８】
左右のモータ１６ａおよび１６ｂの駆動を制御する１つ以上の制御回路（たとえばマイコン）を、マイコン１４ａとは独立して設けてもよい。たとえば、モータ駆動装置１７が、モータ１６ａおよび１６ｂの駆動をそれぞれ制御する２つのマイコンを備えていてもよい。それらの２つのマイコンは、エンコーダ１８ａおよび１８ｂから出力されたエンコーダ情報を用いた座標計算をそれぞれ行い、所与の初期位置からのＡＧＶ１０の移動距離を推定してもよい。また、当該２つのマイコンは、エンコーダ情報を利用してモータ駆動回路１７ａおよび１７ｂを制御してもよい。その場合、モータ駆動装置１７における２つのマイコンが「第２位置推定装置」として機能する。
【００９９】
メモリ１４ｂは、マイコン１４ａが実行するコンピュータプログラムを記憶する、揮発性の記憶装置である。メモリ１４ｂは、マイコン１４ａおよび位置推定装置１４ｅが演算を行う際のワークメモリとしても利用され得る。
【０１００】
記憶装置１４ｃは、不揮発性の半導体メモリ装置である。ただし、記憶装置１４ｃは、ハードディスクに代表される磁気記録媒体、または、光ディスクに代表される光学式記録媒体であってもよい。さらに、記憶装置１４ｃは、いずれかの記録媒体にデータを書き込みおよび／または読み出すためのヘッド装置および当該ヘッド装置の制御装置を含んでもよい。
【０１０１】
記憶装置１４ｃは、走行する空間Ｓの地図データＭ、および、１または複数の走行経路のデータ（走行経路データ）Ｒを記憶する。地図データＭは、ＡＧＶ１０が地図作成モードで動作することによって作成され記憶装置１４ｃに記憶される。走行経路データＲは、地図データＭが作成された後に外部から送信される。本実施形態では、地図データＭおよび走行経路データＲは同じ記憶装置１４ｃに記憶されているが、異なる記憶装置に記憶されてもよい。
【０１０２】
走行経路データＲの例を説明する。
【０１０３】
端末装置２０がタブレットコンピュータである場合には、ＡＧＶ１０はタブレットコンピュータから走行経路を示す走行経路データＲを受信する。このときの走行経路データＲは、複数のマーカの位置を示すマーカデータを含む。「マーカ」は走行するＡＧＶ１０の通過位置（経由点）を示す。走行経路データＲは、走行開始位置を示す開始マーカおよび走行終了位置を示す終了マーカの位置情報を少なくとも含む。走行経路データＲは、さらに、１以上の中間経由点のマーカの位置情報を含んでもよい。走行経路が１以上の中間経由点を含む場合には、開始マーカから、当該走行経由点を順に経由して終了マーカに至る経路が、走行経路として定義される。各マーカのデータは、そのマーカの座標データに加えて、次のマーカに移動するまでのＡＧＶ１０の向き（角度）および走行速度のデータを含み得る。ＡＧＶ１０が各マーカの位置で一旦停止し、自己位置推定および端末装置２０への通知などを行う場合には、各マーカのデータは、当該走行速度に達するまでの加速に要する加速時間、および／または、当該走行速度から次のマーカの位置で停止するまでの減速に要する減速時間のデータを含み得る。
【０１０４】
端末装置２０ではなく運行管理装置５０（たとえば、ＰＣおよび／またはサーバコンピュータ）がＡＧＶ１０の移動を制御してもよい。その場合には、運行管理装置５０は、ＡＧＶ１０がマーカに到達する度に、次のマーカへの移動をＡＧＶ１０に指示してもよい。たとえば、ＡＧＶ１０は、運行管理装置５０から、次に向かうべき目的位置の座標データ、または、当該目的位置までの距離および進むべき角度のデータを、走行経路を示す走行経路データＲとして受信する。
【０１０５】
ＡＧＶ１０は、作成された地図と走行中に取得されたレーザレンジファインダ１５が出力したセンサデータとを利用して自己位置を推定しながら、記憶された走行経路に沿って走行することができる。
【０１０６】
通信回路１４ｄは、たとえば、Ｂｌｕｅｔｏｏｔｈ（登録商標）および／またはＷｉ−Ｆｉ（登録商標）規格に準拠した無線通信を行う無線通信回路である。いずれの規格も、２．４ＧＨｚ帯の周波数を利用した無線通信規格を含む。たとえばＡＧＶ１０を走行させて地図を作成するモードでは、通信回路１４ｄは、Ｂｌｕｅｔｏｏｔｈ（登録商標）規格に準拠した無線通信を行い、１対１で端末装置２０と通信する。
【０１０７】
位置推定装置１４ｅは、地図の作成処理、および、走行時には自己位置の推定処理を行う。位置推定装置１４ｅは、ＡＧＶ１０の位置および姿勢とレーザレンジファインダのスキャン結果とにより、移動空間Ｓの地図を作成する。走行時には、位置推定装置１４ｅは、レーザレンジファインダ１５からセンサデータを受け取り、また、記憶装置１４ｃに記憶された地図データＭを読み出す。レーザレンジファインダ１５のスキャン結果から作成された局所的地図データ(センサデータ)を、より広範囲の地図データＭとのマッチングを行うことにより、地図データＭ上における自己位置（ｘ, ｙ, θ）を同定する。位置推定装置１４ｅは、局所的地図データが地図データＭに一致した程度を表す「信頼度」のデータを生成する。自己位置（ｘ, ｙ, θ）、および、信頼度の各データは、ＡＧＶ１０から端末装置２０または運行管理装置５０に送信され得る。端末装置２０または運行管理装置５０は、自己位置（ｘ, ｙ, θ）、および、信頼度の各データを受信して、内蔵または接続された表示装置に表示することができる。
【０１０８】
本実施形態では、マイコン１４ａと位置推定装置１４ｅとは別個の構成要素であるとしているが、これは一例である。マイコン１４ａおよび位置推定装置１４ｅの各動作を独立して行うことが可能な１つのチップ回路または半導体集積回路であってもよい。図１５Ａには、マイコン１４ａおよび位置推定装置１４ｅを包括するチップ回路１４ｇが示されている。以下では、マイコン１４ａおよび位置推定装置１４ｅが別個独立に設けられている例を説明する。
【０１０９】
２台のモータ１６ａおよび１６ｂは、それぞれ２つの車輪１１ａおよび１１ｂに取り付けられ、各車輪を回転させる。つまり、２つの車輪１１ａおよび１１ｂはそれぞれ駆動輪である。本実施形態では、モータ１６ａおよびモータ１６ｂは、それぞれＡＧＶ１０の右輪および左輪を駆動する。
【０１１０】
移動体１０は、さらに、車輪１１ａおよび１１ｂの回転位置または回転速度を測定するエンコーダユニット１８をさらに備えている。エンコーダユニット１８は、第１ロータリエンコーダ１８ａおよび第２ロータリエンコーダ１８ｂを含む。第１ロータリエンコーダ１８ａは、モータ１６ａから車輪１１ａまでの動力伝達機構のいずれかの位置における回転を計測する。第２ロータリエンコーダ１８ｂは、モータ１６ｂから車輪１１ｂまでの動力伝達機構のいずれかの位置における回転を計測する。エンコーダユニット１８は、ロータリエンコーダ１８ａおよび１８ｂによって取得された信号を、マイコン１４ａに送信する。マイコン１４ａは、位置推定装置１４ｅから受信した信号だけでなく、エンコーダユニット１８から受信した信号を利用して、移動体１０の移動を制御してもよい。
【０１１１】
駆動装置１７は、２台のモータ１６ａおよび１６ｂの各々に印加される電圧を調整するためのモータ駆動回路１７ａおよび１７ｂを有する。モータ駆動回路１７ａおよび１７ｂの各々はいわゆるインバータ回路を含む。モータ駆動回路１７ａおよび１７ｂは、マイコン１４ａまたはモータ駆動回路１７ａ内のマイコンから送信されたＰＷＭ信号によって各モータに流れる電流をオンまたはオフし、それによりモータに印加される電圧を調整する。
【０１１２】
図１２Ｂは、ＡＧＶ１０の第２のハードウェア構成例を示している。第２のハードウェア構成例は、レーザ測位システム１４ｈを有する点、および、マイコン１４ａが各構成要素と１対１で接続されている点において、第１のハードウェア構成例（図１２Ａ）と相違する。
【０１１３】
レーザ測位システム１４ｈは、位置推定装置１４ｅおよびレーザレンジファインダ１５を有する。位置推定装置１４ｅおよびレーザレンジファインダ１５は、たとえばイーサネット（登録商標）ケーブルで接続されている。位置推定装置１４ｅおよびレーザレンジファインダ１５の各動作は上述した通りである。レーザ測位システム１４ｈは、ＡＧＶ１０のポーズ（ｘ, ｙ, θ）を示す情報をマイコン１４ａに出力する。
【０１１４】
マイコン１４ａは、種々の汎用Ｉ／Ｏインタフェースまたは汎用入出力ポート（図示せず）を有している。マイコン１４ａは、通信回路１４ｄ、レーザ測位システム１４ｈ等の、走行制御装置１４内の他の構成要素と、当該汎用入出力ポートを介して直接接続されている。
【０１１５】
図１２Ｂに関して上述した構成以外は、図１２Ａの構成と共通である。よって共通の構成の説明は省略する。
【０１１６】
本開示の実施形態におけるＡＧＶ１０は、図示されていないバンパースイッチなどのセーフティセンサを備えていてもよい。ＡＧＶ１０は、ジャイロセンサなどの慣性計測装置を備えていてもよい。ロータリエンコーダ１８ａ、１８ｂまたは慣性計測装置などの内界センサによる測定データを利用すれば、ＡＧＶ１０の移動距離および姿勢の変化量(角度)を推定することができる。これらの距離および角度の推定値は、オドメトリデータまたはオドメトリ情報と呼ばれ、位置推定装置１４ｅによって得られる位置および姿勢の情報を補助する機能を発揮し得る。オドメトリデータは、位置推定装置１４ｅによって得られる位置および姿勢の推定値の信頼性が低い場合、または地図の切り替え動作を行うときなどに使用される。
【０１１７】
本実施形態では、図１から図７を参照して説明した駆動輪の摩耗判定処理およびオドメトリデータの補正処理が行われる。このため、より正確なオドメトリデータを生成することができる。
【０１１８】
（４）地図データ
図１３Ａ〜図１３Ｆは、センサデータを取得しながら移動するＡＧＶ１０を模式的に示す。ユーザ１は、端末装置２０を操作しながらマニュアルでＡＧＶ１０を移動させてもよい。あるいは、図１２Ａおよび６Ｂに示される走行制御装置１４を備えるユニット、または、ＡＧＶ１０そのものを台車に載置し、台車をユーザ１が手で押す、または牽くことによってセンサデータを取得してもよい。
【０１１９】
図１３Ａには、レーザレンジファインダ１５を用いて周囲の空間をスキャンするＡＧＶ１０が示されている。所定のステップ角毎にレーザビームが放射され、スキャンが行われる。なお、図示されたスキャン範囲は模式的に示した例であり、上述した合計２７０度のスキャン範囲とは異なっている。
【０１２０】
図１３Ａ〜図１３Ｆの各々では、レーザビームの反射点の位置が、記号「・」で表される複数の黒点４を用いて模式的に示されている。レーザビームのスキャンは、レーザレンジファインダ１５の位置および姿勢が変化する間に短い周期で実行される。このため、現実の反射点の個数は、図示されている反射点４の個数よも遥かに多い。位置推定装置１４ｅは、走行に伴って得られる黒点４の位置を、たとえばメモリ１４ｂに蓄積する。ＡＧＶ１０が走行しながらスキャンを継続して行うことにより、地図データが徐々に完成されてゆく。図１３Ｂから図１３Ｅでは、簡略化のためスキャン範囲のみが示されている。当該スキャン範囲は例示であり、上述した合計２７０度の例とは異なる。
【０１２１】
地図は、地図作成に必要な量のセンサデータを取得した後、そのセンサデータに基づいて、このＡＧＶ１０内のマイコン１４ａまたは外部のコンピュータを用いて作成してもよい。あるいは、移動しつつあるＡＧＶ１０が取得したセンサデータに基づいてリアルタイムで地図を作成してもよい。
【０１２２】
図１３Ｆは、完成した地図８０の一部を模式的に示す。図１３Ｆに示される地図では、レーザビームの反射点の集まりに相当する点群(Point Cloud)によって自由空間が仕切られている。地図の他の例は、物体が占有している空間と自由空間とをグリッド単位で区別する占有格子地図である。位置推定装置１４ｅは、地図のデータ（地図データＭ）をメモリ１４ｂまたは記憶装置１４ｃに蓄積する。なお図示されている黒点の数または密度は一例である。
【０１２３】
こうして得られた地図データは、複数のＡＧＶ１０によって共有され得る。
【０１２４】
ＡＧＶ１０が地図データに基づいて自己位置を推定するアルゴリズムの典型例は、ＩＣＰ(Iterative Closest Point)マッチングである。前述したように、レーザレンジファインダ１５のスキャン結果から作成された局所的地図データ(センサデータ)を、より広範囲の地図データＭとのマッチングを行うことにより、地図データＭ上における自己位置（ｘ, ｙ, θ）を推定することができる。
【０１２５】
ＡＧＶ１０が走行するエリアが広い場合、地図データＭのデータ量が多くなる。そのため、地図の作成時間が増大したり、自己位置推定に多大な時間を要するなどの不都合が生じる可能性がある。そのような不都合が生じる場合には、地図データＭを、複数の部分地図のデータに分けて作成および記録してもよい。
【０１２６】
図１４は、４つの部分地図データＭ１、Ｍ２、Ｍ３、Ｍ４の組み合わせによって１つの工場の１フロアの全域がカバーされる例を示している。この例では、１つの部分地図データは５０ｍ×５０ｍの領域をカバーしている。Ｘ方向およびＹ方向のそれぞれにおいて隣接する２つの地図の境界部分に、幅５ｍの矩形の重複領域が設けられている。この重複領域を「地図切替エリア」と呼ぶ。１つの部分地図を参照しながら走行しているＡＧＶ１０が地図切替エリアに到達すると、隣接する他の部分地図を参照する走行に切り替える。部分地図の枚数は４枚に限らず、ＡＧＶ１０が走行するフロアの面積、地図作成および自己位置推定を実行するコンピュータの性能に応じて適宜設定してよい。部分地図データのサイズおよび重複領域の幅も、上記の例に限定されず、任意に設定してよい。
【０１２７】
（５）運行管理装置の構成例
図１５は、運行管理装置５０のハードウェア構成例を示している。運行管理装置５０は、ＣＰＵ５１と、メモリ５２と、位置データベース（位置ＤＢ）５３と、通信回路５４と、地図データベース（地図ＤＢ）５５と、画像処理回路５６とを有する。
【０１２８】
ＣＰＵ５１、メモリ５２、位置ＤＢ５３、通信回路５４、地図ＤＢ５５および画像処理回路５６は通信バス５７で接続されており、相互にデータを授受することが可能である。
【０１２９】
ＣＰＵ５１は、運行管理装置５０の動作を制御する信号処理回路（コンピュータ）である。典型的にはＣＰＵ５１は半導体集積回路である。ＣＰＵ５１は、図１に示す第１制御回路５１として機能する。
【０１３０】
メモリ５２は、ＣＰＵ５１が実行するコンピュータプログラムを記憶する、揮発性の記憶装置である。メモリ５２は、ＣＰＵ５１が演算を行う際のワークメモリとしても利用され得る。
【０１３１】
位置ＤＢ５３は、各ＡＧＶ１０の行き先となり得る各位置を示す位置データを格納する。位置データは、たとえば管理者によって工場内に仮想的に設定された座標によって表され得る。位置データは管理者によって決定される。
【０１３２】
通信回路５４は、たとえばイーサネット（登録商標）規格に準拠した有線通信を行う。通信回路５４はアクセスポイント２(図１)と有線で接続されており、アクセスポイント２を介して、ＡＧＶ１０と通信することができる。通信回路５４は、ＡＧＶ１０に送信すべきデータを、バス５７を介してＣＰＵ５１から受信する。また通信回路５４は、ＡＧＶ１０から受信したデータ（通知）を、バス５７を介してＣＰＵ５１および／またはメモリ５２に送信する。
【０１３３】
地図ＤＢ５５は、ＡＧＶ１０が走行する工場等の内部の地図のデータを格納する。当該地図は、地図８０（図１３Ｆ）と同じであってもよいし、異なっていてもよい。各ＡＧＶ１０の位置と１対１で対応関係を有する地図であれば、データの形式は問わない。たとえば地図ＤＢ５５に格納される地図は、ＣＡＤによって作成された地図であってもよい。
【０１３４】
位置ＤＢ５３および地図ＤＢ５５は、不揮発性の半導体メモリ上に構築されてもよいし、ハードディスクに代表される磁気記録媒体、または光ディスクに代表される光学式記録媒体上に構築されてもよい。
【０１３５】
画像処理回路５６はモニタ５８に表示される映像のデータを生成する回路である。画像処理回路５６は、専ら、管理者が運行管理装置５０を操作する際に動作する。本実施形態では特にこれ以上の詳細な説明は省略する。なお、モニタ５９は運行管理装置５０と一体化されていてもよい。また画像処理回路５６の処理をＣＰＵ５１が行ってもよい。
【０１３６】
（６）運行管理装置の動作
図１６を参照しながら、運行管理装置５０の動作の概要を説明する。図１６は、運行管理装置５０によって決定されたＡＧＶ１０の移動経路の一例を模式的に示す図である。
【０１３７】
ＡＧＶ１０および運行管理装置５０の動作の概要は以下のとおりである。以下では、あるＡＧＶ１０が現在、地点（マーカ）Ｍ１におり、幾つかの位置を通過して、最終的な目的地であるマーカＭｎ＋１（ｎ：１以上の正の整数）まで走行する例を説明する。なお、位置ＤＢ５３にはマーカＭ１の次に通過すべきマーカＭ２、マーカＭ２の次に通過すべきマーカＭ３等の各位置を示す座標データが記録されている。
【０１３８】
運行管理装置５０のＣＰＵ５１は、位置ＤＢ５３を参照してマーカＭ２の座標データを読み出し、マーカＭ２に向かわせる走行指令を生成する。通信回路５４は、アクセスポイント２を介して走行指令をＡＧＶ１０に送信する。
【０１３９】
ＣＰＵ５１は、ＡＧＶ１０から、アクセスポイント２を介して、定期的に現在位置および姿勢を示すデータを受信する。こうして運行管理装置５０は、各ＡＧＶ１０の位置をトラッキングすることができる。ＣＰＵ５１は、ＡＧＶ１０の現在位置がマーカＭ２に一致したと判定すると、マーカＭ３の座標データを読み出し、マーカＭ３に向かわせる走行指令を生成してＡＧＶ１０に送信する。つまり運行管理装置５０は、ＡＧＶ１０がある位置に到達したと判定すると、次に通過すべき位置に向かわせる走行指令を送信する。これにより、ＡＧＶ１０は最終的な目的地であるマーカＭｎ＋１に到達することができる。
【０１４０】
上記の包括的または具体的な態様は、システム、方法、集積回路、コンピュータプログラム、または記録媒体によって実現されてもよい。あるいは、システム、装置、方法、集積回路、コンピュータプログラム、および記録媒体の任意の組み合わせによって実現されてもよい。
【産業上の利用可能性】
【０１４１】
本開示の移動体および移動体管理システムは、工場、倉庫、建設現場、物流、病院などで荷物、部品、完成品などの物の移動および搬送に好適に利用され得る。
【符号の説明】
【０１４２】
１  ユーザ
２ａ、２ｂ  アクセスポイント
１０  ＡＧＶ（移動体）
１４  走行制御装置
１４ａ  マイコン
１４ｂ  メモリ
１４ｃ  記憶装置
１４ｄ  通信回路
１４ｅ  位置推定装置
１６ａ、１６ｂ、１６ｃ、１６ｄ  モータ
１５  レーザレンジファインダ
１７  駆動装置
１７ａ、１７ｂ、１７ｃ、１７ｄ  モータ駆動回路
１８  エンコーダユニット
１８ａ、１８ｂ、１８ｃ、１８ｄ  ロータリエンコーダ
２０  端末装置
５０  運行管理装置
５１  ＣＰＵ（第１制御回路）
５２  メモリ
５３  位置データベース（位置ＤＢ）
５４  通信回路（第１通信回路）
５５  地図データベース（地図ＤＢ）
５６  画像処理回路
５８  モニタ
１０１  外界センサ
１０３  第１位置推定装置
１０４  通信回路
１０５  演算回路
１０６  モータ
１０７  駆動装置
１０８  ロータリエンコーダ
１０９  第２位置推定装置
１１１  駆動輪
１１３  記憶装置
【図１】
2019079171.tif 000004
【図２】
2019079171.tif 000005
【図３】
2019079171.tif 000006
【図４】
2019079171.tif 000007
【図５】
2019079171.tif 000008
【図６】
2019079171.tif 000009
【図７Ａ】
2019079171.tif 000010
【図７Ｂ】
2019079171.tif 000011
【図８】
2019079171.tif 000012
【図９】
2019079171.tif 000013
【図１０Ａ】
2019079171.tif 000014
【図１０Ｂ】
2019079171.tif 000015
【図１１】
2019079171.tif 000016
【図１２Ａ】
2019079171.tif 000017
【図１２Ｂ】
2019079171.tif 000018
【図１３Ａ】
2019079171.tif 000019
【図１３Ｂ】
2019079171.tif 000020
【図１３Ｃ】
2019079171.tif 000021
【図１３Ｄ】
2019079171.tif 000022
【図１３Ｅ】
2019079171.tif 000023
【図１３Ｆ】
2019079171.tif 000024
【図１４】
2019079171.tif 000025
【図１５】
2019079171.tif 000026
【図１６】
2019079171.tif 000027