(57)【要約】【課題】屋内を飛行する小型飛行体において、より精度良く高度を制御すること。【解決手段】小型飛行体の制御装置であって、小型飛行体の上方に位置する物体との間の距離を測定する上方センサによる測定結果と、小型飛行体の下方に位置する物体との間の距離を測定する下方センサによる測定結果と、に基づいて小型飛行体の高度に関する情報を推定する高度推定部と、高度推定部による推定結果に応じて、小型飛行体の飛行に関する制御を行うことによって高度を制御する飛行制御部と、を備える、小型飛行体の制御装置である。【選択図】図２
2018010426.tif 000002
【特許請求の範囲】
【請求項１】
小型飛行体の制御装置であって、
前記小型飛行体の上方に位置する物体との間の距離を測定する上方センサによる測定結果と、前記小型飛行体の下方に位置する物体との間の距離を測定する下方センサによる測定結果と、に基づいて前記小型飛行体の高度に関する情報を推定する高度推定部と、
前記高度推定部による推定結果に応じて、前記小型飛行体の飛行に関する制御を行うことによって高度を制御する飛行制御部と、
を備える、小型飛行体の制御装置。
【請求項２】
前記高度推定部は、前記下方センサによる測定結果が変化した場合であっても、前記上方センサによる測定結果が所定の値の範囲内である場合には、前記小型飛行体の高度は変化していないと推定する、請求項１に記載の小型飛行体の制御装置。
【請求項３】
前記高度推定部は、高度が所定の値になった際に前記上方センサによって測定された値と、その後の前記上方センサによる測定結果とが等しい場合に、前記小型飛行体の高度は変化していないと推定する、請求項２に記載の小型飛行体の制御装置。
【請求項４】
前記高度推定部は、前記上方センサによる測定結果が得られない場合には前記上方センサによる測定結果を用いずに前記高度に関する情報を推定し、前記上方センサによる測定結果が得られる場合には前記上方センサによる測定結果を用いて前記高度に関する情報を推定する、請求項１から３のいずれか一項に記載の小型飛行体の制御装置。
【請求項５】
小型飛行体の制御方法であって、
前記小型飛行体の上方に位置する物体との間の距離を測定する上方センサによる測定結果と、前記小型飛行体の下方に位置する物体との間の距離を測定する下方センサによる測定結果と、に基づいて前記小型飛行体の高度に関する情報を推定する高度推定ステップと、
前記高度推定ステップにおける推定結果に応じて、前記小型飛行体の飛行に関する制御を行うことによって高度を制御する飛行制御ステップと、
を有する、小型飛行体の制御方法。
【請求項６】
小型飛行体の制御装置であって、
前記小型飛行体の上方に位置する物体との間の距離を測定する上方センサによる測定結果と、前記小型飛行体の下方に位置する物体との間の距離を測定する下方センサによる測定結果と、に基づいて前記小型飛行体の高度に関する情報を推定する高度推定部と、
前記高度推定部による推定結果に応じて、前記小型飛行体の飛行に関する制御を行うことによって高度を制御する飛行制御部と、
を備える、小型飛行体の制御装置、としてコンピュータを機能させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、屋内を飛行可能な小型飛行体の制御技術に関する。
【背景技術】
【０００２】
近年、ドローン等の小型の飛行体（以下「小型飛行体」という。）が普及しつつある。小型飛行体には操縦者が乗り込むことができないことが多いため、ある程度自律して飛行するための種々の制御技術が提案されている（例えば特許文献１参照）。このような制御技術の一つの具体例として高度制御処理がある。小型飛行体は、地表面に墜落しないように所定の高度を保つように高度制御処理を実行する。このような高度制御処理の具体例として、ＧＰＳ（Global Positioning System）を利用した技術や、気圧センサを利用した技術や、超音波センサを利用した技術が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００７−３１７１６５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、小型飛行体が屋内を飛行する場合には従来の高度制御処理のみでは飛行が困難となる場合があった。その理由は以下のとおりである。屋内ではＧＰＳ信号の感度が悪い場合があり、ＧＰＳを利用した技術では精度が低下する場合があった。また、屋外で飛行する場合に比べて屋内を飛行する場合には、天井が存在するため、低い高度で飛行する必要がある。そのため、気圧センサでは測定結果の誤差が大きく精度が低下する場合があった。また、屋内には椅子や机や棚などの障害物が設置されている可能性が高い。このような障害物の上空を飛行する際には、超音波センサを利用した技術では、障害物で反射した超音波を検知してしまうために誤った高度が取得されてしまう場合があった。
【０００５】
上記事情に鑑み、本発明は、屋内を飛行する小型飛行体において、より精度良く高度を制御する技術の提供を目的としている。
【課題を解決するための手段】
【０００６】
本発明の一態様は、小型飛行体の制御装置であって、前記小型飛行体の上方に位置する物体との間の距離を測定する上方センサによる測定結果と、前記小型飛行体の下方に位置する物体との間の距離を測定する下方センサによる測定結果と、に基づいて前記小型飛行体の高度に関する情報を推定する高度推定部と、前記高度推定部による推定結果に応じて、前記小型飛行体の飛行に関する制御を行うことによって高度を制御する飛行制御部と、を備える、小型飛行体の制御装置である。
【０００７】
本発明の一態様は、上記の小型飛行体の制御装置であって、前記高度推定部は、前記下方センサによる測定結果が変化した場合であっても、前記上方センサによる測定結果が所定の値の範囲内である場合には、前記小型飛行体の高度は変化していないと推定する。
【０００８】
本発明の一態様は、上記の小型飛行体の制御装置であって、前記高度推定部は、高度が所定の値になった際に前記上方センサによって測定された値と、その後の前記上方センサによる測定結果とが等しい場合に、前記小型飛行体の高度は変化していないと推定する。
【０００９】
本発明の一態様は、上記の小型飛行体の制御装置であって、前記高度推定部は、前記上方センサによる測定結果が得られない場合には前記上方センサによる測定結果を用いずに前記高度に関する情報を推定し、前記上方センサによる測定結果が得られる場合には前記上方センサによる測定結果を用いて前記高度に関する情報を推定する。
【００１０】
本発明の一態様は、小型飛行体の制御方法であって、前記小型飛行体の上方に位置する物体との間の距離を測定する上方センサによる測定結果と、前記小型飛行体の下方に位置する物体との間の距離を測定する下方センサによる測定結果と、に基づいて前記小型飛行体の高度に関する情報を推定する高度推定ステップと、前記高度推定ステップにおける推定結果に応じて、前記小型飛行体の飛行に関する制御を行うことによって高度を制御する飛行制御ステップと、を有する、小型飛行体の制御方法である。
【００１１】
本発明の一態様は、小型飛行体の制御装置であって、前記小型飛行体の上方に位置する物体との間の距離を測定する上方センサによる測定結果と、前記小型飛行体の下方に位置する物体との間の距離を測定する下方センサによる測定結果と、に基づいて前記小型飛行体の高度に関する情報を推定する高度推定部と、前記高度推定部による推定結果に応じて、前記小型飛行体の飛行に関する制御を行うことによって高度を制御する飛行制御部と、を備える、小型飛行体の制御装置、としてコンピュータを機能させるためのコンピュータプログラムである。
【発明の効果】
【００１２】
本発明により、屋内を飛行する小型飛行体において、より精度良く高度を制御することが可能となる。
【図面の簡単な説明】
【００１３】
【図１】小型飛行体の飛行環境の具体例を示す図である。
【図２】小型飛行体１０の機能構成の具体例を示す概略ブロック図である。
【図３】小型飛行体１０の前処理の流れを示すフローチャートである。
【図４】小型飛行体１０の飛行処理の流れを示すフローチャートである。
【図５】図４のステップＳ２０６に示される飛行制御処理のフローチャートの具体例を示す。
【図６】小型飛行体１０の飛行制御処理の効果を示す図である。
【図７】小型飛行体１０の飛行制御処理の効果を示す図である。
【発明を実施するための形態】
【００１４】
図１は、小型飛行体の飛行環境の具体例を示す図である。小型飛行体１０は、屋内を飛行することが可能である。屋内には、例えば天井面２０、床面３０、椅子４０及び机５０が存在する。なお、小型飛行体１０は、有人の飛行体であってもよいし、無人の飛行体であってもよい。
【００１５】
天井面２０は、略平面で構成される。ただし、天井面２０の一部は、例えば設備が設置されることによって平面ではなく凹凸部分として構成されてもよい。天井に設置される設備の具体例として、照明、空調、換気口、各種センサ、スプリンクラー等の機器がある。また、天井面２０の一部は、デザインに応じて凹凸や網目によって構成されてもよい。
【００１６】
床面３０は、略平面で構成される。ただし、床面３０の一部は、例えば設備が設置されることによって平面ではなく凹凸部分として構成されてもよい。床に設置される設備の具体例として、照明、空調の吹き出し口、各種センサ等の機器がある。また、床面３０の一部は、デザインに応じて凹凸や網目によって構成されてもよい。
【００１７】
椅子４０は、床面３０上に設置される。椅子４０は複数設置されてもよい。
机５０は、床面３０上に設置される。机５０は複数設置されてもよい。なお、椅子４０及び机５０は障害物の具体例である。椅子４０及び机５０とは異なる障害物が床面３０に設置されてもよい。
【００１８】
図２は、小型飛行体１０の機能構成の具体例を示す概略ブロック図である。小型飛行体１０は、上方センサ１１、下方センサ１２、本体１３及び複数のプロペラ１４を備える。上方センサ１１は、上方センサ１１と、上方に位置する物体（例えば天井面２０）との間の距離を測定する。上方センサ１１は、例えば超音波センサや赤外線センサを用いて構成される。下方センサ１２は、下方センサ１２と、下方に位置する物体（例えば床面３０や障害物）との間の距離を測定する。下方センサ１２は、例えば超音波センサや赤外線センサを用いて構成される。本体１３は、小型飛行体１０の本体である。本体１３は、上方センサ１１及び下方センサ１２の測定結果に応じて複数のプロペラ１４を駆動する。本体１３によるプロペラ１４の駆動によって、小型飛行体１０は飛行する。
【００１９】
次に本体１３について詳細に説明する。本体１３は、制御部１３１、通信部１３２、記憶部１３３及び駆動部１３４を備える。
制御部１３１は、バスで接続されたプロセッサやメモリや補助記憶装置を備える。制御部１３１は、飛行制御プログラムを実行することによって、高度推定部１３５及び飛行制御部１３６として機能する。なお、高度推定部１３５及び飛行制御部１３６の機能の全て又は一部は、ＡＳＩＣ（Application Specific Integrated Circuit）やＰＬＤ（Programmable Logic Device）やＦＰＧＡ（Field Programmable Gate Array）等のハードウェアを用いて実現されても良い。飛行制御プログラムは、コンピュータ読み取り可能な記録媒体に記録されても良い。コンピュータ読み取り可能な記録媒体とは、例えばフレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ、半導体記憶装置（例えばＳＳＤ：Solid State Drive）等の可搬媒体、コンピュータシステムに内蔵されるハードディスクや半導体記憶装置等の記憶装置である。飛行制御プログラムは、電気通信回線を介して送信されても良い。
【００２０】
高度推定部１３５は、上方センサ１１及び下方センサ１２の測定結果に基づいて小型飛行体１０の高度に関する情報を推定する。
飛行制御部１３６は、高度推定部１３５における推定結果に基づいて、小型飛行体１０の飛行に関する制御を実行する。この飛行の制御によって、小型飛行体１０の高度が制御される。飛行制御部１３６は、例えば予め維持すべき高度の値（後述する高度設定値）が設定されている場合、高度設定値が示す高度を維持して飛行する。
【００２１】
通信部１３２は、有線通信又は無線通信を行うことによって、ユーザによる指示を示すデータを受信する。通信部１３２は、例えばユーザによって設定された高度設定値を受信する。
【００２２】
記憶部１３３は、磁気ハードディスク装置や半導体記憶装置等の記憶装置を用いて構成される。記憶部１３３は、制御部１３１の制御に応じてデータを記憶する。例えば、記憶部１３３はユーザによって設定された高度設定値を記憶する。
【００２３】
駆動部１３４は、不図示の電源によって供給される電力を用いて駆動し、駆動力をプロペラ１４に供給する。駆動部１３４は、制御部１３１による制御に応じて駆動する。なお、図２に示されるように１つのプロペラ１４に対して１つの駆動部１３４が設けられてもよいし、複数のプロペラ１４に対して１つの駆動部１３４が設けられてもよい。また、１つのプロペラ１４に対して複数の駆動部１３４が設けられてもよい。
【００２４】
図３は、小型飛行体１０の前処理の流れを示すフローチャートである。前処理は、小型飛行体１０が飛行する前に予め実行される処理である。前処理において、ユーザは小型飛行体１０に対して高度設定値の設定を指示する。高度設定値は、小型飛行体１０が飛行中に維持する高度を表す値である。
【００２５】
このような指示は、例えばスマートフォンやパーソナルコンピュータ等の情報処理装置を用いて行われてもよい。この場合、情報処理装置と小型飛行体１０とは、ＵＳＢ（Universal Serial Bus）等のケーブルを用いた有線通信によって指示の通信が実現されてもよいし、ＷｉＦｉ（登録商標）やBluetooth（登録商標）等の無線通信によって指示の通信が実現されてもよい。
【００２６】
飛行制御部１３６は、ユーザによって設定された高度設定値を取得する（ステップＳ１０１）。飛行制御部１３６は、例えば通信部１３２によって他の情報処理装置から受信された値を、高度設定値として取得する。飛行制御部１３６は、取得された高度設定値を記憶部１３３に記録する（ステップＳ１０２）。
【００２７】
図４は、小型飛行体１０の飛行処理の流れを示すフローチャートである。飛行処理は、小型飛行体１０が飛行する際に実行される処理である。まず、飛行制御部１３６は、高度が下方センサ１２によって測定される高度の値が高度設定値に到達するまで上昇するように駆動部１３４を制御する（ステップＳ２０１）。下方センサ１２によって測定される高度の値が高度設定値に到達すると、飛行制御部１３６は、その時点で上方センサ１１によって測定される天井距離の値を取得する（ステップＳ２０２）。飛行制御部１３６は、ステップＳ２０２において取得された天井距離の値を初期天井距離の値として記憶部１３３に記録する（ステップＳ２０３）。そして、飛行制御部１３６は、高度推定部１３５による高度推定結果に基づいて高度維持処理を開始する（ステップＳ２０４）。
【００２８】
高度維持処理が開始されると、所定のタイミングが到来する度に（ステップＳ２０５−ＹＥＳ）、飛行制御部１３６は飛行制御処理を実行する（ステップＳ２０６）。一方、着陸操作がユーザによって実行された場合（ステップＳ２０５−ＮＯ、ステップＳ２０７−ＹＥＳ）、飛行制御部１３６は高度維持処理を終了し、着陸処理を実行する（ステップＳ２０８）。なお、所定のタイミングではなく着陸操作も行われていない場合（ステップＳ２０５−ＮＯ、ステップＳ２０７−ＮＯ）、飛行制御部１３６は高度に関する処理は実行せずにステップＳ２０５の処理に戻る。
【００２９】
図５は、図４のステップＳ２０６に示される飛行制御処理のフローチャートの具体例を示す。まず、高度推定部１３５は、下方センサ１２によって測定される高度の値を取得する（ステップＳ３０１）。高度推定部１３５は、取得された高度の値が高度設定値と等しいか否か判定する（ステップＳ３０２）。高度推定部１３５は、高度の値と高度設定値との差の絶対値が所定の閾値以下である場合には、高度の値と高度設定値とが等しいと判定する。高度の値と高度設定値とが等しいと判定された場合（ステップＳ３０２−ＹＥＳ）、高度推定部１３５は、高度が維持されていると推定する。高度推定部１３５は、推定結果を飛行制御部１３６に出力する。この場合、飛行制御部１３６は、高度について現状を維持するように制御する（ステップＳ３０３）。
【００３０】
ステップＳ３０２の処理において、高度が高度設定値と等しくない場合（すなわち、高度の値と高度設定値との差の絶対値が所定の閾値以上である場合：ステップＳ３０２−ＮＯ）、飛行制御部１３６は、高度が高度設定値よりも高い値であるか否かで異なる処理を行う。高度が高度設定値よりも高い場合（ステップＳ３０４−ＮＯ）、高度推定部１３５は、高度が高度設定値よりも高くなっていると推定する。この場合、飛行制御部１３６は、高度調整処理を行う（ステップＳ３０５）。高度調整処理では、飛行制御部１３６は、高度を高度設定値に等しい値となるように駆動部１３４の動作を制御する。この場合、高度が高度設定値よりも高い値であると推定されているため、飛行制御部１３６は高度を高度設定値まで下げるように駆動部１３４を制御する。
【００３１】
ステップＳ３０４の処理において、高度が高度設定値よりも低い場合（ステップＳ３０４−ＹＥＳ）、高度推定部１３５は、上方センサ１１によって測定される天井距離の値を取得する。高度推定部１３５は、取得された天井距離の値が初期天井距離と等しいか否か判定する（ステップＳ３０６）。高度推定部１３５は、天井距離の値と初期天井距離との差の絶対値が所定の閾値以下である場合には、天井距離の値と初期天井距離とが等しいと判定する。天井距離の値と初期天井距離とが等しいと判定された場合（ステップＳ３０６−ＹＥＳ）、高度推定部１３５は、高度が維持されていると推定する。高度推定部１３５は、推定結果を飛行制御部１３６に出力する。この場合、飛行制御部１３６は、高度について現状を維持するように制御する（ステップＳ３０３）。
【００３２】
ステップＳ３０６の処理において、天井距離が初期天井距離と等しくない場合（すなわち、天井距離の値と初期天井距離との差の絶対値が所定の閾値以上である場合：ステップＳ３０６−ＮＯ）、飛行制御部１３６は、天井距離が初期天井距離よりも長い値であるか否かで異なる処理を行う。天井距離が初期天井距離よりも長い場合（ステップＳ３０７−ＹＥＳ）、高度推定部１３５は、高度が高度設定値よりも低くなっていると推定する。この場合、飛行制御部１３６は、高度調整処理を行う（ステップＳ３０５）。この場合、高度が高度設定値よりも低い値であると推定されているため、飛行制御部１３６は高度を高度設定値まで上げるように駆動部１３４を制御する。
【００３３】
ステップＳ３０７の処理において、天井距離が初期天井距離よりも短い場合（ステップＳ３０７−ＮＯ）、高度推定部１３５は、エラーを示す値を飛行制御部１３６に出力する。この場合、飛行制御部１３６は、ユーザに対してエラーを出力する（ステップＳ３０８）。エラーの出力は、どのような態様で行われてもよい。例えば、飛行制御部１３６は、通信部１３２を介してユーザが操作する情報処理装置に対してエラーを示す信号を送信することによってエラー出力を行ってもよい。ステップＳ３０３、Ｓ３０５又はＳ３０８の処理の後、飛行制御処理が終了する。
【００３４】
図６及び図７は、小型飛行体１０の飛行制御処理の効果を示す図である。図６及び図７の具体例では、小型飛行体１０は位置Ａにおいて上昇し飛行を開始する。高度設定値は２００ｃｍであり、初期天井距離は７０ｃｍである。小型飛行体１０が位置Ａから位置Ｂに移動すると、小型飛行体１０の下方に障害物（机５０）が現れる。障害物の存在によって、小型飛行体１０の下方センサ１２によって測定される高度は、床面３０から小型飛行体１０までの距離ではなく、机５０の天板から小型飛行体１０までの距離となる。床面３０から机５０の天板までの距離は１２０ｃｍである。そのため、小型飛行体１０の下方センサ１２によって測定される高度は、８０ｃｍとなる。
【００３５】
この場合、従来の小型飛行体であれば、高度が８０ｃｍまで下がってしまったと誤認識し、机５０の天板から２００ｃｍの高度まで上昇してしまうことがあった。このような上昇が行われた場合、図６に示される環境では天井面２０に小型飛行体１０は衝突してしまうおそれがある。
【００３６】
一方、本実施形態の小型飛行体１０では、上方センサ１１によって測定された天井距離に基づいた制御が行われ、結果として上昇せずに高度が維持される。具体的には、以下のとおりである。上方センサ１１によって測定された天井距離と初期天井距離とが等しいか否かに基づいて高度推定部１３５が高度を推定する。図６の位置Ｂにおいては、測定される天井距離は７０ｃｍであり、初期天井距離と等しい値である。この場合、高度推定部１３５は、高度が２００ｃｍのままで維持されていると推定する。その結果、飛行制御部１３６は高度を維持する処理を行う。このように、屋内を飛行する小型飛行体において、より精度良く高度を制御することが可能となる。そのため、従来の小型飛行体１０とは異なり、天井面２０への衝突などの問題を回避することが可能となる。
【００３７】
次に、実際に高度が下がってしまった場合の処理について説明する。図７に示すように、小型飛行体１０が位置Ａから位置Ｃに移動するときに高度が下がってしまったと仮定する。この場合、小型飛行体１０の下方センサ１２によって測定される高度は８０ｃｍとなる。ただし、図６の場合とは異なり、机５０などの障害物が存在するために誤って測定されているのではなく、実際に高度が下がっている。
【００３８】
この場合、本実施形態の小型飛行体１０では、上方センサ１１によって測定された天井距離に基づいた制御が行われ、結果として高度調整処理を行う事によって高度が維持される。具体的には、以下のとおりである。上方センサ１１によって測定された天井距離と初期天井距離とが等しいか否かに基づいて高度推定部１３５が高度を推定する。図７の位置Ｃにおいては、測定される天井距離は１９０ｃｍであり、初期天井距離よりも大きい値である。この場合、高度推定部１３５は、高度が高度設定値よりも低くなっていると推定する。その結果、飛行制御部１３６は高度を調整する処理を行い、高度が高度設定値となるように小型飛行体１０は上昇する。このように、屋内を飛行する小型飛行体において、より精度良く高度を制御することが可能となる。そのため、天井面２０への衝突などの問題を回避しつつ、実際に高度が下がったことについても精度良く検知することが可能となる。
【００３９】
（変形例）
高度推定部１３５は、上方センサ１１によって天井距離を測定できない場合には、屋外を飛行していると判定してもよい。この場合、高度推定部１３５は、上方センサ１１による測定結果を用いずに、下方センサ１２によって測定される高度に基づいて高度を推定する。このように構成されることにより、小型飛行体１０が屋外を飛行している場合に、精度良く高度を制御することが可能となる。すなわち、屋外では天井面が存在しないため、上方センサ１１による測定結果を用いて高度を推定しようとすると、逆にノイズに基づいて誤った推定がなされてしまうおそれがある。上述したように処理が行われることによって、このような問題を解消することが可能である。
【００４０】
一方、高度推定部１３５は、上方センサ１１によって天井距離を測定できる場合には、屋内を飛行していると判定してもよい。この場合、高度推定部１３５は上述したように上方センサ１１による測定結果を用いて高度を推定する。このように、高度推定部１３５によって屋内であるか屋外であるかが自動的に判定され、屋内である場合には上方センサによる測定結果を用いた高度推定が行われることによって、飛行の環境に応じた精度の高い高度制御が可能となる。
【符号の説明】
【００４１】
１０…小型飛行体，  １１…上方センサ，  １２…下方センサ，  １３…本体，  １４…プロペラ，  ２０…天井面，  ３０…床面，  ４０…椅子，  ５０…机，  １３１…制御部，  １３２…通信部，  １３３…記憶部，  １３４…駆動部，  １３５…高度推定部，  １３６…飛行制御部 
【図１】
2018010426.tif 000003
【図２】
2018010426.tif 000004
【図３】
2018010426.tif 000005
【図４】
2018010426.tif 000006
【図５】
2018010426.tif 000007
【図６】
2018010426.tif 000008
【図７】
2018010426.tif 000009