JP2023072447A - Mobile body control device - Google Patents

Mobile body control device Download PDF

Info

Publication number
JP2023072447A
JP2023072447A JP2021185008A JP2021185008A JP2023072447A JP 2023072447 A JP2023072447 A JP 2023072447A JP 2021185008 A JP2021185008 A JP 2021185008A JP 2021185008 A JP2021185008 A JP 2021185008A JP 2023072447 A JP2023072447 A JP 2023072447A
Authority
JP
Japan
Prior art keywords
route
moving
agv
movement
divided
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.)
Pending
Application number
JP2021185008A
Other languages
Japanese (ja)
Inventor
真之 山本
Masayuki Yamamoto
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.)
Denso Corp
Original Assignee
Denso Corp
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 Denso Corp filed Critical Denso Corp
Priority to JP2021185008A priority Critical patent/JP2023072447A/en
Publication of JP2023072447A publication Critical patent/JP2023072447A/en
Pending legal-status Critical Current

Links

Images

Landscapes

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

Abstract

To provide a mobile body control device capable of optimizing the whole efficiency while avoiding mobile bodies from interfering with each other.SOLUTION: In a movement control system 100, two mobile bodies cannot pass by each other on a route, therefor, when movement routes intersect, in order to avoid a collision between two AGVs 30, one AGV 30 must be waited, and then, the one AGV 30 must be moved after the other AGV 30 is moved, . Therefore, the movement control system calculates a conveyance schedule for minimizing an evaluation value while avoiding a collision between mobile bodies using collision prohibition conditions as constraints of a mixed integer programming problem. In a conveyance step, if one AGV 30 exists on a specific route, the other AGV 30 cannot enter the specific route. The conveyance schedule is determined by solving such a mixed integer programming problem, thereby, it is possible to optimize the whole efficiency while avoiding the AGVs 30 from interfering each other.SELECTED DRAWING: Figure 1

Description

この明細書における開示は、移動体の移動を制御する移動体制御装置に関する。 The disclosure in this specification relates to a mobile body control device that controls movement of a mobile body.

複数の移動体、たとえば自動無人搬送車(AGV:Automated Guided Vehicle)を制御する場合、各AGVの移動スケジュールを適切に設定しなければ、AGV間で衝突するおそれがある。したがって、AGV間の衝突を回避した移動スケジュールを設定する必要がある。従来、このような移動スケジュールを設定するためには、複数の目的地への巡回路の計画問題、すなわち最短路問題に代表される巡回経路長の最小化問題として取り扱われてきた。 When controlling a plurality of moving bodies, for example, automated guided vehicles (AGVs), there is a risk of collision between the AGVs unless the movement schedule of each AGV is appropriately set. Therefore, it is necessary to set a movement schedule that avoids collisions between AGVs. Conventionally, in order to set such travel schedules, the problem of planning tours to a plurality of destinations, that is, the problem of minimizing the length of tours represented by the shortest route problem, has been treated.

また複数のAGVを制御するシステムは、全てのAGVの位置を一つのホストコンピュータを用いて管理し、全てのAGVを同時に考慮して経路計画を実行する集中型の経路計画システムを基本としている。例えば、複数のAGVに対して、現在地から目的地までの経路候補を木構造で表現し、AGV間で衝突が生じないかどうかを逐次チェックしながら、探索木を登録、削除し、全てのAGVの動作を一括して探索するという集中型経路計画法がある。 A system that controls a plurality of AGVs is based on a centralized route planning system that manages the positions of all AGVs using a single host computer and executes route planning considering all AGVs simultaneously. For example, for a plurality of AGVs, route candidates from the current location to the destination are expressed in a tree structure, and while sequentially checking whether or not collisions occur between AGVs, search trees are registered and deleted, and all AGVs There is a centralized route planning method that collectively searches for the motions of

このような集中型経路計画法では、経路計画対象となるAGV台数が増加したとき、可能な経路の候補が膨大となるため、最適な経路を短時間で探索することが困難である。そこで特許文献1に記載の分散型経路計画装置では、AGVが互いに通信して、各AGVがそれぞれ経路計画を計算することで、計算負荷を分散している。 In such a centralized route planning method, when the number of AGVs subject to route planning increases, the number of possible route candidates becomes enormous, making it difficult to search for the optimum route in a short time. Therefore, in the distributed route planning device described in Patent Document 1, the AGVs communicate with each other and each AGV calculates its own route plan, thereby distributing the calculation load.

特開2004-280213号公報Japanese Patent Application Laid-Open No. 2004-280213

特許文献1に記載の装置では、AGV同士の干渉を回避するために、経路における全ての干渉を発見して、各AGVにおいて回避計画計算を繰り返す必要がある。負荷は分散されているが、回避のための計算を繰り返す必要があり、合計の計算負荷が高いという問題がある。さらに最終的に得られる経路計画、すなわち移動スケジュールは、干渉を回避することを優先しているので、効率が良い最適な移動スケジュールでないおそれがある。 In the device described in Patent Document 1, in order to avoid interference between AGVs, it is necessary to discover all interference on the route and repeat the avoidance plan calculation in each AGV. Although the load is distributed, there is a problem that the avoidance calculation needs to be repeated and the total calculation load is high. Furthermore, the finally obtained route plan, that is, the movement schedule, prioritizes avoidance of interference, so there is a risk that it may not be the most efficient movement schedule.

そこで、開示される目的は前述の問題点を鑑みてなされたものであり、移動体のお互いの干渉を回避しつつ、全体の効率を最適化することができる移動体制御装置を提供することを目的とする。 SUMMARY OF THE INVENTION Accordingly, it is an object of the present disclosure to provide a mobile body control apparatus capable of optimizing overall efficiency while avoiding mutual interference of mobile bodies. aim.

本開示は前述の目的を達成するために以下の技術的手段を採用する。 The present disclosure employs the following technical means to achieve the aforementioned objects.

ここに開示された移動体制御装置は、経路上を移動する複数の移動体(30)の移動を制御する移動体制御装置であって、経路は、2つの移動体がすれ違えない経路であり、複数の移動体の出発地点と終着地点とを結ぶ移動経路、および移動経路を移動する移動工程を設定する設定部(141)と、移動経路および移動工程を入力値して、制約条件を満たしつつ所定の評価値を最小化することを目的とする混合整数計画問題を解くことによって、移動体の移動スケジュールを計算する計算部(144)と、移動スケジュールによって各移動体の移動を制御する移動制御部(145)と、を含み、制約条件には、経路を少なくとも移動体よりも大きい長さで分割した分割経路において、移動体が次の分割経路への移動が完了するまで、移動が完了前の分割経路は他の移動体による利用を禁止する衝突禁止条件があり、設定部は、少なくとも2つの移動体の移動経路が重複して、移動体の移動方向が対向することによって、移動体が干渉する可能性がある特定経路では、特定経路に1つの移動体が存在する場合には、移動体が存在する特定経路では他の移動体の使用を禁止するように移動工程を設定する。 The mobile body control device disclosed herein is a mobile body control device for controlling movement of a plurality of mobile bodies (30) moving on a route, and the route is a route in which two mobile bodies do not pass each other. , a setting unit (141) for setting a movement route connecting a starting point and a terminal point of a plurality of moving objects and a movement process for moving the movement route; A calculation unit (144) for calculating a movement schedule of the moving body by solving a mixed integer programming problem aiming at minimizing a predetermined evaluation value while the moving body is moving according to the movement schedule; a control unit (145), wherein the constraint condition is that, in a divided route obtained by dividing the route by a length that is at least longer than that of the moving body, movement is completed until the moving body completes movement to the next divided route. There is a collision prohibition condition that prohibits the use of the previous divided route by other moving bodies, and the setting unit determines that the moving routes of at least two moving bodies overlap and the moving directions of the moving bodies face each other. If there is one moving object on the specific route, the moving process is set to prohibit the use of other moving objects on the specific route where the moving object exists.

このような移動体制御装置に従えば、経路は2つの移動体がすれ違えないので、移動経路が交錯する場合には、移動体の衝突を避けるために、一方の移動体を待機させて、他方の移動体を移動させた後に、一方の移動体を移動させる必要がある。そこで混合整数計画問題の制約条件に衝突禁止条件を用いて、移動体の衝突を避けつつ、評価値を最小化する移動スケジュールを計算する。評価値は、たとえば全ての移動体の移動が完了するまでの時間、全ての移動体の移動時間の総和、移動体の待機時間の総和などである。また混合整数計画問題を解くことによって移動スケジュールを決定するので、複数回計算を繰り返すことを抑制することができる。 According to such a moving body control device, two moving bodies do not pass each other on the route. One mobile must be moved after the other mobile is moved. Therefore, by using the no-collision condition as the constraint condition of the mixed integer programming problem, we calculate a movement schedule that minimizes the evaluation value while avoiding the collision of moving objects. The evaluation value is, for example, the time required to complete the movement of all moving bodies, the total moving time of all moving bodies, the total waiting time of all moving bodies, and the like. Moreover, since the movement schedule is determined by solving the mixed integer programming problem, it is possible to suppress repeating the calculations multiple times.

さらに設定部は、移動体が存在する特定経路では、他の移動体が特定経路を使用することを禁止するので、特定経路に1つの移動体が存在すると、他の移動体が特定経路に進入することができない。たとえば隣接する分割経路に移動体がそれぞれ配置され、互いに位置が入れ替わることを想定する。この場合、移動前も入れ替わり移動後も、1つの分割経路には、1つの移動体が配置され、1つの分割経路に2つの移動体は配置されていないので、字面上では衝突はおきていない。しかし、実際に分割経路を移動する移動体では、経路ではすれ違えないので、衝突せずに入れ替わることはできない。このように衝突禁止条件だけであると、隣接する分割経路に存在する移動体の位置が入れ替わることが許容されるが、設定部によって特定経路への進入が禁止されるので、このような入れ替わることを防止することができる。これによって移動体のお互いの干渉を回避しつつ、全体の効率をより高めることができる。 Furthermore, the setting unit prohibits other moving bodies from using the specific route on the specific route on which the moving body exists. Can not do it. For example, it is assumed that mobile bodies are arranged on adjacent divided paths and their positions are exchanged with each other. In this case, one moving body is placed on one divided path and two moving bodies are not placed on one divided path both before the movement and after the switching movement, so no collision occurs on the character surface. . However, moving bodies that actually move along the divided paths cannot pass each other on the paths, and therefore cannot switch places without colliding with each other. If there is only a collision prohibition condition like this, it is allowed that the positions of the moving bodies existing on the adjacent divided paths are switched, but since the setting unit prohibits the entry into the specific path, such switching is not possible. can be prevented. As a result, the overall efficiency can be further improved while avoiding mutual interference between moving bodies.

なお、前述の各手段の括弧内の符号は、後述する実施形態に記載の具体的手段との対応関係を示す一例である。 It should be noted that the symbols in parentheses of each of the means described above are examples showing the correspondence with specific means described in the embodiments described later.

移動制御システム100の構成を示すブロック図。1 is a block diagram showing the configuration of a movement control system 100; FIG. AGV30の処理を示すフローチャート。4 is a flowchart showing processing of the AGV 30; AGV30の他の処理を示すフローチャート。4 is a flowchart showing other processing of the AGV 30; 検出装置50の処理を示すフローチャート。4 is a flowchart showing processing of the detection device 50; 検出装置50の他の処理を示すフローチャート。4 is a flowchart showing another process of the detection device 50; 搬送指示装置60の処理を示すフローチャート。4 is a flowchart showing processing of the transport instruction device 60; 搬送スケジュールを説明する図。The figure explaining a conveyance schedule. 数式を説明する図。The figure explaining a formula. サーバ40の処理を示すフローチャート。4 is a flowchart showing processing of the server 40; サーバ40の他の処理を示すフローチャート。4 is a flowchart showing another process of the server 40; 第1の計算事例を説明する図。FIG. 4 is a diagram for explaining a first calculation example; 第1の計算事例の搬送工程を示す図。The figure which shows the conveyance process of the 1st example of calculation. 第1の計算事例の搬送スケジュールを示す図。The figure which shows the conveyance schedule of a 1st example of calculation. 第2の計算事例を説明する図。The figure explaining the 2nd example of calculation. 第2の計算事例の搬送工程を示す図。The figure which shows the conveyance process of the 2nd example of calculation. 第2の計算事例の搬送スケジュールを示す図。The figure which shows the conveyance schedule of a 2nd example of calculation. 第3の計算事例を説明する図。The figure explaining the 3rd example of calculation. 第3の計算事例の搬送工程を示す図。The figure which shows the conveyance process of the 3rd example of calculation. 第3の計算事例の搬送スケジュールを示す図。The figure which shows the conveyance schedule of a 3rd example of calculation. 第2実施形態のサーバ40の処理を示すフローチャート。9 is a flowchart showing processing of the server 40 of the second embodiment; 第3実施形態のサーバ40の処理を示すフローチャート。10 is a flowchart showing processing of the server 40 of the third embodiment; 第4実施形態のサーバ40の処理を示すフローチャート。The flowchart which shows the process of the server 40 of 4th Embodiment.

以下、図面を参照しながら本開示を実施するための形態を、複数の形態を用いて説明する。各実施形態で先行する実施形態で説明している事項に対応している部分には同一の参照符を付すか、または先行の参照符号に一文字追加し、重複する説明を略する場合がある。また各実施形態にて構成の一部を説明している場合、構成の他の部分は、先行して説明している実施形態と同様とする。各実施形態で具体的に説明している部分の組合せばかりではなく、特に組合せに支障が生じなければ、実施形態同士を部分的に組合せることも可能である。 A plurality of embodiments for carrying out the present disclosure will be described below with reference to the drawings. In some cases, portions corresponding to the items described in the preceding embodiments are denoted by the same reference numerals, or one character is added to the preceding reference numerals to omit redundant description. Further, when a part of the configuration is explained in each embodiment, the other part of the configuration is assumed to be the same as the previously explained embodiment. It is possible not only to combine the parts specifically described in each embodiment, but also to partially combine the embodiments if there is no problem with the combination.

