JP7202834B2 - Movement plan calculation device and program - Google Patents

Movement plan calculation device and program Download PDF

Info

Publication number
JP7202834B2
JP7202834B2 JP2018189125A JP2018189125A JP7202834B2 JP 7202834 B2 JP7202834 B2 JP 7202834B2 JP 2018189125 A JP2018189125 A JP 2018189125A JP 2018189125 A JP2018189125 A JP 2018189125A JP 7202834 B2 JP7202834 B2 JP 7202834B2
Authority
JP
Japan
Prior art keywords
interfering
local
moving bodies
moving
intra
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018189125A
Other languages
Japanese (ja)
Other versions
JP2020057311A (en
Inventor
晴之 天本
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Secom Co Ltd
Original Assignee
Secom Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Secom Co Ltd filed Critical Secom Co Ltd
Priority to JP2018189125A priority Critical patent/JP7202834B2/en
Publication of JP2020057311A publication Critical patent/JP2020057311A/en
Application granted granted Critical
Publication of JP7202834B2 publication Critical patent/JP7202834B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、移動計画算出装置及びプログラムに係り、特に、複数の移動体の移動計画を求める移動計画算出装置及びプログラムに関する。 The present invention relates to a movement plan calculation apparatus and program, and more particularly to a movement plan calculation apparatus and program for obtaining movement plans for a plurality of moving bodies.

近年、複数のドローンが干渉することなくスムーズに協調飛行することが可能となるよう、各ドローンの飛行経路を求める技術が提案されている。例えば、非特許文献1には、各自律飛行ロボットの飛行経路おける速度変化(又は加速度変化)を積分した目的関数を定め、それを最小化する最適化問題を解くことにより、複数の自律飛行ロボットが互いに干渉せずにスムーズに飛行経路を算出する技術が開示されている。 In recent years, technology has been proposed to determine the flight paths of each drone so that multiple drones can smoothly fly in a coordinated manner without interfering with each other. For example, in Non-Patent Document 1, by determining an objective function that integrates velocity changes (or acceleration changes) in the flight path of each autonomous flying robot, and solving an optimization problem to minimize it, a plurality of autonomous flying robots discloses a technique for smoothly calculating a flight path without interfering with each other.

F. Augugliaro, A. P. Schoellig and R. D'Andrea, "Generation of collision-free trajectories for a quadrocopter fleet: A sequential convex programming approach," 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, 2012, pp. 1917-1922.7F. Augugliaro, A. P. Schoellig and R. D'Andrea, "Generation of collision-free trajectories for a quadrocopter fleet: A sequential convex programming approach," 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, 2012, pp. 1917-1922.7

しかしながら、上記の従来技術は、自律飛行ロボットの台数が増えるほど、また、飛行空間が大きくなるほど、飛行経路の算出までに要する計算コストが膨大となるため、リアルタイムに移動経路を算出する用途に利用することが困難であった。 However, as the number of autonomous flying robots increases and the flight space increases, the calculation cost required to calculate the flight route increases. it was difficult to

そこで、本発明は、少ない計算コストで互いに干渉関係にない移動計画を求めることができる移動計画算出装置及びプログラムを提供することを目的とする。 SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a movement plan calculation apparatus and a program that can obtain movement plans that do not interfere with each other at a low computational cost.

上記の目的を達成するために本発明に係る移動計画算出装置は、三次元空間を移動する複数の移動体の、互いに干渉関係にない移動計画を求める移動計画算出装置であって、前記複数の移動体の各々についての現在位置から目標位置に至る移動計画に基づいて、前記移動計画間の空間的な近さから互いに干渉関係にある前記移動体である干渉移動体と干渉位置とを求める干渉判定手段と、前記三次元空間内における前記干渉位置を含む局所空間を設定する局所空間設定手段と、前記干渉移動体のうちの2台以上の台数の前記移動体を、前記局所空間における回避計画の算出の対象である局所内修正移動体として選択する算出対象選択手段と、前記局所空間において前記局所内修正移動体が互いに干渉関係にない前記回避計画を、前記局所内修正移動体の各々について算出して前記移動計画を修正すると共に、当該局所内修正移動体以外の前記干渉移動体の前記移動計画を、少なくとも、前記局所内修正移動体が前記局所空間を通る期間、前記局所空間内を通らないように修正する移動計画修正手段と、を備えて構成されている。 In order to achieve the above object, a movement plan calculation apparatus according to the present invention is a movement plan calculation apparatus for obtaining movement plans that do not interfere with each other for a plurality of moving bodies moving in a three-dimensional space, the movement plan calculating apparatus comprising: Interference for determining an interfering moving object and an interfering position, which are said moving objects having an interference relationship with each other, based on a movement plan from a current position to a target position for each of the moving objects, based on the spatial proximity between said movement plans determination means; local space setting means for setting a local space including the interference position in the three-dimensional space; a calculation target selection means for selecting an intra-local correction moving body that is a target of calculation of the avoidance plan in which the intra-local correction moving bodies are not in an interference relationship with each other in the local space, for each of the intra-local correction moving bodies calculating and correcting the movement plan, and moving the movement plan of the interfering moving body other than the intra-local corrected moving body at least during the period in which the intra-local corrected moving body passes through the local space, and a movement plan correction means for correcting so as not to pass.

本発明に係る移動計画算出装置によれば、干渉判定手段が、前記複数の移動体の各々についての現在位置から目標位置に至る移動計画に基づいて、前記移動計画間の空間的な近さから互いに干渉関係にある前記移動体である干渉移動体と干渉位置とを求める。また、局所空間設定手段が、前記三次元空間内における前記干渉位置を含む局所空間を設定する。 According to the movement plan calculation device according to the present invention, the interference determination means determines from the spatial closeness between the movement plans based on the movement plans from the current position to the target position for each of the plurality of moving bodies. An interfering moving object and an interfering position, which are the moving objects that interfere with each other, are obtained. Local space setting means sets a local space including the interference position in the three-dimensional space.

そして、算出対象選択手段が、前記干渉移動体のうちの2台以上の台数の前記移動体を、前記局所空間における回避計画の算出の対象である局所内修正移動体として選択する。移動計画修正手段が、前記局所空間において前記局所内修正移動体が互いに干渉関係にない前記回避計画を、前記局所内修正移動体の各々について算出して前記移動計画を修正すると共に、当該局所内修正移動体以外の前記干渉移動体の前記移動計画を、少なくとも、前記局所内修正移動体が前記局所空間を通る期間、前記局所空間内を通らないように修正する。 Then, the calculation target selecting means selects two or more of the interfering moving bodies as intra-local correcting moving bodies to be calculated for the avoidance plan in the local space. A movement plan modifying means calculates, for each of the intra-locally corrected moving bodies, the avoidance plan in which the intra-locally corrected moving bodies do not interfere with each other in the local space to correct the movement plan; The movement plans of the interfering moving bodies other than the corrected moving bodies are corrected so that they do not pass through the local space at least during the period in which the intra-local corrected moving bodies pass through the local space.

また、前記移動体は、飛行体であって、前記算出対象選択手段は、前記局所空間内における前記干渉移動体の各々の加速度及び重量のうち少なくとも一方に基づいて前記台数を決定することが好適である。 Preferably, the moving objects are flying objects, and the calculation target selecting means determines the number based on at least one of acceleration and weight of each of the interfering moving objects in the local space. is.

また、前記算出対象選択手段は、前記局所空間内における前記干渉移動体の各々の前記加速度及び前記重量の少なくとも一方に基づいて前記干渉移動体の各々の影響範囲を表す立体の体積を求め、前記局所空間に占める、前記局所内修正移動体の各々の前記立体の体積の総和の割合が所定割合以下となるよう前記台数を求めることが好適である。 Further, the calculation target selecting means obtains a three-dimensional volume representing an influence range of each of the interference moving bodies based on at least one of the acceleration and the weight of each of the interference moving bodies in the local space, and It is preferable to determine the number of units so that the ratio of the total volume of the solids of the intra-local correction moving bodies to the local space is equal to or less than a predetermined ratio.

また、前記算出対象選択手段は、前記局所空間内における前記干渉移動体の各々の加速度及び重量のうち少なくとも一方に基づいて前記干渉移動体から前記局所内修正移動体を選択することが好適である。 Preferably, the calculation target selection means selects the intra-local correction moving body from the interference moving bodies based on at least one of acceleration and weight of each of the interference moving bodies in the local space. .

また、移動計画算出装置は、前記移動体の各々の優先度を記憶した記憶部を更に備え、前記算出対象選択手段は、前記干渉移動体の各々の前記優先度に基づいて、前記干渉移動体から前記局所内修正移動体を選択することが好適である。 Further, the movement plan calculation device further includes a storage unit that stores the priority of each of the moving objects, and the calculation target selecting means selects the interfering moving object based on the priority of each of the interfering moving objects. It is preferred to select the intra-local correction mover from.

本発明に係るプログラムは、三次元空間を移動する複数の移動体の、互いに干渉関係にない移動計画を求めるためのプログラムであって、コンピュータを、前記複数の移動体の各々についての現在位置から目標位置に至る移動計画に基づいて、前記移動計画間の空間的な近さから互いに干渉関係にある前記移動体である干渉移動体と干渉位置とを求める干渉判定手段、前記三次元空間内における前記干渉位置を含む局所空間を設定する局所空間設定手段、前記干渉移動体のうちの2台以上の台数の前記移動体を、前記局所空間における回避計画の算出の対象である局所内修正移動体として選択する算出対象選択手段、及び前記局所空間において前記局所内修正移動体が互いに干渉関係にない前記回避計画を、前記局所内修正移動体の各々について算出して前記移動計画を修正すると共に、当該局所内修正移動体以外の前記干渉移動体の前記移動計画を、少なくとも、前記局所内修正移動体が前記局所空間を通る期間、前記局所空間内を通らないように修正する移動計画修正手段として機能させるためのプログラムである。 A program according to the present invention is a program for obtaining a movement plan that does not interfere with each other for a plurality of moving bodies that move in a three-dimensional space, the program comprising: Interference determining means for determining an interfering moving object and an interfering position based on a moving plan leading to a target position, based on spatial proximity between the moving plans; local space setting means for setting a local space including the interference position; and two or more of the interfering moving bodies are selected as intra-local correction moving bodies to be calculated for an avoidance plan in the local space. and calculating the avoidance plan in which the intra-local correction moving bodies are not in an interfering relationship with each other in the local space for each of the intra-local correction moving bodies, and correcting the movement plan; as movement plan modifying means for modifying the movement plan of the interfering moving body other than the intra-local correcting moving body so as not to pass through the local space at least during the period in which the intra-local correcting moving body passes through the local space It's a program that makes it work.

以上説明したように、本発明の移動計画算出装置及びプログラムによれば、少ない計算コストで互いに干渉関係にない移動計画を求めることができる、という効果が得られる。 As described above, according to the movement plan calculation device and program of the present invention, it is possible to obtain movement plans that do not interfere with each other at a low calculation cost.

本発明の実施の形態に係る移動制御システムの構成を示す概略図である。1 is a schematic diagram showing the configuration of a movement control system according to an embodiment of the present invention; FIG. 本発明の実施の形態に係る自律飛行ロボットの構成を示す概略図である。1 is a schematic diagram showing the configuration of an autonomous flying robot according to an embodiment of the present invention; FIG. 本発明の実施の形態に係る管理装置の構成を示す概略図である。1 is a schematic diagram showing the configuration of a management device according to an embodiment of the present invention; FIG. 経路情報の構成を示す図である。It is a figure which shows the structure of route information. 個別経路の例を示す図である。FIG. 4 is a diagram showing an example of individual routes; 干渉位置を説明するための図である。It is a figure for demonstrating an interference position. 風の影響範囲を表す円柱の例を示す図である。FIG. 10 is a diagram showing an example of a cylinder representing a wind influence range; 局所空間の例を示す図である。It is a figure which shows the example of local space. 複数の局所空間を包含する局所空間の例を示す図である。FIG. 4 is a diagram showing an example of a local space that includes multiple local spaces; (A)個別経路の例を示す図、及び(B)個別経路を修正した結果の例を示す図である。(A) A diagram showing an example of an individual route, and (B) a diagram showing an example of a result of correcting the individual route. 本発明の実施の形態に係る管理装置による経路探索処理の動作を示すフローチャートである。It is a flowchart which shows operation|movement of the route search process by the management apparatus which concerns on embodiment of this invention. 本発明の実施の形態に係る管理装置による算出対象選択処理の動作を示すフローチャートである。It is a flowchart which shows the operation|movement of the calculation object selection process by the management apparatus which concerns on embodiment of this invention.

以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、本実施の形態では、複数のドローンの移動を制御する移動制御システムに本発明を適用した場合を例に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. In this embodiment, an example will be described in which the present invention is applied to a movement control system that controls movement of a plurality of drones.

<システム構成>
以下、本発明を適用した移動制御システム1000の概略構成を示した図1を参照し、本発明の実施の形態の構成を説明する。
<System configuration>
A configuration of an embodiment of the present invention will be described below with reference to FIG. 1 showing a schematic configuration of a movement control system 1000 to which the present invention is applied.

(移動制御システム1000)
移動制御システム1000は、管理装置100、及び複数台の自律飛行ロボット200を有する。管理装置100と自律飛行ロボット200の間は所定の閉域網(無線LAN等)を介して通信する。なお、管理装置100が、移動計画算出装置の一例である。
(Movement control system 1000)
A movement control system 1000 has a management device 100 and a plurality of autonomous flying robots 200 . Communication is performed between the management device 100 and the autonomous flying robot 200 via a predetermined closed network (wireless LAN, etc.). Note that the management device 100 is an example of a movement plan calculation device.

(自律飛行ロボット200)
自律飛行ロボット200は、例えば、クアッドロータ型の小型無人ヘリコプタである。なお、クアッドロータ型の小型無人ヘリコプタに限定されるものではなく、シングルロータ型の小型無人ヘリコプタについても同様に適用することができる。
(Autonomous flying robot 200)
The autonomous flying robot 200 is, for example, a quadrotor-type small unmanned helicopter. The present invention is not limited to quad-rotor type small unmanned helicopters, but can also be applied to single-rotor type small unmanned helicopters.

自律飛行ロボット200は、管理装置100から、移動計画の一例である飛行経路に係る情報(後述する経路情報)を受信し、当該飛行経路に沿って飛行するよう制御する。以下、自律飛行ロボット200を構成する位置・姿勢センサ210、通信部220、記憶部230、制御部240、モータ250、及びロータ260の各部について、詳細に説明する(図2参照)。 The autonomous flying robot 200 receives information (route information described later) on a flight route, which is an example of a movement plan, from the management device 100, and controls the robot to fly along the flight route. The position/orientation sensor 210, communication unit 220, storage unit 230, control unit 240, motor 250, and rotor 260 that constitute the autonomous flying robot 200 will be described in detail below (see FIG. 2).

(位置・姿勢センサ210)
位置・姿勢センサ210は、自律飛行ロボット200の現在位置および姿勢を取得するためのセンサである。位置・姿勢センサ210は、例えば、GNSS(Global Navigation Satellite System)等の航法衛星(人工衛星)から送信される電波(航法信号)を受信する受信機、加速度を計測する加速度センサ、方位を計測する電子コンパス、および角速度を計測するジャイロセンサを備えている。具体的には、位置・姿勢センサ210において、受信機が複数の航法衛星から送信される航法信号を受信して制御部240に出力するとともに電子コンパスおよびジャイロセンサによる計測信号を制御部240に出力する。
(Position/orientation sensor 210)
The position/orientation sensor 210 is a sensor for acquiring the current position and orientation of the autonomous flying robot 200 . The position/orientation sensor 210 includes, for example, a receiver that receives radio waves (navigation signals) transmitted from a navigation satellite (artificial satellite) such as a GNSS (Global Navigation Satellite System), an acceleration sensor that measures acceleration, and an azimuth measurement. It has an electronic compass and a gyro sensor that measures angular velocity. Specifically, in the position/orientation sensor 210, the receiver receives navigation signals transmitted from a plurality of navigation satellites, outputs them to the control unit 240, and outputs measurement signals from the electronic compass and the gyro sensor to the control unit 240. do.

現在位置を取得するために受信機に代えてレーザスキャナおよび気圧センサを用いるなど、他の既知のセンサを用いて既知の従来技術により現在位置および姿勢を得るための情報を取得するものとしてもよい。 Other known sensors may be used to obtain information for obtaining current position and attitude using known prior art techniques, such as using laser scanners and barometric pressure sensors instead of receivers to obtain current position. .

(通信部220)
通信部220は、管理装置100との間で通信するための通信モジュールである。
(Communication unit 220)
The communication unit 220 is a communication module for communicating with the management device 100 .

(記憶部230)
記憶部230は、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)等の情報記憶装置である。
(storage unit 230)
The storage unit 230 is an information storage device such as a ROM (Read Only Memory), a RAM (Random Access Memory), and an HDD (Hard Disk Drive).

