[1.物流システムの全体構成]
以下、本発明に関わる物流システムの実施形態の例を説明する。図1は、物流システムの全体構成を示す図である。図1に示すように、物流システムSは、無人航空機管理システム1、飛行ルート管理システム2、注文管理システム3、無人航空機40、及びユーザ端末50を含み、これらはネットワークNに接続されている。なお、図1では、無人航空機40及びユーザ端末50の各々を1つずつ示しているが、これらは複数台あってもよい。
無人航空機管理システム1は、無人航空機40を管理するシステムであり、無人航空機管理サーバ10を含む。無人航空機管理サーバ10は、サーバコンピュータであり、制御部11、記憶部12、及び通信部13を含む。なお、無人航空機管理システム1は、複数台のサーバコンピュータが含まれていてもよい。
制御部11は、少なくとも1つのマイクロプロセッサを含む。制御部11は、記憶部12に記憶されたプログラムやデータに従って処理を実行する。記憶部12は、主記憶部及び補助記憶部を含む。例えば、主記憶部はRAMなどの揮発性メモリであり、補助記憶部は、ROM、EEPROM、フラッシュメモリ、又はハードディスクなどの不揮発性メモリである。通信部13は、有線通信又は無線通信用の通信インタフェースであり、ネットワークNを介してデータ通信を行う。
飛行ルート管理システム2は、無人航空機40の飛行ルートを管理するシステムであり、飛行ルート管理サーバ20を含む。飛行ルート管理サーバ20は、サーバコンピュータであり、制御部21、記憶部22、及び通信部23を含む。なお、飛行ルート管理システム2は、複数台のサーバコンピュータが含まれていてもよい。制御部21、記憶部22、及び通信部23は、それぞれ制御部11、記憶部12、及び通信部13と同様のハードウェア構成であってよい。
注文管理システム3は、商品の注文を管理するシステムであり、注文管理サーバ30を含む。注文管理サーバ30は、サーバコンピュータであり、制御部31、記憶部32、及び通信部33を含む。なお、注文管理システム3は、複数台のサーバコンピュータが含まれていてもよい。制御部31、記憶部32、及び通信部33は、それぞれ制御部11、記憶部12、及び通信部13と同様のハードウェア構成であってよい。
無人航空機40は、パイロットが搭乗しない航空機であり、例えば、バッテリーで駆動する無人航空機(いわゆるドローン)やエンジンで駆動する無人航空機である。無人航空機40は、制御部41、記憶部42、通信部43、保持部44、読取部45、撮影部46、及びセンサ部47を含む。無人航空機40は、プロペラ、モータ、バッテリー、及びアンテナなども含むが、ここでは説明を省略する。
制御部41、記憶部42、及び通信部43は、それぞれ制御部11、記憶部12、及び通信部13と同様のハードウェア構成であってよい。なお、通信部43は、FASST、FHSS、DMSS、又はAFHSSといった特定機器(例えば、いわゆるラジコン)用の無線通信インタフェースを含んでいてもよく、通信部43を介して操縦機(いわゆるプロポ)と無線通信することによって、無人航空機40を操縦可能としてもよい。
図2は、無人航空機40の保持部44と読取部45の詳細を示す図である。図2に示すように、保持部44は、貨物Cを保持する保持部材であり、無人航空機40の本体の底面側に設けられている。例えば、保持部44は、貨物Cを格納するスペースを有するフレーム44Aを含む。例えば、貨物Cが所定サイズの箱に格納されて運搬される場合、フレーム44Aは、その内部に箱を載置して固定できる程度の大きさとなっている。
また、保持部44は、運搬中の貨物Cが下に落ちないように支持する支持部材44Bと、公知のロック機構を有する固定部材44Cと、を含む。貨物Cは、支持部材44Bの上に載置されると、固定部材44Cが閉じられて水平方向に動かないように固定される。支持部材44Bは、図示しないモータの回転により開閉可能になっており、無人航空機40が貨物Cの運搬先に着陸すると支持部材44Bが下側に向けて開き、貨物Cが数cm程度下方に落ちて地上に配置できるようになっている。
なお、保持部44は、貨物Cを格納及び固定することができる部材であればよく、上記の例に限られない。例えば、保持部44は、貨物Cを左右方向及び上下方向の少なくとも一方から挟むことで固定するキャッチャ又はアームを有していてもよいし、磁力によって貨物Cを固定するマグネットを有していてもよい。また例えば、保持部44は、貨物Cを格納する格納容器、ネット、又は袋などを有していてもよい。
読取部45は、可読媒体を読み取る装置である。読取部45は、可読媒体を非接触で(可読媒体に接触することなく)読み取り可能であることが望ましいが、接触式の装置を適用してもよい。可読媒体は、特定の情報を含む媒体であり、例えば、二次元コード、バーコード、又はRFID(Radio Frequency Identifier)タグなどである。本実施形態では、可読媒体が、貨物Cに付与されたコード情報であり、コード情報の一例として二次元コードTを説明する。このため、本実施形態で二次元コードTと記載した箇所は、コード情報又は可読媒体を読み替えることができる。
例えば、読取部45は、二次元コードTを読み取るコードリーダ(スキャナ)である。読取部45は、カメラ又は赤外線センサを含み、カメラで撮影した画像又は赤外線センサの検出信号に基づいて、二次元コードTを読み取る。二次元コードTの検出方法自体は、二次元コードTの規格で定められている方法を利用すればよい。
二次元コードTは、シールや紙などに印刷されて貨物Cに貼り付けられてもよいし、貨物Cに直接的に印刷されてもよい。他にも例えば、貨物Cの表面に液晶表示部又は有機EL表示部が取り付けられている場合には、二次元コードTが表示されてもよい。二次元コードTは、貨物Cの任意の位置に付与されていてよいが、本実施形態では、無人航空機40に読取部45が装着されているので、二次元コードTは、読取部45で読み取りやすい位置に付与される。
例えば、二次元コードTは、貨物Cに付与される位置が予め決められており、貨物Cを発送する発送者は、二次元コードTを貨物Cの所定の位置に付与する。コードリーダである読取部45は、保持部44により貨物Cが保持された場合に、上記の位置に付与された二次元コードTを読み取ることが可能な位置に備えられている。
図3は、読取部45と二次元コードTとの位置関係を示す図である。なお、図3では、保持部44内の格納スペースを点線で示している。ここでは、図面を見やすくするために、貨物Cと格納スペースとの間に隙間を設けているが、実際には、運搬中に貨物Cが動かないように、隙間は略無いものとする。
図3に示すように、保持部44により貨物Cが保持された場合に、二次元コードTと読取部45とが互いに向かい合うように(対向するように)、読取部45が備えられる。別の言い方をすれば、二次元コードTの方向V1と、読取部45の方向V2と、のなす角度が所定範囲(例えば、145°以上180°以下)となるような位置に、読取部45が備えられている。方向V1は、二次元コードTの垂線であり、二次元コードTの印刷面の方向である。方向V2は、読取部45の検出範囲の方向であり、センサが向けられている方向である。
読取部45は、貨物Cが保持部44の内部に格納された場合に、二次元コードTから見て方向V1上の位置に配置される。別の言い方をすれば、貨物Cが保持部44の内部に格納された場合に、二次元コードTは、読取部45から見て方向V2上の位置に配置される。このため、貨物Cが保持部44の内部に格納されると、二次元コードTは、読取部45の検出範囲内に必然的に含まれることになる。即ち、貨物Cが保持部44の内部に格納された場合の二次元コードTを検出範囲に含むように、読取部45が備えられる。なお、読取部45と二次元コードTが近すぎたり遠すぎたりすると、読取部45が二次元コードTを読み取れないことがあるので、読取部45と二次元コードTとの距離が所定範囲内(例えば、5cm~30cm)となるような位置に、読取部45が配置される。
本実施形態では、貨物Cの上面の中央付近に二次元コードTが付与されているので、読取部45は、保持部44における貨物Cの格納スペースを真上から見下ろす位置に配置される。別の言い方をすれば、読取部45は、無人航空機40の底面側であって、貨物Cの格納スペースの垂直方向の中心線上に配置される。このため、貨物Cを保持部44の中に格納した場合に、読取部45の検出範囲内に貨物Cの二次元コードTが含まれて、二次元コードTが必然的に読み取られるようになっている。
なお、二次元コードTが付与される位置は、上面の中央付近に限られない。二次元コードTは、保持部44の格納スペースに対する読取部45の相対位置に基づいて、付与される位置が決定されるようにすればよい。例えば、読取部45が、保持部44の格納スペースの垂直方向の中心線からずれた位置に配置されている場合には、二次元コードTは、貨物Cの上面の中心から、読取部45の配置位置と同じ方向にずらした位置に付与されてよい。また例えば、読取部45が保持部44の側面に配置されている場合には、二次元コードTは、貨物Cの側面に配置される。また例えば、読取部45が保持部44の底面に配置されている場合には、二次元コードTは、貨物Cの底面に配置される。
二次元コードTには、任意の情報が含まれていてよく、本実施形態では、貨物識別情報が含まれているものとする。貨物識別情報は、貨物Cを一意に識別する情報であり、例えば、貨物Cに割り当てられた貨物ID、貨物Cを追跡するための追跡番号、又は貨物Cの中身である商品の注文IDなどである。本実施形態では、貨物IDが貨物識別情報に相当する場合を説明する。このため、本実施形態で貨物IDと記載した箇所は、貨物識別情報と読み替えることができる。
保持部44は、貨物IDを含む二次元コードTが付与された貨物Cを保持し、読取部45は、保持部44により貨物Cが保持される場合に、二次元コードTを読み取ることになる。保持部44により貨物Cが保持される場合とは、貨物Cの格納が完了した後であってもよいし、貨物Cが格納されている最中であってもよい。例えば、読取部45は、貨物Cの格納が完了した後に起動して二次元コードTを読み取ってもよいし、常時起動しており貨物Cの格納中に二次元コードTを検知した場合に随時読み取ってもよい。なお、以降の説明では、二次元コードTと貨物Cの符号を省略する。
図1に戻り、撮影部46は、少なくとも1台のカメラを含む。例えば、撮影部46は、CCDイメージセンサやCMOSイメージセンサなどの撮像素子を含み、当該撮像素子が撮影した画像をデジタルデータとして記録する。画像は、静止画であってもよいし、所定のフレームレートで連続的に撮影された動画であってもよい。なお、撮影部46を利用して二次元コードTが読み取られてもよい。
センサ部47は、少なくとも1つのセンサを含み、例えば、GPSセンサを含む。GPSセンサは、衛星からの信号を受信する受信機を含み、例えば、受信機が受信した信号に基づいて位置情報を検出する。位置情報は、例えば、緯度経度情報又は座標情報であり、例えば、地上の2次元的な位置を示してもよいし、高度も含む3次元的な位置を示してもよい。
なお、無人航空機40には、任意のセンサが搭載されてよく、センサ部47は、加速度センサ、ジャイロセンサ、風センサ、地磁気センサ、高度センサ、変位センサ、感圧センサ、赤外線センサ、レーザセンサ、超音波センサ、又は温度センサ等の任意のセンサを含むようにしてもよい。また、センサ部47を利用して二次元コードTが読み取られてもよい。
ユーザ端末50は、ユーザが操作するコンピュータである。例えば、ユーザ端末50は、携帯電話機(スマートフォンを含む)、携帯情報端末(タブレット型コンピュータを含む)、又は、パーソナルコンピュータ等である。本実施形態では、ユーザ端末50は、制御部51、記憶部52、通信部53、操作部54、及び表示部55を含む。制御部51、記憶部52、及び通信部53は、それぞれ制御部11、記憶部12、及び通信部13と同様のハードウェア構成であってよい。
操作部54は、入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイス、キーボード、又はボタン等である。操作部54は、ユーザによる操作内容を制御部51に伝達する。表示部55は、例えば、液晶表示部又は有機EL表示部等である。表示部55は、制御部51の指示に従って画像を表示する。
なお、無人航空機管理サーバ10、飛行ルート管理サーバ20、注文管理サーバ30、無人航空機40、及びユーザ端末50のハードウェア構成は、図1の例に限られず、種々のハードウェアを適用可能である。例えば、これら各装置は、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、メモリカードスロットや光ディスクドライブ)を含んでもよいし、外部機器と通信するための入出力部(例えば、USBポート)を含んでいてもよい。また例えば、各装置に記憶されるものとして説明するプログラム及びデータは、読取部又は入出力部を介して供給されるようにしてもよいし、ネットワークNを介して供給されるようにしてもよい。
[2.物流システムの概要]
本実施形態では、無人航空機40が、ユーザが注文した商品を貨物として運搬する場面を例に挙げて、物流システムSの処理を説明する。例えば、ユーザがユーザ端末50を操作してインターネット上で商品を注文すると、ユーザの注文内容が注文管理サーバ30に登録され、注文完了画面が表示部55に表示される。
図4は、注文完了画面の一例を示す図である。図4に示すように、注文完了画面G1には、ユーザが注文した商品に関する情報(例えば、商品名と数量)と、ユーザが指定した運搬先情報及び到着時間情報と、が表示される。図4の例では、運搬先情報は、「お届け先」として記載された住所であり、到着時間情報は、「希望お届け時間」として記載された日時である。
運搬先情報は、貨物の運搬先を示す情報であり、例えば、運搬先の住所、緯度経度情報、又は座標情報などである。運搬先とは、貨物を運搬すべき場所であり、貨物の受け取り場所、又は貨物の配達場所である。別の言い方をすれば、運搬先は、無人航空機40の目的地、飛行先、又は着陸地点ということもできる。運搬とは、貨物を運ぶことであり、輸送ということもできる。本実施形態では、無人航空機40が貨物を保持したまま移動(飛行)することが運搬に相当する。
到着時間情報は、貨物が運搬先に到着する時間ということもできるし、無人航空機40が運搬先に到着する時間ということもできる。例えば、到着時間情報は、無人航空機40及び貨物が運搬先の上空に到着する時間、無人航空機40が運搬先に着陸する時間、又は貨物が運搬先に載置される時間を示す。なお、ここでの時間とは、日付だけを示してもよいし、時刻又は時間帯だけを示してもよいし、これらの両方を示してもよい。
例えば、ユーザの注文が完了すると、店舗のスタッフは、ユーザが注文した商品を所定サイズの箱に入れる。商品が入れられる箱は、無人航空機40の保持部44に格納可能なサイズであればよく、本実施形態では、商品が梱包された箱が貨物となる。なお、商品は、箱以外にも、例えば、袋や発泡スチロールなどの任意の梱包材で梱包されてよい。他にも例えば、商品が特に梱包されずに、そのまま貨物として運搬されてもよい。
注文管理サーバ30は、店舗のスタッフの端末に貨物IDを含む二次元コードを送信し、店舗のプリンタでシールや伝票などに二次元コードを印刷させる。店舗のスタッフは、貨物の上面中央付近に二次元コードを貼り付けて、無人航空機40の出発地に移動する。出発地は、店舗の敷地内に用意されていてもよいし、店舗から離れた配送管理センターなどに用意されていてもよい。出発地には、無人航空機40が離着陸を行う専用のポートが用意されていてもよいし、専用の場所ではなく、駐車場や空き地などが利用されてもよい。
発送者は、無人航空機40のもとに移動すると、保持部44に貨物を格納して固定部材44Cを閉じる。無人航空機40の読取部45は、予め起動しており、保持部44に貨物が格納された場合に二次元コードが読み取られる。無人航空機40は、二次元コードに含まれる貨物IDを取得し、自身を一意に識別する無人航空機識別情報とともに、取得した貨物IDを送信する。
無人航空機識別情報は、無人航空機40を一意に識別可能な情報であればよく、例えば、無人航空機管理システム1により付与された無人航空機ID、名前、個体識別情報、又はIPアドレスなどであってよい。本実施形態では、無人航空機IDが無人航空機識別情報に相当する場合を説明する。このため、本実施形態で無人航空機IDと記載した箇所は、無人航空機識別情報と読み替えることができる。
無人航空機管理サーバ10は、無人航空機IDと貨物IDを受信すると、これらを関連付けて管理する。これにより、無人航空機管理サーバ10は、どの無人航空機40にどの貨物が搭載されたかを特定することができ、貨物の追跡に利用したり、ユーザからの問い合わせに対応したりすることができるようになる。
本実施形態では、二次元コードに運搬先情報と到着時間情報が含まれていないので、無人航空機IDと貨物IDが関連付けられると、無人航空機管理サーバ10は、注文管理サーバ30に対し、受信した貨物IDを送信し、運搬先情報と到着時間情報を問い合わせる。そして、無人航空機管理サーバ10は、注文管理サーバ30から取得した運搬先情報と到着時間情報を飛行ルート管理サーバ20に送信し、飛行計画情報の生成を依頼する。
飛行計画情報は、無人航空機40の飛行計画を示す情報であり、少なくとも飛行ルート情報を含む。飛行ルート情報は、無人航空機40が通るべき経路を示し、例えば、ウェイポイントや着陸地点などの情報を含んでもよいし、緊急時に退避する場所を示す情報を含んでもよい。飛行計画情報は、飛行ルート情報以外の情報を含んでもよく、本実施形態では、離陸時間情報と到着予定時間情報を含む場合を説明する。
離陸時間情報は、無人航空機40が離陸(出発)すべき時間を示す。到着予定時間情報は、無人航空機40が運搬先に到着する予定の時間を示す。到着時間情報は、ユーザが指定した時間を示すのに対し、到着予定時間情報は、実際の飛行ルート等を考慮して計算された時間を示す。到着予定時間情報が決定されるとユーザ端末50に通知され、到着予定時間画面が表示部55に表示される。
図5は、到着予定時間画面の一例を示す図である。図5に示すように、到着予定時間画面G2には、ユーザが注文した商品に関する情報、ユーザが指定した運搬先情報、及び到着予定時間情報が表示される。なお、着陸専用のポートなどの着陸場所があるか否かを特定可能な場合には、着陸場所が到着予定時間画面に表示されてもよい。
飛行ルート管理サーバ20により飛行計画情報が生成されると、無人航空機40は、当該飛行計画情報に基づいて、出発地から運搬先までを自律的に飛行する。ここでの自律的とは、コンピュータ主体という意味であり、人間主体ではないという意味である。人間の操作を一切考慮しない場合も自律的に含まれるし、人間の操作を補助的に考慮する場合も自律的に含まれる。なお、無人航空機40は、自律的に飛行するのではなく、オペレータが操縦機を利用して手動で操縦してもよい。
例えば、無人航空機40は、離陸時間情報が示す離陸時間になると、出発地を離陸し、無人航空機管理サーバ10と無人航空機40との間で位置情報等が送信されることによって、運搬先情報が示す運搬先までの自律飛行が実現される。自律飛行自体は、種々の手法を適用可能であり、例えば、GPSを利用した自律飛行アルゴリズムを利用してもよい。また、無人航空機40に自律飛行アルゴリズムが搭載されており、無人航空機40が特に無人航空機管理サーバ10と通信せずに飛行してもよい。
無人航空機40は、運搬先の上空に到着すると、着陸動作を開始する。無人航空機40は、着陸を確認すると、貨物を地上に載置して帰還を開始する。なお、貨物は、自動的に載置されるのではなく、ユーザが取り出すようにしてもよい。無人航空機40は、往路の飛行ルートを逆方向に移動することによって帰還して出発地に到着すると、貨物の運搬が完了する。
以上のように、本実施形態の物流システムSは、無人航空機40の保持部44に貨物を格納した場合に、読取部45により二次元コードが読み取られ、無人航空機40が、無人航空機IDとともに、二次元コードに含まれる貨物IDを無人航空機管理サーバ10に送信することによって、無人航空機管理サーバ10が無人航空機IDと貨物IDとを関連付けて管理することができるようになる。以降、当該技術の詳細について説明する。
[3.物流システムにおいて実現される機能]
図6は、物流システムSで実現される機能の一例を示す機能ブロック図である。図6に示すように、ここでは、無人航空機管理システム1、飛行ルート管理システム2、注文管理システム3、及び無人航空機40の各々で実現される機能について説明する。
[3-1.無人航空機において実現される機能]
図6に示すように、無人航空機40では、データ記憶部400、検出部401、及び送信部402が実現される。データ記憶部400は、記憶部42を主として実現され、他の各機能は、制御部41を主として実現される。
[データ記憶部]
データ記憶部400は、無人航空機40が貨物を運搬するために必要なデータを記憶する。例えば、データ記憶部400は、無人航空機ID、読取部45により読み取られた二次元コードに含まれる情報(本実施形態では、貨物ID)、及び無人航空機管理システム1から受信した飛行計画情報などを記憶する。また例えば、データ記憶部400は、無人航空機管理サーバ10の識別情報(例えば、IPアドレス、URL、サーバ名、又はメールアドレスなど)を記憶してもよいし、後述する検出部401が検出した位置情報を時系列的に記憶してもよい。
[検出部]
検出部401は、無人航空機40の位置情報を検出する。位置情報の検出方法自体は、種々の手法を適用可能であり、例えば、GPS信号を利用する場合には、検出部401は、センサ部47が受信したGPS信号に基づいて、位置情報を検出する。また例えば、検出部401は、GPS以外のGNSS信号の受信機をセンサ部47に含む場合には、当該受信機が受信した信号に基づいて、位置情報を検出してもよい。また例えば、検出部401は、通信部43の通信内容に基づいて、位置情報を検出してもよく、例えば、WiFiアクセスポイントや携帯電話基地局などの情報を利用してもよい。また例えば、検出部401は、撮影部46により撮影された画像を解析し、位置情報を検出してもよい。
[送信部]
送信部402は、読取部45により二次元コードが読み取られた場合に、貨物IDと、無人航空機IDと、を送信する。本実施形態では、読取部45がコードリーダなので、送信部402は、コードリーダにより二次元コードが読み取られた場合に、無人航空機IDと、貨物IDと、を送信することになる。なお、本実施形態では、これらの情報の送信先が無人航空機管理サーバ10である場合を説明するが、送信部402は、他のコンピュータに対して情報を送信してもよく、例えば、飛行ルート管理サーバ20又は注文管理サーバ30に情報を送信してもよいし、それ以外のコンピュータに情報を送信してもよい。
本実施形態では、送信部402は、読取部45により二次元コードが読み取られたことに応じて、無人航空機IDと貨物IDを送信する場合を説明するが、送信部402は、読取部45により二次元コードが読み取られた後に、店舗のスタッフ又はオペレータなどが所定の操作をした場合に、無人航空機IDと貨物IDを送信してもよい。他にも例えば、送信部402は、無人航空機管理サーバ10から貨物IDと無人航空機IDとを送信する旨の要求を受信した場合に、貨物IDと無人航空機IDとを送信してもよい。
例えば、送信部402は、無人航空機40により貨物が運搬される場合に、検出部401により検出された位置情報を更に送信してもよい。送信部402は、無人航空機40が飛行中に自身の位置情報を無人航空機管理システム1に通知するために、位置情報を送信する。検出部401は、定期的に最新の位置情報を取得し、送信部402は、当該最新の位置情報を送信する。無人航空機管理システム1は、当該位置情報を受信して後述する無人航空機管理データDBに格納することで、無人航空機40の位置情報を最新の状態に保ち、自律飛行制御を実現する。
[3-2.注文管理システムにおいて実現される機能]
図6に示すように、注文管理システム3では、データ記憶部300、登録部301、及び変更部302が実現される。データ記憶部300は、記憶部32を主として実現され、他の各機能は、制御部31を主として実現される。
[データ記憶部]
データ記憶部300は、ユーザの注文を管理するためのデータを記憶する。例えば、データ記憶部300は、ユーザが注文した商品に関する種々の情報が格納される注文管理データDAを記憶する。
図7は、注文管理データDAのデータ格納例を示す図である。図7に示すように、注文管理データDAには、貨物ID、貨物情報、ユーザ情報、無人航空機ID、運搬先情報、到着時間情報、着陸場所、到着予定時間情報、及びステータスが格納される。
例えば、注文管理システム3が注文を受け付けるたびに、貨物IDが発行されて、注文管理データDAに新たなレコードが作成される。貨物IDは、所与のID発行ルールに基づいて発行されるようにすればよく、他の注文と重複しないように発行すればよい。本実施形態では、1つの注文に対し、1つの貨物が運搬されるので、貨物IDは、注文を識別する情報ということもできる。
貨物情報は、貨物の中身を示す情報である。本実施形態では、貨物に商品が含まれているので、貨物情報には、ユーザが注文した商品に関する情報が格納される。例えば、貨物情報には、ユーザが注文した商品を一意に識別する商品ID、商品名、数量、及び単価といった情報が格納される。なお、商品の基本情報が格納されたデータベースは、データ記憶部300に予め記憶されており、商品ID、商品名、及び単価などの情報は、当該データベースから取得される。
ユーザ情報は、商品を注文したユーザに関する情報であり、例えば、ユーザを一意に識別するユーザID、ユーザの氏名、及び連絡先といった情報が格納される。注文管理システム3は、注文を受け付けると、注文をしたユーザのユーザIDをユーザ端末50から受信し、ユーザ情報を注文管理データDAに格納する。なお、ユーザの基本情報が格納されたデータベースは、データ記憶部300に予め記憶されており、ユーザID、氏名、及び連絡先などの情報は、当該データベースから取得される。
注文管理データDAに格納される無人航空機IDは、同じレコードの貨物IDが示す貨物の運搬を担当する無人航空機40の無人航空機IDである。注文管理データDAに格納される運搬先情報及び到着時間情報は、同じレコードの貨物IDが示す貨物の運搬先情報及び到着時間情報である。着陸場所は、貨物の運搬先において無人航空機40が着陸する場所であり、離着陸専用のポートなどである。
注文管理データDAに格納される到着予定時間情報は、同じレコードの貨物IDが示す貨物の到着予定時間情報である。ステータスは、無人航空機40又は貨物の現在のステータスであり、例えば、「離陸前」、「運搬中」、又は「運搬完了」といった複数のステータスが用意されている。
[登録部]
登録部301は、貨物IDと、運搬先情報及び到着時間情報の少なくとも一方と、を関連付けて登録する。本実施形態では、登録部301が運搬先情報及び到着時間情報の両方を登録する場合を説明するが、登録部301は、運搬先情報又は到着時間情報の何れか一方のみを登録してもよい。なお、ここでの登録とは、データ記憶部300に情報を記録することである。関連付けて登録するとは、情報を紐付けること、互いに検索可能に登録すること、同じレコードに格納すること、又は一方の情報をキーとして他方の情報を検索可能な状態にすることである。
本実施形態では、注文管理システム3は、自身で貨物IDを発行し、ユーザ端末50から運搬先情報及び到着時間情報を受信するので、登録部301は、当該発行された貨物IDと、当該受信した運搬先情報及び到着時間情報と、を関連付けて登録する。なお、運搬先情報は、ユーザが予めデータ記憶部300に登録しておいてもよいし、ユーザが複数の運搬先情報を登録しておいて、注文時に選択してもよい。他にも例えば、運搬先情報は、ユーザがユーザ端末50から入力してもよい。到着時間情報は、ユーザがユーザ端末50から入力してもよいし、無人航空機40の予約状況を考慮して、無人航空機40が到着可能な日時の中からユーザが選択してもよい。
なお、本実施形態では、無人航空機40が運搬する貨物は、ユーザにより注文された商品なので、登録部301は、商品の注文を管理する注文管理システム3により実現される場合を説明するが、登録部301は、注文管理システム3以外のシステム(例えば、無人航空機管理システム1又は飛行ルート管理システム2)で実現されてもよい。
[変更部]
変更部302は、登録部301により登録された運搬先情報及び到着時間情報の少なくとも一方を変更する。本実施形態では、変更部302は、運搬先情報及び到着時間情報の両方を変更可能とするが、運搬先情報又は到着時間情報の何れか一方のみが変更可能であってもよい。
例えば、ユーザは、注文後の任意のタイミングにおいて、ユーザ端末50かた運搬先情報及び到着時間情報を変更する操作をすることができるものとする。ユーザは、自身の注文履歴の中から貨物IDを指定したうえで、変更後の運搬先情報及び到着時間情報を入力する。ユーザ端末50は、当該指定された貨物IDと、変更後の運搬先情報及び到着時間情報と、を注文管理サーバ30に送信し、変更部302は、受信した貨物IDに関連付けられた運搬先情報及び到着時間情報を変更する。なお、店舗のスタッフなどの他の者によって運搬先情報及び到着時間情報が変更されてもよい。
[3-3.無人航空機管理システムにおいて実現される機能]
図6に示すように、無人航空機管理システム1では、データ記憶部100、記憶制御部101、飛行制御部102、及び提供部103が実現される。データ記憶部100は、記憶部12を主として実現され、他の各機能は、制御部11を主として実現される。
[データ記憶部]
データ記憶部100は、無人航空機40を管理するために必要なデータを記憶する。例えば、データ記憶部100は、管理対象となる無人航空機40に関する種々の情報が格納された無人航空機管理データDBを記憶する。
図8は、無人航空機管理データDBのデータ格納例を示す図である。図8に示すように、例えば、無人航空機管理データDBには、無人航空機ID、機体情報、貨物ID、運搬先情報、到着時間情報、飛行計画情報、及び運搬状況が格納される。
無人航空機管理データDBに格納された無人航空機IDは、無人航空機管理システム1の管理対象となる無人航空機40の無人航空機IDである。無人航空機IDは、予め管理者などによって入力され、無人航空機管理データDBに格納される。機体情報は、無人航空機40の機体に関する情報である。例えば、機体情報は、無人航空機40のメーカ、型式、サイズ、重量、燃費、及びバッテリーの性能といった種々の情報を含む。
無人航空機管理データDBに格納された貨物IDは、同じレコードに格納された無人航空機IDが示す無人航空機40が運搬する貨物の貨物IDである。当該貨物IDは、無人航空機40の送信部402により送信される。無人航空機管理データDBに格納された運搬先情報及び到着時間情報は、同じレコードに格納された無人航空機IDが示す無人航空機40が運搬する貨物の運搬先情報及び到着時間情報である。
無人航空機管理データDBに格納された飛行計画情報は、同じレコードに格納された無人航空機IDが示す無人航空機40に設定された飛行計画情報である。運搬状況は、例えば、同じレコードに格納された無人航空機IDが示す無人航空機40のステータスと、現在の位置情報と、を含む。先述したように、無人航空機管理システム1の中で無人航空機40の位置情報は最新に保たれるので、無人航空機管理データDBに格納された位置情報は、最新の位置情報となる。
[記憶制御部]
記憶制御部101は、送信部により送信された貨物IDと無人航空機IDとを関連付けてデータ記憶部100に記憶させる。関連付けて記憶させるとは、情報を紐付けること、互いに検索可能に登録すること、同じレコードに格納すること、又は一方の情報をキーとして他方の情報を検索可能な状態にすることである。
例えば、無人航空機40から貨物IDと無人航空機IDが受信された場合、記憶制御部101は、当該無人航空機IDが格納されたレコードに、当該貨物IDを格納することによって、これらを関連付けてデータ記憶部100に記憶させる。なお、記憶制御部101は、当該レコードに既に貨物IDが格納されていた場合には、受信した貨物IDに上書きする。
本実施形態では、記憶制御部101は、送信部により送信された位置情報を更にデータ記憶部100に記憶させる。無人航空機40は、センサ部47で繰り返し位置情報を検出し、自身の無人航空機IDとともに、無人航空機管理サーバ10に当該検出された位置情報を送信する。記憶制御部101は、無人航空機管理データDBのうち、当該無人航空機IDが格納されたレコードに当該位置情報を格納する。これにより、位置情報は最新の状態に保たれる。
[飛行制御部]
飛行制御部102は、飛行計画情報に基づいて、無人航空機40を飛行させる。本実施形態では、飛行制御部102が無人航空機管理システム1によって実現されるので、飛行制御部102は、無人航空機40に対し、飛行計画情報に基づく制御信号を送信する。当該制御信号は、例えば、離陸指示、着陸指示、ホバリング指示、方向指示、加速指示、減速指示、又は旋回指示といった任意の内容であってよい。
例えば、飛行制御部102は、無人航空機40に対し、飛行計画情報を送信することによって、無人航空機40を飛行させる。例えば、飛行制御部102は、リアルタイムクロック又はGPS信号等を利用して現在日時を取得し、離陸時間が到来したか否かを判定する。飛行制御部102は、離陸時間が到来したと判定した場合に、無人航空機40に対し、離陸指示を送信する。無人航空機40は、離陸指示を受信すると、プロペラの回転数を上げて出発地を離陸する。
飛行制御部102は、無人航空機40から離陸完了の通知を受けると、離陸指示を送信した無人航空機IDに関連付けられたステータスを「運搬中」に変更する。その後、飛行制御部102は、無人航空機管理データDBに格納された位置情報と飛行計画情報とに基づいて、無人航空機40に対し、飛行ルート上を飛行するように制御信号を送信し、運搬先までの自律飛行を実現する。例えば、飛行制御部102は、無人航空機40が運搬先に到着すると、着陸指示を送信する。無人航空機40は、着陸指示を受信すると着陸動作を開始し、着陸が完了すると、フレーム44Aを開いて貨物を落下させて離陸を開始する。その後、無人航空機40は、飛行ルートを戻り、出発地まで帰還する。復路における飛行制御は、往路における飛行制御と同様である。
[提供部]
提供部103は、ユーザにより貨物IDが指定された場合に、当該指定された貨物IDに関連付けられた位置情報に基づいて、当該指定された貨物IDが示す貨物の運搬状況をユーザに提供する。運搬状況とは、貨物の追跡情報であり、例えば、無人航空機40及び貨物の現在のステータス、現在位置、及び到着予定時間情報などである。提供部103は、ユーザ端末50に記憶されたアプリケーション、ウェブブラウザ、又は電子メール等を利用して、貨物の運搬状況をユーザに提供する。
[3-4.飛行ルート管理システムにおいて実現される機能]
図6に示すように、飛行ルート管理システム2では、データ記憶部200と、生成部201と、が実現される。データ記憶部200は、記憶部22を主として実現され、生成部201は、制御部21を主として実現される。
[データ記憶部]
データ記憶部200は、飛行ルートを管理するためのデータを生成する。例えば、データ記憶部200は、飛行ルートを計算するためのアルゴリズムを記憶する。本実施形態では、無人航空機40の出発地が予め定められており、データ記憶部200は、出発地の位置情報を記憶する。また例えば、データ記憶部200は、着陸場所に関する情報を記憶してもよく、運搬先ごとに離着陸ポートの有無なども記憶してもよい。
[生成部]
生成部201は、読取部45により二次元コードが読み取られた場合に、二次元コードに含まれる情報に基づいて、無人航空機40の飛行計画情報を生成する。本実施形態では、二次元コードに貨物IDだけが含まれているので、生成部201は、二次元コードに含まれる貨物IDに基づいて、飛行計画情報を生成する。本実施形態では、飛行計画情報は、着陸場所、飛行ルート、離陸予定時間情報、及び到着予定時間情報を含むので、生成部201は、これらの情報を生成する。
例えば、生成部201は、送信部により送信された貨物IDに関連付けられた運搬先情報及び到着時間情報の少なくとも一方に基づいて、飛行計画情報を生成する。本実施形態では、生成部201が、運搬先情報及び到着時間情報の両方に基づいて、飛行計画情報を生成する場合を説明するが、生成部201は、運搬先情報又は到着時間情報の何れか一方に基づいて、飛行計画情報を生成してもよい。生成部201は、無人航空機管理データDBにおいて貨物IDに関連付けられた運搬先情報及び到着時間情報に基づいて、飛行計画情報を生成する。
例えば、データ記憶部200には、運搬先ごとに着陸場所に関する情報が記憶されているので、生成部201は、運搬先情報に基づいて、運搬先における着陸場所を特定する。また例えば、生成部201は、データ記憶部200に記憶された出発地と、運搬先情報が示す運搬先と、に基づいて、飛行ルートを決定する。飛行ルートは、出発地と目的地に基づいて、ダイクストラ法やエースター法といった所定の経路探索アルゴリズムを利用することで決定されてもよいし、単純に出発地と目的地を結ぶ直線であってもよい。
また例えば、生成部201は、到着時間情報が示す時間に到着するように、離陸予定時間情報と到着予定時間情報を決定する。生成部201は、飛行ルートと無人航空機40の標準的な速度とに基づいて、飛行時間を決定し、到着時間情報が示す時間又はその前後の所定時間以内に運搬先に到着するように、離陸予定時間情報と到着予定時間情報を決定する。他にも例えば、生成部201は、無人航空機40の使用状況などを考慮して、離陸予定時間情報を決定してもよい。生成部201は、上記のように決定した各情報を含む飛行計画情報を生成する。
本実施形態では、変更部により運搬先情報及び到着時間情報が変更される可能性があるので、生成部201は、変更部による変更がなされた後に、送信部により貨物IDが送信された場合には、変更部による変更後の運搬先情報及び到着時間情報に基づいて、飛行計画情報を生成する。即ち、生成部201は、飛行計画情報を生成する際に、古い運搬先情報及び到着時間情報ではなく、変更後の最新の運搬先情報及び到着時間情報を参照する。飛行計画情報の生成方法自体は、先述した通りである。
なお、本実施形態では、生成部201は、注文管理システム3とは異なる飛行ルート管理システム2により実現され、注文管理システム3に対し、運搬先情報及び到着時間情報を問い合わせる。問い合わせには、飛行計画情報の計算対象となる貨物の貨物IDが含まれており、注文管理システム3は、注文管理データDAを参照し、当該貨物IDに関連付けられた運搬先情報及び到着時間情報を送信する。なお、生成部201は、無人航空機管理システム1により実現されてもよい。
[4.物流システムにおいて実行される処理]
図9及び図10は、物流システムSにおいて実行される処理の一例を示すフロー図である。図9及び図10に示す処理は、制御部11,21,31,41,51が、それぞれ記憶部12,22,32,42,52に記憶されたプログラムに従って動作することによって実行される。以降説明する処理は、図6に示す機能ブロックの処理の一例である。
図9に示すように、まず、ユーザ端末50において、制御部51は、ユーザがインターネット上で販売される商品を注文すると、注文管理システム3に対し、ユーザの注文内容を送信する(S1)。S1においては、制御部51は、記憶部52に記憶されたユーザIDとともに、ユーザが注文した商品の商品ID、数量、運搬先情報、及び到着時間情報を送信する。
注文管理システム3においては、注文内容を受信すると、制御部31は、ユーザの注文内容を注文管理データDAに登録する(S2)。S2においては、制御部31は、所定のID発行ルールに基づいて、貨物IDを発行する。制御部31は、注文管理データDAに新たなレコードを作成し、当該発行した貨物ID、ユーザが注文した商品の商品IDと数量を含む貨物情報、注文をしたユーザのユーザIDを含むユーザ情報、ユーザが指定した運搬先情報、及びユーザが指定した到着時間情報を格納する。この時点では、どの無人航空機40が運搬を担当するか決まっていないので、無人航空機IDは格納されない。また、飛行ルート情報が決定されていないので、着陸場所、到着予定時間情報、及びステータスも格納されない。
ユーザ端末50においては、注文管理システム3から注文を受け付けた旨の通知を受信し、制御部51は、注文完了画面G1を表示部55に表示させる(S3)。以降、ユーザは、商品が発送されるのを待つ。店舗のスタッフは、店舗の端末を操作して注文管理データDAにアクセスし、ユーザの注文内容を確認する。そして、店舗のスタッフは、商品を箱に梱包して貨物を作成し、注文管理データDAに格納された貨物IDを示す二次元コードを店舗のプリンタで印刷し、貨物の上面中央付近に貼り付ける。店舗のスタッフは、二次元コードが張り付けられた貨物を、無人航空機40の保持部44に格納する。
無人航空機40においては、読取部45は、貨物の二次元コードを読み取る(S4)。S4においては、読取部45は、二次元コードの規格で定められた方法を利用して、画像やセンサの検出結果などを解析し、二次元コードに含まれる貨物IDを取得する。
制御部41は、無人航空機管理システム1に対し、記憶部42に記憶された無人航空機IDとともに、S4で読み取られた二次元コードの貨物IDを送信する(S5)。なお、記憶部42には、無人航空機管理サーバ10のIPアドレスやメールアドレスなどの情報が予め記憶されており、制御部41は、当該情報に基づいて、無人航空機IDと貨物IDを送信する。
無人航空機管理システム1においては、無人航空機IDと貨物IDを受信すると、制御部11は、無人航空機管理データDBに、受信した無人航空機IDと貨物IDとを関連付けて無人航空機管理データDBに記憶させる(S6)。S6においては、制御部11は、無人航空機管理データDBを参照し、受信した無人航空機IDが格納されたレコードを特定し、当該レコードに貨物IDを格納する。これにより、無人航空機管理システム1において、無人航空機IDと貨物IDが関連付けられて記憶される。
制御部11は、注文管理システム3に対し、S6で受信した無人航空機IDと貨物IDとを送信する(S7)。S7においては、制御部11は、注文管理システム3に対し、無人航空機IDと貨物IDとの関連付けを要求することになる。なお、注文管理システム3において、特にこれらの関連付けをする必要のないときは、S7の処理は省略してよい。
注文管理システム3においては、無人航空機IDと貨物IDを受信すると、制御部31は、注文管理データDAに、受信した無人航空機IDと貨物IDとを関連付けて管理する(S8)。S8においては、制御部11は、注文管理データDAを参照し、受信した貨物IDが格納されたレコードを特定し、当該レコードに無人航空機IDを格納する。これにより、注文管理システム3において、無人航空機IDと貨物IDが関連付けられて管理される。
制御部31は、無人航空機管理システム1に対し、S8で受信した貨物IDに関連付けられた運搬先情報と到着時間情報とを送信する(S9)。S9においては、制御部31は、受信した貨物IDが格納されたレコードに格納された運搬先情報と到着時間情報とを取得して送信する。
無人航空機管理システム1においては、運搬先情報と到着時間情報とを受信すると、制御部11は、無人航空機管理データDBに、受信した運搬先情報と到着時間情報とを格納する(S10)。S10においては、制御部11は、S6で特定したレコードに、運搬先情報と到着時間情報とを格納する。これにより、S6で受信した貨物IDに、運搬先情報と到着時間情報とが関連付けられて管理される。
制御部11は、飛行ルート管理システム2に対し、無人航空機40の機体情報と、S10で受信した運搬先情報及び到着時間情報と、を送信する(S11)。S11においては、制御部11は、S6で特定したレコードに格納された機体情報を取得し、飛行ルート管理システム2に対し、飛行計画情報の生成を要求することになる。なお、飛行計画情報の生成にあたり、特に機体情報を考慮しない場合には、機体情報の送信は省略される。
飛行ルート管理システム2においては、機体情報などを受信すると、制御部21は、飛行計画情報を生成する(S12)。なお、ここでは、無人航空機40の出発地が固定されており、出発地情報が記憶部22に予め記憶されているものとする。S12においては、制御部21は、出発地情報と、運搬先情報と、に基づいて、飛行ルートを決定する。飛行ルートは、出発地と運搬先を直線で結ぶ経路であってもよいし、公知の経路探索アルゴリズムを利用して計算した経路であってもよい。制御部21は、飛行ルートと機体情報とに基づいて、離陸予定時間情報と到着予定時間情報を決定する。また、制御部21は、運搬先情報に関連付けられた着陸場所を取得する。制御部21は、これら着陸場所、飛行ルート、離陸予定時間情報、及び到着予定時間情報を含む飛行計画情報を生成し、無人航空機管理システム1に対して送信する。
無人航空機管理システム1においては、飛行計画情報を受信すると、制御部11は、無人航空機管理データDBに、受信した飛行計画情報を格納する(S13)。S13においては、制御部11は、S6で特定したレコードに、受信した飛行計画情報を格納する。
図10に移り、制御部11は、無人航空機40に対し、S13で受信した飛行計画情報を送信し(S14)、注文管理システム3に対し、貨物ID、着陸場所、及び到着予定時間情報を送信する(S15)。S14においては、制御部11は、無人航空機40に対し、飛行計画情報の登録を要求する。S15においては、制御部11は、注文管理システム3に対し、運搬状況に係る情報の更新を要求する。
無人航空機40においては、飛行計画情報を受信すると、制御部41は、記憶部42に、受信した飛行計画情報を記録する(S16)。なお、無人航空機40は、特に飛行計画情報を記憶せずに、無人航空機管理システム1から、飛行に必要な指示を随時受信するようにしてもよい。
注文管理システム3においては、貨物IDなどを受信すると、制御部31は、注文管理データDAに、受信した貨物ID、着陸場所、及び到着予定時間情報を格納する(S17)。なお、注文管理システム3が、無人航空機40の運搬状況を特に管理しない場合には、S17の処理は省略してもよい。
制御部31は、ユーザ端末50に対し、着陸場所と到着予定時間情報とを送信する(S18)。ユーザ端末50においては、着陸場所と到着予定時間情報を受信すると、制御部51は、受信した着陸場所と到着予定時間情報を示す到着予定時間画面G2を表示部55に表示させる(S19)。
無人航空機管理システム1においては、制御部11は、飛行計画情報に基づいて、離陸時間になったか否かを判定する(S20)。S20においては、制御部11は、リアルタイムクロック又はGPS信号等を利用して現在日時を取得し、離陸予定時間情報が示す離陸時間になったか否かを判定する。
離陸時間になったと判定されない場合(S20;N)、離陸指示が送信されず、無人航空機40の離陸が待機される。一方、離陸時間になったと判定された場合(S20;Y)、制御部11は、無人航空機40に対し、離陸指示を送信する(S21)。離陸指示は、所定形式の情報が送信されることで実行されるようにすればよい。
無人航空機40においては、離陸指示を受信すると、制御部41は、出発地を離陸して、飛行計画情報に基づく飛行を開始する(S22)。以降、無人航空機管理システム1と無人航空機40との間で運搬先までの自律飛行が制御される。
無人航空機管理システム1においては、制御部11は、無人航空機管理データDBに基づいて、最新の到着予定時間情報を計算し、注文管理システム3に対し、貨物IDとともに、最新の到着予定時間情報を送信する(S23)。
注文管理システム3においては、貨物IDと到着予定時間情報を受信すると、制御部31は、注文管理データDAに格納された到着予定時間情報を更新し(S24)、ユーザ端末50に対し、最新の到着予定時間を送信する(S25)。ユーザ端末50においては、到着予定時間情報を受信すると、S19の処理に移行し、到着予定時間画面G2が表示される。以降、無人航空機40が運搬先まで貨物を運搬し、運搬先に着陸するまでの間、S23~S25の処理が実行される。無人航空機40は、運搬先に着陸すると貨物を落下させ、再び離陸して出発地に帰還して本処理は終了する。
実施形態1の物流システムSによれば、無人航空機40の保持部44により貨物が保持された場合に、読取部45により二次元コードが読み取られ、二次元コードに含まれる貨物IDと無人航空機IDとが関連付けられて無人航空機管理データDBに記憶されるので、無人航空機40が運搬する貨物を容易に管理することができる。即ち、貨物が無人航空機40に格納され、物理的にこれらが関連付けられた場合に、電子的にもこれらを関連付けることができる。また、貨物IDと無人航空機IDとを関連付けることで、どの無人航空機40にどの貨物が格納されたかを容易に特定することができ、例えば、誤った貨物を無人航空機40に格納してしまったとしてもその事実にすぐに気付くことができ、誤配送を防止することができる。また例えば、運搬中の無人航空機40にトラブルが発生したとしても、どの貨物の運搬に支障が生じているかを容易に特定することができる。
また、無人航空機40の読取部45により二次元コードが読み取られた場合に、二次元コードに含まれる情報に基づいて飛行計画情報が生成されることで、飛行計画情報を生成するにあたり、オペレータによる運搬先情報などの入力をする必要がなくなり、無人航空機40で貨物を運搬する際の手間を省くことができる。更に、二次元コードが読み取られることで自動的に飛行計画情報が生成されるので、より迅速に飛行計画情報を生成することができ、貨物の運搬を早めることができる。
また、注文管理システム3に、貨物IDと、運搬先情報及び到着時間情報と、を関連付けて登録しておき、当該登録内容に基づいて飛行計画情報が生成されることで、二次元コード内に運搬先情報及び到着時間情報を含める必要がなくなり、二次元コードのデータ量を減らすことができる。また、読取部45の誤検出などにより、誤った運搬先情報及び到着時間情報が取得されてしまうと、誤配送や配送遅れの原因となるが、システム側で管理している運搬先情報及び到着時間情報を利用することで誤配送や配送遅れを防止することができる。また、無人航空機40に対し、いちいち運搬先情報及び到着時間情報を入力する必要がなくなるので、貨物を運搬する際の無人航空機40の制約が無くなり、効率的な配送が可能となる。
また、運搬先情報及び到着時間情報が変更された場合に、変更後の運搬先情報及び到着時間情報に基づいて飛行計画情報が生成されることで、古い運搬先情報及び到着時間情報により誤配送や配送遅れが発生してしまうことを防止することができる。また、二次元コードに運搬先情報及び到着時間情報を含ませる方法では、二次元コードの印刷後に運搬先情報及び到着時間情報が変更されると対応することができないが、このような場合であったとしても柔軟に対応することができる。
また、運搬先情報及び到着時間情報が注文管理システム3において管理されており、これらの運搬先情報及び到着時間情報を利用して飛行計画情報が生成されることで、ユーザが商品の注文時に指定した運搬先情報及び到着時間情報に基づいて、飛行計画情報を生成することができるので、ユーザの利便性を向上させることができる。
また、無人航空機40により貨物が運搬される場合に、最新の位置情報が無人航空機管理システム1に送信されることで、無人航空機管理システム1側で常に最新の位置情報管理することができる。
また、無人航空機40により検出された最新の位置情報に基づく貨物の運搬状況がユーザ端末50に提供される場合には、ユーザは、無人航空機40のリアルタイムな位置などを知ることができるので、ユーザの利便性を高めることができる。
また、貨物に付与された二次元コードと、コードリーダを利用することで、比較的検出しやすい手法に基づいて、貨物IDを取得することができるので、貨物IDを確実に取得することができる。
また、コードリーダである読取部45は、保持部44の中に貨物を格納した場合、貨物に付与された二次元コードが読取部45の方を向くようにすることで、貨物を保持部44に入れるといった一連の動作によって、二次元コードに含まれる貨物IDを取得することができる。
[5.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
(1)例えば、無人航空機40は、貨物の種別によって飛行方法を変えてもよい。無人航空機40は、割れ物や炭酸飲料などを貨物として運搬する場合には、振動を抑えるために移動速度を遅くして、柔らかいものなどを貨物として運搬する場合には、到達を早めるために移動速度を速くしてもよい。
本変形例の登録部301は、貨物IDに関連付けて貨物種別情報を更に登録する。貨物種別情報は、貨物の中身の種別であり、例えば、注文管理データDAの貨物情報に格納された商品IDが示す商品の種別である。商品が予めカテゴリ分けされている場合には、貨物種別情報は、商品に関連付けられたカテゴリであってもよい。また例えば、貨物種別情報は、注文管理システム3の管理者によって指定されてもよい。貨物種別情報は、注文管理データDAに格納される。
例えば、生成部201は、送信部402により送信された貨物IDに関連付けられた貨物種別情報に更に基づいて、飛行計画情報を生成する。本変形例では、データ記憶部200に記憶された飛行計画アルゴリズムに、貨物の種別と飛行計画情報との関係が定義されているものとする。例えば、生成部201は、貨物種別情報が割れ物や炭酸飲料などのように特定の種別であった場合には、貨物種別情報が当該特定の種別でなかった場合よりも、無人航空機40の移動速度を遅く設定して、離陸時間を早く設定する。
また例えば、生成部201は、貨物種別情報が特定の種別であった場合には、貨物種別情報が当該特定の種別でなかった場合よりも、比較的風が弱い場所を通過するように、無人航空機40の飛行ルートを決定する。また例えば、生成部201は、貨物種別情報が特定の種別であった場合には、貨物種別情報が当該特定の種別でなかった場合よりも、無人航空機40が風の影響を受けにくい低高度を通過するように、無人航空機40の飛行ルートを決定する。また例えば、生成部201は、貨物種別情報が特定の種別であった場合には、振動や衝撃が少なくなるような離着陸になるように、飛行計画情報を生成してもよい。
変形例(1)によれば、貨物種別情報が考慮されて飛行計画情報が生成されるので、貨物の種別に応じた最適な飛行計画情報とすることができる。このため、例えば、割れ物や炭酸飲料などのように、振動や衝撃に気を付けなければならない貨物について、安全に運搬することができる。
(2)また例えば、実施形態では、無人航空機40の出発地が固定されており、飛行ルート管理システム2に、無人航空機40の出発地が記憶されている場合を説明したが、無人航空機40の出発地は、無人航空機管理システム1に記憶されていてもよい。また例えば、飛行計画情報が生成される場合の無人航空機40の最新の位置情報に基づいて、出発地が決定されてもよい。
本変形例の生成部201は、送信部402により送信された位置情報に更に基づいて、飛行計画情報を生成する。生成部201は、送信部402により送信された位置情報を無人航空機40の出発地として取得し、飛行計画情報を生成する。飛行計画情報の生成方法自体は、実施形態で説明した通りである。
変形例(2)によれば、無人航空機40が検出した位置情報に基づいて出発地を決定して飛行計画情報を生成することで、無人航空機40がどこにいたとしても、飛行計画情報を確実に生成することができる。このため、無人航空機40の出発地の制約が無くなり、運搬を効率化することができる。
(3)また例えば、実施形態では、二次元コードに貨物IDだけが含まれており、貨物の運搬先情報及び到着時間情報が注文管理システム3から取得される場合を説明したが、これらの情報は、二次元コードに含まれていてもよい。
本変形例の二次元コードには、運搬先情報及び到着時間情報の少なくとも一方が含まれている。ここでは、二次元コードに運搬先情報及び到着時間情報の両方が含まれている場合を説明したが、二次元コードには、運搬先情報又は到着時間情報の何れか一方のみが含まれていてもよい。二次元コードに運搬先情報又は到着時間情報の何れか一方のみが含まれている場合、他方については、実施形態と同様にして注文管理システム3から取得されてもよい。
実施形態では、店舗の端末は、注文管理システム3から貨物IDを含む二次元コードを受信したが、本変形例では、貨物ID、運搬先情報、及び到着時間情報を含む二次元コードを受信し、プリンタで印刷させる。なお、店舗の端末は、注文管理システム3から貨物ID、運搬先情報、及び到着時間情報を受信し、自身で二次元コードを生成してもよい。実施形態で説明した通り、二次元コードは、貨物の上面中央付近に貼り付けられる。
送信部402は、読取部45により二次元コードが読み取られた場合に、運搬先情報及び到着時間情報を更に送信する。読取部45の読取方法は、実施形態で説明した通りであり、読取部45により二次元コードが読み取られると、貨物ID、運搬先情報、及び到着時間情報が取得される。送信部402は、無人航空機IDとともに、これらの情報を送信する。
生成部201は、読取部45により二次元コードが読み取られた場合に、二次元コードに含まれる運搬先情報及び到着時間情報に基づいて、飛行計画情報を生成する。飛行計画情報が生成される場合に、二次元コードに含まれる運搬先情報及び到着時間情報が利用する点で実施形態とは異なるだけであり、これらの情報に基づいて飛行計画情報を生成する方法自体は、実施形態で説明した通りである。
変形例(3)によれば、運搬先情報と到着時間情報を二次元コード内に含めておくことで、飛行計画情報を生成するために必要な情報を二次元コード内に含めることができ、飛行計画情報をより迅速に作成することができる。また、システム間で運搬先情報と到着時間情報を要求したり送信したりする必要が無くなるので、システムの処理負荷を軽減したり、ネットワークNの通信量を低減したりすることができる。
(4)また例えば、実施形態では、店舗のスタッフにより無人航空機40に貨物が格納される場合を説明したが、ベルトコンベアなどを利用して、無人航空機40に貨物が自動的に格納されてもよい。この場合であっても、無人航空機40の保持部44に貨物が格納された時点で、読取部45により貨物の二次元コードが読み取られ、無人航空機管理システム1に対し、無人航空機IDと貨物IDが送信されることで、どの無人航空機40にどの貨物が格納されたかを特定可能としてもよい。
本変形例の物流システムSは、複数の無人航空機40を含み、これら複数の無人航空機40の各々により、複数の貨物の各々が運搬される。個々の無人航空機40のハードウェア構成は、実施形態で説明した通りである。また、各貨物には、実施形態で説明したように、上面の中央付近に二次元コードが貼り付けられている。
図11は、無人航空機40に貨物が自動的に搭載される様子を示す図である。図11に示すように、物流システムSは、複数の無人航空機40の各々を搬送する第1の搬送部60と、複数の貨物の各々を搬送する第2の搬送部70と、を含む。第1の搬送部60及び第2の搬送部70の各々は、例えば、ベルトコンベア又は天井クレーン等のマテリアルハンドリング装置を含み、所定の位置に、無人航空機40又は貨物Cを搬送する。
第1の搬送部60により搬送される複数の無人航空機40の各々の保持部44には、第2の搬送部70により搬送される複数の貨物Cの何れかが格納される。例えば、無人航空機40及び貨物Cは、所定の位置まで搬送されると、ロボットアームなどにより貨物Cが把持されて、無人航空機40の保持部44内に貨物Cが格納される。どの無人航空機40にどの貨物Cを格納するかは、予め決められていてもよいが、本実施形態は、各貨物Cは、任意の無人航空機40に格納されてよい。
複数の無人航空機40の各々の読取部45は、保持部44に格納された貨物Cの二次元コードを読み取る。
変形例(4)によれば、複数の無人航空機40により複数の貨物が運搬される場合に、いちいち人手で貨物を格納するといった手間を省くことができる。
(5)また例えば、実施形態では、読取部45と送信部402が無人航空機40と物理的に一体化しており、無人航空機40から取り外せない場合を説明したが、読取部45と送信部402とは、無人航空機40とは異なる読取装置により実現されてもよい。なお、読取装置は、通信部43と同様のハードウェアを有するものとする。
例えば、読取装置は、読取部45と送信部402を含み、読取装置は、無人航空機40に接続され、外部機器として無人航空機40に含まれている。即ち、読取装置は、無人航空機40に後付けで接続される。無人航空機40が販売された時点で読取部45と送信部402が含まれているのではなく、読取部45と送信部402を含む読取装置を用意し、読取部45と送信部402を含まない無人航空機40に外部接続するようにしてもよい。例えば、実施形態のように、二次元コードが可読媒体として利用される場合、読取装置は、通信機能付きのコードリーダとなる。
読取装置の送信部402は、読取部45により二次元コードが読み取られた場合に、無人航空機40に記憶された無人航空機IDを取得して送信する。即ち、実施形態において、無人航空機40の通信部43により送信されるものとして説明した情報は、読取装置の送信部402により送信されてもよい。
変形例(5)によれば、読取部45を有していない機種の無人航空機40であったとしても、保持部44に貨物が格納された場合に二次元コードを読み取らせることができる。
(6)また例えば、実施形態では、保持部44が1つの貨物だけを保持する場合を説明したが、保持部44は、複数の貨物を保持可能であってもよい。この場合、これら複数の貨物が横に並べられたり縦に積まれたりすることによって、保持部44の中に一度に格納される。
例えば、複数の貨物の各々には、自身の貨物IDを含む二次元コードが付与されている。個々の貨物に対して二次元コードが付与される位置は、互いにことなっても良いが、本変形例では、同様の位置に付与されているものとする。
本変形例の読取部45は、保持部44により複数の貨物が保持された場合に、複数の貨物の各々の二次元コードを読み取る。個々の貨物の二次元コードの読取方法は、実施形態で説明した通りである。読取部45は、保持部44に貨物が格納されるたびに、二次元コードを読み取る。
送信部402は、読取部45により複数の貨物の各々の二次元コードが読み取られた場合に、複数の貨物の各々の貨物IDと、無人航空機IDと、を送信する。送信部402は、二次元コードが読み取られるたびに、貨物IDと無人航空機IDを送信してもよいし、店舗のスタッフなどが貨物を積み終わるまでの間は送信せず、店舗のスタッフが貨物を積み終わって所定の操作をした場合に、それまでに読み出された複数の貨物IDと無人航空機IDを一度にまとめて送信してもよい。
記憶制御部は、複数の貨物の各々の貨物IDと、無人航空機IDと、を関連付けてデータ記憶部100に記憶させる。本変形例では、1台の無人航空機40が複数の貨物を一度にまとめて運搬するので、1つの無人航空機IDに対し、複数の貨物IDが関連付けられることになる。この場合、全ての貨物の運搬先情報及び到着時間情報が同じであれば、飛行計画情報の生成方法は、実施形態と同様になる。一方、複数の貨物の各々で運搬先情報及び到着時間情報が異なれば、生成部201は、各貨物の運搬先情報が示す運搬先を、当該貨物の到着時間情報が示す時間に到着するように、順番に各運搬先を回る飛行計画情報を生成する。
変形例(6)によれば、無人航空機40が一度に複数の貨物を運搬する場合であったとしても、これら複数の貨物を容易に管理することができる。また、無人航空機40が一度に複数の貨物を運搬するので、貨物の運搬を効率化することができる。
(7)また例えば、上記説明した変形例を組み合わせてもよい。
また例えば、実施形態では、読取部45が無人航空機40に含まれている場合を説明したが、読取部45と無人航空機40とは、それぞれ別体であってもよい。例えば、無人航空機40が離着陸を行うポート付近に、読取部45を設置しておき、無人航空機40に貨物を格納する前に、当該ポート付近にある読取部45に二次元コードTを読み取らせたうえで、無人航空機40に貨物を格納してもよい。この場合、読取部45は、貨物の二次元コードを読み取り可能な位置に配置されるようにすればよく、可搬型の読取部45を利用するのであれば、すぐ使用できるように作業員が持ち歩いていてもよいし、可搬型でない固定式の読取部45を利用するのであれば、ポートから所定距離未満の位置に配置しておけばよい。
なお、可読媒体としてRFIDタグを利用する場合には、読取部45はRFIDリーダとなり、RFIDは周波数に応じて10cm~5m程度の距離の非接触読み取りが可能なため、読取部45は、利用するRFIDの周波数等に応じて、非接触読み取りが可能な位置に配置される。例えば、DFIDリーダは、ポートから10cm~5m程度の距離に配置され、ポート内でスタンバイしている無人航空機40に貨物が格納される場合に、貨物のRFIDタブを読み取る。この場合、無人航空機IDは、任意の方法で取得されるようにすればよく、例えば、読取部45が通信機能を有している場合には、無人航空機40と近距離無線通信等を利用して無人航空機IDを取得すればよい。また例えば、スタンバイしている無人航空機40が予め分かっている場合には、その日のスケジュール情報等が参照されて無人航空機IDが取得されてもよい。他にも例えば、作業員などによって無人航空機IDが入力されてもよい。
また例えば、ユーザが商品を注文した場合に、飛行ルート管理システム2に予め飛行計画情報を生成させておき、二次元コードに飛行計画情報が格納されていてもよい。この場合、無人航空機40は、二次元コードに格納された飛行計画情報を読みだすことによって、貨物の運搬先までの飛行を制御してもよい。
また例えば、物流システムSを無人航空機40に適用する場合を説明したが、無人地上車両が貨物を運搬する場面にも物流システムSを適用可能である。例えば、無人地上車両に読取部45と同様の構成を配置しておき、無人地上車両に貨物が格納される場合に、読取部45により貨物の二次元コードが読み取られ、無人地上車両からサーバに対し、二次元コードに格納された貨物IDと、自身を識別するIDと、が関連付けられて管理されるようにしてもよい。
また例えば、可読媒体の一例として二次元コードを説明したが、可読媒体としてRFIDタグを利用する場合には、読取部45は、RFIDリーダを利用すればよい。また例えば、可読媒体として近距離無線通信機能を有するメモリを利用する場合には、読取部45は、当該近距離無線通信の通信インタフェースを利用すればよい。
また例えば、物流システムSは、他のコンピュータ(例えば、サーバコンピュータ又はパーソナルコンピュータ)を含んでいてもよく、当該コンピュータによって各機能が実現されてもよい。また例えば、上記説明した各機能は、物流システムSの何れかのコンピュータで実現されるようにすればよく、無人航空機管理システム1、飛行ルート管理システム2、注文管理システム3、無人航空機40、及びユーザ端末50などの複数のコンピュータで各機能が分担されていてもよい。また、物流システムSは、無人航空機管理システム1、飛行ルート管理システム2、及び注文管理システム3といった複数のシステムを含む必要はなく、単一のシステム又はコンピュータによって、各機能が実現されてもよい。