(第1実施形態)
本開示の第1実施形態に関して、図1~図19を用いて説明する。本実施形態の移動制御システム100は、経路上を移動する複数のAGV30の移動を制御する。移動制御システム100は、図1に示すように、AGV30、サーバ40、検出装置50および搬送指示装置60を含んで構成される。
(First embodiment)
A first embodiment of the present disclosure will be described with reference to FIGS. 1 to 19. FIG. The movement control system 100 of this embodiment controls movement of a plurality of AGVs 30 that move on a route. The movement control system 100 includes an AGV 30, a server 40, a detection device 50, and a transportation instruction device 60, as shown in FIG.

AGV30、サーバ40、検出装置50および搬送指示装置60は、それぞれ記憶媒体に記憶されているプログラムを実行し、各部を制御する制御部を有する。制御部は、少なくとも1つの演算処理装置(CPU)と、プログラムとデータとを記憶する記憶媒体とを有する。各装置の制御部は、たとえばコンピュータによって読み取り可能な記憶媒体を備えるマイクロコンピュータによって実現される。記憶媒体は、コンピュータによって読み取り可能なプログラムおよびデータを非一時的に格納する非遷移的実体的記憶媒体である。記憶媒体は、半導体メモリまたは磁気ディスクなどによって実現される。以下、それぞれの制御部を明示せず制御部に換えて、AGV30、サーバ40、検出装置50および搬送指示装置60と表記する場合がある。 The AGV 30, the server 40, the detection device 50, and the transport instruction device 60 each have a control section that executes programs stored in storage media and controls each section. The control unit has at least one arithmetic processing unit (CPU) and a storage medium that stores programs and data. A control unit of each device is realized by, for example, a microcomputer having a computer-readable storage medium. The storage medium is a non-transitional tangible storage medium that non-temporarily stores computer-readable programs and data. A storage medium is realized by a semiconductor memory, a magnetic disk, or the like. Hereinafter, the AGV 30, the server 40, the detection device 50, and the transport instruction device 60 may be referred to instead of the control units without specifying the respective control units.

AGV30は、移動体であり、電動モータを駆動源として、無人で経路上を走行する。AGV30は、移動スケジュールに従って移動する。移動スケジュールは、AGV30が物を搬送するので、搬送スケジュールともいう。AGV30は、AGV用受信部31、AGV用送信部32、位置検出部33およびAGV用制御部34を含んで構成される。 The AGV 30 is a mobile body, and runs unmanned on a route using an electric motor as a drive source. The AGV 30 moves according to the movement schedule. The movement schedule is also called a transport schedule because the AGV 30 transports the object. The AGV 30 includes an AGV receiver 31 , an AGV transmitter 32 , a position detector 33 and an AGV controller 34 .

AGV用送信部32は、サーバ40と通信して、サーバ40に所定の情報を送信する。AGV用受信部31は、サーバ40と通信して、サーバ40からの情報を受信する。位置検出部33は、AGV30の現在の位置情報を取得する。位置情報は、AGV30の現在位置および進行方向を含む。位置検出部33は、検出した位置情報をAGV用送信部32からサーバ40に定期的に送信する。 The AGV transmission unit 32 communicates with the server 40 and transmits predetermined information to the server 40 . The AGV reception unit 31 communicates with the server 40 and receives information from the server 40 . The position detector 33 acquires current position information of the AGV 30 . The position information includes the current position and traveling direction of AGV 30 . The position detection unit 33 periodically transmits the detected position information from the AGV transmission unit 32 to the server 40 .

位置検出部33は、複数のセンサ情報を組み合わせる複合測位により、位置情報を生成する。位置検出部33は、たとえばGNSS(Global Navigation Satellite System)受信機、慣性センサ、地図データベース、およびロケータECUを備えている。GNSS受信機は、複数の測位衛星からの測位信号を受信する。慣性センサは、AGV30に作用する慣性力を検出するセンサである。慣性センサは、例えばジャイロセンサおよび加速度センサを備える。地図データベースは、不揮発性メモリに記憶されており、経路のリンクデータおよびノードデータを含む。ロケータECUは、GNSS受信機で受信する測位信号、地図データベースの地図データ、および慣性センサの計測結果を組み合わせることにより、AGV30の現在位置を逐次測位する。現在位置は、例えば緯度経度の座標で表される。 The position detection unit 33 generates position information by composite positioning that combines a plurality of sensor information. The position detection unit 33 includes, for example, a GNSS (Global Navigation Satellite System) receiver, an inertial sensor, a map database, and a locator ECU. A GNSS receiver receives positioning signals from a plurality of positioning satellites. The inertial sensor is a sensor that detects inertial force acting on the AGV 30 . Inertial sensors include, for example, gyro sensors and acceleration sensors. The map database is stored in non-volatile memory and includes route link data and node data. The locator ECU sequentially locates the current position of the AGV 30 by combining positioning signals received by the GNSS receiver, map data of the map database, and measurement results of the inertial sensor. The current position is represented by, for example, latitude and longitude coordinates.

AGV用制御部34は、AGV用受信部31が受信した搬送スケジュールに従って移動するように駆動部を制御する。搬送スケジュールには、移動経路と、各地点を出発する出発時刻、各地点に到着する到着時刻、および各地点に停止する停止時間などが含まれる。 The AGV control unit 34 controls the driving unit to move according to the transfer schedule received by the AGV receiving unit 31 . The transport schedule includes a travel route, departure times at each point, arrival times at each point, stop times at each point, and the like.

次にAGV30の処理について、図2および図3のフローチャートを用いて説明する。図2および図3に示すフローチャートは、AGV30が電源投入状態において、短時間に繰り返し実行する。 Next, the processing of the AGV 30 will be explained using the flow charts of FIGS. 2 and 3. FIG. The flowcharts shown in FIGS. 2 and 3 are repeatedly executed in a short time while the AGV 30 is powered on.

まず、図2のフローチャートに関して説明する。ステップS1では、AGV用受信部31が搬送スケジュールを受信すると、ステップS2に移る。ステップS2では、搬送スケジュールに従って移動するように駆動部を制御し、本フローを終了する。これによってAGV30は、搬送スケジュールを受信すると、搬送スケジュールに従って移動する。 First, the flowchart of FIG. 2 will be described. In step S1, when the AGV receiver 31 receives the transport schedule, the process proceeds to step S2. In step S2, the drive unit is controlled to move according to the transfer schedule, and this flow ends. Accordingly, when the AGV 30 receives the transportation schedule, it moves according to the transportation schedule.

次に、図3のフローチャートに関して説明する。ステップS1では、位置検出部33によって現在位置を検出し、ステップS2に移る。ステップS2では、検出した現在位置を示す位置情報をサーバ40に送信するようにAGV用送信部32を制御し、本フローを終了する。これによってAGV30は、現在位置を定期的にサーバ40に送信する。 Next, the flowchart of FIG. 3 will be described. In step S1, the current position is detected by the position detector 33, and the process proceeds to step S2. In step S2, the AGV transmitter 32 is controlled to transmit the detected positional information indicating the current position to the server 40, and this flow ends. Thereby, the AGV 30 periodically transmits the current position to the server 40 .

次に、検出装置50に関して説明する。検出装置50は、経路に配置されて、経路の状態および経路上の物体を監視する。経路上の物体には、AGV30および経路上を移動する他の物体、たとえば人物などを含む。検出装置50は、監視した監視情報をサーバ40に送信する。また検出装置50は、サーバ40からの指示を出力する。指示は、たとえば人物の移動を許可または禁止を促す指示である。 Next, the detection device 50 will be described. A sensing device 50 is placed in the path to monitor path conditions and objects on the path. Objects on the path include the AGV 30 and other objects moving on the path, such as people. The detection device 50 transmits monitored information to the server 40 . The detection device 50 also outputs an instruction from the server 40 . The instruction is, for example, an instruction to permit or prohibit movement of a person.

検出装置50は、図1に示すように、周辺監視部51、検出装置用受信部52、検出装置用送信部53および指示部54を含んで構成される。検出装置用送信部53は、サーバ40と通信して、サーバ40に所定の情報を送信する。検出装置用受信部52は、サーバ40と通信して、サーバ40からの情報を受信する。周辺監視部51は、検出装置50の周辺監視に用いられる。周辺監視部51は、検出した監視情報を検出装置用送信部53からサーバ40に送信する。 As shown in FIG. 1, the detection device 50 includes a periphery monitoring unit 51, a detection device reception unit 52, a detection device transmission unit 53, and an instruction unit . The detecting device transmission unit 53 communicates with the server 40 and transmits predetermined information to the server 40 . The detecting device receiving section 52 communicates with the server 40 and receives information from the server 40 . The periphery monitoring unit 51 is used for monitoring the periphery of the detection device 50 . The periphery monitoring unit 51 transmits the detected monitoring information from the detecting device transmission unit 53 to the server 40 .

周辺監視部51は、監視情報として、経路を移動するAGV30およびAGV30以外の動作物体の移動情報を検出する。移動情報は、移動方向および移動速度である。動作物体は、たとえば人物である。周辺監視部51は、また監視情報として、経路上の異常を検出する。経路上の異常は、経路上に移動を妨げる障害物の有無を検出する。周辺監視部51は、経路上の異常を検出する異常情報をとして出力する。 Perimeter monitoring unit 51 detects, as monitoring information, movement information of AGV 30 moving along a route and moving objects other than AGV 30 . The movement information is movement direction and movement speed. A working object is, for example, a person. The perimeter monitoring unit 51 also detects an abnormality on the route as monitoring information. Abnormalities on the route are detected by detecting the presence or absence of obstacles that hinder movement on the route. The peripheral monitoring unit 51 outputs abnormality information for detecting an abnormality on the route.

周辺監視部51は、周辺をセンシングする。周辺監視部51は、たとえば画像センサおよび超音波ソナーによって実現される。画像センサは、周辺を撮像する撮像装置である。超音波ソナーは、探査波を送信して物体で反射される反射波を受信することで、検出装置50から物体上の測距点までの距離を検出するセンサである。測距点は、物体の表面上で探査波を反射した部位である。超音波ソナーのセンシング範囲は、周辺の所定範囲、たとえば数メートルである。 The surroundings monitoring unit 51 senses the surroundings. Periphery monitoring unit 51 is realized by, for example, an image sensor and an ultrasonic sonar. An image sensor is an imaging device that captures an image of the surroundings. The ultrasonic sonar is a sensor that detects the distance from the detection device 50 to a range-finding point on an object by transmitting search waves and receiving reflected waves reflected by the object. A ranging point is a portion on the surface of an object where the probe wave is reflected. The sensing range of ultrasonic sonar is a predetermined peripheral range, for example, several meters.

指示部54は、周辺に位置する動作物体、たとえば人物への移動を指示する。指示部54は、たとえば音声を出力、および画像を表示することで指示を行う。指示部54は、たとえば経路が交差する交点で、信号機と同様の役割をする。指示部54は、サーバ40から送信された指示を検出装置用受信部52から与えられると、受信した指示を出力する。 The instruction unit 54 instructs a moving object located in the vicinity, such as a person, to move. Instruction unit 54 gives instructions by, for example, outputting audio and displaying images. The indicator 54 plays the same role as a traffic light, for example, at an intersection where paths intersect. When receiving the instruction transmitted from the server 40 from the detecting device receiving section 52, the instruction section 54 outputs the received instruction.

次に検出装置50の処理について、図4および図5のフローチャートを用いて説明する。図4および図5に示すフローチャートは、検出装置50が電源投入状態において、短時間に繰り返し実行する。 Next, the processing of the detection device 50 will be described with reference to the flow charts of FIGS. 4 and 5. FIG. The flowcharts shown in FIGS. 4 and 5 are repeatedly executed in a short period of time while the detection device 50 is powered on.

まず、図4のフローチャートに関して説明する。ステップS1では、周辺監視部51が移動物体、動作物体または経路異常を検出したか否かを判断し、検出した場合にはステップS2に移り、検出していない場合には、本フローを終了する。ステップS2では、検出した移動情報、または異常情報を監視情報としてサーバ40に送信するように検出装置用送信部53を制御し、本フローを終了する。これによって検出装置50は、監視情報をサーバ40に定期的に送信する。 First, the flowchart of FIG. 4 will be described. In step S1, it is determined whether or not the periphery monitoring unit 51 has detected a moving object, a moving object, or a path abnormality. . In step S2, the detecting device transmission unit 53 is controlled to transmit the detected movement information or abnormality information to the server 40 as monitoring information, and this flow ends. Accordingly, the detection device 50 periodically transmits monitoring information to the server 40 .

次に、図5のフローチャートに関して説明する。ステップS1では、検出装置用受信部52が指示を受信すると、ステップS2に移る。ステップS2では、受信した指示を出力するように指示部54を制御し、本フローを終了する。これによって検出装置50は、受信した指示部54を出力することができる。 Next, the flowchart of FIG. 5 will be described. In step S1, when the detection device receiving section 52 receives the instruction, the process proceeds to step S2. In step S2, the instruction unit 54 is controlled to output the received instruction, and this flow ends. Thereby, the detecting device 50 can output the received instruction section 54 .

次に、搬送指示装置60に関して説明する。搬送指示装置60は、複数のAGV30に対する搬送指示を受け付けて、サーバ40に搬送指示を送信する。搬送指示装置60は、たとえば管理者によって操作される情報端末である。搬送指示装置60は、図1に示すように、指示監視部61、搬送用受信部62、搬送用送信部63、および入力部64を含んで構成される。搬送指示装置60は、たとえば外部と通信可能なパーソナルコンピュータ(Personal Computer:略称PC)およびスマートフォンなどの携帯型情報端末によって実現される。 Next, the transport instruction device 60 will be described. The transportation instruction device 60 receives transportation instructions for a plurality of AGVs 30 and transmits the transportation instructions to the server 40 . The transportation instructing device 60 is an information terminal operated by an administrator, for example. The transportation instruction device 60 includes an instruction monitoring unit 61, a transportation reception unit 62, a transportation transmission unit 63, and an input unit 64, as shown in FIG. The transportation instruction device 60 is implemented by, for example, a personal computer (abbreviated as PC) capable of communicating with the outside and a portable information terminal such as a smart phone.

