JP6388367B2 - ロボット制御方法、ロボット装置、プログラム及び記録媒体 - Google Patents

ロボット制御方法、ロボット装置、プログラム及び記録媒体 Download PDF

Info

Publication number
JP6388367B2
JP6388367B2 JP2014078098A JP2014078098A JP6388367B2 JP 6388367 B2 JP6388367 B2 JP 6388367B2 JP 2014078098 A JP2014078098 A JP 2014078098A JP 2014078098 A JP2014078098 A JP 2014078098A JP 6388367 B2 JP6388367 B2 JP 6388367B2
Authority
JP
Japan
Prior art keywords
robot
joint
vibration
angle
control method
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
JP2014078098A
Other languages
English (en)
Other versions
JP2015199149A (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.)
Canon Inc
Original Assignee
Canon 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 Canon Inc filed Critical Canon Inc
Priority to JP2014078098A priority Critical patent/JP6388367B2/ja
Publication of JP2015199149A publication Critical patent/JP2015199149A/ja
Application granted granted Critical
Publication of JP6388367B2 publication Critical patent/JP6388367B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、動作プログラムに従ってロボットの動作を制御するロボット制御方法、ロボット装置、プログラム及び記録媒体に関する。
近年、小型で複雑な構造をした製品の組立に対する自動化の要求が高まっている。製品の組立には、高速かつ精密な組付けを行う産業用のロボットが用いられている。ロボットは、ロボットアームと、ロボットアームに取り付けられたエンドエフェクタとを有している。
また、コストを抑えた生産体制を確立すべく、一つのロボットが複数の組立工程を担うようにしている。このロボットを用いて、高速かつ高精度で安定した、生産性の高い生産ラインの確立が望まれている。
しかし、精密な組付けを行う際に、ロボットアームの関節において駆動力を伝達する機械的な伝達機構や減速機がもつ角度伝達誤差に起因する固有振動数での共振により、ロボットの先端部、即ちエンドエフェクタが振動し、精密な組付ができない問題があった。具体例を挙げると、ロボットに共振による振動が発生すると、エンドエフェクタがハンドである場合には、ハンドが把持している部品がずれたり落下することで組み付けができなくなったり、部品同士の接触による破損などが発生したりする場合があった。
そこで、ロボットの固有振動数による共振を抑える例として、特許文献1及び特許文献2が提案されている。
特許文献1に開示された産業用ロボットの動力伝達機構では、産業用ロボットの関節部分の減速機に、減速機の捩じれ剛性と同程度もしくは小さい捩じれ剛性をもつ中間軸を連結するものである。
また、特許文献2に開示されたロボットアームのサーボ制御装置では、速度指令値と振動の周波数とから角度伝達誤差に起因する共振と特定した場合、比例積分ゲインを下げるものである。
特開2000−233392号公報 特許第3151845号公報
しかしながら、特許文献1に記載の構成では、関節部分に機械的な機構を設けているため固有振動数の変化に柔軟に対応ができない。一つのロボットが多くの組立工程を担う自動組立装置では、ロボットの位置及び姿勢や把持する部品などの重量が組立工程により変わり、固有振動数が変化する。特許文献1に記載のロボット装置では、この変化に柔軟に対応できず、ある位置及び姿勢の動作では共振を小さくできても別の位置及び姿勢の動作では、共振を抑えきれず精密な組み立てができない場合があった。つまり、ロボットの位置及び姿勢や先端重量の変化による固有振動数の変化に対応できない場合があった。
また、特許文献2では、減速機等の角度伝達誤差に起因する共振の場合、比例積分ゲインを下げるものであるが、比例積分ゲインを下げても、ロボットの共振が生じやすい等速域でロボットの共振を低減する効果は低いものであった。
そこで、本発明は、ロボットの共振を効果的に抑制することを目的とする。
本発明のロボット制御方法は、ロボットが、多関節のロボットアームと、前記ロボットアームに取り付けられたエンドエフェクタと、前記エンドエフェクタの振動を検出する第1振動検出部と、を有しており、前記ロボットアームが、各関節に設けられ、前記各関節を駆動する関節駆動部と、前記各関節に設けられ、前記各関節の振動を検出する第2振動検出部と、を有しており、前記各関節駆動部が、電動モータを有しており、制御部が、動作プログラムに従って前記ロボットの動作を制御するロボット制御方法であって、前記制御部が、前記動作プログラムに従って前記ロボットを動作させる動作工程と、前記制御部が、前記第1振動検出部により検出された振動から前記ロボットが共振したか否かを判断する判断工程と、前記制御部が、前記ロボットの固有振動数を求める固有振動数算出工程と、前記制御部が、前記各第2振動検出部により検出された振動から前記各関節の振動周波数を求める振動周波数算出工程と、前記制御部が、前記固有振動数と前記各振動周波数とを比較して前記ロボットの共振を発生させた関節を特定する特定工程と、前記ロボットが共振しなくなるまで、前記制御部が、前記特定した関節を駆動する関節駆動部の電動モータの回転数を変化させる処理を繰り返し、前記ロボットの共振が発生しなくなった回転数で前記動作プログラムを更新する更新工程と、を備えたことを特徴とする。
本発明によれば、ロボットの固有振動数の変化にも対応して、ロボットの共振を抑制することができる。
第1実施形態に係るロボット装置の概略構成を示す説明図である。 第1実施形態に係るロボット装置のロボットアームの1つの関節を示すブロック図である。 第1実施形態に係るロボット装置の制御システムの構成を示すブロック図である。 第1実施形態に係るロボット制御方法を示すフローチャートである。 時刻に対するロボットの先端部の速度パターン、力覚センサの出力、及び角度伝達誤差を示す図である。 ロボットの先端部の振動波形と関節の振動波形を周波数解析した結果を示す図である。 第2実施形態に係るロボット制御方法を示すフローチャートである。
以下、本発明を実施するための形態を、図面を参照しながら詳細に説明する。
[第1実施形態]
図1は、本発明の第1実施形態に係るロボット装置の概略構成を示す説明図である。図1に示す自動組立装置であるロボット装置100は、ロボット200と、ロボット200の動作を制御する制御部である制御システム300と、ティーチングペンダント等の操作盤400と、を有している。
ロボット200は、垂直多関節型のロボットアーム201と、エンドエフェクタであるロボットハンド202と、ロボットハンド202に作用する力(モーメントを含む)を検出する力覚センサ203と、を有している。
ロボットアーム201は、複数のリンク(アーム部材)が複数の関節で旋回又は回転可能に連結されて構成されている。ロボットアーム201の基端(基端リンク、ベース部ともいう)は、架台の上面に固定されている。
ロボットアーム201の先端(先端リンク)には、力覚センサ203を介してロボットハンド202が取り付けられている。ロボットハンド202は、ワークW1を把持又は把持解放することができる。
第1実施形態では、力覚センサ203は、ロボットハンド202の振動を検出する第1振動検出部として機能する。以下、力覚センサ203がロボットハンド202の振動を検出するものとして説明するが、力覚センサ203以外に、振動センサをロボットハンド202に取り付けてもよい。
制御システム300は、制御装置301と、演算装置302と、記憶装置303とを有しており、相互に通信可能にケーブルで接続されている。
記憶装置303には、ロボット200の動作を規定する動作プログラムが記憶(設定)されている。演算装置302は、記憶装置303に記憶(設定)された動作プログラムに基づき、ロボット200を動作させる軌道計算を行う。ここで、軌道は、時刻に対する各関節の角度パラメータで定義される。動作プログラムに基づいて計算した軌道により、関節の駆動速度が決まる。また、演算装置302は、記憶装置303に記憶された動作プログラムの更新(補正)を行う。
制御装置301は、演算装置302から取得したロボット200の軌道に基づき、所定時間間隔でロボット200の各関節の関節駆動部に角度指令を送信する。
操作盤400は、ケーブル等で制御装置301に接続されており、ユーザの操作に応じた操作指令を制御装置301に送信する。制御装置301は、操作盤400からの操作指令に基づき、ロボット200の各関節の関節駆動部に角度指令を送信する。
ロボットアーム201は、各関節に対して設けられ、各関節をそれぞれ駆動する関節駆動部230を関節の数だけ複数有している。また、ロボットアーム201は、各関節に対して設けられ、各関節の振動をそれぞれ検出する第2振動検出部としての振動検出部240を関節の数だけ複数有している。
なお、図1では、関節駆動部230及び振動検出部240は、便宜上、関節J1にのみ図示し、他の関節には、図示を省略しているが、同様の構成の関節駆動部230及び振動検出部240が配置されている。なお、第1実施形態では、関節の全てに関節駆動部230及び振動検出部240が配置されている。
以下、関節J1における関節駆動部230及び振動検出部240について説明し、他の関節の関節駆動部230及び振動検出部240については、同様の構成であるため、説明を省略する。
図2は、ロボットアーム201の1つの関節J1を示すブロック図である。図2に示すように、関節J1には、関節駆動部230及び振動検出部240が設けられている。なお、リンク212は、リンク211に対して回転する従動側のリンクであり、リンク211は、リンク212に対する基準側のリンクである。
関節駆動部230は、電動モータとしてのモータ231と、モータ231のトルクを増大させるためにモータ231の出力軸(回転軸)の回転を減速して関節J1に伝達する減速機構部232と、を有している。減速機構部232は、モータ231の回転を伝達する伝達機構233と、モータ231の回転、即ち伝達機構233の回転を減速する減速機234とを有している。
モータ231は、例えばブラシレスDCサーボモータやACサーボモータである。伝達機構233は、図示は省略するが、モータ231の出力軸に取り付けられたプーリと、減速機234の入力軸に取り付けられたプーリと、プーリ間に巻回された無端状のベルトとを有して構成されている。伝達機構233は、モータ231の回転を減速比mで減速して、減速機234に伝達する。なお、この減速比mは1でもよい。減速機234は、伝達機構233を介して伝達されたモータ231の回転、つまり伝達機構233の回転を減速比nで減速する。減速比nは1よりも大きく、n>>1であるのが好ましい。例えば、減速比nは100である。減速機234は、小型軽量で減速比nの大きい波動歯車減速機を用いるのが望ましい。減速機234の出力軸は、リンク212に接続されている。減速機234の出力軸の回転角度が、リンク211に対するリンク212の相対角度、即ち関節J1の関節角度である。
なお、ロボット200の仕様によっては、伝達機構233が無く、モータ231の出力軸に直接減速機234が接続されていても良い。
振動検出部240は、モータ231の出力軸の回転角度を検出する第1角度検出器としての角度検出器241を有している。また、振動検出部240は、減速機234の出力軸の回転角度、即ちリンク211に対するリンク212の相対角度(関節J1の関節角度)を検出する第2角度検出器としての角度検出器242を有している。
なお、第1実施形態では、振動検出部240を、角度を検出するために設けられた角度検出器241,242で構成したが、これに限定するものではなく、別途設けた振動センサで構成してもよい。
角度検出器241,242は、ロータリーエンコーダであり、インクリメンタル型のロータリーエンコーダであってもよいし、アブソリュート型のロータリーエンコーダであってもよい。
角度検出器241の原点と角度検出器242の原点は、予めロボット200を製作する際に予め合わせておく。この角度検出器242により、リンク211に対するリンク212の相対角度の検出が可能となり、モータ231に出力された角度指令に対する実際の関節角度を把握することができる。
図3は、ロボット装置100の制御システム300の構成を示すブロック図である。制御システム300の演算装置302は、演算部としてのCPU(Central Processing Unit)311を備えている。また、演算装置302は、ROM(Read Only Memory)312、RAM(Random Access Memory)313、HDD(Hard Disk Drive)314を備えている。また、演算装置302は、記録ディスクドライブ315及び各種のインタフェース321〜325を備えている。
CPU311には、ROM312、RAM313、HDD314、記録ディスクドライブ315及び各種のインタフェース321〜325が、バス316を介して接続されている。ROM312には、BIOS等の基本プログラムが格納されている。RAM313は、CPU311の演算処理結果等、各種データを一時的に記憶する記憶装置である。
HDD314は、CPU311の演算処理結果や外部から取得した各種データ等を記憶する記憶装置であると共に、CPU311に、後述する各種演算工程を実行させるためのプログラム330を記録するものである。CPU311は、HDD314に記録(格納)されたプログラム330に基づいてロボット制御方法の各工程を実行する。
記録ディスクドライブ315は、記録ディスク331に記録された各種データやプログラム等を読み出すことができる。
インタフェース321には、制御装置301が接続されており、インタフェース322には、記憶装置303が接続されている。記憶装置303には、ロボット200(ロボットアーム201)の動作パターンに基づいて作成した動作プログラム340が記憶(格納)されている。CPU311は、記憶装置303から動作プログラム340を読み出してロボット200(ロボットアーム201)の軌道計算を行い、制御装置301に出力する。これにより、制御装置301は、軌道に従ってロボット200(ロボットアーム201)を動作させる。
インタフェース323には力覚センサ203が接続されており、インタフェース324には角度検出器241が接続されており、インタフェース325には角度検出器242が接続されている。
力覚センサ203は、検出した力を示す信号を出力する。ここで、力覚センサ203にて検出されるロボットハンド202に作用する力は、ロボットハンド202の振動に比例している。演算装置302のCPU311は、インタフェース323及びバス316を介して力覚センサ203から振動の信号を入力したことになる。
角度検出器241,242は、検出した角度検出値を示すパルス信号を出力する。CPU311は、インタフェース324,325及びバス316を介して角度検出器241,242からパルス信号を入力する。
以下、制御システム300、具体的には、演算装置302のCPU311の制御動作について説明する。図4は、本発明の第1実施形態に係るロボット装置100の制御システム300によるロボット制御方法を示すフローチャートである。
まず、CPU311は、製品の組立工程から決められたロボット200の動作パターンに基づき予め作成された動作プログラム(仮設定された動作プログラム)340を、記憶装置303から読み出す(S1)。
次に、CPU311は、動作プログラム340に従い、制御装置301を介してロボット200を動作させ、組み付け動作を行わせる(S2:動作工程)。組み付け動作は、例えばロボットハンド202が把持したワークW1をワークW2に嵌合させる動作である。
このときCPU311は、ロボット200の動作中に、力覚センサ203により検出された振動のデータを取得し、振動のデータを記憶装置303に記憶させる(S3:第1振動検出工程)。つまり、CPU311は、ロボット200の先端部(ロボットハンド202)の振動を計測する。
同時に、CPU311は、ロボット200の動作中に、ロボットアーム201の各関節の振動検出部240の検出結果に基づく振動のデータを記憶装置303に記憶させる(S10:第2振動検出工程)。具体的には、CPU311は、角度検出器241が検出した角度と、角度検出器242が検出した角度と、減速機構部232の減速比(m×n)とに基づき、各関節の減速機構部232の角度伝達誤差を各関節の振動の検出結果として算出する。ここで、モータ231の回転軸の角度は、角度指令値により制御されているので、角度検出器241が検出した角度は、モータ231への角度指令値と同じである。したがって、各関節の振動(減速機構部232の角度伝達誤差)を求めるにあたって、角度検出器241が検出した角度の代わりに、モータ231に対する角度指令値を用いてもよい。
次に、CPU311は、力覚センサ203により検出された振動のデータからロボット200が共振したか否かを判断する(S4:判断工程)。このステップS4の判断は、ロボット200の1つの動作が完了したときに行うとよい。
CPU311は、共振していないと判断した場合(S4:No)は、動作プログラム340を更新することなく、実際の組付け動作を開始する(S9)。これにより、記憶装置303に仮設定であった動作プログラム340が本設定されたことになる。なお、仮設定から本設定へ変わる場合に、記憶装置303における動作プログラム340を書き換える必要はない。
CPU311は、ステップS4にてロボット200が共振したと判断した場合(S4:Yes)、ロボット200の固有振動数(共振周波数)Frを、ステップS3にて検出した振動のデータを周波数解析することにより求める(S5:固有振動数算出工程)。この固有振動数Frは、ロボットアーム201の姿勢やロボットハンド202が把持したワークW1の重量の変化によっても変化する。
また、CPU311は、各関節の振動検出部240により検出された振動のデータ、即ちステップS10で算出した角度伝達誤差のデータから、各関節の振動周波数を、周波数解析することにより求める(S11:振動周波数算出工程)。
次に、CPU311は、固有振動数Frと各振動周波数とを比較してロボット200の共振を発生させた関節を特定する(S6:特定工程)。つまり、CPU311は、各関節の周波数解析の結果から、固有振動数Frに近い周波数で振動している関節を特定する。
次に、CPU311は、特定した関節を駆動する関節駆動部230のモータ231の回転数を、共振しない回転数Rj’に変更し(S7)、この回転数で動作プログラム340を更新する(S8:更新工程)。これにより、記憶装置303に仮設定であった更新後の動作プログラム340が本設定されたことになる。そして、CPU311は、更新した動作プログラム340に従って、実際の組付け動作を開始する(S9)。
ステップS7では、モータ231の回転数を、変更前よりも大きくなるように変更する。これにより、ロボット200の動作が遅くなるのを防止することができ、生産性が低下するのを抑制することができる。
以上のフローチャートに示したロボット制御方法によって設定した動作プログラム340を用いてロボット200を動作させることで、ロボット200の共振(振動)を抑制することが可能となる。よって、ロボット200による組み付け動作等で生産性が低下するのを抑制することができる。
ここで、各ステップの動作について詳細に説明する。まず、ステップS4の判断工程について説明する。
図5は、時刻に対するロボット200の先端部の速度パターン、力覚センサ203の出力、及び角度伝達誤差を示す図である。図5(a)は、ロボット200を動作させたときの速度パターンを示す図であり、図5(b)は、ロボット200を動作させたときの力覚センサ203の出力波形を示す図であり、図5(c)は、関節の角度伝達誤差の算出波形を示す図である。なお、図5(b)は、ロボット200が固有振動数で共振しているときのロボット200の先端部(ロボットハンド202)における振動波形である。
図5(a)において、ロボット200は時刻0〜T1の間で加速し、時刻T1〜T2間は定速での動作、T2〜Tm間は減速し時刻Tmで停止となる。このとき、図5(b)のように、加速が終わった時刻T1を過ぎて次の減速が始まる時刻T2まで、つまり、定速で動作する時刻T1〜T2間でロボット200が固有振動数で共振する。ロボット200の先端部の振動が収束せずに残っている場合が、ロボット200全体が固有振動数で共振している状態となる。
共振しているか否かの判断として許容振幅(閾値)Pを設定する。許容振幅Pを超えていれば共振していると判断し、超えていなければ許容範囲と判断する。許容振幅Pは予め決めておく値であるが、組み付け可否など組立精度への影響や、共振によるロボット200の関節へのダメージに配慮した値で設定する。
次に、ステップS10の工程について説明する。ロボット200を動作させたときのロボットアーム201の各関節における角度伝達誤差θejをステップS10で算出する。jは、関節に割り振った通し番号(関節番号)であり、6つの関節の場合は、j=1〜6である。
動作時のモータ231に出された角度指令値をθtj、角度検出器242の出力をθrj、伝達機構233の減速比m[1:m]、減速機234の減速比n[1:n]とする。角度伝達誤差θejは、伝達機構233と減速機234の角度伝達誤差であり以下の式(1)で算出される。
θej=θrj−θtj/(m×n) ・・・・・(1)
(j=関節番号)
次に、ステップS5,S10における周波数解析について説明する。ステップS4の判断工程で共振していると判断されると、ステップS5の固有振動数算出工程でロボット200の先端部の振動波形の周波数解析、ステップS11の振動周波数算出工程で角度伝達誤差θejの周波数解析を行う。
図6は、ロボット200の先端部の振動波形と関節の振動波形を周波数解析した結果を示す図である。図6(a)は、ロボット200の先端部の振動波形を周波数解析した結果を示す図であり、図6(b)は、ロボット200の関節の中で共振している関節で、角度伝達誤差θejを周波数解析した結果を示す図である。図6(a)から、ロボット200の先端部における固有振動数Frが求まり、図6(b)から関節の振動周波数Fjが求まる。図6(a)及び図6(b)において、閾値D0を超えた振幅のピーク値となるところの周波数が、固有振動数Fr、振動周波数Fjである。
ステップS6の特定工程では、Fr≒Fjで振動している関節を特定し、振動している関節のモータ231の回転数を求める。第1実施形態では、固有振動数Frの±5%の範囲内で一致している振動周波数Fjを特定する。
関節における振動周波数Fjは、伝達機構233や減速機234の角度伝達誤差である。振動周波数Fjは、モータ231の回転数をRj[rpm]とし、減速機234を波動歯車減速機とすると式(2)が成り立つ。
Fj=Rj/60/(m×n×2) ・・・・・(2)
よって、モータ231の回転数Rjは、
Rj=Fj×60×(m×n×2) ・・・・・(3)
と表すことができる。
すなわち、回転数Rjでモータ231を回転させていることで、共振が起こっていることがわかるので、ステップS7では、モータ231に出す指令の回転数を、
(Rj±δ)≠Rj’ ・・・・・(4)
となるような共振回避回転数Rj’に変更する。δは回転数幅である。
回転数幅δは、ステップS4の判断工程で共振していると判断された状態とき、許容振幅P以下に共振が収まるような値に設定されている。すなわち、予め実験的をするなどして回転数幅δを求めておくことで対応ができる。
ステップS8の更新工程では、ステップS7の工程で決められた共振しないモータ回転数Rj’になるように動作プログラム340を作成し、更新すればよい。共振回避回転数Rj’は、Rj+δよりも大きい値を設定する。Rj−δよりも小さい値を選択しても共振を回避できるが、生産性を考慮した高速組み付けを目指すことから、大きい値を選択する。組み付け動作の都合上、回転数を小さい値に設定してもよい。
以上、第1実施形態によれば、モータ231の回転数を変更することで、ロボット200の共振を回避することができ、ワークW1を把持したロボットハンド202が振動するのを回避することができる。よって、ワークW1をワークW2に嵌合させる組み付け動作を円滑に行うことができる。
また、第1実施形態によれば、ロボットハンド202が把持するワークW1が変更される場合等、ロボット200の固有振動数が変化する場合にも、ステップS1〜S11により柔軟に対応でき、ロボット200の共振による振動を回避することができる。
また、第1実施形態によれば、モータ231の回転数を変更前よりも上昇させているので、生産性の低下を抑制することができる。
また、第1実施形態によれば、ロボット200の先端部(ロボットハンド202)が定速に動作させるとき、即ち各関節を等角速度で駆動するときの角速度(モータ231の回転数)を変更しているので、効果的にロボットの共振を抑制することができる。
また、第1実施形態によれば、ステップS4の判断工程では、ロボット200が共振したか否かを、力覚センサ203により検出した振動の振幅が閾値を超えたか否かで判断するので、判断が容易であり、判断に要する時間を短縮することができる。
また、第1実施形態によれば、ロボットハンド202に作用する力を検出する力覚センサ203で振動を検出するようにしたので、別途、振動センサをロボットハンド202に設ける必要がない。
また、第1実施形態によれば、各振動検出部240が、ロボットアーム201の各関節に設けられた角度検出器241,242で構成されているので、別途振動センサを各関節に設ける必要がない。
[第2実施形態]
次に、本発明の第2実施形態に係るロボット制御方法について説明する。図7は、本発明の第2実施形態に係るロボット制御方法を示すフローチャートである。なお、第2実施形態のロボット装置の構成は、上記第1実施形態と同様であるので、同一符号を用い、説明は省略する。
図7に示すステップS1〜S6,S8〜S11は、上記第1実施形態で説明した通りである。上記第1実施形態のステップS7では、共振しない回転数が実験等で分かっている場合に、共振しない回転数に変更するものであったが、第2実施形態のステップS7’では、共振しない回転数が分からない場合にも適用可能である。
ステップS7’では、CPU311は、ステップS6で特定した関節のモータ231の回転数を所定回転数増加(又は減少)するように変更する。この所定回転数は、共振しない回転数を探索するために予め設定した微小回転数であり、ステップS8の工程後、ステップS2の工程に戻ることで、徐々にモータ231の回転数を変更するものである。即ち、CPU311は、ステップS8の更新工程後、再度、ステップS2の動作工程及びステップS8の判断工程を実行することになる。
以上のフローで、ステップS1では、動作プログラム340は仮設定であり、ステップS4で共振していないと判断された場合(S4:No)に、動作プログラム340が本設定されたこととなる。また、ステップS8の更新工程では、更新された動作プログラム340は仮設定である。なお、仮設定から本設定へ変わる場合に、記憶装置303における動作プログラム340を書き換える必要はない。
以上、第2実施形態によれば、上記第1実施形態と同様の効果を奏するほか、予め実験等を行っていない場合であっても、ロボット200の共振による振動を回避することができる。
なお、本発明は、以上説明した実施形態に限定されるものではなく、本発明の技術的思想内で多くの変形が可能である。
上記実施形態の各処理動作は具体的にはCPU311により実行されるものである。従って上述した機能を実現するプログラムを記録した記録媒体を制御システム300の演算装置302に供給し、演算装置302のコンピュータ(CPU)が記録媒体に格納されたプログラムを読み出し実行することによって達成されるようにしてもよい。この場合、記録媒体から読み出されたプログラム自体が上述した実施形態の機能を実現することになり、プログラム自体及びそのプログラムを記録した記録媒体は本発明を構成することになる。
また、上記実施形態では、コンピュータ読み取り可能な記録媒体がHDD314であり、HDD314にプログラム330が格納される場合について説明したが、これに限定するものではない。プログラムは、コンピュータ読み取り可能な記録媒体であれば、いかなる記録媒体に記録されていてもよい。例えば、プログラムを供給するための記録媒体としては、図3に示すROM312、記録ディスク331、記憶装置303等を用いてもよい。具体例を挙げて説明すると、記録媒体として、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、書き換え可能な不揮発性のメモリ(例えばUSBメモリ)、ROM等を用いることができる。
また、上記実施形態におけるプログラムを、ネットワークを介してダウンロードしてコンピュータにより実行するようにしてもよい。
また、コンピュータが読み出したプログラムコードを実行することにより、上記実施形態の機能が実現されるだけに限定するものではない。そのプログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)等が実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれる。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。そのプログラムコードの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるCPU等が実際の処理の一部または全部を行い、その処理によって上記実施形態の機能が実現される場合も含まれる。
また、上記実施形態では、コンピュータがHDD等の記録媒体に記録されたプログラムを実行することにより処理を行う場合について説明したが、これに限定するものではない。プログラムに基づいて動作する演算部の一部又は全部の機能をASICやFPGA等の専用LSIで構成してもよい。なお、ASICはApplication Specific Integrated Circuit、FPGAはField-Programmable Gate Arrayの頭字語である。
100…ロボット装置、200…ロボット、201…ロボットアーム、202…ロボットハンド(エンドエフェクタ)、203…力覚センサ(第1振動検出部)、230…関節駆動部、231…モータ(電動モータ)、232…減速機構部、240…振動検出部(第2振動検出部)、300…制御システム(制御部)、340…動作プログラム

