(57)【特許請求の範囲】
【請求項１】
教示時におけるロボットと作業対象物の相対的な位置及び姿勢を前提として与えられた、前記ロボットが行うべき作業対象物に対する作業手順を記憶する、作業手順記憶手段と、
再生時の前記ロボットと前記作業対象物との相対的位置及び相対的姿勢のうちの少なくとも１つが、前記教示時の前記位置と異なる別の位置、及び／又は、前記教示時の前記姿勢と異なる別の姿勢となったことを、前記ロボットに備えられた、前記ロボットと前記作業対象物との相対的な位置及び姿勢を検出する位置・姿勢検出手段によって検出したことに応じて、位置、及び／又は、姿勢の変化量を獲得し、当該算出値に基づいて、前記作業手順を修正する、作業手順修正手段と、
前記ロボットの、前記作業対象物への接触過程を時系列的に記憶する、接触過程記憶手段と、
前記作業対象物への接触過程を過去に遡って検証することによって、接触開始位置、及び／又は、接触開始時刻を得る、接触開始位置／接触開始時刻獲得手段と、
を備え、
前記修正される作業手順が、前記位置・姿勢検出手段によって検出された、作業対象物の位置及び姿勢をもとに得られる、ロボットを基準とした座標から作業対象物を基準とした座標への、同次変換行列を用いて、ロボットを基準とした座標上での作業手順として与えられる、
ロボットの制御装置。
【請求項２】
ロボットを基準とした作業対象物の位置及び姿勢を検出可能な、ロボットに設置された位置・姿勢検出手段からのデータを受け取る、位置・姿勢検出データ受領手段と、
前記作業対象物の位置及び姿勢を前提として与えられた、教示時における、前記ロボットが行うべき作業対象物に対する作業手順を記憶する、作業手順記憶手段と、
前記作業対象物の位置及び姿勢のうちの少なくとも１つが、前記教示時における前記位置と異なる別の位置、及び／又は、前記姿勢と異なる別の姿勢となったことを前記位置・姿勢検出手段によって検出したことに応じて、位置、及び／又は、姿勢の変化量を算出し、当該算出値に基づいて、前記作業手順を修正する、作業手順修正手段と、
前記ロボットの、前記作業対象物への接触過程を時系列的に記憶する、接触過程記憶手段と、
前記作業対象物への接触過程を過去に遡って検証することによって、接触開始位置、及び／又は、接触開始時刻を得る、接触開始位置／接触開始時刻獲得手段と、
を備える、
ロボットの制御装置。
【請求項３】
前記位置・姿勢検出手段が、前記ロボットの前記作業対象物への接近速度において、前記ロボット、及び、前記作業対象物に損傷を与えない程度の柔軟性を有する、位置・姿勢検出用接触状態検出部を有する、請求項１又は２に記載のロボットの制御装置。
【請求項４】
前記作業手順修正手段が、
（ａ）教示時における第１の同次変換行列と、（ｂ）再生時における、前記位置、及び／又は、姿勢の変化量に基づいて得られた、第２の同次変換行列と、
の差を用いて、前記作業手順を修正する、
請求項１ないし３に記載のロボットの制御装置。
【請求項５】
前記第１の同次変換行列、及び、前記第２の同次変換行列が、
鉛直方向から見た作業対象物が矩形であり、当該矩形の一辺の上に位置する２つの点Ｐ１、Ｐ２と、当該一辺と直交する別の辺上に位置する１つの点Ｐ３、のそれぞれについて、
【数１】
0005447150.tif 000011
（i=1,2,3:それぞれＰ１、Ｐ２、及び、Ｐ３に対応。）
に基づいて、Ｐ１、Ｐ２、及び、Ｐ３の位置を検出する手段であって、
Ｒ［ｘ１ ｙ１］、Ｒ［ｘ２ ｙ２］、Ｒ［ｘ３ ｙ３］が、それぞれ、Ｐ１、Ｐ２、及び、Ｐ３の、ロボットに基づく座標上の座標値であり、
Ｒ［ｘtcp ｙtcp］が、ロボットに基づく座標上の前記接触検出部の先端部の位置であり、
［Ｒ ０］、［−Ｒ ０］、［０ Ｒ］、［０ −Ｒ］がそれぞれ、前記接触検出部の先端部の半径Ｒを用いて、前記Ｒ［ｘtcp ｙtcp］を補正して、より正確な位置を求めるための行列である、前記手段と、
以下の、
【数２】
0005447150.tif 000012
及び、
【数３】
0005447150.tif 000013
に基づいて、
以下の、
【数４】
0005447150.tif 000014
で表される同次変換行列ＲＴＷを計算する手段、
によって得られる、
請求項４に記載のロボットの制御装置。
【請求項６】
請求項１ないし５に記載のロボットの制御装置を用いて、ロボットを制御する方法であって、
第１の再生時における、前記同次変換行列、即ち、第３の同次変換行列を取得し、
第２の再生時における、前記同次変換行列、即ち、第４の同次変換行列を取得し、
前記第３の同次変換行列と、前記第４の同次変換行列の差を求め、
前記求められた同次変換行列の差を用いて、前記第１の再生時に用いた、ロボットの作業手順を修正して、第２の再生時に利用する、
ロボットを制御する方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施例は、例えばロボットの制御装置およびロボットを制御する方法に関する。  
【背景技術】
【０００２】
平面を移動する移動台車(ロボット)は、電源投入後、常時その内界する（当該移動台車内に存在する）車軸モータのエンコーダ値から移動台車の速度を求めそれを積分することにより位置と姿勢を管理している（デットレコニングと呼ぶ）。
【０００３】
しかし、車輪の路面とのすべりや台車の機械的な誤差などにより、デットレコニングにより求めた位置姿勢データには、移動した距離に応じて誤差が累積する。移動後の場所にて、移動台車に搭載したマニピュレータによって作業を行わせようとする場合、実際のロボットの停止位置（寄り付き位置）と指令した停止位置のずれによりロボットに所望する作業をさせることが出来ない問題があった。
【０００４】
ロボットの実際の停止位置と指令した停止位置の差は路面材質、路面状況、移動速度により試行毎に異なり、移動量と誤差の量は非線形関係にあるため、単純に修正量を与えるだけでは様々な移動位置指令に対応できない。
【０００５】
この一般的な技術課題を解決するために、環境中のランドマークをカメラやレーザセンサなどの外界センサで適時検出して、デットレコニングの値を修正する方法が提案されている（例えば、特許文献１）。
【０００６】
また、搭載したマニピュレータに力センサや接触センサを取り付け、マニピュレータの動作による外界との接触状態を監視することで作業対象物の位置を特定する方法がある（例えば、特許文献２、特許文献３、特許文献４）。
【０００７】
図５は前記した特許文献１の手法を説明する制御ブロック図である。撮像した床面画像を画像処理し、現在位置を算出する処理を教示時と再生時で行うことにより、再生時の移動体の停止位置誤差（寄り付き位置誤差）を算出し、作業アームの教示データを修正し、修正した教示データにしたがって作業アームを動作することが出来る。
【０００８】
このように、従来のロボットでは、床面に塗布されたパターン模様をビジョンセンサで認識し、現在位置を検出し、教示時と再生時の位置誤差を算出して作業アームの教示データを修正する、という手順がとられていた。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特許第３６８４７９９号公報
【特許文献２】特許第２５９７６７１号公報
【特許文献３】特開平１０−２４９７６７号公報
【特許文献４】特開昭６１−２７９４８２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
特許文献１の環境中のランドマークを外界センサで適時検出してデットレコニングの値を修正する方法において、通常ランドマークにはバーコードやパンチング床面などのパターン模様、あるいは廊下の角などを用いており、ランドマークとその認識アルゴリズムを準備する必要がある。ランドマーク認識にはビジョンセンサを用いているものが多く、照明条件の影響が多分にあるため認識アルゴリズムの汎用性、ロバスト性は低い。またマークの認識自体で誤差が生ずるため、正確に位置ずれを修正することができないという問題があった。
【００１１】
また、特許文献２、特許文献３、特許文献４の搭載したマニピュレータに力センサや接触センサを取り付け、マニピュレータの動作による外界との接触状態を監視することで作業対象物の位置を特定する方法では、接触点をロボットの手先効果器の特定部分と想定して接触させており、接触部は剛体であるため接触時のスピードを極低速にする必要がある。
さらに、特許文献２、特許文献３の接触位置検出方法は、接触子が物体に接触したときに受ける力が連結部材を介してセンサに伝達され、センサ情報を常時監視することによって接触した瞬間を検出し、その時点の接触部を記憶するという手法を取っているが、実際の接触では、センサで取得する情報は瞬間的な変化ではなく、一定の時間をかけて徐々に変化するため、正確な接触位置を求めることは出来なかった。
【００１２】
従って、いずれの従来技術でも、教示時に対する再生時のロボット自体の作業位置の誤差を、ランドマークを利用せず、かつ高速に修正することはできなかった。
【課題を解決するための手段】
【００１３】
上記問題を解決するため、本願は、次のような発明を提供する。
なお、本願出願時の明細書の記載を基礎として、特許請求の範囲の記載が補正され得ることは勿論であるが、その際に、以下の各「発明」の内容を訂正することは予定しない（以下の各「発明」は、本願明細書における開示の要点としての意味を持つ）。
［発明１］  教示時におけるロボットと作業対象物の相対的な位置及び姿勢を前提として与えられた、前記ロボットが行うべき作業対象物に対する作業手順を記憶する、作業手順記憶手段と、
再生時の前記ロボットと前記作業対象物との相対的位置及び相対的姿勢のうちの少なくとも１つが、前記教示時の前記位置と異なる別の位置、及び／又は、前記教示時の前記姿勢と異なる別の姿勢となったことを、前記ロボットに備えられた、前記ロボットと前記作業対象物との相対的な位置及び姿勢を検出する位置・姿勢検出手段によって検出したことに応じて、位置、及び／又は、姿勢の変化量を獲得し、当該獲得値に基づいて、前記作業手順を修正する、作業手順修正手段と、
前記ロボットの、前記作業対象物への接触過程を時系列的に記憶する、接触過程記憶手段と、
前記作業対象物への接触過程を過去に遡って検証することによって、接触開始位置、及び／又は、接触開始時刻を得る、接触開始位置／接触開始時刻獲得手段と、
を備え、
前記修正される作業手順が、前記位置・姿勢検出手段によって検出された、作業対象物の位置及び姿勢をもとに得られる、ロボットを基準とした座標から作業対象物を基準とした座標への、同次変換行列を用いて、ロボットを基準とした座標上での作業手順として与えられる、
ロボットの制御装置。
【００１４】
このようにすることによって、ロボットと作業対象物の間の位置、及び／又は、姿勢に、何らかの原因により変化が生じた場合でも、獲得された当該変化の程度に基づいて、以前に作成された作業手順を、修正して利用することができる。
【００１５】
また、「前記修正される作業手順が、前記位置・姿勢検出手段によって検出された、作業対象物の位置及び姿勢をもとに得られる、ロボットを基準とした座標から作業対象物を基準とした座標への、同次変換行列を用いて、ロボットを基準とした座標上での作業手順として与えられる」ように構成することによって、ロボット座標で作業を定義でき、ロボットに対する作業指示が容易となる。
また、このように構成することによって、接触開始位置、及び／又は、接触開始時刻を正確に把握できる。
【００１６】
「位置・姿勢検出手段」は、実施例の接触位置検出プローブ４（図１−Ｃ）に対応するが、これに限定されず、将来開発され得る、例えば図６−４に例示されるような、レーザ光線を用いるもの、図６−５に例示されるような２次元的や３次元的な接触状態検出手段を用いるものも広く含まれる。また、図６−１の通電方式、図６−２の接触センサ方式、図６−３の外乱オブザーバ方式も含まれる。（なお、図６−３のオブザーバ方式に限らず、位置、及び／又は、姿勢の変化を、システム内部の「状態」の変化と捉える、その他の「オブザーバ」や、ノイズの影響も考慮した「カルマン・フィルタ」も含まれる。）
図６−４に例示されるようなレーザ光線を用いた場合は、非接触状態で、位置・姿勢を検出可能である。
【００１７】
図６−５に例示されるような２次元的な位置・姿勢検出手段を用いるものは、柔軟な２次元的な位置・姿勢検出手段を用いるものであり、作業対象物の所定の形状に「フィット」する状態を検知して、その検知に応じて、位置・姿勢を検出可能である。
【００１８】
「位置・姿勢検出手段」は、その下位概念である、「接触状態検出手段」を包含する。この「接触状態検出手段」には、例えば、図１−Ｃの接触位置検出プローブ４、図６−１の導電検出プローブ０１１、図６−２の剛体プローブ０２３、図６−３のカルマンフィルタを利用する手段、図６−５の柔軟性を有する接触状態検出手段等が含まれるが、図６−４のレーザ光を用いた検出手段は含まれない。
【００１９】
「作業手順記憶手段」は、実施例のステップＳ１３（図２）で教示された作業を記憶する手段（図１−Ｃのロボットコントローラ６の内部（不図示））に対応するがこれに限定されない。
【００２０】
「作業手順修正手段」は、実施例の［数５］から［数１１］を用いた処理に対応するがこれに限定されない。同次変換行列を用いる限り、本発明の範囲に含まれる。「獲得」とは計算によって得る場合も、予めテーブルに記憶された値を読み出す場合も含む。
【００２１】
なお、「作業対象物」には、再生過程における、実際に作業を行う対象物（「被作業物」と呼ぶ。）のみならず、本発明の「位置・姿勢を検出」という目的のために、被作業物の一部に固定された物体、又は、被作業物と所定の位置・姿勢関係になることがロボットから見て既知である、本発明の「位置・姿勢を検出」という目的に利用可能な物体も含む。
【００２２】
また、「作業手順」とは、ロボットに時系列的に与えられる、例えば図１−Ｃの移動部１の位置、手先効果器３の位置、に関する指示の双方を含む。換言すれば、作業遂行位置（移動部１の位置）及び当該作業遂行位置における作業内容に関する指示（手先効果器３の位置）の双方を含む概念である（「作業遂行位置」も「作業内容」も時系列的に時々刻々と変化する態様も含むし、例えば、「作業遂行位置」は固定のまま「作業内容」のみが時系列的に時々刻々と変化する態様も含む）。「位置・姿勢検出手段」、「作業手順記憶手段」、「作業手順修正手段」、「作業手順」については、以下同様である。
【００２３】
本発明は、「相対的な」位置・姿勢を利用しているが、ロボット又は作業対象物のいずれかの「絶対的な」位置・姿勢が既知な場合（固定されている場合）の、当該「絶対的な」位置・姿勢を前提として、何らかの原因によって変動し得る、作業対象物又はロボットの絶対的位置・姿勢の「変化」を検出して、所望の作業を行うようにする態様も、本発明に含まれる。
【００２４】
本発明の「ロボット」は、例えば図１−Ｃの移動部１を有し、自ら本体を地上で移動可能なものも含み、また、本体自体は固定されて、例えば図１−Ｃのマニピュレーション部２及び手先効果器３を移動させることによって、作業対象物の位置等の変化に対応可能なものの双方を含む。前者を移動ロボットと呼び、後者を固定ロボットと呼ぶ。本願の審査過程、又は、特許後の訂正請求（訂正審判）において、本願請求項に係る発明の一部又は全てを、そのいずれかに係る発明に減縮補正（訂正）する可能性を留保する。
［発明２］
ロボットを基準とした作業対象物の位置及び姿勢を検出可能な、ロボットに設置された位置・姿勢検出手段からのデータを受け取る、位置・姿勢検出データ受領手段と、
前記作業対象物の位置及び姿勢を前提として与えられた、教示時における、前記ロボットが行うべき作業対象物に対する作業手順を記憶する、作業手順記憶手段と、
前記作業対象物の位置及び姿勢のうちの少なくとも１つが、前記教示時における前記位置と異なる別の位置、及び／又は、前記姿勢と異なる別の姿勢となったことを前記位置・姿勢検出手段によって検出したことに応じて、位置、及び／又は、姿勢の変化量を算出し、当該算出値に基づいて、前記作業手順を修正する、作業手順修正手段と、
前記ロボットの、前記作業対象物への接触過程を時系列的に記憶する、接触過程記憶手段と、
前記作業対象物への接触過程を過去に遡って検証することによって、接触開始位置、及び／又は、接触開始時刻を得る、接触開始位置／接触開始時刻獲得手段と、
を備える、
ロボットの制御装置。
【００２５】
このように構成することによって、ロボット本体から離れた位置に、位置・姿勢検出手段からのデータを受け取る「ロボットの制御装置」を設置することが可能となる。
このように構成することによって、ロボットと制御系を空間的に隔離でき、保守等が容易になる。
また、このように構成することによって、接触開始位置、及び／又は、接触開始時刻を正確に把握できる。
【００２６】
「受領」とは、リアルタイムに通信によって受信する場合や、データが取り外し可能記憶媒体に記憶されている場合、当該記憶媒体を、制御装置に挿入して、制御を行うような態様も含む。また、「位置・姿勢検出データ受領」とは、実際の「位置・姿勢」自体を受領する場合も、以前の検出時点からの差分値を受領する場合等も含む。
［発明２’］  ロボットに設置され、ロボットを基準とした、作業対象物の位置及び姿勢を検出可能な位置・姿勢検出手段と、
前記ロボットを制御する制御装置を備え、
前記制御装置が、
前記位置・姿勢検出手段からのデータを受け取る、位置・姿勢検出データ受領手段と、
作業対象物の位置及び姿勢を前提として与えられた、教示時における前記ロボットが行うべき作業対象物に対する作業手順を記憶する、作業手順記憶手段と、
前記作業対象物の距離及び姿勢のうちの少なくとも１つが、前記位置と異なる別の位置、及び／又は、前記姿勢と異なる別の姿勢となったことを前記位置・姿勢検出手段によって検出したことに応じて、位置、及び／又は、姿勢の変化量を算出し、当該算出値に基づいて、前記作業手順を修正する、作業手順修正手段と、
を備える、
ロボットシステム。
【００２７】
この発明は、上記発明１又は２における、「ロボット制御システム」が、ロボットと一体的に存在する態様である。
このように構成することによって、ロボットと制御系が一体化され、制御用の通信ラインや、通信回線が不要となる。
【００２８】
本願の審査過程、又は、特許後の訂正請求（訂正審判）において、本願請求項に係る発明の一部又は全てを、本発明のように、「ロボット制御システム」が、ロボットと一体的に存在する態様に修正する可能性を留保する。
［発明３］
前記位置・姿勢検出手段が、前記ロボットの前記作業対象物への接近速度において、前記ロボット、及び、前記作業対象物に損傷を与えない程度の柔軟性を有する、位置・姿勢検出用接触状態検出部を有する、発明１又は２に記載のロボットの制御装置。
【００２９】
このように構成することによって、従来技術に比して、高速で、作業対象物に接近することが可能となる。
【００３０】
［発明４］
前記作業手順修正手段が、
（ａ）教示時における第１の同次変換行列と、（ｂ）再生時における、前記位置、及び／又は、姿勢の変化量に基づいて得られた、第２の同次変換行列と、の差を用いて、前記作業手順を修正する、
発明１ないし３に記載のロボットの制御装置。
【００３１】
このように、同次変換行列の差を用いて、容易に作業手順を修正することができる。
［発明５］
前記第１の同次変換行列、及び、前記第２の同次変換行列は、
直交する二平面、もしくは互いに直交する三平面を有する作業対象物の各平面を所定回数位置検出し、検出した位置から計算されることを特徴とし、特に直交する二平面の場合には、前記直交する二平面上に位置する２つの点Ｐ１、Ｐ２と、当該平面と直交する別の平面上に位置する１つの点Ｐ３、のそれぞれについて、
【００３２】
【数１】
0005447150.tif 000002
（i=1,2,3:それぞれＰ１、Ｐ２、及び、Ｐ３に対応。）
に基づいて、Ｐ１、Ｐ２、及び、Ｐ３の位置を検出する手段であって、
Ｒ［ｘ１  ｙ１］、Ｒ［ｘ２  ｙ２］、Ｒ［ｘ３  ｙ３］が、それぞれ、Ｐ１、Ｐ２、及び、Ｐ３の、ロボットに基づく座標上の座標値であり、
Ｒ［ｘtcp  ｙtcp］が、ロボットに基づく座標上の前記接触検出部の先端部の位置であり、
［Ｒ  ０］、［−Ｒ  ０］、［０  Ｒ］、［０  −Ｒ］がそれぞれ、前記接触検出部の先端部の半径Ｒを用いて、前記Ｒ［ｘtcp  ｙtcp］を補正して、より正確な位置を求めるための行列である、前記手段と、
以下の、
【００３３】
【数２】
0005447150.tif 000003
及び、
【数３】
0005447150.tif 000004
に基づいて、
以下の、
【００３４】
【数４】
0005447150.tif 000005
で表される同次変換行列ＲＴＷを計算する手段、
によって得られる、
発明４に記載のロボットの制御装置。
【００３５】
このように、作業対象物の形状を一定のものにすることで、画一的に作業対象物の位置及び姿勢を得ることができる。この「一定の形状」は，本発明では、矩形形状であるが、本発明の上位概念発明では、矩形に限定されず、例えば三角形や円形等の任意の（平面、立体）形状が採用可能であり、本願の審査過程又は特許後の訂正請求（訂正審判）において、本発明の上位概念に対応する請求項にそのような発明を含める可能性を留保する。
【００３６】
なお、本発明では「鉛直方向から見た作業対象物」を対象としているが、ロボットが一意的に認識可能であれば、ロボットから見て「所定の方向」（例えば鉛直方向から見て斜め方向）の「作業対象物」の特定の形状（三角形等の多角形など）を用いることも可能である。そのような発明の態様は、本発明より上位概念の発明に含まれるし、審査過程又は特許後の訂正請求（訂正審判）で、そのような発明を補正等によって、特許請求の範囲に含める可能性も留保する。
［発明６］
発明１ないし５に記載のロボットの制御装置を用いて、ロボットを制御する方法であって、
第１の再生時における、前記同次変換行列、即ち、第３の同次変換行列を取得し、
第２の再生時における、前記同次変換行列、即ち、第４の同次変換行列を取得し、
前記第３の同次変換行列と、前記第４の同次変換行列の差を求め、
前記求められた同次変換行列の差を用いて、前記第１の再生時に用いた、ロボットの作業手順を修正して、第２の再生時に利用する、
ロボットを制御する方法。
【００３７】
このようにすることによって、第１の再生に引き続いて、第２の再生が行われるような場合に、直前の再生時の作業手順を容易に修正して、第２の再生を行うことができる。
ここで、「第１の」、「第２の」とは、「最初の」、「２番目の」という意味に限定されるものではなく、任意のある時点の再生と、それに後続する「次の」再生過程の、という意味である。
以下、本願明細書で使用する用語の意義を説明する。
・ロボット：人の代わりに何等かの作業を行う装置。本発明では、主に、ある程度自律的に連続した自動作業を行う、産業用ロボットが代表例だが、これに限定されない。将来開発される「ロボット（人の代わりに何等かの作業を行う装置）」であって、本願特許請求の範囲の技術的範囲に含まれる発明を利用可能な全ての「ロボット」が含まれる。
・内界：ロボットの内部に存在するという意味。これに対して、ロボットの外部に存在することを外界と呼ぶ。内界センサ、外界センサ等で使われる用語。
ロボットに内界するモータ、内界するセンサなどのようにして良く使われている。
・エンコーダ：モータの位置（回転角度）を測定するためのセンサ。エンコーダの出力を微分するとモータの回転（角）速度が得られる。ロボット制御の場合は各軸を駆動するモータにエンコーダが設けられており、エンコーダで測定した各軸の位置（回転角度）と、ロボットの各リンクの長さ（既知）とからロボットの手先の位置・姿勢を求めることができる。このロボットの手先の位置・姿勢を求めることを順変換と言う。
・寄り付き（位置）：ロボットが実際に停止すること（停止する位置）。
・デットレコニング：ロボットの外部からの情報を用いないで、ロボット内部（のセンサ）で得られる情報のみからロボットの位置と方向を求める方法。
・ランドマーク：移動ロボットが現在の位置や方向を決定するために用いる外部環境の人工物又は自然物（land mark）。
・外界センサ：ロボットの外部に存在するセンサ。例えば、ロボットを撮影するカメラからのロボットの位置情報を、ロボットの外部から与える、位置情報センサ等が含まれる。
・マニピュレータ：互いに連結された分節で構成し、対象物（部品、工具など）をつかむ（掴む）、又は動かすことを目的とした機械（manipulator）。
・教示（時）：ロボットに作業を行わせるためにその作業を実現する動作を何らかの方法で教え込むこと。
・再生（時）：ロボットが、記憶した情報によって指示された作業・動作を実行すること、する時（playback）。「作業（時）」という表現を、同じ概念を説明するために用いることがある。
・接触安定：制御の不完全性等による手先効果器の振動等によって、手先効果器と作業対象物との接触が、不安定になることが無い状態のこと。
・手先効果器：「エンドエフェクタ」とも呼ぶ。ロボットの手先に取り付けられ、作業対象物に対して何らからの作業をするもの。物を掴むハンド（グリッパ）や、バリ取りを行うグラインダなど、具体的な構成は用途によって様々存在する。
・ロボット座標系：ロボット本体に固定された座標系であり、ロボットを動作させる際の基準として使う座標系である。このロボット座標系は、通常ロボットの前後方向にＸ軸、左右方向にＹ軸、上下方向にＺ軸をとる直交座標系であることが多い。また、明細書中のＰ１  Ｒ［ｘ１  ｙ１］は、点Ｐ１のロボット座標系のｘ、ｙ座標値を意味する。
・作業座標系：ロボットのエンドエフェクタの先（手先部）に固定された直交座標系であり、手先位置姿勢を変化させる際の基準として使う座標系である。作業座標系の軸方向は、エンドエフェクタの形状に合わせて、作業者が任意に決定するが、図３においては、プローブ中心位置を原点にとり、プローブの中心軸、及び、それに直交する方向に、それぞれＸ軸、Ｙ軸をとる。
・作業対象物：手先効果器によって、溶接、加工、把持、等の作業を行う、対象となる物体。
・寄り付き位置姿勢誤差：ロボットの実際の停止位置（寄り付き位置）と指令した停止位置のずれ
・ジョグ運転：主に教示を行う際に行われる。作業者が教示ペンダント上の各軸動作ボタンを押している間だけ所定の軸が動作し、放すと止まる、というような操作。作業者はジョグ運転でロボットを所望の位置、姿勢に動かし、教示ペンダント上で教示操作を行うことで、その時のロボットの位置、姿勢をロボット制御装置に記憶させる。
・教示ペンダント（操作ペンダント）：ロボット制御装置と有線または無線で接続され、作業者が把持して操作する画面と複数のボタンを備えた装置。ロボットに所定の作業の動作を教示（ティーチング）したりロボットの状態を把握したり、教示した作業のスタート、一時停止、非常停止等を指令したりするのに利用する。ティーチングボックス、ティーチングペンダント、プログラミングペンダント等とも呼称する。
・同次変換行列：座標系Σ２からΣ１に変換するための変換行列。例えば、上記ロボット座標系の座標値を表す行列に、この同次変換行列を乗算すると、上記作業座標系上の座標値を表す行列が得られる。
・位置・姿勢検出動作：ロボットやマニピュレータと、空間上に存在する所定の物体との相対的な位置関係を測定・計算等することによって、ロボットやマニピュレータが、前記物体との関係でどのような位置関係・姿勢関係にあるかを判断する動作。本発明の実施例では、プローブと物体の３個以上の接触位置を、この位置・姿勢検出に用いる。
・サービスロボット：主にサービス業で使われるロボットを指す。汎用的な産業用ロボットとは区別することが多い。無人で床を掃除する清掃ロボット、壁面を登って窓や壁の掃除や補修をする壁面作業ロボット 、夜間、ビルなどの設備を警備して回る警備ロボット等がその例である。
・Ａ及び／又はＢ：Ａ及びＢの少なくとも一方の意味。つまり、Ａのみ、Ｂのみ、又は、Ａ及びＢの双方、のいずれか、の３つの態様を全て含む。
・アプローチ（方向）：英語のapproachに対応する。近づくこと（近づく際の接近方向）、接近すること（接近する際の接近方向）を意味する。
・外乱オブザーバ：所定のシステムへの入力信号値、所定のシステムからの出力信号値から、システム内部の状態を推定する手法又は装置のこと。図６−３の例では、例えば、「上位からの位置指令」、「トルク指令」、「位置ＦＢ（フィードバック）」という、システムの外から把握できる物理量から、システム内部（例えば「エンコーダ」）に加わった外乱としての、システム外の物体との接触状態を推定する手法又は装置を指す。
・カルマンフィルタ：外乱オブザーバでは、ノイズの影響を考慮できないが、ノイズの影響も更に考慮して、所定のシステムへの入力信号値、所定のシステムからの出力信号値から、システム内部の状態を推定する手法又は装置のこと。
・相対的：「絶対的」と対となる概念。例えば「相対的位置が把握されている」というときは、例えば、ロボットから見た作業対象物までの距離・方向が、ロボットによって把握されていることを意味する。この場合、外部の人間から見た、作業対象物の絶対的な位置（例えば人間が設定したＸＹＺ座標上での座標値）を、ロボットが知らない場合であっても、「相対的位置が把握されている」といえる。
【００３８】
審査中の手続補正によって、及び、特許後の訂正審判又は訂正請求において、法的な制限の範囲内で、本発明は、種々の他の態様に訂正され得る。
なお、特許後の訂正審判又は訂正請求における「実質上特許請求の範囲を変更」の判断は、特許時の請求項に新たな構成要素が追加されたか否か（即ち、いわゆる外的付加が為されたか否か）、又は、特許時の請求項の１つ又はそれより多いいずれかの構成要素を更に限定するものか（即ち、いわゆる内的付加が為されたか）によって判断されるべきでなく、訂正の前後の請求項に係る発明の効果が類似するか否かの観点から為されるべきである。
【発明の効果】
【００３９】
本発明の実施例によって、ロボットの寄り付き位置姿勢誤差を計算し、作業アームの教示データもしくは移動部の位置姿勢を修正し、ラフな寄り付きでそのまま精密な作業をすることができる。
【図面の簡単な説明】
【００４０】
【図１−Ａ】本発明の実施例の基本的概念の説明図（教示時点）
【図１−Ｂ】本発明の実施例の基本的概念の説明図（再生時点）
【図１−Ｃ】本発明の実施例を適用するロボットの構成図
【図２】本発明の実施例の処理手順を示すフローチャート
【図３】本発明の実施例の説明図
【図４】本発明の実施例の説明図
【図５】従来技術の処理手順を示すフローチャート
【図６−１】本発明の実施例で使用可能な作業対象物の相対的な位置・姿勢の検出器の例
【図６−２】本発明の実施例で使用可能な作業対象物の相対的な位置・姿勢の検出器の例
【図６−３】本発明の実施例で使用可能な作業対象物の相対的な位置・姿勢の検出器の例
【図６−４】本発明の実施例で使用可能な作業対象物の相対的な位置・姿勢の検出器の例
【図６−５】本発明の実施例で使用可能な作業対象物の相対的な位置・姿勢の検出器の例
【発明を実施するための形態】
【００４１】
以下、本発明の方法の具体的実施例について、図に基づいて説明する。
まず、本願発明の実施例で用いられる基本的概念について、図１−Ａ、１−Ｂを参照して解説する。
図１−Ａは、教示過程を表す。
【００４２】
ステップＫ１において、ロボットに対して、位置Ｘで停止せよ、という移動指令が与えられ、位置Ｘの移動指令を教示する（ここでは説明の簡略化のため一次元の図で説明するが、容易に二次元、三次元に拡張でき、二次元の場合の移動指令は位置Ｘ、Ｙ、及び回転Ｒｚとなり、三次元の場合の移動指令は位置Ｘ、Ｙ、Ｚ、及び回転Ｒｘ、Ｒｙ、Ｒｚとなる）。位置Ｘは寄り付き停止位置において、寄り付き対象とする物体が移動台車に搭載されたマニピュレータの作業範囲内にあるように設定する。例えば、寄り付きの位置Ｘを操作ペンダントのジョグ運転で与える場合には、現物で位置合わせし、サービスロボットの寄り付き動作では、外界センサで計測した物体の位置を位置Ｘとすれば良い。それ以外の場合でも、オフラインシミュレータやＣＡＤなどの設計寸法から位置Ｘを決定すれば良い。
【００４３】
ステップＫ２で、実際にロボットが移動するが、スベリ等によって、停止位置はＸ’となる。
ステップＫ３で、ロボットと物体の間の相対的位置・姿勢Ｗを検出する（絶対的な位置・姿勢の把握は不要）。
【００４４】
ステップＫ４で、実行する作業（Ｋcontent）を教示する。
図１−Ｂは、再生過程を表す。
ステップＳ１において、ロボットに対して、ステップＫ１で教示した位置Ｘで停止せよと、という移動指令が与えられる。
【００４５】
ステップＳ２において、実際にロボットが移動するが、スベリ等によって、停止位置はＸ''となる（Ｘ、ならびにＸ’と異なる場合が往々にしてある。また、ロボットと物体との相対的姿勢も、教示過程とは異なる可能性がある）。
【００４６】
ステップＳ３で、プローブを用いて、相対的な物体検出位置・物体検出姿勢Ｗ’を得、ＷとＷ’の差Ｓを求める。  実施例では、Ｗ、Ｗ’、差Ｓはそれぞれ、同次変換行列、ＲＴＷ、ＲＴＷ’、寄り付き位置姿勢誤差ΔＲＴＷに対応する。
【００４７】
ステップＳ４で、Ｓを元に、Ｋcontentを修正して得られたＫcontent’を用いて、再生過程での実作業を行う。
以上のような手法により、教示時においても、再生時においても、ロボットの絶対的な位置・姿勢が未知であり、作業対象物の絶対的な位置・姿勢が未知であっても、教示時においても、再生時においても、ロボットと作業対象物の間の、相対的な位置・姿勢関係を把握することによって、作業対象物に対して、再生時に所望の作業を行うことが可能である。
【００４８】
また、教示→第１の再生→第２の再生→・・・、というように、複数の再生作業が連続する場合、１つ前における再生（当該時点での相対的位置・姿勢を前提として与えられていた）を、今回の再生時点における相対的位置・姿勢と、前回の再生時の相対的位置・姿勢との「差」を元に修正することによって、連続的に再生作業を行うことが可能となる。
【００４９】
図１−Ｃは、本発明の実施例を実施するロボットの構成図である。
移動部１の上にロボットコントローラ６が搭載され、当該ロボットコントローラ６が、本実施例では双腕のマニピュレーション部２の動作を制御する。
【００５０】
マニピュレーション部２の先端には、１方向以上の力を検出する外力検出器５が配置され、当該外力検出器５に物体を把持するなどの作業用手先効果器３が接続される。そして、当該作業用手先効果器３には、当該手先効果器３が物体に接触したことを検出する、接触部位検出プローブ４が設置される。
【００５１】
マニピュレーション部２の制御は、次のように行われる。
マニピュレーション部２の各軸に備えたエンコーダの値が、プローブ先端位置計算部６３に与えられる。プローブ先端位置計算部６３は、エンコーダの値とプローブの設計寸法と取り付け位置とアプローチ方向からプローブ先端位置を計算する。（ここで、実施例において、アプローチ方向によってプローブ先端位置の計算方法が異なる理由は、後述の［数８］及びその説明を参照。）
（なお、エンコーダは、図１−Ｃのマニピュレーション部２と移動部１の双方に存在する。）
記録装置６４は、位置検出動作中の外力検出器５の検出値と、プローブ先端位置計算部６３によって得られたプローブ先端位置を記録するものであり、接触位置検出部６５は、記録した値から接触位置を計算し、接触位置から作業対象物の相対的な位置・姿勢を計算し、計算された作業対象物の相対的な位置・姿勢（図１−ＡのステップＫ３や、図１−ＢのステップＳ３の物体検出位置ＷやＷ’）に関するデータが、寄り付き位置姿勢誤差計算部６６に与えられる。寄り付き位置姿勢誤差計算部６６は、作業対象物との相対的な位置・姿勢を元に、手先効果器３の位置を修正させるための修正量を計算する。
【００５２】
位置検出動作中の外力検出器の値は、外力監視部６２にも与えられる。外力監視部６２では、このデータをもとに、接触が発生したかを判断し、判断結果に関するデータを、ロボットの位置制御を行う位置指令生成部６１に送る。
【００５３】
位置指令生成部６１は、マニピュレーション部２、および移動部１に搭載されるモータへの位置指令を生成し、寄り付き位置姿勢誤差計算部６６からの誤差を位置指令に加算することが出来、外力監視部６２からの接触検知信号により位置指令（動作停止指令や退避動作指令）を生成することが出来る。これにより例えば、衝突回避等を行うための、必要な制御信号を与えること等が可能となる。
【００５４】
なお、上記移動部１は、搭載マニピュレータを含むロボット全体を前後左右に駆動するものであり、上記マニピュレーション部２は、手先効果器３を任意の位置に移動するものである。図１−Ｃでは双腕のマニピュレーション部を有しているが単腕のマニピュレーション部を有しても良い。マニピュレーション部２の軸数や軸構成に関する制約は特に無い。
【００５５】
作業用手先効果器３は、物体を把持するなどの機能を有する。
上記接触位置検出プローブ４は、取外し可能で、プローブ長手方向、または長手方向以外の２方向の曲げ、いずれか３方向に対して弾性変形領域を持つ。この接触位置検出プローブ４は、位置検出動作に伴い作業対象物へ接触する際に手先効果器もしくはマニピュレーション部と作業対象物との干渉がない程度の長さを持ち、接触位置を接触方向に因らずに算出するために先端は球状となっている。また、ロボットの作業性を損なわないように、プローブが必要な時のみ突き出す収納式でも良い。
【００５６】
上記外力検出器５は一方向以上の力を検出するものであり、接触状態を導通により電気的に検出するセンサ、接触センサ、薄型圧力センサ、トルク指令値と負荷トルクとの差で表される外乱トルクを用いた力検出器でも代用できる（本実施例では力センサを例にして説明する）
図６−１は接触状態を電気の導通により電気的に検出するセンサを装着したロボットで、ロボット２（マニピュレーション部）と作業対象物０１２は電気結合線０１３により電気的に結合されている。手先効果器３に装着した導通検出プローブ０１１を作業対象物０１２に接触させることにより、作業対象物０１２を媒体として通電し、導通検出プローブ０１１においてこれを検出し、接触状態を検出することが出来るのである。
【００５７】
また、図６−２は接触センサを装着したロボットで、手先効果器３に弾性部材０２１を介してスイッチ０２２を設け、その先に剛体プローブ０２３を装着している。スイッチ０２２は物理的な拘束により所定量の変位が発生した時にスイッチングし電気的な信号を出力するスイッチであり、ロボット２（マニピュレーション部）の動作により、剛体プローブ０２３が作業対象物０２４に接触し、所定量の変位が発生した時に接触を検知する電気信号が、スイッチ０２２より出力されることにより、接触状態を検出することが出来るのである。
【００５８】
図６−３はトルク指令値と負荷トルクとの差で表される外乱トルクを用いた力検出方法を説明するブロック図で、通常のロボットの位置速度制御部０３１におけるトルク指令と位置フィードバックを用いて外乱トルク演算部０３２において外乱トルクを計算する。外乱トルクの演算方法として、例えば、位置フィードバックの２回微分から角加速度を求め、モータ負荷の慣性モーメントを乗ずることでトルクを計算し、トルク指令と位置フィードバックから計算したトルクの差を外乱トルクとする方法があるが、これに限定しない。外乱トルクを所定周期で計算することで、接触状態を検出することが出来るのである。
【００５９】
プローブの設計寸法と取り付け位置が正確に分からない場合は、別途校正しても良い。操作ペンダント７はロボット移動部１やマニピュレーション部２の作業教示、および再生、接触動作実行や力センサ値の検出閾値、プローブ寸法の設定変更に使用する。
【００６０】
図２は本発明の実施例の処理手順を示すフローチャートである。この図を用いて本発明の実施例の方法を順を追って説明する。実施例は２次元で記述するが、容易に３次元に拡張可能である。
【００６１】
本手法は、教示時に計測したロボット座標上での作業対象物の位置姿勢と再生時に作業対象物に寄り付いた位置において計測したロボット座標上での作業対象物の位置姿勢の差を作業教示データに加算し修正する手順を取る。教示時にも、再生時にも、それぞれ、移動部１の「スリップ」や、床の突起への「乗り上げ」等によって、ロボットに対して指令された、停止位置（作業場所）と、実際に停止した位置の間にずれが生じる。
まず、ステップ１の教示過程を説明する。ステップＳ１１において、操作ペンダントを用いたジョグ運転により、ロボットの移動部を作業対象物の近くに移動させる。本実施例では作業対象物を四角形として説明するが、これに限定されない。例えば、直線（３次元空間での壁に相当する）や円形でも良く、容易に拡張可能である。
【００６２】
ステップ１２で作業対象物に対して位置検出動作を３回繰り返し、検出位置Ｐ１  Ｒ [ｘ１  ｙ１]、Ｐ２  Ｒ [ｘ２  ｙ２]、Ｐ３  Ｒ [ｘ３  ｙ３]から、［数５］〜［数８］によりロボット座標上での作業対象物の位置姿勢を表す同次変換行列ＲＴＷを計算する（図３）。なお、Ｐ１  Ｒ [ｘ１  ｙ１]は、点Ｐ１のロボット座標系におけるＸ、Ｙ座標値を意味する。
【００６３】
【数５】
0005447150.tif 000006
ただし、ｘ０、ｙ０は直線１、２の交点で［数６］より求める（直線１、２は、それぞれ作業対象物８の直交する二平面上に存在する直線である）。
なお、ＲＴＷ等の、”Ｒ”は、ロボット座標系を意味する。以下同様。
同次変換行列ＲＴＷは、ロボット座標系から見た作業座標系の位置姿勢を表すものである。
【００６４】
本発明の実施例では、教示過程におけるＲＴＷと、再生過程におけるＲＴＷの差を使って移動体の寄り付き位置を修正する。
【数６】
0005447150.tif 000007
ただし、直線１はｙ＝ａ１ｘ＋ｂ１、直線２はｙ＝ａ２ｘ＋ｂ２であり、ａ１、ｂ１、ａ２、ｂ２は次式より求める。
【数７】
0005447150.tif 000008
図３は、被接触対象物を上から見た図であり、Ｐ１、Ｐ２は同一直線上にある点で、Ｐ３はＰ１、Ｐ２と直交する線上の点である（３次元的な位置姿勢を得る場合では、最低５点の位置を検出する必要があり、内３点は同一平面上の点で、他２点はそれぞれが直交する平面上の点とする）。検出の順番の制約は特に無く、例えば、Ｐ３、Ｐ１、Ｐ２としても良い。また、片面のみ２点を位置検出する必要が有るが、どちらの面でも良い。
【００６５】
プローブ先端位置はプローブ球の中心位置ＰＴＣＰ Ｒ [ｘｔｃｐ  ｙｔｃｐ]にプローブ半径Ｒを加算した位置であり、［数８］に示すように位置検出動作における接触プローブのアプローチ方向（４方向）に応じて求める。［数８］におけるＸ軸、Ｙ軸は、それぞれ、図３のＸ軸、Ｙ軸を意味する。
【数８】
0005447150.tif 000009
［数８］によれば、点Ｐ１に対してのｘ１、ｙ１が求められるが、点Ｐ２に対するｘ２、ｙ２、及び、点Ｐ３に対するｘ３、ｙ３も同様にして求められる。
ロボット座標系（図３のＸＹ座標）におけるプローブ球の中心位置ＰＴＣＰ Ｒ [ｘｔｃｐ  ｙｔｃｐ] はマニピュレーション部のエンコーダ値とプローブの設計寸法と取り付け位置から求める。ただし、プローブ半径Ｒが数百ミクロンであれば、プローブ球の中心位置をプローブ先端位置としても良い。
【００６６】
位置検出動作においては、作業者が操作ペンダントを用いたジョグ運転により、マニピュレーション部を作業対象物にアプローチし（接近させ）、手先効果器に搭載した柔軟なプローブを作業対象物に接触させ、所定距離（プローブの弾性領域内の数ｍｍ）押し込む動作を教示し再生する。位置検出対象物は作業対象物本体に限らず、作業対象物を支える治具、机、周辺の壁、棚など数百ｇの力の印加により移動、変形、損傷しない物体であれば良い。
【００６７】
検出動作の間、外力監視部６２において、力センサの値が検出閾値を超えているかを一定の周期で監視する処理と、記録装置にプローブ先端位置と力センサ値を記録する処理を同時に行う。なお、処理に適していれば、完全に「同時」である必要は無い。
【００６８】
外力監視部６２において、力センサの値が検出閾値を超えた場合には接触を検出したと判断し、接触位置検出信号が位置指令生成部６１へ送信され、当該位置指令生成部６１がロボットを減速停止させ、アプローチ開始地点（位置検出動作の開始ポイント）へ撤退する動作を行う。
【００６９】
記録装置に記録した動作中の力センサとプローブ先端位置から接触時の力センサ値の立上り時点を求め、立上り時点のプローブ先端位置を接触位置として算出する（図４）。つまり、力センサ値の変化を、記録された時系列上のデータに基づいて、過去に遡って判断する。また記録処理はメモリに一定のバッファ領域を設け、記録時に随時上書きする。
【００７０】
ステップ１３では、操作ペンダントを用いて、物体把持や嵌合などの作業教示を行い教示が完了する。
次に、ステップ２の再生過程を説明する。ステップＳ２１では、ステップＳ１１の教示位置に移動する（実際の寄り付き位置は、再生時の寄り付き位置姿勢誤差のため、教示時のステップＳ１１における寄付き位置とは異なる）。
【００７１】
ステップＳ２２ではステップＳ１２と同様の作業プログラムを用いて作業対象物の位置姿勢を計測し、ロボット座標上での作業対象物の位置姿勢を表す同次変換行列ＲＴ’Ｗを計算する。
【００７２】
ステップＳ２３では、教示時と再生時の寄り付き位置姿勢誤差を（数９）を用いて計算する。
【数９】
0005447150.tif 000010
ステップＳ２４では、寄り付き位置姿勢誤差ΔＲＴＷを用いてロボットの教示位置の修正を行う。ステップＳ２３におけるマニピュレーション部、もしくは移動部の作業教示位置に修正量ΔＲＴＷを左側から乗算することで教示位置データの修正を行う。
【００７３】
即ち、ステップＳ１３における各軸教示位置を順変換しマニピュレーション部の教示位置Ｐｋ１  Ｒ [ｘｋ１  ｙｋ１  ｒｚｋ１]を得、［数１０］のようにＰｋ１の左側からΔＲＴＷを掛けることで、修正した手先位置Ｐｓ１  Ｒ [ｘｓ１  ｙｓ１  ｒｚｓ１]を得るか、もしくは位置姿勢誤差ΔＲＴＷを逆変換して各軸の角度を計算し、ステップＳ１３における各軸教示位置に加算する手順を取っても良い。
【００７４】
また、［数１１］のように移動部の実際の寄り付き位置Ｐｓ２  ＯＲＧ [ｘｓ２  ｙｓ２  ｒｚｓ２]の左からΔＲＴＷを掛けることで、修正した移動部の寄付き位置Ｐｓ３  ＯＲＧ [ｘｓ３  ｙｓ３  ｒｚｓ３]を得ても良い。添え字のＯＲＧは移動部の基準座標系で、通常はで移動部の電源投入直後の移動部の位置を原点位置とし、移動部正面にＸ方向、左右方向にＹ方向、上下方向にＺ方向を取る。
[数１０]
Ｐｓ１＝ΔＲＴＷＰｋ１
[数１１]
Ｐｓ３＝ΔＲＴＷＰｓ２
作業プログラムにおいて、ステップ１３の作業区間のみ教示位置データの修正を行えば良い。
【００７５】
このように、ロボットの教示時、および再生時の寄り付き位置において接触位置検出処理を所定回数繰り返すことでロボットに対する作業対象物の位置姿勢を算出し、寄り付き位置姿勢誤差を計算し、マニピュレーション部の教示データもしくは移動部の位置姿勢を修正することができ、ラフな寄り付きで精密な作業をすることができるのである。本手法はランドマークの形状を問うことなく、汎用的に使用できる。
【００７６】
本明細書は、多数の特定のものを含むが、これらは、特許請求される又は特許請求されることができる範囲に対する制限として解釈されるべきではなく、特定の実施形態に特有の特徴の説明として解釈されるべきである。別個の実施形態の内容において、本明細書に説明される特定の特徴は、さらに、単一の実施形態において組み合わせて実施することができる。対照的に、単一の実施形態の内容において説明される種々の特徴は、さらに、多数の実施形態において、又はあらゆる好適な小結合において実施することができる。さらに、特徴は、特定の組み合わせにおいて作用するように上述され、さらに最初に、そのように特許請求されることがあるが、特許請求される組み合わせからの１つ又はそれ以上の特徴は、幾つかの場合においては、その組み合わせから実行されることができ、特許請求される組み合わせは、小結合又は様々な小結合に向けられることができる。
【００７７】
同様に、動作は、特定の順番で図示されるが、このことは、望ましい結果を実現するために、こうした動作が、示される特定の順番で又は逐次的な順番で実行され、又は、それらのすべての図示される動作が実行されることを必要とするように理解されるべきではない。
【００７８】
本明細書に説明される特定の実施形態が説明された。他の実施形態は、特許請求の範囲内にある。例えば、特許請求の範囲に挙げられた動作は、異なる順番で実行し、依然として望ましい結果を実現することができる。一例として、添付図面に示されるプロセスは、望ましい結果を実現するために、必ずしも、示される特定の順番又は逐次的な順番を必要とするものではない。
【００７９】
１つの構成要素が有する機能が２つ以上の物理的構成によって実現されてもよく、２つ以上の構成要素が有する機能が１つの物理的構成によって実現されてもよい。システムの発明は、それぞれの構成要素の有する機能が逐次的に実行される方法の発明として把握することもできるし、その逆も成り立つ。方法の発明においては、各ステップは記載された順序に実行されるものに限定されるものではなく、全体としての機能が矛盾なく実行され得る限りにおいて、自由な順序でそれを実行することができる。これらの発明は、所定のハードウェアと協働して所定の機能を実現させるプログラムとしても成立し、それを記録した記録媒体としても成立する。また本発明は、搬送波上に具現化されたコンピュータ・データ信号であって、そのプログラムのコードを備えたものとしても成立しうる。
【００８０】
本態様の他の実施形態は、対応するシステム、装置、デバイス、コンピュータプログラム製品、及びコンピュータ可読媒体を含む。
【符号の説明】
【００８１】
１  ロボットの移動部
２  ロボットのマニピュレーション部
３  手先効果器
４  接触位置検出プローブ
５  外力検出器
６  ロボットコントローラ
６１  位置指令生成部
６２  外力値監視部
６３  プローブ先端位置計算部
６４  記録装置
６５  接触位置検出部
６６  寄り付き位置姿勢誤差計算部
７  操作ペンダント
【図１−Ａ】
0005447150.tif 000015
【図１−Ｂ】
0005447150.tif 000016
【図１−Ｃ】
0005447150.tif 000017
【図２】
0005447150.tif 000018
【図３】
0005447150.tif 000019
【図４】
0005447150.tif 000020
【図５】
0005447150.tif 000021
【図６−１】
0005447150.tif 000022
【図６−２】
0005447150.tif 000023
【図６−３】
0005447150.tif 000024
【図６−４】
0005447150.tif 000025
【図６−５】
0005447150.tif 000026