(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024079157
(43)【公開日】2024-06-11
(54)【発明の名称】3次元搬送経路探索装置および3次元搬送経路探索方法
(51)【国際特許分類】
G01C 21/34 20060101AFI20240604BHJP
G05D 1/43 20240101ALI20240604BHJP
G05D 1/46 20240101ALI20240604BHJP
G08G 5/00 20060101ALI20240604BHJP
G16Y 10/40 20200101ALI20240604BHJP
G16Y 20/20 20200101ALI20240604BHJP
G16Y 40/60 20200101ALI20240604BHJP
【FI】
G01C21/34
G05D1/02 H
G05D1/10
G08G5/00 A
G16Y10/40
G16Y20/20
G16Y40/60
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022191917
(22)【出願日】2022-11-30
(71)【出願人】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(71)【出願人】
【識別番号】504005781
【氏名又は名称】株式会社日立プラントメカニクス
(74)【代理人】
【識別番号】110002365
【氏名又は名称】弁理士法人サンネクスト国際特許事務所
(72)【発明者】
【氏名】松本 杜青
(72)【発明者】
【氏名】寺本 やえみ
(72)【発明者】
【氏名】川尻 栄作
【テーマコード(参考)】
2F129
5H181
5H301
【Fターム(参考)】
2F129AA11
2F129DD13
2F129DD15
2F129DD62
2F129EE52
2F129EE78
2F129EE79
2F129EE81
2F129FF02
2F129FF20
2F129FF32
2F129FF62
2F129FF63
2F129FF65
2F129HH02
2F129HH04
2F129HH12
2F129HH20
5H181AA26
5H181BB13
5H181FF13
5H181FF14
5H181FF22
5H301AA01
5H301AA06
5H301BB05
5H301BB06
5H301BB14
5H301CC04
5H301CC07
5H301CC10
5H301JJ01
5H301LL06
5H301LL11
5H301QQ06
(57)【要約】
【課題】精度の高い経路探索を行うことができる3次元搬送経路探索装置の提供。
【解決手段】3次元搬送経路探索装置は、移動物の移動経路に該移動物の位置誤差に基づく第1の幅を付与して得られる拡張移動経路に関する拡張搬送経路情報207、および、障害物の大きさの情報を含む3次元地
図204の情報を記憶するデータベース102と、データベース102に記憶された拡張搬送経路情報207および3次元地
図204の情報に基づいて、移動物および搬送物が障害物と衝突しない3次元搬送経路を生成する搬送経路探索部と、を備える。
【選択図】
図2
【特許請求の範囲】
【請求項1】
搬送物を搬送する移動物の3次元搬送経路を探索する3次元搬送経路探索装置であって、
前記移動物の移動経路に該移動物の位置誤差に基づく第1の幅を付与して得られる拡張移動経路、および、障害物の大きさの情報を含む3次元地図情報を記憶する記憶部と、
前記記憶部に記憶された前記拡張移動経路および前記3次元地図情報に基づいて、前記移動物および前記搬送物が前記障害物と衝突しない前記3次元搬送経路を生成する搬送経路探索部と、を備える3次元搬送経路探索装置。
【請求項2】
請求項1に記載の3次元搬送経路探索装置において、
前記第1の幅は、少なくとも前記移動物の移動経路の水平方向の位置誤差に基づき、前記水平方向の位置誤差を、前記移動経路を中心軸とする水平方向の幅に変換することで算出される、3次元搬送経路探索装置。
【請求項3】
請求項1に記載の3次元搬送経路探索装置において、
前記3次元地図情報に含まれる前記障害物の大きさの情報に対して、前記3次元地図情報の作成の際に生じる誤差、前記搬送物の振れ幅、および、前記移動物が前記拡張移動経路を進行する際の進行方向の位置誤差の少なくとも一つに基づく第2の幅を付与し、加工3次元地図情報を生成する3次元地図加工部をさらに備え、
前記搬送経路探索部は、前記3次元地図情報に代えて前記加工3次元地図情報に基づいて、前記3次元搬送経路を生成する、3次元搬送経路探索装置。
【請求項4】
請求項1に記載の3次元搬送経路探索装置において、
前記拡張移動経路は2次元平面上の拡張2次元移動経路であって、
前記搬送経路探索部は、
前記拡張2次元移動経路で前記移動物による搬送を搬送開始位置から搬送終了位置まで行わせた場合に前記拡張2次元移動経路に干渉している前記障害物と衝突せず、かつ、全体の搬送時間が最短となる上昇下降制御パターンを探索し、前記3次元搬送経路を生成する、
3次元搬送経路探索装置。
【請求項5】
請求項4に記載の3次元搬送経路探索装置において、
前記記憶部には、複数の上昇下降制御パターンがさらに記憶されており、
前記搬送経路探索部は、
前記拡張2次元移動経路で前記移動物による搬送を搬送開始位置から搬送終了位置まで行わせた場合に前記拡張2次元移動経路に干渉している前記障害物と衝突せず、かつ、全体の搬送時間が最短となる上昇下降制御パターンを、前記記憶部に記憶されている複数の上昇下降制御パターンから選択し、前記3次元搬送経路を生成する、
3次元搬送経路探索装置。
【請求項6】
請求項1に記載の3次元搬送経路探索装置において、
前記搬送経路探索部は、
前記拡張移動経路で前記移動物による搬送を搬送開始位置から搬送終了位置まで行わせた場合に前記障害物と衝突せず、かつ、全体の搬送時間が最短となる前記拡張移動経路を探索し、前記3次元搬送経路を生成する、3次元搬送経路探索装置。
【請求項7】
請求項1に記載の3次元搬送経路探索装置において、
前記移動物の前記移動経路は、可能最大速度で2次元平面を移動する最速移動経路であって、
前記搬送経路探索部は、前記最速移動経路に、前記第1の幅と、前記最速移動経路と前記移動物の実際の移動経路との差に基づく第3の幅とを付与して得られる第2の拡張移動経路に基づいて、前記3次元搬送経路を生成する、3次元搬送経路探索装置。
【請求項8】
請求項4または5に記載の3次元搬送経路探索装置において、
前記搬送経路探索部により生成された前記3次元搬送経路に基づく搬送距離情報と搬送位置情報とを出力する出力結果作成部をさらに備える、3次元搬送経路探索装置。
【請求項9】
データベースにそれぞれ記憶された、搬送物を搬送する移動物の移動経路に該移動物の位置誤差に基づく幅を付与して得られる拡張移動経路、および、障害物の大きさの情報を含む3次元地図情報に基づいて、前記移動物および前記搬送物が前記障害物と衝突しない3次元搬送経路を生成する、
3次元搬送経路探索方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3次元搬送経路探索装置および3次元搬送経路探索方法に関する。
【背景技術】
【0002】
搬送物を搬送する装置(以下では、移動物と呼ぶことにする)としては、例えば、ドローンや天井クレーンなど種々の装置がある。3次元空間で移動物を移動したり移動物で搬送物を搬送したりする際に、事前にどのような搬送経路となるかを確認したり、フィードフォワード制御などで3次元方向の制御を事前に決定する場合がある。その場合、搬送開始前に3次元搬送経路を特定し、移動物や搬送物が経路上の障害物と干渉しないことを事前に確認するようにしている。
【0003】
例えば、特許文献1では、移動物の例として天井クレーンが記載されており、経路上を進行する際の搬送物と障害物との衝突を避けるために、搬送物または搬送経路上にある物体に対して所定の余裕空間を設定している。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、3次元搬送経路を特定する際には、以下のような誤差を考慮して3次元搬送経路を特定する必要がある。例えば、数値計算で求めた搬送経路には数値誤差がある。また、実機での搬送に対するノイズなどに起因する制御のずれによる誤差や、理論的最短搬送経路などの経路と実際の搬送とのずれなどによる誤差に加え、進行経路上での搬送物の振れ幅や、移動物が移動し得る経路上にある障害物の高さや位置情報の誤差などがある。
【0006】
上述した特許文献1には、搬送物の振れ幅を推定して余裕空間を設定することについては記載されている。しかしながら、その余裕空間には、上述したような移動物に誤差が考慮されておらず、搬送物と障害物との衝突の可能性を精度良く確認することができない。
【課題を解決するための手段】
【0007】
本発明の態様による3次元搬送経路探索装置は、搬送物を搬送する移動物の3次元搬送経路を探索する3次元搬送経路探索装置であって、前記移動物の移動経路に該移動物の位置誤差に基づく第1の幅を付与して得られる拡張移動経路、および、障害物の大きさの情報を含む3次元地図情報を記憶する記憶部と、前記記憶部に記憶された前記拡張移動経路および前記3次元地図情報に基づいて、前記移動物および前記搬送物が前記障害物と衝突しない前記3次元搬送経路を生成する搬送経路探索部と、を備える。
本発明の態様による3次元搬送経路探索方法は、データベースにそれぞれ記憶された、搬送物を搬送する移動物の移動経路に該移動物の位置誤差に基づく幅を付与して得られる拡張移動経路、および、障害物の大きさの情報を含む3次元地図情報に基づいて、前記移動物および前記搬送物が前記障害物と衝突しない3次元搬送経路を生成する。
【発明の効果】
【0008】
本発明によれば、衝突を回避できる3次元搬送経路の探索を行う際に移動物に関する誤差を考慮することで、精度の高い3次元搬送経路探索を行うことができる。
【図面の簡単な説明】
【0009】
【
図1】
図1は、3次元搬送経路探索装置の機能的構成の一例を示すブロック図である。
【
図2】
図2は、3次元搬送経路探索装置のハードウェア構成例を示す図である。
【
図3】
図3は、データベースに格納されているパラメータの一覧を示す図である。
【
図4】
図4は、移動物情報の具体例を示す図である。
【
図6】
図6は、搬送経路情報の具体例を示す図である。
【
図7】
図7は、3次元加工幅および経路幅の具体例を示す図である。
【
図8】
図8は、拡張搬送経路情報の具体例を示す図である。
【
図9】
図9は、3次元搬送情報の具体例を示す図である。
【
図12】
図12は、3次元搬送距離情報の具体例を示す図である。
【
図13】
図13は、経路作成方法および上昇下降制御パターンの具体例を示す図である。
【
図14】
図14は、経路探索部における処理手順を示すフローチャートである。
【
図15】
図15は、ステップS803の詳細処理を示すフローチャートである。
【
図16】
図16は、ステップS804の詳細処理を示すフローチャートである。
【
図17】
図17は、ステップS805の詳細処理を示すフローチャートである。
【
図18】
図18は、ステップS806の詳細処理を示すフローチャートである。
【
図19】
図19は、ステップS807の詳細処理を示すフローチャートである。
【
図20】
図20は、ステップS808の詳細処理を示すフローチャートである。
【
図21】
図21は、実施例1における天井クレーン搬送の概略を示す模式図である。
【
図22】
図22は、2次元地図上に2次元の経路を記載した模式図である。
【
図23】
図23は、実施例1における3次元搬送距離情報を示す図である。
【
図24】
図24は、実施例1における2次元平面内の経路の出力例の一例を示す図である。
【
図25】
図25は、
図24の拡張搬送経路を、移動物の進行方向を横軸とし高さを縦軸とした座標に示した図である。
【
図26】
図26は、実施例2におけるドローンによる搬送の概略を示す模式図である。
【
図28】
図28は、実施例2における3次元搬送距離情報を示す図である。
【
図29】
図29は、実施例2における加工3次元地図と搬送経路とを示す図である。
【発明を実施するための形態】
【0010】
以下、図を参照して本発明を実施するための形態について説明する。以下の記載および図面は、本発明を説明するための例示であって、説明の明確化のため、適宜、省略および簡略化がなされている。また、以下の説明では、同一または類似の要素および処理には同一の符号を付し、重複説明を省略する場合がある。なお、以下に記載する内容はあくまでも本発明の実施の形態の一例を示すものであって、本発明は下記の実施の形態に限定されるものではなく、他の種々の形態でも実施する事が可能である。
【0011】
<3次元搬送経路探索装置の機能的構成>
図1は、3次元搬送経路探索装置の機能的構成の一例を示すブロック図である。なお、以下では、3次元搬送経路探索装置を簡単に経路探索装置と呼ぶことにする。経路探索装置100は、移動物の特定の経路に基づいて3次元搬送経路を探索する装置である。
図1に示す例では、経路探索装置100は、データ入出力部101と、データベース102と、経路探索部103とを有する。
【0012】
経路探索装置100は、データベース102にアクセス可能である。データベース102は、経路探索装置100内のコンピュータまたは経路探索装置100と通信可能な外部のコンピュータに格納されている。データベース102には、後述する
図3に記載の各パラメータが格納されている。また、データベース102には、経路探索部103において算出された各種情報等も格納される。
【0013】
データ入出力部101は、キーボードなどの入力デバイスから、または、経路探索装置100と通信可能に接続される外部のコンピュータから、データの入力を受け付ける。また、データ入出力部101は、経路探索装置100内で算出されたデータをディスプレイなどの出力デバイスに出力したり、外部のコンピュータに表示可能に出力したりする。経路探索部103は、各処理部として経路作成部110と、誤差推定部111と、3次元地図加工部112と、拡張経路作成部113と、搬送経路探索部114と、出力結果作成部115とを有する。
【0014】
<経路探索装置100のハードウェア構成>
図2は、
図1に示した経路探索装置100のハードウェア構成例を示す図である。経路探索装置100は、ハードウェア構成としてプロセッサ701と、データ記憶装置702と、通信装置703と、入力装置704と、出力装置705と、プログラム記憶装置706とを備える。
【0015】
プロセッサ701は、CPU(Central Processing Unit)などのプロセッサであり、経路探索装置100の制御を実行する。データ記憶装置702は、プロセッサ701の作業エリアとなる。また、データ記憶装置702およびプログラム記憶装置706は、データや各種プログラムを記憶する非一時的な、または、一時的な記録媒体である。データ記憶装置702としては、たとえば、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)、フラッシュメモリ等がある。プログラム記憶装置706には、経路探索部103の各部の処理を実行するためのプログラムが格納されている。
【0016】
通信装置703は、ネットワークと接続し、データを送受信する。入力装置704はデータを入力する装置であり、たとえば、キーボード、マウス、タッチパネル、テンキー、スキャナ、マイク等である。出力装置705はデータを出力する装置であり、たとえば、ディスプレイ、プリンタ、スピーカ等である。
【0017】
図1に示した経路探索部103は、データ記憶装置702およびプログラム記憶装置706に記憶されたプログラムをプロセッサ701に実行させることにより実現される。データベース102はデータ記憶装置702に格納される。なお、データ記憶装置702として、外部のコンピュータの記憶装置を用いても良い。
【0018】
<データベース102の詳細説明>
図3は、データベース102に格納されているパラメータの一覧を示す図である。また、
図4~12は、
図3のパラメータの詳細例を示す図である。データベース102は、移動物情報200と、誤差情報201と、搬送経路情報202と、3次元地図加工幅203と、3次元地
図204と、加工3次元地
図205と、経路幅206と、拡張搬送経路情報207と、3次元搬送情報208と、3次元搬送距離情報209と、3次元搬送経路210と、経路作成方法211と、上昇下降制御パターン212と、を含む。
【0019】
(移動物情報200)
移動物情報200は、移動物の各方向の最高速度と加速度と減速度と搬送開始時の地面からの高さと質量などの情報を含む。移動物とは搬送物を搬送するための装置であり、後述するように天井クレーンのトローリーや3次元空間を飛行するドローン等が対応する。また、移動物情報200には、移動物が搬送する搬送物の各方向の大きさと質量と搬送開始時の地面からの高さなどの情報も含まれる。ドローンのような移動物の場合には、搬送物はドローンに直接保持されていて移動物と同じ動きを示すので、そのような場合には移動物情報200に搬送物と移動物が同一であることを示すフラグが格納される。
【0020】
(移動物情報200の具体例)
図4は、移動物情報200の具体例301を示す図である。移動物情報200には、移動物のIDと、移動物が移動し得る各方向と、各方向ごとの加速時の最高速度(加速)と減速時の最高速度(減速)と、加速時および減速時の加速度と減速度と、移動物の地面からの高さと、移動物の質量と、搬送物の大きさおよび質量と、搬送物と移動物とが同一か否かを示すフラグ情報などが含まれる。
【0021】
具体例301に記載されている例において、移動物のIDと移動物の地面からの高さ、移動物の質量、搬送物の質量、および、搬送物と移動物は同一か否かを示すフラグ情報については、移動物の移動方向に依存はしない。それ以外の、最高速度(加速)、最高速度(減速)、加速度、減速度および搬送物の大きさについては、方向ごとの値が格納されている。なお、各方向の搬送物の大きさは、その方向に対する最長の距離を取っても良いし、平均値であってもよいし、最小値であってもよいし、その他の値であっても良い。
【0022】
移動物のIDは、ある移動物が移動し得る領域に移動物が複数台ある場合、それらの移動物ごとにそれぞれ異なるIDが与えられる。搬送物と移動物とが同一か否か判断するフラグについては、「True」は搬送物と移動物とが同じであることを示し、「False」は異なることを示す。搬送物の大きさと搬送物の質量情報が0の場合は(例えば、
図4のID=1の場合が相当)、搬送物と移動物が同一か否かの判断フラグが「True」であったとしても、その移動物に搬送物がなく経路探索時の搬送に関与しないものとみなす。また、移動物の地面からの高さは、天井クレーンのような設置されているものについてはその高さを記入するが、ドローンのような高さ情報が変わるものは、搬送開始時の高さまたは0以上の数値が入っているものとする。なお、具体例301の例では、各情報の単位を[mm]や[kg]などで表示をしているが、これらは一例であり、これらの単位に限定されない。
【0023】
(誤差情報201)
誤差情報201は、2次元平面(xy平面)内の特定の経路を数値的に決めた場合の数値誤差(固定、時間)と、3次元方向の経路探索時の数値誤差と、特定の経路を通過する搬送と実際の搬送との誤差と、3次元地図を作成する際のセンサーなどの観測誤差と、3次元地図作成後に3次元地図の情報が変わり得る場合における情報の誤差を推定可能な情報とを含む。なお、情報の誤差を推定可能な情報とは、数値計算で生じ得る各時刻での誤差と、特定の経路を通過する搬送と実際可能な搬送との差(すなわち、搬送時間と速度と位置の差)を考慮した情報などを含む。
【0024】
(誤差情報201の具体例)
図5は、誤差情報201の具体例302を示す図である。誤差情報201は、移動物のIDごとに、時間間隔、2次元経路数値誤差(固定)、2次元経路数値誤差(時間)、3次元方向数値誤差(固定)、3次元方向数値誤差(時間)、実際の搬送の差、3次元地図センサー誤差(x、y、高さ)、3次元地図情報誤差等を含む。
【0025】
2次元経路数値誤差(固定)とは、2次元平面内の特定の経路を数値的に決めた場合の、経路の位置に関する時間に依存しない数値誤差である。一方、2次元経路数値誤差(時間)とは、蓄積誤差のようなある一定の時刻(時間間隔)ごとに変化する数値誤差である。3次元方向数値誤差(固定)および3次元方向数値誤差(時間)とは、移動物がz方向に移動する時のz方向の誤差である。2次元経路数値誤差の場合と同様に、3次元方向数値誤差(固定)は、3次元方向の搬送を数値的に決めた場合の時間に依存しない数値誤差であり、3次元方向数値誤差(時間)は、ある一定の時刻(時間間隔)ごとに変化する数値誤差である。各時刻で共通する誤差(固定)に対して、一定の時間間隔が経過するたびに数値誤差(時間)が加算されることになる。時間間隔は、1秒間隔で合ってもよいし、0.1秒、1分などでもよい。
【0026】
数値誤差は、例えば、微分方程式の数値計算時に行う積分における数値手法である台形公式やシンプソン法などで見積もられる誤差であってもよいし、誤差の程度、例えば小数点2桁の誤差を0.01などと表しても良い。また、数値誤差(固定)を0とし、数値誤差(時間)を非0としてもよいし、数値誤差(固定)を非0とし、数値誤差(時間)を0としてもよい。さらに、数値誤差(時間)は加算でなくとも乗算など他の四則演算で合っても良いし、記載の誤差を関数に入力して算出される誤差であっても良い。
【0027】
実際の搬送の差について、例えば、特定の経路を理論的最短搬送で搬送するとした場合、実際の搬送ではその理論的最短搬送との搬送時間とのずれが生じる場合がある。すなわち、実際の搬送の差とは、特定の経路を決定する際に想定した搬送と実際の搬送との差である。例えば、実際の搬送の差を%で表した場合、遅れの場合は正の[%]表示、早い場合は負の[%]で表す。もちろん、%表示でなくても良く、例えば、搬送位置の差を[mm]などで表現しても良いし、実際の搬送との差が表現される値であればよい。
【0028】
3次元地図センサー誤差(x、y、高さ)とは、3次元地図作成時のセンサーによる観測誤差である。3次元地図情報誤差とは、3次元地図作成時から時間が経過した実際の搬送までの障害物状況(3次元地図情報)が変化し得るので、その3次元地図作成時と搬送時との誤差を表す。なお、2次元経路数値誤差(固定、時間)や実際の搬送の差などにおいてx方向とy方向とが異なる場合は、それぞれの誤差を記載してもよい。
【0029】
(搬送経路情報202)
搬送経路情報202は、ユーザーが指定する経路情報で、3次元空間の搬送開始位置と搬送終了位置とその各位置を結ぶ経路情報(移動物のx方向およびy方向の位置)を含む。ユーザーから搬送開始位置および搬送終了位置以外の経路について指定がない場合は、経路作成部110において搬送開始位置と終了位置とを結ぶ経路(2次元平面内の経路)を作成する。
【0030】
(搬送経路情報202の具体例)
図6は、搬送経路情報202の具体例303を示す図である。搬送経路情報202は、移動物のIDと、各時刻ごとの移動物の位置(x方向)、移動物の位置(y方向)、搬送物の初期高さ、搬送開始のフラグおよび搬送終了のフラグなどの情報を含む。
図6の具体例303では時刻は0.1秒間隔であるが、この間隔でなくてもよいし、等間隔でなくてもよい。ID=1は、搬送開始位置および搬送終了位置以外の経路が記載されていない場合の例である。搬送終了時点の時刻は不明のため、情報なしとして「-」で表現しているが、「None」など別の表記であっても良いし、「-1」などの表現であっても良い。
【0031】
搬送開始および搬送終了のフラグについては、その時刻での移動物の位置が搬送開始の場合には搬送開始のフラグを「True」、搬送終了のフラグを「False」と表記し、搬送終了の場合には搬送終了のフラグを「True」、搬送開始のフラグを「False」と表記する。それ以外の場合は「False」と表記する。位置や高さの単位は[mm]に限らず、[m]であっても良いし特に限定されない。フラグの表記方法も、「True」および「False」に代えて0および1などの表現であっても良い。
【0032】
(3次元地図加工幅203)
3次元地図加工幅203は、3次元地図加工部112で加工3次元地図を作成する際に、誤差情報201の幅とは別にユーザーが指定する誤差幅である。
図7に示す具体例401は、3次元地図加工幅203の具体例を示したものである。幅(x)、幅(y)および高さ(z)はユーザーが指定する幅であり、誤差考慮(x)、誤差考慮(y)および誤差考慮(z)は、具体例302に示すような誤差情報201を3次元地図の障害物に考慮するか否かを決定するフラグ情報である。
【0033】
3次元地図の障害物に考慮する誤差情報201とは、具体例302に示す3次元地図センサー誤差や3次元地図情報誤差などである。具体例401に示すx、y、z方向の各誤差考慮について、「True」の場合には、3次元地図加工部112は、誤差推定部111で推定された3次元地図の各方向の誤差を考慮する。一方、「False」の場合には、3次元地図加工部112は、誤差推定部111で推定された誤差が有限であったとしても、後述する加工3次元地
図205を作成する際に考慮しない。
【0034】
(経路幅206)
経路幅206は、拡張経路作成部113で拡張2次元経路を作成する際に、誤差情報201とは別にユーザーが指定する誤差幅である。
【0035】
図7に示す具体例402は、経路幅206の具体例を示したものである。幅(x)、幅(y)および高さ(z)はユーザーが指定する幅であり、誤差考慮(進行方向垂直方向)、誤差考慮(進行方向)および誤差考慮(z)はフラグ情報である。ここで、高さ(z)とは、例えば、天井クレーンで上下動する際の高さ方向の誤差を意味する。誤差考慮(進行方向垂直方向)、誤差考慮(進行方向)および誤差考慮(z)は、3次元地図加工部112および拡張経路作成部113において、誤差推定部111が推定した誤差をそれぞれ2次元特定経路(2次元平面内の特定の経路)の進行方向垂直方向、2次元特定経路の進行方向および3次元方向に考慮するか否かを決定するフラグ情報である。
【0036】
具体例402において、誤差考慮(進行方向垂直方向)が「True」の場合には、拡張経路作成部113は誤差推定部111が推定した誤差(後述する)を考慮する。誤差考慮(進行方向方向)と誤差考慮(z)が「True」の場合には、3次元地図加工部112は3次元地図の障害物の幅と高さに誤差推定部111が推定した誤差(後述する)を追加する。
【0037】
また、誤差考慮(進行方向垂直方向)が「False」の場合には、誤差情報が有限であったとしても、拡張経路作成部113は、拡張搬送経路情報207を作成する際に進行方向垂直方向の誤差を考慮しない。誤差考慮(進行方向)と誤差考慮(z)の少なくとも一方が「False」の場合には、3次元地図加工部112は、加工3次元地
図205を作成する際に「False」の方向(進行方向、z方向)の誤差を考慮しない。
【0038】
(拡張搬送経路情報207)
拡張搬送経路情報207は、拡張経路作成部113で作成された拡張2次元経路である。拡張2次元経路は、搬送経路情報202に、誤差情報201および経路幅206に基づいて拡張経路作成部113で作成された幅(2次元平面内における幅)を追加したものである。
図8に示す具体例403では、搬送経路情報202の具体例303に対して幅(左)と幅(右)とが追加されている。幅(左)および幅(右)は、2次元平面内における経路を中心軸とした場合に、その中心軸の左右方向の幅である。例えば、
図5に示す誤差情報201に記載の2次元経路数値誤差(固定)、2次元経路数値誤差(時間)に基づいて、幅(左)および幅(右)を決定する場合を考える。
図5の例ではx方向とy方向とが同一であるとしているので、このx、y方向の数値誤差を、経路を中心軸とする幅方向の数値誤差に変換することで、幅(左)および幅(右)が算出される。
【0039】
(3次元搬送情報208)
3次元搬送情報208は、搬送経路探索部114で探索された移動物および搬送物の各時刻での搬送位置などの情報である。
図9に示す具体例404は、3次元搬送情報208の具体例である。3次元搬送情報208は、移動物のID、時刻、移動物の位置(x)、移動物の位置(y)、移動物の位置(z)、搬送物の位置(x)、搬送物の位置(y)および搬送物の位置(z)などを含む。また、具体例404に示す情報の他に、移動物および搬送物の各時刻の速度、振れ角、加速度および減速度や、移動物および搬送物の加減速制御に関する情報などを含んでも良い。なお、位置の単位は[mm]に限らず[m]などでも良く、単位を限定しない。
【0040】
(3次元地
図204)
3次元地
図204は、移動物が移動し得るフィールド上の各地点での障害物の高さ情報を含む2次元平面の地図である。例えば、3次元地
図204は、2次元平面内のx方向とy方向に対して一定の長さをもつ格子(グリッド)が複数あり、各格子内での障害物の最高の高さまたは平均の高さ情報などを含む地図とする。3次元地
図204では、これらの情報を組み合わせることで、3次元空間における障害物の大きさを表している。
【0041】
格子の幅は任意に選ぶことができる。ユークリッド空間のような座標も、数値計算上では微小の幅を持った格子として計算を行うことから、3次元地
図204のような格子とみなすことができる。すなわち、格子の幅を非常に微小な値に設定すれば、ユークリッド空間のような連続的に高さが変化する地図とみなすことができる。
【0042】
(3次元地
図204の具体例)
図10は、3次元地
図204の具体例501を示す図である。具体例501では、グリッド502をグリッドの開始位置とし、グリッド502の座標(x、y)を(x、y)=(0mm、0mm)としているが、これ以外に設定しても良い。グリッド内に記載した数値は障害物の最高の高さであるが、平均値であっても良いし、障害物の高さ情報を表すものであればなんでも良い。なお、具体例501では、数値は[mm]単位で表しているが、[mm]ではなく[m]単位でも良く、単位は限定されない。具体例501では、破線L1,L2で示した範囲に障害物が存在している。この障害物範囲L1、L2は、それぞれ一つの障害物を表す場合もあるし、複数の障害物から成る場合もある。
【0043】
(加工3次元地
図205)
加工3次元地
図205は、3次元地図加工部112で加工された3次元地図である。加工3次元地
図205は、3次元地
図204に対して3次元地図加工幅203と、経路幅206と、誤差推定部111により推定された誤差とを考慮し、障害物の高さ情報とx、y方向の幅とを変更したものである。
【0044】
(加工3次元地
図205の具体例)
図11は、加工3次元地
図205の具体例503を示す図である。具体例503は、
図10に示す3次元地
図204の具体例401に基づいて作成されたものであるが、
図7に示す3次元地図加工幅203において、x方向の幅の追加を行わないとした場合の例である。
図11では、障害物の範囲L1は、y方向のプラス側およびマイナス側にそれぞれ拡張されている。障害物の範囲L2についても、y方向のプラス側およびマイナス側にそれぞれ拡張されている。また、
図11の範囲L1,L2に含まれる各グリッドにおける障害物の高さは、500mmだけ加算されている。グリッド504では、拡張後の範囲L1と範囲L2とが重なっているが、この場合の高さの数値は、より高い方の障害物の高さとする。なお、グリッド504の障害物高さとして、平均値を取っても良いし、低い方の高さとしても良い。
【0045】
(3次元搬送距離情報209)
3次元搬送距離情報209は、3次元搬送情報208を得た際の移動物のx方向およびy方向の移動距離と、移動物および搬送物のz方向の上昇距離および下降距離とを含む。
図12に示す具体例601は、3次元搬送距離情報209の具体例である。3次元搬送距離情報209は、移動物のID、時刻、移動物の移動距離(x方向)、移動物の移動距離(y方向)、移動物の移動距離(z方向上昇)、移動物の移動距離(z方向下降)、搬送物の移動距離(z方向上昇)、搬送物の移動距離(z方向下降)、搬送物の上昇下降の制御パターン番号および詳細制御を含む。
【0046】
搬送物の上昇下降の制御パターン番号は、移動物が搬送物を上昇下降させる制御パターンを表す番号である。移動物が搬送物を上昇下降させる制御パターンは事前に用意されており、後述する搬送経路探索部114で適切な制御パターン番号を決定する際にはその制御パターン番号が格納される。なお、搬送物の上昇下降の制御パターン番号がない場合は、「-」または「None」などの表記で情報がないことを示す。
【0047】
詳細制御の欄については、搬送物の上昇下降の制御パターン番号が記載されている場合は「-」や空白とされる。搬送物の上昇下降の制御パターン番号が記載されていない場合には、具体例601に示すように、時刻:加速または時刻:減速が各時刻に対応付けて記載される。具体例601では距離の単位を[mm]としているが、これに限定されず[m]であっても良い。
【0048】
(3次元搬送経路210)
3次元搬送経路210には、後述する搬送経路探索部114で考慮した経路と、誤差が考慮された2次元平面内での経路(拡張2次元経路)を図示したものと、3次元方向の搬送を図示したものとが、3次元搬送経路の情報として格納される。
【0049】
(経路作成方法211)
経路作成方法211は、搬送経路情報202に搬送開始位置と搬送終了位置とがない場合、経路作成部110において経路(x、y方向の2次元平面内の経路)を作成する搬送方法が記載されている。
図13の具体例602は、経路作成方法211の具体例を示したものである。経路作成方法211には、x方向およびy方向のそれぞれについて理論的最短搬送を行うなどの搬送パターンを記載しても良いし、その他の搬送方法が記載されていても良い。
【0050】
(上昇下降制御パターン212)
上昇下降制御パターン212には、搬送経路探索部114において探索をする際の、搬送物の上昇下降の制御パターンが記載されている。
図13の具体例603は、天井クレーンに適用する場合の上昇下降制御パターンの具体例を示したものであり、移動物のIDと、搬送物の上昇下降方法である巻きパターンが記載されている。ドローンの場合であれば、搬送物を保持したドローンの上昇下降パターンが記載されている。
【0051】
上昇下降制御パターンは具体例603のような自然言語の表記であっても良いし、単に番号だけであっても良いし、具体例602の詳細制御のような具体的な制御方法が記載されていても良い。自然言語の表記がされている場合は、この自然言語に対応した制御が搬送経路探索部114で行われる。なお、巻きパターンが記載されていない場合は、「-」または「None」などの情報がないことを示す表示が記載される。
【0052】
<経路探索部103における処理の詳細説明>
次に、経路探索部103の各部で行われる処理について説明する。
図14は、経路探索部103における処理手順を示すフローチャートである。
【0053】
ステップS801では、経路探索部103は、データベース102の搬送経路情報202に記載されている2次元平面内の経路の内の、特定の経路の情報(対象としている移動物のIDの行に記載されている搬送経路情報)を取得する。
【0054】
ステップS802では、経路探索部103は、取得した特定の経路に含まれる情報が、搬送開始位置および搬送終了位置だけか否かを判定する。そして、ステップS802でYES(肯定判定)と判定されるとステップS803へ進み、NO(否定判定)と判定されるとステップS804へ進む。
【0055】
例えば、具体例303に記載の搬送経路情報202の場合、ID=0の例では、搬送開始位置(時刻=0s)および搬送終了位置(時刻=25.2s)以外の時刻の情報も含まれているので、ステップS802でNOと判定される。一方、ID=1の例では、搬送開始位置および搬送終了位置の情報しか記載されていないので、ステップS802でYESと判定される。
【0056】
ステップS803では、経路探索部103は、経路作成部110による2次元平面内の特定の経路の作成を行わせる。
【0057】
(ステップS803の詳細処理)
図15は、ステップS803の詳細処理(経路作成部110による処理)を示すフローチャートである。ステップS8031では、経路作成部110は、データ記憶装置702のデータベース102から、移動物情報200、経路作成方法211および搬送経路情報202を取得する。この場合、搬送経路情報202には、搬送開始位置および搬送終了位置の情報のみが記載されている。
【0058】
ステップS8032では、経路作成部110は、経路作成方法211に記載の搬送方法、および、移動物情報200に記載の最高速度、加速度などの情報に基づいて、2次元平面内における搬送開始位置と搬送終了位置を結ぶ特定の経路を作成する。
【0059】
経路作成方法211の一例として、具体例602には、「x方向およびy方向のそれぞれに対して理論的最短搬送で搬送」という搬送方法が記載されている。例えば、この搬送方法を適用した場合、ステップS8032では、この理論的最短搬送で搬送するように、搬送開始位置と搬送終了位置とを結ぶ経路を作成する。なお、経路作成方法の他の例としては、例えば、x方向およびy方向に関して等速で搬送する搬送方法や、機械学習で学習された各時刻での加減速情報が時系列情報として記載された搬送方法であっても良く、搬送方法については限定されない。
【0060】
ステップS8033では、経路作成部110は、ステップS8032で作成された経路を特定の経路として搬送経路情報202に格納する。
【0061】
図14のフローチャートに戻って、ステップS804では、経路探索部103は、誤差推定部111による誤差の推定を行わせる。
【0062】
(ステップS804の詳細処理)
図16は、ステップS804の詳細処理(誤差推定部111による処理)を示すフローチャートである。ステップS8041では、誤差推定部111は、移動物情報200と、誤差情報201と、搬送経路情報202内の特定の経路の情報とを取得する。ここで取得される特定の経路の情報とは、ステップS801において取得された特定の経路、または、ステップS803で作成された特定の経路に関する情報である。
【0063】
ステップS8042では、誤差推定部111は、取得した誤差情報201の2次元経路数値誤差(固定)、2次元経路数値誤差(時間)、3次元方向数値誤差(固定)および3次元方向数値誤差(時間)に基づいて、2次元経路数値誤差および3次元方向数値誤差の各時刻での誤差をそれぞれ推定する。
【0064】
なお、ステップS8042における誤差推定方法としては、一例として固定誤差に時間変化する誤差を各時刻ごとに加算していく方法がある。ただし、加算でなくとも四則演算であっても良いし、誤差を指数関数などの関数などに引数と入れて誤差を推定しても良い。また、誤差は機械学習などの手法で推定しても良く、誤差推定方法は限定されない。
【0065】
ステップS8043では、誤差推定部111は、ステップS8042で算出した誤差(2次元経路数値誤差および3次元方向数値誤差の各時刻での誤差)を用い、2次元経路の進行方向の誤差と、3次元方向の数値誤差と、3次元地図に関する誤差(x、y方向および高さ方向に関する3次元地図センサー誤差、3次元地図情報誤差)とから、加工3次元地図作成時に必要な誤差を推定する。加工3次元地図作成時に必要な誤差には、移動物が移動可能な地図内に設置されている障害物の高さが3次元地
図204の作成時から変わり得る誤差も含まれる。
【0066】
なお、移動物が2次元平面内の特定の経路を進行する際の進行方向の誤差については、移動物情報200に含まれる搬送物の幅および大きさと移動物の最高速度および加速度情報と、誤差情報201とに基づいて推定する。
【0067】
ステップS8044では、誤差推定部111は、ステップS8042で算出した誤差(2次元経路数値誤差および3次元方向数値誤差の各時刻での誤差)を用い、2次元経路の進行方向に垂直な方向の誤差から、拡張2次元経路の作成時に必要な誤差を推定する。なお、特定の経路に垂直方向の幅に相当する誤差については、移動物情報200に含まれる搬送物の幅および大きさと移動物の最高速度および加速度情報と、誤差情報201とに基づいて推定する。
【0068】
なお、ステップS8043およびS8044における誤差推定では、各誤差を均等に加算しても良いし、大きさに基づいて重みを付けて加算しても良いし、加算でなくとも四則演算であっても良いし、誤差を指数関数などの関数などに引数と入れて誤差を推定しても良い。また、誤差は機械学習などの手法で推定しても良く、誤差推定方法は限定されない。
【0069】
図14のフローチャートに戻って、ステップS805では、経路探索部103は、3次元地図加工部112による加工3次元地図の作成を行わせる。
【0070】
(ステップS805の詳細処理)
図17は、ステップS805の詳細処理(3次元地図加工部112による処理)を示すフローチャートである。ステップS8051では、3次元地図加工部112は、誤差推定部111で推定された「加工3次元地図作成時に必要な誤差」を誤差推定部111から取得すると共に、データベース102から3次元地図加工幅203と経路幅206とを取得する。
【0071】
なお、経路幅206から取得する情報は、進行方向およびz方向に関する幅と誤差考慮とである。進行方向およびz方向の幅は、地図上に存在する障害物の高さや幅として考慮され、3次元地
図204に反映される。
【0072】
ステップS8052では、3次元地図加工部112は、3次元地図加工幅203および経路幅206に記載の誤差考慮情報に基づいて、3次元地
図204を加工して加工3次元地
図205を作成する。すなわち、3次元地図加工幅203および経路幅206において誤差考慮しないと記載されている方向については、ユーザー指定の3次元加工幅の数値に基づいて3次元地
図204を加工する。一方、誤差考慮すると記載されている場合には、誤差情報201に基づく誤差とユーザーが指定した幅とに基づいて3次元地
図204を加工する。すなわち、3次元地
図204の障害物の2次元平面内の幅と3次元方向の高さに対して、取得した誤差と幅と高さを加えた加工3次元地
図205を作成する。
【0073】
なお、誤差考慮をする場合には、誤差とユーザーが指定した幅に関して、均等に加算しても良いし、大きさに基づいて重みを付けて加算しても良いし、加算でなくとも四則演算であっても良いし、誤差を指数関数などの関数などに引数と入れて幅を算出しても良い。また、幅は機械学習などの手法で推定しても良いし、幅を推定する方法は限定されない。
【0074】
なお、3次元地図加工部112が加える幅に関して、搬送物の振れ幅を推定し、その振れ幅を3次元地
図204に加える幅に追加しても良い。搬送物の振れ幅の推定は、例えば、移動物情報200に含まれる搬送物の幅と高さと移動物の速度と加速度情報と、2次元平面内の搬送経路情報202とに基づいて行われる。また、
図6に示した搬送経路情報202に、振れ幅の情報を含ませるようにしても良い。
【0075】
ステップS8053では、3次元地図加工部112は、加工された3次元地図を加工3次元地
図205のデータベースに格納する。
【0076】
図14のフローチャートに戻って、ステップS806では、経路探索部103は、拡張経路作成部113による拡張搬送経路情報(拡張2次元経路)の作成を行わせる。
【0077】
(ステップS806の詳細処理)
図18は、ステップS806の詳細処理(拡張経路作成部113による処理)を示すフローチャートである。ステップS8061では、拡張経路作成部113は、推定された特定の経路に関する誤差を誤差推定部111から取得すると共に、データベース102から経路幅206を取得する。
【0078】
ステップS8062では、拡張経路作成部113は、経路幅206に記載の誤差考慮情報に基づいて拡張2次元経路を作成する。誤差考慮情報が「誤差を考慮しない」という記載の場合には、ユーザー指定の経路幅の数値に基づいて拡張2次元経路を作成する。一方、誤差考慮情報が「誤差を考慮する」という記載の場合には、誤差推定部111の誤差とユーザーが指定した幅とに基づいて拡張2次元経路を作成する。
【0079】
誤差考慮をする場合は、誤差とユーザーが指定した幅に対して、均等に加算しても良いし、大きさに基づいて重みを付けて加算しても良いし、加算でなくとも四則演算であっても良いし、誤差を指数関数などの関数などに引数と入れて幅を推定しても良い。また、幅は機械学習などの手法で推定しても良く、幅を推定する方法は限定されない。
【0080】
ステップS8063では、拡張経路作成部113は、ステップS8062で作成された拡張2次元経路を拡張搬送経路情報207に格納する。
【0081】
図14のフローチャートに戻って、ステップS807では、経路探索部103は、搬送経路探索部114による3次元搬送情報の作成を行わせる。
【0082】
(ステップS807の詳細処理)
図19は、ステップS807の詳細処理(搬送経路探索部114による処理)を示すフローチャートである。ステップS8071では、搬送経路探索部114は、移動物情報200、加工3次元地
図205、拡張搬送経路情報207および上昇下降制御パターン212を取得する。
【0083】
ステップS8072では、搬送経路探索部114は、上昇下降制御パターン212に巻きパターンが記載されているか否かを判定する。そして、上昇下降制御パターン212に巻きパターンが記載されている場合にはステップS8703へ進み、巻きパターンが記載されていない場合にはステップS8704へ進む。
【0084】
ステップS8073では、搬送経路探索部114は、上昇下降制御パターン212に記載されている巻きパターンによる上昇下降制御をステップS806で作成された拡張2次元経路上で行わせた場合に、加工3次元地
図205上において拡張2次元経路と重なり干渉している障害物と衝突せず、かつ、全体の搬送時間が最短となる巻きパターンを決定する。ステップS8073の処理が終了したならばステップS8075へ進む。
【0085】
ステップS8074では、搬送経路探索部114は、加工3次元地
図205上において拡張2次元経路と重なり干渉している障害物と衝突せず、かつ、全体の搬送時間が最短となる巻きパターンを、移動物情報200に基づいて探索する。ステップS8074の処理が終了したならばステップS8075へ進む。
【0086】
ステップS8072からステップS8074へ進むのは、ステップS8072で上昇下降制御パターン212に巻きパターンが記載されていない場合である。巻きパターンがない場合には、例えば、「搬送開始前に搬送物を障害物最高の高さまで巻き上げ、搬送終了後に搬送物を指定の高さまで巻き下げる」のような予め決まったパターンを、実行可能であるか探索しても良い。または、「移動物の移動とともに搬送物の上昇を行い、障害物と衝突する場合は再度探索をはじめから行い、移動物の移動前に一定数搬送物を上昇させたのち移動を開始し障害物と衝突しないかを評価する」のように、探索を複数回行うことで3次元方向の搬送を探索しても良い。
【0087】
また、搬送物の下降についても同様に、「移動物が移動しながら搬送物と衝突するか否かを評価し、搬送物の巻き下しのタイミングの変更や、搬送終了時に搬送物を下降させるなど複数の方法を試し、最短搬送となる搬送方法を選択する」という手法でも良いし、それ以外の手法であっても良い。
【0088】
なお、上述したステップS8073の処理において、上昇下降制御パターン212に記載の巻きパターンのすべてが障害物に衝突する場合には、ステップS8074の処理で記載したような3次元方向の搬送の探索(経路と上昇下降パターンの探索)を行うようにしても良い。
【0089】
ステップS8075では、搬送経路探索部114は、探索された3次元方向の搬送情報に基づいて、各時刻における2次元平面内での移動物の各方向の位置、加速、減速、速度情報と、3次元方向の位置、加速、減速、速度情報とに基づき3次元搬送情報を作成する。そして、作成した3次元搬送情報と、巻きパターン番号または搬送物の上昇下降制御方法とを出力する。また、作成した3次元搬送情報は、データベース102の3次元搬送情報208に格納される。
【0090】
図14のフローチャートに戻って、ステップS808では、経路探索部103は、出力結果作成部115による3次元搬送経路情報の出力を行わせる。
【0091】
(ステップS808の詳細処理)
図20は、ステップS808の詳細処理(出力結果作成部115による処理)を示すフローチャートである。ステップS8081では、出力結果作成部115は、搬送経路探索部114で得られた3次元搬送情報と上昇下降制御パターン(巻きパターン番号または搬送物の上昇下降制御方法)とを取得する。
【0092】
ステップS8082では、出力結果作成部115は、取得した3次元搬送情報と上昇下降制御パターンとに基づいて、移動物および搬送物が各方向に移動した距離と、搬送物の上昇下降制御(巻きパターン番号で制御した場合はその番号)とを求め、それらを3次元搬送距離情報209に格納する。
【0093】
ステップS8083では、出力結果作成部115は、取得した3次元搬送情報と上昇下降制御パターンとに基づいて、搬送物が通過した経路情報を作成する。例えば、2次元平面内での移動図および3次元方向での移動図としてそれぞれ作成する。そして、作成した経路情報を、3次元搬送経路210に格納すると共に出力する。例えば、出力装置705に出力する。
【0094】
なお、3次元搬送経路210に格納される経路情報は、上述したような2次元平面内および3次元方向での移動図でなくても良く、例えば、3次元空間を移動した図であっても良いし、x方向、y方向およびz方向のぞれぞれの経路を図示したものであっても良い。また、経路情報は、移動図情報ではなくても良く、移動図の元となった数値情報(3次元搬送情報および3次元搬送距離情報)であっても良い。いずれの場合であっても、それらの情報は搬送位置情報と搬送距離情報から成る経路情報である。
【0095】
上述したフローチャートでの説明では、移動物のIDが1つだけ設定されている場合、すなわち移動物が一つだけの場合を例に説明したが、2つ以上のIDが設定され、実際に同時に搬送が行われる場合には、上記フローチャートの各処理を各IDごとに行う。ステップS8083における3次元搬送の移動図については、各IDごとにそれぞれ作成しても良いし、各IDの経路情報を1つの図に図示しても良い。
【0096】
<実施例1:天井クレーンによる搬送>
図21~25は、本実施の形態の経路探索装置100を天井クレーンによる搬送に使用した場合の実施例である。
図21は、天井クレーン搬送の概略を示す模式図である。1501は天井クレーンのトローリーであり、トローリー1501は水平面内のx方向およびy方向に移動可能である。トローリー1501は、ワイヤー1503により吊り下げられた搬送物1502を搬送する。実施例1では、トローリー1501が移動物に対応しており、移動物(トローリー1501)と搬送物1502との位置は異なっている。
【0097】
符号1505a,1505b,1505cを付した矩形はフィールド1504上にある障害物を表しており、天井クレーンのトローリー1501はフィールド1504を移動し得る。符号Sは搬送開始位置を表しており、符号Gは搬送終了位置を表している。トローリー1501は、吊り下げられた搬送物1502を障害物1505a~1505cに衝突させないように、搬送開始位置Sから搬送終了位置Gまで搬送する。
【0098】
実施例1では、搬送経路情報202として、具体例303に示すID=1のように、搬送開始位置Sおよび搬送終了位置Gのみが決まっている経路とする。そのため、経路作成部110は、2次元平面内での特定の経路を作成する。経路作成方法211としては、具体例602のID=0で指定されているような、x方向およびy方向にそれぞれ理論的最短搬送を行うものとする。
【0099】
誤差推定部111は、誤差情報201が具体例302のID=0の場合のように、時間変化する数値誤差を含む誤差であり、3次元地図加工幅203および経路幅206の誤差考慮が全方向「True」であるものとして、誤差推定を行う。
【0100】
3次元地図加工部112は、誤差推定部111で推定された誤差に基づいて、具体例503のように3次元地
図204に2次元平面内での幅と高さを追加することで、加工3次元地
図205を作成する。ただし、具体例503の場合と異なり、実施例1ではy方向に対しても幅を与える。
【0101】
図22は、加工3次元地
図205をz正方向から見た2次元地図として表し、その2次元地図上に2次元の経路を記載した模式図である。フィールド1510は、フィールド1504を2次元的に表したものである。符号1509a~1509cで示す破線矩形は加工3次元地
図205上の障害物であり、
図21に示す3次元地
図204上の障害物1505a~1505cを3次元地図加工部112で加工したものである。障害物1505a~1505cが3次元地図加工部112で加工されたことにより、障害物1509a~1509cには幅が追加されて大きくなっている。
【0102】
なお、実際の加工3次元地
図205は具体例503のようなグリッド構造となっており、各グリッドには高さ情報が記載されているが、
図22では、この数値情報の記載とグリッドを省略した簡易的な記載としている。もちろん、グリッドおよび高さを記載した図であっても良い。
【0103】
符号1511を付した矢印付きラインは拡張前の経路(2次元平面内の特定の経路)であり、矢印の向きが経路の進行方向を表している。もちろん、実際の経路にはこのような矢印はなくても構わない。この経路1511上を移動物(トローリー1501)が移動する。拡張経路作成部113は、誤差推定部111で推定された誤差に基づいて、
図22の2次元平面内における経路1511の進行方向に対して垂直方向に幅を追加する。符号1512を付した一対のラインは、拡張経路作成部113で追加された幅を表すラインである。搬送開始位置Sから搬送終了位置Gの方向に進行するにつれて、数値誤差の時間変化に依存してライン1512間の幅が増加している。
【0104】
搬送経路探索部114は、
図22で模式的に表したような加工3次元地
図205と拡張された経路(拡張2次元経路)の情報を用い、3次元方向の経路探索を行う。なお、拡張2次元経路は、幅を示す一対のライン1512によって挟まれた領域である。ここでは、上昇下降制御パターン212として、具体例603に記載のID=0の場合と同様の巻きパターンが記載されているとする。この上昇下降制御パターン212を使用して、拡張された経路と重なって記載されている障害物1509b、1509cと搬送物1502(
図21)とが衝突しない3次元方向の経路探索を行う。
【0105】
搬送物1502の上昇下降距離は、具体例403に記載されているような搬送開始位置Sおよび搬送終了位置Gの搬送物高さの情報と、拡張2次元経路であるライン1512間の領域内にある障害物1509b、1509cの最高値となる高さの差分と、搬送物1502の大きさを加味した距離を加算して見積もられる。実施例1では、搬送開始位置Sと搬送終了位置Gの搬送物高さが、具体例403のID=1の場合と同様であるとする。よって、障害物の最高高さが8000mmであるとすると、上昇値は2000mmであり、下降値も2000mmである。また、実施例1では、上昇下降制御パターン212として、具体例603のID=0における巻きパターン1と同様の巻きパターンが選択されたものとする。
【0106】
実施例1では、上述した上昇下降制御パターン212と搬送開始位置Sおよび搬送終了位置Gの搬送物高さと障害物の高さ情報に基づき、搬送経路探索部114は、具体例404のID=0の場合と同様の3次元搬送情報と、探索で決定された上昇下降制御パターン番号を出力する。
【0107】
出力結果作成部115は、搬送経路探索部114から出力された3次元搬送情報と、探索で決定された上昇下降制御パターン番号とから、
図23に示すような3次元搬送距離情報1521と、
図24,25に示すような3次元搬送経路を出力する。
【0108】
図24は、2次元平面内の経路の出力例1601の一例を示す図である。搬送開始位置を示す記号Sと、搬送終了位置を示す記号Gとが記載されている。誤差を含めた拡張2次元経路1604上には、障害物1609b,1609cが重なるように記載されている。障害物1609a~1609cは加工3次元地
図205上の障害物1509a~1509cに相当するが、代わりに3次元地
図204上の障害物1505a~1505cを表示しても良い。また、拡張2次元経路1604に関する表示についても、移動物の経路がわかるものであれば良く、例えば、拡張前の経路1511(
図22)でも良い。
【0109】
図24の出力例1601は一例であり、図の軸に数値が記載されていても良いし、地図に各障害物の高さ情報が記載されていても良いし、搬送物と障害物との高さの差を記載しても良い。さらに、搬送開始位置Sおよび搬送終了位置Gは記載されていなくても良い。また、搬送物と障害物との高さの差から、出力例1601をカラープロットで表しても良い。
【0110】
図25に示す出力例1611は、拡張2次元経路1604の移動物(トローリー1501)の進行方向を図の横軸とし、3次元方向の高さを図の縦軸として表したものである。符号1612を付したラインは搬送物1502の経路であり、符号1613b,1613cを付した矩形は障害物1509b,1509cの高さを模式的に表している。搬送物1502の経路1612は、
図25のように幅の無いラインでも良いし、幅を付けて表示しても良い。
【0111】
図25の出力例1611は一例であり、図の縦軸と横軸に数値が記載されていても良いし、経路1612に進行方向を示す矢印等が記載されていても良いし、搬送開始位置Sおよび搬送終了位置Gが記載されていても良い。また、移動物(トローリー1501)を図に記載しても良いし、搬送物1502の具体的な絵が記載されていても良い。さらには、搬送物が障害物を超える経路が記載されているものであれば、出力例1611に示すような表示形態でなくても良い。
【0112】
ユーザーは、3次元搬送距離情報1521と、出力例1601および出力例1611の3次元搬送経路とを確認後、天井クレーンのx方向とy方向の制御方法を決定し、3次元搬送距離情報1521に記載の上昇下降制御パターンに基づいて搬送物1502を巻き上げながら天井クレーンを制御する。
【0113】
また、ユーザーは、3次元搬送距離情報1521と出力例1601および出力例1611の3次元搬送経路の確認を省略し、経路が探索されたならば、3次元搬送距離情報1521の搬送距離と上昇下降制御パターンの情報に基づいて自動で天井クレーンを操作しても良い。
【0114】
<実施例2:ドローンによる搬送>
図26~29は、本実施の形態の経路探索装置100をドローンによる搬送に使用した場合の実施例である。
図26は、ドローンによる搬送の概略を示す模式図である。実施例2では、3次元地図は具体例501に記載のようにグリッドで表記された地図ではなく、連続空間で表記された3次元地
図1710であるとする。
図26に示すように3次元空間座標(x、y、z)の各軸が設定されており、各座標は連続値である。
【0115】
符号1712で示す曲面はフィールド上に存在する障害物を表現したもので、障害物1712の高さを表している。符号1700aは、ドローン1701と搬送物1702とから成る移動物を表している。搬送物1702は本来の移動物であるドローン1701に接触しているので、実施例2では、ドローン1701と搬送物1702と合わせて移動物1700aとして扱う。すなわち、実施例2は、移動物情報200の具体例301のID=1のように、「搬送物と移動物は同一か」という項目が「True」の場合の例である。
【0116】
実施例2では、
図26に示すように、2台(移動物ID=0,1)の移動物1700a,1700bを備えており、複数台の移動物がある場合の例である。符号S0,G0で示す位置は移動物ID=0の搬送開始位置と搬送終了位置であり、符号S1,G1で示す位置は移動物ID=1の搬送開始位置と搬送終了位置である。
【0117】
図27に示す2次元地
図1721は、
図26に示した3次元地
図1710をxy平面に射影したものである。なお、高さ情報についての記載を省略している。実施例2では、搬送経路情報202として、搬送開始位置および搬送終了位置以外の経路が指定されている場合について説明する。障害物1722は
図26に示した障害物1712をxy平面に射影したものである。また、搬送開始位置S0,S1および搬送終了位置G0,G1をxy平面に射影したものについては、それぞれ同一符号を付した。
【0118】
経路1727は搬送開始位置S0と搬送終了位置G0とを結ぶ経路であり、経路1728は搬送開始位置S1と搬送終了位置G1とを結ぶ経路である。経路1728は別装置を用いた機械学習などの手法で得られた経路であり、具体例602(経路作成方法211)の詳細制御にあるように、x方向とy方向のそれぞれにおいて各時刻の加減速制御により決定された経路であっても良い。
【0119】
上述のように移動物ID=0,1のいずれも経路がすでに決定されているので、
図14のフローチャートのステップS802でNOと判定され、ステップS804の誤差推定部111による誤差推定処理が実行される。ここで、実施例2の誤差推定部111では誤差情報201の各情報が不明確であり、誤差を精度良く推定できない状況とする。ただし、ユーザーはドローンによる搬送を過去に何度も行っており、特定の経路を搬送させる際の搬送位置との誤差や3次元地図作成時の誤差を、経験として把握していると仮定する。
【0120】
上述のユーザーが経験上知っている経路と3次元地図の誤差とを、ユーザーは3次元地図加工幅203と経路幅206との各幅に入力する。また、3次元地図加工幅203と経路幅206とに記載されているフラグ情報(誤差考慮(x)と誤差考慮(y)と誤差考慮(z))については、どの方向に関しても「False」を選択した状況とする。このような3次元地図加工幅203および経路幅206の状況においては、数値誤差などの推定は困難であるが、ユーザーの知見で得られた誤差を考慮した幅と高さを3次元地
図204に適用することで、3次元地図加工部112による加工3次元地
図205の作成、および、拡張経路作成部113による後述する拡張経路(拡張2次元経路に相当する)の作成は可能である。
【0121】
なお、実施例2では、ユーザーが誤差について経験上知見を持っている例としたが、知見を持ち合わせていない場合においても、ユーザーが安全と思われる幅を設定することで、起こり得る誤差を加味した加工3次元地
図205および拡張2次元経路を作成することが可能である。
【0122】
搬送経路探索部114では、上述のような加工3次元地
図205および拡張2次元経路を用いて、移動物が拡張2次元経路上にある障害物の高さを越えられるように各移動物の上昇下降の経路を探索する。実施例2では、上昇下降制御パターンについては、具体例603のID=1の場合のように巻きパターン(上昇下降のパターン)が指定されていないとする。この場合、
図19のフローチャートのステップS8072ではNOと判定され、ステップS8074において探索が網羅的に行われ、ステップS8075において探索後の3次元搬送情報と探索で得られた3次元方向の移動物の上昇下降の制御方法が出力される。
【0123】
出力結果作成部115は、出力された3次元搬送情報と3次元方向の移動物の上昇下降の制御方法に基づいて、
図28に示すような3次元搬送距離情報1730と、
図29に示すような3次元搬送経路に関する情報を出力する。
図28に示す3次元搬送距離情報1730の詳細制御は、各時刻で加速(accel)と減速(brake)を選択したかを記載したものである。
【0124】
図29は、
図26に示す3次元地図を3次元地図加工部112で加工した加工3次元地図を示したものである。
図29では、加工3次元地図上に移動物1700a,1700bの3次元的な経路1727,1728も重ねて示した。符号1802を付した曲面は、加工3次元地図における障害物を表現したものであり、障害物の高さを表す曲面である。加工3次元地図における障害物1802は、3次元地図上の障害物1712を3次元地図加工部112で加工したものである。
【0125】
搬送開始位置S0と搬送終了位置G0とを結ぶ経路1727に対しては、水平方向の幅を有する面状の拡張経路1808が設定されている。搬送開始位置S1と搬送終了位置G1とを結ぶ経路1728に対しては、水平方向の幅を有する面状の拡張経路1810が設定されている。
【0126】
天井クレーンでは移動物(トローリー1501)はxy方向にしか移動できないので、移動物に対して2次元平面での拡張経路(拡張2次元経路)を考えたが、ドローンの場合には移動物は3次元的に移動できるので、拡張経路1808,1810のように3次元的な拡張経路で考えるようにしている。拡張経路1808,1810をxy平面上に射影したものが、拡張2次元経路である。
【0127】
なお、
図29に示す拡張経路1808,1810は一例であり、拡張経路1808,1810はチューブ状で表現されていても良いし、実施例1の場合と同様に、2次元平面の経路と高さとを軸とした拡張経路を、各移動物IDごとに記載しまたは2つのIDを合わせて記載しても良い。
【0128】
ユーザーは3次元搬送距離情報1730(
図28)と、
図29の3次元搬送経路を確認後、移動物ID=0についてはx方向およびy方向の制御方法を決定する。また、移動物ID=1については機械学習で決定した制御方法を用いる。そして、ユーザーは、3次元搬送距離情報1730の詳細制御に記載の移動物の上昇下降制御に基づいて、ドローンを制御する。また、ユーザーは、3次元搬送距離情報1730および
図29の3次元搬送経路の確認を省略し、経路が探索された後に、3次元搬送距離情報1730の搬送距離および上昇下降制御パターンの情報に基づいて自動でドローンを操作しても良い。
【0129】
以上説明した本発明の実施形態および変形例によれば、以下の作用効果を奏する。
【0130】
(C1)
図1,8,21,22,24等に示すように、3次元搬送経路探索装置100は、搬送物1502を搬送するトローリー(移動物)1501の3次元搬送経路を探索する。トローリー1501の経路(移動経路)1511にトローリー1501の位置誤差に基づく第1の幅(例えば、
図8の拡張搬送経路情報207に記載の幅(左)、幅(右)や、
図22の一対のライン1512間の幅に含まれている)を付与して得られる拡張搬送経路情報(拡張移動経路)207、および、障害物1505a~1505cの大きさの情報を含む3次元地図(3次元地図情報)204を記憶するデータベース(記憶部)102と、データベース102に記憶された拡張搬送経路情報207および3次元地
図204に基づいて、トローリー1501および搬送物1502が障害物1505a~1505cと衝突しない3次元搬送経路を生成する搬送経路探索部114と、を備える。
【0131】
上述したように、搬送経路探索部114は、トローリー(移動物)1501の位置誤差に基づく第1の幅を付与して得られる拡張2次元経路1604を設定し、拡張2次元経路1604に基づいてトローリー1501および搬送物1502が障害物1609b,1609cと衝突しない3次元搬送経路を生成している。このように、衝突を回避できる3次元搬送経路を生成する際に、移動物に関する誤差(移動物の位置誤差)を考慮することで、精度の高い3次元搬送経路の探索を行うことができる。特に、
図5の誤差情報201に記載の時間に依存する誤差(例えば、2次元経路数値誤差(時間))については、拡張2次元経路1604を用いることで容易に適用することができる。
【0132】
なお、上述した実施の形態では、3次元地図センサー誤差等を考慮した加工3次元地
図205を用いて探索を行う例について説明しているが、加工前の3次元地
図204を用いて3次元搬送経路の探索を行った場合でも、移動物に関する誤差を考慮することで、従来に比べて、精度の高い3次元搬送経路の探索を行うことができる。
【0133】
また、実施例2のように、ドローン1701により搬送を行う場合には、
図29に示す拡張経路1808が拡張移動経路に相当し、実施例1の場合と同様に、精度の高い3次元搬送経路の探索を行うことができる。
図29においても、加工3次元地図における障害物1802に代えて3次元地図上の障害物1712を用いて3次元搬送経路の探索を行った場合でも、移動物に関する誤差を考慮することで、従来に比べて、精度の高い3次元搬送経路の探索を行うことができる。
【0134】
なお、3次元地図(3次元地図情報)204は、例えば、
図10に示すように2次元平面を有限の大きさのグリッドでグリッド化し、グリッド内に存在する障害物の高さ情報を含むものである。ただし、グリッドの幅は任意に選ぶことができ、幅を非常に微小な値に設定すれば、ユークリッド空間のような連続的に高さが変化する地図とみなすことができる。すなわち、3次元地
図204は、グリッド化された地図に限らず、連続空間を表現する地図とすることもできる。
【0135】
(C2)上記(C1)において、
図5,22等に示すように、上述した第1の幅は、少なくとも移動物(トローリー1501)の移動経路(1511)の水平方向の位置誤差(
図5の誤差情報201に示す2次元経路数値誤差(固定)および2次元経路数値誤差(時間))に基づき、その水平方向の位置誤差を、移動経路(1511)を中心軸とする水平方向の幅に変換することで算出される。
【0136】
(C3)上記(C1)において、
図1,5,10,11等に記載のように、3次元地図(3次元地図情報)204に含まれる障害物の大きさの情報に対して、3次元地
図204の作成の際に生じる誤差(例えば、
図5に記載の3次元地図センサー誤差)、搬送物の振れ幅、および、移動物が拡張移動経路を進行する際の進行方向の位置誤差の少なくとも一つに基づく第2の幅を付与し、加工3次元地図(加工3次元地図情報)205を生成する3次元地図加工部112をさらに備え、搬送経路探索部114は、3次元地
図204に代えて加工3次元地
図205に基づいて、3次元搬送経路を生成する。
【0137】
上述のように、3次元地
図204の作成の際に生じる誤差、搬送物の振れ幅、および、移動物が拡張移動経路を進行する際の進行方向の位置誤差を、障害物の大きさ情報に第2の幅という形で反映させることで、上記誤差や搬送物の振れ幅等の影響による搬送物と障害物との衝突を回避できる搬送経路の探索を行うことが可能となる。
【0138】
(C4)上記(C1)において、
図19,22,24等に示すように、拡張移動経路は2次元平面上の拡張2次元経路(拡張2次元移動経路)1604であって、搬送経路探索部114は、拡張2次元経路1604で移動物による搬送を搬送開始位置Sから搬送終了位置Gまで行わせた場合に拡張2次元経路1604に干渉している障害物1609b,1609cと衝突せず、かつ、全体の搬送時間が最短となる上昇下降制御パターンを探索し、3次元搬送経路を生成する。
【0139】
障害物1609b,1609cに対して拡張2次元経路1604を設定して上昇下降制御パターンを探索するので、誤差を考慮して障害物との衝突を評価することができ、障害物との衝突を確実に回避できる3次元搬送経路を生成することが可能となる。
【0140】
(C5)上記(C4)において、
図13,19,24等に示すように、データベース102の上昇下降制御パターン212には、複数の巻きパターン(上昇下降制御のパターン)がさらに記憶されており、搬送経路探索部114は、拡張2次元経路(拡張2次元移動経路)1604で移動物による搬送を搬送開始位置Sから搬送終了位置Gまで行わせた場合に拡張2次元経路1604に干渉している障害物1609b,1609cと衝突せずかつ、全体の搬送時間が最短となる上昇下降制御パターンを、上昇下降制御パターン212に記憶されている複数の上昇下降制御のパターンから選択し、3次元搬送経路を生成する。
【0141】
複数の上昇下降制御のパターンについて探索を行うことにより、より適切な3次元搬送経路を生成することができる。
【0142】
(C6)上記(C1)において、
図26,29等に示すように、搬送経路探索部114は、拡張経路(拡張移動経路)1808でドローン(移動物)1701による搬送を搬送開始位置S0から搬送終了位置G0まで行わせた場合に障害物1802と衝突せず、かつ、全体の搬送時間が最短となる拡張経路1808を探索し、3次元搬送経路を生成する。
【0143】
上述のような探索を行うことによって、ドローン1701のように3次元空間を自由に移動できる場合の搬送経路探索においても、移動物の位置誤差を考慮した衝突回避が可能となる。
【0144】
(C7)上記(C1)において、
図1,13等に示すように、移動物の経路は、可能最大速度で2次元平面を移動する理論的最短搬送の経路(最速移動経路)である。すなわち、経路作成部110は、
図13の経路作成方法211のID=0の場合の理論的最短搬送の経路を作成する。そして、搬送経路探索部114は、理論的最短搬送の経路に、上述した第1の幅と、最速移動経路と移動物の実際の経路との差に基づく第3の幅とを付与して得られる第2の拡張移動経路に基づいて、3次元搬送経路を生成する。
【0145】
実際の経路は最速移動経路に対してずれが生じるので、上述のように理論的最短搬送の経路に第3の幅をさらに考慮することにより、3次元搬送経路の精度がより向上する。
【0146】
(C8)上記(C4)または(C5)において、
図9,12等に記載のように、搬送経路探索部114により生成された3次元搬送経路に基づく搬送距離情報と搬送位置情報とを出力する出力結果作成部115をさらに備える。なお、出力される搬送距離情報および搬送位置情報は、
図9,12に示す3次元搬送情報208,3次元搬送距離情報209のような数値情報であっても良いし、
図24,25に示すような移動図であっても良い。これらの搬送距離情報および搬送位置情報によって、それらを搬送制御装置による搬送制御や、オペレータによる搬送状況の確認を行うことができる。
【0147】
(C9)
図1,8,21,22等に示すように、3次元搬送経路探索方法では、データベース102にそれぞれ記憶された、搬送物1502を搬送する移動物(トローリー1501)の移動経路(経路1511)に移動物の位置誤差に基づく幅(例えば、
図8の拡張搬送経路情報207に記載の幅(左)、幅(右)や、
図22の一対のライン1512間の幅に含まれている)を付与して得られる拡張移動経路、および、障害物1505a~1505cの大きさの情報を含む3次元地図(3次元地図情報)204に基づいて、移動物および搬送物1502が障害物1505a~1505cと衝突しない3次元搬送経路を生成する。
【0148】
上述のように、衝突を避けられる3次元搬送経路を生成する際に、移動物に関する誤差(移動物の位置誤差)を考慮することで、精度の高い3次元搬送経路の探索を行うことができる。
【0149】
以上説明した各実施形態や変形例はあくまで一例であり、発明の特徴が損なわれない限り、本発明はこれらの内容に限定されるものではない。本発明の技術的思想の範囲内で考えられるその他の態様も本発明の範囲内に含まれる。例えば、前述した実施例は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに本発明は限定されない。また、ある実施例の構成の一部を他の実施例の構成に置き換えてもよい。また、ある実施例の構成に他の実施例の構成を加えてもよい。また、各実施例の構成の一部について、他の構成の追加、削除、または置換をしてもよい。
【0150】
また、前述した各構成、機能、処理部、処理手段等は、それらの一部又は全部を、たとえば集積回路で設計する等により、ハードウェアで実現してもよく、プロセッサがそれぞれの機能を実現するプログラムを解釈し実行することにより、ソフトウェアで実現してもよい。
【0151】
各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、SSD(Solid State Drive)等の記憶装置、又は、IC(Integrated Circuit)カード、SDカード、DVD(Digital Versatile Disc)の記録媒体に格納することができる。
【0152】
また、制御線や情報線は説明上必要と考えられるものを示しており、実装上必要な全ての制御線や情報線を示しているとは限らない。実際には、ほとんど全ての構成が相互に接続されていると考えてよい。
【符号の説明】
【0153】
100…3次元搬送経路探索装置(経路探索装置)、101…データ入出力部、102…データベース、103…経路探索部、110…経路作成部、111…誤差推定部、112…3次元地図加工部、113…拡張経路作成部、114…搬送経路探索部、115…出力結果作成部、200…移動物情報、201…誤差情報、202…搬送経路情報、203…3次元地図加工幅、204,1710…3次元地図、205…加工3次元地図、206…経路幅、207…拡張搬送経路情報、208…3次元搬送情報、209,1521,1730…3次元搬送距離情報、210…3次元搬送経路、211…経路作成方法、212…上昇下降制御パターン、1501…トローリー、1502,1702…搬送物、1505a~1505c,1509a~1509c,1609a~1609c,1712,1722,1802…障害物、1511,1727,1728…経路、1604…拡張2次元経路、1700a,1700b…移動物、1701…ドローン、1808,1810…拡張経路、G,G0,G1…搬送終了位置、S,S0,S1…搬送開始位置