(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-02
(45)【発行日】2024-09-10
(54)【発明の名称】表示制御方法、表示プログラムおよびロボットシステム
(51)【国際特許分類】
B25J 9/22 20060101AFI20240903BHJP
B25J 13/00 20060101ALI20240903BHJP
G05B 19/4069 20060101ALI20240903BHJP
【FI】
B25J9/22 A
B25J13/00 Z
G05B19/4069
(21)【出願番号】P 2020183020
(22)【出願日】2020-10-30
【審査請求日】2023-10-06
(73)【特許権者】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100091292
【氏名又は名称】増田 達哉
(74)【代理人】
【識別番号】100091627
【氏名又は名称】朝比 一夫
(72)【発明者】
【氏名】竹内 馨
(72)【発明者】
【氏名】安達 大稀
(72)【発明者】
【氏名】木下 敬文
【審査官】樋口 幸太郎
(56)【参考文献】
【文献】特開2018-015857(JP,A)
【文献】特開2017-001122(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 9/22
B25J 13/00
G05B 19/4069
(57)【特許請求の範囲】
【請求項1】
力制御により作業を行うロボットアームを有するロボットのシミュレーションモデルである仮想ロボットを含む表示画像を表示する表示部を制御する表示制御方法であって、
前記作業中に前記ロボットアームが受ける力の目標である目標力に関する第1情報
と、インピーダンス制御の運動方程式における質量係数、粘性係数および弾性係数と、を含む力制御パラメーターに関する情報を受け付ける受付ステップと、
前記表示画像において、前記仮想ロボットと、前記第1情報を示す第1指標と、前記作業中に前記ロボットアームに加わった力に関する第2情報を示す第2指標と、を時間的に重複して、かつ、区別して表示する表示ステップと、を有
し、
前記第1指標は、前記目標力の方向および大きさを示す矢印であり、
前記第2指標は、前記ロボットアームが受ける力の方向および大きさを示す矢印であり、
前記表示画像において、前記仮想ロボットと前記第1指標とが重なり、かつ、前記仮想ロボットと前記第2指標とが重なっていることを特徴とする表示制御方法。
【請求項2】
前記第1指標および前記第2指標は、色、大きさ、形状のうちの少なくとも1つが互いに異なる請求項1に記載の表示制御方法。
【請求項3】
前記表示ステップでは、前記作業中に前記ロボットアームが受けた力に応じて、前記第2指標である前記矢印の色、大きさ、形状のうちの少なくとも1つを変化させる請求項
2に記載の表示制御方法。
【請求項4】
前記表示ステップでは、前記作業中に前記ロボットアームが受けた力に応じて、前記第2指標である前記矢印の長さ、太さ、鋭さのうちの少なくとも1つを変化させる請求項
3に記載の表示制御方法。
【請求項5】
前記表示ステップでは、前記作業中の前記ロボットアームの姿勢の変化に応じて、前記仮想ロボットの姿勢を変化させる請求項1ないし
4のいずれか1項に記載の表示制御方法。
【請求項6】
前記表示ステップでは、前記第1指標および前記第2指標を、それぞれ、前記仮想ロボットに設定されている座標系の各軸方向の成分に分解して表示する請求項1ないし
5のいずれか1項に記載の表示制御方法。
【請求項7】
力制御により作業を行うロボットアームを有するロボットのシミュレーションモデルである仮想ロボットを含む表示画像を表示する表示部を制御する表示制御方法を実行するためのプログラムであって、
前記作業中に前記ロボットアームが受ける力の目標である目標力に関する第1情報
と、インピーダンス制御の運動方程式における質量係数、粘性係数および弾性係数と、を含む力制御パラメーターに関する情報を受け付ける受付ステップと、
前記表示画像において、前記仮想ロボットと、前記第1情報を示す第1指標と、前記作業中に前記ロボットアームに加わった力に関する第2情報を示す第2指標と、を時間的に重複して、かつ、区別して表示する表示ステップと、を実行するためのものであ
り、
前記第1指標は、前記目標力の方向および大きさを示す矢印であり、
前記第2指標は、前記ロボットアームが受ける力の方向および大きさを示す矢印であり、
前記表示画像において、前記仮想ロボットと前記第1指標とが重なり、かつ、前記仮想ロボットと前記第2指標とが重なっていることを特徴とする表示プログラム。
【請求項8】
力制御により作業を行うロボットアームを有するロボットと、前記ロボットのシミュレーションモデルである仮想ロボットを含む表示画像を表示する表示部と、前記表示部を制御する制御部と、を備え、
前記制御部は、
前記作業中に前記ロボットアームが受ける力の目標である目標力に関する第1情報
と、インピーダンス制御の運動方程式における質量係数、粘性係数および弾性係数と、を含む力制御パラメーターに関する情報を受け付け、
前記表示画像において、前記仮想ロボットと、前記第1情報を示す第1指標と、前記作業中に前記ロボットアームに加わった力に関する第2情報を示す第2指標と、を時間的に重複して、かつ、区別して表示するよう前記表示部の作動を制御
し、
前記第1指標は、前記目標力の方向および大きさを示す矢印であり、
前記第2指標は、前記ロボットアームが受ける力の方向および大きさを示す矢印であり、
前記表示画像において、前記仮想ロボットと前記第1指標とが重なり、かつ、前記仮想ロボットと前記第2指標とが重なっていることを特徴とするロボットシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示制御方法、表示プログラムおよびロボットシステムに関する。
【背景技術】
【0002】
例えば、特許文献1に示すように、ロボットアームと、ロボットアームに加わる力を検出する力検出部と、を有し、力検出部の検出結果に基づいてロボットアームを駆動する力制御を行うことによって、所定の作業を行うロボットが知られている。また、作業者は、ロボットが作業を行うのに先立って、作業中にロボットアームが受ける力の目標力等の力制御パラメーターを設定する。これにより、所望の作業をロボットに行わせることができる。
【0003】
また、特許文献1では、作業中に、どの程度の力がワークに加わっているか、その力がどこに加わっているかを表示することにより、作業者が、作業内容を視覚的に把握することができる。これにより、作業が適切であるか否かを認識することができる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、単に作業中にワークにどの程度の力が加わっているかを把握したところで、その力の大きさが適切であるか否かを判断するのは難しい。
【課題を解決するための手段】
【0006】
本発明の表示制御方法は、力制御により作業を行うロボットアームを有するロボットのシミュレーションモデルである仮想ロボットを含む表示画像を表示する表示部を制御する表示制御方法であって、
前記作業中に前記ロボットアームが受ける力の目標である目標力に関する第1情報を含む力制御パラメーターに関する情報を受け付ける受付ステップと、
前記表示画像において、前記仮想ロボットと、前記第1情報を示す第1指標と、前記作業中に前記ロボットアームに加わった力に関する第2情報を示す第2指標と、を時間的に重複して、かつ、区別して表示する表示ステップと、を有することを特徴とする。
【0007】
本発明の表示プログラムは、力制御により作業を行うロボットアームを有するロボットのシミュレーションモデルである仮想ロボットを含む表示画像を表示する表示部を制御する表示制御方法を実行するためのプログラムであって、
前記作業中に前記ロボットアームが受ける力の目標である目標力に関する第1情報を含む力制御パラメーターに関する情報を受け付ける受付ステップと、
前記表示画像において、前記仮想ロボットと、前記第1情報を示す第1指標と、前記作業中に前記ロボットアームに加わった力に関する第2情報を示す第2指標と、を時間的に重複して、かつ、区別して表示する表示ステップと、を実行するためのものであることを特徴とする。
【0008】
本発明のロボットシステムは、力制御により作業を行うロボットアームを有するロボットと、前記ロボットのシミュレーションモデルである仮想ロボットを含む表示画像を表示する表示部と、前記表示部を制御する制御部と、を備え、
前記制御部は、
前記作業中に前記ロボットアームが受ける力の目標である目標力に関する第1情報を含む力制御パラメーターに関する情報を受け付け、
前記表示画像において、前記仮想ロボットと、前記第1情報を示す第1指標と、前記作業中に前記ロボットアームに加わった力に関する第2情報を示す第2指標と、を時間的に重複して、かつ、区別して表示するよう前記表示部の作動を制御することを特徴とする。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本発明のロボットシステムの全体構成を示す図である。
【
図2】
図2は、
図1に示すロボットシステムのブロック図である。
【
図3】
図3は、表示ステップで表示される表示画像の一例を示す図である。
【
図4】
図4は、表示ステップで表示される表示画像の一例を示す図である。
【
図5】
図5は、表示ステップで表示される表示画像の一例を示す図である。
【
図6】
図6は、表示ステップで表示される表示画像の一例を示す図である。
【
図7】
図7は、表示ステップで表示される表示画像の一例を示す図である。
【
図8】
図8は、表示ステップで表示される表示画像の一例を示す図である。
【
図9】
図9は、表示ステップで表示される第1指標または第2指標の変化のバリエーションを説明するための図である。
【
図10】
図10は、表示ステップで表示される表示画像の一例を示す図である。
【
図11】
図11は、表示ステップで表示される表示画像の一例を示す図である。
【
図12】
図12は、本発明の表示制御方法を説明するためのフローチャートである。
【
図13】
図13は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
【
図14】
図14は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。
【
図15】
図15は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
【発明を実施するための形態】
【0010】
<実施形態>
図1は、本発明のロボットシステムの全体構成を示す図である。
図2は、
図1に示すロボットシステムのブロック図である。
図3~
図8は、表示ステップで表示される表示画像の一例を示す図である。
図9は、表示ステップで表示される第1指標または第2指標の変化のバリエーションを説明するための図である。
図10および
図11は、表示ステップで表示される表示画像の一例を示す図である。
図12は、本発明の表示制御方法を説明するためのフローチャートである。
【0011】
以下、ロボットの制御方法を添付図面に示す好適な実施形態に基づいて詳細に説明する。なお、以下では、説明の便宜上、
図1中の+Z軸方向、すなわち、上側を「上」、-Z軸方向、すなわち、下側を「下」とも言う。また、ロボットアームについては、
図1中の基台11側を「基端」、その反対側、すなわち、エンドエフェクター側を「先端」とも言う。また、
図1中のZ軸方向、すなわち、上下方向を「鉛直方向」とし、X軸方向およびY軸方向、すなわち、左右方向を「水平方向」とする。
【0012】
図1に示すように、ロボットシステム100は、ロボット1と、ロボット1を制御する制御装置3と、教示装置4と、を備える。
【0013】
まず、ロボット1について説明する。
図1に示すロボット1は、本実施形態では単腕の6軸垂直多関節ロボットであり、基台11と、ロボットアーム10と、を有する。また、ロボットアーム10の先端部にエンドエフェクター20を装着することができる。エンドエフェクター20は、ロボット1の構成要件であってもよく、ロボット1の構成要件でなくてもよい。
【0014】
なお、ロボット1は、図示の構成に限定されず、例えば、双腕型の多関節ロボットであってもよい。また、ロボット1は、水平多関節ロボットであってもよい。
【0015】
基台11は、ロボットアーム10を下側から駆動可能に支持する支持体であり、例えば工場内の床に固定されている。ロボット1は、基台11が中継ケーブル18を介して制御装置3と電気的に接続されている。なお、ロボット1と制御装置3との接続は、
図1に示す構成のように有線による接続に限定されず、例えば、無線による接続であってもよく、さらには、インターネットのようなネットワークを介して接続されていてもよい。
【0016】
本実施形態では、ロボットアーム10は、第1アーム12と、第2アーム13と、第3アーム14と、第4アーム15と、第5アーム16と、第6アーム17とを有し、これらのアームが基台11側からこの順に連結されている。なお、ロボットアーム10が有するアームの数は、6つに限定されず、例えば、1つ、2つ、3つ、4つ、5つまたは7つ以上であってもよい。また、各アームの全長等の大きさは、それぞれ、特に限定されず、適宜設定可能である。
【0017】
基台11と第1アーム12とは、関節171を介して連結されている。そして、第1アーム12は、基台11に対し、鉛直方向と平行な第1回動軸を回動中心とし、その第1回動軸回りに回動可能となっている。第1回動軸は、基台11が固定される床の法線と一致している。
【0018】
第1アーム12と第2アーム13とは、関節172を介して連結されている。そして、第2アーム13は、第1アーム12に対し、水平方向と平行な第2回動軸を回動中心として回動可能となっている。第2回動軸は、第1回動軸に直交する軸と平行である。
【0019】
第2アーム13と第3アーム14とは、関節173を介して連結されている。そして、第3アーム14は、第2アーム13に対し、水平方向と平行な第3回動軸を回動中心として回動可能となっている。第3回動軸は、第2回動軸と平行である。
【0020】
第3アーム14と第4アーム15とは、関節174を介して連結されている。そして、第4アーム15は、第3アーム14に対し、第3アーム14の中心軸方向と平行な第4回動軸を回動中心として回動可能となっている。第4回動軸は、第3回動軸と直交している。
【0021】
第4アーム15と第5アーム16とは、関節175を介して連結されている。そして、第5アーム16は、第4アーム15に対し、第5回動軸を回動中心として回動可能となっている。第5回動軸は、第4回動軸と直交している。
【0022】
第5アーム16と第6アーム17とは、関節176を介して連結されている。そして、第6アーム17は、第5アーム16に対し、第6回動軸を回動中心として回動可能となっている。第6回動軸は、第5回動軸と直交している。
【0023】
また、第6アーム17は、ロボットアーム10の中で最も先端側に位置するロボット先端部となっている。この第6アーム17は、ロボットアーム10の駆動により、エンドエフェクター20ごと回動することができる。
【0024】
ロボット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とを相対的に回転させる。
【0025】
また、エンコーダーE1は、関節171に内蔵され、モーターM1の位置を検出する。エンコーダーE2は、関節172に内蔵され、モーターM2の位置を検出する。エンコーダーE3は、関節173に内蔵され、モーターM3の位置を検出する。エンコーダーE4は、関節174に内蔵され、モーターM4の位置を検出する。エンコーダーE5は、関節175に内蔵され、モーターM5の位置を検出する。エンコーダーE6は、関節176に内蔵され、モーターM6の位置を検出する。
【0026】
エンコーダーE1~エンコーダーE6は、制御装置3と電気的に接続されており、モーターM1~モーターM6の位置情報、すなわち、回転量が制御装置3に電気信号として送信される。そして、この情報に基づいて、制御装置3は、モーターM1~モーターM6を、図示しないモータードライバーを介して駆動させる。すなわち、ロボットアーム10を制御するということは、モーターM1~モーターM6を制御することである。
【0027】
また、ロボットアーム10の先端には、制御点CPが設定されている。制御点CPは、ロボットアーム10の制御を行う際の基準となる点のことである。ロボットシステム100では、ロボット座標系で制御点CPの位置を把握し、制御点CPが所望の位置に移動するようにロボットアーム10を駆動する。
【0028】
また、ロボット1では、ロボットアーム10に、力を検出する力検出部19が着脱自在に設置される。そして、ロボットアーム10は、力検出部19が設置された状態で駆動することができる。力検出部19は、本実施形態では、6軸力覚センサーである。力検出部19は、互いに直交する3つの検出軸上の力の大きさと、当該3つの検出軸まわりのトルクの大きさとを検出する。すなわち、互いに直交するX軸、Y軸、Z軸の各軸方向の力成分と、X軸回りとなるTx方向の力成分と、Y軸回りとなるTy方向の力成分と、Z軸回りとなるTz方向の力成分とを検出する。なお、本実施形態では、Z軸方向が鉛直方向となっている。また、各軸方向の力成分を「並進力成分」と言い、各軸回りの力成分を「回転力成分」と言うこともできる。また、力検出部19は、6軸力覚センサーに限定されず、他の構成のものであってもよい。
【0029】
本実施形態では、力検出部19は、第6アーム17に設置されている。なお、力検出部19の設置箇所としては、第6アーム17、すなわち、最も先端側に位置するアームに限定されず、例えば、他のアームや、隣り合うアーム同士の間や、基台11の下方であってもよく、全関節にそれぞれ設置されていてもよい。
【0030】
力検出部19には、エンドエフェクター20を着脱可能に装着することができる。エンドエフェクター20は、一対の爪が接近離間することにより物品を把持するハンドで構成されているが、本発明ではこれに限定されず、2本以上の爪を有していてもよい。また、吸着により物品を把持するハンドであってもよい。
【0031】
また、ロボット座標系において、エンドエフェクター20の先端の任意の位置、好ましくは各爪が接近した状態における先端にツールセンターポイントTCPが設定されている。前述したように、ロボットシステム100では、ロボット座標系で制御点CPの位置を把握し、制御点CPが所望の位置に移動するようにロボットアーム10を駆動する。また、ロボットアーム10の先端には、制御点CPを原点とする先端座標系が設定されている。
【0032】
また、エンドエフェクター20の種類、特に、長さを把握しておくことにより、ツールセンターポイントTCPと制御点CPとのオフセット量を把握することができる。このため、ツールセンターポイントTCPの位置をロボット座標系で把握することができる。したがって、ツールセンターポイントTCPを制御の基準とすることができる。
【0033】
次に、制御装置3について説明する。
制御装置3は、ロボット1から離間して配置されており、プロセッサーの1例であるCPU(Central Processing Unit)が内蔵されたコンピューター等で構成することができる。この制御装置3は、ロボット1の基台11に内蔵されていてもよい。
【0034】
制御装置3は、中継ケーブル18によりロボット1と通信可能に接続される。また、制御装置3は、教示装置4とケーブルで、または無線通信可能に接続される。教示装置4は、専用のコンピューターであってもよく、ロボット1を教示するためのプログラムがインストールされた汎用のコンピューターであってもよい。例えばロボット1を教示するための専用装置であるティーチングペンダント等を教示装置4の代わりに用いても良い。さらに、制御装置3と教示装置4とは、別々の筐体を備えていてもよく、一体に構成されていてもよい。
【0035】
また、教示装置4には、制御装置3に後述する目標位置姿勢Stと目標力fStとを引数とする実行プログラムを生成して制御装置3にロードするためのプログラムがインストールされていてもよい。教示装置4は、ディスプレイ、プロセッサー、RAMやROMを備え、これらのハードウェア資源が教示プログラムと協働して実行プログラムを生成する。
【0036】
図2に示すように、制御装置3は、ロボット1の制御を行うための制御プログラムがインストールされたコンピューターである。制御装置3は、プロセッサーや図示しないRAMやROMを備え、これらのハードウェア資源がプログラムと協働することによりロボット1を制御する。
【0037】
また、
図2に示すように、制御装置3は、目標位置設定部3Aと、駆動制御部3Bと、記憶部3Cと、を有する。記憶部3Cは、例えば、RAM(Random Access Memory)等の揮発性メモリー、ROM(Read Only Memory)等の不揮発性メモリー、着脱式の外部記憶装置等で構成される。記憶部3Cには、ロボット1を作動させるための動作プログラム等が記憶されている。
【0038】
目標位置設定部3Aは、ワークW1に対して所定の作業を実行するための目標位置姿勢Stおよび動作経路を設定する。目標位置設定部3Aは、教示装置4から入力された教示情報等に基づいて、目標位置姿勢Stおよび動作経路を設定する。
【0039】
駆動制御部3Bは、ロボットアーム10の駆動を制御するものであり、位置制御部30と、座標変換部31と、座標変換部32と、補正部33と、力制御部34と、指令統合部35と、を有する。
【0040】
位置制御部30は、予め作成されたコマンドで指定される目標位置に従って、ロボット1のツールセンターポイントTCPの位置を制御する位置指令信号、すなわち、位置指令値を生成する。
【0041】
ここで、制御装置3は、ロボット1の動作を力制御等で制御することが可能である。「力制御」とは、力検出部19の検出結果に基づいて、エンドエフェクター20の位置、すなわち、ツールセンターポイントTCPの位置や、第1アーム12~第6アーム17の姿勢を変更したりするロボット1の動作の制御のことである。
【0042】
力制御には、例えば、フォーストリガー制御と、インピーダンス制御とが含まれている。フォーストリガー制御では、力検出部19により力検出を行い、その力検出部19により所定の力を検出するまで、ロボットアーム10に移動や姿勢の変更の動作をさせる。
【0043】
インピーダンス制御は、倣い制御を含む。インピーダンス制御では、ロボットアーム10の先端部に加わる力を可能な限り所定の力に維持、すなわち、力検出部19により検出される所定方向の力を可能な限り目標力fStに維持するようにロボットアーム10の動作を制御する。これにより、例えば、ロボットアーム10に対してインピーダンス制御を行うと、ロボットアーム10は、対象物や、オペレーターから加わった外力に対し、前記所定方向について倣う動作を行う。なお、目標力fStには、0も含まれる。例えば、倣い動作の場合の設定の1つとしては、目標値を「0」とすることができる。なお、目標力fStを0以外の数値とすることもできる。この目標力fStは、例えば教示装置4を介して作業者が適宜設定可能である。また、目標力fStは、軸の方向(X,Y,Z)ごと、軸回りの方向(Tx,Ty,Tz)ごとに設定することもできる。
【0044】
記憶部3Cは、モーターM1~モーターM6の回転角度の組み合わせと、ロボット座標系におけるツールセンターポイントTCPの位置との対応関係を記憶している。また、制御装置3は、ロボット1が行う作業の工程ごとに目標位置姿勢Stと目標力fStとの少なくとも一方をコマンドに基づいて記憶部3Cに記憶する。目標位置姿勢Stおよび目標力fStを引数、すなわち、パラメーターとするコマンドは、ロボット1が行う作業の工程ごとに設定される。
【0045】
駆動制御部3Bは、設定された目標位置姿勢Stと目標力fStとがツールセンターポイントTCPにて一致するように、第1アーム12~第6アーム17を制御する。目標力fStとは、第1アーム12~第6アーム17の動作によって達成されるべき力検出部19の検出力およびトルクである。ここで、「S」の文字は、ロボット座標系を規定する軸の方向(X,Y,Z)のいずれか1つの方向を表すこととする。また、Sは、S方向の位置も表すこととする。例えば、S=Xの場合、ロボット座標系で設定された目標位置のX方向成分がSt=Xtとなり、目標力のX方向成分がfSt=fXtとなる。
【0046】
また、駆動制御部3Bでは、モーターM1~モーターM6の回転角度を取得すると、
図2に示す座標変換部31が、対応関係に基づいて、当該回転角度をロボット座標系におけるツールセンターポイントTCPの位置姿勢Sに変換する。そして、座標変換部32が、ツールセンターポイントTCPの位置姿勢Sと、力検出部19の検出値とに基づいて、力検出部19に現実に作用している作用力f
Sをロボット座標系において特定する。
【0047】
作用力fSの作用点は、ツールセンターポイントTCPとは別に力検出原点として定義される。力検出原点は、力検出部19が力を検出している点に対応する。なお、制御装置3は、ロボット座標系におけるツールセンターポイントTCPの位置姿勢Sごとに、力検出部19のセンサー座標系における検出軸の方向を規定した対応関係を記憶している。従って、制御装置3は、ロボット座標系におけるツールセンターポイントTCPの位置姿勢Sと対応関係とに基づいて、ロボット座標系における作用力fSを特定できる。また、ロボットに作用するトルクは、作用力fSと、接触点から力検出部19までの距離とから算出することができ、回転力成分として特定される。なお、ワークW1に対してエンドエフェクター20が接触して作業を行う場合、接触点は、ツールセンターポイントTCPとみなすことができる。
【0048】
補正部33は、作用力fSに対して重力補償を行う。重力補償とは、作用力fSから重力に起因する力やトルクの成分を除去することである。重力補償を行った作用力fSは、ロボットアーム10またはエンドエフェクター20に作用している重力以外の力と見なすことができる。
【0049】
また、補正部33は、作用力fSに対して慣性補償を行う。慣性補償とは、作用力fSから慣性力に起因する力やトルクの成分を除去することである。慣性補償を行った作用力fSは、ロボットアーム10またはエンドエフェクター20に作用している慣性力以外の力と見なすことができる。
【0050】
力制御部34は、インピーダンス制御を行う。インピーダンス制御は、仮想の機械的インピーダンスをモーターM1~モーターM6によって実現する能動インピーダンス制御である。制御装置3は、このようなインピーダンス制御を、嵌合作業、螺合作業、研磨作業等、エンドエフェクター20が対象物から力を受ける接触状態の工程や、直接教示を行う際に実行する。なお、このような工程以外であっても、例えば、人がロボット1に接触した際にインピーダンス制御を行うことにより、安全性を高めることができる。
【0051】
インピーダンス制御では、目標力fStを後述する運動方程式に代入してモーターM1~モーターM6の回転角度を導出する。制御装置3がモーターM1~モーターM6を制御する信号は、PWM(Pulse Width Modulation)変調された信号である。
【0052】
また、制御装置3は、エンドエフェクター20が外力を受けない非接触状態の工程では、目標位置姿勢Stから線形演算で導出する回転角度でモーターM1~モーターM6を制御する。目標位置姿勢Stから線形演算で導出する回転角度でモーターM1~モーターM6を制御するモードのことを、位置制御モードと言う。
【0053】
制御装置3は、目標力fStと作用力fSとをインピーダンス制御の運動方程式に代入することにより、力由来補正量ΔSを特定する。力由来補正量ΔSとは、ツールセンターポイントTCPが機械的インピーダンスを受けた場合に、目標力fStとの力偏差ΔfS(t)を解消するために、ツールセンターポイントTCPが移動すべき位置姿勢Sの大きさを意味する。下記の式(1)は、インピーダンス制御の運動方程式である。
【0054】
【0055】
式(1)の左辺は、ツールセンターポイントTCPの位置姿勢Sの2階微分値に仮想質量係数m(以下、「質量係数m」と言う)を乗算した第1項と、ツールセンターポイントTCPの位置姿勢Sの微分値に仮想粘性係数d(以下、「粘性係数d」と言う)を乗算した第2項と、ツールセンターポイントTCPの位置姿勢Sに仮想弾性係数k(以下、「弾性係数k」と言う)を乗算した第3項とによって構成される。式(1)の右辺は、目標力fStから現実の力fを減算した力偏差ΔfS(t)によって構成される。式(1)における微分とは、時間による微分を意味する。ロボット1が行う工程において、目標力fStとして一定値が設定される場合や、目標力fStとして時間の関数が設定される場合もある。
【0056】
質量係数mは、ツールセンターポイントTCPが仮想的に有する質量を意味し、粘性係数dは、ツールセンターポイントTCPが仮想的に受ける粘性抵抗を意味し、弾性係数kは、ツールセンターポイントTCPが仮想的に受ける弾性力のバネ定数を意味する。
【0057】
質量係数mの値が大きくなるにつれて、動作の加速度が小さくなり、質量係数mの値が小さくなるにつれて動作の加速度が大きくなる。粘性係数dの値が大きくなるにつれて、動作の速度が遅くなり、粘性係数dの値が小さくなるにつれて動作の速度が速くなる。弾性係数kの値が大きくなるにつれて、バネ性が大きくなり、弾性係数kの値が小さくなるにつれて、バネ性が小さくなる。
【0058】
これら質量係数m、粘性係数dおよび弾性係数kは、方向ごとに異なる値に設定されてもよく、方向に関わらず共通の値に設定されてもよい。また、質量係数m、粘性係数dおよび弾性係数kは、作業者が、作業前に適宜設定可能である。この入力は、例えば、教示装置4を用いて、作業者によって行われる。
【0059】
このような質量係数m、粘性係数dおよび弾性係数kは、力制御パラメーターである。力制御パラメーターは、ロボットアーム10が実際に作業を行うのに先立って設定される値である。力制御パラメーターには、質量係数m、粘性係数dおよび弾性係数kの他、目標力fSt等が含まれる。
【0060】
このように、ロボットシステム100では、力制御を実行中、力検出部19の検出値、予め設定された力制御パラメーター、および、予め設定された目標力から補正量を求める。この補正量は、前述した力由来補正量ΔSのことであり、外力を受けたその位置からツールセンターポイントTCPを移動すべき位置との差のことである。
【0061】
そして、指令統合部35は、位置制御部30が生成した位置指令値Pに、力由来補正量ΔSを合算する。これを随時行うことにより、指令統合部35は、外力を受けた位置に移動させるために用いていた位置指令値Pから、新たな位置指令値P’を求める。
【0062】
そして、この新たな位置指令値P’を座標変換部31がロボット座標に変換し、実行部351が実行することにより、力由来補正量ΔSを加味した位置にツールセンターポイントTCPを移動させて、外力に対して応答し、ロボット1に接触した対象物に対し、それ以上負荷がかかるのを緩和することができる。
【0063】
このような駆動制御部3Bによれば、ロボットアーム10が対象物を把持した状態で、ツールセンターポイントTCPを目標位置姿勢Stに向かって移動させつつ、かつ、目標力fStが予め設定された値になるまでツールセンターポイントTCPが移動するようにロボットアーム10を駆動することができる。これにより、嵌合作業等の組み立て作業を力制御によって実行することができる。また、作業中に対象物に過剰に負荷がかかるのを防止することができる。
【0064】
次に、教示装置4について説明する。
図2に示すように、教示装置4は、各種設定を受け付けたり、動作プログラムを生成したり、
図3~
図8、
図10および
図11に示すような表示画像Aを生成、表示する装置である。教示装置4は、制御部41と、記憶部42と、通信部43と、表示部40とを有する。教示装置4としては、図示の構成では、ノート型パソコンであるが、本発明ではこれに特に限定されず、例えば、デスクトップ型パソコン、タブレット、スマートフォン等であってもよい。
【0065】
制御部41は、少なくとも1つのプロセッサーを有する。プロセッサーとしては、例えば、CPU(Central Processing Unit)や、GPU(Graphics Processing Unit)等が挙げられる。制御部41は、記憶部42に記憶されている各種プログラム等を読み出し、実行する。各種プログラムとしては、例えば、ロボットアーム10の動作プログラムや、後述する本発明の表示プログラム等が挙げられる。これらのプログラムは、教示装置4で生成されたものであってもよく、例えばCD-ROM等の外部記録媒体から記憶されたものであってもよく、ネットワーク等を介して記憶されたものであってもよい。
【0066】
制御部41で生成された信号は、通信部43を介してロボット1の制御装置3に送信される。これにより、ロボットアーム10が所定の作業を所定の条件で実行したりすることができる。また、制御部41は、
図3~
図9に示すように、表示部40の駆動を制御する。すなわち、制御部41は、表示部40の作動を制御する表示制御部として機能する。
【0067】
また、制御部41は、後述するような表示画像Aを生成し、表示部40に表示するよう表示部40の作動を制御する。
【0068】
記憶部42は、制御部41が実行可能な各種プログラムや、各種設定情報等を保存する。記憶部42としては、例えば、RAM(Random Access Memory)等の揮発性メモリー、ROM(Read Only Memory)等の不揮発性メモリー、着脱式の外部記憶装置等が挙げられる。
【0069】
通信部43は、例えば有線LAN(Local Area Network)、無線LAN等の外部インターフェースを用いて制御装置3との間で信号の送受信を行う。
【0070】
表示部40は、表示画面を有する各種ディスプレイで構成されている。本実施形態では、マウス、キーボード等の入力操作部を操作することにより、作業者が各種設定を入力することができる。ただし、この構成に限定されず、例えば、タッチパネル、すなわち、表示部40が表示機能と入力操作機能とを備える構成であってもよい。また、タッチパネルと、マウス、キーボードを併用する構成であってもよい。
【0071】
なお、表示部40としては、図示の構成に限定されず、例えば、対象物や空中に画像を結像させる構成のものであってもよい。
【0072】
作業者が設定する各種設定としては、質量係数m、粘性係数d、弾性係数kおよび目標力fSt等が挙げられる。すなわち、作業者は、教示装置4を用いて、力制御パラメーターを設定する。
【0073】
次に、制御部41が生成し、表示部40に表示させる表示画像Aについて説明する。表示画像Aは、リアルタイムでロボット1の動作に追従して変化する動画であってもよく、ロボット1の作業が終わった後にその動作を再現する動画であってもよい。以下では、表示画像Aは、リアルタイムでロボット1の動作に追従して変化する動画として説明する。
【0074】
表示画像Aは、
図3~
図8、
図10および
図11に示すように、仮想ロボット1Aと、第1指標11Aと、第2指標12Aと、を含み、これらが時間的に重複して、かつ、区別して表示されている。
【0075】
仮想ロボット1Aは、ロボット1のシミュレーションモデルであり、その形状は、ロボット1の形状に対応している。仮想ロボット1Aは、ロボット1に基づいて生成された3DCGであってもよく、ロボット1を撮像した画像であってもよい。
【0076】
第1指標11Aは、作業中にロボットアーム10が受ける力の目標である目標力fStに関する第1情報を示すものである。本実施形態では、第1指標11Aは、矢印で構成され、矢印が指す方向によって、設定された目標力fStの方向を示し、矢印の形状によって目標力fStの大きさを示している。
【0077】
第2指標12Aは、作用力fS、すなわち、作業中にロボットアーム10に加わった力に関する第2情報を示すものである。本実施形態では、第2指標12Aは、矢印で構成され、矢印が指す方向によって、力が加わる方向を示し、矢印の形状によって力の大きさを示している。また、第2指標12Aの形状は、作業中のロボットアーム10に加わった力の大小に応じて、リアルタイムで変化する。
【0078】
表示画像Aでは、これら仮想ロボット1A、第1指標11Aおよび第2指標12Aが時間的に重複して、かつ、区別して表示されている。ここで、「時間的に重複して表示されている」とは、同じ所定の時刻における第1指標11Aと第2指標12Aとを表示しているという意味であり、「区別して表示されている」とは、第1指標11Aと第2指標12Aとの色、大きさ、形状、長さ、太さ、鋭さの少なくとも1つが異なって表示されている、または、異なる位置にそれぞれ表示されているという意味である。このため、作業者は、第1指標11Aおよび第2指標12Aを見比べて、設定した目標力fStに対して、実際にロボットアーム10に加わった力がどの程度であるか、すなわち、正常な範囲内であるかを一目で認識しやすくすることができる。よって、例えば、設定した目標力fStが適切ではない場合、次回以降の設定時に所望の目標力fStを設定することができる。また、ロボットアーム10に加わった力が適切ではないと判断した場合、次回以降の設定時に、例えば、質量係数m、粘性係数dおよび弾性係数kを適切な値に設定することができる。このように、本発明によれば、作業結果において目標力fStとロボットアーム10に加わった力とを見比べて、力制御パラメーターの設定が適正であるか否かを容易に判断することができる。よって、次回以降の設定時に、前回の設定の良し悪しをフィードバックすることができ、適切な力制御パラメーターを設定することができる。
【0079】
また、制御部41は、制御装置3から、作業中のロボット1の動作情報を取得し、仮想ロボット1Aを、ロボット1と同様の動作を行うような表示画像Aを生成する。これにより、作業者は、ロボット1の動きを把握することができるとともに、ロボット1がどのような姿勢のときにどの程度の力が加わっているかを把握することができる。
【0080】
以下、表示画像Aのバリエーションについて説明する。
図3に示す構成では、仮想ロボット1Aのロボットアームの先端部に、第1指標11Aおよび第2指標12Aが重なって表示されている。すなわち、第1指標11Aおよび第2指標12Aは、同じ位置に表示されている。また、第1指標11Aおよび第2指標12Aは、同じ方向を向いている。
【0081】
また、
図3に示す構成では、第1指標11Aおよび第2指標12Aは、互いに異なる色である。これにより、どちらの矢印が第1指標11Aおよび第2指標12Aのどちらに対応しているかを、一目で把握することができる。
【0082】
また、
図3に示す構成では、第2指標12Aの長さが、リアルタイムで変化する。
このような構成によれば、第1指標11Aおよび第2指標12Aの長さを比較して一目でどちらが大きいか把握することができる。よって、次回以降の設定時に、適切な力制御パラメーターをより確実に設定することができる。
【0083】
次に、
図4に示す構成について説明する。以下では、
図3に示す構成と異なる事項のみ説明をする。
図4に示す構成では、第1指標11Aおよび第2指標12Aが互いに異なる位置に配置されている。具体的には、仮想ロボット1Aのロボットアームの先端部に、第1指標11Aおよび第2指標12Aが並んで配置されている。
【0084】
このような構成によれば、第1指標11Aおよび第2指標12Aの長さに関わらず、第1指標11Aおよび第2指標12Aのいずれかが隠れて見えにくくなってしまうのを防止することができる。よって、次回以降の設定時に、適切な力制御パラメーターをより確実に設定することができる。
【0085】
次に、
図5に示す構成について説明する。以下では、
図3に示す構成および
図4に示す構成と異なる事項のみ説明をする。
図5に示す構成では、第1指標11Aおよび第2指標12Aが1つの矢印で表示されている。また、この矢印は、第1指標11Aを示す色と、第2指標12Aを示す色との2色で表示されている。また、作業中にロボットアーム10が受ける力に応じて、矢印において、第2指標12Aを示す色が占める割合が変化する。
【0086】
このような構成によれば、第1指標11Aおよび第2指標12Aを見て、一目でどちらが大きいか把握することができる。よって、次回以降の設定時に、適切な力制御パラメーターをより確実に設定することができる。さらに、
図5に示す構成では、表示する矢印が1つであるため、仮想ロボット1Aのロボットアームが矢印によって隠れてしまう部分をより少なくすることができる。よって、仮想ロボット1Aの動きをより正確に把握することができる。
【0087】
また、前述したように、目標力f
Stは、軸の方向(X,Y,Z)ごと、軸回りの方向(Tx,Ty,Tz)ごとに設定することもできる。この場合、これらの成分ごとに目標力f
Stを表示することもできる。例えば、
図6に示すように、目標力f
Stのうち、先端座標系におけるZ軸回りのトルクTzを表示する場合、
図6に示すように、半円弧の矢印で表示することができる。この構成の場合、この半円弧の矢印が第1指標11Aであり、矢印の指す方向が、トルクの方向を示している。
【0088】
また、先端座標系におけるY軸回りに加わった力、すなわち、トルクTyは、第1指標11Aの近傍に、矢印で表示する。この矢印が、第2指標12Aである。
図6に示す構成では、2つの矢印の色が異なっている。また、第2指標12Aは、トルクTzの大きさに応じて、その長さまたは太さが変化する。
【0089】
なお、
図6では、トルクTzを例に挙げて説明したが、本発明ではこれに限定されず、トルクTxおよびトルクTyを表示する構成であってもよく、トルクTx、トルクTyおよびトルクTzの全てを表示する構成であってもよく、トルクTx、トルクTyおよびトルクTzのうち、表示する方向を選択可能であってもよく、表示途中に切り替え可能な構成であってもよい。さらに、トルクTx、トルクTyおよびトルクTzを合成した合成トルクを表示する構成であってもよい。
【0090】
また、
図7に示すように、第1指標11Aおよび第2指標12Aをそれぞれ分解して表示してもよい。
図7に示す構成では、目標力f
Stと、ロボットアーム10に加わった力と、をそれぞれ、先端座標系におけるX軸およびY軸にそれぞれ分解して表示する。すなわち、目標力f
StのX軸成分を示す矢印が第1指標11Axであり、目標力f
StのY軸成分を示す矢印が第1指標11Ayである。また、ロボットアーム10に加わった力のX軸成分を示す矢印が第2指標12Axであり、目標力f
StのY軸成分を示す矢印が第2指標12Ayである。
【0091】
また、第2指標12Axおよび第2指標12Ayは、力の大きさに応じて、長さ、色、形状のうちの少なくとも1つが変化するのが好ましい。
【0092】
このような構成によれば、どの軸方向に沿った力が大きいかを一目で把握することができる。
【0093】
なお、
図7に示す構成では、目標力f
StのZ軸成分を示す矢印を省略しているが、表示する構成であってもよい。また。
図7に示す構成では、ロボットアーム10に加わった力のZ軸成分を示す矢印を省略しているが、表示する構成であってもよい。
【0094】
また、目標力fStのX軸成分、Y軸成分およびZ軸成分のうちの1つまたは2つ以上を選択して表示する構成であってもよい。また、ロボットアーム10に加わった力のX軸成分、Y軸成分およびZ軸成分のうちの1つまたは2つ以上を選択して表示する構成であってもよい。
【0095】
また、
図8に示すように、目標力f
Stの各軸成分を合成し、ロボットアーム10に加わった力の各軸成分を合成して表示してもよい。この場合、合成した方向を指す矢印の一方が第1指標11Aであり、他方が第2指標12Aである。また、
図8に示す構成では、第1指標11Aおよび第2指標12Aを重ねて表示している。
【0096】
このような構成によれば、軸成分を合成した合成力の程度を一目で把握することができる。
【0097】
なお、
図3~
図9に示す構成では、目標力f
Stの大きさや、ロボットアーム10に加わった力の大きさに応じて、矢印の長さを変化させる構成について説明したが、本発明ではこれに限定されず、例えば、
図9中上段に示すように、矢印の太さを変更してもよく、
図9中中段に示すように、矢印の鋭さを変化させる構成であってもよく、
図9中下段に示すように、矢印の形状を変化させる構成であってもよい。
【0098】
また、
図10に示す構成では、第2指標12Aが、ロボットアーム10に加わった力を経時的に示すグラフG1で表示される。このグラフG1は、仮想ロボット1Aと第1指標11Aとが表示されているシミュレーション画像の左側に表示されている。また、このグラフG1は、縦軸がロボットアーム10に加わった力、横軸が時間で表される。
【0099】
このような構成によれば、ロボットアーム10に加わった力を経時的に把握することができる。また、グラフG1では、設定された目標力fStが表示され、ロボットアーム10に加わった力との比較が容易になっている。
【0100】
また、例えば、グラフの横軸の任意の位置にカーソルを合わせると、その時間から再生することができ、かつ、グラフにおいてその時間におけるロボットアーム10に加わった力がわかりやすいように、グラフの一部が光ったり色が変わる構成としてもよい。さらに、カーソルを合わせた時間におけるロボットアーム10の姿勢を示すように仮想ロボット1Aが姿勢を変更する構成であってもよい。
【0101】
また、
図11に示す構成では、第2指標12Aが、ロボットアーム10に加わった力のX軸方向の成分およびY軸方向の成分をそれぞれ示すグラフG2で表示される。このグラフG2は、仮想ロボット1Aと第1指標11Aとが表示されているシミュレーション画像の左側に表示されている。また、このグラフG2は、縦軸がロボットアーム10に加わった力のY軸方向の成分、横軸がロボットアーム10に加わった力のX軸方向の成分で表される。
【0102】
このような構成によれば、ロボットアーム10に加わった力を軸方向の成分ごとに把握することができる。
【0103】
以上説したように、本発明のロボットシステム100は、力制御により作業を行うロボットアーム10を有するロボット1と、ロボット1のシミュレーションモデルである仮想ロボット1Aを含む表示画像Aを表示する表示部40と、表示部40を制御する制御部41と、を備える。また、制御部41は、作業中にロボットアーム10が受ける力の目標である目標力fStに関する第1情報を含む力制御パラメーターに関する情報を受け付け、表示画像Aにおいて、仮想ロボット1Aと、第1情報を示す第1指標11Aと、作業中にロボットアーム10に加わった力に関する第2情報を示す第2指標12Aと、を時間的に重複して、かつ、区別して表示するよう表示部40の作動を制御する。これにより、作業結果において目標力fStとロボットアーム10に加わった力とを見比べて、力制御パラメーターの設定が適正であるか否かを容易に判断することができる。よって、次回以降の設定時に、前回の設定の良し悪しをフィードバックすることができ、適切な力制御パラメーターを設定することができる。
【0104】
また、前述したように、第1指標11Aおよび第2指標12Aは、色、大きさ、形状のうちの少なくとも1つが互いに異なる。これにより、作業者が第1指標11Aおよび第2指標12Aを見て、第1指標11Aおよび第2指標12Aの差を一目で見分けることができる。なお、第1指標11Aおよび第2指標12Aは、色、大きさ、形状のうちの全てが異なってもよく、これらのうちの2つが異なっていてもよい。
【0105】
また、前述したように、第1指標11Aは、目標力fStの方向および大きさを示す矢印であり、第2指標12Aは、ロボットアーム10が受ける力の方向および大きさを示す矢印である。第1指標11Aおよび第2指標12Aが矢印であることにより、方向を一目で認識することができるとともに、矢印の色、大きさ、形状のうちの少なくとも1つが互いに異なれば、見分けがつく。その結果、シンプルな表示で見やすくなる。
【0106】
なお、図示の構成では、第1指標11Aおよび第2指標12Aが矢印である場合について説明したが、本発明ではこれに限定されず、例えば、三角形や五角形、インジゲーター等他の指標であってもよい。
【0107】
次に、本発明の表示制御方法について、
図12に示すフローチャートを参照しつつ説明する。以下では、ステップS101、ステップS103およびステップS104を制御部41が実行し、ステップS102を制御装置3が実行する構成であるが、本発明ではこれに限定されない。
【0108】
まず、ステップS101において、力制御パラメーターに関する情報を受け付ける。すなわち、作業者が教示装置4を用いて力制御パラメーターを設定し、その情報を制御部41が記憶部42に記憶する。本ステップで設定される力制御パラメーターの項目としては、質量係数m、粘性係数d、弾性係数kおよび第1情報としての目標力fSt等が挙げられる。
【0109】
このようなステップS101が、作業中にロボットアーム10が受ける力の目標である目標力fStに関する第1情報を含む力制御パラメーターに関する情報を受け付ける受付ステップである。
【0110】
次いで、ステップS102において、作業を実行する。すなわち、ステップS101で受け付けた情報に基づいて、作業を実行する。
【0111】
次いで、ステップS103において、表示画像Aを生成し、表示部40に表示する。すなわち、ステップS102での動作情報を制御部41が取得し、その動作情報に基づいて、
図3~
図8、
図10および
図11に示すような表示画像Aを生成し、表示部40に表示する。
【0112】
次いで、ステップS104において、作業が完了したか否かを判断する。この判断は、例えば、組立作業を行った回数が所定回数に達したか否かに基づいてなされる。ステップS104において、完了したと判断した場合、すべてのプログラムを終了する。一方、ステップS104において、完了していない判断した場合、ステップS102に戻り、以降のステップを繰り返す。
【0113】
このように、本発明の表示制御方法は、力制御により作業を行うロボットアーム10を有するロボット1のシミュレーションモデルである仮想ロボット1Aを含む表示画像を表示する表示部を制御する表示制御方法であって、作業中にロボットアーム10が受ける力の目標である目標力fStに関する第1情報を含む力制御パラメーターに関する情報を受け付ける受付ステップと、表示画像Aにおいて、仮想ロボット1Aと、第1情報を示す第1指標11Aと、作業中にロボットアーム10に加わった力に関する第2情報を示す第2指標12Aと、を時間的に重複して、かつ、区別して表示する表示ステップと、を有する。これにより、作業結果において目標力fStとロボットアーム10に加わった力とを見比べて、力制御パラメーターの設定が適正であるか否かを容易に判断することができる。よって、次回以降の設定時に、前回の設定の良し悪しをフィードバックすることができ、適切な力制御パラメーターを設定することができる。
【0114】
また、前述したように、表示ステップでは、作業中にロボットアーム10が受けた力に応じて、第2指標12Aである矢印の色、大きさ、形状のうちの少なくとも1つを変化させる。これにより、作業者は、作業中にロボットアーム10が受けた力の変化を経時的に把握することができる。なお、表示ステップでは、作業中にロボットアーム10が受けた力に応じて、第2指標12Aである矢印の色、大きさ、形状の全てを変化させてもよく、これらのうちの2つを変化させてもよい。
【0115】
また、前述したように、表示ステップでは、作業中にロボットアーム10が受けた力に応じて、第2指標12Aであるの長さ、太さ、鋭さのうちの少なくとも1つを変化させる(
図9参照)。これにより、作業者は、作業中にロボットアーム10が受けた力の変化をより明確に把握することができる。なお、表示ステップでは、作業中にロボットアーム10が受けた力に応じて、第2指標12Aの長さ、太さ、鋭さのうちの全てを変化させてもよく、これらのうちの2つを変化させてもよい。
【0116】
また、前述したように、表示ステップでは、作業中のロボットアーム10の姿勢の変化に応じて、仮想ロボット1Aの姿勢を変化させる。これにより、ロボットアーム10がどのような姿勢のときに、どの程度の力が加わったかを一目で把握することができる。
【0117】
また、前述したように、表示ステップでは、第1指標11Aおよび第2指標12Aを、それぞれ、仮想ロボット1Aに設定されている座標系の各軸方向の成分に分解して表示する(
図7参照)。これにより、どの軸方向に沿った力が大きいかを一目で把握することができる。
【0118】
本発明の表示プログラムは、力制御により作業を行うロボットアーム10を有するロボット1のシミュレーションモデルである仮想ロボット1Aを含む表示画像を表示する表示部を制御する表示制御方法を実行するためのプログラムであって、作業中にロボットアーム10が受ける力の目標である目標力fStに関する第1情報を含む力制御パラメーターに関する情報を受け付ける受付ステップと、表示画像Aにおいて、仮想ロボット1Aと、第1情報を示す第1指標11Aと、作業中にロボットアーム10に加わった力に関する第2情報を示す第2指標12Aと、を時間的に重複して、かつ、区別して表示する表示ステップと、を実行するためのものであることを特徴とする。このようなプログラムを実行することにより、作業結果において目標力fStとロボットアーム10に加わった力とを見比べて、力制御パラメーターの設定が適正であるか否かを容易に判断することができる。よって、次回以降の設定時に、前回の設定の良し悪しをフィードバックすることができ、適切な力制御パラメーターを設定することができる。
【0119】
なお、本発明の表示プログラムは、制御装置3や教示装置4の記憶部に記憶されたものであってもよいし、例えばCD-ROM等の記録媒体に格納されていてもよく、ネットワーク等を介して接続可能な記憶装置に記憶されたものであってもよい。
【0120】
<ロボットシステムの他の構成例>
図11は、ロボットシステムについてハードウェアを中心として説明するためのブロック図である。
【0121】
図11には、ロボット1とコントローラー61とコンピューター62が接続されたロボットシステム100Aの全体構成が示されている。ロボット1の制御は、コントローラー61にあるプロセッサーによりメモリーにある指令を読み出して実行されてもよく、コンピューター62に存在するプロセッサーによりメモリーにある指令を読み出してコントローラー61を介して実行されてもよい。
【0122】
従って、コントローラー61とコンピューター62とのいずれか一方または両方を「制御装置」として捉えることができる。
【0123】
<変形例1>
図12は、ロボットシステムのハードウェアを中心とした変形例1を示すブロック図である。
【0124】
図12には、ロボット1に直接コンピューター63が接続されたロボットシステム100Bの全体構成が示されている。ロボット1の制御は、コンピューター63に存在するプロセッサーによりメモリーにある指令を読み出して直接実行される。
従って、コンピューター63を「制御装置」として捉えることができる。
【0125】
<変形例2>
図13は、ロボットシステムのハードウェアを中心とした変形例2を示すブロック図である。
【0126】
図13には、コントローラー61が内蔵されたロボット1とコンピューター66が接続され、コンピューター66がLAN等のネットワーク65を介してクラウド64に接続されているロボットシステム100Cの全体構成が示されている。ロボット1の制御は、コンピューター66に存在するプロセッサーによりメモリーにある指令を読み出して実行されてもよく、クラウド64上に存在するプロセッサーによりコンピューター66を介してメモリーにある指令を読み出して実行されてもよい。
【0127】
従って、コントローラー61とコンピューター66とクラウド64とのいずれか1つ、または、いずれか2つ、または、3つを「制御装置」として捉えることができる。
【0128】
以上、本発明の表示制御方法、表示プログラムおよびロボットシステムを図示の実施形態について説明したが、本発明は、これに限定されるものではない。また、ロボットシステムを構成する各部は、同様の機能を発揮し得る任意の構成のものと置換することができる。また、任意の構成物が付加されていてもよい。
【符号の説明】
【0129】
1…ロボット、3…制御装置、3A…目標位置設定部、3B…駆動制御部、3C…記憶部、4…教示装置、10…ロボットアーム、11…基台、12…第1アーム、13…第2アーム、14…第3アーム、15…第4アーム、16…第5アーム、17…第6アーム、18…中継ケーブル、19…力検出部、20…エンドエフェクター、30…位置制御部、31…座標変換部、32…座標変換部、33…補正部、34…力制御部、35…指令統合部、40…表示部、41…制御部、42…記憶部、43…通信部、61…コントローラー、62…コンピューター、63…コンピューター、64…クラウド、65…ネットワーク、66…コンピューター、100…ロボットシステム、100A…ロボットシステム、100B…ロボットシステム、100C…ロボットシステム、171…関節、172…関節、173…関節、174…関節、175…関節、176…関節、351…実行部、A…表示画像、1A…仮想ロボット、11A…第1指標、11Ax…第1指標、11Ay…第1指標、12A…第2指標、12Ax…第2指標、12Ay…第2指標、CP…制御点、E1…エンコーダー、E2…エンコーダー、E3…エンコーダー、E4…エンコーダー、E5…エンコーダー、E6…エンコーダー、M1…モーター、M2…モーター、M3…モーター、M4…モーター、M5…モーター、M6…モーター、TCP…ツールセンターポイント