搬送用送信部63は、サーバ40と通信して、サーバ40に所定の情報を送信する。搬送用受信部62は、サーバ40と通信して、サーバ40からの情報を受信する。入力部64は、管理者によって操作されて、搬送指示が入力される。入力部64は、搬送指示が入力されると、搬送用送信部63から搬送指示をサーバ40に送信する。 The transportation transmission unit 63 communicates with the server 40 and transmits predetermined information to the server 40 . The transport receiver 62 communicates with the server 40 and receives information from the server 40 . The input unit 64 is operated by the administrator to input transport instructions. When the transport instruction is input, the input unit 64 transmits the transport instruction from the transport transmission unit 63 to the server 40 .

指示監視部61は、入力部64から入力される搬送指示を監視する。指示監視部61は、現在実行中の搬送指示とは異なる新たな搬送指示が入力されると、入力された搬送指示が新しい搬送指示であることを示す情報とともに、搬送用送信部63からサーバ40に送信する。換言すると、更新された搬送指示を搬送用送信部63から送信するように制御する。 The instruction monitoring section 61 monitors the transport instruction input from the input section 64 . When a new transport instruction different from the transport instruction currently being executed is input, the instruction monitoring unit 61 transmits information indicating that the input transport instruction is a new transport instruction from the transport transmission unit 63 to the server 40. Send to In other words, the updated transport instruction is controlled to be transmitted from the transport transmitter 63 .

次に搬送指示装置60の処理について、図6のフローチャートを用いて説明する。図6に示すフローチャートは、搬送指示装置60が電源投入状態において、短時間に繰り返し実行する。ステップS1では、搬送指示の有無を監視し、ステップS2に移る。搬送指示の有無は、指示監視部61によって行われる。ステップS3では、搬送指示があったか否かを判断し、搬送指示があった場合にはステップS3に移り、搬送指示がない場合は、ステップS1に戻る。ステップS3では、搬送指示があったので、搬送指示をサーバ40に送信するように搬送用送信部63を制御し、本フローを終了する。これによって搬送指示装置60は、新しい搬送指示を受け付けると、新しい搬送指示がサーバ40に送信される。 Next, the processing of the transport instructing device 60 will be described using the flowchart of FIG. The flow chart shown in FIG. 6 is repeatedly executed in a short period of time while the transport instruction device 60 is powered on. In step S1, the presence or absence of a transport instruction is monitored, and the process proceeds to step S2. Whether or not there is a transport instruction is determined by the instruction monitoring section 61 . In step S3, it is determined whether or not there is a transport instruction, and if there is a transport instruction, the process proceeds to step S3, and if there is no transport instruction, the process returns to step S1. In step S3, since there is a transport instruction, the transport transmission unit 63 is controlled to transmit the transport instruction to the server 40, and this flow ends. Accordingly, when receiving a new transport instruction, the transport instruction device 60 transmits the new transport instruction to the server 40 .

次に、サーバ40に関して説明する。サーバ40は、移動体制御装置であって、経路上を移動する複数のAGV30の移動を制御する。サーバ40は、具体的には、AGV30に移動スケジュールを送信して、AGV30の移動を制御する。サーバ40は、図1に示すように、記憶部41、サーバ用受信部42、サーバ用送信部43およびサーバ用制御部45を含んで構成される。 Next, the server 40 will be explained. The server 40 is a mobile body control device, and controls movement of a plurality of AGVs 30 that move on a route. Specifically, the server 40 transmits a movement schedule to the AGV 30 and controls movement of the AGV 30 . The server 40 includes a storage unit 41, a server reception unit 42, a server transmission unit 43, and a server control unit 45, as shown in FIG.

サーバ用送信部43は、AGV30、検出装置50、および搬送指示装置60と通信して、各装置に所定の情報を送信する。またサーバ用受信部42は、AGV30、検出装置50、および搬送指示装置60と通信して、各装置からの情報を受信する。記憶部41には、AGV30を管理するための情報が記憶されている。記憶部41には、搬送指示装置60から送信された搬送指示が記憶される。 The server transmission unit 43 communicates with the AGV 30, the detection device 50, and the transportation instruction device 60, and transmits predetermined information to each device. The server reception unit 42 also communicates with the AGV 30, the detection device 50, and the transportation instruction device 60 to receive information from each device. Information for managing the AGV 30 is stored in the storage unit 41 . The transport instruction transmitted from the transport instruction device 60 is stored in the storage unit 41 .

サーバ用制御部45は、制御部であって、記憶部41からの必要な情報を読み込み、AGV30の移動を制御する。サーバ用制御部45は、図1に示すように、機能ブロックとして、設定部141、予測部142、判定部143、計算部144、および移動制御部145を含んで構成される。またサーバ用制御部45は、取得部としても機能し、サーバ用受信部42を介して、位置情報および監視情報を取得する。したがってサーバ用制御部45は、AGV30の現在位置、経路を移動するAGV30以外の動作物体の移動情報、および経路における異常、すなわち経路の移動不可部分を取得する。 The server control unit 45 is a control unit that reads necessary information from the storage unit 41 and controls movement of the AGV 30 . As shown in FIG. 1, the server control unit 45 includes a setting unit 141, a prediction unit 142, a determination unit 143, a calculation unit 144, and a movement control unit 145 as functional blocks. The server control unit 45 also functions as an acquisition unit, and acquires position information and monitoring information via the server reception unit 42 . Therefore, the server control unit 45 acquires the current position of the AGV 30, the movement information of the moving object other than the AGV 30 moving along the route, and the abnormality in the route, that is, the non-movable portion of the route.

設定部141は、複数のAGV30の出発地点と終着地点とを結ぶ移動経路、および移動経路を移動する移動工程を設定する。また経由地がある場合には、経由地を経由する移動経路を設定する。さらに経由地に順番がある場合には、経由地の順番を考慮した移動経路を設定する。さらにAGV30の移動に優先順位がある場合には、優先順を考慮して移動工程を設定する。 The setting unit 141 sets a movement route connecting the departure point and the end point of the plurality of AGVs 30 and a movement process for moving along the movement route. Also, if there is a waypoint, a moving route passing through the waypoint is set. Furthermore, if there is an order to the waypoints, the moving route is set in consideration of the order of the waypoints. Furthermore, when the movement of the AGV 30 has priority, the movement process is set in consideration of the priority.

移動工程は、本実施形態では搬送工程ともいう。設定部141は、出発地点と終着地点とを結ぶ最短経路を移動経路として設定する。また設定部141は、複数のAGV30の移動経路の重複が少なくなるように移動経路を設定する。したがって、たとえば最短経路が複数ある場合には、重複が少ない移動経路を設定する。また最短経路を優先するか、重複をしないことを優先するかは、予め設定可能であってもよい。たとえば最短経路が1つしかなく、重複を回避できない場合には、重複回避を優先する場合には、最短経路よりも遠回りになる経路を設定してもよい。 The moving process is also referred to as a transporting process in the present embodiment. The setting unit 141 sets the shortest route connecting the departure point and the destination point as the movement route. Further, the setting unit 141 sets the movement routes so that overlap between the movement routes of the plurality of AGVs 30 is reduced. Therefore, for example, when there are a plurality of shortest routes, a travel route with less duplication is set. Further, it may be possible to set in advance whether to give priority to the shortest route or not to overlap. For example, if there is only one shortest route and overlap cannot be avoided, a route that is longer than the shortest route may be set if priority is given to avoiding duplication.

計算部144は、移動経路および移動工程を入力値して、制約条件を満たしつつ所定の評価値を最小化することを目的とする混合整数計画問題を解くことによって、移動体の移動スケジュールを計算する。 The calculation unit 144 calculates the movement schedule of the moving object by inputting the movement route and the movement process and solving the mixed integer programming problem aiming at minimizing the predetermined evaluation value while satisfying the constraint conditions. do.

具体的には、本実施形態では、blocking job shop型のスケジューリング問題を同時に複数の機械または設備を利用できるように定式化し、利用する経路に加え、先に利用する経路も工程に加えたスケジューリング問題にすることで、干渉を回避するzone controlを表現可能にしている。これによって干渉を回避しながら全体の効率を最適化する搬送スケジュールが計算可能になる。 Specifically, in this embodiment, the blocking job shop type scheduling problem is formulated so that a plurality of machines or facilities can be used at the same time. By doing so, it is possible to express zone control that avoids interference. This allows a transfer schedule to be calculated that optimizes overall efficiency while avoiding interference.

たとえば他のAGV30が進行方向に隣接する分割経路に存在する場合には、他のAGV30が通り過ぎてから、隣接する分割経路への進入を許可する。これは一般に、blocking job shop schedulingといわれる。これによって衝突を回避する。さらに本実施形態では、AGV30が存在する場所と重複経路の出入口も同時に確保して他のAGV30の重複経路への進入を禁止し、正面衝突回避のzone controlを表現する。このために、blocking job shop型のスケジューリング問題を、いわゆる複数機械同時利用へ定式化を拡張する。これによって干渉のない搬送スケジューリングを計算できるため、AGV30の動きを把握するための設備は不要となる。 For example, if another AGV 30 exists on a split route adjacent in the traveling direction, the vehicle is allowed to enter the adjacent split route after the other AGV 30 has passed. This is commonly referred to as blocking job shop scheduling. This avoids collisions. Furthermore, in the present embodiment, the location where the AGV 30 exists and the entrance/exit of the overlapping route are secured at the same time, and entry into the overlapping route of other AGV 30 is prohibited to express zone control for head-on collision avoidance. For this purpose, we extend the formulation of the blocking job shop type scheduling problem to the so-called simultaneous use of multiple machines. Since this makes it possible to calculate transport scheduling without interference, there is no need for equipment for grasping the movement of the AGV 30 .

移動制御部145は、搬送スケジュールによって各AGV30の移動を制御する。移動制御部145は、搬送スケジュールを各AGV30に送信するようにサーバ用送信部43を制御する。予測部142は、検出装置50が検出した監視情報に基づいて、AGV30以外の人などの動きを予測する。たとえば検出した人物が、経路のどちらの方向に進むのかを移動情報を用いて予測する。判定部143は、搬送スケジュールが更新されたとき、新たな搬送指示が発生したときに、搬送スケジュールを再計算すべきか否かを判断する。 The movement control unit 145 controls movement of each AGV 30 according to the transportation schedule. The movement control unit 145 controls the server transmission unit 43 to transmit the transportation schedule to each AGV 30 . The prediction unit 142 predicts movements of people other than the AGV 30 based on the monitoring information detected by the detection device 50 . For example, it predicts in which direction along the route the detected person will proceed using movement information. The determination unit 143 determines whether or not to recalculate the transportation schedule when the transportation schedule is updated or when a new transportation instruction is issued.

次に、図7を用いて、搬送スケジュールに関して説明する。図7では、比較例では遅延や遠回りが起き、実施例では最適解が求まることを示す。経路は、複数の分割経路から構成される。たとえば図7に示す経路では、7つの分割経路から構成される。1つの分割経路には、1つのAGV30しか位置することができない。また経路は、2つのAGV30がすれ違えない。したがって分割経路でも、2つのAGV30がすれ違うことができない。 Next, the transfer schedule will be described with reference to FIG. FIG. 7 shows that delays and detours occur in the comparative example, and optimum solutions are obtained in the embodiment. A route is composed of a plurality of divided routes. For example, the route shown in FIG. 7 consists of seven divided routes. Only one AGV 30 can be positioned in one split path. Also, the two AGVs 30 do not pass each other on the route. Therefore, even on a split route, the two AGVs 30 cannot pass each other.

移動工程は、ある時刻にあるAGV30が位置する分割経路を示す。たとえば図7に示すように、現時点では、経路に7つの分割経路があり、第1分割経路R1に第1AGV30Aが位置し、第6分割経路R6に第2AGV30Bが位置する。そしてその後、各AGV30が移動することで、位置する分割経路が変化する。図7に示す例では、第1AGV30Aは、出発地点が第1分割経路R1であり、到着地点が第5分割経路R5である。また第2AGV30Bは、出発地点が第6分割経路R6であり、到着地点が第7分割経路R7である。この場合、2つの移動経路は、第2分割経路R2で交差するので、いずれか一方のAGV30を先に通過させ、他方を後に通過させることになる。 A movement step indicates a split route on which an AGV 30 is located at a certain time. For example, as shown in FIG. 7, the route currently has seven divided routes, the first AGV 30A is located on the first divided route R1, and the second AGV 30B is located on the sixth divided route R6. After that, as each AGV 30 moves, the position of the split route changes. In the example shown in FIG. 7, the first AGV 30A has a departure point on the first divided route R1 and an arrival point on the fifth divided route R5. The second AGV 30B has a departure point on the sixth divided route R6 and an arrival point on the seventh divided route R7. In this case, since the two movement routes intersect at the second divided route R2, one of the AGVs 30 is passed first and the other is passed later.

第1比較例では、第2AGV30Bを先に第2分割経路R2を通過させ、その後に第1AGV30Aを第2分割経路R2を通過している。これによって第2AGV30Bの移動は先に完了するが、第1AGV30Aを待たせることで、全体の搬送時間が長くなる。 In the first comparative example, the second AGV 30B first passes through the second split route R2, and then the first AGV 30A passes through the second split route R2. Although the movement of the second AGV 30B is thereby completed first, the waiting time of the first AGV 30A lengthens the overall transportation time.

また第2比較例では、第2AGV30Bを最短経路ではなく、第2分割経路R2を迂回させ、第1AGV30Aと第2AGV30Bを同時に移動させている。これによって第2AGV30Bを遠回りさせることになり、移動全体が非効率となる。 Further, in the second comparative example, the second AGV 30B does not take the shortest route but bypasses the second divided route R2 to move the first AGV 30A and the second AGV 30B at the same time. This causes the second AGV 30B to take a detour, making the whole movement inefficient.

そして第1実施例では、第1AGV30Aを先に第2分割経路R2を通過させ、その後に第2AGV30Bを第2分割経路R2を通過している。第2AGV30Bを待たせて、先に第1AGV30Aを通過させることで、効率的な移動を実現しつつ、衝突を回避している。このように本実施形態では、衝突を回避し、全ての移動が完了するまでの時間を短くするように移動スケジュールを設定する。 In the first embodiment, the first AGV 30A first passes through the second divided route R2, and then the second AGV 30B passes through the second divided route R2. By making the second AGV 30B wait and passing the first AGV 30A first, efficient movement is realized and collision is avoided. Thus, in this embodiment, the movement schedule is set so as to avoid collisions and shorten the time until all movements are completed.

