JP7022775B2 - Arithmetic logic unit, mobile body, mobile control system, arithmetic method and program - Google Patents
Arithmetic logic unit, mobile body, mobile control system, arithmetic method and program Download PDFInfo
- Publication number
- JP7022775B2 JP7022775B2 JP2020032156A JP2020032156A JP7022775B2 JP 7022775 B2 JP7022775 B2 JP 7022775B2 JP 2020032156 A JP2020032156 A JP 2020032156A JP 2020032156 A JP2020032156 A JP 2020032156A JP 7022775 B2 JP7022775 B2 JP 7022775B2
- Authority
- JP
- Japan
- Prior art keywords
- route
- moving body
- prohibited
- target
- information
- 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
Links
- 238000000034 method Methods 0.000 title claims description 39
- 230000033001 locomotion Effects 0.000 claims description 42
- 238000004364 calculation method Methods 0.000 claims description 21
- 238000009434 installation Methods 0.000 description 70
- 238000010586 diagram Methods 0.000 description 32
- 238000003860 storage Methods 0.000 description 19
- 238000001514 detection method Methods 0.000 description 13
- 102100029450 M1-specific T cell receptor alpha chain Human genes 0.000 description 8
- 238000013459 approach Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 230000032258 transport Effects 0.000 description 6
- 210000000078 claw Anatomy 0.000 description 4
- 102220528091 M1-specific T cell receptor alpha chain_S48A_mutation Human genes 0.000 description 3
- 238000006073 displacement reaction Methods 0.000 description 2
- 238000009826 distribution Methods 0.000 description 2
- 238000011068 loading method Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 102220610971 N6-adenosine-methyltransferase catalytic subunit_S50A_mutation Human genes 0.000 description 1
- 102220474381 Solute carrier family 13 member 3_S44A_mutation Human genes 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 102220370916 c.136T>G Human genes 0.000 description 1
- 239000013256 coordination polymer Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 230000001678 irradiating effect Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000002618 waking effect Effects 0.000 description 1
Images
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Description
本発明は、演算装置、移動体、移動制御システム、演算方法及びプログラムに関する。 The present invention relates to an arithmetic unit, a mobile body, a mobile control system, an arithmetic method and a program.
フォークリフトなどの移動体を自動的に目標位置まで移動させる技術が知られている。このような移動体を複数台運用する際には、移動体がこれから走行するルートを予約して、他の移動体にはその予約されたルートに侵入しないように指示する場合がある。これにより、複数の移動体が同じルートに侵入することを抑えて、移動体同士の衝突及びデッドロックを防止できる。デッドロックとは、複数の実行中のプログラムなどが互いに他のプログラムの結果待ちとなり、待機状態に入ったまま動かなくなる現象(ここでは移動体が動かなくなる現象)を指す。また例えば特許文献1には、荷役車両の基本走行ルートを予め生成し、基本走行ルートが他の荷役車両の走行ルートと干渉する場合には、優先度の低い側の荷役車両を停止させる旨が記載されている。
A technique for automatically moving a moving object such as a forklift to a target position is known. When operating a plurality of such mobiles, the mobile may reserve a route to be traveled and instruct other mobiles not to invade the reserved route. As a result, it is possible to prevent a plurality of moving objects from invading the same route and prevent collisions and deadlocks between the moving objects. Deadlock refers to a phenomenon in which a plurality of running programs wait for the result of another program and become stuck in a standby state (here, a moving body becomes stuck). Further, for example,
ここで、移動体は、予め設定されたルートから外れて、目標物の位置に基づき設定したアプローチ軌道上を走行する場合がある。アプローチ軌道は目標物の位置に応じて設定されるため、アプローチ軌道を走行する移動体が、別の移動体が走行するルートに重なって、移動体同士の衝突のおそれが生じる。そのため、自動で移動する移動体において、移動体同士の衝突及びデッドロックを抑制することが求められている。 Here, the moving body may deviate from the preset route and travel on the approach trajectory set based on the position of the target object. Since the approach trajectory is set according to the position of the target object, the moving body traveling on the approach trajectory overlaps with the route on which another moving body travels, and there is a risk of collision between the moving bodies. Therefore, in a moving body that moves automatically, it is required to suppress collisions and deadlocks between the moving bodies.
本開示は、上述した課題を解決するものであり、自動で移動する移動体において、移動体同士の衝突及びデッドロックを抑制することが可能な演算装置、移動体、移動制御システム、演算方法及びプログラムを提供することを目的とする。 The present disclosure solves the above-mentioned problems, and in an automatically moving moving body, an arithmetic unit, a moving body, a movement control system, a calculation method, and a calculation device capable of suppressing collisions and deadlocks between the moving bodies. The purpose is to provide a program.
上述した課題を解決し、目的を達成するために、本開示に係る演算装置は、自動で移動する移動体に情報を出力する演算装置であって、目標物をピックアップするための第1移動体のルートを取得するルート取得部と、前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定する排他制御部と、前記禁止ルートに基づいた情報を、前記第2移動体に出力する情報出力部と、を含む。 In order to solve the above-mentioned problems and achieve the object, the arithmetic unit according to the present disclosure is an arithmetic unit that outputs information to a moving body that automatically moves, and is a first moving body for picking up a target. The route acquisition unit for acquiring the route of No. 1 and the route that may be invaded when the first moving body deviates from the route due to the deviation of the position and direction of the target object. It includes an exclusive control unit set as a prohibited route for prohibiting traveling of a second moving body other than the moving body, and an information output unit for outputting information based on the prohibited route to the second moving body.
上述した課題を解決し、目的を達成するために、本開示に係る移動制御システムは、前記演算装置と、前記移動体とを含む。 In order to solve the above-mentioned problems and achieve the object, the movement control system according to the present disclosure includes the arithmetic unit and the moving body.
上述した課題を解決し、目的を達成するために、本開示に係る移動体の制御装置は、自動で移動する移動体の制御装置であって、目標物の位置及び向きの情報に基づいて、前記目標物に対して所定の位置及び向きとなる目標位置までの軌道を設定する軌道設定部と、
前記軌道に基づいて、前記移動体が侵入する可能性がある経路に関する情報を生成する経路情報生成部と、前記経路に関する情報を出力する情報出力部と、を含む。
In order to solve the above-mentioned problems and achieve the object, the moving body control device according to the present disclosure is a moving body control device that moves automatically, and is based on information on the position and orientation of the target object. An orbit setting unit that sets an orbit to a target position that is a predetermined position and direction with respect to the target object, and
It includes a route information generation unit that generates information about a route that the moving body may invade based on the trajectory, and an information output unit that outputs information about the route.
上述した課題を解決し、目的を達成するために、本開示に係る移動体は、前記制御装置を備える。 In order to solve the above-mentioned problems and achieve the object, the mobile body according to the present disclosure includes the control device.
上述した課題を解決し、目的を達成するために、本開示に係る演算方法は、自動で移動する移動体に情報を出力する演算方法であって、目標物をピックアップするための第1移動体のルートを取得するステップと、前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、を含む。 In order to solve the above-mentioned problems and achieve the object, the calculation method according to the present disclosure is a calculation method for outputting information to a moving body that automatically moves, and is a first moving body for picking up a target. The step of acquiring the route and the route that may be invaded when the first moving body deviates from the route due to the deviation of the position and orientation of the target object are described as the first moving body. It includes a step of setting as a prohibited route for prohibiting traveling of a second moving body other than the above, and a step of outputting information based on the prohibited route to the second moving body.
上述した課題を解決し、目的を達成するために、本開示に係るプログラムは、自動で移動する移動体に情報を出力する演算方法をコンピュータに実行させるプログラムであって、目標物をピックアップするための第1移動体のルートを取得するステップと、前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、を、コンピュータに実行させる。 In order to solve the above-mentioned problems and achieve the object, the program according to the present disclosure is a program for causing a computer to execute a calculation method for outputting information to an automatically moving moving body, and for picking up a target object. The step of acquiring the route of the first moving body and the route that may be invaded when the first moving body deviates from the route due to the deviation of the position and orientation of the target object. Have the computer execute a step of setting as a prohibited route for prohibiting the traveling of the second moving body other than the first moving body, and a step of outputting information based on the prohibited route to the second moving body. ..
本開示によれば、自動で移動する移動体において、移動体同士の衝突及びデッドロックを抑制することができる。 According to the present disclosure, in a moving body that moves automatically, collisions and deadlocks between the moving bodies can be suppressed.
以下に添付図面を参照して、本発明の好適な実施形態を詳細に説明する。なお、この実施形態により本発明が限定されるものではなく、また、実施形態が複数ある場合には、各実施形態を組み合わせて構成するものも含むものである。 Preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings. It should be noted that the present invention is not limited to this embodiment, and when there are a plurality of embodiments, the present invention also includes a combination of the respective embodiments.
(第1実施形態)
(移動制御システムの全体構成)
図1は、第1実施形態に係る移動制御システムの模式図である。図1に示すように、第1実施形態に係る移動制御システム1は、移動体10、管理システム12、及び演算装置14を含む。移動制御システム1は、設備Wに所属する移動体10の移動を制御するシステムである。設備Wは、例えば倉庫など、物流管理される設備である。設備W内の領域Aには、複数の設置領域AR0が設けられている。領域Aは、例えば設備Wの床面であり、パレットP(荷物)が設置されたり移動体10が移動したりする領域である。設置領域AR0は、目標物であるパレットP(荷物)が設置される領域である。設置領域AR0は、目標物であるパレットP(荷物)を設置すべき領域として、予め設定される。設置領域AR0は、例えば白線などで区分されており、設置領域AR0の位置(座標)、形状、及び大きさは、予め設定されている。図1では、設置領域AR0として、設置領域AR0A、AR0B、AR0Cが例示されているが、図1における設置領域ARの数や並び順は一例であって、設置領域ARの数や並び方は任意であってよい。また、本実施形態では、設置領域AR0は、設備Wの床である領域Aに設けられているが、それに限られず、例えばパレットPを設備Wに搬入した車両の荷台内に設けられてもよい。また、設置領域AR0は、パレットP毎に区画されており、設置領域AR0にはパレットPが1つ配置されるが、それに限られない。例えば、設置領域AR0は、フリースペースとして、複数のパレットPが設置されるように設定されていてもよい。また、図1の例では設置領域AR0は矩形であるが、形状及び大きさは任意であってよい。
(First Embodiment)
(Overall configuration of mobile control system)
FIG. 1 is a schematic diagram of a movement control system according to the first embodiment. As shown in FIG. 1, the
移動体10は、自動で移動可能な装置である。本実施形態では、移動体10は、フォークリフトであり、さらにいえば、いわゆるAGF(Automated Guided Forklift)やAGV(Automated Guided Vehicle)である。図1に例示すように、移動体10は、設備Wにおける領域A上を移動する。移動体10は、ルートRに従って、設置領域AR0に向けて移動する。移動体10は、開始位置AR1に到達したら、パレットPの位置情報に基づいて設定された軌道TRに従って、開始位置AR1から、目標位置・姿勢(目標位置)AR2まで移動して、パレットPをピックアップする。本実施形態では、移動体10は、ルートRに従った走行中に、後述のセンサ26による検出を継続して実施しており、センサ26がパレットPの位置情報を検出できた位置が、開始位置AR1となる。すなわち、開始位置AR1は、センサ26がパレットPの位置情報を検出可能となった(センサ26によるパレットPの位置情報の検出が有効となった)、ルートR上の位置であるといえる。目標位置・姿勢AR2は、パレットPに対して所定の位置及び向きとなる位置及び姿勢であり、移動体10がパレットPをピックアップ可能な位置・姿勢といえる。本実施形態の例では、目標位置・姿勢AR2は、移動体10が横方向に移動することなく、直進することで、後述の移動体10のフォーク24を、後述のパレットPの開口Pbに挿入することができる移動体10の位置及び姿勢(向き)ともいえる。移動体10は、目標位置・姿勢AR2から直進してパレットPをピックアップして、パレットPを他の場所に搬送する。ルートR及び軌道TRの詳細については後述する。以下、領域Aに沿った一方向を、方向Xとし、領域Aに沿った方向であって方向Xに直交する方向を、方向Yとする。また、領域Aに直交する方向、すなわち方向X、Yに直交する方向を、方向Zとする。方向X、Yは水平方向であり、方向Zは鉛直方向といえる。
The moving
(移動体)
図1では、移動体10として、設置領域AR0Aに設置されているパレットPをピックアップする移動体10A(第1移動体)と、設置領域AR0Bに設置されているパレットPをピックアップする移動体10B(第2移動体)とが例示されている。ただし、設備Wにおける移動体10の数は、2つに限られず任意であってよい。
(Mobile)
In FIG. 1, as the moving
図2は、移動体の構成の模式図である。図2に示すように、移動体10は、車体20と、マスト22と、フォーク24と、センサ26と、制御装置28とを備えている。車体20は、車輪20Aを備えている。マスト22は、車体20の前後方向における一方の端部に設けられている。マスト22は、前後方向に直交する上下方向(ここでは方向Z)に沿って延在する。フォーク24は、マスト22に方向Zに移動可能に取付けられている。フォーク24は、マスト22に対して、車体20の横方向(上下方向及び前後方向に交差する方向)にも移動可能であってよい。フォーク24は、一対のツメ24A、24Bを有している。ツメ24A、24Bは、マスト22から車体20の前方向に向けて延在している。ツメ24Aとツメ24Bとは、マスト22の横方向に、互いに離れて配置されている。以下、前後方向のうち、移動体10においてフォーク24が設けられている側の方向を、第1方向とし、フォーク24が設けられていない側の方向を、第2方向とする。
FIG. 2 is a schematic diagram of the configuration of the moving body. As shown in FIG. 2, the moving
センサ26は、車体20の周辺に存在する対象物の位置及び向きの少なくとも1つを検出する。センサ26は、移動体10に対する対象物の位置と、移動体10に対する対象物の向きとを検出するともいえる。本実施形態では、センサ26は、マスト22に設けられており、車体20の第1方向側の対象物の位置及び向きを検出する。ただし、センサ26の検出方向は第1方向に限られず、例えば第1方向側と第2方向側の両方を検出してもよい。この場合、センサ26として、第1方向側を検出するセンサと第2方向側を検出するセンサとを設けてよい。センサ26は、例えばレーザ光を照射するセンサである。センサ26は、一方向(ここでは横方向)に走査しつつレーザ光を照射し、照射したレーザ光の反射光から、対象物の位置及び向きを検出する。なお、センサ26は、以上のものに限られず任意の方法で対象物検出するセンサであってよく、例えば、カメラなどであってもよい。また、センサ26の設けられる位置も、マスト22に限られない。具体的には、例えば、移動体10に設けられる安全センサを、センサ26として流用してもよい。安全センサを流用することで、新たにセンサを設ける必要がなくなる。
The
制御装置28は、移動体10の移動を制御する。制御装置28については後述する。
The
(管理システム)
図3は、管理システムの模式的なブロック図である。管理システム12は、設備Wにおける物流を管理するシステムである。管理システム12は、本実施形態ではWMS(Warehouse Management System)であるが、WMSに限られず任意のシステムであってよく、例えば、その他の生産管理系システムのようなバックエンドシステムでも構わない。管理システム12が設けられる位置は任意であり、設備W内に設けられてもよいし、設備Wから離れた位置に設けられて、離れた位置から設備Wを管理するものであってもよい。管理システム12は、コンピュータであり、図3に示すように、制御部30と記憶部32とを含む。記憶部32は、制御部30の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAM(Random Access Memory)と、ROM(Read Only Memory)のような主記憶装置と、HDD(Hard Disk Drive)などの外部記憶装置とのうち、少なくとも1つ含む。
(Management system)
FIG. 3 is a schematic block diagram of the management system. The
制御部30は、演算装置、すなわちCPU(Central Processing Unit)である。制御部30は、作業決定部34を含む。制御部30は、記憶部32からプログラム(ソフトウェア)を読み出して実行することで、作業決定部34を実現して、その処理を実行する。なお、制御部30は、1つのCPUによって処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、作業決定部34を、ハードウェア回路で実現してもよい。
The
作業決定部34は、搬送する対象となるパレットPを決定する。具体的には、作業決定部34は、例えば入力された作業計画に基づき、搬送する対象となるパレットPの情報を示す作業内容を決定する。作業内容は、搬送する対象となるパレットPを特定する情報であるともいえる。本実施形態の例では、作業決定部34は、どの設備にあるどのパレットP(荷物)を、いつまでに、どこに搬送するかを、作業内容として決定する。すなわち、作業内容は、対象となるパレットPが保管されている設備と、対象となるパレットPと、パレットPの搬送先と、パレットPの搬送時期とを、を示す情報である。作業決定部34は、決定した作業内容を、演算装置14に送信する。 The work determination unit 34 determines the pallet P to be transported. Specifically, the work determination unit 34 determines the work content indicating the information of the pallet P to be transported, for example, based on the input work plan. It can be said that the work content is information that identifies the pallet P to be transported. In the example of the present embodiment, the work determination unit 34 determines as the work content which pallet P (luggage) in which equipment is to be transported by when and where. That is, the work content is information indicating the equipment in which the target pallet P is stored, the target pallet P, the transport destination of the pallet P, and the transport time of the pallet P. The work determination unit 34 transmits the determined work content to the arithmetic unit 14.
(演算装置)
図4は、演算装置の模式的なブロック図である。演算装置14は、設備Wに設けられ、移動体10の移動に関する情報などを演算し、移動体10に情報を出力する装置である。演算装置14は、コンピュータであり、図4に示すように、制御部40と記憶部42とを含む。記憶部42は、制御部40の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAMと、ROMのような主記憶装置と、HDDなどの外部記憶装置とのうち、少なくとも1つ含む。
(Arithmetic logic unit)
FIG. 4 is a schematic block diagram of the arithmetic unit. The arithmetic unit 14 is a device provided in the equipment W, which calculates information about the movement of the moving
制御部40は、演算装置、すなわちCPUである。制御部40は、作業内容取得部50と、移動体選定部52と、ルート取得部54と、情報出力部56と、排他制御部58とを含む。制御部40は、記憶部42からプログラム(ソフトウェア)を読み出して実行することで、作業内容取得部50と移動体選定部52とルート取得部54と情報出力部56と排他制御部58とを実現して、それらの処理を実行する。なお、制御部40は、1つのCPUによってこれらの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、作業内容取得部50と移動体選定部52とルート取得部54と情報出力部56と排他制御部58との少なくとも一部を、ハードウェア回路で実現してもよい。
The
(作業内容取得部、移動体選定部)
作業内容取得部50は、管理システム12が決定した作業内容の情報、すなわち搬送対象となるパレットPの情報を取得する。作業内容取得部50は、作業内容におけるパレットPの情報から、パレットPが設置されている設置領域AR0を特定する。例えば、記憶部42には、パレットPと、そのパレットPが設置されている設置領域AR0とが、関連付けて記憶されており、作業内容取得部50は、記憶部42からその情報を読み出すことで、設置領域AR0を特定する。移動体選定部52は、対象となる移動体10を選定する。移動体選定部52は、例えば、設備Wに所属する複数の移動体から、対象となる移動体10を選定する。移動体選定部52は、任意の方法で対象となる移動体10を選定してよいが、例えば、作業内容取得部50が特定した設置領域AR0に基づき、その設置領域AR0にあるパレットPの搬送に適した移動体10を、対象となる移動体10として選定してよい。
(Work content acquisition department, mobile selection department)
The work
(ルート取得部)
ルート取得部54は、作業内容取得部50が特定した設置領域AR0へ向かうルートRの情報を、取得する。図1の例では、ルートRとして、設置領域AR0AまでのルートRAと、設置領域AR0BまでのルートRBと、設置領域AR0CまでのルートRCとが、それぞれ設定されている。ルートRは、例えば設置領域AR0毎に、予め設定されており、ルート取得部54は、例えば記憶部42から、作業内容取得部50が特定した設置領域AR0に対して設定されたルートRの位置(座標)情報を、取得する。ルートRは、本実施形態では、予め設定されたスタート位置から、設置領域AR0への経路である。ここでのスタート位置とは、移動体10が待機している位置であってよい。ルートRは、設備Wの地図情報に基づき予め設定される。設備Wの地図情報は、設備Wに設置されている障害物(柱など)や移動体10が走行可能な通路などの位置情報を含んだ情報であり、領域A内で移動体10が移動可能な領域を示す情報といえる。また、ルートRは、設備Wの地図情報に加えて、移動体10の車両仕様の情報にも基づき、設定されてよい。車両仕様の情報とは、例えば、移動体10の大きさや最小旋回半径など、移動体10が移動可能な経路に影響を及ぼす仕様である。車両仕様の情報にも基づきルートRが設定されている場合、ルートRは、移動体毎に設定されてよい。なお、ルートRは、人によって、地図情報や車両仕様の情報などに基づき設定されてもよいし、演算装置14などの装置によって、地図情報や車両仕様の情報などに基づき、自動的に設定されてもよい。自動的にルートRを設定する場合、例えば通過して欲しいポイント(Waypoint)を指定してもよく、この場合、通過して欲しいポイントを通過しつつ、最短、かつ障害物(壁などの固定物)を避けたルートRの設定が可能となる。
(Route acquisition department)
The
本実施形態では、ルートRは、複数の区間に区分されている。すなわち、ルートRは、複数の区間を含む経路であるといえる。図1では、ルートRAのうち、開始位置AR1Aから設置領域AR0Aまでの区間が、ルート(区間)RAaとして設定されている例が記載されている。ただし、1つのルートRにおける区間の長さや数は、任意に設定されてよい。 In the present embodiment, the route R is divided into a plurality of sections. That is, it can be said that the route R is a route including a plurality of sections. FIG. 1 describes an example in which a section of the route RA from the start position AR1A to the installation area AR0A is set as the route (section) RAa. However, the length and number of sections in one route R may be arbitrarily set.
本実施形態では、ルート取得部54は、ルートRの情報として、ルートRの位置(座標)情報と共に、ルートRを走行する際の移動体10の移動体10の走行条件(ルートプロファイル)と、ルートRに対して設定された安全領域AR3(図1参照)も、取得する。走行条件も、ルートRと同様に予め設定され、走行条件の設定主体は、人でもよいし演算装置14などの装置であってもよい。走行条件とは、移動体10がルートRをどのように走行するかを示す情報であり、本実施形態では移動体10の最高速度である。移動体10は、走行条件で設定された最高速度以下の速度でルートRを走行する。走行条件は、ルートR毎に設定され、さらに言えば、移動体10毎にも設定される。そのため、走行条件は、例えば同じルートRを走行する際でも、移動体10毎に異なる場合がある。本実施形態では、走行条件(最高速度)は、設備Wの地図情報、ルートRの位置(座標)、移動体10の車両仕様の情報、及びピックアップするパレットPの種類の少なくとも1つに基づき設定される。例えば、走行条件(最高速度)は、設備Wの地図情報やルートRの位置(座標)として、ルートRにおけるカーブの曲率、通路の幅、走行路線数(平行して設定されるルートRの数)などに基づいて、設定される。例えばカーブの曲率が高いほど、通路の幅が狭いほど、そして、走行路線数が多いほど、最高速度が低く設定される。また、走行条件(最高速度)は、移動体10の車両仕様の情報として、移動体10の最小旋回半径、加速や減速の速度などに基づいて、設定される。また、走行条件(最高速度)は、パレットPの種類として、パレットPに積まれている荷物のサイズ、大きさ、積み方などにも基づいて設定されてよい。
In the present embodiment, the
安全領域AR3も、ルートRと同様に予め設定され、安全領域AR3の設定主体は、人でもよいし演算装置14などの装置であってもよい。安全領域AR3は、ルートRに対して設定される。安全領域AR3は、移動体10がルートRを走行する際に、他の移動体10の侵入を禁止する領域である。すなわち、例えば移動体10AがルートRAを走行する際には、ルートRAについて設定された安全領域AR3には、移動体10Bなどの他の移動体10の侵入が禁止される。安全領域AR3は、ルートRの位置(座標)に基づいて設定され、さらに言えば、本実施形態では、ルートRに対して設定された走行条件にも基づき設定される。図1の例では、安全領域AR3は、ルートRからルートRの延在方向側に直交する一方側(左側)に所定の距離ΔD1までの範囲と、ルートRからルートRの延在方向側に直交する他方側(右側)に所定の距離ΔD1までの範囲とにわたって設定される。ここでの距離ΔD1は、任意に設定されてよいが、本実施形態では、走行条件に基づいて設定される。例えば最高速度が高いほど、移動体10の自己位置認識の精度が低くなるので、距離ΔD1はより長く設定され、結果として安全領域AR3がより広く設定される。なお、図1の例では、安全領域AR3は、ルートRから一方側と他方側にそれぞれ同じ距離ΔD1だけ延在された領域であるが、一方側と他方側とで延在する長さが異なってもよい。
The safety area AR3 is also set in advance in the same manner as the route R, and the setting body of the safety area AR3 may be a person or a device such as an arithmetic unit 14. The safety zone AR3 is set for the route R. The safety area AR3 is an area that prohibits the invasion of another
(情報出力部)
情報出力部56は、演算装置14が取得した情報を、図示しない通信部を介して、移動体10に出力する。移動体10と演算装置14との通信方式は、本実施形態では無線通信であるが、通信方式は任意であってよい。情報出力部56は、ルート取得部54が取得したルートRの情報を、移動体10に出力する。ルートRは、設置領域AR0へ向かう経路であるため、移動体10の移動に関する情報であるといえる。図1の例では、設置領域AR0AのパレットPをピックアップする移動体10として、移動体10Aが選定されるため、情報出力部56は、ルートRAの情報を、移動体10Aに送信する。
(Information output section)
The
(排他制御部)
排他制御部58は、移動体10が走行する際に他の移動体10が走行することを禁止する禁止ルートを設定する。情報出力部56は、禁止ルートに基づいた情報を、その他の移動体10に出力する。禁止ルートについては、後述する。
(Exclusive control unit)
The
(移動体の制御装置)
次に、移動体10の制御装置28について説明する。図5は、移動体の制御装置の模式的なブロック図である。制御装置28は、移動体10を制御する。制御装置28は、移動体10のセンサ26によるパレットPの位置や向きの検出結果に基づき、目標位置・姿勢AR2までの軌道TRを設定する。軌道TRの設定方法は後述する。制御装置28は、移動体10を、軌道TRに沿って目標位置・姿勢AR2まで移動させて、移動体10にパレットPをピックアップさせる。制御装置28は、コンピュータであり、図5に示すように、制御部70と記憶部72とを含む。記憶部72は、制御部70の演算内容やプログラムなどの各種情報を記憶するメモリであり、例えば、RAMと、ROMのような主記憶装置と、HDDなどの外部記憶装置とのうち、少なくとも1つ含む。
(Control device for moving objects)
Next, the
制御部70は、演算装置、すなわちCPUである。制御部70は、ルート情報取得部80と、移動制御部82と、目標物情報取得部84と、軌道設定部86と、情報出力部88とを含む。制御部70は、記憶部72からプログラム(ソフトウェア)を読み出して実行することで、ルート情報取得部80と移動制御部82と目標物情報取得部84と軌道設定部86と情報出力部88とを実現して、それらの処理を実行する。なお、制御部70は、1つのCPUによってこれらの処理を実行してもよいし、複数のCPUを備えて、それらの複数のCPUで、処理を実行してもよい。また、ルート情報取得部80と移動制御部82と目標物情報取得部84と軌道設定部86と情報出力部88との少なくとも一部を、ハードウェア回路で実現してもよい。
The
(ルート情報取得部、移動制御部)
ルート情報取得部80は、演算装置14からルートRの情報を取得する。移動制御部82は、移動体10の駆動部やステアリングなどの移動機構を制御して、移動体10の移動を制御する。移動制御部82は、ルート情報取得部80が取得したルートRに従って、移動体10を移動させる。すなわち、移動制御部82は、現在の移動体10の位置から、設置領域AR0に向けて、ルートRを通るように、移動体10を移動させる。ルートRの走行条件が設定されていた場合は、移動制御部82は、走行条件に従って、移動体10を移動させる。移動制御部82は、移動体10の位置情報を逐次把握することで、ルートRを通るように、移動体10を移動させる。移動体10の位置情報の取得方法は任意であるが、例えば本実施形態では、図1に示すように、設備Wに検出体Sが設けられており、移動制御部82は、検出体Sの検出に基づき移動体10の位置情報を取得する。具体的には、移動体10は、検出体Sに向けてレーザ光を照射し、検出体Sによるレーザ光の反射光を受光して、設備Wにおける自身の位置を検出する。ここでの移動体10の位置とは、設備Wの領域Aにおける方向X及び方向Yの二次元座標であり、以下においても、位置とは、別途説明が無い限り、領域Aにおける二次元座標を指す。
(Route information acquisition unit, movement control unit)
The route
(目標物情報取得部)
目標物情報取得部84は、移動体10がルートR上を走行中に、移動体10のセンサ26に対象物の検出を行わせる。すなわち、目標物情報取得部84は、移動体10がルートR上を走行中に、センサ26に対象物の検出処理を、逐次実行させている。センサ26は、移動体10がセンサ26によってパレットPの位置情報を検出可能な距離に到達したら、例えばパレットPからの反射光を受光して、パレットPの位置情報を検出する。本実施形態では、センサ26がパレットPの位置情報を検出した際の移動体10の位置が、開始位置AR1となる。すなわち、目標物情報取得部84は、開始位置AR1において、センサ26からパレットPの位置情報の検出結果を取得する。
(Target information acquisition department)
The target
図6は、設置領域内におけるパレットの配置を説明する図である。図6に示すように、パレットPは、一つの表面(側面)である前面Paに、フォーク24が挿入される開口Pbが形成されている。パレットPは、この前面Paが開始位置AR1に対向するように、設置領域AR0に設置される。パレットPは、設置領域AR0内に収まるように、言い換えれば設置領域AR0からはみ出さないように、設置されることが好ましい。また、設置領域AR0は、パレットPが設置領域AR0からはみ出さないように配置された際に、パレットPの設置領域AR0に対する傾斜角度θが45度を超えないように、大きさが設定されていることが好ましい。すなわち、傾斜角度θは、0度以上45度以下の範囲に収まるように設定されている。傾斜角度θは、領域ARに沿った水平方向における、パレットPの設置領域AR0に対する角度のずれを指す。例えば、パレットPの中心点CP0と、パレットPの前面Paの水平方向における中点CPとを結び、Z方向(鉛直方向)に直交する直線を、直線L1とする。そして、設置領域AR0の中心点CA0と、設置領域AR0の開始位置AR1と対向する側の辺の中点CA1とを結び、Z方向(鉛直方向)に直交する直線を、直線LAとする。この場合、直線L1と直線LAとがなす角度が、傾斜角度θであるといえる。ここで、パレットPの前面Paにおける辺の長さを長さDXとし、側面における辺の長さを、長さDYとする。この場合、パレットPが設置領域AR0からはみ出さないように配置された際に傾斜角度θが45度を超えないようにするには、例えば、設置領域AR0の辺の少なくとも1つが、{(DX/√2)+(DY/√2}より短く設定されていればよい。
FIG. 6 is a diagram illustrating the arrangement of pallets in the installation area. As shown in FIG. 6, in the pallet P, an opening Pb into which the
図5に示す目標物情報取得部84は、開始位置AR1において、移動体10のセンサ26から、目標物であるパレットPの位置情報の検出結果を取得する。パレットPの位置情報は、パレットPの向きを示す情報であり、さらに言えば、パレットPの位置と向きとを示す情報である。図7は、パレットの位置情報を検出している状態を説明する模式図である。例えばセンサ26がレーザ光を照射する構成の場合、目標物情報取得部84は、移動体10がルートRを走行中に、センサ26から、横方向(水平方向)に走査させつつ、レーザ光LTを照射させる。移動体10が開始位置AR1に到達したら、センサ26の前方向にあるパレットPは、レーザ光LTを反射する。センサ26は、パレットPからの反射光を受光する。目標物情報取得部84は、センサ26が受光したパレットPからの反射光に基づき、パレットPの位置及び向きを検出する。すなわち、図7に示すように、目標物情報取得部84は、移動体10がルートR上の開始位置AR1に到着したら、センサ26から、設置領域AR0内のパレットPの、位置及び向きの検出結果を取得するといえる。ここでのパレットPの位置とは、移動体10に対するパレットPの位置であり、移動体10に対してパレットPが位置する方向及び距離(すなわち座標)であるともいえる。目標物情報取得部84が取得するパレットPの位置は、開始位置AR1に対するパレットPの位置であるともいえる。
The target
また、パレットPの向きとは、移動体10に対してパレットPが向いている方向を指し、より具体的には開始位置AR1に対してパレットPの前面Paの向いている方向を指す。例えば、パレットPの中点CP1と、移動体10の基準点CFとを結び、方向Z(鉛直方向)に直交する直線を、直線L0とすると、直線L0に対する直線L1の傾きが、パレットPの向きであるといえる。すなわち、パレットPの向きは、直線L0と直線L1とがなす角度θPであるともいえ、目標物情報取得部84は、角度θPを算出してもよい。なお、基準点CFは、開始位置AR1の基準点ともいえ、予め位置が設定されている。基準点CFは、開始位置AR1に対して任意の位置に設定されてもよいが、例えば、開始位置AR1に到着した移動体10の水平方向における中点に重なる位置を、基準点CFとして設定してよい。なお、目標物情報取得部84は、パレットPからの反射光がセンサ26に向かってくる方向や、レーザ光LTを照射してから反射光を受光するまでの時間などから、パレットPの位置及び向きを算出することができる。
The orientation of the pallet P refers to the direction in which the pallet P faces the moving
ここで、パレットPをピックアップするためのルートRは予め設定済みであるが、ルートRは、パレットPの位置や向きのずれを考慮せずに生成された経路となっている。そのため、移動体10は、ルートRに従ってパレットPまでアプローチしても、パレットPの位置や向きのずれに起因して、パレットPを適切にピックアップできない場合がある。それに対して、移動体10は、目標物情報取得部84が取得したパレットPの位置情報に基づき、パレットPをピックアップするための軌道TRを生成して、その軌道TRに従ってパレットPにアプローチする。すなわち、軌道TRは、パレットPの位置及び向きのずれを考慮して設定されたパレットPへのアプローチ軌道であるといえる。以下、軌道TRの設定方法について説明する。
Here, the route R for picking up the pallet P is preset, but the route R is a route generated without considering the deviation of the position and orientation of the pallet P. Therefore, even if the moving
(軌道設定部)
図8は、第1実施形態における軌道の設定を説明する模式図である。図8に示すように、軌道設定部86(図5参照)は、開始位置AR1(開始位置AR1にある移動体10)から目標位置・姿勢AR2までの軌道TRを設定する。軌道設定部86は、目標物情報取得部84が取得したパレットPの位置情報に基づき、すなわちパレットPの位置及び向きに基づき、目標位置・姿勢AR2を設定する。すなわち、パレットPの位置及び向きから、パレットPをピックアップ可能な(直進することでフォーク24をパレットPの開口Pbに挿入することができる)位置及び姿勢を算出して、目標位置・姿勢AR2とする。一例として、開口Pbの入口から、パレットPの開口Pbの軸方向に1000mm平行移動した箇所を、目標位置・姿勢AR2としてもよい。なお、軌道設定部86は、演算システム14の制御部40に含まれていてもよく、演算装置14が軌道TRを設定してもよい。この場合、移動体10は、演算装置14から軌道TRの情報を取得する。
(Orbit setting part)
FIG. 8 is a schematic diagram illustrating the setting of the orbit in the first embodiment. As shown in FIG. 8, the track setting unit 86 (see FIG. 5) sets the track TR from the start position AR1 (moving
本実施形態では、軌道設定部86は、モデル予測制御(MPC:Model Predictive Control)によって、軌道TRを算出する。以下、軌道TRの算出方法の例を説明する。
In the present embodiment, the
移動体10の制御入力u(k)は、以下の式(1)で表される。
The control input u (k) of the
ここで、v(k)は、移動体10の速度指令値であり、φ(k)は、移動体10のヨーレート指令値であり、kは、離散時間のインデクスを表す。離散時間毎の移動体10の制御入力U(k)は、以下の式(2)で表される。なお、Nは、予測区間(Predictive horizon)である。
Here, v (k) is a speed command value of the moving
軌道設定部86は、次の式(3)に示す最適化問題を解き、制御入力の最適解であるu(k),u(k+1),・・・,u(k+N-1)を求めて、軌道TRを算出する。この最適化問題の解法としては,逐次二次計画法や内点法などの公知技術を用いることができる。
The
なお、このように軌道TRを算出する際には、例えば、以下の式(4)から式(8)に示す拘束条件を与える。 When calculating the orbit TR in this way, for example, the constraint conditions shown in the following equations (4) to (8) are given.
ここで、xは、方向Xにおける移動体10の座標であり、yは、方向Yにおける移動体10の座標であり、θは、基準軸に対する移動体10の傾斜角度であり、Lは、車両Vの前輪と後輪との距離を示すホイールベースである。vMAX、φMAXは、予め設定される速度とヨーレートの上限値である。
Here, x is the coordinates of the moving
なお、開始位置AR1から目標位置・姿勢AR2まで到達可能な軌道は、複数存在する場合がある。この場合、軌道設定部86は、開始位置AR1から目標位置・姿勢AR2まで到達可能な複数の軌道を算出して、それらの複数の軌道のうち、予め設定されていたルートRに最も近い軌道を、軌道TRとして設定してよい。ルートRは、パレットPが傾いていない(角度θPが0)と仮定した場合の軌道に相当し、開始位置AR1から目標位置・姿勢AR2までを結ぶ直線状の軌道であるため、ルートRに最も近い軌道を軌道TRとすることで、カーブを小さくして目標位置・姿勢AR2に早く到達することが可能となる。
In addition, there may be a plurality of orbits that can be reached from the start position AR1 to the target position / attitude AR2. In this case, the
(情報出力部)
図5に示す情報出力部88は、移動体10が開始位置AR1に到達したら、演算装置14に対して、走行許可申請を出力する。走行許可申請とは、開始位置AR1から設置領域AR0までのルートRの走行の許可を申請する旨の情報である。図8の例では、移動体10Aは、開始位置AR1Aに到着したら、開始位置AR1Aから設置領域AR0AまでのルートRAaの走行の許可を申請する旨の、走行許可申請を出力する。なお、実際には、移動体10Aは、ルートRAaではなく軌道TRに従って走行する。本実施形態の例においては、情報出力部88は、移動体10が開始位置AR1に到達して軌道TRの設定が終了したら、演算装置14に走行許可申請を出力するが、走行許可申請の出力タイミングは、軌道TRの設定後に限られない。例えば、情報出力部88は、移動体10が開始位置AR1に到達したら、軌道TRの設定の前に演算装置14に走行許可申請を出力してもよい。この場合、軌道設定部86は、演算装置14から後述の走行許可指示を取得したら、軌道TRを設定する。
(Information output section)
When the moving
(演算装置の排他制御部)
演算装置14の排他制御部58は、移動体10から走行許可申請を取得したら、禁止ルートを設定する。以下では、移動体10Aから走行許可申請を取得した場合を例にして説明する。排他制御部58は、移動体10Aから走行許可申請を取得したら、移動体10Aが走行を申請しているルートRAaの走行を許可するかを判断する。ルートRAaは、移動体10A以外の移動体10の走行許可申請により禁止ルートに設定されている(ブロックされている)場合があり、そのような場合には、排他制御部58は、移動体10AのルートRAaの走行を許可しない。すなわち、排他制御部58は、移動体10AからルートRAaの走行許可申請を取得したら、ルートRAaがブロック済みであるかを、すなわちルートRAaが禁止ルートとして設定済みかを、判断する。排他制御部58は、ルートRAaが禁止ルートとして設定済みでない場合は、移動体10AのルートRAaの走行を許可すると判断し、ルートRAaが禁止ルートとして設定済みである場合は、移動体10AのルートRAaの走行を許可しないと判断する。
(Exclusive control unit of arithmetic unit)
When the
図9は、第1実施形態に係る禁止ルートの設定を説明するための模式図である。排他制御部58は、移動体10AのルートRAaの走行を許可すると判断した場合には、ルートRAaに対応する禁止ルートを設定する。ここで、上述のように、ルートRには、他の移動体10の侵入を禁止する安全領域AR3が設定されている。一般的に、ルートRは、そのルートRの安全領域AR3が他のルートRの安全領域AR3に重ならないように設定されている。そのため、移動体10AによるルートRAaの走行を許可する場合には、ルートRAaを禁止ルートとして設定すればよく、ルートRAaの近傍のルートRB、RCは、ルートRAaと安全領域AR3が重ならないため、禁止ルートとして指定しないことも考えられる。しかし、ルートRAaは、上述のように、パレットPの位置及び向きのずれを考慮しない経路であり、移動体10Aは、パレットPの位置及び向きのずれに起因して、ルートRAaから外れた軌道を走行する可能性がある。その場合、移動体10Aが走行する軌道が他のルートRB、RCの安全領域AR3と重なり、禁止ルートとされなかったルートRB、RCを走行してきた他の移動体10と衝突したり、デッドロックを起こしたりするおそれがある。そのような場合に備え、本実施形態に係る排他制御部58は、パレットPの位置及び向きのずれに起因して移動体10AがルートRAaから外れて走行する場合に侵入する可能性がある経路を、移動体10A以外の走行を禁止する禁止ルートとして設定する。以下、具体的に説明する。
FIG. 9 is a schematic diagram for explaining the setting of the prohibited route according to the first embodiment. When the
第1実施形態においては、それぞれのルートRに対応する禁止ルートは、予め決められている。より詳しくは、上述のように、複数のルートRは予め設定されており、禁止ルートは、それらの複数のルートRのうちから予め決められている。すなわち例えば、ルートRAaに対応する禁止ルートは、複数のルートRのうちから予め決められており、ルートRAaとルートRAaに対応する禁止ルートとが、紐づけられた情報として、例えば記憶部42に記憶されている。
In the first embodiment, the prohibited routes corresponding to the respective routes R are predetermined. More specifically, as described above, the plurality of routes R are preset, and the prohibited route is predetermined from among the plurality of routes R. That is, for example, the prohibited route corresponding to the route RAa is predetermined from a plurality of routes R, and the route RAa and the prohibited route corresponding to the route RAa are linked to, for example, in the
第1実施形態においては、あるルートRに対して所定の距離範囲内にあるルートRが、そのルートRに対応する禁止ルートとされている。図9に示すように、ルートRAaに対して、ルートRAaの延在方向に対して直交する一方側(図9では方向X側)に所定の距離ΔD2だけ離れた線分を、線分S1とする。また、ルートRAaに対して、ルートRAaの延在方向に対して直交する他方側(図9では方向Xと反対側)に所定の距離ΔD2だけ離れた線分を、線分S2とする。この場合、線分S1と線分S2との間のルートRが、ルートRAaに対応する禁止ルートとして決められている。さらに言えば、安全領域AR3が線分S1と線分S2との間に位置しているルートRが、ルートRAaに対応する禁止ルートとされていることが好ましい。この場合、ルートR自体は線分S1と線分S2との間になくても、安全領域AR3が線分S1と線分S2との間に位置しているルートRは、禁止ルートとされる。図9の例では、開始位置AR1Bから設置領域AR0BまでのルートRBと、開始位置AR1Cから設置領域AR0CまでのルートRBと、ルートRAaとが、ルートRAaに対応する禁止ルートとして設定される。 In the first embodiment, the route R within a predetermined distance range with respect to a certain route R is regarded as a prohibited route corresponding to the route R. As shown in FIG. 9, a line segment separated by a predetermined distance ΔD2 on one side (direction X side in FIG. 9) orthogonal to the extending direction of the route RAa with respect to the route RAa is referred to as a line segment S1. do. Further, a line segment separated by a predetermined distance ΔD2 from the other side (the side opposite to the direction X in FIG. 9) orthogonal to the extending direction of the route RAa with respect to the route RAa is defined as a line segment S2. In this case, the route R between the line segment S1 and the line segment S2 is determined as the prohibited route corresponding to the route RAa. Further, it is preferable that the route R in which the safety region AR3 is located between the line segment S1 and the line segment S2 is a prohibited route corresponding to the route RAa. In this case, even if the route R itself is not between the line segment S1 and the line segment S2, the route R in which the safety region AR3 is located between the line segment S1 and the line segment S2 is regarded as a prohibited route. .. In the example of FIG. 9, the route RB from the start position AR1B to the installation area AR0B, the route RB from the start position AR1C to the installation area AR0C, and the route RAa are set as prohibited routes corresponding to the route RAa.
禁止ルートについてさらに説明する。図9に示すように、開始位置AR1Aと設置領域AR0Aとの間の領域のうち、線分S1と線分S2との間の領域を、侵入禁止領域AR4とする。移動体10AのルートRAaの走行を許可する場合、侵入禁止領域AR4は、他の移動体10の侵入を禁止する領域となり、安全領域AR3が侵入禁止領域AR4に重なるルートRが、ルートRAaに対応する禁止ルートとして決められているといえる。
The prohibited routes will be further described. As shown in FIG. 9, among the areas between the start position AR1A and the installation area AR0A, the area between the line segment S1 and the line segment S2 is designated as the intrusion prohibition area AR4. When the traveling of the route RAa of the
なお、距離ΔD2は、任意に設定されてよいが、安全領域AR3の範囲となる距離ΔD1より長く設定されることが好ましい。また例えば、距離ΔD2は、移動体10の車両長さと、フォーク24を最大まで伸ばした長さの合計値に対して、所定の安全率(例えば1.2など)を乗じた値としてもよい。また、本実施形態では、線分S1と線分S2との両方が、ルートRAaから同じ距離ΔD2だけ離れているが、線分S1とルートRAaとの距離と、線分S1とルートRAaとの距離とは、異なってもよい。
The distance ΔD2 may be set arbitrarily, but it is preferably set longer than the distance ΔD1 which is within the range of the safety region AR3. Further, for example, the distance ΔD2 may be a value obtained by multiplying the total value of the vehicle length of the moving
以上のように、本実施形態においては、ルートRに対応する禁止ルートが予め決められている。排他制御部58は、ルート取得部54が取得した移動体10AのルートRAaに基づき、複数のルートRのうちから、ルートRAaに対して予め決められていた禁止ルートを読み出して、読みだした禁止ルートを、ルートRAaに対応する禁止ルートとして設定する。言い換えれば、排他制御部58は、移動体10Aが走行許可を申請したルートRAaに対応する禁止ルートとして決められていたルートRを読み出して、読み出したルートRを、ルートRAaに対応する禁止ルートとして設定する。排他制御部58は、移動体10AのルートRAaに対して所定の距離範囲内にあるルートRを、禁止ルートとして設定するともいえる。
As described above, in the present embodiment, the prohibited route corresponding to the route R is predetermined. The
このように、以上の説明では、ルートRAaと禁止ルートとが、予め紐付けられている。ただし、それに限られず、ルートRAaに対して、他の移動体10の侵入を禁止する侵入禁止領域AR4が予め決められていてもよい。この場合、排他制御部58は、移動体10Aが走行許可を申請したルートRAaに基づき、ルートRAaに対して予め決められている侵入禁止領域AR4を読み出して、侵入禁止領域AR4の範囲内にあるルートR(又は侵入禁止領域AR4に安全領域AR3が重なるルートR)を、禁止ルートとして設定する。この場合でも、ルートRAaと侵入禁止領域AR4とが予め紐付けられているため、ルートRAaに対応する禁止ルートは、予め決められているといえる。
As described above, in the above description, the route RAa and the prohibited route are linked in advance. However, the present invention is not limited to this, and an intrusion prohibition area AR4 that prohibits the intrusion of another
演算装置14は、ルートRAaに対応する禁止ルートを設定したら、情報出力部56により、移動体10Aに走行許可指示を出力する。走行許可指示は、移動体10AにルートRAaの走行を許可する旨の情報である。移動体10Aの移動制御部82は、走行許可指示を取得したら、軌道TRを通るように、開始位置AR1から目標位置・姿勢AR2まで移動体10Aを移動させる。そして、移動制御部82は、目標位置・姿勢AR2から移動体10を直進させて、フォーク24をパレットPの開口Pbに挿入させて、パレットPをピックアップさせる。このように、移動制御部82は、開始位置AR1から目標位置・姿勢AR2まで、軌道TRに沿って移動体10を移動させるが、それに限られず、例えば、軌道TRに沿った移動と直接フィードバック制御による移動とを切り替えて、移動体10を目標位置・姿勢AR2まで移動させてもよい。直接フィードバックによる制御としては、例えば「尾里淳,丸典明 著「線形ビジュアルサーボによる全方向移動ロボットの位置と姿勢の制御」、日本機械学会論文集(C編)、第77巻、第774号、p.215-224、2011年2月25日」に記載されているような、ビジュアルサーボ方式による制御が挙げられる。なお、演算装置14は、移動体10Aが開始位置AR1Aに到達したら、ルートRAaに対応する禁止ルートを設定して、移動体10Aに走行許可指示を出力し、その後、移動体10Aは、パレットPの位置情報を取得して軌道TRを生成して、軌道TRに沿った走行を実施してもよい。すなわち、パレットPの位置情報から軌道TRを算出する前に、禁止ルートを設定してもよい。
After setting the prohibited route corresponding to the route RAa, the arithmetic unit 14 outputs a travel permission instruction to the moving
移動制御部82は、パレットPをピックアップした移動体10Aを、設定された搬送先まで搬送させる。移動制御部82は、例えば、軌道TRに沿って反対方向に移動体10Aを移動させて、開始位置AR1まで移動体10Aを戻す。移動体10Aの情報出力部88は、開始位置AR1まで戻ったら、演算装置14に、終了情報を出力する。終了情報は、例えばパレットPのピックアップが完了し、ルートRAaに対応する禁止ルートの設定を解除してもよい旨を演算装置14に伝えるための情報である。演算装置14は、移動体10Aから終了情報を取得したら、ルートRAaに対応する禁止ルートの設定を解除する。
The
また、演算装置14は、ルートRAaに対応する禁止ルートの設定を行っている間においては、すなわち、移動体10Aに走行許可指示を出力してから終了情報を取得するまでの間においては、移動体10A以外の移動体10に、ルートRAaに対して設定された禁止ルートの走行を禁止する。具体的には、演算装置14は、移動体10A以外の移動体10から、ルートRAaに対して設定された禁止ルートの走行の許可を申請する走行許可申請を取得したら、その移動体10に、その禁止ルートの走行を許可しない旨を示す走行不許可指令を出力する。その移動体10は、演算装置14から走行不許可指令を取得したら、その場で待機する。図9の例では、ルートRBは、侵入禁止領域AR4内にあるため、ルートRAaに対応する禁止ルートとして設定される。従って、演算装置14の情報出力部56は、ルートRAaに対応する禁止ルートの設定を行っている間に、移動体10BからルートRBの走行の許可を申請する走行許可申請を取得したら、移動体10Bに対して、走行不許可指令を出力する。移動体10Bは、ルートRBの禁止ルートの設定が解除されるまで、開始位置AR1Bで待機する。
Further, the arithmetic unit 14 moves while setting the prohibited route corresponding to the route RAa, that is, between outputting the traveling permission instruction to the moving
このように、演算装置14は、パレットPの位置及び向きのずれに起因して移動体10AがルートRAaから外れて走行する場合に侵入する可能性がある経路を、禁止ルートとして設定する。そのため、移動体10AがパレットPの位置及び向きのずれに起因してルートRAaから外れて走行する場合にも、移動体10Aと他の移動体とが衝突するリスクを抑制することが可能となる。
As described above, the arithmetic unit 14 sets a route that may be invaded when the moving
なお、演算装置14の情報出力部56は、移動体10AからルートRAaの走行許可申請を取得した際に、ルートRAaが禁止ルートとして設定済みである場合は、移動体10Aに、ルートRAaの走行を許可しない旨を示す走行不許可指令を出力する。移動体10Aは、演算装置14から走行不許可指令を取得したら、その場で、すなわち開始位置AR1aで待機する。その後、ルートRAaの禁止ルートの設定が解除されたら、すなわち他の移動体10から終了情報を取得したら、演算装置14は、移動体10AのルートRAaの走行を許可すると判断して、ルートRAaに対応する禁止ルートを設定し、移動体10Aに走行許可指示を出力する。移動体10Aは、走行許可指示を取得したら、上述のように、軌道TRに従った走行を開始して、パレットPをピックアップする。
When the
(移動制御フロー)
以上説明した移動体10の移動制御のフローを、フローチャートに基づき説明する。図10Aは、第1実施形態に係る移動体の移動制御フローを説明するフローチャートである。以降においては、移動体10A(第1移動体)が設置領域AR0AのパレットPを搬送する場合を例として説明する。図10Aに示すように、最初に、演算装置14は、ルート取得部54により、設置領域AR0AまでのルートRAの情報を取得し(ステップS10)、情報出力部56により、移動体10AにルートRAの情報を出力する。
(Movement control flow)
The flow of the movement control of the moving
移動体10Aは、ルート情報取得部80により、演算装置14からルートRAの情報を取得し、移動制御部82により、ルートRAに従って移動体10Aを移動させる(ステップS12)。移動体10Aは、開始位置AR1Aに到着していない場合には(ステップS14;No)、ステップS12に戻り、ルートRAに従った走行を続ける。一方、移動体10Aは、開始位置AR1Aに到着したら(ステップS14;Yes)、すなわちパレットPの位置情報を取得可能な位置に到達したら、目標物情報取得部84により、パレットPの位置情報を取得して、パレットPの位置情報に基づき軌道TRを生成する(ステップS16)。そして、移動体10Aは、情報出力部88により、演算装置14に、開始位置AR1Aから設置領域AR0AまでのルートRAaの走行許可申請を出力する(ステップS18)。なお、走行許可申請の出力は、軌道TRの生成より後に実行されることに限られず、移動体10Aは、開始位置AR1Aに到着したら、軌道TRの生成の前に、ルートRAaに従った走行許可申請を出力してもよい。この場合、移動体10Aは、ルートRAaの走行許可指示を取得してから、軌道TRを生成する。
The
演算装置14は、移動体10Aから走行許可申請を取得したら、移動体10Aが走行許可を申請したルートRAaがブロックされているかを、すなわちルートRAaが禁止ルートとして設定済みかを、判断する(ステップS20)。ルートRAaがブロックされている場合(ステップS20;Yes)、すなわちルートRAaが禁止ルートとして設定済みの場合、演算装置14は、移動体10Aに走行不許可指示を出力する(ステップS34)。移動体10Aは、走行不許可指示を取得したら、開始位置AR1Aに待機する。
When the arithmetic unit 14 obtains the travel permission application from the
一方、ルートRAaがブロックされていない場合(ステップS20;No)、すなわちルートRAaが禁止ルートとして設定されていない場合、演算装置14は、排他制御部58により、ルートRAaに対応する禁止ルートを設定する(ステップS22)。本実施形態では、排他制御部58は、ルートRAaに紐付けられている禁止ルートを読み出して、読み出した禁止ルートを、ルートRAaに対応する禁止ルートとして設定する。又は、排他制御部58は、ルートRAaに紐付けられている侵入禁止領域AR4を読み出して、侵入禁止領域AR4に安全領域AR3が重なるルートRを、ルートRAaに対応する禁止ルートとして設定してもよい。演算装置14は、ルートRAaに対応する禁止ルートを設定したら、移動体10AにルートRAaの走行許可指示を出力する(ステップS24)。
On the other hand, when the route RAa is not blocked (step S20; No), that is, when the route RAa is not set as the prohibited route, the arithmetic unit 14 sets the prohibited route corresponding to the route RAa by the
移動体10Aは、演算装置14からルートRAaの走行許可指示を取得したら、開始位置AR1Aから軌道TRに従って走行して(ステップS26)、設置領域AR0AのパレットPをピックアップする。そして、移動体10Aは、開始位置AR1Aに戻ったら(ステップS28;Yes)、情報出力部88により、演算装置14に終了情報を出力する(ステップS30)。なお、開始位置AR1Aに戻っていない場合(ステップS28;No)、移動体10Aは、ステップS26に戻り軌道TRに従った走行を続ける。
After acquiring the travel permission instruction of the route RAa from the arithmetic unit 14, the
演算装置14は、移動体10Aから終了情報を取得したら、ルートRAaに対応する禁止ルートの設定を解除する(ステップS32)。演算装置14は、ステップS22からステップS32までの期間に、すなわちルートRAaに対応する禁止ルートを設定している期間に、移動体10A以外の移動体10から、ルートRAaに対応する禁止ルートの走行許可申請を取得した場合は、その移動体10に対して、ルートRAaに対応する禁止ルートの走行不許可指示を出力する。
After acquiring the end information from the
なお、軌道TRの生成は、移動体10によって実行されることに限られず、演算装置14によって実行されてもよい。また、演算装置14は、移動体10が開始位置AR1に到着して走行許可申請を出力したことをトリガとして、禁止ルートを設定して、移動体10は、禁止ルートとが設定されて走行許可指示を取得した後に、軌道TRを生成して軌道TRに従って走行してもよい。このように軌道TRの生成より前に禁止ルートを設定しておくことで、例えばルートRAaがブロックされていて走行できない際には、ブロックが解除されるまでの時間を利用して軌道TRの演算を行っておくことが可能となり、時間を有効に活用できる。
The generation of the orbit TR is not limited to being executed by the moving
(本実施形態の効果)
以上説明したように、本実施形態に係る演算装置14は、自動で移動する移動体10に情報を出力する。演算装置14は、ルート取得部54と、排他制御部58と、情報出力部56とを含む。ルート取得部54は、パレットP(目標物)をピックアップするための移動体10A(第1移動体)のルートRAaを取得する。排他制御部58は、パレットPの位置及び向きのずれに起因して移動体10AがルートRAaから外れて走行する場合に侵入する可能性がある経路を、移動体10A以外の移動体10B(第2移動体)の走行を禁止する禁止ルートとして設定する。情報出力部56は、禁止ルートに基づいた情報を、移動体10Bに出力する。
(Effect of this embodiment)
As described above, the arithmetic unit 14 according to the present embodiment outputs information to the moving
ここで、ルートRAaは、上述のように、パレットPの位置及び向きのずれを考慮しない経路であり、移動体10Aは、パレットPの位置及び向きのずれに起因して、ルートRAaから外れた軌道を走行する可能性がある。その場合、移動体10Aが走行する軌道が他のルートRB、RCの安全領域AR3と重なり、禁止ルートとされなかったルートRB、RCを走行してきた他の移動体と衝突したり、デッドロックを起こしたりするおそれがある。それに対し、本実施形態に係る演算装置14は、パレットPの位置及び向きのずれに起因して移動体10AがルートRAaから外れて走行する場合に侵入する可能性がある経路を、禁止ルートとして設定する。そのため、移動体10AがパレットPの位置及び向きのずれに起因してルートRAaから外れて走行する場合にも、移動体10Aと他の移動体との衝突及びデッドロックを抑制することが可能となる。
Here, as described above, the route RAa is a route that does not consider the deviation of the position and orientation of the pallet P, and the moving
また、情報出力部56は、移動体10Bから、ルートRAaに対応する禁止ルートの走行の許可を要請する情報(走行許可申請)を取得した場合に、移動体10Bに、ルートRAaに対応する禁止ルートの走行を不許可とする指令(走行不許可指示)を出力する。本実施形態に係る演算装置14によると、ルートRAaに対応する禁止ルートの走行を不許可とする指令を移動体10Bに出力するため、移動体10Aと移動体10Bとの衝突及びデッドロックを適切に抑制することが可能となる。
Further, when the
また、排他制御部58は、移動体10が移動する経路として予め設定された複数のルートRに対応した、禁止ルートを設定する。本実施形態に係る演算装置14によると、予め設定された複数のルートRのうちから、禁止ルートを設定するため、禁止ルートを適切に設定して、移動体同士の衝突及びデッドロックを抑制することが可能となる。
Further, the
また、排他制御部58は、移動体10AのルートRAaに対して所定の距離範囲内にあるルートRを、禁止ルートとして設定する。本実施形態に係る演算装置14によると、移動体10AのルートRAaに対して所定の距離範囲内にあるルートRを、ルートRAaに対応する禁止ルートとして予め決めておくことが可能となる。そのため、演算装置14によると、禁止ルートを設定するための演算が不要となり、禁止ルートを容易に設定しつつ、移動体同士の衝突及びデッドロックを適切に抑制できる。
Further, the
また、本実施形態に係る移動制御システム1は、演算装置14と、移動体10とを含む。この移動制御システム1によると、移動体10AがパレットPの位置及び向きのずれに起因してルートRAaから外れて走行する場合にも、移動体10Aと他の移動体との衝突及びデッドロックを抑制することが可能となる。
Further, the
また、本実施形態に係る演算方法は、自動で移動する移動体10に情報を出力する。この演算方法は、パレットP(目標物)をピックアップするための移動体10A(第1移動体)のルートRAaを取得するステップと、パレットPの位置及び向きのずれに起因して移動体10AがルートRAaから外れて走行する場合に侵入する可能性がある経路を、移動体10A以外の移動体10B(第2移動体)の走行を禁止する禁止ルートとして設定するステップと、禁止ルートに基づいた情報を、移動体10Bに出力するステップとを含む。この演算方法によると、移動体10AがパレットPの位置及び向きのずれに起因してルートRAaから外れて走行する場合にも、移動体10Aと他の移動体との衝突及びデッドロックを抑制することが可能となる。
Further, the calculation method according to the present embodiment outputs information to the moving
また、本実施形態に係るプログラムは、自動で移動する移動体10に情報を出力する演算方法をコンピュータに実行させる。このプログラムは、パレットP(目標物)をピックアップするための移動体10A(第1移動体)のルートRAaを取得するステップと、パレットPの位置及び向きのずれに起因して移動体10AがルートRAaから外れて走行する場合に侵入する可能性がある経路を、移動体10A以外の移動体10B(第2移動体)の走行を禁止する禁止ルートとして設定するステップと、禁止ルートに基づいた情報を、移動体10Bに出力するステップとを、コンピュータに実行させる。このプログラムによると、移動体10AがパレットPの位置及び向きのずれに起因してルートRAaから外れて走行する場合にも、移動体10Aと他の移動体との衝突及びデッドロックを抑制することが可能となる。
Further, the program according to the present embodiment causes a computer to execute a calculation method for outputting information to a moving
(開始位置を設定した例)
以上の説明では、センサ26がパレットPの位置情報を検出可能なルートR上の位置が、開始位置AR1であり、開始位置AR1は、予め設定された位置ではない。ただし、開始位置AR1は、予め設定された位置であってよい。この場合、開始位置AR1は、センサ26が、設置領域AR0に設置されたパレットPの位置情報を検出可能な位置として、設置領域AR0毎に予め設定されている。この場合、ルートRは、スタート位置から開始位置AR1までの経路として予め設定されていてよい。移動体10は、ルートRを通って開始位置AR1まで到着したら、開始位置AR1において、センサ26によるパレットPの位置情報の検出を開始させて、パレットPの位置情報を取得する。なお、開始位置AR1を予め設定する例は、後述の他の実施形態にも適用可能である。
(Example of setting the start position)
In the above description, the position on the route R where the
(センサの他の例)
また、本実施形態においては、移動体10の制御装置28は、移動体10に設けられたセンサ26から、パレットPの位置情報の検出結果を取得していた。ただし、パレットPの位置情報は、移動体10に設けられたセンサに検出されることに限られず、移動体10以外に設けられたセンサによって検出されてもよい。図10Bは、センサの他の例を示す模式図である。図10Bの例では、設備Wにセンサ26wが設けられている。センサ26wは、上記で説明したセンサ26と同様の方法で、パレットPの位置情報を検出してよい。すなわち例えば、センサ26wは、設備W内にレーザ光を照射して、パレットPからのレーザ光の反射光を受光して、パレットPの位置情報を検出してもよいし、カメラなど他の方式でパレットPの位置情報を検出してもよい。移動体10の制御装置28は、このセンサ26wから、例えば無線通信などの通信手段によって、パレットPの位置情報の検出結果を取得する。なお、センサ26wの設けられる位置は任意であり、例えば、設備Wに固定して設けられてもよい。この場合例えば、設備Wの天井などに設けられて上方からパレットPの位置及び向きを検出してもよいし、設備Wの壁などに設けられて、側方からパレットPの位置及び向きを検出してもよいし、天井と壁との両方に設けられてもよい。また、センサ26wは、移動体10以外の移動体に設けられてもよい。移動体10以外の移動体としては、例えば、センサ26wが設けられて設備W内を巡回する車両や、センサ26wが設けられて設備W内を飛行する飛行体(ドローンなど)などであってもよい。なお、移動体10以外に設けられたセンサ26wでパレットPの位置情報を検出する例は、後述の他の実施形態にも適用可能である。
(Other examples of sensors)
Further, in the present embodiment, the
(システムの他の例)
また、本実施形態では、管理システム12がパレットPの情報を示す作業内容を決定し、演算装置14が、対象となる移動体10を特定したり、ルートRを取得したりしていた。ただし、管理システム12と演算装置14との処理内容は、それらに限られない。例えば、管理システム12が、演算装置14の少なくとも一部の処理を受け持ってもよいし、演算装置14が、管理システム12の少なくとも一部の処理を受け持ってもよい。また、管理システム12と演算装置14とが1つの装置(コンピュータ)であってもよい。
(Other examples of the system)
Further, in the present embodiment, the
(第2実施形態)
次に、第2実施形態について説明する。第2実施形態に係る演算装置14aは、禁止ルートの設定方法が、第1実施形態とは異なる。第2実施形態において第1実施形態と構成が共通する箇所は、説明を省略する。
(Second Embodiment)
Next, the second embodiment will be described. The arithmetic unit 14a according to the second embodiment is different from the first embodiment in the method of setting the prohibited route. The description of the parts having the same configuration as that of the first embodiment in the second embodiment will be omitted.
図11は、第2実施形態に係る演算装置の模式的なブロック図である。図12は、第2実施形態に係る禁止ルートの設定を説明するための模式図である。図11に示すように、第2実施形態に係る演算装置14aの制御部40aは、最大傾斜軌道生成部57aと、排他制御部58aとを含む。最大傾斜軌道生成部57aは、パレットPが上限角度θPMAXだけ傾斜した場合における、開始位置AR1から目標位置・姿勢AR2までの軌道を、最大傾斜軌道TRMAXとして予め算出しておく。上限角度θPmaxは、パレットPの角度θPが取り得る最大値である。図12の例では、パレットPの角度θPが上限角度θPMAXとなった場合の直線L1が、直線L1MAXとして示されており、直線L0(図示略)と直線L1MAXとのなす角度が、上限角度θPMAXであるといえる。上限角度θPMAXは、パレットPが設置領域AR0からはみ出さないように配置されたと仮定した場合の、角度θPの取り得る最大値であるともいえる。上限角度θPMAXは、設備Wのレイアウトにより、例えば45度など、予め設定される。また例えば、上限角度θPMAXは、設置領域AR0の寸法と、その設置領域AR0に設置されるパレットPの寸法として許容されている値とに基づき、算出されてもよい。最大傾斜軌道生成部57aは、パレットPの角度θPが上限角度θPMAXである場合の目標位置・姿勢AR2を算出する。そして、最大傾斜軌道生成部57aは、開始位置AR1から目標位置・姿勢AR2までの軌道TRを、最大傾斜軌道TRMAXとして算出する。最大傾斜軌道生成部57aによる目標位置・姿勢AR2や最大傾斜軌道TRMAXの算出方法は、第1実施形態の軌道設定部86の算出方法と同様であってよい。なお、上限角度θPMAXである場合の目標位置・姿勢AR2までの軌道TRが複数設定可能である場合、最大傾斜軌道生成部57aは、上限角度θPMAXである場合の目標位置・姿勢AR2までの複数の軌道TRのうち、ルートRから最も遠い軌道TRを、最大傾斜軌道TRMAXとすることが望ましい。
FIG. 11 is a schematic block diagram of the arithmetic unit according to the second embodiment. FIG. 12 is a schematic diagram for explaining the setting of the prohibited route according to the second embodiment. As shown in FIG. 11, the control unit 40a of the arithmetic unit 14a according to the second embodiment includes a maximum inclined orbit generation unit 57a and an
なお、最大傾斜軌道生成部57aは、最大傾斜軌道TRMAXを、ルートR毎に予め算出しておく。また、パレットPは、一方向(例えば時計回り方向)に上限角度θPMAXだけ傾斜するケースと、他方向(例えば反時計回り方向)に上限角度θPMAXだけ傾斜するケースとの両方が考えられる。その場合、最大傾斜軌道生成部57aは、それらの傾斜する方向毎に、最大傾斜軌道TRMAXを算出しておく。 The maximum inclined orbit generation unit 57a calculates the maximum inclined orbit TR MAX in advance for each route R. Further, it is conceivable that the pallet P is inclined by the upper limit angle θP MAX in one direction (for example, clockwise direction) and the case where the pallet P is inclined by the upper limit angle θP MAX in the other direction (for example, counterclockwise direction). In that case, the maximum inclined orbit generation unit 57a calculates the maximum inclined orbit TR MAX for each of those inclined directions.
第2実施形態においては、禁止ルートは、最大傾斜軌道TRMAXに基づいて予め決められている。具体的には、ルートRAaに対して算出された最大傾斜軌道TRMAXに対して所定の距離範囲内にあるルートRが、ルートRAaに対応する禁止ルートとされている。さらに言えば、最大傾斜軌道TRMAXよりも内側(すなわち最大傾斜軌道TRMAXよりもルートRAa側)に安全領域AR3が位置しているルートRが、ルートRAaに対応する禁止ルートとされている。図12に示すように、ルートRAaの一方側(図12では方向X側)の最大傾斜軌道TR1MAXに対して、一方側に所定の距離ΔD3だけ離れた線分を、線分S1aとする。また、ルートRAaの他方側(図12では方向Xと反対側)の最大傾斜軌道TR2MAXに対して、他方側に所定の距離ΔD3だけ離れた線分を、線分S2aとする。この場合、線分S1aと線分S2aとの間のルートRが、ルートRAaに対応する禁止ルートとして決められているといえる。さらに言えば、安全領域AR3が線分S1aと線分S2aとの間に位置しているルートRが、ルートRAaに対応する禁止ルートとされていることが好ましい。なお、距離ΔD3は、任意に設定されてよいが、安全領域AR3の範囲となる距離ΔD1と同じ長さに設定されてもよい。また、本実施形態では、線分S1aと線分S2aとの両方が、最大傾斜軌道TR1MAX、TR2MAXから同じ距離ΔD3だけ離れているが、線分S1aと最大傾斜軌道TR1MAXとの距離と、線分S2aと最大傾斜軌道TR2MAXとの距離とは、異なってもよい。 In the second embodiment, the prohibited route is predetermined based on the maximum inclined orbit TR MAX . Specifically, the route R within a predetermined distance range with respect to the maximum inclined orbit TR MAX calculated for the route RAa is regarded as a prohibited route corresponding to the route RAa. Furthermore, the route R in which the safety region AR3 is located inside the maximum inclined orbit TR MAX (that is, on the route RAa side of the maximum inclined orbit TR MAX ) is regarded as a prohibited route corresponding to the route RAa. As shown in FIG. 12, a line segment separated from the maximum inclined orbit TR1 MAX on one side of the route RAa (direction X side in FIG. 12) by a predetermined distance ΔD3 is defined as a line segment S1a. Further, a line segment separated from the maximum inclined orbit TR2 MAX on the other side of the route RAa (the side opposite to the direction X in FIG. 12) by a predetermined distance ΔD3 is defined as a line segment S2a. In this case, it can be said that the route R between the line segment S1a and the line segment S2a is determined as the prohibited route corresponding to the route RAa. Furthermore, it is preferable that the route R in which the safety region AR3 is located between the line segment S1a and the line segment S2a is a prohibited route corresponding to the route RAa. The distance ΔD3 may be arbitrarily set, but may be set to the same length as the distance ΔD1 which is within the range of the safety region AR3. Further, in the present embodiment, both the line segment S1a and the line segment S2a are separated from the maximum inclined orbits TR1 MAX and TR2 MAX by the same distance ΔD3, but the distance between the line segment S1a and the maximum inclined orbit TR1 MAX , The distance between the line segment S2a and the maximum inclined orbit TR2 MAX may be different.
禁止ルートについてさらに説明する。開始位置AR1Aと設置領域AR0Aとの間の領域のうち、線分S1aと線分S2aとの間の領域を、侵入禁止領域AR4aとする。移動体10AのルートRAaの走行を許可する場合、侵入禁止領域AR4aは、他の移動体10の侵入を禁止する領域となり、安全領域AR3が侵入禁止領域AR4aに重なるルートRが、ルートRAaに対応する禁止ルートとして決められているといえる。
The prohibited routes will be further described. Of the areas between the start position AR1A and the installation area AR0A, the area between the line segment S1a and the line segment S2a is referred to as an intrusion prohibition area AR4a. When the traveling of the route RAa of the
図12の例では、ルートRBのうちの一部の区間であるルートRB1は、安全領域AR3が、線分S1aと線分S2aとの間に位置しているため、ルートRAaに対応する禁止ルートとされる。一方、ルートRBのうちの他の一部の区間であるルートRB2は、安全領域AR3が、線分S1aと線分S2aとの間に位置していないため、ルートRAaに対応する禁止ルートとされない。 In the example of FIG. 12, the route RB1, which is a part of the route RB, is a prohibited route corresponding to the route RAa because the safety area AR3 is located between the line segment S1a and the line segment S2a. It is said that. On the other hand, the route RB2, which is another section of the route RB, is not regarded as a prohibited route corresponding to the route RAa because the safety area AR3 is not located between the line segment S1a and the line segment S2a. ..
排他制御部58は、移動体10Aが走行許可を申請したルートRAaに基づき、ルートRAaに紐づけられた禁止ルートを読み出して、読み出した禁止ルートを、ルートRAaに対応する禁止ルートとして設定する。
The
以上の説明では、ルートRAaと禁止ルートとが、予め紐付けられている。ただし、それに限られず、ルートRAaに対して、侵入禁止領域AR4aが予め決められていてもよい。この場合、排他制御部58aは、ルートRAaに紐付けられている侵入禁止領域AR4aを読み出して、侵入禁止領域AR4aの範囲内にあるルートR(又は侵入禁止領域AR4aに安全領域AR3が重なるルートR)を、禁止ルートとして設定する。また例えば、排他制御部58aは、ルートRAaに対して予め算出された最大傾斜軌道TRMAXを読み出して、最大傾斜軌道TRMAXに基づき、ルートRAaに対応する禁止ルートを設定してもよい。この場合、最大傾斜軌道TRMAXに基づいたルートRAaに対応する禁止ルートの設定方法は、上述と同様である。
In the above explanation, the route RAa and the prohibited route are linked in advance. However, the present invention is not limited to this, and the intrusion prohibited area AR4a may be predetermined for the route RAa. In this case, the
以上説明したように、第2実施形態に係る演算装置14aは、パレットP(目標物)がとり得る上限角度θPMAX傾斜した場合における、目標位置AR2までの最大傾斜軌道TRMAXを生成する。排他制御部58aは、最大傾斜軌道TRMAXに基づいて、禁止ルートを設定する。第2実施形態においては、最大傾斜軌道TRMAXに基づいて禁止ルートが設定される。そのため、第2実施形態に係る演算装置14aによると、パレットPが最大限ずれた場合に移動体10Aが侵入する可能性がある経路を、禁止ルートとして設定することが可能となり、移動体同士の衝突及びデッドロックを適切に抑制することができる。さらに、最大傾斜軌道TRMAXに基づいて禁止ルートが設定されるため、設備WやパレットPのレイアウトを鑑みて侵入する可能性が低いルートR(図12のルートRB2など)が、禁止ルートとして設定されてしまうことを抑制できるため、他の移動体10の走行を過度に制限することを抑えることが可能となる。
As described above, the arithmetic unit 14a according to the second embodiment generates the maximum inclined orbit TR MAX up to the target position AR2 when the upper limit angle θP MAX inclined that the pallet P (target object) can take. The
(第3実施形態)
次に、第3実施形態について説明する。第3実施形態においては、排他制御部58が、パレットPの位置情報に基づいて禁止ルートを設定する点で、第1実施形態とは異なる。第3実施形態において第1実施形態と構成が共通する箇所は、説明を省略する。
(Third Embodiment)
Next, the third embodiment will be described. The third embodiment is different from the first embodiment in that the
図13は、第3実施形態に係る移動体の制御装置の模式的なブロック図である。図14は、第3実施形態に係る禁止ルートの設定を説明するための模式図である。図13に示すように、第3実施形態に係る移動体10Aの制御装置28bは、制御部70bに、経路情報生成部87bを含む。経路情報生成部87bは、軌道設定部86が生成した軌道TRに基づき、移動体10Aが侵入する可能性がある経路に関する経路情報を生成する。ここでは、経路情報とは、ルートRAaに対応する禁止ルートの情報を指す。すなわち、経路情報生成部87bは、軌道TRに基づき、禁止ルートを決定する。
FIG. 13 is a schematic block diagram of the moving body control device according to the third embodiment. FIG. 14 is a schematic diagram for explaining the setting of the prohibited route according to the third embodiment. As shown in FIG. 13, the
経路情報生成部87bは、軌道TRに対して所定の距離範囲内にあるルートRを、ルートRAaに対応する禁止ルートとする。経路情報生成部87bは、図14に示すように、軌道TRよりも内側(すなわち軌道TRよりもルートRAa側)に安全領域AR3が位置しているルートRを、ルートRAaに対応する禁止ルートとする。図14に示すように、軌道TRに対して、ルートRAaと反対側(図14の例では方向X側)に所定の距離ΔD4だけ離れた線分を、線分S1bとする。また、軌道TRに対して、ルートRAa側(図14の例では方向Xと反対側)に所定の距離ΔD4だけ離れた線分を、線分S2bとする。この場合、経路情報生成部87bは、線分S1bと線分S2bとの間のルートRを、ルートRAaに対応する禁止ルートとする。さらに言えば、経路情報生成部87bは、安全領域AR3が線分S1bと線分S2bとの間に位置しているルートRを、ルートRAaに対応する禁止ルートとすることが好ましい。なお、図14の例では、線分S2bよりも、ルートRAaの安全領域AR3が、ルートRAaの外側(図14の例では方向X側)に位置している。この場合、経路情報生成部87bは、線分S1bと、ルートRAaの安全領域AR3の方向X側の辺との間に安全領域AR3が位置しているルートRを、ルートRAaに対応する禁止ルートとする。なお、距離ΔD4は、任意に設定されてよいが、安全領域AR3の範囲となる距離ΔD1と同じ長さに設定されてもよい。また、本実施形態では、線分S1bと線分S2bとの両方が、軌道TRから同じ距離ΔD4だけ離れているが、線分S1bと軌道TRとの距離と、線分S2bと軌道TRとの距離とは、異なってもよい。 The route information generation unit 87b sets the route R within a predetermined distance range with respect to the track TR as a prohibited route corresponding to the route RAa. As shown in FIG. 14, the route information generation unit 87b sets the route R in which the safety region AR3 is located inside the track TR (that is, on the route RAa side of the track TR) as a prohibited route corresponding to the route RAa. do. As shown in FIG. 14, a line segment separated from the track TR by a predetermined distance ΔD4 on the opposite side of the route RAa (direction X side in the example of FIG. 14) is referred to as a line segment S1b. Further, a line segment separated from the track TR by a predetermined distance ΔD4 on the route RAa side (the side opposite to the direction X in the example of FIG. 14) is referred to as a line segment S2b. In this case, the route information generation unit 87b sets the route R between the line segment S1b and the line segment S2b as a prohibited route corresponding to the route RAa. Further, it is preferable that the route information generation unit 87b sets the route R in which the safety region AR3 is located between the line segment S1b and the line segment S2b as a prohibited route corresponding to the route RAa. In the example of FIG. 14, the safety region AR3 of the route RAa is located outside the route RAa (direction X side in the example of FIG. 14) with respect to the line segment S2b. In this case, the route information generation unit 87b sets the route R on which the safety region AR3 is located between the line segment S1b and the side of the safety region AR3 on the direction X side of the route RAa as a prohibited route corresponding to the route RAa. And. The distance ΔD4 may be arbitrarily set, but may be set to the same length as the distance ΔD1 which is within the range of the safety region AR3. Further, in the present embodiment, both the line segment S1b and the line segment S2b are separated from the orbit TR by the same distance ΔD4, but the distance between the line segment S1b and the orbit TR and the line segment S2b and the orbit TR It may be different from the distance.
禁止ルートについてさらに説明する。図14に示すように、開始位置AR1Aから設置領域AR0Aとの間の領域のうち、線分S1bと線分S2bとの間の領域を、侵入禁止領域AR4bとする。移動体10AのルートRAaの走行を許可する場合、侵入禁止領域AR4bは、他の移動体10の侵入を禁止する領域となり、安全領域AR3が侵入禁止領域AR4aに重なるルートRが、ルートRAaに対応する禁止ルートとして決められているといえる。なお、図14の例のように、ルートRAaの安全領域AR3が、ルートRAaの外側(図14の例では方向X側)に位置している場合には、線分S1bと、ルートRAaの安全領域AR3の方向X側の辺との間の領域が、侵入禁止領域AR4bとなる。
The prohibited routes will be further described. As shown in FIG. 14, among the areas between the start position AR1A and the installation area AR0A, the area between the line segment S1b and the line segment S2b is referred to as an intrusion prohibition area AR4b. When the traveling of the route RAa of the
移動体10Aの情報出力部56は、このようにして生成した経路情報を、すなわち軌道TRに基づき決定した禁止ルートの情報を、演算装置14に出力する。演算装置14の排他制御部58は、移動体10Aから取得した経路情報に基づき、ルートRAaに対応する禁止ルートを設定する。すなわち、排他制御部58は、移動体10Aが軌道TRに基づいて決定した禁止ルートを、ルートRAaに対応する禁止ルートとして設定する。なお、経路情報生成部87bは、演算装置14の制御部40に含まれていてもよい。この場合、演算装置14が経路情報を生成して、経路情報に基づき禁止ルートを設定する。
The
以上の説明では移動体10Aが、軌道TRに基づき禁止ルートを決定していた。ただし、それに限られず、移動体10Aは、軌道TRに基づき算出した侵入禁止領域AR4bを、経路情報として演算装置14に出力してもよい。この場合、演算装置14の排他制御部58は、侵入禁止領域AR4bの情報(侵入禁止領域AR4bの位置情報)に基づき、例えば、安全領域AR3が侵入禁止領域AR4aに重なるルートRを、禁止ルートとして設定してもよい。以上挙げたケースにおいては、移動体10Aは、軌道TRに基づき、経路情報(禁止ルート又は侵入禁止領域AR4b)を生成して、演算装置14に出力しているといえる。
In the above explanation, the
また、移動体10Aは、軌道TRの情報(位置情報)を、経路情報として演算装置14に出力してもよい。この場合、演算装置14の排他制御部58は、軌道TRに基づき、上述の経路情報生成部87bと同様の方法で、禁止ルートを設定してよい。以上のケースにおいては、経路情報は、軌道TR、または軌道TRに基づいて生成された情報(禁止ルート又は侵入禁止領域AR4b)となるので、演算装置14は、軌道TRに関する情報に基づいて、禁止ルートを設定するといえる。また、移動体10Aは、目標物情報取得部84が取得したパレットPの位置情報を、経路情報として演算装置14に出力してもよい。この場合、演算装置14の排他制御部58は、パレットPの位置情報に基づいて軌道TRを算出し、軌道TRに基づき、上述の経路情報生成部87bと同様の方法で、禁止ルートを設定してよい。また例えば、演算装置14の排他制御部58は、パレットPの位置情報を、移動体10のセンサ26や移動体10以外に設けられたセンサ26w(図10B参照)から取得し、パレットPの位置情報に基づいて軌道TRを算出し、軌道TRに基づき、禁止ルートを設定してよい。以上挙げたいずれの場合においても、禁止ルートは、パレットPの位置情報に基づいて設定されるため、排他制御部58は、パレットPの位置情報に基づいて禁止ルートを設定するといえる。
Further, the moving
第3実施形態における移動制御のフローを、フローチャートに基づき説明する。図15は、第3実施形態に係る移動体の移動制御フローを説明するフローチャートである。図15のステップS10からステップS16は、図10Aに示した第1実施形態と同様の処理のため、説明を省略する。ステップS16で軌道TRを設定したら、移動体10A(第1移動体)は、軌道TRに基づいて、経路情報を生成する。ここでの経路情報とは、例えば禁止ルートの情報である。移動体10Aは、ルートRAaの走行許可申請と、経路情報とを、演算装置14に出力する(ステップS18b)。
The flow of movement control in the third embodiment will be described with reference to a flowchart. FIG. 15 is a flowchart illustrating a movement control flow of the moving body according to the third embodiment. Since steps S10 to S16 of FIG. 15 are the same processes as those of the first embodiment shown in FIG. 10A, the description thereof will be omitted. After setting the orbit TR in step S16, the moving
演算装置14は、ルートRAaの走行許可申請と経路情報とを取得したら、ルートRAaがブロックされているかを、すなわちルートRAaが禁止ルートとして設定済みかを、判断する(ステップS20)。ルートRAaがブロックされている場合(ステップS20;Yes)におけるステップS34は、第1実施形態と同様である。一方、ルートRAaがブロックされていない場合(ステップS20;No)、すなわちルートRAaが禁止ルートとして設定されていない場合、演算装置14は、排他制御部58により、経路情報に基づき、ルートRAaに対応する禁止ルートを設定する(ステップS22b)。ステップS22b以降の処理(ステップS24からステップS32)は、第1実施形態と同様であるため説明を省略する。
After acquiring the travel permission application for the route RAa and the route information, the arithmetic unit 14 determines whether the route RAa is blocked, that is, whether the route RAa has already been set as a prohibited route (step S20). Step S34 in the case where the route RAa is blocked (step S20; Yes) is the same as in the first embodiment. On the other hand, when the route RAa is not blocked (step S20; No), that is, when the route RAa is not set as a prohibited route, the arithmetic unit 14 corresponds to the route RAa based on the route information by the
このように、第3実施形態においては、オンラインで、すなわち移動体10Aが開始位置に到着した後に、軌道TRに基づいて禁止ルートを決定する。第3実施形態に係る演算装置14は、移動体10Aが実際に移動する軌道TRに基づいて禁止ルートを設定するため、移動体同士の衝突を適切に抑制するように禁止ルートを設定することができる。さらに、軌道TRに基づいて禁止ルートを設定するため、パレットPの実際の位置や向きを鑑みて侵入する可能性が低いルートRが、禁止ルートとして設定されてしまうことを抑制できるため、他の移動体10の走行を過度に制限することを抑えることが可能となる。
Thus, in the third embodiment, the prohibited route is determined online, that is, after the
なお、移動体10Aは、移動するに従って軌道TRを更新する場合がある。この場合、演算装置14は、軌道TRの更新に従って、禁止ルートを更新してもよい。例えば、演算装置14は、更新前の軌道TRにおいては禁止ルートとされていないが、更新後の軌道TRでは禁止ルートとされるルートRがある場合、そのルートRを、新たな禁止ルートとして設定する。また、更新前の軌道TRにおいては禁止ルートとされていたが、更新後の軌道TRでは禁止ルートとされないルートR(すなわち更新した軌道TRの所定距離範囲内に入らなくなったルートR)がある場合も考えられる。このようなルートRを過去禁止ルートとすると、演算装置14は、軌道TRを更新した際に、過去禁止ルートに対応する禁止ルートの設定を解除してもよいし、過去禁止ルートを禁止ルートとして設定したままとしてもよい。
The moving
以上説明したように、第3実施形態においては、演算装置14の排他制御部58は、パレットP(目標物)の位置及び向きの情報に基づいて、禁止ルートを設定する。第3実施形態に係る演算装置14によると、パレットPの実際の位置や向きに応じて禁止ルートを設定するため、移動体同士の衝突及びデッドロックを適切に抑制するように禁止ルートを設定しつつ、他の移動体10の走行を過度に制限することを抑えることが可能となる。
As described above, in the third embodiment, the
また、排他制御部58は、移動体10A(第1移動体)から、パレットPの位置及び向きの情報に基づいて算出された軌道TRに関する情報(経路情報)を取得する。排他制御部58は、軌道に関する情報(経路情報)に基づいて、禁止ルートを設定する。第3実施形態に係る演算装置14によると、移動体10Aが実際に移動する軌道TRに基づいて禁止ルートを設定するため、移動体同士の衝突及びデッドロックを適切に抑制するように禁止ルートを設定しつつ、他の移動体10の走行を過度に制限することを抑えることが可能となる。
Further, the
また、第3実施形態に係る移動体10の制御装置28bは、軌道設定部86と、経路情報生成部87bと、情報出力部88とを含む。軌道設定部86は、パレットP(目標物)の位置及び向きの情報に基づいて軌道TRを設定する。経路情報生成部87bは、軌道TRに基づいて、移動体10が侵入する可能性がある経路に関する情報(経路情報)を生成する。情報出力部88は、経路情報を出力する。本実施形態に係る制御装置28bによると、軌道TRに基づいて生成した経路情報を出力するため、移動体10Aが実際に移動する軌道TRに基づいて禁止ルートを設定することが可能となり、移動体同士の衝突及びデッドロックを適切に抑制するように禁止ルートを設定しつつ、他の移動体10の走行を過度に制限することを抑えることが可能となる。
Further, the
また、第3実施形態に係る移動体10は、制御装置28bを備える。移動体10によると、移動体同士の衝突及びデッドロックを適切に抑制するように禁止ルートを設定しつつ、他の移動体10の走行を過度に制限することを抑えることが可能となる。
Further, the
(第4実施形態)
次に、第4実施形態について説明する。第4実施形態に係る演算装置14cは、移動体10A及び移動体10Bの軌道TRに基づいて、パレットPをピックアップする順番を設定する点で、第3実施形態とは異なる。第4実施形態において、第3実施形態と構成が共通する箇所は、説明を省略する。なお、第4実施形態は、第1実施形態や第2実施形態に対しても適用可能である。
(Fourth Embodiment)
Next, the fourth embodiment will be described. The arithmetic unit 14c according to the fourth embodiment is different from the third embodiment in that the order of picking up the pallets P is set based on the orbits TR of the moving
図16は、第4実施形態に係る演算装置の模式的なブロック図である。図17は、パレットをピックアップする順番設定を説明するための図である。図16に示すように、第4実施形態に係る演算装置14cの制御部40cは、順番設定部60cを含む。順番設定部60cは、例えば、管理システム12から取得した作業内容から、向かう先の設置領域AR0の場所が近く、かつ、開始位置AR1に到達する時刻が近い、複数の移動体10を選定する。例えば、順番設定部60cは、作業内容から、向かう先の設置領域AR0の位置情報を取得して、例えば向かう先の設置領域AR0が所定距離範囲内の(例えば設置領域AR0が隣り合う)複数の移動体10を、向かう先の設置領域AR0の場所が近い移動体10として選定する。また例えば、順番設定部60cは、移動体10のルートRの情報に基づき、開始位置AR1までの到着する時刻を算出し、開始位置AR1までの到着する時刻同士の差分が所定時間内の複数の移動体10を、開始位置AR1に到達する時刻が近い複数の移動体10として選定する。順番設定部60cは、このようにして選定した複数の移動体10に対して、パレットPをピックアップする順番を設定する。以降では、移動体10Aと移動体10Bとを選定した場合を例にして説明する。
FIG. 16 is a schematic block diagram of the arithmetic unit according to the fourth embodiment. FIG. 17 is a diagram for explaining the order setting for picking up the pallets. As shown in FIG. 16, the
演算装置14cは、移動体10Aと移動体10Bとのうち、先に開始位置AR1に到着して走行許可申請を取得した移動体10に対して、選定した他の移動体10が開始位置AR1に到着するまで、走行許可指示は出さず、その場で待機させる。順番設定部60cは、選定した他の移動体10が開始位置AR1に到着して、その移動体10から走行許可申請を取得したら、パレットPをピックアップする順番の設定を実行する。具体的には、順番設定部60cは、選定した移動体10A、10Bのそれぞれから、軌道TRの情報を取得し、移動体10A、10Bのそれぞれの軌道TRに基づいて、パレットPをピックアップする順番を設定する。
In the arithmetic device 14c, among the moving
具体的には、順番設定部60cは、移動体10Aと移動体10Bとのうち、ルートRに近い軌道TRを算出した方を、先にパレットPをピックアップする移動体として選定して、ルートRに遠い軌道TRを算出した方を、後でパレットPをピックアップする移動体として選定する。例えば、図17の例では、移動体10Bの開始位置AR1Bから設置領域AR0BまでのルートRBaに対する軌道TRBのずれ量は、移動体10AのルートRAaに対する軌道TRAのずれ量よりも、少ない。言い換えれば、移動体10BのルートRBaと軌道TRBとの座標の差分は、移動体10AのルートRAaと軌道TRAとの座標の差分よりも、少ない。従って、図17の例では、順番設定部60cは、移動体10Bを、先にパレットPをピックアップする移動体として選定する。なお、先にパレットPをピックアップする移動体の選定方法は、これに限られない。例えば、順番設定部60cは、複数の移動体10のうち、禁止ルートの数がより少ない方の移動体10、又は、侵入禁止領域AR4がより狭い方の移動体10を、先にパレットPをピックアップする移動体10として選定してもよい。順番設定部60cは、それぞれの移動体10の、開始位置AR1から先のルートに対応する禁止ルートや侵入禁止領域AR4を比較して、禁止ルートの数がより少ない方の移動体10や、侵入禁止領域AR4がより狭い方の移動体10を選定する。例えばそれぞれの移動体で周辺環境が異なる場合には、ルートRに対する軌道TRのずれが少ない移動体10の方が、禁止ルートの数が多かったり侵入禁止領域AR4が広かったりする場合がある。このような場合には、上記のように先にパレットPをピックアップする移動体を選定することが有効となる。
Specifically, the
この場合、演算装置14cは、移動体10BのルートRBaに対応する禁止ルートを設定して、移動体10Bに走行許可指示を出力する。移動体10Bは、軌道TRBに従って走行してパレットPをピックアップした後、演算装置14cに終了情報を出力する。演算装置14cは、移動体10Bから終了情報を取得したら、ルートRBaに対応する禁止ルートの設定を解除して、移動体10AのルートRAaに対応する禁止ルートを設定して、移動体10Aに走行許可指示を出力する。移動体10Aは、軌道TRAに従って走行して、パレットPをピックアップする。
In this case, the arithmetic unit 14c sets a prohibited route corresponding to the route RBa of the
以上の移動制御フローを、フローチャートに基づいて説明する。図18は、第4実施形態に係る移動制御フローを説明するフローチャートである。図18に示すように、演算装置14aは、移動体10A(第1移動体)と移動体10B(第2移動体)とから、軌道TRの情報と走行許可申請を取得したかを判断する(ステップS40)。すなわち、演算装置14aは、移動体10A、10Bの両方が開始位置AR1に到着して、軌道TRの情報と走行許可申請とを出力したかを判断する。移動体10Aと移動体10Bとから軌道TRの情報と走行許可申請を取得していない場合(ステップS40;No)、演算装置14aは、移動体10Aと移動体10Bとから軌道TRの情報と走行許可申請とを取得するまで待機する。一方、移動体10Aと移動体10Bとから軌道TRの情報と走行許可申請を取得した場合(ステップS40;Yes)、演算装置14cは、移動体10Aの軌道TRAとルートRAaとのずれ量と、移動体10Bの軌道TRBとルートRaとのずれ量とを比較する(ステップS42)。移動体10Aの軌道TRAとルートRAaとのずれ量が移動体10Bの軌道TRBとルートRaとのずれ量より大きい場合(ステップS42;Yes)、演算装置14cは、移動体10Bに先にピックアップさせると判断して、まず、移動体10BのルートRBaに対応する禁止ルートを設定する(ステップS44A)。なお、この場合、演算装置14cは、移動体10Aをその場で待機させておく。そして、演算装置14cは、移動体10Bに走行許可指示を出力して(ステップS46A)、移動体10Bに軌道TRBに従った走行を実行させて、パレットPをピックアップさせる。移動体10Bは、パレットPをピックアップして開始位置AR1Bに戻ったら、演算装置14cに終了情報を出力する。演算装置14cは、移動体10Bから終了情報を取得したら(ステップS48A;Yes)、移動体10Aを移動させる制御を実行する(ステップS50A)。移動体10Aを移動させる制御とは、具体的には、ルートRBaに対応する禁止ルートの設定を解除して、移動体10AのルートRAaに対応する禁止ルートを設定して、移動体10Aに走行許可指示を出力する制御である。これにより、移動体10Aは、移動体10Bの後に、パレットPをピックアップする。なお、移動体10Bから終了情報を取得しない場合(ステップS48A;No)、演算装置14cは、ステップS48Aに戻り、移動体10Bからの終了情報の取得を待つ。
The above movement control flow will be described based on the flowchart. FIG. 18 is a flowchart illustrating a movement control flow according to the fourth embodiment. As shown in FIG. 18, the arithmetic unit 14a determines from the moving
一方、移動体10Aの軌道TRAとルートRAaとのずれ量が移動体10Bの軌道TRBとルートRaとのずれ量より大きくない場合(ステップS42;No)、演算装置14cは、移動体10Aに先にピックアップさせると判断して、まず、移動体10AのルートRAaに対応する禁止ルートを設定する(ステップS44B)。なお、この場合、演算装置14cは、移動体10Bをその場で待機させておく。そして、演算装置14cは、移動体10Aに走行許可指示を出力して(ステップS46B)、移動体10Aに軌道TRAに従った走行を実行させて、パレットPをピックアップさせる。移動体10Aは、パレットPをピックアップして開始位置AR1Aに戻ったら、演算装置14cに終了情報を出力する。演算装置14cは、移動体10Aから終了情報を取得したら(ステップS48B;Yes)、移動体10Bを移動させる制御を実行する(ステップS50B)。移動体10Bを移動させる制御とは、具体的には、ルートRAaに対応する禁止ルートの設定を解除して、移動体10BのルートRBaに対応する禁止ルートを設定して、移動体10Bに走行許可指示を出力する制御である。これにより、移動体10Bは、移動体10Aの後に、パレットPをピックアップする。なお、移動体10Aから終了情報を取得しない場合(ステップS48B;No)、演算装置14cは、ステップS48Bに戻り、移動体10Aからの終了情報の取得を待つ。
On the other hand, when the amount of deviation between the orbital TRA of the moving
以上説明したように、第4実施形態に係る演算装置14cの順番設定部60cは、移動体10A(第1移動体)が算出した軌道TRAと、移動体10B(第2移動体)が算出した軌道TRBとに基づき、移動体10Aと移動体10BとのパレットP(目標物)をピックアップする順番を設定する。第4実施形態に係る演算装置14cは、軌道TRに基づきパレットPをピックアップする順番を設定するため、例えば、他の移動体10の作業への影響度に応じて、パレットPをピックアップする順番を設定することが可能となる。そのため、第4実施形態に係る演算装置14cによると、複数の移動体10によるパレットPのピックアップを円滑に行わせることが可能となる。
As described above, the
また、順番設定部60cは、移動体10Aと移動体10Bとのうち、予め設定されたルートRに近い軌道TRを算出した方を、先にパレットPをピックアップする移動体として選定する。第4実施形態に係る演算装置14cは、軌道TRとルートRとのずれが小さく、他の移動体10の作業への影響が少ない移動体10を先に移動させるため、複数の移動体10によるパレットPのピックアップを円滑に行わせることが可能となる。
Further, the
以上、本発明の実施形態を説明したが、この実施形態の内容により実施形態が限定されるものではない。また、前述した構成要素には、当業者が容易に想定できるもの、実質的に同一のもの、いわゆる均等の範囲のものが含まれる。さらに、前述した構成要素は適宜組み合わせることが可能である。さらに、前述した実施形態の要旨を逸脱しない範囲で構成要素の種々の省略、置換又は変更を行うことができる。 Although the embodiments of the present invention have been described above, the embodiments are not limited to the contents of the embodiments. Further, the above-mentioned components include those that can be easily assumed by those skilled in the art, those that are substantially the same, that is, those in a so-called equal range. Furthermore, the components described above can be combined as appropriate. Further, various omissions, replacements or changes of the components can be made without departing from the gist of the above-described embodiment.
1 移動制御システム
10 移動体
10A 移動体(第1移動体)
10B 移動体(第2移動体)
12 管理システム
14 演算装置
24 フォーク
26 センサ
54 ルート取得部
56 情報出力部
58 排他制御部
AR0 設置領域
AR1 開始位置
AR2 目標位置
P パレット(目標物)
R ルート
TR 軌道
1
10B mobile (second mobile)
12 Management system 14
R route TR orbit
Claims (15)
目標物をピックアップするための第1移動体のルートを取得するルート取得部と、
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定する排他制御部と、
前記禁止ルートに基づいた情報を、前記第2移動体に出力する情報出力部と、
前記目標物がとり得る上限角度傾斜した場合における、前記目標物に対して所定の位置及び向きとなる目標位置までの最大傾斜軌道を生成する最大傾斜軌道生成部と、
を含み、
前記排他制御部は、前記最大傾斜軌道に基づいて、前記禁止ルートを設定する、演算装置。 An arithmetic unit that outputs information to a moving object that moves automatically.
A route acquisition unit that acquires the route of the first moving object for picking up the target, and
Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. The exclusive control unit that is set as a prohibited route that prohibits
An information output unit that outputs information based on the prohibited route to the second mobile body, and
A maximum tilted orbit generator that generates a maximum tilted orbit up to a target position that is in a predetermined position and orientation with respect to the target when the target is tilted at an upper limit angle that can be taken.
Including
The exclusive control unit is an arithmetic unit that sets the prohibited route based on the maximum inclined trajectory .
目標物をピックアップするための第1移動体のルートを取得するルート取得部と、
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定する排他制御部と、
前記禁止ルートに基づいた情報を、前記第2移動体に出力する情報出力部と、
を含み、
前記排他制御部は、前記第1移動体から、前記目標物の位置及び向きの情報に基づいて算出された、前記目標物に対して所定の位置及び向きとなる目標位置までの軌道に関する情報を取得し、前記軌道に対して所定距離範囲内の領域である侵入禁止領域内を前記禁止ルートとして設定し、
前記侵入禁止領域は、前記第1移動体のルートに対して所定距離範囲内の領域である禁止領域の少なくとも一部に対して重ならないように設定される、演算装置。 An arithmetic unit that outputs information to a moving object that moves automatically.
A route acquisition unit that acquires the route of the first moving object for picking up the target, and
Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. The exclusive control unit that is set as a prohibited route that prohibits
An information output unit that outputs information based on the prohibited route to the second mobile body, and
Including
The exclusive control unit obtains information on an orbit from the first mobile body to a target position that is a predetermined position and orientation with respect to the target object, which is calculated based on information on the position and orientation of the target object. Obtained and set the intrusion prohibited area, which is an area within a predetermined distance range with respect to the orbit, as the prohibited route.
The arithmetic unit is set so that the intrusion prohibited area does not overlap with at least a part of the prohibited area which is an area within a predetermined distance range with respect to the route of the first moving body .
請求項1から請求項5のいずれか1項に記載の演算装置。 A trajectory to a target position that is a predetermined position and orientation with respect to the target, calculated based on information on the position and orientation of the target calculated by the first moving body, and the second moving body. Further includes an order setting unit for setting the order of picking up the target objects of the first moving body and the second moving body based on the trajectory calculated by the above.
The arithmetic unit according to any one of claims 1 to 5 .
目標物をピックアップするための第1移動体のルートを取得するルート取得部と、 A route acquisition unit that acquires the route of the first moving object for picking up the target, and
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定する排他制御部と、 Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. The exclusive control unit that is set as a prohibited route that prohibits
前記禁止ルートに基づいた情報を、前記第2移動体に出力する情報出力部と、 An information output unit that outputs information based on the prohibited route to the second mobile body, and
前記第1移動体が算出した、前記目標物の位置及び向きの情報に基づいて算出された、前記目標物に対して所定の位置及び向きとなる目標位置までの軌道と、前記第2移動体が算出した前記軌道とに基づき、前記第1移動体と前記第2移動体との目標物をピックアップする順番を設定する順番設定部と、 A trajectory to a target position that is a predetermined position and orientation with respect to the target, calculated based on information on the position and orientation of the target calculated by the first moving body, and the second moving body. An order setting unit that sets the order in which the target object of the first moving body and the second moving body is picked up based on the trajectory calculated by
を含む、演算装置。 Including arithmetic unit.
目標物をピックアップするための第1移動体のルートを取得するステップと、
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、
前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、
前記目標物がとり得る上限角度傾斜した場合における、前記目標物に対して所定の位置及び向きとなる目標位置までの最大傾斜軌道を生成するステップと、
を含み、
前記禁止ルートとして設定するステップにおいては、前記最大傾斜軌道に基づいて、前記禁止ルートを設定する、演算方法。 It is a calculation method that outputs information to a moving object that moves automatically.
Steps to get the route of the first moving object to pick up the target,
Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. And the step to set as a prohibited route to prohibit
A step of outputting information based on the prohibited route to the second mobile body, and
A step of generating a maximum inclined trajectory up to a target position having a predetermined position and orientation with respect to the target when the target is inclined at an upper limit angle that can be taken.
Including
A calculation method for setting the prohibited route based on the maximum inclined trajectory in the step of setting the prohibited route .
目標物をピックアップするための第1移動体のルートを取得するステップと、
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、
前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、
を含み、
前記禁止ルートとして設定するステップにおいては、前記第1移動体から、前記目標物の位置及び向きの情報に基づいて算出された、前記目標物に対して所定の位置及び向きとなる目標位置までの軌道に関する情報を取得し、前記軌道に対して所定距離範囲内の領域である侵入禁止領域内を前記禁止ルートとして設定し、
前記侵入禁止領域は、前記第1移動体のルートに対して所定距離範囲内の領域である禁止領域の少なくとも一部に対して重ならないように設定される、演算方法。 It is a calculation method that outputs information to a moving object that moves automatically.
Steps to get the route of the first moving object to pick up the target,
Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. And the step to set as a prohibited route to prohibit
A step of outputting information based on the prohibited route to the second mobile body, and
Including
In the step of setting as the prohibited route, from the first moving body to the target position calculated based on the information on the position and orientation of the target, which is a predetermined position and orientation with respect to the target. Information on the orbit is acquired, and the intrusion prohibited area, which is an area within a predetermined distance range with respect to the orbit, is set as the prohibited route.
A calculation method in which the intrusion prohibited area is set so as not to overlap at least a part of a prohibited area which is an area within a predetermined distance range with respect to the route of the first moving body .
目標物をピックアップするための第1移動体のルートを取得するステップと、 Steps to get the route of the first moving object to pick up the target,
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、 Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. And the step to set as a prohibited route to prohibit
前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、 A step of outputting information based on the prohibited route to the second mobile body, and
前記第1移動体が算出した、前記目標物の位置及び向きの情報に基づいて算出された、前記目標物に対して所定の位置及び向きとなる目標位置までの軌道と、前記第2移動体が算出した前記軌道とに基づき、前記第1移動体と前記第2移動体との目標物をピックアップする順番を設定するステップと、 A trajectory to a target position that is a predetermined position and orientation with respect to the target, calculated based on information on the position and orientation of the target calculated by the first moving body, and the second moving body. The step of setting the order of picking up the target object of the first moving body and the second moving body based on the orbit calculated by
を含む、演算方法。 Operation method including.
目標物をピックアップするための第1移動体のルートを取得するステップと、
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、
前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、
前記目標物がとり得る上限角度傾斜した場合における、前記目標物に対して所定の位置及び向きとなる目標位置までの最大傾斜軌道を生成するステップと、
を、コンピュータに実行させ、
前記禁止ルートとして設定するステップにおいては、前記最大傾斜軌道に基づいて、前記禁止ルートを設定する、プログラム。 A program that causes a computer to execute an arithmetic method that outputs information to a moving object that moves automatically.
Steps to get the route of the first moving object to pick up the target,
Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. And the step to set as a prohibited route to prohibit
A step of outputting information based on the prohibited route to the second mobile body, and
A step of generating a maximum inclined trajectory up to a target position having a predetermined position and orientation with respect to the target when the target is inclined at an upper limit angle that can be taken.
To the computer
In the step of setting the prohibited route, a program for setting the prohibited route based on the maximum inclined trajectory .
目標物をピックアップするための第1移動体のルートを取得するステップと、 Steps to get the route of the first moving object to pick up the target,
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、 Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. And the step to set as a prohibited route to prohibit
前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、 A step of outputting information based on the prohibited route to the second mobile body, and
を、コンピュータに実行させ、 To the computer
前記禁止ルートとして設定するステップにおいては、前記第1移動体から、前記目標物の位置及び向きの情報に基づいて算出された、前記目標物に対して所定の位置及び向きとなる目標位置までの軌道に関する情報を取得し、前記軌道に対して所定距離範囲内の領域である侵入禁止領域内を前記禁止ルートとして設定し、 In the step of setting as the prohibited route, from the first moving body to the target position calculated based on the information on the position and orientation of the target, which is a predetermined position and orientation with respect to the target. Information on the orbit is acquired, and the intrusion prohibited area, which is an area within a predetermined distance range with respect to the orbit, is set as the prohibited route.
前記侵入禁止領域は、前記第1移動体のルートに対して所定距離範囲内の領域である禁止領域の少なくとも一部に対して重ならないように設定される、プログラム。 A program in which the intrusion prohibited area is set so as not to overlap at least a part of a prohibited area which is an area within a predetermined distance range with respect to the route of the first moving body.
目標物をピックアップするための第1移動体のルートを取得するステップと、 Steps to get the route of the first moving object to pick up the target,
前記目標物の位置及び向きのずれに起因して前記第1移動体が前記ルートから外れて走行する場合に侵入する可能性がある経路を、前記第1移動体以外の第2移動体の走行を禁止する禁止ルートとして設定するステップと、 Traveling of a second moving body other than the first moving body on a route that may enter when the first moving body deviates from the route due to a deviation in the position and orientation of the target object. And the step to set as a prohibited route to prohibit
前記禁止ルートに基づいた情報を、前記第2移動体に出力するステップと、 A step of outputting information based on the prohibited route to the second mobile body, and
前記第1移動体が算出した、前記目標物の位置及び向きの情報に基づいて算出された、前記目標物に対して所定の位置及び向きとなる目標位置までの軌道と、前記第2移動体が算出した前記軌道とに基づき、前記第1移動体と前記第2移動体との目標物をピックアップする順番を設定するステップと、 A trajectory to a target position that is a predetermined position and orientation with respect to the target, calculated based on information on the position and orientation of the target calculated by the first moving body, and the second moving body. The step of setting the order of picking up the target object of the first moving body and the second moving body based on the orbit calculated by
を、コンピュータに実行させる、プログラム。 A program that causes a computer to execute.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020032156A JP7022775B2 (en) | 2020-02-27 | 2020-02-27 | Arithmetic logic unit, mobile body, mobile control system, arithmetic method and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020032156A JP7022775B2 (en) | 2020-02-27 | 2020-02-27 | Arithmetic logic unit, mobile body, mobile control system, arithmetic method and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2021135801A JP2021135801A (en) | 2021-09-13 |
JP7022775B2 true JP7022775B2 (en) | 2022-02-18 |
Family
ID=77661342
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020032156A Active JP7022775B2 (en) | 2020-02-27 | 2020-02-27 | Arithmetic logic unit, mobile body, mobile control system, arithmetic method and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7022775B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016071566A (en) | 2014-09-29 | 2016-05-09 | 日立建機株式会社 | Obstacle avoidance system |
JP2017182502A (en) | 2016-03-30 | 2017-10-05 | 株式会社豊田中央研究所 | Movable body |
JP6632671B1 (en) | 2018-08-28 | 2020-01-22 | 三菱ロジスネクスト株式会社 | Unmanned vehicle control device and unmanned vehicle control method |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2855147B2 (en) * | 1990-03-02 | 1999-02-10 | トヨタ自動車株式会社 | Unmanned car with visual |
-
2020
- 2020-02-27 JP JP2020032156A patent/JP7022775B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016071566A (en) | 2014-09-29 | 2016-05-09 | 日立建機株式会社 | Obstacle avoidance system |
JP2017182502A (en) | 2016-03-30 | 2017-10-05 | 株式会社豊田中央研究所 | Movable body |
JP6632671B1 (en) | 2018-08-28 | 2020-01-22 | 三菱ロジスネクスト株式会社 | Unmanned vehicle control device and unmanned vehicle control method |
Also Published As
Publication number | Publication date |
---|---|
JP2021135801A (en) | 2021-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101141241B1 (en) | Autonomous mobile body, and method and system for controlling the same | |
JP7085576B2 (en) | Mobile control systems, mobiles, control methods and programs | |
JP7300413B2 (en) | Control device, moving body, movement control system, control method and program | |
JP7469494B2 (en) | Method for controlling an automated guided vehicle and a control system configured to carry out said method - Patents.com | |
JP7449770B2 (en) | Terminal, control system, control method and program | |
JP7511504B2 (en) | MOBILE BODY, MOBILE CONTROL SYSTEM, AND METHOD AND PROGRAM FOR CONTROLLING MOBILE BODY | |
JP7022775B2 (en) | Arithmetic logic unit, mobile body, mobile control system, arithmetic method and program | |
JP7300410B2 (en) | Control device, moving body, movement control system, control method and program | |
WO2021171974A1 (en) | Control device, mobile body, movement control system, control method, and program | |
JP7527322B2 (en) | Information processing method, information processing device, and program | |
JP7514874B2 (en) | Information processing method, information processing device, and program | |
JP7187516B2 (en) | Mobile object, mobile control system, mobile object control method and program | |
WO2024004272A1 (en) | Route setting method, program, and moving body | |
WO2024070877A1 (en) | Route setting method, program, and moving body | |
WO2024219068A1 (en) | Control method, program, and mobile body | |
WO2024202133A1 (en) | Control method, program, and mobile body | |
JP7482811B2 (en) | MOBILE BODY CONTROL METHOD, MOBILE BODY, AND PROGRAM | |
JP7257431B2 (en) | Mobile object control method, mobile object and program | |
JP7236526B1 (en) | Mobile object management method, mobile object control method, mobile object and program | |
JP7499288B2 (en) | Information processing method, information processing device, and program | |
WO2024166432A1 (en) | Moving body control method, program, and information processing device | |
WO2024024146A1 (en) | Movement control method, program, and movement control system | |
WO2024202129A1 (en) | Control method for moving body, program, and information processing device | |
JP2024154233A (en) | Control method, program and mobile object |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20200415 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20210615 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210813 |
|
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: 20220201 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220207 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7022775 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |