JP2016147322A - ロボットの制御装置及び制御方法 - Google Patents
ロボットの制御装置及び制御方法 Download PDFInfo
- Publication number
- JP2016147322A JP2016147322A JP2015024029A JP2015024029A JP2016147322A JP 2016147322 A JP2016147322 A JP 2016147322A JP 2015024029 A JP2015024029 A JP 2015024029A JP 2015024029 A JP2015024029 A JP 2015024029A JP 2016147322 A JP2016147322 A JP 2016147322A
- Authority
- JP
- Japan
- Prior art keywords
- operation cycle
- angle
- calculating
- calculated
- speed
- 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.)
- Pending
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
【課題】アームの移動速度を十分に抑制できるロボットの制御装置及び制御方法を提供する。
【解決手段】コントローラ30は、複数の回転部13〜18と、回転部を互いに回転可能に連結する関節と、各回転部を駆動するサーボモータと、を含むアームを備えるロボット10に適用される。コントローラ30は、アームのTCPの現在の位置及び姿勢を動作周期後の位置及び姿勢まで制御するためのTCPの位置及び姿勢の変化量を算出する手段と、各回転部に設定された各監視部の速度が基準速度以下となるように上記変化量を低下させる手段と、上記低下させられた変化量と、TCPの現在の位置及び姿勢とに基づいて、TCPの動作周期後の位置及び姿勢を算出する手段と、算出された動作周期後の位置及び姿勢を逆変換することで得られる各サーボモータの動作周期後の角度まで、各サーボモータの現在の角度が制御されるように、各サーボモータを駆動させる手段とを備える。
【選択図】 図1
【解決手段】コントローラ30は、複数の回転部13〜18と、回転部を互いに回転可能に連結する関節と、各回転部を駆動するサーボモータと、を含むアームを備えるロボット10に適用される。コントローラ30は、アームのTCPの現在の位置及び姿勢を動作周期後の位置及び姿勢まで制御するためのTCPの位置及び姿勢の変化量を算出する手段と、各回転部に設定された各監視部の速度が基準速度以下となるように上記変化量を低下させる手段と、上記低下させられた変化量と、TCPの現在の位置及び姿勢とに基づいて、TCPの動作周期後の位置及び姿勢を算出する手段と、算出された動作周期後の位置及び姿勢を逆変換することで得られる各サーボモータの動作周期後の角度まで、各サーボモータの現在の角度が制御されるように、各サーボモータを駆動させる手段とを備える。
【選択図】 図1
Description
本発明は、ロボットの制御装置及び制御方法に関する。
従来、ロボットの手動操作時に、ロボットの制御点の移動速度が基準速度を超えた際に、移動速度が基準速度以下となるように動作目標位置を修正してロボットを動作させるものがある(特許文献1参照)。
しかしながら、ロボットの制御点として設定されるアームの先端部の移動速度を、基準速度以下となるように制御したとしても、アームの移動速度を十分に抑制することができない場合があることに本願発明者は着目した。
本発明は、こうした実情に鑑みてなされたものであり、アームの移動速度を十分に抑制することのできるロボットの制御装置及び制御方法を提供することを主たる目的とするものである。
第1の手段は、複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、PTP制御により前記制御点の位置及び姿勢を制御するロボットの制御装置であって、前記各サーボモータの動作周期後の角度を算出する角度算出手段と、前記各回転部に設定された監視部の現在の位置を算出する現在監視位置算出手段と、前記角度算出手段により算出された角度に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出手段と、前記現在監視位置算出手段により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出手段と、前記制御点の現在の位置及び姿勢を、前記制御点の動作周期後の位置及び姿勢まで制御するための前記制御点の位置及び姿勢の変化量を算出する変化量算出手段と、前記速度算出手段により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出手段により算出された変化量を低下させる低下手段と、前記低下手段により低下させられた変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出手段と、前記位置姿勢算出手段により算出された位置及び姿勢を逆変換することで得られる前記各サーボモータの動作周期後の角度で、前記角度算出手段により算出された前記各サーボモータの動作周期後の角度を更新する更新手段と、前記各サーボモータの現在の角度が、前記更新手段によって更新された前記各サーボモータの角度まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動手段と、を備えることを特徴とする。
上記構成では、ロボットのアームは複数の回転部を含んでおり、回転部は関節により互いに回転可能に連結されている。そして、アームの先端部が制御点として設定され、PTP制御により、制御点の現在の位置及び姿勢が制御される。
ここで、ロボットの制御点として設定されるアームの先端部の移動速度を、基準速度以下となるように制御したとしても、アーム(ロボット)の姿勢によっては、アームにおける制御点以外の部分の移動速度が基準速度よりも高くなる場合があることに本願発明者は着目した。
そこで上記構成では、各回転部に監視部が設定される。例えば、各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。そして、角度算出手段により各サーボモータの動作周期後の角度が算出され、算出された角度に基づいて、各監視部の動作周期後の位置が算出される。続いて、各監視部の現在の位置、及び各監視部の動作周期後の位置に基づいて、各監視部の速度が算出される。そして、算出された各監視部の速度が基準速度以下となるように、制御点の現在の位置及び姿勢を動作周期後の位置及び姿勢まで制御するための制御点の位置及び姿勢の変化量が低下させられる。
続いて、制御点の低下させられた位置及び姿勢の変化量と、制御点の現在の位置及び姿勢とに基づいて、制御点の動作周期後の位置及び姿勢が新たに算出される。そして、新たに算出された位置及び姿勢を逆変換することで得られる各サーボモータの動作周期後の角度で、角度算出手段により算出された各サーボモータの動作周期後の角度が更新される。そして、各サーボモータの現在の角度が、更新された各サーボモータの角度まで動作周期後に制御されるように、各サーボモータが駆動される。このため、各サーボモータの動作周期あたりに駆動される角度が小さくなり、各サーボモータの駆動される角速度が低下させられる。これにより、ロボットの制御点のみならず、各回転部に設定された監視部の速度を基準速度以下にすることができ、アームの移動速度を十分に抑制することができる。
さらに上記構成では、各監視部の速度を基準速度以下とすべく、全てのサーボモータの角速度を、制御点の位置及び姿勢の変化量を低下させることにより一括して低下させるため、全てのサーボモータの角速度を容易に低下させることもできる。
なお、速度算出手段としては、具体的には、第5の手段のように、前記各監視部の現在の位置と前記各監視部の動作周期後の位置との距離を前記動作周期で割ることにより前記各監視部の速度を算出するといった構成を採用することができる。
また、次周期監視位置算出手段としては、具体的には、第6の手段のように、前記角度算出手段により算出された前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出するといった構成を採用することができる。
さらに、変化量算出手段としては、具体的には、第7の手段のように、前記各サーボモータの動作周期後の角度を順変換することで得られる前記制御点の動作周期後の位置及び姿勢と、前記制御点の現在の位置及び姿勢との差分を前記変化量として算出するといった構成を採用することができる。
第2の手段では、前記低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記変化量を低下させる。
上記構成では、算出された各監視部の速度のうち最大の速度と基準速度との比の値に基づいて、制御点の位置及び姿勢の変化量が低下させられる。上記比の値を用いることにより、基準速度に対する最大の速度の超過分を反映して上記変化量を低下させることができる。なお、最大の速度と基準速度との比の値とは、最大の速度を基準速度で割った値である(比の値=最大の速度/基準速度)。
第3の手段では、前記低下手段は、前記変化量を前記比の値で割ることにより、前記変化量を低下させる。
上記構成では、制御点の位置及び姿勢の変化量を上記比の値で割るといった簡単な演算を用いるため、上記変化量を容易に低下させることができる。さらに上記構成では、制御点の位置及び姿勢の変化量を上記比の値で割るといった演算を用いるため、上記変化量を一定の法則から定まる比率で低下させることができ、上記変化量の低下分をオペレータが予測しやすくなる。
第4の手段では、前記各回転部を回転させる際に回転中心となる前記関節から最も離れた部分を、前記各回転部の前記監視部として設定する。
上記構成によれば、各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。このため、各回転部において、最も速度が高くなる可能性の高い部分を監視部に設定することができ、アームの移動速度を十分に抑制することができる。
第8の手段は、複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、PTP制御により前記制御点の位置及び姿勢を制御するロボットの制御方法であって、前記各サーボモータの動作周期後の角度を算出する角度算出工程と、前記各回転部に設定された監視部の現在の位置を算出する現在監視位置算出工程と、前記角度算出工程により算出された角度に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出工程と、前記現在監視位置算出工程により算出された前記各監視部の現在の位置と、前記次周期監視位置算出工程により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出工程と、前記制御点の現在の位置及び姿勢を、前記制御点の動作周期後の位置及び姿勢まで制御するための前記制御点の位置及び姿勢の変化量を算出する変化量算出工程と、前記速度算出工程により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出工程により算出された変化量を低下させる低下工程と、前記低下工程により低下させられた変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出工程と、前記位置姿勢算出工程により算出された位置及び姿勢を逆変換することで得られる前記各サーボモータの動作周期後の角度で、前記角度算出工程により算出された前記各サーボモータの動作周期後の角度を更新する更新工程と、前記各サーボモータの現在の角度が、前記更新工程によって更新された前記各サーボモータの角度まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動工程と、を備えることを特徴とする。
上記工程によれば、第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は、PTP(Point To Point)制御により、ロボット10のアームにおける各関節の回転角度(アームの姿勢)を目標回転角度(目標姿勢)にフィードフォワード制御する。PTP制御では、制御点を目標位置まで動作させる際に制御点の動作軌道(位置及び姿勢)が設定されない。本実施形態では、制御点として、アームのハンド部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)の移動速度が、基準速度よりも高くなる場合がある。
そこで、各回転部を回転させる際に回転中心となる関節(各回転部の回転中心軸線)から最も離れた部分を、各回転部の監視部(点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の位置を算出する。
続いて、各サーボモータの角速度ωkを算出する(S13)。具体的には、ティーチング時において、TCPが通過する点として教示された教示点に基づいて、各サーボモータの目標角度が算出されている。そして、例えば図4に示すように、その目標角度まで各サーボモータを駆動する際の角速度ωkのパターンが設定されている。そこで、設定された角速度ωkのパターンに基づいて、各サーボモータの現在の角速度ωkを算出する。なお、kは、第1軸線J1〜第6軸線J6にそれぞれ対応する1〜6の数字である。
続いて、各サーボモータの動作周期Tr後の角度θk2を算出する(S14)。詳しくは、θk2=θk1+ωk×Trの式により、角度θk2を算出する。
続いて、各監視部の動作周期Tr後の位置Pi2を算出する(S15)。iは、点C1〜C5にそれぞれ対応する1〜5の数字である。ここで、動作周期Tr後の位置Pi2は、S12の処理と同様にして、各サーボモータの動作周期Tr後の角度θk2及び各回転部の大きさに基づいて算出すればよい。
続いて、各監視部の速度Viを算出する(S16)。詳しくは、各監視部の現在の位置Pi1と動作周期Tr後の位置Pi2との距離を動作周期Trで割ることにより、速度Viを算出する。なお、iは、点C1〜C5にそれぞれ対応する1〜5の数字である。
続いて、各監視部の速度Viのうち最大の速度である最大速度Vmxを算出し(S17)、最大速度Vmxが基準速度Vlmよりも高いか否か判定する(S18)。この判定において、最大速度Vmxが基準速度Vlmよりも高いと判定した場合(S18:YES)、最大速度Vmxと基準速度Vlmとの比の値αを算出する(S19)。すなわち、α=Vmx/Vlmの式により、比の値αを算出する(α>1)。
続いて、TCPの動作周期Tr後の位置及び姿勢P2から、現在の位置及び姿勢P1を差し引いた値を、TCPの動作周期Trあたりの位置姿勢変化量ΔPとして算出する(S20)。ここでは、各サーボモータの現在の角度θk1を順変換することにより、TCPの現在の位置及び姿勢P1を算出し、各サーボモータの動作周期Tr後の角度θk2を順変換することにより、TCPの動作周期Tr後の位置及び姿勢P2を算出する。
続いて、位置姿勢変化量ΔPを比の値αで割ることにより、位置姿勢変化量ΔPを更新する(S21)。
続いて、各サーボモータの動作周期Tr後の角度θk2を更新する(S22)。詳しくは、まず、TCPの現在の位置及び姿勢P1と、更新された位置姿勢変化量ΔPとの加算値で、TCPの動作周期Tr後の位置及び姿勢P2を更新する。そして、更新した位置及び姿勢P2を逆変換することで得られる各サーボモータの角度で、各サーボモータの動作周期Tr後の角度θk2を更新する。そして、更新された角度θk2を用いて、S15の処理から再度実行する。
一方、S18の判定において、最大速度Vmxが基準速度Vlm以下であると判定した場合(S18:NO)、各サーボモータの角度θk2まで、動作周期Tr後に各サーボモータが駆動されるように各サーボモータを駆動する(S23)。ここでは、S22の処理を経由している場合、S22の処理で更新された角度θk2まで、動作周期Tr後に各サーボモータが駆動されるように各サーボモータを駆動する。そして、この一連の処理を一旦終了する(END)。
なお、S12の処理が現在監視位置算出手段としての処理(現在監視位置算出工程)に相当し、S14の処理が角度算出手段としての処理(角度算出工程)に相当し、S15の処理が次周期監視位置算出手段としての処理(次周期監視位置算出工程)に相当し、S16の処理が速度算出手段としての処理(速度算出工程)に相当する。また、S20の処理が変化量算出手段としての処理(変化量算出工程)に相当し、S21の処理が低下手段としての処理(低下工程)に相当し、S22の処理が位置姿勢算出手段,更新手段としての処理(位置姿勢算出工程,更新工程)に相当し、S23の処理が駆動手段としての処理(駆動工程)に相当する。
以上詳述した本実施形態は、以下の利点を有する。
・各回転部に設定された監視部(点C1〜C5)の現在の位置Pi1、及び各監視部の動作周期Tr後の位置Pi2に基づいて、各監視部の速度Viが算出される。そして、算出された各監視部の速度Viが基準速度Vlm以下となるように、TCPの現在の位置及び姿勢P1を動作周期Tr後の位置及び姿勢P2まで制御するためのTCPの位置姿勢変化量ΔPが低下させられる。そして、低下させられた位置姿勢変化量ΔPと、TCPの現在の位置及び姿勢P1との加算値が、TCPの動作周期Tr後の位置及び姿勢として新たに算出され、新たに算出された位置及び姿勢P2を逆変換することで得られる各サーボモータの動作周期Tr後の角度で、各サーボモータの動作周期Tr後の角度θk2が更新される。そして、各サーボモータの現在の角度が、更新された角度θk2まで動作周期Tr後に制御されるように、各サーボモータが駆動される。このため、各サーボモータの動作周期Trあたりに駆動される角度が小さくなり、各サーボモータの駆動される角速度が低下させられる。これにより、ロボットのTCPのみならず、各回転部に設定された監視部の速度を基準速度Vlm以下にすることができ、アームの移動速度を十分に抑制することができる。
また、各監視部の速度Viを基準速度Vlm以下とすべく、全てのサーボモータの角速度を、TCPの位置姿勢変化量ΔPを低下させることにより一括して低下させるため、全てのサーボモータの角速度を容易に低下させることもできる。さらに、位置姿勢変化量ΔPを低下させることで各サーボモータの角速度を低下させるため、例えばTCPの動作軌道が直線である場合、TCPの動作軌道が当初の動作軌道(具体的には、速度抑制制御を行わない場合の動作軌道)からずれることを回避できる。
・最大速度Vmxと基準速度Vlmとの比の値αで位置姿勢変化量ΔPを割ることにより、位置姿勢変化量ΔPが低下させられる。位置姿勢変化量ΔPを比の値αで割るといった簡単な演算を用いるため、位置姿勢変化量ΔPを容易に低下させることができる。さらに、位置姿勢変化量ΔPを比の値αで割るといった演算を用いるため、位置姿勢変化量ΔPを一定の法則から定まる比率で低下させることができ、位置姿勢変化量ΔPの低下分をオペレータが予測しやすくなる。
・各回転部を回転させる際に回転中心となる関節から最も離れた部分が、各回転部の監視部として設定される。このため、各回転部において、最も速度が高くなる可能性の高い部分を監視部に設定することができ、アームの移動速度を十分に抑制することができる。
なお、上記実施形態を以下のように変更して実施することもできる。
・図3のS18において、最大速度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)
- 複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、PTP制御により前記制御点の位置及び姿勢を制御するロボットの制御装置であって、
前記各サーボモータの動作周期後の角度を算出する角度算出手段と、
前記各回転部に設定された監視部の現在の位置を算出する現在監視位置算出手段と、
前記角度算出手段により算出された角度に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出手段と、
前記現在監視位置算出手段により算出された前記各監視部の現在の位置と、前記次周期監視位置算出手段により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出手段と、
前記制御点の現在の位置及び姿勢を、前記制御点の動作周期後の位置及び姿勢まで制御するための前記制御点の位置及び姿勢の変化量を算出する変化量算出手段と、
前記速度算出手段により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出手段により算出された変化量を低下させる低下手段と、
前記低下手段により低下させられた変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出手段と、
前記位置姿勢算出手段により算出された位置及び姿勢を逆変換することで得られる前記各サーボモータの動作周期後の角度で、前記角度算出手段により算出された前記各サーボモータの動作周期後の角度を更新する更新手段と、
前記各サーボモータの現在の角度が、前記更新手段によって更新された前記各サーボモータの角度まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動手段と、を備えることを特徴とするロボットの制御装置。 - 前記低下手段は、前記最大の速度と前記基準速度との比の値に基づいて、前記変化量を低下させる請求項1に記載のロボットの制御装置。
- 前記低下手段は、前記変化量を前記比の値で割ることにより、前記変化量を低下させる請求項2に記載のロボットの制御装置。
- 前記各回転部を回転させる際に回転中心となる前記関節から最も離れた部分を、前記各回転部の前記監視部として設定する請求項1〜3のいずれか1項に記載のロボットの制御装置。
- 前記速度算出手段は、前記各監視部の現在の位置と前記各監視部の動作周期後の位置との距離を前記動作周期で割ることにより前記各監視部の速度を算出する請求項1〜4のいずれか1項に記載のロボットの制御装置。
- 前記次周期監視位置算出手段は、前記角度算出手段により算出された前記各サーボモータの動作周期後の角度と、前記各回転部の大きさとに基づいて、前記各監視部の動作周期後の位置を算出する請求項1〜5のいずれか1項に記載のロボットの制御装置。
- 前記変化量算出手段は、前記各サーボモータの動作周期後の角度を順変換することで得られる前記制御点の動作周期後の位置及び姿勢と、前記制御点の現在の位置及び姿勢との差分を前記変化量として算出する請求項1〜6のいずれか1項に記載のロボットの制御装置。
- 複数の回転部と、前記回転部を互いに回転可能に連結する関節と、前記各回転部を駆動するサーボモータと、を含むアームを備えるロボットに適用され、前記アームの先端部を制御点として設定し、PTP制御により前記制御点の位置及び姿勢を制御するロボットの制御方法であって、
前記各サーボモータの動作周期後の角度を算出する角度算出工程と、
前記各回転部に設定された監視部の現在の位置を算出する現在監視位置算出工程と、
前記角度算出工程により算出された角度に基づいて、前記各監視部の動作周期後の位置を算出する次周期監視位置算出工程と、
前記現在監視位置算出工程により算出された前記各監視部の現在の位置と、前記次周期監視位置算出工程により算出された前記各監視部の動作周期後の位置とに基づいて、前記各監視部の速度を算出する速度算出工程と、
前記制御点の現在の位置及び姿勢を、前記制御点の動作周期後の位置及び姿勢まで制御するための前記制御点の位置及び姿勢の変化量を算出する変化量算出工程と、
前記速度算出工程により算出された前記各監視部の速度のうち最大の速度が基準速度よりも高いことを条件として、前記各監視部の速度が前記基準速度以下となるように、前記変化量算出工程により算出された変化量を低下させる低下工程と、
前記低下工程により低下させられた変化量と、前記制御点の現在の位置及び姿勢とに基づいて、前記制御点の動作周期後の位置及び姿勢を算出する位置姿勢算出工程と、
前記位置姿勢算出工程により算出された位置及び姿勢を逆変換することで得られる前記各サーボモータの動作周期後の角度で、前記角度算出工程により算出された前記各サーボモータの動作周期後の角度を更新する更新工程と、
前記各サーボモータの現在の角度が、前記更新工程によって更新された前記各サーボモータの角度まで前記動作周期後に制御されるように、前記各サーボモータを駆動させる駆動工程と、を備えることを特徴とするロボットの制御方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015024029A JP2016147322A (ja) | 2015-02-10 | 2015-02-10 | ロボットの制御装置及び制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015024029A JP2016147322A (ja) | 2015-02-10 | 2015-02-10 | ロボットの制御装置及び制御方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2016147322A true JP2016147322A (ja) | 2016-08-18 |
Family
ID=56690938
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015024029A Pending JP2016147322A (ja) | 2015-02-10 | 2015-02-10 | ロボットの制御装置及び制御方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2016147322A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107234629A (zh) * | 2017-04-18 | 2017-10-10 | 张州逸 | 一种多轴机器人 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002066210A1 (fr) * | 2001-02-22 | 2002-08-29 | Mitsubishi Denki Kabushiki Kaisha | Dispositif de commande de robot |
-
2015
- 2015-02-10 JP JP2015024029A patent/JP2016147322A/ja active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002066210A1 (fr) * | 2001-02-22 | 2002-08-29 | Mitsubishi Denki Kabushiki Kaisha | Dispositif de commande de robot |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107234629A (zh) * | 2017-04-18 | 2017-10-10 | 张州逸 | 一种多轴机器人 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6379853B2 (ja) | ロボットの制御装置及び制御方法 | |
US11116593B2 (en) | Robot system | |
JP6238628B2 (ja) | ロボット装置、ロボット制御方法、ロボット制御プログラム及びロボット装置を用いた部品の製造方法 | |
JP5346217B2 (ja) | 多軸ロボット及びその速度制御装置 | |
JP2017061022A (ja) | ロボットの制御装置 | |
JP2015085427A (ja) | 6軸ロボットの各軸角度決定方法及び6軸ロボットの制御装置 | |
WO2018235812A1 (ja) | ロボットシステム及びロボットシステムの制御方法 | |
JP2016028842A (ja) | アクチュエータシステム | |
JP6360301B2 (ja) | 動作プログラム作成方法およびロボットの制御方法 | |
WO2018016568A1 (ja) | ロボットの運転方法、コンピュータプログラム、及びロボットシステム | |
JP4888374B2 (ja) | ロボットの動作制御装置及びその動作制御方法 | |
JP2016147322A (ja) | ロボットの制御装置及び制御方法 | |
US11878423B2 (en) | Robot system | |
JP4825614B2 (ja) | 多関節リンク機構の軌跡制御装置 | |
JP2016221653A (ja) | ロボット制御装置およびロボットシステム | |
JP6547320B2 (ja) | ロボットの制御装置及び制御方法 | |
JP6497101B2 (ja) | ロボットの制御装置及び制御方法 | |
JP6497102B2 (ja) | ロボットの制御装置及び制御方法 | |
JP6547319B2 (ja) | ロボットの制御装置及び制御方法 | |
JP2016147321A (ja) | ロボットの制御装置及び制御方法 | |
US20230035296A1 (en) | Method of suppressing vibrations of a robot arm with external objects | |
JP5633268B2 (ja) | ロボットの制御装置 | |
JP2005329521A (ja) | 多関節型ロボット | |
CN106671110A (zh) | 一种机器人头部行程控制方法及其系统 | |
JP6268924B2 (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: 20181025 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20181030 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20190528 |