次に、具体的な搬送スケジュールの計算方法に関して図8を用いて説明する。計算部144は、前述のように、移動経路および移動工程を入力値して、制約条件を満たしつつ所定の評価値を最小化することを目的とする混合整数計画問題を解くことによって、移動体の移動スケジュールを計算する。混合整数計画問題は、混合整数最適化問題ともいい、整数値を取る変数と実数値を取る変数が混在している整数計画問題のことである。整数計画問題は、整数変数を含む最適化問題のことである。スケジューリング問題とは、人や機械といったリソースに対してジョブのスケジュールを割当てる問題である。本実施形態では、リソースは経路に該当し、ジョブがAGV30の移動に該当する。 Next, a specific transfer schedule calculation method will be described with reference to FIG. As described above, the calculation unit 144 inputs the movement path and the movement process, and solves the mixed integer programming problem for the purpose of minimizing the predetermined evaluation value while satisfying the constraint conditions. Calculate the travel schedule for A mixed integer programming problem, also called a mixed integer optimization problem, is an integer programming problem in which integer-valued variables and real-valued variables are mixed. Integer programming problems are optimization problems involving integer variables. The scheduling problem is the problem of assigning job schedules to resources such as humans and machines. In this embodiment, the resource corresponds to the route, and the job corresponds to movement of the AGV 30 .

最適化問題とは、条件を満たす候補の中から目的に対して最適なものを数学的に見つける問題である。最適化問題は、決定変数、目的関数および制約条件という3つの要素から構成される。決定変数は、意思決定や制御の対象で、値を決めたいものである。本実施形態では、決定変数は、搬送スケジュールが該当する。目的関数は、決定変数が目的に対して良いか悪いかを判断するための関数である。本実施形態では、メイクスパンを最小化、すなわち最後のジョブの終了時間が早くなることを目的とする関数である。 An optimization problem is a problem of mathematically finding the optimal one for a purpose from candidates that satisfy a condition. An optimization problem consists of three elements: decision variables, objective functions and constraints. A decision variable is the object of decision-making or control, for which you want to determine a value. In this embodiment, the decision variable corresponds to the transportation schedule. An objective function is a function for judging whether a decision variable is good or bad for an objective. In this embodiment, the function is intended to minimize makespan, that is, to shorten the end time of the last job.

制約条件は、候補となる決定変数が満たす必要のある条件である。本実施形態では、制約条件には、衝突禁止条件が含まれる。衝突禁止条件は、経路を少なくともAGV30よりも大きい長さで分割した分割経路において、1つの分割経路には、1つのAGV30の存在を許可し、2つのAGV30の存在を禁止する条件である。換言すると、衝突禁止条件は、分割経路において、AGV30が次の分割経路への移動が完了するまで、移動が完了前の分割経路は他のAGV30による利用を禁止する条件である。 Constraints are conditions that candidate decision variables must satisfy. In this embodiment, the constraint includes a no-collision condition. The no-collision condition is a condition that permits the presence of one AGV 30 and prohibits the presence of two AGVs 30 in a divided route obtained by dividing the route by a length that is at least longer than the AGV 30 . In other words, the collision prohibition condition is a condition that prohibits other AGVs 30 from using the divided route before the movement is completed until the AGV 30 completes the movement to the next divided route.

また最適化問題に入力される搬送工程は、少なくとも2つのAGV30の移動経路が重複して、AGV30の移動方向が対向することによって、AGV30が干渉する可能性がある特定経路では、特定経路に1つのAGV30が存在する場合には、AGV30が存在する特定経路に他のAGV30の使用を禁止するように設定されている。 Also, in the transport process input to the optimization problem, at least two AGV 30 movement paths overlap and the AGV 30 movement directions are opposite, and there is a possibility that the AGV 30 will interfere. When two AGVs 30 exist, it is set to prohibit the use of other AGVs 30 on the specific route where the AGV 30 exists.

さらに設定部141は、特定経路に1つのAGV30が存在する場合には、AGV30が存在する特定経路のうち移動体の移動方向の部分への他のAGV30の使用を禁止し、移動方向とは反対方向の部分の使用を許可するように移動工程を設定する。 Furthermore, when one AGV 30 exists on the specific route, the setting unit 141 prohibits the use of other AGVs 30 on the part of the specific route on which the AGV 30 exists in the moving direction of the moving object, Set the move process to allow the use of the direction part.

図8の右端の欄に示すように、本実施形態は、blocking job shop schedulingに示す式を用いる。図8の左の欄に示す一般的なjob shopスケジューリングの定式化に対して、図8の右の欄に示す式は、blocking job shop スケジューリングの定式化である。 As shown in the rightmost column of FIG. 8, this embodiment uses the formula shown in blocking job shop scheduling. In contrast to the general job shop scheduling formulation shown in the left column of FIG. 8, the equation shown in the right column of FIG. 8 is the blocking job shop scheduling formulation.

次に図8の右の本実施形態の式に関して説明する。ジョブやプロセスに関する情報は、変数の添え字で示す。たとえば、Sα,iは、ジョブαのi番目のタスクであることを示す添え字である。sは、ジョブの開始時間を示し、pはジョブの処理時間を示し、Cmaxは、スケジュールのメイクスパンを示す。Rは、リソースの集合を示し、Pは製品の集合を示し、QαおよびQβは、製品αと製品βのジョブの集合を示す。Mは、大きい正の数を示す。そしてxα,i,β,jは、0-1の整数を示し、Jα,iとJβ,jの製造手順を示す。 Next, the equations of this embodiment on the right side of FIG. 8 will be described. Information about jobs and processes is indicated by variable subscripts. For example, S α,i is a subscript indicating the i-th task of job α. s indicates the start time of the job, p indicates the processing time of the job, and Cmax indicates the makespan of the schedule. R denotes the set of resources, P denotes the set of products, and Q α and Q β denote the sets of jobs for product α and product β. M denotes a large positive number. And x α,i, β,j represents an integer from 0 to 1 and represents the manufacturing procedure of J α,i and J β,j .

式(1)の目的関数は、メイクスパンを最小化することを目的とする。そして、式(2)のCmaxは各製品の最後のジョブの最大終了時間を表している。式(3)は開始時刻に対する非負の制約を示し、式(4)は各ジョブが先行するジョブ動作の後に動作することを示している。したがって、次のジョブα,i+1の開始時刻は、処理終了時刻Sα,i+pα,iよりも製造資源の分だけ遅くなければならない。 The objective function of equation (1) aims at minimizing the makespan. And C max in equation (2) represents the maximum finish time of the last job for each product. Equation (3) indicates a non-negative constraint on the start time, and Equation (4) indicates that each job runs after the preceding job runs. Therefore, the start time of the next job α,i+1 must be later than the processing end time S α,i +p α,i by the manufacturing resources.

式(5)、(6)は、移動体が次の分割経路へ移動が完了してからでないとその分割経路は他の移動体により利用を許さない衝突禁止条件である。xα,i,β,jは、ジョブαのi番目のタスクが製品βのj番目のジョブよりも先に操作された場合に0を取る決定変数を表す。 Equations (5) and (6) are collision prohibition conditions that do not permit another mobile unit to use the divided route until the mobile unit has completed moving to the next divided route. x α,i,β,j represents a decision variable that takes 0 if the i-th task of job α is operated before the j-th job of product β.

次に、サーバ40の処理について、図9および図10のフローチャートを用いて説明する。図9および図10に示すフローチャートは、サーバ40が電源投入状態において、短時間に繰り返し実行する。 Next, processing of the server 40 will be described using the flowcharts of FIGS. 9 and 10. FIG. The flowcharts shown in FIGS. 9 and 10 are repeatedly executed in a short time while the server 40 is powered on.

まず、図9のフローチャートに関して説明する。ステップS1では、搬送工程を取得し、ステップS2に移る。ステップS2では、計算部144が搬送スケジュールを計算し、ステップS3に移る。ステップS3では、搬送スケジュールをAGV30へ送信するようにサーバ用送信部43を制御し、本フローを終了する。このようにサーバ用制御部45は、搬送工程に基づいて、搬送スケジュールを計算し、計算した搬送スケジュールをAGV30に送信する。 First, the flowchart of FIG. 9 will be described. In step S1, the transfer process is obtained, and the process proceeds to step S2. In step S2, the calculation unit 144 calculates the transport schedule, and the process proceeds to step S3. In step S3, the server transmission unit 43 is controlled to transmit the transportation schedule to the AGV 30, and this flow ends. In this manner, the server control unit 45 calculates the transfer schedule based on the transfer process and transmits the calculated transfer schedule to the AGV 30 .

次に、図10のフローチャートに関して説明する。ステップS1では、搬送指示をサーバ用受信部42が受信し、ステップS2に移る。ステップS2では、判定部143が新しい搬送指示によって搬送スケジュールの再計算の有無が必要か否かを判断する。そして、ステップS2では、再計算が必要な場合には、ステップS3に移り、必要でない場合には、本フローを終了する。再計算が必要な場合とは、新たなAGV30が追加された場合、新たな搬送先が追加された場合である。再計算が不要な場合とは、新しい搬送指示が搬送先および搬送経路は変わらないが、搬送量がかわった場合などである。 Next, the flowchart of FIG. 10 will be described. In step S1, the server reception unit 42 receives the transport instruction, and the process proceeds to step S2. In step S2, the determination unit 143 determines whether or not the transportation schedule needs to be recalculated according to the new transportation instruction. Then, in step S2, if recalculation is necessary, the process moves to step S3, and if not, the flow ends. Recalculation is required when a new AGV 30 is added or when a new transport destination is added. A case where recalculation is unnecessary is a case where a new transfer instruction changes the transfer amount although the transfer destination and transfer route are the same.

ステップS3では、新しい搬送指示における搬送工程を取得し、ステップS4に移る。ステップS4では、計算部144が搬送スケジュールを計算し、ステップS5に移る。ステップS5では、搬送スケジュールをAGV30へ送信するようにサーバ用送信部43を制御し、本フローを終了する。このようにサーバ用制御部45は、搬送指示によって再計算が必要な場合には、新しい搬送工程に基づいて、搬送スケジュールを再計算し、再計算した搬送スケジュールをAGV30に送信する。 In step S3, the transfer process in the new transfer instruction is obtained, and the process proceeds to step S4. In step S4, the calculation unit 144 calculates the transfer schedule, and the process proceeds to step S5. In step S5, the server transmission unit 43 is controlled to transmit the transport schedule to the AGV 30, and this flow ends. In this manner, the server control unit 45 recalculates the transfer schedule based on the new transfer process and transmits the recalculated transfer schedule to the AGV 30 when the transfer instruction requires recalculation.

次に、搬送スケジュールの3つの計算事例に関して、図11~図19を用いて説明する。まず第1の計算事例に関して説明する。第1の計算事例の経路には、図11に示すように、7つの分割経路があり、スタート時点では、第1分割経路R1に第1AGV30Aが位置し、第5分割経路R5に第2AGV30Bが位置する。そして、第1AGV30Aは、出発地点が第1分割経路R1であり、到着地点が第6分割経路R6である。また第2AGV30Bは、出発地点が第5分割経路R5であり、到着地点が第7分割経路R7である。この場合、2つのAGV30の移動経路のうち、第2分割経路R2、第3分割経路R3および第4分割経路R4が重複する特定経路となる。特定経路では、AGV30の移動方向が対向することによって、AGV30が干渉する可能性がある。この場合、特定経路では、いずれか一方のAGV30を先に通過させ、他方を後に通過させることになる。 Next, three calculation examples of the transfer schedule will be described with reference to FIGS. 11 to 19. FIG. First, the first calculation example will be described. As shown in FIG. 11, the route of the first calculation example has seven divided routes. At the start, the first AGV 30A is positioned on the first divided route R1, and the second AGV 30B is positioned on the fifth divided route R5. do. The first AGV 30A has a departure point on the first divided route R1 and an arrival point on the sixth divided route R6. The second AGV 30B has a departure point on the fifth divided route R5 and an arrival point on the seventh divided route R7. In this case, of the two movement routes of the AGV 30, the second divided route R2, the third divided route R3, and the fourth divided route R4 are overlapping specific routes. On the specific route, the AGVs 30 may interfere with each other due to the opposing movement directions of the AGVs 30 . In this case, on the specific route, one of the AGVs 30 is passed first and the other is passed later.

図12には、搬送工程を示す。第1AGV30Aの搬送工程では、第1分割経路R1を出発地点とし、次に第2分割経路R2に移動する。その場合、第2分割経路R2は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第2分割経路R2だけでなく、第4分割経路R4も使用中とする。実際は、第2分割経路R2しか使用していないが、仮想的に第4分割経路R4を使用しているとして、他のAGV30が特定経路に進入すること防ぐ。その後、第1AGV30Aが第2分割経路R2から第3分割経路R3に移動すると、同様に、第3分割経路R3は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第3分割経路R3だけでなく、第4分割経路R4も使用中とする。 FIG. 12 shows the transfer process. In the transport process of the first AGV 30A, the first divided route R1 is the starting point, and then the second divided route R2 is reached. In this case, since the second divided route R2 is a specific route, not only the second divided route R2 but also the fourth divided route R4 are in use in order to prohibit entry of other AGVs 30 into the specific route. Actually, only the second divided route R2 is used, but it is assumed that the fourth divided route R4 is virtually used, and other AGVs 30 are prevented from entering the specific route. After that, when the first AGV 30A moves from the second divided route R2 to the third divided route R3, similarly, since the third divided route R3 is a specific route, in order to prohibit other AGVs 30 from entering the specific route, It is assumed that not only the third divided route R3 but also the fourth divided route R4 are in use.

その後、第1AGV30Aが第3分割経路R3から第4分割経路R4に移動すると、第4分割経路R4は特定経路であるが、移動方向の前方には特定経路はないので、現在位置である第4分割経路R4だけを使用中とする。その後、第1AGV30Aが第4分割経路R4から第6分割経路R6に移動して、第1AGV30Aの移動は終了する。 After that, when the first AGV 30A moves from the third divided route R3 to the fourth divided route R4, the fourth divided route R4 is a specific route, but since there is no specific route ahead in the moving direction, the fourth divided route R4, which is the current position, Assume that only the divided route R4 is in use. After that, the first AGV 30A moves from the fourth divided route R4 to the sixth divided route R6, and the movement of the first AGV 30A ends.