Claims (11)

  1. ロボットが、多関節のロボットアームと、前記ロボットアームに取り付けられたエンドエフェクタと、前記エンドエフェクタの振動を検出する第1振動検出部と、を有しており、
    前記ロボットアームが、各関節に設けられ、前記各関節を駆動する関節駆動部と、前記各関節に設けられ、前記各関節の振動を検出する第2振動検出部と、を有しており、
    前記各関節駆動部が、電動モータを有しており、
    制御部が、動作プログラムに従って前記ロボットの動作を制御するロボット制御方法であって、
    前記制御部が、前記動作プログラムに従って前記ロボットを動作させる動作工程と、
    前記制御部が、前記第1振動検出部により検出された振動から前記ロボットが共振したか否かを判断する判断工程と、
    前記制御部が、前記ロボットの固有振動数を求める固有振動数算出工程と、
    前記制御部が、前記各第2振動検出部により検出された振動から前記各関節の振動周波数を求める振動周波数算出工程と、
    前記制御部が、前記固有振動数と前記各振動周波数とを比較して前記ロボットの共振を発生させた関節を特定する特定工程と、
    前記ロボットが共振しなくなるまで、前記制御部が、前記特定した関節を駆動する関節駆動部の電動モータの回転数を変化させる処理を繰り返し、前記ロボットの共振が発生しなくなった回転数で前記動作プログラムを更新する更新工程と、を備えたことを特徴とするロボット制御方法。
  2. 前記更新工程では、前記制御部が、前記特定した関節を駆動する関節駆動部の電動モータの回転数を大きくすることを特徴とする請求項1に記載のロボット制御方法。
  3. 前記判断工程では、前記制御部が、前記ロボットが共振したか否かの判断を、前記ロボットの関節を等角速度で駆動しているときに前記第1振動検出部にて検出された振動から判断することを特徴とする請求項1又は2に記載のロボット制御方法。
  4. 前記判断工程では、前記制御部が、前記ロボットが共振したか否かを、前記第1振動検出部により検出した振動の振幅が閾値を超えたか否かで判断することを特徴とする請求項1乃至のいずれか1項に記載のロボット制御方法。
  5. 前記各関節駆動部は、前記電動モータの回転を減速して関節に伝達する減速機構部をさらに有し、前記第2振動検出部は、前記電動モータの回転軸の角度を検出する第1角度検出器と、前記関節の角度を検出する第2角度検出器と、を有しており、
    前記関節の振動は、前記第1角度検出器が検出した角度、前記第2角度検出器が検出した角度、及び前記減速機構部の減速比から求まる前記減速機構部の角度伝達誤差であることを特徴とする請求項1乃至のいずれか1項に記載のロボット制御方法。
  6. 前記各関節駆動部は、前記電動モータの回転を減速して関節に伝達する減速機構部をさらに有し、前記第2振動検出部は、前記関節の角度を検出する角度検出器を有しており、
    前記関節の振動は、前記電動モータに対する角度指令値、前記角度検出器が検出した角度、及び前記減速機構部の減速比から求まる前記減速機構部の角度伝達誤差であることを特徴とする請求項1乃至のいずれか1項に記載のロボット制御方法。
  7. 前記第1振動検出部は、前記ロボットアームと前記エンドエフェクタとの間に配置され、前記エンドエフェクタに作用する力を検出する力覚センサであることを特徴とする請求項1乃至のいずれか1項に記載のロボット制御方法。
  8. ロボットと、動作プログラムに従って前記ロボットの動作を制御する制御部と、を備え、
    前記ロボットは、多関節のロボットアームと、前記ロボットアームに取り付けられたエンドエフェクタと、前記エンドエフェクタの振動を検出する第1振動検出部と、を有し、
    前記ロボットアームは、各関節に設けられ、前記各関節を駆動する関節駆動部と、前記各関節に設けられ、前記各関節の振動を検出する第2振動検出部と、を有し、
    前記各関節駆動部は、電動モータを有し、
    前記制御部は、請求項1乃至のいずれか1項に記載のロボット制御方法の各工程を実行して前記動作プログラムを設定することを特徴とするロボット装置。
  9. 前記各関節駆動部は、前記電動モータの回転を減速して関節に伝達する減速機構部をさらに有し、
    前記第2振動検出部は、前記電動モータの回転軸の角度を検出する第1角度検出器と、前記関節の角度を検出する第2角度検出器と、を有し、
    前記関節の振動は、前記第1角度検出器が検出した角度、前記第2角度検出器が検出した角度、及び前記減速機構部の減速比から求まる前記減速機構部の角度伝達誤差が検出されることを特徴とする請求項8に記載のロボット装置。
  10. コンピュータに請求項1乃至のいずれか1項に記載のロボット制御方法の各工程を実行させるためのプログラム。
  11. 請求項10に記載のプログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2014078098A 2014-04-04 2014-04-04 ロボット制御方法、ロボット装置、プログラム及び記録媒体 Active JP6388367B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014078098A JP6388367B2 (ja) 2014-04-04 2014-04-04 ロボット制御方法、ロボット装置、プログラム及び記録媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014078098A JP6388367B2 (ja) 2014-04-04 2014-04-04 ロボット制御方法、ロボット装置、プログラム及び記録媒体