記憶部230は、各種プログラムや各種データを記憶し、制御部240との間でこれらの情報を入出力する。 The storage unit 230 stores various programs and various data, and inputs/outputs such information to/from the control unit 240 .

各種データには、位置・姿勢情報232、経路情報234等の制御部240の各処理に用いられる情報が含まれる。 The various data include information used for each process of the control unit 240, such as the position/orientation information 232 and the route information 234. FIG.

位置・姿勢情報232は、位置・姿勢センサ210によって取得された、自律飛行ロボット200の現在位置および姿勢を予め定められた回数だけ循環記憶した位置と姿勢の履歴である。ここで、履歴内の最新の位置及び姿勢を特に現在位置及び現在姿勢と称し、それ以外の位置及び姿勢を過去位置及び過去姿勢と称する。 The position/orientation information 232 is a position and orientation history obtained by cyclically storing the current position and orientation of the autonomous flying robot 200 acquired by the position/orientation sensor 210 a predetermined number of times. Here, the most recent position and orientation in the history are particularly referred to as the current position and current orientation, and the other positions and orientations are referred to as past positions and past orientations.

経路情報234は、自律飛行ロボット200が移動する予定である飛行経路に関する情報である。具体的には、飛行経路上における座標列(x,y,z)と、各位置(座標)における時刻、速度、加速度とを対応付けた情報である。経路情報234は、管理装置100から受信する。 The route information 234 is information about the flight route along which the autonomous flying robot 200 is scheduled to travel. Specifically, it is information that associates a coordinate sequence (x, y, z) on the flight path with time, velocity, and acceleration at each position (coordinate). The route information 234 is received from the management device 100 .

制御部240は、CPU、ROM、RAM等を備えたコンピュータであり、記憶部230からプログラムやデータを読み出し、プログラムに従って、位置・姿勢算出手段242および飛行制御手段244等として機能する。 The control unit 240 is a computer having a CPU, a ROM, a RAM, etc., reads programs and data from the storage unit 230, and functions as a position/attitude calculation means 242, a flight control means 244, etc. according to the programs.

位置・姿勢算出手段242は、位置・姿勢センサ210の出力から飛行空間における自律飛行ロボット200の現在位置および姿勢を算出し、位置・姿勢情報232として記憶部230に記憶させる。 The position/orientation calculation means 242 calculates the current position and orientation of the autonomous flying robot 200 in the flight space from the output of the position/orientation sensor 210 and stores them in the storage unit 230 as the position/orientation information 232 .

位置・姿勢算出手段242は、例えば、位置・姿勢センサ210によって出力された航法信号から緯度・経度・高度を求め、予め記憶した変換規則を用いて飛行空間の座標系における位置に変換する。 The position/attitude calculation means 242 obtains the latitude/longitude/altitude from the navigation signal output by the position/attitude sensor 210, for example, and converts them into positions in the flight space coordinate system using a conversion rule stored in advance.

また、位置・姿勢算出手段242は、位置・姿勢センサ210によって出力された加速度センサおよびジャイロセンサの計測信号から、飛行空間の座標系における現在姿勢を求める。 Also, the position/attitude calculation means 242 obtains the current attitude in the coordinate system of the flight space from the measurement signals of the acceleration sensor and the gyro sensor output by the position/attitude sensor 210 .

なお、位置・姿勢センサ210によって出力された電子コンパスの計測信号から、飛行空間の座標系における方位を求め、他のセンサからの計測信号を更に用いて現在姿勢を算出してもよい。 Note that the azimuth in the coordinate system of the flight space may be obtained from the electronic compass measurement signal output by the position/orientation sensor 210, and the current attitude may be calculated using measurement signals from other sensors.

以上のように、位置・姿勢センサ210と通信部220と位置・姿勢算出手段242(制御部240)とが共働して自律飛行ロボット200の現在位置及び現在姿勢を検出する。 As described above, the position/orientation sensor 210, the communication section 220, and the position/orientation calculation means 242 (control section 240) cooperate to detect the current position and orientation of the autonomous flying robot 200. FIG.

なお、位置・姿勢算出手段242は、現在位置を算出する都度、通信部220を介して当該現在位置を管理装置100に送信する。 Note that the position/orientation calculation unit 242 transmits the current position to the management device 100 via the communication unit 220 every time it calculates the current position.

飛行制御手段244は、経路情報234、位置・姿勢情報232を参照し、自律飛行ロボット200を経路情報234に記された飛行経路に追従して移動するようモータ250の回転速度を制御する。 The flight control means 244 refers to the route information 234 and the position/orientation information 232 and controls the rotation speed of the motor 250 so that the autonomous flying robot 200 follows the flight route described in the route information 234 .

具体的には、飛行制御手段244は、経路情報234に記された現在時刻の位置(座標)と、位置・姿勢情報232に記された現在位置との誤差が小さくなるようにモータ250の回転速度を制御する。 Specifically, the flight control means 244 rotates the motor 250 so that the error between the position (coordinates) at the current time written in the route information 234 and the current position written in the position/attitude information 232 is small. Control speed.

また、飛行制御手段244は、位置・姿勢情報232に基づいて自律飛行ロボット200の現在の速度及び加速度を算出し、これらの値が経路情報234に記された現在時刻の速度及び加速度との誤差が小さくなるようにモータ250の回転速度を制御する。この際、位置・姿勢情報232における姿勢に係る情報も考慮する。 Further, the flight control means 244 calculates the current velocity and acceleration of the autonomous flying robot 200 based on the position/orientation information 232, and calculates the error between these values and the velocity and acceleration at the current time described in the route information 234. is controlled so that the rotation speed of the motor 250 becomes small. At this time, the information related to the orientation in the position/orientation information 232 is also considered.

(モータ250、ロータ260)
4つのロータ260と、その回転軸がそれぞれ対応するロータ260に連結された4つのモータ250からなる4つのユニットが自律飛行ロボット200に搭載されている。
(motor 250, rotor 260)
The autonomous flying robot 200 is equipped with four units consisting of four rotors 260 and four motors 250 whose rotation shafts are respectively connected to the corresponding rotors 260 .

各モータ250は、制御部240に接続されて制御部240から回転速度を指示される。4つのロータ260が独立して回転することにより自律飛行ロボット200に任意方向の加速度を発生させる。 Each motor 250 is connected to the control unit 240 and instructed by the control unit 240 about the rotation speed. The independent rotation of the four rotors 260 causes the autonomous flying robot 200 to generate acceleration in any direction.