同様に、第2AGV30Bの搬送工程では、第5分割経路R5を出発地点とし、次に第4分割経路R4に移動する。その場合、第4分割経路R4は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第4分割経路R4だけでなく、第2分割経路R2も使用中とする。実際は、第4分割経路R4しか使用していないが、仮想的に第2分割経路R2を使用しているとして、他のAGV30が特定経路に進入すること防ぐ。その後、第2AGV30Bが第4分割経路R4から第3分割経路R3に移動すると、同様に、第3分割経路R3は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第3分割経路R3だけでなく、第2分割経路R2も使用中とする。 Similarly, in the transfer process of the second AGV 30B, the fifth divided route R5 is the starting point, and then the second AGV 30B moves to the fourth divided route R4. In this case, since the fourth divided route R4 is a specific route, not only the fourth divided route R4 but also the second divided route R2 are in use in order to prohibit entry of other AGVs 30 into the specific route. Actually, only the fourth divided route R4 is used, but it is assumed that the second divided route R2 is virtually used, and other AGVs 30 are prevented from entering the specific route. After that, when the second AGV 30B moves from the fourth divided route R4 to the third divided route R3, similarly, since the third divided route R3 is a specific route, in order to prohibit other AGVs 30 from entering the specific route, It is assumed that not only the third divided route R3 but also the second divided route R2 are in use.

その後、第2AGV30Bが第3分割経路R3から第2分割経路R2に移動すると、第2分割経路R2は特定経路であるが、移動方向の前方には特定経路はないので、現在位置である第2分割経路R2だけを使用中とする。その後、第2AGV30Bが第2分割経路R2から第7分割経路R7に移動して、第2AGV30Bの移動は終了する。 After that, when the second AGV 30B moves from the third divided route R3 to the second divided route R2, the second divided route R2 is a specific route, but since there is no specific route ahead in the movement direction, the second AGV 30B, which is the current position, Assume that only the divided route R2 is in use. After that, the second AGV 30B moves from the second divided route R2 to the seventh divided route R7, and the movement of the second AGV 30B ends.

図13には、搬送スケジュールを示す。搬送スケジュールは、図12の搬送工程を入力して、前述の数式(1)のメイクスパンが最小値となるように計算されたものである。図13に示す搬送スケジュールは、ある時刻に、各AGV30が使用する分割経路を示す。 FIG. 13 shows the transportation schedule. The transportation schedule is calculated by inputting the transportation process of FIG. 12 so that the makespan of the above-mentioned formula (1) becomes the minimum value. The transportation schedule shown in FIG. 13 indicates divided routes used by each AGV 30 at a certain time.

図13に示すように、第1時刻t1には、第1AGV30Aが第1分割経路R1に位置し、第2AGV30Bが第5分割経路R5に位置する。その後、第2時刻t2には、第1AGV30Aが第2分割経路R2に移動し、仮想的に第4分割経路R4を使用する。第2時刻t2では、第2AGV30Bは移動していない。その後、第3時刻t3では、第1AGV30Aが第3分割経路R3に移動し、仮想的に第4分割経路R4を使用する。第3時刻t3でも、第2AGV30Bは移動していない。その後、第4時刻t4では、第1AGV30Aが第4分割経路R4に移動する。第4時刻t4でも、第2AGV30Bは移動していない。 As shown in FIG. 13, at the first time t1, the first AGV 30A is positioned on the first divided route R1 and the second AGV 30B is positioned on the fifth divided route R5. After that, at the second time t2, the first AGV 30A moves to the second divided route R2 and virtually uses the fourth divided route R4. At the second time t2, the second AGV 30B is not moving. After that, at the third time t3, the first AGV 30A moves to the third divided route R3 and virtually uses the fourth divided route R4. The second AGV 30B is not moving even at the third time t3. After that, at the fourth time t4, the first AGV 30A moves to the fourth split route R4. The second AGV 30B is not moving even at the fourth time t4.

その後、第5時刻t5には、第1AGV30Aが第6分割経路R6に移動し、第1AGV30Aの移動が終了する。第5時刻t5では、第2AGV30Bも第5分割経路R5から第4分割経路R4に移動する。その後、第6時刻t6~第8時刻t8では、第2AGV30Bが、順次、第3分割経路R3、第2分割経路R2、および第7分割経路R7に移動して、第2AGV30Bの移動が終了する。 After that, at the fifth time t5, the first AGV 30A moves to the sixth divided route R6, and the movement of the first AGV 30A ends. At the fifth time t5, the second AGV 30B also moves from the fifth divided route R5 to the fourth divided route R4. After that, from the sixth time t6 to the eighth time t8, the second AGV 30B sequentially moves to the third divided route R3, the second divided route R2, and the seventh divided route R7, and the movement of the second AGV 30B ends.

このように第1の計算事例では、2台のAGV30の移動経路に特定経路があるが、干渉することなく、順番に特定経路を使用することで、無駄なAGV30の移動もなく、移動を完了することができる。 Thus, in the first example of calculation, there is a specific route in the movement routes of the two AGVs 30, but by using the specific routes in order without interference, the movement is completed without wasteful movement of the AGV 30. can do.

次に、第2の計算事例に関して、図14~図16を用いて説明する。第2の計算事例の経路には、図14に示すように、8つの分割経路があり、スタート時点では、第1分割経路R1に第1AGV30Aが位置し、第8分割経路R8に第2AGV30Bが位置する。そして、第1AGV30Aは、出発地点が第1分割経路R1であり、第8分割経路R8以外の分割経路を通過して、再び出発地点に戻る。したがって第1AGV30Aの到着地点も、第1分割経路R1となる。 Next, a second example of calculation will be described with reference to FIGS. 14 to 16. FIG. As shown in FIG. 14, the route of the second calculation example has eight divided routes. At the start, the first AGV 30A is positioned on the first divided route R1, and the second AGV 30B is positioned on the eighth divided route R8. do. The first AGV 30A starts from the first divided route R1, passes through divided routes other than the eighth divided route R8, and returns to the starting point again. Therefore, the arrival point of the first AGV 30A is also the first divided route R1.

また第2AGV30Bは、出発地点が第8分割経路R8であり、第1分割経路R1以外の分割経路を通過して、再び出発地点に戻る。したがって第2AGV30Bの到着地点も、第8分割経路R8となる。この場合、2つのAGV30の移動経路のうち、第2分割経路R2~第6分割経路R6が重複する特定経路となる。 The second AGV 30B, whose starting point is the eighth divided route R8, passes through divided routes other than the first divided route R1 and returns to the starting point again. Therefore, the arrival point of the second AGV 30B is also the eighth divided route R8. In this case, of the two moving routes of the AGV 30, the second divided route R2 to the sixth divided route R6 are overlapping specific routes.

図15には、搬送工程を示す。第1AGV30Aの搬送工程では、第1分割経路R1を出発地点とし、次に第2分割経路R2に移動する。その場合、第2分割経路R2は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第2分割経路R2だけでなく、特定経路への入口である第6分割経路R6も使用中とする。実際は、第2分割経路R2しか使用していないが、仮想的に第6分割経路R6を使用しているとして、他のAGV30が特定経路に進入すること防ぐ。その後、第1AGV30Aが第2分割経路R2から第3分割経路R3、第4分割経路R4、第5分割経路R5と順次、移動し、その間は第6分割経路R6も使用中とする。 FIG. 15 shows the transfer process. In the transport process of the first AGV 30A, the first divided route R1 is the starting point, and then the second divided route R2 is reached. In that case, since the second divided route R2 is a specific route, in order to prohibit entry of other AGVs 30 into the specific route, not only the second divided route R2 but also the sixth divided route that is the entrance to the specific route R6 is also in use. Actually, only the second divided route R2 is used, but it is assumed that the sixth divided route R6 is virtually used, and other AGVs 30 are prevented from entering the specific route. After that, the first AGV 30A sequentially moves from the second divided route R2 to the third divided route R3, the fourth divided route R4, and the fifth divided route R5, while the sixth divided route R6 is also in use.

その後、第1AGV30Aが第6分割経路R6に移動すると、第6分割経路R6は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第6分割経路R6だけでなく、進行方向の前方に位置する特定経路の出入口である第2分割経路R2も使用中とする。その後、第1AGV30Aが第7分割経路R7に移動し、同様に第2分割経路R2も使用中とする。その後、第1AGV30Aが第2分割経路R2および第1分割経路R1の順に移動して、第1AGV30Aの移動は終了する。 After that, when the first AGV 30A moves to the sixth divided route R6, since the sixth divided route R6 is a specific route, in order to prohibit other AGVs 30 from entering the specific route, not only the sixth divided route R6 but also It is assumed that the second divided route R2, which is the entrance/exit of the specific route located ahead in the traveling direction, is also in use. After that, the first AGV 30A moves to the seventh divided route R7, and the second divided route R2 is also in use. After that, the first AGV 30A moves in the order of the second divided route R2 and the first divided route R1, and the movement of the first AGV 30A ends.

同様に、第2AGV30Bの搬送工程では、第8分割経路R8を出発地点とし、次に第6分割経路R6に移動する。その場合、第6分割経路R6は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第6分割経路R6だけでなく、第2分割経路R2も使用中とする。実際は、第6分割経路R6しか使用していないが、仮想的に第2分割経路R2を使用しているとして、他のAGV30が特定経路に進入すること防ぐ。その後、第2AGV30Bが第6分割経路R6から第5分割経路R5、第4分割経路R4、第3分割経路R3と順次、移動し、その間は第2分割経路R2も使用中とする。 Similarly, in the conveying process of the second AGV 30B, the starting point is the eighth divided route R8 and then moves to the sixth divided route R6. In this case, since the sixth divided route R6 is a specific route, not only the sixth divided route R6 but also the second divided route R2 are in use in order to prohibit entry of other AGVs 30 into the specific route. Actually, only the sixth divided route R6 is used, but assuming that the second divided route R2 is virtually used, other AGVs 30 are prevented from entering the specific route. After that, the second AGV 30B sequentially moves from the sixth divided route R6 to the fifth divided route R5, the fourth divided route R4, and the third divided route R3, while the second divided route R2 is also in use.

その後、第2AGV30Bが第2分割経路R2に移動すると、第2分割経路R2は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第2分割経路R2だけでなく、進行方向の前方に位置する直近の特定経路の出入口である第6分割経路R6も使用中とする。その後、第2AGV30Bが第7分割経路R7に移動し、同様に第6分割経路R6も使用中とする。その後、第2AGV30Bが第6分割経路R6および第8分割経路R8の順に移動して、第2AGV30Bの移動は終了する。 After that, when the second AGV 30B moves to the second divided route R2, since the second divided route R2 is a specific route, in order to prohibit other AGVs 30 from entering the specific route, not only the second divided route R2, It is also assumed that the sixth divided route R6, which is the entrance/exit of the nearest specific route located forward in the traveling direction, is also in use. After that, the second AGV 30B moves to the seventh divided route R7, and the sixth divided route R6 is also in use. After that, the second AGV 30B moves in the order of the sixth divided route R6 and the eighth divided route R8, and the movement of the second AGV 30B ends.

図16には、搬送スケジュールを示す。搬送スケジュールは、図15の搬送工程を入力して、前述の数式(1)のメイクスパンが最小値となるように計算されたものである。図16に示す搬送スケジュールは、ある時刻に、各AGV30が使用する分割経路を示す。 FIG. 16 shows the transportation schedule. The transportation schedule is calculated by inputting the transportation process of FIG. 15 so that the makespan of the above-mentioned formula (1) becomes the minimum value. The transportation schedule shown in FIG. 16 indicates divided routes used by each AGV 30 at a certain time.

図16に示すように、第1時刻t1には、第1AGV30Aが第1分割経路R1に位置し、第2AGV30Bが第8分割経路R8に位置する。その後、第2時刻t2には、第1AGV30Aが第2分割経路R2に移動し、仮想的に第6分割経路R6を使用する。第2時刻t2では、第2AGV30Bは移動していない。その後、第3時刻t3~第6時刻t6までは、第1AGV30Aが、順次、第3分割経路R3、第4分割経路R4、第5分割経路R5、第6分割経路R6と移動する。そして第6時刻t6では、第6分割経路R6だけでなく、第2分割経路R2を仮想的に使用する。その後、第7時刻t7では、第7分割経路R7に移動し、仮想的に第2分割経路R2も使用する。その後、第8時刻t8、第9時刻t9では、順次、第2分割経路R2、第1分割経路R1と移動して、第1AGV30Aの移動が終了する。 As shown in FIG. 16, at the first time t1, the first AGV 30A is positioned on the first divided route R1, and the second AGV 30B is positioned on the eighth divided route R8. After that, at the second time t2, the first AGV 30A moves to the second divided route R2 and virtually uses the sixth divided route R6. At the second time t2, the second AGV 30B is not moving. After that, from the third time t3 to the sixth time t6, the first AGV 30A moves through the third divided route R3, the fourth divided route R4, the fifth divided route R5, and the sixth divided route R6 in sequence. Then, at the sixth time t6, not only the sixth divided route R6 but also the second divided route R2 is virtually used. After that, at the seventh time t7, the vehicle moves to the seventh divided route R7 and virtually uses the second divided route R2 as well. After that, at the eighth time t8 and the ninth time t9, the first AGV 30A moves through the second divided route R2 and the first divided route R1 in sequence, and the movement of the first AGV 30A ends.

第9時刻t9では、第2AGV30Bの移動が開始し、第6分割経路R6に移動し、仮想的に第2分割経路R2も使用する。その後、第10時刻t10~第13時刻t13までは、第2AGV30Bが、順次、第5分割経路R5、第4分割経路R4、第3分割、第2分割経路R2と移動する。そして第13時刻t13では、第2分割経路R2だけでなく、第6分割経路R6を仮想的に使用する。その後、第14時刻t14では、第7分割経路R7に移動し、仮想的に第6分割経路R6も使用する。その後、第15時刻t15、第16時刻t16では、順次、第6分割経路R6、第8分割経路R8と移動して、第2AGV30Bの移動が終了する。 At the ninth time t9, the movement of the second AGV 30B starts, moves to the sixth divided route R6, and virtually uses the second divided route R2 as well. After that, from the tenth time t10 to the thirteenth time t13, the second AGV 30B moves sequentially along the fifth divided route R5, the fourth divided route R4, the third divided route, and the second divided route R2. At the thirteenth time t13, not only the second divided route R2 but also the sixth divided route R6 is virtually used. After that, at the 14th time t14, it moves to the seventh divided route R7 and virtually uses the sixth divided route R6 as well. After that, at the 15th time t15 and the 16th time t16, the second AGV 30B moves through the sixth divided route R6 and the eighth divided route R8 in sequence, and the movement of the second AGV 30B ends.

