(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0006】
多関節ロボットの各軸を動作されるモータは、ウィービング動作のような周期信号を指令値として入力した場合、出力角度は指令値に対して振幅・位相が変化するという特性を有している。このため、ロボット先端位置を正確に動かすためには、この変化特性を予測して角度指令値を補正する必要がある。また、この振幅・位相の変化に関与する要因は、モータ自身の動特性(フィードバック系の制御時定数)と、外部からの外力(ロボットの場合では、他軸が動くことによる影響)とがある。問題点を整理すると、以下のように纏められる。
【0007】
(1)モータのフィードバック系の制御時定数により、指令値に対してモータ角度の振幅が変化する。
(2)各モータのフィードバック系の制御時定数が異なるため、指令値に対して各モータ角度の位相が異なる。
(3)他軸の動作影響により、指令値に対してモータ角度の振幅が変化する。
【0008】
(4)他軸の動作影響により、指令値に対して各モータ角度の位相が異なる。
しかしながら、上述した特許文献1では、これらの問題点のなかの(1)のみを解決した技術であって、(2)〜(4)については何ら考慮されていない。
さらに、上述したこのような問題点を解決するための方法として、角度指令値を補正することが挙げられるが(特許文献1もこの手法を採用)、補正を行うためには、角度指令値に対する出力角度の変化特性をモデル化し、どの程度変化するのかを正確に予測する必要がある。補正する量が大きくなったり、モデルが複雑になったりすると、当然ながら誤差も増える。この誤差を低減させるためには、そもそも、上述した変化特性による振幅・位相の変化量を極力小さくするための制御を行う必要もある。
【0009】
また、特許文献2では、上述した4つの問題点のなかの(1)および(2)を解決した技術であり、(3)および(4)については何ら考慮されていない。
さらに、特許文献1に開示された技術と同じように、特許文献2に開示された技術も、モータの特性をモデル化し、振幅・位相の変化量を予測し、角度指令値を補正することにより問題を解決するため、根本的に補正量は小さくならず、補正する量が大きくなったり、モデルが複雑になると誤差が大きくなったりする。
【0010】
すなわち、これらの特許文献に開示された技術では、上述した4つ全ての問題点を解決して、高い軌跡精度でのウィービング動作を実現することができていない。
本発明は、上述の問題点に鑑みてなされたものであり、複数軸を備えた多関節ロボットにおいて、多関節ロボットの軸を動作させるモータ自身の動特性(上述した問題点(1)、(2))に起因するウィービング動作の誤差、および、他軸が動作することによる影響(上述した問題点(3)、(4))に起因するウィービング動作の誤差、が生じることを抑制して、高い軌跡精度でウィービング動作を可能とすることができる、多関節ロボットのウィービング制御装置を提供することを目的とする。
【課題を解決するための手段】
【0011】
上記課題を解決するため、本発明に係る多関節ロボットのウィービング制御装置は、以下の技術的手段を講じている。
即ち、本発明に係る多関節ロボットのウィービング制御装置は、多関節ロボットに取り付けられたツールが所望のウィービング軌跡を描くように複数の関節軸を駆動させる。このウィービング制御装置は、前記ウィービング軌跡に基づいて、
前記多関節ロボットの各軸の目標位置信号を演算する信号演算部と、前記演算された目標位置信号に対して、
前記多関節ロボットの固有振動成分を除去するためのローパスフィルタ処理を行い、
前記多関節ロボットの各軸についてフィルタ処理された目標指令信号を演算するフィルタ演算部と、フィルタ処理された目標指令信号を入力として、
前記多関節ロボットの各軸を駆動するモータ制御部とを含んで構成される。前記モータ制御部におけるゲインの周波数特性が、略フラットに構成され、前記信号演算部は、ゲイン補正された目標位置信号を演算することを特徴とする。
【0012】
好ましくは、前記モータ制御部は、位置フィードバック部と速度フィードバック部と速度フィードフォワード部とを含むように構成することができ、前記信号演算部は、前記フィルタ演算部におけるフィルタ特性および前記ウィービング軌跡に基づいて、ゲイン補正された目標位置信号を演算するように構成することができる。
さらに好ましくは、前記ローパスフィルタ処理で用いるフィルタは全軸で同様とするように構成することができ、前記信号演算部は、前記フィルタ演算部のフィルタ特性から得られるウィービング周波数におけるフィルタゲインの逆数を目標位置信号に乗算することにより、ゲイン補正された目標位置信号を演算するように構成することができる。
【0013】
さらに好ましくは、前記信号演算部は、前記フィルタ演算部のフィルタ特性およ
びウィービング周波数に基づいて、ゲイン補正に加えて、位相補償された目標位置信号を演算するように構成することができる。
さらに好ましくは、前記モータ制御部は、自軸が加減速することにより自軸に作用する慣性力、重力および摩擦力を予測し、前記速度フィードバック
部から出力されるトルク指令値に加えるフィードフォワード制御部をさらに含むように構成することができる。
【0014】
さらに好ましくは、前記モータ制御部は、他軸が加減速することにより自軸に作用する慣性力および遠心コリオリ力を予測し、前記速度フィードバック
部から出力されるトルク指令値に加えるフィードフォワード制御部をさらに含むように構成することができる。
【発明の効果】
【0015】
本発明に係るウィービング制御装置を用いることにより、複数軸を備えた多関節ロボットにおいて、多関節ロボットの軸を動作させるモータ自身の動特性に起因するウィービング動作の誤差、および、他軸が動作することによる影響に起因するウィービング動作の誤差、が生じることを抑制して、高い軌跡精度でのウィービング動作が可能となる。
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態に係る多関節ロボットのウィービング制御装置を、図面に基づき詳しく説明する。なお、以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り
返さない。
<第1の実施の形態>
[全体構成]
まず、第1の実施の形態に係るウィービング制御装置が適用される垂直多関節ロボット(以下、単に多関節ロボットと記載する場合がある)の概要について説明する。
【0018】
図1は、溶接トーチを傾動動作(ウィービング動作)させるロボットの一例であって、本実施の形態に係るウィービング制御装置が適用される多関節ロボット1の概要を示す図である。この多関節ロボット1は、垂直多関節型であってJ1〜J6の6関節を備え、J6軸の先端に溶接トーチが設けられ、溶接トーチから送りだされる溶接ワイヤによりアーク溶接が行われる。この多関節ロボット1は、予め定められた溶接開始点と溶接終了点との間が溶接作業区間であって、溶接開始点と溶接終了点とを結ぶ溶接線方向に移動しつつ、溶接ワイヤを予め定められた振幅および周波数で傾動する動作(ウィービング動作)を行うようにセットされている。
【0019】
このような多関節ロボット1は、図示した多関節ロボット1の本体に加えて、教示ペンダントを備え各軸をサーボ制御する制御装置(サーボ制御部)と、上位コンピュータ(上位CPU)とを含む。これらの制御装置および上位コンピュータにより、第1の形態に係るウィービング制御装置10が実現されている。
制御装置(サーボ制御部)は、多関節ロボット1に設けられた溶接トーチを、予め教示したプログラムに従って、上述した溶接線に倣ってウィービング動作して移動するように制御する。教示プログラムは、制御装置に接続された教示ペンダントを使用して作成する場合や、上位コンピュータを利用したオフライン教示システムを使用して作成する場合がある。いずれの場合であっても、教示プログラムは、実際の動作の前に予め作成される。
【0020】
[制御ブロック]
図2に、
図1の多関節ロボット1を制御するウィービング制御装置10の制御ブロック図を示す。このウィービング制御装置10は、多関節ロボット1に取り付けられたツール(ここでは溶接トーチ)に所望の動作(ここではウィービング動作)を行わせるように複数の関節軸を駆動させる。
図2は、複数ある関節軸(
図1の例示では6軸)のなかの1つの関節軸に対応している。
【0021】
このウィービング制御装置10は、ウィービング軌跡に基づいて、多関節ロボット1の各軸の目標位置信号を演算する信号演算部(ウィービング信号生成部100、ウィービング信号補正部200、基本位置信号生成部300)と、演算された目標位置信号に対して、多関節ロボット1の固有振動成分を除去するためのローパスフィルタ処理を行い、多関節ロボット1の各軸についてフィルタ処理された目標指令信号を演算するフィルタ演算部400と、フィルタ処理された目標指令信号を入力として、多関節ロボット1の各軸を駆動するモータ制御部500とを含む。ここで、モータ制御部500は、位置フィードバック部510と速度フィードバック部と速度フィードフォワード部520とを含み、モータ制御部500におけるゲインの周波数特性が、略フラットに構成され、信号演算部のウィービング信号補正部200は、ゲイン補正された目標位置信号を演算することが特徴である。ここで、略フラットとは、モータ制御部500におけるゲインの周波数特性が、良好なウィービング動作に影響を与えない程度に、フラットに構成されていることを意味する。言い換えれば、モータ制御部500の特性をボード線図で示した場合、ボード線図上のゲイン曲線が平坦、または、良好なウィービング動作に影響を与えない程度に平坦になっていることを意味する。
【0022】
なお、以下において、制御ブロックにおける要素の特性は(動特性との記載がなくても)全て動特性である。また、FBの記載はフィードバックを意味し、FFの記載はフィードフォワードを意味する。以下に、さらに詳しく各ブロックについて説明する。
基本位置信号生成部300は、ウィービング動作しない場合の多関節ロボット1の先端軌跡を描くための多関節ロボット1の各軸の角度位置として基本位置信号を生成する。
【0023】
ウィービング信号生成部100は、ウィービング動作する場合の多関節ロボット1の先端軌跡を描くための多関節ロボット1の各軸の角度位置から、基本位置信号生成部300
で生成された角度位置を引いた角度位置としてウィービング信号を生成する。この角度位置は、基本的に、指定されるウィービング周波数の周期信号になる。
ウィービング信号補正部200は、ウィービング信号生成部100で生成されたウィービング信号を補正し、ウィービング補正信号を生成する。第1の実施の形態においては、ウィービング信号補正部200における補正方法が、フィルタ演算部400で使用するフィルタに基づいて行うことが特徴である。この補正方法の詳細については、後述する。
【0024】
フィルタ演算部400は、基本位置信号とウィービング補正信号とを足し合わせた目標位置信号に対して、多関節ロボット1の固有振動成分を除去するためのローパスフィルタ処理を行い、フィルタ後目標位置信号を生成する。ここで生成されるフィルタ後目標位置信号はモータ制御部500での制御方法に応じて、角度位置に加え、角速度、角加速度も生成する。フィルタ処理方法の詳細については、後述する。
【0025】
モータ制御部500は、フィルタ後目標位置信号に基づいて、モータ550を制御する。最も一般的なモータ制御方法として、
図2の詳細図である
図3に示すように、エンコーダ560の検出角度に基づいた位置(フィードバック)制御部510、速度(フィードバック)制御部530、電流制御部540による制御が行われる。第1の実施の形態においては、これらに加えて、フィルタ後目標速度信号に速度フィードフォワードゲインを乗算することによる速度フィードフォワード制御を行う速度フィードフォワード部520を加えることを特徴とする。モータ制御方法の詳細については、後述する。
【0026】
第1の実施の形態に係るウィービング制御装置10は、モータ制御部500での制御方法に速度フィードフォワード制御を加えることにより、モータ550の動特性による遅れを低減し、目標位置信号からエンコーダで検出される現在位置信号までの動特性をフィルタ演算部400で使用されるフィルタで近似できることを特徴とする。
そして、目標位置信号から現在位置信号までの動特性を任意設計したフィルタに近似できることを利用して、ウィービング信号をこのフィルタ特性を考慮して補正し、ウィービング補正信号を生成することを特徴とする。
【0027】
これにより、多関節ロボット1の各軸でのモータ550の動特性による遅れによって乱れるウィービング波形を、設定したフィルタに基づいて補正するだけで、良好なウィービング波形を得ることができる。
[フィルタ処理方法およびモータ制御方法]
ここでは、
図2または
図3に示す、第1の実施の形態に係るウィービング制御装置10のフィルタ演算部400、および、モータ制御部500について説明する。
【0028】
ここで、Tはフィルタ時定数、Kxpは位置制御部510の比例ゲイン、KvpとKviとは速度制御部530の比例ゲインと積分ゲイン、Kvfは速度フィードフォワード部520のフィードフォワードゲイン、sはラプラス演算子を示す。
なお、T、Kxp、Kvp、Kviは、多関節ロボット1の動特性に応じて設定し、Kvfは0〜1の値で設定される。また、ここでは、フィルタ演算部400では1次のローパスフィルタを用いてフィルタ後目標位置信号として、角度位置、角速度を計算する。そして、角度位置、角速度に基づいて
図3に示すモータ制御が行われる。なお、フィルタ演算部400のローパスフィルタは、必要に応じて2次や3次のフィルタを用いてもよい。
【0029】
図2で示した制御方法によりモータ550の動特性による遅れを低減し、
図3に示す目標位置信号θから現在位置信号θrまでの特性を、フィルタ演算部400で使用される1次のローパスフィルタ(F(s)=1/(T・s+1))で近似できることを、
図4を参照して説明する。
図4は、目標位置信号θをある正弦波信号とした場合の各出力波形を表している。実線が目標位置信号、破線がフィルタ後目標位置信号、一点鎖線が速度フィードフォワード制御を使用した時のモータ550の現在位置信号、点線が速度フィードフォワード制御を使用していない時のモータ550の現在位置信号である。これを見ると、速度フィードフォワード制御使用時の現在位置信号はフィルタ後目標位置信号に近く、目標位置信号θから現在位置信号θrまでの特性をフィルタ特性に近似できていることがわかる。また、一方で、速度フィードフォワード制御を使用していない時には、大きく振幅が減少しており、
補正を行う際には大きな補正を行う必要があることがわかる。
【0030】
[ウィービング信号補正方法]
上述したフィルタ処理方法およびモータ制御方法を用いることにより、目標位置信号θから現在位置信号θrまでの動特性を、任意に設計したフィルタの伝達関数で近似することができる。ウィービング信号補正部200では、このことを利用して、ウィービング信号を補正する。以下、2通りの補正方法(ゲイン補正方法、ゲイン位相補正方法)を説明する。
【0031】
・ゲイン補正方法
このゲイン補正方法では、ウィービング信号生成部100で生成されたウィービング信号(ウィービング周波数はω[Hz])にフィルタ演算部400で使用されるフィルタF(s)の周波数ωでのゲイン(フィルタゲイン)の逆数を乗算することにより、ウィービング補正信号を生成する。このときのウィービング補正信号の算出式は、以下の式(1)で表される。
【0033】
これにより、モータ550に対して、周期信号を入力した際の振幅変化を補正することができる。なお、ここでの補正は、モータ550の動特性に依存せず、任意設計したフィルタにのみ基づいて補正を行うことができる。
ただし、ここでは位相変化に対しては補正を行っていないため、各軸のフィルタ演算部400で異なるフィルタを設定すると、各軸の位相変化量が異なり、良好なウィービング波形が得られない。そのため、このゲイン補正方法を用いる際はフィルタ演算部400で使用するフィルタを多関節ロボット1の全軸で同じものとし、全軸の位相変化量を同等にすることが好ましい。
【0034】
このようなゲイン補正方法(補正方法1)を使用する制御ブロック(
図6)を用いた場合の出力波形を
図7に示す。
図7には、補正方法1による出力波形と、比較のために従来技術1(特許文献1による技術、以下では従来技術1と記載)による補正を実施した際の出力波形を表している。実線がウィービング信号、一点鎖線が補正方法1によるモータ550の現在位置信号、点線が従来技術1によるモータ550の現在位置信号である。なお、ここでは単軸のみ駆動するものとしているため、他軸が動作することによる影響はでていない。
【0035】
これを見ると、どちらのモータ550の現在位置信号の振幅もウィービング信号の振幅に近く適切に補正できていることがわかる。ただ、従来技術1による補正は、完全にモータモデルが分かっているとして補正を行っている。
図8に、このような従来技術1において、モータモデルがずれた際の結果を示す。この
図8を見ると、従来技術1によるモータ550の現在位置信号の振幅は大きくずれていることがわかる。すなわち、従来技術1による補正でモータモデルがずれると、好ましい制御が実現できないことを示す。
【0036】
・ゲイン位相補正方法
このゲイン位相補正方法では、ウィービング信号生成部100で生成されたウィービング信号(ウィービング周波数はω[Hz])にフィルタ演算部400で使用されるフィルタF(s)およびウィービング周波数に基づいて、ウィービング信号の振幅変化および位相遅れを推測して補償を行う。たとえば、位相遅れは以下の式(2)で、振幅変化は以下の式(3)で推測し、これらの値に基づき、位相進み補償およびゲイン補正を行う。
【0037】
これにより、モータ550に対して、周期信号を入力した際の振幅変化および位相変化を補正することができる。
【0040】
図9に、このようなゲイン位相補正方法(補正方法2)を使用する制御ブロック(
図6)を用いた場合の出力波形を示す。補正方法2は、補正方法1に対して、位相の遅れも補償する。このため、
図9を見ると、補正方法1よりも、ウィービング信号と、補正方法2によるモータ550の現在位置信号との位相のずれが少ないことがわかる。
以上のようにして、第1の実施の形態に係るウィービング制御装置によると、モータ制御部において速度フィードフォワード制御を実施することにより、目標位置からモータ出力角度までの特性をローパスフィルタ処理で使用するフィルタに近似することができる。このフィルタに基づき、目標位置の振幅の補正を行うようにしたので、多関節ロボットにおいて、多関節ロボットの軸を動作させるモータ自身の動特性に起因するウィービング動作の誤差が生じることを抑制して、高い軌跡精度でウィービング等の動作を可能とすることができる。なお、各軸の位相のずれは全軸同じフィルタを用いることで解決している。その結果、従来技術では、制御装置も含めたモータのモデル化を行ってモデルに基づいて目標位置の補正を行ってために発生していた問題点(補正にかかる計算量が多く、モデルの誤差が大きい場合には上手く補正できない)を解決できるようになった。
【0041】
<第2の実施の形態>
以下、本発明の第2の実施の形態に係るウィービング制御装置20について説明する。なお、本実施の形態に係るウィービング制御装置は、上述した第1の実施の形態に係るウィービング制御装置10のモータ制御部の制御特性の与え方が異なる。それ以外は、第1の実施の形態と同じであるので、上述した説明と重複する部分についてはここでは繰り返さない。
【0042】
上述した第1の実施の形態においては、モータ制御部500で速度フィードフォワード部520を設けることにより、目標位置信号から現在位置信号までの動特性を任意設計したフィルタに近似できるようにした。しかしながら、この近似精度では十分でない場合がある。
この理由としては、多関節ロボット1の各関節は、多関節ロボット1の姿勢に応じて変化する慣性力または/および重力の影響、速度等に依存している摩擦力の影響を受けているため、速度フィードフォワード制御のみでは、目標位置信号から現在位置信号までの動特性を十分に任意設計したフィルタに近似させることができない。
【0043】
第2の実施の形態に係るウィービング制御装置20は、目標位置信号から現在位置信号までの動特性を任意設計したフィルタにより厳密に近似できるようにするための制御を加える。このようにすると、任意設計したフィルタに基づいてウィービング信号の補正を行うだけでウィービング精度をさらに向上できることになる。
図10は、第2の実施の形態に係るウィービング制御装置20の制御ブロック図である。多関節ロボット1のある関節軸に対応している。
図10も
図2と同様に、複数ある関節軸のなかの1つの関節軸に対応している。
【0044】
図2に示したウィービング制御装置10との差は、ウィービング制御装置20は、モータ制御部500に代えてモータ制御部1500を備える点、そのモータ制御部1500に他軸の情報を与える他軸目標位置信号出力部600をさらに備える点である。
モータ制御部1500は、ウィービング制御装置10のモータ制御部500の構成に加えて、慣性項フィードフォワード部1510、重力項フィードフォワード部1520および摩擦項フィードフォワード部1530を備える。他軸目標位置信号出力部600から出力される、フィルタ後の目標位置信号(他軸)は、これらの慣性項フィードフォワード部1510、重力項フィードフォワード部1520および摩擦項フィードフォワード部1530に入力される。3種類のフィードフォワード部では、フィルタ後の目標位置信号(他軸)に基づいて、多関節ロボット1の姿勢がわかり、自軸の状態がわかるので、自軸の慣性等がわかる。以下に、各ブロックについて詳しく説明する。
【0045】
他軸目標位置信号出力部600は、他軸で同様に生成されるフィルタ演算部400から
の出力であるフィルタ後目標位置信号(角度、角速度、角加速度)を出力する。たとえば、多関節ロボット1が6軸の場合には、対象としている軸以外の5軸分のフィルタ後目標位置信号をモータ制御部1500へ出力する。
慣性項フィードフォワード部1510は、多関節ロボット1の姿勢により決まる自軸に働く慣性力を予測し、電流制御部540のフィードフォワード制御のトルク指令値として出力する。
【0046】
重力項フィードフォワード部1520は、多関節ロボット1の姿勢により決まる自軸に働く重力影響を予測し、電流制御部540のフィードフォワード制御のトルク指令値として出力する。
摩擦項フィードフォワード部1530は、自軸に働く摩擦力を予測し、電流制御部540のフィードフォワード制御のトルク指令値として出力する。
【0047】
第2の実施の形態に係るウィービング制御装置20の特徴は、ウィービング制御装置10のモータ制御部500に3種のフィードフォワード制御部を加えることにより、目標位置信号からエンコーダ560で検出される現在位置信号までの動特性を、より厳密にフィルタ演算部400で使用されるフィルタに近似できることである。
これにより、第1の実施の形態にて説明した、フィルタに基づいてウィービング信号の補正を行うだけで、良好なウィービング波形を得ることができる。
【0048】
なお、ここで実施している3種のフィードフォワード制御は、多関節ロボット1のモデル(運動方程式)に基づいて設計される。ここでは、
図11に示す2リンクロボットを対象として、各種フィードフォワード制御(慣性項、重力項、摩擦項)の計算方法について説明する。
図11に示す2リンクロボットにおける運動方程式を求めると、各関節に作用するトルクτ
1、τ
2は、以下の式(4)および式(5)でそれぞれ表される。そして、以下の式(6)〜式(13)に示すように計算されて、1軸目に関する3種類のフィードフォワード制御(慣性項、重力項、摩擦項)の出力が式(14)に示すように求まる。
【0060】
上記の3種類のフィードフォワード制御を実施すれば、目標位置信号からエンコーダ560で検出される現在位置信号までの動特性を、フィルタ演算部400で使用されるフィルタに一致させることができる。なお、第2の実施の形態においては、他軸の動作の影響に関しては考慮していないので、単軸動作する場合に限る。他軸が動作することによる影響を考慮した場合は後述の第3の実施の形態で検討する。
【0061】
また、上記の3種類のフィードフォワード制御を部分的に実施するだけでも、目標位置信号からエンコーダ560で検出される現在位置信号までの動特性を、フィルタ演算部400で使用されるフィルタ特性に(第1の実施の形態よりも)さらに近づけることができる。
図12および
図13は、上記の2リンクロボットの2軸目に、ある正弦波信号を目標位置信号として入力した場合の出力波形を表している(1軸目の目標位置信号はゼロ)。実線が目標位置信号、破線がフィルタ後目標位置信号、一点鎖線がモータ550の現在位置信号である。
【0062】
また、
図12が第1の実施の形態に対応するものであって、速度フィードフォワード制御のみを使用した場合の出力波形を示し、
図13が第2の実施の形態に対応するものであって、速度フィードフォワード制御、慣性項フィードフォワード制御、重力項フィードフォワード制御および摩擦項フィードフォワード制御を使用した場合の出力波形を示している。
【0063】
これらを見ると、速度フィードフォワード制御に加えて3種類のフィードフォワード制御を実施することにより、速度フィードフォワード制御のみの場合よりも、現在位置信号がフィルタ後目標位置信号にさらに近づき、目標位置信号から現在位置信号までの動特性をフィルタ特性に近似する際の精度を向上できることがわかる。
これにより、第1の実施の形態において説明したように、フィルタに基づいてウィービング信号の補正を行うだけで、良好なウィービング波形を得ることができる。
【0064】
第1の実施の形態にて説明したゲイン補正方法(補正方法1)を使用する制御ブロック(
図14)を用いた場合の出力波形を
図15に示す。
図15には、補正方法1を第2の実施の形態に適用した場合の出力波形と、比較のために、補正方法1を第1の実施の形態に適用した場合の出力波形とを表す。
図15は、2軸目に、ある正弦波信号をウィービング信号として入力した場合に、補正方法1(ゲイン補正)を行った場合の2軸目の出力波形を表している。実線がウィービング信号、一点鎖線が第2の実施の形態(実施例2)にて補正方法1を行った場合のモータ
550の現在位置信号、点線が第1の実施の形態(実施例1)にて補正方法1を行った場合のモータ550の現在位置信号である。なお、ここでは、単軸のみ駆動するものとしているため、他軸が動作することによる影響はでていない。これを見ると、第2の実施の形態の方がモータ550の現在位置信号の振幅がウィービング信号の振幅に近く、適切に補正できていることがわかる。
【0065】
以上のようにして、第2の実施の形態に係るウィービング制御装置によると、第1の実施の形態に係るウィービング制御装置における制御に加えて、各軸に働く慣性力、重力および摩擦力を予め予測し、適切なトルク指令値としてモータへ入力することにより、目標位置からモータ出力角度までの動特性をフィルタへ近似する精度を向上させることができる。このフィルタに基づき、目標位置の振幅の補正を行うようにしたので、多関節ロボットにおいて、多関節ロボットの軸を動作させるモータ自身の動特性に起因するウィービング動作の誤差、および、他軸が動作することによる自軸の影響に起因するウィービング動作の誤差、が生じることを抑制して、高い軌跡精度でウィービング等の動作を可能とすることができる。
【0066】
<第3の実施の形態>
以下、本発明の第3の実施の形態に係るウィービング制御装置30について説明する。なお、本実施の形態に係るウィービング制御装置は、上述した第1の実施の形態に係るウィービング制御装置10のモータ制御部の制御特性の与え方が異なる。それ以外は、第1の実施の形態と同じであるので、上述した説明と重複する部分についてはここでは繰り返さない。
【0067】
上述した第2の実施の形態においては、第1の実施の形態で実装した速度フィードフォワード部520に3種類のフィードフォワード制御部を設けることにより、目標位置信号から現在位置信号までの動特性を任意設計したフィルタにさらに近似できるようにした。しかしながら、第2の実施の形態においては、他軸が動作することによる影響に関しては考慮していない。このため、他軸の影響を考慮して近似しなければならない場合もある。
【0068】
第3の実施の形態に係るウィービング制御装置30は、目標位置信号から現在位置信号までの動特性を任意設計したフィルタによりさらに厳密に近似できるようにするための制御を加える。このようにすると、任意設計したフィルタに基づいてウィービング信号の補正を行うだけでウィービング精度をさらに向上できることになる。
図16は、第3の実施の形態に係るウィービング制御装置30の制御ブロック図である。多関節ロボット1のある関節軸に対応している。
図16も、
図2および
図10と同様に、複数ある関節軸のなかの1つの関節軸に対応している。
【0069】
図10に示したウィービング制御装置20との差は、ウィービング制御装置30は、モータ制御部1500に代えてモータ制御部2500を備える点である。
モータ制御部2500は、ウィービング制御装置20のモータ制御部1500の構成に加えて、干渉慣性項フィードフォワード部2510および遠心コリオリ項フィードフォワード部2520を備える。他軸目標位置信号出力部600から出力される、フィルタ後の目標位置信号(他軸)は、これらの干渉慣性項フィードフォワード部2510および遠心コリオリ項フィードフォワード部2520に入力される。なお、他軸目標位置信号出力部600から、慣性項フィードフォワード部1510、重力項フィードフォワード部1520および摩擦項フィードフォワード部1530にフィルタ後の目標位置信号(他軸)が入力される点は、ウィービング制御装置20と同じである。以下に、各ブロックについて詳しく説明する。
【0070】
干渉慣性項フィードフォワード部2510は、他軸が動作することによる自軸のアームに働く慣性力を予測し、電流制御部540のフィードフォワード制御のトルク指令値として出力する。
遠心コリオリ項フィードフォワード部2520は、他軸が動作することによる自軸のアームに働く遠心コリオリ力を予測し、電流制御部540のフィードフォワード制御のトルク指令値として出力する。
【0071】
第3の実施の形態に係るウィービング制御装置30の特徴は、第2の実施の形態に係る
ウィービング制御装置20のモータ制御部1500に、さらに、他軸が動作した際の影響を補償するための2種類のフィードフォワード制御部を加えることにより、目標位置信号からエンコーダ560で検出される現在位置信号までの動特性を、より厳密にフィルタ演算部400で使用されるフィルタに近似できることである。
【0072】
これにより、第1および第2の実施の形態にて説明した、フィルタに基づいてウィービング信号の補正を行うだけで、良好なウィービング波形を得ることができる。
なお、ここで実施している2種のフィードフォワード制御は、多関節ロボット1のモデル(運動方程式)に基づいて設計される。ここでは、
図11に示す2リンクロボットを対象として、各種フィードフォワード制御(干渉慣性項、遠心コリオリ項)の計算方法について説明する。
【0073】
図11に示す2リンクロボットにおける運動方程式を求めると、各関節に作用するトルクτ
1、τ
2は、以下の式(15)および式(16)でそれぞれ表される。そして、以下の式(17)〜式(19)に示すように計算されて、1軸目に関する2種類のフィードフォワード制御(干渉慣性項、遠心コリオリ項)の出力が式(20)に示すように求まる。なお、以下の式では、干渉慣性項および遠心コリオリ項に関係のない部分は記載していない。
【0080】
上記の2種類のフィードフォワード制御を、第2の実施の形態に係る3種類のフィードフォワード制御に加えて実施すれば、他軸が動作した場合でも、目標位置信号からエンコーダ560で検出される現在位置信号までの動特性を、フィルタ演算部400で使用されるフィルタに一致させることができる。
また、上記の2種類のフィードフォワード制御を部分的に実施するだけでも、目標位置信号からエンコーダ560で検出される現在位置信号までの動特性を、フィルタ演算部400で使用されるフィルタ特性に(第1および第2の実施の形態よりも)さらに近づけることができる。
【0081】
図17および
図18は、上記の2リンクロボットの各関節に、ある正弦波信号を目標位置信号として入力した場合の2軸目の出力波形を表している。実線が目標位置信号、破線がフィルタ後目標位置信号、一点鎖線がモータ550の現在位置信号である。
また、
図17が第2の実施の形態に対応するものであって、速度フィードフォワード制御、慣性項フィードフォワード制御、重力項フィードフォワードおよび摩擦項フィードフ
ォワード制御を使用した場合の出力波形を示し、
図18が第3の実施の形態に対応するものであって、干渉慣性項フィードフォワード制御および遠心コリオリ項フィードフォワード制御を使用した場合の出力波形を示している。
【0082】
これらを見ると、干渉慣性項フィードフォワード制御および遠心コリオリ項フィードフォワード制御を追加することにより、他軸が動作した場合でも、現在位置信号がフィルタ後目標位置信号にさらに近づき、目標位置信号から現在位置信号までの動特性をフィルタ特性に近似する際の精度を向上できることがわかる。
これにより、第1および第2の実施の形態において説明したように、フィルタに基づいてウィービング信号の補正を行うだけで、良好なウィービング波形を得ることができる。
【0083】
第1の実施の形態にて説明したゲイン補正方法(補正方法1)を使用する制御ブロック(
図19)を用いた場合の出力波形を
図20に示す。
図20には、補正方法1を第3の実施の形態に適用した場合の2軸目の出力波形と、比較のために、補正方法1を第2の実施の形態に適用した場合の2軸目の出力波形とを表す。
図20は、各関節に、ある正弦波信号をウィービング信号として入力した場合に、補正方法1(ゲイン補正)を行った場合の2軸目の出力波形を表している。実線がウィービング信号、一点鎖線が第3の実施の形態(実施例3)にて補正方法1を行った場合のモータ550の現在位置信号、点線が第2の実施の形態(実施例2)にて補正方法1を行った場合のモータ550の現在位置信号である。これを見ると、第3の実施の形態の方がモータ550の現在位置信号の振幅がウィービング信号の振幅に近く、適切に補正できていることがわかる。
【0084】
以上のようにして、第3の実施の形態に係るウィービング制御装置によると、第2の実施の形態に係るウィービング制御装置における制御に加えて、i軸(自軸)以外の軸が加減速することによりi軸に働く慣性力および遠心コリオリ力を予め予測し、適切なトルク指令値としてモータへ入力することにより、他軸が動作することによる影響を抑え、目標位置からモータ出力角度までの動特性をフィルタへ近似する精度を向上させることができる。このフィルタに基づき、目標位置の振幅の補正を行うようにしたので、多関節ロボットにおいて、多関節ロボットの軸を動作させるモータ自身の動特性に起因するウィービング動作の誤差、および、他軸が動作することによる影響に起因するウィービング動作の誤差、が生じることを抑制して、高い軌跡精度でウィービング等の動作を可能とすることができる。
【0085】
<変形例>
以下、本発明の実施の形態の変形例に係るウィービング制御装置について説明する。なお、本変形例は、上述した第1〜第3の実施の形態に係るウィービング制御装置に適用でき、フィルタ演算部400に入力される目標位置信号の生成方法に関するものである。それ以外は、第1〜第3の実施の形態と同じであるので、上述した説明と重複する部分についてはここでは繰り返さない。
【0086】
上述した実施の形態においては、ウィービング信号の補正を多関節ロボット1の各軸座標系で行っていた。このために、
図21に示すように、各軸座標系で基本位置信号とウィービング信号とを分離して算出する必要がある。しかしながら、このようにすると、ウィービングする場合としない場合とでそれぞれ各軸の角度指令値を算出するために逆変換を行う必要があり、計算負荷が大きくなる。
【0087】
そこで、本変形例においては、より簡易に補正を行うことができるようにする。
図22を参照して、本変形例について説明する。
図22に示すように、本変形例においては、上述した実施の形態(
図2、
図10、
図16)の制御ブロックにおいて、逆変換演算部700を備える。以下に、各ブロックについて詳しく説明する。
【0088】
ウィービング波形生成部1100は、指令された振幅および周波数でウィービングを行うために、上述した基本位置波形に加えられる波形を、ウィービング波形として生成する。このウィービング波形は、先端位置を表すための3次元位置と先端姿勢を表すための角度とで表現される。
ウィービング波形補正部1200は、ウィービング波形生成部1100で生成されたウィービング波形を補正し、ウィービング補正波形を生成する。補正方法に関しては、第1の実施の形態にて説明したものと同様である。
【0089】
基本波形生成部1300は、ウィービングをしない場合の多関節ロボット1の先端軌跡としての基本位置波形を生成する。この基本位置波形は、先端位置を表すための3次元位置と先端姿勢を表すための角度とで表現される。
逆変換演算部700は、基本位置波形にウィービング補正波形が加えられた目標波形に対して逆変換を行い、各関節の目標位置信号を生成する。この目標波形は、先端位置を表すための3次元位置と先端姿勢を表すための角度とで表現される。
【0090】
このように、本変形例によると、逆変換は1回のみでよく、計算負荷を増やすことなく本実施の形態に係る補正方法を適用することができる。
なお、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。