IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ セイコーエプソン株式会社の特許一覧

<>
  • 特許-力制御パラメーター調整方法 図1
  • 特許-力制御パラメーター調整方法 図2
  • 特許-力制御パラメーター調整方法 図3
  • 特許-力制御パラメーター調整方法 図4
  • 特許-力制御パラメーター調整方法 図5
  • 特許-力制御パラメーター調整方法 図6
  • 特許-力制御パラメーター調整方法 図7
  • 特許-力制御パラメーター調整方法 図8
  • 特許-力制御パラメーター調整方法 図9
  • 特許-力制御パラメーター調整方法 図10
  • 特許-力制御パラメーター調整方法 図11
  • 特許-力制御パラメーター調整方法 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-07-29
(45)【発行日】2024-08-06
(54)【発明の名称】力制御パラメーター調整方法
(51)【国際特許分類】
   B25J 13/08 20060101AFI20240730BHJP
【FI】
B25J13/08 Z
【請求項の数】 7
(21)【出願番号】P 2020174483
(22)【出願日】2020-10-16
(65)【公開番号】P2022065785
(43)【公開日】2022-04-28
【審査請求日】2023-09-20
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100179475
【弁理士】
【氏名又は名称】仲井 智至
(74)【代理人】
【識別番号】100216253
【弁理士】
【氏名又は名称】松岡 宏紀
(74)【代理人】
【識別番号】100225901
【弁理士】
【氏名又は名称】今村 真之
(72)【発明者】
【氏名】下平 泰裕
【審査官】臼井 卓巳
(56)【参考文献】
【文献】特開2000-148210(JP,A)
【文献】特開2016-221646(JP,A)
【文献】特開2018-126796(JP,A)
【文献】特開2020-082293(JP,A)
【文献】国際公開第2014/037999(WO,A1)
【文献】国際公開第2019/098044(WO,A1)
【文献】国際公開第2019/146007(WO,A1)
【文献】米国特許出願公開第2014/0379131(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/10-13/08
(57)【特許請求の範囲】
【請求項1】
力制御により駆動されて作業を行うロボットアームを有するロボットの力制御パラメー
ターを調整する力制御パラメーター調整方法であって、
前記ロボットアームの作業開始位置姿勢に関する第1情報と、前記力制御パラメーター
の候補値に基づいて前記ロボットアームを動作させて、前記作業に要する作業時間に関す
る第2情報と、前記作業中に前記ロボットアームに加わる力に関する第3情報と、を取得
する第1ステップと、
取得した前記第2情報および前記第3情報に基づいて、前記力制御パラメーターの候補
値を更新した更新値を取得する第2ステップと、を有し、
取得した前記作業時間または前記ロボットアームに加わる力が収束するまで、前記第1
情報にノイズを加えて前記第1ステップと前記第2ステップとを繰り返し行い前記力制御
パラメーターの最終値を得ることを特徴とする力制御パラメーター調整方法。
【請求項2】
前記力制御パラメーターの最終値は、n回目(nは、1以上の整数)の前記第1ステッ
プで得られる前記作業時間と、n+1回目の前記第1ステップで得られる前記作業時間と
の乖離の程度が一定以下となる状態がm回(mは、1以上の整数)続いた際の前記力制御
パラメーターの更新値である請求項1に記載の力制御パラメーター調整方法。
【請求項3】
前記第ステップで取得する前記第情報は、前記作業中に前記ロボットアームに加わ
る力の最大値である請求項1または2に記載の力制御パラメーター調整方法。
【請求項4】
前記力制御パラメーターの更新値には、目標力、仮想粘性係数、仮想弾性係数、仮想質
量係数、前記作業開始位置姿勢、作業終了位置姿勢のうち少なくとも1つが含まれる請求
項1ないし3のいずれか1項に記載の力制御パラメーター調整方法。
【請求項5】
前記作業は、第1対象物を把持しつつ、第2対象物に挿入する挿入作業である請求項1
ないし4のいずれか1項に記載の力制御パラメーター調整方法。
【請求項6】
作業者によって入力される前記第1情報は、前記作業開始位置姿勢の範囲を持った値で
ある請求項1ないし5のいずれか1項に記載の力制御パラメーター調整方法。
【請求項7】
前記ノイズが加えられた前記第1情報に基づく前記作業中に前記ロボットアームに加わ
る前記力が、予め設定した重力補償および慣性補償の範囲となる閾値を超えた場合、前記
作業を失敗であると記憶する請求項1から6のいずれか1項に記載の力制御パラメーター
調整方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、力制御パラメーター調整方法に関する。
【背景技術】
【0002】
ロボットアームと、ロボットアームに加わる力を検出する力検出部と、を有し、力検出部の検出結果に基づいてロボットアームを駆動する力制御を行うことによって、所定の作業を行うロボットが知られている。このようなロボットにおいては、例えば、特許文献1に記載されているように、力制御を行う際に、どのようなモードでロボットアームを駆動するかを決定する力制御パラメーターを適した値に設定する必要がある。
【先行技術文献】
【特許文献】
【0003】
【文献】WO2019/098044号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
力制御パラメーターを適した値に設定するためには、力制御パラメーターを変えながら試験的に作業を繰り返し、どのような力制御パラメーターがその作業に適しているかを見極める工程が必要となる。しかしながら、このような方法では、ワーク数量および種類、作業時のロボットアームの位置姿勢等の諸条件が限定されて、過剰適合状態、すなわち、対象物やロボットのばらつきが無い特定条件の下でのみ、求められる性能を発揮する力制御パラメーターを得ることとなる。すなわち、上述の前記力制御パラメーターは、製造ばらつき、把持ばらつきが存在する実運用には適さないものとなってしまう。このように、力制御に求められる生産性要件として、必要とされる適切な力およびトルクと、作業時間と、のバランスが取れた力制御パラメーターを設定することは、熟練者にとっても難しい。
【課題を解決するための手段】
【0005】
本発明の力制御パラメーター調整方法は、力制御により駆動されて作業を行うロボットアームを有するロボットの力制御パラメーターを調整する力制御パラメーター調整方法であって、
前記ロボットアームの作業開始位置姿勢に関する第1情報と、前記力制御パラメーターの候補値とに基づいて前記ロボットアームを動作させて、前記作業に要する作業時間に関する第2情報と、前記作業中に前記ロボットアームに加わる力に関する第3情報とを取得する第1ステップと、
取得した前記第2情報および前記第3情報に基づいて、前記力制御パラメーターの候補値を更新した更新値を取得する第2ステップと、を有し、
取得した前記作業時間または前記ロボットアームに加わる力が収束するまで、前記第1情報にノイズを加えて前記第1ステップと前記第2ステップとを繰り返し行い前記力制御パラメーターの最終値を得ることを特徴とする。
【図面の簡単な説明】
【0006】
図1図1は、本発明の力制御パラメーター調整方法を実行するロボットシステムの全体構成を示す図である。
図2図2は、図1に示すロボットシステムのブロック図である。
図3図3は、力制御パラメーターを取得する方法を説明するための概念図である。
図4図4は、作業開始位置姿勢および作業終了位置姿勢を説明するための断面図である。
図5図5は、作業を行う際に実際に生じ得る作業環境のばらつきを説明するための図であって、第1対象物、第2対象物およびロボットアームの先端部を示す部分拡大断面図である。
図6図6は、作業を行う際に実際に生じ得る作業環境のばらつきを模擬的に再現した状態を示す図であって、第1対象物、第2対象物およびロボットアームの先端部を示す部分拡大断面図である。
図7図7は、作業開始位置姿勢に傾きを与えた際に失敗した状態の一例を示す図であって、第1対象物、第2対象物およびロボットアームの先端部を示す部分拡大断面図である。
図8図8は、作業ごとの作業時間に関する情報をプロットしたグラフである。
図9図9は、図1に示すロボットシステムが実行する制御動作を説明するためのフローチャートである。
図10図10は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
図11図11は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。
図12図12は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
【発明を実施するための形態】
【0007】
<実施形態>
図1は、本発明の力制御パラメーター調整方法を実行するロボットシステムの全体構成を示す図である。図2は、図1に示すロボットシステムのブロック図である。図3は、力制御パラメーターを取得する方法を説明するための概念図である。図4は、作業開始位置姿勢および作業終了位置姿勢を説明するための断面図である。図5は、作業を行う際に実際に生じ得る作業環境のばらつきを説明するための図であって、第1対象物、第2対象物およびロボットアームの先端部を示す部分拡大断面図である。図6は、作業を行う際に実際に生じ得る作業環境のばらつきを模擬的に再現した状態を示す図であって、第1対象物、第2対象物およびロボットアームの先端部を示す部分拡大断面図である。図7は、作業開始位置姿勢に傾きを与えた際に失敗した状態の一例を示す図であって、第1対象物、第2対象物およびロボットアームの先端部を示す部分拡大断面図である。図8は、作業ごとの作業時間に関する情報をプロットしたグラフである。図9は、図1に示すロボットシステムが実行する制御動作を説明するためのフローチャートである。
【0008】
以下、本発明の力制御パラメーター調整方法を添付図面に示す好適な実施形態に基づいて詳細に説明する。なお、以下では、説明の便宜上、図1中の+Z軸方向、すなわち、上側を「上」、-Z軸方向、すなわち、下側を「下」とも言う。また、ロボットアームについては、図1中の基台11側を「基端」、その反対側、すなわち、エンドエフェクター側を「先端」とも言う。また、図1中のZ軸方向、すなわち、上下方向を「鉛直方向」とし、X軸方向およびY軸方向、すなわち、左右方向を「水平方向」とする。
【0009】
図1に示すように、ロボットシステム100は、ロボット1と、ロボット1を制御する制御装置3と、教示装置4と、を備え、本発明の力制御パラメーター調整方法を実行する。
【0010】
まず、ロボット1について説明する。
図1に示すロボット1は、本実施形態では単腕の6軸垂直多関節ロボットであり、基台11と、ロボットアーム10と、を有する。また、ロボットアーム10の先端部にエンドエフェクター20を装着することができる。エンドエフェクター20は、ロボット1の構成要件であってもよく、ロボット1の構成要件でなくてもよい。
【0011】
なお、ロボット1は、図示の構成に限定されず、例えば、双腕型の多関節ロボットであってもよい。また、ロボット1は、水平多関節ロボットであってもよい。
【0012】
基台11は、ロボットアーム10を下側から駆動可能に支持する支持体であり、例えば工場内の床に固定されている。ロボット1は、基台11が中継ケーブル18を介して制御装置3と電気的に接続されている。なお、ロボット1と制御装置3との接続は、図1に示す構成のように有線による接続に限定されず、例えば、無線による接続であってもよく、さらには、インターネットのようなネットワークを介して接続されていてもよい。
【0013】
本実施形態では、ロボットアーム10は、第1アーム12と、第2アーム13と、第3アーム14と、第4アーム15と、第5アーム16と、第6アーム17とを有し、これらのアームが基台11側からこの順に連結されている。なお、ロボットアーム10が有するアームの数は、6つに限定されず、例えば、1つ、2つ、3つ、4つ、5つまたは7つ以上であってもよい。また、各アームの全長等の大きさは、それぞれ、特に限定されず、適宜設定可能である。
【0014】
基台11と第1アーム12とは、関節171を介して連結されている。そして、第1アーム12は、基台11に対し、鉛直方向と平行な第1回動軸を回動中心とし、その第1回動軸回りに回動可能となっている。第1回動軸は、基台11が固定される床の法線と一致している。
【0015】
第1アーム12と第2アーム13とは、関節172を介して連結されている。そして、第2アーム13は、第1アーム12に対し、水平方向と平行な第2回動軸を回動中心として回動可能となっている。第2回動軸は、第1回動軸に直交する軸と平行である。
【0016】
第2アーム13と第3アーム14とは、関節173を介して連結されている。そして、第3アーム14は、第2アーム13に対して水平方向と平行な第3回動軸を回動中心として回動可能となっている。第3回動軸は、第2回動軸と平行である。
【0017】
第3アーム14と第4アーム15とは、関節174を介して連結されている。そして、第4アーム15は、第3アーム14に対し、第3アーム14の中心軸方向と平行な第4回動軸を回動中心として回動可能となっている。第4回動軸は、第3回動軸と直交している。
【0018】
第4アーム15と第5アーム16とは、関節175を介して連結されている。そして、第5アーム16は、第4アーム15に対して第5回動軸を回動中心として回動可能となっている。第5回動軸は、第4回動軸と直交している。
【0019】
第5アーム16と第6アーム17とは、関節176を介して連結されている。そして、第6アーム17は、第5アーム16に対して第6回動軸を回動中心として回動可能となっている。第6回動軸は、第5回動軸と直交している。
【0020】
また、第6アーム17は、ロボットアーム10の中で最も先端側に位置するロボット先端部となっている。この第6アーム17は、ロボットアーム10の駆動により、エンドエフェクター20ごと回動することができる。
【0021】
ロボット1は、駆動部としてのモーターM1、モーターM2、モーターM3、モーターM4、モーターM5およびモーターM6と、エンコーダーE1、エンコーダーE2、エンコーダーE3、エンコーダーE4、エンコーダーE5およびエンコーダーE6とを備える。モーターM1は、関節171に内蔵され、基台11と第1アーム12とを相対的に回転させる。モーターM2は、関節172に内蔵され、第1アーム12と第2アーム13とを相対的に回転させる。モーターM3は、関節173に内蔵され、第2アーム13と第3アーム14とを相対的に回転させる。モーターM4は、関節174に内蔵され、第3アーム14と第4アーム15とを相対的に回転させる。モーターM5は、関節175に内蔵され、第4アーム15と第5アーム16とを相対的に回転させる。モーターM6は、関節176に内蔵され、第5アーム16と第6アーム17とを相対的に回転させる。
【0022】
また、エンコーダーE1は、関節171に内蔵され、モーターM1の位置を検出する。エンコーダーE2は、関節172に内蔵され、モーターM2の位置を検出する。エンコーダーE3は、関節173に内蔵され、モーターM3の位置を検出する。エンコーダーE4は、関節174に内蔵され、モーターM4の位置を検出する。エンコーダーE5は、関節175に内蔵され、モーターM5の位置を検出する。エンコーダーE6は、関節176に内蔵され、モーターM6の位置を検出する。
【0023】
エンコーダーE1~エンコーダーE6は、制御装置3と電気的に接続されており、モーターM1~モーターM6の位置情報、すなわち、回転量が制御装置3に電気信号として送信される。そして、この情報に基づいて、制御装置3は、モーターM1~モーターM6を、図示しないモータードライバーを介して駆動させる。すなわち、ロボットアーム10を制御するということは、モーターM1~モーターM6を制御することである。
【0024】
また、ロボットアーム10の先端には、制御点CPが設定されている。制御点CPは、ロボットアーム10の制御を行う際の基準となる点のことである。ロボットシステム100では、ロボット座標系で制御点CPの位置を把握し、制御点CPが所望の位置に移動するようにロボットアーム10を駆動する。
【0025】
また、ロボット1では、ロボットアーム10に、力を検出する力検出部19が着脱自在に設置される。そして、ロボットアーム10は、力検出部19が設置された状態で駆動することができる。力検出部19は、本実施形態では、6軸力覚センサーである。力検出部19は、互いに直交する3つの検出軸上の力の大きさと、当該3つの検出軸まわりのトルクの大きさとを検出する。すなわち、互いに直交するX軸、Y軸、Z軸の各軸方向の力成分と、X軸回りとなるTx方向の力成分と、Y軸回りとなるTy方向の力成分と、Z軸回りとなるTz方向の力成分とを検出する。なお、本実施形態では、Z軸方向が鉛直方向となっている。また、各軸方向の力成分を「並進力成分」と言い、各軸回りの力成分を「回転力成分」と言うこともできる。また、力検出部19は、6軸力覚センサーに限定されず、他の構成のものであってもよい。
【0026】
本実施形態では、力検出部19は、第6アーム17に設置されている。なお、力検出部19の設置箇所としては、第6アーム17、すなわち、最も先端側に位置するアームに限定されず、例えば、他のアームや、隣り合うアーム同士の間や、基台11の下方であってもよく、全関節にそれぞれ設置されていてもよい。
【0027】
力検出部19には、エンドエフェクター20を着脱可能に装着することができる。エンドエフェクター20は、一対の爪が接近離間することにより物品を把持するハンドで構成されているが、本発明ではこれに限定されず、2本以上の爪を有していてもよい。また、吸着により物品を把持するハンドであってもよい。
【0028】
また、ロボット座標系において、エンドエフェクター20の先端の任意の位置、好ましくは各爪が接近した状態における先端にツールセンターポイントTCPが設定されている。前述したように、ロボットシステム100では、ロボット座標系で制御点CPの位置を把握し、制御点CPが所望の位置に移動するようにロボットアーム10を駆動する。また、エンドエフェクター20の種類、特に、長さを把握しておくことにより、ツールセンターポイントTCPと制御点CPとのオフセット量を把握することができる。このため、ツールセンターポイントTCPの位置をロボット座標系で把握することができる。したがって、ツールセンターポイントTCPを制御の基準とすることができる。
【0029】
また、図1に示すように、ロボット1は、第1対象物であるワークW1を把持して、第2対象物であるワークW2に挿入し、嵌合する作業を行う。ここで、「嵌合」とは、狭義の嵌合のみならず、嵌入、係合等を含む広い概念で用いられる。したがって、ワークW1およびワークW2の構成によっては、「嵌合」を「嵌入」、「係合」等と読み換えることができる。なお、ワークW2を把持してワークW1をワークW2に挿入する作業であってもよい。
【0030】
ワークW1は、横断面形状が円形をなす棒状体である。なお、ワークW1は、横断面形状が三角形、四角形またはそれ以上の多角形であってもよく、電子機器のコネクターや、プラスチック外装品等のものであってもよい。ワークW2は、ワークW1が挿入される挿入孔200を有するブロック状をなしている。
【0031】
また、図4図7に示すように、ワークW2の挿入孔200には、ワークW1を挿入時の抵抗力として作用するスナッピング機構411が設けられる。スナッピング機構411は、コネクター挿入や、プラスチック部品の組立において実際の用途で部品自体が機能を持つこともある。ここでは、スナッピング機構411を機能部品として別に示している。
【0032】
次に、制御装置3および教示装置4について説明する。
制御装置3は、ロボット1から離間して配置されており、プロセッサーの1例であるCPU(Central Processing Unit)が内蔵されたコンピューター等で構成することができる。この制御装置3は、ロボット1の基台11に内蔵されていてもよい。
【0033】
制御装置3は、中継ケーブル18によりロボット1と通信可能に接続される。また、制御装置3は、教示装置4とケーブルで、または無線通信可能に接続される。教示装置4は、専用のコンピューターであってもよく、ロボット1を教示するためのプログラムがインストールされた汎用のコンピューターであってもよい。例えばロボット1を教示するための専用装置であるティーチングペンダント等を教示装置4の代わりに用いても良い。さらに、制御装置3と教示装置4とは、別々の筐体を備えていてもよく、一体に構成されていてもよい。
【0034】
また、教示装置4には、制御装置3に後述する目標位置姿勢Sと目標力fStとを引数とする実行プログラムを生成して制御装置3にロードするためのプログラムがインストールされていてもよい。教示装置4は、ディスプレイ、プロセッサー、RAMやROMを備え、これらのハードウェア資源が教示プログラムと協働して実行プログラムを生成する。
【0035】
図2に示すように、制御装置3は、ロボット1の制御を行うための制御プログラムがインストールされたコンピューターである。制御装置3は、プロセッサーや図示しないRAMやROMを備え、これらのハードウェア資源がプログラムと協働することによりロボット1を制御する。
【0036】
また、図2に示すように、制御装置3は、目標位置設定部3Aと、駆動制御部3Bと、記憶部3Cと、パラメーター生成部3Dと、を有する。記憶部3Cは、例えば、RAM(Random Access Memory)等の揮発性メモリー、ROM(Read Only Memory)等の不揮発性メモリー、着脱式の外部記憶装置等で構成される。記憶部3Cには、本発明の力制御パラメーター調整方法を実行するためのプログラム等、ロボット1を作動させるための動作プログラムが記憶されている。
【0037】
目標位置設定部3Aは、ワークW1に対して所定の作業を実行するための目標位置姿勢Sおよび動作経路を設定する。目標位置設定部3Aは、教示装置4から入力された教示情報等に基づいて、目標位置姿勢Sおよび動作経路を設定する。
【0038】
駆動制御部3Bは、ロボットアーム10の駆動を制御するものであり、位置制御部30と、座標変換部31と、座標変換部32と、補正部33と、力制御部34と、指令統合部35と、を有する。
【0039】
位置制御部30は、予め作成されたコマンドで指定される目標位置に従って、ロボット1のツールセンターポイントTCPの位置を制御する位置指令信号、すなわち、位置指令値を生成する。
【0040】
ここで、制御装置3は、ロボット1の動作を力制御等で制御することが可能である。「力制御」とは、力検出部19の検出結果に基づいて、エンドエフェクター20の位置、すなわち、ツールセンターポイントTCPの位置や、第1アーム12~第6アーム17の姿勢を変更したりするロボット1の動作の制御のことである。
【0041】
力制御には、例えば、フォーストリガー制御と、インピーダンス制御とが含まれている。フォーストリガー制御では、力検出部19により力検出を行い、その力検出部19により所定の力を検出するまで、ロボットアーム10に移動や姿勢の変更の動作を行う。
【0042】
インピーダンス制御は、倣い制御を含む。インピーダンス制御では、ロボットアーム10の先端部に加わる力を可能な限り所定の力に維持、すなわち、力検出部19により検出される所定方向の力を可能な限り目標力fStに維持するようにロボットアーム10の動作を制御する。これにより、例えば、ロボットアーム10に対してインピーダンス制御を行うと、ロボットアーム10は、対象物や、オペレーターから加わった外力に対し、前記所定方向について倣う動作を行う。なお、目標力fStには、0も含まれる。例えば、倣い動作の場合の設定の1つとしては、目標値を「0」とすることができる。なお、目標力fStを0以外の数値とすることもできる。この目標力fStは、作業者が適宜設定可能である。
【0043】
記憶部3Cは、モーターM1~モーターM6の回転角度の組み合わせと、ロボット座標系におけるツールセンターポイントTCPの位置との対応関係を記憶している。また、制御装置3は、ロボット1が行う作業の工程ごとに目標位置姿勢Sと目標力fStとの少なくとも一方をコマンドに基づいて記憶部3Cに記憶する。目標位置姿勢Sおよび目標力fStを引数、すなわち、パラメーターとするコマンドは、ロボット1が行う作業の工程ごとに設定される。
【0044】
駆動制御部3Bは、設定された目標位置姿勢Sと目標力fStとがツールセンターポイントTCPで一致するように、第1アーム12~第6アーム17を制御する。目標力fStとは、第1アーム12~第6アーム17の動作によって達成されるべき力検出部19の検出力およびトルクである。ここで、「S」の文字は、ロボット座標系を規定する軸の方向(X,Y,Z)のいずれか1つの方向を表すこととする。また、Sは、S方向の位置も表すこととする。例えば、S=Xの場合、ロボット座標系で設定された目標位置のX方向成分がS=Xとなり、目標力のX方向成分がfSt=fXtとなる。
【0045】
また、駆動制御部3Bでは、モーターM1~モーターM6の回転角度を取得すると、図2に示す座標変換部31が、対応関係に基づいて、当該回転角度をロボット座標系におけるツールセンターポイントTCPの位置姿勢S(X,Y,Z,U,V,W)に変換する。そして、座標変換部32が、ツールセンターポイントTCPの位置姿勢Sと、力検出部19の検出値とに基づいて、力検出部19に現実に作用している作用力fをロボット座標系において特定する。
【0046】
作用力fの作用点は、ツールセンターポイントTCPとは別に力検出原点として定義される。力検出原点は、力検出部19が力を検出している点に対応する。なお、制御装置3は、ロボット座標系におけるツールセンターポイントTCPの位置姿勢Sごとに、力検出部19のセンサー座標系における検出軸の方向を規定した対応関係を記憶している。従って、制御装置3は、ロボット座標系におけるツールセンターポイントTCPの位置姿勢Sと対応関係とに基づいて、ロボット座標系における作用力fを特定できる。また、ロボットに作用するトルクは、作用力fと、接触点から力検出部19までの距離とから算出することができ、回転力成分として特定される。なお、ワークW1に対してエンドエフェクター20が接触して作業を行う場合、接触点は、ツールセンターポイントTCPとみなすことができる。
【0047】
補正部33は、作用力fに対して重力補償を行う。重力補償とは、作用力fから重力に起因する力やトルクの成分を除去することである。重力補償を行った作用力fは、ロボットアーム10またはエンドエフェクター20に作用している重力以外の力と見なすことができる。
【0048】
また、補正部33は、作用力fに対して慣性補償を行う。慣性補償とは、作用力fから慣性力に起因する力やトルクの成分を除去することである。慣性補償を行った作用力fは、ロボットアーム10またはエンドエフェクター20に作用している慣性力以外の力と見なすことができる。
【0049】
力制御部34は、インピーダンス制御を行う。インピーダンス制御は、仮想の機械的インピーダンスをモーターM1~モーターM6によって実現する能動インピーダンス制御である。制御装置3は、このようなインピーダンス制御を、ワークW1およびワークW2の嵌合作業、螺合作業、研磨作業等、エンドエフェクター20が対象物から力を受ける接触状態の工程や、直接教示を行う際に実行する。なお、このような工程以外であっても、例えば、人がロボット1に接触した際にインピーダンス制御を行うことにより、安全性を高めることができる。
【0050】
インピーダンス制御では、目標力fStを後述する運動方程式に代入してモーターM1~モーターM6の回転角度を導出する。制御装置3がモーターM1~モーターM6を制御する信号は、PWM(Pulse Width Modulation)変調された信号である。
【0051】
また、制御装置3は、エンドエフェクター20が外力を受けない非接触状態の工程では、目標位置姿勢Sから線形演算で導出する回転角度でモーターM1~モーターM6を制御する。目標位置姿勢Sから線形演算で導出する回転角度でモーターM1~モーターM6を制御するモードのことを、位置制御モードと言う。
【0052】
制御装置3は、目標力fStと作用力fとをインピーダンス制御の運動方程式に代入することにより、力由来補正量ΔSを特定する。力由来補正量ΔSとは、ツールセンターポイントTCPが機械的インピーダンスを受けた場合に、目標力fStとの力偏差Δf(t)を解消するために、ツールセンターポイントTCPが移動すべき位置姿勢Sの大きさを意味する。下記の式(1)は、インピーダンス制御の運動方程式である。
【0053】
【数1】
【0054】
式(1)の左辺は、ツールセンターポイントTCPの位置姿勢Sの2階微分値に仮想質量係数m(以下、「質量係数m」と言う)を乗算した第1項と、ツールセンターポイントTCPの位置姿勢Sの微分値に仮想粘性係数d(以下、「粘性係数d」と言う)を乗算した第2項と、ツールセンターポイントTCPの位置姿勢Sに仮想弾性係数k(以下、「弾性係数k」と言う)を乗算した第3項とによって構成される。式(1)の右辺は、目標力fStから現実の力fを減算した力偏差Δf(t)によって構成される。式(1)における微分とは、時間による微分を意味する。ロボット1が行う工程において、目標力fStとして一定値が設定される場合や、目標力fStとして時間の関数が設定される場合もある。
【0055】
質量係数mは、ツールセンターポイントTCPが仮想的に有する質量を意味し、粘性係数dは、ツールセンターポイントTCPが仮想的に受ける粘性抵抗を意味し、弾性係数kは、ツールセンターポイントTCPが仮想的に受ける弾性力のバネ定数を意味する。
【0056】
質量係数mの値が大きくなるにつれて、動作の加速度が小さくなり、質量係数mの値が小さくなるにつれて動作の加速度が大きくなる。粘性係数dの値が大きくなるにつれて、動作の速度が遅くなり、粘性係数dの値が小さくなるにつれて動作の速度が速くなる。弾性係数kの値が大きくなるにつれて、バネ性が大きくなり、弾性係数kの値が小さくなるにつれて、バネ性が小さくなる。
【0057】
これら質量係数m、粘性係数dおよび弾性係数kは、方向ごとに異なる値に設定されてもよく、方向に関わらず共通の値に設定されてもよい。また、質量係数m、粘性係数dおよび弾性係数kは、作業者が、作業前に適宜設定可能である。
【0058】
このような質量係数m、粘性係数dおよび弾性係数kは、力制御パラメーターである。力制御パラメーターは、ロボットアーム10が実際に作業を行うのに先立って設定される値である。力制御パラメーターは、質量係数m、粘性係数dおよび弾性係数kの他に、前述したような目標力や、図3に示すように、作業開始位置姿勢、作業途中位置姿勢、作業終了位置姿勢等が含まれる。
【0059】
このように、ロボットシステム100では、力制御を実行中、力検出部19の検出値、予め設定された力制御パラメーター、および、予め設定された目標力から補正量を求める。この補正量は、前述した力由来補正量ΔSのことであり、外力を受けたその位置からツールセンターポイントTCPを移動すべき位置との差のことである。
【0060】
そして、指令統合部35は、位置制御部30が生成した位置指令値Pに、力由来補正量ΔSを合算する。これを随時行うことにより、指令統合部35は、外力を受けた位置に移動させるために用いていた位置指令値Pから、新たな位置指令値P’を求める。
【0061】
そして、この新たな位置指令値P’を座標変換部31がロボット座標に変換し、実行部351が実行することにより、力由来補正量ΔSを加味した位置にツールセンターポイントTCPを移動させて、外力に対して応答し、ロボット1に接触した対象物に対し、それ以上負荷がかかるのを緩和することができる。
【0062】
このような駆動制御部3Bによれば、ワークW1を把持した状態で、ツールセンターポイントTCPを目標位置姿勢Sに向かって移動させつつ、かつ、目標力fStが予め設定された値になるまでツールセンターポイントTCPが移動するようにロボットアーム10を駆動することができる。具体的には、ワークW1がワークW2の挿入孔200に挿入され、予め設定された目標力fStを検出するまで挿入作業を行い、挿入作業を完了することができる。また、挿入過程において、上記のような力制御を行うことにより、ワークW1およびワークW2に過剰に負荷がかかるのを防止または抑制することができる。
【0063】
図2に示すパラメーター生成部3Dは、連続最適化問題のアルゴリズムにより、パラメーターを生成する。具体的には、パラメーター生成部3Dは、入力データとなる評価値から反復的に学習し、目的関数の最小値を探索するパラメーターを生成する。
【0064】
連続最適化問題のアルゴリズムとは、入力値を受け取り、評価および次回試行のパラメーター算出を行い、その結果を出力値として出力するもののことを言う。入力値は、例えば、作業に要した時間、すなわち、作業時間に関する情報と、作業中にロボットアームが受けた力、すなわち、作業中に力検出部19が検出した検出力である。出力値は、例えば、力制御パラメーターの更新値である。これらに関しては、後に詳述する。
【0065】
前記アルゴリズムとしては、Nelder-Mead法、ニュートン法、共分散行列適応進化戦略法(Covariance Matrix Adaptation Evolution Strategy)、粒子群最適化法(Particle Swarm Optimization)や、ベイズ最適化法等が挙げられる。
【0066】
前記アルゴリズムに対して、評価関数を構成する各入力値に対する配分比を適切に設定しつつ多目的最適化を行うことで、収束に至るまでの作業回数を少なくすることができる。
【0067】
本実施形態では、連続最適化問題のアルゴリズムを取り挙げたが、これに限定されず、離散値をパラメーター出力とするアルゴリズムであっても、作業開始位置にばらつきを与える事による過剰適合防止の効果は、同様に得ることができる。
【0068】
ここで、作業者は、作業の内容や、ワークW1およびワークW2の種類等に応じて、作業を行う前に、前述した力制御パラメーターを適切な値に設定する必要がある。これらを適切な値に設定することにより、作業中のロボットアーム10のモードを作業に適したモードとすることができ、所望の作業時間で、ワークW1およびワークW2に過剰な負荷をかけることなく正確な作業を行うことができる。
【0069】
しかしながら、力制御パラメーターを適切な値に設定することは難しく、従来では、試験的に作業を行い、作業時間等の作業結果に基づいて何度も力制御パラメーターを変更しながら、所望の作業結果になるまで試行錯誤しながら手探りで力制御パラメーターの適切な値を設定する必要がある。このような方法では、ワーク数量および種類、作業時のロボットアーム10の位置姿勢等の諸条件が限定されて、過剰適合状態、すなわち、ワークやロボットのばらつきが無い特定条件の下でのみ、求められる性能を発揮する力制御パラメーターを得ることとなる。すなわち、上述の前記力制御パラメーターは、製造ばらつき、把持ばらつきが存在する実運用には適さないものとなってしまう。このように、力制御に求められる生産性要件として、必要とされる適切な力およびトルクと、作業時間と、のバランスが取れた力制御パラメーターを設定することは、熟練者にとっても難しい。これに対し、本発明では、以下のようにして課題を解決することができる。以下、本発明の力制御パラメーター調整方法について、図3を参照しつつ、図9に示すフローチャートを用いて説明する。
【0070】
以下の各ステップは、本実施形態では、制御装置3および教示装置4が分担して行うが、本発明ではこれに限定されず、制御装置3および教示装置4のうちのいずれかが実行する構成であってもよい。
【0071】
まず、作業者が、ロボットアーム10の作業開始位置姿勢に関する第1情報と、力制御パラメーターの候補値とを入力する。この入力は、教示装置4を用いて行われる。例えば、作業開始位置は、ツールセンターポイントTCPの座標の値を入力することにより行われ、作業開始姿勢は、各関節の角度の値を入力することにより行われる。
【0072】
また、力制御パラメーターの候補値とは、目標力、質量係数m、粘性係数d、弾性係数k、作業終了位置姿勢の初期設定値のことである。これらは、初期状態において任意の初期値が予め設定されていてもよく、目標力、質量係数m、粘性係数d、弾性係数k、作業終了位置姿勢をそれぞれ入力、設定する構成であってもよい。目標力、質量係数m、粘性係数dおよび弾性係数kは、それぞれ、数値を入力することにより設定される。また、作業終了位置は、ツールセンターポイントTCPの座標の値を入力することにより行われ、作業終了姿勢は、各関節の角度の値を入力することにより行われる。
【0073】
また、力制御パラメーター調整方法を開始するに際し、作業者が第1情報を入力する際、作業開始位置姿勢を範囲で入力する構成であるのが好ましい。すなわち、作業者によって入力される第1情報は、作業開始位置姿勢の範囲を持った値であるのが好ましい。これにより、作業開始位置姿勢のずれ量を考慮した作業を行い、評価値を得ることができる。よって、後述するステップを実行することにより、より適正な力制御パラメーターを設定することができる。
【0074】
ステップS101では、上述した入力情報を取得する。すなわち、ロボットアーム10の作業開始位置姿勢に関する第1情報と、力制御パラメーターの候補値とを取得する。本明細書における「取得」とは、情報を受け取り、制御装置3、教示装置4および通信可能な外部記憶装置のいずれかの記憶部に記憶することを言う。
【0075】
次に、ステップS102において、試験的に作業を実行する。すなわち、ステップS101で取得した情報に基づいてロボットアーム10を駆動して試験的に作業を実行する。そして、ステップS103において、作業に要する作業時間に関する第2情報と、作業中にロボットアーム10に加わる力に関する第3情報とを取得する。第2情報は、作業開始してから終了するまでの時間のことであり、制御装置3または教示装置4に内蔵されたタイマーにより測定される構成であってもよく、作業者が測定して制御装置3または教示装置4に入力する構成であってもよい。
【0076】
また、第3情報は、作業中にロボットアーム10に加わる力の経時的な情報であってもよく、作業中にロボットアーム10に加わる力の最大値であってもよい。また、作業中にロボットアーム10に加わる力は、力検出部19が検出した検出値のことであり、前述したように、X軸、Y軸、Z軸の各軸方向の力成分と、X軸回りとなるTx方向の力成分と、Y軸回りとなるTy方向の力成分と、Z軸回りとなるTz方向の力成分とが含まれる。以下、これらを総称して「検出力」と言う。
【0077】
ステップS103で取得する2情報が、作業中にロボットアーム10に加わる力の最大値として本発明の力制御パラメーター調整方法を実行した場合、作業中にワークW1およびワークW2に加わる負荷をより効果的に軽減することができる力制御パラメーターを設定することができる。
【0078】
このようなステップS103が、ロボットアーム10の作業開始位置または作業開始姿勢に関する第1情報と、力制御パラメーターの候補値とに基づいてロボットアーム10を動作させて、作業に要する作業時間に関する第2情報と、作業中にロボットアーム10に加わる力に関する第3情報とを取得する第1ステップである。
【0079】
次いで、ステップS104において、第2情報および第3情報をパラメーター生成部3Dに入力する。そして、ステップS105において、パラメーター生成部3Dから出力された力制御パラメーターの更新値を取得する。
【0080】
力制御パラメーターの更新値には、目標力、仮想粘性係数、仮想弾性係数、仮想質量係数、作業開始位置姿勢、作業途中位置姿勢および作業終了位置姿勢が含まれる。力制御パラメーターの更新値は、入力された第2情報および第3情報から読み取れる特徴、傾向等を見出して適正に修正された値である。
【0081】
なお、力制御パラメーターの更新値は、目標力、仮想粘性係数、仮想弾性係数、仮想質量係数、作業開始位置、作業開始姿勢、作業終了位置および作業終了姿勢のうちの少なくとも1つが含まれていていれば、本発明の効果を得ることができる。
【0082】
このように、力制御パラメーターの更新値には、目標力、仮想粘性係数、仮想弾性係数、仮想質量係数、作業開始位置姿勢、作業終了位置姿勢のうち少なくとも1つが含まれる。これにより、作業を実行するに際し、重要なパラメーターを修正し、設定することができる。
【0083】
このようなステップS105が、取得した第2情報および第3情報に基づいて、力制御パラメーターの候補値を修正した更新値を取得する第2ステップである。
【0084】
次いで、ステップS106において、ステップS105で取得した更新値のうち、作業開始位置または作業開始姿勢にノイズを加える。具体的には、ステップS105で取得した更新値に所定の範囲の数値からランダムに取り出した数値、すなわち、乱数を加算または乗算する。これにより、作業開始位置姿勢のばらつきを作り出し、例えば、ワークW2の設置位置のばらつきや、ワークW1およびワークW2の寸法のばらつきを想定して入力情報を生成することができる。その結果、さらに適正な力制御パラメーターを設定することができる。
【0085】
ここで、一例として、図4図6を用いて、挿入作業における開始位置ばらつきの導入の有用性について説明する。図4は、図1中の、ロボットアーム10の先端、ワークW1およびワークW2の拡大縦断面図である。力検出部19内部の力検出原点19aの値と、制御点CPの作業開始位置姿勢情報CP-0が、評価値として使用される。作業開始位置姿勢情報CP-0は、制御点CPのロボット座標と、各関節の角度とから定義される。
【0086】
作業実行前から作業実行後に至るまでの作業時間をより短く、かつ過度に大きな力を検出しないことが、通常の挿入作業として求められる。図4に示すように、ワークW1の作業開始位置姿勢は、ワークW2の挿入孔200に対して直線的かつ滑らかに係合するよう意図し、教示される。
【0087】
しかしながら、例えば、図5に示した挿入孔200の寸法公差が大きい状態、例えば、挿入孔200が大きい状態B、ワークW2の挿入孔200の傾き、或いは、ワークW2の設置面に傾きがある状態C、ワークW1からワークW2までの距離が遠い状態D等、同一作業を繰り返し行う作業において、意図しない実際の環境におけるばらつきが生じる。
【0088】
例えば、状態Aのみを作業開始位置姿勢として採用し、連続最適化アルゴリズムを適用すると、並進方向に対する力制御パラメーターの最適化を行われるものの、回転方向に対する力制御パラメーターの最適化は、評価値に対する影響がなく、状態Cや状態Dのような作業開始位置姿勢のばらつきに対して最適化が行われない。その結果、過剰な作業時間の増加や、作業失敗の確率が上がる。このような事態を避けるようために、最適化問題を解くことが、実際の作業で求められる。
【0089】
上述の問題に対する解決手段として、例えば、位置姿勢の変更が容易なロボット1側の作業開始位置姿勢を変更することによって、図5の状態CにおけるワークW1およびワークW2の相対的な位置関係が同じである図6に示す状態C’を模擬的に再現する。これにより、回転方向に対する力制御パラメーターの最適化と、並進方向に対する力制御パラメーターの最適化と、を少ない労力で両立することができる。同様に、図5の状態DにおけるワークW1およびワークW2の相対的な位置関係が同じである図6に示す状態D’を、位置姿勢の変更が容易なロボット1側の作業開始位置姿勢を変更することによって模擬的に再現する。
【0090】
また、状態Bおよび状態B’に示すようなワークW2自体の個体差を模擬的に再現するのは困難であるが、状態C’に示すようなばらつきは、スナッピング機構411からの反発力や、挿入孔200における摩擦力の作業毎のばらつきを増加させることによって、状態B’に示すような条件も含める方向に前記ばらつきは大きくなる。その結果、得られた力制御パラメーターは、過剰適合が避けられており、状態変動により強く、好適なものとなる。
【0091】
状態Cでは回転方向の傾き、すなわち、姿勢の変動について記載し、状態Dでは、Z軸方向の変動について説明したが、その他の方向においても同様の効果が得られる。例えば、最適化実施前の初期状態での教示位置が、ワークW1とワークW2とでX軸方向において完全に一致し、Y軸においてズレがある場合、X軸方向は、ばらつきに弱く、Y軸方向はばらつきに強い、となるような、最適化時の過剰適合につながる。
【0092】
このように、本発明では、ロボット1側で作業開始位置姿勢のばらつきを作り出し、例えば、ワークW2の設置位置のばらつきや、ワークW1およびワークW2の寸法のばらつきを想定した力制御パラメーターの更新値を得ることができる。
【0093】
次いで、ステップS107において、ステップS106で取得した力制御パラメーターの更新値を用いて再度試験的作業を行い、ステップS108において、その作業結果、すなわち、第2情報および第3情報を取得する。
【0094】
次いで、ステップS109において、ステップS108で取得した第2情報および第3情報が収束したか否かを判断する。ステップS109で収束していないと判断した場合、ステップS104に戻り、以降のステップを順次繰り返す。すなわち、収束するまで繰り返す。
【0095】
以下、一例として、第2情報を例に挙げて具体的に説明する。図8は、試験的作業を行って作業時間を取得するごとに結果をプロットしたグラフである。図8では、例えば、作業を10回行って、10回分の作業結果を1つの集団、すなわち、世代としてカウントした数を横軸としている。また、縦軸としては、左側に作業に要した時間を表記し、右側に前回との差分の時間を表記している。
【0096】
また、図8では、「時間平均値」、「作業時間最長」、「作業時間最短」、「差分」をそれぞれプロットしているが、「時間平均値」、「作業時間最長」および「作業時間最短」に関しては、左側の縦軸が適用され、「差分」に関しては、右側の縦軸が適用される。「時間平均値」は、その世代の作業時間の平均値である。「作業時間最長」は、その世代の最長の作業時間である。「作業時間最短」は、その世代の最短の作業時間である。「差分」は、その世代において、前回との作業時間の差分の平均値である。
【0097】
図8に示すように、11世代~14世代では、差分が、所定時間以下、すなわち、1秒以下の状態が続いている。この場合、14世代において、作業結果である第2情報が収束したと判断する。このように、所定回数、すなわち、4世代連続で前世代との作業時間の差が、1秒以下の状態が続いた場合、収束したと判断する。なお、1世代~13世代のステップS109では、収束していないと判断し、14回目で収束したと判断する。
【0098】
なお、上記では、世代ごとに集計を行って、収束したか否かの判断を行う場合について説明したが、本発明ではこれに限定されず、例えば、作業を行うごと、すなわち、毎回、収束したか否かの判断を行ってもよい。
【0099】
また、上記では、作業時間の差分に基づいて判断を行う場合について説明したが、本発明ではこれに限定されず、「時間平均値」、「作業時間最長」、「作業時間最短」等に基づいて収束したか否かの判断を行ってもよい。
【0100】
このように、本発明の力制御パラメーター調整方法では、力制御パラメーターの最終値は、n回目(nは、1以上の整数)の第1ステップで得られる作業時間と、n+1回目の前記第1ステップで得られる作業時間との乖離の程度が一定以下となる状態がm回(mは、1以上の整数)続いた際の力制御パラメーターの更新値である。これにより、より適正な力制御パラメーターを設定することができる。
【0101】
なお、上記では、第2情報が収束したか否かを判断する構成について説明したが、本発明ではこれに限定されず、第3情報が収束したか否かを判断する構成であってもよく、第2情報および第3情報が収束したか否かを判断する構成であってもよい。なお、第3情報が収束したか否かを判断する場合、例えば、検出力の最大値と、前回の作業時の検出力の最大値との差で判断することができる。
【0102】
ステップS109において、収束したと判断した場合、ステップS110において、最新の力制御パラメーターの更新値を、力制御パラメーターの最終値とし、その値を設定する。すなわち、14回目の判断の際に用いた力制御パラメーターの更新値を、力制御パラメーターの最終値とし、本発明による最適化実行ののち、前記最終値を使用して繰返し作業を行う際の力制御パラメーターとする。
【0103】
このように、本発明の力制御パラメーター調整方法は、力制御により駆動し作業を行うロボットアーム10を有するロボット1の力制御パラメーターを調整する力制御パラメーター調整方法である。また、本発明の力制御パラメーター調整方法は、ロボットアーム10の作業開始位置姿勢に関する第1情報と、力制御パラメーターの候補値とに基づいてロボットアーム10を動作させて、作業に要する作業時間に関する第2情報と、作業中にロボットアーム10に加わる力に関する第3情報とを取得する第1ステップと、取得した第2情報および第3情報に基づいて、力制御パラメーターの候補値を更新した更新値を取得する第2ステップと、を有し、取得した作業時間またはロボットアーム10に加わる力が収束するまで、第1情報にノイズを加えて第1ステップと第2ステップとを繰り返し行って力制御パラメーターの最終値を得る。これにより、従来のように力制御パラメーターを変えながら試験的に作業を繰り返し、どのような力制御パラメーターがその作業に適しているかを見極めるという作業を省略しつつ、力制御パラメーターを適正かつ容易に設定することができる。
【0104】
また、前述したように、ロボットアーム10が実行する作業は、第1対象物であるワークW1を把持しつつ、第2対象物であるワークW2に挿入する挿入作業である。挿入作業では、力制御パラメーターをより適正な値とする必要がある。したがって、ロボットアーム10が挿入作業である場合、特に、本発明の力制御パラメーター調整方法が有効である。
【0105】
また、力制御パラメーターの調整方法を開始するに際し、作業者が第1情報を入力する際、作業開始位置姿勢を範囲で入力する構成であるのが好ましい。すなわち、作業者によって入力される第1情報は、作業開始位置姿勢の範囲を持った値であるのが好ましい。
【0106】
図7に示すように、ワークW1がワークW2に近すぎる作業開始位置姿勢であると、作業開始位置姿勢に、ばらつき、すなわち、傾きを与える際、ワークW1がワークW2へ接触した作業開始位置姿勢、或いは、ワークW1とワークW2とが互いに接触状態を経由した後にワークW1とワークW2とが離間した作業開始位置姿勢となる。
【0107】
このような動作の結果、該作業で得られた評価値の信頼性が不十分な可能性がある。これは、把持条件の変化やワークW1の位置変化を含む環境条件の変動が要因となり、連続最適化問題のアルゴリズムが出力する更新値の精度劣化につながる。そこで、このような場合は、失敗と判断し、その旨を記憶するのが好ましい。すなわち、予め設定した重力補償および慣性補償の範囲となる閾値を超える検出力が検出された場合には、失敗と記憶することが好ましい。
【0108】
失敗の際は、作業開始位置姿勢の変更のみ実施し再試行してもよく、制約条件に違反した悪評価値である旨を記憶してもよく、作業者に対してエラーを発報してもよい。
【0109】
このように、ノイズが加えられた第1情報に基づく作業中にロボットアーム10に加わる力が、予め設定した重力補償および慣性補償の範囲となる閾値を超えた場合、作業を失敗と記憶することが好ましい。これにより、どのような条件で失敗したかを参照して、次回以降の力制御パラメーターの設定時に生かすことができる。
【0110】
<ロボットシステムの他の構成例>
図10は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
【0111】
図10には、ロボット1とコントローラー61とコンピューター62が接続されたロボットシステム100Aの全体構成が示されている。ロボット1の制御は、コントローラー61にあるプロセッサーによりメモリーにある指令を読み出して実行されてもよく、コンピューター62に存在するプロセッサーによりメモリーにある指令を読み出してコントローラー61を介して実行されてもよい。
【0112】
従って、コントローラー61とコンピューター62とのいずれか一方または両方を「制御装置」として捉えることができる。
【0113】
<変形例1>
図11は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。
【0114】
図11には、ロボット1に直接コンピューター63が接続されたロボットシステム100Bの全体構成が示されている。ロボット1の制御は、コンピューター63に存在するプロセッサーによりメモリーにある指令を読み出して直接実行される。
従って、コンピューター63を「制御装置」として捉えることができる。
【0115】
<変形例2>
図12は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
【0116】
図12には、コントローラー61が内蔵されたロボット1とコンピューター66が接続され、コンピューター66がLAN等のネットワーク65を介してクラウド64に接続されているロボットシステム100Cの全体構成が示されている。ロボット1の制御は、コンピューター66に存在するプロセッサーによりメモリーにある指令を読み出して実行されてもよく、クラウド64上に存在するプロセッサーによりコンピューター66を介してメモリーにある指令を読み出して実行されてもよい。
【0117】
従って、コントローラー61とコンピューター66とクラウド64とのいずれか1つ、または、いずれか2つ、または、3つを「制御装置」として捉えることができる。
【0118】
以上、本発明の力制御パラメーター調整方法を図示の実施形態について説明したが、本発明は、これに限定されるものではない。また、ロボットシステムを構成する各部は、同様の機能を発揮し得る任意の構成のものと置換することができる。また、任意の構成物が付加されていてもよい。
【符号の説明】
【0119】
1…ロボット、3…制御装置、3A…目標位置設定部、3B…駆動制御部、3C…記憶部、3D…パラメーター生成部、4…教示装置、10…ロボットアーム、11…基台、12…第1アーム、13…第2アーム、14…第3アーム、15…第4アーム、16…第5アーム、17…第6アーム、18…中継ケーブル、19…力検出部、19a…力検出原点、20…エンドエフェクター、30…位置制御部、31…座標変換部、32…座標変換部、33…補正部、34…力制御部、35…指令統合部、61…コントローラー、62…コンピューター、63…コンピューター、64…クラウド、65…ネットワーク、66…コンピューター、100…ロボットシステム、100A…ロボットシステム、100B…ロボットシステム、100C…ロボットシステム、171…関節、172…関節、173…関節、174…関節、175…関節、176…関節、200…挿入孔、351…実行部、411…スナッピング機構、A…状態、B…状態、B’…状態、C…状態、C’…状態、D…状態、D’…状態、CP…制御点、E1…エンコーダー、E2…エンコーダー、E3…エンコーダー、E4…エンコーダー、E5…エンコーダー、E6…エンコーダー、M1…モーター、M2…モーター、M3…モーター、M4…モーター、M5…モーター、M6…モーター、CP-0…作業開始位置姿勢情報、TCP…ツールセンターポイント、W1…ワーク、W2…ワーク
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12