このように第2の計算事例でも同様に、2台のAGV30の移動経路に特定経路があるが、干渉することなく、順番に特定経路を使用することで、無駄なAGV30の移動もなく、移動を完了することができる。 Similarly, in the second calculation example, there is a specific route in the movement routes of the two AGVs 30, but by using the specific routes in order without interference, there is no useless movement of the AGV 30. can be completed.

次に、第3の計算事例に関して、図17~図19を用いて説明する。第3の計算事例の経路には、図17に示すように、10つの分割経路があり、スタート時点では、第1分割経路R1に第1AGV30Aが位置し、第8分割経路R8に第2AGV30Bが位置し、第5分割経路R5に第3AGV30Cが位置する。そして、第1AGV30Aは、出発地点が第1分割経路R1であり、第2分割経路R2、第4分割経路R4、第6分割経路R6、第7分割経路R7、第9分割経路R9と順次、通過して、第10分割経路R10が到着点である。そして、第2AGV30Bは、出発地点が第8分割経路R8であり、第9分割経路R9、第7分割経路R7、第6分割経路R6、第4分割経路R4、第2分割経路R2と順次、通過して、第3分割経路R3が到着点である。また第3AGV30Cは、出発地点が第5分割経路R5であり、第6分割経路R6、第7分割経路R7、第9分割経路R9と順次、通過して、第10分割経路R10が到着点である。この場合、3つのAGV30の移動経路のうち、第2分割経路R2、第4分割経路R4、第6分割経路R6、第7分割経路R7、第9分割経路R9が重複する特定経路となる。 Next, a third example of calculation will be described with reference to FIGS. 17 to 19. FIG. As shown in FIG. 17, the route of the third calculation example has ten divided routes. At the start, the first AGV 30A is positioned on the first divided route R1, and the second AGV 30B is positioned on the eighth divided route R8. The third AGV 30C is located on the fifth divided route R5. The first AGV 30A starts from the first divided route R1, passes through the second divided route R2, the fourth divided route R4, the sixth divided route R6, the seventh divided route R7, and the ninth divided route R9 in sequence. The arrival point is the tenth divided route R10. The second AGV 30B starts from the eighth divided route R8 and passes through the ninth divided route R9, the seventh divided route R7, the sixth divided route R6, the fourth divided route R4, and the second divided route R2 in sequence. The arrival point is the third divided route R3. The third AGV 30C starts from the fifth divided route R5, passes through the sixth divided route R6, the seventh divided route R7, and the ninth divided route R9 in sequence, and reaches the tenth divided route R10. . In this case, the second divided route R2, the fourth divided route R4, the sixth divided route R6, the seventh divided route R7, and the ninth divided route R9 among the three moving routes of the AGV 30 are overlapping specific routes.

図18には、搬送工程を示す。第1AGV30Aの搬送工程では、第1分割経路R1を出発地点とし、次に第2分割経路R2に移動する。その場合、第2分割経路R2は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第2分割経路R2だけでなく、第6分割経路R6および第9分割経路R9も使用中とする。実際は、第2分割経路R2しか使用していないが、仮想的に第6分割経路R6および第9分割経路R9を使用しているとして、他のAGV30が特定経路に進入すること防ぐ。その後、第1AGV30Aが第2分割経路R2から第4分割経路R4、第6分割経路R6、第7分割経路R7、第9分割経路R9と順次、移動し、その間は第9分割経路R9も使用中とする。また第1AGV30Aが第7分割経路R7に移動するまで、第6分割経路R6も使用中とする。その後、第1AGV30Aが第10分割経路R10に移動して、第1AGV30Aの移動は終了する。 FIG. 18 shows the transfer process. In the transport process of the first AGV 30A, the first divided route R1 is the starting point, and then the second divided route R2 is reached. In that case, since the second divided route R2 is a specific route, in order to prohibit entry of other AGVs 30 into the specific route, not only the second divided route R2 but also the sixth divided route R6 and the ninth divided route R9 are also in use. Actually, only the second divided route R2 is used, but it is assumed that the sixth divided route R6 and the ninth divided route R9 are virtually used, and other AGVs 30 are prevented from entering the specific route. After that, the first AGV 30A sequentially moves from the second divided route R2 to the fourth divided route R4, the sixth divided route R6, the seventh divided route R7, and the ninth divided route R9, during which the ninth divided route R9 is also in use. and The sixth divided route R6 is also in use until the first AGV 30A moves to the seventh divided route R7. After that, the first AGV 30A moves to the tenth divided route R10, and the movement of the first AGV 30A ends.

第2AGV30Bの搬送工程では、第8分割経路R8を出発地点とし、次に第9分割経路R9に移動する。その場合、第9分割経路R9は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第9分割経路R9だけでなく、第2分割経路R2および第6分割経路R6も使用中とする。実際は、第9分割経路R9しか使用していないが、仮想的に第2分割経路R2および第6分割経路R6を使用しているとして、他のAGV30が特定経路に進入すること防ぐ。その後、第2AGV30Bが第9分割経路R9から第7分割経路R7、第6分割経路R6、第4分割経路R4、第2分割経路R2と順次、移動し、その間は第2分割経路R2も使用中とする。また第2AGV30Bが第4分割経路R4に移動するまで、第6分割経路R6も使用中とする。その後、第2AGV30Bが第3分割経路R3に移動して、第2AGV30Bの移動は終了する。 In the transport process of the second AGV 30B, the eighth divided route R8 is the starting point, and then the second AGV 30B moves to the ninth divided route R9. In that case, since the ninth divided route R9 is a specific route, in order to prohibit entry of other AGVs 30 into the specific route, not only the ninth divided route R9 but also the second divided route R2 and the sixth divided route R6 are also in use. Actually, only the ninth divided route R9 is used, but it is assumed that the second divided route R2 and the sixth divided route R6 are virtually used, and other AGVs 30 are prevented from entering the specific route. After that, the second AGV 30B sequentially moves from the ninth divided route R9 to the seventh divided route R7, the sixth divided route R6, the fourth divided route R4, and the second divided route R2, while the second divided route R2 is also in use. and The sixth divided route R6 is also in use until the second AGV 30B moves to the fourth divided route R4. After that, the second AGV 30B moves to the third divided route R3, and the movement of the second AGV 30B ends.

第3AGV30Cの搬送工程では、第5分割経路R5を出発地点とし、次に第6分割経路R6に移動する。その場合、第6分割経路R6は特定経路であるので、特定経路への他のAGV30の進入を禁止するために、第6分割経路R6だけでなく、第9分割経路R9も使用中とする。実際は、第6分割経路R6しか使用していないが、仮想的に第9分割経路R9を使用しているとして、他のAGV30が特定経路に進入すること防ぐ。その後、第3AGV30Cが第6分割経路R6から第7分割経路R7、第9分割経路R9と順次、移動し、その間は第9分割経路R9も使用中とする。その後、第3AGV30Cが第10分割経路R10に移動して、第3AGV30Cの移動は終了する。 In the transport process of the third AGV 30C, the fifth divided route R5 is the starting point, and then the sixth divided route R6 is reached. In this case, since the sixth divided route R6 is a specific route, not only the sixth divided route R6 but also the ninth divided route R9 are in use in order to prohibit entry of other AGVs 30 into the specific route. Actually, only the sixth divided route R6 is used, but the ninth divided route R9 is virtually used to prevent other AGVs 30 from entering the specific route. After that, the third AGV 30C sequentially moves from the sixth divided route R6 to the seventh divided route R7 and then to the ninth divided route R9, during which the ninth divided route R9 is also in use. After that, the third AGV 30C moves to the tenth divided route R10, and the movement of the third AGV 30C ends.

図19には、搬送スケジュールを示す。搬送スケジュールは、図19の搬送工程を入力して、前述の数式(1)のメイクスパンが最小値となるように計算されたものである。図19に示す搬送スケジュールは、ある時刻に、各AGV30が使用する分割経路を示す。 FIG. 19 shows a transportation schedule. The transportation schedule is calculated by inputting the transportation process of FIG. 19 so that the makespan of the above-mentioned formula (1) becomes the minimum value. The transportation schedule shown in FIG. 19 indicates divided routes used by each AGV 30 at a certain time.

図19に示すように、第1時刻t1には、第1AGV30Aが第1分割経路R1に位置し、第2AGV30Bが第8分割経路R8に位置し、第3AGV30Cが第5分割経路R5に位置する。その後、第2時刻t2には、第2AGV30Bが第9分割経路R9に移動し、仮想的に第2分割経路R2および第6分割経路R6を使用する。第2時刻t2では、第1AGV30Aおよび第3AGV30Cは移動していない。その後、第3時刻t3、第4時刻t4、第5時刻t5では、第2AGV30Bが、順次、第7分割経路R7、第6分割経路R6、第4分割経路R4と移動する。そして第5時刻t5では、第6分割経路R6は使用されていないので、第3AGV30Cが移動を開始し、第6分割経路R6に移動し、第9分割経路R9も仮想的に使用する。 As shown in FIG. 19, at the first time t1, the first AGV 30A is positioned on the first divided route R1, the second AGV 30B is positioned on the eighth divided route R8, and the third AGV 30C is positioned on the fifth divided route R5. After that, at the second time t2, the second AGV 30B moves to the ninth divided route R9 and virtually uses the second divided route R2 and the sixth divided route R6. At the second time t2, the first AGV 30A and the third AGV 30C are not moving. After that, at a third time t3, a fourth time t4, and a fifth time t5, the second AGV 30B sequentially travels through the seventh divided route R7, the sixth divided route R6, and the fourth divided route R4. At the fifth time t5, since the sixth divided route R6 is not used, the third AGV 30C starts moving, moves to the sixth divided route R6, and virtually uses the ninth divided route R9 as well.

その後、第6時刻t6では、第2AGV30Bは、第2分割経路R2に移動する。そして第6時刻t6、第7時刻t7では、第3AGV30Cは第7分割経路R7、第9分割経路R9と順次移動する。その後、第8時刻t8では、第2AGV30Bが第3分割経路R3に移動して、第2AGV30Bの移動が終了する。また第3AGV30Cは、第10分割経路R10に移動して、第3AGV30Cの移動が終了する。 After that, at the sixth time t6, the second AGV 30B moves to the second split route R2. Then, at the sixth time t6 and the seventh time t7, the third AGV 30C sequentially travels through the seventh divided route R7 and the ninth divided route R9. After that, at the eighth time t8, the second AGV 30B moves to the third divided route R3, and the movement of the second AGV 30B ends. Also, the third AGV 30C moves to the tenth divided route R10, and the movement of the third AGV 30C ends.

第1AGV30Aは、第8時刻t8から移動を開始して、第13時刻t13まで、順次、第2分割経路R2、第4分割経路R4、第6分割経路R6、第7分割経路R7、第9分割経路R9、第10分割経路R10と移動するそして、第1AGV30Aは、第10分割経路R10に移動して移動が終了する。 The first AGV 30A starts moving at the eighth time t8, and until the thirteenth time t13, the second divided route R2, the fourth divided route R4, the sixth divided route R6, the seventh divided route R7, and the ninth divided route R7. Then, the first AGV 30A moves to the tenth divided route R10 and completes its movement.

このように第3の計算事例でも同様に、3台のAGV30の移動経路に特定経路があるが、干渉することなく、順番に特定経路を使用することで、無駄なAGV30の移動もなく、移動を完了することができる。 Similarly, in the third calculation example, there is a specific route in the movement routes of the three AGVs 30, but by using the specific routes in order without interference, there is no useless movement of the AGV 30, and the movement of the AGV 30 can be completed.

以上説明したように本実施形態の移動制御システム100では、経路は2つのAGV30がすれ違えないので、移動経路が交錯する場合には、AGV30の衝突を避けるために、一方のAGV30を待機させて、他方のAGV30を移動させた後に、一方のAGV30を移動させる必要がある。そこで混合整数計画問題の制約条件に衝突禁止条件を用いて、移動体の衝突を避けつつ、評価値を最小化する搬送スケジュールを計算する。評価値は、全てのAGV30の移動が完了するまでの時間、全てのAGV30の移動時間の総和、AGV30の待機時間の総和などであり、本実施形態ではメイクスパン、すなわち全ての移動体の移動が完了するまでの時間を評価値としている。また混合整数計画問題を解くことによって搬送スケジュールを決定するので、複数回計算を繰り返すことを抑制することができる。 As described above, in the movement control system 100 of the present embodiment, the two AGVs 30 do not pass each other on the route. , one AGV 30 must be moved after the other AGV 30 is moved. Therefore, a transport schedule that minimizes the evaluation value while avoiding the collision of moving objects is calculated by using the collision prohibition condition as a constraint condition of the mixed integer programming problem. The evaluation value is the time until the movement of all AGVs 30 is completed, the sum of the movement times of all the AGVs 30, the sum of the waiting times of the AGVs 30, and the like. The evaluation value is the time until completion. Further, since the transportation schedule is determined by solving the mixed integer programming problem, it is possible to suppress repetition of calculations multiple times.

さらに設定部141は、特定経路に1つのAGV30が存在すると、他のAGV30が特定経路に進入することができないように搬送工程を設定する。衝突禁止条件だけであると、隣接する分割経路に存在するAGV30の位置が入れ替わることが許容されるが、設定部141によって特定経路への進入が禁止されるので、このような入れ替わることを防止することができる。これによってAGV30のお互いの干渉を回避しつつ、全体の効率をより高めることができる。 Further, the setting unit 141 sets the transport process so that when one AGV 30 exists on the specific route, other AGVs 30 cannot enter the specific route. If only the collision prohibition condition is met, the positions of the AGVs 30 existing on the adjacent divided routes are allowed to change, but since the setting unit 141 prohibits entry into the specific route, such a change is prevented. be able to. This avoids the AGVs 30 from interfering with each other, while increasing overall efficiency.

