(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-01-24
(45)【発行日】2024-02-01
(54)【発明の名称】ロボット制御装置
(51)【国際特許分類】
B25J 9/22 20060101AFI20240125BHJP
G05B 19/42 20060101ALI20240125BHJP
【FI】
B25J9/22 Z
G05B19/42 L
(21)【出願番号】P 2020198480
(22)【出願日】2020-11-30
【審査請求日】2023-10-03
【早期審査対象出願】
(73)【特許権者】
【識別番号】000000262
【氏名又は名称】株式会社ダイヘン
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(74)【代理人】
【識別番号】100108213
【氏名又は名称】阿部 豊隆
(72)【発明者】
【氏名】池口 誠人
(72)【発明者】
【氏名】中川 慎一郎
【審査官】岩▲崎▼ 優
(56)【参考文献】
【文献】特開平03-270887(JP,A)
【文献】特開平03-123908(JP,A)
【文献】特開平05-265537(JP,A)
【文献】特開昭58-175005(JP,A)
【文献】特開昭60-027906(JP,A)
【文献】特開2002-052484(JP,A)
【文献】特開昭62-102304(JP,A)
【文献】特開2011-200997(JP,A)
【文献】米国特許出願公開第2020/39082(US,A1)
【文献】独国特許出願公開第102005060967(DE,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B25J 1/00-21/02
G05B 19/42-19/46
(57)【特許請求の範囲】
【請求項1】
操作端末を用いてロボットを動作させながら教示データを生成するロボット制御装置であって、
前記教示データを構成する、複数の教示点における前記ロボットの位置又は姿勢の少なくとも一方を含む教示情報が記録される教示情報記録部と、
前記ロボットの現在の位置又は姿勢の少なくとも一方に関する情報を取得するロボット情報取得部と、
前記操作端末に搭載され当該操作端末の変位を検出可能なセンサによって検出された当該操作端末の変位に対応する前記ロボットの動作に基づいて、前記ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する記録要否判定部と、
前記教示情報として記録すると判定された場合、前記ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として前記教示情報記録部に記録するように制御する制御部と、
を備え、
前記記録要否判定部は、前記教示情報記録部に記録されている教示情報のうち基準となる前記ロボットの位置又は姿勢の少なくとも一方から、
前記操作端末の変位に対応して動作する前記ロボットの移動距離が所定距離以上、又は前記ロボットの回転角度が所定角度以上となった場合、前記ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録すると判定し、
前記所定距離及び前記所定角度は、可変値であって、教示作業のうち
前記ロボットの動作速度に応じて設定される、
ロボット制御装置。
【請求項2】
前記基準となる前記ロボットの位置又は姿勢の少なくとも一方は、教示点における教示情報として前記教示情報記録部に直近に記録された前記ロボットの位置又は姿勢の少なくとも一方である、
請求項1に記載のロボット制御装置。
【請求項3】
操作端末を用いてロボットを動作させながら教示データを生成するロボット制御装置であって、
前記教示データを構成する、複数の教示点における前記ロボットの位置又は姿勢の少なくとも一方を含む教示情報が記録される教示情報記録部と、
前記ロボットの現在の位置又は姿勢の少なくとも一方に関する情報を取得するロボット情報取得部と、
所定時間経過毎に、前記ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する記録要否判定部と、
前記教示情報として記録すると判定された場合、前記ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として前記教示情報記録部に記録するように制御する制御部と、
を備え、
前記所定時間は、可変値であって、教示作業のうち
前記操作端末に搭載され当該操作端末の変位を検出可能なセンサによって検出された当該操作端末の変位に対応して動作する前記ロボットの動作速度に応じて設定される、
ロボット制御装置。
【請求項4】
前記ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として前記教示情報記録部に記録する記録指示を受け付ける記録指示受付部を、さらに備え、
前記制御部は、前記記録指示に基づいて、前記ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として前記教示情報記録部に記録するように制御する、
請求項1~3のいずれか一項に記載のロボット制御装置。
【請求項5】
前記教示情報記録部に記録される教示情報には、前記ロボットの移動速度、補間種別及び通過精度の少なくともいずれかを含む、請求項1~4のいずれか一項に記載のロボット制御装置。
【請求項6】
前記ロボットの移動速度、補間種別及び通過精度は、前記ロボットを動作させる操作速度に応じて設定される、
請求項5に記載のロボット制御装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ロボット制御装置に関する。
【背景技術】
【0002】
近年、産業界において、多くのロボットが普及している。当該ロボットは、例えば、電子部品及び機械部品の組み立て、溶接及び搬送等に用いられ、工場の生産ラインの効率化及び自動化が図られている。このようなロボットは、所望の動作をさせるためのプログラムを作成して、所謂教示データとして予め記録させておく必要がある。
【0003】
当該教示データは、操作者がティーチペンダントを用いて実際のロボットを操作することによって動作を記録させて生成される。例えば、操作者によって複数の教示点における教示情報が記録されて、教示データが生成されると、ロボットは、当該教示データに従って、複数の教示点間を移動するように動作することになる。
【0004】
特許文献1では、複数のロボットアームを備えたロボットのダイレクト教示方法として、教示作業を簡易にする技術が開示されている。当該ダイレクト教示方法は、マスタアームを任意の教示位置へ動かしている間に、スレイブアームをマスタアームに対して協調動作させ、マスタアームが任意の教示位置に到達した際に、マスタアーム及びスレイブアームの位置情報を記録している。
【先行技術文献】
【特許文献】
【0005】
【発明の概要】
【発明が解決しようとする課題】
【0006】
しかしながら、ロボットは、記録された教示点においては、教示された位置及び姿勢に従って動作するものの、教示点間の移動においては、操作者が意図しない移動軌跡を辿る場合があり、当該教示点間の移動中に干渉物を回避できないおそれがある。換言すれば、操作者は、教示データを生成する際に、教示点間におけるロボットの移動軌跡を推定しながら、適切な位置で教示点を記録させる必要があり、操作者のスキルへの依存度が大きい。
【0007】
そこで、本発明は、教示データを生成する際に、適切な位置又はタイミングで教示点を記録するロボット制御装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明の一態様に係るロボット制御装置は、ロボットを動作させながら教示データを生成するロボット制御装置であって、教示データを構成する、複数の教示点におけるロボットの位置又は姿勢の少なくとも一方を含む教示情報が記録される教示情報記録部と、ロボットの現在の位置又は姿勢の少なくとも一方に関する情報を取得するロボット情報取得部と、ロボットの動作に基づいて、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する記録要否判定部と、教示情報として記録すると判定された場合、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部に記録するように制御する制御部と、を備える。
【0009】
この態様によれば、ロボット情報取得部は、ロボットの現在の位置又は姿勢の少なくとも一方に関する情報を取得し、記録要否判定部は、ロボットの動作に基づいて、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する。記録要否判定部は、ロボットの動作に基づいて、適切な位置又はタイミングで教示点を記録すると判定するため、教示情報記録部には、教示点における教示情報として、適切な位置又はタイミングで取得されたロボットの現在の位置又は姿勢の少なくとも一方が記録される。すなわち、ロボット制御装置は、ロボットの動作に基づいて、適切な位置又はタイミングで教示点を記録することができるため、操作者のスキルへの依存度を軽減し、ロボットが干渉物を適切に回避することができる。
【0010】
上記態様において、記録要否判定部は、ロボットの現在の位置又は姿勢の少なくとも一方と、教示情報記録部に記録されている教示情報のうち基準となるロボットの位置又は姿勢の少なくとも一方とに基づいて、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定してもよい。
【0011】
この態様によれば、記録要否判定部は、基準となるロボットの位置又は姿勢の少なくとも一方からの変位に基づいて、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する。すなわち、ロボット制御装置は、基準となるロボットの位置又は姿勢の少なくとも一方からの変位に基づいて、適切な位置又はタイミングで教示点を記録することができる。
【0012】
上記態様において、基準となるロボットの位置又は姿勢の少なくとも一方は、教示点における教示情報として教示情報記録部に直近に記録されたロボットの位置又は姿勢の少なくとも一方であってもよい。
【0013】
この態様によれば、記録要否判定部は、直近に記録されたロボットの位置又は姿勢の少なくとも一方からの変位に基づいて、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する。すなわち、ロボット制御装置は、直近に記録されたロボットの位置又は姿勢の少なくとも一方からの変位に基づいて、適切な位置又はタイミングで教示点を記録することができる。
【0014】
上記態様において、記録要否判定部は、基準となるロボットの位置又は姿勢の少なくとも一方から、ロボットの移動距離が所定距離以上、又はロボットの回転角度が所定角度以上となった場合、ロボットの現在の位置又は姿勢の少なくとも一方を教示情報として記録させると判定してもよい。
【0015】
この態様によれば、記録要否判定部は、基準となるロボットの位置又は姿勢の少なくとも一方からの変位について、具体的に、ロボットの移動距離又はロボットの回転角度が閾値以上になった場合、ロボットの現在の位置又は姿勢の少なくとも一方を教示情報として記録させると判定する。すなわち、ロボット制御装置は、基準となるロボットの位置又は姿勢の少なくとも一方から所定の変位に基づいて、適切な位置又はタイミングで教示点を記録することができる。
【0016】
上記態様において、所定距離及び所定角度は、ロボットの動作に要求される精密度に応じて設定されてもよい。
【0017】
この態様によれば、ロボットの動作に要求される精密度に応じて閾値が設定されるため、ロボット制御装置は、状況に応じて、適切な位置又はタイミングで教示点を記録することができる。その結果、ロボットが干渉物を適切に回避しつつ、タクトタイムを短縮することができる。
【0018】
上記態様において、所定距離及び所定角度は、ロボットを動作させる操作速度に応じて設定されてもよい。
【0019】
この態様によれば、ロボットを動作させる操作速度に応じて閾値が設定されるため、ロボット制御装置は、状況に応じて、適切な位置又はタイミングで教示点を記録することができる。その結果、ロボットが干渉物を適切に回避しつつ、タクトタイムを短縮することができる。
【0020】
本発明の一態様に係るロボット制御装置は、ロボットを動作させながら教示データを生成するロボット制御装置であって、教示データを構成する、複数の教示点におけるロボットの位置又は姿勢の少なくとも一方を含む教示情報が記録される教示情報記録部と、ロボットの現在の位置又は姿勢の少なくとも一方に関する情報を取得するロボット情報取得部と、所定時間経過毎に、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する記録要否判定部と、教示情報として記録すると判定された場合、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部に記録するように制御する制御部と、を備える。
【0021】
この態様によれば、記録要否判定部は、経過時間が所定時間(閾値)以上になった場合、ロボットの現在の位置又は姿勢の少なくとも一方を教示情報として記録させると判定する。すなわち、ロボット制御装置は、所定時間経過毎に、適切な位置又はタイミングで教示点を記録することができる。
【0022】
上記態様において、所定時間は、ロボットの動作に要求される精密度及びロボットを動作させる速度の少なくともいずれかに応じて設定されてもよい。
【0023】
この態様によれば、ロボットの動作に要求される精密度に応じて閾値が設定されるため、ロボット制御装置は、状況に応じて、適切な位置又はタイミングで教示点を記録することができる。その結果、ロボットが干渉物を適切に回避しつつ、タクトタイムを短縮することができる。
【0024】
上記態様において、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部に記録する記録指示を受け付ける記録指示受付部を、さらに備え、制御部は、記録指示に基づいて、ロボットの現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部に記録するように制御してもよい。
【0025】
この態様によれば、記録指示受付部は、操作者からの記録指示を受け付けて、ロボットの現在の位置又は姿勢の少なくとも一方が教示点における教示情報として教示情報記録部に記録される。ロボット制御装置は、適切な位置又はタイミングで教示点を記録するとともに、状況に応じて、操作者の記録指示に基づいて教示点を記録することもできる。
【0026】
上記態様において、教示情報記録部に記録される教示情報には、ロボットの移動速度、補間種別及び通過精度の少なくともいずれかを含んでもよい。
【0027】
この態様によれば、ロボットの動作に関して、教示情報に含まれる詳細な設定を行うため、より適切に、ロボットが干渉物を回避しつつ、タクトタイムを短縮することができる。
【0028】
上記態様において、ロボットの移動速度、補間種別及び通過精度は、ロボットを動作させる操作速度に応じて設定されてもよい。
【0029】
この態様によれば、ロボットの動作に関して、教示情報に含まれる詳細な設定について、状況に応じた設定を行うため、より適切に、ロボットが干渉物を回避しつつ、タクトタイムを短縮することができる。
【0030】
上記態様において、操作端末が操作されることにより得られるロボット動作制御指示に基づいて、ロボットを動作させる。
【0031】
この態様によれば、操作者の操作に従ってロボットを動作させるため、ロボットが干渉物を回避しつつ、適切な位置又はタイミングで教示点を記録することができる。
【0032】
上記態様において、操作端末には、当該操作端末の動作を検出するセンサが搭載され、ロボット動作制御指示は、検出された操作端末の動作に応じて決定される。
【0033】
この態様によれば、ロボット動作制御指示は、操作者が直感的に操作(動作)させた操作端末の操作(動作)結果に応じて決定される。これにより、ロボットは、操作者の直感的な操作に沿って動作することになるため、より適切に、ロボットが干渉物を回避しつつ、適切な位置又はタイミングで教示点を記録することができる。
【発明の効果】
【0034】
本発明によれば、教示データを生成する際に、適切な位置又はタイミングで教示点を記録するロボット制御装置を提供することができる。
【図面の簡単な説明】
【0035】
【
図1】本発明の一実施形態に係るロボット制御装置100における各機能を示す機能ブロックである。
【
図2】本発明の一実施形態に係るロボット制御装置100において、複数の教示点が記録される一具体例を示す図である。
【
図3】複数の教示点が記録されることによってロボットが干渉物を回避する一具体例を示す図である。
【
図4】教示点として記録するか否かについて、ロボットの動作に要求される精密度及び/又はロボットを動作させる操作速度に応じて、移動距離及び回転角度の閾値が設定される一具体例を示す図である。
【
図5】本発明の一実施形態に係るロボット制御装置100が実行するロボット制御方法M100を示すフローチャートである。
【
図6】ロボットの動作に要求される精密度及び/又はロボットを動作させる操作速度に応じて、移動距離及び回転角度の閾値が設定されており、さらに教示情報として記録される要素の一具体例を示す図である。
【
図7】ロボットの溶接処理における教示作業、及び教示作業中に記録される教示点の自動記録及び手動記録の一具体例を示す図である。
【発明を実施するための形態】
【0036】
以下、本発明の一実施形態について、添付図面を参照しながら具体的に説明する。なお、以下で説明する実施形態は、あくまで、本発明を実施するための具体的な一例を挙げるものであって、本発明を限定的に解釈させるものではない。また、説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。
【0037】
<一実施形態>
[ロボット制御装置の構成]
図1は、本発明の一実施形態に係るロボット制御装置100における各機能を示す機能ブロックである。
図1において、ロボット制御装置100は、ロボット10及び操作端末20と接続されており、操作者によって操作される操作端末20からの指示に基づいて、ロボット10の動作を制御する。
【0038】
操作端末20は、典型的には、ティーチペンダントである。操作者がティーチペンダントを用いてロボット制御装置100を介してロボット10を操作し、当該ロボット10の動作を記録させる教示作業によって、教示データが生成される。
【0039】
操作端末20は、当該操作端末20の移動、傾き、速度、角度、及びそれらの変位等を把握するための各種センサ(例えば、加速度センサ及びジャイロセンサ等の慣性センサ)を搭載し、慣性計測装置(IMU:Inertial Measurement Unit)を搭載していても構わない。この場合、操作者によって操作端末20が操作(動作)されると、各種センサによって当該操作端末20の操作(動作)が検出され、当該検出された操作端末20の操作(動作)結果に対応するロボット10の動作制御指示に基づいて、ロボット制御装置100は、ロボット10を動作させる。換言すれば、操作端末20の(操作)動作に従って、当該動作に対応するようにロボット10が動作する。
【0040】
これにより、ティーチペンダントに備えられたボタンやタッチパネルに詳細を入力するよりも、直感的な操作(動作)によって、ロボット10への教示作業を行うことができる。教示作業におけるロボット10の動作制御及び教示点の記録については、操作者のスキルに依存する傾向があるが、このように、操作端末20に対する直感的な操作(動作)に対応してロボット10の動作制御ができれば、操作者への依存度を軽減しつつ、適切に教示点の記録を行うことができる。
【0041】
なお、操作端末20に搭載される具体例として、慣性センサ及び慣性計測装置等を挙げたが、これに限定されるものではなく、操作端末20の動作、位置及び変位等を検出するものであれば、例えば、カメラ及び光学センサ等、さらには、これらを組み合わせて適用しても構わない。
【0042】
また、ティーチペンダント等の操作端末20を用いずに、操作者がロボット10を直接動作させるダイレクトティーチングによって、教示作業を行っても構わない。ロボット10は、例えば、ロボット10のアームに力覚センサ及びトルクセンサ等が装着され、操作者から加えられる力を検知し、加えられた力、移動速度及び回転角度を演算することによって、教示データが生成される。
【0043】
いずれの教示作業であっても、操作者によって複数の教示点における教示情報が記録されて、教示データが生成されると、ロボット10は、当該教示データに従って、複数の教示点間を移動するように動作することになる。
【0044】
ロボット制御装置100は、複数の教示点における教示情報を記録することによって教示データを生成する。以下、例えば、ロボット10が溶接ロボットである場合、ロボット制御装置100が、ロボット10を動作させながら教示データを生成することについて、詳細に説明する。
【0045】
ロボット制御装置100は、教示情報記録部110と、ロボット情報取得部120と、記録要否判定部130と、制御部140とを備える。
【0046】
教示情報記録部110には、複数の教示点におけるロボット10の位置又は姿勢の少なくとも一方を含む教示情報が記録される。当該複数の教示点における教示情報によって教示データが構成されることになる。また、教示情報は、ロボット10の動作を教示する情報であって、ロボット10の位置又は姿勢の少なくとも一方に関する情報に限定されるものではなく、後述するようなロボット10の移動速度、補間種別及び通過精度に関する情報等が含まれても構わない。さらに、ロボット10が溶接ロボットであれば、教示情報には、ロボット10のアームの動作に関する情報、溶接トーチの先端から送給される溶接ワイヤの突出長さに関する情報等が含まれても構わない。
【0047】
ロボット情報取得部120は、ロボット10の現在の位置又は姿勢の少なくとも一方に関する情報を取得する。例えば、ロボット情報取得部120は、ロボット10のエンドエフェクタ(溶接トーチの先端)の位置又は姿勢の少なくとも一方を取得する。また、ロボット情報取得部120は、ロボット10のアームの動作を制御する6軸の状態に基づいて、ロボット10の現在の位置又は姿勢の少なくとも一方に関する情報を取得したりしても構わない。
【0048】
記録要否判定部130は、ロボット10の動作に基づいて、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する。例えば、ロボット10の動作とは、ロボット情報取得部120によって取得されたロボット10の現在の位置又は姿勢の少なくとも一方と、教示情報記録部110に記録されている教示情報のうち基準となるロボット10の位置又は姿勢の少なくとも一方との比較に基づくロボット10の変位を含む。
【0049】
ここで、基準となるロボット10の位置又は姿勢の少なくとも一方は、典型的には、教示点における教示情報として教示情報記録部110に直近に記録されたロボット10の位置又は姿勢の少なくとも一方である。記録要否判定部130は、直近に記録されたロボット10の位置又は姿勢の少なくとも一方から、ロボット10の現在の位置又は姿勢の少なくとも一方がどれだけ変位したかに基づいて、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する。
【0050】
制御部140は、記録要否判定部130によってロボット10の現在の位置又は姿勢の少なくとも一方を教示情報として記録すると判定された場合、当該ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録するように制御する。
【0051】
[複数の教示点を辿る移動軌跡]
図2は、本発明の一実施形態に係るロボット制御装置100において、複数の教示点が記録される一具体例を示す図である。
図2(A)に示されるように、ロボット制御装置100は、教示作業において、複数の教示点P1~P6における教示情報を記録しながら、点P1に位置するロボット10(例えば、溶接トーチ)を、点P6まで移動させている(移動軌跡T10)。
【0052】
より詳細には、ロボット制御装置100は、点P1に位置するロボット10を所定距離(例えば、50mm等)移動させて、点P2に位置した際に、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録する。すなわち、ロボット10が、点P1から半径50mmで表される球Sの範囲を越えようとする点P2に位置した際に、ロボット10の位置又は姿勢の少なくとも一方を教示点P2における教示情報として教示情報記録部110に記録する。同様に、ロボット10が、点P2から半径50mmで表される球Sの範囲を越えようとする点P3に位置した際に、ロボット10の位置又は姿勢の少なくとも一方を教示点P3における教示情報として教示情報記録部110に記録する。さらに、点P4、点P5及び点P6も同様である。
【0053】
図2(B)に示されるように、ロボット制御装置100は、教示作業において教示情報記録部110に記録された複数の教示点P1~P6を辿るようにロボット10を移動させる(移動軌跡T20)。このように、ロボット10が50mm移動する毎に、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録して教示データが生成されているため、教示作業中の移動軌跡T10と同様又は近似する移動軌跡T20でロボット10を移動させることができる。また、適切な位置又はタイミングで教示点を自動的に記録するため、操作者のスキルへの依存度を軽減することができている。
【0054】
なお、ここでは、記録要否判定部130は、教示点における教示情報として記録するか否かを判定する基準として、所定距離(閾値)として50mmを設定し、ロボット10が50mm移動する毎に、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録すると判定していたが、所定距離(閾値)はこれに限定されるものではない。例えば、ロボット10の種類、大きさ、性能、要求される処理及びタクトタイムに応じて、適宜設定すればよい。
【0055】
また、所定距離(閾値)は、ロボット10の移動距離に限定されるものではなく、例えば、ロボット、アーム、エンドエフェクタ及びその他ツール等の回転角度について、所定角度(閾値)を設定しても構わない。具体的には、記録要否判定部130は、教示点における教示情報として記録するか否かを判定する基準として、所定角度(閾値)として10degを設定し、ロボット10が10deg回転する毎に、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録すると判定するようにしても構わない。
【0056】
さらに、移動距離及び回転角度の両方を閾値に設定しても構わない。記録要否判定部130は、教示点における教示情報として記録するか否かを判定する基準として、所定距離(例えば、50mm等)及び所定角度(例えば、10deg)を設定する。そして、記録要否判定部130は、ロボット10が50mm移動するか、又は10deg回転するかによって、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録すると判定するようにしても構わない。
【0057】
また、移動距離及び回転角度を組み合わせて判定基準を設定しても構わない。記録要否判定部130は、ロボット10が25mm移動し、且つ5deg回転すれば、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録すると判定するようにしても構わない。
【0058】
このように、状況に応じて適切な閾値が設定されることにより、ロボット制御装置100は、ロボット10の動作に基づいて、適切な位置又はタイミングで教示点を自動的に記録することができる。さらに、操作者のスキルへの依存度を軽減することができる。
【0059】
なお、
図2において、基準となるロボット10の位置又は姿勢の少なくとも一方を、直近に記録されたロボット10の位置又は姿勢の少なくとも一方として説明したが、これに限定されるものではない。例えば、操作者によって基準として設定されたロボット10の位置又は姿勢の少なくとも一方であっても構わない。具体例としては、教示作業を開始する開始点、溶接処理における溶接開始点及び溶接終了点、各処理において溶接トーチを退避させる退避点、及び教示作業中に操作者が操作に迷った場合における再開始点やその他基準点等が含まれる。
【0060】
図3は、複数の教示点が記録されることによってロボットが干渉物を回避する一具体例を示す図である。
図3(A)に示されるように、操作者は、干渉物を回避しつつ、溶接トーチを移動軌跡T30で開始点から終了点まで移動させることをイメージしている。
【0061】
図3(B)に示されるように、
図2を用いて説明した教示作業により、ロボット制御装置100は、複数の教示点P1~P6における教示情報を教示情報記録部110に記録しながら、点P1に位置するロボット10を、点P6まで移動させる(移動軌跡T11)。
【0062】
図3(C)に示されるように、ロボット制御装置100は、教示作業において教示情報記録部110に記録された複数の教示点P1~P6を辿るようにロボット10を移動させることによって、干渉物を回避している(移動軌跡T21)。一方、仮に、点P1と点P6との間における教示点の記録を操作者のスキルに依存し、操作者によって点P3のみが教示点として記録された場合には、点P3と点P6との間の移動軌跡が適切に記録されず、ロボット10は、干渉物を回避できないおそれがあった(移動軌跡T22)。
【0063】
なお、記録要否判定部130は、所定距離(閾値)及び/又は所定角度(閾値)を設定し、ロボット10が当該閾値以上動作するか否かに基づいて、教示点における教示情報として記録するか否かを判定する基準としていたが、当該閾値は、上述のように固定値(例えば、50mm及び10deg等)を設定しても構わないし、教示作業の状況に応じて可変値としても構わない。
【0064】
例えば、所定距離(閾値)及び/又は所定角度(閾値)は、ロボット10の動作に要求される精密度に応じて設定されても構わないし、ロボット10を動作させる操作速度に応じて設定されても構わない。
【0065】
図4は、教示点として記録するか否かについて、ロボットの動作に要求される精密度及び/又はロボットを動作させる操作速度に応じて、移動距離及び回転角度の閾値が設定される一具体例を示す図である。
【0066】
図4において、ロボット10の動作に要求される精密度について高精度が要求されない(低精度でよい)場合及び教示作業中の操作速度が高速の場合には、閾値を大きく設定している(移動距離=100mm、回転角度=15deg)。一方、ロボット10の動作に要求される精密度について高精度が要求される場合及び教示作業中の操作速度が低速の場合には、閾値を小さく設定している(移動距離=50mm、回転角度=10deg)。
【0067】
具体例としては、干渉物が近くに存在せずラフな移動でよい場合には、ロボット10の動作は低精度でよく、閾値を上げることによって教示点間の距離を長くし、教示点数の記録を減少する。一方、溶接開始位置に接近する場合及び干渉物の近くを移動する場合には、ロボット10の動作には高精度が要求され、閾値を下げることによって教示点間の距離を短くし、教示点数の記録を増加する。
【0068】
また、教示作業中において、ロボット10を動作させる操作速度が高速ということは、操作者がラフに教示作業を行っていることが想定され、閾値を上げることによって教示点間の距離を長くし、教示点数の記録を減少する。一方、教示作業中において、ロボット10を動作させる操作速度が低速ということは、操作者が慎重に高精度に教示作業を行っていることが想定され、閾値を下げることによって教示点間の距離を短くし、教示点数の記録を増加する。操作者がロボット10を直接動作させるダイレクトティーチングによる教示作業を行う場合には、当該想定を適用することが好ましい。
【0069】
このように、所定距離(閾値)及び/又は所定角度(閾値)を、ロボット10の動作に要求される精密度及び/又はロボット10を動作させる操作速度に応じて設定すれば、状況に応じて、適切な位置又はタイミングで教示点を記録することができる。その結果、ロボット10が適切に干渉物を回避しつつ、タクトタイムを短縮することに繋がる。
【0070】
また、ここでは、ロボット10の動作に要求される精度について高精度及び低精度、教示作業中におけるロボット10を動作させる操作速度について高速及び低速のそれぞれ2段階の閾値を設定していたが、これに限定されるものではない。例えば、高精度、中精度及び低精度の3段階、高速、中速及び低速の3段階、さらには、レベル1~5等の5段階等、3段階以上に設定し、それぞれに応じた閾値を設けても構わない。閾値について、段階を多く設定すれば、状況に応じて、より適切な位置又はタイミングで教示点を記録することができるため、ロボット10がより適切に干渉物を回避しつつ、タクトタイムをさらに短縮することに繋がる。
【0071】
なお、段階的に設定される閾値は、ロボット10の動作に要求される精度及び/又は教示作業中におけるロボット10を動作させる操作速度によって設定されていたが、これに限定されるものではなく、例えば、操作者が状況に応じて閾値を変更するようにしても構わない。
【0072】
また、ここでは、閾値を段階的に設けて、状況に応じて、適切な位置又はタイミングで教示点を自動的に記録することを説明したが、全ての教示点を自動的に記録することに限定するものではなく、例えば、ロボット制御装置100は、記録指示受付部(図示せず)をさらに備えて、一部の教示点を手動で記録するようにしても構わない。
【0073】
記録指示受付部は、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録する記録指示を受け付ける。具体例としては、ロボットの10が直線移動や円移動等規則的に移動する場合、操作者が操作を迷う場合、操作者が検討しながら操作している場合、ロボット10に超高精度の動作が要求される場合、その他特殊事情の場合等がある。これらの場合には、教示点の自動記録機能を無効にし、操作者によって手動で適切な位置又はタイミングで教示点を記録するようにすればよい。
【0074】
[ロボット制御方法]
次に、教示作業において、ロボット10を動作させながら、複数の教示点における教示情報を教示情報記録部110に記録する方法について、具体的に詳しく説明する。
【0075】
図5は、本発明の一実施形態に係るロボット制御装置100が実行するロボット制御方法M100を示すフローチャートである。
図5において、ロボット制御方法M100は、ステップS110~S150を含み、各ステップは、ロボット制御装置100に含まれるプロセッサによって実行される。
【0076】
ステップS110では、ロボット制御装置100は、教示点の自動記録機能が有効か否かを判定する。例えば、操作者が教示点の自動記録機能を有効にし、又は、操作者が手動で教示点を記録したい場合には、当該自動記録機能を無効にしている。また、ロボット10を教示作業の開始位置まで移動させた際に、自動記録機能を有効にし、ロボット10を教示作業の終了位置まで移動させた際に、自動記録機能を無効にするようにしても構わない。
【0077】
ロボット制御装置100は、教示点の自動記録機能が有効であれば、ステップS120の処理に進み(ステップS110のYes)、無効であれば処理を終了する(ステップS110のNo)。
【0078】
ステップS120では、ロボット制御装置100は、ロボット10の現在の位置又は姿勢の少なくとも一方に関する情報を取得する。
【0079】
ステップS130では、ロボット制御装置100は、教示情報記録部110に記録されている教示情報のうち基準となるロボット10の位置又は姿勢の少なくとも一方を取得する。具体例としては、ロボット制御装置100は、教示点における教示情報として教示情報記録部110に直近に記録されたロボット10の位置又は姿勢の少なくとも一方を取得してもよい。
【0080】
ステップS140では、ロボット制御装置100は、ステップS120で取得したロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録するか否かを判定する。例えば、ロボット制御装置100は、ステップS120で取得したロボット10の現在の位置又は姿勢の少なくとも一方と、ステップS130で取得したロボット10の位置又は姿勢の少なくとも一方とを比較し、予め設定された閾値(移動距離及び/又は回転角度)以上の変位が生じているか否かによって判定する。
【0081】
ロボット制御装置100は、ステップS120で取得したロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録すると判定した場合、ステップS150の処理に進み(ステップS140のYes)、記録しないと判定した場合、ステップS110の処理に戻る(ステップS140のNo)。
【0082】
ステップS150では、ロボット制御装置100は、ステップS120で取得したロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録し、ステップS110の処理に戻る。
【0083】
以上のように、本発明の一実施形態に係るロボット制御装置100及びロボット制御方法M100によれば、ロボット情報取得部120は、ロボット10の現在の位置又は姿勢の少なくとも一方に関する情報を取得し、記録要否判定部130は、ロボット10が閾値(移動距離及び/又は回転角度)以上変位したかに基づいて、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定する。そして、制御部140は、教示情報として記録すると判定された場合、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録するように制御する。その結果、ロボット制御装置100は、適切な位置又はタイミングで教示点を記録することができるため、操作者のスキルへの依存度を軽減し、ロボットが干渉物を適切に回避することができる。
【0084】
なお、本実施形態では、記録要否判定部130は、ロボット10が閾値(移動距離及び/又は回転角度)以上変位したかに基づいて、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録するか否かを判定していたが、所定時間経過毎に、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録させるか否かを判定しても構わない。ここで、所定時間とは、ロボット10の位置や角度が変化して実際に動作しているように認識される時間のみならず、仮に、方向転換や処理の切り替え等によってロボット10の位置や角度に変化がなく停止しているように認識される場合があったとしても、当該停止している時間も経過時間に含めるようにしても構わない。
【0085】
例えば、所定時間(閾値)を1secとして、記録要否判定部130は、1sec経過する毎に、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として記録すると判定し、制御部140は、教示情報記録部110に記録するように制御しても構わない。
【0086】
さらに、所定時間(閾値)は、固定値を設定しても構わないし、教示作業の状況に応じて可変値としても構わない。具体的には、
図4を用いて説明したように、ロボット10の動作に要求される精密度及びロボット10を動作させる速度の少なくともいずれかに応じて、段階的に設定されても構わない。
【0087】
<その他>
上述した一実施形態では、ロボット10の現在の位置又は姿勢の少なくとも一方を教示点における教示情報として教示情報記録部110に記録することとしていたが、教示情報は、これに限定されるものではなく、その他の情報を教示情報として記録し、教示データに含まれるようにしても構わない。
【0088】
図6は、ロボットの動作に要求される精密度及び/又はロボットを動作させる操作速度に応じて、移動距離及び回転角度の閾値が設定されており、さらに教示情報として記録される要素の一具体例を示す図である。
図6において、ロボットの動作に要求される精密度及び/又はロボットを動作させる操作速度に応じて、移動速度、補間種別及び通過精度が教示情報として記録されるように示されている。
【0089】
例えば、ロボット10の動作に要求される精密度について低精度が要求される場合又は教示作業中の操作速度が高速の場合には、ロボット10を動作させる移動速度として100%(設定した基準速度)とし、関節補間動作を行い、さらに、当該教示点は低精度に通過するように教示情報を記録する。
【0090】
ロボット10の動作に要求される精密度について高精度が要求される場合又は教示作業中の操作速度が低速の場合には、ロボット10を動作させる移動速度として50%(設定した基準速度の半分程度の速度)とし、関節補間動作を行い、さらに、当該教示点は中精度に通過するように教示情報を記録する。
【0091】
ロボット10の動作に要求される精密度について超高精度が要求される場合又は教示作業中の操作速度が超低速の場合には、自動的に教示点を記録せずに、操作者によって手動で教示点を記録する。その際に、ロボット10を動作させる移動速度として50%未満(例えば、500cm/min等)とし、直線補間動作を行い、さらに、当該教示点は高精度に通過するように教示情報を記録する。
【0092】
このように、ロボット10を動作させる上で詳細な設定が教示情報に含まれるように教示情報記録部110に記録し、教示データが生成されることにより、ロボット10は、当該教示データに基づいて、より適切に、ロボットが干渉物を回避しつつ、タクトタイムを短縮することができる。
【0093】
図7は、ロボットの溶接処理における教示作業、及び教示作業中に記録される教示点の自動記録及び手動記録の一具体例を示す図である。
図7では、教示作業(手順1~14)において、ロボット10を動作させる操作速度に応じて教示点が記録される様子(自動記録及び手動記録)が示されている。
【0094】
操作者によって自動記録が有効とされ(手順1)、最初、ロボット10は高速で操作される(手順2)。この時、教示点を記録するか否かの基準となる閾値は、比較的大きい値が設定されているため、記録される教示点間の距離は長く、教示点数は少ない。
【0095】
ロボット10が溶接開始点に近づくに従って、操作者の操作が慎重になり、ロボット10は低速で操作される(手順3)。この時、教示点を記録するか否かの基準となる閾値は、比較的小さい値が設定されているため、記録される教示点間の距離は短く、教示点数は多い。
【0096】
ロボット10が溶接開始点の直前になると、操作者の操作がより慎重になり、ロボット10は超低速で操作される(手順4)。この時、教示点を自動的に記録しないと設定されており、ロボット10が溶接開始点に位置した際に、操作者によって手動で教示点が記録される(手順5)。
【0097】
ここで、操作者によって自動記録が無効とされ(手順6)、溶接処理が教示される(手順7)。
【0098】
そして、ロボット10が溶接終了点に位置した際に、操作者によって手動で教示点が記録される(手順8)。
【0099】
再度、操作者によって自動記録が有効とされ(手順9)、操作者は、慎重に、ロボット10を超低速で退避点まで移動させる(手順10)。この時、教示点を自動的に記録しないと設定されており、ロボット10が退避点に位置した際に、操作者によって手動で教示点が記録される(手順11)。
【0100】
その後、ロボット10は退避点から移動するように低速で操作される(手順12)。この時、教示点を記録するか否かの基準となる閾値は、比較的小さい値が設定されているため、記録される教示点間の距離は短く、教示点数は多い。
【0101】
ロボット10が退避点から遠ざかるに従って、操作者の操作もラフになり、ロボット10は高速で操作されて、初期(終了)位置まで移動する(手順13)。この時、教示点を記録するか否かの基準となる閾値は、比較的大きい値が設定されているため、記録される教示点間の距離は長く、教示点数は少ない。
【0102】
最後に、操作者によって自動記録が無効とされて処理は終了する(手順14)。
【0103】
このように、教示点の自動記録及び手動記録、さらには、教示作業においてロボット10を動作させる操作速度に応じて適切な位置又はタイミングで教示点を記録することができる。その結果、操作者のスキルへの依存度を軽減し、ロボット10が干渉物を適切に回避することができる。
【0104】
なお、本実施形態では、ロボット10は、溶接ロボットを想定して説明したが、これに限定されるものではなく、例えば、生産ラインにおいて部品を搬送する搬送ロボット及び部品を組み立てる組立ロボット等、教示データに従って動作するロボットであれば、その他のロボットであっても構わない。
【0105】
以上説明した実施形態は、本発明の理解を容易にするためのものであり、本発明を限定して解釈するためのものではない。実施形態が備える各要素並びにその配置、材料、条件、形状及びサイズ等は、例示したものに限定されるわけではなく適宜変更することができる。また、異なる実施形態で示した構成同士を部分的に置換し又は組み合わせることが可能である。
【符号の説明】
【0106】
10…ロボット、20…操作端末、100…ロボット制御装置、110…教示情報記録部、120…ロボット情報取得部、130…記録要否判定部、140…制御部、P1~P6…教示点、S…球、T10,T11,T20~T22,T30…移動軌跡、M100…ロボット制御方法、S110~S150…ロボット制御方法M100の各ステップ