JP7236526B1 - 移動体の管理方法、移動体の制御方法、移動体及びプログラム - Google Patents

移動体の管理方法、移動体の制御方法、移動体及びプログラム Download PDF

Info

Publication number
JP7236526B1
JP7236526B1 JP2021206171A JP2021206171A JP7236526B1 JP 7236526 B1 JP7236526 B1 JP 7236526B1 JP 2021206171 A JP2021206171 A JP 2021206171A JP 2021206171 A JP2021206171 A JP 2021206171A JP 7236526 B1 JP7236526 B1 JP 7236526B1
Authority
JP
Japan
Prior art keywords
moving body
moving
route
area
path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2021206171A
Other languages
English (en)
Other versions
JP2023091429A (ja
Inventor
広昴 岡崎
健司 ▲高▼尾
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Heavy Industries Ltd
Original Assignee
Mitsubishi Heavy Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Heavy Industries Ltd filed Critical Mitsubishi Heavy Industries Ltd
Priority to JP2021206171A priority Critical patent/JP7236526B1/ja
Priority to JP2022201887A priority patent/JP2023091769A/ja
Priority to DE102022214021.4A priority patent/DE102022214021A1/de
Priority to US18/068,817 priority patent/US20230195124A1/en
Application granted granted Critical
Publication of JP7236526B1 publication Critical patent/JP7236526B1/ja
Publication of JP2023091429A publication Critical patent/JP2023091429A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

Figure 0007236526000001
【課題】横方向側に存在する対象物への干渉を抑制する。
【解決手段】移動体の管理方法は、自動で移動する移動体の移動条件を取得するステップと、移動条件に基づき、対象物が位置すべきでない移動体の進行方向側の領域である安全領域を設定するステップと、を含み、安全領域を設定するステップにおいては、移動体の速度が高いほど、進行方向に交差する横方向に安全領域が広がるように、安全領域を設定する。
【選択図】図1

Description

本開示は、移動体の管理方法、移動体の制御方法、移動体及びプログラムに関する。
例えばフォークリフトなどの移動体を、自動的に移動させる技術が知られている。例えば特許文献1には、基準の経路を自律走行する移動体であって、前回位置からの移動ベクトルから求めた進行方向において、障害物に対して所定の通行距離を保持できるように移動体の速度を決定することで、障害物との衝突を抑制する技術が記載されている。
特許第5830533号公報
しかし、移動体は、操舵により横方向にも移動するため、操舵の不確かさにより、横方向側に存在する対象物に干渉してしまうおそれがある。そのため、横方向側に存在する対象物への干渉を抑制することが求められる。
本開示は、上述した課題を解決するものであり、横方向側に存在する対象物への干渉を抑制可能な移動体の管理方法、移動体の制御方法、移動体及びプログラムを提供することを目的とする。
上述した課題を解決し、目的を達成するために、本開示に係る移動体の管理方法は、自動で移動する移動体の移動条件を取得するステップと、前記移動条件に基づき、対象物が位置すべきでない前記移動体の進行方向側の領域である安全領域を設定するステップと、を含み、前記安全領域を設定するステップにおいては、前記移動体の速度が高いほど、前記進行方向に交差する横方向に前記安全領域が広がるように、前記安全領域を設定する。
上述した課題を解決し、目的を達成するために、本開示に係る移動体の制御方法は、前記移動体の管理方法で設定された前記安全領域の情報を取得するステップと、前記安全領域内に前記対象物が位置しないかを検出しつつ、前記移動体を移動させるステップと、を含む。
上述した課題を解決し、目的を達成するために、本開示に係る移動体は、自動で移動する移動体であって、前記移動体の移動条件に基づき設定された、対象物が位置すべきでない前記移動体の進行方向側の領域である安全領域の情報を取得する安全領域取得部と、前記安全領域内に前記対象物が位置しないかを検出しつつ、前記移動体を移動させる移動制御部と、を含み、前記安全領域は、前記移動体の速度が高いほど、前記進行方向に交差する横方向に広がるように設定されている。
上述した課題を解決し、目的を達成するために、本開示に係るプログラムは、自動で移動する移動体の移動条件を取得するステップと、前記移動条件に基づき、対象物が位置すべきでない前記移動体の進行方向側の領域である安全領域を設定するステップと、をコンピュータに実行させるプログラムであって、前記安全領域を設定するステップにおいては、前記移動体の速度が高いほど、前記進行方向に交差する横方向に前記安全領域が広がるように、前記安全領域を設定する。
本開示によれば、横方向側に存在する対象物への干渉を抑制することができる。
図1は、本実施形態に係る移動制御システムの模式図である。 図2は、移動体の構成の模式図である。 図3は、情報処理装置の模式的なブロック図である。 図4は、安全領域を説明するための模式図である。 図5は、移動体の制御装置の模式的なブロック図である。 図6は、移動体を移動させるための制御フローを説明するフローチャートである。 図7は、移動体の経路の設定の他の例を説明するための模式図である。 図8は、移動体の経路の設定の他の例を説明するための模式図である。 図9は、他の例における経路設定の処理フローを説明するフローチャートである。 図10は、移動体の経路の設定の他の例を説明するための模式図である。 図11は、移動体の経路の設定の他の例を説明するための模式図である。 図12は、第2実施形態における移動体の経路の設定を説明するための模式図である。 図13は、第2実施形態における移動体の経路の設定を説明するための模式図である。 図14は、第2実施形態における移動体の経路の設定を説明するための模式図である。 図15は、第2実施形態における経路切り替えの処理フローを説明するフローチャートである。 図16は、切り替え経路の模式図である。
以下に添付図面を参照して、本開示の好適な実施形態を詳細に説明する。なお、この実施形態により本開示が限定されるものではなく、また、実施形態が複数ある場合には、各実施形態を組み合わせて構成するものも含むものである。
(第1実施形態)
(移動制御システムの全体構成)
図1は、第1実施形態に係る移動制御システムの模式図である。図1に示すように、第1実施形態に係る移動制御システム1は、移動体10及び情報処理装置12を含む。移動制御システム1は、設備Wに所属する移動体10の移動を制御するシステムである。設備Wは、例えば倉庫など、物流管理される設備であるが、それに限られず任意の設備であってよく、例えば屋外であってもよい。移動制御システム1においては、移動体10を設備Wの領域AR0内で移動させる。領域AR0は、例えば設備Wの床面である。以下、領域AR0に沿った一方向をX方向とし、領域AR0に沿った方向であって方向Xに交差する方向を、Y方向とする。本実施形態では、Y方向は、X方向に直交する方向である。X方向、Y方向は、水平面に沿った方向といってもよい。また、X方向、Y方向に直交する方向を、より詳しくは鉛直方向の上方に向かう方向を、Z方向とする。また、本実施形態においては、「位置」とは、特に断りのない限り、領域AR上の二次元面における座標系(領域ARの座標系)における位置(座標)を指す。また、移動体10の「姿勢」とは、特に断りのない限り、領域ARの座標系における移動体10の向きであり、Z方向から見た場合に、X方向を0°とした際の移動体10のヨー角(回転角度)を指す。
(移動体)
図2は、移動体の構成の模式図である。移動体10は、自動で移動可能な装置である。移動体10は、自動で移動可能な任意のビークルであってよいが、例えば、非ホロノミック系で真横に移動できない移動体である。さらに言えば、本実施形態では、移動体10は、フォークリフトであり、より詳しくはいわゆるAGF(Automated Guided Forklift)である。図2に示すように、移動体10は、車体20と、車輪20Aと、ストラドルレッグ21と、マスト22と、フォーク24と、センサ26と、制御装置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が設けられていない側の方向を、後方向とする。
センサ26は、車体20の周辺に存在する対象物の位置及び姿勢の少なくとも1つを検出する。センサ26は、移動体10に対する対象物の位置と、移動体10に対する対象物の姿勢とを検出するともいえる。本実施形態では、センサ26は、それぞれのマスト22の側面と、車体20の後方向側とに設けられている。ただし、センサ26の設けられる位置はこれに限られず、任意の位置に設けられてもよいし、設けられる数も任意であってよい。例えば、移動体10に設けられる安全センサを、センサ26として流用してもよい。安全センサを流用することで、新たにセンサを設ける必要がなくなる。
センサ26は、例えばレーザ光を照射するセンサである。センサ26は、一方向(ここでは横方向)に走査しつつレーザ光を照射し、照射したレーザ光の反射光から、対象物の位置及び向きを検出する。すなわち、センサ26は、いわゆる2D-LiDAR(Light Detection And Ranging)であるともいえる。ただし、センサ26は、以上のものに限られず任意の方法で対象物を検出するセンサであってよく、例えば、複数の方向に走査されるいわゆる3D-LiDARであってもよいし、カメラであってもよい。
制御装置28は、移動体10の移動を制御する。制御装置28については後述する。
(情報処理装置)
図3は、情報処理装置の模式的なブロック図である。情報処理装置12は、設備Wに設けられ、少なくとも、移動体10の移動に関する情報などを演算する装置、いわゆる地上システムである。ただし、情報処理装置12の設置位置などは任意であり、いわゆる地上システムに限られない。情報処理装置12は、コンピュータであり、図3に示すように、通信部30と記憶部32と制御部34とを含む。通信部30は、制御部34に用いられて、移動体10などの外部の装置と通信するモジュールであり、例えばアンテナなどを含んでよい。通信部30による通信方式は、本実施形態では無線通信であるが、通信方式は任意であってよい。記憶部32は、制御部34の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAM(Random Access Memory)と、ROM(Read Only Memory)のような主記憶装置と、HDD(Hard Disk Drive)などの外部記憶装置とのうち、少なくとも1つ含む。
制御部34は、演算装置であり、例えばCPU(Central Processing Unit)などの演算回路を含む。制御部34は、上限速度設定部40と経路設定部42とを含む。制御部34は、記憶部32からプログラム(ソフトウェア)を読み出して実行することで、上限速度設定部40と経路設定部42とを実現して、それらの処理を実行する。なお、制御部34は、1つのCPUによってこれらの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、上限速度設定部40と経路設定部42との少なくとも一部を、ハードウェア回路で実現してもよい。また、記憶部32が保存する制御部34用のプログラムは、情報処理装置12が読み取り可能な記録媒体に記憶されていてもよい。
(上限速度設定部)
上限速度設定部40は、設備W内における移動体10の移動速度の上限である上限速度を設定する。すなわち、移動体10は、上限速度以下の移動速度で移動するといえる。ここで、設備W内においては、移動体10が移動可能な複数の経路が予め設定されており、移動体10は、複数の経路のうちから選択された経路Rに沿って移動する。本実施形態においては、上限速度設定部40は、単位長さあたりの経路(単位経路)毎に、上限速度を設定する。より詳しくは、図1に示すように、領域ARには、位置(座標)毎にウェイポイントWPが設定されており、ウェイポイントWPを繋ぐように経路Rが設定される。すなわち、移動体10が経由するものとして選択されたウェイポイントWPを接続する経路が、移動体10の経路Rとなる。この場合例えば、隣り合うウェイポイントWPを接続する経路が、単位経路といえる。ただし、単位経路は、隣り合う一対のウェイポイントWPを接続する経路を指すことに限られず、3つ以上のウェイポイントWPを接続する経路であってよい。また、それぞれの単位経路同士の長さは同じでなくてよく、それぞれの単位経路は任意に設定されてよい。
上限速度設定部40は、移動体10が上限速度で移動したと仮定した場合に設定される安全領域AR内に、対象物Pが位置しないように、上限速度を設定する。安全領域ARとは、対象物Pが位置すべきでない領域として設定される、移動体10の周囲(例えば移動体10の進行方向側)に設定される領域である。対象物Pとは、移動体10が干渉すべきでない対象を指す。対象物Pとしては、設備W内の壁や柱などの、設備W内で位置が固定された構造物と、他の移動体10や人などの、設備W内で位置が移動する物体と、移動体10が進入すべきでない領域と進入可能な領域との境界とが挙げられる。なお、移動体10が進入すべきでない領域と進入可能な領域との境界も、位置が固定されており、移動体10が移動可能な領域の両側方に設けられた白線などであってよい。構造物や境界などの位置が固定された対象物Pは、移動体10が移動する前から位置が既知である。一方、他の移動体や人などの位置が移動する対象物Pは、位置が既知ではないといえる。
(安全領域)
安全領域ARについて具体的に説明する。図4は、安全領域を説明するための模式図である。安全領域ARは、移動体10の移動速度が高いほど、移動体10の進行方向に交差する横方向に広がるように設定される。また、安全領域ARは、移動体10の移動速度が高いほど、移動体10の進行方向にも広がるように設定されることが好ましい。言い換えれば、移動体10の移動速度と安全領域ARの横方向の長さとの関係は、移動速度が高いほど、安全領域ARの横方向の長さが長くなるように設定されているといえ、移動体10の移動速度と安全領域ARの進行方向の長さとの関係は、移動速度が高いほど、安全領域ARの進行方向の長さが長くなるように設定されているといえる。図4は、移動体10の進行方向がY方向である場合の、移動速度毎の安全領域ARの一例を示しており、(A)よりも(B)の移動速度が高く、(B)よりも(C)の移動速度が高くなっている。従って、図4の例では、安全領域ARの横方向(ここではX方向)と進行方向(ここではY方向)の長さは、(A)よりも(B)が長く、(B)よりも(C)が長くなる。
安全領域ARは、移動体10の移動条件に基づき設定される。安全領域ARは、移動速度が高いほど横方向の長さが長くなるように、移動体10の移動条件に基づいた任意の方法で設定されてよい。移動条件とは、移動体10が移動する際の条件を指し、例えば本実施形態では、移動体10の操舵角指令であってよい。すなわち、本実施形態では、安全領域ARは、移動体10の操舵角指令の基準値に基づいて設定されることが好ましい。操舵角指令とは、移動体10の操舵角の指令値を指し、言い換えれば、移動体10の今後の姿勢を規定する指令値といえる。この場合、安全領域ARは、操舵角指令の基準値が移動体10に入力され続けたと仮定された際の想定到達位置を含むように、設定される。想定到達位置とは、操舵角指令の基準値が移動体10に入力され続けた場合に、移動体10が停止時に到達することが想定される位置を指す。例えば図4の例では、X方向側の想定到達位置A1と、Y方向側の想定到達位置A2と、移動体10の現在位置とに囲われる領域が、安全領域ARとして設定されている。想定到達位置A1は、X方向側に操舵角指令の基準値が設定された際の想定到達位置であり、想定到達位置A2は、X方向と反対側に操舵角指令の基準値が設定された際の想定到達位置である。なお、操舵角指令の基準値は、任意に設定されてよいが、例えば操舵角指令の最悪値としてよい。操舵角指令の最悪値とは、移動体10に入力可能な操舵角指令の最大値を指してよい。
さらに言えば、本実施形態では、安全領域ARは、移動体10の操舵角指令の基準値と、移動体10のトルク指令の基準値と基づいて設定されることがより好ましい。トルク指令とは、移動体10の駆動トルクの指令値を指し、移動体10の速度は駆動トルクに依存するため、トルク指令とは、移動体10の今後の速度を規定する指令値といえる。この場合、安全領域ARは、操舵角指令の基準値が移動体10に入力され続け、かつトルク指令の基準値が移動体10に入力されたと仮定された際の想定到達位置を含むように、設定される。この場合の想定到達位置とは、操舵角指令の基準値が移動体10に入力され続け、かつトルク指令の基準値が移動体10に入力された場合に、移動体10が停止時に到達することが想定される位置を指す。例えば図4の例では、X方向側の想定到達位置A1と、Y方向側の想定到達位置A2と、移動体10の現在位置とに囲われる領域が、安全領域ARとして設定されている。なお、トルク指令の基準値は、任意に設定されてよいが、例えばトルク指令の最悪値としてよい。トルク指令の最悪値とは、移動体10が減速を開始するタイミングが想定される範囲で最も遅れるような値を指してよい。
より詳しくは、本実施形態では、安全領域ARは、移動体10の移動モデルに基づいて、操舵角指令の基準値と、駆動トルクの基準値と、移動体10の現在の速度とを移動モデルの入力値(移動条件)として設定されることが好ましい。ここで、移動体10の移動モデルxを等価二輪モデルとした場合、より詳しくは駆動及び操舵されない2つの後輪と、駆動及び操舵される1つの前輪がある等価二輪モデルとした場合、移動モデルxは、次の式(1)で表される。
Figure 0007236526000002
式(1)のXは、移動体10のX方向における位置(座標)であり、Yは、移動体10のY方向における位置(座標)であり、θは、移動体10の姿勢(ヨー角)であり、vは、移動体10のX方向における速度であり、vは、移動体10のY方向における速度であり、ωは、移動体10の角速度(ヨー角方向の速度)であり、δは、操舵角指令値であり、Tは、トルク指令値である。またTは転置を指す。すなわち、移動モデルxは、移動体10の位置、姿勢、速度、角速度、操舵角指令値、及びトルク指令値を指しているといえる。
本実施形態においては、操舵角指令の基準値と、駆動トルクの基準値と、移動体10の現在の速度及び角速度とに基づいて、移動モデルxの微分値x’を算出し、微分値x’を積分して、移動体10が停止したタイミングにおける移動モデルxを算出する。すなわち、現在のタイミングから移動体10が停止するまでの各タイミングにおける微分値x’を順次算出することで、移動体10が停止したタイミングにおける移動モデルxを算出する。そして、移動体10が停止したタイミングにおける移動モデルxのX、Yを、想定到達位置として、想定到達位置を含むように安全領域ARを設定する。
具体的には、微分値x’は、次の式(2)のように表される。
Figure 0007236526000003
式(2)におけるv、v、θ、ω、δa、は、直前のタイミングにおける、X方向における速度、Y方向における移動速度、姿勢、角速度、操舵角指令値、トルク指令値を指す。また、式(2)における他の記号は、以下の通りである。
m:移動体10の質量
:空気抵抗定数
μ:転がり抵抗係数
:移動体10の重心から前輪までの距離
:移動体10の重心から後輪までの距離
:旋回方向の慣性モーメント
a:移動体10の全幅の半分の値
c:移動体10の全長の半分の値
:前輪のコーナリングパワー
:後輪のコーナリングパワー
:前輪径
:後輪径
:ギア比
:ギアのイナーシャ
τ:モータ時定数
up:モータトルクの最大値
τ:操舵系の無駄時間
θmax:最大操舵角
g:重力加速度
また、式(2)のβ、βは、次の式(3)、(4)で表される。
Figure 0007236526000004
Figure 0007236526000005
(上限速度)
上限速度を設定する場合には、上限速度設定部40は、移動体10が上限速度で移動している場合に設定される安全領域AR内に、位置が既知となる対象物Pが位置しないように、上限速度を設定する。本実施形態の例では、上限速度設定部40は、移動体10の移動モデルにおける移動条件(入力値)である操舵角指令値、駆動トルク値、及び移動モデルxの算出に用いる値(すなわち式(2)における記号の数値)を所定の基準値としつつ、移動体10の現在の速度を異ならせて安全領域ARを算出することで、移動体10の速度毎の安全領域ARを算出する。そして、上限速度設定部40は、地図情報に基づき、位置が固定された対象物P(構造物や境界)の位置を読み出す。上限速度設定部40は、移動体10が単位経路上(ウェイポイントWP上又はウェイポイントWP同士の間)に位置していると仮定した場合に、移動体10の速度毎の安全領域ARのそれぞれに対して、位置を読み出した対象物Pが干渉するかを(安全領域AR内に対象物Pが位置するかを)、判断する。上限速度設定部40は、対象物Pが安全領域ARに干渉しない場合の移動体10の速度を、上限速度として設定する。より詳しくは、上限速度設定部40は、対象物Pが安全領域ARに干渉しない場合の移動体10の速度の内の最大値を、上限速度とすることが好ましい。上限速度設定部40は、単位経路毎に、同様の方法で上限速度を設定する。上限速度設定部40は、位置が固定された対象物P(構造物や境界)に対して距離が離れている単位経路ほど、上限速度が高くなるように、単位経路毎の上限速度を設定するといえる。
上限速度設定部40は、このようにして上限速度を設定するが、上限速度の設定方法は上記に限られず任意であってよく、さらに言えば上限速度の設定は必須ではない。
(経路設定部)
経路設定部42は、移動体10が移動する経路Rを設定する。経路設定部42は、設定した経路Rの情報を、通信部30を介して、移動体10に送信する。経路設定部42は、例えば移動体10が経由するウェイポイントWPを設定して、経由するウェイポイントWPを接続する経路Rの位置情報を、経路Rの情報として移動体10に送信してもよいし、経由するウェイポイントWPの位置情報を、経路Rの情報として移動体10に送信してもよい。経路設定部42は、任意の方法で、移動体10が移動する経路R(ここでは例えば経由するウェイポイントWP)を設定してよい。例えば、経路設定部42は、移動体10の現在位置の情報を移動体10から取得し、例えば移動体10の作業内容に基づき設定される移動体10の目的位置の情報を取得する。そして、経路設定部42は、現在位置から目的位置に向かう経路(ウェイポイントWP)を、経路Rとして設定してよい。
本実施形態では、経路設定部42は、移動体10が移動する経路Rを含む単位経路における上限速度の情報も、通信部30を介して、移動体10に送信する。すなわち、経路設定部42は、移動体10の経路Rと、その経路Rにおける上限速度とを、移動体10に送信することが好ましいといえる。
(移動体の制御装置)
次に、移動体10の制御装置28について説明する。図5は、移動体の制御装置の模式的なブロック図である。制御装置28は、移動体10を制御して、移動体10を移動させる。制御装置28は、コンピュータであり、図5に示すように、通信部50と記憶部52と制御部54とを含む。通信部50は、制御部54に用いられて、情報処理装置14などの外部の装置と通信するモジュールであり、例えばアンテナなどを含んでよい。通信部50による通信方式は、本実施形態では無線通信であるが、通信方式は任意であってよい。記憶部52は、制御部54の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAMと、ROMのような主記憶装置と、HDDなどの外部記憶装置とのうち、少なくとも1つ含む。
制御部54は、演算装置であり、例えばCPUなどの演算回路を含む。制御部54は、経路取得部60と、上限速度取得部62と、移動制御部64と、安全領域取得部66と、検出制御部68とを含む。制御部54は、記憶部52からプログラム(ソフトウェア)を読み出して実行することで、経路取得部60と上限速度取得部62と移動制御部64と安全領域取得部66と検出制御部68とを実現して、それらの処理を実行する。なお、制御部54は、1つのCPUによってこれらの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、経路取得部60と上限速度取得部62と移動制御部64と安全領域取得部66と検出制御部68との少なくとも一部を、ハードウェア回路で実現してもよい。また、記憶部52が保存する制御部54用のプログラムは、制御装置28が読み取り可能な記録媒体に記憶されていてもよい。
(経路取得部)
経路取得部60は、経路Rの情報を取得する。経路取得部60は、情報処理装置14から経路Rの情報を取得する。ただし、経路取得部60は、情報処理装置14から経路Rを取得することに限られず、自身で経路Rを設定してもよい。この場合例えば、経路取得部60は、情報処理装置14からウェイポイントWPの位置情報と目的位置の情報とを取得して、現在の自己位置からウェイポイントWPを経由して目的位置まで到達する経路を、経路Rとして設定してもよい。
(上限速度取得部)
上限速度取得部62は、経路Rにおける上限速度の情報を取得する。経路取得部60は、情報処理装置14から、経路Rにおける上限速度の情報を取得する。
(移動制御部)
移動制御部64は、移動体10の駆動部やステアリングなどの移動機構を制御して、移動体10の移動を制御する。移動制御部64は、経路取得部60が取得した経路Rに従って、移動体10を移動させる。移動制御部64は、移動体10の位置情報を逐次把握することで、経路Rを通るように、移動体10を移動させる。移動体10の位置情報の取得方法は任意であるが、例えば本実施形態では、設備Wに図示しない検出体が設けられており、移動制御部64は、検出体の検出に基づき移動体10の位置及び姿勢の情報を取得する。具体的には、移動体10は、検出体に向けてレーザ光を照射し、検出体によるレーザ光の反射光を受光して、設備Wにおける自身の位置及び姿勢を検出する。ただし、移動体10の位置及び姿勢の情報の取得方法は、検出体を用いることに限られず、例えば、SLAM(Slmultaneous Localization and Mapping)を用いてもよい。
(安全領域取得部)
安全領域取得部66は、安全領域ARの情報を取得する。安全領域ARの形状や大きさは、移動体10の速度などの移動条件に応じて変化するため、安全領域取得部66は、移動体10が移動している際に、逐次、安全領域ARを設定する。安全領域取得部66は、上述で説明した上限速度設定部40による算出方法と同様の方法で、移動体10の現在の移動条件に基づき、安全領域ARを算出する。この場合、移動体10の現在の移動条件のうち、予め設定される移動条件(例えば移動体10の重量などの、値が変化しない車両固有の条件)については、予め設定された値を用い、予め設定されず値が変化する条件(例えば移動体10の速度など)については、例えば移動体10に設けられたセンサによって検出してもよい。ただし、安全領域取得部66は、上述で説明した上限速度設定部40による算出方法と同様の方法で安全領域ARを逐次算出することに限られない。この場合例えば、移動条件(例えば移動体10の速度)と安全領域ARの大きさ及び形状との対応関係が予め設定されており、安全領域取得部66は、予め設定された対応関係において、現在の移動体10の移動条件に対応付けられた大きさ及び形状の安全領域ARを、適用すべき安全領域ARとして取得してよい。
(検出制御部68)
検出制御部68は、移動体10の周囲の対象物Pを検出する。本実施形態では、検出制御部68は、センサ26によって対象物Pを検出させる。例えばセンサ26がレーザ光を照射する構成の場合、検出制御部74は、移動体10が経路Rを移動中に、移動体10の周囲に向けて、センサ26からレーザ光を照射させる。対象物Pは、センサ26からのレーザ光を反射し、センサ26は、対象物Pからの反射光を受光する。検出制御部68は、センサ26が受光した反射光の検出結果に基づき、対象物Pの位置を算出する。
ただし、検出制御部68による対象物Pの検出方法はセンサ26を用いることに限られない。例えば、位置が既知の対象物P(構造物や境界)については、地図情報で予め位置が把握できるため、検出制御部68は、地図情報に基づき、位置が既知の対象物Pの位置を算出してよい。位置が既知でない対象物P(他の移動体10や人など)については、センサ26を用いて検出することが好ましい。
(移動体の制御)
移動体10の制御装置28による移動体10を移動させるための制御フローについて説明する。図6は、移動体を移動させるための制御フローを説明するフローチャートである。図6に示すように、制御装置28は、経路取得部60及び上限速度取得部62により、移動体10用の経路Rと、経路Rにおける上限速度とを取得する(ステップS10)。制御装置28は、安全領域取得部66による安全領域ARの算出と、検出制御部68による対象物Pの位置検出と、移動制御部64による自己位置の検出とを実行しながら、移動制御部64によって移動体10を経路Rに沿って移動させる(ステップS12)。本実施形態においては、移動制御部64は、上限速度取得部62が取得した上限速度以下の速度で、経路Rに従って移動体10を移動させる。上述のように、本実施形態では、上限速度は単位経路毎に設定されているため、経路Rに複数の単位経路が含まれている場合、移動制御部64は、現在移動している単位経路での上限速度以下の速度となるように、移動体10を移動させてよい。
移動制御部64は、移動体10を経路Rに沿って移動させつつ、安全領域AR内に対象物Pが位置しているかを判断する(ステップS14)。具体的には、移動制御部64は、現在の自己位置に対して設定される現在の安全領域ARの領域内に、検出制御部68が検出した対象物Pが位置しているかを判断する。なお、上述のように、検出制御部68は、センサ26によって対象物Pの位置を検出してもよいし、地図情報から対象物Pの位置を検出してもよい。安全領域AR内に対象物Pが位置している場合(ステップS14;Yes)、移動制御部64は、移動体10の移動を停止させる(ステップS16)。移動体10の移動を停止したら、ステップS18に進み、処理を終了しない場合には(ステップS18;No)、ステップS12に戻り、安全領域AR内に対象物Pが位置しないように、移動を再開する。一方、安全領域AR内に対象物Pが位置していない場合(ステップS14;No)も、ステップS18に進み、処理を終了しない場合には、ステップS12に戻り、移動を続ける。なお、ステップS18において処理を終了する場合には(ステップS18;Yes)、本処理を終了する。
以上説明したように、本実施形態においては、移動体10の速度が高くなるほど安全領域ARの横方向の長さが長くなるように、安全領域ARを設定する。このように速度に応じて横方向に安全領域ARを広く設定することで、例えば操舵の不確かさにより、移動体10が停止するまでに、意図せず横方向に移動してしまった場合でも、横方向に存在する対象物Pと移動体10との干渉を適切に抑制できる。また、操舵角指令やトルク指令の基準値に基づいて安全領域ARを設定することで、横方向に広い安全領域ARを適切に設定できるため、横方向に存在する対象物Pとの干渉をより適切に抑制できる。また、安全領域ARに基づき上限速度を設定することで、一律に上限速度が設定されず、例えば位置が既知の対象物Pから離れた経路については上限速度を高くできるため、作業効率を向上できる。
(経路の設定の他の例)
次に、移動体10の経路の設定の他の例について説明する。本例においては、情報処理装置14の経路設定部42は、移動体10の経路を設定する際に、移動体10の現在位置と目的位置とから、設備W内において移動体10が移動を予定する通路(領域)を特定する。そして、その通路が2車線以上の対面走行可能な通路であって、同じ時間帯に他の移動体がその通路の移動を予定していない場合には、その通路における移動体10の経路を、壁や境界などの位置が既知の対象物Pから離れた経路とする。経路を対象物Pから離れる側にすることで、移動体10と対象物Pとの距離が離れるため、移動体10の速度を上げることができる。すなわち、速度上昇により安全領域ARが広がったとしても、対象物Pまでの距離が離れているため、対象物Pが安全領域AR内に入ることなく、高速での移動が可能となる。以下、より具体的に説明する。
図7及び図8は、移動体の経路の設定の他の例を説明するための模式図である。以降の説明では、図7に示すように、移動体10が移動を予定する通路AR1に、第1経路R1と第2経路R2とが設定される場合を例にする。通路AR1は、Y方向に延在する通路であり、X方向側とX方向の反対側とに、位置が固定される対象物P(本例では壁)が設けられている。第1経路R1は、Y方向(第1方向)に向かう経路である。すなわち例えば、通路AR1には、Y方向に並ぶ複数のウェイポイントWP1が予め設定されており、ウェイポイントWP1を接続してY方向に向かう経路が、第1経路R1であるといえる。また、第2経路R2は、第1経路R1に対してX方向と反対側(第1経路R1の進行方向に対して交差する横方向)に並ぶ経路である。すなわち例えば、通路AR1には、ウェイポイントWP1のX方向と反対側において、Y方向に並ぶ複数のウェイポイントWP2が予め設定されており、ウェイポイントWP2を接続してX方向と反対側に向かう経路が、第2経路R2であるといえる。本実施形態においては、第2経路R2は、Y方向と反対側に向かう経路であり、言い換えれば、第1経路R1の対向車線である。ただし、第2経路R2は、Y方向と反対側に向かう経路に限られず、Y方向側に向かう経路であってもよい。また、通路AR1には、横方向に並ぶ2つの経路(横方向に並ぶ2つのウェイポイントWPの列)が設定されていることに限られず、横方向に並ぶ3つ以上の経路(横方向に並ぶ3つ以上のウェイポイントWPの列)が設定されていてもよい。
ここで、経路設定部42が、第1移動体10Aの経路を設定する場合を例にする。経路設定部42は、第1移動体10Aが移動する経路(経由するウェイポイントWP)と、その経路の移動を予定する時間帯である予定時間帯とを、第1移動体10Aの経路情報として設定する。経路設定部42は、移動体10毎に経路情報を設定するため、それぞれの移動体10の経路情報を把握しているといえ、本例では第2移動体10Bの経路情報を予め把握している。経路設定部42は、第1移動体10Aの経路情報を設定する際に、他の移動体10(本例では第2移動体10B)の経路情報に基づき、第1移動体10Aが通路AR1を移動する予定時間帯と同じ時間帯に、他の移動体10(本例では第2移動体10B)が通路AR1を移動予定であるかを判断する。ここでの同じ時間帯とは、時間帯同士が完全に重なることに限られず、時間帯同士の少なくとも一部が重なることを指してよい。すなわち本例では、経路設定部42は、第1移動体10Aの通路AR1についての予定時間帯と、第2移動体10Bの通路AR1についての予定時間帯とが、重なるかを判断する。
第1移動体10Aが通路AR1を移動する予定時間帯と同じ時間帯に、他の移動体10(本例では第2移動体10B)が通路AR1を移動予定である場合には、経路設定部42は、図7に示すように、第1経路R1と第2経路R2とを、第1移動体10Aと第2移動体10Bとの経路として設定する。すなわち例えば、第1移動体10Aが通路AR1をY方向側に移動することを予定し、第2移動体10Bが通路AR2をY方向と反対側に移動することを予定している場合には、経路設定部42は、第1移動体10Aの経路を第1経路R1とし、第2移動体10Bの経路を第2経路R2として設定する。経路設定部42は、第1移動体10Aに対して、予定時間帯に第1経路R1(ウェイポイントWP1)の移動を許可する旨の情報を送信し、第2移動体10Bに対して、予定時間帯に第2経路R2(ウェイポイントWP2)の移動を許可する旨の情報を送信する。第1移動体10Aは、この情報を受信して、予定時間帯に第1経路R1を移動し、第2移動体10Bは、この情報を受信して、予定時間帯に第2経路R2を移動する。
一方、第1移動体10Aが通路AR1を移動する予定時間帯と同じ時間帯に、他の移動体10(本例では第2移動体10B)が通路AR1を移動予定でない場合には、経路設定部42は、図8に示すように、中央経路R1aを、第1移動体10Aの経路として設定する。中央経路R1aは、第1経路R1よりもX方向と反対側(第2経路R2側)に位置する経路であり、すなわち、中央経路R1aとX方向側の対象物Pまでの距離は、第1経路R1とX方向側の対象物Pまでの距離よりも長いといえる。さらに言えば、中央経路R1aは、X方向において第1経路R1と第2経路R2との間に位置する経路である。言い換えれば、X方向においてウェイポイントWP1とウェイポイントWP2との間の位置に、Y方向に並ぶ複数のウェイポイントWP1aが設定されて、ウェイポイントWP1aを接続する経路が、中央経路R1aといえる。例えば、第1移動体10Aが通路AR1をY方向側に移動することを予定している場合には、経路設定部42は、第1移動体10Aに対して、予定時間帯に中央経路R1a(ウェイポイントWP1a)の移動を許可する旨の情報を送信する。第1移動体10Aは、この情報を受信して、予定時間帯に中央経路R1aをY方向に向けて移動する。なお、中央経路R1a(ウェイポイントWP1a)は、第1経路R1(ウェイポイントWP1)や第2経路R2(ウェイポイントWP2)と同様に、予め設定されていてもよいし、予め設定されていなくてもよい。中央経路R1aが予め設定されない場合には、経路設定部42が、第1移動体10Aの経路を設定する際に、第1経路R1と第2経路R2との間に、中央経路R1aを設定する。
第1移動体10Aは、中央経路R1aを移動する際の速度が、第1経路R1を移動したと仮定した場合の速度よりも高くなるように、中央経路R1aを移動することが好ましい。すなわち、中央経路R1aは、第1経路R1よりも、X方向側の対象物Pから離れているため、速度を高くして安全領域ARが広がったとしても、安全領域ARがX方向側の対象物Pと干渉しない状態で、中央経路R1aを移動できる。なお、中央経路R1aでの移動速度は、任意に設定されてよい。例えば、情報処理装置14の上限速度設定部40が、中央経路R1aにおける上限速度を設定し、第1移動体10Aは、中央経路R1aにおける上限速度以下の速度で、中央経路R1aを移動してよい。この場合、中央経路R1aは、第1経路R1よりも、X方向側の対象物Pから離れているため、中央経路R1aの上限速度が、第1経路R1の上限速度よりも高くなるといえる。
なお、経路設定部42は、第1移動体10Aが中央経路R1aを移動する予定時間帯において、通路AR1を第1移動体10Aに占有させる旨の情報を設定する。通路AR1を第1移動体10Aに占有させるとは、その予定時間帯において、第1移動体10A以外の移動体10が通路AR1内を移動することを禁止することを意味する。すなわち例えば、この予定時間帯においては、第1移動体10A以外の移動体10が第2経路R2(ウェイポイントWP2)を使用することを禁止することを意味してよい。
以上説明した経路設定の処理フローを、フローチャートに基づき説明する。図9は、他の例における経路設定の処理フローを説明するフローチャートである。図9に示すように、経路設定部42は、第1移動体10Aが移動を予定している通路AR1について、同じ予定時間帯において他の移動体10の移動が予定されているかを判断する(ステップS20)。通路AR1が、同じ予定時間帯において他の移動体10の移動が予定されている場合(ステップS20;Yes)、経路設定部42は、その予定時間帯において第1移動体10Aに通路AR1を占有させて、第1移動体10Aに、中央経路R1aの情報を送信する(ステップS22)。第1移動体10Aは、中央経路R1aの情報を取得したら、予定時間帯に、中央経路R1aに沿って移動する。一方通路AR1が、同じ予定時間帯において他の移動体10(ここでは第2移動体10B)の移動が予定されている場合(ステップS20;No)、経路設定部42は、第1移動体10Aに第1経路R1の情報を送信し、第2移動体10Bに第2経路R2の情報を送信する(ステップS24)。第1移動体10Aは、第1経路R1の情報を取得したら、予定時間帯に、第1経路R1に沿って移動する。第2移動体10Bは、第2経路R2の情報を取得したら、予定時間帯に、第2経路R2に沿って移動する。
このように、同じ時間帯に他の移動体10が通路AR1を移動予定でない場合に、第1移動体10Aに中央経路R1aを移動させることで、安全領域ARに対象物Pが干渉することを抑制しつつ移動速度を高くすることができ、安全を保ちつつ作業効率を向上できる。
以上の説明では、同じ時間帯に第1移動体10Aと第2移動体10Bとが移動予定である場合には、中央経路R1aを使用させずに、対面移動用の第1経路R1及び第2経路R2を使用させていたが、それに限られない。例えば、移動を優先させる移動体10が選定されている場合には、優先する移動体10に中央経路R1aを使用させてもよい。すなわち、経路設定部42は、第1移動体10Aと第2移動体10Bとが同じ時間帯に通路AR1を移動予定である場合であって、第1移動体10Aの移動を優先する旨を示す優先情報を取得した場合には、中央経路AR1aを第1移動体10Aの経路として設定してよい。図10及び図11は、移動体の経路の設定の他の例を説明するための模式図である。この場合、例えば図10に示すように、経路設定部42は、通路AR1を第1移動体10Aに占有させて、その予定時間帯に第2移動体10Bが通路AR1外に位置するように、第2移動体10Bに指令を出してよい。また例えば、図11に示すように、経路設定部42は、その予定時間帯に、第2移動体10Bを、通路AR1内において第2経路R2よりもX方向と反対側の位置に停止させてもよいし、通路AR1内で第2経路R2よりもX方向と反対側に位置する経路で、第2移動体10Bを徐行させてもよい。第2移動体10Bの徐行速度(徐行する経路での上限速度)は、第2経路R2における第2移動体10Bの速度(第2経路R2での上限速度)よりも低く設定される。この場合には、中央経路AR1aを移動する第1移動体10Aの安全領域AR内に第2移動体10Bが位置せず、かつ、第2移動体10Bの安全領域AR内に第1移動体10Aが位置しないように、第2移動体10Bが停止又は徐行する位置を設定することが好ましい。
(上限速度の設定の他の例)
第1実施形態においては、情報処理装置14が、上限速度設定部40により上限速度を設定するが、それに限られず、移動体10が上限速度を設定してよい。すなわち、移動体10が、上限速度設定部40を有していてもよい。この場合例えば、情報処理装置14の上限速度設定部40が、安全領域ARを算出する際に用いる移動体10の移動条件のうち、予め設定される移動条件(例えば移動体10の重量などの、値が変化しない車両固有の条件)については、車両を問わない基準値を適用して、仮の上限速度を設定する。そして、移動体10の上限速度設定部40は、設定された経路Rの移動を開始する前に、予め設定される移動条件として自身の車両に対応する値を適用して、上限速度を算出する。移動体10は、情報処理装置14が算出した仮の上限速度を、自身で算出した上限速度で更新して、自身で算出した上限速度を経路Rにおける上限速度として、上限速度以下の速度で移動する。なお、ここでは情報処理装置14が仮の上限速度を算出するが、このように移動体10が上限速度を算出する場合には、情報処理装置14による仮の上限速度の算出は必須ではない。
また例えば、移動体10は、経路Rを移動している最中に、上限速度を算出してもよい。この場合、移動体10は、経路Rを移動している最中に、センサ26によって対象物Pの位置を逐次検出して、安全領域AR内に対象物Pが位置しない最大速度を、上限速度として算出して、算出した上限速度以下の速度で経路Rを移動してよい。
(第2実施形態)
次に、第2実施形態について説明する。第2実施形態においては、移動体10が経路Rを切り替える点で、第1実施形態と異なる。第2実施形態において第1実施形態と構成が共通する箇所は、説明を省略する。
第2実施形態においては、移動体10の検出制御部68は、移動体10の進行方向側の第1距離L1の範囲内に、他の移動体が存在するかを検出し、横方向側の第2距離L2の範囲内に、位置が固定された対象物P(構造物や境界など)が存在するかを検出する。進行方向側の第1距離L1範囲内に他の移動体が存在せず、かつ、横方向側の第2距離L2の範囲内に位置が固定された対象物Pが存在しない場合には、移動体10の移動制御部64は、移動体10の移動する経路を、横方向側に切り替えて、横方向側の経路に沿って移動体10を移動させる。なお、検出制御部68は、センサ26により他の移動体や位置が固定された対象物Pが存在するかを検出するが、位置が固定された対象物Pについては、位置が既知であるため地図情報と自己位置とに基づいて検出してもよい。また、第1距離L1及び第2距離L2は、任意に設定されてよいが、移動体10の自己位置から安全領域ARの外縁までの距離よりも長く設定される。以下、経路の切り替えについてより具体的に説明する。
図12から図14は、第2実施形態における移動体の経路の設定を説明するための模式図である。以降の説明では、図12に示すように、通路AR1に、第1経路R1と第2経路R2とが設定されており、第1移動体10Aが、情報処理装置14により設定された第1経路R1を移動している場合を例にする。第1移動体10Aの検出制御部68は、第1経路R1を移動中に、Y方向側(進行方向側)の第1距離L1の範囲内に、他の移動体10が存在するかを検出する。すなわち、第1移動体10Aの検出制御部68は、第1移動体10Aの現在位置からY方向側に第1距離L1だけ離れた位置までの範囲内に、第1移動体10AよりもY方向側に位置する他の移動体10が存在するかを検出する。図12に示すように、第1移動体10AのY方向側の第1距離L1の範囲内に他の移動体10が存在する場合、第1移動体10Aの移動制御部64は、経路を切り替えず、第1経路R1での移動を継続する。すなわち図12の例では、第1移動体10AのY方向側の第1距離L1の範囲内に第2経路R2をY方向と反対側に移動する第2移動体10Bが存在するため、第1移動体10Aの移動制御部64は、経路を切り替えず、第1経路R1での移動を継続する。
また、第1移動体10Aの検出制御部68は、第1経路R1を移動中に、X方向と反対側(横方向側)の第2距離L2の範囲内に、位置が固定された対象物Pが存在するかを検出する。すなわち、第1移動体10Aの検出制御部68は、第1移動体10Aの現在位置から第2距離L2の範囲内に、第1移動体10AよりもX方向と反対側に位置する対象物Pが存在するかを検出する。図13に示すように、第1移動体10AのY方向側の第1距離L1の範囲内に他の移動体10が存在せず、かつ、X方向と反対側の第2距離L2の範囲内に対象物Pが存在しない場合、第1移動体10Aの移動制御部64は、第1経路R1から、X方向と反対側の中央経路R1aに切り替えて、中央経路R1aに沿って第1移動体10Aを移動させる。この場合、第1移動体10Aは、中央経路R1aを移動する際の速度が、第1経路R1を移動している場合の速度よりも高くなるように、中央経路R1aを移動することが好ましい。なお、中央経路R1aの移動速度は、任意に設定されてよい。例えば、情報処理装置14の上限速度設定部40が、中央経路R1aにおける上限速度を設定してもよいし、第1移動体10Aが、中央経路R1aにおける上限速度を設定してもよい。この場合、第1移動体10Aは、中央経路R1aにおける上限速度以下の速度で、中央経路R1aを移動してよい。
一方、図14に示すように、第1移動体10AのY方向側の第1距離L1の範囲内に他の移動体10が存在せず、かつ、X方向と反対側の第2距離L2の範囲内に対象物Pが存在する場合、X方向と反対側の対象物Pが、第1移動体10Aに対して、第2距離L2より短い第3距離L3の範囲内にあるかを判断する。第3距離L3は、任意に設定されてよいが、第2距離L2より短く、移動体10の自己位置から安全領域ARの外縁までの距離より長い。X方向と反対側の対象物Pが、第1移動体10Aに対して第3距離L3の範囲内にある場合、すなわちその対象物Pまでの距離が第3距離L3より近い場合、第1移動体10Aの移動制御部64は、経路を切り替えず、第1経路R1での移動を継続する。一方、X方向と反対側の対象物Pが、第1移動体10Aに対して第3距離L3の範囲内にない場合、すなわちその対象物Pまでの距離が第3距離L3より遠い場合、第1移動体10Aの移動制御部64は、第1経路R1から所定距離だけX方向と反対側に離れた経路R1bに切り替えて、経路R1bに沿って第1移動体10Aを移動させる。経路R1bは、第1経路R1よりもX方向と反対側に位置する経路であり、X方向において第1経路R1と中央経路R1aとの間に位置する経路である。言い換えれば、X方向においてウェイポイントWP1とウェイポイントWP1aとの間の位置に、Y方向に並ぶ複数のウェイポイントWP1bが設定されて、ウェイポイントWP1bを接続する経路が、経路R1bといえる。なお、経路R1b(ウェイポイントWP1b)は、第1経路R1(ウェイポイントWP1)や第2経路R2(ウェイポイントWP2)と同様に、予め設定されていてもよいし、予め設定されていなくてもよい。経路R1bが予め設定されない場合には、第1移動体10Aが第1経路R1を移動中に、情報処理装置14が経路R1bを設定してもよいし、第1移動体10Aが経路R1bを設定してもよい。第1経路R1と経路R1bとの間の距離(所定距離)は、任意に設定されてよい。
なお、第1移動体10Aは、経路R1bを移動する際にも、第1経路R1を移動している場合の速度よりも高くなるように、経路R1bを移動することが好ましい。なお、経路R1bの移動速度は、任意に設定されてよい。例えば、情報処理装置14の上限速度設定部40が、経路R1bにおける上限速度を設定してもよいし、第1移動体10Aが、経路R1bにおける上限速度を設定してもよい。この場合、第1移動体10Aは、経路R1bにおける上限速度以下の速度で、経路R1bを移動してよい。
以上説明した経路切り替えの処理フローを、フローチャートに基づき説明する。図15は、第2実施形態における経路切り替えの処理フローを説明するフローチャートである。図15に示すように、第2実施形態においては、第1移動体10Aの検出制御部68は、第1経路R1を移動中に、Y方向側(進行方向側)の第1距離L1の範囲内に、他の移動体10が存在しないかを検出し(ステップS30)、他の移動体10が存在しない場合(ステップS30:Yes)、X方向と反対側(横方向側)の第2距離L2の範囲内に、位置が固定された対象物Pが存在しないかを検出する(ステップS32)。X方向と反対側の第2距離L2の範囲内に対象物Pが存在しない場合(ステップS32;Yes)、第1移動体10Aの移動制御部64は、第1経路R1から中央経路R1aに切り替えて、速度を上げて、中央経路R1aに沿って第1移動体10Aを移動させる(ステップS34)。
一方、X方向と反対側の第2距離L2の範囲内に対象物Pが存在する場合(ステップS32;No)であって、X方向と反対側の第3距離L3の範囲内に対象物Pが存在しない場合(ステップS36;Yes)、第1移動体10Aの移動制御部64は、第1経路R1から所定距離だけX方向と反対側(中央側)の経路R1bに切り替えて、速度を上げて、経路R1bに沿って第1移動体10Aを移動させる(ステップS38)。
また、X方向と反対側の第2距離L2の範囲内に対象物Pが存在する場合(ステップS32;No)であって、X方向と反対側の第3距離L3の範囲内に対象物Pが存在する場合(ステップS36;No)、第1移動体10Aの移動制御部64は、経路を切り替えず、現在の経路(第1経路R1)での移動を継続する(ステップS40)。同様に、Y方向側(進行方向側)の第1距離L1の範囲内に、他の移動体10が存在する場合(ステップS30;No)、第1移動体10Aの移動制御部64は、経路を切り替えず、現在の経路(第1経路R1)での移動を継続する(ステップS40)。ステップS34,S38又はS40を実行したら、ステップS42に進み、処理を終了しない場合(ステップS42;No)、ステップS30に戻り処理を続け、処理を終了する場合(ステップS42;Yes)、本処理を終了する。
以上説明したように、第2実施形態においては、進行方向側の第1距離L1の範囲内に他の移動体が存在せず、かつ横方向側の第2距離L2の範囲内に対象物Pが存在しない場合には、第1移動体10Aの移動制御部64は、第1移動体10Aの経路を横方向側に切り替える。このように、対象物Pまでの距離に余裕がある場合に第1移動体10Aの経路を中央寄りに切り替えることで、安全領域ARに対象物Pが干渉することを抑制しつつ移動速度を高くすることができ、安全を保ちつつ作業効率を向上できる。
図16は、切り替え経路の模式図である。なお、移動体10が経路を切り替える際には、切り替え直前の移動体10の位置と切り替え直後の移動体10の位置とが、曲線状であることが好ましい。すなわち、切り替え直前の移動体10の位置と切り替え直後の移動体10の位置とを結ぶ経路を切り替え経路とすると、切り替え経路が、Z方向から見て曲線状であることが好ましい。例えば、図16に示すように、第1経路R1から中央経路R1aに切り替える場合を例にする。この場合、切り替え直前の第1経路R1上での移動体10の位置をウェイポイントWP11とすると、切り替え直後の中央経路R1a上での移動体10の位置がウェイポイントWP1a1となるように、切り替え経路Rc1が設定されること好ましい。ウェイポイントWP1a1は、ウェイポイントWP11に対してX方向と反対側、かつY方向側(進行方向側)に位置する。そして、切り替え経路Rc1は、ウェイポイントWP11とウェイポイントWP1a1とを接続する曲線状(例えばスプライン状)に設定されることが好ましい。ただし、切り替え経路は、切り替え経路Rc1のように曲線状に設定されることに限られず、例えば切り替え経路Rc2のように直線状に設定されてもよい。この場合例えば、切り替え直後の中央経路R1a上での移動体10の位置がウェイポイントWP1a2となるように、切り替え経路Rc2が設定されてよい。ウェイポイントWP1a2は、ウェイポイントWP11に対してX方向と反対側であり、Y方向側においてはウェイポイントWP11と同じ位置となっている。
(効果)
以上説明したように、本開示に係る移動体10の管理方法は、自動で移動する移動体10の移動条件を取得するステップと、移動条件に基づき、対象物Pが位置すべきでない移動体10の進行方向側の領域である安全領域ARを設定するステップと、を含む。安全領域ARを設定するステップにおいては、移動体10の速度が高いほど、進行方向に交差する横方向に安全領域ARが広がるように、安全領域ARを設定する。このように速度に応じて横方向に安全領域ARを広く設定することで、例えば操舵の不確かさにより、移動体10が停止するまでに意図せず横方向に移動してしまった場合でも、横方向に存在する対象物Pと移動体10との干渉を適切に抑制できる。
移動条件を取得するステップにおいては、移動体10の操舵角指令の基準値を取得し、安全領域ARを設定するステップにおいては、操舵角指令の基準値が入力された場合に移動体が停止時に到達することが想定される想定到達位置を含むように、安全領域ARを設定する。このように操舵角指令の基準値に基づいて安全領域ARを設定することで、横方向に広い安全領域ARを適切に設定できるため、横方向に存在する対象物Pとの干渉をより適切に抑制できる。
移動条件を取得するステップにおいては、移動体10を停止させるためのトルク指令の基準値を取得し、安全領域ARを設定するステップにおいては、操舵角指令の基準値及びトルク指令の基準値が入力された場合に移動体が停止時に到達することが想定される想定到達位置を含むように、安全領域ARを設定する。このように操舵角指令及びトルク指令の基準値に基づいて安全領域ARを設定することで、横方向に広い安全領域ARを適切に設定できるため、横方向に存在する対象物Pとの干渉をより適切に抑制できる。
本開示に係る移動体10の管理方法は、移動体10の上限速度を設定するステップをさらに含み、上限速度を設定するステップにおいては、移動体10が上限速度で移動した場合の安全領域AR内に、対象物Pが位置しないように、上限速度を設定する。このように安全領域ARに基づき上限速度を設定することで、例えば位置が既知の対象物Pから離れた経路については上限速度を高くできるため、対象物Pとの干渉を抑制しつつ作業効率を向上できる。
本開示に係る移動体10の管理方法は、Y方向(第1方向)に向かう第1経路R1と、第1経路R1に対して横方向(X方向と反対方向)に並ぶ第2経路R2とが設定される通路AR1を、第1移動体10Aが第1方向に向けて移動を予定している場合において、第2移動体10Bが同じ時間帯で通路AR1の移動を予定しているかを判断するステップと、第2移動体10Bが同じ時間帯で通路AR1の移動を予定していない場合に、第1経路R1よりも第2経路R2側に位置する中央経路R1aを、第1移動体10Aの経路とするステップと、を含む。このように、同じ時間帯に他の移動体10が通路AR1を移動予定でない場合に、第1移動体10Aに中央経路R1aを移動させることで、安全領域ARに対象物Pが干渉することを抑制しつつ移動速度を高くすることができ、安全を保ちつつ作業効率を向上できる。
本開示に係る移動体10の管理方法は、第2移動体10Bが同じ時間帯で通路AR1の移動を予定している場合に、第1経路R1を第1移動体10Aの経路とし、第2経路R2を第2移動体10Bの経路とするステップを更に含む。このように、同じ時間帯に他の移動体10が通路AR1を移動予定である場合に、それぞれの移動体10に対面移動用の経路を移動させることで、それぞれの移動体10を適切に移動させることができる。
また、本開示に係る移動体10の管理方法は、第2移動体10Bが同じ時間帯で通路AR1の移動を予定している場合であって、第1移動体10Aの移動を優先する旨を示す優先情報を取得した場合には、中央経路R1aを第1移動体10Aの経路とする。同じ時間帯に複数の移動体10が通路AR1を移動予定である場合であっても、優先すべき移動体10を中央経路R1aで移動させることで、優先すべき移動体10を適切に移動できる。
本開示に係る移動体10の制御方法は、安全領域ARの情報を取得するステップと、安全領域AR内に対象物Pが位置しないかを検出しつつ、移動体10を移動させるステップとを含む。本制御方法によると、操舵の不確かさにより、移動体10が停止するまでに意図せず横方向に移動してしまった場合でも、横方向に存在する対象物Pと移動体10との干渉を適切に抑制できる。
本開示に係る移動体10の制御方法は、移動体10の進行方向側の第1距離L1の範囲内に他の移動体が存在するかを検出するステップと、移動体10の横方向側の第2距離L2の範囲内に位置が固定された対象物Pが存在するかを検出するステップと、他の移動体が第1距離L1の範囲内に存在せず、かつ、第2距離L2の範囲内に対象物Pが存在しない場合には、移動体10の移動する経路を、横方向側に切り替えるステップと、を更に含む。本制御方法によると、対象物Pまでの距離に余裕がある場合に経路を中央寄りに切り替えることで、安全領域ARに対象物Pが干渉することを抑制しつつ移動速度を高くすることができ、安全を保ちつつ作業効率を向上できる。
本開示に係る移動体10は、移動体10の移動条件に基づき設定された、対象物Pが位置すべきでない移動体10の進行方向側の領域である安全領域ARの情報を取得する安全領域取得部66と、安全領域AR内に対象物Pが位置しないかを検出しつつ、移動体10を移動させる移動制御部64と、を含み、安全領域ARは、移動体10の速度が高いほど、進行方向に交差する横方向に広がるように設定されている。移動体10によると、操舵の不確かさにより、停止するまでに意図せず横方向に移動してしまった場合でも、横方向に存在する対象物Pとの干渉を適切に抑制できる。
以上、本開示の実施形態を説明したが、この実施形態の内容により実施形態が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。
10 移動体
10A 第1移動体
10B 第2移動体
12 情報処理装置
40 上限速度設定部
42 経路設定部
60 経路取得部
62 上限速度取得部
64 移動制御部
66 安全領域取得部
68 検出制御部
AR 安全領域
R 経路

Claims (11)

  1. 自動で移動する第1移動体の移動条件を取得するステップと、
    前記移動条件に基づき、対象物が位置すべきでない前記第1移動体の進行方向側の領域である安全領域を設定するステップと、
    を含み、
    前記安全領域を設定するステップにおいては、前記第1移動体の速度が高いほど、前記進行方向に交差する横方向に前記安全領域が広がるように、前記安全領域を設定し、
    更に、
    第1方向に向かう第1経路と、前記第1経路に対して横方向に並ぶ第2経路とが設定される通路を、前記第1移動体が前記第1方向に向けて移動を予定している場合において、第2移動体が同じ時間帯で前記通路の移動を予定しているかを判断するステップと、
    前記第2移動体が同じ時間帯で前記通路の移動を予定していない場合に、前記第1経路よりも前記第2経路側に位置する中央経路を、前記第1移動体の経路とするステップと、を含む、
    移動体の管理方法。
  2. 前記移動条件を取得するステップにおいては、前記第1移動体の操舵角指令の基準値を取得し、
    前記安全領域を設定するステップにおいては、前記操舵角指令の基準値が入力された場合に前記第1移動体が停止時に到達することが想定される想定到達位置を含むように、前記安全領域を設定する、請求項1に記載の移動体の管理方法。
  3. 前記移動条件を取得するステップにおいては、前記第1移動体を停止させるためのトルク指令の基準値を取得し、
    前記安全領域を設定するステップにおいては、前記操舵角指令の基準値及び前記トルク指令の基準値が入力された場合に前記第1移動体が停止時に到達することが想定される想定到達位置を含むように、前記安全領域を設定する、請求項2に記載の移動体の管理方法。
  4. 前記第1移動体の上限速度を設定するステップをさらに含み、
    前記上限速度を設定するステップにおいては、前記第1移動体が前記上限速度で移動した場合の前記安全領域内に、前記対象物が位置しないように、前記上限速度を設定する、請求項1から請求項3のいずれか1項に記載の移動体の管理方法。
  5. 前記第2移動体が同じ時間帯で前記通路の移動を予定している場合に、前記第1経路を前記第1移動体の経路とし、前記第2経路を前記第2移動体の経路とするステップを更に含む、請求項1から請求項4のいずれか1項に記載の移動体の管理方法。
  6. 前記第2移動体が同じ時間帯で前記通路の移動を予定している場合であって、前記第1移動体の移動を優先する旨を示す優先情報を取得した場合には、前記中央経路を前記第1移動体の経路とする、請求項1から請求項4のいずれか1項に記載の移動体の管理方法。
  7. 自動で移動する移動体の移動条件を取得するステップと、
    前記移動条件に基づき、対象物が位置すべきでない前記移動体の進行方向側の領域である安全領域を設定するステップと、
    を含み、
    前記安全領域を設定するステップにおいては、前記移動体の速度が高いほど、前記進行方向に交差する横方向に前記安全領域が広がるように、前記安全領域を設定し、
    更に、
    記安全領域の情報を取得するステップと、
    前記安全領域内に前記対象物が位置しないかを検出しつつ、前記移動体を移動させるステップと、
    前記移動体の進行方向側の第1距離範囲内に他の移動体が存在するかを検出するステップと、
    前記移動体の横方向側の第2距離範囲内に位置が固定された前記対象物が存在するかを検出するステップと、
    他の移動体が前記第1距離範囲内に存在せず、かつ、前記第2距離範囲内に前記対象物が存在しない場合には、前記移動体の移動する経路を、前記横方向側に切り替えるステップと、
    を含む、
    移動体の制御方法。
  8. 自動で移動する移動体であって、
    前記移動体の移動条件に基づき設定された、対象物が位置すべきでない前記移動体の進行方向側の領域である安全領域の情報を取得する安全領域取得部と、
    前記安全領域内に前記対象物が位置しないかを検出しつつ、前記移動体を移動させる移動制御部と、
    を含み、
    前記安全領域は、前記移動体の速度が高いほど、前記進行方向に交差する横方向に広がるように設定されており、
    第1方向に向かう第1経路と、前記第1経路に対して横方向に並ぶ第2経路とが設定される通路を、前記移動体が前記第1方向に向けて移動を予定している場合において、前記移動体とは別の第2移動体が同じ時間帯で前記通路の移動を予定しているかが判断され、
    前記第2移動体が同じ時間帯で前記通路の移動を予定していない場合に、前記第1経路よりも前記第2経路側に位置する中央経路が、前記移動体の経路とされる、
    移動体。
  9. 自動で移動する移動体であって、
    前記移動体の移動条件に基づき設定された、対象物が位置すべきでない前記移動体の進行方向側の領域である安全領域の情報を取得する安全領域取得部と、
    前記安全領域内に前記対象物が位置しないかを検出しつつ、前記移動体を移動させる移動制御部と、
    を含み、
    前記安全領域は、前記移動体の速度が高いほど、前記進行方向に交差する横方向に広がるように設定されており、
    前記移動制御部は、
    前記安全領域の情報を取得し、
    前記安全領域内に前記対象物が位置しないかを検出しつつ、前記移動体を移動させ、
    前記移動体の進行方向側の第1距離範囲内に他の移動体が存在するかを検出し、
    前記移動体の横方向側の第2距離範囲内に位置が固定された前記対象物が存在するかを検出し、
    他の移動体が前記第1距離範囲内に存在せず、かつ、前記第2距離範囲内に前記対象物が存在しない場合には、前記移動体の移動する経路を、前記横方向側に切り替える、
    移動体。
  10. 自動で移動する第1移動体の移動条件を取得するステップと、
    前記移動条件に基づき、対象物が位置すべきでない前記第1移動体の進行方向側の領域である安全領域を設定するステップと、
    をコンピュータに実行させるプログラムであって、
    前記安全領域を設定するステップにおいては、前記第1移動体の速度が高いほど、前記進行方向に交差する横方向に前記安全領域が広がるように、前記安全領域を設定し、
    更に、
    第1方向に向かう第1経路と、前記第1経路に対して横方向に並ぶ第2経路とが設定される通路を、前記第1移動体が前記第1方向に向けて移動を予定している場合において、第2移動体が同じ時間帯で前記通路の移動を予定しているかを判断するステップと、
    前記第2移動体が同じ時間帯で前記通路の移動を予定していない場合に、前記第1経路よりも前記第2経路側に位置する中央経路を、前記第1移動体の経路とするステップと、 をコンピュータに実行させる
    プログラム。
  11. 自動で移動する移動体の移動条件を取得するステップと、
    前記移動条件に基づき、対象物が位置すべきでない前記移動体の進行方向側の領域である安全領域を設定するステップと、
    をコンピュータに実行させるプログラムであって、
    前記安全領域を設定するステップにおいては、前記移動体の速度が高いほど、前記進行方向に交差する横方向に前記安全領域が広がるように、前記安全領域を設定し、
    更に、
    前記安全領域の情報を取得するステップと、
    前記安全領域内に前記対象物が位置しないかを検出しつつ、前記移動体を移動させるステップと、
    前記移動体の進行方向側の第1距離範囲内に他の移動体が存在するかを検出するステップと、
    前記移動体の横方向側の第2距離範囲内に位置が固定された前記対象物が存在するかを検出するステップと、
    他の移動体が前記第1距離範囲内に存在せず、かつ、前記第2距離範囲内に前記対象物が存在しない場合には、前記移動体の移動する経路を、前記横方向側に切り替えるステップと、
    をコンピュータに実行させる
    プログラム。
JP2021206171A 2021-12-20 2021-12-20 移動体の管理方法、移動体の制御方法、移動体及びプログラム Active JP7236526B1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2021206171A JP7236526B1 (ja) 2021-12-20 2021-12-20 移動体の管理方法、移動体の制御方法、移動体及びプログラム
JP2022201887A JP2023091769A (ja) 2021-12-20 2022-12-19 移動体の管理方法、移動体の制御方法、移動体及びプログラム
DE102022214021.4A DE102022214021A1 (de) 2021-12-20 2022-12-20 Verwaltungsverfahren für mobiles objekt, steuerverfahren für mobiles objekt, mobiles objekt, und computerprogramm
US18/068,817 US20230195124A1 (en) 2021-12-20 2022-12-20 Management method for mobile object, control method for mobile object, mobile object, and recording medium storing computer program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021206171A JP7236526B1 (ja) 2021-12-20 2021-12-20 移動体の管理方法、移動体の制御方法、移動体及びプログラム

Publications (2)

Publication Number Publication Date
JP7236526B1 true JP7236526B1 (ja) 2023-03-09
JP2023091429A JP2023091429A (ja) 2023-06-30

Family

ID=85476807

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2021206171A Active JP7236526B1 (ja) 2021-12-20 2021-12-20 移動体の管理方法、移動体の制御方法、移動体及びプログラム
JP2022201887A Pending JP2023091769A (ja) 2021-12-20 2022-12-19 移動体の管理方法、移動体の制御方法、移動体及びプログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2022201887A Pending JP2023091769A (ja) 2021-12-20 2022-12-19 移動体の管理方法、移動体の制御方法、移動体及びプログラム

Country Status (1)

Country Link
JP (2) JP7236526B1 (ja)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000267729A (ja) 1999-03-16 2000-09-29 Honda Motor Co Ltd 車両の障害物検知装置
US20190271990A1 (en) 2018-03-05 2019-09-05 Jungheinrich Ag Method for operating an industrial truck

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000267729A (ja) 1999-03-16 2000-09-29 Honda Motor Co Ltd 車両の障害物検知装置
US20190271990A1 (en) 2018-03-05 2019-09-05 Jungheinrich Ag Method for operating an industrial truck

Also Published As

Publication number Publication date
JP2023091769A (ja) 2023-06-30
JP2023091429A (ja) 2023-06-30

Similar Documents

Publication Publication Date Title
US20210132615A1 (en) Systems and methods for optimizing route planning for tight turns for robotic apparatuses
US20200254925A1 (en) Visually Indicating Vehicle Caution Regions
WO2021135728A1 (zh) 一种自动驾驶车辆碰撞预测判断方法及装置
US10409290B2 (en) Valet parking method and valet parking system
US8630762B2 (en) Method for the calculation of a collision-preventing trajectory for a driving maneuver of a vehicle
JP6388968B2 (ja) バレーパーキング方法及びバレーパーキングシステム
US20200180618A1 (en) Vehicle control device
JP5188316B2 (ja) 移動ロボット及び移動ロボットの走行速度制御方法
US20210146919A1 (en) Vehicle path planning
KR101133037B1 (ko) 자율이동차량용 충돌회피를 위한 경로갱신방법 및 그 장치
KR102393972B1 (ko) 창고 로봇 네비게이션 경로 예약
KR102057428B1 (ko) 차량의 주행 제어 방법 및 주행 제어 장치
ES2766148B2 (es) Metodo y sistema para controlar una pluralidad de vehiculos autonomos
JP7236526B1 (ja) 移動体の管理方法、移動体の制御方法、移動体及びプログラム
JP2010079697A (ja) 障害物回避装置、障害物回避方法、及び自走車両
Kala et al. Multi-vehicle planning using RRT-connect
JP7325465B2 (ja) 移動体の制御方法、移動体及びプログラム
DE102022214021A1 (de) Verwaltungsverfahren für mobiles objekt, steuerverfahren für mobiles objekt, mobiles objekt, und computerprogramm
JP7300413B2 (ja) 制御装置、移動体、移動制御システム、制御方法及びプログラム
JP2023154902A (ja) 障害物検知装置及び走行制御装置
Dudekula et al. Algorithm development for avoiding both moving and stationary obstacles in an unstructured high-speed autonomous vehicular application using a nonlinear model predictive controller
JP7022775B2 (ja) 演算装置、移動体、移動制御システム、演算方法及びプログラム
JP7496270B2 (ja) 交通制御システム、および、交通制御方法
JP7187516B2 (ja) 移動体、移動制御システム、移動体の制御方法及びプログラム
JP7496944B1 (ja) 移動体制御装置、移動体制御システム、制御移動体、及び、移動体制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220809

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220913

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20221110

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230111

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230131

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20230227

R150 Certificate of patent or registration of utility model

Ref document number: 7236526

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150