また本実施形態では、設定部141は、特定経路に1つのAGV30が存在する場合には、AGV30が存在する特定経路のうちAGV30の移動方向の部分への他のAGV30の使用を禁止し、移動方向とは反対方向の部分の使用を許可するように搬送工程を設定する。これによって特定経路の全体を進入禁止にするよりも、効率よく特定経路を使用することができる。したがって干渉を回避しつつ、有効に特定経路を活用して効率化することができる。 Further, in the present embodiment, when one AGV 30 exists on the specific route, the setting unit 141 prohibits the use of other AGVs 30 to the portion of the specific route on which the AGV 30 exists in the movement direction of the AGV 30, Set the transfer process to allow the use of the part in the direction opposite to the direction. As a result, the specific route can be used more efficiently than prohibiting entry to the entire specific route. Therefore, while avoiding interference, it is possible to effectively utilize the specific route and improve efficiency.

また本実施形態では、計算部144は、移動経路および搬送工程が設定部141によって変更された場合には、新しい移動経路および搬送工程を入力して、搬送スケジュールを計算する。これによって新しい情報を用いて搬送スケジュールを計算することができる。したがって搬送工程の変更に柔軟に対応することができる。 Further, in this embodiment, when the moving route and the transport process are changed by the setting unit 141, the calculating unit 144 inputs the new moving route and the transport process to calculate the transport schedule. This allows the new information to be used to calculate the transport schedule. Therefore, it is possible to flexibly cope with changes in the transfer process.

(第2実施形態)
次に、本開示の第2実施形態に関して、図20を用いて説明する。本実施形態では、AGV30の位置情報を用いて、搬送スケジュールを再計算する点に特徴を有する。図20は、本実施形態のサーバ40の処理を示すフローチャートである。図20に示すフローチャートは、サーバ40が電源投入状態において、短時間に繰り返し実行する。
(Second embodiment)
Next, a second embodiment of the present disclosure will be described using FIG. 20 . This embodiment is characterized in that the transport schedule is recalculated using the position information of the AGV 30 . FIG. 20 is a flow chart showing the processing of the server 40 of this embodiment. The flowchart shown in FIG. 20 is repeatedly executed in a short time while the server 40 is powered on.

ステップS1では、各AGV30の位置情報を、サーバ用受信部42を介して取得し、ステップS2に移る。ステップS2では、位置情報と搬送スケジュール上の予定位置とを比較して、乖離を計算し、ステップS3に移る。 In step S1, the positional information of each AGV 30 is obtained via the server reception section 42, and the process proceeds to step S2. In step S2, the position information is compared with the planned position on the transport schedule to calculate the deviation, and the process proceeds to step S3.

ステップS3では、乖離が許容範囲内であるか否かを判断し、許容範囲内である場合には、再計算が不要として本フローを終了する。乖離が許容範囲外である場合には、再計算が必要として、ステップS4に移る。 In step S3, it is determined whether or not the divergence is within the allowable range, and if it is within the allowable range, the recalculation is deemed unnecessary and the flow ends. If the deviation is outside the allowable range, recalculation is required and the process moves to step S4.

ステップS4では、現在位置を考慮して、搬送スケジュールを再計算して、ステップS5に移る。ステップS5では、再計算した搬送スケジュールをサーバ用送信部43から各AGV30に送信するように制御し、本フローを終了する。 In step S4, the transport schedule is recalculated in consideration of the current position, and the process proceeds to step S5. In step S5, control is performed so that the recalculated transport schedule is transmitted from the server transmission unit 43 to each AGV 30, and this flow ends.

このように計算部144は、AGV30の現在位置と、搬送スケジュールのおける予定位置との差が所定値より大きい場合には、搬送スケジュールを再計算する。これによってAGV30の現在位置と予定位置との乖離に起因して、AGV30が干渉するなどを抑制することができる。 In this manner, the calculation unit 144 recalculates the transfer schedule when the difference between the current position of the AGV 30 and the planned position in the transfer schedule is greater than a predetermined value. As a result, interference of the AGV 30 due to the deviation between the current position and the planned position of the AGV 30 can be suppressed.

(第3実施形態)
次に、本開示の第3実施形態に関して、図21を用いて説明する。本実施形態では、検出装置50の監視情報を用いて、搬送スケジュールを再計算する点に特徴を有する。図21は、本実施形態のサーバ40の処理を示すフローチャートである。図21に示すフローチャートは、サーバ40が電源投入状態において、短時間に繰り返し実行する。
(Third embodiment)
Next, a third embodiment of the present disclosure will be described with reference to FIG. 21. FIG. This embodiment is characterized in that the transport schedule is recalculated using the monitoring information of the detection device 50 . FIG. 21 is a flow chart showing the processing of the server 40 of this embodiment. The flowchart shown in FIG. 21 is repeatedly executed in a short time while the server 40 is powered on.

ステップS1では、検出装置50から監視情報を、サーバ用受信部42を介して取得し、ステップS2に移る。ステップS2では、監視情報を用いて、AGV30以外の動作物体、たとえば人物の移動方向および移動速度を予測し、ステップS3に移る。 In step S1, the monitoring information is acquired from the detecting device 50 via the server receiving section 42, and the process proceeds to step S2. In step S2, the monitoring information is used to predict the moving direction and moving speed of a moving object other than the AGV 30, such as a person, and the process proceeds to step S3.

ステップS3では、動作物体によって搬送スケジュールを再計算する必要があるか否かを判断し、再計算が必要な場合は、ステップS4に移り、再計算が不要な場合は本フローを終了する。再計算が必要な場合は、人物の移動によって、AGV30と人物が干渉するおそれがある場合である。 In step S3, it is determined whether or not the transport schedule needs to be recalculated based on the moving object. Recalculation is necessary when there is a risk of interference between the AGV 30 and the person due to movement of the person.

ステップS4では、人物の移動情報を考慮して、搬送スケジュールを再計算して、ステップS5に移る。ステップS5では、再計算した搬送スケジュールをサーバ用送信部43から各AGV30に送信するように制御し、ステップS6に移る。ステップS6では、検出装置50へ動作物体への指示を送信するようにサーバ用制御部45を制御し、本フローを終了する。 In step S4, the transfer schedule is recalculated in consideration of the movement information of the person, and the process proceeds to step S5. In step S5, control is performed so that the recalculated transport schedule is transmitted from the server transmission unit 43 to each AGV 30, and the process proceeds to step S6. In step S6, the server control unit 45 is controlled to transmit an instruction to the moving object to the detection device 50, and this flow ends.

このように設定部141は、移動情報から動作物体の動きを予測して、動作物体を含む移動経路および移動工程を設定する。そして計算部144は、新しい移動経路および移動工程を入力値して、搬送スケジュールを計算する。これによってAGV30と動作物体が干渉するなどを抑制することができる。またサーバ用制御部45は、動作物体への指示を出力するので、たとえば動作物体が止まるように検出装置50の指示部54によって指示することができる。これによって動作物体、たとえば人物は、指示に従って、AGV30の通過を待つ、またはAGV30より先に移動を、安全に行うことができる。 In this manner, the setting unit 141 predicts the movement of the working object from the movement information, and sets the movement path and movement process including the working object. Then, the calculation unit 144 receives the new movement route and movement process as input values and calculates the transfer schedule. This makes it possible to suppress interference between the AGV 30 and the moving object. Further, since the server control unit 45 outputs an instruction to the action object, the instruction unit 54 of the detection device 50 can instruct the action object to stop, for example. This allows a moving object, eg a person, to safely wait for the AGV 30 to pass or to move ahead of the AGV 30 as instructed.

また動作物体への指示を行う場合には、搬送スケジュールを計算する制約条件にAGV30および動作物体の移動の優先順位が設定された優先条件を含む。たとえば動作物体を優先させるのか、AGV30の移動を優先させるのかの条件である。優先順位は、たとえば条件によって変わってもよく、事前に固定されていてもよい。たとえば時間帯によって、優先順位を変えてもよい。また優先度は、AGV30同士および人物との干渉を防ぎながら移動を実現させるために、人物を待たせても良い。またAGV30と混在移動体である人物の優先順位を搬送量や混雑度に応じて決定してもよい。このような優先度、優先順位は、記憶部41に記憶されている。そして優先度に従ったスケジュール計算を、たとえば人物の移動を優先する待ち時間を許さないというno-waitの制約条件を追加することで実現することができる。 Also, when giving instructions to the moving object, the constraint conditions for calculating the transfer schedule include a priority condition in which the priority of the movement of the AGV 30 and the moving object is set. For example, the condition is whether to give priority to the moving object or to give priority to the movement of the AGV 30 . The priority may change, for example, depending on conditions, or may be fixed in advance. For example, the priority may be changed depending on the time zone. Moreover, the priority may be such that the person is kept waiting in order to realize movement while preventing interference between the AGVs 30 and the person. Also, the priority of the AGV 30 and the person who is a mixed moving object may be determined according to the transport amount and the degree of congestion. Such priority and order of priority are stored in the storage unit 41 . Then, the schedule calculation according to the priority can be realized by adding a no-wait constraint, for example, not allowing the waiting time that gives priority to the movement of the person.

(第4実施形態)
次に、本開示の第4実施形態に関して、図22を用いて説明する。本実施形態では、検出装置50の監視情報を用いて、搬送スケジュールを再計算する点に特徴を有する。図22は、本実施形態のサーバ40の処理を示すフローチャートである。図22に示すフローチャートは、サーバ40が電源投入状態において、短時間に繰り返し実行する。
(Fourth embodiment)
Next, a fourth embodiment of the present disclosure will be described using FIG. 22 . This embodiment is characterized in that the transport schedule is recalculated using the monitoring information of the detection device 50 . FIG. 22 is a flowchart showing processing of the server 40 of this embodiment. The flowchart shown in FIG. 22 is repeatedly executed in a short time while the server 40 is powered on.

ステップS1では、検出装置50から監視情報を、サーバ用受信部42を介して取得し、ステップS2に移る。ステップS2では、監視情報を用いて、経路に異常があるか否かを判断し、異常がある場合は、ステップS3に移り、異常がない場合は、本フローを終了する。 In step S1, the monitoring information is acquired from the detecting device 50 via the server receiving section 42, and the process proceeds to step S2. In step S2, the monitoring information is used to determine whether or not there is an abnormality in the route. If there is an abnormality, the process proceeds to step S3, and if there is no abnormality, this flow ends.

経路異常には、静的な異常と動的な異常を含む。静的な異常は、事前にわかっている工事などの異常である。動的な異常とは、AGV30の自動制御などに起因する一時停止、荷崩れなどの物理的な不具合による一時停止などが含まれる。 Path anomalies include static anomalies and dynamic anomalies. A static anomaly is an anomaly such as construction that is known in advance. The dynamic abnormality includes a temporary stop caused by automatic control of the AGV 30, a temporary stop caused by a physical problem such as collapse of cargo, and the like.

ステップS3では、経路に異常があるので、異常によって搬送スケジュールを再計算する必要があるか否かを判断し、再計算が必要な場合は、ステップS4に移り、再計算が不要な場合は本フローを終了する。再計算が必要な場合は、異常によって搬送スケジュールの経路で搬送できない場合である。 In step S3, since there is an abnormality in the route, it is determined whether or not it is necessary to recalculate the transportation schedule due to the abnormality. End the flow. The case where recalculation is necessary is when the transport cannot be carried out along the route of the transport schedule due to an abnormality.

ステップS4では、経路異常を考慮して、搬送工程を設定し直し、ステップS5に移る。ステップS5では、経路異常を考慮して、搬送スケジュールを再計算して、ステップS6に移る。ステップS6では、再計算した搬送スケジュールをサーバ用送信部43から各AGV30に送信するように制御し、本フローを終了する。 In step S4, the transport process is set again in consideration of the path abnormality, and the process proceeds to step S5. In step S5, the transport schedule is recalculated in consideration of the route abnormality, and the process proceeds to step S6. In step S6, control is performed so that the recalculated transport schedule is transmitted from the server transmission unit 43 to each AGV 30, and this flow ends.

このように設定部141は、経路異常がある場合には、移動不可部分を回避する移動経路を設定する。これによって異常がある経路は、AGV30が移動することを抑制することができる。 In this manner, the setting unit 141 sets a movement route that avoids the unmovable portion when there is a route abnormality. As a result, it is possible to suppress the AGV 30 from moving along an abnormal route.

(その他の実施形態)
以上、本開示の好ましい実施形態について説明したが、本開示は前述した実施形態に何ら制限されることなく、本開示の主旨を逸脱しない範囲において種々変形して実施することが可能である。
(Other embodiments)
Although the preferred embodiments of the present disclosure have been described above, the present disclosure is not limited to the above-described embodiments, and various modifications can be made without departing from the gist of the present disclosure.

前述の実施形態の構造は、あくまで例示であって、本開示の範囲はこれらの記載の範囲に限定されるものではない。本開示の範囲は、特許請求の範囲の記載によって示され、さらに特許請求の範囲の記載と均等の意味及び範囲内での全ての変更を含むものである。 The structures of the above-described embodiments are merely examples, and the scope of the present disclosure is not limited to the scope of these descriptions. The scope of the present disclosure is indicated by the description of the claims, and further includes all changes within the meaning and range of equivalents to the description of the claims.

前述の第1実施形態では、移動体は、AGV30によって実現されているが、AGV30に限るものではない。移動体は、同時刻に同じ位置に存在すると衝突や、デッドロックが発生する移動体にはすべて利用可能である。 In the first embodiment described above, the moving body is implemented by the AGV 30, but is not limited to the AGV 30. All moving objects can be used for moving objects that cause collisions or deadlocks if they exist in the same position at the same time.

たとえば移動体は、閉空間における搬送ロボットであってもよい。閉空間とは、移動体のみが存在できるエリアを区切り、移動体が走行する空間である。移動体は、例えば、製造現場、病院、空港およびデパート内のパトロールロボット、監視ロボット、案内ロボットおよび搬送ロボットであってもよい。 For example, the mobile body may be a transport robot in a closed space. A closed space is a space in which an area in which only a mobile object can exist is separated and in which the mobile object runs. Mobile objects may be, for example, patrol, surveillance, guidance and transport robots in manufacturing sites, hospitals, airports and department stores.

