"ロボットシステムであって、速度制御信号に応答するロボット機構を有し、前記ロボット機構は、少なくとも2自由度および許される作業スペースを備え、前記ロボットシステムはさらに、前記ロボット機構の動作を制御するように構成されるホストマシンを有し、前記ホストマシンはさらに、前記作業スペースに凸多角形境界を適用するように構成され、前記ホストマシンは、前記境界に対する前記ロボット機構の参照ポイントの位置を決定し、また、前記参照ポイントの位置の関数として速度制御信号を自動的に形成することにより前記境界を守らせる、アルゴリズムを含み、それにより、前記境界のエッジおよび角部に沿って、前記ロボット機構の滑らか且つ乱れの無い動作を提供する、ロボットシステム。請求項1に記載のロボットシステムであって、前記アルゴリズムは、前記参照ポイントが前記境界内に位置するときに、第1の方法において速度制御信号を形成し、前記参照ポイントが前記境界の外に位置するときに第2の方法において速度制御信号を形成する、ロボットシステム。請求項1に記載のロボットシステムであって、前記ロボット機構は、開放手首ジョイントを備えるロボット手首アセンブリである、ロボットシステム。請求項3に記載のロボットシステムであって、前記ロボット手首アセンブリのジョイントは、閉鎖リンクにおける少なくとも1つの間接駆動アクチュエータにより駆動され、前記ジョイントの自由度および前記アクチュエータの自由度は連結される、ロボットシステム。請求項1に記載のロボットシステムであって、前記ホストマシンは、前記参照ポイントが前記境界の外側に位置するときに、前記境界から外に向かう、前記ロボット機構の法線速度成分を自動的にゼロにするように構成され、それにより、前記参照ポイントが前記境界から離れるように移動することを防止し、一方で、前記境界の接線方向の、前記ロボット機構の速度を許容する、ロボットシステム。請求項1に記載のロボットシステムであって、前記ホストマシンは、前記参照ポイントが前記境界の外に位置するときに、前記境界から前記参照ポイントまでの距離を決定し、速度制御信号が前記境界の方を向き且つ前記距離に比例するように、速度制御信号を重ね合わせるように構成される、ロボットシステム。請求項1に記載のロボットシステムであって、前記ホストマシンは、前記参照ポイントの望ましい速度を決定し、前記参照ポイントが、前記境界に対応して較正されるバッファ内に位置するかどうかを決定し、前記参照ポイントが前記境界内に位置し且つ速度が前記境界に向かっているときに、現在の速度の法線成分がゼロになるように徐々に減少させる、ように構成される、ロボットシステム。請求項1に記載のロボットシステムであって、前記ホストマシンは、前記参照ポイントの望ましい速度を決定し、前記参照ポイントが、前記境界に対応して較正されるバッファ内に位置するかどうかを決定し、前記望ましい速度の、前記境界の隣接セグメントに対して垂直な方向に外側に向いた成分を徐々に減少させる、ように構成される、ロボットシステム。速度制御信号に応答するロボット機構を備えるロボットシステム内で用いられるホストマシンであって、前記ロボット機構は少なくとも2自由度を備え、また、凸多角形境界により画定される許される作業スペースを備え、前記ホストマシンは、前記ロボット機構の動作を制御するように構成され、且つ、前記境界に対する前記ロボット機構上の参照ポイントの位置を決定するように構成される、ハードウェアモジュールと、前記参照ポイントの位置の関数として速度制御信号を自動的に形成することにより前記境界を守らせるように構成されるアルゴリズムと、を有し、それにより、前記境界のエッジおよび角部に沿って、前記ロボット機構の滑らで乱れのない動作を提供する、ホストマシン。請求項9に記載のホストマシンであって、前記アルゴリズムは、前記参照ポイントが前記境界内に位置するときに、第1の方法において速度制御信号を形成し、前記参照ポイントが前記境界の外に位置するときに第2の方法において速度制御信号を形成する、ホストマシン。請求項9に記載のホストマシンであって、前記ホストマシンは、前記参照ポイントが前記境界の外に位置するときに、前記境界から外に向かう、前記ロボット機構の法線速度成分を自動的にゼロにするように構成され、それにより、前記参照ポイントが、前記境界から離れて移動することを防止し、一方で、前記ロボット機構の前記境界の接線方向の速度を許容する、ホストマシン。請求項9に記載のホストマシンであって、前記ホストマシンは、前記参照ポイントが前記境界の外に位置するときに、前記境界から前記参照ポイントまでの距離を決定し、且つ、速度制御信号が前記境界に戻る方を向き且つ前記距離に比例するように、速度制御信号を重ね合わせる、ように構成される、ホストマシン。請求項9に記載のホストマシンであって、前記ホストマシンはさらに、前記参照ポイントの望ましい速度を決定し、前記参照ポイントが前記境界に対応して較正されるバッファ内に位置するかどうかを決定し、前記参照ポイントが前記境界内に位置し且つ現在の速度が前記境界の方を向いているときに、現在の速度の法線成分がゼロになるように徐々に減少させる、ように構成される、ホストマシン。請求項9に記載のホストマシンであって、前記ホストマシンはさらに、前記参照ポイントの望ましい速度を決定し、前記参照ポイントが前記境界に対応して較正されるバッファ内に位置するかどうかを決定し、前記境界の隣接セグメントに対して法線方向外側を向く、現在の速度の成分を徐々に減少させる、ように構成される、ホストマシン。少なくとも2自由度を備えるロボット機構の許される作業スペースの、凸多角形境界を守らせる方法であって、前記方法は、前記ロボット機構上の参照ポイントが前記境界内に位置するかどうかを決定するステップと、前記参照ポイントの位置の関数として速度制御信号を自動的に形成するステップと、を有し、それにより、前記境界の周辺に沿っておよび前記境界の角部内において、前記ロボット機構の滑らか且つ乱れのない動作を提供する、方法。請求項15に記載の方法であって、参照ポイントの位置の関数として速度制御信号を自動的に形成する前記ステップは、前記参照ポイントが前記境界内に位置するときに、第1の方法でホストマシンを介して速度制御信号を形成するステップと、前記参照ポイントが前記境界の外に位置するときに、第2の方法でホストマシンを介して速度制御信号を形成するステップと、を有する、方法。請求項15に記載の方法であって、さらに、前記参照ポイントが前記境界の外に位置するときに、前記境界から離れる方を向く、前記ロボット機構の速度の法線成分を自動的にゼロにするためにホストマシンを使用するステップを有し、前記参照ポイントが前記境界から離れて移動することを防止し、一方で、前記ロボット機構の前記境界の接線方向の速度を許容する、方法。請求項15に記載の方法であって、さらに、前記参照ポイントが前記境界の外に位置するときに、前記境界から前記参照ポイントまでの距離を決定するステップと、速度制御信号が前記境界に戻る方を向き且つ前記距離に比例するように、ホストマシンを介して速度制御信号を重ね合わせるステップと、を有する、方法。請求項15に記載の方法であって、さらに、前記参照ポイントの望ましい速度を決定するステップと、前記参照ポイントが前記境界に対応して予め決定されるバッファ内に位置するかどうかを決定するステップと、前記参照ポイントが前記境界内に位置し且つ現在の速度が前記境界の方に向いているときに、望ましい速度の法線成分がゼロになるように徐々に減少させるステップと、を有する、方法。請求項15に記載の方法であって、さらに、前記参照ポイントの望ましい速度を決定するステップと、前記参照ポイントが、前記境界の角部に対応して予め決定されるバッファ内に位置するかどうかを決定するステップと、前記境界の隣接セグメントに対して、法線方向外側を向く、望ましい速度の成分を徐々に減少させるステップと、を有する、方法。0004器用なロボットは、開放手首ジョイントを備えるロボット手首アセンブリのような、1つまたはそれ以上のエンドエフェクタを備えることができ、エンドエフェクタの適正な制御は、把持された物体のより正確な操作を可能にする。開放手首ジョイントは、手首の自由度をもたらし、閉鎖機構における間接駆動により駆動される。任意の速度制御される手首アクチュエータのアクチュエータ空間と、ジョイント空間自身との間のマッピングは、当業界で理解されるように関連付けられ、また、非線形である。それゆえ、このようなリストジョイントは、不規則な形状の許容される作業スペースを備えることになる。そのような作業スペース内で動作するロボット機構の安定した動作は、ロボットシステムの最適な機能にとって重要である。0005そこで、本願において、速度制御信号に応答するロボット手首アセンブリのような速度制御されるロボット機構の複雑な多角形作業スペース境界を守らせるためのソフトウェアベースの方法が提供される。本発明の方法は、任意の関連付けられる複雑な作業スペースに適用でき、ここで、ロボット機構の自由度DegreesoffreedomDOFは、連結される非直接的なジョイントアクチュエータにより駆動される。DOFとジョイントアクチュエータとの間の関連付けられるマッピングにより、作業スペースの境界は、単純なハードストップよりもソフトウェアで実行される。本明細書において、説明目的のために閉鎖手首機構が用いられるが、本発明の方法は、任意の直列マニピュレータの動作空間に適用することもできる。0006本明細書において、ロボット機構の複雑な作業スペースは、数学的な技術分野で理解されるような、凸多角形、すなわち実ベクトル空間においてn個の角により画定される凸部のセット、により画定される。凸多角形作業スペースは、従来の矩形の作業スペースに対して、ロボット機構に大きく増加した運動範囲を提供する。さらに、本方法は、ソフトウェアにより引き起こされる、境界部に沿うところ、すなわち、作業空間のエッジおよび角部に沿うところで生じる、行き詰まりsticking、すべり、およびばたつきを除去する。0007特に、本明細書において、ロボット機構を備えるロボットシステムが提供される。ロボット機構は、速度制御信号に応答し、また、許容される作業スペース、すなわち機構の複数のジョイントに同時に依存する作業スペースを備える。本システム内において、ホストマシンは、境界に対するロボット機構の参照ポイントの位置を決定する。ホストマシンは、境界に対する参照ポイント位置の関数として速度制御信号を自動的に形成することにより、境界を守らせるためのアルゴリズムを含み、境界のエッジおよび角部に沿って、ロボット機構の滑らか且つ落ち着いた動作を提供する。0008ホストマシンは、ロボットシステム内での使用に適合するように提供される。上述したように、本システムは、速度制御信号に応答するロボット機構を含む。ホストマシンは、ロボット機構に電気的に接続されたハードウェアモジュールを含み、また、ハードウェアモジュールは、たとえばジョイントセンサまたは他のセンサを用いて、複雑な多角形の境界に対するロボット機構の参照ポイントの位置を決定する。ホストマシンは、境界を守らせるためのアルゴリズムを含む。ハードウェアモジュールによるアルゴリズムの実行は、境界に対する参照ポイントの位置の関数として、自動的に速度制御信号を形成し、それにより、境界のエッジに沿う、および角部内での、ロボット機構の滑らか且つ乱れの無い動作を提供する。境界のエッジおよび角部付近に付与される遷移バッファは、安定したばたつかない動作を確保し、特に高速および/または外力を伴う場合である。0009また、上述の複雑な多角形境界を守らせるための方法が提供される。本方法は、機構の参照ポイントが境界内にあるかどうかを決定し、境界に対する参照ポイントの距離の関数として速度制御信号を自動的に形成し、それにより、境界のエッジおよび角部でのロボット機構の滑らか且つ安定な動作を確保する。0010本発明の上述の特徴および利点、および他の特徴、利点は、添付の図面ともに、以下の本発明を実施する最良の形態の詳細な説明からおのずと明らかになるであろう。添付図面は以下の通りである。0020図面を参照すると、いくつかの図面を通じて同様の参照符号は同一または類似の要素を示す。図1において、ロボットシステム10は、1つまたはそれ以上の複雑な自動化される作業を実行するように構成される。ロボットシステム10は、独立におよび/または相互に依存する可動ロボットジョイントを備えるように構成され、限定するわけではないが、肩ジョイントを備え、この位置は全体として矢印Aで示される。ロボットシステム10は、また、肘ジョイント矢印B、手首ジョイント矢印C、首ジョイント矢印D、腰ジョイント矢印E、および様々な指/親指ジョイント矢印Fを含むことができる。0021追加的に、ロボットシステム10は、1つまたはそれ以上の擬人化した器用なハンド14を備える下アームアセンブリ12を含み、それぞれは手首アセンブリ16を介して運動できる。各ハンド14は、図示のように対向する親指および1つまたはそれ以上の指を含むことができ、一緒に動作するときこれらは同一のハンド内で物体20を把持することができ、または、異なるハンド間で協働して物体20を把持することができる。手首アセンブリ16は、閉鎖ロボット機構を形成し、これは本明細書で説明される方法またはアルゴリズムを介して制御することができる。以下で説明するように手首アセンブリ16を制御するときに、当業者に理解されるように、本方法は、ロボットシステム10内の他のロボット機構の制御に適用することもできる。0022ホストマシンHOST18は、制御アルゴリズム100の実行を介して、手首アセンブリ16の画定される所定の作業スペース限界を守らせる強制するように構成され、これは、以下で説明されるように速度制御信号矢印11を形成および適用することにより行われる。このような強制は、不規則な形状または凸形状の作業スペースを提供し、手首アセンブリ16の境界のエッジおよび角部に沿った滑らかな安定した動作を提供し、これらは図3-9とともに以下で詳細に説明される。0023ホストマシン18は、適切に構成されたハードウェアモジュール22を含み、これは、たとえば手首アセンブリ16のような制御される機構に電気的に接続される。ハードウェアモジュール22は、1つまたはそれ以上のマイクロプロセッサまたは中央処理装置CPU、十分な読み出し専用メモリROM、および十分なランダムアクセスメモリRAMを備えるディジタルコンピュータまたはデータ処理装置を含むことができる。また、ハードウェアモジュール22は、消去可能な電気的にプログラム可能の読み出し専用メモリEEPROM、高速クロック、アナログ-ディジタルA/D回路、ディジタル-アナログD/A回路、必要な入力/出力I/O回路または装置、適切な信号調整機器およびバッファ機器を備えることができる。ハードウェアモジュール22またはそこから容易にアクセス可能な媒体に存在する、以下で図4とともに説明するアルゴリズム100を含む個別の制御アルゴリズムは、必要な制御機能を提供するために必要に応じてモジュールにより自動的に実行することができる。0024図2を参照すると、下アームアセンブリ12が手首アセンブリ16を含むようにより詳細に示されている。上述したように、手首アセンブリ16は、本方法において制御するのに適したロボット機構であり、それゆえ、図2の手首アセンブリは、以下で説明的な目的のために用いられる。手首アセンブリ16の運動は、1つまたはそれ以上のアクチュエータ24を介して提供される。一実施形態において、たとえば、たとえば張力および/または力発生ジョイントモータのようなプッシュ-プル線形アクチュエータのようなアクチュエータ24は、図示のように下アームアセンブリ12の構造内に埋め込まれる。0025手首アセンブリ16は異なる方向に移動可能であり、それゆえ、異なるピッチpitchθ軸、ヨーyawψ軸に沿って運動できる。手首アセンブリ16の位置は、センサ15を介して決定することができ、センサからの測定値は図1のホストマシン18に伝達される。センサ15は、ピッチ軸およびヨー軸に沿うジョイント角度を決定するように構成されたジョイントセンサを含むことができ、および/または、以下で説明する手首アセンブリ16の参照ポイントの位置を決定して図1のホストマシン18に位置情報を伝達するように構成された他の装置を含むことができる。手首アセンブリ16は、閉鎖機構内の間接駆動を介するアクチュエータ24を介して運動することができ、アクチュエータ空間とジョイント空間との間の必要なマッピングは結合され且つ非線形であり、すなわち、ジョイントとアクチュエータの自由度との間のマッピングは、ジョイントの速度が複数のアクチュエータの速度の関数となるように結合coupleされる。そのため、手首アセンブリ16は、不規則な形状の、または、凸多角形境界の許容される作業スペースを備え、以下で図3とともに説明される。0026図3を参照すると、図2に示す手首アセンブリ16の許容される作業スペース30は、凸多角形境界40により画定される。作業スペース30は、図示のようにピッチθ軸、ヨーψ軸に関してプロットすることができる。作業スペース30は、多くの異なる要因により物理的に制限され得る。図3に概略的に示すように、作業スペース30は、繊細なワイヤ特徴32の近接により、ピッチ限界のような数学的な特異性特徴34、および、たとえば図2の下アームアセンブリ12のケーシングとの接触のような、ハードストップ特徴36により部分的に境界付けられる。物理的または仮想的な他の変数は、同様に作業水ペース30を画定および/または制限することができる。0027従来のロボットのジョイント限界は、典型的には独立に画定され、図3において軸に整合する矩形のようにされる。従来の作業スペースは、それゆえ、たとえば図3に示されるような多角形のような凸多角形に大きく広げられる。しかし、拡張された作業スペースの複雑な性質は、必要な制御の複雑さのレベルを大きく増加させることになる。0028図4を参照すると、本発明のアルゴリズム100は、自動的に、不規則な形状の作業スペース内で速度ベースの制御が発生することを可能にし、たとえば、上述の作業スペースにおいて、図3に示される境界40のような境界に沿って、制御されるロボット機構の滑らかで安定したばたつきの無い動作を提供する。アルゴリズム100は、2つの重要な特徴を備える。それは、1凸多角形マネジメント技術、および2速度分布マップまたはロジックである。これらは以下でさらに説明される。概念的な図示のために、現在の作業を通じて2の自由度DOFが用いられるが、3またはそれ以上の自由度DOFを用いることもできることが当業者に理解されるであろう。0029アルゴリズム100の実行は、自動的に、アークセグメントテストarcsegmenttestを用いて作業スペース30の境界40を同定し、機構のアーク内の参照ポイントPが作業スペース30内にあるかどうかを決定し、および、境界40からの参照ポイントPの距離の関数として図1の速度制御信号11を形成する。一実施形態において、図1のホストマシン18は出力速度を形成し、信号11を介して、参照ポイントPが作業スペース30の外に位置するならばある方法で機構に出力速度を適用し、参照ポイントPが作業スペース内に位置するならば他の方法で機構に出力速度を適用する。0030図5を手短に参照すると、作業スペース30は、複数の角ポイントにより画定することができ、これらは図示の例のように順番に符号1-5が付されている。作業スペース30は、異なる隣接するアークセグメント50に分割することができ図6参照、重心52から半径方向外側に引いた線により画定される。参照ポイントPが位置する特定のアークセグメント50の同定は、以下で説明される後の速度形成機能に重要な役割をする。0031図4を再び参照すると、アルゴリズム100はステップ102で開始し、ここで、望ましい速度が、図1に示すホストマシン18に速度制御信号11として入力され、また、たとえばセンサ15または他の適当な手段を用いて手首アセンブリ16の現在位置が決定される。現在位置は、上述の参照ポイントPである。アルゴリズム100は、その後、ステップ104に進む。0032ステップ104において、手首アセンブリ16のアークセグメント50が同定される。図6を参照すると、機構上の参照ポイントPからのベクトルの範囲を定める互いの角度ψ1-ψ5が示されている。アルゴリズム100は、参照ポイントPがいずれのアークセグメント50に位置しているかを決定する。その答えは、以下で説明される速度形成ステップでの使用のために、境界40のいずれのラインセグメントか、および、いずれの対応する法線ベクトルかを決定する。0033θ1は、図5に示すようにr^CPおよびr^C1の間の角度であると考えられ、ここでCは重心52を示す。参照ポイントPがたとえば図5のセグメント12にあるかどうかをテストするためには参照ポイントPがセグメント12にあるためには、以下の2つの条件を満たす必要がある。ここでk^は、平面外への単位ベクトルを示す。第1条件は、参照ポイントPが、2つの角ベクトル、rC1およびrC2、の間に位置するか、または、負の2つの角ベクトル、-rC1および-rC2の間に位置することを保障する。第2の条件は、後者の可能性を排除する。作業スペース30の包絡線の内側では、単純に最も近いラインセグメントを探し、包絡線の外側では、不正確な境界線を同定するかもしれない。説明目的のために、ここでは、参照ポイントPは、セグメント12内に位置すると仮定し、また、左のエッジよりも右のエッジに近い、すなわちθ2<θ1であると仮定する。図5に示すように、n1は第1法線であり、n2は第2法線である。同様の方式で、以下で説明するように、d1は参照ポイントPから第1境界への距離を示し、d2は第2境界への距離を示す。0034図4を参照すると、ステップ106において、図1のホストマシン18は、参照ポイントPが境界40の包絡線内に位置するかどうかを決定する。参照ポイントPが境界40の包絡線内に位置する場合、アルゴリズム100は、ステップ108に進む。参照ポイントPが境界40内にない場合、アルゴリズムはステップ107に進む、0035ステップ106は、2つの方法で実行することができる。第1の方法として、図6に示すように、参照ポイントPから各角部に引いたベクトルrPiを考える。ψiは2つの連続するベクトルの間の角度を示す。ベクトル間の角度は、[0,π]の範囲で画定することができる。参照ポイントPは、の時にだけ作業スペース30の包絡線内に位置する。0036第2の方法は、これは高次のDOFに拡張可能であり、境界40の各ラインセグメントの法線ベクトルを見る。niをセグメントiの法線方向の単位ベクトルとする。この法線は、作業スペース30内に向くようにする。重心は作業スペース30内に位置することが保障されているので、法線ベクトルは重心52に関して導かれる。したがって、カウントi1は、1からi=nである。したがって、参照ポイントPは、のときにだけ、包絡線内に位置する。0037ステップ104において正確なアークが決定され、およびステップ106においてその参照ポイントPが境界の外側に位置する場合、ステップ107において、ホストマシン18は、速度制御信号11を設計および計量または形成し、その後ステップ109に進む。境界40をソフトウェアにおいて守らせるように、手首アセンブリ16の速度制御信号11は、自動的に形成される必要がある。当業者に理解されるように、DOFと図2の手首アセンブリのアクチュエータ24との間の結合されたマッピングにより、境界40は、単純なジョイント限界を用いてハードウェア内で実行することができない。0038図7を参照すると、境界40に関する可能な速度分布パターン56、58のスナップショットが示されている。これらの分布パターン56、58は、2つの重要な考慮を反映する。第1に、参照ポイントPが作業スペース30の外に位置する場合、境界40から離れる方向を指すあらゆる法線成分は、ホストマシン18により自動的にゼロにされる。このステップは、参照ポイントPが、境界に沿う接線方向の速度を許容しながら、境界40から離れるように移動することを防止する。これらの接線方向の速度は、制御されるロボット機構、たとえば手首アセンブリ16が、ソフトウェア起因の行き詰まり、および/またはすべりを生じさせずに自由に移動することを可能にするために重要であり、また、参照ポイントPが、望ましいポイントに最も近い境界上の点を探すことを可能にするのに重要である。第2に、不安定性およびばたつきを防止するために、あらゆる可能な速度の1つの領域から他の領域への任意の遷移は連続的でありまた漸進的である。これらの遷移は、図7に示されるように、境界40のエッジおよび角部の両方で生じる。0039それゆえ、参照ポイントPは、境界40の包絡線の外側に位置するように決定される場合、境界から離れる方向を指すあらゆる速度成分は自動的にゼロにされる。これにより、図7に示すような半円形の速度分布パターン56が得られる。さらに、さらに、境界40に戻る方向を指す速度成分、および境界からの距離に比例する速度成分が重ねあわされる。0040ステップ108において、図7に示されるように、作業スペース30内で動作するとき、図4のアルゴリズム100は、参照ポイントPが予め決定されたバッファ55内にあるかどうかを決定し、バッファ55は、境界40と予め決定された内側境界40Aとの間の領域として画定される。このバッファ55が、距離dmaxにより画定され、以下の式を用いることができる。参照ポイントPがバッファ55の外にある場合、アルゴリズム100は、ステップ112に進み、他の場合、参照ポイントPがバッファ内にあるときにステップ110に進む。0041ステップ109において、ホストマシン18は、参照ポイントPは、図7のバッファ55内にあるかどうかを決定し、バッファ55内にあるならステップ111に進む。そうでない場合、アルゴリズム100はステップ113に進む。0042ステップ108で参照ポイントPがバッファ55内にあることが決定されると、ステップ110において、図1のホストマシン18は、境界40に沿う法線成分を混合し、または、ホストマシンは、参照ポイントPがどこに位置するかに応じて、作業スペース30の各角部における混合された遷移のためにアカウントする。すなわち、参照ポイントPがバッファ55内にあり、速度が境界40に向かっている場合、速度の法線成分は、徐々にゼロに近づき、内側から外側への連続的に遷移を提供する。0043作業スペース30の角部で動作するとき、包絡線の内側のポイントは、主境界、つまり境界40に近づき、速度の任意の法線成分はホストマシン18により減少させられる。つまり、境界40の隣接するセグメントに関して法線方向の外側に向く望ましい速度の成分は徐々に減少する。さらに、ポイントが角部に入り内側境界40Aに近づくとき、接線方向速度もまた減少させられる。2段階プロジェクションを用いることで、第1段階は、内側境界40Aに関して法線成分を減少させる。第2プロジェクションは、主境界、すなわち境界40に関して法線成分を減少させる。角部における包絡線の内側のポイントの新しいルールは、である。その後、アルゴリズムはステップ112に進む。0044ステップ111において、ホストマシン18は、速度制御信号11をプロジェクトおよびスケールし、ステップ113に進む。0045ステップ112において、ホストマシン20は、望ましい速度を維持し、すなわち、ホストマシンは速度制御信号11の変更をせずに出力する。アルゴリズム100は終了する。0046ステップ113において、仮想のまたはソフトウェアに基づくバネが追加され、これは、境界40からの参照ポイントPの距離に比例し、すなわちf=kΔxである。手首アセンブリ16は、ソフトウェアにより境界40に戻ることを強いられ、境界において速度がゼロになるようにされる。0047図8を参照すると、仮想バネ成分に必要な遷移の理解において、角部から参照ポイントPへのベクトル、すなわちr2Pを考え、これを単位円60上に投影プロジェクトする。理想的な解は、vs=kd1n1、をr2Pが領域Iに位置するときを除いて全ての場合にバネの定義を適用する。領域Iにおいて、バネは角部へのベクトルに基づき、vs=-kr2Pである。kは比例定数である。結果は、参照ポイントPが1つのセグメントから次のセグメントに移動するときに、連続的であり、なめらかなバネ値である。残念ながら、単位円60に対する参照ポイントPの相対位置を決定するように試みることは、無視できない余分な計算を生じさせる。単位円60の位置は、上述のアークセグメントテストからの結果に独立であり、いくつかの新しい角度計算を必要とする。0048代替的に、近似解を決定することができ、これは満足に機能し、また、前に計算されたデータを用いる。この解は、角部の角度θ2を考え、2つの隣接する法線をブレンドし、1つのアークセグメントから次のアークセグメントへの方向における連続的な変化を提供する。バネ成分の新しいルールは、である。0049仮想バネ70、すなわち上述したルールを強制するためにソフトウェアにより生成された仮想バネは、ホストマシン18により採用され、速度成分vs=kd1n1とともに境界40を守らせる。特に、仮想バネ70により提供されるバネ成分は、可逆動作可能backdrivableなシステムに必要であり、この語は本業界で理解されている。vは初期の望ましい速度を表すものとし、v0は速度成形後に命令される出力を表すものとする。以下のルールは、包絡線の内外の速度を画定する。このルールは、作業スペース30の側部および角部への連続的な遷移を提供し、しかし、アークセグメントを横切る遷移は不連続となる。参照ポイントPが1つのアークセグメントから次のアークセグメントに横切るときに、主および副の境界は場所を交換する。2つが直交する場合、n1n2=0の場合、遷移は連続的になる。その他の場合、非直交性の程度により多少の不連続性が存在することになる。0050それゆえ、ステップ115において、アルゴリズム100は、手首アセンブリ16に対して速度制御信号を出力する。アルゴリズム100は終了する。0051本発明を実施する最良の形態を詳細に説明してきたが、本発明の技術分野における当業者は、添付の特許請求の範囲内において、本発明を実施する様々な代替設計および実施形態を認識するであろう。"