(57)【要約】【課題】粗い粒度及び細かい粒度の両方で、移動ロボットのリアルタイム屋内位置情報を検出する。【解決手段】本開示の移動体の屋内位置検出システムは、時間軸に沿ったプロジェクタ光信号を投影するプロジェクタと、前記時間軸に沿ったプロジェクタ光信号を検出し、センサ信号を生成する光センサと、センサノード識別子及び前記センサ信号に基づいて生成される位置コードを送信する送信部と、を含む静止センサノードと、前記送信部から送信される前記センサノード識別子及び前記位置コードを受信する受信部と、前記移動体に搭載され、前記プロジェクタ及び前記受信部に接続されている搭載コンピュータと、を含む。プロジェクタ光信号は、プロジェクタの各画素について、画素座標を含む情報セグメントで符号化され、移動体の位置情報は、センサノード識別子及び位置コードに基づいて判定される。【選択図】図１Ａ
2017211975.tif 000002
【特許請求の範囲】
【請求項１】
移動体に搭載され、時間軸に沿ったプロジェクタ光信号を投影するプロジェクタであって、前記プロジェクタの各画素について、前記プロジェクタの各画素の画素座標を含む情報セグメントで前記時間軸に沿ったプロジェクタ光信号を符号化する、前記プロジェクタと、
前記時間軸に沿ったプロジェクタ光信号を検出し、センサ信号を生成する光センサと、センサノード識別子及び前記センサ信号に基づいて生成される位置コードを送信する送信部と、を含む静止センサノードと、
前記移動体に搭載され、前記送信部から送信される前記センサノード識別子及び前記位置コードを受信する受信部と、
前記移動体に搭載され、前記プロジェクタ及び前記受信部に接続されている搭載コンピュータであって、前記搭載コンピュータは、前記受信部から前記センサノード識別子及び位置コードを受信し、受信した前記センサノード識別子及び前記位置コードに基づいて前記移動体の位置情報を判定する、前記搭載コンピュータと、
を含む、移動体の屋内位置検出及びナビゲーションシステム。
【請求項２】
前記静止センサノードは、天井に固定的に装着されている、請求項１に記載の屋内位置検出及びナビゲーションシステム。
【請求項３】
前記移動体の前記搭載コンピュータは、前記位置コードに対応するプロジェクタ画素を識別することで、前記移動体の前記位置情報を判定する、請求項１または請求項２に記載の屋内位置検出及びナビゲーションシステム。
【請求項４】
前記移動体の前記搭載コンピュータは、受信した前記センサノード識別子を使用してリモートサーバに問い合わせ、前記リモートサーバから、受信した前記センサノード識別子に対応するノード位置を受信することで、前記移動体の前記位置情報を判定する、
請求項１または請求項２に記載の屋内位置検出及びナビゲーションシステム。
【請求項５】
前記移動体の前記搭載コンピュータは、前記リモートサーバから受信した前記ノード位置を前記位置コードに基づいて生成される第２位置と組み合わせることで、前記移動体の前記位置情報を判定する、
請求項４に記載の屋内位置検出及びナビゲーションシステム。
【請求項６】
前記静止センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し、第２センサ信号を生成する第２光センサを含み、
前記送信部は、さらに、前記第２センサ信号に基づいて生成される第２位置コードを送信し、
前記移動体の前記搭載コンピュータは前記第２位置コードに対応する第２プロジェクタ画素を識別することで前記移動体の前記位置情報を判定する、
請求項１〜請求項５の何れか１項に記載の屋内位置検出及びナビゲーションシステム。
【請求項７】
前記静止センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し、第２センサ信号を生成する第２光センサを含み、
前記送信部は、さらに、前記第２センサ信号に基づいて生成される第２位置コードを送信し、
前記移動体の前記搭載コンピュータは前記位置情報及び前記第２位置コードに基づいて前記移動体の方向情報を判定する、
請求項１〜請求項６の何れか１項に記載の屋内位置検出及びナビゲーションシステム。
【請求項８】
前記プロジェクタによって投影される前記時間軸に沿ったプロジェクタ光信号は、前記プロジェクタの各画素の画素座標を符号化する複数の光パルスシーケンスを含む、
請求項１〜請求項７の何れか１項に記載の屋内位置検出及びナビゲーションシステム。
【請求項９】
前記移動体の前記搭載コンピュータは、前記移動体の軌跡誤差を算出し、算出された前記軌跡誤差を使用してＰＩＤ（proportional-integral-derivative）計算に基づいてガイダンスコマンドを発行する、
請求項１〜請求項８の何れか１項に記載の屋内位置検出及びナビゲーションシステム。
【請求項１０】
前記搭載コンピュータは、複数の静止センサノードの位相的関係を含むマップを維持する、
請求項１〜請求項９の何れか１項に記載の屋内位置検出及びナビゲーションシステム。
【請求項１１】
前記搭載コンピュータは、前記マップ及びゴールシーケンス情報に基づいてガイダンス命令を発行する、請求項１０に記載の屋内位置検出及びナビゲーションシステム。
【請求項１２】
前記ゴールシーケンス情報は、順序付けされた複数の静止センサノードを含む、請求項１１に記載の屋内位置検出及びナビゲーションシステム。
【請求項１３】
前記ゴールシーケンス情報を構築し、前記移動体の前記搭載コンピュータに前記ゴールシーケンス情報を送信するグローバルナビゲーションモジュールを実行するサーバを、さらに含む、
請求項１１または請求項１２に記載の屋内位置検出及びナビゲーションシステム。
【請求項１４】
前記プロジェクタ及び受信部は、前記移動体の上部に配置されている、請求項１〜請求項１３の何れか１項に記載の屋内位置検出及びナビゲーションシステム。
【請求項１５】
前記静止センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し第２センサ信号を生成する第２光センサをさらに含み、
送信される前記位置コードは、さらに、前記第２センサ信号に基づく、
請求項１〜請求項１４の何れか１項に記載の屋内位置検出及びナビゲーションシステム。
【請求項１６】
前記静止センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し第３センサ信号を生成する第３光センサをさらに含み、
送信される前記位置コードは、さらに、前記第３センサ信号に基づく、
請求項１５に記載の屋内位置検出及びナビゲーションシステム。
【請求項１７】
移動体に搭載されるプロジェクタが、時間軸に沿ったプロジェクタ光信号を投影し、
前記時間軸に沿ったプロジェクタ光信号は、前記プロジェクタの各画素について、前記プロジェクタの各画素の画素座標を含む情報セグメントで符号化され、
静止センサノードの光センサが、前記時間軸に沿ったプロジェクタ光信号を検出し、センサ信号を生成し、
静止センサノードの送信部が、センサノード識別子及び前記センサ信号に基づいて生成される位置コードを送信し、
前記移動体に搭載された受信部が、前記送信部から送信される前記センサノード識別子及び前記位置コードを受信し、
前記移動体に搭載され、前記プロジェクタ及び前記受信部に接続された搭載コンピュータが、前記受信部から前記センサノード識別子及び前記位置コードを受信し、受信した前記センサノード識別子及び前記位置コードに基づいて前記移動体の位置情報を判定する、
移動体の屋内位置検出及びナビゲーション方法。
【請求項１８】
前記静止センサノードは、天井に固定的に装着されている、請求項１７に記載の屋内位置検出及びナビゲーション方法。
【請求項１９】
前記移動体の前記搭載コンピュータは、前記位置コードに対応するプロジェクタ画素を識別することで前記移動体の前記位置情報を判定する、請求項１７または請求項１８に記載の屋内位置検出及びナビゲーション方法。
【請求項２０】
移動体に搭載されるプロジェクタを使用して、時間軸に沿ったプロジェクタ光信号を投影し、
前記時間軸に沿ったプロジェクタ光信号は、前記プロジェクタの各画素について、前記プロジェクタの各画素の画素座標を含む情報セグメントで符号化され、
前記時間軸に沿ったプロジェクタ光信号を検出し、センサ信号を生成する光センサと、センサノード識別子及び前記センサ信号に基づいて生成される位置コードを送信する送信部と、を含む静止センサノードを使用し、
前記移動体に搭載された受信部を使用して、前記送信部から送信される前記センサノード識別子及び前記位置コードを受信し、
前記移動体に搭載され、前記プロジェクタ及び前記受信部に接続された搭載コンピュータを使用して、前記受信部から前記センサノード識別子及び前記位置コードを受信し、受信した前記センサノード識別子及び前記位置コードに基づいて前記移動体の位置情報を判定する、
移動体の屋内位置検出及びナビゲーション処理をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、移動体の屋内位置検出及びナビゲーションシステム、屋内位置検出及びナビゲーション方法、及び屋内位置検出及びナビゲーションプログラムに関する。
【背景技術】
【０００２】
近年、人及びものを搬送する自律移動ロボットがよく使用されている。しかし、行動計画及び制御の基礎であるとされている移動ロボットのリアルタイム位置検出は、様々な要因（例えば、正確さ、解像度、コストなど）がシステム設計及び現実世界におけるシナリオでの実装に様々な制限を与える、未解決の問題である。一方、公開されている文献で提案されているロボットナビゲーションシステムのほとんどは、特定の構造化された環境に向けて調整されているか、極度に複雑な計算処理によって駆動されている。
【０００３】
上記及び従来技術の他の問題を解決するために、擬似的非構造化環境コンテキストにおける与えられたゴールに向かって、環境に関して利用できる情報が限定されている場合に、ロボットが自律的に移動することができる、ロボットナビゲーションの新規かつ改良されたシステム及び方法が必要とされている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許出願公開第２００９／０３１２８７１号
【非特許文献】
【０００５】
【非特許文献１】オズワルド（Osswald）ら、「ヒューマノイドによる信頼可能効率的ナビゲーションの学習（Learning reliable and efficient navigation with a humanoid）」、 ロボティクス及び自動化（Robotics and Automation (ICRA)）、２０１０年ＩＥＥＥ国際会議（2010 IEEE International Conference）、pp. 2375 ~ pp. 2380
【非特許文献２】スリヨン（Suriyon）ら、「ＱＲコード（登録商標）認識を使用することによるガイドロボットの改良（Development of guide robot by using qr code recognition）」、機械工学に関する第２ＴＳＭＥ会議（The second TSME International Conference on Mechanical Engineering）、 Vol. 21
【発明の概要】
【発明が解決しようとする課題】
【０００６】
粗い粒度及び細かい粒度の両方で、移動ロボットのリアルタイム屋内位置情報を検出することを目的とする。
【課題を解決するための手段】
【０００７】
第１の態様は、移動体の屋内位置検出及びナビゲーションシステムであって、移動体に搭載され、時間軸に沿ったプロジェクタ光信号を投影するプロジェクタであって、前記プロジェクタの各画素について、前記プロジェクタの各画素の画素座標を含む情報セグメントで前記時間軸に沿ったプロジェクタ光信号を符号化する、前記プロジェクタと、前記時間軸に沿ったプロジェクタ光信号を検出し、センサ信号を生成する光センサと、センサノード識別子及び前記センサ信号に基づいて生成される位置コードを送信する送信部と、を含む静止センサノードと、前記移動体に搭載され、前記送信部から送信される前記センサノード識別子及び前記位置コードを受信する受信部と、前記移動体に搭載され、前記プロジェクタ及び前記受信部に接続されている搭載コンピュータであって、前記搭載コンピュータは、前記受信部から前記センサノード識別子及び位置コードを受信し、受信した前記センサノード識別子及び前記位置コードに基づいて前記移動体の位置情報を判定する、前記搭載コンピュータと、を含む。
【０００８】
第２の態様は、第１の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記静止センサノードは、天井に固定的に装着されている。
【０００９】
第３の態様は、第１または第２の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記移動体の前記搭載コンピュータは、前記位置コードに対応するプロジェクタ画素を識別することで、前記移動体の前記位置情報を判定する。
【００１０】
第４の態様は、第１または第２の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記移動体の前記搭載コンピュータは、受信した前記センサノード識別子を使用してリモートサーバに問い合わせ、前記リモートサーバから、受信した前記センサノード識別子に対応するノード位置を受信することで、前記移動体の前記位置情報を判定する。
【００１１】
第５の態様は、第４の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記移動体の前記搭載コンピュータは、前記リモートサーバから受信した前記ノード位置を前記位置コードに基づいて生成される第２位置と組み合わせることで、前記移動体の前記位置情報を判定する。
【００１２】
第６の態様は、第１〜第５の何れかの態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し、第２センサ信号を生成する第２光センサを含み、前記送信部は、さらに、前記第２センサ信号に基づいて生成される第２位置コードを送信し、前記移動体の前記搭載コンピュータは前記第２位置コードに対応する第２プロジェクタ画素を識別することで前記移動体の前記位置情報を判定する。
【００１３】
第７の態様は、第１〜第６の何れかの態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し、第２センサ信号を生成する第２光センサを含み、前記送信部は、さらに、前記第２センサ信号に基づいて生成される第２位置コードを送信し、前記移動体の前記搭載コンピュータは前記位置情報及び前記第２位置コードに基づいて前記移動体の方向情報を判定する。
【００１４】
第８の態様は、第１〜第７の何れかの態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記プロジェクタによって投影される前記時間軸に沿ったプロジェクタ光信号は、前記プロジェクタの各画素の画素座標を符号化する複数の光パルスシーケンスを含む。
【００１５】
第９の態様は、第１〜第８の何れかの態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記移動体の前記搭載コンピュータは、前記移動体の軌跡誤差を算出し、算出された前記軌跡誤差を使用してＰＩＤ（proportional-integral-derivative）計算に基づいてガイダンスコマンドを発行する。
【００１６】
第１０の態様は、第１〜第９の何れかの態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記搭載コンピュータは、複数の静止センサノードの位相的関係を含むマップを維持する。
【００１７】
第１１の態様は、第１０の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記搭載コンピュータは、前記マップ及びゴールシーケンス情報に基づいてガイダンス命令を発行する。
【００１８】
第１２の態様は、第１１の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記ゴールシーケンス情報は、順序付けされた複数の静止センサノードを含む。
【００１９】
第１３の態様は、第１１または第１２の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記ゴールシーケンス情報を構築し、前記移動体の前記搭載コンピュータに前記ゴールシーケンス情報を送信するグローバルナビゲーションモジュールを実行するサーバを、さらに含む。
【００２０】
第１４の態様は、第１〜第１３の何れかの態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記プロジェクタ及び受信部は、前記移動体の上部に配置されている。
【００２１】
第１５の態様は、第１〜第１４の何れかの態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記静止センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し第２センサ信号を生成する第２光センサをさらに含み、送信される前記位置コードは、さらに、前記第２センサ信号に基づく。
【００２２】
第１６の態様は、第１５の態様の移動体の屋内位置検出及びナビゲーションシステムであって、前記静止センサノードは、前記時間軸に沿ったプロジェクタ光信号を検出し第３センサ信号を生成する第３光センサをさらに含み、送信される前記位置コードは、さらに、前記第３センサ信号に基づく。
【００２３】
第１７の態様は、移動体の屋内位置検出及びナビゲーション方法であって、前記移動体に搭載されるプロジェクタを使用して、時間軸に沿ったプロジェクタ光信号を投影し、前記時間軸に沿ったプロジェクタ光信号は、前記プロジェクタの各画素について、前記プロジェクタの各画素の画素座標を含む情報セグメントで符号化され、前記時間軸に沿ったプロジェクタ光信号を検出し、センサ信号を生成する光センサと、センサノード識別子及び前記センサ信号に基づいて生成される位置コードを送信する送信部と、を含む静止センサノードを使用し、前記移動体に搭載された受信部を使用して、前記送信部から送信される前記センサノード識別子及び前記位置コードを受信し、前記移動体に搭載され、前記プロジェクタ及び前記受信部に接続された搭載コンピュータを使用して、前記受信部から前記センサノード識別子及び前記位置コードを受信し、受信した前記センサノード識別子及び前記位置コードに基づいて前記移動体の位置情報を判定する。
【００２４】
第１８の態様は、第１７の態様の移動体の屋内位置検出及びナビゲーション方法であって、前記静止センサノードは、天井に固定的に装着されている。
【００２５】
第１９の態様は、第１７または第１８の態様の移動体の屋内位置検出及びナビゲーション方法であって、前記移動体の前記搭載コンピュータは、前記位置コードに対応するプロジェクタ画素を識別することで前記移動体の前記位置情報を判定する。
【００２６】
第２０の態様は、移動体の屋内位置検出及びナビゲーション処理をコンピュータに実行させるためのプログラムであって、前記移動体に搭載されるプロジェクタを使用して、時間軸に沿ったプロジェクタ光信号を投影し、前記時間軸に沿ったプロジェクタ光信号は、前記プロジェクタの各画素について、前記プロジェクタの各画素の画素座標を含む情報セグメントで符号化され、前記時間軸に沿ったプロジェクタ光信号を検出し、センサ信号を生成する光センサと、センサノード識別子及び前記センサ信号に基づいて生成される位置コードを送信する送信部と、を含む静止センサノードを使用し、前記移動体に搭載された受信部を使用して、前記送信部から送信される前記センサノード識別子及び前記位置コードを受信し、前記移動体に搭載され、前記プロジェクタ及び前記受信部に接続された搭載コンピュータを使用して、前記受信部から前記センサノード識別子及び前記位置コードを受信し、受信した前記センサノード識別子及び前記位置コードに基づいて前記移動体の位置情報を判定する。
【発明の効果】
【００２７】
粗い粒度及び細かい粒度の両方で、移動ロボットのリアルタイム屋内位置情報を検出することができる。
【図面の簡単な説明】
【００２８】
【図１Ａ】モバイルロボット屋内位置検出及びナビゲーションシステムの実施例を示す。
【図１Ｂ】モバイルロボット屋内位置検出及びナビゲーションシステムを使用したロボット位置のペア（粗い精度及び細かい精度）を判定するプロセスの例を示す。
【図１Ｃ】モバイルロボット屋内位置検出及びナビゲーションシステムを使用したロボット位置のペア（粗い精度及び細かい精度）を判定するプロセスの例示的な動作シーケンスを示す。
【図２Ａ】プロジェクタによって生成される時間軸に沿った符号化光信号を例示する。
【図２Ｂ】プロジェクタによって生成される時間軸に沿った符号化光信号を例示する。
【図３】ロボットの最終位置データがセンサノードのＩＤに基づく領域情報の組み合わせであることを示す。領域情報は、ロボット搭載プロジェクタの投影領域内のセンサノードの位置に基づいて、識別子ＩＤ＿１、ＩＤ＿２、ＩＤ＿３に各々対応する領域の１つ及び領域内の画素レベル位置（ｘ、ｙ）を固有に識別する。
【図４】ロボットによって維持される例示的なワールドマップを示す。
【図５】ロボット軌跡の誤差を算出し、訂正する方法を例示する。
【図６】ロボットの搭載コンピュータの実施例を示す。
【発明を実施するための形態】
【００２９】
添付の図面において、同様の機能を有する要素には、同様の参照符号が付加される。上記添付の図面は、本開示の原理と矛盾しない特定の実施例及び実装を示している。これらの図面は、例示を意図しており、限定を意図していない。これらの実装は、本開示を当業者が実施できる程度に十分に記載されている。また、他の実装が使用可能であり、本開示の範囲及び思想から乖離することなく、構造の変更及び／または様々な構成の置き替えを行うことができる。したがって、以下の詳細な説明は、限定的な意味で解釈されるべきではない。また、本開示の様々な実施例は、汎用目的コンピュータで稼動するソフトウェアの形態で実装されてもよいし、特定用途ハードウェアの形態で実装されてもよいし、ソフトウェア及びハードウェアの組み合わせによって実装されてもよい。
【００３０】
ここで説明した実施例の態様の１つによれば、グローバルまたはローカルな位置付け戦略の利点を利用する、実用的な屋内位置検出及びナビゲーションのシステム及び方法が提供される。実施例の１つにおいて、上記新規なシステムの主要部分は二重であり、グローバルナビゲーション及びローカルナビゲーションを含む。詳細には、グローバルな位置を取得するために、一連のセンサノードが対象環境の天井に配備され、天井に光を投影し、一連の異なるセンサノードを動作させることで、移動ロボットはそれがどの領域に属するかを判定する。センサノードの各々は、各々が固有の識別子（ＩＤ）を有する光センサ及び赤外線送信部を備え、現実世界の座標位置はキー値ペアとしてネットワークで接続されたデータベースに予め記憶されている。センサノードを動作させると、赤外線（ＩＲ）チャネルを介して、センサノードはそのＩＤをロボットに送信する。最後に、ロボットは、ＷｉＦｉまたはＢｌｕｅｔｏｏｔｈ（登録商標）通信を介して、ＩＤを受信し、データベースに記憶されている関連するグローバルな位置を取得することで、その位置を検出する。
【００３１】
１つもしくは複数の実施例において、環境内に散在するランドマークの関連を示す位相関連マップが使用されてもよく、サーバで稼動するグローバルナビゲーションモジュールは、ロボットのリアルタイム位置検出に基づいて、ゴールにロボットを導く望ましい経路を生成する。一方で、符号化光機構を使用し、ロボットが属する領域内のロボットの向き及び正確な位置の情報を提供し、ロボットを領域から領域にナビゲートする。
【００３２】
人工的なランドマークによる位置検出、本開示のシステムの実施例におけるセンサノード、及び符号化光による細かい位置付けを組み合わせることで、本開示のシステムの実施例は、従来の位置検出技術の欠点を補い、正確さ及び解像度について様々な条件をもつ様々な位置検出及びナビゲーションの応用に利用可能となる。
【００３３】
１つもしくは複数の実施例において、位置検出及びナビゲーションシステムは、符号化光を使用し、粗いまたは細かい粒度の両方で、移動ロボットのリアルタイム屋内位置情報を提供する。図１Ａは、移動ロボットの屋内位置検出及びナビゲーションシステム１００の実施例を例示する。図１Ａに示されるように、一連のセンサノード１０１、１０２及び１０３は与えられたシナリオのために天井１０４に埋め込まれている。センサノード１０１〜１０３は２つの光センサ１０５及び１０６及び１つのＩＲ送信部１１１を含む。例示的な実施例において、センサノード１０１〜１０３は２つの光センサ１０５及び１０６を含むが、本開示は、センサノード毎の光センサの特定の数に限定されない。様々な実施例において、本開示のシステムは、１、２、３、４またはそれ以上の光センサをセンサノード毎に有していてもよい。即ち、光センサの数は本開示の範囲を限定しない。
【００３４】
初期状態において、全てのセンサノード１０１、１０２及び１０３はスリープモードである。プロジェクタ１０８及びＩＲ受信部１０９を備えた移動ロボット１０７は、与えられた設定において、グランド１１２上でナビゲートされる。スタートすると、ロボット１０７のプロジェクタ１０８は、天井１０４にグレーコード画像のシーケンスを周期的に投影する。センサノード１０１、１０２または１０３は、その光センサ１０５及び／または１０６（及び／または何れか他の光センサ）が所定の周波数（例えば、４ｋＨｚ）を有する光の強度変化を検出すると、動作させられる。次に、センサノード１０１、１０２または１０３は、そのＩＤ及び投影領域内の画素位置を、ＩＲチャネルを介して、ロボット１０７に送り返す。これらのセンサノード１０１、１０２及び１０３は、このシステムのカバー領域を異なる領域に分割し、センサノードの各々のＩＤは固有であり、予め収集されているグローバルな位置に関連付けられているので、ロボット１０７は、センサノード１０１、１０２または１０３からＩＤを受信した後、関連付けられているグローバルな位置についてネットワークで接続されたデータベースに問い合わせ、このグローバルな位置を受信したローカルな画素位置と組み合わせ最終的に位置を取得する。
【００３５】
図１Ｂは、移動ロボット屋内位置検出及びナビゲーションシステム１００を使用してロボット１０７の位置（粗い、及び細かい粒度の両方の位置）の一対を判定するプロセスの特定の例を例示する。また、図１Ｃは、移動ロボット屋内位置検出及びナビゲーションシステム１００を使用してロボット１０７の位置（粗い、及び細かい粒度の両方の位置）のペアを判定するプロセスの動作シーケンス１５０を示すフローチャートを例示する。
【００３６】
まず、天井１０４のセンサノード１０１〜１０３が、移動ロボット１０７に搭載されたプロジェクタ１０８から投影された符号化光によって動作させられる（ステップ１５１）。次に、対応するノード１０１〜１０３の特定の光センサ１０５及び／または１０６は、投影された光によって搬送されるコードのシーケンスを受信し、ロボットに搭載されたプロジェクタ１０８の投影領域内で受信した光センサ１０５または１０６の相対位置を決定する（ステップ１５２）。この相対的な位置を復号するために、プロジェクタ画素ＩＤまたは座標を光センサ１０５または１０６の出力から復号する。プロジェクタ１０８によって投影された光信号パターンの各画素の位置が予め定められているからである（プロセス１５０のステップ１５３）。
【００３７】
この後、センサノード１０１、１０２または１０３は、そのＩＤ及び投影光強度の変化から復号されるロボット搭載プロジェクタ１０８に対する相対位置を、光センサ１０５及び／または１０６によって、ロボット１０７に送り返す（ステップ１５４）。このノードＩＤ情報によって、ロボット１０７は、ＷｉＦｉまたはＢｌｕｅｔｏｏｔｈなどのワイヤレスネットワークを介して、ネットワークデータセンタ１１０に問い合わせを行い、特定のＩＤについての関連するグローバルな位置情報を取得する（プロセス１５０のステップ１５５）。グローバルな位置情報によって、ロボット１０７は、それがどの領域に属するかを知ることができ、これにより、ロボット１０７は粗い位置情報を取得する。また、相対的な画素位置によって、ロボット１０７は、その領域内における精度の高い位置情報を取得することができる（図１Ｃ、プロセス１５０のステップ１５６）。
【００３８】
図２Ａ及び図２Ｂは、プロジェクタ１０８によって生成される時間軸に沿った２つの符号化光信号２０１及び２０５を例示する。実施例の１つにおいて、プロジェクタ１０８はＤＬＰプロジェクタである。時間軸に沿った光信号２０１及び２０５は、プロジェクタ１０８の２つの異なる画素２０３及び２０７に対応する。方向２０２に伝播し、時間軸に沿った光信号２０１は、時間軸に沿った対応する光パルスの第１固有シーケンスを使用して、第１プロジェクタ画素２０３の固有位置情報で符号化される。一方、方向２０６に伝播し、時間軸に沿った光信号２０５は、時間軸に沿った対応する光パルスの第２固有シーケンスを使用して、第２プロジェクタ画素２０７の固有位置情報によって符号化される。図２Ａ及び図２Ｂにおいて、プロジェクタ画素２０３及び２０７を、対応する投影によって、仮想投影面２０４上に例示する。光パルスの第１及び第２固有シーケンスは異なり、各投影画素に関する情報を搬送する。
【００３９】
図３は、ロボット１０７の最終位置データが、センサノードのＩＤに基づく領域情報と、ロボット搭載プロジェクタ１０８の投影エリア内のセンサノード１０１、１０２または１０３の位置に基づく領域内の画素レベル位置（ｘ、ｙ）と、の組み合わせである、ことを示す。領域情報は、識別ＩＤ＿０１、ＩＤ＿０２及びＩＤ＿０３に各々対応する領域３０１、３０２または３０３の１つを固有に識別する。画素レベル位置情報は精度の高いロボット位置を示し、領域情報（例えば、領域ＩＤ）は空間における粗いロボット位置を示す。
【００４０】
また、１つもしくは複数の実施例において、システム１００は、図４に例示するように、ワールドマップ４０１を維持する。図４に示すように、ワールドマップ４０１はフロアプラン４００に対応する。ワールドマップ４０１は、対象領域のセンサノード１０１、１０２及び１０３の位相的関係を示す。１つもしくは複数の実施例において、ワールドマップ４０１は、所与のゴールまでのサブゴールのシーケンスを構築するために、サーバ上で稼動するグローバルナビゲーションモジュールによって使用される。所与の始点及びゴールについて、サーバ上で稼動する上記グローバルナビゲーションモジュールは、ロボット１０７に適した経路を生成することができる。経路は、ロボット１０７が経路上で検出すべきセンサノード（１０１、１０２、及び１０３）のシーケンスを含み、異なるセンサノード１０１、１０２及び１０３でロボット１０７がとるべきアクションのシリーズを含む。
【００４１】
例えば、「ａ」から「ｆ」までロボットをナビゲートするために、グローバルナビゲーションモジュールは「ａ−ｃ−ｈ−ｇ−ｆ」のような経路を生成してもよい。即ち、ロボットはまずセンサノードａを検出し、まっすぐ進み、次に、ノードｃを検出し、まっすぐ進み、ノードｈを検出し、まっすぐ進み、ノードｇを検出し、左に曲がり、まっすぐ進み、最後にｆを検出する。何れか２つのサブゴールの間で動いている間、符号化光システムはロボットが経路上を移動していることを確認するために使用される。しかしながら、スリップ、モータの不整合など、多くのファクタによって、ロボット１０７は経路をはずれ、エラーが発生する。１つもしくは複数の実施例において、ロボット１０７の所望される経路と現実の経路との間のずれは、誤差訂正のためにＰＩＤ（proportional-integral-derivative）コントローラに入力される。図５は、どのようにロボット１０７の軌跡の誤差が算出され、訂正されるかを例示する。
【００４２】
詳細には、図５に例示されるように、Ｙ軸に沿った距離の誤差は、センサノードのＹ値と投影中心のＹ値との間の差として算出される。Ｙ誤差値は、ノードの中心からのロボット１０７のＹ軸に沿ったずれを表す。この誤差値は、ＰＩＤコントローラに入力され、ＰＩＤコントローラは誤差に適応するためにロボットドライブシステムに適切な命令を送信する。
「搭載コンピュータシステムの実施例」
【００４３】
図６は、ロボット１０７の搭載コンピュータ６００の実施例を示す。搭載コンピュータ６００は、ここで説明される技術を実装するために使用され得る。１つもしくは複数の実施例において、搭載コンピュータ６００は、モバイル計算処理装置のフォームファクタ内で実装されてもよい。代替的な実施例において、搭載コンピュータ６００は、ラップトップコンピュータまたはノートブックコンピュータで実装されてもよい。代替的な実施例において、搭載コンピュータ６００は特定用途計算処理システムであってよく、詳細には、ドローン、ロボットまたは車などの移動体のために設計されていてもよい。
【００４４】
搭載コンピュータ６００は、搭載コンピュータ６００の様々なハードウェア構成要素をわたってもしくは様々なハードウェア構成要素の間で情報を伝達するためのデータバス６０４、もしくは他の相互接続機構または通信機構、及び、情報を処理し、他の計算処理タスク及び制御タスクを実行するデータバス６０４に接続された中央処理ユニット（ＣＰＵまたは単にプロセッサ）６０１を含んでいてもよい。搭載コンピュータ６００は、ＲＡＭ（random access memory）または他のダイナミックストレージデバイスなどのメモリ６１２を含み、メモリ６１２は、プロセッサ６０１によって実行される命令及び様々な情報を保存するためにデータバス６０４に接続されている。メモリ６１２は、磁気ディスク、光ディスク、ソリッドステートフラッシュメモリデバイスまたは他の不揮発性ソリッドステートストレージデバイスなどの固定記憶ストレージデバイスを含んでいてもよい。
【００４５】
１つもしくは複数の実施例において、メモリ６１２は、プロセッサ６０１による命令の実行中に生成される一時的変数または他の中間情報を保存するために使用されてもよい。必須ではないが、搭載コンピュータ６００は、さらに、搭載コンピュータ６００の動作に必要なファームウェア、ＢＩＯＳ（basic input-output system）、搭載コンピュータ６００の様々な構成パラメータなどの静的情報及びプロセッサ６０１のための命令を保存するためにデータバス６０４に接続されているＲＯＭ（read only memory）またはＥＰＲＯＭ６０２または他のスタティックストレージデバイスをさらに含んでいてもよい。
【００４６】
１つもしくは複数の実施例において、搭載コンピュータ６００は、さらに、符号化光信号を投影するプロジェクタ６０９及びノード１０１〜１０３から情報を受信するＩＲ受信部６１０を含んでいてもよい。さらに、搭載コンピュータ６００はロボットのドライブトレーンを制御するドライブトレーンインターフェイス６０３を含んでいてもよい。
【００４７】
１つもしくは複数の実施例において、搭載コンピュータ６００は、さらに、データバス６０４に接続されているネットワークインターフェイス６０５などの通信インターフェイスを含んでいてもよい。ネットワークインターフェイス６０５は、ＷｉＦｉアダプタ６０７及び携帯電話ネットワーク（ＧＳＭ（登録商標）またはＣＤＭＡ）アダプタ６０８の少なくとも一方を使用して搭載コンピュータ６００とインターネット６２４との間の接続を確立してもよい。ネットワークインターフェイス６０５は、搭載コンピュータ６００及びインターネット６２４の間の双方向データ通信を提供してもよい。ＷｉＦｉインターフェイス６０７は、８０２．１１ａ、８０２．１１ｂ、８０２．１１ｇ及び／または８０２．１１ｎプロトコル及びＢｌｕｅｔｏｏｔｈプロトコルに準拠して動作してもよい。例示的な実装において、ＷｉＦｉアダプタ６０７及び携帯電話ネットワーク（ＧＳＭまたはＣＤＭＡ）アダプタ６０８は、様々なタイプの情報を表すデジタルデータストリームを搬送する電気または電磁信号を送受信する。
【００４８】
１つもしくは複数の実施例において、インターネット６２４は、一般的に、他のネットワークリソースへの１つもしくは複数のサブネットワークを介してデータ通信を提供する。即ち、搭載コンピュータ６００は、リモートメディアサーバ、ウェブサーバ、他のコンテンツサーバ、他のネットワークデータストレージリソースなどの、インターネット６２４のどこかに配置されている様々なネットワークリソースにアクセスすることができる。１つもしくは複数の実施例において、搭載コンピュータ６００は、メッセージ、メディア及び、アプリケーションプログラムコードを含む他のデータを、ネットワークインターフェイス６０５によって、インターネット６２４を含む様々なネットワークを介して、送受信する。インターネットの例において、搭載コンピュータ６００がネットワーククライアントとして動作する場合、搭載コンピュータ６００上で実行されるアプリケーションプログラムのためにコードまたはアプリケーションプログラムを要求することができる。同様に、他のネットワークリソースに対して様々なデータまたはコンピュータコードを送信してもよい。
【００４９】
１つもしくは複数の実施例において、上記した機能は、メモリ６１２に含まれる１つもしくは複数の命令の１つもしくは複数のシーケンスをプロセッサ６０１が実行することで、搭載コンピュータ６００によって実装される。命令は、他のコンピュータ可読媒体からメモリ６１２に読み込まれてもよい。メモリ６１２に含まれている命令シーケンスを実行することで、プロセッサ６０１は、上記したプロセスの様々なステップを実行する。代替的な実施例において、ソフトウェア命令に代えて、またはソフトウェア命令と共に、ハードウェア回路を使用して、本開示の実施例を実装してもよい。本開示の実施例は、ハードウェア回路及びソフトウェアの何れか特定の組み合わせに限定されない。
【００５０】
ここで使用される用語「コンピュータ可読媒体」はプロセッサ６０１で実行される命令の提供に関与する何れかの媒体を表す。コンピュータ可読媒体は、機械可読媒体の一例に過ぎず、ここで説明される方法及び／または技術の何れかを実装する命令を搬送することができる。媒体は不揮発性媒体及び揮発性媒体を含む多くの形態であってよいが、これらに限定されない。
【００５１】
非一時的コンピュータ可読媒体の一般的な形態は、例えば、フロッピー（登録商標）ディスク、フレキシブルディスク、ハードディスク、磁気テープまたは何れか他の磁気媒体、ＣＤ−ＲＯＭ、何れか他の光媒体、パンチカード、紙テープ、何れか他の孔パターンを有する物理的媒体、ＲＡＭ、ＰＲＯＭ、ＥＰＲＯＭ、フラッシュＥＰＲＯＭ、フラッシュドライブ、メモリカード、何れか他のメモリチップまたはカートリッジ、または何れか他のコンピュータによる読み込みが可能な媒体を含む。様々な形態のコンピュータ可読媒体が、プロセッサ６０１によって実行される１つもしくは複数の命令の１つもしくは複数のシーケンスの搬送に関与してもよい。例えば、命令は、まず、リモートコンピュータから磁気ディスクに搬送されてもよい。代替的に、リモートコンピュータは、ダイナミックメモリに命令をロードし、インターネット６２４を介して命令を送信してもよい。詳細には、コンピュータ命令は、様々なネットワークデータ通信プロトコルを使用して、インターネット６２４を介して、リモートコンピュータから搭載コンピュータ６００のメモリ６１２にダウンロードされてもよい。
【００５２】
１つもしくは複数の実施例において、搭載コンピュータ６００のメモリ６１２は、以下のソフトウェアプログラム、アプリケーション、及び／またはモジュールの何れかを保存していてもよい。
【００５３】
１．オペレーティングシステム（ＯＳ）６１３。オペレーティングシステム（ＯＳ）６１３は、基本システムサービスを実装し、搭載コンピュータ６００の様々なハードウェア構成要素を管理するモバイルオペレーティングシステムであってよい。オペレーティングシステム６１３の実施例は、既知の、または今後開発されるモバイルオペレーティングシステムを含み得る。また、ネットワークインターフェイス６０５を使用してネットワーク通信を可能とするネットワーク通信モジュール６１４がさらに提供されてもよい。
【００５４】
２．ソフトウェアモジュール６１５。ソフトウェアモジュール６１５は、例えば、搭載コンピュータ６００のプロセッサ６０１によって実行され、ロボット１０７のドライブトレーンに命令を発行するなど、搭載コンピュータ６００に予め定められた機能を実行させるソフトウェアモジュールのセット、例えば、ドライブ制御モジュール６１６及び位置検出及びＰＩＤモジュール６１７などを含んでいてもよい。
【００５５】
３．データストレージ６１８。データストレージ６１８は、例えば、ロボット搭載プロジェクタ１０８のパラメータ及びワールドマップ（６１９）を保存する。
【００５６】
最後に、ここで説明するプロセス及び技術は、特定の装置に固有に関連せず、何れか適切な構成要素の組み合わせによって実装することができる。様々なタイプの汎用用途デバイスを、ここでの説明にしたがって使用してもよい。ここで説明する方法のステップを実行するために特定用途装置を構築してもよい。本開示は、制限を意図せず、例示を意図して、特定の例示に関連して説明された。ハードウェア、ソフトウェア及びファームウェアの多くの異なる組み合わせが、本開示の実行に適している。例えば、説明されたソフトウェアは、アセンブラ、Ｃ／Ｃ＋＋、オブジェクティブ−Ｃ、Ｐｅｒｌ、ｓｈｅｌｌ、ＰＨＰ、Ｊａｖａ（登録商標）、既知のまたは今後開発されるプログラム言語または記述言語などの様々なプログラム言語または記述言語で実装されてもよい。
【００５７】
本開示の他の実装は、ここで説明される詳細及び実行を検討することで明らかとなる。実施例の様々な態様及び／または構成要素は、モバイルロボット屋内位置検出及びナビゲーションシステムにおいて、単一で使用されてもよいし、何れかの組み合わせで使用されてもよい。詳細及び実施例は、例示だけを意図している。
【符号の説明】
【００５８】
１０１  ノード
１０２  ノード
１０３  ノード
１０４  天井
１０５  光センサ
１０６  光センサ
１０７  ロボット
１０８  プロジェクタ
１０９  ＩＲ受信部
６０１  ＣＰＵ
６０９  プロジェクタ
６１０  ＩＲ受信部
６１２  メモリ
【図１Ａ】
2017211975.tif 000003
【図１Ｂ】
2017211975.tif 000004
【図１Ｃ】
2017211975.tif 000005
【図２Ａ】
2017211975.tif 000006
【図２Ｂ】
2017211975.tif 000007
【図３】
2017211975.tif 000008
【図４】
2017211975.tif 000009
【図５】
2017211975.tif 000010
【図６】
2017211975.tif 000011