JP7106417B2 - Flight plan calculation device and program - Google Patents
Flight plan calculation device and program Download PDFInfo
- Publication number
- JP7106417B2 JP7106417B2 JP2018189126A JP2018189126A JP7106417B2 JP 7106417 B2 JP7106417 B2 JP 7106417B2 JP 2018189126 A JP2018189126 A JP 2018189126A JP 2018189126 A JP2018189126 A JP 2018189126A JP 7106417 B2 JP7106417 B2 JP 7106417B2
- Authority
- JP
- Japan
- Prior art keywords
- local space
- interfering
- route
- interference
- flight
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000004364 calculation method Methods 0.000 title claims description 43
- 230000002452 interceptive effect Effects 0.000 claims description 64
- 230000001133 acceleration Effects 0.000 claims description 42
- 238000012937 correction Methods 0.000 claims description 21
- 238000000034 method Methods 0.000 description 49
- 230000036461 convulsion Effects 0.000 description 28
- 230000008569 process Effects 0.000 description 28
- 238000012545 processing Methods 0.000 description 22
- 238000004891 communication Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 13
- 230000008859 change Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000037396 body weight Effects 0.000 description 7
- 238000005457 optimization Methods 0.000 description 6
- RZVHIXYEVGDQDX-UHFFFAOYSA-N 9,10-anthraquinone Chemical compound C1=CC=C2C(=O)C3=CC=CC=C3C(=O)C2=C1 RZVHIXYEVGDQDX-UHFFFAOYSA-N 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 239000013598 vector Substances 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 238000010420 art technique Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Traffic Control Systems (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
Description
本発明は、飛行計画算出装置及びプログラムに係り、特に、複数の飛行体の飛行計画を求める飛行計画算出装置及びプログラムに関する。 The present invention relates to a flight plan calculation device and program, and more particularly to a flight plan calculation device and program for obtaining flight plans for a plurality of aircraft.
近年、複数のドローンが干渉することなくスムーズに協調飛行することが可能となるよう、各ドローンの飛行経路を求める技術が提案されている。例えば、非特許文献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
しかしながら、上記の従来技術は、自律飛行ロボットの台数が増えるほど、また、飛行空間が大きくなるほど、飛行経路の算出までに要する計算コストが膨大となるため、リアルタイムに移動経路を算出する用途に利用することが困難であった。 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 flight plan calculation apparatus and a program that can obtain flight plans that do not interfere with each other at a low calculation cost.
上記の目的を達成するために本発明に係る飛行計画算出装置は、三次元空間を飛行する複数の飛行体の、互いに干渉関係にない飛行計画を求める飛行計画算出装置であって、前記複数の飛行体の各々についての現在位置から目標位置に至る飛行計画に基づいて、前記飛行計画間の空間的な近さから互いに干渉関係にある前記飛行体である干渉飛行体と干渉位置とを求める干渉判定手段と、前記三次元空間内における前記干渉位置を含む局所空間であって、前記干渉飛行体の各々の加速度及び重量の少なくとも一方により決定される大きさの前記局所空間を設定する局所空間設定手段と、前記局所空間において前記干渉飛行体が互いに干渉関係にない回避計画を、前記干渉飛行体の各々について算出して前記飛行計画を修正する飛行計画修正手段と、を備えて構成されている。 In order to achieve the above object, a flight plan calculation device according to the present invention is a flight plan calculation device for obtaining flight plans of a plurality of flying objects that fly in a three-dimensional space, the flight plans not interfering with each other. Based on the flight plan from the current position to the target position for each flying object, the interfering flying object and the interfering position are obtained from the spatial proximity between the flight plans. a determination means, and a local space setting for setting a local space including the interference position in the three-dimensional space and having a size determined by at least one of acceleration and weight of each of the interference flying objects. and flight plan correction means for calculating an avoidance plan for each of the interfering flying objects in which the interfering flying objects do not interfere with each other in the local space, and correcting the flight plan. .
本発明に係る飛行計画算出装置によれば、干渉判定手段が、前記複数の飛行体の各々についての現在位置から目標位置に至る飛行計画に基づいて、前記飛行計画間の空間的な近さから互いに干渉関係にある前記飛行体である干渉飛行体と干渉位置とを求める。また、局所空間設定手段が、前記三次元空間内における前記干渉位置を含む局所空間であって、前記干渉飛行体の各々の加速度及び重量の少なくとも一方により決定される大きさの前記局所空間を設定する。 According to the flight plan calculation device of the present invention, the collision determination means determines from the spatial closeness between the flight plans based on the flight plans from the current position to the target position of each of the plurality of flying objects. An interfering flying object and an interfering position, which are the flying objects that interfere with each other, are obtained. Also, the local space setting means sets the local space including the interference position in the three-dimensional space and having a size determined by at least one of the acceleration and weight of each of the interference flying objects. do.
そして、飛行計画修正手段が、前記局所空間において前記干渉飛行体が互いに干渉関係にない回避計画を、前記干渉飛行体の各々について算出して前記飛行計画を修正する。 Then, the flight plan modifying means calculates, for each of the interfering flying objects, an avoidance plan in which the interfering flying objects do not interfere with each other in the local space, and corrects the flight plan.
また、前記局所空間設定手段は、前記干渉飛行体の大きさ及び台数のうち少なくとも一方を更に用いて前記局所空間の大きさを決定することが好適である。 Moreover, it is preferable that the local space setting means further uses at least one of the size and the number of the interfering flying objects to determine the size of the local space.
また、前記局所空間設定手段は、前記干渉飛行体以外の前記飛行体の前記飛行計画に干渉しない大きさの前記局所空間を設定することが好適である。 Moreover, it is preferable that the local space setting means sets the local space having a size that does not interfere with the flight plan of the flying object other than the interfering flying object.
また、前記局所空間設定手段は、前記干渉位置が前記局所空間の略中央となるよう前記局所空間を設定することが好適である。 Moreover, it is preferable that the local space setting means sets the local space such that the interference position is substantially at the center of the local space.
また、前記局所空間設定手段は、前記三次元空間における風速を測定する風速測定手段によって測定された前記風速が大きいほど前記局所空間が大きくなるよう設定する
ことが好適である。
Moreover, it is preferable that the local space setting means sets the local space to be larger as the wind speed measured by the wind speed measuring means for measuring the wind speed in the three-dimensional space increases.
本発明に係るプログラムは、三次元空間を飛行する複数の飛行体の、互いに干渉関係にない飛行計画を求めるためのプログラムであって、コンピュータを、前記複数の飛行体の各々についての現在位置から目標位置に至る飛行計画に基づいて、前記飛行計画間の空間的な近さから互いに干渉関係にある前記飛行体である干渉飛行体と干渉位置とを求める干渉判定手段、前記三次元空間内における前記干渉位置を含む局所空間であって、前記干渉飛行体の各々の加速度及び重量の少なくとも一方により決定される大きさの前記局所空間を設定する局所空間設定手段、及び前記局所空間において前記干渉飛行体が互いに干渉関係にない回避計画を、前記干渉飛行体の各々について算出して前記飛行計画を修正する飛行計画修正手段として機能させるためのプログラムである。 A program according to the present invention is a program for obtaining flight plans of a plurality of flying objects that fly in a three-dimensional space without interfering with each other, the program comprising: Interference determining means for determining an interfering flying object and an interfering position based on a flight plan leading to a target position, based on the spatial proximity between the flight plans, and an interfering position in the three-dimensional space local space setting means for setting a local space including the interference position, the size of which is determined by at least one of acceleration and weight of each of the interference flying objects; and the interference flight in the local space. A program for functioning as flight plan correction means for calculating an avoidance plan in which the bodies are not in an interfering relationship with each other for each of the interfering flying objects and correcting the flight plan.
以上説明したように、本発明の飛行計画算出装置及びプログラムによれば、少ない計算コストで互いに干渉関係にない飛行計画を求めることができる、という効果が得られる。 As described above, according to the flight plan calculation device and program of the present invention, it is possible to obtain flight plans that do not interfere with each other at a low calculation cost.
以下、図面を参照して本発明の実施の形態を詳細に説明する。なお、本実施の形態では、複数のドローンの移動を制御する移動制御システムに本発明を適用した場合を例に説明する。 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
(移動制御システム1000)
移動制御システム1000は、管理装置100、及び複数台の自律飛行ロボット200を有する。管理装置100と自律飛行ロボット200の間は所定の閉域網(無線LAN等)を介して通信する。なお、管理装置100が、飛行計画算出装置の一例である。
(Movement control system 1000)
A
(自律飛行ロボット200)
自律飛行ロボット200は、例えば、クアッドロータ型の小型無人ヘリコプタである。なお、クアッドロータ型の小型無人ヘリコプタに限定されるものではなく、シングルロータ型の小型無人ヘリコプタについても同様に適用することができる。
(Autonomous flying robot 200)
The autonomous
自律飛行ロボット200は、管理装置100から、飛行計画の一例である飛行経路に係る情報(後述する経路情報)を受信し、当該飛行経路に沿って飛行するよう制御する。以下、自律飛行ロボット200を構成する位置・姿勢センサ210、通信部220、記憶部230、制御部240、モータ250、及びロータ260の各部について、詳細に説明する(図2参照)。
The autonomous flying
(位置・姿勢センサ210)
位置・姿勢センサ210は、自律飛行ロボット200の現在位置および姿勢を取得するためのセンサである。位置・姿勢センサ210は、例えば、GNSS(Global Navigation Satellite System)等の航法衛星(人工衛星)から送信される電波(航法信号)を受信する受信機、加速度を計測する加速度センサ、方位を計測する電子コンパス、および角速度を計測するジャイロセンサを備えている。具体的には、位置・姿勢センサ210において、受信機が複数の航法衛星から送信される航法信号を受信して制御部240に出力するとともに電子コンパスおよびジャイロセンサによる計測信号を制御部240に出力する。
(Position/orientation sensor 210)
The position/
現在位置を取得するために受信機に代えてレーザスキャナおよび気圧センサを用いるなど、他の既知のセンサを用いて既知の従来技術により現在位置および姿勢を得るための情報を取得するものとしてもよい。 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
(記憶部230)
記憶部230は、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)等の情報記憶装置である。
(storage unit 230)
The
記憶部230は、各種プログラムや各種データを記憶し、制御部240との間でこれらの情報を入出力する。
The
各種データには、位置・姿勢情報232、経路情報234等の制御部240の各処理に用いられる情報が含まれる。
The various data include information used for each process of the
位置・姿勢情報232は、位置・姿勢センサ210によって取得された、自律飛行ロボット200の現在位置および姿勢を予め定められた回数だけ循環記憶した位置と姿勢の履歴である。ここで、履歴内の最新の位置及び姿勢を特に現在位置及び現在姿勢と称し、それ以外の位置及び姿勢を過去位置及び過去姿勢と称する。
The position/
経路情報234は、自律飛行ロボット200が移動する予定である飛行経路に関する情報である。具体的には、飛行経路上における座標列(x,y,z)と、各位置(座標)における時刻、速度、加速度とを対応付けた情報である。経路情報234は、管理装置100から受信する。
The
制御部240は、CPU、ROM、RAM等を備えたコンピュータであり、記憶部230からプログラムやデータを読み出し、プログラムに従って、位置・姿勢算出手段242および飛行制御手段244等として機能する。
The
位置・姿勢算出手段242は、位置・姿勢センサ210の出力から飛行空間における自律飛行ロボット200の現在位置および姿勢を算出し、位置・姿勢情報232として記憶させる。
The position/orientation calculation means 242 calculates the current position and orientation of the
位置・姿勢算出手段242は、例えば、位置・姿勢センサ210によって出力された航法信号から緯度・経度・高度を求め、予め記憶した変換規則を用いて飛行空間の座標系における位置に変換する。
The position/attitude calculation means 242 obtains the latitude/longitude/altitude from the navigation signal output by the position/
また、位置・姿勢算出手段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/
なお、位置・姿勢センサ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/
以上のように、位置・姿勢センサ210と通信部220と位置・姿勢算出手段242(制御部240)とが共働して自律飛行ロボット200の現在位置及び現在姿勢を検出する。
As described above, the position/
なお、位置・姿勢算出手段242は、現在位置を算出する都度、通信部220を介して当該現在位置を管理装置100に送信する。
Note that the position/
飛行制御手段244は、経路情報234、位置・姿勢情報232を参照し、自律飛行ロボット200を経路情報234に記された飛行経路に追従して移動するようモータ250の回転速度を制御する。
The flight control means 244 refers to the
具体的には、飛行制御手段244は、経路情報234に記された現在時刻の位置(座標)と、位置・姿勢情報232に記された現在位置との誤差が小さくなるようにモータ250の回転速度を制御する。
Specifically, the flight control means 244 rotates the
また、飛行制御手段244は、位置・姿勢情報232に基づいて自律飛行ロボット200の現在の速度及び加速度を算出し、これらの値が経路情報234に記された現在時刻の速度及び加速度との誤差が小さくなるようにモータ250の回転速度を制御する。この際、位置・姿勢情報232における姿勢に係る情報も考慮する。
Further, the flight control means 244 calculates the current velocity and acceleration of the
(モータ250、ロータ260)
4つのロータ260と、その回転軸がそれぞれ対応するロータ260に連結された4つのモータ250からなる4つのユニットが自律飛行ロボット200に搭載されている。
(
The
各モータ250は、制御部240に接続されて制御部240から回転速度を指示される。4つのロータ260が独立して回転することにより自律飛行ロボット200に任意方向の加速度を発生させる。
Each
(管理装置100)
管理装置100は、飛行空間内の所定位置に設置され、自律飛行ロボット200の飛行先である目標位置を決定し、自律飛行ロボット200から受信した現在位置に基づいて、現在位置から目標位置に至る飛行経路を求め、自律飛行ロボット200に送信する。
(Management device 100)
The
なお、管理装置100は、遠隔の監視センタに設置してある図示しないセンタ装置と広域網(インターネット、携帯電話網等)を介して通信し、センタ装置からの指示を受け、当該指示に基づいて目標位置を設定したり、センタ装置に自律飛行ロボット200に係る各種情報を送信するようにしてもよい。
The
以下、管理装置100を構成する通信部110、記憶部120、及び制御部130の各部について、詳細に説明する(図3参照)。
The
(通信部110)
通信部110は、自律飛行ロボット200との間で通信するための通信モジュールである。
(Communication unit 110)
The
(記憶部120)
記憶部120は、ROM(Read Only Memory)、RAM(Random Access Memory)、HDD(Hard Disk Drive)等の情報記憶装置である。
(storage unit 120)
The
記憶部120は、各種プログラムや各種データを記憶し、制御部130との間でこれらの情報を入出力する。
The
各種データには、位置情報122、空間情報124、機体情報126、経路情報128等の制御部130の各処理に用いられる情報が含まれる。
The various data include information used for each process of the
(位置情報122)
位置情報122は、自律飛行ロボット200の現在位置及び目標位置を示した情報である。
(Position information 122)
The
自律飛行ロボット200から現在位置を受信すると、当該自律飛行ロボット200の識別子(機体ID)と対応付けて記憶する。
When the current position is received from the
また、目標位置設定手段132によって、ある自律飛行ロボット200の目標位置が設定されると、当該自律飛行ロボット200の機体IDに対応付けて目標位置が記憶される。
Also, when the target position of a certain
(空間情報124)
空間情報124は、飛行空間の3次元構造等を表した情報である。本実施形態における空間情報124は、飛行空間をボクセル空間として複数のボクセル(単位空間)に分割して飛行空間の障害物の構造等を表した情報である。空間情報124は、システムの管理者によって予め設定され記憶される。
(Spatial information 124)
The
本実施形態では、飛行空間を所定単位の大きさ(例えば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
また、空間情報124は、各ボクセルの属性を示す情報を含む。例えば、属性として、自律飛行ロボット200の移動の障害となるか否かを示した障害属性が少なくとも付与される。
The
すなわち、建造物等の障害物に位置するボクセルは、自律飛行ロボット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
このように、空間情報124としてボクセルの位置と属性を用いることにより飛行空間に存在する障害物等の物体の位置や大きさ(形状)を表現することができる。
In this way, by using the positions and attributes of voxels as
(機体情報126)
機体情報126は、各自律飛行ロボット200の特性(性能)を示した情報である。機体情報126は、システムの管理者によって予め設定され記憶される。
(Aircraft information 126)
The
具体的には、機体情報126は、各自律飛行ロボット200の機体IDと、特性値(機体重量、大きさ、最大速度、最大加速度、及び最大加加速度)とを対応付けた情報である。
Specifically, the
(経路情報128)
経路情報128は、各自律飛行ロボット200の飛行経路に関する情報である。具体的には、経路情報128は、自律飛行ロボット200の機体IDと、経路上の座標値(x、y、z)、当該座標値における通過時間、速度、加速度、加加速度(Jerk)、加加速度の変化量(Snap)の値とが対応付けて記憶される。
(Route information 128)
The
例えば、図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
経路情報128は、経路算出手段134及び経路修正手段142によって更新される。
The
(制御部130)
制御部130は、CPU、ROM、RAM等を備えたコンピュータであり、記憶部120からプログラムやデータを読み出し、プログラムに従って、目標位置設定手段132、経路算出手段134、干渉判定手段136、局所空間設定手段138、及び経路修正手段142等として機能する。なお、経路修正手段142が、飛行計画修正手段の一例である。
(control unit 130)
The
(目標位置設定手段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
目標位置は、例えば、巡回警備をタスクとする自律飛行ロボット200であれば、予め定めた時刻になったときに所定の巡回位置が目標位置となるよう設定する。また、侵入者への対応をタスクとする自律飛行ロボット200であれば、図示しないセンサからの侵入検知出力に基づいて、当該センサの検知位置の近傍を目標位置に設定してもよい。
For example, in the case of the
他にも、図示しないセンタ装置からの指示に基づいて、目標位置を設定してもよい。 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
後述するように、経路算出手段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
(局所空間設定手段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.
(経路修正手段142)
経路修正手段142は、局所空間において干渉飛行体が互いに干渉関係にない回避経路を、最適化計算を行うことによって算出し、算出された回避経路に基づいて経路情報を修正する個別経路修正処理を行う。個別経路修正処理の詳細については後述する。なお、回避経路が、回避計画の一例である。
(Route correction means 142)
The route correction means 142 calculates an avoidance route in which the interfering flying objects do not interfere with each other in the local space by performing an optimization calculation, and performs individual route correction processing for correcting the route information based on the calculated avoidance route. conduct. 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/
[参考文献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)=c5t5+c4t4+c3t3+c2t2+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
<制約条件>
a. 個別経路の始点は現在位置である。また、始点の速度、加速度、加加速度、加加速度の変化は0である。
b. 個別経路の終点は目標位置である。また、終点の速度、加速度、加加速度、加加速度の変化(snap)は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 jerk change (snap) 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
本実施形態では、自律飛行ロボット200の移動によって生じる風の影響範囲を考慮して「空間的な近さ」の判定を行う。
In this embodiment, the “spatial proximity” is determined in consideration of the range affected by the wind caused by the movement of the
まず、以下に説明するように、風の影響範囲を求める。 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
具体的には、自律飛行ロボット200の大きさが大きいほど円柱の底面の半径が大きくなるよう設定し、自律飛行ロボット200の機体重量と最大加速度が大きいほど円柱の高さが高くなるよう設定する。例えば、図7に示すように、自律飛行ロボット200a、200bに対して、風の影響範囲を表す円柱Ca、Cbを設定する。
Specifically, the larger the size of the
上記の方法(円柱近似)の他にも、機体の最大傾け角度や、ロータ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
そして、以下に説明するように、経路情報128に基づいて風の影響範囲を移動させ干渉位置を求める。
Then, as will be described below, based on the
まず、経路情報128を参照し、全ての自律飛行ロボット200に対して、それぞれの自律飛行ロボット200の個別経路上の所定時刻における位置(座標)を求め、当該位置に、上記で求めた円柱を配置する。また、時刻を所定間隔で変化させ、各時刻においても同様に円柱を配置する。例えば、図7に示すように、自律飛行ロボット200a、200bの個別経路Ra、Rb上の位置Pa、Pbに、円柱Ca、Cbを配置する。
First, with reference to the
そして、ある自律飛行ロボット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
なお、干渉し合った各自律飛行ロボット200を「干渉飛行体」として特定する。
Each autonomous flying
(局所空間設定処理について)
次に、局所空間設定処理の詳細について説明する。
(Regarding local space setting processing)
Next, details of the local space setting process will be described.
まず、干渉位置を含む局所空間を設定する。本実施形態では、干渉飛行体である各自律飛行ロボット200の機体重量や最大加速度等に基づいて、自律飛行ロボットの移動によって生じる風の影響範囲を考慮した大きさの局所空間を設定する。
First, a local space including the interference position is set. In this embodiment, based on the body weight, maximum acceleration, etc. of each autonomous flying
例えば、図8に示すように、自律飛行ロボット200c、200dの円柱が重なる位置に基づいて求められた干渉位置Icdを中心位置とした立方体Lcdを設定する。このとき、自律飛行ロボット200c、200dの機体重量が重いほど、局所空間を大きく設定したり、自律飛行ロボット200c、200dの最大加速度が大きいほど、局所空間を大きく設定する。これは、自律飛行ロボット200の最大加速度と機体重量が大きいほどロータ260によって生じる風が大きくなるため、自律飛行ロボット200と干渉しやすいためである。一方、自律飛行ロボットの最大加速度や機体重量が小さい場合には、他の自律飛行ロボット200と干渉しにくいため、局所空間を小さく設定することで回避経路の計算量をより少なくすることが可能となる。
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
また、干渉飛行体である各自律飛行ロボット200の台数を更に考慮して、局所空間の大きさを設定してもよい。例えば、図9(A)に示すように、局所空間Lacについての干渉飛行体が、自律飛行ロボット200a~200cの3台である場合と、図9(B)に示すように、局所空間Laeについての干渉飛行体が、自律飛行ロボット200a~200eの5台である場合とでは、局所空間Laeの方が大きく設定される。これは、干渉飛行体である自律飛行ロボット200の台数が多いほど、各自律飛行ロボット200が互いに干渉しやすい状況であるためである。
Also, the size of the local space may be set further considering the number of autonomous flying
また、干渉飛行体である各自律飛行ロボット200の大きさを更に考慮して、局所空間の大きさを設定してもよい。これは、干渉飛行体である自律飛行ロボット200の大きさが大きいほど、各自律飛行ロボット200が互いに干渉しやすい状況であるためである。
Also, the size of the local space may be set further considering the size of each autonomous flying
また、立方体の中心位置が干渉位置となるように配置したときに当該立方体が障害物などの飛行不可領域と重なる場合は、重ならない位置まで立方体の位置をずらす。あるいは、飛行不可領域と重ならない大きさであり干渉位置を含む直方体を局所空間として設定する。 Also, if the cube overlaps an obstacle or other non-flyable area 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.
また、複数の干渉位置が検出されたときは、干渉位置ごとに局所空間を設定する。この際、ある局所空間と他の局所空間との一部が重なり合っている場合、重なり合った局所空間を包含する大きさからなる直方体を局所空間として設定する。例えば、図10に示すように、干渉位置I1を中心とする立方体L1と、干渉位置I2を中心とする立方体L2との一部が重なり合っている場合、立方体L1、L2を包含する直方体L12を、局所空間として設定する。また、図11に示すように、干渉位置I3を中心とする立方体L3を、干渉位置I4を中心とする立方体L4が包含している場合には、立方体L3、L4を包含する直方体L34と、立方体L4とが等しいため、立方体L4が、局所空間として設定される。 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. 10, 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. Further, as shown in FIG. 11, when a cube L3 centered at the interference position I3 is included in a cube L4 centered at the interference position I4, a rectangular parallelepiped L34 including the cubes L3 and L4 and a cube L4 is equal, so the cube L4 is set as the local space.
(回避経路算出処理について)
次に、回避経路算出処理の詳細について説明する。
(Regarding avoidance route calculation processing)
Next, details of the avoidance route calculation process will be described.
前のステップにて決定した干渉飛行体について、対象の局所空間内における互いに干渉関係にない回避経路を、以下のように算出する。 For the interfering vehicles 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
目的関数は各自律飛行ロボット200の回避経路の速度変化を積分したものとし、以下の制約条件を満たした上で、これを最小化する多項式経路を求める最適化問題を計算する。なお、加速度変化や加加速度変化を最小とする経路を求めてもよい。
The objective function is obtained by integrating the speed change of the avoidance route of each autonomous flying
まず、各干渉飛行体について、対象の局所空間での始点と終点に関する制約条件がある。これは、対象の局所空間内の回避経路と当該局所空間外の個別経路を滑らかに接続させるための制約条件である。具体的には、個別経路が局所空間へ入る位置(始点)とその速度、加速度、加加速度、加加速度の変化を求め、それらの値を回避経路の始点の制約条件とする。さらに、個別経路が局所空間から出る位置(終点)とその速度、加加速度、加加速度の変化を求め、それらの値を回避経路の終点の制約条件とする。 First, for each interfering vehicle, 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.
また、各干渉飛行体同士の離間距離が一定以上である制約条件も設定してもよい。例えば、上記で設定した各移動体の影響範囲が重ならないことを制約条件としてもよい。 Also, a constraint condition may be set such that the distance between the interfering flying objects is at least 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.
ただし、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.
ただし、Nは、干渉飛行体となる自律飛行ロボット200の数であり、Kは、離散時間の数であり、ai[k]は、i番目の自律飛行ロボット200の時刻kにおける加速度を表す。
where N is the number of autonomous flying
制約条件を満たしかつ、目的関数を最小化する回避経路の求め方は、下記の参考文献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 processing, the individual routes of the interfering flying objects are corrected using the calculated avoidance routes.
例えば、図12(A)、(B)に示すように、干渉飛行体である、自律飛行ロボット200a、200d、200eの個別経路Ra、Rd、Reについて、局所空間内の経路が、自律飛行ロボット200a、200d、200eの回避経路ra、rd、reとなるように修正することにより、修正後の個別経路Ra’、Rd’、Re’を求める。
For example, as shown in FIGS. 12A and 12B, with respect to individual routes Ra, Rd, and Re of
<移動制御システムの動作>
以下、図13~図14に示したフローチャートを参照しつつ、本発明を適用した移動制御システム1000による経路探索処理の動作を説明する。なお、管理装置100の記憶部120に、位置情報122、空間情報124、及び機体情報126が予め格納されている場合を例に説明する。
<Operation of the movement control system>
The operation of route search processing by the
複数の自律飛行ロボット200の中で、少なくとも1台の自律飛行ロボット200の目標位置が変更されたときに、図13に示す経路探索処理が実行される。
When the target position of at least one
図13に示す管理装置100の経路探索処理では、最初に、目標位置が変更された1又は複数の自律飛行ロボット200を経路更新対象として選択し、ループ1のステップS100~S102の処理が、各経路更新対象に対して実行される。以下、ループ1において選択された経路更新対象を「注目ロボット」と称する。
In the route search processing of the
経路算出手段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
そして、局所空間設定手段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). Details of the local space setting process will be described later.
そして、ループ2のステップS112の処理が、各局所空間に対して実行される。以下、ループ2において処理の対象となる局所空間を「注目局所空間」と称する。 Then, the processing of step 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".
経路修正手段142は、注目局所空間において各干渉飛行体が互いに干渉関係にない回避経路を、最適化計算を行うことによって算出する(ステップS112)。
The
経路修正手段142は、算出された回避経路に基づいて経路情報を修正する個別経路修正処理を行って(ステップS114)、経路探索処理を終了する。 The route correction means 142 performs an individual route correction process for correcting the route information based on the calculated avoidance route (step S114), and ends the route search process.
上記ステップS108の処理は、図14に示す局所空間設定処理により実現される。 The process of step S108 is implemented by the local space setting process shown in FIG.
図14に示す管理装置100の局所空間設定処理では、最初に、局所空間設定手段138は、複数の干渉位置が存在するか否かを判定する(ステップS120)。干渉位置が複数ある場合、局所空間設定手段138は、各干渉位置間の距離(干渉位置間距離)を求める(ステップS122)。そして、局所空間設定手段138は、当該干渉位置間距離が予め定めた閾値Th2以下であるか否かを判定する(ステップS124)。当該干渉位置間距離が閾値Th2以下である場合、局所空間設定手段138は、2つの干渉位置の中間位置を新たな干渉位置として統合して(ステップS126)、上記ステップS122へ戻る。
In the local space setting process of the
一方、干渉位置が1つだけの場合や、当該干渉位置間距離が閾値Th2より大きい場合には、ループ4のステップS128~S132の処理が、各干渉位置に対して実行される。干渉位置を1つ選択し、ループ4における処理の対象とする。以下、ループ4において選択された干渉位置を「注目干渉位置」と称する。 On the other hand, when there is only one interference position, or when the distance between the interference positions is greater than the threshold Th2, the processing of steps S128 to S132 of loop 4 is performed for each interference position. One interference position is selected to be processed in loop 4 . Hereinafter, the interference position selected in loop 4 will be referred to as "interference position of interest".
局所空間設定手段138は、注目干渉位置に対応する干渉飛行体に係る機体情報(重量、大きさ、最大加速度)を読み出す(ステップS128)。 The local space setting means 138 reads the body information (weight, size, maximum acceleration) of the interfering flying object corresponding to the interference position of interest (step S128).
そして、局所空間設定手段138は、注目干渉位置に対応する各干渉飛行体の機体情報に基づいて影響範囲(円柱)を算出する(ステップS130)。なお、干渉判定処理にて影響範囲を既に算出し、記憶している場合はその値を読み出すだけでもよい。 Then, the local space setting means 138 calculates the range of influence (cylinder) based on the aircraft information of each interfering flying object corresponding to the interfering position of interest (step S130). If the influence range has already been calculated and stored in the interference determination process, the value may be read out.
そして、局所空間設定手段138は、各干渉飛行体の影響範囲を示す円柱の体積を考慮して、局所空間の大きさを決定する(ステップS132)。例えば、各干渉飛行体の影響範囲を示す円柱の体積を求め、当該円柱の体積の総和を求める。求めた体積の総和が局所空間の体積の所定割合(例えば5%)となるよう、局所空間の体積を決定する。 Then, the local space setting means 138 determines the size of the local space in consideration of the volume of the cylinder indicating the range of influence of each interfering flying object (step S132). For example, the volume of a cylinder indicating the range of influence of each interfering flying object is obtained, and the sum of the volumes of the cylinders is obtained. The volume of the local space is determined so that the sum of the obtained volumes is a predetermined proportion (eg, 5%) of the volume of the local space.
局所空間設定手段138は、求めた局所空間の体積となるよう、局所空間の立体の大きさを決定し、当該局所空間の略中心が干渉位置となるような位置に局所空間を設定し(ステップS134)、局所空間設定処理を終了する。 The local space setting means 138 determines the size of the solid in the local space so as to obtain the obtained volume of the local space, and sets the local space at a position where the approximate center of the local space is the interference position (step S134), the local space setting process is terminated.
なお、干渉飛行体の影響範囲を算出することなく、影響範囲の算出に用いる値として例示した値から直接的に局所空間の大きさを決定してもよい。例えば、干渉飛行体である各自律飛行ロボット200の機体重量、最大加速度、大きさ、及び台数に応じて局所空間の大きさを決定してもよい。
The size of the local space may be determined directly from the values exemplified as the values used to calculate the range of influence without calculating the range of influence of the interfering flying object. For example, the size of the local space may be determined according to the body weight, maximum acceleration, size, and number of the autonomous flying
以上説明してきたように、本発明の実施の形態に係る移動制御システム1000では、複数の自律飛行ロボットの各々についての飛行経路から求められる干渉位置を含む局所空間であって、干渉飛行体の各々の最大加速度及び機体重量の少なくとも一方により決定される大きさの局所空間を設定し、局所空間において干渉飛行体が互いに干渉関係にない回避経路を、干渉飛行体の各々について算出して飛行経路を修正することにより、少ない計算コストで互いに干渉関係にない飛行経路を求めることができる。
As described above, in the
<変形例>
以上、本発明の好適な実施形態について説明してきたが、本発明はこれらの実施形態に限定されるものではない。例えば、本実施形態では、干渉判定処理にて、経路情報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
例えば、ある自律飛行ロボットの個別経路上における各位置に風の影響範囲を表す円柱を設置し、同様に他の自律飛行ロボットの個別経路上における各位置に風の影響範囲を表す円柱を設置したとき、各円柱が重なり合う場合に干渉関係にあると判定する。そして、前述と同様の方法で干渉位置を求め、局所空間を設定する。さらに、個別経路修正処理では、個別経路と自律飛行ロボットの平均移動速度とから局所空間に入る時刻及び位置と出る時刻及び位置とを求め、これらの値を制約条件として、前述した個別経路修正処理と同様の方法で最適化問題を解くことにより、回避経路を算出する。 For example, a cylinder representing the range of wind influence is placed at each position on the individual path of an autonomous flying robot, and similarly, a cylinder representing the range of wind influence 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
また、風速に応じて局所空間の大きさを変更してもよい。例えば、管理装置100は、地面や壁面等に設置された固定型の風速計(不図示)と閉域網を介して接続され、飛行空間内の風速(風の強さ)に基づいて、局所空間の大きさを修正してもよい。例えば、飛行空間内の風速が大きい場合は、安全を見て通常時よりも大きい局所空間となるように局所空間の大きさを修正してもよい。
Also, the size of the local space may be changed according to the wind speed. For example, the
また、干渉飛行体以外の自律飛行ロボットの飛行経路に干渉しない範囲で局所空間を設定するようにしてもよい。局所空間の形状は立方体であるのが好適であるが、求めた局所空間が干渉飛行体以外の自律飛行ロボットの飛行経路に干渉する場合、当該自律飛行ロボットの飛行経路についても回避経路を算出する必要性が生じる。したがって、求めた局所空間(立方体)が干渉飛行体以外の自律飛行ロボットの飛行経路に干渉する場合、例えば、干渉しない形状からなる略同一体積からなる直方体として、局所空間を設定するのが好適である。また、求めた局所空間(立方体)が干渉飛行体以外の自律飛行ロボットの飛行経路に干渉する場合、干渉飛行体以外の自律飛行ロボットの飛行経路に干渉しない大きさ(体積)からなる局所空間(立方体)として設定したり、干渉飛行体以外の自律飛行ロボットの飛行経路に干渉しない位置に平行移動した局所空間として設定してもよい。 Also, the local space may be set within a range that does not interfere with the flight path of the autonomous flying robot other than the interfering flying object. The shape of the local space is preferably a cube, but if the local space obtained interferes with the flight path of the autonomous flying robot other than the interfering flying object, the avoidance path is calculated for the flight path of the autonomous flying robot as well. need arises. Therefore, if the obtained local space (cube) interferes with the flight path of an autonomous flying robot other than the interfering flying object, it is preferable to set the local space as a rectangular parallelepiped having substantially the same volume and having a shape that does not interfere. be. Also, if the obtained local space (cube) interferes with the flight path of the autonomous flying robot other than the interfering flying object, the local space ( Alternatively, it may be set as a local space translated to a position that does not interfere with the flight path of the autonomous flying robot other than the interfering flying object.
また、管理装置が備える全ての機能を、特定の自律飛行ロボットが備えるように構成してもよい。この場合、特定の自律飛行ロボットが他の自律飛行ロボットと通信し、全ての自律飛行ロボットの飛行経路を生成してもよい。 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.
また、飛行体の一例として自律飛行ロボットを用いる場合を例に説明したが、これに限定されるものではなく、自律飛行ロボット以外の飛行体を対象としてもよい。 Also, although the case of using an autonomous flying robot as an example of a flying object has been described, the present invention is not limited to this, and flying objects other than autonomous flying robots may also be used.
以上のように、当業者は本発明の範囲内で、実施される形態に合わせて様々な変更を行うことができる。 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 局所空間設定手段
142 経路修正手段
200 自律飛行ロボット
210 位置・姿勢センサ
220 通信部
230 記憶部
232 位置・姿勢情報
234 経路情報
240 制御部
242 位置・姿勢算出手段
244 飛行制御手段
250 モータ
260 ロータ
1000 移動制御システム
100
Claims (6)
前記複数の飛行体の各々についての現在位置から目標位置に至る飛行計画に基づいて、前記飛行計画間の空間的な近さから互いに干渉関係にある前記飛行体である干渉飛行体と干渉位置とを求める干渉判定手段と、
前記三次元空間内における前記干渉位置を含む局所空間であって、前記干渉飛行体の各々の加速度及び重量の少なくとも一方により決定される大きさの前記局所空間を設定する局所空間設定手段と、
前記局所空間において前記干渉飛行体が互いに干渉関係にない回避計画を、前記干渉飛行体の各々について算出して前記飛行計画を修正する飛行計画修正手段と、
を備えることを特徴とする飛行計画算出装置。 A flight plan calculation device that obtains flight plans that do not interfere with each other for a plurality of flying objects that fly in a three-dimensional space,
Based on the flight plan from the current position to the target position for each of the plurality of flying objects, an interfering flying object and an interfering position, which are the flying objects that are in an interference relationship due to the spatial proximity between the flight plans, are determined. an interference determination means for obtaining
local space setting means for setting a local space containing the interference position in the three-dimensional space, the size of which is determined by at least one of acceleration and weight of each of the interference flying objects;
flight plan correction means for calculating an avoidance plan for each of the interfering flying objects in which the interfering flying objects do not interfere with each other in the local space, and correcting the flight plan;
A flight plan calculation device comprising:
コンピュータを、
前記複数の飛行体の各々についての現在位置から目標位置に至る飛行計画に基づいて、前記飛行計画間の空間的な近さから互いに干渉関係にある前記飛行体である干渉飛行体と干渉位置とを求める干渉判定手段、
前記三次元空間内における前記干渉位置を含む局所空間であって、前記干渉飛行体の各々の加速度及び重量の少なくとも一方により決定される大きさの前記局所空間を設定する局所空間設定手段、及び
前記局所空間において前記干渉飛行体が互いに干渉関係にない回避計画を、前記干渉飛行体の各々について算出して前記飛行計画を修正する飛行計画修正手段
として機能させるためのプログラム。 A program for determining a flight plan of a plurality of flying objects that fly in a three-dimensional space without interfering with each other,
the computer,
Based on the flight plan from the current position to the target position for each of the plurality of flying objects, an interfering flying object and an interfering position, which are the flying objects that are in an interference relationship due to the spatial proximity between the flight plans, are determined. Interference determination means for obtaining
local space setting means for setting a local space containing the interference position in the three-dimensional space, the size of the local space being determined by at least one of acceleration and weight of each of the interfering flying objects; A program for functioning as flight plan correction means for calculating an avoidance plan in which the interfering flying objects do not interfere with each other in a local space for each of the interfering flying objects and correcting the flight plan.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018189126A JP7106417B2 (en) | 2018-10-04 | 2018-10-04 | Flight plan calculation device and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018189126A JP7106417B2 (en) | 2018-10-04 | 2018-10-04 | Flight plan calculation device and program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2020057312A JP2020057312A (en) | 2020-04-09 |
JP7106417B2 true JP7106417B2 (en) | 2022-07-26 |
Family
ID=70107389
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018189126A Active JP7106417B2 (en) | 2018-10-04 | 2018-10-04 | Flight plan calculation device and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7106417B2 (en) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021065543A1 (en) * | 2019-09-30 | 2021-04-08 | ソニー株式会社 | Information processing device, information processing method, and program |
JP7458593B2 (en) * | 2020-11-06 | 2024-04-01 | 公立大学法人会津大学 | Method, system and program for creating travel routes for each of a plurality of moving objects |
JP2023000236A (en) * | 2021-06-17 | 2023-01-04 | 株式会社日立製作所 | Flying object control system |
KR102671494B1 (en) * | 2021-11-09 | 2024-05-31 | 한국항공우주연구원 | Method and system for controlling passing through waypoints based on design of the offset kinematics for unmanned vehicles |
JP7227443B1 (en) * | 2022-04-27 | 2023-02-22 | 株式会社Flight PILOT | Route generation device, route generation method, computer program, and mobile object management system |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017182692A (en) | 2016-03-31 | 2017-10-05 | セコム株式会社 | Autonomous Mobile Robot |
JP2017206224A (en) | 2016-05-11 | 2017-11-24 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Flight control method and unmanned flight body |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
IL219923A (en) * | 2011-08-02 | 2016-09-29 | Boeing Co | Aircraft traffic separation system |
JP5785463B2 (en) * | 2011-09-14 | 2015-09-30 | 富士重工業株式会社 | Flight path identification method and program |
JP6664162B2 (en) * | 2015-07-31 | 2020-03-13 | セコム株式会社 | Autonomous flying robot |
JP2018034691A (en) * | 2016-08-31 | 2018-03-08 | シャープ株式会社 | Base station, notification system and notification method |
-
2018
- 2018-10-04 JP JP2018189126A patent/JP7106417B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017182692A (en) | 2016-03-31 | 2017-10-05 | セコム株式会社 | Autonomous Mobile Robot |
JP2017206224A (en) | 2016-05-11 | 2017-11-24 | パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America | Flight control method and unmanned flight body |
Also Published As
Publication number | Publication date |
---|---|
JP2020057312A (en) | 2020-04-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7106417B2 (en) | Flight plan calculation device and program | |
EP3619591B1 (en) | Leading drone | |
EP3619584B1 (en) | Underwater leading drone system | |
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 | |
US20180350086A1 (en) | System And Method Of Dynamically Filtering Depth Estimates To Generate A Volumetric Map Of A Three-Dimensional Environment Having An Adjustable Maximum Depth | |
US20180321681A1 (en) | Leading drone method | |
US10386857B2 (en) | Sensor-centric path planning and control for robotic vehicles | |
JP2019537140A (en) | Vehicle collision avoidance | |
JP2017182692A (en) | Autonomous Mobile Robot | |
EP3077760A1 (en) | Payload delivery | |
US20230152123A1 (en) | Route planning for a ground vehicle through unfamiliar terrain | |
US11454991B2 (en) | Path planning for cooperated air vehicles | |
CN111566713A (en) | Identifying landing zones for robotic vehicles to land | |
JP6469492B2 (en) | Autonomous mobile robot | |
JP7202834B2 (en) | Movement plan calculation device and program | |
JP7351609B2 (en) | Route searching device and program | |
JP2019191888A (en) | Unmanned flying object, unmanned flying method and unmanned flying program | |
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 | |
JP2017181443A (en) | Self-position estimation device | |
Balaji et al. | GPS denied Localization and Magnetometer-Free Yaw Estimation for UAVs | |
WO2024054310A2 (en) | Multi-drone systems and methods to improve inertial navigation | |
Tartaglione et al. | Development of an autonomous multi-rotor UAV for outdoor missions in unknown environments |
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: 20220530 |
|
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: 20220621 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220713 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7106417 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |