(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023136223
(43)【公開日】2023-09-29
(54)【発明の名称】情報処理装置、移動制御システム、情報処理方法及びプログラム
(51)【国際特許分類】
G05D 1/02 20200101AFI20230922BHJP
【FI】
G05D1/02 P
【審査請求】有
【請求項の数】15
【出願形態】OL
(21)【出願番号】P 2022041727
(22)【出願日】2022-03-16
(71)【出願人】
【識別番号】000006208
【氏名又は名称】三菱重工業株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】西面 敦義
(72)【発明者】
【氏名】▲高▼尾 健司
【テーマコード(参考)】
5H301
【Fターム(参考)】
5H301BB07
5H301KK03
5H301LL01
5H301LL03
5H301LL06
5H301MM04
(57)【要約】
【課題】移動体の稼働率の低下を抑制する。
【解決手段】情報処理装置は、移動先の位置を示す移動先情報を取得する移動先情報取得部と、移動先情報に基づき、移動先までの移動体の経路を設定する経路設定部と、経路を設定した際には予期していない事象が経路を移動する移動体に発生したことを示す、事象情報を取得する事象取得部と、を含み、経路設定部は、事象情報に基づいて移動体の次の経路を設定する。
【選択図】
図1
【特許請求の範囲】
【請求項1】
移動先の位置を示す移動先情報を取得する移動先情報取得部と、
前記移動先情報に基づき、前記移動先までの移動体の経路を設定する経路設定部と、
前記経路を設定した際には予期していない事象が前記経路を移動する移動体に発生したことを示す、事象情報を取得する事象取得部と、
を含み、
前記経路設定部は、前記事象情報に基づいて前記移動体の次の経路を設定する、
情報処理装置。
【請求項2】
前記事象取得部は、前記事象情報を前記移動体から取得する、請求項1に記載の情報処理装置。
【請求項3】
前記事象取得部は、前記経路の移動を終了した旨の情報を前記事象情報として取得し、
前記経路設定部は、前記経路の移動を終了した旨の前記事象情報が取得されたら、前記移動先とは別の位置である更新移動先までの経路を設定する、請求項2に記載の情報処理装置。
【請求項4】
前記経路設定部は、前記移動体の充電量に基づいて、前記更新移動先を設定する、請求項3に記載の情報処理装置。
【請求項5】
前記事象取得部は、前記移動体の充電量の情報を前記事象情報として取得し、
前記経路設定部は、前記移動体の充電量が閾値未満である場合には、充電場所までの経路を設定する、請求項2から請求項4のいずれか1項に記載の情報処理装置。
【請求項6】
前記経路設定部は、充電量が閾値未満である第1移動体以外の第2移動体に対して、前記第1移動体が予定していた移動先までの経路を設定する、請求項5に記載の情報処理装置。
【請求項7】
前記経路設定部は、複数の前記第2移動体のうちで、その第2移動体の移動先から、前記第1移動体が予定していた移動先まで到達する時間が最短となる第2移動体に対して、前記第1移動体が予定していた移動先までの経路を設定する、請求項6に記載の情報処理装置。
【請求項8】
前記経路設定部は、前記充電場所で充電している前記移動体の充電量が、前記閾値より高い所定値以上となった場合に、その移動体の前記充電場所からの経路を設定する、請求項5から請求項7のいずれか1項に記載の情報処理装置。
【請求項9】
前記事象取得部は、前記移動体が故障した旨を示す情報を前記事象情報として取得し、
前記経路設定部は、前記移動体が故障した旨の事象情報を取得したら、故障した前記移動体の位置から所定距離内の位置を通らないように、他の移動体の経路を設定する、請求項2から請求項8のいずれか1項に記載の情報処理装置。
【請求項10】
前記事象取得部は、前記経路上に障害物が存在する旨を示す情報を前記事象情報として取得し、
前記経路設定部は、前記経路上に障害物が存在する旨の事象情報を取得したら、前記障害物から所定距離内の位置を通らないように、移動体の経路を設定する、請求項2から請求項9のいずれか1項に記載の情報処理装置。
【請求項11】
前記事象取得部は、デッドロックが発生した旨を示す情報を前記事象情報として取得し、
前記経路設定部は、デッドロックが発生した旨の事象情報を取得したら、デッドロックが発生した移動体のうちの一部の移動体について、前記移動先とは別の位置である更新移動先までの経路を設定し、デッドロックが発生した移動体のうちの他の移動体については、次の経路を設定しない、請求項2から請求項10のいずれか1項に記載の情報処理装置。
【請求項12】
請求項1から請求項11のいずれか1項に記載の情報処理装置と、
前記移動先情報を設定する管理装置と、を有し、
前記情報処理装置は、前記移動先情報の内容を維持したまま、前記移動体の次の経路を設定する、
移動制御システム。
【請求項13】
請求項1から請求項11のいずれか1項に記載の情報処理装置と、
前記移動体と、を有する、
移動制御システム。
【請求項14】
移動先の位置を示す移動先情報を取得するステップと、
前記移動先情報に基づき、前記移動先までの移動体の経路を設定するステップと、
前記経路を設定した際には予期していない事象が前記経路を移動する移動体に発生したことを示す、事象情報を取得するステップと、
を含み、
前記経路を設定するステップでは、前記事象情報に基づいて前記移動体の次の経路を設定する、
情報処理方法。
【請求項15】
移動先の位置を示す移動先情報を取得するステップと、
前記移動先情報に基づき、前記移動先までの移動体の経路を設定するステップと、
前記経路を設定した際には予期していない事象が前記経路を移動する移動体に発生したことを示す、事象情報を取得するステップと、
をコンピュータに実行させるプログラムであって、
前記経路を設定するステップでは、前記事象情報に基づいて前記移動体の次の経路を設定する、
プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、移動制御システム、情報処理方法及びプログラムに関する。
【背景技術】
【0002】
自動で移動する複数の移動体に対して、移動経路を設定する技術が知られている。例えば特許文献1には、荷役車両の現在位置から作業開始位置までの間で最短距離となる基本走行ルートを設定し、その基本走行ルートが他の荷役車両の基本走行ルートが干渉する場合には、優先する荷役車両にその基本走行ルートを採用しつつ、優先しない車両には迂回ルートを設定する運行管理方法が記載されている。
【先行技術文献】
【特許文献】
【0003】
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、実際の移動体の運行中には、例えば故障などの予期しない事象が発生することにより、計画した経路での移動が適切にできなくなる場合がある。このような場合には、例えば全ての移動体を停止させた後、人手によりその事象を解決して(例えば故障の場合は故障した移動体の回収)、移動を再開させることも考えられる。しかし、このような対応を行った場合には、移動体の移動完了までに時間を要することになり、稼働率が低下する。従って、移動体の稼働率の低下を抑制することが求められている。
【0005】
本開示は、上述した課題を解決するものであり、移動体の稼働率の低下を抑制可能な情報処理装置、移動制御システム、情報処理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本開示に係る情報処理装置は、移動先の位置を示す移動先情報を取得する移動先情報取得部と、前記移動先情報に基づき、前記移動先までの移動体の経路を設定する経路設定部と、前記経路を設定した際には予期していない事象が前記経路を移動する移動体に発生したことを示す、事象情報を取得する事象取得部と、を含み、前記経路設定部は、前記事象情報に基づいて前記移動体の次の経路を設定する。
【0007】
本開示に係る移動制御システムは、前記情報処理装置と、前記移動先情報を設定する管理装置と、を有し、前記情報処理装置は、前記移動先情報の内容を維持したまま、前記移動体の次の経路を設定する。
【0008】
本開示に係る移動制御システムは、前記情報処理装置と、前記移動体とを有する。
【0009】
本開示に係る情報処理方法は、移動先の位置を示す移動先情報を取得するステップと、前記移動先情報に基づき、前記移動先までの移動体の経路を設定するステップと、前記経路を設定した際には予期していない事象が前記経路を移動する移動体に発生したことを示す、事象情報を取得するステップと、を含み、前記経路を設定するステップでは、前記事象情報に基づいて前記移動体の次の経路を設定する。
【0010】
本開示に係るプログラムは、移動先の位置を示す移動先情報を取得するステップと、前記移動先情報に基づき、前記移動先までの移動体の経路を設定するステップと、前記経路を設定した際には予期していない事象が前記経路を移動する移動体に発生したことを示す、事象情報を取得するステップと、をコンピュータに実行させるプログラムであって、前記経路を設定するステップでは、前記事象情報に基づいて前記移動体の次の経路を設定する。
【発明の効果】
【0011】
本開示によれば、移動体の稼働率の低下を抑制することができる。
【図面の簡単な説明】
【0012】
【
図1】
図1は、本実施形態に係る移動制御システムの模式図である。
【
図3】
図3は、管理装置の模式的なブロック図である。
【
図4】
図4は、情報処理装置の模式的なブロック図である。
【
図5】
図5は、移動体の制御装置の模式的なブロック図である。
【
図7】
図7は、次の経路の設定の一例を示す模式図である。
【
図8】
図8は、次の経路の設定の一例を示す模式図である。
【
図9】
図9は、充電が完了した後の作業の割り当ての変更例を説明するための模式図である。
【
図10】
図10は、次の経路の設定の一例を示す模式図である。
【
図11】
図11は、次の経路の設定の一例を示す模式図である。
【
図12】
図12は、次の経路の設定の一例を示す模式図である。
【
図13】
図13は、次の経路の設定の一例を示す模式図である。
【
図14】
図14は、情報処理装置の処理フローを説明するフローチャートである。
【発明を実施するための形態】
【0013】
以下に添付図面を参照して、本開示の好適な実施形態を詳細に説明する。なお、この実施形態により本開示が限定されるものではなく、また、実施形態が複数ある場合には、各実施形態を組み合わせて構成するものも含むものである。
【0014】
(移動制御システム)
図1は、本実施形態に係る移動制御システムの模式図である。
図1に示すように、本実施形態に係る移動制御システム1は、移動体10と管理装置12と情報処理装置14とを含む。移動制御システム1は、設備Wに所属する移動体10の移動を制御するシステムである。設備Wは、例えば倉庫など、物流管理される設備である。移動制御システム1においては、移動体10は、設備Wの領域AR内に配置された目標物Pをピックアップして搬送させる。領域ARは、例えば設備Wの床面であり、目標物Pが設置されたり移動体10が移動したりする領域である。目標物Pは、本実施形態では、パレット上に荷物が積載された搬送対象物である。目標物Pは、前面Paに、移動体10の後述するフォーク24が挿入される開口Pbが形成されている。ただし、目標物Pは、パレット上に荷物が積載されたものに限られず任意の形態であってよく、例えばパレットを有さず荷物のみであってもよい。
【0015】
以下、領域ARに沿った一方向をX方向とし、領域ARに沿った方向であって方向Xに交差する方向を、Y方向とする。本実施形態では、Y方向は、X方向に直交する方向である。X方向、Y方向は、水平面に沿った方向といってもよい。また、X方向、Y方向に直交する方向を、より詳しくは鉛直方向の上方に向かう方向を、Z方向とする。また、本実施形態においては、「位置」とは、特に断りのない限り、領域AR上の二次元面における座標系(領域ARの座標系)における位置(座標)を指す。また、移動体10などの「姿勢」とは、特に断りのない限り、領域ARの座標系における移動体10などの向きであり、Z方向から見た場合に、X方向を0°とした際の移動体10のヨー角(回転角度)を指す。
【0016】
(設置領域)
設備W内の領域ARには、複数の設置領域AR1が設けられている。設置領域AR1は、目標物Pの設置用に設定された領域である。それぞれの設置領域AR1には、設備Wの状況に応じて、目標物Pが配置されている場合もあるし、配置されていない場合もある。設置領域AR1の位置(座標)、形状、及び大きさは、予め設定されている。
図1の例では、設置領域AR1は、領域AR上に設けられた棚上に設定されているが、それに限られず、領域AR上(すなわち設備Wの床)に設けられていてもよいし、目標物Pを設備Wに搬入した車両の荷台内に設けられてもよい。また、本実施形態では、設置領域AR1は、目標物P毎に区画されており、設置領域AR1にはそれぞれ目標物Pが1つ配置されるが、それに限られない。例えば、設置領域AR1は、フリースペースとして、複数の目標物Pが設置されるように設定されていてもよい。また、
図1の例では設置領域AR1は矩形であるが、形状及び大きさは任意であってよいし、設置領域AR1の数も任意であってよい。
【0017】
(ウェイポイント)
領域ARには、位置(座標)毎にウェイポイントAが設定されている。移動体10が移動する経路Rは、ウェイポイントAを繋ぐように設定される。すなわち、移動体10が通過を予定するウェイポイントAを接続する経路が、移動体10の経路Rとなる。ウェイポイントAは、設置領域AR1の位置や通路などの、設備Wのレイアウトに応じて設定される。例えば、ウェイポイントAは、領域AR内においてマトリクス状に設定されており、1つの設置領域AR1に対向する位置から他の任意の設置領域AR1に対向する位置までを繋ぐ経路Rが設定可能なように、位置や数が設定されている。設置領域AR1に対向する位置とは、例えば、移動体10が、その位置から設置領域AR1に配置された目標物Pをピックアップ可能な位置であってよい。
【0018】
(移動体)
図2は、移動体の構成の模式図である。移動体10は、自動で移動可能であり目標物Pを搬送可能な装置である。さらに言えば、本実施形態では、移動体10は、フォークリフトであり、より詳しくはいわゆるAGV(Automated Guided Vehicle)やAGF(Automated Guided Forklift)である。ただし、移動体10は、目標物Pを搬送するフォークリフトであることに限られず、自動で移動可能な任意な装置であってよい。
【0019】
図2に示すように、移動体10は、車体20と、車輪20Aと、ストラドルレッグ21と、マスト22と、フォーク24と、センサ26Aと、制御装置28とを備えている。ストラドルレッグ21は、車体20の前後方向における一方の端部に設けられて、車体20から突出する一対の軸状の部材である。車輪20Aは、それぞれのストラドルレッグ21の先端と、車体20とに設けられている。すなわち、車輪20Aは、合計3個設けられているが、車輪20Aの設けられる位置や個数は任意であってよい。マスト22は、ストラドルレッグ21に移動可能に取り付けられ、車体20の前後方向に移動する。マスト22は、前後方向に直交する上下方向(ここでは方向Z)に沿って延在する。フォーク24は、マスト22に方向Zに移動可能に取付けられている。フォーク24は、マスト22に対して、車体20の横方向(上下方向及び前後方向に交差する方向)にも移動可能であってよい。フォーク24は、一対のツメ24A、24Bを有している。ツメ24A、24Bは、マスト22から車体20の前方向に向けて延在している。ツメ24Aとツメ24Bとは、マスト22の横方向に、互いに離れて配置されている。以下、前後方向のうち、移動体10においてフォーク24が設けられている側の方向を、前方向とし、フォーク24が設けられていない側の方向を、後方向とする。
【0020】
センサ26Aは、車体20の周辺に存在する対象物の位置及び姿勢の少なくとも1つを検出する。センサ26Aは、移動体10に対する対象物の位置と、移動体10に対する対象物の姿勢との少なくとも一方を検出するともいえる。本実施形態では、センサ26Aは、それぞれのストラドルレッグ21の前方向における先端と、車体20の後方向側とに設けられている。ただし、センサ26Aの設けられる位置はこれに限られず、任意の位置に設けられてもよいし、設けられる数も任意であってよい。
【0021】
センサ26Aは、例えばレーザ光を照射するセンサである。センサ26Aは、一方向(ここでは横方向)に走査しつつレーザ光を照射し、照射したレーザ光の反射光から、対象物の位置及び向きを検出する。すなわち、センサ26Aは、いわゆる2次元(2D)-LiDAR(Light Detection And Ranging)であるともいえる。ただし、センサ26Aは、以上のものに限られず任意の方法で対象物を検出するセンサであってよく、例えば、複数の方向に走査されるいわゆる3次元(3D)-LiDARであってもよいし、走査されない、いわゆる1次元(1D)-LiDARであってもよいし、カメラであってもよい。
【0022】
制御装置28は、移動体10の移動を制御する。制御装置28については後述する。
【0023】
(管理装置)
図3は、管理装置の模式的なブロック図である。管理装置12は、設備Wにおける物流を管理するシステムである。管理装置12は、本実施形態ではWCS(Warehouse Control System)やWMS(Warehouse Management System)であるが、WCS及びWMSに限られず任意のシステムであってよく、例えば、その他の生産管理系システムのようなバックエンドシステムでも構わない。管理装置12が設けられる位置は任意であり、設備W内に設けられてもよいし、設備Wから離れた位置に設けられて、離れた位置から設備Wを管理するものであってもよい。管理装置12は、コンピュータであり、
図3に示すように、通信部30と記憶部32と制御部34とを含む。
【0024】
通信部30は、制御部34に用いられて、情報処理装置14などの外部の装置と通信するモジュールであり、例えばWiFi(登録商標)モジュールやアンテナやなどを含んでよい。通信部30による通信方式は、本実施形態では無線通信であるが、通信方式は任意であってよい。記憶部32は、制御部34の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAM(Random Access Memory)と、ROM(Read Only Memory)のような主記憶装置と、HDD(Hard Disk Drive)などの外部記憶装置とのうち、少なくとも1つ含む。
【0025】
制御部34は、演算装置であり、例えばCPU(Central Processing Unit)などの演算回路を含む。制御部34は、移動先情報設定部40を含む。制御部34は、記憶部32からプログラム(ソフトウェア)を読み出して実行することで、移動先情報設定部40を実現して、その処理を実行する。なお、制御部34は、1つのCPUによって処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、移動先情報設定部40を、ハードウェア回路で実現してもよい。また、記憶部32が保存する制御部34用のプログラムは、管理装置12が読み取り可能な記録媒体に記憶されていてもよい。
【0026】
移動先情報設定部40は、移動体10の移動先を示す移動先情報を設定する。移動先情報設定部40の具体的な処理については後述する。
【0027】
なお、管理装置12は、移動先情報を設定する以外の処理も実行してよい。例えば、管理装置12は、設備Wに設けられる移動体10以外の機構(例えばエレベータや扉など)を制御する情報も設定してよい。
【0028】
(情報処理装置)
図4は、情報処理装置の模式的なブロック図である。情報処理装置14は、設備Wに設けられ、移動体10の移動に関する情報などを処理する装置である。情報処理装置14は、例えばFCS(Fleet Control System)であるが、それに限られず、移動体10の移動に関する情報を処理する任意の装置であってよい。情報処理装置14は、コンピュータであり、
図4に示すように、通信部50と記憶部52と制御部54とを含む。通信部50は、制御部54に用いられて、管理装置12や移動体10などの外部の装置と通信するモジュールであり、例えばアンテナやWiFiモジュールなどを含んでよい。通信部50による通信方式は、本実施形態では無線通信であるが、通信方式は任意であってよい。記憶部52は、制御部54の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAMと、ROMのような主記憶装置と、HDDなどの外部記憶装置とのうち、少なくとも1つ含む。
【0029】
制御部54は、演算装置であり、例えばCPUなどの演算回路を含む。制御部54は、移動先情報取得部60と、経路設定部62と、事象取得部64とを含む。制御部54は、記憶部52からプログラム(ソフトウェア)を読み出して実行することで、移動先情報取得部60と経路設定部62と事象取得部64とを実現して、それらの処理を実行する。なお、制御部54は、1つのCPUによってこれらの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、移動先情報取得部60と経路設定部62と事象取得部64との少なくとも一部を、ハードウェア回路で実現してもよい。また、記憶部52が保存する制御部54用のプログラムは、情報処理装置14が読み取り可能な記録媒体に記憶されていてもよい。
【0030】
移動先情報取得部60は、移動先情報を取得し、経路設定部62は、移動先情報に基づいて移動体10の経路を設定し、事象取得部64は、事象情報を取得する。これらの具体的な処理内容については後述する。
【0031】
なお、本実施形態では、管理装置12と情報処理装置14とが別の装置であったが、一体の装置であってもよい。すなわち、管理装置12が情報処理装置14の少なくとも一部の機能を兼ね備えてよいし、情報処理装置14が管理装置12の少なくとも一部の機能を兼ね備えてよい。
【0032】
(移動体の制御装置)
次に、移動体10の制御装置28について説明する。
図5は、移動体の制御装置の模式的なブロック図である。制御装置28は、移動体10を制御する装置である。制御装置28は、コンピュータであり、
図5に示すように、通信部70と記憶部72と制御部74とを含む。通信部70は、制御部74に用いられて、情報処理装置14などの外部の装置と通信するモジュールであり、例えばアンテナやWiFiモジュールなどを含んでよい。通信部70による通信方式は、本実施形態では無線通信であるが、通信方式は任意であってよい。記憶部72は、制御部74の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAMと、ROMのような主記憶装置と、HDDなどの外部記憶装置とのうち、少なくとも1つ含む。
【0033】
制御部74は、演算装置であり、例えばCPUなどの演算回路を含む。制御部74は、経路取得部80と、移動制御部82と、事象検出部84とを含む。制御部74は、記憶部72からプログラム(ソフトウェア)を読み出して実行することで、経路取得部80と移動制御部82と事象検出部84とを実現して、それらの処理を実行する。なお、制御部74は、1つのCPUによってこれらの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、経路取得部80と移動制御部82と事象検出部84との少なくとも一部を、ハードウェア回路で実現してもよい。また、記憶部72が保存する制御部74用のプログラムは、制御装置28が読み取り可能な記録媒体に記憶されていてもよい。
【0034】
経路取得部80は、移動体10の経路Rを示す情報を取得し、移動制御部82は、移動体10の駆動部やステアリングなどの移動機構を制御して、移動体10の移動を制御する。事象検出部84は、事象情報を検出する。これらの具体的な処理内容については後述する。
【0035】
(移動制御システムの処理)
移動制御システム1の処理内容について、以下で説明する。
【0036】
(移動先情報の設定)
管理装置12の移動先情報設定部40は、移動体10の移動先を示す移動先情報を設定する。移動先情報は、移動体10の移動先の位置を示す情報を含む。より詳しくは、本実施形態では、移動先情報設定部40は、第1位置情報(第1位置の位置情報)と第2位置情報(第1位置の位置情報)とを含むように、移動先情報を設定する。第1位置とは、移動体10が最初に到達する位置であり、第2位置とは、移動体10が第1位置の次に到達する位置である。すなわち本実施形態の例では、第1位置は、目標物Pの搬送元の位置であり、第2位置は、目標物Pの搬送先の位置である。移動先情報設定部40は、第1位置情報として、第1位置の位置(座標)そのものを指定してもよい。また、それぞれのウェイポイントAに識別子が付与されており、移動先情報設定部40は、第1位置情報として、第1位置に対応するウェイポイントAの識別子を指定してもよい。第2位置情報も同様である。
【0037】
図6は、移動先情報の一例を示す表である。本実施形態では、移動先情報設定部40は、搬送対象となる目標物P毎に、移動先情報を設定する。すなわち、移動先情報設定部40は、搬送対象となる目標物Pを示す目標物情報と、その目標物Pの搬送元である第1位置情報と、その目標物Pの搬送先を示す第2位置情報とを対応付けて、目標物P毎の移動先情報を設定する。なお、例えば目標物P毎に識別子が付与されており、その識別子を示す情報を目標物情報としてよい。さらに言えば、
図6に示すように、本実施形態では、移動先情報設定部40は、目標物情報と、第1位置情報と、第2位置情報と、優先度情報とを対応付けて、目標物P毎の移動先情報を設定することが好ましい。優先度情報とは、目標物P毎の一群の移動先情報のうちで、その目標物Pを搬送する優先順位を示す情報である。すなわち例えば、優先度情報において、最も優先度が高い目標物Pは、最初に搬送されることになる。
図6では、優先度が0001(1番目)、目標物Pが01、第1位置がA1、第2位置がA100となる移動先情報と、優先度が0002(2番目)、目標物Pが11、第1位置がA11、第2位置がA101となる移動先情報と、優先度が0003(3番目)、目標物Pが02、第1位置がA2、第2位置がA105となる移動先情報とが設定されている例を示している。ただし、
図6は一例であり、移動先情報は、例えばオーダー状況などに応じて任意に設定されてよい。
【0038】
また、移動先情報設定部40は、第1位置から第2位置まで移動する移動体10(目標物Pを搬送する移動体10)を指定する指定情報も、移動先情報を設定してよい。すなわち本実施形態の例では、移動先情報設定部40は、目標物情報と第1位置情報と第2位置情報と優先度情報と指定情報とを対応付けて、目標物P毎の移動先情報を設定してよい。この場合例えば、移動体10毎に識別子が付与されており、その識別子を示す情報を指定情報としてよい。
【0039】
移動先情報設定部40は、任意の方法で移動先情報を設定してよい。例えば、移動先情報設定部40は、搬送すべき目標物Pと搬送元及び搬送先を示すオーダー情報を取得して、それに基づいて移動先情報を設定してよい。移動先情報設定部40は、設定した移動先情報を、通信部30を介して、情報処理装置14に送信する。
【0040】
(移動先情報の取得)
情報処理装置14の移動先情報取得部60は、通信部50を介して、管理装置12から、移動先情報を取得する。
【0041】
(経路の設定)
情報処理装置14の経路設定部62は、移動先情報に基づいて、移動先までの移動体10の経路Rを設定する。本実施形態では、経路設定部62は、移動体10が第1位置までの移動を開始する直前に位置する初期位置から、第1位置情報が示す第1位置(搬送元)までの第1経路と、第1位置から、第2位置情報が示す第2位置(搬送先)までの第2経路とを、移動体10の経路Rとして設定する。すなわち、経路設定部62は、初期位置から1位置までの各ウェイポイントAを第1経路とし、第1位置から第2位置までの各ウェイポイントAを第2経路として、移動体10の経路Rを設定する。
図1の例では、移動先情報においては、第1位置がウェイポイントAbであり、第2位置がウェイポイントAcとされており、経路設定部62は、選定した移動体10の初期位置であるウェイポイントAaからウェイポイントAbまでの各ウェイポイントAを通る第1経路と、ウェイポイントAbからウェイポイントAcまでの各ウェイポイントAを通る第2経路とを、その移動体10の経路Rとして設定する。
【0042】
経路設定部62は、設備Wに複数の移動体10が配備されている場合には、目標物Pを搬送する移動体10を選定して、選定した移動体10の経路Rを設定する。また、経路設定部62は、複数の目標物Pについての移動先情報が設定されている場合には、目標物P毎に、移動体10の経路Rを設定する。すなわち、経路設定部62は、目標物P毎にその目標物Pを搬送する移動体10を選定して、選定した移動体10の経路を設定する。例えば、移動先情報が
図6の例に示すものである場合、経路設定部62は、目標物01を搬送する移動体10を選定し、その移動体10の初期位置から、第1位置であるA1を通り、第2位置であるA100に到達する経路を設定する。
図6に示された他の目標物に対して選定される移動体とその経路(ウェイポイント)の説明は、同様であるため省略する。なお、経路設定部62は、任意の方法で移動体10を選定してよいが、例えば、全ての目標物Pの搬送完了までの時間が最短となるように、目標物P毎に移動体10を選定してよい。また、移動先情報において、指定情報として対象となる移動体10が指定されている場合には、その指定情報で指定された移動体10を選定すればよい。
【0043】
経路設定部62は、経路Rと共に、その経路R(ウェイポイントA)を通る予定時間帯も設定する。この場合、予定時間帯においては、他の移動体10がその経路Rを通ることが禁止される。すなわち、予定時間帯においては、設定された経路Rが、その移動体10に占有される。経路設定部62は、複数の目標物Pについての経路Rを設定する場合には、1つの移動体10の予定時間帯において他の移動体10に同じウェイポイントAが設定されないように(予約時間帯が重複しないように)、また、予約時間帯が重複しない場合でもデッドロックを起こさないように、目標物P毎に、移動体10と経路R(ウェイポイントA)と予約時間帯とを設定する。さらに言えば、経路設定部62は、移動先情報における優先度情報にも基づき、経路Rと予約時間帯とを設定してよい。すなわち、経路設定部62は、予約時間帯が重複せず、かつ、優先度が高い目標物Pほど早く搬送完了するように、目標物P毎に、移動体10と経路Rと予約時間帯とを設定する。なお、経路Rは、複数のウェイポイントAを含むので、経路設定部62は、経路Rに含まれるウェイポイントA毎に、予約時間帯を設定してよい。
【0044】
なお、デッドロックとは、複数の実行中のプログラムなどが互いに他のプログラムの結果待ちとなり、待機状態に入ったまま動かなくなる現象を指す。本実施形態では、互いの移動体10がこのままの経路で移動を継続した場合には衝突するおそれがあり、かつ、進行方向側に向かう回避経路が設定できない場合に、互いの移動体10が停止したままとなる現象を指してよい。
【0045】
経路設定部62は、設定した経路Rの情報を、その経路Rが適用される移動体10に送信する。経路設定部62は、経路Rの情報として、経路Rが通る各ウェイポイントAを示す情報を送信する。例えば、経路設定部62は、経路Rの情報として、経路Rが通る各ウェイポイントAの位置(座標)情報を移動体10に送信してもよいし、経路Rが通る各ウェイポイントAの識別子を示す情報を移動体10に送信してもよい。また、本実施形態では、経路設定部62は、経路Rの情報に加えて、予定時間帯の情報も、すなわち経路(ウェイポイントA)を通る予定時間を示す情報も、移動体10に送信する。
【0046】
(移動体の移動)
移動体10の経路取得部80は、情報処理装置14から、自身の移動体10について設定された経路Rの情報を取得する。移動体10の移動制御部82は、取得された経路Rに従って、移動体10を移動させる。本実施形態では、経路取得部80は、経路Rの情報と共に予定時間帯の情報も取得する。移動制御部82は、経路Rが通る各ウェイポイントAを、各ウェイポイントAについて設定された予定時間帯において通るように、移動体10を移動させる。移動制御部82は、移動体10の位置情報を逐次把握することで、経路R上の各ウェイポイントAを通るように、移動体10を移動させる。移動体10の位置情報の取得方法は任意であるが、例えば本実施形態では、設備Wに図示しない検出体が設けられており、移動制御部82は、検出体の検出に基づき移動体10の位置及び姿勢の情報を取得する。具体的には、移動体10は、検出体に向けてレーザ光を照射し、検出体によるレーザ光の反射光を受光して、設備Wにおける自身の位置及び姿勢を検出する。移動体10の位置及び姿勢の情報の取得方法は、検出体を用いることに限られず、例えば、SLAM(Simultaneous Localization And Mapping)を用いてもよい。
【0047】
図1の例では、移動制御部82は、初期位置であるウェイポイントAaから第1位置であるウェイポイントAbまでの各ウェイポイントAを通るように、移動体10をウェイポイントAaからウェイポイントAbまで移動させる。移動制御部82は、移動体10がウェイポイントAbまで到達したら、フォーク24を制御することで、ウェイポイントAbに対向する設置領域AR1に設けられた目標物Pの開口Pbにフォーク24を挿入して、目標物Pをピックアップ(荷取り)する。なおこの場合、移動制御部82は、ウェイポイントAbから、又は、ウェイポイントAbに到達する前の位置から、センサ26Aによって目標物Pの位置及び姿勢を検出させてもよい。そして、移動制御部82は、目標物Pの位置及び姿勢に基づいて、目標物Pまでのアプローチ経路を設定して、そのアプローチ経路に従って目標物Pにアプローチして、目標物Pをピックアップしてもよい。すなわちこの場合、移動制御部82は、検出した目標物Pの位置及び姿勢に対して、所定の位置及び姿勢(移動体10が目標物Pをピックアップ可能な位置及び姿勢)となる新たなアプローチ経路を設定して、そのアプローチ経路に従って目標物Pにアプローチしてもよい。また例えば、移動制御部82は、目標物Pの位置及び姿勢の検出結果と、移動体10の位置及び姿勢の検出結果とに基づき、フィードバック制御(直接フィードバック制御)を行うことで、移動体10を目標物Pにアプローチさせてもよい。この場合、目標物Pの位置及び姿勢に基づいた経路に従ったアプローチ中に、直接フィードバック制御に切り替えてもよい。
【0048】
移動制御部82は、移動体10が目標物Pをピックアップしたら、ウェイポイントAbまで移動体10を戻し、ウェイポイントAbから、第2位置であるウェイポイントAcまでの各ウェイポイントAを通るように、移動体10をウェイポイントAcまで移動させる。移動制御部82は、移動体10がウェイポイントAcまで到達したら、フォーク24を制御することで、ウェイポイントAcに対向する設置領域AR1に、目標物Pをドロップ(荷下ろし)する。
【0049】
移動制御部82は、移動体10が目標物Pをドロップしたら、ウェイポイントAcまで移動体10を戻す。移動制御部82は、経路取得部80が、ウェイポイントAcを初期位置とした次の経路Rが設定されている場合には、その経路Rに従って移動体10を移動させる。
【0050】
設備Wに配備されるそれぞれの移動体10は、以上説明したように、設定された経路Rに従って移動して、目標物Pの荷積み、搬送、及び荷下ろしを行う。なお、以降においては、移動体10が経路Rに従って移動して、目標物Pを荷積みし、搬送し、荷下ろしを行うまでの一連の動作を、適宜、作業と記載する。
【0051】
(事象情報の検出)
ここで、実際の移動体10の運行中には、経路Rを設定した際には予期しなかった事象が発生する場合がある。本実施形態においては、移動体10の事象検出部84は、経路Rを設定した際には予期しなかった事象が移動体10に発生したことを示す、事象情報を検出する。経路Rを設定した際には予期しなかった事象を、以下、単に「事象」と記載する。事象情報は、事象が発生したことを示す情報と、その事象の種類を示す情報とを含んでいてよい。事象検出部84は、検出した事象情報を、情報処理装置14に送信する。
【0052】
(次の経路の設定)
情報処理装置14の事象取得部64は、移動体10の事象検出部84が検出した事象情報を、移動体10から取得する。情報処理装置14の経路設定部62は、事象取得部64により事象情報が取得されたら、事象情報に基づき、次の経路を設定する。経路設定部62は、事象情報に基づいて設定された移動先までの経路を、次の経路として設定する。経路設定部62は、事象情報に基づき設定された次の経路を移動体10に送信する。移動体10の移動制御部82は、次の経路を取得したら、次の経路に従って移動体10を移動させる。なお、本実施形態では、移動体10が事象情報を検出するが、事象情報を検出する主体は移動体10に限られず、例えば、情報処理装置14が事象情報を検出してもよい。
【0053】
ここで、経路Rを設定した際には予期しなかった事象が発生した際には、各移動体10の作業を適切に継続できなくなる可能性があるため、例えば全ての移動体を停止させた後、人手によりその事象を解決して、作業を再開させることも考えられる。しかし、このような対応を行った場合には、移動体の作業完了までに時間を要することになり、稼働率が低下する。それに対して、情報処理装置14は、経路Rを設定した際には予期しなかった事象が発生した際に、事象情報に基づいて次の経路を設定する。そのため、事象に対応した次の経路を設定して作業を継続できるため、移動体の稼働率の低下を抑制することができる。
【0054】
(次の経路の設定の例)
以降において、事象の種類毎の、次の経路の設定の例について説明する。本実施形態では、以降の例のうちの一部の処理を実行してもよいし、全ての処理を実行してもよい。すなわち、本実施形態は、以降の例のうちの少なくとも1つの処理を実行するものであってよい。
【0055】
(割り当てられていた作業が全て完了した旨を検出する例)
図7は、次の経路の設定の一例を示す模式図である。例えば、移動体10に割り当てられていた作業が全て完了した旨を、言い換えれば、移動体10の移動が終了したことを、事象としてもよい。ここでの移動体10に割り当てられていた作業が全て完了した(移動が終了した)とは、移動体10が経路Rに従った移動を終了し、かつ、次の経路R(作業)が設定されていない状態を指す。すなわち例えば
図7の例においては、移動体10は、第1位置であるウェイポイントAbから第2位置であるウェイポイントAcまでの移動と目標物Pのドロップが完了し、ウェイポイントAcに位置した状態にある。そして、移動体10が目標物PをドロップしてウェイポイントAcに位置した状態において、ウェイポイントAcを初期位置とした次の作業が設定されていない場合に、すなわち、移動先情報においてその移動体10に割り当てられていた作業がすべて完了した場合に、移動が終了したと判断できる。また例えば、移動体10が作業を終了し、その終了時刻から、次に割り当てられた作業の開始時刻までの時間が、所定時間以上である場合に、移動が終了したと判断してもよい。所定時間は任意に設定してよい。事象取得部64は、任意の方法で、移動が終了した旨の事象を事象情報として検出してもよい。例えば、事象検出部84は、移動体10が、第2位置(
図7の例ではウェイポイントAb)に到達したことが検出され、フォーク26を制御して目標物Pをドロップしたことが検出された後に、移動体10が、第2位置に位置していることが検出されたことを、移動が終了した旨の事象情報として検出してもよい。
【0056】
移動体10の事象検出部84は、移動が終了した旨を示す事象情報を、情報処理装置14に送信し、情報処理装置14の事象取得部64は、移動が終了した旨を示す事象情報を取得する。情報処理装置14の経路設定部62は、移動が終了した旨を示す事象情報が取得されたら、その移動体10の移動先とは別の位置を更新移動先として設定し、更新移動先までの経路を、次の経路である更新経路として設定する。ここでの移動先とは、移動が終了した際の位置を指し、言い換えれば、経路Rの第2位置(
図7の例ではウェイポイントAb)を指す。すなわち本例では、経路Rの第2位置(
図7の例ではウェイポイントAb)とは別の位置を、更新移動先として設定する。経路設定部62は、移動体10の移動が終了した際の位置から、それとは別の更新移動先までの経路を、更新経路として設定するといえる。
【0057】
経路設定部62は、それ以降に移動が予定されている他の移動体10の経路R(ウェイポイントA)とは重ならない位置を、更新移動先として設定する。例えば、領域ARには、設置領域AR1に対向するウェイポイントA同士を結ぶ経路(搬送する際に用いられる経路)と重ならない位置に、更新移動先の候補となる候補位置(ウェイポイントA)が設定されている。候補位置としては、例えば、充電場所となるウェイポイントA(
図7の例では充電装置CHが配置されたウェイポイントAd)や、待機場所となるウェイポイントA(
図7の例ではウェイポイントAe)が設定されている。従って、経路設定部62は、充電場所となるウェイポイントA又は待機場所となるウェイポイントAを更新移動先として設定して、移動が終了した際の位置から更新移動先までの各ウェイポイントAを通る経路を、更新経路として設定する。なお、充電場所や待機場所となるウェイポイントAは、設置領域AR1に対向するウェイポイントA同士を結ぶ経路(搬送する際に用いられる経路)と重ならない任意の位置に設定されていてよい。
【0058】
経路設定部62による、更新移動先の設定方法は任意であるが、例えば、複数の候補位置のうちから、移動が終了した際の位置と最も近い候補位置を、更新移動先として設定してよい。また例えば、経路設定部62は、移動体10の充電量に基づいて、更新移動先を設定してよい。ここでの充電量(充電率)とは、移動体10の蓄電量の残量を指す。この場合例えば、移動体10の事象検出部84は、移動が完了した際の移動体10の充電量を示す情報も、事象情報として情報処理装置14に送信する。そして、経路設定部62は、移動が終了した旨、及び充電量を示す事象情報が取得されたら、充電量に基づき、更新移動先を設定してよい。例えば、経路設定部62は、移動が完了した際の移動体10の充電量が所定値以下である場合には、充電場所となるウェイポイントAを更新移動先として設定してよい。この場合、経路設定部62は、充電場所となる複数のウェイポイントAのうちから、移動が終了した際の位置と最も近いウェイポイントAを、更新移動先として設定してよい。ここでの所定値は任意に設定されてよい。
【0059】
経路設定部62は、移動が完了した際の移動体10の充電量が所定値より高い場合には、待機場所となるウェイポイントAを更新移動先として設定してよい。この場合例えば、経路設定部62は、待機場所となる複数のウェイポイントAのうちから、移動が終了した際の位置と最も近いウェイポイントAを、更新移動先として設定してよい。また例えば、経路設定部62は、待機場所となる複数のウェイポイントAのそれぞれについて、移動距離と重複ウェイポイント数とを算出して、移動距離と重複ウェイポイント数とに基づいて、待機場所となる複数のウェイポイントAのうちから、更新移動先を設定してよい。移動距離とは、移動が終了した際の位置からそのウェイポイントAまでの距離である。また、重複ウェイポイント数とは、移動が終了した際の位置からそのウェイポイントAまでに通るウェイポイントAのうちで、他の移動体10が今後通るウェイポイントAとして設定されている数を指す。例えば、経路設定部62は、移動距離と重複ウェイポイント数とを加えた値が最小となるウェイポイントAを、更新移動先として設定してもよいし、次の式(1)に示す値Nが最小となるウェイポイントAを、更新移動先として設定してもよい。
【0060】
N=α・WP+WL ・・・(1)
【0061】
ここで、αは任意に設定される定数であり、WPは、重複ウェイポイント数を指し、WLは、移動距離を指す。
【0062】
経路設定部62は、このように設定した更新経路の情報(例えば移動が終了した際の位置から更新移動先までのウェイポイントAを示す情報)を移動体10に送信し、移動体10の経路取得部80は、更新経路の情報を取得する。移動体10の移動制御部82は、更新経路の情報に示された更新経路を通るように、移動体10を移動させる。例えば
図7の例では、移動体10が、移動が終了した際の位置であるウェイポイントAcから、充電場所であるウェイポイントAdまでの経路Ra(更新経路)に従って移動する例が示されている。ウェイポイントAdに到達した移動体10は、そこに設けられた充電装置CHにより、充電される。また、
図7では、他の例として、移動体10が、移動が終了した際の位置であるウェイポイントAcから、待機場所であるウェイポイントAeまでの経路Rb(更新経路)に従って移動する例が示されている。ウェイポイントAeに到達した移動体10は、そのウェイポイントAeで待機する。
【0063】
なお、経路設定部62は、更新経路についての予定時間帯も設定して、更新経路の情報と共に移動体10に送信する。移動体10の移動制御部82は、予定時間帯において更新経路を通るように、移動体10を移動させる。経路設定部62は、他の移動体10の以降の予定時間帯を変更しないように、更新経路についての予定時間帯を設定することが好ましい。すなわち、経路設定部62は、更新経路に含まれるウェイポイントAが他の移動体10の経路RのウェイポイントAと重複する場合には、他の移動体10によるそのウェイポイントAの予約時間帯と重ならないように、予約時間帯を設定する。このように他の移動体10によるそのウェイポイントAの予約時間帯を変更させないことで、更新経路の優先度を下げて、他の移動体10の移動を優先させることができる。なお、以降の他の例においても、同様に予定時間帯が設定され、予定時間帯において更新経路を通るように、移動体10を移動させてよい。
【0064】
このように、本例では、移動体10の移動が終了した際には、移動体10をその位置に留まらせることなく、更新移動先に移動させる。これにより、移動が終了した移動体10が他の移動体10の経路R上に留まることにより他の移動体10の移動の邪魔となることが抑制されて、移動体10の稼働率の低下を抑制できる。
【0065】
(充電量を検出する例)
図8は、次の経路の設定の一例を示す模式図である。例えば、移動体10の充電量を事象としてもよい。この場合、移動体10の事象検出部84は、移動体10の充電量を示す事象情報を検出する。事象検出部84は、移動体10の充電量を逐次検出する。事象検出部84は、移動体10の充電量を示す事象情報を、情報処理装置14に送信し、情報処理装置14の事象取得部64は、移動体10の充電量を示す事象情報を取得する。
【0066】
情報処理装置14の経路設定部62は、取得された移動体10の充電量が閾値以下である場合には、充電場所となるウェイポイントAを更新移動先として設定し、更新移動先として設定された充電場所までの経路を、次の経路である更新経路として設定する。ここでの閾値は、任意に設定されてよい。この場合例えば、経路設定部62は、充電場所となる複数のウェイポイントAのうちから、移動体10の移動元の位置から最も近いウェイポイントAを、更新移動先として設定してよい。なお、移動体10の事象検出部84は、移動体10の充電量を、情報処理装置14に逐次送信してもよいし、移動体10の充電量が閾値以下となった場合に、移動体10の充電量の情報を事象情報として送信してもよい。
【0067】
経路設定部62は、このように設定した更新経路の情報を移動体10に送信し、移動体10の経路取得部80は、更新経路の情報を取得する。移動体10の移動制御部82は、更新経路の情報に示された更新経路を通るように、移動体10を移動させる。更新経路に沿って充電場所に到達した移動体10は、そこに設けられた充電装置CHにより、充電される。なお、充電量が閾値以下となったタイミングにおいて、移動体10が作業中(経路Rに沿った移動中、目標物Pの荷積み、荷下ろししている最中など)である場合には、移動制御部82は、その作業が終了した後で、移動体10を更新経路に沿って移動させる。すなわちこの場合には、経路設定部62は、移動体10が到着を予定する第2位置(搬送先)から充電場所までの経路を、更新経路として設定する。そして、移動制御部82は、移動体10が、目標物Pをドロップして現在の経路Rの第2位置(搬送先)に位置した後に、その第2位置から充電場所まで、更新経路に沿って移動させる。ただしそれに限られず、例えば更新経路を取得したタイミングにおいて移動体10が作業中である場合には、移動制御部82は、移動体10にその作業を中断させて、更新経路に沿った移動を開始させてもよい。この場合、更新経路は、移動体10の現在位置から更新移動先として設定された充電場所までの経路として設定される。
【0068】
なお、充電量が閾値以下となった移動体10に対して、次の作業が割り当てられている場合には、経路設定部62は、その作業を、別の移動体10に割り当てる。言い換えれば、情報処理装置14の経路設定部62は、充電量が閾値未満となった移動体10以外の移動体10に対して、充電量が閾値未満となった第1移動体が予定していた次の移動先までの経路を、その移動体10についての次の経路として設定する。
図8の例では、充電量が閾値未満となった移動体10A(第1移動体)に対して、移動が終了した経路Rにおける第2位置であるウェイポイントAcから、充電場所であるウェイポイントAdまでの更新経路(経路Ra)が設定される。移動体10Aは、ウェイポイントAcからウェイポイントAdまで移動して、充電される。そして、
図8の例においては、この移動体10Aに対して、ウェイポイントAcを第2位置とした作業の後にも、ウェイポイントAg1を第1位置としてウェイポイントAg2を第2位置とする作業(経路)が設定されている。この場合においては、経路設定部62は、ウェイポイントAg1を第1位置としてウェイポイントAg2を第2位置とする作業を、移動体10Bに割り当てる。この場合、経路設定部62は、ウェイポイントAf(移動体10Bの初期位置)からウェイポイントAg1(第1位置)を経由してウェイポイントAg2(第2位置)までの経路Rcを、移動体10Bの次の経路として設定して、移動体10Bに送信する。移動体10Bは、ウェイポイントAfに到達したら、経路Rcに沿った移動を開始して、ウェイポイントAg1で目標物PをピックアップしてウェイポイントAg2まで搬送する。
【0069】
なお、移動体10Aの作業を割り当て可能な移動体10が複数存在する場合には、経路設定部62は、それらの複数の移動体10のうちで、初期位置(その移動体10の移動先)から、移動体10Aの予定していた移動先(移動体10Aの次の経路Rの第1位置)までの到達時間が最短となる移動体10を、移動体10Aの作業を割り当てる移動体とする。すなわち、
図8の例では、移動体10Cよりも移動体10Bの方が、ウェイポイントAg1までの到達時間が短いため、移動体10Bに移動体10Aの作業が割り当てられる。なお、ここでの到達時間は、例えば、初期位置から、移動体10Aの予定していた移動先までの距離に基づき算出できる。
【0070】
図9は、充電が完了した後の作業の割り当ての変更例を説明するための模式図である。充電場所に移動して充電している移動体10Aの充電量が、上記の閾値よりも高い所定値以上となった場合には、経路設定部62は、その移動体10Aに対して作業を割り当てて、その充電場所からの経路Rを設定する。なお、ここでの所定値は、上記の閾値より高い任意の値であってよい。上述のように、経路設定部62は、移動体10Aが充電場所への移動を開始する以降の作業については、移動体10A以外の移動体10に割り当てていた。それに対して、移動体10Aの充電量が十分(所定値以上)となり作業に復帰できる目途が立った場合には、それ以降の作業については、移動体10Aにも割り当てる。すなわち、
図9の例では、上側の表に示すように、移動体10Aが充電中においては、以降の作業(目標物01、11、02の搬送作業)については、移動体10B、10Cに割り当てられていた。一方、移動体10Aの充電量が所定値以上となった場合には、下側の表に示すように、以降の作業についての割り当てを更新して、移動体10Aに対しても作業を割り当てる。
図9の例では、経路設定部62は、充電場所を初期位置とし、A1を第1位置とし、A100を第2位置とするように、移動体10Aの次の経路を設定し、移動体10Aは、充電場所から、その経路に従って移動する。
【0071】
このように、本例では、移動体10の充電量が低下した際には、次の作業を行わせることなく、移動体10を充電場所に移動させる。これにより、移動体10を迅速に充電させて、稼働率の低下を抑制できる。さらに言えば、本例においては、充電量が低下した移動体10の作業を、他の移動体10に割り当てる。従って、充電量が低下した移動体10の作業が滞ることを抑制して、稼働率の低下を抑制できる。
【0072】
(故障を検出する例)
図10は、次の経路の設定の一例を示す模式図である。例えば、移動体10の故障を事象としてもよい。この場合、移動体10の事象検出部84は、移動体10の故障を示す事象情報を検出する。ここでの故障とは、移動体10が現在位置から移動できなくなった事象を指す。事象検出部84は、移動体10の故障を示す事象情報を、情報処理装置14に送信し、情報処理装置14の事象取得部64は、移動体10の故障を示す事象情報を取得する。なお、事象取得部64は、故障を示す事象情報を任意の方法で取得してよい。例えば、移動体10の事象検出部84が、移動体10が故障したことを検出して、故障したことを示す信号を情報処理装置14に送信することで、事象取得部64が事象情報を取得してよい。また例えば、情報処理装置14が移動体10と逐次通信を行っている場合には、事象取得部64は、移動体10との通信が所定時間以上できないことを(移動体10からの信号が所定時間以上受信できないことを)、故障を示す事象情報として取得してよい。また例えば、情報処理装置14は、移動体10の位置情報を逐次取得しているため、事象取得部64は、移動体10の位置情報が、移動体10の位置が所定時間以上動かない(移動体10の位置の移動量が所定値以下であることが所定時間以上続く)ことを、故障を示す事象情報として取得してよい。
【0073】
情報処理装置14の経路設定部62は、移動体10の故障を示す事象情報を取得したら、故障した移動体10の位置情報から、故障した移動体10の現在位置を把握する。なお、移動体10が故障により位置情報を送信できない場合には、経路設定部62は、故障前に最後に送信された移動体10の位置情報を、故障した移動体10の現在位置としてよい。そして、経路設定部62は、故障した移動体10の現在位置に対して処理距離内にある近傍位置を、通行不可とする。言い換えれば、経路設定部62は、故障した移動体10の現在位置に対して処理距離内にあるウェイポイントAを予約して、他の移動体10が予約できないようにする。ここでの所定距離は任意に設定されてよい。そして、経路設定部62は、他の移動体10の次の経路(更新経路)が、近傍位置とされたウェイポイントAを通らないように、他の移動体の更新経路を設定する。この場合、経路設定部62は、移動体10が同じ作業を継続できるように、近傍位置とされたウェイポイントAを通らず、かつ、今の作業における第1位置や第2位置に到達する経路を、更新経路として設定する。経路設定部62は、近傍位置とされたウェイポイントAを通らない経路Rが設定されている移動体10については、更新経路を設定せずに(経路を更新せずに)、当初の経路Rを維持する。一方、経路設定部62は、近傍位置とされたウェイポイントAを通る経路Rが設定されている移動体10については、その移動体10の移動を停止させて、更新経路を設定する。また、移動体10Aが故障の直前に行っていた作業については、他の移動体10に割り当てる。すなわち、経路設定部62は、他の移動体10に対して、移動体10Aが故障の直前に行っていた作業における第1位置及び第2位置を通る経路Rを設定する。
【0074】
図10の例では、移動体10AがウェイポイントAhで故障した場合を示している。この場合、情報処理装置14は、移動体10Aが故障したことを示す事象情報と、移動体10Aの現在位置がウェイポイントAhである旨の位置情報とを取得する。情報処理装置14は、経路設定部62により、ウェイポイントAhから所定距離内のウェイポイントAを通行不可として、移動体10A以外の移動体10の経路の更新を行う。
図10の例では、移動体10Bに設定された経路Rdは、ウェイポイントAhから所定距離内のウェイポイントAを通る。従って、経路設定部62は、移動体10Bに対して、ウェイポイントAhから所定距離内のウェイポイントAを通らず、かつ、経路Rdにおける第1位置(ウェイポイントAj1)及び第2位置(ウェイポイントAj2)に到達する更新経路を設定して、移動体10Bに送信する。移動体10Bは、今の経路Rdに沿った移動を停止して、設定された更新経路に従って移動する。一方、移動体10Cに設定された経路Reは、第1位置(ウェイポイントAl1)及び第2位置(ウェイポイントAl2)に到達する経路であり、ウェイポイントAhから所定距離内のウェイポイントAを通らない。従って、経路設定部62は、移動体10Cに対しては更新経路を設定せず、経路Reを維持させる。移動体10Cは、経路Reに従って移動する。
【0075】
このように、本例では、移動体10が故障した際には、その近傍位置を通らないように、他の移動体10の経路を更新する。これにより、他の移動体10の作業が故障した移動体10に遮られることを抑制して、稼働率の低下を抑制できる。
【0076】
(障害物を検出する例)
図11は、次の経路の設定の一例を示す模式図である。例えば、移動体10の経路R上に障害物が存在する旨を事象としてもよい。この場合、移動体10の事象検出部84は、移動体10の経路R上に存在する障害物を、事象情報として検出する。移動体10は、例えばセンサ26Aにより移動体10の周囲を検出しつつ、移動する。事象検出部84は、センサ26Aにより、移動体10の経路R上に存在する障害物が検出されたことを、事象情報として検出する。
【0077】
情報処理装置14の経路設定部62は、経路R上に障害物が存在する旨の事象情報と共に、その障害物の位置情報を、移動体10から取得する。そして、経路設定部62は、障害物の位置に対して処理距離内にある近傍位置を、通行不可とする。言い換えれば、経路設定部62は、障害物の位置に対して処理距離内にあるウェイポイントAを予約して、移動体10が予約できないようにする。ここでの所定距離は任意に設定されてよい。そして、経路設定部62は、移動体10の次の経路(更新経路)が近傍位置とされたウェイポイントAを通らないように、更新経路を設定する。この場合、経路設定部62は、移動体10が同じ作業を継続できるように、近傍位置とされたウェイポイントAを通らず、かつ、今の作業における第1位置や第2位置に到達する経路を、更新経路として設定する。経路設定部62は、近傍位置とされたウェイポイントAを通らない経路Rが設定されている移動体10については、更新経路を設定せずに、当初の経路Rを維持する。一方、経路設定部62は、近傍位置とされたウェイポイントAを通る経路Rが設定されている移動体10については、その移動体10の移動を停止させて、更新経路を設定する。
【0078】
図11の例では、移動体10Aが、自身の経路R上のウェイポイントAhで障害物Oを検出した場合を示している。この場合、情報処理装置14は、経路R上に障害物が存在する旨の事象情報と、障害物OがウェイポイントAhに存在する旨の障害物Oの位置情報とを取得する。情報処理装置14は、経路設定部62により、ウェイポイントAhから所定距離内のウェイポイントAを通行不可として、それぞれの移動体10の経路の更新を行う。
図10の例では、移動体10A、10Bに設定された経路は、ウェイポイントAhから所定距離内のウェイポイントAを通るため、経路設定部62は、移動体10A、10Bに対して、ウェイポイントAhから所定距離内のウェイポイントAを通らず、かつ、今の作業における第1位置及び第2位置に到達する更新経路を設定して、移動体10A、10Bに送信する。移動体10A、10Bは、今の経路に沿った移動を停止して、設定された更新経路に従って移動する。一方、移動体10Cに設定された経路Reは、ウェイポイントAhから所定距離内のウェイポイントAを通らないため、経路設定部62は、移動体10Cに対しては更新経路を設定せず、経路Reを維持させる。移動体10Cは、経路Reに従って移動する。
【0079】
このように、本例では、経路上に障害物が存在するには、その近傍位置を通らないように、移動体10の経路を更新する。これにより、移動体10の作業が故障した障害物に遮られることを抑制して、稼働率の低下を抑制できる。
【0080】
(デッドロックを検出する例)
図12及び
図13は、次の経路の設定の一例を示す模式図である。各移動体10の経路は、デッドロックを生じないように設定されているが、例えば、遅れが生じたり、障害物や故障が検出されたりした場合には、デッドロックが発生する場合がある。従って、本例では、デッドロックの発生を事象としてもよい。この場合、移動体10の事象検出部84は、デッドロックを示す事象情報を検出する。例えば、移動体10は、周囲の対象物が所定距離内に位置する場合には停止する。そのため例えば、事象検出部84は、センサ26Aにより進行方向側の所定距離内に他の移動体10が検出されて、その移動体10がその位置に留まり続けている場合に、デッドロックが発生したと判断して、デッドロックを示す事象情報を検出する。なお、センサ26Aにより進行方向側の所定距離内に他の移動体10が検出されたとしても、進行方向側に向かう回避経路が生成できる場合には、その回避経路に切り替えて移動を継続するため、デッドロックが発生したとは判断しなくてよい。
【0081】
情報処理装置14は、移動体10から、デッドロックを示す事象情報を取得したら、経路設定部62により、全ての移動体10に対して、移動を停止する旨の指令を出力する。
図12の例では、移動体10Aと移動体10Bとがデッドロックを起こした場合を示している。この場合、情報処理装置14は、移動体10Aと移動体10Bとから、デッドロックを示す事象情報を取得する。情報処理装置14の経路設定部62は、デッドロックを示す事象情報を取得したら、全ての移動体10(
図12の例では移動体10A、10B、10C)を停止させる。それぞれの移動体10は、その指令を受信したら、移動を停止する。そして、経路設定部62は、デッドロックが発生した移動体10のうちの一部の移動体10について、今の経路の移動先とは別の位置である更新移動先までの次の経路(更新経路)を設定し、デッドロックが発生した移動体10のうちの他の移動体10については、次の経路を設定しない。より詳しくは、経路設定部62は、デッドロックが発生した移動体10のそれぞれについて、現在の作業における優先度情報から、デッドロックが発生した移動体10のうちで最も優先度が高い移動体10を選定して、選定した移動体10に対しては次の経路を設定せず、それ以外の移動体10に次の経路を設定する。
図12の例では、移動体10Aが最も優先度が高いため、経路設定部62は、移動体10Aについては、更新経路を設定せず、今の経路を維持させる。一方、経路設定部62は、最も優先度が高い移動体10A以外の移動体10Bについては、今の位置から更新移動先までの更新経路を設定する。経路設定部62は、デッドロックの相手側となる移動体10Aの経路と重ならない位置(ウェイポイント)を、更新移動先として設定する。例えば、経路設定部62は、候補位置(例えば待機場所や充電場所)のうちから、移動体10Bの現在位置に対して最も近い位置を、更新移動先として設定して、現在位置から更新移動先までの更新経路を設定する。経路設定部62は、設定した更新経路をその移動体10Bに送信して、移動体10Bは、更新経路に従って更新移動先に移動する。
図12の例では、移動体10Bの現在位置であるウェイポイントAnから、ウェイポイントAnから最も近い候補位置であるウェイポイントAdまでの更新経路(経路Rf)が設定されて、移動体10Bは、その更新経路に沿ってウェイポイントAdまで移動する。なお、デッドロックを起こしている、最も優先度が高い移動体10以外の移動体10が複数ある場合には、それらの全ての移動体10に対して、更新経路を設定して、更新移動先に移動させる。
【0082】
移動体10Bの更新移動先への移動が完了したら、経路設定部62は、移動体10Aに対して、移動を再開する旨の指令を出力する。
図13に示すように、ウェイポイントAmに停止していた移動体10Aは、移動を再開して、当初の経路Rgに従って第2位置であるウェイポイントAbに移動する。また、経路設定部62は、最も優先度が高い移動体10Aの移動が再開したら、他の移動体10B、10Cに対して、以降の作業を割り当て直し、移動体10AのウェイポイントAbへの移動が終了したら、他の移動体10B、10Cの作業を開始させる。
【0083】
このように、本例では、デッドロックが発生した場合には、優先度の低い移動体10に更新経路を設定して退避させた後に、優先度の高い移動体10に作業を継続させる。従って、デッドロックを適切に解消して、稼働率の低下を抑制できる。
【0084】
(処理フロー)
次に、以上説明した情報処理装置の処理フローを説明する。
図14は、情報処理装置の処理フローを説明するフローチャートである。
図14に示すように、情報処理装置14は、移動先情報取得部60により、管理装置12から移動先情報を取得し、経路設定部62により、移動先情報に基づき、移動体10の経路Rを設定する(ステップS10)。情報処理装置14は、経路設定部62により、設定した経路Rを移動体10に送信する(ステップS12)。移動体10は、設定された経路Rに従って移動し、経路Rを設定した際には予期しなかった事象(移動の終了、充電量、故障、障害物、デッドロックなど)を検出して、事象が検出されたら、その事象を示す事象情報を情報処理装置14に送信する。情報処理装置14は、移動体10から事象情報を取得したら(ステップS14;Yes)、経路設定部62により、事象情報に基づき、移動体10の次の経路を設定する)ステップS16)。その後、処理を終了する場合には(ステップS18;Yes)、本処理を終了し、処理を終了しない場合には(ステップS18;No)、ステップS14に戻り処理を継続する。なお、移動体10から事象情報を取得しない場合にも(ステップS14;No)、ステップS18に進む。
【0085】
(効果)
以上説明したように、本開示に係る情報処理装置14は、移動先の位置を示す移動先情報を取得する移動先情報取得部60と、移動先情報に基づき、移動先までの移動体10の経路Rを設定する経路設定部62と、経路Rを設定した際には予期していない事象が経路Rを移動する移動体10に発生したことを示す、事象情報を取得する事象取得部64と、を含む。経路設定部62は、事象情報に基づいて、移動体10の次の経路を設定する。本開示によると、事象に対応した次の経路を設定して作業を継続できるため、移動体10の稼働率の低下を抑制することができる。
【0086】
事象取得部64は、事象情報を移動体10から取得する。本開示によると、移動体10から事象情報を取得するため、移動体10に起きた事象を適切に検出可能となり、次の経路を適切に設定することができる。
【0087】
事象取得部64は、経路Rの移動を終了した旨の情報を事象情報として取得する。経路設定部62は、経路Rの移動を終了した旨の事象情報が取得されたら、移動先とは別の位置である更新移動先までの経路を、経路Rの移動を終了した移動体10の次の経路として設定する。本開示によると、移動体10の移動が終了した際には、移動体10をその位置に留まらせることなく、更新移動先に移動させる。これにより、移動が終了した移動体10が他の移動体10の邪魔となることが抑制されて、移動体10の稼働率の低下を抑制できる。
【0088】
経路設定部62は、移動体10の充電量に基づいて、更新移動先を設定する。これにより、充電量も考慮しつつ、移動体10の稼働率の低下を抑制できる。
【0089】
事象取得部64は、移動体10の充電量の情報を事象情報として取得し、経路設定部62は、移動体10の充電量が閾値未満である場合には、充電場所までの経路を、その移動体10の次の経路として設定する。本開示によると、移動体10の充電量が低下した際には、次の作業を行わせることなく、移動体10を充電場所に移動させる。これにより、移動体10を迅速に充電させて、稼働率の低下を抑制できる。
【0090】
経路設定部62は、充電量が閾値未満である第1移動体以外の第2移動体に対して、第1移動体が予定していた移動先までの経路を設定する。本開示によると、充電量が低下した第1移動体の作業を、他の第2移動体に割り当てる。従って、充電量が低下した第1移動体の作業が滞ることを抑制して、稼働率の低下を抑制できる。
【0091】
経路設定部62は、複数の第2移動体のうちで、その第2移動体の移動先(第2位置)から、第1移動体が予定していた移動先(第1位置)まで到達する時間が最短となる第2移動体に対して、第1移動体が予定していた移動先までの経路を設定する。これにより、第1移動体の予定していた作業を早急に実施できるため、稼働率の低下を抑制できる。
【0092】
経路設定部62は、充電場所で充電している移動体10の充電量が、閾値より高い所定値以上となった場合に、その移動体10の充電場所からの経路を、次の経路として設定する。本開示によると、充電量された第1移動体に対して作業を再度割り当てるため、稼働率の低下を抑制できる。
【0093】
事象取得部64は、移動体10が故障した旨を示す情報を事象情報として取得する。経路設定部62は、移動体10が故障した旨の事象情報を取得したら、故障した移動体10の位置から所定距離内の位置を通らないように、他の移動体10の次の経路を設定する。これにより、他の移動体10の作業が故障した移動体10に遮られることを抑制して、稼働率の低下を抑制できる。
【0094】
事象取得部64は、経路R上に障害物が存在する旨を示す情報を事象情報として取得する。経路設定部62は、経路R上に障害物が存在する旨の事象情報を取得したら、障害物から所定距離内の位置を通らないように、移動体10の次の経路を設定する。これにより、移動体10の作業が障害物に遮られることを抑制して、稼働率の低下を抑制できる。
【0095】
事象取得部64は、デッドロックが発生した旨を示す情報を事象情報として取得する。経路設定部62は、デッドロックが発生した旨の事象情報を取得したら、デッドロックが発生した移動体10のうちの一部の移動体について、移動先とは別の位置である更新移動先までの経路を設定し、デッドロックが発生した移動体10のうちの他の移動体については、次の経路を設定しない。本開示によると、デッドロックが発生した場合には、一部の移動体10に更新経路を設定して退避させた後に、他の移動体10に作業を継続させる。従って、デッドロックを適切に解消して、稼働率の低下を抑制できる。
【0096】
本開示に係る移動制御システム1は、情報処理装置14と、移動先情報を設定する管理装置12と、を有し、情報処理装置14は、移動先情報の内容を維持したまま、移動体10の次の経路を設定する。これにより、上位系のシステムである管理装置12に移動先情報を再設定させる必要がなくなるため、設備Wを適切に管理できる。
【0097】
本開示に係る移動制御システム1は、情報処理装置14と移動体10とを含む。本開示によると、移動体10の稼働率の低下を抑制できる。
【0098】
以上、本開示の実施形態を説明したが、この実施形態の内容により実施形態が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
【符号の説明】
【0099】
10 移動体
12 管理装置
14 情報処理装置
40 移動先情報設定部
60 移動先情報取得部
62 経路設定部
64 事象取得部
80 経路取得部
82 移動制御部
84 事象検出部
A ウェイポイント