(57)【要約】  棚配置システムは、周囲形状を測定するセンサ（２１０）と、地図データを記憶する記憶部とを有し、棚（１００）を搬送する少なくとも２台の搬送ロボット（２００）と、前記搬送ロボット（２００）の動作を規定する搬送データを送信する管理端末（３００）とを有し、前記搬送ロボット（２００）は、前記搬送データで指定された位置に移動した後、前記搬送データで指定された方向を前記センサ（２１０）で測定し、壁面に対する角度が調整されている他の搬送ロボット（２００）の幾何形状に基づいて前記棚（１００）の位置及び角度を調整する。
2017090108.tif 000002
【特許請求の範囲】
【請求項１】
周囲形状を測定するセンサと、地図データを記憶する記憶部とを有し、棚を搬送する少なくとも２台の搬送ロボットと、  前記搬送ロボットの動作を規定する搬送データを送信する管理端末と、  を有し、  前記搬送ロボットは、前記搬送データで指定された位置に移動した後、前記搬送データで指定された方向を前記センサで測定し、壁面に対する角度が調整されている他の搬送ロボットの幾何形状に基づいて前記棚の位置及び角度を調整する  ことを特徴とする棚配置システム。
【請求項２】
請求項１に記載の棚配置システムにおいて、  前記搬送ロボットは、前記搬送データにおいて前記棚の配置後の移動先が指定されていない場合、新たな前記搬送データを受信するまで前記棚を配置した場所に停止する  ことを特徴とする棚配置システム。
【請求項３】
請求項２に記載の棚配置システムにおいて、  前記搬送ロボットは、他の前記搬送ロボットによる列の最後尾への前記棚の配置が終了した後、前記搬送データで指定された次列の搬送位置に対応する現列内の位置に移動する  ことを特徴とする棚配置システム。
【請求項４】
請求項１に記載の棚配置システムにおいて、  前記搬送ロボットは、前記棚を載置する荷役プレートを装置本体に対して旋回させることにより又は装置本体の旋回により前記棚の角度を調整する  ことを特徴とする棚配置システム。
【請求項５】
請求項１に記載の棚配置システムにおいて、  前記搬送ロボットは、前記センサで測定された棚足に相当するデータ点の分布に基づいて前記棚と自車との相対的な位置及び角度を調整する  ことを特徴とする棚配置システム。
【請求項６】
請求項１に記載の棚配置システムにおいて、  前記搬送ロボットは、装置本体の上面に設置したカメラによって前記棚の底面に配置されているマーカを撮像し、撮像された画像に基づいて前記棚と自車との相対的な位置及び角度を調整する  ことを特徴とする棚配置システム。
【請求項７】
請求項１に記載の棚配置システムにおいて、  前記搬送ロボットは、搬送用の前記棚が用意される棚取得先座標の近傍に配置されたランドマーク又は幾何形状を前記センサで測定して自車の現在位置を補正する  ことを特徴とする棚配置システム。
【請求項８】
請求項１に記載の棚配置システムにおいて、  前記搬送ロボットは、前記搬送データで指定された任意の位置に自車のみで移動し、移動先の周辺形状を測定して前記棚の位置及び角度を調整する  ことを特徴とする棚配置システム。
【請求項９】
請求項１に記載の棚配置システムにおいて、  前記搬送ロボットは、  前記棚を装置本体に対して上げ下げする荷役プレートと、  前記センサからセンサデータを入力して自車の周囲形状を測定するセンシング部と、  既に配置が完了した前記棚の棚足形状データと停止中の前記搬送ロボットの形状データとを前記地図データに追加し、最新の状態に更新する地図更新部と、  前記管理端末から受信した前記搬送データに基づいて自車の動作を制御する移動制御部と  を更に有することを特徴とする棚配置システム。
【請求項１０】
請求項１に記載の棚配置システムにおいて、  前記管理端末は、  現場の地図データと、棚レイアウトデータとを記憶する記憶部と、  前記棚の設置順序と前記棚の設置時に参照する前記幾何形状の存在する方向を決定する棚配送プランニング部と、  前記搬送データを作成する搬送データ作成部と、  前記搬送ロボットとの間でデータを送受信するデータ送受信部と  を有することを特徴とする棚配置システム。
【請求項１１】
周囲形状を測定するセンサと、  地図データを記憶する記憶部と、  受信した搬送データで指定された位置に自車を移動させた後、前記搬送データで指定された方向を前記センサで測定し、壁面に対する角度が調整されている他の搬送ロボットの幾何形状に基づいて棚の位置及び角度を調整する移動制御部と  有する搬送ロボット。
【請求項１２】
請求項１１に記載の搬送ロボットにおいて、  前記移動制御部は、前記棚を装置本体に対して上げ下げする荷役プレートを装置本体に対して旋回させることにより又は装置本体自体を旋回させることにより前記棚の角度を調整する  ことを特徴とする搬送ロボット。
【請求項１３】
請求項１１に記載の搬送ロボットにおいて、  前記移動制御部は、前記センサで測定された棚足に相当するデータ点の分布に基づいて前記棚と自車との相対的な位置及び角度を調整する  ことを特徴とする搬送ロボット。
【請求項１４】
請求項１１に記載の搬送ロボットにおいて、  前記移動制御部は、装置本体の上面に設置したカメラによって前記棚の底面に配置されているマーカを撮像し、撮像された画像に基づいて前記棚と自車との相対的な位置及び角度を調整する  ことを特徴とする搬送ロボット。
【請求項１５】
周囲形状を測定するセンサと、地図データを記憶する記憶部とを有し、棚を搬送する少なくとも２台の搬送ロボットと、前記搬送ロボットの動作を規定する搬送データを送信する管理端末とで構成される棚配置システムにおける棚配置方法であって、  前記搬送ロボットは、前記搬送データで指定された位置に移動した後、前記搬送データで指定された方向を前記センサで測定し、壁面に対する角度が調整されている他の搬送ロボットの幾何形状に基づいて前記棚の位置及び角度を調整する  ことを特徴とする棚配置方法。
【発明の詳細な説明】
【技術分野】
【０００１】  本発明は、複数台の搬送ロボットを用いて複数の棚を配置する棚配置システム、搬送ロボット及び棚配置方法に関する。
【背景技術】
【０００２】  近年における通販市場の拡大と顧客ニーズの多様化に伴い、物流倉庫で扱う荷物の小口化が進んでいる。これに伴い、物流サービスは多様化・複雑化しており、集品などにかかる作業コストが増加している。一方で労働人口は減少しており、作業の自動化が求められている。作業を自動化する手段の一つとして、荷物（棚に保管する又は棚に保管されている物品）をある地点から別の地点に移動する搬送作業を担う無人搬送車又はＡＧＶ（Automatic Guided Vehicle）と呼ばれるものがあり、既に倉庫、工場、港湾などの施設で導入されている。【０００３】  無人搬送車が、正確・安全・高速に荷物を搬送するためには、棚が整列配置されていること、及び、搬送車が自車位置を正しく認識しながら移動できることの２つが必要である。自車位置を認識する方法の一つとして、搬送車に搭載したレーザ距離センサで周囲の幾何形状を認識し、地図との照合処理により自車位置を把握するものがある。これは、周囲に参考となる幾何形状が存在することが前提となるが、例えば棚の並ぶ倉庫内の走行において、参考となる幾何形状が配置される棚足のみであった場合、自車位置の認識が困難となる場合がある。搬送車に搭載するような小型の距離センサを用いた場合、移動しながら少し離れた場所の棚足を正確に捉えることが出来ないからである。そもそも計測データには誤差が含まれる上に、面積が小さい棚足にレーザ光が必ず到達するとは限らないからである。【０００４】  無人搬送車に関する先行技術を記載する文献には、例えば特許文献１及び２がある。特許文献１には、「先に取合位置９に走行停止させる無人搬送車ＡＧＶ１の車体の側面に反射板２０を設ける。あとから取合位置９に走行停止させる無人搬送車ＡＧＶ２の側面に反射板２０を検出する光電センサからなる第２停止用センサ１６を設ける。あとから到着する無人搬送車ＡＧＶ２は、先に停止済の無人搬送車ＡＧＶ１の反射板２０を検出して走行停止する。」（要約書参照）ことが記載されている。【０００５】  また、特許文献２には、「搬送車３は、搬送車本体３ａと、搬送車本体３ａに設けられる測距センサ５０と、地図データＤＢ４２と、近似線算出部４７と、位置算出部４６と、を備えている。搬送車本体３ａは、第１エリアと、前記第１エリア以外の第２エリアと、を含む経路を走行する。近似線算出部４７は、第１エリアＡでは、測距センサ５０が測定した複数の測定データのうち所定の閾値以上の光の強度を有する測定データの集合に基づいて近似線を算出し、第２エリアＢでは、複数の測定データの集合に基づいて近似線を算出する。位置算出部４６は、近似線と地図データとを照合することで、搬送車本体３ａの位置を算出する。」（要約書参照）ことが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−８５１１６公報
【特許文献２】特開２０１３−１６１３９９公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】  要するに、特許文献１は、平行に走行する２台の無人搬送車のうち先に停車した無人搬送車に取り付けられている反射板を基準に、後続する無人搬送車の停止位置を決定する技術を記載し、特許文献２は、測定データの集合に基づいて自車の位置を算出する技術を記載するものであり、無人搬送車を用いて複数の棚を整列配置することは想定されていない。そもそも、倉庫内を移動する無人搬送車に関する既存のシステムでは、棚は設置対象ではなく基準位置を与える存在である（棚は基準位置として設置済みである）。仮に、特許文献１及び２に記載の技術を棚の搬送に応用したとしても、複数の棚（又は複数の無人搬送車）の間の角度を所定の角度に調整する仕組みが存在しないため、複数の棚を整列設置することはできない。【０００８】  本発明は、棚を設置する空間に位置や向きの推定に必要な幾何形状が乏しい場合でも、壁面と所定の角度を保つように棚を自動的に整列して配置できる技術を提供する。
【課題を解決するための手段】
【０００９】  上記課題を解決するために、本発明は、例えば特許請求の範囲に記載の構成を採用する。本明細書は上記課題を解決する手段を複数含んでいるが、その一例を挙げるならば、「周囲形状を測定するセンサと、地図データを記憶する記憶部とを有し、棚を搬送する少なくとも２台の搬送ロボットと、前記搬送ロボットの動作を規定する搬送データを送信する管理端末とを有し、前記搬送ロボットは、前記搬送データで指定された位置に移動した後、前記搬送データで指定された方向を前記センサで測定し、壁面に対する角度が調整されている他の搬送ロボットの幾何形状に基づいて前記棚の位置及び角度を調整する棚配置システム」である。
【発明の効果】
【００１０】  本発明によれば、棚を設置する空間に位置や向きの推定に必要な幾何形状が乏しい場合でも、壁面と所定の角度を保つように棚を自動的に整列して配置することができる。前述した以外の課題、構成及び効果は、以下の実施の形態の説明により明らかにされる。
【図面の簡単な説明】
【００１１】
【図１】実施例１における棚配置システムの概念構成を示す図。
【図２】実施例１における棚の配置イメージを説明する図。
【図３】本実施例における搬送ロボットと管理端末の機能ブロック図。
【図４】管理端末において実行される棚配置プランニング動作を説明するフローチャート。
【図５】地図データ、棚レイアウトデータ、棚配置順データのイメージを説明する図。
【図６】棚取得先座標と棚設置データのデータ例を示す図。
【図７】搬送ロボットの基本動作を示すフローチャート。
【図８】１つ目の棚を搬送する搬送ロボットの動作例を説明する図。
【図９】２つ目の棚を搬送する搬送ロボットの動作例を説明する図。
【図１０】３つ目の棚を搬送する搬送ロボットの動作例を説明する図。
【図１１】形状参照用の搬送ロボットが無い場合と形状参照用の搬送ロボットが有る場合のセンサデータの違いを示す図。
【図１２】一列目の最後の棚を設置した直後の搬送ロボットの動作を示す図。
【図１３】二列目の先頭に棚を搬送する際の搬送ロボットの動作を示す図。
【図１４】棚と搬送ロボットとの位置角度の調整例を示す図。
【図１５】棚と搬送ロボットとの位置角度の他の調整例を示す図。
【図１６】棚取得位置における現在座標値の補正手法を説明する図。
【図１７】１２台の搬送ロボット２００を用いる場合の棚設置データ例を示す図。
【図１８】１２台の搬送ロボット２００を用いる場合の棚配置例を示す図。
【図１９】既設の棚を再整列する際の搬送ロボットの動作を示すフローチャート。
【図２０】再整列時に使用する搬送データの一例を示す図。
【発明を実施するための形態】
【００１２】  以下、図面に基づいて、本発明の実施の形態を説明する。なお、本発明の実施の態様は、後述する実施例に限定されるものではなく、その技術思想の範囲において、種々の変形が可能である。
【００１３】  （１）実施例１  本実施例では、物流倉庫の利用に先立って（倉庫内に何も設置されていない状態で）、複数の搬送ロボットを用いて壁面に平行になるように棚を自動的に整列配置する棚配置システムについて説明する。
【００１４】  （１−１）システムの全体構成  図１に、本実施例で想定する棚配置システムの概念構成を示す。棚配置システムは、２台以上の棚１００と、２台以上の搬送ロボット２００（２００ａ、２００ｂ）と、管理端末３００とで構成される。本実施例における棚１００は、基本的に４本脚であり、棚足と棚足の間には搬送ロボット２００が自由に移動できるだけの空間が設けられている。すなわち、最下段の棚板と床面との間には棚足によって、搬送ロボット２００が自由に移動できるだけの空間が設けられている。
【００１５】  搬送ロボット２００は、いわゆる無人搬送車の一種である。本実施例の搬送ロボット２００は、概略直方体形状の装置本体と、その前進方向前面に取り付けられたレーザ距離センサ２１０と、装置本体の上面に取り付けられた荷役プレート２２０と、左右両側面に取り付けられた車輪２３０とで構成される。なお、車輪２３０の取付方法には、装置本体の左右に一対の車輪を取り付ける方法、装置本体の左右に二対の車輪を取り付ける方法、装置本体の左右に一対の車輪と一つの補助輪を取り付ける方法等、様々な取付方法が考えられる。
【００１６】  レーザ距離センサ２１０は、レーザ光を照射するレーザ光源（例えばレーザダイオード、ＬＥＤ（light emitting diode））と、測定対象物からのレーザ光を受光する受光素子と、受光した光に基づいて測定対象物の方向と距離を算出する演算部とで構成される。なお、演算部は他のデバイスの側に配置される場合もある。本実施例の場合、レーザ距離センサ２１０は、搬送ロボット２００の進行方向に面した側面（前面）に１つだけ搭載されている。もっとも、レーザ距離センサ２１０は、１台の搬送ロボット２００に対して２つ以上取り付けられていても良い。同一面に２つ以上のレーザ距離センサ２１０を設置する場合、上下に設置すれば異なる高さにおける距離を計測することが可能となり、左右に設置すれば一度に広範囲の距離を計測することができる。また、レーザ距離センサ２１０は、搬送ロボット２００の複数の側面に取り付けられていても良い。複数の側面にレーザ距離センサ２１０が取り付けられている場合、方向転換しなくても搬送ロボット２００に対して複数の側面からの距離を一度に測定することができる。なお、後述するように、本実施例におけるレーザ距離センサ２１０は、所定角範囲（例えば１８０°）内でレーザ光を走査できる。
【００１７】  荷役プレート２２０は、装置本体に対して上下に駆動される機構の総称であり、プレート本体とプレート本体を上下に駆動する第１の駆動部と、プレート本体を旋回駆動する第２の駆動部を有している。このような機構は既知である。荷役プレート２２０は、棚１００の下に潜り込んだ装置本体に対して棚１００の持ち上げる動作や持ち上げた棚１００を下ろす動作に使用される。第１の駆動部の存在により、搬送ロボット２００は、棚１００を装置本体に対して持ち上げたまま移動することができる。また、第２の駆動部は、プレート本体を装置本体に対して旋回させることができる。この機能により、搬送ロボット２００は、棚１００を持ち上げた状態で装置本体に対して棚１００の向きを変更又は調整することができる。この機能は、棚１００を壁などの基準面に対して所定の角度に調整するのに用いることができる。
【００１８】  装置本体の左右側面の車輪２３０が同一方向に回転することで搬送ロボット２００は直進し、逆方向に回転することで搬送ロボット２００は旋回する。棚１００を持ち上げた状態で搬送ロボット２００を旋回させれば、棚１００の移動方向の変更や棚１００の角度調整を行うことができる。なお、荷役プレート２２０を装置本体に対して旋回させながら、その旋回方向とは逆向きに搬送ロボット２００を旋回させると、棚１００は静止状態のまま搬送ロボット２００の向きだけを変更させることができる。
【００１９】  管理端末３００は、複数の搬送ロボット２００のそれぞれとの間で、無線ネットワークを介してデータを送受信する端末である。管理端末３００は、棚の配置レイアウトに従って、個々の搬送ロボット２００の動作（移動や旋回を含む。）、テーブル本体の上下方向への移動と回転）を指示する。
【００２０】  （１−２）棚を配置する動作イメージ  まず、図２に基づいて、本実施例における棚配置のイメージを説明する。図２は、２台の搬送ロボット２００ａ及び２００ｂを用いる棚搬送システムについて表している。本実施例における棚の配列の特徴は、一方の搬送ロボット２００ａの側面を壁の代わりに使用する点である。
【００２１】  まず、第１の搬送ロボット２００ａは、１つ目の棚１００を持ち上げて保持したまま走行し、レーザ距離センサ２１０によって２つの壁面を計測可能な第１の棚設置場所まで移動する。第１の棚設置場所に達した第１の搬送ロボット２００ａは、レーザ距離センサ２１０を用いて取得したセンサデータ（後述するセンサデータ４０４）と、棚１００を配置する空間の地図（後述する地図データ４００）とを照合し、自車が正面の壁面と右側の壁面に対して所定の角度となるように自車位置及び姿勢を調整し、調整が終了した時点で停止し、１つ目の棚１００を床面に降ろす。本実施例の場合、第１の搬送ロボット２００ａは、第２の搬送ロボット２００ｂに対する基準位置を与えるため、その場に停止したままである。
【００２２】  次のステップにおいて、第２の搬送ロボット２００ｂは、２つ目の棚１００を持ち上げて保持したまま走行し、第１の搬送ロボット２００ａの側面を計測可能な第２の棚設置場所まで移動する。第２の棚設置場所に達した第２の搬送ロボット２００ｂは、レーザ距離センサ２１０で取得したセンサデータ（後述するセンサデータ４０４）と、第１の搬送ロボット２００ａの側面形状が追記された空間の地図（後述する地図データ４００）とを照合し、自車を自車の正面に停止している第１の搬送ロボット２００ａの側面形状と右側の壁面に対して所定の角度となるように自車位置及び姿勢を調整し、調整が完了すると、その場に２つ目の棚１００を降ろす。２つ目の棚１００の設置が終わると、第１の搬送ロボット２００ａは、第１の棚設置場所から３つ目の棚１００の設置位置に移動する。今度は、第２の搬送ロボット２００ｂが第１の搬送ロボット２００ａに対する基準位置を与える。このため、第２の搬送ロボット２００ｂは、第２の棚設置場所に留まる。
【００２３】  更に次のステップでは、第１の搬送ロボット２００ａは３つ目の棚１００を持ち上げて保持したまま、第２の搬送ロボット２００ｂを計測可能な第３の棚設置場所まで移動する。第３の棚設置場所に達した第１の搬送ロボット２００ａは、レーザ距離センサ２１０で取得したセンサデータ（後述するセンサデータ４０４）と、第２の搬送ロボット２００ｂの側面形状が追記された空間の地図（後述する地図データ４００）とを照合し、自車を自車の正面に停止している第２の搬送ロボット２００ｂの側面形状と右側の壁面に対して所定の角度となるように自車位置及び姿勢を調整し、調整が終了した時点で停止し、その場に３つ目の棚１００を降ろす。
【００２４】  第１及び第２の搬送ロボット２００ａ及び２００ｂは、基本的にこれらの動作を交互に繰り返すことにより、壁面と所定の角度を保つように複数の棚１００を整列配置する。
【００２５】  （１−３）搬送ロボット及び管理端末の機能ブロック構成  ここでは、図３を使用し、本実施例に係る搬送ロボット２００と管理端末３００の機能ブロック構成を説明する。
【００２６】  （１−３−１）管理端末の機能ブロック  管理端末３００は、オペレータが棚配置をプランニングする際に使用されると共に、作成された棚のレイアウトに従って搬送ロボット２００の搬送動作を管理する端末である。本実施例の管理端末３００は、コンピュータ（ＣＰＵ、ＲＡＭ、ＲＯＭ、ハードディスク）を基本構成とし、後述する機能をプログラムの実行を通じて提供する。棚配置プランニング部３５１は、倉庫の地図データ４００と棚レイアウトデータ４０１とに基づいて、棚設置データ４２０を作成する。棚設置データ４２０は、(1)棚配置の順番、(2)配置先の座標値、(3)形状参照先（棚の配置時に位置や姿勢を決定するために参照する何らかの幾何形状が存在する方角又は方向）、(4)どの搬送ロボット２００が該当する作業を担うかを示す配車データ、(5)設置後の搬送ロボットの移動先を示す設置後動作を含む。
【００２７】  また、棚配置プランニング部３５１は、配列する棚１００の取得場所を与える棚取得先座標データ４１０を設定する。本実施例の場合、棚取得先座標データ４１０は１つである。すなわち、棚１００が搬送ロボット２００によって搬送された後は、別の棚１００が同じ場所に人手等によって配置されるものとする。ただし、複数の棚１００の配列前の位置を特定する座標が既知の場合には、それらの座標値を棚取得先座標データ４１０として設定することもできる。
【００２８】  搬送データ作成部３５２は、個別の搬送ロボット２００が実行すべき動作を規定する搬送データ４３０を作成する。搬送データ４３０には、搬送作業に必要となる各種のデータ、例えば(1)棚取得先座標データ４１０、(2)棚配置先座標データ４２２、(3)形状参照先データ４２３、(4)既に設置済みの棚の座標（既設置棚座標値データ４４０）、(5)形状を参照する搬送ロボットの座標（形状参照用ロボット座標値データ４４１）、(6)設置後動作データ４２５が含まれる。搬送データ４３０を構成するデータのほとんどは、棚設置データ４２０から該当する作業番号のデータを抽出することにより作成される。
【００２９】  既に設置済みの棚１００の座標値（記設置棚座標値データ４４０）は、該当する作業番号より前に設置された全ての棚１００の座標値であり、形状を参照する搬送ロボット２００の座標（形状参照用ロボット座標値４４１）は、該当する作業番号より前に設置され停止している搬送ロボット２００の座標値である。ここで作成した搬送データ４３０は、棚設置データ４２０のうち該当する作業番号に対応する配車データで特定される搬送ロボット２００に対して送信される。
【００３０】  データ送受信部３５３は、次に作業する搬送ロボット２００に対して搬送データ４３０を送信すると共に、作業を終えた搬送ロボット２００から作業が終了した旨の通知を受信する。作業の終了通知を搬送ロボット２００から受信した場合、データ送受信部３５３は、棚設置データ４２０の次の作業番号に基づいて搬送データ４３０を作成し、搬送指令を該当する搬送ロボット２００に対して送信する。なお、搬送データ４３０の作成は、必ずしも作業の終了通知の受信をトリガーとして開始しなくても良い。
【００３１】  記憶部（例えばＲＡＭ、ハードディスク）には、(1)棚配置の対象となる倉庫の床面からのある高さの断面図（地図データ４００）、(2)棚レイアウトデータ４０１、(3)棚取得先座標データ４１０、(4)棚配置プランニング部３５１で作成された棚設置データ４２０、(5)既設置棚座標値データ４４０、(6)形状参照用ロボット座標値データ４４１、(7)搬送データ４３０、(8)レーザ距離センサ２１０の測定範囲（距離センサ測定範囲４０３）が格納されている。
【００３２】  （１−３−２）搬送ロボットの機能ブロック  搬送ロボット２００は、倉庫内を自走して搬送対象である棚１００を自動的に設置する無人搬送車である。前述したように、搬送ロボット２００を構成する装置本体の前面（前方側面）には周囲環境との距離を計測するレーザ距離センサ２１０が取り付けられると共に、装置本体の上面には棚１００を上げ下げすると共に棚１００を装置本体に対して旋回させる荷役プレート２２０が取り付けられている。また、装置本体の左右側面には車輪２３０が取り付けられている。
【００３３】  搬送ロボット２００は、搬送対象である棚１００の設置場所（棚取得先座標データ４１０で指定される場所）まで移動して棚１００の下に潜り込み、棚１００を持ち上げるとその状態で目的地まで移動し、壁面に対して所定の位置及び角度になるように棚１００を設置する。搬送ロボット２００の装置本体の内部には、荷役プレート２２０の駆動機構、車輪２３０の駆動機構、それらの動作を制御するコンピュータ（ＣＰＵ、ＲＡＭ、ＲＯＭ）が備えられている。後述する機能は、コンピュータによるプログラムの実行を通じて提供される。
【００３４】  データ送受信部２５１は、インターネット６００を通じて管理端末３００と無線接続されており、棚搬送に関する情報である搬送データ４３０を管理端末３００から受信すると共に、搬送の終了を管理端末３００に通知する。センシング部２５２は、レーザ距離センサ２１０で計測したデータをセンサデータ４０４として記憶部（ＲＡＭ）に格納する。荷役部２５３は、不図示の駆動機構を制御して、荷役プレート２２０の上げ下げ及び／又は旋回を制御する。地図更新部２５４は、記憶部に格納されている地図データ４００を現在の状態に合うよう更新する。地図更新部２５４は、管理端末３００から受信した搬送データ４３０（既設置棚座標値データ４４０、形状参照用ロボット座標値データ４４１）と、自車の記憶部に格納されている棚足形状データ４０５及び搬送ロボット形状データ４０６とに基づいて、記憶部に格納されている地図データ４００に対して棚足と搬送ロボットの形状データを追記する。
【００３５】  駆動部２５５は、車輪２３０を駆動して搬送ロボット２００を移動させる駆動機構である。移動制御部２５６は、管理端末３００から指示を受信した後、搬送データ４３０に基づいて作成した移動経路データ４３１に沿って移動するように駆動部２５５を制御し、搬送ロボット２００の倉庫内における移動を制御する。本実施例の場合、移動制御部２５６は、駆動部２５５だけでなく装置本体内の全ての動作を制御する。
【００３６】  記憶部（例えばＲＡＭ）には、(1)地図データ４００、(2)レーザ距離センサ２１０が設置された高さにおける棚足の断面図である棚足形状データ４０５、(3)レーザ距離センサ２１０が設置された高さにおける搬送ロボットの断面図である搬送ロボット形状データ４０６、(4)管理端末３００より受信した搬送データ４３０、(5)現在地から棚取得位置や棚設置位置までの経路を示す移動経路データ４３１、(6)レーザ距離センサ２１０を用いて測定した周囲環境との距離を表すセンサデータ４０４、(7)センサデータ４０４と地図データ４００との照合処理により算出した現在位置データ４３２が格納される。
【００３７】  （１−４）管理端末における棚配置プランニング動作  図４に、本実施例の管理端末３００で実行される棚配置プランニング動作を示す。この動作は、不図示のコンピュータによるプログラムの実行を通じて提供される。まず、棚配置プランニング部３５１は、地図データ４００を読み込むと共に、読み込んだ地図データ４００の上に棚レイアウトデータ４０１を入力する（ステップＳ１０１）。棚配置プランニング部３５１は、この棚レイアウトデータ４０１に従って搬送ロボット２００に対する指示データを作成する。指示データの作成には、搬送ロボット２００が搬送対象となる棚１００を取りに行く場所が必要である。そこで、棚配置プランニング部３５１は、棚１００を取得する場所の座標値である棚取得先座標データ４１０を設定する（ステップＳ１０２）。
【００３８】  次に、棚配置プランニング部３５１は、棚１００を設置する順番を設定する（ステップＳ１０３）。更に、棚配置プランニング部３５１は、棚１００を設置する際に参照する形状がある方向（参照先）を設定する（ステップＳ１０４）。複数の棚１００を壁面に対して所定の角度を保つように設置（配列）するには、まず初めに、壁面の認識が可能な場所に１つ目の棚１００を設置する必要がある。１つ目の棚１００は、搬送ロボット２００に搭載したレーザ距離センサ２１０の計測範囲に２つの壁面が入る場所に設置する。また、棚１００の設置が容易となるように、奥側から手前側に（すなわち、棚１００を取りに行く地点（初期位置）から離れた場所から徐々に近づく方向に棚１００を設置する流れを基本とする。
【００３９】  （１−５）各種レイアウト  図５に、本実施例で使用する各種レイアウト、すなわち地図データ４００、棚レイアウトデータ４０１、棚配置順データ４０２を示す。地図データ４００は、棚１００の配置対象である倉庫内の床面からのある高さにおける断面図（２次元平面図）である。その高さは、搬送ロボット２００に搭載されるレーザ距離センサ２１０の計測面の高さと同じである。地図データ４００上には、搬送ロボット２００が棚１００を設置する毎に管理端末３００に送信する停止位置および姿勢データに基づいて棚足の形状が追加される。この追加は、後述する移動制御部２５６によって実行される。地図データ４００は、図３に示すように、管理端末３００だけでなく、全ての搬送ロボット２００に格納されている。
【００４０】  棚レイアウトデータ４０１は、倉庫の地図データ４００の上にどのように棚１００を配置するか示す図である。棚配置順データ４０２は、棚レイアウトデータ４０１上における棚１００の配置順序を示す図である。図５の棚配置順データ４０２には、棚１００を配置する位置に棚１００の配置順序を数字（例えば１、２、…２４）で示しているが、棚配置順データ４０２は図面として保持されている必要はなく、後述する図６の棚設置データ４２０のようにデータ形式で保持されていても構わない。
【００４１】  （１−６）棚取得先座標データ及び棚設置データ  図６に、棚取得先座標データ４１０と棚設置データ４２０のデータ例を示す。棚取得先座標データ４１０には、棚１００の供給元となる位置（初期位置）の地図データ４００上での座標値が格納される。棚設置データ４２０には、配置作業順にそれぞれ、(1)棚番号データ４２１、(2)棚配置先座標データ４２２、(3)形状参照先データ、(4)配車データ４２４、(5)設置後動作データ４２５が格納されている。
【００４２】  棚番号データ４２１は、棚配置順データ４０２（図５）に記されている棚設置先の番号のことである。棚配置先座標データ４２２には、地図データ４００上における棚設置先の座標値(x, y)が格納される。形状参照先データ４２３には、棚１００の設置位置を最終的に決定するために確認する方向又は方角を示すデータが格納される。棚１００の設置位置は、搬送ロボット２００の周囲（距離センサ測定範囲データ４０３の範囲内）に出現する幾何形状（壁や他の搬送ロボット２００の側面）を基準に確認される。
【００４３】  ここで、棚配置プランニング部３５１は、地図データ４００、棚設置予定位置（棚レイアウトデータ４０１）、指示対象とする搬送ロボット２００以外の搬送ロボット２００が停止している位置、搬送ロボット２００に搭載するレーザ距離センサ２１０の計測範囲（距離センサ測定範囲４０３）に基づいて方向等を定め、当該方向を特定するデータを形状参照先データ４２３に格納する。方向は、地図データ４００（図５）を基準に定める。
【００４４】  例えば搬送ロボット２００の前面側に壁が入る場合の方向は「Ｆ」で示し、右面側に壁が入る場合の方向は「Ｒ」で示し、左面側に壁が入る場合の方向は「Ｌ」で示す。例えば他の搬送ロボット２００が棚配置順データ４０２（図５）の「５」の場所に停止している場合において、搬送ロボット２００が６つ目の棚１００を搬送するとき、形状参照先データとして「５」と「Ｒ」が格納される。
【００４５】  配車データ４２４には、棚１００の搬送に使用する搬送ロボット２００を特定する番号（ロボット番号）が格納される。設置後動作データ４２５には、棚１００の設置後に、その搬送に使用した搬送ロボット２００をその場に留める場合は「stay」が、別の場所に移動する場合は移動先を特定する「番号」が格納される。なお、図６では、移動先の棚の番号を設定後動作データ４２５に記載しているが、移動先の座標値を記載しても良い。
【００４６】  なお、図６の説明では、動作の実行順序を示す通し番号「No.」が重複しないように登録されているが、複数台の搬送ロボット２００を同時に動かしたい場合には、同じ通し番号「No.」を有する行を複数登録してもよい。例えば「1, 2, 3, 4, …6, 6, 7,8, …23, 24」というように「6」を複数登録してもよい。
【００４７】  （１−７）搬送ロボットにおいて実行される動作  図７に、搬送ロボット２００の基本動作を示す。以下の動作は、搬送ロボット２００に搭載されたＣＰＵがプログラムの実行を通じて実現する。具体的には、移動制御部２５６が実行する。まず、データ送受信部２５１は、管理端末３００から搬送データ４３０を受信する（ステップＳ２０１）。搬送データ４３０には、棚取得先座標データ４１０と、棚配置先座標データ４２２、形状参照先データ４２３、設置後動作データ４２５と、既設置棚座標値データ４４０と、形状参照用ロボット座標値データ４４１とが含まれる。
【００４８】  地図更新部２５４は、受信した搬送データ４３０に含まれる既設置棚座標値データ４４０と、形状参照用ロボット座標値データ４４１と、搬送ロボット形状データ４０６と、棚足形状データ４０５とに基づいて、自身の記憶部に格納されている地図データ４００に搬送ロボット２００の形状データと棚足の形状データを追加する。これにより、地図更新部２５４は地図データ４００を最新の状態に更新する（ステップＳ２０２）。この方式は、最新の地図データ４００を管理端末３００からリアルタイムで受信する場合に比して通信負荷を低減することができる。
【００４９】  次に、移動制御部２５６は、設置対象とする棚１００を取得するために、棚取得先座標データ４１０で指定された座標位置まで搬送ロボット２００を移動させる（ステップＳ２０３）。ここでの移動は、移動制御部２５６による駆動部２５５の制御を通じて実現される。搬送ロボット２００は、棚取得先座標データ４１０で示される座標位置に到着すると、棚１００と自車との位置／姿勢合わせを行う。具体的な方法については後述する（図１３、図１４、図１５）。
【００５０】  移動制御部２５６は、ステップＳ２０１で受信した棚配置先座標データ４２２と現在位置データ４３２とに基づいて搬送ロボット２００の移動経路を設定する（ステップＳ２０４）。設定された移動経路は移動経路データ４３１として自車の記憶部に格納される。移動経路の設定後、移動制御部２５６は、移動経路データ４３１に基づいて搬送ロボット２００の移動を開始する。
【００５１】  床面に走行ガイドや位置を示すランドマークが敷設されていない場合、移動制御部２５６は、一般に、レーザ距離センサ２１０で取得したセンサデータと地図４００との照合処理を通じて自己位置を認識する。しかし、環境内に目標となる物がほとんど無い場合、必要とする情報を取得できない。すなわち、移動制御部２５６は、前述した方法を用いることができない。このような場合、移動制御部２５６は、搬送ロボット２００の車輪２３０の回転情報に基づいて移動距離を算出するオドメトリ法を用い、目的地の近傍まで移動する（ステップＳ２０５）。
【００５２】  左右の車輪２３０の回転角と回転角速度を積算することで移動距離と方向を求めるオドメトリ法は、車輪２３０と床面との滑りにより生じる誤差、車輪径や搬送ロボット２００ａの大きさ等に起因するパラメータ誤差の影響が移動距離の増加に伴って累積し、正確な場所に到達することができない。周囲に参考となる幾何形状がない場所においては、オドメトリ法による位置推定を行うが、本実施例の場合、目的地の近傍には、壁面に加えて他の搬送ロボット２００の幾何形状等が存在する。そこで、移動制御部２５６は、目的地の近傍に到達すると、レーザ距離センサ２１０から出力されるセンサデータ４０４と地図データ４００とによる位置推定処理にモードを切り替える（ステップＳ２０６）。すなわち、移動制御部２５６は、オドメトリ法により算出した現在地と、センサデータ４０４と、地図４００とを入力として自己位置を補正する。
【００５３】  移動制御部２５６は、センサデータ４０４と地図データ４００との照合により、搬送ロボット２００の中心位置が目的地に一致するように移動する（ステップＳ２０７）。本実施例では、複数の棚１００が壁面に対して所定の角度で整列設置することを目的とするため、移動制御部２５６は、ステップＳ２０１で受信した形状参照先データ４２３に格納されている方向に搬送ロボット２００の向きを変更し、その方向で計測可能な幾何形状と地図データ４００との照合により、搬送ロボット２００の位置と角度を調整する（ステップＳ２０８）。ステップＳ２０８で位置と角度の調整が終了すると、荷役部２５３の制御の下、荷役プレート２２０を降下させる。これにより、搬送ロボット２００によって搬送されてきた棚１００は床面に降ろされる（ステップＳ２０９）。棚１００を床面に降ろすと、移動制御部２５６は、設置後動作データ４２５の指示に従い、その場に停止した状態を維持するか又は次の場所に移動する。この後、移動制御部２５６は、データ送受信部２５１を通じて管理端末３００に設置完了を通知する。
【００５４】  （１−８）搬送動作  以下では、２台の搬送ロボット２００を用いて棚１００を搬送する場合の動作を説明する。以下の説明では、２台の搬送ロボット２００のうち一方を搬送ロボット２００ａとし、他方を搬送ロボット２００ｂとする。
【００５５】  図８に、１つ目の棚１００を搬送ロボット２００ａで移動する場合を示す。まず、搬送ロボット２００ａは、管理端末３００より搬送データ４３０＿１を受信する（ステップＳ２０１）。搬送データ４３０＿１には、搬送ロボット２００ａが棚１００を棚置場から取得して配置先に設置するための情報が含まれる。具体的には、棚取得先座標データ４１０、棚配置先座標データ４２２、形状参照先データ４２３、既設置棚座標値データ４４０、形状参照用ロボット座標値４４１、設置後動作４２５が含まれる。１つ目の棚１００の配置時には、形状の参照に使用可能な他の搬送ロボット２００は未だ倉庫内に存在しない。このため、地図データ４００上で正面と右面に位置する２つの壁面が形状参照先に指定される。このため、形状参照先データ４２３は（F,R）である。
【００５６】  前述の説明によれば、この時点で、地図データ４００の更新処理の実行が予定されている（ステップＳ２０２）が、１つ目の棚１００の搬送を開始する時点では、既設の棚１００や形状を参照すべき他の搬送ロボット２００ｂが存在しないため、地図４００の更新はしない。図中の(1)〜(5)は、倉庫内における搬送ロボット２００ａの動作を上面から眺めた図である。地図データ４００は、倉庫の２次元平面図であり、床面から一定の高さに現れる倉庫の壁面や柱等が描かれる。棚１００の設置後や搬送ロボット２００が停止した場合には、その形状が、地図データ４００上に追加される。
【００５７】  時点(1)において、第１の搬送ロボット２００ａは、設置する棚１００が供給される位置である棚取得先座標（x0, y0）に位置している。第１の搬送ロボット２００ａは、この位置から移動を開始する。時点(2)において、移動制御部２５６は、移動開始位置である棚取得先座標（x0, y0）と棚配置先座標（x1, y1）との間で移動経路を作成する。移動経路は、例えば(x0, y0) → (x0, y1) → 反時計回り90°回転 → (x1, y1)と表される。本実施例の場合、第１の搬送ロボット２００ａは、オドメトリ法に基づいて自己位置を推定し、棚配置先座標(x1, y1)の近傍まで移動する。
【００５８】  時点(3)において（棚配置先座標(x1, y1)の近傍に到達した時点で）、移動制御部２５６は、オドメトリ法に基づいて自己位置を推定するモードから、距離センサ測定範囲データ４０３内で取得したセンサデータ４０４と地図データ４００との照合によって自己位置と姿勢を算出するモードに切り替わる（ステップＳ２０６）。すなわち、移動制御部２５６は、オドメトリ法で求めた現在地の近傍において地図データ４００とセンサデータ４０４を照合し、自己位置と姿勢を補正する。
【００５９】  時点(4)において、搬送ロボット２００ａは、棚配置先座標(x1, y1)の近傍まで移動する（ステップＳ２０７）。ここで、移動制御部２５６は、搬送データ４３０＿１に含まれる形状参照先データ４２３のうち「F」で指定される正面に位置する壁の形状を参照し、正面の壁と平行になるように搬送ロボット２００ａの位置と角度を補正する（ステップＳ２０８）。
【００６０】  時点(5)において、移動制御部２５６は、搬送データ４３０＿１に含まれる形状参照先データ４２３のうち「R」で指定される右壁面の形状を参照し、右面の形状と平行になるように搬送ロボット２００ａの位置と角度を補正する。この際、搬送ロボット２００ａは、本体を時計回りに90度旋回し、位置と角度を補正する（ステップＳ２０８）。ここでの旋回は、棚１００の向きを変えることなく行う。具体的には、荷役プレート２２０を本体に対して反時計回りに旋回させながら、一対の車輪２３０によって本体を時計回りに旋回させることにより行う。位置と姿勢の補正が終了すると、荷役部２５３は荷役プレート２２０を降下させる。これにより、棚１００が床面に下ろされる（ステップＳ２０９）。その後、移動制御部２５６はその場で停止したまま、データ送受信部２５１を通じて設置の完了を管理端末３００に送信する（ステップＳ２１０）。
【００６１】  図９に、２つ目の棚１００を搬送ロボット２００ｂで移動する場合を示す。まず、搬送ロボット２００ｂは、管理端末３００より搬送データ４３０＿２を受信する（ステップＳ２０１）。搬送データ４３０＿２には、棚取得先座標データ４１０、棚配置先座標データ４２２、形状参照先データ４２３、既設置棚座標値データ４４０、形状参照用ロボット座標値データ４４１、設置後動作データ４２５が含まれる。地図更新部２５４は、地図データ４００上の既設置棚座標(x1, y1)と形状参照用ロボット座標値(x1, y1)の位置に、搬送ロボット形状データ４０６と棚足形状データ４０５をそれぞれ追記する（ステップＳ２０２）。
【００６２】  図中の(1)〜(5)は、倉庫内における搬送ロボット２００ｂの動作を上面から眺めた図である。時点(1)において、１つ目の棚１００を搬送した搬送ロボット２００ａは、１つ目の棚１００を設置した座標（x1, y1）に停止している。一方、搬送ロボット２００ｂは、２つ目に設置する棚１００が供給される位置（すなわち、棚取得先座標（x0, y0））に停止している。時点(2)と(3)の動作は、図８で説明した時点(2)と(3)の動作と同じである。
【００６３】  時点(4)において、搬送ロボット２００ｂは、棚配置先座標(x1, y1)の近傍まで移動する（ステップＳ２０７）。ここで、移動制御部２５６は、搬送データ４３０＿２に含まれる形状参照先データ４２３のうち「1」で指定される１つ目の棚１００の下に停止している搬送ロボット２００ａの側面形状を参照し、搬送ロボット２００ａと平行になるように搬送ロボット２００ｂの位置と角度を補正する（ステップＳ２０８）。すなわち、搬送ロボット２００ｂは、図中上側方向について、壁面そのものの幾何形状に対して角度が調整された搬送ロボット２００ａの幾何形状に基づいて自身の位置と角度を調整する。この場合、移動制御部２５６は、搬送ロボット形状データ４０６と棚足形状データ４０５が追加された地図データ４００とセンサデータ４０４との照合処理を通じて自車の位置と姿勢を認識し、角度の補正を実行する。例えば、搬送ロボット２００ｂは、センサデータ４０４と搬送ロボット形状データ４０６を参考に、搬送ロボット２００ａの中心と自車の中心とが一致するように自車の位置を調整する。
【００６４】  時点(5)において、搬送ロボット２００ｂは、搬送データ４３０＿２に含まれる形状参照先データ４２３のうち「R」で指定される右壁面の形状を参照し、右壁面と平行になるように搬送ロボット２００ａの位置と角度を補正する。この場合も、搬送ロボット２００ｂは、本体を時計回りに90度旋回し、位置と角度を補正する（ステップＳ２０８）。位置と姿勢の補正が終了すると、荷役部２５３は荷役プレート２２０を降下させる。これにより、棚１００が床面に下ろされる（ステップＳ２０９）。すなわち、搬送ロボット２００ｂは、図中右側方向について、当該方向の壁面そのものの幾何形状に対して自身の位置と角度を調整する。その後、移動制御部２５６はその場で停止したまま、データ送受信部２５１を通じて設置の完了を管理端末３００に送信する（ステップＳ２１０）。
【００６５】  図１０に、３つ目の棚１００を搬送ロボット２００ａで移動する場合を示す。まず、搬送ロボット２００ｂは、管理端末３００より搬送データ４３０＿１を受信する（ステップＳ２０１）。ここでの搬送データ４３０＿１には、既設置棚座標値データ４４０として(x1, y1)と(x1, y2)が格納され、形状参照用ロボット座標値データ４４１として(x1, y2)が格納されている。そこで、地図更新部２５４は、地図データ４００上の既設置棚座標(x1, y1)と(x1, y1)に棚足形状データ４０５を追記し、形状参照用ロボット座標値(x1, y1)の位置に搬送ロボット形状データ４０６を追記する（ステップＳ２０２）。この場合、時点(1)において、搬送ロボット２００ａは、棚取得先座標（x0, y0）まで移動する。その後の時点(2)〜(5)の動作は、図８及び図９で説明した内容と同じである。すなわち、搬送ロボット２００ａは、図中上側方向について、壁面に対する角度が間接的に調整された搬送ロボット２００ｂの幾何形状に基づいて自身の位置と角度を調整する。一方、搬送ロボット２００ａは、図中右側方向について、当該方向の壁面そのものの幾何形状を基準に自身の位置と角度を直接調整する。
【００６６】  （１−９）センサデータの取得例  図１１に、形状参照用の搬送ロボット２００が無い場合のセンサデータ４０４ａと形状参照用の搬送ロボット２００が有る場合のセンサデータ４０４ｂの違いを示す。形状参照用の搬送ロボット２００が無い場合のセンサデータ４０４ａでは、搬送ロボット２００の前方方向で取得されるデータ点が離散的に出現する。このようなセンサデータ４０４ａでは、基準線を特定できないため、搬送ロボット２００の位置と姿勢を調整するのは困難である。つまり、棚１００を他の棚１００に対して整列させることはできない。一方、形状参照用の搬送ロボット２００が有る場合のセンサデータ４０４ｂでは、搬送ロボット２００の前方方向で取得されるデータ点が連続している。このデータ点列を基準線として用いることで、自車の正面に位置する他の搬送ロボット２００と自車との距離及び角度の特定が可能となる。すなわち、自車の正面で停止している他の搬送ロボット２００に対応するデータ点を基準に、自車の位置と姿勢を補正することが可能になる。
【００６７】  （１−１０）一列目の最後の棚を設置した直後の搬送ロボットの動作  図１２に、一列目の最後の棚１００を設置した直後の搬送ロボット２００の動作を示す。ここでは、一列目の最後の棚１００を搬送ロボット２００ｂが搬送するものとする。管理端末３００は、一列目の最後の棚１００の搬送を指示するため、搬送ロボット２００ｂに対して搬送データ４３０＿６を送信する。搬送データ４３０＿６は、前述した搬送データ４３０＿１〜４３０＿３（図８〜図１０）と同様である。このため、搬送ロボット２００ｂは、図８〜図１０の場合と同様に、不図示の時点(1)〜時点(5)の動作を順番に実行する。すなわち、搬送ロボット２００ｂは、更新した地図データ４００を用いて棚配置先座標（x1, y6）の近傍まで移動した後、搬送ロボット２００ａの側面形状を参照して位置と姿勢を調整し、棚１００を床面に設置する。
【００６８】  この際、搬送ロボット２００ｂは、図中上側方向について、当該方向の壁面に対して角度が間接的に調整された、番号「５」の位置の搬送ロボット２００ａの幾何形状に基づいて自身の位置と角度を調整する。一方、搬送ロボット２００ｂは、図中右側の壁面そのものの幾何形状に基づいて自身の位置と角度を直接調整する。棚１００の設置が完了すると、移動制御部２５６は、設置後動作データ４２５を参照する。この場合、設置後動作データ４２５には移動先を特定する番号として「0」が格納されている。番号「0」に対応する座標は、棚取得先座標（x0, y0）である。従って、時点(6)において、搬送ロボット２００ｂは、棚取得先座標(x0, y0)への移動を開始する。搬送ロボット２００ｂの棚取得先座標(x0, y0)への移動が完了すると、管理端末３００は、搬送ロボット２００ａに搬送データ４３０＿７を送信する。
【００６９】  なお、管理端末３００による搬送データ４３０＿７の搬送ロボット２００ａへの送信は、搬送ロボット２００ｂによる棚１００の設置の完了以降であれば何時でもよい。例えば搬送ロボット２００ｂの取得先座標(x0, y0)への移動の開始と同時であってもよい。各列の最後尾に棚１００を配置する場合には、棚１００の床面への配置が完了した時点でその旨が搬送ロボットから管理端末３００に送信される仕組みを採用することで、前述した搬送ロボット２００ａと搬送ロボット２００ｂの同時移動を実現できる。
【００７０】  搬送ロボット２００ａが受信する搬送データ４３０＿７には、棚設置に関する情報は含まれず、既設置棚座標データ４４０と設置後動作データ４２５のみが含まれる。これは、搬送ロボット２００ａの移動の目的が棚１００の搬送ではなく、次列の棚１００の搬送時に右側の壁の代わりとして使うためである。図１２の時点(7)はこのときの移動動作を表している。
【００７１】  搬送ロボット２００ａは、既設置棚座標データ４４０に基づいて地図データ４００に棚足形状データ４０５を追記すると、更新後の地図データ４００を用いて設置後動作データ４２５に記載されている番号「1」の位置に移動する。番号「1」の座標は（x1, y1）である。時点(8)は、この動作を表している。この場合、搬送ロボット２００ａは、センサデータ４０４と地図データ４００との照合処理を通じて自車の位置と姿勢を推定し、前方に位置する壁と右側の壁に対して所定の角度となるように補正を行って停止する。この際の形状参照先は予めプログラムされていても良いし、他の移動時と同様、形状参照先データ４２３として記録されていても良い。
【００７２】  図１３に、二列目の先頭位置に棚１００を搬送する場合の搬送ロボット２００ｂの動作を示す。この場合、搬送ロボット２００ｂには、搬送データ４３０＿８が管理端末３００から送信される。形状参照先データ４２３には（F, 1）が書き込まれている。このデータは、前方の壁と番号「１」に位置する搬送ロボット２００ａの形状を参照すべきことを表している。時点(2)〜(5)の動作は、図８〜図１０に示したものと同様である。時点(5)’は、時点(5)のうち破線で囲んだ部分の拡大図に当たる。図に示すよう、搬送ロボット２００ｂは、本体を時計回りに90度旋回し、一列目の先頭に位置する搬送ロボット２００ａの幾何形状を認識する。これにより、搬送ロボット２００ｂは、搬送ロボット２００ａと所定の距離及び角度を保つように、自車の位置と姿勢を調整することができる。すなわち、搬送ロボット２００ｂは、図中上側方向については、壁面そのものの幾何形状に基づいて自身の位置と角度を直接調整し、図中右側方向については、壁面に対して角度が調整された搬送ロボット２００ａの幾何形状に基づいて自身の位置と角度を調整する。
【００７３】  なお、二列目の残りの棚１００は、図８〜図１０と同様の手順で配置する。例えば二列目の２番目の位置に棚１００を搬送する搬送ロボット２００ａは、図中上側方向について、壁面そのものの幾何形状に基づいて角度が調整されている搬送ロボット２００ｂの幾何形状に基づいて自身の位置と角度を調整する。また、二列目の３番目の位置に棚１００を搬送する搬送ロボット２００ｂは、図中上側方向について、壁面に対する角度が間接的に調整されている搬送ロボット２００ａの幾何形状に基づいて自身の位置と角度を調整する。この際、新たに棚１００を配置する搬送ロボット２００は、センサデータ４０４と搬送ロボット形状データ４０６を参考に、図中上方向に停止している隣の搬送ロボット２００の中心と自車の中心とが一致するように自車の位置を調整する。これにより、２台の搬送ロボット２００を用いる場合でも、複数の棚１００を壁に対して整列することができる。
【００７４】  （１−１１）棚と搬送ロボットとの位置角度の調整  棚１００の整列配置を実現するには、棚１００の下に潜り込んで持ち上げる搬送ロボット２００と棚１００との位置関係が正確に把握され調整されていなければならない。
【００７５】  図１４に、棚１００と搬送ロボット２００との位置角度の調整手法の一例を示す。棚１００の大きさ、棚１００の棚足の大きさや位置、搬送ロボット２００の大きさ、搬送ロボット２００とレーザ距離センサ２１０の相対位置が既知であると、搬送ロボット２００が棚１００に潜り込んだ時の搬送ロボット２００の棚１００に対する相対位置と角度は、レーザ距離センサ２１０で計測されるセンサデータ４０４のデータ点の分布から算出することができる。
【００７６】  例えば上図のように棚１００の四辺と搬送ロボット２００の四辺が平行でない場合、センサデータ４０４のデータ点の分布は扇状に広がる距離センサ測定範囲データ４０３の中で左右対称にならない。これに対し、下図のように棚１００の四辺と搬送ロボット２００の四辺が平行であり、かつ、棚１００の中心と搬送ロボット２００の中心が一致していれば、センサデータ４０４のデータ点の分布は扇状に広がる距離センサ測定範囲データ４０３の中で左右対称になり、かつ、棚足が距離センサ測定範囲データ４０３の端から特定の距離だけ内側に位置することになる。この分布関係が得られるように、搬送ロボット２００は、棚１００と自車との位置及び角度を調整する。データ点の分布が所定の関係を満たすことで、搬送ロボット２００は、棚１００をその真下の中心位置で持ち上げることができる。
【００７７】  図１５に、棚１００と搬送ロボット２００との位置角度を調整するための別の方法を示す。図１５の場合、棚１００の棚底には２次元バーコードなどの棚底マーカ１０１が取り付けられている。棚底マーカ１０１は、棚底の中心位置に、その四辺が棚１００の四辺と平行になるように正確に貼り付けられている。一方、荷役プレート２２０の上面中心にはカメラ２４０が設けられている。カメラ２４０の最上面は、荷役プレート２２０の上面よりも内側に配置されている。このため、荷役プレート２２０を持ち上げた際にもカメラ２４０は棚底に当たることはない。
【００７８】  図１５の仕組みを採用する場合、棚１００の下に潜り込んだ搬送ロボット２００のカメラ２４０によって棚底マーカ１０１が撮影される。棚底マーカ１０１と棚１００との位置関係は既知であるので、棚底マーカ１０１の画像から棚１００に対する搬送ロボット２００の相対的な位置と角度を算出することが可能となる。この値に基づき、搬送ロボット２００の位置角度を微調整すれば、棚１００の真下中心位置に、棚１００の四辺に対して平行となるように搬送ロボット２００を停止させることが可能になる。この場合、搬送ロボット２２０は記憶部に撮影された画像を格納し、不図示の画像処理部によって前述した算出と調整動作を実行する。
【００７９】  （１−１２）棚取得位置における現在座標値の補正手法  図１６に、棚取得位置における現在座標値の補正手法の一例を示す。前述したように、搬送ロボット２００は、棚取得先座標データ４１０で指定された座標位置に搬送対象とする棚１００を取りに戻るが、棚１００は棚取得先座標値（x0, y0）に正確に設置されているとは限らない。このため、図１４や図１５で説明した手法を用いて、棚１００と搬送ロボット２００の相対位置や角度を修正した後、地図データ４００上における現在の座標値を認識する必要がある。
【００８０】  棚取得先座標値（x0, y0）の付近に、壁面のコーナー部分などの特徴のある幾何形状が存在する場合、移動制御部２５６は、センサデータ４０４と地図データ４００の壁面コーナー部分との照合処理により、現在位置を算出する。壁面のコーナーなどの特徴のある幾何形状が存在しない場合でも、例えば棚取得位置の付近の壁などに位置や形状が既知のランドマーク５０１又は５０２などが設けられている場合、移動制御部２５６は、当該ランドマークを取得したセンサデータ４０４と地図データ４００とを照合し、現在位置を正確に認識する。
【００８１】  ランドマーク５０１は、長さの異なる複数の反射板を用いた例である。ランドマーク５０２は、奥行きや幅が異なる立体的な（凹凸のある）オブジェクトを壁面に設置した例である。自己位置推定のためのランドマークを、倉庫全体に設置するのは、設置コストや地図データ４００への反映を考えると、現実的ではない。しかし、特定の場所へ使用するだけであれば、作業コストはほとんどかからない。
【００８２】  （１−１３）３台以上の搬送ロボット２００を使用する例  以上では、２台の搬送ロボット２００を交互に用いて棚１００を配置する方法について説明したが、搬送ロボット２００の台数はこれに限らない。ここでは、搬送ロボット２００を１２台用いる場合について説明する。図１７は、搬送ロボット２００を１２台用いて一列につき６つの棚１００を配置する場合の棚設置データ４２０を表している。この例の場合、一列目の各位置に棚１００の搬送を終了した後も、搬送に用いた搬送ロボット２００はその場に停止したままである。このため、二列目に対応する７番目〜１２番目の棚１００の搬送時において、各搬送に使用する搬送ロボット２００は、右側に位置する壁の代わりに一列目で停止している搬送ロボット２００の形状を参照する。
【００８３】  例えば７番目の棚１００の搬送時に使用する形状参照先データ４２３は（F, 1）であり、８番目の棚１００の搬送時に使用する形状参照先データ４２３は（7, 2）である。図１８は、この棚設置データ４２０に従って棚１００が配置されていく様子を表している。図１８において塗り潰しで示すように、１列ずつ交互に棚１００が設置される。前述したように、基本的には後列を配置する搬送ロボット２００は前列に停止している搬送ロボット２００の幾何形状に基づいて位置決めと角度を調整する。なお、図１８の右下の配置の場合、左端の列を配置する搬送ロボット２００は左壁の形状を参照しても良い。
【００８４】  （１−１４）実施例の効果  本実施例の棚搬送システムは、レーザ距離センサ２１０の計測範囲内に棚足しか見えないなど、搬送ロボット２００の位置や向きを推定するための幾何形状が乏しい空間内でも、複数の棚１００を整列配置することができる。具体的には、搬送ロボット２００は、壁面に対して平行に停止している計測範囲内の他の搬送ロボットの幾何形状を参照し、自車の位置と角度の調整に使用する。これにより、搬送ロボット２００は、２つの方向の観点から位置と角度の調整を行うことが可能となり、壁面と所定の角度を保つように棚１００を自動的に整列することができる。また、この配置作業を交互に繰り返すことにより、壁面と所定の角度を保ったまま複数の棚１００を整列配置することができる。なお、搬送ロボット２００は、自車と棚１００との間での位置と角度を調整する機能を備えるので、搬送ロボット２００による棚１００の配置時の位置と角度の精度を保持することができる。
【００８５】  （２）実施例２  前述の実施例では、倉庫内に、複数の棚１００を自動的に配置する場合について説明した。ここでは、棚１００の再整列方法について説明する。設置直後は整列していても、その運用中には棚１００の配列が乱れることがある。例えば作業中の人がぶつかることで棚１００の位置や角度がずれることもあれば、棚１００の運搬を繰り返しているうちに棚１００の位置や角度にずれが生じることがある。
【００８６】  ずれが生じたまま利用を続けると、移動中の搬送ロボット２００が棚１００にぶつかる可能性が高まるため、棚１００が整列された状態に定期的に戻すことが望ましい。図１９に、棚１００を再整列する際に搬送ロボット２００が実行する動作を示す。図１９には、図７との対応部分に同一符号を付して示している。図１９より容易に分かるように、基本的な動作は図７で示した動作と同様である。ただし、図７とは異なり、棚供給位置まで棚１００を取りに行く動作（ステップＳ２０３の動作）は不要である。
【００８７】  移動制御部２５６は、ステップＳ２０４において、搬送ロボット２００の現在位置から棚配置先座標までの移動経路を設定する。棚の再整列時には、搬送ロボット周囲に参考となる幾何形状が存在するためである。本実施例の場合、移動制御部２５６は、オドメトリによる移動制御は行わず、センサデータ４０４と地図データ４００との照合による自律移動により目的地となる棚配置先座標まで移動する（ステップＳ２０７）。次に、移動制御部２５６は、ステップＳ２０７＿２を実行する。ステップＳ２０７＿２は、新たに加わる処理であり、移動制御部２５６は、棚１００と搬送ロボット２００との間で位置合わせを行い、棚１００を持ち上げる。棚１００と搬送ロボット２００の位置合わせには、図１４や図１５で説明した方法を用いる。以降の動作は、実施例１（すなわち棚配置時）と同じである。すなわち、形状参照先データ４２３で指定された方向の幾何形状に対応するセンサデータ４０４と地図データ４００を照合し、棚１００の位置と角度を調整する。
【００８８】  図２０に、管理端末３００から送信される搬送データ４３０の例を示す。搬送データ４３０＿１１は、１つ目の搬送ロボット２００ａに送信する搬送データ４３０の例であり、搬送データ４３０＿１２は、２つ目の搬送ロボット２００ｂに送信する搬送データ４３０の例である。実施例１との違いは、棚配置時の棚取得先座標データ４１０が空欄である点である。
【００８９】  本実施例によれば、棚１００を特定位置に取りに戻らない以外は棚配置時と同様に、周囲の幾何形状を用いて棚１００の配置位置の微調整と角度の微調整を行うことができる。これにより、運用中の棚１００の再配列についても自動化することができる。
【００９０】  （３）他の実施例  本発明は、上述した実施例に限定されるものでなく、様々な変形例を含んでいる。例えば、上述した実施例は、本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも実施例で説明した全ての構成要素を備える必要はない。また、各実施例に対して他の構成要素を追加することができ、各実施例の一部の構成要素を削除することができ、各実施例の一部の構成要素を他の構成要素と置換することもできる。例えば前述の実施例の場合、搬送ロボット２００は、本体の左右に車輪２３０を取り付けた構成を有しているが、この構成に限らない。また、搬送ロボット２００はレーザ距離センサ２１０を用いて自車の周囲の形状を測定しているが、他の種類のセンサを搭載しても良い。
【００９１】  また、上述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現しても良い。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することにより（すなわちソフトウェア的に）実現しても良い。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD（Solid State Drive）等の記憶装置、又は、ICカード、SDカード、DVD等の記憶媒体に格納することができる。また、制御線や情報線は、説明上必要と考えられるものを示すものであり、製品上必要な全ての制御線や情報線を表すものでない。実際にはほとんど全ての構成が相互に接続されていると考えて良い。
【符号の説明】
【００９２】１００…棚、１０１…棚底マーカ、２００…搬送ロボット、２１０…レーザ距離センサ、２２０…荷役プレート、２３０…車輪、２４０…カメラ、２５１…データ送受信部、２５２…センシング部、２５３…荷役部、２５４…地図更新部、２５５…駆動部、２５６…移動制御部、３００…管理端末、３５１…棚配置プランニング部、３５２…搬送データ作成部、３５３…データ送受信部、４００…地図データ、４０１…棚レイアウトデータ、４０２…棚配置順データ、４０３…距離センサ計測範囲データ、４０４…センサデータ、４０５…棚足形状データ、４０６…搬送ロボット形状データ、４１０…棚取得先座標データ、４２０…棚設置データ、４２１…棚設置番号データ、４２２…棚配置先座標データ、４２３…形状参照先データ、４２４…配車データ、４２５…設置後動作データ、４３０…搬送データ、４３１…移動経路データ、４３２…現在位置データ、４４０…既設置棚座標値データ、４４１…形状参照用ロボット座標値データ。
【図１】
2017090108.tif 000003
【図２】
2017090108.tif 000004
【図３】
2017090108.tif 000005
【図４】
2017090108.tif 000006
【図５】
2017090108.tif 000007
【図６】
2017090108.tif 000008
【図７】
2017090108.tif 000009
【図８】
2017090108.tif 000010
【図９】
2017090108.tif 000011
【図１０】
2017090108.tif 000012
【図１１】
2017090108.tif 000013
【図１２】
2017090108.tif 000014
【図１３】
2017090108.tif 000015
【図１４】
2017090108.tif 000016
【図１５】
2017090108.tif 000017
【図１６】
2017090108.tif 000018
【図１７】
2017090108.tif 000019
【図１８】
2017090108.tif 000020
【図１９】
2017090108.tif 000021
【図２０】
2017090108.tif 000022
【国際調査報告】
2017090108.tif 000023
2017090108.tif 000024
2017090108.tif 000025
2017090108.tif 000026