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