(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024006093
(43)【公開日】2024-01-17
(54)【発明の名称】表示装置および表示方法
(51)【国際特許分類】
B25J 19/06 20060101AFI20240110BHJP
【FI】
B25J19/06
【審査請求】未請求
【請求項の数】6
【出願形態】OL
(21)【出願番号】P 2022106660
(22)【出願日】2022-06-30
(71)【出願人】
【識別番号】000002369
【氏名又は名称】セイコーエプソン株式会社
(74)【代理人】
【識別番号】100091292
【弁理士】
【氏名又は名称】増田 達哉
(74)【代理人】
【識別番号】100173428
【弁理士】
【氏名又は名称】藤谷 泰之
(74)【代理人】
【識別番号】100091627
【弁理士】
【氏名又は名称】朝比 一夫
(72)【発明者】
【氏名】滝川 淳一
(72)【発明者】
【氏名】元▲吉▼ 正樹
(72)【発明者】
【氏名】平松 翔太
【テーマコード(参考)】
3C707
【Fターム(参考)】
3C707BS12
3C707CT05
3C707CV08
3C707CW08
3C707HS27
3C707KS21
3C707KV01
3C707KX10
3C707LS20
3C707MS15
(57)【要約】
【課題】適正な動作条件でロボットを動作させることができる表示装置および表示方法を提供すること。
【解決手段】基本動作プログラムを取得する取得部と、前記取得部が取得した前記基本動作プログラムに基づいて動作を行った場合の前記ロボットアームの第1寿命を算出する寿命算出部と、前記基本動作プログラムに対し、前記ロボットアームの構成、前記制御点の前記作業開始位置および前記作業終了位置を同一とし、前記ロボットアームの基端の位置を変更して、前記ロボットアームの寿命が前記第1寿命よりも長い第2寿命となるような、修正動作プログラムを作成する作成部と、前記修正動作プログラムにおける前記ロボットアームの基端の位置を表示する表示部と、を備えることを特徴とする表示装置。
【選択図】
図7
【特許請求の範囲】
【請求項1】
ロボットアームの構成、前記ロボットアームに設定された制御点の作業開始位置および作業終了位置、前記ロボットアームの基端の位置、前記作業開始位置から前記作業終了位置までの動作経路における前記ロボットアームの姿勢および前記動作経路における前記ロボットアームの速度に関する情報を含む基本動作プログラムを取得する取得部と、
前記取得部が取得した前記基本動作プログラムに基づいて動作を行った場合の前記ロボットアームの第1寿命を算出する寿命算出部と、
前記基本動作プログラムに対し、前記ロボットアームの構成、前記制御点の前記作業開始位置および前記作業終了位置を同一とし、前記ロボットアームの基端の位置を変更して、前記ロボットアームの寿命が前記第1寿命よりも長い第2寿命となるような、修正動作プログラムを作成する作成部と、
前記修正動作プログラムにおける前記ロボットアームの基端の位置を表示する表示部と、を備えることを特徴とする表示装置。
【請求項2】
前記作成部は、複数の修正動作プログラムを作成した場合、その中で最も寿命が長い修正動作プログラムを選出し、
前記表示部は、選出された前記修正動作プログラムにおける前記ロボットアームの基端の位置を表示する請求項1に記載の表示装置。
【請求項3】
前記表示部は、選出された前記修正動作プログラムにおける前記ロボットアームの基端の位置を、前記ロボットアームのシミュレーション画像として表示する請求項2に記載の表示装置。
【請求項4】
前記表示部は、前記基本動作プログラムにおける前記ロボットアームの基端の位置を前記ロボットアームのシミュレーション画像として併せて表示する請求項3に記載の表示装置。
【請求項5】
前記表示部は、前記基本動作プログラムにおける前記ロボットアームの基端の位置と、選出された前記修正動作プログラムにおける前記ロボットアームの基端の位置と、を異なる表示パターンで表示する請求項4に記載の表示装置。
【請求項6】
ロボットアームの構成、前記ロボットアームに設定された制御点の作業開始位置および作業終了位置、前記ロボットアームの基端の位置、前記作業開始位置から前記作業終了位置までの動作経路における前記ロボットアームの姿勢および前記動作経路における前記ロボットアームの速度に関する情報を含む基本動作プログラムを取得する取得ステップと、
前記取得ステップで取得した前記基本動作プログラムに基づいて動作を行った場合の前記ロボットアームの第1寿命を算出する寿命算出ステップと、
前記基本動作プログラムに対し、前記ロボットアームの構成、前記制御点の前記作業開始位置および前記作業終了位置を同一とし、前記ロボットアームの基端の位置を変更して、前記ロボットアームの寿命が前記第1寿命よりも長い第2寿命となるような修正動作プログラムを作成する作成ステップと、
前記修正動作プログラムにおける前記ロボットアームの基端の位置を表示する表示ステップと、を備えることを特徴とする表示方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、表示装置および表示方法に関する。
【背景技術】
【0002】
近年、工場では人件費の高騰や人材不足により、ロボットアームを有するロボットを用いて製造、加工、組み立て等の作業が行われるようになり、人手で行われてきた作業の自動化が加速している。
【0003】
このようなロボットは、作業動作において、ロボットアームの速度条件等を適正に設定しなければ、ロボットアームを構成する各部品の寿命が適正に設定した場合に比べて短くなってしまったり、作業のサイクルタイムが長くなってしまったりする。
【0004】
例えば、特許文献1には、ロボットアームに内蔵された減速機の寿命を予測するロボット減速機寿命推定シミュレーション装置が開示されている。このロボット減速機寿命推定シミュレーション装置では、入力された動作プログラムに基づいて、減速機の回転速度および減速機にかかる負荷を推定することによって、減速機の寿命を推定している。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、特許文献1に記載されているロボット減速機寿命推定シミュレーション装置では、減速機の寿命を改善するために、どのような動作条件でロボットを動作させればよいかがわからない。
【課題を解決するための手段】
【0007】
本発明の適用例にかかる表示装置は、ロボットアームの構成、前記ロボットアームに設定された制御点の作業開始位置および作業終了位置、前記ロボットアームの基端の位置、前記作業開始位置から前記作業終了位置までの動作経路における前記ロボットアームの姿勢および前記動作経路における前記ロボットアームの速度に関する情報を含む基本動作プログラムを取得する取得部と、
前記取得部が取得した前記基本動作プログラムに基づいて動作を行った場合の前記ロボットアームの第1寿命を算出する寿命算出部と、
前記基本動作プログラムに対し、前記ロボットアームの構成、前記制御点の前記作業開始位置および前記作業終了位置を同一とし、前記ロボットアームの基端の位置を変更して、前記ロボットアームの寿命が前記第1寿命よりも長い第2寿命となるような、修正動作プログラムを作成する作成部と、
前記修正動作プログラムにおける前記ロボットアームの基端の位置を表示する表示部と、を備えることを特徴とする。
【0008】
本発明の適用例にかかる表示方法は、ロボットアームの構成、前記ロボットアームに設定された制御点の作業開始位置および作業終了位置、前記ロボットアームの基端の位置、前記作業開始位置から前記作業終了位置までの動作経路における前記ロボットアームの姿勢および前記動作経路における前記ロボットアームの速度に関する情報を含む基本動作プログラムを取得する取得ステップと、
前記取得ステップで取得した前記基本動作プログラムに基づいて動作を行った場合の前記ロボットアームの第1寿命を算出する寿命算出ステップと、
前記基本動作プログラムに対し、前記ロボットアームの構成、前記制御点の前記作業開始位置および前記作業終了位置を同一とし、前記ロボットアームの基端の位置を変更して、前記ロボットアームの寿命が前記第1寿命よりも長い第2寿命となるような修正動作プログラムを作成する作成ステップと、
前記修正動作プログラムにおける前記ロボットアームの基端の位置を表示する表示ステップと、を備えることを特徴とする。
【図面の簡単な説明】
【0009】
【
図1】
図1は、本発明の表示方法を実行する表示装置の第1実施形態を備えるロボットシステムの全体構成を示す図である。
【
図2】
図2は、
図1に示すロボットシステムのブロック図である。
【
図4】
図4は、
図1に示す表示装置が、ロボットアームを配置する候補領域を設定する過程を示す図である。
【
図5】
図5は、
図1に示す表示装置が、ロボットアームを配置する候補領域を設定する過程を示す図である。
【
図6】
図6は、
図2に示す表示装置が表示する入力画面の一例を示す図である。
【
図7】
図7は、
図2に示す表示装置が表示する表示画面の一例を示す図である。
【
図8】
図8は、本発明の表示方法の一例を説明するためのフローチャートである。
【発明を実施するための形態】
【0010】
以下、本発明の表示装置および表示方法を添付図面に示す好適な実施形態に基づいて詳細に説明する。
【0011】
<第1実施形態>
図1は、本発明の表示方法を実行する表示装置の第1実施形態を備えるロボットシステムの全体構成を示す図である。
図2は、
図1に示すロボットシステムのブロック図である。
図3は、
図1に示す表示装置のブロック図である。
図4は、
図1に示す表示装置が、ロボットアームを配置する候補領域を設定する過程を示す図である。
図5は、
図1に示す表示装置が、ロボットアームを配置する候補領域を設定する過程を示す図である。
図6は、
図2に示す表示装置が表示する入力画面の一例を示す図である。
図7は、
図2に示す表示装置が表示する表示画面の一例を示す図である。
図8は、本発明の表示方法の一例を説明するためのフローチャートである。
【0012】
なお、以下では、説明の便宜上、
図1中のX軸、Y軸およびZ軸は、互いに直交する軸であり、
図1中のZ軸方向を「鉛直方向」とし、X軸およびY軸を含むX―Y平面の面上の任意の方向を「水平方向」とし、X―Y平面を「水平面」とする。また、ロボットアームについては、
図1中の基台11を「基端」、その反対側、すなわち、エンドエフェクター20を「先端」とも言う。
【0013】
図1に示すように、ロボットシステム100は、ロボット1と、ロボット1の各部の作動を制御する制御装置3と、本発明の表示装置4と、を備える。
【0014】
まず、ロボット1について説明する。
図1に示すロボット1は、本実施形態では単腕の6軸垂直多関節ロボットであり、基台11と、ロボットアーム10と、を有する。また、ロボットアーム10の先端部にエンドエフェクター20を装着することができる。なお、エンドエフェクター20は、ロボット1の構成要件であってもよく、ロボット1とは別部材、すなわち、ロボット1の構成要件でなくてもよい。
【0015】
なお、ロボット1は、図示の構成に限定されず、例えば、双腕型の多関節ロボットであってもよい。また、ロボット1は、水平多関節ロボットであってもよい。
【0016】
基台11は、ロボットアーム10の基端を駆動可能に支持する支持体であり、例えば工場内の床に固定されている。ロボット1は、基台11が中継ケーブルを介して制御装置3と電気的に接続されている。なお、ロボット1と制御装置3との接続は、
図1に示す構成のように有線による接続に限定されず、例えば、無線による接続であってもよい。また、インターネット等のネットワークを介して接続されていてもよい。
【0017】
本実施形態では、ロボットアーム10は、第1アーム12と、第2アーム13と、第3アーム14と、第4アーム15と、第5アーム16と、第6アーム17とを有し、これらのアームが基台11側からこの順に連結されている。なお、ロボットアーム10が有するアームの数は、6つに限定されず、例えば、1つ、2つ、3つ、4つ、5つまたは7つ以上であってもよい。また、各アームの全長等の大きさは、それぞれ、特に限定されず、適宜設定可能である。
【0018】
基台11と第1アーム12とは、関節171を介して連結されている。そして、第1アーム12は、基台11に対し、鉛直方向に延びる第1回動軸を回動中心とし、その第1回動軸回りに回動可能となっている。このように、第1回動軸は、基台11が固定される床の床面の法線と一致しており、ロボットアーム10の全体が第1回動軸の軸回りに正方向・逆方向のいずれへも回転することができる。
【0019】
第1アーム12と第2アーム13とは、関節172を介して連結されている。そして、第2アーム13は、第1アーム12に対し、水平方向に延びる第2回動軸を回動中心として回動可能となっている。
【0020】
第2アーム13と第3アーム14とは、関節173を介して連結されている。そして、第3アーム14は、第2アーム13に対し水平方向に延びる第3回動軸を回動中心として回動可能となっている。第3回動軸は、第2回動軸と平行である。
【0021】
第3アーム14と第4アーム15とは、関節174を介して連結されている。そして、第4アーム15は、第3アーム14に対し、第3アーム14の中心軸方向と平行な第4回動軸を回動中心として回動可能となっている。第4回動軸は、第3回動軸と直交している。
【0022】
第4アーム15と第5アーム16とは、関節175を介して連結されている。そして、第5アーム16は、第4アーム15に対して第5回動軸を回動中心として回動可能となっている。第5回動軸は、第4回動軸と直交している。
【0023】
第5アーム16と第6アーム17とは、関節176を介して連結されている。そして、第6アーム17は、第5アーム16に対して第6回動軸を回動中心として回動可能となっている。第6回動軸は、第5回動軸と直交している。
【0024】
また、第6アーム17は、ロボットアーム10の中で最も先端側に位置するロボット先端部となっている。この第6アーム17は、ロボットアーム10の駆動により、エンドエフェクター20ごと変位することができる。
【0025】
図1に示すエンドエフェクター20は、ワークまたは工具を把持することができる把持部を有する構成である。第6アーム17にエンドエフェクター20を装着した状態では、エンドエフェクター20の先端部は、制御点TCPとなる。
【0026】
ロボット1は、駆動部としてのモーターM1、モーターM2、モーターM3、モーターM4、モーターM5およびモーターM6と、エンコーダーE1、エンコーダーE2、エンコーダーE3、エンコーダーE4、エンコーダーE5およびエンコーダーE6とを備える。モーターM1は、関節171に内蔵され、基台11に対し第1アーム12を前記第1回動軸回りに回転させる。モーターM2は、関節172に内蔵され、第1アーム12と第2アーム13とを前記第2回動軸回りに相対的に回転させる。モーターM3は、関節173に内蔵され、第2アーム13と第3アーム14とを前記第3回動軸回りに相対的に回転させる。モーターM4は、関節174に内蔵され、第3アーム14と第4アーム15とを前記第4回動軸回りに相対的に回転させる。モーターM5は、関節175に内蔵され、第4アーム15と第5アーム16とを前記第5回動軸回りに相対的に回転させる。モーターM6は、関節176に内蔵され、第5アーム16と第6アーム17とを前記第6回動軸回りに相対的に回転させる。
【0027】
また、エンコーダーE1は、関節171に内蔵され、モーターM1の位置を検出する。エンコーダーE2は、関節172に内蔵され、モーターM2の位置を検出する。エンコーダーE3は、関節173に内蔵され、モーターM3の位置を検出する。エンコーダーE4は、関節174に内蔵され、モーターM4の位置を検出する。エンコーダーE5は、第5アーム16に内蔵され、モーターM5の位置を検出する。エンコーダーE6は、第6アーム17に内蔵され、モーターM6の位置を検出する。なお、ここで言う「位置を検出」とは、モーターの回転角すなわち正逆を含む回転量および角速度を検出することを言い、当該検出された情報を「位置情報」と言う。
【0028】
図2に示すように、モータードライバーD1~モータードライバーD6は、それぞれ、対応するモーターM1~モーターM6に接続され、これら各モーターの駆動を制御する。モータードライバーD1~モータードライバーD6は、それぞれ、関節171、関節172、関節173、関節174、第5アーム16および第6アーム17に内蔵されている。
【0029】
エンコーダーE1~エンコーダーE6、モーターM1~モーターM6およびモータードライバーD1~モータードライバーD6は、それぞれ、制御装置3と電気的に接続されている。エンコーダーE1~エンコーダーE6で検出されたモーターM1~モーターM6の位置情報、すなわち、回転量は、制御装置3に電気信号として送信される。そして、この位置情報に基づいて、制御装置3は、
図2に示すモータードライバーD1~モータードライバーD6に制御信号を出力し、モーターM1~モーターM6を駆動させる。すなわち、ロボットアーム10を制御するということは、モーターM1~モーターM6の駆動を制御して、ロボットアーム10に属する第1アーム12~第6アーム17の作動を制御することである。
【0030】
ロボットアーム10の先端部には、エンドエフェクター20を着脱可能に装着することができる。本実施形態では、エンドエフェクター20は、互いに接近離間可能な一対の爪部を有し、各爪部によりワークまたは工具を把持、解除するハンドで構成される。このエンドエフェクター20に装着された力検出器は、両爪部でワークを把持した際の把持力の反力の大きさや向きを検出することができる。
【0031】
なお、エンドエフェクター20としては、図示の構成に限定されず、例えば吸着部を有し、該吸着部の吸着によりワークまたは工具を把持する構成のものであってもよい。また、エンドエフェクター20としては、例えば、研磨機、研削機、切削機、スプレーガン、レーザー光照射器、ドライバー、レンチ等の工具であってもよい。
【0032】
次に、制御装置3および表示装置4について説明する。
図1に示すように、制御装置3は、本実施形態では、ロボット1と離れた位置に設置されている。ただし、この構成に限定されず、制御装置3は、基台11に内蔵されていてもよい。また、制御装置3は、ロボット1の駆動を制御する機能を有し、前述したロボット1の各部と電気的に接続されている。制御装置3は、制御部31と、記憶部32と、通信部33と、を有する。これらの各部は、例えばバスを介して相互に通信可能に接続されている。
【0033】
制御部31は、例えば、CPU(Central Processing Unit)で構成され、記憶部32に記憶されている動作プログラム等の各種プログラムを読み出し、実行する。制御部31で生成された信号は、通信部33を介してロボット1の各部に送信され、ロボット1の各部からの信号は、通信部33を介して制御部31で受信される。これにより、ロボットアーム10が所定の作業を所定の条件で実行することができる。
【0034】
記憶部32は、制御部31で実行される各種プログラム等を保存する。記憶部32としては、例えば、RAM(Random Access Memory)等の揮発性メモリー、ROM(Read Only Memory)等の不揮発性メモリー、着脱式の外部記憶装置等を有する構成のものが挙げられる。
【0035】
通信部33は、例えば有線LAN(Local Area Network)、無線LAN等の外部インターフェースを用いて制御装置3との間で信号の送受信を行う。この場合、図示しないサーバーを介して通信を行ってもよく、また、インターネット等のネットワークを介して通信を行ってもよい。
【0036】
図1、
図2および
図3に示すように、表示装置4は、作業(作業動作)の開始前にロボットアーム10の寿命を予測し、予測結果に応じて、ロボット1の適正な設置位置(以下、「ロボットアーム10の基端の位置Q1」、「基台11の位置Q1」または「位置Q1」と言う。)を表示する装置である。具体的には、表示装置4は、ユーザーが入力した基本動作プログラムに基づいてロボットアーム10の第1寿命を算出し、第1寿命よりも長い第2寿命となるような修正動作プログラムを算出し、修正動作プログラムに含まれるロボット1の適正な設定位置、すなわち位置Q1を表示する装置である。
【0037】
また、以下で言う「ロボットアーム10の適正な設置位置」とは、ロボットアーム10が同じ動作経路を辿る動作を繰り返し行った場合、ロボットアーム10の各部にかかる負担を軽減し、寿命がより長くなるような位置Q1のことである。
【0038】
その他、表示装置4は、ロボット1に対して教示を行う教示装置を兼ねている。なお、表示装置4に教示機能が備わっておらず、教示装置が表示装置4とは別のデバイスとして構成されていてもよい。
【0039】
基本動作プログラムは、これからユーザーがロボット1に目的とする所定の作業を行わせるために用意したプログラムのことである。基本動作プログラムは、ロボットアーム10の構成、ロボットアーム10の先端部に設定された制御点TCPの作業開始位置P0および作業終了位置P1、ロボットアーム10の基端の位置Q0、作業開始位置P0から作業終了位置P1までの動作経路におけるロボットアーム10の姿勢および動作経路におけるロボットアーム10の速度に関する情報を含んでおり、これらの情報に基づいて、ロボットアーム10の位置および姿勢の経時的変化を定めたものである。
【0040】
なお、以下では、一例として、
図4に示すように、載置されているワークを作業開始位置P0にて把持し、把持状態のまま作業終了位置P1に移動させ、把持を解除する作業動作とする。この動作を1回行うことが、1サイクルであり、1サイクルに要する時間をサイクルタイムと言う。
【0041】
基本動作プログラムに含まれる「ロボットアーム10の構成」の情報は、ロボットアーム10の機種に固有の情報であり、型番、製造年月日、ロボットアーム10を構成する部品等を特定する情報である。ロボットアーム10を構成する部品の情報は、エンコーダーE1~エンコーダーE6の種類、モーターM1~モーターM6の種類等の情報である。
【0042】
基本動作プログラムに含まれる「ロボットアーム10の基端の位置」の情報は、作業動作時の基台11の位置に関する情報であり、所定の座標系における3次元を特定する位置および向きを特定する情報である。
【0043】
基本動作プログラムに含まれる「動作経路」の情報は、制御点TCPの経時的な位置情報である。本実施形態では、
図4に示すように、始点作業開始位置P0から終点である作業終了位置P1までの経路が「動作経路」である。作業開始位置P0は、例えば、作業台等に載置されているワークを把持する際の位置である。作業終了位置P1は、例えば、把持しているワークの移動が完了し、ワークの把持を解除する位置である。
【0044】
基本動作プログラムに含まれる「動作経路におけるロボットアーム10の姿勢」の情報は、作業動作中の経時的なロボットアーム10の姿勢の情報であり、各関節171~176の角度の情報である。
【0045】
基本動作プログラムに含まれる「ロボットアーム10の速度」に関する情報は、各関節171~176の回転速度、各関節171~176の加速度の経時的な情報である。
【0046】
表示装置4は、表示部であるディスプレイ40と、入力操作部44と、を有し、本実施形態では、ノート型パソコンで構成される。
【0047】
なお、表示装置4は、ロボットアーム10に対して作業動作プログラムの教示を行う教示装置を兼ねていてもよい。
【0048】
入力操作部44は、キーボードおよび図示しないマウスで構成され、ユーザーがこれらを適宜操作することによって、基本動作プログラムなどの各種情報の入力操作が行われる。ディスプレイ40は、例えば、液晶、有機EL等により構成され、後述する入力画面DIや、表示画面DO等の各種表示画面をカラーまたはモノクロで表示することができる。なお、表示装置4は、ノート型パソコンに限らず、デスクトップ型パソコン、タブレット型端末でもよい。なお、入力操作部44で入力した情報を取り込む端子が、取得部47を構成する。取得部47が取得する情報としては、作業動作を実行するための基本動作プログラムや、寿命を推定するのに入力される情報等が挙げられる。このように、取得部47は、基本動作プログラム取得部とも言える。
【0049】
表示装置4は、シミュレーション実行部41と、作成部42と、表示制御部43と、記憶部45と、通信部46と、を有する。
【0050】
記憶部45としては、例えば、RAM(Random Access Memory)等の揮発性メモリー、ROM(Read Only Memory)等の不揮発性メモリー、着脱式の外部記憶装置等を有する構成のものが挙げられる。また、記憶部45には、取得部47が取得した情報、特に基本作業動作プログラムや、作成部42が作成した修正動作プログラム等が記憶される。
【0051】
通信部46は、例えば有線LAN(Local Area Network)、無線LAN等の外部インターフェースを用いて制御装置3との間で信号の送受信を行う。この場合、図示しないサーバーを介して通信を行ってもよく、また、インターネット等のネットワークを介して通信を行ってもよい。通信部46は、記憶部45に記憶された動作プログラムに関する情報等を制御装置3に送信する。また、通信部46は、記憶部32に記憶された情報を受信し、記憶部45に当該情報を記憶することもできる。
【0052】
シミュレーション実行部41は、CPUやGPU等の少なくとも1つのプロセッサーで構成され、ロボットアーム10の寿命を算出する寿命算出部として機能する。
ロボットアーム10の寿命は、ロボットアーム10を構成する各部品の寿命であり、そのなかで寿命、すなわち故障までの時間が一番短いものをロボットアーム10の寿命とすることができる。ロボットアーム10を構成する各部品のうち、主要なものとしては、例えば、モーターM1~モーターM6、それらに設置された減速機、各種ボールねじスプライン、各種ベルト等の、動力源または動力伝達系部品が挙げられる。これらは、ロボットアーム10を構成する各部品のうち、比較的寿命が短いため、ロボットアーム10の寿命を定めるための指標となる部品の典型例とされる。ただし、ロボットアーム10の寿命を定めるための指標となる部品として、前記動力源または動力伝達系部品以外の部品がふくまれていてもよい。
なお、ロボットアーム10の寿命の定め方は、上記に限定されない。
【0053】
シミュレーション実行部41は、記憶部45に記憶されているロボットアーム10の駆動による寿命推定シミュレーションモデルを用いてシミュレーションを行い、ロボットアーム10の寿命を算出する。シミュレーション実行部41が寿命推定シミュレーションモデルを用いてシミュレーションを行うことにより、所定の動作条件で動作させた場合のロボットアーム10の寿命に関する情報を取得することができる。すなわち、シミュレーション実行部41は、基本動作プログラムで動作させた場合のロボットアーム10の寿命(以下、「第1寿命」とも言う)に関する情報を取得する。
【0054】
寿命推定シミュレーションモデルに入力される情報は、上述した基本動作プログラムに含まれる各情報や、目標サイクルタイム、ワークの質量、イナーシャ、回転軸から重心への距離等の入力画面DIからユーザーが入力する情報が挙げられる。これらの情報は、ディスプレイ40に表示される入力画面DIよりユーザーが入力することができる。
【0055】
なお、上記では、寿命算出部の一例としてシミュレーション実行部41を例に挙げて説明したが、本発明ではこれに限定されず、寿命算出部は、上述した入力値および出力値の関係を示す多次元テーブルを参照してロボットアーム10の寿命を求めるものであってもよく、各種数式を用いて求めるものであってもよい。
【0056】
作成部42は、CPUやGPU等の少なくとも1つのプロセッサーで構成され、記憶部45に記憶されているプログラムを読み出し、実行する。すなわち、基本動作プログラムに対し、ロボットアーム10の構成、ロボットアーム10の制御点TCPの作業開始位置P0および作業終了位置P1を同一とし、ロボットアーム10の基端の位置Q0を適宜変更して、ロボットアーム10の寿命が第1寿命よりも長い第2寿命となるような、少なくとも1つの修正動作プログラムを作成する。換言すれば、基本動作プログラムにおいて、ロボットアーム10の基端の位置Q0以外の要素をそのままとし、ロボットアーム10の基端のより適正な位置、すなわち、寿命がより長くなるような少なくとも1つの位置Q1を求める。
【0057】
作成部42によるロボットアーム10の基端の位置Q1の求め方は、以下の通りである。
【0058】
まず、
図4に示すように、鉛直方向から見て、作業開始位置P0を中心として半径rの円C1を設定するとともに、作業終了位置P1を中心として半径rの円C2を設定する。円C1は、作業開始位置P0に基台11を配置したと仮定したときの、制御点TCPが移動し得る領域である。円C2は、作業終了位置P1に基台11を配置したと仮定したときの、制御点TCPが移動し得る領域である。
【0059】
なお、半径rは、作業開始位置P0および作業終了位置P1の高さに応じて変更してもよい。
【0060】
次いで、円C1および円C2が重なる領域Aを抽出し、領域A上に、基台11を設置する領域の候補である複数の候補領域Axを設定する。候補領域Axは、基台11を鉛直方向から見た形状と同じ形状、すなわち矩形とする。候補領域Axの中心位置を基台11の位置Q1とする。また、図示の構成では、候補領域Axは、領域Aの全域に、隣り合う候補領域Ax同士が重ならないように設定される。
【0061】
なお、この構成に限定されず、候補領域Axは、隣り合う候補領域Axの少なくとも一部同士が重なるように設定されてもよい。
【0062】
次いで、作成部42は、設定した全ての候補領域Ax毎に、その候補領域に基台11を配置し、かつ、ロボットアーム10の構成、制御点TCPの作業開始位置P0および作業終了位置P1、ならびにサイクルタイムを実質的に同じとして、修正動作プログラムを作成する。各候補領域Axに対応した各修正動作プログラムは、基台11の位置Q1が異なり、それに伴って、動作中におけるロボットアーム10の位置および姿勢が異なるものである。
【0063】
次いで、シミュレーション実行部41は、各修正動作プログラムを用いてシミュレーションを実行し、それぞれに対応した寿命を算出する。算出した各寿命のうち、第1寿命よりも長くなる寿命が第2寿命である。各候補領域Axに対応した位置Q1’は、第1寿命よりも長い第2寿命のものと、そうでないものとがあり、第2寿命のものを位置Q1とする。
図5では、3つの位置Q1が存在しており、ハッチングで示している。
【0064】
表示装置4は、作成部42が複数の修正動作プログラムを作成した場合、すなわち第2寿命が複数存在する場合、その中の1つの修正動作プログラムを選出する選出部(図示せず)を有する。この選出部は、本実施形態では、作成部42に設置されている。ただし、選出部は、表示装置の作成部42以外の部位に設置または形成されていてもよい。
【0065】
選出部は、複数の修正動作プログラムの中から、例えば以下のような選択方法(1)~(3)により1つの修正動作プログラムを選出する。選出部により選出された修正動作プログラムにおけるロボットアーム10の基端の位置、すなわち基台11の位置を位置Q2とする。
【0066】
(1)寿命が最も長くなる修正動作プログラムを選出する。すなわち、複数の修正動作プログラムのそれぞれに対し、ロボットアーム10の寿命を算出し、それらの中からロボットアーム10の寿命を最も長くなる修正動作プログラムを選出し、特定する。
これにより、ロボットアーム10の寿命を最も長くすることができる。よって、より適正な作業をより長期にわたり行うことができる。
【0067】
(2)ロボットアーム10の基端の位置Q1が、基本動作プログラムにおけるロボットアーム10の基端の位置Q0と最も近い修正動作プログラムを選出し、特定する。
これにより、ロボットアーム10の移動距離、すなわち、位置Q0、Q1間の距離を可及的に短くすることができ、迅速かつ容易に作業を開始することができる。
【0068】
(3)各修正動作プログラムのうち、1つずつ順にシミュレーションを行う場合、最初に第2寿命が算出された修正動作プログラムを選出し、特定する。
これにより、シミュレーションの回数を減らすことができ、選出にかかる時間を削減することができる。よって、迅速に作業を開始することができる。
【0069】
本実施形態では、選出部は、前記(1)の選択方法で修正動作プログラムを選択する。すなわち、複数の位置Q1に関する情報がある中で、選出部により選出された修正動作プログラムにおけるロボットアーム10の基端の位置Q2に関する情報を特定し、この位置Q2に関する情報をディスプレイ40に表示する。
【0070】
表示制御部43は、ディスプレイ40の作動を制御する機能を有する。表示制御部43は、CPUやGPU等の少なくとも1つのプロセッサーで構成され、記憶部45に記憶されているプログラムを読み出し、実行する。これにより、ディスプレイ40に表示される表示情報を指定することができる。この表示情報としては、
図6に示す入力画面DIおよび
図7に示す表示画面DOが挙げられる。
【0071】
入力画面DIには、動作指令ウィンドウW1と、パラメーターウィンドウW2と、シミュレーション画像ウィンドウW3とが表示されている。
【0072】
動作指令ウィンドウW1には、「Accel:100」という文字と、「Speed:100」という文字と、「Go P1」という文字と、が表示されている。「Accel:100」は、取得した基本動作プログラムにおいて、制御点TCPが移動する際の加速度がMAXに設定されていることを示している。「Speed:100」は、取得した基本動作プログラムにおいて、制御点TCPの速度がMAXに設定されていることを示している。「Go P1」は、取得した基本動作プログラムにおいて、最終目標位置が作業終了位置P1であることを示している。これらの文字は、基本動作プログラムの内容に応じて変更される。
【0073】
パラメーターウィンドウW2には、寿命予測モードのON/OFFの選択部や、目標サイクルタイム、ワークの質量、イナーシャ、回転軸から重心への距離の入力部が表示される。
【0074】
これらの要素も加えて、寿命算出を行ってもよい。特に、ワークの質量に関しては、寿命に対する直接的な影響が比較的大きいため、さらにワークの質量を加味して寿命を算出することにより、より正確な寿命を算出することができる。
【0075】
シミュレーション画像ウィンドウW3には、ロボット1に対応した仮想ロボット1Aの画像が表示される。表示される仮想ロボット1Aの画像の種類は、静止画、動画のうちのいずれか一方または両方が挙げられる。
【0076】
シミュレーション画像ウィンドウW3に表示される仮想ロボット1Aにおけるロボットアーム10の形状、構成、動作等は、実際のロボット1におけるロボットアーム10の形状、構成、動作等に対応している。シミュレーション画像ウィンドウW3に表示される仮想ロボット1Aの位置Q0、Q1およびQ2は、実際のロボット1の位置Q0、Q1およびQ2に対応している。
【0077】
表示画面DOには、前述した動作指令ウィンドウW1、パラメーターウィンドウW2およびシミュレーション画像ウィンドウW3に加え、シミュレーション動作結果ウィンドウW4が表示される。
【0078】
表示画面DOにおけるシミュレーション画像ウィンドウW3には、基本動作プログラムにおけるロボットアーム10およびその位置Q0と共に、修正動作プログラムにおけるロボットアーム10およびその位置Q1、すなわち、寿命が長くなるようなロボットアーム10およびその位置Q1が、異なる表示パターンで表示される。
【0079】
特に、位置Q1が複数ある場合、選出部で選出された修正動作プログラムにおけるロボットアーム10およびその位置Q2が、基本動作プログラムにおけるロボットアーム10およびその位置Q0と共に表示される。
【0080】
図示の構成では、異なる表示パターンとして、基本動作プログラムにおける位置のロボットアーム10が実線で表示され、寿命が長くなる位置のロボットアーム10が破線で表示される。
【0081】
異なる表示パターンの他の例としては、ロボットアーム10の全部または一部に対し、例えば、表示画像の濃淡が異なる、色彩が異なる、一方が点灯し他方が点滅する等が挙げられるが、これらに限定さるものではない。
【0082】
なお、作成部42が複数の修正動作プログラムを作成せず、1つの修正動作プログラムを作成した場合には、選出部による選出は行われず、前記1つの修正動作プログラムにおけるロボットアーム10およびその位置Q1が表示される。また、表示装置4が選出部を有さない場合も同様である。
【0083】
ユーザーは、このような表示画面DOを見て、実際のロボット1のロボットアーム10を適正な位置Q2(Q1)に移動させることができる。ロボットアーム10を移動後に、その位置Q2(Q1)に対応する修正動作プログラムを用いて作業動作を行うことにより、移動前の位置Q0で基本動作プログラムを用いて作業動作を行う場合に比べて、ロボットアーム10の各部品への負担を軽減する傾向を示し、ロボットアーム10の寿命を長くすることができる。
【0084】
以上説明したように、表示装置4は、ロボットアーム10の構成、ロボットアーム10に設定された制御点の作業開始位置P0および作業終了位置P1、ロボットアーム10の基端の位置Q0、作業開始位置P0から作業終了位置P1までの動作経路におけるロボットアーム10の姿勢および動作経路におけるロボットアーム10の速度に関する情報を含む基本動作プログラムを取得する取得部47と、取得部47が取得した基本動作プログラムに基づいて動作を行った場合のロボットアーム10の第1寿命を算出する寿命算出部であるシミュレーション実行部41と、基本動作プログラムに対し、ロボットアームの構成、ロボットアーム10の制御点TCPの作業開始位置P0、ロボットアーム10の制御点TCPの作業終了位置P1を同一とし、ロボットアーム10の基端の位置Q0を変更して、ロボットアーム10の寿命が第1寿命よりも長い第2寿命となるような、修正動作プログラムを作成する作成部42と、修正動作プログラムにおけるロボットアーム10の基端の位置Q1を表示する表示部であるディスプレイ40と、を備える。これにより、ユーザーは、ロボットアーム10の基端をどの位置に設置すればロボット1の寿命がより長くなるかを容易、迅速に把握することができる。
【0085】
また、作成部42は、複数の修正動作プログラムを作成した場合、その中で最も寿命が長い修正動作プログラムを選出し、表示部であるディスプレイ40は、選出された修正動作プログラムにおけるロボットアーム10の基端の位置Q2を表示する。これにより、ロボットアーム10が作業動作を行う際のロボットアーム10の各部にかかる負荷がさらに軽減され、ロボットアーム10の寿命をさらに長くすることができる。
【0086】
また、表示部であるディスプレイ40は、選出された修正動作プログラムにおけるロボットアーム10の基端の位置Q2を、ロボットアーム10のシミュレーション画像として表示する。これにより、ユーザーは、視覚によりロボットアーム10の基端の位置Q2を容易かつ正確に把握することができる。
【0087】
また、表示部であるディスプレイ40は、基本動作プログラムにおけるロボットアーム10の基端の位置Q0をロボットアーム10のシミュレーション画像として併せて表示する。これにより、選出された修正動作プログラムにおけるロボットアーム10の基端の位置Q2と、基本動作プログラムにおけるロボットアーム10の基端の位置Q0との相対的な位置関係を容易、迅速に把握することができる。よって、ユーザーは、作業前のロボットアーム10の位置Q2への移動をより正確かつ迅速に行うことができる。
【0088】
また、表示部であるディスプレイ40は、基本動作プログラムにおけるロボットアーム10の基端の位置Q0と、選出された修正動作プログラムにおけるロボットアーム10の基端の位置Q2と、を異なる表示パターンで表示する。これにより、ユーザーは、修正動作プログラムにおけるロボットアーム10の基端の位置Q2と、基本動作プログラムにおけるロボットアーム10の基端の位置Q0とを区別して明確に認識することができる。
【0089】
次に、
図8に示すフローチャートを用いて、本発明の表示装置により実行される表示方法の一例について説明する。
【0090】
まず、ステップS101において、基本動作プログラムを取得する。すなわち、ユーザーが入力画面DIを操作して入力した基本動作プログラムを、取得部47が取得する。このステップS101が、基本動作プログラムを取得する取得ステップである。
【0091】
次いで、ステップS102において、第1寿命を算出する。すなわち、シミュレーション実行部41が寿命推定シミュレーションモデルを用いてシミュレーションを行うことにより、所定の動作条件で動作させた場合のロボットアーム10の第1寿命を取得する。このステップS102が、第1寿命を算出する寿命算出ステップである。
【0092】
次いで、ステップS103において、修正動作プログラムを作成する。すなわち、作成部42は、基本動作プログラムにおいて、ロボットアーム10の基端の位置Q0以外の要素をそのままとし、ロボットアーム10の基端の位置Q0の適正な位置、すなわち、寿命が長くなるような位置Q1を求める。この求め方は、前述した通りである。このステップS103が、修正動作プログラムを作成する作成ステップである。修正動作プログラムは、1つ作成される場合と、複数作成される場合とがある。
【0093】
次いで、ステップS104において、作成された修正動作プログラムの数N(Nは自然数)が1か否かを判断する。すなわち、求めた位置Q1の数Nが1か否かを判断する。N=1の場合には、ステップS106へ進み、N≧2の場合には、ステップS105へ進む。
【0094】
ステップS105では、作成された複数の修正動作プログラムの中から最も寿命が長い修正動作プログラムを選出し、選出された修正動作プログラムにおけるロボットアーム10の基端の位置を位置Q2とし、ステップS106へ進む。
【0095】
次いで、ステップS106において、作成された修正動作プログラムを表示する。詳しくは、作成された修正動作プログラムが1つの場合には、その修正動作プログラムにおけるロボットアーム10の基端の位置Q1を表示し、作成された修正動作プログラムが2つ以上の場合には、それらの中から選出された修正動作プログラムにおけるロボットアーム10の基端の位置Q2を表示する。
【0096】
表示制御部43は、ディスプレイ40に修正動作プログラムにおけるロボットアーム10の基端の位置Q1またはQ2を、位置Q0と共に表示するよう、すなわち、表示画面DOを表示するようディスプレイ40の作動を制御する。
【0097】
以上説明したように、本発明の表示方法は、ロボットアーム10の構成、ロボットアーム10に設定された制御点TCPの作業開始位置P0および作業終了位置P1、ロボットアーム10の基端の位置Q0、作業開始位置P0から作業終了位置P1までの動作経路におけるロボットアーム10の姿勢および動作経路におけるロボットアーム10の速度に関する情報を含む基本動作プログラムを取得する取得ステップと、取得ステップで取得した基本動作プログラムに基づいて動作を行った場合のロボットアーム10の第1寿命を算出する寿命算出ステップと、基本動作プログラムに対し、ロボットアームの構成、ロボットアーム10の制御点TCPの作業開始位置P0、ロボットアーム10の制御点TCPの作業終了位置P1を同一とし、ロボットアーム10の基端の位置Q0を変更して、ロボットアーム10の寿命が第1寿命よりも長い第2寿命となるような、少なくとも1つの修正動作プログラムを作成する作成ステップと、修正動作プログラムにおけるロボットアーム10の基端の位置Q1を表示する表示ステップと、を備える。これにより、ユーザーは、ロボットアーム10の基端をどの位置に設置すれば寿命がより長くなるかを容易、迅速に把握することができる。
【0098】
以上、本発明の表示装置および表示方法を図示の実施形態について説明したが、本発明は、これに限定されるものではない。また、表示方法には、任意の工程が付加されていてもよい。また、表示装置の各部は、同様の機能を発揮し得る任意の構造物と置換することができる。また、任意の構造体が付加されていてもよい。
【符号の説明】
【0099】
1…ロボット、1A…仮想ロボット、3…制御装置、4…表示装置、10…ロボットアーム、11…基台、12…第1アーム、13…第2アーム、14…第3アーム、15…第4アーム、16…第5アーム、17…第6アーム、20…エンドエフェクター、31…制御部、32…記憶部、33…通信部、40…ディスプレイ、41…シミュレーション実行部、42…作成部、43…表示制御部、44…入力操作部、45…記憶部、46…通信部、47…取得部、100…ロボットシステム、171…関節、172…関節、173…関節、174…関節、175…関節、176…関節、A…領域、Ax…候補領域、C1…円、C2…円、D1…モータードライバー、D2…モータードライバー、D3…モータードライバー、D4…モータードライバー、D5…モータードライバー、D6…モータードライバー、DI…入力画面、DO…表示画面、E1…エンコーダー、E2…エンコーダー、E3…エンコーダー、E4…エンコーダー、E5…エンコーダー、E6…エンコーダー、M1…モーター、M2…モーター、M3…モーター、M4…モーター、M5…モーター、M6…モーター、P0…作業開始位置、P1…作業終了位置、Q0…位置、Q1…位置、Q1’…位置、Q2…位置、S101…ステップ、S102…ステップ、S103…ステップ、S104…ステップ、S105…ステップ、S106…ステップ、TCP…制御点、W1…動作指令ウィンドウ、W2…パラメーターウィンドウ、W3…シミュレーション画像ウィンドウ、W4…シミュレーション動作結果ウィンドウ、r…半径