Publications (2)

Publication Number Publication Date
JP2015199149A JP2015199149A (ja) 2015-11-12
JP6388367B2 true JP6388367B2 (ja) 2018-09-12

Family

ID=54550942

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014078098A Active JP6388367B2 (ja) 2014-04-04 2014-04-04 ロボット制御方法、ロボット装置、プログラム及び記録媒体

Country Status (1)

Country Link
JP (1) JP6388367B2 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102486112B1 (ko) * 2015-12-04 2023-01-09 대우조선해양 주식회사 이동형 로봇의 구동부 손상감지 방법
JP2018203122A (ja) * 2017-06-06 2018-12-27 株式会社デンソー 車両用表示装置
JP6882719B2 (ja) * 2018-03-07 2021-06-02 オムロン株式会社 ロボット制御装置、異常診断方法、及び異常診断プログラム
JP6642608B2 (ja) * 2018-03-19 2020-02-05 株式会社椿本チエイン モータ装置
JP7219040B2 (ja) * 2018-10-04 2023-02-07 オークマ株式会社 工作機械
US11897146B2 (en) * 2018-12-18 2024-02-13 Canon Kabushiki Kaisha Examination method for examining robot apparatus, control apparatus, and storage medium
KR102187486B1 (ko) * 2020-06-16 2020-12-07 에스케이씨솔믹스 주식회사 로봇의 상태 판단 방법 및 장치
CN112613149B (zh) * 2020-12-30 2024-04-12 深圳市优必选科技股份有限公司 减速比的确定方法、装置及电子设备
JP2022119647A (ja) * 2021-02-04 2022-08-17 トヨタ自動車株式会社 制御装置、運搬システム、制御方法及び制御プログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS58202792A (ja) * 1982-05-20 1983-11-26 松下電器産業株式会社 ロボツトア−ムの制御方法
JPH0355187A (ja) * 1989-07-20 1991-03-08 Fujitsu Ltd 力感覚を持つロボットの制御方式
JPH0425386A (ja) * 1990-05-18 1992-01-29 Hitachi Ltd 産業用ロボットの制御方法
US5049797A (en) * 1990-07-02 1991-09-17 Utah State University Foundation Device and method for control of flexible link robot manipulators
JPH04261790A (ja) * 1991-02-15 1992-09-17 Fujitsu Ltd 関節型ロボットの制御装置
JP3173031B2 (ja) * 1991-04-09 2001-06-04 松下電器産業株式会社 ロボットアームのサーボ制御装置
JP3151845B2 (ja) * 1991-04-12 2001-04-03 松下電器産業株式会社 ロボットアームのサーボ制御装置
JPH04322988A (ja) * 1991-04-17 1992-11-12 Fujitsu Ltd ロボットの関節機構
JP4250538B2 (ja) * 2004-01-27 2009-04-08 パナソニック株式会社 揺動装置を有する多関節ロボット
JP2006281421A (ja) * 2005-04-05 2006-10-19 Yaskawa Electric Corp ロボットおよびロボットの異常検出方法
JP5411687B2 (ja) * 2009-12-28 2014-02-12 川崎重工業株式会社 ロボットの制御装置
JP5506618B2 (ja) * 2009-12-28 2014-05-28 本田技研工業株式会社 ロボットの制御装置
JP2011224662A (ja) * 2010-04-15 2011-11-10 Yaskawa Electric Corp ロボット制御装置の補正パラメータ同定装置
JP5874260B2 (ja) * 2011-09-14 2016-03-02 セイコーエプソン株式会社 ロボット装置
JP2014034101A (ja) * 2012-08-10 2014-02-24 Toshiba Corp ロボット制御装置

