JP6497102B2 - ロボットの制御装置及び制御方法 - Google Patents

ロボットの制御装置及び制御方法 Download PDF

Info

Publication number
JP6497102B2
JP6497102B2 JP2015024027A JP2015024027A JP6497102B2 JP 6497102 B2 JP6497102 B2 JP 6497102B2 JP 2015024027 A JP2015024027 A JP 2015024027A JP 2015024027 A JP2015024027 A JP 2015024027A JP 6497102 B2 JP6497102 B2 JP 6497102B2
Authority
JP
Japan
Prior art keywords
orientation
control point
speed
monitoring
calculated
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2015024027A
Other languages
English (en)
Other versions
JP2016147320A (ja
Inventor
慧 井手
慧 井手
大介 川瀬
大介 川瀬
尚哉 香川
尚哉 香川
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Denso Wave Inc
Original Assignee
Denso Wave Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Denso Wave Inc filed Critical Denso Wave Inc
Priority to JP2015024027A priority Critical patent/JP6497102B2/ja
Publication of JP2016147320A publication Critical patent/JP2016147320A/ja
Application granted granted Critical
Publication of JP6497102B2 publication Critical patent/JP6497102B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Manipulator (AREA)

Description

本発明は、ロボットの制御装置及び制御方法に関する。
従来、ロボットの手動操作時に、ロボットの制御点の移動速度が基準速度を超えた際に、移動速度が基準速度以下となるように動作目標位置を修正してロボットを動作させるものがある(特許文献1参照)。
特許第3994487号公報
しかしながら、ロボットの制御点として設定されるアームの先端部の移動速度を、基準速度以下となるように制御したとしても、アームの移動速度を十分に抑制することができない場合があることに本願発明者は着目した。
本発明は、こうした実情に鑑みてなされたものであり、アームの移動速度を十分に抑制することのできるロボットの制御装置及び制御方法を提供することを主たる目的とするものである。
第1の手段は、複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、前記制御点を目標まで動作させる際に動作軌道を設定するCP制御により前記制御点の位置及び姿勢を制御するロボットの制御装置であって、前記各回転部に設定された各監視部の現在の位置を算出する現在監視位置算出手段と、前記制御点の位置及び姿勢の動作周期における変化量を算出する変化量算出手段と、前記変化量算出手段により算出された前記変化量に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出手段と、前記現在監視位置算出手段により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出手段と、前記速度算出手段により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出手段により算出された前記変化量を低下させる低下手段と、前記低下手段により低下させられた前記変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出手段と、前記制御点の現在の位置及び姿勢が、前記位置姿勢算出手段によって算出された前記制御点の位置及び姿勢まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動手段と、を備えることを特徴とする。
上記構成によれば、ロボットのアームは複数の回転部を含んでおり、回転部は関節により互いに回転可能に連結されている。そして、アームの先端部が制御点として設定され、制御点を目標まで動作させる際に動作軌道を設定するCP制御により、制御点の現在の位置及び姿勢が制御される。
ここで、ロボットの制御点として設定されるアームの先端部の移動速度を、基準速度以下となるように制御したとしても、アーム(ロボット)の姿勢によっては、アームにおける制御点以外の部分の移動速度が基準速度よりも高くなる場合があることに本願発明者は着目した。
そこで上記構成では、各回転部に監視部が設定される。例えば、各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。そして、変化量算出手段により制御点の位置及び姿勢の動作周期における変化量が算出され、算出された変化量に基づいて、各監視部の動作周期後の位置が算出される。続いて、各監視部の現在の位置、及び各監視部の動作周期後の位置に基づいて、各監視部の速度が算出される。そして、算出された各監視部の速度が基準速度以下となるように、算出された制御点の位置及び姿勢の変化量が低下させられる。
続いて、制御点の低下させられた位置及び姿勢の変化量と、制御点の現在の位置及び姿勢とに基づいて、制御点の動作周期後の位置及び姿勢が算出される。そして、制御点の現在の位置及び姿勢が、算出された制御点の位置及び姿勢まで動作周期後に制御されるように、各サーボモータが駆動される。このため、各サーボモータの動作周期あたりに駆動される角度が小さくなり、各サーボモータの駆動される角速度が低下させられる。これにより、ロボットの制御点のみならず、各回転部に設定された監視部の速度を基準速度以下にすることができ、アームの移動速度を十分に抑制することができる。
さらに上記構成では、各監視部の速度を基準速度以下とすべく、制御点の位置及び姿勢の動作周期における変化量を低下させることで、全てのサーボモータの角速度を一括して低下させるため、全てのサーボモータの角速度を容易に低下させることもできる。したがって、各サーボモータの角速度を低下させる処理を簡素化することができる。
CP制御において、制御点を目標まで動作させる際に動作軌道として、直線動作軌道を設定して、2つの動作点間を直線で補間することがある。
この点、第2の手段では、前記変化量算出手段は、前記制御点を目標まで動作させる際に前記動作軌道として直線動作軌道を設定して前記変化量を算出し、前記低下手段は、前記直線動作軌道上において、前記変化量算出手段により算出された前記変化量を低下させる。
上記構成によれば、制御点を目標まで動作させる際に動作軌道として直線動作軌道が設定されて、制御点の位置及び姿勢の変化量が算出され、直線動作軌道上において、算出された変化量が低下させられる。このため、各サーボモータの角速度を低下させたとしても、制御点が直線動作軌道から外れることを抑制することができる。
また、CP制御において、制御点を目標まで動作させる際に動作軌道として、曲線動作軌道を設定して、3つの動作点間を曲線で補間することがある。
この点、第3の手段では、前記変化量算出手段は、前記制御点を目標まで動作させる際に前記動作軌道として曲線動作軌道を設定して前記変化量を算出し、前記低下手段は、前記曲線動作軌道上において、前記変化量算出手段により算出された前記変化量を低下させる。
上記構成によれば、制御点を目標まで動作させる際に動作軌道として曲線動作軌道が設定されて、制御点の位置及び姿勢の変化量が算出され、曲線動作軌道上において、算出された変化量が低下させられる。このため、各サーボモータの角速度を低下させたとしても、制御点が曲線動作軌道から外れることを抑制することができる。
第4の手段では、前記低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記変化量を低下させる。
上記構成では、算出された各監視部の速度のうち最大の速度と基準速度との比の値に基づいて、各サーボモータの角度の変化量が低下させられる。このため、速度が最大となる監視部の速度を基準速度以下とするように各サーボモータを駆動させる角速度を適切に低下させることができる。なお、最大の速度と基準速度との比の値とは、最大の速度を基準速度で割った値である(比の値=最大の速度/基準速度)。
第5の手段では、前記低下手段は、前記変化量を前記比の値で割ることにより、前記変化量を低下させる。
上記構成では、各サーボモータの角度の変化量を容易かつ適切に低下させることができる。
第6の手段では、前記各回転部を回転させる際に回転中心となる前記関節から最も離れた部分を、前記各回転部の前記監視部として設定する。
上記構成によれば、各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。このため、各回転部において、最も速度が高くなる可能性の高い部分を監視部に設定することができ、アームの移動速度を十分に抑制することができる。
速度算出手段としては、具体的には、第7の手段のように、前記各監視部の現在の位置と前記各監視部の動作周期後の位置との距離を前記動作周期で割ることにより前記各監視部の速度を算出するといった構成を採用することができる。
また、次周期監視位置算出手段としては、具体的には、第8の手段のように、前記位置姿勢算出手段により算出された前記制御点の動作周期後の位置及び姿勢を逆変換することで得られる前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出するといった構成を採用することができる。
第9の手段は、複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、前記制御点を目標まで動作させる際に動作軌道を設定するCP制御により前記制御点の位置及び姿勢を制御するロボットの制御方法であって、前記各回転部に設定された各監視部の現在の位置を算出する現在監視位置算出工程と、前記制御点の位置及び姿勢の動作周期における変化量を算出する変化量算出工程と、前記変化量算出工程により算出された前記変化量に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出工程と、前記現在監視位置算出工程により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出工程と、前記速度算出工程により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出工程により算出された前記変化量を低下させる低下工程と、前記低下工程により低下させられた前記変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出工程と、前記制御点の現在の位置及び姿勢が、前記位置姿勢算出工程によって算出された前記制御点の位置及び姿勢まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動工程と、を備えることを特徴とする。
上記工程によれば、第1の手段と同様の作用効果を奏することができる。
ロボット、コントローラ、及びティーチングペンダントの概要を示す図。 ロボットの特定姿勢を示す正面図。 アームの速度抑制制御の処理手順を示すフローチャート。 円弧動作軌道を示す模式図。
以下、垂直多関節型ロボットの制御装置に具体化した一実施形態について、図面を参照しつつ説明する。本実施形態のロボットは、例えば産業用ロボットとして機械組立工場などの組立システムにて用いられる。
はじめに、ロボット10の概要を図1に基づいて説明する。
同図に示すように、ロボット10は、回転部を互いに連結する各関節の回転中心軸線として、第1軸線J1、第2軸線J2、第3軸線J3、第4軸線J4、第5軸線J5、及び第6軸線J6を有する6軸ロボットである。これら各軸線における各部の動作角度は、それぞれサーボモータ等からなる駆動源の駆動、及び減速機等による減速を通じて調整される。サーボモータは、いずれも正逆両方向の回転が可能であり、サーボモータの駆動により原点位置を基準として各回転部が動作(駆動)する。各サーボモータには、その出力軸を制動する電磁ブレーキと、出力軸の回転角度に応じたパルス信号を出力するエンコーダとがそれぞれ設けられている。
ロボット10は、床に設置されており、第1軸線J1が鉛直方向へ延びている。ロボット10において、基台11は、床等に固定される固定部12と、その固定部12の上方に設けられる回転部13(第1回転部)とを有しており、回転部13が第1軸線J1を回転中心として水平方向に回転可能になっている。すなわち、回転部13は、第1軸線J1の方向に延びるとともに、固定部12により第1軸線J1を中心として回転可能に支持されている。
下アーム15(第2回転部)が、水平方向に延びる第2軸線J2を回転中心として、時計回り方向又は反時計回り方向に回転可能に連結されている。すなわち、下アーム15は、第1軸線J1に直交する平面に含まれる第2軸線J2から離れる方向へ延びるとともに、回転部13により第2軸線J2を中心として回転可能に支持されている。下アーム15は、基本姿勢として鉛直方向に延びる向きに設けられている。
下アーム15の上端部には、上アーム16が、水平方向に延びる第3軸線J3を回転中心として、時計回り方向又は反時計回り方向に回転可能に連結されている。すなわち、上アーム16は、第2軸線J2に平行な第3軸線J3から離れる方向へ延びるとともに、下アーム15により第3軸線J3を中心として回転可能に支持されている。上アーム16は、基本姿勢として水平方向に延びる向きに設けられている。
上アーム16は、基端側(回転の際に第3軸線J3を回転中心とする関節側)と先端側とで2つのアーム部に分割されて構成されており、基端側は第1上アーム16A(第3回転部)、先端側は第2上アーム16B(第4回転部)となっている。第2上アーム16Bは、上アーム16の長手方向に延びる第4軸線J4を回転中心として、第1上アーム16Aに対してねじり方向に回転可能になっている。すなわち、第2上アーム16Bは、第3軸線J3に直交する平面に含まれる第4軸線J4の方向に延びるとともに、第1上アーム16Aにより第4軸線J4を中心として回転可能に支持されている。
上アーム16(詳しくは第2上アーム16B)の先端部には、手首部17(第5回転部)が設けられている。手首部17は、水平方向に延びる第5軸線J5を回転中心として、第2上アーム16Bに対して回転可能になっている。すなわち、手首部17は、第4軸線J4に直交する第5軸線J5から離れる方向へ延びるとともに、第2上アーム16Bにより第5軸線J5を中心として回転可能に支持されている。
手首部17の先端部には、ワークやツール等を取り付けるためのハンド部18(第6回転部)が設けられている。ハンド部18は、その中心線である第6軸線J6を回転中心として、ねじり方向に回転可能になっている。すなわち、ハンド部18は、第5軸線J5に直交する第6軸線J6の方向に延びるとともに、手首部17により第6軸線J6を中心として回転可能に支持されている。以上のように、回転部13、下アーム15、上アーム16、手首部17、及びハンド部18によって、ロボット10のアームが構成されている。
コントローラ30(制御装置)は、CPU、ROM、RAM、駆動回路、及び位置検出回路等を備えている。ROMは、ロボット10のシステムプログラムや動作プログラム等を記憶している。RAMは、これらのプログラムを実行する際にパラメータの値等を記憶する。位置検出回路には、各エンコーダの検出信号がそれぞれ入力される。位置検出回路は、各エンコーダの検出信号に基づいて、各関節に設けられたサーボモータの回転角度を検出する。
CPUは、予め設定された動作プログラム(プログラム)を実行することにより、位置検出回路から入力される位置情報に基づいて、アーム先端部の制御点の位置及び姿勢を制御する。詳しくは、CPUは、CP(Continuous Path)制御を行う。CP制御では、アーム先端部の制御点を目標まで動作させる際に制御点の動作軌道(位置及び姿勢)が時間関数として設定される。CPUは、CP制御により、制御点の位置及び姿勢が動作軌道に沿うように、アームにおける各関節の回転角度(アームの姿勢)を制御する。本実施形態では、制御点として、アームのハンド部18の中心点18aであるTCP(Tool Center Point)が設定されている。また、CPUは、TCPの位置及び姿勢に基づいて、この位置及び姿勢を実現するための各関節の角度を逆変換によって算出する機能と、各関節の角度に基づいて、TCPの位置及び姿勢を順変換によって算出する機能とを有する。
本実施形態では、コントローラ30は、ロボット10のティーチング時(手動操作時)において、ロボット10のアームの移動速度を基準速度以下に抑制する速度抑制制御を実行する。基準速度は、JISやISO等の規格により、例えば250mm/sに規定されている。
ティーチングペンダント40(操作機)は、CPU、ROM、及びRAMを含むマイクロコンピュータ、各種の手動操作キー、並びにディスプレイ42等を備えている。ペンダント40は、コントローラ30に接続されており、コントローラ30と通信可能となっている。オペレータ(使用者)は、このペンダント40を手動操作して、ロボット10の動作プログラムの作成、修正、登録、各種パラメータの設定を行うことができる。動作プログラムの修正等を行うティーチングでは、作業において制御点であるTCPが通過する教示点(動作点)を教示する。そして、オペレータは、コントローラ30を通じて、ティーチングされた動作プログラムに基づきロボット10を動作させることができる。換言すれば、コントローラ30は、予め設定された動作プログラム及びペンダント40の操作に基づいて、ロボット10のアームの動作を制御する。
ここで、ロボット10のティーチング時(手動操作時)において、TCPの移動速度を、基準速度以下となるように制御したとしても、ロボット10の姿勢によっては、アームにおけるTCP以外の部分の移動速度が基準速度よりも高くなる場合があることに本願発明者は着目した。例えば、ロボット10が図2に示す姿勢である場合、回転部13を回転させると、TCP(点C5)の移動速度は基準速度よりも十分に小さくなる。しかしながら、下アーム15の先端部(点C2)及び上アーム16の一方の端部(点C3)の移動速度が、基準速度よりも高くなる場合がある。
また、CP制御では、TCPが特異点を通過する際にロボット10の姿勢が急激に変化することがあり、この場合も上記点C2や上記点C3の移動速度が基準速度よりも高くなるおそれがある。さらに、TCPを動作軌道上で移動させる際に、関節の可動範囲を超えることで関節が急激に逆回転することがあり、この場合も上記点C2や上記点C3の移動速度が基準速度よりも高くなるおそれがある。
そこで、各回転部を回転させる際に回転中心となる関節(各回転部の回転中心軸線)から最も離れた部分を、各回転部の監視部(点C1〜C5)として設定する。例えば、下アーム15を回転させる際に回転中心となる関節(回転部13と下アーム15との連結部)から最も離れた点C2を、下アーム15の監視部として設定する。同様にして、上アーム16を回転させる際に回転中心となる関節(下アーム15と上アーム16との連結部)から最も離れた点C3,C4を、上アーム16の監視部として設定する等を行う。なお、上アーム16等の回転部に他の部品(パーツ)が取り付けられている場合には、その部品の先端部等を監視部として設定してもよい。そして、全ての監視部の移動速度が基準速度以下となるように、各サーボモータの角速度を抑制する。
図3は、ロボット10のアームの移動速度を基準速度以下に抑制する速度抑制制御の処理手順を示すフローチャートである。この一連の処理は、コントローラ30によって、アームを動作させる動作周期Tr毎に繰り返し実行される。動作周期Tr(制御周期)は、例えば8msである。ここでは、制御点を目標まで動作させる際に動作軌道として、直線動作軌道を設定する場合(直線補間)を例に説明する。
この一連の処理では、まず、各サーボモータの現在の角度θk1を検出する(S11)。詳しくは、各サーボモータに設けられたエンコーダの検出信号に基づいて、位置検出回路により各サーボモータの現在の角度θk1を検出する。なお、kは、第1軸線J1〜第6軸線J6にそれぞれ対応する1〜6の数字である。
続いて、各サーボモータの現在の角度θk1及び各回転部の大きさに基づいて、各監視部の現在の位置Pi1を算出する(S12)。iは、点C1〜C5にそれぞれ対応する1〜5の数字である。現在の位置Pi1の算出手法の具体例について説明すると、まず、各回転部の大きさと各監視部の設定された位置とに基づいて、各回転部の回転中心から監視部までの距離を算出する。そして、各サーボモータの現在の角度θk1、各回転部の大きさ、及び上記距離を組み合わせることにより、点C1〜C5の位置を算出する。
続いて、TCPの位置及び姿勢の動作周期Trにおける変化量ΔPを算出する(S13)。具体的には、ティーチング時において、TCPが通過する点として教示された教示点に基づいて、直線動作軌道を設定する。そして、直線動作軌道上における位置及び姿勢の動作周期Trにおける変化量ΔPを算出する。
続いて、TCPの動作周期Tr後の位置及び姿勢P2を算出する(S14)。詳しくは、TCPの現在の位置及び姿勢P1に、TCPの位置及び姿勢の変化量ΔPを加算することにより、TCPの動作周期Tr後の位置及び姿勢P2を算出する(P2=P1+ΔP)。
続いて、各サーボモータの動作周期Tr後の角度θk2を算出する(S15)。詳しくは、TCPの動作周期Tr後の位置及び姿勢P2を逆変換することで、各サーボモータの動作周期Tr後の角度θk2を算出する。
続いて、各監視部の動作周期Tr後の位置Pi2を算出する(S16)。iは、点C1〜C5にそれぞれ対応する1〜5の数字である。ここで、動作周期Tr後の位置Pi2は、S12の処理と同様にして、各サーボモータの動作周期Tr後の角度θk2及び各回転部の大きさに基づいて算出すればよい。
続いて、各監視部の速度Viを算出する(S17)。詳しくは、各監視部の現在の位置Pi1と動作周期Tr後の位置Pi2との距離を動作周期Trで割ることにより、速度Viを算出する。なお、iは、点C1〜C5にそれぞれ対応する1〜5の数字である。
続いて、各監視部の速度Viのうち最大の速度Viである最大速度Vmxを算出し(S18)、最大速度Vmxが基準速度Vlmよりも高いか否か判定する(S19)。この判定において、最大速度Vmxが基準速度Vlmよりも高いと判定した場合(S19:YES)、最大速度Vmxと基準速度Vlmとの比の値αを算出する(S20)。すなわち、α=Vmx/Vlmの式により、比の値αを算出する(α>1)。
続いて、TCPの位置及び姿勢の動作周期Trにおける変化量ΔPを比の値αで割った値を、新たな変化量ΔPとする(S21)。すなわち、比の値αに基づいて、変化量ΔPを低下させる。ここでは、設定した直線動作軌道上において、TCPの位置及び姿勢の変化量ΔPを低下させる。TCPの姿勢の変化量については、直線動作軌道上においてTCPの位置の変化量を低下させる比率と同一の比率で低下させる。なお、ΔP=V×Trであるため、TCPの位置及び姿勢の変化速度Vを比の値αに基づいて低下させると考えることもできる。そして、新たに算出された変化量ΔPを用いて、S14の処理から再度実行する。
一方、S19の判定において、最大速度Vmxが基準速度Vlm以下であると判定した場合(S19:NO)、TCPの現在の位置及び姿勢P1が、TCPの動作周期Tr後の位置及び姿勢P2まで動作周期Tr後に制御されるように各サーボモータを駆動する(S22)。ここでは、S21の処理を経由している場合、S21の処理で新たに算出された位置及び姿勢の変化量ΔPを現在の位置及び姿勢P1に加算した位置及び姿勢P2まで、動作周期Tr後に制御されるように各サーボモータを駆動する。そして、この一連の処理を一旦終了する(END)。
なお、S12の処理が現在監視位置算出手段としての処理(現在監視位置算出工程)に相当し、S13の処理が変化量算出手段としての処理(変化量算出工程)に相当し、S16の処理が次周期監視位置算出手段としての処理(次周期監視位置算出工程)に相当し、S17の処理が速度算出手段としての処理(速度算出工程)に相当する。また、S21の処理が低下手段としての処理(低下工程)に相当し、S21及びS14の処理が位置姿勢算出手段としての処理(位置姿勢算出工程)に相当し、S22の処理が駆動手段としての処理(駆動工程)に相当する。
以上詳述した本実施形態は、以下の利点を有する。
・各回転部に設定された監視部(点C1〜C5)の現在の位置Pi1、及び各監視部の動作周期Tr後の位置Pi2に基づいて、各監視部の速度Viが算出される。そして、算出された各監視部の速度Viが基準速度Vlm以下となるように、TCPの動作周期Trにおける位置及び姿勢の変化量ΔPが低下させられる。そして、低下させられた位置及び姿勢の変化量ΔPと、TCPの現在の位置及び姿勢P1との加算値が、TCPの動作周期Tr後の位置及び姿勢P2として新たに算出される。TCPの現在の位置及び姿勢P1が、算出されたTCPの動作周期Tr後の位置及び姿勢P2まで動作周期Tr後に制御されるように、各サーボモータが駆動される。このため、各サーボモータの動作周期Trあたりに駆動される角度が小さくなり、各サーボモータの駆動される角速度が低下させられる。これにより、ロボットのTCPのみならず、各回転部に設定された監視部の速度を基準速度Vlm以下にすることができ、アームの移動速度を十分に抑制することができる。
・TCPの位置及び姿勢の動作周期Trにおける変化量ΔPを低下させることで、全てのサーボモータの角速度を一括して低下させるため、全てのサーボモータの角速度を容易に低下させることもできる。したがって、各サーボモータの角速度を低下させる処理を簡素化することができる。
・TCPを目標まで動作させる際に動作軌道として直線動作軌道が設定されて、TCPの位置及び姿勢の変化量ΔPが算出され、直線動作軌道上において、算出された変化量ΔPが低下させられる。このため、各サーボモータの角速度を低下させたとしても、TCPが直線動作軌道から外れることを抑制することができる。
・最大速度Vmxと基準速度Vlmとの比の値で位置及び姿勢の変化量ΔPを割ることにより、位置及び姿勢の変化量ΔPが低下させられる。このため、TCPの位置及び姿勢の変化量ΔPを容易かつ適切に低下させることができる。
・各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。このため、各回転部において、最も速度が高くなる可能性の高い部分を監視部に設定することができ、アームの移動速度を十分に抑制することができる。
なお、上記実施形態を以下のように変更して実施することもできる。
・CP制御において、TCPを目標まで動作させる際に動作軌道として、円弧動作軌道(曲線動作軌道)を設定して、3つの動作点間を円弧(曲線)で補間してもよい。図4に示すように、TCPの現在の位置及び姿勢P1から、点Oを中心とする円弧動作軌道により、動作周期Tr後に位置及び姿勢P2まで移動させる場合を例に説明する。ここでは、上記実施形態との相違点について説明する。
この場合、図3のS13では、TCPの位置及び姿勢の動作周期Trにおける変化量ΔPを算出する(S13)。具体的には、ティーチング時において、TCPが通過する点として教示された教示点に基づいて、円弧動作軌道が設定される。そして、円弧動作軌道上における位置及び姿勢の動作周期Trにおける変化量ΔPが算出される。
また、図3のS21では、TCPの位置及び姿勢の動作周期Trにおける変化量ΔPを比の値αで割った値を、新たな変化量ΔPとする(S21)。すなわち、比の値αに基づいて、変化量ΔPを低下させる。ここでは、設定した円弧動作軌道上において、TCPの位置及び姿勢の変化量ΔPを低下させる。図4に示すように、位置及び姿勢P1のうちの位置P1pは、基準線zと線分OP1とのなす角度θ1を変数とする関数fにより、P1p=f(θ1)で表される。同様にして、位置及び姿勢P2のうちの位置P2p=f(θ2)で表される。ここで、P2p=f(θ1+Δθ)であるため、位置の変化量ΔPp=f(θ1+Δθ)−f(θ1)で表される。このため、位置の変化量ΔPpを低下させるためには、角度の変化量Δθを低下させればよい。また、TCPの姿勢の変化量については、円弧動作軌道上においてTCPの位置の変化量ΔPpを低下させる比率と同一の比率で低下させる。
そして、図3のS22では、TCPの現在の位置及び姿勢P1が、TCPの動作周期Tr後の位置及び姿勢P2まで動作周期Tr後に制御されるように各サーボモータを駆動する(S22)。その際に、位置及び姿勢P1と位置及び姿勢P2との間は、円弧動作軌道により補間する。S21の処理を経由している場合、S21の処理で新たに算出された位置及び姿勢の変化量ΔP/αを現在の位置及び姿勢P1に加算した位置及び姿勢P3まで、動作周期Tr後に制御されるように各サーボモータを駆動する。ここで、位置及び姿勢P3のうちの位置P3p=f(θ1+Δθ/α)で表される(α=Vmx/Vlm)。その他の処理は、上記実施形態と同様である。
上記構成によれば、TCPを目標まで動作させる際に動作軌道として円弧動作軌道(曲線動作軌道)が設定されて、TCPの位置及び姿勢の変化量ΔPが算出され、円弧動作軌道上において、算出された変化量ΔPが低下させられる。このため、各サーボモータの角速度を低下させたとしても、TCPが円弧動作軌道から外れることを抑制することができる。なお、曲線動作軌道として、円弧動作軌道に限らず、スプライン動作軌道(自由曲線動作軌道)等を採用することもできる。その場合も、上記制御と同様にして、媒介変数(角度θ等)の変化量(Δθ等)を低下させればよい。
・図3のS19において、最大速度Vmxが基準速度Vlmよりも高いか否か判定したが、最大速度Vmxが、基準速度Vlmよりも若干高く設定した判定速度よりも高いか否か判定してもよい。この場合は、アームの速度抑制制御を迅速に終了することができる。
・図3のS21において、位置及び姿勢の変化量ΔPを比の値αで割ることにより、位置及び姿勢の変化量ΔPを低下させたが、位置及び姿勢の変化量ΔPを比の値αよりも若干大きい値で割ることにより、位置及び姿勢の変化量ΔPを低下させてもよい。この場合も、アームの速度抑制制御を迅速に終了することができる。
・上記実施形態では、基準速度Vlmとして、JISやISO等の規格により規定された250mm/sを用いたが、それよりも若干低い速度、例えば230mm/sを基準速度Vlmとして用いてもよい。この場合、アームの移動速度を、確実かつ容易に250mm/sよりも低下させることができる。
・上記実施形態において、垂直多関節型のロボット10に代えて、水平多関節型のロボット等を採用することもできる。
10…ロボット、13…回転部、15…下アーム、16…上アーム、16A…第1上アーム、16B…第2上アーム、17…手首部、18…ハンド部、30…コントローラ。

Claims (8)

  1. 複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、前記制御点を目標まで動作させる際に動作軌道を設定するCP制御により前記制御点の位置及び姿勢を制御するロボットの制御装置であって、
    前記各回転部に設定された各監視部の現在の位置を算出する現在監視位置算出手段と、
    前記制御点の位置及び姿勢の動作周期における変化量を算出する変化量算出手段と、
    前記変化量算出手段により算出された前記変化量に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出手段と、
    前記現在監視位置算出手段により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出手段と、
    前記速度算出手段により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出手段により算出された前記変化量を低下させる低下手段と、
    前記低下手段により低下させられた前記変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出手段と、
    前記制御点の現在の位置及び姿勢が、前記位置姿勢算出手段によって算出された前記制御点の位置及び姿勢まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動手段と、
    を備え
    前記次周期監視位置算出手段は、前記位置姿勢算出手段により算出された前記制御点の動作周期後の位置及び姿勢を逆変換することで得られる前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出することを特徴とするロボットの制御装置。
  2. 前記変化量算出手段は、前記制御点を目標まで動作させる際に前記動作軌道として直線動作軌道を設定して前記変化量を算出し、
    前記低下手段は、前記直線動作軌道上において、前記変化量算出手段により算出された前記変化量を低下させる請求項1に記載のロボットの制御装置。
  3. 前記変化量算出手段は、前記制御点を目標まで動作させる際に前記動作軌道として曲線動作軌道を設定して前記変化量を算出し、
    前記低下手段は、前記曲線動作軌道上において、前記変化量算出手段により算出された前記変化量を低下させる請求項1に記載のロボットの制御装置。
  4. 前記低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記変化量を低下させる請求項1〜3のいずれか1項に記載のロボットの制御装置。
  5. 前記低下手段は、前記変化量を前記比の値で割ることにより、前記変化量を低下させる請求項4に記載のロボットの制御装置。
  6. 前記各回転部を回転させる際に回転中心となる前記関節から最も離れた部分を、前記各回転部の前記監視部として設定する請求項1〜5のいずれか1項に記載のロボットの制御装置。
  7. 前記速度算出手段は、前記各監視部の現在の位置と前記各監視部の動作周期後の位置との距離を前記動作周期で割ることにより前記各監視部の速度を算出する請求項1〜6のいずれか1項に記載のロボットの制御装置。
  8. 複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、前記制御点を目標まで動作させる際に動作軌道を設定するCP制御により前記制御点の位置及び姿勢を制御するロボットの制御方法であって、
    前記各回転部に設定された各監視部の現在の位置を算出する現在監視位置算出工程と、
    前記制御点の位置及び姿勢の動作周期における変化量を算出する変化量算出工程と、
    前記変化量算出工程により算出された前記変化量に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出工程と、
    前記現在監視位置算出工程により算出された前記各監視部の現在の位置と、前記次周期監視位置算出工程により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出工程と、
    前記速度算出工程により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出工程により算出された前記変化量を低下させる低下工程と、
    前記低下工程により低下させられた前記変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出工程と、
    前記制御点の現在の位置及び姿勢が、前記位置姿勢算出工程によって算出された前記制御点の位置及び姿勢まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動工程と、
    を備え
    前記次周期監視位置算出工程では、前記位置姿勢算出工程により算出された前記制御点の動作周期後の位置及び姿勢を逆変換することで得られる前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出することを特徴とするロボットの制御方法。
JP2015024027A 2015-02-10 2015-02-10 ロボットの制御装置及び制御方法 Active JP6497102B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015024027A JP6497102B2 (ja) 2015-02-10 2015-02-10 ロボットの制御装置及び制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015024027A JP6497102B2 (ja) 2015-02-10 2015-02-10 ロボットの制御装置及び制御方法

Publications (2)

Publication Number Publication Date
JP2016147320A JP2016147320A (ja) 2016-08-18
JP6497102B2 true JP6497102B2 (ja) 2019-04-10

Family

ID=56690862

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015024027A Active JP6497102B2 (ja) 2015-02-10 2015-02-10 ロボットの制御装置及び制御方法

Country Status (1)

Country Link
JP (1) JP6497102B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11212619A (ja) * 1998-01-26 1999-08-06 Yaskawa Electric Corp 移動時間決定方法
US7047107B2 (en) * 2001-02-22 2006-05-16 Mitsubishi Denki Kabushiki Kaisha Robot control apparatus
JP5346217B2 (ja) * 2009-01-21 2013-11-20 川崎重工業株式会社 多軸ロボット及びその速度制御装置
JP5726052B2 (ja) * 2011-03-08 2015-05-27 株式会社神戸製鋼所 多関節型ロボットの制御装置,制御方法及び制御プログラム

Also Published As

Publication number Publication date
JP2016147320A (ja) 2016-08-18

Similar Documents

Publication Publication Date Title
JP6379853B2 (ja) ロボットの制御装置及び制御方法
US11116593B2 (en) Robot system
JP6238628B2 (ja) ロボット装置、ロボット制御方法、ロボット制御プログラム及びロボット装置を用いた部品の製造方法
US9481088B2 (en) Robot control device, robot, and robot system
WO2013180222A1 (ja) 多関節ロボットの軌跡制御装置および制御方法
JP2015030078A5 (ja) ロボット装置、ロボット制御方法、ロボット制御プログラム及びロボット装置を用いた部品の製造方法
TWI704039B (zh) 機械臂奇異點控制方法及系統
JP2016028842A (ja) アクチュエータシステム
JP2017061022A (ja) ロボットの制御装置
JP2015205302A (ja) シーム溶接システム、シーム溶接方法および被溶接物の生産方法
JP4825614B2 (ja) 多関節リンク機構の軌跡制御装置
JP6497102B2 (ja) ロボットの制御装置及び制御方法
US11878423B2 (en) Robot system
US11964391B2 (en) Robot system
JP5382148B2 (ja) ロボットの動作制御装置及びその動作制御方法
JP2006015431A (ja) ロボットの制御装置及び制御方法
JP2016147322A (ja) ロボットの制御装置及び制御方法
JP6547319B2 (ja) ロボットの制御装置及び制御方法
CN105415363A (zh) 位移装置、机器人及机器人奇异点处理方法
JP6497101B2 (ja) ロボットの制御装置及び制御方法
JP2016147321A (ja) ロボットの制御装置及び制御方法
JP6429977B2 (ja) ロボット装置及びロボット制御方法
JP6444092B2 (ja) 人の動作支援装置
JP2005329521A (ja) 多関節型ロボット
JP6547320B2 (ja) ロボットの制御装置及び制御方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20171012

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20181009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20181016

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181211

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20190212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190225

R150 Certificate of patent or registration of utility model

Ref document number: 6497102

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250