また移動体は、道路を走行する車、タクシーおよびバスのようにドライバーが自律的に運転するモビリティであってもよい。その場合は、サーバ用制御部45によって実現されていた機能、たとえば計算部144および設定部141などを車両側に備え、車両側からサーバ40へ目的地と経路を送信してもよい。またサーバ用制御部45とAGV30とが処理が分担するように構成してもよく、たとえば計算部144の機能をサーバ40が有し、設定部141の機能をAGV30が有して、相互に通信することで経路を決定してもよい。さらに移動体は、自動運転車のように運転の仕方を管制制御されるようなモビリティであってもよい。また移動体は、電車および飛行機であってもよい。線路を共有しながら走行する電車、および滑走路を共有しながら利用する飛行機のスケジューリングにも利用することができる。さらに移動体は、ガントリークレーンおよび荷物搬送用のエレベーターなど経路や空間を占有しながら動くものであってもよい。 The moving object may also be mobility autonomously driven by a driver, such as a car, a taxi, or a bus that travels on the road. In that case, the functions implemented by the server control unit 45, such as the calculation unit 144 and the setting unit 141, may be provided on the vehicle side, and the destination and the route may be transmitted from the vehicle side to the server 40. FIG. Further, the server control unit 45 and the AGV 30 may be configured to share the processing. You can determine the route by Furthermore, the moving body may be mobility such as an automatic driving car whose driving method is controlled. Also, the moving object may be a train and an airplane. It can also be used for scheduling trains that run while sharing tracks and airplanes that share runways. Further, the moving body may move while occupying a route or space, such as a gantry crane and an elevator for transporting cargo.

前述の第1実施形態では、経路は固定されていたが、固定でなくてもよい。経路は、たとえば事前に固定している必要はなく、途中で変更になってもよい。経路が都度変わっても、それを工程に反映し、再度スケジューリング計算をすれば良い。また経路を都度変える制御方法であってもよい。したがって移動体は、無軌道AGVのように監視装置を用いて経路を計算するような移動体であってもよい。 Although the route is fixed in the first embodiment described above, it may not be fixed. The route does not have to be fixed in advance, for example, and may be changed along the way. Even if the route changes each time, it should be reflected in the process and the scheduling calculation should be performed again. Alternatively, a control method that changes the route each time may be used. Therefore, the mobile object may be a mobile object that calculates a route using a monitoring device, such as a trackless AGV.

またスケジューリング対象は経路全体であってもよく、経路が交差する交差点、経路が重複する特定経路の出入口のみでも良い。経路の交差点ごとにフォーカスを当てて、都度計算してもよい。また、その結果を搬送システムや信号機のような制御に応用することもできる。また設定部141は、特定経路に1つのAGV30がある場合は、特定経路の全体を他のAGV30の使用を禁止するように搬送工程を設定してもよい。 Also, the scheduling target may be the entire route, or only an intersection where routes intersect or an entrance/exit of a specific route where routes overlap. It may be calculated each time by focusing on each intersection of the route. In addition, the results can be applied to the control of transport systems and traffic lights. Further, when there is one AGV 30 on the specific route, the setting unit 141 may set the transport process so as to prohibit the use of other AGVs 30 on the entire specific route.

前述の第1実施形態では、図8に示す数式によって搬送スケジュールを決定しているが、このような数式に限るものではない。図8に示した本実施形態の数式は、一例であって、他の式によって搬送スケジュールを計算してもよい。 In the first embodiment described above, the transport schedule is determined by the formula shown in FIG. 8, but the formula is not limited to this formula. The formulas of the present embodiment shown in FIG. 8 are merely examples, and other formulas may be used to calculate the transport schedule.

前述の第1実施形態では、位置検出部33は、GNSS受信器を用いて、AGV30の位置を検出しているが、このような構成に限るものではない。たとえば電波を送受信するIoTルータおよびIoTタグを用いて、IoTタグをAGV30に設け、IoTルータを複数の固定位置に設け、IoTルータと通信する電波強度でIoTタグの位置、すなわちAGV30の位置を推定してもよい。 In the first embodiment described above, the position detector 33 detects the position of the AGV 30 using the GNSS receiver, but the configuration is not limited to this. For example, using an IoT router and an IoT tag that transmit and receive radio waves, the IoT tag is provided in the AGV 30, the IoT router is provided in a plurality of fixed positions, and the position of the IoT tag, that is, the position of the AGV 30 is estimated by the radio wave intensity of communication with the IoT router. You may

前述の第1実施形態において、サーバ用制御部45によって実現されていた機能は、前述のものとは異なるハードウェアおよびソフトウェア、またはこれらの組み合わせによって実現してもよい。サーバ用制御部45は、たとえば他の制御装置と通信し、他の制御装置が処理の一部または全部を実行してもよい。サーバ用制御部45が電子回路によって実現される場合、それは多数の論理回路を含むデジタル回路、またはアナログ回路によって実現することができる。 The functions realized by the server control unit 45 in the first embodiment described above may be realized by hardware and software different from those described above, or a combination thereof. The server control unit 45 may communicate with, for example, another control device, and the other control device may execute part or all of the processing. When the server controller 45 is implemented by an electronic circuit, it can be implemented by a digital circuit including many logic circuits, or by an analog circuit.

30…AGV(移動体) 31…AGV用受信部 32…AGV用送信部
33…位置検出部 34…AGV用制御部 40…サーバ 41…記憶部
42…サーバ用受信部 43…サーバ用送信部 45…サーバ用制御部(取得部)
50…検出装置 51…周辺監視部 52…検出装置用受信部
53…検出装置用送信部 54…指示部 60…搬送指示装置 61…指示監視部
62…搬送用受信部 63…搬送用送信部 64…入力部
100…移動制御システム 141…設定部 142…予測部 143…判定部
144…計算部 145…移動制御部
30 AGV (moving body) 31 AGV receiver 32 AGV transmitter 33 Position detector 34 AGV controller 40 Server 41 Storage 42 Server receiver 43 Server transmitter 45 … Server control unit (acquisition unit)
50 Detecting device 51 Surrounding monitoring unit 52 Detecting device receiving unit 53 Detecting device transmitting unit 54 Instruction unit 60 Conveyance instruction device 61 Instruction monitoring unit 62 Conveyance reception unit 63 Conveyance transmission unit 64 Input unit 100 Movement control system 141 Setting unit 142 Prediction unit 143 Determination unit 144 Calculation unit 145 Movement control unit

Claims (7)

経路上を移動する複数の移動体(30)の移動を制御する移動体制御装置であって、
前記経路は、2つの前記移動体がすれ違えない経路であり、
複数の前記移動体の出発地点と終着地点とを結ぶ移動経路、および前記移動経路を移動する移動工程を設定する設定部(141)と、
前記移動経路および前記移動工程を入力値して、制約条件を満たしつつ所定の評価値を最小化することを目的とする混合整数計画問題を解くことによって、前記移動体の移動スケジュールを計算する計算部(144)と、
前記移動スケジュールによって各前記移動体の移動を制御する移動制御部(145)と、を含み、
前記制約条件には、前記経路を少なくとも前記移動体よりも大きい長さで分割した分割経路において、前記移動体が次の前記分割経路への移動が完了するまで、移動が完了前の前記分割経路は他の前記移動体による利用を禁止する衝突禁止条件があり、
前記設定部は、少なくとも2つの前記移動体の前記移動経路が重複して、前記移動体の移動方向が対向することによって、前記移動体が干渉する可能性がある特定経路では、前記特定経路に1つの前記移動体が存在する場合には、前記移動体が存在する前記特定経路では他の前記移動体の使用を禁止するように前記移動工程を設定する移動体制御装置。
A mobile body control device for controlling movement of a plurality of mobile bodies (30) moving on a route,
the route is a route in which the two moving bodies do not pass each other;
a setting unit (141) for setting a moving route connecting a starting point and a terminal point of a plurality of the moving objects, and a moving process for moving the moving route;
Calculation for calculating the movement schedule of the moving body by solving a mixed integer programming problem with the objective of minimizing a predetermined evaluation value while satisfying constraints, with the movement path and the movement process as input values. a part (144);
a movement control unit (145) that controls the movement of each of the moving bodies according to the movement schedule;
In the divided route obtained by dividing the route by a length that is at least longer than the length of the moving body, the constraint conditions include: has a no-collision condition that prohibits its use by other mobile objects,
In a specific route where at least two of the moving paths of the moving bodies overlap and the moving directions of the moving bodies are opposed to each other, and the moving bodies may interfere with each other, the setting unit may A moving body control device for setting the moving process so that, when one moving body exists, the use of other moving bodies is prohibited on the specific route on which the moving body exists.
前記設定部は、前記特定経路に1つの前記移動体が存在する場合には、前記移動体が存在する前記特定経路のうち前記移動体の移動方向の部分への他の前記移動体の使用を禁止し、移動方向とは反対方向の部分の使用を許可するように前記移動工程を設定する請求項1に記載の移動体制御装置。 When one of the mobile bodies exists on the specific route, the setting unit prevents the use of the other mobile body for a part of the specific route on which the mobile body exists in the moving direction of the mobile body. 2. The moving body control device according to claim 1, wherein the moving step is set so as to prohibit the use of the portion opposite to the moving direction and to allow the use of the portion in the direction opposite to the moving direction. 前記計算部は、前記移動経路および前記移動工程が前記設定部によって変更された場合には、新しい前記移動経路および前記移動工程を入力値して、前記移動スケジュールを計算する請求項1または2に記載の移動体制御装置。 3. The moving schedule according to claim 1, wherein, when the moving route and the moving process are changed by the setting unit, the calculating unit inputs the new moving route and the moving process to calculate the moving schedule. The moving body control device described. 前記移動体の現在位置を取得する取得部(45)をさらに含み、
前記計算部は、前記移動体の現在位置と、前記移動スケジュールのおける予定位置との差が所定値より大きい場合には、前記移動スケジュールを再計算する請求項1~3のいずれか1つに記載の移動体制御装置。
further comprising an acquisition unit (45) that acquires the current position of the mobile body,
4. The moving schedule according to any one of claims 1 to 3, wherein the calculating unit recalculates the moving schedule when a difference between the current position of the moving body and the planned position in the moving schedule is greater than a predetermined value. The moving body control device described.
前記経路を移動する前記移動体以外の動作物体の移動情報を取得する取得部(45)と、
前記動作物体に移動を指示する指示部(54)と、をさらに含み、
前記設定部は、前記移動情報から前記動作物体の動きを予測して、前記動作物体を含む前記移動経路および前記移動工程を設定し、
前記計算部は、新しい前記移動経路および前記移動工程を入力値して、前記移動スケジュールを計算し、
前記移動制御部は、前記指示部に前記動作物体への指示を出力するように制御する請求項1~4のいずれか1つに記載の移動体制御装置。
an acquisition unit (45) for acquiring movement information of a working object other than the moving object that moves along the path;
an instruction unit (54) that instructs the moving object to move,
the setting unit predicts the motion of the action object from the movement information, and sets the movement path and the movement step including the action object;
the calculation unit inputs the new movement route and the movement process to calculate the movement schedule;
5. The moving body control device according to claim 1, wherein the movement control unit controls the instruction unit to output an instruction to the moving object.
前記制約条件には、前記移動体および前記動作物体の移動の優先順位が設定された優先条件を含む請求項5に記載の移動体制御装置。 6. The moving body control apparatus according to claim 5, wherein the constraint conditions include a priority condition in which priority of movement of the moving body and the moving object is set. 前記経路における移動不可部分を取得する取得部(45)をさらに含み、
前記設定部は、前記移動不可部分を回避する前記移動経路を設定する請求項1~6のいずれか1つに記載の移動体制御装置。
further comprising an acquisition unit (45) that acquires a non-movable portion of the route;
The moving body control device according to any one of claims 1 to 6, wherein the setting unit sets the moving route that avoids the immovable portion.
JP2021185008A 2021-11-12 2021-11-12 Mobile body control device Pending JP2023072447A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2021185008A JP2023072447A (en) 2021-11-12 2021-11-12 Mobile body control device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2021185008A JP2023072447A (en) 2021-11-12 2021-11-12 Mobile body control device

Publications (1)

Publication Number Publication Date
JP2023072447A true JP2023072447A (en) 2023-05-24

Family

ID=86424443

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021185008A Pending JP2023072447A (en) 2021-11-12 2021-11-12 Mobile body control device

Country Status (1)

Country Link
JP (1) JP2023072447A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117325185A (en) * 2023-11-27 2024-01-02 成都越凡创新科技有限公司 Method for removing deadlock of mobile robot and scheduling equipment

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117325185A (en) * 2023-11-27 2024-01-02 成都越凡创新科技有限公司 Method for removing deadlock of mobile robot and scheduling equipment
CN117325185B (en) * 2023-11-27 2024-04-09 成都越凡创新科技有限公司 Method for removing deadlock of mobile robot and scheduling equipment

Similar Documents

Publication Publication Date Title
US11630465B2 (en) Using zone rules to control autonomous vehicle operation within a zone
US9298186B2 (en) Methods for operation of autonomous vehicles in special control zones
CN103492968B (en) collision avoidance method and related system
US20090125174A1 (en) Computerized driverless vehicles and traffic control system
WO2023007849A1 (en) Global multi-vehicle decision making system for connected and automated vehicles in dynamic environment
JP2021071891A (en) Travel control device, travel control method, and computer program
US20210302978A1 (en) Accommodation area management device
JP2023072447A (en) Mobile body control device
CN114287024A (en) Traffic flow control system, traffic flow control program, traffic flow control method, and travel control device
US11468770B2 (en) Travel control apparatus, travel control method, and computer program
CN114347019B (en) Robot control method, robot and control system
JP7260792B2 (en) Control device and control system
JP2021012690A (en) System for controlling plural autonomous vehicles on mine site
JP6658292B2 (en) Driving support device
WO2023228669A1 (en) Agent management system and method
WO2023145547A1 (en) Information processing device, information processing method, and program
US20220397905A1 (en) Information processing apparatus, information processing method, and program
Ljubi et al. Path Planning of Multiple Automatic Guided Vehicles with Tricycle Kinematics Considering Priorities and Occupancy Time Windows
JP2023168996A (en) Movement control system, movement control method, movement controller, moving apparatus, movement control program, and program for moving apparatuses
Lueth et al. Cooperation Among Autonomous Robots: Unsignalised Road Intersection Problem

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20240307