(管理装置100)
管理装置100は、飛行空間内の所定位置に設置され、自律飛行ロボット200の飛行先である目標位置を決定し、自律飛行ロボット200から受信した現在位置に基づいて、現在位置から目標位置に至る飛行経路を求め、自律飛行ロボット200に送信する。
(Management device 100)
The management device 100 is installed at a predetermined position in the flight space, determines a target position to which the autonomous flying robot 200 flies, and reaches the target position from the current position based on the current position received from the autonomous flying robot 200. A flight path is obtained and transmitted to the autonomous flying robot 200 .

なお、管理装置100は、遠隔の監視センタに設置してある図示しないセンタ装置と広域網(インターネット、携帯電話網等)を介して通信し、センタ装置からの指示を受け、当該指示に基づいて目標位置を設定したり、センタ装置に自律飛行ロボット200に係る各種情報を送信するようにしてもよい。 The management device 100 communicates with a center device (not shown) installed in a remote monitoring center via a wide area network (the Internet, a mobile phone network, etc.), receives instructions from the center device, and based on the instructions, A target position may be set, and various information related to the autonomous flying robot 200 may be transmitted to the center device.

以下、管理装置100を構成する通信部110、記憶部120、及び制御部130の各部について、詳細に説明する(図3参照)。 The communication unit 110, the storage unit 120, and the control unit 130, which constitute the management device 100, will be described in detail below (see FIG. 3).

(通信部110)
通信部110は、自律飛行ロボット200との間で通信するための通信モジュールである。
(Communication unit 110)
The communication unit 110 is a communication module for communicating with the autonomous flying robot 200 .

(記憶部120)
記憶部120は、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)等の情報記憶装置である。
(storage unit 120)
The storage unit 120 is an information storage device such as a ROM (Read Only Memory), a RAM (Random Access Memory), and an HDD (Hard Disk Drive).

記憶部120は、各種プログラムや各種データを記憶し、制御部130との間でこれらの情報を入出力する。 The storage unit 120 stores various programs and various data, and inputs/outputs such information to/from the control unit 130 .

各種データには、位置情報122、空間情報124、機体情報126、経路情報128等の制御部130の各処理に用いられる情報が含まれる。 The various data include information used for each process of the control unit 130, such as position information 122, space information 124, aircraft information 126, route information 128, and the like.

(位置情報122)
位置情報122は、自律飛行ロボット200の現在位置及び目標位置を示した情報である。
(Position information 122)
The position information 122 is information indicating the current position and target position of the autonomous flying robot 200 .

自律飛行ロボット200から現在位置を受信すると、当該自律飛行ロボット200の識別子(機体ID)と対応付けて記憶する。 When the current position is received from the autonomous flying robot 200 , it is stored in association with the identifier (body ID) of the autonomous flying robot 200 .

また、目標位置設定手段132によって、ある自律飛行ロボット200の目標位置が設定されると、当該自律飛行ロボット200の機体IDに対応付けて目標位置が記憶される。 Also, when the target position of a certain autonomous flying robot 200 is set by the target position setting means 132, the target position is stored in association with the body ID of the autonomous flying robot 200 concerned.

(空間情報124)
空間情報124は、飛行空間の3次元構造等を表した情報である。本実施形態における空間情報124は、飛行空間をボクセル空間として複数のボクセル(単位空間)に分割して飛行空間の障害物の構造等を表した情報である。空間情報124は、システムの管理者によって予め設定され記憶される。
(Spatial information 124)
The space information 124 is information representing the three-dimensional structure of the flight space. The space information 124 in this embodiment is information representing the structure of obstacles in the flight space by dividing the flight space into a plurality of voxels (unit spaces) as a voxel space. Spatial information 124 is preset and stored by a system administrator.

本実施形態では、飛行空間を所定単位の大きさ(例えば15cm×15cm×15cm)のボクセルに等分割し、ボクセル毎に識別子であるボクセルIDと、飛行空間におけるボクセルの位置(座標)とを対応付けて空間情報124として記憶する。 In this embodiment, the flight space is equally divided into voxels of a predetermined unit size (for example, 15 cm × 15 cm × 15 cm), and the voxel ID, which is an identifier for each voxel, corresponds to the position (coordinates) of the voxel in the flight space. It is stored as the spatial information 124 with the data.

また、空間情報124は、各ボクセルの属性を示す情報を含む。例えば、属性として、自律飛行ロボット200の移動の障害となるか否かを示した障害属性が少なくとも付与される。 The spatial information 124 also includes information indicating attributes of each voxel. For example, as an attribute, at least an obstacle attribute indicating whether or not the movement of the autonomous flying robot 200 is hindered is added.

すなわち、建造物等の障害物に位置するボクセルは、自律飛行ロボット200が移動できない空間として障害属性として設定される。 That is, a voxel located in an obstacle such as a building is set as an obstacle attribute as a space in which the autonomous flying robot 200 cannot move.

このように、空間情報124としてボクセルの位置と属性を用いることにより飛行空間に存在する障害物等の物体の位置や大きさ(形状)を表現することができる。 In this way, by using the positions and attributes of voxels as space information 124, it is possible to express the positions and sizes (shapes) of objects such as obstacles that exist in the flight space.

(機体情報126)
機体情報126は、各自律飛行ロボット200の特性(性能)及び移動優先度を示した情報である。機体情報126は、システムの管理者によって予め設定され記憶される。
(Aircraft information 126)
The aircraft information 126 is information indicating the characteristics (performance) and movement priority of each autonomous flying robot 200 . The device information 126 is preset and stored by the system administrator.

具体的には、機体情報126は、各自律飛行ロボット200の機体IDと、特性値(機体重量、大きさ、最大速度、最大加速度、及び最大加加速度)と、タスク優先度とを対応付けた情報である。 Specifically, the body information 126 associates the body ID of each autonomous flying robot 200, characteristic values (body weight, size, maximum speed, maximum acceleration, and maximum jerk) with task priority. Information.

タスク優先度は、自律飛行ロボット200が行っているタスク(例えば、侵入箇所へ急行中、巡回警備中、AED搬送中、荷物搬送中、充電のための帰還中、賊追跡中など)の重要度に応じて、移動制御システム1000の管理者によって設定される数値であり、優先されるべき自律飛行ロボット200ほど大きい値が設定される。 The task priority is the importance of a task that the autonomous flying robot 200 is performing (e.g., rushing to an intrusion point, patrol security, AED transport, luggage transport, returning for charging, chasing a thief, etc.). is a numerical value set by the administrator of the mobile control system 1000 according to , and a larger value is set for the autonomous flying robot 200 to which priority is given.

(経路情報128)
経路情報128は、各自律飛行ロボット200の飛行経路に関する情報である。具体的には、経路情報128は、自律飛行ロボット200の機体IDと、経路上の座標値(x、y、z)、当該座標値における通過時間、速度、加速度、加加速度(Jerk)、加加速度の変化量(Snap)の値とが対応付けて記憶される。
(Route information 128)
The route information 128 is information regarding the flight route of each autonomous flying robot 200 . Specifically, the route information 128 includes the body ID of the autonomous flying robot 200, coordinate values (x, y, z) on the route, passage time at the coordinate values, speed, acceleration, jerk (Jerk), acceleration It is stored in association with the value of the amount of change in acceleration (Snap).

例えば、図4に示す経路情報128では、機体IDが「A」である自律飛行ロボット200について、経路上の座標値(x1、y1、z1)の通過時間がt1であり、加速度がa1であり、加加速度がj1であり、加加速度の変化量がs1であることが記憶され、また、経路上の座標値(x2、y2、z2)の通過時間がt2であり、加速度がa2であり、加加速度がj2であり、加加速度の変化量がs2であることが記憶されている。ここで、加速度a1、a2は、加速度のx軸成分、y軸成分、z軸成分を要素とするベクトルであり、加加速度j1、j2は、加加速度のx軸成分、y軸成分、z軸成分を要素とするベクトルであり、加加速度の変化量s1、s2は、加加速度の変化量のx軸成分、y軸成分、z軸成分を要素とするベクトルである。 For example, in the route information 128 shown in FIG. 4, the passage time of the coordinate values (x1, y1, z1) on the route for the autonomous flying robot 200 whose body ID is "A" is t1, and the acceleration is a1. , the jerk is j1 and the amount of jerk change is s1, the passage time of the coordinate values (x2, y2, z2) on the route is t2, the acceleration is a2, It is stored that the jerk is j2 and the amount of change in the jerk is s2. Here, the accelerations a1 and a2 are vectors whose elements are the x-axis component, the y-axis component and the z-axis component of the acceleration, and the jerk j1 and j2 are the x-axis component, the y-axis component and the z-axis component of the jerk. The jerk change amounts s1 and s2 are vectors whose elements are the x-axis component, the y-axis component, and the z-axis component of the jerk change amount.

経路情報128は、経路算出手段134及び経路修正手段142によって更新される。 The route information 128 is updated by route calculation means 134 and route correction means 142 .

(制御部130)
制御部130は、CPU、ROM、RAM等を備えたコンピュータであり、記憶部120からプログラムやデータを読み出し、プログラムに従って、目標位置設定手段132、経路算出手段134、干渉判定手段136、局所空間設定手段138、算出対象選択手段140、及び経路修正手段142等として機能する。なお、経路修正手段142が、移動計画修正手段の一例である。
(control unit 130)
The control unit 130 is a computer having a CPU, a ROM, a RAM, etc., reads programs and data from the storage unit 120, and according to the program, controls a target position setting means 132, a route calculation means 134, an interference determination means 136, and a local space setting. It functions as means 138, calculation target selection means 140, route correction means 142, and the like. Note that the route correction means 142 is an example of the movement plan correction means.

(目標位置設定手段132)
目標位置設定手段132は、各自律飛行ロボット200の目標位置を設定し、機体IDに対応付けて位置情報122として記憶部230に記憶させる。
(Target position setting means 132)
The target position setting means 132 sets the target position of each autonomous flying robot 200 and stores it in the storage unit 230 as the position information 122 in association with the machine body ID.

目標位置は、例えば、巡回警備をタスクとする自律飛行ロボット200であれば、予め定めた時刻になったときに所定の巡回位置が目標位置となるよう設定する。また、侵入者への対応をタスクとする自律飛行ロボット200であれば、図示しないセンサからの侵入検知出力に基づいて、当該センサの検知位置の近傍を目標位置に設定してもよい。 For example, in the case of the autonomous flying robot 200 whose task is patrol security, the target position is set so that a predetermined patrol position becomes the target position at a predetermined time. In the case of the autonomous flying robot 200 whose task is to deal with intruders, the vicinity of the detection position of a sensor (not shown) may be set as the target position based on the intrusion detection output from the sensor.

他にも、図示しないセンタ装置からの指示に基づいて、目標位置を設定してもよい。 Alternatively, the target position may be set based on an instruction from a center device (not shown).

(経路算出手段134)
経路算出手段134は、各自律飛行ロボット200の現在位置から目標位置に至る飛行経路を算出し、算出した経路を経路情報128として記憶部230に記憶させる個別経路算出処理を行う。この際、算出される飛行経路は、他の自律飛行ロボット200との干渉を考慮せずに、障害物と干渉しないことのみを考慮して算出した飛行経路であり、以下、経路算出手段134で算出した飛行経路を個別経路と称する。
(Route calculation means 134)
The route calculation means 134 calculates a flight route from the current position of each autonomous flying robot 200 to a target position, and performs individual route calculation processing to store the calculated route in the storage unit 230 as the route information 128 . At this time, the calculated flight path is a flight path calculated only in consideration of not interfering with obstacles without considering interference with other autonomous flying robots 200. Hereinafter, the path calculation means 134 The calculated flight route is called an individual route.

