(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0019】
[1.風推定システムのハードウェア構成]
以下、本発明に関わる風推定システムの実施形態の例を説明する。本実施形態では、ゴルフをプレイしているユーザがゴルフコース上の任意の位置の風を計測する場面を例に挙げて、風推定システムの特徴を説明する。
図1は、実施形態に関わる風推定システムの全体構成を示す図である。
図1に示すように、風推定システム1は、無人航空機10及びユーザ端末20を含む。無人航空機10及びユーザ端末20は、互いにデータ送受信可能に接続される。
【0020】
無人航空機10は、人が搭乗しない航空機であり、例えば、バッテリーで駆動する無人航空機(いわゆるドローン)やエンジンで駆動する無人航空機である。無人航空機10は、制御部11、記憶部12、通信部13、及びセンサ部14を含む。なお、無人航空機10は、プロペラ・モーター・バッテリーなどの一般的なハードウェアも含むが、ここでは省略している。
【0021】
制御部11は、例えば、一又は複数のマイクロプロセッサを含む。制御部11は、記憶部12に記憶されたプログラムやデータに従って処理を実行する。記憶部12は、主記憶部及び補助記憶部を含む。例えば、主記憶部はRAMなどの揮発性メモリであり、補助記憶部は、フラッシュメモリなどの不揮発性メモリである。通信部13は、無線通信用のネットワークカードを含む。通信部13は、ネットワークを介してデータ通信を行う。
【0022】
センサ部14は、位置変化(移動量)に関する情報を検出する。例えば、位置変化に関する情報は、無人航空機10の加速度、速度、又は移動距離である。本実施形態では、位置変化に関する情報が加速度である場合を説明する。
図1に示すように、センサ部14は、所定軸数(ここでは3軸とする)の加速度を検出する加速度センサ14Aを含む。加速度センサ14Aは、光学式や半導体式などの公知の種々の加速度センサを適用可能である。
【0023】
本実施形態では、センサ部14は、無人航空機10の姿勢に関する情報を更に検出する場合を説明する。例えば、姿勢に関する情報は、無人航空機10の角速度や角度である。本実施形態では、姿勢に関する情報が角速度である場合を説明する。例えば、センサ部14は、角速度を検出するジャイロセンサ14Bを含む。ジャイロセンサ14Bは、光学式や機械式などの公知の種々のジャイロセンサを適用可能である。
【0024】
また、本実施形態では、センサ部14は、無人航空機10と地面又は障害物との距離に関する情報を更に検出する場合を説明する。例えば、距離に関する情報は、距離そのものであってもよいし、赤外線などの飛行時間であってもよい。本実施形態では、距離に関する情報が距離そのものである場合を説明する。例えば、センサ部14は、赤外線を利用して物体(例えば、地面や障害物など)との距離を検出する赤外線センサ14Cを含む。赤外線センサ14Cは、量子型や熱型などの公知の種々の赤外線センサを適用可能である。
【0025】
なお、センサ部14に含まれるセンサは、上記の例に限られず、任意のセンサを搭載してよい。例えば、
図1に示すように、センサ部14は、衛星からの信号を受信するGPSセンサ14D、及び、デジタルカメラやビデオカメラで利用されるイメージセンサ14Eを含んでいてもよい。他にも例えば、センサ部14は、方角を特定するための地磁気センサ、高度を特定するための高度センサ、又は変位を特定するための変位センサを含んでいてもよい。
【0026】
ユーザ端末20は、ユーザが操作するコンピュータであり、例えば、パーソナルコンピュータ、携帯情報端末(タブレット型コンピュータを含む)、又は携帯電話機(スマートフォンを含む)等である。ユーザ端末20は、制御部21、記憶部22、通信部23、操作部24、及び表示部25を含む。制御部21、記憶部22、及び通信部23のハードウェア構成は、それぞれ制御部11、記憶部12、及び通信部13と同様であるので説明を省略する。
【0027】
操作部24は、ユーザが操作を行うための入力デバイスであり、例えば、タッチパネルやマウス等のポインティングデバイスやキーボード等である。操作部24は、ユーザによる操作内容を制御部21に伝達する。表示部25は、例えば、液晶表示部又は有機EL表示部等である。表示部25は、制御部21の指示に従って画面を表示する。
【0028】
なお、記憶部12又は記憶部22に記憶されるものとして説明するプログラム及びデータは、ネットワークを介して記憶部12又は記憶部22に供給されるようにしてもよい。また、無人航空機10及びユーザ端末20のハードウェア構成は、上記の例に限られず、種々のコンピュータのハードウェアを適用可能である。例えば、無人航空機10及びユーザ端末20の各々は、コンピュータ読み取り可能な情報記憶媒体を読み取る読取部(例えば、光ディスクドライブやメモリカードスロット)を含んでもよい。この場合、情報記憶媒体に記憶されたプログラムやデータが読取部を介して記憶部12又は記憶部22に供給されるようにしてもよい。
【0029】
本実施形態の風推定システム1では、ユーザが指定したゴルフコース上空の計測位置で無人航空機10が自由落下した場合に風の影響でどれだけ流されたかを検出することによって、風向風速センサを用いなくても風向や風速を容易かつ正確に推定するようにしている。以降、当該技術の詳細について説明する。
【0030】
[2.風推定システムにおいて実現される機能]
図2は、風推定システム1で実現される機能の一例を示す機能ブロック図である。
図2に示すように、本実施形態では、移動制御部33、落下制御部34、停止判定部35、第1姿勢判定部36、距離判定部37、及び再開制御部38が無人航空機10で実現され、データ記憶部30、計測位置受付部31、移動指示部32、及び推定部39がユーザ端末20で実現される場合を説明する。
【0031】
[2−1.データ記憶部]
データ記憶部30は、記憶部22を主として実現される。データ記憶部30は、風を計測するのに必要なデータを記憶する。ここでは、データ記憶部30が記憶するデータとして、ゴルフコースに関するゴルフコースデータを例に挙げる。ゴルフコースデータは、ゴルフコースのコースマップを示すマップ画像や当該マップ画像内の位置と緯度経度情報との関連付けなどが含まれている。なお、データ記憶部30に記憶されるデータは上記の例に限られない。例えば、データ記憶部30は、風向や風速を推定するのに必要な数式やテーブルなどを記憶してもよい。他にも例えば、本実施形態では、後述するように計測位置の高度は固定値とする場合を説明するので、データ記憶部30は、当該高度を特定するための高度情報を記憶していてもよい。
【0032】
[2−2.計測位置受付部]
計測位置受付部31は、制御部21を主として実現される。計測位置受付部31は、ユーザによる、風を計測する計測位置の指定を受け付ける。計測位置の指定は、操作部24を用いて行われる。
【0033】
計測位置は、現実空間における3次元的な位置である。本実施形態では、計測位置は、緯度経度情報と高度情報によって特定される。緯度経度情報は、地球上の南北方向の位置及び東西方向の位置を特定する情報であり、例えば、度・分・秒の各数値により示される。高度情報は、所定位置からの高さを示す情報であり、ここでは、地面からの高さを示すものとして説明するが、海抜を示してもよい。他にも例えば、無人航空機10と地面との間に障害物が存在することもあるので、高度情報は、障害物からの高さを示してもよい。本実施形態では、ユーザが緯度経度情報を指定し、高度情報は固定値(例えば、地面から20m)を用いるものとして説明するが、ユーザが高度情報を指定してもよい。
【0034】
図3は、ユーザが計測位置を指定する様子を示す図である。
図3に示すように、ユーザ端末20では、ゴルフコースデータに基づいて、ユーザがラウンド中のゴルフコースのマップ画像50が表示部25に表示される。計測位置受付部31は、操作部24の検出信号に基づいて、ユーザにより指定されたマップ画像50内の位置を取得することになる。ここでは、計測位置受付部31は、マップ画像50の左上を原点Osとしたスクリーン座標系(Xs−Ys座標系)の2次元座標の指定を受け付ける。
【0035】
[2−3.移動指示部]
移動指示部32は、制御部21を主として実現される。移動指示部32は、位置変化に関する情報を検出するセンサ部14を備えた無人航空機10に移動を指示する。移動指示部32は、無人航空機10が移動すべき位置又は方向を指示する。例えば、移動指示部32は、緯度経度情報及び高度情報を無人航空機10に送信することによって移動すべき位置を指示し、無人航空機10が移動すべき方向のベクトル情報を無人航空機10に送信することによって方向を指示する。これらの指示は、所定形式のデータを送信することで行われるようにすればよい。
【0036】
本実施形態では、移動指示部32は、無人航空機10に、ユーザにより指定された計測位置への移動を指示する場合を説明する。例えば、移動指示部32は、ユーザが指定したマップ画像50上の2次元座標に基づいて計測位置を取得する。より具体的には、移動指示部32は、ゴルフコースデータを参照し、ユーザが指定したマップ画像50上の2次元座標に関連付けられた緯度経度情報と、所定の高度情報と、を計測位置として取得する。
【0037】
[2−4.移動制御部]
移動制御部33は、制御部11を主として実現される。移動制御部33は、移動指示部32からの指示に基づいて、無人航空機10を移動させる。例えば、移動制御部33は、移動指示部32から指示された位置又は方向に向けて移動するように、無人航空機10の各プロペラの回転方向や回転速度を調整する。プロペラの回転方向や回転速度は、これらを示すパラメータを変化させることによって調整すればよい。なお、無人航空機10を指定された位置又は方向に移動させる方法自体は、公知の種々の手法を適用可能である。例えば、移動制御部33は、進行方向側にあるプロペラの回転数を減少させる。
【0038】
本実施形態では、ユーザが計測位置を指定するので、移動制御部33は、移動指示部32から指示された計測位置に向けて無人航空機10を移動させる。例えば、移動制御部33は、GPSセンサ14Dの受信信号により定まる緯度経度情報から、移動指示部32から指示された緯度経度情報に向けた方向に、無人航空機10を移動させる。また例えば、移動制御部33は、赤外線センサ14Cにより検出した地面からの距離と、高度情報と、のずれが閾値未満となるように、無人航空機10の高度を調整する。移動制御部33は、無人航空機10を計測位置に移動させた場合、その場でホバリングさせるようにしてもよいし、十分な高度を確保するために更に上昇させてもよい。
【0039】
[2−5.落下制御部]
落下制御部34は、制御部11を主として実現される。落下制御部34は、移動指示部32の指示により無人航空機10が移動した後に、無人航空機10を自由落下させる。本実施形態では、プロペラを回転させて飛行する無人航空機10を例に挙げて説明するので、落下制御部34は、プロペラを停止又は回転速度を閾値未満にすることによって、無人航空機10を自由落下させることになる。プロペラの停止は、プロペラの回転を停止するためのコマンド(モータを停止するためのコマンド)を実行したりプロペラの回転速度を示すパラメータを0に設定したりすることで行えばよい。プロペラの回転速度の減少は、プロペラの回転速度を示すパラメータを減少させることで行えばよい。
【0040】
本実施形態では、ユーザが計測位置を指定するので、落下制御部34は、ユーザにより指定された計測位置に無人航空機10が移動した後に、無人航空機10を自由落下させる。落下制御部34は、センサ部14の検出結果に基づいて、無人航空機が計測位置に移動したか否かを判定すればよい。例えば、落下制御部34は、GPSセンサ14Dの受信信号により定まる緯度経度情報と、移動指示部32から指示された緯度経度情報と、のずれが閾値未満になり、かつ、赤外線センサ14Cにより検出した地面からの距離と、高度情報と、のずれが閾値未満になった場合に、無人航空機10が計測位置に移動したと判定すればよい。落下制御部34は、無人航空機10が計測位置に移動したと判定されない場合は、無人航空機10を自由落下させず、無人航空機10が計測位置に移動したと判定された場合に、無人航空機10を自由落下させることになる。
【0041】
[2−6.停止判定部]
停止判定部35は、制御部11を主として実現される。停止判定部35は、無人航空機10が停止したかを判定する。停止判定部35は、センサ部14の検出結果に基づいて、無人航空機10が停止したかを判定する。停止判定部35は、センサ部14が検出した位置変化に関する情報が閾値未満である場合に、無人航空機10が停止したと判定すればよい。例えば、停止判定部35は、加速度センサ14Aが検出した加速度が閾値未満になった場合に、無人航空機10が停止したと判定する。
【0042】
なお、無人航空機10の停止を判定する方法は、加速度センサ14Aを利用した方法に限られない。例えば、停止判定部35は、赤外線センサ14Cにより検出される距離の変化が閾値未満であるかを判定してもよい。他にも例えば、停止判定部35は、GPSセンサ14Dにより検出される緯度経度情報の変化が閾値未満であるかを判定してもよいし、イメージセンサ14Eで撮影した画像の変化が閾値未満であるかを判定してもよい。更に、停止判定部35は、上記の加速度・距離の変化・緯度経度情報の変化などが閾値未満になる状態が一定時間継続した場合に、無人航空機10が停止したと判定してもよい。他にも例えば、停止判定部35は、プロペラの回転速度のパラメータに基づいて、無人航空機10が停止したか否かを判定してもよい。
【0043】
本実施形態では、落下制御部34は、停止判定部35により停止したと判定されない場合には、無人航空機10を自由落下させず、停止判定部35により停止したと判定された場合に、無人航空機を自由落下させる。別の言い方をすれば、落下制御部34は、停止判定部35により停止したと判定されるまで、無人航空機の自由落下を待機することになる。
【0044】
[2−7.第1姿勢判定部]
第1姿勢判定部36は、制御部11を主として実現される。第1姿勢判定部36は、センサ部14により検出された姿勢に関する情報に基づいて、無人航空機10の姿勢が所定の姿勢であるかを判定する。第1姿勢判定部36は、姿勢に関する情報と所定の姿勢とのずれが閾値未満であるかを判定すればよい。本実施形態では、第1姿勢判定部36は、ジャイロセンサ14Bの検出結果により定まる姿勢が所定の姿勢であるかを判定することになる。
【0045】
所定の姿勢は、予め定められた姿勢であればよく、例えば、無人航空機10の機体の前後方向又は左右方向と、現実空間の水平面と、のずれが閾値未満となる姿勢である。本実施形態では、所定の姿勢が、無人航空機10の機体のバンク角及びピッチ角が閾値未満になる姿勢である場合を相当する。
【0046】
図4は、第1姿勢判定部36の判定方法の説明図である。
図4では、無人航空機10の重心をOwとし、前後軸Xw、左右軸Yw、上下軸Zwとしている。
図4に示すように、バンク角θ
1は、前後軸Xw方向から無人航空機10を見た場合に機体の左右軸Yw軸が水平面(地面)となす角である。即ち、バンク角θ
1は、機体の左右の傾きを示す角度である。一方、ピッチ角θ
2は、左右軸Yw方向から無人航空機10を見た場合に機体の前後軸Xwが水平面(地面)となす角である。即ち、ピッチ角θ
2は、機首(無人航空機10の所定場所)の上下の度合いを示す角度である。第1姿勢判定部36は、ジャイロセンサ14Bの検出結果からバンク角θ
1及びピッチ角θ
2を取得し、当該取得したバンク角θ
1及びピッチ角θ
2の各々が閾値未満である場合に所定の姿勢であると判定する。
【0047】
本実施形態では、落下制御部34は、第1姿勢判定部36により所定の姿勢であると判定された場合に、無人航空機10を自由落下させることになる。別の言い方をすれば、落下制御部34は、第1姿勢判定部36により所定の姿勢であると判定されない場合は、無人航空機10を自由落下させず、停止判定部35により停止したと判定されるまで、無人航空機の自由落下を待機することになる。
【0048】
なお、無人航空機10の姿勢を判定する方法は、ジャイロセンサ14Bを利用した方法に限られない。センサ部14の検出内容を利用すればよく、例えば、加速度センサ14Aを組み合わせて利用してもよいし、イメージセンサ14Eで撮影した画像の変化から姿勢を判定してもよい。
【0049】
[2−8.距離判定部]
距離判定部37は、制御部11を主として実現される。距離判定部37は、センサ部14により検出された距離に関する情報に基づいて、落下中の無人航空機10と地面又は障害物との距離が所定距離未満になったかを判定する。障害物は、無人航空機10が落下する方向にある物体(即ち、落下中の無人航空機10が接触する可能性のある物体)であり、例えば、無人航空機10と地面との間にある木やフェンスなどである。本実施形態では、距離判定部37は、赤外線センサ14Cが検出した地面又は障害物との距離を取得することになる。赤外線センサ14Cは、地面又は障害物に向けて(例えば、垂直方向の下向きに)発射した赤外線が反射して戻ってくるまでの飛行時間に基づいて距離を検出すればよい。上記の所定距離は、予め定められた距離であればよく、固定値であってもよいし、可変値であってもよい。可変値である場合には、ユーザの操作によって指定されてもよいし、落下距離や落下速度に応じて定まってもよい。
【0050】
なお、距離判定部37による判定方法は、上記の例に限られない。センサ部14の検出結果を利用して判定すればよく、他にも例えば、距離判定部37は、加速度センサ14Aの積分値をもとに地面又は障害物との距離を取得して判定してもよいし、イメージセンサ14Eが撮影した地面又は障害物の写真を基に距離を推定して判定してもよい。
【0051】
[2−9.再開制御部]
再開制御部38は、制御部11を主として実現される。再開制御部38は、距離判定部37により所定距離未満になったと判定された場合に、無人航空機の飛行を再開させる。別の言い方をすれば、再開制御部38は、距離判定部37により所定距離未満になったと判定されない場合には、無人航空機の飛行を再開せず、自由落下を継続させることになる。本実施形態では、プロペラを回転させて飛行する無人航空機10を例に挙げて説明するので、再開制御部38は、プロペラの回転を開始又は回転速度を増加させることによってことによって、無人航空機10の飛行を再開させることになる。プロペラの停止は、プロペラの回転を開始するためのコマンド(モータを駆動させるためのコマンド)を実行することで行えばよく、プロペラの回転速度の増加は、プロペラの回転速度を示すパラメータを増加させることで行えばよい。
【0052】
[2−10.推定部]
推定部39は、制御部11を主として実現される。推定部39は、無人航空機10の落下中にセンサ部14により検出された位置変化に関する情報(本実施形態では加速度)に基づいて、落下位置の風向及び風速の少なくとも一方を推定する。本実施形態では、推定部39が風向及び風速の両方を推定する場合を説明するが、推定部39は風向又は風速の何れか一方のみを推定してもよい。例えば、加速度と、風向及び風速と、の関連付けがデータ記憶部30に記憶されており、推定部39は、この関連付けと、加速度センサ14Aにより検出された加速度と、に基づいて風向と風速を推定する。この関連付けは、テーブル形式のデータであってもよいし、数式形式のデータであってもよいが、ここでは、数式形式とする。
【0053】
図5は、推定部39の処理内容の説明図である。
図5では、落下開始時点t
sの無人航空機10の位置をP
tsとし、計測終了時点t
eの無人航空機10の位置をP
teとし、その間(落下中)の時点tにおける位置をP
tとする。ここでは、推定部39は、位置P
ts(加速度a
ts)から位置P
te(加速度a
te)までの各位置P
tで検出された加速度a
tの平均加速度a
aveを計算する。なお、平均加速度a
aveはベクトル情報であり、加速度の大きさだけでなく、その方向も示す。先述した数式は、予め定められたものであればよいが、本実施形態では、推定部39は、風圧力が風速の二乗に概ね比例する事実から定まる下記の式1と、ニュートンの運動方程式から定まる下記の式2をもとに、風速Vを計算する。なお、下記の表面積S、係数C、質量m、及び重力加速度gは、予めデータ記憶部30に記憶されているものとする。風向は、平均加速度a
aveから重力加速度gを引いたベクトルの向きとすればよい。風向の方角は、地磁気センサなどを利用して特定すればよい。
(式1):F=W*S=C*V^2*S
(式2):F=m*(a
ave−g)
F:無人航空機10が受ける風圧[N]
W:風圧力[N/m^2]
S:無人航空機の表面積[m^2]
C:係数(例えば、1未満)
V:風速[m/s]
m:無人航空機10の質量[kg]
g:重力加速度[m/s^2]
【0054】
上記のような推定方法で推定される風速Vを、水平方向成分と垂直方向成分に分けて説明すると、まず、風速Vの水平方向成分が大きいと(即ち、横風が強いと)、無人航空機10が水平方向に流されるため、平均加速度a
aveの水平方向成分は大きくなる。このため、平均加速度a
aveの水平方向成分が大きいほど、当該方向への風速Vが速い(即ち、横風が強い)と推定される。一方、平均加速度a
aveの垂直方向成分は、無風の状態でも重力加速度gを有しているので、風速Vの垂直方向成分(即ち、上から下への吹き下ろし分、又は、下から上への吹き上げ分)は、平均加速度a
aveの垂直方向成分と重力加速度gとの差に表れる。このため、平均加速度a
aveの垂直方向成分と重力加速度gとの差が大きいほど、当該差が示す方向への風速Vが速い(即ち、吹き下ろし又は吹き上げが強い)と推定される。なお、推定部39による推定方法は、上記の例に限られない。推定部39は、加速度と風向及び風速との関連付けと、加速度センサ14Aが検出した実際の加速度と、に基づいて推定すればよい。例えば、推定部39は、上記以外の数式を用いてもよいし、テーブルを利用してもよい。
【0055】
[3.風推定システムにおいて実行される処理]
図6は、風推定システムにおいて実行される処理の一例を示すフロー図である。
図6に示す処理は、制御部11が、記憶部12に記憶されたプログラムに従って動作し、制御部21が、記憶部22に記憶されたプログラムに従って動作することによって実行される。本実施形態では、下記に説明する処理が実行されることにより、
図2に示す機能ブロックが実現される。
【0056】
図6に示すように、まず、ユーザ端末20においては、制御部21は、記憶部22に記憶されたゴルフコースデータに基づいて表示部25にマップ画像50を表示させ、操作部24からの信号に基づいて、ユーザによる計測位置の指定を受け付ける(S1)。本実施形態では、計測位置の高度は所定値で定められているので、ユーザはマップ画像50を利用して緯度経度情報を指定することになる。
【0057】
制御部21は、ユーザにより指定された計測位置に移動する旨の移動指示を、無人航空機10に送信する(S2)。移動指示は、所定形式のデータにより行われるようにすればよい。S2においては、制御部21は、ゴルフコースデータを参照して、ユーザが指定した画面上の2次元座標に関連付けられた緯度経度情報と所定の高度情報を計測位置として取得して移動指示を送信することになる。
【0058】
無人航空機10においては、移動指示を受信すると、制御部11は、ユーザにより指定された計測位置に向けて移動する(S3)。S3においては、制御部11は、移動指示に含まれる緯度経度情報及び高度情報を目的地点に設定して、無人航空機10の移動を開始する。
【0059】
制御部11は、加速度センサ14Aの検出信号に基づいて、無人航空機10が計測位置で停止したかを判定する(S4)。S4においては、制御部11は、赤外線センサ14C及びGPSセンサ14Dに基づいて、無人航空機10が計測位置に到達したかを判定する。そして、制御部11は、加速度センサ14Aが検出した加速度が閾値未満となったかを判定する。これら2つの判定が肯定であった場合に、無人航空機10が計測位置で停止したと判定されることになる。
【0060】
無人航空機10が計測位置で停止したと判定された場合(S4;Y)、制御部11は、ジャイロセンサ14Bの検出信号に基づいて、無人航空機10が水平姿勢になったかを判定する(S5)。水平姿勢は、
図4に示すバンク角θ
1及びピッチ角θ
2が閾値未満となる姿勢である。
【0061】
無人航空機10が水平姿勢になったと判定されない場合(S5;N)、S5の処理に戻る。この場合、無人航空機10は、機体の姿勢回復動作を行うことになる。一方、無人航空機10が水平姿勢になったと判定された場合(S5;Y)、制御部11は、プロペラの回転を停止させて自由落下を開始する(S6)。S6においては、制御部11は、プロペラの回転速度を示すパラメータを0に設定したり、プロペラを停止させるコマンドを実行したりすることによって、プロペラの回転を停止させる。
【0062】
制御部11は、加速度センサ14Aが検出した落下中の加速度を記憶部12に蓄積する(S7)。S7においては、制御部11は、加速度を時系列的に記憶部12に蓄積する。なお、制御部11は、記憶部12に蓄積するのではなく、ユーザ端末20に対して加速度を随時送信してもよい。
【0063】
制御部11は、赤外線センサ14Cの検出信号に基づいて、無人航空機10と地面又は障害物との距離が所定距離未満になったかを判定する(S8)。地面との距離又は障害物が所定距離未満になったと判定されない場合(S8;N)、S7の処理に戻り、加速度の蓄積が実行される。一方、地面又は障害物との距離が所定距離未満になったと判定された場合(S8;Y)、制御部11は、プロペラの回転を再開させて、記憶部12に記憶された加速度をユーザ端末20に送信する(S9)。S9においては、制御部11は、プロペラの回転速度を示すパラメータを所定回転数以上に設定したり、プロペラを回転させるコマンドを実行したりすることによって、プロペラを回転させることになる。
【0064】
ユーザ端末20においては、加速度を受信すると、制御部21は、風向と風速を推定する(S10)。S10においては、制御部21は、
図5を参照して説明した方法に基づいて、風向と風速を推定することになる。制御部21は、S10で推定した風向と風速を表示部25に表示させ(S11)、本処理は終了する。なお、制御部21は、風向と風速をユーザに通知すればよく、他にも例えば、音声として出力するようにしてもよいし、ユーザが所有する端末に風向と風速を送信するようにしてもよい。
【0065】
以上説明した風推定システム1によれば、無人航空機10を自由落下させて落下中に検出した加速度をもとに風向と風速を推定するので、風向風速センサを用いなくても、所望の位置における風向や風速を容易かつ正確に推定することができる。更に、風向風速センサを無人航空機10に搭載しない場合には、無人航空機10を軽量化することもできる。
【0066】
また、無人航空機10が停止する前に落下させると初速が発生し、初速を考慮に入れて風を推定しようとすると、処理が煩雑になったり初速分の誤差のため正確に推定できなくなったりするが、風推定システム1では、無人航空機10が停止した場合に自由落下させるので、無人航空機10の初速を略0にした状態で自由落下をさせることができ、風向や風速をより容易かつ正確に推定することができる。
【0067】
また、風上から無人航空機10を見た場合の表面積は、無人航空機10の姿勢に応じて変わるため、無人航空機10が受ける風の影響は姿勢に応じて異なるので、姿勢を考慮に入れて風を推定しようとすると、処理が煩雑になったり、誤差のために正確に推定できなくなったりする。この点、風推定システム1では、無人航空機10が所定の姿勢になった場合に自由落下を開始するので、姿勢の違いによる風の影響の変化を略0にすることができ、毎回同じ条件で自由落下させることができるので、風向や風速をより容易かつ正確に推定することができる。
【0068】
また、風推定システム1では、無人航空機10と地面や障害物との距離が所定距離未満になった場合に無人航空機10の飛行を再開するので、無人航空機10が地面や障害物に衝突してしまうことを未然に防止することができる。
【0069】
また、風推定システム1では、ユーザが指定した計測位置に無人航空機10が移動して風を計測するので、ユーザが所望する場所の風を計測することができる。更に、ユーザは、計測位置を指定するだけで良いので、所望の場所の風を計測する場合の操作負担を軽減することもできる。
【0070】
[4.変形例]
なお、本発明は、以上に説明した実施の形態に限定されるものではない。本発明の趣旨を逸脱しない範囲で、適宜変更可能である。
【0071】
図7は、変形例の機能ブロック図である。
図7に示すように、下記に説明する変形例では、実施形態の機能に加えて、第2姿勢判定部40(変形例(1)及び(2)参照)及び方向受付部41(変形例(3)参照)が実現される。
【0072】
(1)例えば、無人航空機10が風であおられて姿勢が変化すると、風上から無人航空機10を見た場合の表面積が変化するので、無人航空機10が受ける風の影響が変化する。例えば、無人航空機10が水平姿勢から大きく崩れるほど風の影響が強くなるような場合、風向や風速の推定結果に誤差が生じることがある。このため、無人航空機10が落下中であっても、姿勢が一定の範囲内にない場合の加速度は信頼性が低いため考慮せず、姿勢が一定範囲内にある場合の加速度は信頼性が高いためこの加速度のみを考慮して風向や風速を推定してもよい。
【0073】
変形例(1)の風推定システム1は、第2姿勢判定部40を含む。第2姿勢判定部40は、制御部11を主として実現される。第2姿勢判定部40は、センサ部14により検出された姿勢に関する情報に基づいて、落下中の無人航空機10の姿勢が所定の範囲内であるかを判定する。所定の範囲とは、予め定められた姿勢の範囲であればよく、基準となる姿勢とのずれが閾値未満となる姿勢である。ここでは、
図4で説明した無人航空機10のバンク角θ
1及びピッチ角θ
2が閾値未満(例えば、30°未満)となる範囲が所定の範囲内である場合を説明する。
【0074】
推定部39は、第2姿勢判定部40により所定の範囲内であると判定された場合にセンサ部14により検出された位置変化に関する情報に基づいて、落下位置の風向及び風速の少なくとも一方を推定する。別の言い方をすれば、推定部39は、第2姿勢判定部40により所定の範囲内であると判定されない場合にセンサ部14により検出された位置変化に関する情報は、風向や風速の推定では用いないことになる。
【0075】
変形例(1)によれば、落下中において無人航空機10が一定の姿勢を保っている場合の検出結果を利用し、信頼性の高い加速度をもとに風向や風速を推定するので、姿勢の違いにより発生する誤差を軽減することができ、風向や風速をより容易かつ正確に推定することができる。
【0076】
(2)また例えば、自由落下中は無人航空機10が風であおられて姿勢が崩れやすいため、無人航空機10がひっくり返ってしまうと飛行を再開できず地面や障害物に激突してしまう可能性がある。このため、落下中の無人航空機10が所定範囲の姿勢ではなくなった場合に(即ち、無人航空機10がひっくり返りそうになる前に)、飛行を再開させるようにしてもよい。
【0077】
変形例(2)の風推定システム1は、第2姿勢判定部40を含む。第2姿勢判定部40は、変形例(1)で説明した通りである。再開制御部38は、第2姿勢判定部40により所定の範囲内でないと判定された場合に、無人航空機10の飛行を再開させる。別の言い方をすれば、再開制御部38は、第2姿勢判定部40により所定の範囲内であると判定された場合に、無人航空機10の飛行を再開させず、自由落下を継続させる。無人航空機10の飛行を再開させる方法は、実施形態で説明した方法と同様である。
【0078】
変形例(2)によれば、無人航空機10がひっくり返ってしまい飛行を再開できずに地面や障害物に衝突してしまうことを未然に防止することができる。
【0079】
(3)また例えば、実施形態においては、表示部25に表示されたマップ画像50上でユーザが計測位置を指定する場合を説明したが、無人航空機10の移動方向を指示するためのリモコンなどをユーザが使って、無人航空機10を手動で移動させるようにしてもよい。
【0080】
変形例(3)の風推定システム1は、方向受付部41を含む。方向受付部41は、制御部21を主として実現される。方向受付部41は、無人航空機10が移動する方向のユーザによる指定を受け付ける。ここでは、操作部24は、無人航空機10に無線で指示を送るコントローラであってよく、移動方向を指示するための操作部材を含む。この操作部材は、レバーやボタンなどであってよい。例えば、レバーを倒した方向や押下したボタンの種類に基づいて、無人航空機10の移動方向が定まる。なお、方向を指示する方法自体は、公知の種々の手法を適用可能であり、上記のようにコントローラの操作部材を用いる方法以外にも、ユーザが把持するスマートフォンやタブレット型端末などを傾けることによって方向を指示してもよいし、タッチパネルに表示された仮想的なボタンをタッチすることであってもよい。
【0081】
移動指示部32は、無人航空機10に、ユーザにより指定された方向への移動を指示することになる。即ち、変形例(3)では、ユーザにより指定された方向が移動指示に含まれていることになる。移動制御部33は、移動指示部32により指示された方向に無人航空機10を移動させる。
【0082】
落下制御部34は、無人航空機10がユーザにより指定された方向に移動した後に、無人航空機10を自由落下させる。なお、変形例(3)では、落下制御部34は、無人航空機10がユーザにより指定された方向に移動した後において、所定の条件が満たされた場合に無人航空機10を自由落下させるようにすればよい。所定の条件は、自由落下を開始するための操作が操作部24から行われること、一定時間の間方向が指示されなくなることなどであってよい。他にも例えば、ユーザが高度情報を指定する場合には、風を計測するために必要な高度情報が指定されないことがあるので(例えば、風を計測するために20mの高度が必要な無人航空機10に対して3mが指定されてしまう)、ユーザが指定した高度情報が閾値以上であることが所定の条件に相当してもよい。落下制御部34は、所定の条件が満たされるまでは無人航空機10を自由落下させず、所定の条件が満たされた場合に、無人航空機10を自由落下させることになる。
【0083】
変形例(3)によれば、ユーザが指定した方向に無人航空機10が移動して風を計測するので、風を計測する場所の自由度を高めることができる。更に、ユーザは、方向を指定するだけで良いので、所望の場所の風を計測する場合の操作負担を軽減することもできる。
【0084】
(4)また例えば、変形例(1)〜(3)の2つ以上を組み合わせるようにしてもよい。
【0085】
また例えば、推定部39が加速度を利用して風向と風速を推定する場合を説明したが、推定部39は、落下中の速度を利用してもよい。この場合、速度と風向及び風速との関連付けがデータ記憶部30に記憶されており、推定部39は、センサ部14が検出した速度に関連付けられた風向と風速を推定することになる。例えば、移動速度の水平方向成分が大きいほど当該方向への風速が速いと推定される。そして、移動速度の垂直方向成分と重力加速度による速度との差が大きいほど、当該差に対応する方向への風速が速いと推定される。他にも例えば、推定部は、落下中の移動距離を利用してもよい。この場合、移動距離と風向及び風速との関連付けがデータ記憶部30に記憶されており、推定部39は、センサ部14が検出した移動距離に関連付けられた風向と風速を推定することになる。例えば、移動距離の水平方向成分が大きいほど当該方向への風速が速いと推定される。そして、移動距離の垂直方向成分と重力加速度による移動分との差が大きいほど、当該差に対応する方向への風速が速いと推定される。
【0086】
また例えば、上記においては、風向風速センサを含まない無人航空機10を例に挙げたが、風向風速センサを含む無人航空機10が上記実施形態又は変形例で説明した処理を実行してもよい。このようにすれば、例えば、風向風速センサが故障していたとしても、無人航空機10は、風向や風速を推定することができる。
【0087】
また例えば、無人航空機10で実現されるものとして説明した機能がユーザ端末20で実現されてもよい。例えば、落下制御部34、停止判定部35、第1姿勢判定部36、距離判定部37、再開制御部38、及び第2姿勢判定部40がユーザ端末20で実現されてもよい。この場合、これら各機能は制御部21を主として実現され、落下制御部34及び再開制御部38は、それぞれ落下の開始や飛行の再開を無人航空機10に指示する。停止判定部35、第1姿勢判定部36、距離判定部37、及び第2姿勢判定部40は、それぞれセンサ部14の検出内容を取得して判定処理を行えばよい。更に、ユーザ端末20で実現されるものとして説明した機能が無人航空機10で実現されてもよい。例えば、データ記憶部30、計測位置受付部31、移動指示部32、推定部39、及び方向受付部41が無人航空機10で実現されてもよい。この場合、データ記憶部30は記憶部12を主として実現され、他の各機能は制御部11を主として実現される。計測位置受付部31及び方向受付部41は、それぞれ無人航空機10に備えられた操作部から指定を受け付けるようにすればよい。移動指示部32は、計測位置への移動を自身のモータやプロペラに指示すればよい。推定部39は、センサ部14の検出内容をもとに実施形態で説明した方法により風向や風速を推定すればよい。上記説明した各機能は、無人航空機10だけで実現されるようにしてもよいし、風推定システム1の各コンピュータで分担されるようにしてもよい。更に、上記説明した各機能のうち、移動指示部32、落下制御部34、及び推定部39以外の機能は省略してもよい。
【0088】
また例えば、風推定システム1がゴルフコースで利用される場合を例に挙げて説明したが、風推定システム1は、任意の位置の風を計測するために用いられるようにすればよく、ゴルフ以外の種々の目的に適用可能である。例えば、風推定システム1は、ゴルフ以外のスポーツやレジャーなどで風を計測するために用いられてもよいし、水上などの任意の場所の風を計測するために用いられてもよい。
風向風速センサを用いなくても、所望の位置における風向や風速を容易かつ正確に推定する。風推定システム(1)の移動指示手段(32)は、位置変化に関する情報を検出するセンサ部(14)を備えた無人航空機(10)に移動を指示する。落下制御手段(34)は、移動指示手段(32)の指示により無人航空機(10)が移動した後に、無人航空機(10)を自由落下させる。推定手段(39)は、無人航空機(10)の落下中にセンサ部(14)により検出された位置変化に関する情報に基づいて、落下位置の風向及び風速の少なくとも一方を推定する。