(57)【特許請求の範囲】
【請求項１】
人型ロボット（１００）の上半身および下半身部材の少なくとも一方の軌跡（５３０ａ，７３０）を制御する方法であって、
−目標箇所を有する当初の軌道を前記人型ロボットのメモリに記憶するステップと、
−前記人型ロボットに搭載されて制御される少なくとも１個の感知手段から、１個以上の障害物（５４０ｂ，９１０ｃ）の位置を表すデータを取得するステップと、
−前記人型ロボットに搭載されたプロセッサにより、
前記人型ロボットの速度および方向に依存する、前記人型ロボットのエンベロープ（４１０ｂ、８１０）と、
前記エンベロープと前記１個以上の障害物との相対位置と、
前記エンベロープと障害物との衝突確率と、
ｉ）前記エンベロープと障害物との衝突を回避し、ｉｉ）前記人型ロボットの上半身および下半身部材の少なくとも一方の軌道および速度の少なくとも一方を空間および時間の少なくとも一方に関して変更すべく、メモリに記憶された前記当初の軌道の前記目標箇所への当初の時間内の復帰、および当初の所作の全般的な方向および内容の維持、の少なくとも一方を行うための一連のコマンドとを計算するステップとを含み、
前記目標箇所に復帰するための前記一連のコマンドが、
−前記当初の軌道の箇所を計算するステップと、
−前記当初の軌道の箇所と、前記目標箇所との間の直線を計算するステップと、
−前記当初の時間で前記目標箇所に復帰するための前記直線上の前記人型ロボットの速度を計算するステップと、
−前記人型ロボットの軌跡を、前記当初の軌道の前記箇所までの前記当初の軌道、次いで前記当初の軌道の前記箇所と前記目標箇所との間の直線として画定するステップとを含む、方法。
【請求項２】
前記当初の所作の全般的な方向および内容を維持するための前記一連のコマンドが、人型ロボットの部位、すなわち軌道上の部位の目標位置を計算するステップと、前記部位を含む連鎖の最大関節速度を計算するステップとを含み、前記最大関節速度が、前記部位と障害物との距離に依存する、請求項１に記載の方法。
【請求項３】
前記当初の軌道が空間および時間で記述される、請求項１または２に記載の方法。
【請求項４】
前記感知手段が、複数のレーザー線発生器、複数の撮像センサ、複数の音響センサ、および複数の接触検出器の少なくとも１個により実行される、請求項１〜３のいずれか１項に記載の方法。
【請求項５】
前記感知手段が、複数のレーザー線発生器、複数の撮像センサ、複数の音響センサ、および複数の接触検出器の少なくとも２個により実行される、請求項４に記載の方法。
【請求項６】
１個以上の障害物の位置を表す前記データが、ピクセル内における障害物の非存在確率を表す前記ピクセルのマップからの多数の特徴点の抽出結果である、請求項１〜５のいずれか１項に記載の方法。
【請求項７】
前記ピクセルのマップが、第２の感知手段、および第１の感知手段に関してピクセルの前記マップ内における障害物の非存在確率の信頼レベルの推定値を高めるデータ融合処理の少なくとも一方の出力で生成される、請求項６に記載の方法。
【請求項８】
前記人型ロボットの足跡のエンベロープが、前記人型ロボットの速度および前記人型ロボットの周囲の所定の安全距離の関数として計算される、請求項１〜７のいずれか１項に記載の方法。
【請求項９】
前記一連のコマンドが、前記エンベロープと何らかの障害物との衝突を回避すべく変更軌道を決定すべく計算される、請求項８に記載の方法。
【請求項１０】
前記一連のコマンドが更に、前記人型ロボットが、前記当初の軌道上の前記目標箇所に到達予定であった時刻に前記当初の軌道の前記目標箇所に復帰すべく変更軌道および変更速度を決定すべく計算される、請求項９に記載の方法。
【請求項１１】
前記人型ロボットの上半身部材が、モーター駆動される関節により互いに関節接続された部分の連鎖を含む、請求項１〜７のいずれか１項に記載の方法。
【請求項１２】
前記人型ロボットの部材のエンベロープが、前記関節接続された部分の周囲の所定の安全距離の関数として計算される、請求項１１に記載の方法。
【請求項１３】
前記一連のコマンドが、前記エンベロープが障害物に接近する際に、前記関節接続された部分の関節のモーターの角速度の減速量を決定すべく計算される、請求項１１または１２に記載の方法。
【請求項１４】
前記関節の前記モーターの角速度の前記減速量が、前記連鎖の速度を最高安全値で飽和させるべく計算され、前記最高安全値が、前記連鎖内の部位の目標速度、および前記連鎖内の前記部位に相対的な障害物の位置に基づいて計算される、請求項１３に記載の方法。
【請求項１５】
人型ロボットであって、
−少なくとも１個の上半身部材および１個の下半身部材と、
−目標箇所を有する当初の軌道およびコンピュータコード命令を記憶するメモリと、
−１個以上の障害物の位置を表すデータを取得すべく構成された複数の感知モジュールと、
−前記コンピュータコード命令を実行して、
前記人型ロボットの速度および方向に依存する、前記人型ロボットのエンベロープと、
前記エンベロープと前記１個以上の障害物との相対位置と、
前記エンベロープと障害物との衝突確率と、
ｉ）前記エンベロープと障害物との衝突を回避し、ｉｉ）前記人型ロボットの上半身および下半身部材の少なくとも一方の軌道または速度の少なくとも一方を空間および時間の少なくとも一方に関して変更すべく、メモリに記憶された前記当初の軌道の前記目標箇所への当初の時間内の復帰、および当初の所作の全般的な方向および内容の維持、の少なくとも一方を行うための一連のコマンドとを計算すべく構成されたプロセッサとを含み、
前記目標箇所に復帰するための前記一連のコマンドが、
−前記当初の軌道の箇所を計算するステップと、
−前記当初の軌道の箇所と、前記目標箇所との間の直線を計算するステップと、
−前記当初の時間で前記目標箇所に復帰するための前記直線上の前記人型ロボットの速度を計算するステップと、
−前記人型ロボットの軌跡を、前記当初の軌道の前記箇所までの前記当初の軌道、次いで前記当初の軌道の前記箇所と前記目標箇所との間の直線として画定するステップとを含む、人型ロボット。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットプログラミングシステムの分野に関する。より具体的には、関節接続された下肢により移動または当該下肢を用いるロボット、特に人または動物型のロボットの挙動および動作の編集および制御に適用される。
【背景技術】
【０００２】
ロボットは、頭部、胴体、２本の腕、２個の手等、ある程度人間の外観属性を有した瞬間から人型ロボットと見なすことができる。しかし、人型ロボットの洗練度合は多少異なっていてよい。下肢の関節の個数はより多くても少なくてもよい。自身のバランスを静的または動的に制御して、恐らくは３次元的に２足歩行しても、または単に床の上を転がってもよい。環境から信号を取得して（「聞く」、「見る」、「触る」、「感じる」等）、多少洗練された挙動に応じて反応し、発声または所作のいずれかにより、他のロボットまたは人間と交流することができる。
【０００３】
人型ロボットは所与の環境で、単に箇所Ａから箇所Ｂへ移動する、または所定のシナリオに従い動作する、あるいはダンスをも披露すべく自律移動可能である。振付けに従い演技する複数の人型ロボットも可能である。これら全てのシナリオにおいて、ロボット群は、想定外の状況、例えば自らの軌道またはメンバーの動作を障害物が遮った場合等に対処できることが重要である。また、ロボットが、このような想定外の状況に人間のような仕方で、すなわち衝突を回避する際に機械的動作に見えるぎこちない方向転換ではなく滑らかな軌道変更または所作で対処できる本物の人型ロボットであるとの印象を与えることが益々重要になっている。また、ロボットは、衝突の回避する際に軌道を変更するか、または回避シーケンスの前に実行していた所作を中断しなければならないが、ロボットも人間と同様に中断前の軌道または所作を再開することが極めて望ましい。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
従来技術のいくつかの解決策において、衝突回避は大抵、衝突前に急停止または方向転換のいずれかを指示することによりロボットを安全モードに切り替えることで対応されていた。これは無論満足すべきユーザー体験でない。
【０００５】
特に米国特許第７，７７８，７７６号明細書による別の解決策は、障害物の周囲に不可侵または安全領域を設定して、ロボットを制動距離で停止させるか、または回避経路を計算することものである。しかし、従来技術の当該解決策は、全ての障害物に対して安全領域を計算する必要があるためコンピュータへの負荷が極めて高い。
【課題を解決するための手段】
【０００６】
本発明は、ロボットの周囲の安全領域を計算することにより単一の安全領域だけを保守すればよいように上述の問題題を解決する。
【０００７】
上述の目的のため、本発明は、人型ロボットの上半身および下半身部材の少なくとも一方の軌跡を制御する方法を開示するものであり、前記方法は、目標箇所を有する当初の軌道をロボットのメモリに記憶するステップと、ロボットに搭載されて制御される少なくとも１個の感知手段から、１個以上の障害物の位置を表すデータを取得するステップと、ロボットに搭載されたプロセッサにより、前記ロボットの足跡と、前記ロボットの前記上半身および下半身部材の少なくとも一方とのいずれか一方のエンベロープと、エンベロープと１個以上の障害物との相対位置と、エンベロープと障害物との衝突確率と、ロボットの上半身および下半身部材の少なくとも一方の軌道および速度の少なくとも一方を変更させる一連のコマンドとを計算するステップとを含み、前記方法が、当該一連のコマンドがｉ）エンベロープと障害物との衝突を回避し、ｉｉ）充分且つ可能な場合に、メモリに記憶された当初の軌道の目標箇所に復帰すべく空間および時間の少なくとも一方に関して条件付けられていることを特徴とする。
【０００８】
有利には、当初の軌道は空間および時間で記述される。
【０００９】
有利には、感知手段は、複数のレーザー線発生器、複数の撮像センサ、複数の音響センサ、および複数の接触検出器の少なくとも１個により実行される。
【００１０】
有利には、感知手段は、複数のレーザー線発生器、複数の撮像センサ、複数の音響センサ、および複数の接触検出器の少なくとも２個により実行される。
【００１１】
有利には、１個以上の障害物の位置を表すデータは、ピクセル内における障害物の非存在確率を表す前記ピクセルのマップからの多数の特徴点の抽出結果である。
【００１２】
有利には、ピクセルのマップは、第２の感知手段、および第１の感知手段に対してピクセルの前記マップ内における障害物の非存在確率の信頼レベルの推定値を高めるデータ融合処理の少なくとも一方の出力で生成される。
【００１３】
有利には、マップのピクセル内における障害物の非存在確率は、より高い確率を有する感知手段の出力により更新されない限り、予め設定された時間パラメータにわたり０．５まで低下する。
【００１４】
有利には、ロボットの足跡のエンベロープは、当該ロボットおよび当該ロボットの周囲の所定の保護部の速度の関数として計算される。
【００１５】
有利には、一連のコマンドは、エンベロープと何らかの障害物との衝突を回避すべく変更軌道を決定すべく計算される。
【００１６】
有利には、一連のコマンドは更に、ロボットが、当初の軌道上の目標箇所に到達予定であった時刻に当初の軌道の目標箇所に復帰すべく変更軌道および変更速度を決定すべく計算される。
【００１７】
有利には、ロボットの上半身部材は、モーター駆動される関節により互いに関節接続された体節の連鎖を含んでいる。
【００１８】
有利には、ロボットの部材のエンベロープは、関節接続された体節の周囲の所定の保護部の関数として計算される。
【００１９】
有利には、一連のコマンドは、エンベロープが障害物に接近する際に、関節接続された体節の関節のモーターの角速度の減速量を決定すべく計算される。
【００２０】
有利には、関節のモーターの角速度の減速量は、連鎖の最高速度を飽和させるべく計算される。
【００２１】
本発明はまた、少なくとも１個の上半身部材および１個の下半身部材と、目標箇所を有する当初の軌道およびコンピュータコード命令を記憶するメモリと、１個以上の障害物の位置を表すデータを取得すべく構成された複数の感知モジュールと、前記コンピュータコード命令を実行して、前記ロボットの足跡および、前記ロボットの前記上半身および下半身部材の少なくとも一方、のうちいずれか一方のエンベロープと、エンベロープと１個以上の障害物との相対位置と、エンベロープと障害物との衝突確率と、ロボットの上半身および下半身部材の少なくとも一方の軌道および速度の少なくとも一方を変更させる一連のコマンドを計算すべく構成されたプロセッサを含み、前記ロボットは、一連のコマンドが、ｉ）エンベロープと障害物との衝突を回避し、ｉｉ）充分且つ可能な場合に、メモリに記憶された当初の軌道の目標箇所に復帰すべく空間および時間の少なくとも一方に関して条件付けられていることを特徴とする、人型ロボットを開示する。
【００２２】
本発明はまた、ロボットが予め計算された軌道に復帰できるようにするものであり、当該軌道が、単にロボットが所定の位置へ移動する際の自律移動ステップの一部として計算されているか、またはロボット自身により実行される振付けの一部をなすか、あるいは複数のロボットにより実行される振付けに含まれるかにはよらない。当該実施形態において、ロボットの軌跡は、回避行動が全く自然に見えるように、予定された軌道と同期化される。有利な特徴として、ロボットの上半身部材もまた、自身の環境内で障害物を回避できるように制御される。当該実施形態において、上半身部材の所作もまた、予定された所作と再同期化されるか、またはほぼ自然に見えるように調整される。
【００２３】
本発明は、以下に示す多数の例示的な実施形態の説明および添付図面から理解が深まると共に、各種の特徴および利点も想到されよう。
【図面の簡単な説明】
【００２４】
【図１】本発明の多数の実施形態における人型ロボットの物理アーキテクチャを示す。
【図２】本発明の多数の実施形態におけるロボットのソフトウエアモジュールの機能アーキテクチャを示す。
【図３】本発明の多数の実施形態における本発明の方法の態様を実行するフロー図を示す。
【図４ａ】本発明の多数の実施形態におけるロボットの周囲の安全領域の計算をより詳細に示す。
【図４ｂ】本発明の多数の実施形態におけるロボットの周囲の安全領域の計算をより詳細に示す。
【図４ｃ】本発明の多数の実施形態におけるロボットの周囲の安全領域の計算をより詳細に示す。
【図４ｄ】本発明の多数の実施形態におけるロボットの周囲の安全領域の計算をより詳細に示す。
【図４ｅ】本発明の多数の実施形態におけるロボットの周囲の安全領域の計算をより詳細に示す。
【図４ｆ】本発明の多数の実施形態におけるロボットの周囲の安全領域の計算をより詳細に示す。
【図５ａ】本発明の多数の実施形態における再同期化された軌道の計算をより詳細に示す。
【図５ｂ】本発明の多数の実施形態における再同期化された軌道の計算をより詳細に示す。
【図５ｃ】本発明の多数の実施形態における再同期化された軌道の計算をより詳細に示す。
【図６】本発明の多数の実施形態における本発明の別の態様を実行するフロー図を示す。
【図７】本発明の多数の実施形態における本発明のロボットの上半身部材の起動を示す。
【図８】本発明の多数の実施形態におけるロボットの上半身部材を考慮に入れた安全領域の計算を示す。
【図９ａ】本発明の多数の実施形態における異なる衝突回避方策を示す。
【図９ｂ】本発明の多数の実施形態における異なる衝突回避方策を示す。
【図９ｃ】本発明の多数の実施形態における異なる衝突回避方策を示す。
【図９ｄ】本発明の多数の実施形態における異なる衝突回避方策を示す。
【発明を実施するための形態】
【００２５】
図１に、本発明の多数の実施形態における人型ロボットの物理アーキテクチャを示す。
【００２６】
同図における特定のロボット１００は、本発明を実装可能な人型ロボットの一例として挙げるに過ぎない。同図におけるロボットの下肢は、歩行機能を有していないが、当該ロボットが接する表面を転がる基部１４０により任意の方向に移動可能である。本発明は、歩行に適したロボットで容易に実装可能である。例えば、当該ロボットは、高さ１１０が約１２０ｃｍ、深さ１２０が約６５ｃｍ、および幅１３０が約４０ｃｍであってよい。特定の実施形態において、本発明のロボットは、自身の環境にメッセージ（音声、動画、ウェブページ）を伝達可能なタブレット１５０を有し、当該タブレットの触覚インターフェースを介してユーザーからの入力を受け取ることができる。タブレットのプロセッサに加え、本発明のロボットはまた、例えばインテル（商標）製のＡＴＯＭ（商標）Ｚ５３０等の自身のマザーボードのプロセッサを用いる。本発明のロボットはまた有利な特徴として、マザーボードと、特に、下肢の関節および本発明の特定の実施形態においてロボットが車輪として用いるボールの複数のモーターを制御する磁気ロータリーエンコーダ（ＭＲＥ）およびセンサを担持する基板との間のデータフローの処理専用のプロセッサを含んでいる。当該モーターは、接合を確実にするために必要な最大トルクの大きさに応じて異なる種類のものであってよい。例えば、ｅ−ｍｉｎｅｂｅａ（商標）製のブラシＤＣコアレスモーター（例えばＳＥ２４Ｐ２ＣＴＣＡ）、またはＭａｘｏｎ（商標）製のブラシレスＤＣモーター（例えばＥＣ４５＿７０Ｗ）を用いてよい。ＭＲＥは好適には、精度が１２または１４ビットのホール効果を用いる種類のものである。
【００２７】
本発明の実施形態において、図１に示すロボットはまた、各種のセンサを含んでいる。そのいくつかは、ロボットの位置および移動を制御すべく用いられる。これは例えば、ロボットの胴体内に配置されていて、３軸ジャイロメーターおよび３軸加速度計を含む慣性装置に当てはまる。ロボットはまた、当該ロボットの額部（上部および下部）に、例えば解像度が５フレーム／秒で５メガピクセル、視野（ＦＯＶ）が水平方向に５７°および垂直方向に４４°であるＳｈｅｎｚｅｎ  Ｖ−Ｖｉｓｉｏｎ  Ｔｅｃｈｎｏｌｏｇｙ  Ｌｔｄ（商標）製（ＯＶ５６４０）のようなシステムオンチップ（ＳＯＣ）型の２個の２ＤカラーＲＧＢカメラ１６０を含んでいてよい。ロボットの目の後側に、例えば解像度が２０フレーム／秒の０．３メガピクセルで２Ｄカメラとほぼ同じＦＯＶを有するＡＳＵＳ  ＸＴＩＯＮ（商標）製ＳＯＣセンサ等の１個の３Ｄセンサ１７０が備えられていてもよい。本発明のロボットはまた、自身の環境内で物体／生体との相対位置を感知可能なように、レーザー線発生器を、例えば頭部１８０ａに３個、基部１８０ｂに３個を備えていてもよい。本発明のロボットはまた、自身の環境内における音を感知可能なマイクロホンを含んでいてよい。一実施形態において、感度が１ｋＨｚで３００ｍＶ／Ｐａ±３ｄＢ、周波数範囲が３００Ｈｚ〜１２ｋＨｚ（１ｋＨｚに対して−１０ｄＢ）である４個のマイクロホンがロボットの頭部に埋め込まれていてもよい。本発明のロボットはまた、自身の環境内に存在する物体／人間との距離を測定すべく、恐らく自身の基部の前面および後面に配置された２個のソナーセンサ１９０を含んでいてよい。
【００２８】
ロボットはまた、自身の頭部および両手に、人間との交流を可能にすべく触覚センサを含んでいてよい。また、自身の進路で遭遇する障害物を検出すべくバンパー１Ｂ０を自身の基部上に含んでいてよい。
【００２９】
ロボットはまた、予定された軌道と実際の軌道との差異を計算することにより、自身の上半身部材と、自身が接触できる物体との接触を感知可能である。これを目的とする方法が、同一出願人により同日に欧州特許第１４３０５８４８．５号明細書として出願された欧州特許出願に開示されている。
【００３０】
本発明のロボットはまた、自身の感情を翻訳して、自身の環境内にいる人間と通信するために
−例えば自身の両眼、両耳および両肩にＬＥＤと、
−自身の両耳に例えば２個の拡声器を含んでいてもよい。
【００３１】
本発明のロボットは、ＥｔｈｅｒｎｅｔＲＪ４５またはＷｉＦｉ８０２．１１接続を介して基地局または他のロボットと通信可能である。
【００３２】
本発明のロボットは、約４００Ｗｈのエネルギーを有するリン酸鉄リチウム電池により給電可能である。ロボットは、自身が備える電池の種類に適合した充電ステーションにアクセス可能である。
【００３３】
ロボットの位置決め／移動は、センサの測定値を参照しながら、各下肢により画定される連鎖、および各下肢の末端に画定されるエフェクタを起動させるアルゴリズムを用いて、自身のモーターにより制御される。
【００３４】
センサ１６０、１７０、１８０、１９０、１Ａ０または１Ｂ０から、あるいは自身の上半身部材と物体との接触の推定結果から、ロボットの計算モジュールは、本出願と同日に欧州特許第１４３０５８４９．３号明細書として出願された欧州特許出願により開示されているように、自身の環境内における障害物の局所マップを計算可能である。
【００３５】
図２に、本発明の多数の実施形態におけるロボットのソフトウエアモジュールの機能アーキテクチャを示す。
【００３６】
図２は、本発明の実装をいくつかの実施形態で可能にする物理および機能アーキテクチャの概要図である。この種のロボットは有利には、本発明の一実施形態におけるロボットの機能の操縦を可能にする高水準ソフトウェアが備えている。ＮＡＯＱＩと呼ばれる、この種のソフトウェアアーキテクチャは、特に２００９年１０月１５日公開の特許出願国際公開第２００９／１２４９５５号パンフレットに開示されている。当該アーキテクチャは、ロボットとＰＣまたは遠隔サイトとの間の通信を管理し、且つ本発明の実装に必要なソフトウェア基盤を与えるソフトウェアを交換する基本機能を含んでいる。また、欧州特許第１４３０５５７８．８号明細書に、高度な交流／対話能力を有するロボットを動作させるべく設計されたオペレーティングシステムが開示されている。
【００３７】
ＮＡＯＱＩは、ロボットアプリケーション用に最適化されたフレームワークであり、いくつかの言語、特にＣ＋＋、ＰｙｔｈｏｎおよびＵｒｂｉに対応している。本発明の関連において、ＮＡＯＱＩの以下のモジュールが特に有用である。
−ＮＡＯＱＩの各種モジュール間で共有されるメモリを管理するモジュールＡＬＭｅｍｏｒｙ（２１０）、
−物理ロボット（モーター、センサ）との通信を管理するモジュールＤＣＭ（２２０）、
−基準姿勢との比較によりロボットの現在の姿勢を計算するモジュールＡＬＲｏｂｏｔＰｏｓｅ（２３０）、
−ロボットの移動を管理するモジュールＡＬＭｏｔｉｏｎ（２４０）。
【００３８】
これら４個のモジュールは有利な特徴としてＣ＋＋でコーディングされている。同図はまた、モジュール間のデータフローを示す。特に、転倒衝突回避機能の実装に必要な入力は以下の通りである。
−センサ（例えばカメラ、レーザー線発生器、ソナー、触覚センサ）の値、
−ロボットの姿勢。
【００３９】
起こりうる衝突を検出する場合、本発明を実装すべく設計されている特定の機能は、ロボットの軌跡を更新するコマンドを発する。
【００４０】
同図はまた、各モジュールにより処理されるデータの更新サイクルの値を、単に例示的に示す。ロボットの姿勢および転倒管理データの更新に２０ｍｓ、いくつかのセンサの値に１０ｍｓ。ロボットの環境内における障害物のマップは、一例に過ぎないが、３Ｄカメラにより取得された画像の処理に典型的なサイクル時間である１００ｍｓ毎に更新可能である。
【００４１】
図３に、本発明の多数の実施形態における本発明の方法の態様を実行するフロー図を示す。
【００４２】
ＡＬＲｏｂｏｔＰｏｓｅモジュール２３０から得られた（３１０）ロボットの瞬間速度および加速度が、ロボットの停止距離を計算（３２０）すべく連続的に処理され、そこからロボットの前方安全距離が計算される（３３０）。
【００４３】
当該出力および計算されたロボットの位置から、ロボットの安全領域が決定される（３４０）。
【００４４】
本発明は、ロボットが移動できるように、ロボットの周囲で障害物が存在しない領域を画定する。当該領域の大きさと形状は、並進および回転に関するロボットの瞬間速度に依存する。安全領域の形状は、以下のように決定される。
−ロボットのいかなる部位も、完全に例示的な実装において１０ｃｍである最短距離と呼ばれる特定の距離よりも障害物に近づいてはならない。
−ロボットが直ちに停止する場合であっても、いかなる部位も、停止しようとするロボットが通過する領域内に存在してはならない。
−移動方向における安全領域の大きさは、ロボットの停止距離に連続的に依存する前方距離と呼ばれる一定の距離だけ増大する。本発明の単に例示的に挙げる一実装において、前方距離は、低速で最短距離（すなわち１０ｃｍ）に、最高速度で４０ｃｍに等しく取られるが、ロボットの実際の速度に応じて異なる値を選択して、表内の結果を返す次式を用いて計算してもよい。
【００４５】
最長前方距離に含まれる余分の距離は、センサの不確実性、センサの遅延、およびロボットの周囲にいる人々の快適性を考慮に入れるためである。
前方安全距離Ｆは、次式により計算される。
【数１】
0006567563.tif 000002
ここに、
ＭＤ＝最短距離
ＳＤ＝停止距離
ＭＳＤ＝最長停止距離
ＭＦＤ＝最長前方距離
【００４６】
前方安全距離（メートル）の例を、ロボットの速度（メートル／秒）の関数として次表に示す。
【００４７】
【表１】
0006567563.tif 000003
【００４８】
上表から分かるように、最低速度０．１ｍ／ｓで移動しているロボットの最短前方安全距離は、移動していないロボットの絶対制限である最短距離１０ｃｍを僅かに上回る。前方安全距離は次いで、本発明で開示する種類の人型ロボットの最も一般的な既定速度である０．３５ｍ／ｓの速度において３０ｃｍまで増大する。
【００４９】
前方安全距離は、４０ｃｍの前方安全距離を必要とするロボットの最高速度（０．５５ｍ／ｓ）を超えるまでは増大しない。
【００５０】
図４ａ、４ｂ、４ｃ、４ｄ、４ｅおよび４ｆに、本発明の多数の実施形態におけるロボットの周囲の安全領域の計算をより詳細に示す。
【００５１】
同図において、自律ロボット４１０ａ、４１０ｃ、４１０ｅが有向速度４２０ａ、４２０ｃまたは４２０ｅで移動している。速度４２０ｃが速度４２０ａより速いことが分かる。また、ロボット４１０ｅの移動は、ロボット４１０ｃの前方速度４２０ｃにほぼ等しい前方速度４２０ｅで、ロボットの左側に向けられている。
【００５２】
安全領域４１０ｂ、４１０ｄおよび４１０ｆがロボットの周囲に画定され、当該安全領域はロボットの速度に依存する異なる大きさを有している。図４ｂ、４ｄ、４ｆにおいて、三角形４２０ｂ、４２０ｄ、４２０ｆの向きはロボットの移動の向きに依存する。一方、三角形４２０ｂ、４２０ｄ、４２０ｆの大きさは、ロボットの瞬間速度に依存し、その各々の大きさはロボットの速度に合わせて増大する。安全領域は、従来技術のように各障害物の周囲ではなく、ロボットの周囲に画定される。また、安全領域は、図４ｆに示すように、ロボットと共に回転する。
【００５３】
図５ａ、５ｂ、５ｃに、本発明の多数の実施形態における再同期化された軌道の計算をより詳細に示す。
【００５４】
本発明のロボットはまた、ロボットが第１の箇所５１０ａから第２の箇所５２０ａに移動する目的のためだけに誘導された変位を実行してもよい。このような状況下で、ロボットの部材の変位および付随する移動のタイミングはあまり重要でない。従って、第１の箇所から第２の箇所まで移動する自身の軌道５３０ａを、障害物５４０ｂを回避すべく変更する必要があるロボットは、当該障害物を回避すべく迂回した後で、第２の箇所に復帰するための時間には拘束されない。しかし、ロボットの部材の変位および移動が、単体のロボットとして、または他のロボット群あるいは人間と協調して所作を実行すべく調整を要し、第２の箇所５２０ａに到達する時刻が当該所作と整合する、すなわち最初に予定された時刻に合致する必要がある。
【００５５】
同図から、障害物５４０ａが衝突経路に存在する可能性があると判定された場合、当初の軌道５３０ａが変更されることが分かる。
【００５６】
自身の軌道上を進行するロボットの周囲の安全領域内における障害物の存在が、例えば本出願と同一日に同一出願人名で出願された欧州特許第１４３０５８４９．３号明細書に開示されている方法を用いて検出される。当該方法によれば、ロボットの環境の局所ピクセルマップがロボットの周囲に作成され、多数のセンサ（典型的には２Ｄまたは３Ｄカメラ、レーザー線発生器、ソナー、触覚センサ）からの測定値の相関を求めることにより、軌道上に障害物が存在しない確率が決定される。当該マップは、底部がロボットの進行面への投影である円柱であってよいが、いくつかの実装例では、完全な３Ｄ空間領域であってもよい。
【００５７】
この場合、当初の軌道５５０ｃは辿られず、新たな区間５６０ｃで代替され、ロボットの速度は、当該ロボットが最初に予定された時刻に第２の箇所５２０ａに復帰可能なように調整する必要がある。従って、本発明の方法は、ロボットを停止させる、または単に方向を変える、のいずれかの動作を自動的に計算し、次いで正確な絶対位置および軌道のタイミングを維持しながら第２の箇所で当初の軌道に復帰する。
【００５８】
図６に、本発明の多数の実施形態における本発明の別の態様を実行するフロー図を示す。
【００５９】
本発明はまた、移動がロボットの部材により実行される場合に、軌道の当初のタイミングを維持しながら、軌道上の障害物との衝突を回避する同じ課題を解決する。
【００６０】
この場合、問題は、恐らくは所作の速度および振幅を変更しながら、衝突を回避すると共に当初の所作の全般的な方向および内容を維持するように制御する必要がある関節の動きにある。
【００６１】
この結果は、例えば以下のステップを実行することにより得られる。
−全ての制御サイクルで、動作制御器が全ての関節に対して関節目標位置を入力として受け取る（６１０）。当該目標は振り付けられたアニメーションから得ても、または計算の結果であってもよい。
−当該目標位置から、本方法は、ロボットの全ての部位の目標速度を計算する（６２０）。
−全ての部位に対して、本方法は、当該部位を含む連鎖の最高関節速度を計算する（６３０）。当該速度は、当該部位の近くの障害物の位置に依存する（６４０）。当該速度は、障害物が当該部位に近く、且つ目標速度の方向に存在する場合は低く、障害物が遠いかまたは当該部位の目標速度の反対方向に存在する場合は無制限であり、中間にある障害物の相対位置に連続的に依存する。
【００６２】
連鎖内の関節速度は従って、最高安全値で飽和する。
【００６３】
関節速度の最高安全値は、例えば後述のように計算可能である。
【００６４】
ロボットの部位に相対的な障害物の極座標位置を（ｄ，θ）と表記し、障害物が目標速度の方向にある場合はθ＝０である。ｆ（ｄ，θ）を連鎖の最高安全性速度、θ最小、θ最大、ｄ最小、ｄ最大、ｆ最小、ｆ最大をいくつかのユーザー定義されたパラメータとすれば、以下が成り立つ。
θ≦θ最小且つｄ≦ｄ最小ならばｆ（ｄ，θ）＝ｆ最小、
θ≦θ最小且つｄ最小≦ｄ≦ｄ最大ならばｆ（ｄ，θ）＝ｆ最小＋（ｄ−ｄ最小）／（ｄ最大−ｄ最小）＊ｆ最大、
θ≦θ最小且つｄ最大≦ｄならばｆ（ｄ，θ）＝ｆ最大、
θ最小≦θ≦θ最大ならばｆ（ｄ，θ）＝ｆ（ｄ，０）＋（θ−θ最小）／（θ最大−θ最小）＊（ｆ最大（ｆ（ｄ，０））、
θ≧θ最大ならばｆ（ｄ，θ）＝ｆ最大
【００６５】
一実施形態において、以下のユーザー定義されたパラメータを用いることができる。
θ最小＝π／４ｒａｄ、θ最大＝３π／４ｒａｄ、ｄ最小＝０．１ｍ、ｄ最大＝０．５ｍ、ｆ最小＝０ｒａｄ／ｓ、ｆ最大＝６ｒａｄ／ｓ
【００６６】
しかし、ロボットの使用シナリオに応じて他の値も設定可能である。また、ロボットの環境に応じてパラメータの動的な設定を画定することができる。
【００６７】
次いで、結果としての動きを計算する（６５０）。
【００６８】
図７に、本発明の多数の実施形態における本発明のロボットの上半身部材の起動を示す。
【００６９】
上半身部材連鎖の目標位置７２０が計算に入力され、軌道７３０を用いて、
部材連鎖を当初の位置７１０から目標位置７２０まで動かす所作が、障害物から関節までの距離を考慮に入れながら、当該所作の速度の飽和を用いて各関節に対して計算される。
【００７０】
障害物の位置が、例えばシリンダが２Ｄマップの上に形成された上述の障害物のマップを用いて、または２Ｄマップに加え、いくつかのセンサ（例えば３Ｄカメラ）から直接得られた多数の基準点を用いて決定される。いくつかの実施形態において、絶対最短安全距離が、各関節の周囲に画定されていてもよい。有利な特徴として、当該絶対安全距離は約１０ｃｍである。
【００７１】
図８は、本発明の多数の実施形態におけるロボットの上半身部材を考慮に入れた安全領域の計算を示す。
【００７２】
同図に、ロボットの部位およびその目標速度方向８４０に相対的な障害物位置（ｘ、ｙ）に依存する最高速度を示す。濃い灰色の領域８１０では、最高速度はゼロである。薄い灰色の領域８２０では、最高速度は不変である。中間の灰色の領域８３０では、上述のように、ロボットの連鎖をなす関節の速度は、飽和速度を画定することにより変更される。
【００７３】
図９ａ、９ｂ、９ｃ、９ｄは、本発明の多数の実施形態における異なる衝突回避方策を示す。
【００７４】
同図に示す例において、図９ａに示すように、右方向へ基準移動する単一の関節を考慮する。
【００７５】
図９ｂでは、障害物９１０ｂが薄い灰色の領域８２０に存在するため、移動は不変である。
【００７６】
図９ｃでは、障害物９１０ｃが中間の灰色の領域８３０に存在するため、移動が減速される。
【００７７】
図９ｄでは、障害物は９１０ｄが濃い灰色の領域８１０に存在するため、移動が停止される。
【００７８】
ロボットの周囲の安全領域は従って、進行面上の障害物および進行面から一定の高さにある障害物を含んでいてよい。２Ｄ安全領域における障害物の検出により決定される軌道の変更はまた一般にロボットを、自身の部材と第２のカテゴリの障害物との衝突から保護する。
【００７９】
これはしかし、特にロボットが、当該ロボットから最短安全距離よりも遠くにいる人間と交流しているが、無論自身の部材は安全領域に入り得る場合、必ずしも当てはまらない。この場合、障害物との距離の検出に基づいて関節速度が飽和する実施形態を用いて、ロボットの所作は注意深く制御されなければならない。
【００８０】
従って、本発明による、自身の進行面上のロボットの２Ｄ軌跡の制御、および自身の部材の関節の角速度の制御を可能にするアルゴリズムを並列に実行して、ロボットが相手とする人間と交流している間に衝突が生じないことを保証する。
【００８１】
上述の例は、本発明の実施形態の具体例として挙げたものである。これらは、以下の請求項により定義される本発明の範囲を何ら制限するものではない。
【図１】
0006567563.tif 000004
【図２】
0006567563.tif 000005
【図３】
0006567563.tif 000006
【図４ａ】
0006567563.tif 000007
【図４ｂ】
0006567563.tif 000008
【図４ｃ】
0006567563.tif 000009
【図４ｄ】
0006567563.tif 000010
【図４ｅ】
0006567563.tif 000011
【図４ｆ】
0006567563.tif 000012
【図５ａ】
0006567563.tif 000013
【図５ｂ】
0006567563.tif 000014
【図５ｃ】
0006567563.tif 000015
【図６】
0006567563.tif 000016
【図７】
0006567563.tif 000017
【図８】
0006567563.tif 000018
【図９ａ】
0006567563.tif 000019
【図９ｂ】
0006567563.tif 000020
【図９ｃ】
0006567563.tif 000021
【図９ｄ】
0006567563.tif 000022