後述するように、経路算出手段134は、A*経路探索法などの経路探索法によって基本経路を算出し、当該基本経路に基づいて経由点を設定し、当該経由点等を制約条件とした最適化問題を解くことにより個別経路を算出している。個別経路算出処理の詳細については後述する。 As will be described later, the route calculation means 134 calculates a basic route by a route search method such as the A* route search method, sets waypoints based on the basic route, and determines an optimum route using the waypoints as a constraint condition. Individual paths are calculated by solving the transformation problem. Details of the individual route calculation process will be described later.

(干渉判定手段136)
干渉判定手段136は、個別経路間の空間的な近さから自律飛行ロボット200同士が干渉しうる(他の自律飛行ロボット200の飛行に悪影響を及ぼしうる)位置である干渉位置と、干渉しうる自律飛行ロボット200(以下、干渉移動体と称する)を求める干渉判定処理を行う。干渉判定処理の詳細については後述する。また、干渉とは、所定基準を超えて近接しないことをいう。
(Interference determination means 136)
The interference determination means 136 can interfere with the interference position, which is a position where the autonomous flying robots 200 can interfere with each other due to the spatial proximity between individual routes (the flight of other autonomous flying robots 200 can be adversely affected). Interference determination processing for determining the autonomous flying robot 200 (hereinafter referred to as an interfering mobile object) is performed. Details of the collision determination process will be described later. Also, interference means that they do not come closer than a predetermined standard.

(局所空間設定手段138)
局所空間設定手段138は、干渉判定手段136にて求めた干渉位置を含む局所空間を設定する局所空間設定処理を行う。局所空間設定処理の詳細については後述する。
(Local space setting means 138)
The local space setting means 138 performs local space setting processing for setting a local space including the interference position obtained by the interference determination means 136 . Details of the local space setting process will be described later.

