(57)【要約】【課題】自律移動体が効率的に自身の移動目標を発見することを可能とする。【解決手段】投影装置が、各々の画素の画素座標を含む情報セグメントで符号化された時系列投影光信号を投影する。光センサが、前記時系列投影光信号を検出し、センサ信号を生成する。自律移動体が、前記光センサから前記センサ信号を受信し、検出した前記時系列投影光信号に基づいて前記自律移動体の位置情報を決定し、決定した前記自律移動体の位置情報に基づいて命令を発行するコンピュータ部を含む。【選択図】図１
2017162435.tif 000002
【特許請求の範囲】
【請求項１】
各々の画素の画素座標を含む情報セグメントで符号化された時系列投影光信号を投影する投影装置と、
前記時系列投影光信号を検出し、センサ信号を生成する光センサと、
前記光センサから前記センサ信号を受信し、検出した前記時系列投影光信号に基づいて  自律移動体の位置情報を決定し、決定した前記自律移動体の位置情報に基づいて命令を発行するコンピュータ部を含む自律移動体と、
を備える、自律移動体ガイダンスシステム。
【請求項２】
前記自律移動体の前記コンピュータ部は、前記センサ信号に対応する投影画素を識別することで、前記自律移動体の前記位置情報を決定する、
請求項１に記載の自律移動体ガイダンスシステム。
【請求項３】
前記自律移動体の前記位置情報は、前記投影装置に対する前記自律移動体の角度位置を含む、請求項２に記載の自律移動体ガイダンスシステム。
【請求項４】
前記自律移動体は、前記時系列投影光信号を検出し、第２センサ信号を生成する第２光センサを含み、
前記自律移動体の前記コンピュータ部は、前記第２センサ信号に対応する第２投影画素を識別することで、前記自律移動体の前記位置情報を決定し、前記位置情報は、さらに、前記自律移動体と前記投影装置との間の距離を含む、
請求項２または請求項３に記載の自律移動体ガイダンスシステム。
【請求項５】
前記自律移動体と前記投影装置との間の距離は、前記光センサと前記第２光センサとの間の距離に基づいて決定される、
請求項４に記載の自律移動体ガイダンスシステム。
【請求項６】
前記自律移動体の前記コンピュータ部は、前記自律移動体と前記投影装置との間の決定された距離が予め定められた閾値よりも短い場合、前記自律移動体の速度を低減する、
請求項４または請求項５に記載の自律移動体ガイダンスシステム。
【請求項７】
前記自律移動体は、前記時系列投影光信号を検出し、第２センサ信号を生成する第２光センサを含み、
前記自律移動体の前記コンピュータ部は前記センサ信号に対応する投影画素および前記第２センサ信号に対応する第２投影画素を識別することで前記自律移動体の向き情報を決定する、
請求項１〜請求項３の何れか１項に記載の自律移動体ガイダンスシステム。
【請求項８】
前記自律移動体の前記コンピュータ部は、前記自律移動体が予め定められた向きを向くように、第２命令を発行する、
請求項７に記載の自律移動体ガイダンスシステム。
【請求項９】
前記自律移動体は複数の電気端子を含み、
前記自律移動体が予め定められた向きに向くと、前記自律移動体の複数の前記電気端子は、前記自律移動体の充電が可能となるように、ベースの複数の第２電気端子と接触する、
請求項８に記載の自律移動体ガイダンスシステム。
【請求項１０】
前記投影装置によって投影された前記時系列投影光信号は、前記投影装置の画素の各々の画素座標を符号化する複数の光パルスシーケンスを含む、
請求項１〜請求項９の何れか１項に記載の自律移動体ガイダンスシステム。
【請求項１１】
前記自律移動体は、前記時系列投影光信号を検出し、第２センサ信号を生成する第２光センサを含み、
前記コンピュータ部は、前記光センサと前記第２光センサとの間の距離に基づいて、前記命令を発行する、
請求項１〜請求項３の何れか１項に記載の自律移動体ガイダンスシステム。
【請求項１２】
前記命令は、ＰＩＤ（proportional-integral-derivative）計算に基づいて発行される、請求項１１に記載の自律移動体ガイダンスシステム。
【請求項１３】
前記自律移動体は飛行ドローンであり、
前記投影装置は、前記飛行ドローンのベースに配置され、
前記光センサは前記飛行ドローンの底面に配置され、
前記コンピュータ部は、前記飛行ドローンのベースに前記飛行ドローンをガイドする前記命令を発行する、
請求項１〜請求項１２の何れか１項に記載の自律移動体ガイダンスシステム。
【請求項１４】
前記自律移動体は面移動ロボットであり、
前記投影装置は、前記面移動ロボットの充電ステーションの上に配置され、
前記光センサは、前記面移動ロボットの前方上面に配置され、
前記コンピュータ部は、前記充電ステーションに前記面移動ロボットをガイドする前記命令を発行する、
請求項１〜請求項１２の何れか１項に記載の自律移動体ガイダンスシステム。
【請求項１５】
前記面移動ロボットは、さらに、前記面移動ロボットの後方上面に配置された第２光センサを含む、
請求項１４に記載の自律移動体ガイダンスシステム。
【請求項１６】
前記充電ステーションは第１電気端子セットを含み、
前記面移動ロボットは、前記面移動ロボットが前記充電ステーションにドッキングする場合に、前記第１電気端子セットと接触するように設計された第２電気端子セットを含む、
請求項１４または請求項１５に記載の自律移動体ガイダンスシステム。
【請求項１７】
前記充電ステーションの中心軸は、前記投影装置の中心軸と重なる、
請求項１４〜請求項１６の何れか１項に記載の自律移動体ガイダンスシステム。
【請求項１８】
前記自律移動体は自動運転車である、請求項１〜請求項１２の何れか１項に記載の自律移動体ガイダンスシステム。
【請求項１９】
各々の画素の画素座標を含む情報セグメントで符号化された時系列投影光信号を投影装置が投影し、
自律移動体の光センサが前記時系列投影光信号を検出して、対応するセンサ信号を生成し、
前記自律移動体のコンピュータ部が、前記センサ信号を受信して、検出した前記時系列投影光信号に基づいて前記自律移動体の位置を決定し、前記自律移動体の決定された前記位置に基づいて命令を発行する、
自律移動体をガイドする方法。
【請求項２０】
各々の画素の画素座標を含む情報セグメントで符号化された時系列投影光信号を投影装置に投影させ、
自律移動体の光センサに前記時系列投影光信号を検出させ、対応するセンサ信号を生成し、
前記自律移動体のコンピュータ部に、前記センサ信号を受信させ、検出した前記時系列投影光信号に基づいて前記自律移動体の位置を決定し、前記自律移動体の決定された前記位置に基づいて命令を発行する、
ことで自律移動体をガイドする処理を、コンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、自律移動体ガイダンスシステム、自律移動体をガイドする方法、およびプログラムに関する。
【背景技術】
【０００２】
目標物に対する正確な移動は、飛行ドローン及び面移動ロボットにとって極めて重要なタスクの１つである。たとえば目標物として充電器に対する移動を考えた場合には、充電器と正確にドッキングが行えなければ、面移動ロボットおよび飛行ドローンは自身の充電パッドまたは充電端子に辿り付く事ができないし、その後のタスクを行うために自身を自動的に充電することもできない。
【０００３】
従来の目標物への移動制御技術として、例えば、非特許文献１および特許文献１などに開示されているビジョン（カラー）ベースシステムがある。上記システムは、環境の明るさに依存し、位置決定が比較的遅い、などの短所を有する。その他の目標への移動に関連する技術では、機械的な部品に依存し、当該部品は機械的な故障を生じる可能性を有する。例えば、特許文献２〜特許文献４に開示されている他のシステムでは、複雑な領域関係を利用し、位置ガイダンスは正確ではない。また、左および右からの信号と重畳する領域に移動することをロボットに要求する他のシステムの場合には、目標位置に到達する前にロボットは不必要に横方向に移動しなければならない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第２０１０／００１０６７２号
【特許文献２】米国特許第７７２９８０３号
【特許文献３】米国特許第７４８９９８５号
【特許文献４】米国特許第７３９７２１３号
【非特許文献】
【０００５】
【非特許文献１】シルバーマン（Silverman）ら、「もっと長く動き続ける：自律ロボットの再充電テスト（Staying Alive Longer: Autonomous Robot Recharging Put to the Test）」、南カリフォルニア大学ロボット工学および埋め込みシステムセンターテクニカルレポート（University of Southern California Center for Robotics and Embedded Systems (CRES) Technical Report）CRES-03-015、２００３年
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明のシステムおよび方法は、自律移動体が効率的に自身の移動目標を発見することを可能とする。
【課題を解決するための手段】
【０００７】
第１の態様は、自律移動ガイダンスシステムであって、投影される各々の画素の画素座標を含む情報セグメントで符号化された時系列投影光信号を投影する投影装置と、投影された前記時系列投影光信号を検出し、センサ信号を生成する光センサと、前記光センサからセンサ信号を受信し、検出した前記時系列投影光信号に基づいて位置情報を決定し、決定した位置情報に基づいて命令を発行するコンピュータ部を含む自律移動体と、を備える自律移動ガイダンスシステムである。
【０００８】
第２の態様は、第１の態様の自律移動体ガイダンスシステムであって、前記自律移動体の前記コンピュータ部は、前記センサ信号に対応する投影画素を識別することで、前記自律移動体の前記位置情報を決定する。
【０００９】
第３の態様は、第２の態様の自律移動体ガイダンスシステムであって、前記自律移動体の前記位置情報は、前記投影装置に対する前記自律移動体の角度位置を含む。
【００１０】
第４の態様は、第２または第３の態様の自律移動体ガイダンスシステムであって、前記自律移動体は、前記時系列投影光信号を検出し、第２センサ信号を生成する第２光センサを含み、前記自律移動体の前記コンピュータ部は、前記第２センサ信号に対応する第２投影画素を識別することで、前記自律移動体の前記位置情報を決定し、前記位置情報は、さらに、前記自律移動体と前記投影装置との間の距離を含む。
【００１１】
第５の態様は、第４の態様の自律移動体ガイダンスシステムであって、前記自律移動体と前記投影装置との間の距離は、前記光センサと前記第２光センサとの間の距離に基づいて決定される。
【００１２】
第６の態様は、第４または第５の態様の自律移動体ガイダンスシステムであって、前記自律移動体の前記コンピュータ部は、前記自律移動体と前記投影装置との間の決定された距離が予め定められた閾値よりも短い場合、前記自律移動体の速度を低減する。
【００１３】
第７の態様は、第１〜第３の何れかの態様の自律移動体ガイダンスシステムであって、前記自律移動体は、前記時系列投影光信号を検出し、第２センサ信号を生成する第２光センサを含み、前記自律移動体の前記コンピュータ部は前記センサ信号に対応する投影画素および前記第２センサ信号に対応する第２投影画素を識別することで前記自律移動体の向き情報を決定し、前記向き情報は、識別された前記投影画素および前記第２投影画素に基づいて決定される。
【００１４】
第８の態様は、第７の態様の自律移動体ガイダンスシステムであって、前記自律移動体の前記コンピュータ部は、予め定められた向きに前記自律移動体が向くように、第２命令を発行する。
【００１５】
第９の態様は、第８の態様の自律移動体ガイダンスシステムであって、前記自律移動体は複数の電気端子を含み、前記自律移動体が予め定められた向きに向くと、前記自律移動体の複数の前記電気端子は、前記自律移動体の充電が可能となるように、ベースの複数の第２電気端子と接触する。
【００１６】
第１０の態様は、第１〜第９の何れかの態様の自律移動体ガイダンスシステムであって、前記投影装置によって投影された前記時系列投影光信号は、前記投影装置の画素の各々の画素座標を符号化する複数の光パルスシーケンスを含む。
【００１７】
第１１の態様は、第１〜第３の何れかの態様の自律移動体ガイダンスシステムであって、前記自律移動体は、前記時系列投影光信号を検出し、第２センサ信号を生成する第２光センサを含み、前記コンピュータ部は、前記光センサと前記第２光センサとの間の距離に基づいて、前記命令を発行する。
【００１８】
第１２の態様は、第１１の態様の自律移動体ガイダンスシステムであって、前記命令は、ＰＩＤ（proportional-integral-derivative）計算に基づいて発行される。
【００１９】
第１３の態様は、第１〜第１２の何れかの態様の自律移動体ガイダンスシステムであって、前記自律移動体は飛行ドローンであり、前記投影装置は、前記飛行ドローンのベースに配置され、前記光センサは前記飛行ドローンの底面に配置され、前記コンピュータ部は、前記飛行ドローンのベースに前記飛行ドローンをガイドする前記命令を発行する。
【００２０】
第１４の態様は、第１〜第１２の何れかの態様の自律移動体ガイダンスシステムであって、前記自律移動体は面移動ロボットであり、前記投影装置は、前記面移動ロボットの充電ステーションの上に配置され、前記光センサは、前記面移動ロボットの前方上面に配置され、前記コンピュータ部は、前記充電ステーションに前記面移動ロボットをガイドする前記命令を発行する。
【００２１】
第１５の態様は、第１４の態様の自律移動体ガイダンスシステムであって、前記面移動ロボットは、さらに、前記面移動ロボットの後方上面に配置された第２光センサを含む。
【００２２】
第１６の態様は、第１４または第１５の態様の自律移動体ガイダンスシステムであって、前記充電ステーションは第１電気端子セットを含み、前記面移動ロボットは、前記面移動ロボットが前記充電ステーションにドッキングする場合に、前記第１電気端子セットと接触するように設計された第２電気端子セットを含む。
【００２３】
第１７の態様は、第１４〜第１６の何れかの態様の自律移動体ガイダンスシステムであって、前記充電ステーションの中心軸は、前記投影装置の中心軸と重なる。
【００２４】
第１８の態様は、第１〜第１２の何れかの態様の自律移動体ガイダンスシステムであって、前記自律移動体は自動運転車である。
【００２５】
第１９の態様は、自律移動体をガイドする方法であって、各々の画素の画素座標を含む情報セグメントで符号化された時系列投影光信号を投影装置が投影し、自律移動体の光センサが前記時系列投影光信号を検出して、対応するセンサ信号を生成し、前記自律移動体のコンピュータ部が、前記センサ信号を受信して、検出した前記時系列投影光信号に基づいて前記自律移動体の位置を決定し、前記自律移動体の決定された前記位置に基づいて命令を発行する。
【００２６】
第２０の態様は、プログラムであって、各々の画素の画素座標を含む情報セグメントで符号化された時系列投影光信号を投影装置に投影させ、自律移動体の光センサに前記時系列投影光信号を検出させ、対応するセンサ信号を生成し、前記自律移動体のコンピュータ部に、前記センサ信号を受信させ、検出した前記時系列投影光信号に基づいて前記自律移動体の位置を決定し、前記自律移動体の決定された前記位置に基づいて命令を発行する、ように自律移動体をガイドする処理をコンピュータに実行させる。
【発明の効果】
【００２７】
本発明のシステムおよび方法は、自律移動体が効率的に自身の移動目標を発見することを可能とする。
【図面の簡単な説明】
【００２８】
【図１】飛行ドローンのドッキングまたはランディングガイダンスシステムの例示的な実施形態を示す。
【図２Ａ】投影装置によって生成される時系列符号化光信号を例示する。
【図２Ｂ】投影装置によって生成される時系列符号化光信号を例示する。
【図３】飛行ドローンがベースに近付くと、飛行ドローンの搭載コンピュータが検出するｘは大きくなり、したがって、ベースとの距離の値を決定する解像度がより上がる。
【図４】投影面の２つの投影画素を例示する。
【図５】飛行ドローンの向き推定手続を例示する。
【図６】面移動ロボットまたは自動運転車を再充電ステーションにガイドするシステムの例示的な実施形態を示す。
【図７】面移動ロボットの前方光センサおよび後方光センサで受信される２つの異なる光符号に対応する２つの異なる投影画素を例示する。
【図８】符号化光を使用して、飛行ドローン、面移動ロボットまたは自動運転車などの自律移動体がベースにランディングまたはドッキングするプロセスの動作シーケンスの例示的な実施形態を示す。
【図９】本開示のガイダンス技術を実装するために使用され得る自律移動体の搭載コンピュータの例示的な実施形態を示す。
【発明を実施するための形態】
【００２９】
本開示の実施形態は、関連技術のドッキングシステムと関連する上記および他の問題の一つまたは複数を実質的に取り除くシステムおよび方法に関する。
【００３０】
本開示に関連する他の態様の一部分は、以下の説明において記載され、他の一部分は以下の説明から明らかであるか、本開示の実行によって明らかとなる。本開示の態様は、以下で説明される構成要素および様々な構成要素の組み合わせによって実現され、達成される。
【００３１】
以上および以下の説明は例示的なものであり、本開示を限定することを意図していない。
【００３２】
添付の図面は、本開示の原理を説明し、例示する役割を担う。
【００３３】
以下の詳細な説明において、添付図面を参照する。添付図面において、同じ機能を有する構成要素には同様の参照符号を付す。添付図面は例示のためのものであり、限定するためのものではない。特定の実施形態および実装は本開示の原理と矛盾しない。これらの実装は、当業者が本開示を実行することができる程度に十分詳細に説明されている。他の実装も利用することができ、本開示の範囲および思想から乖離することなく、構造的な変更および／または様々な構成要素の置き換えが可能である。したがって、以下の詳細な説明は、限定的に解釈されるべきではない。また、本開示の様々な構成要素は、汎用目的コンピュータで稼動するソフトウェアの形態で実装されてもよいし、特定用途ハードウェアの形態で実装されてもよいし、ソフトウェアおよびハードウェアの組み合わせで実装されてもよい。
【００３４】
実施形態の一態様によれば、符号化光を使用する、飛行ドローンや面移動ロボットなど（まとめて「自律移動体」ともいう）の正確な目標物への移動、たとえば自律移動体と他の装置とのドッキングのための移動をガイドするためのシステムおよび方法が提供される。詳細には、一つまたは複数の実施形態において、システムは投影装置の一例であるプロジェクタを使用して、画素投影によって分割された空間の時系列識別子を投影する。異なる分割空間は、異なる識別子に関連付けられる。飛行ドローンまたは面移動ロボットに簡易な光センサを取り付け、検知した光信号を復号することで、飛行ドローンまたは面移動ロボットは空間における正確な位置を決定することができる。この情報を、飛行ドローンまたは面移動ロボットの移動目標物に対する正確なドッキングのために使用することができる。要求されるドッキングの正確さに依存して、異なる解像度を有するプロジェクタを使用することで、符号化光の正確さを調整することができる。
【００３５】
飛行ドローンのためのドッキングまたはランディングガイダンスシステム１００の例示的な実施形態を図１に示す。ドッキングまたはランディングガイダンスシステム１００において、光源（プロジェクタ１０１）は駐車場の床１０２の下に配置され、光源は駐車場の床１０２の穴１０３を通して光を投影する。一つまたは複数の実施形態において、穴１０３は、飛行ドローン、自動運転車、または面移動ロボットの（図示しない）移動目標物であるベースに、または、飛行ドローン、自動運転車、または面移動ロボットの移動目標物であるベースの近くに配置されてもよい。
【００３６】
これによれば、空間全体（例えば、駐車場の床１０２の上の半球）が、プロジェクタ１０１の異なる画素に対応する立体角に基づいて分割される。プロジェクタの画素の各々の光信号は固有のデジタル符号で調整される。実施形態の１つでは、ドッキングまたはランディングガイダンスシステム１００はグレーコードとも呼ばれる既知の２次元ＲＢＣ（reflected binary code）を使用してもよい。２次元ＲＢＣにおいて、２つの連続する値は１ビット（binary digit）だけ異なり、これにより、デジタル通信におけるエラーの修正が容易となる。プロジェクタの光信号の調整は、固有の時系列パルスシーケンスを割り当てられているプロジェクタの画素の各々で、光パルスシーケンスを使用して実行されてもよい。上記光パルスシーケンスが既知の光度センサを使用して検知される場合、処理ユニットは受信した固有のデジタル符号を復号するようにプログラムされ、その結果として、対応するプロジェクタの画素を固有に識別することで、プロジェクタに関して上記光センサの角度位置の情報を提供する。
【００３７】
図２Ａおよび図２Ｂは、プロジェクタ１０１によって生成される２つの時系列符号化光信号２０１および２０５を例示する。実施形態の１つにおいて、プロジェクタ１０１は既知のＤＬＰプロジェクタである。時系列符号化光信号２０１および２０５は、プロジェクタ１０１の２つの異なる画素２０３および２０７に対応する。方向２０２に伝播する時系列符号化光信号２０１は、対応する時系列光パルスの第１固有シーケンスを使用して、第１投影画素２０３の固有位置情報で符号化される。一方、方向２０６を伝播する時系列光信号２０５は、時系列光パルスの第２固有シーケンスを使用して、第２投影画素２０７の固有位置情報で符号化される。図２Ａおよび図２Ｂにおいて、投影画素２０３および２０７を、対応する投影によって、仮想投影面２０４に例示する。光パルスの第１および第２シーケンスは異なり、各々の投影画素に関する情報を搬送する。
【００３８】
一つまたは複数の実施形態において、図１に示すように、２つの光センサ１０４および１０５を飛行ドローン１０６の底部に配置する。様々な実施形態において、飛行ドローン１０６は、図１に例示するクワドコプターなどのマルチコプターであってよい。しかしながら、他の実施形態は異なる数または異なる位置の光センサを使用してもよい。例えば、複数の光センサを使用してもよく、例えば、飛行ドローン１０６の４つの側部に４つの光センサが配置されていてもよい。したがって、プロジェクタ１０１によって出射される符号化光信号を検出するために適した何れか他の適した数および／または位置の光センサが使用されてもよい。図１では、飛行ドローン１０６が符号化光信号を受信する例について示しているが、同様の概念を自動運転車および／または面移動ロボットに適用することができる。したがって、本開示は、飛行ドローンに限定されず、何れか他のタイプの移動体のドッキングまたはガイダンスに使用されてもよい。面移動ロボットを含む例示的な実施形態については以下で説明する。
【００３９】
様々な実施形態において、光センサ１０４および１０５は、既知の光ダイオードまたは光トランジスタなどの光度センサであってよい。光センサ１０４および１０５の厳密な設計は本開示の概念にとって重要ではなく、既知の、または今後開発される光センサの何れかをプロジェクタ１０１からの符号化光を検出するために使用することができる。一つまたは複数の実施形態において、プロジェクタ１０１の光源と飛行ドローンの光センサ１０４および１０５との間に障害物が存在しない場合、これらの２つの光センサ１０４および１０５は、プロジェクタ１０１によって送信されるデジタル符号調整光を受信する。即ち、光センサ１０４および１０５は、プロジェクタ１０１の特定の一つまたは複数の画素に対応する光パルスを検出する。一方、飛行ドローン、自動運転車、または面移動ロボットの搭載コンピュータは、光センサ１０４および１０５の出力を使用して、対応するプロジェクタの画素符号を復号し、プロジェクタ１０１に関して、飛行ドローン、自動運転車または面移動ロボットの正確な位置を判定してもよい。
【００４０】
プロジェクタ１０１によって出射される光信号の画素の各々は固定かつ固有のシーケンシャル（時系列）符号で変調されるので、飛行ドローン１０６の搭載コンピュータは光センサ１０４または１０５の１つから符号を受信すると、プロジェクタ１０１に関して角度位置を判定することができる。また、プロジェクタの光信号に埋め込まれた符号および立体角の間の対応は予め定められているため、飛行ドローン１０６の搭載コンピュータは受信した符号を使用して、プロジェクタ１０１に対する飛行ドローン、自動運転車または面移動ロボットの方向（進行方向）を容易に判定し、飛行ドローンのプロペラ、自動運転車または面移動ロボットのドライブトレーンを調整し、プロジェクタ１０１に対してまっすぐ移動させる。受信した符号に基づいて、飛行ドローン１０６の搭載コンピュータは、予め定められた投影パターンによって、近傍の投影画素に対応する近傍の空間領域の符号を判定してもよい。
【００４１】
一つまたは複数の実施形態において、光源（プロジェクタ）１０１への飛行（または移動）プロセスの間、飛行ドローン１０６は、光センサ１０４および１０５を使用して受信したプロジェクタ光符号を周期的にチェックする。また、飛行ドローン１０６は、検出した現在の角度とオリジナルの角度との間の角度誤差を測定し、ＰＩＤ（proportional-integral derivative）ランディング制御システムを使用して、ベースへの飛行（移動）経路を調整してもよい。これによれば、飛行ドローン１０６は、充電のためにベースに戻ることを決定した場合、ベースまで光線に従うことができる。飛行ドローンガイダンスシステムにおいて、このアプローチは、空中におけるプランニングの不明瞭さを取り除くことができる。
【００４２】
飛行ドローン１０６の２つの光センサ１０４と１０５との間の距離は固定であり、既知であるため、ベース面が駐車場の面１０２と平行であると仮定すると、飛行ドローン、自動運転車、または面移動ロボットがベースに近付くにしたがって、飛行ドローン１０６からベースまでの距離を計算することができる。２つの光センサ１０４および１０５が２つの異なる投影画素から異なる符号を受信した場合、これらの２つのセンサ１０４と１０５との間の角度を推定することができる。飛行ドローンからベースまでの直線と床１０２との間の角度がθであり、飛行ドローン１０６の２つの光センサの間の距離がｙであり、プロジェクタの投影画素の間の距離がｘであり（ｘは受信した２つの符号によって決定され得る）、投影面とレンズとの間の距離がｄであると仮定すると、飛行ドローン１０６からベースへの距離は以下の式によって計算することができる。
D=(y*d)/(x*sinθ)
【００４３】
実施形態の１つにおいて、この距離は、飛行ドローン１０６の上記ＰＩＤランディング制御システムへの誤差入力として使用される。飛行ドローン１０６の（コンピュータ部の一例である）搭載コンピュータは、滑らかなランディングのために、上記誤差が徐々に低減すると、飛行ドローン１０６のランディング速度を徐々に低減するようにプログラムされていてもよい。飛行ドローン１０６の搭載コンピュータは複数の距離閾値でプログラムされ、これらの距離閾値とベースまでの決定された距離とを比較してもよい。距離が閾値より短い場合、速度は適切に低減される。
【００４４】
図３によれば、飛行ドローン１０６がベースに近付く程、飛行ドローン１０６の搭載コンピュータが検出するｘは大きくなり、したがって、距離Ｄの値を決定するための解像度はより上がり得る。この特徴は、飛行ドローン１０６の滑らかで正確なランディングのために極めて有用である。
【００４５】
ベースへの距離を計測することに加えて、飛行ドローン１０６の２つの光センサ１０４および１０５は、飛行ドローン１０６のベース面が実質的に床と平行である場合、飛行ドローン１０６の向きに関する情報も提供する。詳細には、飛行ドローン１０６の搭載コンピュータは２つの光センサ１０４および１０５から受信した２つの符号を使用して、投影面の対応画素を決定することができる。図４は、投影面４０３の２つの画素４０１および４０２を例示する。投影面４０３のこれらの２つの画素４０１および４０２は、飛行ドローン１０６の向きを推定するために使用され、推定された向きは飛行ドローン１０６のベースに配置された充電端子の向きと比較されてもよい。飛行ドローン１０６がベースに近付くにしたがって、飛行ドローン１０６に符号を送る２つの画素の間の距離はより長くなる。これは、飛行ドローン１０６の向きをより正確に推定するために有用である。推定された向きは、次に、図５に示すように、充電端子５０１および５０２の向きと比較される。図５に示すように、飛行ドローン１０６の脚５０３および５０４と充電端子５０１および５０２とを正確に位置合わせするために、ランディング制御システムと同様に、上記向きの誤差は、ＰＩＤ制御システムに入力されてもよい。飛行ドローン１０６が充電端子５０１および５０２に脚５０３および５０４をランディングさせると、システムは脚５０３および５０４の内部に配置された配線を介して、飛行ドローン１０６のバッテリに充電することができる。
【００４６】
ベースに配置されたプロジェクタ１０１および飛行ドローン１０６に搭載された光センサ１０４および１０５がどのように、光線によって飛行ドローン１０６のランディングをガイドするかについて説明した。飛行ドローン１０６とベースとの間の距離をどのように推定し、滑らかなランディングのために飛行ドローン１０６の速度を調整するために計測値をどのように使用するかについても説明した。また、飛行ドローン１０６の向きを推定するために２つの光センサ１０４および１０５をどのように使用するか、飛行ドローン１０６を再充電するために充電端子に飛行ドローン１０６の導電性の脚がランディングするように、向きの誤差およびＰＩＤ制御をどのように使用するかについても説明した。上記説明を変形例として、他の実施形態を以下で説明する。当該他の実施形態では、面移動ロボットまたは自動運転車のドッキングプロセスをガイドするために符号化光を使用する。
【００４７】
図６は、面移動ロボットまたは自動運転車６０１を移動目標物である再充電ステーション６０４にガイドするシステム６００の実施形態を例示する。システム６００において、プロジェクタ１０１は天井６０２に、または、天井６０２の上に配置される。例えば、実施形態の一つにおいて、プロジェクタ１０１は、天井６０２の穴６０３を通して下に向けて符号化光を投影するように配置されてもよい。図６に示される実施形態において、プロジェクタ１０１の真下の床６０５に円筒形充電ステーション６０４が配置され、円筒形ステーションの中心軸６０６はプロジェクタ１０１の光軸と位置合わせされる。充電ステーション６０４の外側には、面移動ロボットまたは自動運転車６０１を充電する突出ディスク端子６０７および６０８が存在する。実施形態の一つにおいて、面移動ロボットまたは自動運転車６０１は上面に２つの光センサ６１０および６１１を有し、センサの一方６１０は面移動ロボットまたは自動運転車６０１の前方に近く、センサの他方６１１は後方に近い。実施形態の一つにおいて、面移動ロボットまたは自動運転車６０１は、２つの窪みに各々配置された端子６１２および６１３を有し、図６に示すように、端子６１２および６１３の床６０２からの高さは、充電ステーション６０４の対応する突出ディスク端子６０７および６０８の床６０２からの高さと同じである。面移動ロボットまたは自動運転車６０１が充電ステーション６０４に到達すると、面移動ロボットまたは自動運転車６０１の窪みに配置された端子６１２および６１３が、充電ステーション６０４の対応する突出ディスク端子６０７および６０８と接触する。面移動ロボットまたは自動運転車６０１および充電ステーション６０４のための充電端子の多くの他の構成が可能である。したがって、本開示の実施形態は、何れか特定の充電端子の構成に限定されるものではない。
【００４８】
図６に示すシステム６００において、面移動ロボットまたは自動運転車６０１がプロジェクタ１０１の光投影領域内（例えば、視野内）を移動する場合、前方光センサ６１０および後方光センサ６１１は、図７に示すように、プロジェクタ１０１の画素７０１および７０２に各々対応する２つの異なる光符号を受け取る。受け取られた２つの光符号に基づいて、面移動ロボットまたは自動運転車６０１の搭載コンピュータは面移動ロボットまたは自動運転車６０１の進行方向、充電ステーション６０４の方向および面移動ロボットまたは自動運転車６０１から充電ステーション６０４までの距離を計算することができる。上記ＰＩＤ制御によって、充電ステーション６０４へ向かう進行方向を調整することで、面移動ロボットまたは自動運転車６０１は、前方が充電ステーション６０４に向かうように滑らかにガイドすることができる。また、面移動ロボットまたは自動運転車６０１の前方と充電ステーション６０４との間の距離に関する情報を使用して、面移動ロボットまたは自動運転車６０１は、充電ステーション６０４との接触が可能な限り滑らかになるように、充電ステーション６０４に近付くにしたがって、充電ステーション６０４に向かう移動速度を動的に調整（徐々に低減）することができる。
【００４９】
図８は、符号化光を使用して、飛行ドローン、自動運転車または面移動ロボットなどの自律移動体がベースにランディングまたはドッキングするプロセスの動作シーケンス８００の例示的な実施形態を示す。ステップ８０１で、プロジェクタを使用して、時系列投影光信号を投影する。時系列投影光信号は、プロジェクタの画素の各々について、プロジェクタの画素の各々の画素座標を含む情報セグメントで符号化されている。ステップ８０２で、ガイドされている自律移動体の一つまたは複数の光センサを使用して、投影光信号を検出する。ステップ８０３で、自律移動体の搭載コンピュータは、検出した投影光信号を復号し、ベースに対する自律移動体の位置を決定する。ステップ８０４で、自律移動体の搭載コンピュータは、ベースに対する自律移動体の決定された位置に基づいて、自律移動体のドライブトレーンの飛行制御システムに対して命令（コマンド）を発行する。命令を使用して、自律移動体の軌跡を修正してもよい。自律移動体とベースとの間の距離が予め定められている長さ以下であれば、ステップ８０５で、自律移動体の搭載コンピュータは命令を発行し、滑らかにドッキングするために、自律移動体の速度を低減してもよい。その後、ドッキングが実行されるまで、上記プロセスを繰り返す。
「搭載コンピュータシステムの例示的な実施形態」
【００５０】
図９は、本開示のガイド技術を実装するために使用することができる自律移動体の搭載コンピュータ９００の例示的な実施形態を示す。一つまたは複数の実施形態において、搭載コンピュータ９００は、携帯情報処理デバイスのフォームファクターで実装されてもよい。代替的な実施形態において、搭載コンピュータ９００は、ラップトップまたはノートブックコンピュータに実装されてもよい。さらに代替的な実施形態において、搭載コンピュータ９００は特定用途計算処理システム、詳細には飛行ドローン、面移動ロボットまたは自動運転車のために設計された計算処理システムであってもよい。
【００５１】
搭載コンピュータ９００は、搭載コンピュータ９００の様々なハードウェア構成要素をわたって、および、様々なハードウェア構成要素の間で、情報を伝達するためのデータバス９０４または他の相互接続または通信機構、および、情報を処理し、他の計算処理および制御タスクを実行するために、データバス９０４に接続されている中央処理ユニット（ＣＰＵまたは単にプロセッサ）９０１を含んでいてもよい。搭載コンピュータ９００は、様々な情報およびプロセッサ９０１で実行される命令を記憶するために、データバス９０４に接続されているランダムアクセスメモリ（ＲＡＭ）または他のダイナミックストレージデバイスなどのメモリ９１２を含む。メモリ９１２は、磁気ディスク、光ディスク、ソリッドステートフラッシュメモリデバイスまたは他の不揮発性ソリッドステートストレージデバイスなどの永続的なストレージデバイスを含んでいてもよい。
【００５２】
一つまたは複数の実施形態において、メモリ９１２はプロセッサ９０１による命令の実行の間の一時的変数または他の中間情報を記憶するために使用されてもよい。必須ではないが、搭載コンピュータ９００は、さらに、搭載コンピュータ９００の動作に必要なファームウェア、ＢＩＯＳ（basic input-output system）、搭載コンピュータ９００の様々な構成パラメータなどのプロセッサ９０１のための静的な情報および、命令を記憶するために、データバス９０４に接続されているリードオンリーメモリ（ＲＯＭまたはＥＰＲＯＭ）９０２または他のスタティックストレージデバイスを含んでいてもよい。
【００５３】
一つまたは複数の実施形態において、搭載コンピュータ９００は、さらに、プロジェクタ１０１によって生成される符号化光信号を検出する２つの光度（光）センサ９０９および９１０を含むことができる。実施形態の一つにおいて、光度センサ９０９および９１０は応答時間が高速であり、高頻度で位置検出を行うことができる。また、搭載コンピュータ９００は、ドライブトレーンまたは飛行制御インターフェイス９０３を含み、飛行ドローンのプロペラまたは面移動ロボットまたは自動運転車のドライブトレーンを制御することができる。
【００５４】
一つまたは複数の実施形態において、搭載コンピュータ９００は、また、データバス９０４に接続されているネットワークインターフェイス９０５などの通信インターフェイスを含んでいてもよい。ネットワークインターフェイス９０５は、ＷｉＦｉインターフェイス（アダプタ）９０７および携帯電話ネットワーク（ＧＳＭ（登録商標）またはＣＤＭＡ）アダプタ９０８の少なくとも一つを使用して、搭載コンピュータ９００とインターネット９２４との間の接続を確立するように構成されていてもよい。ネットワークインターフェイス９０５は、搭載コンピュータ９００とインターネット９２４との間の双方向データ通信を提供するように構成されていてもよい。ＷｉＦｉインターフェイス９０７は、８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇおよび／または８０２．１１ｎプロトコル、およびＢｌｕｅｔｏｏｔｈ（登録商標）プロトコルに準拠して動作することができる。例示的な実装において、ＷｉＦｉインターフェイス９０７および携帯電話ネットワーク（ＧＳＭまたはＣＤＭＡ）アダプタ９０８は様々なタイプの情報を表すデジタルデータストリームを搬送する電気または電磁信号を送受信する。
【００５５】
一つまたは複数の実施形態において、インターネット９２４は、一般的に、一つまたは複数のサブネットワークを介した他のネットワークリソースへのデータ通信を提供する。したがって、搭載コンピュータ９００は、インターネット９２４のどこかに配置されている、遠隔メディアサーバ、ウェブサーバ、他のコンテンツサーバ、ネットワークデータストレージリソースなどの様々なネットワークリソースにアクセスすることができる。一つまたは複数の実施形態において、搭載コンピュータ９００は、ネットワークインターフェイス９０５を介して、メッセージ、メディアおよびアプリケーションプログラムコードを含む他のデータを送受信する。インターネットの例において、搭載コンピュータ９００がネットワーククライアントとして動作する場合、搭載コンピュータ９００は、搭載コンピュータ９００で実行するアプリケーションプログラムのコードまたはデータを要求することができる。同様に、搭載コンピュータ９００は、他のネットワークリソースに様々なデータまたはコンピュータコードを送信することができる。
【００５６】
一つまたは複数の実施形態において、本開示の機能は、メモリ９１２に含まれる一つまたは複数の命令の一つまたは複数のシーケンスを実行するプロセッサ９１２に応答して、搭載コンピュータ９００によって実装される。命令は、他のコンピュータ可読媒体からメモリ９１２に読み込まれてもよい。メモリ９１２に含まれる命令のシーケンスを実行することで、プロセッサ９０１は、本開示の様々なプロセスステップを実行する。代替的な実施形態において、ソフトウェア命令に代えて、または、ソフトウェア命令と共に、ハードウェア回路を使用して本開示の実施例を実装してもよい。したがって、本開示の実施形態は、ハードウェア回路およびソフトウェア命令の何れか特定の組み合わせに限定されない。
【００５７】
「コンピュータ可読媒体」との用語は、プロセッサ９０１に実行するための命令を提供することに関与する任意の媒体を表す。コンピュータ可読媒体は機械可読媒体の一例に過ぎず、本開示の方法および／または技術の何れかを実装する命令を搬送することができる。媒体は、多くの形態を採ることができ、不揮発性媒体および揮発性媒体を含むことができるが、これらに限定されない。
【００５８】
非一時的コンピュータ可読媒体の一般的な形態は、例えば、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープ、または何れか他の磁気媒体、ＣＤ−ＲＯＭ、何れか他の光媒体、パンチカード、紙テープ、孔パターンを含む何れか他の物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュＥＰＲＯＭ、フラッシュドライブ、メモリカード、何れか他のメモリチップまたはカートリッジ、または、コンピュータが読み取ることができる何れか他の媒体を含む。コンピュータ可読媒体の様々な形態は、実行のためにプロセッサ９０１に一つまたは複数の命令の一つまたは複数のシーケンスを搬送することに関与してもよい。例えば、当初、命令は、遠隔のコンピュータから磁気ディスクに搬送されてもよい。代替的に、遠隔のコンピュータは、ダイナミックメモリに命令をロードし、インターネット９２４を介して、命令を送信してもよい。詳細には、コンピュータの命令は、様々なネットワークデータ通信プロトコルを使用して、インターネット９２４を介して、遠隔のコンピュータから搭載コンピュータ９００のメモリ９１２にダウンロードされてもよい。
【００５９】
一つまたは複数の実施形態において、搭載コンピュータ９００のメモリ９１２は、以下のソフトウェアプログラム、アプリケーション、および／またはモジュールを保存していてもよい。
【００６０】
１．オペレーティングシステム（ＯＳ）９１３。オペレーティングシステム（ＯＳ）９１３は、基本システムサービスを実装し、搭載コンピュータ９００の様々なハードウェア構成要素を管理する携帯オペレーティングシステムであってよい。オペレーティングシステム９１３の例示的な実施形態は、現在知られているまたは今後開発される携帯オペレーティングシステムを含み得る。また、ネットワークインターフェイス９０５を使用してネットワーク通信を可能にするネットワーク通信モジュール９１４が提供されてもよい。
【００６１】
２．ソフトウェアモジュール９１５。ソフトウェアモジュール９１５は、例えば、搭載コンピュータ９００のプロセッサ９０１で実行されるソフトウェアモジュールセットを含むことができ、例えば、飛行／移動制御モジュール９１６およびドッキングガイダンスモジュール９１７に示すように、ベースにドッキングまたはランディングするように、面移動ロボット、自動運転車または飛行ドローンのドライブトレーンまたは飛行制御に命令を発行するなどの予め定められている機能を、搭載コンピュータ９００に実行させる。
【００６２】
３．データストレージ９１８。データストレージ９１８は、例えば、パラメータおよび閾値ストレージ９１９に示すように、上記計算を行うために必要な、プロジェクタ１０１の様々なパラメータなどの、様々なパラメータを記憶するために、使用され得る。また、データストレージ９１８は、パラメータおよび閾値ストレージ９１９に示すように、飛行ドローンのドッキング速度を徐々に低減するための距離閾値を複数記憶していてもよい。
【００６３】
最後に、本開示のプロセスおよび技術は何れか特定の装置に固有に関連するものではなく、構成要素の何れか適切な組み合わせで実装され得る。また、様々なタイプの汎用目的デバイスが本開示の技術にしたがって使用されてもよい。本開示の方法のステップを実行するために特定用途装置を構築してもよい。本開示は、特定の例に関連して説明されたが、例示を意図しており、限定を意図していない。ハードウェア、ソフトウェア、およびファームウェアの多くの異なる組み合わせが、本開示を実行するために適している。例えば、本開示のソフトウェアは、アセンブラ、Ｃ／Ｃ＋＋、オブジェクティブＣ、ｐｅｒｌ、ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（登録商標）、現在知られているまたは今後開発される何れかのプログラム言語またはスクリプト言語などの様々なプログラム言語またはスクリプト言語で実装され得る。
【００６４】
また、本開示の他の実装は、本開示の詳細および実行から明らかである。上記実施形態の様々な形態および／または構成要素は、飛行ドローン、自動運転車および面移動ロボットなどの自律移動体のランディングまたはドッキングに符号化光を使用するシステムおよび方法において、単独でまたは組み合わせて使用され得る。
【符号の説明】
【００６５】
１０１  プロジェクタ
１０４  光センサ
１０５  光センサ
１０６  飛行ドローン
６０１  面移動ロボットまたは自動運転車
６１０  光センサ
６１１  光センサ
９００  搭載コンピュータ
９０１  プロセッサ
９１２  メモリ
【図１】
2017162435.tif 000003
【図２Ａ】
2017162435.tif 000004
【図２Ｂ】
2017162435.tif 000005
【図３】
2017162435.tif 000006
【図４】
2017162435.tif 000007
【図５】
2017162435.tif 000008
【図６】
2017162435.tif 000009
【図７】
2017162435.tif 000010
【図８】
2017162435.tif 000011
【図９】
2017162435.tif 000012