(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-10-23
(45)【発行日】2023-10-31
(54)【発明の名称】情報処理装置、及び情報処理方法
(51)【国際特許分類】
G08G 5/00 20060101AFI20231024BHJP
G06Q 50/10 20120101ALI20231024BHJP
G08B 25/04 20060101ALI20231024BHJP
G05D 1/02 20200101ALI20231024BHJP
G05D 1/10 20060101ALI20231024BHJP
【FI】
G08G5/00 A
G06Q50/10
G08B25/04 E
G05D1/02 K
G05D1/10
(21)【出願番号】P 2020114119
(22)【出願日】2020-07-01
【審査請求日】2022-06-22
(73)【特許権者】
【識別番号】000003207
【氏名又は名称】トヨタ自動車株式会社
(74)【代理人】
【識別番号】110002860
【氏名又は名称】弁理士法人秀和特許事務所
(72)【発明者】
【氏名】長田 祐
(72)【発明者】
【氏名】田中 由里香
(72)【発明者】
【氏名】駒嶺 聡史
(72)【発明者】
【氏名】山田 健一
(72)【発明者】
【氏名】釜賀 隆市
(72)【発明者】
【氏名】宮田 亜衣
(72)【発明者】
【氏名】松谷 慎太郎
【審査官】武内 俊之
(56)【参考文献】
【文献】特開2015-207149(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G08G 5/00
G06Q 50/10
G08B 25/04
G05D 1/02
G05D 1/10
(57)【特許請求の範囲】
【請求項1】
ユーザに対する移動体の追従についての需要に関する情報を取得することと、
前記ユーザに前記移動体の需要があった場合に、前記移動体が前記ユーザに追従するように、前記ユーザに関する情報を前記移動体に送信することと、
を実行する制御部を備え
、
前記ユーザは複数存在し、
前記制御部は、前記ユーザごとに前記移動体を追従させる優先度を算出し、前記優先度が所定の優先度以上のユーザに、前記移動体の追従についての需要があったと判定する、
情報処理装置。
【請求項2】
前記制御部は、前記ユーザに対する前記移動体の追従についての需要に関する情報として、前記ユーザのスケジュールに関する情報を取得する、
請求項1に記載の情報処理装置。
【請求項3】
前記制御部は、前記ユーザのスケジュールに関する情報に基づいて、前記ユーザに関する情報を前記移動体に送信するタイミングを設定する、
請求項2に記載の情報処理装置。
【請求項4】
前記制御部は、前記ユーザに関する情報として、前記ユーザを特定するための情報、前記ユーザの出発地に関する情報、及び、前記ユーザの出発時刻に関する情報を、前記移動体に送信する、
請求項1から3の何れか1項に記載の情報処理装置。
【請求項5】
前記制御部は、前記ユーザの年齢若しくは性別、又は、前記ユーザのルートに基づいて前記優先度を算出する、
請求項
1から4の何れか1項に記載の情報処理装置。
【請求項6】
前記制御部は、前記移動体の追従を希望するか否かの問い合わせを前記ユーザの端末に送信し、前記ユーザの端末から前記移動体の追従を希望する回答があった場合に、前記移動体の追従についての需要があったと判定する、
請求項1から
5の何れか1項に記載の情報処理装置。
【請求項7】
コンピュータが、
ユーザに対する移動体の追従についての需要に関する情報を取得することと、
前記ユーザに前記移動体の需要があった場合に、前記移動体が前記ユーザに追従するように、前記ユーザに関する情報を前記移動体に送信することと、
を実行
し、
前記ユーザは複数存在し、
前記コンピュータが、前記ユーザごとに前記移動体を追従させる優先度を算出し、前記優先度が所定の優先度以上のユーザに、前記移動体の追従についての需要があったと判定する、
情報処理方法。
【請求項8】
コンピュータが、前記ユーザに対する前記移動体の追従についての需要に関する情報として、前記ユーザのスケジュールに関する情報を取得する、
請求項
7に記載の情報処理方法。
【請求項9】
コンピュータが、前記ユーザのスケジュールに関する情報に基づいて、前記ユーザに関する情報を前記移動体に送信するタイミングを設定する、
請求項
8に記載の情報処理方法。
【請求項10】
コンピュータが、前記ユーザに関する情報として、前記ユーザを特定するための情報、前記ユーザの出発地に関する情報、及び、前記ユーザの出発時刻に関する情報を、前記移動体に送信する、
請求項
7から9の何れか1項に記載の情報処理方法。
【請求項11】
コンピュータが、前記ユーザの年齢若しくは性別、又は、前記ユーザのルートに基づいて前記優先度を算出する、
請求項
7から10の何れか1項に記載の情報処理方法。
【請求項12】
コンピュータが、前記移動体の追従を希望するか否かの問い合わせを前記ユーザの端末に送信し、前記ユーザの端末から前記移動体の追従を希望する回答があった場合に、前記移動体の追従についての需要があったと判定する、
請求項
7から11の何れか1項に記載の情報処理方法。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、情報処理装置、及び情報処理方法に関する。
【背景技術】
【0002】
犯罪または事故の起こる可能性の高いエリア及び時刻に、ドローンによる監視を提案する技術が知られている(例えば、特許文献1参照。)。
【先行技術文献】
【特許文献】
【0003】
【文献】国際公開第2017/130902号
【文献】特開2017-015460号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本開示の目的は、ユーザが安心して外出することができる技術を提供することにある。
【課題を解決するための手段】
【0005】
本開示の態様の一つは、
ユーザに対する移動体の追従についての需要に関する情報を取得することと、
前記ユーザに前記移動体の需要があった場合に、前記移動体が前記ユーザに追従するように、前記ユーザに関する情報を前記移動体に送信することと、
を実行する制御部を備える情報処理装置である。
【0006】
本開示の態様の一つは、
コンピュータが、
ユーザに対する移動体の追従についての需要に関する情報を取得することと、
前記ユーザに前記移動体の需要があった場合に、前記移動体が前記ユーザに追従するように、前記ユーザに関する情報を前記移動体に送信することと、
を実行する情報処理方法である。
【0007】
本開示の態様の一つは、
追従するユーザに関する情報を取得することと、
前記ユーザに関する情報に基づいて前記ユーザを特定することと、
前記ユーザに追従する処理を行うことと、
を実行する制御部を備える移動体である。
【0008】
また、本開示の他の態様は、上記の移動体、または、情報処理装置における処理をコンピュータが実行するプログラム、または、このプログラムを非一時的に記憶した記憶媒体である。
【発明の効果】
【0009】
本開示によれば、ユーザが安心して外出することができる技術を提供することができる。
【図面の簡単な説明】
【0010】
【
図1】実施形態に係るシステムの概略構成を示す図である。
【
図2】実施形態に係るシステムを構成するドローン、ユーザ端末、及び、センタサーバのそれぞれの構成の一例を概略的に示すブロック図である。
【
図4】センタサーバの機能構成を例示した図である。
【
図5】スケジュールDBのテーブル構成を例示した図である。
【
図6】優先度を算出するときのスコアを例示した図である。
【
図9】第1実施形態に係る指令生成処理のフローチャートである。
【
図10】第1実施形態に係る追従処理のフローチャートである。
【
図11】第2実施形態に係る追従処理のフローチャートである。
【
図12】第3実施形態に係る指令生成処理のフローチャートである。
【
図13】第3実施形態に係る回答処理のフローチャートである。
【発明を実施するための形態】
【0011】
本開示の態様の一つである情報処理装置が備える制御部は、ユーザに対する移動体の追従についての需要に関する情報を取得する。移動体は、例えば、車両またはドローンであり、自律して移動が可能である。移動体は、追従対象のユーザを追従して移動するように自律移動する。ユーザに対する移動体の追従についての需要に関する情報は、ユーザが外出することが判断可能な情報であり、例えば、ユーザからの依頼に関する情報、または、ユーザが外出するスケジュールに関する情報などが含まれる。
【0012】
また、制御部は、ユーザに移動体の需要があった場合に、移動体がユーザに追従するように、ユーザに関する情報を移動体に送信する。ユーザは、例えば、外出するユーザ、移動体が追従することを希望するユーザ、または、移動体が追従することが望ましいユーザである。移動体が、ユーザを認識してユーザを追従するように、制御部は、ユーザに関する情報を移動体に送信する。したがって、ユーザに関する情報には、例えば、ユーザを特定するための情報が含まれる。また、ユーザに関する情報には、ユーザを見つけやすくする情報(例えば、ユーザの位置及び出発時刻に関する情報など)を含むことができる。
【0013】
なお、移動体がユーザの異変を検出した場合には、移動体が外部機関に通報してもよい。例えば、ユーザが犯罪に巻き込まれた場合には、警察または警備会社に通報してもよい。また、例えば、ユーザが怪我をした場合には、救急車を呼ぶようにしてもよい。ユーザに異変が生じたか否かは、例えば、移動体に備わるカメラにより撮影される画像を解析することにより判定することができる。また、移動体がユーザに追従しているときには、例えば、移動体がユーザの周辺を照らすなどしてユーザの移動の手助けをしてもよい。
【0014】
以下、図面に基づいて、本開示の実施の形態を説明する。以下の実施形態の構成は例示であり、本開示は実施形態の構成に限定されない。また、以下の実施形態は可能な限り組み合わせることができる。
【0015】
<第1実施形態>
図1は、本実施形態に係るシステム1の概略構成を示す図である。システム1は、ドローン10がユーザに追従して移動することにより、ユーザを見守るシステムである。ドローン10は、移動体の一例である。
【0016】
図1の例では、システム1は、ドローン10、ユーザ端末20、及び、センタサーバ30を含む。ドローン10、ユーザ端末20、及び、センタサーバ30は、ネットワークN1によって相互に接続されている。ドローン10は、自律的に移動が可能である。ユーザ端末20は、ユーザが利用する端末である。
【0017】
ネットワークN1は、例えば、インターネット等の世界規模の公衆通信網でありWAN(Wide Area Network)やその他の通信網が採用されてもよい。また、ネットワークN1は、携帯電話等の電話通信網、または、Wi-Fi(登録商標)等の無線通信網を含んでもよい。なお、
図1には、例示的に1つのドローン10及び1つのユーザ端末20を図示しているが、これらは複数存在し得る。
【0018】
図2に基づいて、ドローン10、ユーザ端末20、及び、センタサーバ30のハードウェア構成及び機能構成について説明する。
図2は、本実施形態に係るシステム1を構成するドローン10、ユーザ端末20、及び、センタサーバ30のそれぞれの構成の一例を概略的に示すブロック図である。
【0019】
センタサーバ30は、一般的なコンピュータの構成を有している。センタサーバ30は、プロセッサ31、主記憶部32、補助記憶部33、及び、通信部34を有する。これらは、バスにより相互に接続される。プロセッサ31は、制御部の一例である。
【0020】
プロセッサ31は、CPU(Central Processing Unit)やDSP(Digital Signal Processor)等である。プロセッサ31は、センタサーバ30を制御し、様々な情報処理の
演算を行う。プロセッサ31は、制御部の一例である。主記憶部32は、RAM(Random
Access Memory)、ROM(Read Only Memory)等である。補助記憶部33は、EPROM(Erasable Programmable ROM)、ハードディスクドライブ(HDD、Hard Disk Drive)、リムーバブルメディア等である。補助記憶部33には、オペレーティングシステム(Operating System :OS)、各種プログラム、各種テーブル等が格納される。補助記憶部33に格納されたプログラムをプロセッサ31が主記憶部32の作業領域にロードして実行し、このプログラムの実行を通じて各構成部等が制御される。これにより、所定の目的に合致した機能をセンタサーバ30が実現する。主記憶部32および補助記憶部33は、コンピュータで読み取り可能な記録媒体である。なお、センタサーバ30は、単一のコンピュータであってもよいし、複数台のコンピュータが連携したものであってもよい。また、補助記憶部33に格納される情報は、主記憶部32に格納されてもよい。また、主記憶部32に格納される情報は、補助記憶部33に格納されてもよい。
【0021】
通信部34は、ネットワークN1経由で、ドローン10及びユーザ端末20と通信を行う手段である。通信部34は、例えば、LAN(Local Area Network)インターフェースボード、無線通信のための無線通信回路である。LANインターフェースボードや無線通信回路は、ネットワークN1に接続される。
【0022】
次に、ドローン10は、センタサーバ30から受信する指令に基づいて自律的に飛行可能な移動体である。ドローン10は、例えばマルチコプターである。ドローン10は、プロセッサ11、主記憶部12、補助記憶部13、通信部14、カメラ15、位置情報センサ16、環境情報センサ17、駆動部18、及び、ライト19を有する。これらは、バスにより相互に接続される。プロセッサ11、主記憶部12、及び、補助記憶部13は、センタサーバ30のプロセッサ31、主記憶部32、及び、補助記憶部33と同様であるため、説明を省略する。プロセッサ11は、制御部の一例である。
【0023】
通信部14は、ドローン10をネットワークN1に接続するための通信手段である。通信部14は、例えば、移動体通信サービス(例えば、5G(5th Generation)、4G(4th Generation)、3G(3rd Generation)、LTE(Long Term Evolution)等の電話通
信網)、Wi-Fi(登録商標)、Bluetooth(登録商標)、または、RFID(Radio Frequency Identification)等の無線通信を利用して、ネットワークN1経由で他の装置(例えばユーザ端末20またはセンタサーバ30等)と通信を行うための回路である。
【0024】
カメラ15は、ドローン10の周辺を撮影する装置である。カメラ15は、例えばCCD(Charge Coupled Device)イメージセンサまたはCMOS(Complementary Metal Oxide Semiconductor)イメージセンサなどの撮像素子を用いて撮影を行う。撮影により得られる画像は、静止画または動画の何れであってもよい。
【0025】
位置情報センサ16は、所定の周期で、ドローン10の位置情報(例えば緯度、経度)を取得する。位置情報センサ16は、例えば、GPS(Global Positioning System)受
信部、無線通信部等である。位置情報センサ16で取得された情報は、例えば、補助記憶部13等に記録され、センタサーバ30に送信される。
【0026】
環境情報センサ17は、ドローン10の状態をセンシングしたり、または、ドローン10の周辺をセンシングしたりする手段である。ドローン10の状態をセンシングするためのセンサとして、ジャイロセンサ、加速度センサ、または、方位角センサが挙げられる。ドローン10の周辺をセンシングするためのセンサとして、ステレオカメラ、レーザスキャナ、LIDAR、または、レーダなどが挙げられる。上記のカメラ15を環境情報センサ17として利用することもできる。環境情報センサ17によって得られるデータを以下では「環境データ」ともいう。
【0027】
駆動部18は、プロセッサ11が生成した制御指令に基づいて、ドローン10を飛行させるための装置である。駆動部18は、例えば、ドローン10が備えるロータを駆動するための複数のモータ等を含んで構成され、制御指令に従って複数のモータ等が駆動されることで、ドローン10の自律飛行が実現される。ライト19は、ドローン10の周辺を照らす照明器具である。
【0028】
次に、ユーザ端末20について説明する。ユーザ端末20は、例えば、スマートフォン、携帯電話、タブレット端末、個人情報端末、ウェアラブルコンピュータ(スマートウォッチ等)、パーソナルコンピュータ(Personal Computer、PC)といった小型のコンピュータである。ユーザ端末20は、プロセッサ21、主記憶部22、補助記憶部23、入力部24、ディスプレイ25、位置情報センサ26、及び、通信部27を有する。これらは、バスにより相互に接続される。プロセッサ21、主記憶部22、及び、補助記憶部23については、センタサーバ30のプロセッサ31、主記憶部32、及び、補助記憶部33と同様であるため、説明を省略する。また、位置情報センサ26は、ドローン10の位置情報センサ16と同様である。位置情報センサ26で取得された情報は、例えば、補助記憶部23等に記録され、センタサーバ30に送信される。
【0029】
入力部24は、ユーザが行った入力操作を受け付ける手段であり、例えば、タッチパネル、マウス、キーボード、または、押しボタン等である。ディスプレイ25は、ユーザに対して情報を提示する手段であり、例えば、LCD(Liquid Crystal Display)、または、EL(Electroluminescence)パネル等である。入力部24及びディスプレイ25は、
1つのタッチパネルディスプレイとして構成してもよい。通信部27は、ユーザ端末20をネットワークN1に接続するための通信手段である。通信部27は、例えば、移動体通信サービス(例えば、5G(5th Generation)、4G(4th Generation)、3G(3rd Generation)、LTE(Long Term Evolution)等の電話通信網)、Wi-Fi(登録商標
)、Bluetooth(登録商標)等の無線通信網を利用して、ネットワークN1経由で他の装置(例えばドローン10またはセンタサーバ30等)と通信を行うための回路である。
【0030】
次に、ドローン10の機能について説明する。
図3は、ドローン10の機能構成を示した図である。ドローン10は、機能構成要素として、制御部101を有する。ドローン1
0のプロセッサ11は、主記憶部12上のコンピュータプログラムにより、制御部101の処理を実行する。ただし、制御部101の処理の一部または全部がハードウェア回路により実行されてもよいし、ネットワークN1に接続される他のコンピュータにより実行されてもよい。
【0031】
制御部101は、ドローン10の自律飛行時にドローン10を制御する。制御部101は、環境情報センサ17によって検出した環境データを用いて、駆動部18を制御するための制御指令を生成する。制御部101は、例えば、複数のモータを制御して複数のロータの回転速度に差を発生させることにより、ドローン10の上昇、下降、前進、後進、及び、旋回などを制御する。
【0032】
制御部101は、例えば、環境データに基づいてドローン10の飛行軌跡を生成し、当該飛行軌跡に沿って飛行するように、駆動部18を制御する。なお、ドローン10を自律飛行させる方法については、公知の方法を採用することができる。制御部101は、自律飛行時に、環境情報センサ17の検出値に基づいたフィードバック制御を実施してもよい。
【0033】
また、制御部101は、センタサーバ30から追従するユーザ(以下、第一ユーザともいう。)に関する情報を受信すると、その第一ユーザを追従するようにドローン10を飛行させる。第一ユーザに関する情報には、第一ユーザを特定するために必要となる情報が含まれる。例えば、第一ユーザに関する情報には、複数のユーザの中から第一ユーザを特定するために必要となる情報(例えば、第一ユーザの外見的な特徴、第一ユーザの顔写真、第一ユーザに関連付けられたRFID、または、第一ユーザに関連付けられたユーザ端末20の識別番号等に関する情報)が含まれる。また、例えば、第一ユーザに関する情報には、第一ユーザの現在地または出発地に関する情報、及び、第一ユーザが出発する時刻に関する情報が含まれていてもよい。第一ユーザの現在地または出発地に関する情報は、ドローン10が移動するべき位置に関する情報である。
【0034】
例えば、センタサーバ30から、第一ユーザの外見的な特徴及び第一ユーザの位置情報を取得すると、その位置に移動するように制御指令を生成し、その位置に到着すると、カメラ15で撮影した画像を解析することにより、第一ユーザを特定する。なお、外見的な特徴は、予めユーザ端末20を用いてセンタサーバ30に登録されていてもよい。また、別法として、顔写真をセンタサーバ30に登録しておいてもよい。また、別法として、制御部101は、第一ユーザのユーザ端末20と無線通信を行うことにより、ユーザ端末20の位置を特定することで、第一ユーザを特定してもよい。そして、制御部101は、第一ユーザを特定すると、第一ユーザと所定の距離を維持した状態で第一ユーザを追従するように駆動部18を制御する。なお、夜間またはトンネル内などで第一ユーザの周辺が暗い場合には、ドローン10のライト19を点灯させてユーザの周辺を照らすようにしてもよい。例えば、ドローン10に光センサを備えている場合には光センサの出力値に基づいて、ライト19を点灯させるか否か制御部101が判定してもよい。また、別法として、時刻に基づいて、ライト19を点灯させるか否か制御部101が判定してもよい。
【0035】
なお、第一ユーザの現在地までの飛行ルートは、ドローン10の制御部101が生成してもよく、後述するセンタサーバ30の指令部302が生成してもよい。センタサーバ30において飛行ルートが生成された場合には、生成された飛行ルートがセンタサーバ30からドローン10に送信される。そして、生成された飛行ルートにしたがってドローン10が飛行するように、制御部101が駆動部18を制御してもよい。
【0036】
また、制御部101は、第一ユーザに追従して移動する制御を実施する。制御部101は、例えば、第一ユーザを特定すると、画像解析を利用して第一ユーザを追従する。その
ときには、例えば、ドローン10と第一ユーザとの距離が所定距離になるように駆動部18が制御される。
【0037】
次に、センタサーバ30の機能について説明する。
図4は、センタサーバ30の機能構成を例示した図である。センタサーバ30は、機能構成要素として、取得部301、指令部302、及び、スケジュールDB311を備える。センタサーバ30のプロセッサ31は、主記憶部32上のコンピュータプログラムにより、取得部301、及び、指令部302の処理を実行する。ただし、各機能構成素のいずれか、またはその処理の一部がハードウェア回路により実行されてもよい。
【0038】
スケジュールDB311は、プロセッサ31によって実行されるデータベース管理システム(Database Management System、DBMS)のプログラムが、補助記憶部33に記憶されるデータを管理することで構築される。スケジュールDB311は、例えば、リレーショナルデータベースである。
【0039】
なお、センタサーバ30の各機能構成要素のいずれか、またはその処理の一部は、ネットワークN1に接続される他のコンピュータにより実行されてもよい。
【0040】
取得部301は、ユーザ端末20からユーザのスケジュールを取得する。例えば、ユーザ端末20にユーザのスケジュールを管理するアプリケーションがインストールされている場合に、そのアプリケーションによってスケジュールがユーザ端末20から送信される。そして、取得部301は、受信したスケジュールに関する情報を、スケジュールDB311に格納する。スケジュールに関する情報は、ユーザの移動に関する情報として取得する。スケジュールに関する情報には、例えば、出発地、目的地、または、出発時刻などの情報が含まれていてもよい。また、取得部301は、ユーザを特定するための情報(例えば、ユーザの顔写真、まはた、ユーザ端末20を識別するための情報)をユーザ端末20から取得する。ユーザを特定するための情報は、予めユーザ端末20から登録されてもよいし、スケジュールと共にユーザ端末20から送信されてもよい。
【0041】
また、取得部は、ユーザの年齢及び性別を取得する。ユーザの年齢及び性別は、後述する優先度を算出するときに用いる。ユーザの年齢及び性別は、予めユーザ端末20から登録されてもよいし、スケジュールと共にユーザ端末20から送信されてもよい。なお、ユーザの年齢及び性別は、後述する優先度を算出しない場合には、必ずしも必要ではない。
【0042】
ここで、スケジュールDB311に格納されるスケジュール情報の構成について、
図5に基づいて説明する。
図5は、スケジュールDB311のテーブル構成を例示した図である。スケジュール情報テーブルは、ユーザID、現在地、出発時刻、出発地、目的地、ルート、写真、年齢、及び、性別の各フィールドを有する。ユーザIDフィールドには、ユーザを特定するための識別情報であるユーザIDが入力される。現在地フィールドには、ユーザの現在地が入力される。ユーザの現在地は、例えば、ユーザ端末20から所定の時間毎に発信される。出発時刻フィールドには、ユーザが移動するときの出発時刻が入力される。出発地フィールドには、ユーザが移動するときの出発地が入力される。目的地フィールドには、ユーザが移動するときの目的地が入力される。ルートフィールドには、ユーザが移動するときのルートが入力される。写真フィールドには、ユーザを特定するための顔写真に関する情報が入力される。なお、写真フィールドに代えて、ユーザ端末20を識別するための識別情報が入力されるユーザ端末フィールドを有していてもよい。年齢フィールドには、ユーザの年齢が入力される。性別フィールドには、ユーザの性別が入力される。
【0043】
スケジュールDB311に入力される出発時刻、出発地、及び、目的地は、ユーザ端末
20から送信されるスケジュールに関する情報に含まれる。また、ルートは、出発地及び目的地に基づいて、取得部301が生成する。なお、別法として、ルートフィールドには、経由地が入力されてもよい。経由地は、例えば、スケジュールに関する情報に含まれていてもよい。また、別法として、ルートは、ユーザ端末20が生成してもよいし、ユーザが過去に移動したルートを補助記憶部33に記憶しておき、これを利用してもよい。現在地、出発地、及び、目的地には、例えば、座標、住所、または、建物の名称などが入力される。
【0044】
次に、指令部302は、スケジュールDB311に格納されるスケジュール情報に基づいて、ユーザへドローン10を派遣するための指令(以下、飛行指令ともいう。)を生成する。指令部302は、例えば、スケジュールDB311にアクセスし、スケジュールDB311の出発時刻フィールドに入力されている出発時刻が、現在時刻から所定時間前であるフィールドが存在する場合に、該フィールドに対応するユーザの現在地または出発地にドローン10が移動するように、そして、そのドローン10がユーザに追従して移動するように、飛行指令を生成する。そして、生成した飛行指令をドローン10へ送信する。なお、ユーザに追従可能なドローン10が複数存在する場合には、指令部302が、例えば、ユーザの現在地または出発地に最も近いドローン10を選定してもよいし、または、バッテリの充電率が最も高いドローン10を選定してもよいし、ランダムにドローン10を選定してもよい。
【0045】
なお、別法として、指令部302は、ユーザの移動履歴を記憶しておき、この移動履歴から将来のユーザの移動を推定してもよい。例えば、毎日、同じ時刻に同じ出発地から出発するユーザがいる場合には、その時刻その出発地にドローン10を派遣してもよい。
【0046】
なお、指令部302は、優先度に応じてドローン10を派遣するユーザを選定してもよい。例えば、同時刻に複数のユーザが外出する場合には、ドローン10が不足する場合もあり得る。この場合、優先度の高いユーザにドローン10が優先的に派遣されるようにしてもよい。優先度は、例えば、年齢、性別、ルート、または、ドローン10の派遣の依頼の有無などに基づいて設定してもよい。この優先度は、例えば、ユーザ毎に算出されるスコアに基づいて算出してもよい。このスコアは、例えば、年齢、性別、及び、ルートに基づいて算出してもよい。例えば、年齢、性別、及び、ルートに対応するスコアが予め設定されており、夫々のスコアをユーザ毎に加算又は乗算することにより、そのユーザの優先度を算出する。なお、優先度の算出方法はこれに限らない。ルートに対応するスコアは、例えば、そのルートにおける人の密度が小さいほど、若しくは、街灯の数が少ないほど、スコアが大きくなるように設定される。
【0047】
図6は、優先度を算出するときのスコアを例示した図である。例えば、男性よりも女性の優先度が高くなるように、性別に応じたスコアを設定する。また、例えば、年齢が下限値未満の子供、または年齢が上限値よりも高い高齢者の優先度が、その他の年齢のユーザの優先度より高くなるように、年齢に応じたスコアを設定する。
図6では、0-19歳、20-65歳、66歳以上の3つの年齢幅で区分して夫々のスコアを設定している。また、例えば、街灯が少ないルートを通るユーザほど、優先度が高くなるように、街灯の数に応じてスコアを設定してもよい。道路毎の街灯の数は、予め補助記憶部33に記憶しておく。
図6では、例えば、所定距離当たりの街灯の数が所定数以上であれば、街灯の数が多いものとし、所定数未満であれば街灯の数が少ないものとして、夫々のスコアを設定する。
【0048】
また、例えば、通行人の少ないルートを通るユーザほど、優先度が高くなるように、通行人の数に応じてスコアを設定してもよい。通行人の数は、例えば、リアルタイムで通行人をセンシングして求めてもよいし、過去の通行人の数を補助記憶部33に記憶しておき
、同条件(例えば、同曜日且つ同時刻など)の過去の通行人の数から求めてもよい。
図6では、例えば、所定距離当たりの通行人の数が所定数以上であれば、通行人の数が多いものとし、所定数未満であれば通行人の数が少ないものとして、夫々のスコアを設定する。
【0049】
指令部302は、ユーザの性別及び年齢、並びに、ルートの街灯の数及び通行人の数に基づいて、
図6から得られるスコアを加算して、その値をそのユーザの優先度として設定する。例えば、優先度が所定の優先度以上のユーザに対してドローン10を派遣してもよく、優先度が高い順にドローン10を派遣してもよい。
【0050】
なお、優先度は、例えば、暗い道を避けて通る傾向にあるユーザの優先度を、暗い道をよく通る傾向にあるユーザの優先度よりも高くしてもよい。暗い道を避けて通るユーザは、暗い道を不安に思う傾向にあるため、ドローン10が優先的に派遣されるようにしてもよい。
【0051】
なお、優先度が比較的高いユーザにドローン10を派遣することができない場合には、指令部10は、他の手段をユーザ端末20を介してユーザに提案してもよい。指令部101は、他の手段として、例えば、自律移動車両による移動を提案してもよく、ドローン10が派遣可能になるまで待機することを提案してもよい。
【0052】
次に、ユーザ端末20の機能について説明する。
図7は、ユーザ端末20の機能構成を例示した図である。ユーザ端末20は、機能構成要素として、制御部201を備える。ユーザ端末20のプロセッサ21は、主記憶部22上のコンピュータプログラムにより、制御部201の処理を実行する。制御部201は、例えば、スケジュールを管理するアプリケーションソフトウェア(以下、スケジュールソフトウェアともいう。)を実行する。ユーザは、入力部24を介して自身のスケジュールをユーザ端末20に入力する。このときにユーザは、例えば、出発時刻、出発地、及び、目的地などを入力する。また、ユーザは、ディスプレイ25を介して、自身のスケジュールを確認することができる。また、制御部201は、ユーザが入力したスケジュールに関する情報を、ユーザIDと紐付けしてセンタサーバ30に送信する。また、制御部201は、ユーザの入力部24への入力にしたがって、ユーザに関する情報(顔写真、年齢、及び、性別など)を、ユーザIDと紐付けしてセンタサーバ30に送信する。
【0053】
次に、システム1全体の処理について説明する。
図8は、システム1の処理のシーケンス図である。なお、ユーザを特定するための情報(顔写真など)は、予めセンタサーバ30に登録されているものとする。まず、ユーザがユーザ端末20にスケジュールを入力すると(S11)、スケジュールに関する情報がセンタサーバ30へ送信される(S12)。センタサーバ30では、スケジュールに関する情報を受信すると、スケジュールDB311が更新される(S13)。さらに、センタサーバ30では、スケジュールDB311に格納されている情報に基づいて、飛行指令が生成される(S14)。生成された飛行指令は、センタサーバ30からドローン10に送信される(S15)。このドローン10は、例えば、現在地がユーザに最も近いドローンである。
【0054】
飛行指令を受信したドローン10は、飛行指令に基づいて駆動部18を制御するための制御指令を生成する(S16)。そして、ドローン10では、制御指令にしたがって飛行制御が行われる(S17)。この飛行制御では、ユーザの現在地または出発地まで移動することと、ユーザの目的地までユーザに追従することと、を行うように、ドローン10が制御される。
【0055】
次に、センタサーバ30における指令生成処理について説明する。指令生成処理は、
図8のS12からS15に対応する処理である。
図9は、本実施形態に係る指令生成処理の
フローチャートである。
図9に示した指令生成処理は、センタサーバ30において、所定の時間毎に実行される。
【0056】
ステップS101では、取得部301が、ユーザ端末20からスケジュールに関する情報を受信したか否か判定する。ステップS101で肯定判定された場合にはステップS102へ進み、否定判定された場合には本ルーチンを終了させる。ステップS102では、取得部301が、受信したスケジュールに関する情報に基づいて、スケジュールDB311を更新する。
【0057】
ステップS103では、指令部302が、受信したスケジュールに対応するユーザの優先度を算出する。優先度は、例えば、予め登録されているユーザの情報(例えば、年齢及び性別に関する情報)、及び、ユーザのルートに関する情報に基づいて算出される。優先度は、例えば、ユーザの年齢、性別、及び、ルートの夫々に基づいて数値化される。例えば、年齢、性別、及び、ルートに対応するスコアが予め設定されており、夫々のスコアを加算することにより、優先度を算出する。
【0058】
ステップS104では、指令部302が、算出した優先度が所定値以上であるか否か判定する。所定値は、ドローン10による追従が行われる閾値として設定される。ステップS104で肯定判定された場合にはステップS105へ進み、否定判定された場合には本ルーチンを終了させる。なお、ステップS103及びステップS104の処理を省略することで、全てのユーザに対してドローン10を派遣してもよい。また、優先度によらず、ユーザの出発時刻順にドローン10を派遣してもよい。
【0059】
ステップS105では、指令部302が、ユーザに追従するドローン10を選定する。指令部302は、例えば、ユーザの現在地または出発地との距離が最も短いドローン10を選定する。ステップS106では、指令部302が、飛行指令を生成する。飛行指令は、ドローン10がユーザの出発地または現在地まで移動し、ユーザの目的地までユーザに追従して飛行するように生成される。飛行指令には、ユーザの出発地などに関する情報が含まれる。ステップS107では、指令部302が、ユーザの出発時刻までの時間が閾値以下であるか否か判定される。閾値は、ドローン10がユーザの現在地または出発地に到着するまでに要する時間に応じて設定される。ステップS107で肯定判定された場合にはステップS108へ進み、否定判定された場合にはステップS107の処理を再度実行する。そして、ステップS108では、指令部302が、ステップS105で選定したドローン10へ飛行指令を送信する。
【0060】
次に、ドローン10における追従処理について説明する。追従処理は、
図8のS16からS17に対応する処理である。
図10は、本実施形態に係る追従処理のフローチャートである。
図10に示した追従処理は、ドローン10において、所定の時間毎に実行される。
【0061】
ステップS201では、制御部101が、センタサーバ30から飛行指令を受信したか否か判定する。ステップS201で肯定判定された場合にはステップS202へ進み、否定判定された場合には本ルーチンを終了させる。ステップS202では、制御部101が飛行指令にしたがって制御指令を生成して、ユーザの出発地に向けてドローン10を飛行させる。このときに、制御部101が、駆動部18を制御することにより、飛行制御が実施される。
【0062】
ステップS203では、制御部101が、ユーザの出発地に到着したか否か判定する。制御部101は、例えば、位置情報センサ16により取得される位置情報と、センタサーバ30から取得したユーザの出発地に関する情報とを比較して、ドローン10がユーザの
出発地に到着したか否か判定する。ステップS203で肯定判定された場合にはステップS204へ進み、否定判定された場合にはステップS203を再度実行する。
【0063】
ステップS204では、制御部101が、追従すべきユーザを特定する。ユーザを特定するための情報は、飛行指令に含まれる。例えば、予め登録しておいたユーザの顔写真に基づいた顔認識、ユーザ端末20の位置情報、または、ユーザ端末20との無線通信などを利用してユーザを特定する。ステップS205では、制御部101が、ユーザに追従するように制御指令を生成してドローン10を飛行させる。例えば、カメラ15により撮影される画像を解析することにより、ユーザの位置を特定し、ユーザとドローン10との距離が所定の距離となるように、駆動部18を制御する。なお、夜間(所定の時刻としてもよい。)にドローン10がユーザを追従するときには、ユーザの周辺をドローン10に備わるライト19で照らしてもよい。
【0064】
ステップS206では、制御部101が、ユーザの目的地に到着したか否か判定する。制御部101は、例えば、位置情報センサ16により取得される位置情報と、センタサーバ30から取得したユーザの目的地に関する情報とを比較して、ドローン10がユーザの目的地に到着したか否か判定する。ステップS206で肯定判定された場合にはステップS207へ進み、否定判定された場合にはステップS206を再度実行する。なお、別法として、ステップS206では、ユーザが屋内に入ったか否か、または、追従が不可能になったか否か判定してもよい。ステップS207では、制御部101が、ドローン10の基地に戻るようにドローン10を飛行させる。ドローン10の基地では、例えば、ドローン10の整備または充電が行われる。
【0065】
以上説明したように本実施形態によれば、自律的に移動可能なドローン10がユーザを自動的に追従することにより、例えば、防犯性が高まり、ユーザに安心感を与えることができる。
【0066】
<第2実施形態>
本実施形態では、第一ユーザに異変があったことが検出された場合に、制御部101が外部機関に通報する。例えば、第一ユーザが転倒して動かなくなったことが検出された場合には、救急車を手配するように通報してもよい。また、例えば、第一ユーザが犯罪に巻き込まれたことが検出された場合には、警察に通報してもよい。
【0067】
次に、ドローン10における追従処理について説明する。
図11は、本実施形態に係る追従処理のフローチャートである。
図11に示した追従処理は、ドローン10において、所定の時間毎に実行される。なお、
図10に示したフローチャートと同じ処理が実行されるステップについては、同じ符号を付して説明を省略する。
【0068】
図11に示したフローチャートでは、ステップS205の処理の次に、ステップS301に進む。ステップS301では、制御部101が、異変を検出したか否か判定する。制御部101は、例えば、カメラ15で撮影した画像を解析することにより、異変を検出する。例えば、第一ユーザが転倒して所定時間以上動かない場合には、第一ユーザに異変が生じたと検出される。また、例えば、第一ユーザに他の人物が所定時間以上接触しており、且つ、第一ユーザが所定の動作を行っている場合には、第一ユーザに異変が生じたと検出される。なお、所定の動作は、例えば、嫌がる動作である。また、第一ユーザが異変を知らせるための動作(合図としてもよい。)を予め決めておき、この動作があった場合に、第一ユーザに異変が生じたと検出してもよい。ステップS301で肯定判定された場合にはステップS302へ進み、否定判定された場合にはステップS206へ進む。
【0069】
ステップS302では、制御部101が、通報を行う。制御部101は、例えば、第一
ユーザが転倒して所定時間以上動かない場合には、救急車を手配するように通報してもよい。また、例えば、第一ユーザに他の人物が所定時間以上接触しており、且つ、第一ユーザが所定の動作を行っている場合には、警察に通報してもよい。別法として、制御部101は、ユーザに異変が生じたことをセンタサーバ30に通報してもよい。そして、センタサーバ30が、例えば警察等に通報してもよい。
【0070】
以上説明したように本実施形態によれば、自律的に移動可能なドローン10がユーザを自動的に追従し、ユーザに異変が生じれば、自動的に通報することにより、ユーザに安心感を与えることができる。また、ユーザにドローン10が追従していることにより、犯罪の抑止力にもなる。
【0071】
<第3実施形態>
本実施形態では、ドローン10による追従を希望するか否かユーザに問い合わせを行い、ユーザから希望する旨の回答があった場合に限り、ドローン10を派遣する。
【0072】
図12は、本実施形態に係る指令生成処理のフローチャートである。
図12に示した指令生成処理は、センタサーバ30において、所定の時間毎に実行される。なお、
図9に示したフローチャートと同じ処理が実行されるステップについては、同じ符号を付して説明を省略する。また、ステップS105以降の処理は、
図9に示したフローチャートと同じために図示及び説明を省略する。
【0073】
図12に示したフローチャートでは、ステップS104で肯定判定されるとステップS401へ進む。ステップS401では、指令部302が、ドローン10による追従が必要か否か問い合わせるための情報をユーザ端末20に送信する。このユーザ端末20は、ステップS101に係るスケジュールを送信したユーザ端末20である。ステップS402では、指令部302が、ユーザ端末20から回答を受信したか否か判定する。ステップS402で肯定判定された場合にはステップS403へ進み、否定判定された場合にはステップS402の処理を再度実行する。なお、ユーザからの回答が所定の時間なかった場合には、肯定または否定判定の何れかがされたものとして扱ってもよい。この扱いは、予め定めておく。
【0074】
ステップS403では、指令部302が、ユーザ端末20から受信した回答がドローン10を必要とする旨の回答であるか否か判定する。ステップS403で肯定判定された場合にはステップS403へ進み、否定判定された場合には本ルーチンを終了させる。
【0075】
次に、ユーザ端末20で行われる回答処理について説明する。回答処理は、センタサーバ30からの問い合わせに対してユーザ端末20が回答するための処理である。
図13は、本実施形態に係る回答処理のフローを示したフローチャートである。本ルーチンは、ユーザ端末20において、所定の時間毎に実行される。
【0076】
ステップS501では、制御部201が、センタサーバ30から問い合わせを受信したか否か判定する。ステップS501で肯定判定された場合にはステップS502へ進み、否定判定された場合には本ルーチンを終了する。ステップS502では、制御部201が、ディスプレイ25にセンタサーバ30からの問い合わせに対応する表示を行う。例えば、出発地及び出発時刻と共に、ドローン10の派遣を希望するか否かをディスプレイ25に表示させる。このときに、例えば、YESおよびNOに対応するラジオボタンを表示させてもよい。ステップS503では、制御部201が、入力部24を介して問い合わせに対するユーザからの回答を取得する。制御部201は、例えば、ユーザが、YESまたはNOの何れのラジオボタンを押したのか判定する。そして、ステップS504では、制御部201が、回答をセンタサーバ30へ送信する。
【0077】
以上説明したように本実施形態によれば、ユーザに対してドローン10を派遣するか否か問い合わせるため、必要以上にドローン10が派遣されることを抑制できる。
【0078】
<その他の実施形態>
上記の実施形態はあくまでも一例であって、本開示はその要旨を逸脱しない範囲内で適宜変更して実施し得る。
【0079】
本開示において説明した処理や手段は、技術的な矛盾が生じない限りにおいて、自由に組み合わせて実施することができる。
【0080】
また、1つの装置が行うものとして説明した処理が、複数の装置によって分担して実行されてもよい。あるいは、異なる装置が行うものとして説明した処理が、1つの装置によって実行されても構わない。コンピュータシステムにおいて、各機能をどのようなハードウェア構成(サーバ構成)によって実現するかは柔軟に変更可能である。例えば、ドローン10の機能の一部を、センタサーバ30が備えていてもよい。また、例えば、センタサーバ30の機能の一部または全部を、ドローン10が備えていてもよい。
【0081】
また、上記実施形態では、移動体の例としてドローン10を挙げて説明したが、これに代えて、例えば、自律走行可能な車両にも適用することができる。
【0082】
上記実施形態では、センタサーバ30がスケジュールDB311を備えることにより、センタサーバ30がユーザのスケジュールを把握しているが、別法として、ユーザ端末20がスケジュールを把握し、ユーザの出発時刻に間に合うように、ユーザ端末20からセンタサーバ30に対してドローン10の追従を依頼してもよい。この場合、センタサーバ30は、ユーザ端末20から情報を受信したときに、ドローン10を指定の場所に派遣すればよい。
【0083】
本開示は、上記の実施形態で説明した機能を実装したコンピュータプログラムをコンピュータに供給し、当該コンピュータが有する1つ以上のプロセッサがプログラムを読み出して実行することによっても実現可能である。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な非一時的なコンピュータ可読記憶媒体によってコンピュータに提供されてもよいし、ネットワークを介してコンピュータに提供されてもよい。非一時的なコンピュータ可読記憶媒体は、例えば、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクドライブ(HDD)等)、光ディスク(CD-ROM、DVDディスク、ブルーレイディスク等)など任意のタイプのディスク、読み込み専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気カード、フラッシュメモリ、光学式カード、電子的命令を格納するために適した任意のタイプの媒体を含む。
【符号の説明】
【0084】
1 システム
10 ドローン
11 プロセッサ
13 補助記憶部
20 ユーザ端末
30 センタサーバ
31 プロセッサ
33 補助記憶部