(算出対象選択手段140)
算出対象選択手段140は、干渉移動体の中から、局所空間の大きさに応じた2台以上の台数の自律飛行ロボット200を、局所空間における回避経路の算出の対象(以下、局所内修正移動体と称する)として選択する算出対象選択処理を行う。算出対象選択処理の詳細については後述する。
(Calculation target selection means 140)
The calculation target selection means 140 selects two or more autonomous flying robots 200 according to the size of the local space from among the interfering moving bodies as targets for calculating an avoidance route in the local space (hereinafter referred to as intra-local correction movement Calculation object selection processing is performed to select a field. Details of the calculation target selection process will be described later.

(経路修正手段142)
経路修正手段142は、局所空間において局所内修正移動体が互いに干渉関係にない回避経路を、最適化計算を行うことによって算出し、算出された回避経路に基づいて経路情報を修正すると共に、局所内修正移動体以外の干渉移動体の経路情報を、局所空間内を通らないように修正する個別経路修正処理を行う。個別経路修正処理の詳細については後述する。なお、回避経路が、回避計画の一例である。
(Route correction means 142)
The route correction means 142 calculates an avoidance route in which the intra-local correction moving bodies do not interfere with each other in the local space by performing an optimization calculation, corrects the route information based on the calculated avoidance route, Individual route correction processing is performed to correct the route information of interfering mobile bodies other than the inner corrected mobile body so that they do not pass through the local space. Details of the individual route correction processing will be described later. Note that the avoidance route is an example of an avoidance plan.

(個別経路算出処理について)
ここで、個別経路算出処理の詳細について説明する。
(Regarding Individual Route Calculation Processing)
Here, the details of the individual route calculation process will be described.

まず、空間情報に基づいて、障害属性が付与されていないボクセルの中心位置をノードとして求める。そして求めた各ノードと隣接するノード間を連結した線分をエッジとしたグラフ構造を求める。なお、グラフ構造は経路探索処理の前に予め生成し、記憶しておいてよい。 First, based on the spatial information, the central position of the voxel to which no obstacle attribute is assigned is obtained as a node. Then, a graph structure is obtained in which line segments connecting each obtained node and adjacent nodes are used as edges. Note that the graph structure may be generated and stored in advance before the route search processing.

生成したグラフ構造及び位置・姿勢情報232を用いて、現在位置に対応するボクセルのノード(以下「開始ノード」という)から目標位置に対応するボクセルのノード(以下「目標ノード」という)に至る経路の長さ等によって求まる総コスト値が最も小さくなる経路をA*経路探索法により探索する。この探索によって求まる経路を「基本経路」という。なお、基本経路の探索方法は、A*経路探索法に限定されるものでなく、ダイクストラ法等の他の経路探索方法を適用してもよい。A*経路探索法による経路探索手法については、例えば、参考文献1に記載の手法と同様であるため、詳細な説明を省略する。 Using the generated graph structure and position/orientation information 232, a path from the voxel node corresponding to the current position (hereinafter referred to as the "start node") to the voxel node corresponding to the target position (hereinafter referred to as the "target node") The A* route search method is used to search for a route that minimizes the total cost value obtained from the length of . A route obtained by this search is called a “basic route”. The basic route search method is not limited to the A* route search method, and other route search methods such as the Dijkstra method may be applied. Since the route search method by the A* route search method is the same as the method described in reference 1, for example, detailed description thereof will be omitted.

[参考文献1]:特開2017-016359号公報 [Reference 1]: JP 2017-016359 A

そして、基本経路に基づいて経由点を設定する。例えば、基本経路を構成するノードの中で直線上に配置されているノードを除いた場合に残ったノードを経由点として選択する。 Then, a waypoint is set based on the basic route. For example, among the nodes forming the basic path, the remaining nodes after excluding the nodes arranged on a straight line are selected as waypoints.

位置情報、経由点の位置、機体性能(最大速度、最大加速度、最大加加速度等)を制約条件として設定し、目的関数を最小化する経路(多項式経路)を個別経路として算出する。 Positional information, positions of waypoints, aircraft performance (maximum velocity, maximum acceleration, maximum jerk, etc.) are set as constraints, and a path (polynomial path) that minimizes the objective function is calculated as an individual path.

多項式経路とは、時間の変数と係数で構成される多項式で経路を表現したものである。各XYZ軸それぞれについて多項式経路がある。以下に、X軸について多項式経路を表す式を示す。
x(t)=c55+c44+c33+c22+c1t+c0
A polynomial path is a path represented by a polynomial consisting of time variables and coefficients. There is a polynomial path for each XYZ axis. Below is an equation representing the polynomial path for the X axis.
x ( t ) = c5t5 + c4t4 + c3t3 + c2t2 + c1t + c0

また、多項式経路は基本経路の経由点間毎に設定される。例えば、図5に示すように、基本経路Bに対して、始点Sと経由点N1との間の多項式経路と、経由点N1、N2間の多項式経路と、経由点N2と終点Gの間の多項式経路とが、個別経路Rとして設定される。 Also, a polynomial path is set for each waypoint of the basic path. For example, as shown in FIG. A polynomial path is set as an individual path R.

自律飛行ロボット200が追従し易い個別経路を算出するため、ここでは以下の制約条件を満たした上で、加加速度変化が最小となる個別経路を算出する。したがって、目的関数は経路の加加速度変化を積分したものとし、これを最小化する多項式経路を求める。また、加速度変化が最小となる個別経路を求めてもよい。 In order to calculate an individual route that the autonomous flying robot 200 can easily follow, the individual route that minimizes the change in jerk is calculated after satisfying the following constraints. Therefore, the objective function is the integral of the jerk change of the path, and the polynomial path that minimizes this is obtained. Alternatively, an individual route that minimizes changes in acceleration may be obtained.

<制約条件>
a. 個別経路の始点は現在位置である。また、始点の速度、加速度、加加速度、加加速度の変化は0である。
b. 個別経路の終点は目標位置である。また、終点の速度、加速度、加加速度、加加速度の変化は0である。
c. 経由点の位置は上記で設定された位置である。そして、経由点間前後の経路を滑らかに接続させるため、経由点の速度、加速度、加加速度は経由点間前後の多項式経路で同じ値をとる。
d. 機体性能を満たす経路とするため、経路の速度、加速度、加加速度の最大値が指定値以内となるようにする。
<Constraints>
a. The starting point of an individual path is the current position. Also, the velocity, acceleration, jerk, and change in jerk at the starting point are zero.
b. The end point of the individual path is the target position. Also, the velocity, acceleration, jerk, and change in jerk at the end point are zero.
c. The position of the waypoint is the position set above. In order to smoothly connect the paths before and after the waypoints, the velocity, acceleration, and jerk of the waypoints take the same values in the polynomial paths before and after the waypoints.
d. In order to create a route that satisfies aircraft performance, the maximum values of route speed, acceleration, and jerk shall be within specified values.

上記のa.~d.の制約条件を満たした上で、目的関数を最小化する経路を求めることで、機体動作制約を満たした個別経路、かつ、経路通過時の時間等が明確な経路を算出する。制約条件を満たした個別経路の算出方法は、下記の参考文献2に記載の手法と同様であるため、詳細な説明を省略する。 By finding the route that minimizes the objective function after satisfying the above constraints a. to d. calculate. A method of calculating an individual route that satisfies the constraint conditions is the same as the method described in Reference 2 below, so detailed description thereof will be omitted.

[参考文献2]:D. Mellinger and V. Kumar, "Minimum snap trajectory generation and control for quadrotors," 2011 IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 2520-2525. [Reference 2]: D. Mellinger and V. Kumar, "Minimum snap trajectory generation and control for quadrotors," 2011 IEEE International Conference on Robotics and Automation, Shanghai, 2011, pp. 2520-2525.

(干渉判定処理について)
次に、干渉判定処理の詳細について説明する。
(Regarding interference determination processing)
Next, details of the interference determination process will be described.

干渉判定処理は、個別経路間の空間的な近さから自律飛行ロボット200同士が干渉しうる位置である干渉位置と、干渉しうる自律飛行ロボット200を求める処理である。例えば、図6に示すように、自律飛行ロボット200a~200eの個別経路Ra~Reの間の空間的な近さから、自律飛行ロボット200a~200e同士が干渉しうる干渉位置と、自律飛行ロボット200a~200eのうち、干渉しうる自律飛行ロボット200を求める。 The collision determination process is a process of determining the interference position, which is the position where the autonomous flying robots 200 can interfere with each other, and the autonomous flying robots 200 that can interfere, based on the spatial proximity between the individual paths. For example, as shown in FIG. 6, based on the spatial proximity between the individual routes Ra to Re of the autonomous flying robots 200a to 200e, the interference positions at which the autonomous flying robots 200a to 200e may interfere with each other, and the autonomous flying robot 200a 200e, find an autonomous flying robot 200 that can interfere.

本実施形態では、自律飛行ロボット200の移動によって生じる風の影響範囲を考慮して「空間的な近さ」の判定を行う。 In this embodiment, the “spatial proximity” is determined in consideration of the range affected by the wind caused by the movement of the autonomous flying robot 200 .

まず、以下に説明するように、風の影響範囲を求める。 First, as described below, the area affected by the wind is obtained.

機体情報126に記された機体重量、大きさ、最大加速度に基づいて、風の影響範囲を円柱に近似することによって簡易的に求める。 Based on the aircraft weight, size, and maximum acceleration described in the aircraft information 126, the wind influence range is simply obtained by approximating it to a cylinder.

具体的には、自律飛行ロボット200の大きさが大きいほど円柱の底面の半径が大きくなるよう設定し、自律飛行ロボット200の機体重量と最大加速度が大きいほど円柱の高さが高くなるよう設定する。例えば、図7に示すように、自律飛行ロボット200a、200bに対して、風の影響範囲を表す円柱Ca、Cbを設定する。 Specifically, the larger the size of the autonomous flying robot 200, the larger the radius of the bottom surface of the cylinder. . For example, as shown in FIG. 7, cylinders Ca and Cb are set for the autonomous flying robots 200a and 200b to represent the range of influence of the wind.

上記の方法(円柱近似)の他にも、機体の最大傾け角度や、ロータ260の配置とロータ260の大きさ、ブレード傾き、最大回転速度等を考慮して流体力学的に解析することによって風の影響範囲を求めてもよい。また、自律飛行ロボット200の機体重量のみに応じて円柱の高さを決定してもよいし、自律飛行ロボット200の最大加速度のみに応じて円柱の高さを決定してもよい。 In addition to the above method (cylindrical approximation), the maximum inclination angle of the airframe, the arrangement and size of the rotor 260, the inclination of the blades, the maximum rotation speed, etc. can be considered for hydrodynamic analysis. You can also find the range of influence of Also, the height of the cylinder may be determined based only on the body weight of the autonomous flying robot 200, or the height of the cylinder may be determined based only on the maximum acceleration of the autonomous flying robot 200.

そして、以下に説明するように、経路情報128に基づいて風の影響範囲を移動させ干渉位置を求める。 Then, as will be described below, based on the route information 128, the affected area of the wind is moved to obtain the interference position.

まず、経路情報128を参照し、全ての自律飛行ロボット200に対して、それぞれの自律飛行ロボット200の個別経路上の所定時刻における位置(座標)を求め、当該位置に、上記で求めた円柱を配置する。また、時刻を所定間隔で変化させ、各時刻においても同様に円柱を配置する。例えば、図7に示すように、自律飛行ロボット200a、200bの個別経路Ra、Rb上の位置Pa、Pbに、円柱Ca、Cbを配置する。 First, with reference to the route information 128, for all the autonomous flying robots 200, the position (coordinates) at a predetermined time on the individual route of each autonomous flying robot 200 is obtained, and the cylinder calculated above is placed at the position. Deploy. Also, the time is changed at predetermined intervals, and the cylinders are arranged similarly at each time. For example, as shown in FIG. 7, cylinders Ca and Cb are arranged at positions Pa and Pb on individual routes Ra and Rb of autonomous flying robots 200a and 200b.

そして、ある自律飛行ロボット200の円柱と、他の自律飛行ロボット200の円柱とが重なる位置に基づいて干渉位置を求める。例えば、図7に示すように、自律飛行ロボット200a、200bの位置Pa、Pbで、円柱Ca、Cbが重なる場合には、自律飛行ロボット200a、200bの位置Pa、Pbの中間地点Iabを干渉位置として求める。なお、円柱が重なった部分の重心位置を干渉位置として求めてもよい。 Then, the interference position is determined based on the position where the cylinder of a certain autonomous flying robot 200 and the cylinder of another autonomous flying robot 200 overlap. For example, as shown in FIG. 7, when the positions Pa and Pb of the autonomous flying robots 200a and 200b overlap with the cylinders Ca and Cb, the intermediate point Iab between the positions Pa and Pb of the autonomous flying robots 200a and 200b is the interference position. Ask as Note that the position of the center of gravity of the portion where the cylinders overlap may be obtained as the interference position.

なお、干渉し合った各自律飛行ロボット200を「干渉移動体」として特定する。 Each autonomous flying robot 200 that interferes with each other is specified as an "interfering mobile object".

(局所空間設定処理について)
次に、局所空間設定処理の詳細について説明する。
(Regarding local space setting processing)
Next, details of the local space setting process will be described.

まず、干渉位置を含む局所空間を設定する。本実施形態では、所定サイズ(例えば、5m×5m×5m)の立方体であって、立方体の中心位置が干渉位置となるよう設定する。例えば、図8に示すように、自律飛行ロボット200c、200dの円柱が重なる位置に基づいて求められた干渉位置Icdを中心位置とした立方体Lcdを設定する。 First, a local space including the interference position is set. In this embodiment, a cube of a predetermined size (eg, 5 m×5 m×5 m) is used, and the center position of the cube is set to be the interference position. For example, as shown in FIG. 8, a cube Lcd centered on the interference position Icd obtained based on the overlapping positions of the cylinders of the autonomous flying robots 200c and 200d is set.

このとき、立方体の中心位置が干渉位置となるように配置したときに当該立方体が障害物などの飛行不可領域と重なる場合は、重ならない位置まで立方体の位置をずらす。あるいは、飛行不可領域と重ならない大きさであり干渉位置を含む直方体を局所空間として設定する。 At this time, if the cube overlaps a non-flyable area such as an obstacle when the cube is placed so that the center position is the interference position, the position of the cube is shifted to a position where it does not overlap. Alternatively, a rectangular parallelepiped having a size that does not overlap the non-flying area and including the interference position is set as the local space.

また、複数の干渉位置が検出されたときは、干渉位置ごとに局所空間を設定する。この際、ある局所空間と他の局所空間との一部が重なり合っている場合、重なり合った局所空間を包含する大きさからなる直方体を局所空間として設定する。例えば、図9に示すように、干渉位置I1を中心とする立方体L1と、干渉位置I2を中心とする立方体L2との一部が重なり合っている場合、立方体L1、L2を包含する直方体L12を、局所空間として設定する。 Also, when a plurality of interference positions are detected, a local space is set for each interference position. At this time, if a certain local space partially overlaps with another local space, a rectangular parallelepiped having a size that includes the overlapping local spaces is set as the local space. For example, as shown in FIG. 9, when a cube L1 centered at the interference position I1 partially overlaps with a cube L2 centered at the interference position I2, a rectangular parallelepiped L12 containing the cubes L1 and L2 is Set as local space.

(回避経路算出処理について)
次に、回避経路算出処理の詳細について説明する。
(Regarding avoidance route calculation processing)
Next, details of the avoidance route calculation process will be described.

前のステップにて決定した局所内修正移動体について、対象の局所空間内における互いに干渉関係にない回避経路を、以下のように算出する。 For the intra-local correction moving body determined in the previous step, avoidance paths that do not interfere with each other in the target local space are calculated as follows.

個別経路、局所空間、機体性能(最大速度、最大加速度、最大加加速度等)に基づく制約条件を設定し、目的関数を最小化する経路を回避経路として算出する。 Constraint conditions are set based on individual paths, local space, and aircraft performance (maximum velocity, maximum acceleration, maximum jerk, etc.), and the path that minimizes the objective function is calculated as the avoidance path.

各自律飛行ロボット200の回避経路は多項式経路で表される。 The avoidance path of each autonomous flying robot 200 is represented by a polynomial path.

目的関数は各自律飛行ロボット200の回避経路の速度変化を積分したものとし、以下の制約条件を満たした上で、これを最小化する多項式経路を求める最適化問題を計算する。なお、加速度変化や加加速度変化を最小とする経路を求めてもよい。 The objective function is obtained by integrating the speed change of the avoidance route of each autonomous flying robot 200. After satisfying the following constraints, an optimization problem is calculated to find a polynomial route that minimizes them. A route that minimizes changes in acceleration and jerk may be obtained.

まず、各局所内修正移動体について、対象の局所空間での始点と終点に関する制約条件がある。これは、対象の局所空間内の回避経路と当該局所空間外の個別経路を滑らかに接続させるための制約条件である。具体的には、個別経路が局所空間へ入る位置(始点)とその速度、加速度、加加速度、加加速度の変化を求め、それらの値を回避経路の始点の制約条件とする。さらに、個別経路が局所空間から出る位置(終点)とその速度、加加速度、加加速度の変化を求め、それらの値を回避経路の終点の制約条件とする。 First, for each intra-local correction mover, there are constraints on the start and end points in the local space of interest. This is a constraint condition for smoothly connecting the avoidance route in the target local space and the individual route outside the local space. Specifically, the position (starting point) at which the individual route enters the local space and the change in its velocity, acceleration, jerk, and jerk are obtained, and these values are used as the constraint conditions for the starting point of the avoidance route. Furthermore, the position (end point) at which the individual path exits the local space and its velocity, jerk, and change in jerk are obtained, and these values are used as constraints for the end point of the avoidance path.

また、回避経路における速度、加速度、加加速度の制約条件を設定する。すなわち、制約条件は、機体性能に示す速度、加速度、加加速度の最大値の範囲内であることとする。 In addition, constraints on speed, acceleration, and jerk on the avoidance route are set. In other words, the constraint conditions are to be within the maximum values of the velocity, acceleration, and jerk shown in the airframe performance.

また、各局所内修正移動体同士の離間距離が一定以上である制約条件も設定してもよい。例えば、上記で設定した各移動体の影響範囲が重ならないことを制約条件としてもよい。 A constraint condition may also be set such that the distance between the intra-local corrective moving bodies is equal to or greater than a certain distance. For example, the restriction condition may be that the influence ranges of the moving bodies set above do not overlap.

以下の式に示すように、上記の制約条件を満たした上で、目的関数を最小化する回避経路を求める。 As shown in the following equation, an avoidance path that minimizes the objective function is obtained while satisfying the above constraints.

Figure 0007202834000001
Figure 0007202834000001

ただし、Xは、回避経路を表す多項式経路の係数からなるベクトルであり、AeqX=beqは、始点と終点とに関する制約条件を表し、AinX≦binは、機体性能に関する制約条件を表す。 However, X is a vector consisting of coefficients of a polynomial path representing the avoidance path, A eq X=be eq represents the constraint on the start point and the end point, and A in X≦b in is the constraint on aircraft performance. represents

上記の目的関数をf0とすると、目的関数f0は、例えば、以下の式で表される。 Assuming that the above objective function is f 0 , the objective function f 0 is expressed, for example, by the following equation.

Figure 0007202834000002
Figure 0007202834000002

ただし、Nは、局所内修正移動体となる自律飛行ロボット200の台数であり、Kは、離散時間の数であり、ai[k]は、i番目の自律飛行ロボット200の時刻kにおける加速度を表す。 However, N is the number of autonomous flying robots 200 serving as local correction moving bodies, K is the number of discrete times, and a i [k] is the acceleration of the i-th autonomous flying robot 200 at time k. represents

制約条件を満たしかつ、目的関数を最小化する回避経路の求め方は、下記の参考文献3に記載の手法と同様であるため、詳細な説明を省略する。 Since the method of finding an avoidance path that satisfies the constraint conditions and minimizes the objective function is the same as the method described in Reference 3 below, detailed description thereof will be omitted.

[参考文献3]:F. Augugliaro, A. P. Schoellig and R. D'Andrea, "Generation of collision-free trajectories for a quadrocopter fleet: A sequential convex programming approach," 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, 2012, pp. 1917-1922.7 [Reference 3]: F. Augugliaro, A. P. Schoellig and R. D'Andrea, "Generation of collision-free trajectories for a quadrocopter fleet: A sequential convex programming approach," 2012 IEEE/RSJ International Conference on Intelligent Robots and Systems, Vilamoura, 2012, pp. 1917-1922.7

(個別経路修正処理について)
次に、個別経路修正処理の詳細について説明する。
(Regarding individual route correction processing)
Next, details of the individual route correction processing will be described.

個別経路修正処理では、局所内修正移動体については、それぞれ算出した回避経路により個別経路を修正する。 In the individual route correction process, the individual route is corrected using the calculated avoidance route for the intra-local corrected moving body.

また、局所内修正移動体以外の干渉移動体については、局所空間内を通らないように個別経路を修正する。本実施形態では、局所空間の手前の位置にてホバリング(停止)するよう個別経路を修正することにより、局所空間内を通らないようにする。なお、ホバリングする時間は、全ての局所内修正移動体が局所空間内から外に出るまでの時間とする。 For interfering moving bodies other than the corrected moving bodies within the local area, the individual paths are corrected so that they do not pass through the local space. In this embodiment, the individual path is modified to hover (stop) at a position in front of the local space so as not to pass through the local space. It should be noted that the hovering time is the time required for all the intra-local correction moving objects to leave the local space.

なお、局所内修正移動体以外の干渉移動体については、ホバリングに限らず、局所空間を迂回するように個別経路を修正してもよい。この場合、局所空間を大きな障害物と見なして空間情報の障害属性を更新し、前述の個別経路算出処理を適用することにより個別経路を再算出する。 Note that for an interfering moving body other than the intra-local correction moving body, the individual route may be corrected not only by hovering but also by detouring the local space. In this case, the local space is regarded as a large obstacle, the obstacle attribute of the space information is updated, and the individual route is recalculated by applying the above-described individual route calculation processing.

例えば、図10(A)、(B)に示すように、局所内修正移動体である、自律飛行ロボット200a、200d、200eの個別経路Ra、Rd、Reについて、局所空間内の経路が、自律飛行ロボット200a、200d、200eの回避経路ra、rd、reとなるように修正することにより、修正後の個別経路Ra’、Rd’、Re’を求める。また、局所内修正移動体以外の干渉移動体である自律飛行ロボット200b、200cの個別経路Rb、Rcについて、局所空間の手前の位置にてホバリング(停止)するよう修正することにより、修正後の個別経路Rb’、Rc’を求める。 For example, as shown in FIGS. 10A and 10B, the individual routes Ra, Rd, and Re of the autonomous flying robots 200a, 200d, and 200e, which are local corrective moving bodies, are independent routes in the local space. Individual routes Ra', Rd', and Re' after correction are obtained by correcting the avoidance routes ra, rd, and re for the flying robots 200a, 200d, and 200e. Further, by correcting the individual paths Rb and Rc of the autonomous flying robots 200b and 200c, which are interfering moving bodies other than the intra-local correction moving bodies, to hover (stop) at a position in front of the local space, Obtain individual routes Rb' and Rc'.

<移動制御システムの動作>
以下、図11~図12に示したフローチャートを参照しつつ、本発明を適用した移動制御システム1000による経路探索処理の動作を説明する。なお、管理装置100の記憶部120に、位置情報122、空間情報124、及び機体情報126が予め格納されている場合を例に説明する。
<Operation of the movement control system>
The operation of route search processing by the mobility control system 1000 to which the present invention is applied will be described below with reference to the flowcharts shown in FIGS. 11 and 12. FIG. A case where the storage unit 120 of the management device 100 stores the position information 122, the space information 124, and the machine information 126 in advance will be described as an example.

複数の自律飛行ロボット200の中で、少なくとも1台の自律飛行ロボット200の目標位置が変更されたときに、図11に示す経路探索処理が実行される。 When the target position of at least one autonomous flying robot 200 among the plurality of autonomous flying robots 200 is changed, the route search process shown in FIG. 11 is executed.

図11に示す管理装置100の経路探索処理では、最初に、目標位置が変更された1又は複数の自律飛行ロボット200を経路更新対象として選択し、ループ1のステップS100~S102の処理が、各経路更新対象に対して実行される。以下、ループ1において選択された経路更新対象を「注目ロボット」と称する。 In the route search processing of the management device 100 shown in FIG. 11, first, one or a plurality of autonomous flying robots 200 whose target positions have been changed are selected as route update targets, and the processing of steps S100 to S102 of loop 1 is performed on each Executed for route update target. Hereinafter, the route update target selected in loop 1 will be referred to as a "targeted robot".

経路算出手段134は、位置情報122から、注目ロボットの現在位置、現在姿勢、目標位置、目標姿勢を読み出す(ステップS100)。次に、注目ロボットについて、現在位置から目標位置に至る飛行経路、すなわち個別経路を算出する個別経路算出処理を行う(ステップS102)。 The path calculation means 134 reads the current position, current orientation, target position, and target orientation of the robot of interest from the position information 122 (step S100). Next, an individual route calculation process for calculating a flight route from the current position to the target position, that is, an individual route, is performed for the robot of interest (step S102).

そして、干渉判定手段136は、干渉判定処理を行い、個別経路間の空間的な近さから自律飛行ロボット200同士が干渉しうる位置である干渉位置と、干渉しうる自律飛行ロボット200を求める干渉判定処理を行う(ステップS104)。 Then, the interference determination means 136 performs interference determination processing to determine the interference position, which is the position at which the autonomous flying robots 200 can interfere, based on the spatial proximity between the individual paths, and the autonomous flying robots 200 that can interfere. A determination process is performed (step S104).

そして、局所空間設定手段138は、上記ステップS104での干渉判定処理の結果に基づいて、干渉位置が存在するか否かを判定する(ステップS106)。干渉位置が存在しない場合には、経路探索処理ルーチンを終了する。 Then, the local space setting means 138 determines whether or not there is an interference position based on the result of the interference determination process in step S104 (step S106). If the interfering position does not exist, the route search processing routine is terminated.

一方、干渉位置が存在する場合に、局所空間設定手段138は、干渉位置を含む局所空間を設定する局所空間設定処理を行う(ステップS108)。 On the other hand, when the interference position exists, the local space setting means 138 performs local space setting processing for setting a local space including the interference position (step S108).

そして、ループ2のステップS110~S112の処理が、各局所空間に対して実行される。以下、ループ2において処理の対象となる局所空間を「注目局所空間」と称する。 Then, the processing of steps S110 to S112 of loop 2 is executed for each local space. Hereinafter, the local space to be processed in loop 2 will be referred to as a "local space of interest".

算出対象選択手段140は、注目局所空間に対応する干渉移動体の中から、注目局所空間の大きさに応じた台数の自律飛行ロボット200を、注目局所空間における回避経路の局所内修正移動体として選択する算出対象選択処理を行う(ステップS110)。なお、算出対象選択処理の詳細は後述する。 The calculation target selection means 140 selects the number of autonomous flying robots 200 corresponding to the size of the local space of interest from among the interfering mobile bodies corresponding to the local space of interest as intra-local correcting mobile bodies for the avoidance route in the local space of interest. Calculation object selection processing to be selected is performed (step S110). Details of the calculation target selection process will be described later.

そして、経路修正手段142は、注目局所空間において各局所内修正移動体が互いに干渉関係にない回避経路を、最適化計算を行うことによって算出する(ステップS112)。 Then, the route correction means 142 calculates an avoidance route in which the intra-local correction moving bodies do not interfere with each other in the local space of interest by performing optimization calculation (step S112).

経路修正手段142は、算出された回避経路に基づいて経路情報を修正すると共に、局所内修正移動体以外の干渉移動体の経路情報を、注目局所空間内を通らないように修正する個別経路修正処理を行って、経路探索処理を終了する。 The route correction means 142 corrects the route information based on the calculated avoidance route, and also corrects the route information of the interfering moving object other than the intra-local corrected moving object so that it does not pass through the local space of interest. After performing the processing, the route search processing ends.

上記ステップS110の処理は、図12に示す算出対象選択処理により実現される。 The process of step S110 is implemented by the calculation target selection process shown in FIG.

図12に示す管理装置100の算出対象選択処理では、最初に、算出対象選択手段140は、各干渉移動体について、当該干渉移動体の飛行によって生じる風の影響範囲を算出する(ステップS120)。本実施形態では、干渉判定処理にて風の影響範囲を表す円柱を求めているため、当該円柱を記憶部120から読み出す。 In the calculation target selection process of the management device 100 shown in FIG. 12, first, the calculation target selection means 140 calculates, for each interfering moving object, the influence range of the wind caused by the flight of the interfering moving object (step S120). In this embodiment, the cylinder representing the range of influence of the wind is obtained in the interference determination process, so the cylinder is read from the storage unit 120 .

次に、算出対象選択手段140は、機体情報のタスク優先度や、累積ホバリング時間(局所空間に侵入せずにホバリングした場合における累積時間。例えば、他のすべての干渉移動体が局所空間内から出るまでの時間)、影響範囲等を考慮して、局所内修正移動体となるための優先度を求める(ステップS122)。本実施形態では、タスク優先度及び累積ホバリング時間に所定の係数を乗じた値の和から優先度を算出する。そして、同じ優先度となる干渉移動体が存在する場合は影響範囲の小さい(円柱の体積が小さい)自律飛行ロボット200ほど大きい値の優先度となるよう加算することによって求める。 Next, the calculation target selection means 140 determines the task priority of the aircraft information and the cumulative hovering time (cumulative time when hovering without entering the local space. Taking into account the time until exit), the range of influence, etc., the priority for becoming the intra-local corrective moving body is obtained (step S122). In this embodiment, the priority is calculated from the sum of the values obtained by multiplying the task priority and the cumulative hovering time by a predetermined coefficient. Then, if there are interfering moving bodies with the same priority, the autonomous flying robot 200 having a smaller influence range (having a smaller cylinder volume) is added so that the higher priority is given.

そして、ループ3のステップS124~S130の処理が、各干渉移動体に対して実行される。対象局所領域に対応する干渉移動体の中で通過優先度の高い自律飛行ロボット200から順に選択し、ループ3における処理の対象とする。以下、ループ3において選択された干渉移動体を「注目干渉移動体」と称する。 Then, the processing of steps S124 to S130 of loop 3 is executed for each interfering mobile object. Among the interfering mobile objects corresponding to the target local area, the autonomous flying robots 200 having the highest passing priority are selected in descending order and processed in the loop 3 . Hereinafter, the interfering mobile body selected in loop 3 will be referred to as a "interfering mobile body of interest".

算出対象選択手段140は、注目干渉移動体による風の影響範囲(円柱の体積)から注目干渉移動体の評価値を算出する(ステップS124)。ここで、評価値は、円柱の体積が大きくなるほど、大きい評価値として算出されるものとする。 The calculation target selection means 140 calculates an evaluation value of the interfering moving body of interest from the influence range (volume of the cylinder) of the wind caused by the interfering moving body of interest (step S124). Here, the evaluation value is calculated as a larger evaluation value as the volume of the cylinder increases.

そして、算出対象選択手段140は、注目局所空間において、これまで求めた評価値の積算値(総和)を積算評価値として求める(ステップS126)。 Then, the calculation target selection unit 140 obtains the integrated value (sum) of the evaluation values obtained so far as the integrated evaluation value in the local space of interest (step S126).

算出対象選択手段140は、積算評価値が、閾値Th1以下であるか否かを判定し(ステップS128)、積算評価値が閾値Th1以下であるならば、注目干渉移動体を局所内修正移動体として設定する(ステップS130)。一方、積算評価値が閾値Th1より大きい場合には、算出対象選択処理を終了する。ここで、閾値Th1は、例えば、注目局所空間の体積の所定割合となる体積の値である。また、閾値Th1は、管理者によって設定されたものであってもよい。 The calculation target selection means 140 determines whether or not the integrated evaluation value is equal to or less than the threshold Th1 (step S128). (step S130). On the other hand, when the integrated evaluation value is greater than the threshold Th1, the calculation target selection process is terminated. Here, the threshold Th1 is, for example, a volume value that is a predetermined proportion of the volume of the local space of interest. Also, the threshold Th1 may be set by an administrator.

すなわち、全ての干渉移動体を局所内修正移動体として設定した場合、又は、積算評価値が閾値Th1よりも大きくなった場合は、注目局所空間における算出対象選択処理を終了する。これにより、局所内修正移動体として選択される台数は、注目局所空間に占める、選択される局所内修正移動体の各々の円柱の体積の総和の割合が所定割合以下となるように決定される。 That is, when all interfering moving bodies are set as intra-local correction moving bodies, or when the integrated evaluation value becomes larger than the threshold Th1, the calculation target selection processing in the local space of interest ends. As a result, the number of selected intra-local correction moving bodies is determined so that the ratio of the sum of the volumes of the cylinders of the selected intra-local correction moving bodies to the local space of interest is equal to or less than a predetermined ratio. .

なお、評価値を算出することなく、局所内修正移動体を設定してもよい。例えば、注目局所空間の体積に応じて局所内修正移動体の総台数を決定し、当該決定した総台数に至るまで、優先度の高い干渉移動体から順に局所内修正移動体として設定する。この場合、注目局所空間の体積が大きくなるほど大きい総台数となるよう決定されるものとする。また、注目局所空間の大きさによらずに局所内修正移動体の総台数を予め決めておいてもよいし、局所空間内における干渉移動体の各々の最大加速度及び機体重量のうち少なくとも一方に基づいて局所内修正移動体の総台数を決めてもよい。また、優先度を用いずにランダムに局所内修正移動体を選択してもよい。 Note that the intra-local correction moving body may be set without calculating the evaluation value. For example, the total number of intra-local corrective moving bodies is determined according to the volume of the local space of interest, and the inter-local corrective moving bodies are set in descending order of priority up to the determined total number. In this case, it is assumed that the larger the volume of the target local space is, the larger the total number of units is determined. Alternatively, the total number of intra-local correction moving bodies may be determined in advance regardless of the size of the local space of interest, or the maximum acceleration and body weight of each interfering moving body in the local space may be determined according to at least one of Based on this, the total number of local correction moving bodies may be determined. Alternatively, the intra-local correction moving body may be randomly selected without using the priority.

以上説明してきたように、本発明の実施の形態に係る移動制御システム1000では、各自律飛行ロボットにおいて別個に算出した飛行経路の近さから干渉の可能性の高い位置を含む局所空間を求め、互いに干渉関係にある自律飛行ロボットである干渉移動体のうちの2台以上の台数の自律飛行ロボットを、局所空間における回避経路の局所内修正移動体として選択し、局所内修正移動体の各々について当該局所空間における回避経路を算出し、算出した回避経路を用いて飛行経路を修正すると共に、当該局所内修正移動体以外の干渉移動体の飛行経路を、局所空間内を通らないように修正することにより、少ない計算コストで互いに干渉関係にない飛行経路を求めることができる。 As described above, in the movement control system 1000 according to the embodiment of the present invention, a local space including a position with a high possibility of interference is obtained from the proximity of the flight paths calculated separately for each autonomous flying robot, Two or more of the interfering moving bodies, which are autonomous flying robots that are in a mutually interfering relationship, are selected as intra-local correcting moving bodies for an avoidance route in the local space, and for each of the intra-local correcting moving bodies Calculates an avoidance route in the local space, corrects the flight route using the calculated avoidance route, and corrects the flight routes of interfering moving bodies other than the intra-local correction moving body so as not to pass through the local space. As a result, flight paths that do not interfere with each other can be obtained at a low computational cost.

<変形例>
以上、本発明の好適な実施形態について説明してきたが、本発明はこれらの実施形態に限定されるものではない。例えば、本実施形態では、干渉判定処理にて、経路情報128に記憶された各個別経路における各時刻における座標値(x、y、z)に基づいて干渉を判定している。しかし、個別経路における時刻を用いずに座標値(x、y、z)を用いて干渉を判定してもよい。すなわち、ある自律飛行ロボットの個別経路上における各位置と、他の自律飛行ロボットの個別経路上における各位置との空間的な距離の近さから干渉を判定する。また、本実施形態では、個別経路算出処理にてA*経路探索法などの経路探索法によって基本経路を算出し、当該基本経路に基づいて経由点を設定し、当該経由点等を制約条件とした最適化問題を解くことにより個別経路を算出している。しかし、これに限らず、A*経路探索法などの経路探索法のみによって個別経路を算出してもよい。この場合、算出される個別経路の経路情報は、自律飛行ロボットの機体IDと、経路上の位置を示す座標値(x、y、z)のリストとから構成される情報となる。そして、この場合における干渉判定処理は、ある自律飛行ロボットの個別経路上における各位置と、他の自律飛行ロボットの個別経路上における各位置との空間的な距離の近さから干渉を判定する。
<Modification>
Although preferred embodiments of the present invention have been described above, the present invention is not limited to these embodiments. For example, in this embodiment, in the collision determination process, interference is determined based on the coordinate values (x, y, z) at each time on each individual route stored in the route information 128 . However, interference may be determined using coordinate values (x, y, z) without using the time on the individual path. In other words, interference is determined based on the closeness of the spatial distance between each position on the individual route of an autonomous flying robot and each position on the individual route of another autonomous flying robot. Further, in the present embodiment, in the individual route calculation process, a basic route is calculated by a route search method such as the A* route search method, via points are set based on the basic route, and the via points and the like are used as constraint conditions. Individual paths are calculated by solving the optimization problem. However, the individual route may be calculated only by a route search method such as the A* route search method. In this case, the route information of the calculated individual route is information composed of the body ID of the autonomous flying robot and a list of coordinate values (x, y, z) indicating positions on the route. The interference determination process in this case determines interference based on the spatial proximity between each position on the individual route of a given autonomous flying robot and each position on the individual route of another autonomous flying robot.

例えば、ある自律飛行ロボットの個別経路上における各位置に風の影響範囲を表す円柱を設置し、同様に他の自律飛行ロボットの個別経路上における各位置に風の影響範囲を表す円柱を設置したとき、各円柱が重なり合う場合に干渉関係にあると判定する。そして、前述と同様の方法で干渉位置を求め、局所空間を設定する。さらに、個別経路修正処理では、個別経路と自律飛行ロボットの平均移動速度とから局所空間に入る時刻及び位置と出る時刻及び位置とを求め、これらの値を制約条件として、前述した個別経路修正処理と同様の方法で最適化問題を解くことにより、回避経路を算出する。 For example, a cylinder representing the range of influence of the wind is placed at each position on the individual path of a certain autonomous flying robot, and similarly, a cylinder representing the range of influence of the wind is placed at each position on the individual path of another autonomous flying robot. When the cylinders overlap each other, it is determined that they are in an interference relationship. Then, the interference position is obtained by the same method as described above, and the local space is set. Furthermore, in the individual route correction process, the time and position to enter the local space and the time and position to exit the local space are obtained from the individual route and the average moving speed of the autonomous flying robot. Calculate the avoidance path by solving the optimization problem in the same way as

また、管理装置が備える全ての機能を、特定の自律飛行ロボットが備えるように構成してもよい。この場合、特定の自律飛行ロボットが他の自律飛行ロボットと通信し、全ての自律飛行ロボットの飛行経路を生成してもよい。 Also, all the functions provided by the management device may be provided in a specific autonomous flying robot. In this case, a particular autonomous flying robot may communicate with other autonomous flying robots to generate flight paths for all autonomous flying robots.

また、管理装置の経路算出手段が、各自律飛行ロボットの個別経路を算出する場合を例に説明したが、これに限定されるものではなく、管理装置以外の装置で算出された各自律飛行ロボットの個別経路を用いてもよい。 In addition, although the case where the route calculation means of the management device calculates individual routes for each autonomous flying robot has been described as an example, the present invention is not limited to this. individual routes may be used.

また、移動体の一例として自律飛行ロボットを用いる場合を例に説明したが、これに限定されるものではなく、自律飛行ロボット以外の移動体を対象としてもよい。例えば、水中ロボットの移動経路を算出する場合に本発明を適用してもよい。 Moreover, although the case of using an autonomous flying robot as an example of a mobile object has been described, the present invention is not limited to this, and a mobile object other than an autonomous flying robot may be used. For example, the present invention may be applied when calculating the moving route of an underwater robot.

以上のように、当業者は本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。 As described above, those skilled in the art can make various modifications within the scope of the present invention according to the embodiment.

100 管理装置
110 通信部
120 記憶部
122 位置情報
124 空間情報
126 機体情報
128 経路情報
130 制御部
132 目標位置設定手段
134 経路算出手段
136 干渉判定手段
138 局所空間設定手段
140 算出対象選択手段
142 経路修正手段
200 自律飛行ロボット
210 位置・姿勢センサ
220 通信部
230 記憶部
232 位置・姿勢情報
234 経路情報
240 制御部
242 位置・姿勢算出手段
244 飛行制御手段
250 モータ
260 ロータ
1000 移動制御システム
100 Management device 110 Communication unit 120 Storage unit 122 Position information 124 Space information 126 Aircraft information 128 Route information 130 Control unit 132 Target position setting means 134 Route calculation means 136 Interference determination means 138 Local space setting means 140 Calculation target selection means 142 Route correction Means 200 Autonomous flying robot 210 Position/attitude sensor 220 Communication unit 230 Storage unit 232 Position/attitude information 234 Route information 240 Control unit 242 Position/attitude calculation means 244 Flight control means 250 Motor 260 Rotor 1000 Movement control system

Claims (5)

三次元空間を移動する複数の移動体の、互いに干渉関係にない移動計画を求める移動計画算出装置であって、
前記複数の移動体の各々についての現在位置から目標位置に至る各位置の通過時の時刻を有する移動計画に基づいて、前記複数の移動体の各々について、前記移動計画間の空間的な近さ及び時間的な近さから互いに干渉関係にある前記移動体である干渉移動体と干渉位置とを求める干渉判定手段と、
前記三次元空間内における前記干渉位置を含む局所空間を設定する局所空間設定手段と、
前記局所空間において互いに干渉関係にある前記干渉移動体のうちの2台以上の台数の前記移動体を、前記局所空間における回避計画の算出の対象である局所内修正移動体として選択する算出対象選択手段と、
前記局所空間において前記局所内修正移動体が互いに干渉関係にない前記回避計画を、前記局所内修正移動体の各々について算出して前記移動計画を修正すると共に、当該局所内修正移動体以外の前記干渉移動体の前記移動計画を、少なくとも、前記局所内修正移動体が前記局所空間を通る期間、前記局所空間内を通らないように修正する移動計画修正手段と、
を備え
前記移動体は、飛行体であって、
前前記算出対象選択手段は、前記局所空間内における前記干渉移動体の各々の加速度が大きいほど前記台数が少なくなるよう決定し、または前記干渉移動体の各々の重量が大きいほど前記台数が少なくなるよう決定する移動計画算出装置。
A movement plan calculation device that obtains a movement plan that does not interfere with each other for a plurality of moving bodies that move in a three-dimensional space,
Spatial proximity between the movement plans for each of the plurality of moving bodies , based on the movement plan having the time when each position from the current position to the target position is passed for each of the plurality of moving bodies. and interference determination means for obtaining an interfering moving object and an interfering position, which are the moving objects that are in an interfering relationship with each other based on temporal proximity ;
local space setting means for setting a local space containing the interference position in the three-dimensional space;
Calculation target selection for selecting two or more of the interfering moving bodies interfering with each other in the local space as intra-local correction moving bodies to be calculated for an avoidance plan in the local space. means and
The avoidance plan in which the intra-local correction moving bodies are not in an interfering relationship with each other in the local space is calculated for each of the intra-local correction moving bodies to correct the movement plan; a movement plan modifying means for modifying the movement plan of the interfering moving body so as not to pass through the local space at least during a period in which the intra-local modified moving body passes through the local space;
with
The mobile body is an aircraft,
The calculation target selecting means determines that the number of the interfering moving bodies decreases as the acceleration of each of the interfering moving bodies in the local space increases, or the number of the interfering moving bodies decreases as the weight of each of the interfering moving bodies increases. A movement plan calculation device that determines
三次元空間を移動する複数の移動体の、互いに干渉関係にない移動計画を求める移動計画算出装置であって、
前記複数の移動体の各々についての現在位置から目標位置に至る各位置の通過時の時刻を有する移動計画に基づいて、前記複数の移動体の各々について、前記移動計画間の空間的な近さ及び時間的な近さから互いに干渉関係にある前記移動体である干渉移動体と干渉位置とを求める干渉判定手段と、
前記三次元空間内における前記干渉位置を含む局所空間を設定する局所空間設定手段と、
前記局所空間において互いに干渉関係にある前記干渉移動体のうちの2台以上の台数の前記移動体を、前記局所空間における回避計画の算出の対象である局所内修正移動体として選択する算出対象選択手段と、
前記局所空間において前記局所内修正移動体が互いに干渉関係にない前記回避計画を、前記局所内修正移動体の各々について算出して前記移動計画を修正すると共に、当該局所内修正移動体以外の前記干渉移動体の前記移動計画を、少なくとも、前記局所内修正移動体が前記局所空間を通る期間、前記局所空間内を通らないように修正する移動計画修正手段と、
を備え、
前記移動体は、飛行体であって、
前記算出対象選択手段は、前記局所空間内における前記干渉移動体の各々の加速度及び重量の少なくとも一方に基づいて前記干渉移動体の各々の影響範囲を表す立体の体積を求め、前記局所空間に占める、前記局所内修正移動体の各々の前記立体の体積の総和の割合が所定割合以下となるよう前記台数を求める移動計画算出装置。
A movement plan calculation device that obtains a movement plan that does not interfere with each other for a plurality of moving bodies that move in a three-dimensional space,
Spatial proximity between the movement plans for each of the plurality of moving bodies, based on the movement plan having the time when each position from the current position to the target position is passed for each of the plurality of moving bodies. and interference determination means for obtaining an interfering moving object and an interfering position, which are the moving objects that are in an interfering relationship with each other based on temporal proximity;
local space setting means for setting a local space containing the interference position in the three-dimensional space;
Calculation target selection for selecting two or more of the interfering moving bodies interfering with each other in the local space as intra-local correction moving bodies to be calculated for an avoidance plan in the local space. means and
The avoidance plan in which the intra-local correction moving bodies are not in an interfering relationship with each other in the local space is calculated for each of the intra-local correction moving bodies to correct the movement plan; a movement plan modifying means for modifying the movement plan of the interfering moving body so as not to pass through the local space at least during a period in which the intra-local modified moving body passes through the local space;
with
The mobile body is an aircraft,
The calculation target selection means obtains a volume of a solid representing an influence range of each of the interference moving bodies based on at least one of acceleration and weight of each of the interference moving bodies in the local space, and occupies the local space. 7. A movement plan calculation device for obtaining the number of the intra-local correction moving bodies so that the ratio of the sum of the volumes of the solids of each of the intra-local correction moving bodies is equal to or less than a predetermined ratio.
三次元空間を移動する複数の移動体の、互いに干渉関係にない移動計画を求める移動計画算出装置であって、
前記複数の移動体の各々についての現在位置から目標位置に至る各位置の通過時の時刻を有する移動計画に基づいて、前記複数の移動体の各々について、前記移動計画間の空間的な近さ及び時間的な近さから互いに干渉関係にある前記移動体である干渉移動体と干渉位置とを求める干渉判定手段と、
前記三次元空間内における前記干渉位置を含む局所空間を設定する局所空間設定手段と、
前記局所空間において互いに干渉関係にある前記干渉移動体のうちの2台以上の台数の前記移動体を、前記局所空間における回避計画の算出の対象である局所内修正移動体として選択する算出対象選択手段と、
前記局所空間において前記局所内修正移動体が互いに干渉関係にない前記回避計画を、前記局所内修正移動体の各々について算出して前記移動計画を修正すると共に、当該局所内修正移動体以外の前記干渉移動体の前記移動計画を、少なくとも、前記局所内修正移動体が前記局所空間を通る期間、前記局所空間内を通らないように修正する移動計画修正手段と、
を備え、
前記移動体は、飛行体であって、
前記算出対象選択手段は、前記局所空間内において加速度が小さい干渉移動体、または重量が小さい干渉移動体を優先して前記局所内修正移動体として選択する移動計画算出装置。
A movement plan calculation device that obtains a movement plan that does not interfere with each other for a plurality of moving bodies that move in a three-dimensional space,
Spatial proximity between the movement plans for each of the plurality of moving bodies, based on the movement plan having the time when each position from the current position to the target position is passed for each of the plurality of moving bodies. and interference determination means for obtaining an interfering moving object and an interfering position, which are the moving objects that are in an interfering relationship with each other based on temporal proximity;
local space setting means for setting a local space containing the interference position in the three-dimensional space;
Calculation target selection for selecting two or more of the interfering moving bodies interfering with each other in the local space as intra-local correction moving bodies to be calculated for an avoidance plan in the local space. means and
The avoidance plan in which the intra-local correction moving bodies are not in an interfering relationship with each other in the local space is calculated for each of the intra-local correction moving bodies to correct the movement plan; a movement plan modifying means for modifying the movement plan of the interfering moving body so as not to pass through the local space at least during a period in which the intra-local modified moving body passes through the local space;
with
The mobile body is an aircraft,
The calculation target selection means is a movement plan calculation device that preferentially selects an interfering moving body having a small acceleration or an interfering moving body having a small weight in the local space as the intra-local correction moving body.
前記移動体の各々の優先度を記憶した記憶部を更に備え、
前記算出対象選択手段は、前記干渉移動体の各々の前記優先度に基づいて、前記干渉移動体から前記局所内修正移動体を選択する請求項1又は2に記載の移動計画算出装置。
further comprising a storage unit that stores the priority of each of the moving objects;
3. The movement plan calculation apparatus according to claim 1, wherein the calculation target selection means selects the intra-local correction moving object from the interfering moving objects based on the priority of each of the interfering moving objects.
三次元空間を移動する複数の移動体の、互いに干渉関係にない移動計画を求めるためのプログラムであって、
コンピュータを、
前記複数の移動体の各々についての現在位置から目標位置に至る各位置の通過時の時刻を有する移動計画に基づいて、前記複数の移動体の各々について、前記移動計画間の空間的な近さ及び時間的な近さから互いに干渉関係にある前記移動体である干渉移動体と干渉位置とを求める干渉判定手段、
前記三次元空間内における前記干渉位置を含む局所空間を設定する局所空間設定手段、
前記局所空間において互いに干渉関係にある前記干渉移動体のうちの2台以上の台数の前記移動体を、前記局所空間における回避計画の局所内修正移動体として選択する算出対象選択手段、及び
前記局所空間において前記局所内修正移動体が互いに干渉関係にない前記回避計画を、前記局所内修正移動体の各々について算出して前記移動計画を修正すると共に、当該局所内修正移動体以外の前記干渉移動体の前記移動計画を、少なくとも、前記局所内修正移動体が前記局所空間を通る期間、前記局所空間内を通らないように修正する移動計画修正手段
として機能させるためのプログラムであり、
前記移動体は、飛行体であって、
前前記算出対象選択手段は、前記局所空間内における前記干渉移動体の各々の加速度が大きいほど前記台数が少なくなるよう決定し、または前記干渉移動体の各々の重量が大きいほど前記台数が少なくなるよう決定するプログラム
A program for obtaining a movement plan that does not interfere with each other for a plurality of moving bodies moving in a three-dimensional space,
the computer,
Spatial proximity between the movement plans for each of the plurality of moving bodies , based on the movement plan having the time when each position from the current position to the target position is passed for each of the plurality of moving bodies. and interference determination means for obtaining an interfering moving object and an interfering position, which are the moving objects that are in a mutually interfering relationship based on temporal proximity ;
local space setting means for setting a local space containing the interference position in the three-dimensional space;
Calculation target selection means for selecting two or more of the interfering moving bodies interfering with each other in the local space as intra-local correcting moving bodies for an avoidance plan in the local space, and the local calculating the avoidance plan in which the intra-local correction moving bodies are not in a mutually interfering relationship in space for each of the intra-local correction moving bodies to correct the movement plan; A program for functioning as movement plan modification means for modifying the movement plan of the body so that at least the intra-locally modified moving body does not pass through the local space ,
The mobile body is an aircraft,
The calculation target selecting means determines that the number of the interfering moving bodies decreases as the acceleration of each of the interfering moving bodies in the local space increases, or the number of the interfering moving bodies decreases as the weight of each of the interfering moving bodies increases. A program that decides to do so .
JP2018189125A 2018-10-04 2018-10-04 Movement plan calculation device and program Active JP7202834B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2018189125A JP7202834B2 (en) 2018-10-04 2018-10-04 Movement plan calculation device and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2018189125A JP7202834B2 (en) 2018-10-04 2018-10-04 Movement plan calculation device and program

Publications (2)

Publication Number Publication Date
JP2020057311A JP2020057311A (en) 2020-04-09
JP7202834B2 true JP7202834B2 (en) 2023-01-12

Family

ID=70107441

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018189125A Active JP7202834B2 (en) 2018-10-04 2018-10-04 Movement plan calculation device and program

Country Status (1)

Country Link
JP (1) JP7202834B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220366801A1 (en) * 2019-09-30 2022-11-17 Sony Group Corporation Information processing device, information processing method, and program

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013060123A (en) 2011-09-14 2013-04-04 Fuji Heavy Ind Ltd Flight route specifying method and program

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013060123A (en) 2011-09-14 2013-04-04 Fuji Heavy Ind Ltd Flight route specifying method and program

Also Published As

Publication number Publication date
JP2020057311A (en) 2020-04-09

Similar Documents

Publication Publication Date Title
JP7106417B2 (en) Flight plan calculation device and program
EP3735621B1 (en) Adjustable object avoidance proximity threshold based on classification of detected objects
Nuske et al. Autonomous exploration and motion planning for an unmanned aerial vehicle navigating rivers
EP3619591B1 (en) Leading drone
EP3619584B1 (en) Underwater leading drone system
US10768623B2 (en) Drone path planning
US20180321681A1 (en) Leading drone method
WO2018072133A1 (en) Method for controlling mobile device, control system and mobile device
US20220270495A1 (en) Method for determining the path of an unmanned aerial device and other associated methods
US10386857B2 (en) Sensor-centric path planning and control for robotic vehicles
JP2019537140A (en) Vehicle collision avoidance
JP2017182692A (en) Autonomous Mobile Robot
Kashino et al. Multi-UAV based autonomous wilderness search and rescue using target iso-probability curves
Andert et al. Mapping and path planning in complex environments: An obstacle avoidance approach for an unmanned helicopter
JP2016181177A (en) Autonomous mobile robot
JP7202834B2 (en) Movement plan calculation device and program
US11454991B2 (en) Path planning for cooperated air vehicles
JP7351609B2 (en) Route searching device and program
US20230152123A1 (en) Route planning for a ground vehicle through unfamiliar terrain
Balaji et al. GPS denied localization and magnetometer-free yaw estimation for multi-rotor UAVs
US20220068147A1 (en) Method and system for assisting the navigation of an aircraft, and associated aircraft
Bobtsov et al. Multiagent aerial vehicles system for ecological monitoring
WO2024054310A2 (en) Multi-drone systems and methods to improve inertial navigation
CN117289721A (en) Obstacle avoidance path planning and mapping method and device, electronic equipment and storage medium
Sobers et al. Indoor navigation for micro air vehicles

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210630

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220607

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220805

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221206

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221226

R150 Certificate of patent or registration of utility model

Ref document number: 7202834

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150