[1]実施例
図1は実施例に係る安全飛行支援システム1の全体構成の一例を表す。安全飛行支援システム1は、ユーザが操作する飛行体の安全な飛行を支援するシステムである。安全飛行支援システム1は、本実施例では、飛行体であるドローンの安全な飛行を支援する。
安全飛行支援システム1は、ネットワーク2と、サーバ装置10と、ドローン20と、プロポ30と、ユーザ端末40とを備える。ネットワーク2は、移動体通信網及びインターネット等を含む通信システムであり、自システムにアクセスする装置同士のデータのやり取りを中継する。ネットワーク2には、サーバ装置10が有線通信によりアクセスし(無線通信でもよい)、ドローン20、プロポ30及びユーザ端末40が無線通信によりアクセスしている(ユーザ端末40は有線通信でもよい)。
ドローン20は、ユーザの操作に応じて飛行する飛行体である。このドローン20を操作するユーザは、本発明の「操作者」の一例である。ドローン20は、撮影、監視、検査及び搬送等の様々な用途で用いられる。ドローン20は、本実施例では、1以上の回転翼を備え、それらの回転翼を回転させて飛行する回転翼機型の飛行体である。プロポ30は、プロポーショナル式の制御(比例制御)を行う装置であり、操作者がドローン20の操作に用いる。
サーバ装置10は、ドローン20の安全な飛行を支援するための各種処理を行う。サーバ装置10は本発明の「情報処理装置」の一例である。ドローンの事故の原因として多いのが着陸前に電池(通常はバッテリー)の電力残量がなくなることである。そこで、サーバ装置10は、電池に十分な電力が残っているうちに着陸に向かう操作に切り替えるようドローン20を操作するユーザに通知する処理を行う。
サーバ装置10は、ユーザへの上記切り替えの通知(以下では「切替通知」という)を、本実施例ではドローン20を飛行させる範囲(飛行範囲)に基づいて行う。ユーザ端末40は、ドローン20を操作するユーザが利用する端末であり、この飛行範囲を示す情報をサーバ装置10に通知する処理を行う。ユーザへの切替通知は、通知内容を示す文字列、画像及び音声等の出力によって行われる。
ユーザへの切替通知は、ユーザ端末40を介して行われてもよいが、本実施例ではプロポ30を介して行われる場合を説明する。プロポ30は、サーバ装置10からの切替通知を出力する機能を有している。切替通知は、文字列及び画像等の表示で行われてもよいし、音声の出力で行われてもよい。ユーザは、切替通知が出力されると、例えば予め決めていた着陸地点に戻して着陸させる操作に切り替える。
図2はサーバ装置10のハードウェア構成の一例を表す。サーバ装置10は、物理的には、プロセッサ11と、メモリ12と、ストレージ13と、通信装置14と、バス15などを含むコンピュータ装置として構成されてもよい。なお、以下の説明では、「装置」という文言は、回路、デバイス、ユニットなどに読み替えることができる。
また、各装置は、1つ又は複数含まれていてもよいし、一部の装置が含まれていなくてもよい。プロセッサ11は、例えば、オペレーティングシステムを動作させてコンピュータ全体を制御する。プロセッサ11は、周辺装置とのインターフェース、制御装置、演算装置、レジスタなどを含む中央処理装置(CPU:Central Processing Unit)によって構成されてもよい。
例えば、ベースバンド信号処理部等は、プロセッサ11によって実現されてもよい。また、プロセッサ11は、プログラム(プログラムコード)、ソフトウェアモジュール、データなどを、ストレージ13及び通信装置14の少なくとも一方からメモリ12に読み出し、これらに従って各種の処理を実行する。プログラムとしては、上述の実施の形態において説明した動作の少なくとも一部をコンピュータに実行させるプログラムが用いられる。
上述の各種処理は、1つのプロセッサ11によって実行される旨を説明してきたが、2以上のプロセッサ11により同時又は逐次に実行されてもよい。プロセッサ11は、1以上のチップによって実装されてもよい。なお、プログラムは、電気通信回線を介してネットワークから送信されてもよい。メモリ12は、コンピュータ読み取り可能な記録媒体である。
メモリ12は、例えば、ROM(Read Only Memory)、EPROM(Erasable Programmable ROM)、EEPROM(Electrically Erasable Programmable ROM)、RAM(Random Access Memory)などの少なくとも1つによって構成されてもよい。メモリ12は、レジスタ、キャッシュ、メインメモリ(主記憶装置)などと呼ばれてもよい。メモリ12は、本開示の一実施の形態に係る無線通信方法を実施するために実行可能なプログラム(プログラムコード)、ソフトウェアモジュールなどを保存することができる。
ストレージ13は、コンピュータ読み取り可能な記録媒体であり、例えば、CD-ROM(Compact Disc ROM)などの光ディスク、ハードディスクドライブ、フレキシブルディスク、光磁気ディスク(例えば、コンパクトディスク、デジタル多用途ディスク、Blu-ray(登録商標)ディスク)、スマートカード、フラッシュメモリ(例えば、カード、スティック、キードライブ)、フロッピー(登録商標)ディスク、磁気ストリップなどの少なくとも1つによって構成されてもよい。
ストレージ13は、補助記憶装置と呼ばれてもよい。上述の記憶媒体は、例えば、メモリ12及びストレージ13の少なくとも一方を含むデータベース、サーバその他の適切な媒体であってもよい。通信装置14は、有線ネットワーク及び無線ネットワークの少なくとも一方を介してコンピュータ間の通信を行うためのハードウェア(送受信デバイス)である。
通信装置14は、例えばネットワークデバイス、ネットワークコントローラ、ネットワークカード、通信モジュールなどともいう。通信装置14は、例えば周波数分割複信(FDD:Frequency Division Duplex)及び時分割複信(TDD:Time Division Duplex)の少なくとも一方を実現するために、高周波スイッチ、デュプレクサ、フィルタ、周波数シンセサイザなどを含んで構成されてもよい。
例えば、上述の送受信アンテナ、アンプ部、送受信部、伝送路インターフェースなどは、通信装置14によって実現されてもよい。送受信部は、送信部と受信部とで、物理的に、または論理的に分離された実装がなされてもよい。また、プロセッサ11、メモリ12などの各装置は、情報を通信するためのバス15によって接続される。バス15は、単一のバスを用いて構成されてもよいし、装置間ごとに異なるバスを用いて構成されてもよい。
図3はドローン20のハードウェア構成の一例を表す。ドローン20は、物理的には、プロセッサ21と、メモリ22と、ストレージ23と、通信装置24と、飛行装置25と、センサ装置26と、バッテリー27と、カメラ28と、バス29などを含むコンピュータ装置として構成されてもよい。これらのうち図2に同名のハードウェアが表されているものは、性能及び仕様等の違いはあるがそれらと同種のハードウェアである。
通信装置24は、ネットワーク2との通信に加え、プロポ30との通信を行う機能(例えば2.4GHz帯の電波による無線通信機能)を有する。飛行装置25は、モータ及びローター等を備え、自機を飛行させる装置である。飛行装置25は、空中において、あらゆる方向に自機を移動させたり、自機を静止(ホバリング)させたりすることができる。
センサ装置26は、飛行制御に必要な情報を取得するセンサ群を有する装置である。センサ装置26は、例えば、自機の位置(緯度及び経度)を測定する位置センサと、自機が向いている方向(ドローンには自機の正面方向が定められており、その正面方向が向いている方向)を測定する方向センサと、自機の高度を測定する高度センサとを備える。また、センサ装置26は、自機の速度を測定する速度センサと、3軸の角速度及び3方向の加速度を測定する慣性計測センサ(IMU(Inertial Measurement Unit))とを備える。
バッテリー27は、電力を蓄積し、ドローン20の各部に電力を供給する装置である。バッテリー27は、蓄積している電力の残量を検出する残量検出回路271を有し、残量検出回路271が検出した電力残量をプロセッサ21に供給する。なお、残量検出回路271は、バッテリー27に内蔵されるのではなく外付けされていてもよい。カメラ28は、イメージセンサ及び光学系の部品等を備え、レンズが向いている方向にある物体を撮影する。
図4はプロポ30のハードウェア構成の一例を表す。プロポ30は、物理的には、プロセッサ31と、メモリ32と、ストレージ33と、通信装置34と、入力装置35と、出力装置36と、バス37などを含むコンピュータ装置として構成されてもよい。これらのうち図2に同名のハードウェアが表されているものは、性能及び仕様等の違いはあるがそれらと同種のハードウェアである。
入力装置35は、外部からの入力を受け付ける入力デバイス(例えばスイッチ、ボタン及びセンサ等)である。特に、入力装置35は、左スティック351及び右スティック352を備え、これらのスティックへの操作をドローン20の前後方向、上下方向、左右方向、回転方向への移動操作として受け付ける。出力装置36は、外部への出力を実施する出力デバイス(例えばモニター361、スピーカー及びLED(Light Emitting Diode)ランプ等)である。なお、入力装置35及び出力装置36は、一体となった構成(例えばモニター361がタッチスクリーン)であってもよい。
図5はユーザ端末40のハードウェア構成の一例を表す。ユーザ端末40は、物理的には、プロセッサ41と、メモリ42と、ストレージ43と、通信装置44と、入力装置45と、出力装置46と、バス47などを含むコンピュータ装置として構成されてもよい。これらのうち図2又は図4に同名のハードウェアが表されているものは、性能及び仕様等の違いはあるがそれらと同種のハードウェアである。なお、入力装置45は、上記の入力デバイス以外にも、例えばキーボード、マウス及びマイクロフォン等であってもよい。
また、上記の各装置は、マイクロプロセッサ、デジタル信号プロセッサ(DSP:Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)、PLD(Programmable Logic Device)、FPGA(Field Programmable Gate Array)などのハードウェアを含んで構成されてもよい。また、上記の各装置は、当該ハードウェアにより、各機能ブロックの一部又は全てが実現されてもよい。例えば、プロセッサ11は、これらのハードウェアの少なくとも1つを用いて実装されてもよい。
安全飛行支援システム1が備える各装置における各機能は、各々のプロセッサ、メモリなどのハードウェア上に所定のソフトウェア(プログラム)を読み込ませることによって、プロセッサが演算を行い、各々の通信装置による通信を制御したり、メモリ及びストレージにおけるデータの読み出し及び書き込みの少なくとも一方を制御したりすることによって実現される。
図6は各装置が実現する機能構成を表す。サーバ装置10は、関連情報蓄積部101と、技量判定部102と、残量情報取得部103と、切替時期判断部104と、飛行情報取得部105と、切替通知部106とを備える。ドローン20は、動作制御部201と、センサ測定部202と、電池残量通知部203とを備える。プロポ30は、操作受付部301と、動作指示部302と、操作履歴通知部303と、通知出力部304とを備える。ユーザ端末40は、飛行情報通知部401を備える。
プロポ30の操作受付部301は、操作者がドローン20に対して行う操作を受け付ける。ドローン20に対して行う操作とは、例えば、左スティック351及び右スティック352をそれぞれ動かす(傾ける)操作である。各スティックを動かす操作が、上昇、下降、前進、後退、右移動、左移動、右転回及び左転回という基本的な移動の操作に対応付けられている。
また、操作受付部301は、自動離陸、自動帰還及び自動追尾等のドローン20に自動的に所定の飛行を行わせる操作及びカメラ28を用いた撮影の操作も受け付ける。操作受付部301は、受け付けた操作内容を示す操作データを動作指示部302及び操作履歴通知部303に供給する。操作内容とは、操作された操作子の種類(スティック又はボタン等)、操作の量(スティックを動かした量等)、操作の速度(スティックを動かす速度等)及び操作の方向(スティックを動かす方向等)等である。
動作指示部302は、供給された操作データが示す操作内容に応じた動作をドローン20に対して指示する。動作指示部302は、動作の指示と操作者であるユーザを識別するユーザID(Identification)とを示す動作指示データを生成してドローン20に送信することで、操作内容に応じた動作を指示する。このユーザIDは、ユーザによるプロポ30の入力装置35を用いた入力又は外部装置からの入力によって予めプロポ30に記憶されているものとする。
ドローン20の動作制御部201は、送信されてきた動作指示データを受信すると、その動作指示データが示す動作を行うよう自機の各部を制御する。動作制御部201は、各部の制御を行うために、センサ測定部202に対してセンサによる測定結果を要求する。センサ測定部202は、図3に表すセンサ装置26が備える各センサ(位置センサ、方向センサ、高度センサ、速度センサ、慣性計測センサ)を用いて測定を行う。
センサ測定部202は、各センサにより自機の位置、方向、高度、速度、角速度、加速度を所定の時間間隔で繰り返し測定し、それらの測定結果を動作制御部201に供給する。動作制御部201は、供給された測定結果に基づいて自機の各部を制御して自機を飛行させる。
プロポ30の操作履歴通知部303は、操作受付部301から供給された操作データが示す操作内容と、その操作が行われた操作時刻(例えば現在時刻)と、その操作を行うユーザのユーザIDとを示す操作履歴データを生成する。操作履歴通知部303は、生成した操作履歴データをサーバ装置10に送信することで、操作履歴(操作内容及び操作時刻)をサーバ装置10に通知する。
サーバ装置10の関連情報蓄積部101は、飛行体の操作者の操作に関する関連情報を取得して蓄積する。関連情報蓄積部101は本発明の「取得部」の一例である。関連情報蓄積部101は、本実施例では、送信されてきた操作履歴データが示す操作履歴(操作内容及び操作時刻)を、その操作履歴データが示すユーザIDのユーザ(操作者)の操作に関する関連情報として取得する。
サーバ装置10の技量判定部102は、関連情報蓄積部101により取得された関連情報に基づいてドローン20の操作者の技量を判定する。技量判定部102は本発明の「判定部」の一例である。ここでいう操作者の技量とは、ドローンを操作して飛行させる技量のことであり、技量が高いほどドローンを操作者の意図したとおりに飛行させることができることを意味する。技量判定部102は、例えば、関連情報蓄積部101に蓄積されている操作履歴からユーザIDが共通する操作履歴を定期的に読み出し、読み出した操作履歴に基づいてそのユーザIDが示すユーザの技量を判定する。
技量判定部102は、本実施例では、左スティック351及び右スティック352に対する操作量(スティックを動かす量)、操作速度(スティックを動かす速さ)、切り返し操作(スティックを動かす方向を反転させる操作)の回数に基づいて技量を判定する。技量判定部102は、単位時間当たりの操作量、操作速度の平均値及び単位時間当たりの切り返し操作の回数が大きいほど技量が低いと判定する。
技量判定部102は、これらの情報と技量ポイント(大きいほど技量が高いことを示すポイント)とを対応付けた技量テーブルを用いて判定を行う。
図7は技量テーブルの一例を表す。図7(a)では、「Th11未満」、「Th11以上Th12未満」及び「Th12以上」という単位時間当たりの操作量に、「3」、「2」及び「1」という技量ポイントがそれぞれ対応付けられている。
図7(b)では、「Th21未満」、「Th21以上Th22未満」及び「Th22以上」という操作速度の平均値に、「3」、「2」及び「1」という技量ポイントがそれぞれ対応付けられている。図7(c)では、「Th31未満」、「Th31以上Th32未満」及び「Th32以上」という単位時間当たりの切り返し操作回数に、「3」、「2」及び「1」という技量ポイントがそれぞれ対応付けられている。
技量判定部102は、ユーザの操作履歴から単位時間当たりの操作量、操作速度の平均値及び単位時間当たりの切り返し操作の回数を算出し、算出した各値に対応付けられた技量ポイントを合計する。技量判定部102は、合計した技量ポイント(図7の例では3から9までの値となる)が大きいほど技量が高いと判定する。技量判定部102は、算出した技量ポイントをユーザIDに対応付けて記憶しておく。
ドローン20の電池残量通知部203は、ユーザが時期を操作する際に、自機のバッテリー27の電力残量をサーバ装置10に通知する。動作制御部201は、動作指示データが示す動作を開始すると、その動作指示データが示すユーザID(自機を操作するユーザのユーザID)を電池残量通知部203に供給する。電池残量通知部203は、バッテリー27の残量検出回路271が検出した電力残量と供給されたユーザIDとを示す残量データを生成してサーバ装置10に送信する。
サーバ装置10の残量情報取得部103は、送信されてきた残量データを受信することで、その残量データが示すドローン20の電池の残量情報(電池の電力残量を示す情報)及びユーザIDを取得する。残量情報取得部103は、取得した残量情報及びユーザIDを切替時期判断部104に供給する。切替時期判断部104は、残量情報が供給された場合、すなわち、ユーザがドローン20を操作する際に、着陸に向かう操作への切替時期になったか否かを判断する。
切替時期判断部104は、ドローン20を操作するユーザの技量に基づいて切替時期になったか否かを判断する。そのため、切替時期判断部104は、供給されたユーザID(切替時期の判断対象であるユーザのユーザID)に対応付けて記憶している技量ポイントを技量判定部102に要求して取得する。その上で、切替時期判断部104は、本実施例では、次の2つの方法で切替時期になったか否かを判断する。
第1の判断方法は、ドローン20を飛行させる範囲(飛行範囲)が決まっているが、着陸地点が定められていない場合に用いられる。第2の判断方法は、ドローン20の飛行範囲が決まっており、且つ、着陸地点が定められている場合に用いられる。いずれの方法を用いるかを判断するため、切替時期判断部104は、切替時期の判断対象であるユーザが飛行させるドローン20の飛行範囲及び着陸地点に関する情報(以下「飛行情報」という)を飛行情報取得部105に要求する。
飛行情報取得部105は、前述した飛行情報(飛行範囲及び着陸地点に関する情報)を取得する。飛行情報取得部105は、ドローンの操作者として登録されているユーザ毎の飛行情報の取得先を記憶している。本実施例では、ユーザ端末40へのアクセス先(IPアドレス等)が取得先として記憶されている。飛行情報取得部105は、この取得先に対して、飛行情報を要求する要求データを送信する。
ユーザ端末40の飛行情報通知部401は、上記要求データにより要求された飛行情報を要求元に対して通知する。飛行情報通知部401は、ユーザが入力した飛行情報又は外部装置から供給された飛行情報を記憶しているものとする。飛行情報は、例えば、飛行範囲の境界を示す緯度及び経度の集合の情報と、着陸地点が定められている場合は、その地点の緯度及び経度の情報である。
飛行情報通知部401は、要求データ受信すると、記憶している飛行情報を読み出して要求データの送信元のサーバ装置10に送信する。飛行情報取得部105は、送信されてきた飛行情報を取得し、切替時期判断部104に供給する。切替時期判断部104は、供給された飛行情報が飛行範囲だけを示す場合は第1の判断方法を用いて、その飛行情報が飛行範囲及び着陸地点を示す場合は第2の判断方法を用いる。
切替時期判断部104は、第1の判断方法を用いた場合、技量判定部102により判定された技量のユーザが、取得された飛行範囲においてとり得る最も距離が長い直線の飛行ルートを飛行させた場合にその飛行ルートの終点まで飛行可能な状態である時期を切替時期として判断する。
図8は飛行範囲の一例を表す。図8の例では、対角線の長さがL1である長方形の形をした飛行範囲A1が表されている。飛行範囲A1においては、とり得る最も距離が長い直線の飛行ルートの長さがL1ということである。切替時期判断部104は、ユーザの技量ポイントと、バッテリー27が基準電力残量(例えば残り5%)になった場合に飛行可能な距離とを対応付けた距離テーブルを用いて切替時期になったか否かを判断する。
図9は距離テーブルの一例を表す。図9の例では、「3」、「4」、・・・「8」、「9」という技量ポイントに、「100」、「110」、・・・、「150」、「160」という飛行可能距離(単位は「m」:メートル)がそれぞれ対応付けられている。この飛行可能距離は、ドローンの性能によっても変化する。そのため、切替時期判断部104は、例えばドローンの機種毎に距離テーブルを記憶しておき、ドローン20の機種用の距離テーブルを用いてもよい(その場合は例えば飛行情報にドローンの機種情報を含めればよい)。
技量が低いユーザは意図した飛行ルートから外れてしまいルートに戻るための飛行をしたり、高度を一定に保てず余計な上昇又は下降を行ったりして電力を余計に消費することになりやすい。これに対し、技量が高くなるほどドローンがそれらの余計な挙動をしなくなるので、同じ電力残量でも飛行可能な距離が長くなる。切替時期判断部104は、まず、技量判定部102から取得した技量ポイントに距離テーブルにおいて対応付けられている飛行可能距離を読み出す。
切替時期判断部104は、飛行情報が示す飛行範囲においてとり得る最も距離が長い直線の飛行ルートの距離(最長距離)を算出する(図8の例であれば最長距離がL1)。切替時期判断部104は、算出した最長距離を読み出した飛行可能距離で除した値を算出する。この値は、最長距離を飛行するために必要な電力残量と基準電力残量との比率を表す。そこで、切替時期判断部104は、算出した比率を基準電力残量に乗じた値を切替時の電力残量として算出する。
例えばユーザの技量ポイントが「3」であれば飛行可能距離が「100」mである。また、図8に表す飛行範囲A1を飛行する場合は最長距離がL1である。L1が300mであれば、300m÷100m=3となる。基準電力残量が5%であれば、5%×3=15%が切替時の電力残量となる。その場合、切替時期判断部104は、残量情報取得部103から供給された残量情報が示す電力残量が15%に達したときに、切替時期になったと判断する。
また、同じ飛行範囲A1を飛行する場合でも、ユーザの技量ポイントが「8」であれば飛行可能距離が「150」mなので、比率が300m÷150m=2となり、5%×2=10%が切替時の電力残量となる。この場合、切替時期判断部104は、残量情報取得部103から供給された残量情報が示す電力残量が10%に達したときに、切替時期になったと判断する。
なお、切替時期判断部104は、上記のとおり計算した10%及び15%をそのまま用いずに、例えば安全のためのマージンを設けてもよい(マージンが2%であれば12%及び17%を用いる)。その場合、切替時期判断部104は、前述した最も距離が長い直線の飛行ルートを飛行させた場合にその飛行ルートの終点までマージンの分だけ余裕をもって飛行可能な状態になった時期を切替時期として判断することになる。
上記のいずれの場合も、切替時期判断部104は、ユーザの技量が高いほど電力残量が少なくなるまで切替時期の判断を待つことになり、ユーザの技量が低いほど電力残量が多く残っているうちに切替時期になったと判断する。言い換えると、切替時期判断部104は、ユーザの技量が高いほど遅いタイミングで切替時期になったと判断し、ユーザの技量が低いほど早いタイミングで切替時期になったと判断する。
切替時期判断部104は、第2の判断方法を用いた場合、技量判定部102により判定された技量のユーザが、取得された飛行範囲においてとり得る着陸地点までの距離が最も長い直線の飛行ルートを飛行させた場合にその飛行ルートの終点まで飛行可能な状態になった時期を切替時期として判断する。
図10は飛行範囲及び着陸地点の一例を表す。図10の例では、図8に表す飛行範囲A1に、着陸地点B1が表されている。着陸地点B1は、飛行範囲A1の4つの角の内最も遠い角との距離(飛行範囲A1においてとり得る着陸地点B1までの距離が最も長い直線の飛行ルートの距離)がL2となっている。切替時期判断部104は、この距離L2を、上記の距離L1の代わりに用いることで、第2の判断方法を用いた切替時期の判断を行う。
切替時期判断部104は、残量情報が示す電力残量が切替時の電力残量になったときに、その旨を切替通知部106に通知する。切替通知部106は、この通知を受け取ると、切替時期になったことをユーザに通知する通知データを生成し、例えばプロポ30に送信する。切替通知部106は、この通知データを送信することで、着陸に向かう操作への切替時期になったことをユーザに通知する。
この通知は、上記のとおり切替時期判断部104が切替時期を判断したときに行われる。つまり、切替通知部106は、ユーザがドローン20を操作する際に、着陸に向かう操作への切替時期になったことを示す通知をそのユーザについて判定された技量が低いほど早いタイミングで行う。切替時期判断部104及び切替通知部106が協働することで、本発明の「通知部」の一例として機能する。
プロポ30の動作指示部302は、動作指示データの送信を開始すると、その旨を通知出力部304に通知する。通知出力部304は、この通知を受け取ると、切替時期の通知を要求する要求データをサーバ装置10に送信する。切替通知部106は、この要求データを受け取った後に上記のとおり切替時期の判断が行われると、通知データを要求元のプロポ30に送信する。通知出力部304は、送信されてきた通知データを受信して、その通知データが示す通知内容を例えば自装置のモニター361に出力(表示)する。
図11は出力された通知内容の一例を表す。通知出力部304は、図11の例では、飛行時の各種の状況を表す飛行画面をモニター361に表示している。通知出力部304は、この飛行画面に、カメラ28が撮影する画像C1と、通知データが示す「電力残量が残りわずかです!直ちに着陸に向かってください。」という文字列の画像C2とを表示している。ドローン20を操作するユーザは、この表示を見ると、直ちに着陸に向かう飛行に切り替える。
なお、通知の出力方法は図11の例に限らない。例えば、通知出力部304は、上記文字列を読み上げる音声を出力してもよい。また、通知出力部304は、LEDランプを点灯又は点滅させて注意を喚起してもよい。通知出力部304は、要するに、着陸に向かう飛行に切り替えるべき時期であることをユーザに気付かせることができるのであれば、どのような通知の出力を行ってもよい。
安全飛行支援システム1が備える各装置は、上記の構成に基づいて、ドローン20の操作者の技量を判定する判定処理と、ドローン20の操作者に対して切替時期を通知する通知処理とを行う。
図12は判定処理における各装置の動作手順の一例を表す。この動作手順は、ユーザがドローン20の操作を開始することを契機に開始される。
まず、プロポ30(操作受付部301)は、操作者がドローン20に対して行う操作を受け付ける(ステップS11)。次に、プロポ30(動作指示部302)は、受け付けられた操作の内容に応じた動作指示データを生成し(ステップS12)、生成した操作指示データをドローン20に送信する(ステップS13)。ドローン20(動作制御部201)は、受信した動作指示データが示す動作を行うよう自機の各部の動作を制御する(ステップS14)。
次に、プロポ30(操作履歴通知部303)は、操作内容、操作時刻及びユーザのユーザIDを示す操作履歴データを生成し(ステップS21)、生成した操作履歴データをサーバ装置10に送信する(ステップS22)。なお、プロポ30は、ステップS21及びS22の動作を、ステップS12及びS13と並行して行ってもよい。サーバ装置10(関連情報蓄積部101)は、受信した操作履歴データが示す情報を飛行体の操作者の操作に関する関連情報として取得して蓄積する(ステップS23)。
そして、サーバ装置10(技量判定部102)は、蓄積された関連情報に基づいてドローン20の操作者の技量を判定する(ステップS24)。ここまでが判定処理における動作手順である。判定処理は、上述したように定期的に行われ、各ユーザの技量の判定結果が更新される。なお、判定処理は、ユーザがドローン20を操作する度に行われてもよい。
図13は通知処理における各装置の動作手順の一例を表す。この動作手順は、ドローン20が飛行を開始することを契機に開始される。まず、ドローン20(電池残量通知部203)は、自機のバッテリー27の電力残量を示す残量データを生成し(ステップS31)、生成した残量データをサーバ装置10に送信する(ステップS32)。サーバ装置10(残量情報取得部103)は、送信されてきた残量データが示す残量情報を取得する(ステップS33)。
次に、サーバ装置10(飛行情報取得部105)は、ドローン20の操作者に対応する取得先(本実施例ではユーザ端末40)に飛行情報(飛行範囲及び着陸地点に関する情報)を要求する(ステップS41)。ユーザ端末40(飛行情報通知部401)は、要求された飛行情報をサーバ装置10に対して通知する(ステップS42)。サーバ装置10(飛行情報取得部105)は、通知された飛行情報を取得する(ステップS43)。
続いて、サーバ装置10(切替時期判断部104)は、ドローン20を操作するユーザの技量及び取得された飛行情報に基づいて切替時期を判断する(ステップS51)。そして、サーバ装置10(切替通知部106)は、切替時期になったと判断されると、その切替時期になったことをユーザに通知する通知データを生成し(ステップS52)、生成した通知データをプロポ30に送信する(ステップS53)。プロポ30(通知出力部304)は、送信されてきた通知データが示す通知内容を出力する(ステップS54)。
上述したように、同じ電力残量の場合、ユーザの技量が低いほど飛行可能距離が短くなりやすい。そのため、同じ電力残量のときに切替時期の通知がされると、技量の低いユーザにとってはタイミングが遅すぎて電力切れになるということになりかねないし、技量の高いユーザにとってはタイミングが早すぎて電力を持て余すことになりやすい。本実施例では、上記のとおりユーザの技量に応じたタイミングで通知される。
そのため、技量の低いユーザには早めに通知されて安全に着陸ができ、技量の高いユーザには遅めに通知されてぎりぎりまで電力を活用することができるようになる。このように、本実施例では、飛行体の操作者の技量に関わらず、それらの操作者に着陸に向かう操作に切り替える適切なタイミングを伝えることができる。
また、飛行範囲が決まっている場合、飛行範囲であればどこでも着陸可能なわけではなく、着陸可能な場所が制限されている場合がある。本実施例では、上記のとおり飛行範囲においてとり得る最も距離が長い直線の飛行ルートを飛行可能なタイミングで切替時期が通知されるので、飛行範囲のどこを飛行中でも必ず着陸地点まで飛行可能とすることができる。
また、飛行範囲の中で着陸地点が定められている場合は、飛行範囲においてとり得る着陸地点までの距離が最も長い直線の飛行ルートを飛行可能なタイミングで切替時期が通知される。そのため、飛行範囲のどこを飛行中でも必ず定められた着陸地点まで飛行可能とすることができる。
[2]変形例
上述した実施例は本発明の実施の一例に過ぎず、以下のように変形させてもよい。また、実施例及び各変形例は必要に応じてそれぞれ組み合わせてもよい。その際は、各変形例について優先順位を付けて(各変形例を実施すると競合する事象が生じる場合にどちらを優先するかを決める順位付けをして)実施してもよい。
また、具体的な組み合わせ方法として、例えば共通する値(例えばユーザの技量)を求めるために異なるパラメータを用いる変形例を組み合わせて、それらのパラメータを共に用いて共通する値等を求めてもよい。また、個別に求めた値等を何らかの規則に従い合算して1つの値等を求めてもよい。また、それらの際に、用いられるパラメータ毎に異なる重み付けをしてもよい。
[2-1]関連情報
技量判定部102は、実施例では操作履歴を関連情報として用いて技量を判定したが、技量判定に用いる関連情報はこれに限らない。技量判定部102は、例えば、ドローン20の飛行履歴を関連情報として用いてもよい。例えば技量が高いユーザは、技量が低いユーザに比べてドローン20を目的地点まで直線的に飛行させる。
そこで、技量判定部102は、飛行経路に含まれる曲線部分(曲率が閾値以上の部分)の割合が多いほど技量が低いと判定してもよい。また、技量判定部102は、ドローン20の飛行情報として、飛行予定の飛行経路を示す情報が取得される場合には、その飛行経路に対する飛行履歴の飛行経路の空間的な差分が大きいほど技量が低いと判定してもよい。なお、飛行時刻も決められている場合であれば、技量判定部102は、時間的な差分が大きいほど技量が低いと判定してもよい。
また、ドローンにはライセンスが発行されるようになってきている。そこで、技量判定部102は、例えば飛行情報としてユーザのライセンスのランクを示す情報が取得される場合に、そのライセンスのランクが高いほど技量が高いと判定してもよい。要するに、ユーザがドローンを操作して飛行させる技量の高さを表す情報であれば、どのような情報が関連情報として用いられてもよい。
[2-2]過去の操作履歴
ドローンを操作して飛行させる技量は操作の経験を積むほど向上するが、操作を経験してから時間が経過すると次第に技量も衰えていく。そこで、技量判定部102は、この衰えも考慮して技量を判定してもよい。
本変形例では、技量判定部102は、関連情報蓄積部101により取得された操作履歴について新しいものほど重みを付けて操作者の技量を判定する。技量判定部102は、操作時期と重み係数とを対応付けた係数テーブルを用いてこの判定を行う。
図14は係数テーブルの一例を表す。図14の例では、「半年以内」、「半年前から1年以内」及び「1年以上前」という操作時期に、「2.0」、「1.5」及び「1.0」という重み係数が対応付けられている。
技量判定部102は、上記のとおり読み出した操作履歴から単位時間当たりの操作量、操作速度の平均値及び単位時間当たりの切り返し操作の回数を算出する際に、各操作量、操作速度、切り返し操作が行われた時期に係数テーブルで対応付けられた重み係数を乗じて計算を行う。例えば操作速度のように平均値を算出する場合、技量判定部102は、重み係数と同じ割合だけ個数が増えたものとして平均値を算出する。
例えば操作速度E1、E2、E3の重み係数がそれぞれ「2.0」、「1.5」、「1.0」である場合、操作速度E1の重み係数は操作速度E3の2.0倍となり、操作速度E2の重み係数は操作速度E3の1.5倍となる。この場合、技量判定部102は、(E1+E1+E1+E1+E2+E2+E2+E3+E3)÷9を平均値として算出する(E1はE3の2倍の数、E2はE3の1.5倍の数だけ加える)。この算出方法を用いると、重み係数が大きい値により近い値が平均値として算出される。
また、単位時間当たりの操作量及び切り返し操作の回数の算出も、上記の平均値と同様に、各時期の操作量及び切り返し操作の回数が重み係数と同じ割合だけ個数が増えたものとして行えばよい。本変形例では、上記のとおり重み付けを行うことで、この重み付けを行わない場合に比べて、過去に身に着けた技術が衰えることを踏まえてより適切な技量を判定することができる。
[2-3]切替時期の判断
切替時期判断部104は、実施例ではドローン20の電力残量に基づいて切替時期を判断したが、これに加えて、さらにドローン20で発生した不具合にも基づいて切替時期を判断してもよい。不具合には、例えばモータの異常、アンプの異常、断線及びセンサの異常等がある。
本変形例では、例えばセンサ測定部202が異常の有無を示す値を測定してその測定結果をサーバ装置10に送信する。切替時期判断部104は、送信されてきた測定結果に基づいて不具合の有無を判断する。不具合の中には、発生してもドローン20の飛行を継続可能なものがある。例えば6枚又は8枚ローターのドローンの場合、1枚が停止しても飛行継続が可能である。
もちろん正常な状態ではないのでなるべく早く着陸させることが望ましいが、ユーザの技量が十分にあれば、状況によっては(例えば周囲に操作者以外に人がいない状況等)直ちに着陸に向かわなくてもよい場合もある。そこで、切替時期判断部104は、ドローン20で発生した不具合に対してユーザの技量が足りているか否かを判断し、足りていないと判断した場合に、切替時期になったことを判断する。
切替時期判断部104は、例えば不具合の種類と飛行を継続するに足る技量ポイントとの関係を記憶しておき、発生した不具合の種類に対して技量判定部102により判定されたユーザの技量ポイントが足りない場合に、切替時期になったことを判断する。なお、この不具合の種類と技量ポイントとの関係は、周囲の状況によっても変換する(落下のリスクが高いほどより高い技量が必要になる)。
そこで、切替時期判断部104は、定められた複数通りの周囲の状況毎に上記の関係を記憶しておき、ユーザが選択した状況に対応する関係を用いて切替時期の判断を行ってもよい。本変形例では、ドローン20に不具合が生じた場合においても、上記関係を用いた判断を行わない場合に比べて、ユーザの技量に応じた適切なタイミングで切替時期を通知することができる。
なお、切替通知部106は、実施例では図11に表すように電力残量が残り少なくなったことと着陸に向かう指示とを通知したが、本変形例では、さらに不具合の内容を合わせて通知してもよい。ユーザはこの通知により不具合の状況を把握することができ、着陸に向かう飛行の際に不具合の影響を小さくするよう工夫すること(例えばセンサの異常であればプロポ30に表示されるセンサの測定値を見ずに目視で判断して飛行させるなど)ができる。
[2-4]複数の着陸地点
図10の例では着陸地点が1カ所定められていたが、着陸地点が複数定められている場合がある。その場合、切替時期判断部104は、例えば次の第3、第4、第5の判断方法のいずれかを用いて切替時期を判断する。
第3の判断方法を用いた場合、切替時期判断部104は、まず、複数の着陸地点のうち、取得された飛行範囲においてとり得る着陸地点までの直線の飛行ルートの距離が最も長くなる着陸地点を選択する。
図15は本変形例の飛行範囲の一例を表す。図15では、着陸地点B11、B12、B13が定められた飛行範囲A11が表されている。
着陸地点B11、B12、B13は、それぞれ飛行範囲A11においてとり得る直線の飛行ルートの最長距離(最も離れた角までの距離)がL11、L12、L13である。これらの距離の大小関係がL12<L11<L13である場合、切替時期判断部104は、最長距離が最も長い着陸地点B13を選択する。切替時期判断部104は、その選択した着陸地点B13について実施例で述べた第2の判断方法を用いて切替時期を判断する。
この第3の判断方法が用いられた場合、複数の着陸地点のうちユーザが実際に着陸する着陸地点がどれであったとしても、バッテリー27の電力が持つようにすることができる。また、第4の判断方法が用いられた場合、切替時期判断部104は、複数の着陸地点のうち、ドローン20の現在位置に最も近い着陸地点を選択する。
この場合、ドローン20のセンサ測定部202が自装置の位置を測定して示す位置情報をサーバ装置10に送信する。切替時期判断部104は、送信されてきた位置情報から現在最も近い着陸地点を選択する。
図16は本変形例の飛行位置の一例を表す。図16では、図15に表す飛行範囲A11をドローン20が飛行している。
ドローン20が位置D1を飛行している場合、切替時期判断部104は、この位置D1から最も近い着陸地点B12を選択する。ドローン20が位置D2を飛行している場合、切替時期判断部104は、この位置D2から最も近い着陸地点B11を選択する。切替時期判断部104は、ドローン20が現在位置から選択した着陸地点までの直線の飛行ルートを飛行可能な状態になった時期を切替時期として判断する。
ドローン20の現在位置から着陸地点までの距離は常に変化する。切替時期判断部104は、例えば電力残量が減っていき飛行可能距離が短くなり、現在位置から着陸地点までの距離と等しくなったときに、切替時期になったと判断する。なお、切替時期判断部104は、余裕を見て飛行可能距離の方が所定の距離だけ長い状態のときに切替時期になったと判断してもよい。
この第4の判断方法を用いた場合、電力が残っているうちに着陸させることを可能にしつつ、できるだけ長い期間においてドローン20を飛行させることができる。本変形例では、切替通知部106が、切替時期の通知と合わせて、ドローン20に特定の着陸地点を示す通知を行ってもよい。特定の着陸地点とは、例えばドローン20に最も近い着陸地点である。
図17は本変形例で出力された通知内容の一例を表す。通知出力部304は、図17の例では、モニター361に、「電力残量が残りわずかです!直ちに飛行空域の南東の端の着陸地点に向かってください。」という文字列の画像C3を表示している。また、通知出力部304は、ドローン20の周囲の地図画像C4と、その地図上のドローン20の位置を示す位置画像C5と、その地図上で南東の端の着陸地点を示す着陸地点画像C6とを表示している。
図17に表すように着陸地点が通知されることで、最も確実に到達可能な着陸地点をユーザに伝えて、この通知が行われない場合に比べて、より安全にドローン20を着陸させられるようにすることができる。特に、第4の判断方法が用いられる場合は、図17に表す通知が行われることで、ユーザが誤って他の着陸地点に向かってしまい電力が足りなくなるということを防ぐことができる。
なお、第3の判断方法が用いられる場合は、ドローン20に最も近い着陸地点以外が特定の着陸地点であってもよい。例えばユーザに最も近い着陸地点が特定の着陸地点であってもよい。その場合、ユーザは最も回収しやすい地点にドローン20を着陸させることができる。また、ドローン20に近い方から2つの着陸地点が特定の着陸地点であってもよい。その場合、ユーザは着陸させやすい方の着陸地点を選んで着陸させることができる。
また、第5の判断方法が用いられた場合、切替時期判断部104は、複数の着陸地点のうち、ドローン20の現在位置に最も遠い着陸地点を選択する。具体的には、切替時期判断部104は、ドローン20が現在位置から最も遠い着陸地点までの直線の飛行ルートを飛行可能な状態になった時期を切替時期として判断する。この場合、ユーザは、最も遠い着陸地点に着陸させてもよいし、それよりも近い着陸地点に着陸させてもよいことになる。
[2-5]気象状況
特定の気象状況(例えば風が強い状況、雨が降る状況等)においては、ドローンの飛行を控えることが望ましいが、どうしても飛行させなければならない場合(救助活動で飛行させる場合等)も起こり得る。その場合に備えて、特定の気象状況における技量が判定されてもよい。
本変形例では、関連情報蓄積部101が、特定の気象状況においてドローン20を飛行させたときの飛行に関する情報(以下「特定飛行情報」という)を関連情報として取得する。関連情報蓄積部101は、例えば、飛行情報取得部105により取得された飛行情報が示す飛行範囲の天気情報を、天気情報(天気予報の情報等)を提供する外部装置から取得する。
関連情報蓄積部101は、実施例で述べたように取得した操作履歴のうち、取得した天気情報が特定の気象状況を示す期間に取得した操作履歴を、特定飛行情報として取得して(例えば特定飛行情報であることを示すフラグを付与して)蓄積する。技量判定部102は、関連情報蓄積部101により取得された特定飛行情報に基づいて特定の気象状況においてドローン20を飛行させる技量を判定する。
この判定は、判定に用いる操作履歴が特定の気象状況においてドローン20を飛行させたときの操作履歴であることを除けば、上記の各例と同様に行われればよい。切替時期判断部104は、関連情報蓄積部101により特定飛行情報が取得される状況では、特定の気象状況においてドローン20を飛行させる技量に、他の状況(通常の状況)においてドローン20を飛行させる技量よりも重みを付けて切替時期になったか否かを判断する。
例えば、ユーザαは、通常の状況においてドローン20を飛行させる場合の技量ポイントは「8」だが、特定の気象状況においてドローン20を飛行させる場合の技量ポイントが「3」であるものとする。一方、ユーザβは、通常の状況においてドローン20を飛行させる場合の技量ポイントは「7」だが、特定の気象状況においてドローン20を飛行させる場合の技量ポイントが「5」であるものとする。
ユーザα及びβは、いずれも通常の状況の操作履歴の母数が、特定の気象状況の操作履歴の母数の3倍であるものとする。この場合、切替時期判断部104は、通常の状況では、母数のバランスのとおりに通常の状況の技量ポイントに3倍の重みを付与し、ユーザαであれば総合の技量ポイントが「7」、ユーザβであれば総合の技量ポイントが「6.5」と判断する(いずれも通常の状況の技量ポイントとの差が特定の気象状況の技量ポイントとの差の3倍になる値)。
一方、特定の状況では、切替時期判断部104は、特定の気象状況の技量ポイントに3倍の重みを付与し、通常の状況の技量ポイントを3分の1にして総合の技量ポイントを求める。その結果、切替時期判断部104は、ユーザαであれば総合の技量ポイントを「4」と判断し、ユーザβであれば総合の技量ポイントを「5.5」と判断する(いずれも特定の状況の技量ポイントとの差が通常の気象状況の技量ポイントとの差の3倍になる値)。
切替時期判断部104は、特定飛行情報が取得される状況、すなわち、特定の気象状況でドローン20を飛行させる状況では、上記のとおり重みを付けて求めた総合の技量ポイントに対応する飛行可能距離を実施例と同様に用いて切替時期になったか否かを判断する。以上のとおり、本実施例では、切替時期判断部104が、特定の状況の技量に上記の重みを付けて、切替時期になったことを示す通知のタイミングを判断することになる。
なお、特定の状況の技量に付与する重みは、上述したものよりも大きくてもよいし小さくてもよい。例えば、特定の状況の技量だけを用いて通知のタイミングが判断されてもよい。いずれの場合も、本変形例の判断が行われることで、特定の気象状況でドローン20を飛行させる場合でも、本変形例の重み付けをしない場合に比べて、より適切なタイミングで切替時期を通知することができる。
[2-6]ドローンの機能
ドローンには、安定した飛行を補助するための補助機能を有するものがある。補助機能とは、例えば、GPS(Global Positioning System)で自機の位置を測定しながら、操作がなくても同じ位置を維持する機能である。また、超音波、レーザー光及び撮影画像等を用いて自機の位置を把握して位置を維持する機能及びセンサにより物体を検知して障害物への衝突を避ける機能も補助機能である。
なお、本変形例で言う補助機能には、ユーザの技量に関係なく同じ飛行がされる機能(例えばボタンを押すと自動的に設定された着陸地点まで飛行して着陸する機能)は含まれないものとする。ドローン20が本変形例で言う補助機能を有する場合、補助機能を有しない場合に比べて、技量が低いユーザでも安定して飛行をさせることができるので、余計な挙動を抑えることができ、技量が高いユーザが操作した場合のように同じ電力残量でも飛行可能な距離が長くなる。その飛行可能な距離は、補助機能の性能が高いほど長くなりやすい。
そこで、本変形例では、切替時期判断部104が、ドローン20が補助機能を有する場合に、その補助機能の性能が高いほど技量判定部102により判定された技量の重みを小さくして切替時期になったことを示す通知のタイミングを判断する。補助機能の性能の高さは、例えば、ドローンのメーカー、モデル(ハイエンドモデルほど性能が高い)及び年式(新しいほど性能が高い)によって決まっている。
切替時期判断部104は、例えば、ドローンのメーカー名、モデル名及び年式と、補助機能の性能の高さとを対応付けた性能テーブルを記憶しておく。
図18は性能テーブルの一例を表す。図18の例では、補助機能の性能が「高」、「中」、「低」の3段階で表されている。本変形例では、飛行情報としてドローンのメーカー名(「XXX」等)、モデル名(「X-01」等)及び年式(「2018年」等)を示す情報が取得されるものとする。
切替時期判断部104は、取得された飛行情報が示すこれらの情報に性能テーブルにおいて対応付けられている性能を、ドローン20の補助機能の性能の高さとして特定する。切替時期判断部104は、補助機能の性能の高さ毎に技量ポイントと飛行可能距離とを対応付けた距離テーブルを用いて通知のタイミングを判断する。
図19は本変形例の距離テーブルの一例を表す。
図19の例では、補助機能の性能が「低」の場合に図9に表す距離テーブルと同じ技量ポイント及び飛行可能距離の対応関係が表されている。また、補助機能の性能が「中」の場合は、補助機能の性能が「低」の場合に比べて、技量ポイントが低いほど飛行可能距離が長くなっている(技量ポイント「3」なら「100」mだったのが「115」mになり、技量ポイント「4」なら「110」mだったのが「122.5」mになっている。一方、技量ポイント「9」なら「160」mのままで変わっていない)。
また、補助機能の性能が「高」の場合は、補助機能の性能が「中」の場合に比べて、技量ポイントが低いほど飛行可能距離がさらに長くなっている(技量ポイント「3」なら「115」mだったのが「130」mになり、技量ポイント「4」なら「122.5」mだったのが「135」mになっている。一方、技量ポイント「9」なら「160」mのままで変わっていない)。切替時期判断部104は、ドローン20が有する補助機能の性能に対応付けられた技量ポイント及び飛行可能距離の対応関係を用いて切替時期を判断する。
上述したとおり、補助機能の性能が高いほどユーザの技量が補われて飛行可能距離が長くなるので、技量の有無に関係なく切替時期の通知タイミングが近くなることが望ましい。本変形例では、図19に表す距離テーブルを用いることで、補助機能の性能が高いほど、技量が低い場合と高い場合の飛行可能距離の差が小さくなって切替時期になったことが通知されるタイミングが近くなる。このように、本変形例によれば、補助機能の性能に関係なく切替時期が判断される場合に比べて、より適切なタイミングで切替時期になったことが通知されるようにすることができる。
[2-7]切替時期の事前通知
切替時期判断部104は、上記の各例では、切替時期になったときに、切替時期になったことを通知したが、切替時期を予測して事前に通知してもよい。本変形例では、切替時期判断部104は、まず、予め技量ポイントに応じた切替時の電力残量を求めておく。切替時期判断部104は、残量情報が所定回数供給されたときに、それらの残量情報が示す電力残量の減り具合から、電力残量が切替時の電力残量になる時刻を特定する。
切替時期判断部104は、特定した時刻を、切替時期になる時刻として判断する。切替通知部106は、切替時期になる時刻を示す通知データを生成して送信する。本変形例では、切替通知部106は、ドローン20を操作するユーザについて判定された技量が低いほど早いタイミングで切替時期になることを示す通知を行う。切替時期判断部104は、残量情報が供給される度に電力残量が切替時の電力残量になる時刻を特定する。
切替通知部106は、特定される時刻が変化した場合は、変化後の時刻を示す通知データを生成して送信する。そして、切替通知部106は、最終的には、切替時期になったことを示す通知を行う。本変形例においても、上記のとおり切替時期が通知されることで、実施例と同様に、飛行体の操作者の技量に関わらず、それらの操作者に着陸に向かう操作に切り替える適切なタイミングを伝えることができる。
[2-8]通知タイミング
切替時期判断部104は、実施例では、技量が「中」のユーザよりも技量が「低」のユーザの方が早いタイミングで切替時期になったと判断したが、例えば飛行空域が狭くて特に通知タイミングを分けなくてよい場合には、これらのユーザについては同じタイミングで切替時期になったと判断してもよい。
ただし、その場合でも、切替時期判断部104は、少なくとも技量が「高」のユーザよりも技量が「中」又は「低」のユーザの方が早いタイミングで切替時期になったと判断する。つまり、切替時期判断部104は、基本的な処理として、ユーザについて判定された技量が低いほど早いタイミングで切替時期になったと判断するが、特に通知タイミングを分けなくてよい場合には、例外処理として、同じタイミングで切替時期になったと判断する。
この判断がされる場合、切替通知部106は、ユーザがドローン20を操作する際に、着陸に向かう操作への切替時期になったことを示す通知をそのユーザについて判定された技量に応じたタイミングで行うことになる。なお、例えばユーザの技量を実施例のように3段階で判定する場合に、通知タイミングを実施例のように3段階に分けてもよいし、本変形例のように2段階に分けてもよい。
要するに、ユーザの技量をN(Nは2以上の自然数)段階で判定する場合、通知タイミングをM(Mは2以上でN以下の自然数)段階に分ければよい。いずれの場合でも、切替通知部106は、切替時期になったことを示す通知をそのユーザについて判定された技量に応じたタイミング(M段階の通知タイミングのうち、その技量に応じて定められた段階の通知タイミング)で行うことになる。
[2-9]重み付け
技量判定部102は、上記変形例において、取得された操作履歴について、図14に表す係数テーブルを用いて、操作時期が「半年前から1年以内」の操作履歴には「1.5」という重み係数を乗じて、「1年以上前」の操作履歴には「1.0」という重み係数を乗じて操作者の技量を判定したが、例えばこれらの操作履歴に対して同じ重み係数を乗じて計算してもよい。
ただし、その場合でも、技量判定部102は、少なくとも操作時期が「半年以内」の操作履歴については上記操作履歴よりも重みを付けて操作者の技量を判定する。つまり、技量判定部102は、基本的な処理として、取得された操作履歴について新しいものほど重みを付けて操作者の技量を判定するが、例外処理として、操作履歴の新しさについて特に差を付けなくてもよい場合(上記例では「半年前から1年以内」と「1年以上前」の場合)には、同じ重みを付けて操作者の技量を判定する。
なお、例えば操作履歴の新しさを実施例のように3段階で分ける場合に、重み係数を実施例のように3段階に分けてもよいし、本変形例のように2段階に分けてもよい。要するに、操作履歴の新しさを示す期間をN(Nは2以上の自然数)段階に分ける場合、重み係数をM(Mは2以上でN以下の自然数)段階に分ければよい。いずれの場合でも、技量判定部102は、取得された操作履歴に基づいた重み(M段階の重み係数のうち、その操作履歴に基づいて決まる段階の重み係数)を付けて操作者の技量を判定することになる。
[2-10]飛行体
実施例では、自律飛行を行う飛行体として回転翼機型の飛行体が用いられたが、これに限らない。例えば飛行機型の飛行体であってもよいし、ヘリコプター型の飛行体であってもよい。要するに、ユーザから与えられた指示に従い飛行する飛行体であればよい。
[2-11]各機能を実現する装置
図6に表す各機能を実現する装置は、上述した装置に限らない。例えば、サーバ装置10及びユーザ端末40が実現する機能を1台の装置で実現してもよい。その場合はその1台の装置が本発明の「情報処理装置」の一例となる。また、プロポ30が実現する機能をパソコン及びスマートフォン等の装置が実現してもよい。要するに、安全飛行支援システム1の全体で図6に表す各機能が実現されていればよい。
[2-12]発明のカテゴリ
本発明は、サーバ装置10及びユーザ端末40のような情報処理装置の他、それらの情報処理装置、ドローン20のような飛行体及びプロポ30のような操作用の装置を備える情報処理システムとしても捉えられる。また、本発明は、それらの装置(ドローン20を含む)が実施する処理を実現するための情報処理方法としても捉えられるし、その装置を制御するコンピュータを機能させるためのプログラムとしても捉えられる。このプログラムは、それを記憶させた光ディスク等の記録媒体の形態で提供されてもよいし、インターネット等のネットワークを介してコンピュータにダウンロードさせ、それをインストールして利用可能にするなどの形態で提供されてもよい。
[2-13]機能ブロック
なお、上記実施例の説明に用いたブロック図は、機能単位のブロックを示している。これらの機能ブロック(構成部)は、ハードウェア及びソフトウェアの少なくとも一方の任意の組み合わせによって実現される。また、各機能ブロックの実現方法は特に限定されない。
すなわち、各機能ブロックは、物理的又は論理的に結合した1つの装置を用いて実現されてもよいし、物理的又は論理的に分離した2つ以上の装置を直接的又は間接的に(例えば、有線、無線などを用いて)接続し、これら複数の装置を用いて実現されてもよい。機能ブロックは、上記1つの装置又は上記複数の装置にソフトウェアを組み合わせて実現されてもよい。
機能には、判断、決定、判定、計算、算出、処理、導出、調査、探索、確認、受信、送信、出力、アクセス、解決、選択、選定、確立、比較、想定、期待、見做し、報知(broadcasting)、通知(notifying)、通信(communicating)、転送(forwarding)、構成(configuring)、再構成(reconfiguring)、割り当て(allocating、mapping)、割り振り(assigning)などがあるが、これらに限られない。たとえば、送信を機能させる機能ブロック(構成部)は、送信部(transmitting unit)や送信機(transmitter)と呼称される。いずれも、上述したとおり、実現方法は特に限定されない。
[2-14]入出力の方向
情報等(※「情報、信号」の項目参照)は、上位レイヤ(又は下位レイヤ)から下位レイヤ(又は上位レイヤ)へ出力され得る。複数のネットワークノードを介して入出力されてもよい。
[2-15]入出力された情報等の扱い
入出力された情報等は特定の場所(例えば、メモリ)に保存されてもよいし、管理テーブルを用いて管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
[2-16]判定方法
判定は、1ビットで表される値(0か1か)によって行われてもよいし、真偽値(Boolean:true又はfalse)によって行われてもよいし、数値の比較(例えば、所定の値との比較)によって行われてもよい。
[2-17]情報の通知、シグナリング
情報の通知は、本開示において説明した態様/実施例に限られず、他の方法を用いて行われてもよい。例えば、情報の通知は、物理レイヤシグナリング(例えば、DCI(Downlink Control Information)、UCI(Uplink Control Information))、上位レイヤシグナリング(例えば、RRC(Radio Resource Control)シグナリング、MAC(Medium Access Control)シグナリング、報知情報(MIB(Master Information Block)、SIB(System Information Block)))、その他の信号又はこれらの組み合わせによって実施されてもよい。また、RRCシグナリングは、RRCメッセージと呼ばれてもよく、例えば、RRC接続セットアップ(RRC Connection Setup)メッセージ、RRC接続再構成(RRC Connection Reconfiguration)メッセージなどであってもよい。
[2-18]処理手順等
本開示において説明した各態様/実施例の処理手順、シーケンス、フローチャートなどは、矛盾の無い限り、順序を入れ替えてもよい。例えば、本開示において説明した方法については、例示的な順序を用いて様々なステップの要素を提示しており、提示した特定の順序に限定されない。
[2-19]入出力された情報等の扱い
入出力された情報等は特定の場所(例えばメモリ)に保存されてもよいし、管理テーブルで管理してもよい。入出力される情報等は、上書き、更新、又は追記され得る。出力された情報等は削除されてもよい。入力された情報等は他の装置へ送信されてもよい。
[2-20]ソフトウェア
ソフトウェアは、ソフトウェア、ファームウェア、ミドルウェア、マイクロコード、ハードウェア記述言語と呼ばれるか、他の名称で呼ばれるかを問わず、命令、命令セット、コード、コードセグメント、プログラムコード、プログラム、サブプログラム、ソフトウェアモジュール、アプリケーション、ソフトウェアアプリケーション、ソフトウェアパッケージ、ルーチン、サブルーチン、オブジェクト、実行可能ファイル、実行スレッド、手順、機能などを意味するよう広く解釈されるべきである。
また、ソフトウェア、命令、情報などは、伝送媒体を介して送受信されてもよい。例えば、ソフトウェアが、有線技術(同軸ケーブル、光ファイバケーブル、ツイストペア、デジタル加入者回線(DSL:Digital Subscriber Line)など)及び無線技術(赤外線、マイクロ波など)の少なくとも一方を使用してウェブサイト、サーバ、又は他のリモートソースから送信される場合、これらの有線技術及び無線技術の少なくとも一方は、伝送媒体の定義内に含まれる。
[2-21]情報、信号
本開示において説明した情報、信号などは、様々な異なる技術のいずれかを使用して表されてもよい。例えば、上記の説明全体に渡って言及され得るデータ、命令、コマンド、情報、信号、ビット、シンボル、チップなどは、電圧、電流、電磁波、磁界若しくは磁性粒子、光場若しくは光子、又はこれらの任意の組み合わせによって表されてもよい。
なお、本開示において説明した用語及び本開示の理解に必要な用語については、同一の又は類似する意味を有する用語と置き換えてもよい。例えば、チャネル及びシンボルの少なくとも一方は信号(シグナリング)であってもよい。また、信号はメッセージであってもよい。また、コンポーネントキャリア(CC:Component Carrier)は、キャリア周波数、セル、周波数キャリアなどと呼ばれてもよい。
[2-22]システム、ネットワーク
本開示において使用する「システム」及び「ネットワーク」という用語は、互換的に使用される。
[2-23]パラメータ、チャネルの名称
また、本開示において説明した情報、パラメータなどは、絶対値を用いて表されてもよいし、所定の値からの相対値を用いて表されてもよいし、対応する別の情報を用いて表されてもよい。例えば、無線リソースはインデックスによって指示されるものであってもよい。
上述したパラメータに使用する名称はいかなる点においても限定的な名称ではない。さらに、これらのパラメータを使用する数式等は、本開示で明示的に開示したものと異なる場合もある。様々なチャネル(例えば、PUCCH、PDCCHなど)及び情報要素は、あらゆる好適な名称によって識別できるので、これらの様々なチャネル及び情報要素に割り当てている様々な名称は、いかなる点においても限定的な名称ではない。
[2-24]「判断」、「決定」
本開示で使用する「判断(determining)」、「決定(determining)」という用語は、多種多様な動作を包含する場合がある。「判断」、「決定」は、例えば、判定(judging)、計算(calculating)、算出(computing)、処理(processing)、導出(deriving)、調査(investigating)、探索(looking up、search、inquiry)(例えば、テーブル、データベース又は別のデータ構造での探索)、確認(ascertaining)した事を「判断」「決定」したとみなす事などを含み得る。
また、「判断」、「決定」は、受信(receiving)(例えば、情報を受信すること)、送信(transmitting)(例えば、情報を送信すること)、入力(input)、出力(output)、アクセス(accessing)(例えば、メモリ中のデータにアクセスすること)した事を「判断」「決定」したとみなす事などを含み得る。また、「判断」、「決定」は、解決(resolving)、選択(selecting)、選定(choosing)、確立(establishing)、比較(comparing)などした事を「判断」「決定」したとみなす事を含み得る。つまり、「判断」「決定」は、何らかの動作を「判断」「決定」したとみなす事を含み得る。また、「判断(決定)」は、「想定する(assuming)」、「期待する(expecting)」、「みなす(considering)」などで読み替えられてもよい。
[2-25]「に基づいて」の意味
本開示において使用する「に基づいて」という記載は、別段に明記されていない限り、「のみに基づいて」を意味しない。言い換えれば、「に基づいて」という記載は、「のみに基づいて」と「に少なくとも基づいて」の両方を意味する。
[2-26]「異なる」
本開示において、「AとBが異なる」という用語は、「AとBが互いに異なる」ことを意味してもよい。なお、当該用語は、「AとBがそれぞれCと異なる」ことを意味してもよい。「離れる」、「結合される」などの用語も、「異なる」と同様に解釈されてもよい。
[2-27]「及び」、「又は」
本開示において、「A及びB」でも「A又はB」でも実施可能な構成については、一方の表現で記載された構成を、他方の表現で記載された構成として用いてもよい。例えば「A及びB」と記載されている場合、他の記載との不整合が生じず実施可能であれば、「A又はB」として用いてもよい。
[2-28]態様のバリエーション等
本開示において説明した各態様/実施形態は単独で用いてもよいし、組み合わせて用いてもよいし、実行に伴って切り替えて用いてもよい。また、所定の情報の通知(例えば、「Xであること」の通知)は、明示的に行うものに限られず、暗黙的(例えば、当該所定の情報の通知を行わない)ことによって行われてもよい。
以上、本開示について詳細に説明したが、当業者にとっては、本開示が本開示中に説明した実施形態に限定されるものではないということは明らかである。本開示は、請求の範囲の記載により定まる本開示の趣旨及び範囲を逸脱することなく修正及び変更態様として実施することができる。したがって、本開示の記載は、例示説明を目的とするものであり、本開示に対して何ら制限的な意味を有するものではない。