Also Published As

Publication number Publication date
JP2015199149A (ja) 2015-11-12

Similar Documents

Publication Publication Date Title
JP6388367B2 (ja) ロボット制御方法、ロボット装置、プログラム及び記録媒体
JP6648913B2 (ja) 制御方法、ロボット装置、プログラム、記録媒体、物品の製造方法、及び駆動装置
JP5972346B2 (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP6460690B2 (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
JP5383911B2 (ja) ロボット制御装置
US9815202B2 (en) Control method for robot apparatus, computer readable recording medium, and robot apparatus
US10618175B2 (en) Vibration measurement method for moving part, vibration measurement method for robot, and control device
JP6652292B2 (ja) 制御方法、制御プログラム、ロボットシステム、回転駆動装置の制御方法、およびロボット装置
JP6512790B2 (ja) ロボット制御方法、ロボット装置、プログラム、記録媒体及び物品の製造方法
TWI544994B (zh) 機器人及機器人之雜訊除去方法
EP2431137A2 (en) Reducer abnormality determination method, abnormality determination device, and robot system
US20180207798A1 (en) Robot control apparatus, robot system, robot control method and assembly manufacturing method
US9529340B2 (en) Robot apparatus, controlling method of robot apparatus, program and recording medium
JP2018149606A (ja) 生産ラインにおける運用を考慮した学習制御を行うロボット及びその制御方法
US10569421B2 (en) Robot apparatus, robot control method, method for manufacturing part, and recording medium
EP3888855A1 (en) Failure prediction method and failure prediction apparatus
JP2016078149A (ja) ロボット装置の制御方法及びロボット装置、プログラム及び記録媒体
JP2017056549A (ja) ロボット装置、ロボット制御方法、プログラム、記録媒体及び組立部品の製造方法
US11660746B2 (en) Separate moving and positioning modes for a robot, method providing separate moving and positioning modes for the robot, method of manufacturing a product, and a recording medium
US11192263B2 (en) Robot hand and control method for the robot hand
JP6700679B2 (ja) 制御方法、物品の製造方法、ロボット装置、制御プログラム及び記録媒体
JP2017056525A (ja) ロボット装置、ロボット制御方法、プログラム、記録媒体及び組立部品の製造方法
JP2016040067A (ja) ロボット装置、ロボット制御方法、プログラム及び記録媒体
US11789437B2 (en) Processing apparatus and processing method for processing portion
JP2020062730A (ja) ロボット制御方法、ロボット装置、プログラム、記録媒体および物品の製造方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170330

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180125

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180206

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180406

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: 20180717

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180810

R151 Written notification of patent or utility model registration

Ref document number: 6388367

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151