(57)【特許請求の範囲】
【請求項１】
多関節ロボットに取り付けられたツールに所望の動作を行わせるように複数の関節軸をモータにより駆動させる多関節ロボットの軌跡制御装置において、
所望のツール動作を実現するための各関節軸の関節角度指令値θｃを算出して出力する関節角度指令値計算部と、
前記関節角度指令値θｃ通りに動作した際に発生する各関節軸間で相互に作用する干渉トルクを、動力学モデルに基づいて関節角度指令値θｃから算出して、干渉トルク補償指令値ｃｃを出力する干渉トルク補償指令値計算部と、
ロボットの固有振動周波数よりも低いカットオフ周波数を有する高周波遮断特性を備え、前記関節角度指令値θｃをフィルタリング処理して、処理後の関節角度目標値θｄを出力する第１の動特性演算部と、
前記関節角度目標値θｄが前記モータに対する目標値として入力される関節角度制御部と、
前記第１の動特性演算部よりも低いまたは同等のカットオフ周波数を有する高周波遮断特性を備え、前記干渉トルク補償指令値計算部への入力および前記干渉トルク補償指令値計算部からの出力の少なくともいずれかをフィルタリング処理して、処理後の干渉トルク補償値ｃｄを出力する第２の動特性演算部と、
前記関節角度制御部から出力されるモータトルク指令値に、前記干渉トルク補償値ｃｄが加算された値が目標値として入力されるモータ電流制御部と、を含んで構成されており、
各軸間の干渉がない状態での関節角度目標値θｃから実際の関節角度θまでのフィードバック制御動特性を、位置フィードバックゲインおよび速度フィードバックゲインの少なくともいずれかを含むパラメータに基づいて算出するように構成され、
前記第２の動特性演算部におけるカットオフ周波数を前記第１の動特性演算部におけるカットオフ周波数よりも低くするとともに、前記第２の動特性演算部における特性を前記フィードバック制御動特性で除した特性に対応するように、前記第１の動特性演算部の特性を与えるように構成されていることを特徴とする多関節ロボットの軌跡制御装置。
【請求項２】
前記関節角度制御部の応答が遅い軸の第１の動特性演算部の位相遅れを、前記関節角度制御部の応答が速い軸の第１の動特性演算部の位相遅れよりも短く与えるように構成され
ていることを特徴とする、請求項１に記載の多関節ロボットの軌跡制御装置。
【請求項３】
前記多関節ロボットの姿勢に応じて、前記第１の動特性演算部の特性を変更するように構成されていることを特徴とする、請求項１または請求項２に記載の多関節ロボットの軌跡制御装置。
【請求項４】
前記モータ電流制御部の電流制御特性を考慮する場合、前記第２の動特性演算部における特性を前記フィードバック制御動特性で除すとともに、電流制御特性を乗じた特性に対応するように、前記第１の動特性演算部の特性を与えるように構成されていることを特徴とする、請求項１に記載の多関節ロボットの軌跡制御装置。
【請求項５】
多関節ロボットに取り付けられたツールに所望の動作を行わせるように複数の関節軸をモータにより駆動させる多関節ロボットの軌跡制御方法において、
所望のツール動作を実現するための各関節軸の関節角度指令値θｃを算出して出力する関節角度指令値計算ステップと、
前記関節角度指令値θｃ通りに動作した際に発生する各関節軸間で相互に作用する干渉トルクを、動力学モデルに基づいて関節角度指令値θｃから算出して、干渉トルク補償指令値ｃｃを出力する干渉トルク補償指令値計算ステップと、
ロボットの固有振動周波数よりも低いカットオフ周波数を有する高周波遮断特性を備え、前記関節角度指令値θｃをフィルタリング処理して、処理後の関節角度目標値θｄを出力する第１の動特性演算ステップと、
前記関節角度目標値θｄが前記モータに対する目標値として入力される関節角度制御ステップと、
前記第１の動特性演算ステップよりも低いまたは同等のカットオフ周波数を有する高周波遮断特性を備え、前記干渉トルク補償指令値計算ステップへの入力および前記干渉トルク補償指令値計算ステップからの出力の少なくともいずれかをフィルタリング処理して、処理後の干渉トルク補償値ｃｄを出力する第２の動特性演算ステップと、
前記関節角度制御ステップから出力されるモータトルク指令値に、前記干渉トルク補償値ｃｄが加算された値が目標値として入力されるモータ電流制御ステップと、を含んで構成されており、
各軸間の干渉がない状態での関節角度目標値θｃから実際の関節角度θまでのフィードバック制御動特性を、位置フィードバックゲインおよび速度フィードバックゲインの少なくともいずれかを含むパラメータに基づいて算出するようにし、
前記第２の動特性演算ステップにおけるカットオフ周波数を前記第１の動特性演算ステップにおけるカットオフ周波数よりも低くするとともに、前記第２の動特性演算ステップにおける特性を前記フィードバック制御動特性で除した特性に対応するように、前記第１の動特性演算ステップの特性を与えるようにすることを特徴とする多関節ロボットの軌跡制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、たとえば、アーク溶接に用いられる多関節ロボットの制御に関し、特に、高い軌跡精度でウィービング動作を可能とする多関節ロボットの軌跡制御に関する。
【背景技術】
【０００２】
アーク溶接により複数の母材の溶接を行う際には、溶接電極を溶接方向に進ませつつ、溶接線の左右方向に正弦波ウィービング動作をさせながら溶接するウィービング溶接が採用される。このウィービング溶接は、従来から、溶接トーチ自体を左右に揺動させるか、または溶接トーチ自体を中心として左右に傾動させることにより行っている。このようなウィービング溶接を多関節ロボットに行わせる場合、高い軌跡精度が要求される。
【０００３】
このような多関節ロボットにおいては、各軸単位でサーボ制御されているが、固有振動数が低いため、振動抑制の観点から、速度フィードフォワードなどはほとんど適用されず、目標値に対して実際のフィードバック値の位相遅れは大きく、サーボ制御部の速度制御部の応答特性が軸毎に異なり、軌跡誤差に繋がっていた。また、サーボ制御部の位置・速度制御特性は、ロボットの姿勢変化に伴う慣性変化によって（特に位相遅れ特性が）変化するため、各軸間干渉トルクなどを目標値から逆算し補償する非線形補償制御も位相のずれによりほとんど有効に機能していなかった。このような多関節ロボットの軌跡制御について、以下のような技術が公知である。
【０００４】
特開平１０−２１７１７３号公報（特許文献１）は、安定した軌跡精度を得ることのできる多軸ロボットの非干渉化制御装置を開示する。このロボットの非干渉化制御装置は、少なくとも２本以上のアームが関節部を介し、シリアルに結合された構造を持つロボットを制御する多軸ロボット制御装置において、各アームの角度と、各アームの質量、長さ等の動力学パラメータとから慣性行列を作成する慣性行列計算機構と、各アームの加速度を含む非干渉化用状態変数を演算する演算機構と、これら状態変数に乗算する非干渉化ゲインを演算する演算機構と、前記非干渉化用状態変数と前記非干渉化ゲインとを乗算および加算する乗算部および加算部と、その計算の結果得られる非干渉化トルク指令から高調波リップル分を除去するためのフィルタ処理部を有することを特徴とする。
【０００５】
また、特公平８−７６２５号公報（特許文献２）は、軌跡指令に対する系の追従性を高めた位置制御装置を開示する。この位置制御装置は、１軸または複数軸を有し、各軸が位置フィードバック制御によって制御される位置制御装置において、位置フィードバックループに加えて、位置指令を入力側とし、フィードフォワードゲインを有する微分要素とむだ時間要素を直列に有し、前記位置フィードバックループの位置ループゲインの後段に速度フィードフォワード補償出力が加算されるフィードフォワードループを設けたことを特徴とする。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平１０−２１７１７３号公報
【特許文献２】特公平８−７６２５号公報（特開平３−４０００８号公報）
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述した特許文献１では、各軸間の干渉を非干渉化する手法が開示されている。しかしながら、アーム加速度の１階微分値、２階微分値が必要であり、非常にノイズに弱く、また少し急峻な動作をさせただけで、アーム加速度の２階微分値は天文学的な値を示すなど、実現する上で非常に制約が大きい。
また、特許文献２では、速度フィードフォワードにフィルタ処理することで、ロボットの固有振動を励起することなくフィードフォワードゲインをアップする手法が開示されている。しかしながら、この技術によるフィードフォワードゲインのアップは微々たるものであり、根本的な解決には至っていない。また、各軸間の制御特性の違いや姿勢による制御特性変化については、対応していない。さらに、目標位置の微分値とフィルタ後の速度
フィードフォワードの値が位相が異なることから、所望の制御特性を実現することが困難になっている。
【０００８】
すなわち、従来技術では、以下のような問題を解決できていない。
（１）ロボットの固有振動数が低い状態で、各軸間を非干渉化する非線形補償制御を有効に作用させることができないため、各軸干渉トルクの影響を補償できず、精度劣化につながっている。
（２）サーボ制御部の位相遅れがある状態において、各軸間を非干渉化する非線形補償制御を有効に作用せせることができないため、各軸干渉トルクの影響を補償できず、精度劣化につながっている。
【０００９】
（３）軸毎にサーボ制御特性が異なるため、各軸の応答に差が発生し、軌跡精度の劣化につながっている。
（４）ロボット姿勢によってサーボ制御特性が変化し、軌跡精度の劣化につながっている。
（５）溶接ロボットのウィービング動作では、ウィービング周期での位相遅れおよびゲイン特性を各軸そろえることが非常に重要であるが、各軸間の干渉や姿勢によるサーボ特性変化や軸毎での特性の差異によって、位相・ゲイン特性を高周波ウィービング動作でそろえることが非常に困難である。
【００１０】
本発明は、上述の問題に鑑みてなされたものであり、複数軸を備えた多関節ロボットにおいて、各軸の干渉トルクの影響を補償して高い軌跡精度でウィービング等の動作を可能とすることができる、多関節ロボットの軌跡制御装置および制御方法を提供することを目的とする。
【課題を解決するための手段】
【００１１】
上記課題を解決するため、本発明に係る多関節ロボットの軌跡制御装置は、以下の技術的手段を講じている。
即ち、本発明に係る多関節ロボットの軌跡制御装置は、多関節ロボットに取り付けられたモータによりツールに所望の動作を行わせるように複数の関節軸を駆動させる多関節ロボットの動作を制御する。この軌跡制御装置は、所望のツール動作を実現するための各関節軸の関節角度指令値θｃを算出して出力する関節角度指令値計算部と、前記関節角度指令値θｃ通りに動作した際に発生する各関節軸間で相互に作用する干渉トルクを、動力学モデルに基づいて関節角度指令値θｃから算出して、干渉トルク補償指令値ｃｃを出力する干渉トルク補償指令値計算部と、ロボットの固有振動周波数よりも低いカットオフ周波数を有する高周波遮断特性を備え、前記関節角度指令値θｃをフィルタリング処理して、処理後の関節角度目標値θｄを出力する第１の動特性演算部と、前記関節角度目標値θｄが前記モータに対する目標値として入力される関節角度制御部と、前記第１の動特性演算部よりも低いまたは同等のカットオフ周波数を有する高周波遮断特性を備え、前記干渉トルク補償指令値計算部への入力および前記干渉トルク補償指令値計算部からの出力の少なくともいずれかをフィルタリング処理して、処理後の干渉トルク補償値ｃｄを出力する第２の動特性演算部と、前記関節角度制御部から出力されるモータトルク指令値に、前記干渉トルク補償値ｃｄが加算された値が目標値として入力されるモータ電流制御部と、を含んで構成されていることを特徴とする。
【００１２】
好ましくは、前記関節角度制御部の応答が遅い軸の第１の動特性演算部の位相遅れを、前記関節角度制御部の応答が速い軸の第１の動特性演算部の位相遅れよりも短く与えるように構成することができる。
さらに好ましくは、前記多関節ロボットの姿勢に応じて、前記第１の動特性演算部の特性を変更するように構成することができる。
【００１３】
さらに好ましくは、各軸間の干渉がない状態での関節角度目標値θｃから実際の関節角度θまでのフィードバック制御動特性を、位置フィードバックゲインおよび速度フィードバックゲインの少なくともいずれかを含むパラメータに基づいて算出するように構成し、前記第２の動特性演算部におけるカットオフ周波数を前記第１の動特性演算部におけるカットオフ周波数よりも低くするとともに、前記第２の動特性演算部における特性を前記フ
ィードバック制御動特性で除した特性に対応するように、前記第１の動特性演算部の特性を与えるように構成することができる。
【００１４】
さらに好ましくは、前記モータ電流制御部の電流制御特性を考慮する場合、前記第２の動特性演算部における特性を前記フィードバック制御動特性で除すとともに、電流制御特性を乗じた特性に対応するように、前記第１の動特性演算部の特性を与えるように構成することができる。
また、本発明の別の形態に係る多関節ロボットの軌跡制御方法は、所望のツール動作を実現するための各関節軸の関節角度指令値θｃを算出して出力する関節角度指令値計算ス
テップと、前記関節角度指令値θｃ通りに動作した際に発生する各関節軸間で相互に作用する干渉トルクを、動力学モデルに基づいて関節角度指令値θｃから算出して、干渉トルク補償指令値ｃｃを出力する干渉トルク補償指令値計算ステップと、ロボットの固有振動周波数よりも低いカットオフ周波数を有する高周波遮断特性を備え、前記関節角度指令値θｃをフィルタリング処理して、処理後の関節角度目標値θｄを出力する第１の動特性演算ステップと、前記関節角度目標値θｄが前記モータに対する目標値として入力される関節角度制御ステップと、前記第１の動特性演算ステップよりも低いまたは同等のカットオフ周波数を有する高周波遮断特性を備え、前記干渉トルク補償指令値計算ステップへの入力および前記干渉トルク補償指令値計算ステップからの出力の少なくともいずれかをフィルタリング処理して、処理後の干渉トルク補償値ｃｄを出力する第２の動特性演算ステップと、前記関節角度制御ステップから出力されるモータトルク指令値に、前記干渉トルク補償値ｃｄが加算された値が目標値として入力されるモータ電流制御ステップと、を含んで構成されていることを特徴とする。
なお、本発明に係る多関節ロボットの軌跡制御装置の最も好ましい形態としては、多関節ロボットに取り付けられたツールに所望の動作を行わせるように複数の関節軸をモータにより駆動させる多関節ロボットの軌跡制御装置において、所望のツール動作を実現するための各関節軸の関節角度指令値θｃを算出して出力する関節角度指令値計算部と、前記関節角度指令値θｃ通りに動作した際に発生する各関節軸間で相互に作用する干渉トルクを、動力学モデルに基づいて関節角度指令値θｃから算出して、干渉トルク補償指令値ｃｃを出力する干渉トルク補償指令値計算部と、ロボットの固有振動周波数よりも低いカットオフ周波数を有する高周波遮断特性を備え、前記関節角度指令値θｃをフィルタリング処理して、処理後の関節角度目標値θｄを出力する第１の動特性演算部と、前記関節角度目標値θｄが前記モータに対する目標値として入力される関節角度制御部と、前記第１の動特性演算部よりも低いまたは同等のカットオフ周波数を有する高周波遮断特性を備え、前記干渉トルク補償指令値計算部への入力および前記干渉トルク補償指令値計算部からの出力の少なくともいずれかをフィルタリング処理して、処理後の干渉トルク補償値ｃｄを出力する第２の動特性演算部と、前記関節角度制御部から出力されるモータトルク指令値に、前記干渉トルク補償値ｃｄが加算された値が目標値として入力されるモータ電流制御部と、を含んで構成されており、各軸間の干渉がない状態での関節角度目標値θｃから実際の関節角度θまでのフィードバック制御動特性を、位置フィードバックゲインおよび速度フィードバックゲインの少なくともいずれかを含むパラメータに基づいて算出するように構成され、前記第２の動特性演算部におけるカットオフ周波数を前記第１の動特性演算部におけるカットオフ周波数よりも低くするとともに、前記第２の動特性演算部における特性を前記フィードバック制御動特性で除した特性に対応するように、前記第１の動特性演算部の特性を与えるように構成されていることを特徴とする。
また、本発明に係る多関節ロボットの軌跡制御方法の最も好ましい形態としては、多関節ロボットに取り付けられたツールに所望の動作を行わせるように複数の関節軸をモータにより駆動させる多関節ロボットの軌跡制御方法において、所望のツール動作を実現するための各関節軸の関節角度指令値θｃを算出して出力する関節角度指令値計算ステップと、前記関節角度指令値θｃ通りに動作した際に発生する各関節軸間で相互に作用する干渉トルクを、動力学モデルに基づいて関節角度指令値θｃから算出して、干渉トルク補償指令値ｃｃを出力する干渉トルク補償指令値計算ステップと、ロボットの固有振動周波数よりも低いカットオフ周波数を有する高周波遮断特性を備え、前記関節角度指令値θｃをフィルタリング処理して、処理後の関節角度目標値θｄを出力する第１の動特性演算ステップと、前記関節角度目標値θｄが前記モータに対する目標値として入力される関節角度制御ステップと、前記第１の動特性演算ステップよりも低いまたは同等のカットオフ周波数を有する高周波遮断特性を備え、前記干渉トルク補償指令値計算ステップへの入力および前記干渉トルク補償指令値計算ステップからの出力の少なくともいずれかをフィルタリング処理して、処理後の干渉トルク補償値ｃｄを出力する第２の動特性演算ステップと、前記関節角度制御ステップから出力されるモータトルク指令値に、前記干渉トルク補償値ｃ
ｄが加算された値が目標値として入力されるモータ電流制御ステップと、を含んで構成されており、各軸間の干渉がない状態での関節角度目標値θｃから実際の関節角度θまでのフィードバック制御動特性を、位置フィードバックゲインおよび速度フィードバックゲインの少なくともいずれかを含むパラメータに基づいて算出するようにし、前記第２の動特性演算ステップにおけるカットオフ周波数を前記第１の動特性演算ステップにおけるカットオフ周波数よりも低くするとともに、前記第２の動特性演算ステップにおける特性を前記フィードバック制御動特性で除した特性に対応するように、前記第１の動特性演算ステップの特性を与えるようにすることを特徴とする。
【発明の効果】
【００１５】
本発明に係る軌跡制御装置または制御方法を用いることにより、複数軸を備えた多関節ロボットにおいて、各軸の干渉トルクの影響を補償して高い軌跡精度でウィービング等の動作を可能とすることができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の実施の形態に係る軌跡制御装置が適用される多関節ロボットの全体構成を示す概略図である。
【図２】本発明の第１の実施の形態に係る軌跡制御装置の制御ブロック図である。
【図３】図２に示す制御ブロック図により制御された多関節ロボットのウィービング軌跡を示す図である。
【図４】従来技術（その１）に係る軌跡制御装置の制御ブロック図である。
【図５】図４に示す制御ブロック図により制御された多関節ロボットのウィービング軌跡を示す図である。
【図６】従来技術（その２）に係る軌跡制御装置の制御ブロック図である。
【図７】図６に示す制御ブロック図により制御された多関節ロボットのウィービング軌跡を示す図である。
【図８】本発明の第２の実施の形態に係る軌跡制御装置（図２の動特性とは異なる特性）により制御された多関節ロボットのウィービング軌跡を示す図である。
【図９】本発明の第２の実施の形態の変形例に係る軌跡制御装置に係る制御ブロック図である。
【図１０】本発明の第３の実施の形態に係る軌跡制御装置（図２の動特性とは異なる特性）により制御された多関節ロボットのウィービング軌跡を示す図である。
【図１１】本発明の第４の実施の形態に係る軌跡制御装置（動特性を軸毎に変更）により制御された多関節ロボットのウィービング軌跡を示す図である。
【図１２】本発明の第５の実施の形態に係る軌跡制御装置の制御ブロック図である。
【図１３】本発明の第５の実施の形態の変形例に係る軌跡制御装置の制御ブロック図である。
【図１４】本発明の第６の実施の形態に係る軌跡制御装置の制御ブロック図（その１）である。
【図１５】本発明の第６の実施の形態に係る軌跡制御装置の制御ブロック図（その２）である。
【発明を実施するための形態】
【００１７】
以下、本発明の実施の形態に係る多関節ロボットの軌跡制御装置および制御方法を、図面に基づき詳しく説明する。なお、以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての詳細な説明は繰り返さない。また、以下においては、制御対象として溶接トーチを傾動動作（ウィービング動作）させる多関節ロボットを説明するがこれは一例に過ぎない。本発明に係る軌跡制御装置は、多関節ロボットに取り付けられたツールに所望の動作を行わせるように複数の関節軸を駆動させるための制御に広く適用が可能である。
【００１８】
＜第１の実施の形態＞
［全体構成］
まず、本実施の形態に係る軌跡制御装置が適用される垂直多関節ロボット（以下、単に多関節ロボットと記載する場合がある）の概要について説明する。
図１は、溶接トーチを傾動動作（ウィービング動作）させるロボットの一例であって、本実施の形態に係る軌跡制御装置が適用される多関節ロボット１の概要を示す図である。この多関節ロボット１は、垂直多関節型であってＪ１〜Ｊ６の６関節を備え、Ｊ６軸の先端に溶接トーチが設けられ、溶接トーチから送りだされる溶接ワイヤによりアーク溶接が行われる。この多関節ロボット１は、予め定められた溶接開始点と溶接終了点との間が溶接作業区間であって、溶接開始点と溶接終了点とを結ぶ溶接線方向に移動しつつ、溶接ワイヤを予め定められた振幅および周波数で傾動する動作（ウィービング動作）を行うようにセットされている。
【００１９】
このような多関節ロボット１は、図示した多関節ロボット１の本体に加えて、教示ペンダントを備え各軸をサーボ制御する制御装置（サーボ制御部）と、上位コンピュータ（上位ＣＰＵ）とを含む。これらの制御装置および上位コンピュータにより、本実施の形態に係る軌跡制御装置が実現されている。
制御装置（サーボ制御部）は、多関節ロボット１に設けられた溶接トーチを、予め教示したプログラムに従って、上述した溶接線に倣ってウィービング動作して移動するように制御する。教示プログラムは、制御装置に接続された教示ペンダントを使用して作成する場合や、上位コンピュータを利用したオフライン教示システムを使用して作成する場合がある。いずれの場合であっても、教示プログラムは、実際の動作の前に予め作成される。上位コンピュータでは、溶接パスが生成されたり、それに基づくウィービング動作指令が生成されたりする。
【００２０】
［制御ブロック］
図２に、図１の多関節ロボット１を制御する軌跡制御装置１０の制御ブロック図を示す。上述したように、この軌跡制御装置１０は、上位ＣＰＵで実現される部分とサーボ制御部で実現される部分とを含んで構成されている。
図２に示すように、この軌跡制御装置１０は、多関節ロボット１に取り付けられたツール（ここでは溶接トーチ）に所望の動作（ここではウィービング動作）を行わせるように複数の関節軸を駆動させる。
【００２１】
この軌跡制御装置１０は、上位ＣＰＵで実現される、関節角度指令値計算部１００および干渉トルク補償指令値計算部（「非線形ＦＦ」として図示）２００と、サーボ制御部で実現される、第１の動特性演算部（「動特性（１）」として図示）３００、第２の動特性演算部（「動特性（２）」として図示）４００およびフィードバック制御部（「サーボ制御ＦＢ特性」として図示）５００とで構成される。フィードバック制御部５００は、関節角度制御部５１０およびモータ電流制御部（「電流制御」として図示）５２０を含んで構成されている。なお、以下において、制御ブロックにおける要素の特性は（動特性との記載がなくても）全て動特性である。また、ＦＢの記載はフィードバックを意味し、ＦＦの記載はフィードフォワードを意味する。
【００２２】
関節角度指令値計算部１００は、溶接トーチのウィービング動作を実現するための各関
節軸の関節角度指令値θｃを算出して出力する。
干渉トルク補償指令値計算部２００は、関節角度指令値計算部１００から出力された関節角度指令値θｃ通りに動作した際に発生する各関節軸間で相互に作用する干渉トルクを、動力学モデルに基づいて関節角度指令値θｃから算出して、干渉トルク補償指令値ｃｃを出力する。
【００２３】
第１の動特性演算部３００は、関節角度指令値計算部１００から出力された関節角度指令値θｃをフィルタリング処理して処理後の関節角度目標値θｄを出力する。この第１の動特性演算部３００は、多関節ロボット１の固有振動周波数よりも低いカットオフ周波数を有する高周波遮断特性（ローパスフィルタ）を備える。
第２の動特性演算部４００は、干渉トルク補償指令値計算部２００への入力および干渉トルク補償指令値計算部２００からの出力の少なくともいずれかをフィルタリング処理して、処理後の干渉トルク補償値ｃｄを出力する。なお、図２において、第２の動特性演算部４００は、干渉トルク補償指令値計算部２００からの出力をフィルタリング処理している。この第２の動特性演算部４００は、第１の動特性演算部３００よりも低いまたは同等のカットオフ周波数を有する高周波遮断特性（ローパスフィルタ）を備える。
【００２４】
関節角度制御部５１０には、関節角度目標値θｄがモータに対する目標値として入力される。
モータ電流制御部５２０には、関節角度制御部５１０から出力されるモータトルク指令値に、第２の動特性演算部４００から出力された干渉トルク補償値ｃｄが加算された値が目標値として入力される。
【００２５】
図２に示すブロック図で示される軌跡制御装置１０は、以下のような特徴を備える。
非線形項である干渉トルク補償指令値計算部２００の前および／または後（ここでは後のみ）に第２の動特性演算部４００を配置し、この第２の動特性演算部４００を第１の動特性演算部３００の高周波遮断特性以上の高周波帯域を遮断する特性を与えている（第２の動特性演算部４００のカットオフ周波数は、第１の動特性演算部３００のカットオフ周波数よりも低いか同等）。
【００２６】
このように構成することにより、第１の動特性演算部３００により、関節角度指令値θｃに含まれる固有振動成分を含む高周波を抑制することができることに加えて、第２の動特性演算部４００により、干渉トルク補償指令値ｃｃに含まれる固有振動成分を含む高周波を抑制することができる。これにより、多関節ロボット１に発生する高周波振動を抑制することができる。
【００２７】
また、多関節ロボット１では、ＸＹＺ空間で低周波動作をさせても特異点近傍などのヤコビアンが急峻に変化するところでは、関節角度に変化すると２倍や３倍成分の高周波が発生する。さらに、関節角度空間にて低周波動作をさせても、非線形項は速度の２乗項などを有しているため、関節角度の２倍や３倍成分の高周波が発生する。このため、非線形項である干渉トルク補償指令値計算部２００からの出力である干渉トルク補償指令値ｃｃを、第１の動特性演算部３００の高周波遮断特性以上の高周波遮断特性を備えた第２の動特性演算部４００で処理して干渉トルク補償値ｃｄとすることにより、多関節ロボット１に発生する高周波振動をさらに抑制している。
【００２８】
［制御特性（ウィービング軌跡）］
以上のような構成を備えた軌跡制御装置１０を用いて多関節ロボット１を制御した場合の制御特性（ウィービング軌跡）について説明する。
図３に、第２の動特性演算部４００の高周波遮断特性として、第１の動特性演算部３００と同等の高周波遮断特性を与えた場合のウィービング軌跡を示す。
【００２９】
これを評価するにあたり、まず従来技術（制御ブロック図およびウィービング軌跡）について説明する。
図４に、最も一般的な多関節ロボットの制御ブロック図を示す。図４に示すように、この制御ブロックは、位置制御部と速度制御部と電流制御部とから構成され、位置制御部は関節角度をフィードバック制御し、角度偏差を比例制御（Ｐ制御）し、速度指令として速度制御部に指令する。速度制御部は関節角速度をフィードバック制御し、与えられた速度
指令との偏差を比例積分制御（ＰＩ制御）し、電流制御指令として電流制御に指令する。電流制御は与えられた電流制御指令に基づきモータ電流を制御する。
【００３０】
なお、多関節ロボットはメカの固有振動数が低く、目標値に固有振動を励起する成分が含まれないように、図４に示す第１の動特性演算部（動特性１）などでのフィルタ処理にて、それらの成分を抑制している。
ただし、多関節ロボットでは各軸間で干渉トルクが、重力項などを含めて非線形項として作用する。この非線形項の影響は甚大である。特に溶接ロボットのウィービング動作では、上下にぶれることなく（上下方向の動きを発生させることなく）所望方向に所望の振幅で溶接トーチを揺動させることが必要であるために、非常に高精度な動的制御が必要とされる。
【００３１】
図５には、図４の制御ブロックで示される制御装置で多関節ロボットを制御した場合のウィービング軌跡を示す。この図５に示すように、非線形項が作用すると上下方向の動きが発生してしまい、ウィービング動作としてふさわしくない。これを抑制するためには、目標値ベースで非線形項を算出し、フィードフォワード補償することが考えられる。
図６には、上記した考えに基づく、目標値ベースの従来技術に係る非線形フィードフォワード補償を実現する制御ブロック図を示す。
【００３２】
図７には、図６の制御ブロックで示される制御装置で多関節ロボットを制御した場合のウィービング軌跡を示す。目標値ベースのフィードフォワード補償であるため、位相遅れの影響によりフィードフォワードタイミングがずれてしまい、却って、上下方向の動きを悪化させる結果となっている。
一般に、このような従来技術に係る制御では、フィードバック制御部（サーボ制御フィードバック特性）における位相特性やゲイン特性が各軸毎に異なり、また、ロボットの姿勢によって慣性行列が変化するため、同一軸でも姿勢によって制御フィードバック特性が変化する。このため、フィードフォワード制御などの位相を合わせることが困難であり、上記のようなフィードフォワード制御はまったく実用化されておらず、各軸間の干渉の影響を抑制することは困難となっていた。
【００３３】
なお、図６では非線形フィードフォワード計算を上位ＣＰＵで行っている。非線形項の計算が非常に複雑で計算量が多いため、サーボ制御部で計算することが難しく、上位ＣＰＵにて目標値ベースでおこなっているのが一般的である。
このような従来技術に係る制御による結果（ウィービング軌跡）を示す図５および図７に対して、本実施の形態に係る軌跡制御装置１０による結果（ウィービング軌跡）は、図３に示すように、上下動成分は発生しているものの従来技術に係る制御と比較して格段に上下動成分が抑制されていることがわかる。なお、図３は、第２の動特性演算部４００における高周波遮断特性を、第１の動特性演算部３００における高周波遮断特性と同等とした場合の結果である。
【００３４】
本実施の形態に係る軌跡制御装置１０においては、第１の動特性演算部３００により、関節角度指令値θｃに含まれる固有振動成分を含む高周波を抑制し、かつ、第２の動特性演算部４００により、干渉トルク補償指令値ｃｃに含まれる固有振動成分を含む高周波を抑制することにより、上述した従来技術における非線形項に起因する振動を抑制している。
【００３５】
以上のようにして、本実施の形態に係る軌跡制御装置によると、多関節ロボットにおいて、各軸の干渉トルクの影響を補償して高い軌跡精度でウィービング等の動作を可能とすることができる。
＜第２の実施の形態＞
以下、本発明の第２の実施の形態に係る軌跡制御装置について説明する。なお、本実施の形態に係る軌跡制御装置は、上述した第１の実施の形態に係る軌跡制御装置１０の第１の動特性演算部３００の与え方が異なる。それ以外は、第１の実施の形態と同じであるので、上述した説明と重複する部分についてはここでは繰り返さない。
【００３６】
上述した第１の実施の形態においては、第１の動特性演算部３００と同等以上の高周波遮断特性を第２の動特性演算部４００に与えた。本実施の形態においては、第２の動特性
演算部４００として、第１の実施の形態と同じように非常に強い高周波遮断特性を備えるように与えて、第１の動特性演算部３００として、第２の動特性演算部４００の動特性に各軸サーボ制御にて想定されるフィードバック特性の逆特性を乗じたものとして与える。これは、第２の動特性演算部４００における特性をフィードバック制御動特性で除した特性に対応するように、第１の動特性演算部３００の特性を与えるように構成されていることを示す。
【００３７】
図２に示す制御ブロックの場合、各軸サーボフィードバック制御の動特性は、以下の式（１）で与えられる。なお、以下に示す式においては、「動特性１」は、第１の動特性演算部３００における動的特性を、「動特性２」は、第２の動特性演算部４００における動的特性をそれぞれ示している。
【００３８】
【数１】
0005409844.tif 000002
【００３９】
したがって、第１の動特性演算部３００は、以下の式（２）で与えられる。
【００４０】
【数２】
0005409844.tif 000003
【００４１】
ただし、式（２）がプロパーな伝達関数（分子多項式の次数が分母多項式のそれに比べて等しいかまたは低い）となるように、第２の動特性演算部４００には強い高周波遮断特性を与える必要がある。
このようにして、第１の動特性演算部３００および第２の動特性演算部４００を与えた場合のウィービング軌跡を図８に示す。図８に示すように、第１の実施の形態におけるウィービング軌跡（図３）よりも、さらに上下方向の振動が抑制されていることがわかる。
【００４２】
以上のようにして、本実施の形態に係る軌跡制御装置によると、多関節ロボットにおいて、各軸の干渉トルクの影響を補償して、さらに高い軌跡精度でウィービング等の動作を可能とすることができる。
＜第２の実施の形態の変形例＞
次に、第２の実施の形態の変形例に係る軌跡制御装置について説明する。
【００４３】
上述したように、第２の動特性演算部４００の特性は、所望の動特性（非常に強い高周波遮断特性と備える）として与えていた。しかしながら、モータ電流制御部５２０の電流制御特性が無視できない場合には、所望の動特性を電流制御特性で除した特性として、第２の動特性演算部４００の特性を与える。これは、モータ電流制御部５２０の電流制御特性を考慮する場合、第２の動特性演算部４００における特性をフィードバック制御動特性で除すとともに、電流制御特性を乗じた特性に対応するように、第１の動特性演算部３００の特性を与えるように構成されていることを示す。
【００４４】
この場合、第２の動特性演算部４００の特性は、以下の式（３）で与えられる。
【００４５】
【数３】
0005409844.tif 000004
【００４６】
このため、上述した式（２）で表された第１の動特性演算部３００の特性は、以下の式（４）で与えられる。
【００４７】
【数４】
0005409844.tif 000005
【００４８】
図９には、上述のようにして、第１の動特性演算部３００および第２の動特性演算部４
００を与える場合の制御ブロック図を示す。図９に示すように、この軌跡制御装置２０における第２の動特性演算部２４００の特性が、所望の動特性２４１０に電流制御特性の逆特性２４２０を乗じたものとなっている。
以上のようにして、本変形例に係る軌跡制御装置によると、多関節ロボットにおいて、モータ電流制御部５２０の電流制御特性を考慮して、各軸の干渉トルクの影響を補償して、さらに高い軌跡精度でウィービング等の動作を可能とすることができる。
【００４９】
＜第３の実施の形態＞
以下、本発明の第３の実施の形態に係る軌跡制御装置について説明する。なお、本実施の形態に係る軌跡制御装置は、上述した第１の実施の形態に係る軌跡制御装置１０の第１の動特性演算部３００の与え方が異なる。それ以外は、第１の実施の形態と同じであるので、上述した説明と重複する部分についてはここでは繰り返さない。
【００５０】
電流制御特性は、非常に高速応答のため「ゲイン＝１」として近似しても良い性能が得られることを考慮すると、式（１）は、以下の式（５）に変形される。
【００５１】
【数５】
0005409844.tif 000006
【００５２】
そして、第１の動特性演算部３００を与える式（２）は、以下の式（６）に変形される。
【００５３】
【数６】
0005409844.tif 000007
【００５４】
これは、第２の動特性演算部４００におけるカットオフ周波数を第１の動特性演算部３００におけるカットオフ周波数よりも低くするとともに、第２の動特性演算部４００における特性をフィードバック制御動特性（サーボＦＢ制御動特性）で除した特性に対応するように、第１の動特性演算部３００の特性を与えるように構成されていることを示す。
なお、この場合、各軸間の干渉がない状態での関節角度目標値θｃから実際の関節角度θまでのフィードバック制御動特性を、位置フィードバックゲインおよび速度フィードバックゲインの少なくともいずれかを含むパラメータに基づいて算出するように構成されている。
【００５５】
図１０には、このようにして、第１の動特性演算部３００および第２の動特性演算部４００を与えた場合のウィービング軌跡を示す。図１０に示すように、当然ながら電流制御特性を１で近似しているため、第２の実施の形態におけるウィービング軌跡（図８）の性能には及ばないが、従来技術に比べて良好な性能（実用に十分耐え得る性能）を発揮していることがわかる。このように電流制御特性を１で近似することにより、実用に十分耐え得る性能を満足しつつ、演算時間を短縮することができる。
【００５６】
＜第４の実施の形態＞
以下、本発明の第４の実施の形態に係る軌跡制御装置について説明する。なお、本実施の形態に係る軌跡制御装置は、上述した第１の実施の形態に係る軌跡制御装置１０の第１の動特性演算部３００の与え方が異なる。それ以外は、第１の実施の形態と同じであるので、上述した説明と重複する部分についてはここでは繰り返さない。
【００５７】
本実施の形態においては、関節角度制御部５１０の応答が遅い軸の第１の動特性演算部３００の位相遅れを、関節角度制御部５１０の応答が速い軸の第１の動特性演算部３００の位相遅れよりも短く与えるように構成されている。
上述した第２および第３の実施の形態においては、各軸毎に所望の動特性を与えていたが、実際のウィービング動作では各軸の動特性を揃える必要がある。このためには、全軸で同じ（共通の）所望の動特性を与えればよい。上述した図８および図１０は、既に全軸で同じ所望の動特性を与えている。
【００５８】
図１１に、所望の動特性を軸毎に少し変更したときのウィービング軌跡を示す。図１１に示すように、軸毎に動特性を変更させると（各軸の応答を異ならせると）、上下動が発生することがわかる。すなわち、上述した実施の形態（および従来技術）においては、各軸の応答をそろえた結果であり、各軸の応答を揃えない場合、ウィービング精度は悪化する。
【００５９】
また、第１〜第３の実施の形態においては、所望の動特性を全軸について同じとしている。式（１）および式（２）から明らかなように、サーボＦＢ制御動特性の逆特性を「動特性１」に乗じているため、サーボＦＢ制御動特性が遅い軸では、速い軸に比べて「動特性１」の応答は速く、サーボＦＢ制御動特性が速い軸では、遅い軸に比べて「動特性１」の応答は遅くなる。
【００６０】
式（１）および式（２）により「動特性１」を与えることが一番良い方法であるが、関節角度指令値θｃから関節角度θまでの位相特性やゲイン特性が軸毎に異なるため、サーボＦＢ制御動特性の遅い軸に比べて速い軸の「動特性１」を遅くすることにより、図１１の状態から、全軸で同じ動特性を「動特性１」として与えた図３、図８または図９の状態に徐々に近づけることができる。
【００６１】
＜第５の実施の形態＞
以下、本発明の第５の実施の形態に係る軌跡制御装置について説明する。なお、本実施の形態に係る軌跡制御装置は、上述した第１の実施の形態に係る軌跡制御装置１０が備えなかった速度フィードフォワード制御および／または加速度フィードフォワード制御が加えられている点が異なる。それ以外は、第１の実施の形態と同じであるので、上述した説明と重複する部分についてはここでは繰り返さない。
【００６２】
本実施の形態においては、多関節ロボット１の姿勢に応じて、第１の動特性演算部３００の特性を変更するように構成されている。
実際には、式（１）に示すＪ（θ）は、多関節ロボット１の姿勢によって変化するため、サーボ制御特性が変化する。したがって、Ｊ（θ）の変化に応じて、以下の式（７）により「動特性１」を与えれば、多関節ロボット１の姿勢の変化に対応したフィードフォワード制御が可能となる。
【００６３】
【数７】
0005409844.tif 000008
【００６４】
上述した実施の形態においては、速度フィードフォワード制御および／または加速度フィードフォワード制御を備えていなかったが、本実施の形態に係る軌跡制御装置３０においては、速度フィードフォワード制御および加速度フィードフォワード制御を備える。
図１２は、第５の実施の形態に係る軌跡制御装置（速度フィードフォワード制御および加速度フィードフォワード制御を備える）のブロック図を示す。
【００６５】
図１２に示すように、軌跡制御装置３０は、関節角度制御部５１０に代えて関節角度制御部３５１０を備え、第２の動特性演算部４００に代えて第２の動特性演算部３４００（動特性演算部３４１０および動特性演算部３４２０）を備える。
この図１２に示す軌跡制御装置３０では、式（１）は、以下の式（８）で与えられる。
【００６６】
【数８】
0005409844.tif 000009
【００６７】
この式（８）に基づいて、式（２）、式（４）、式（６）および式（７）を用いて「動特性１」を算出すればよい。電流制御特性を無視して１としても、従来技術よりも良い性能が得られる。
なお、ここで、ＧｄａおよびＧｄｖは加速度フィードフォワードおよび速度フィードフォワードゲインであり、０〜１の値をとる。また、ＪｄはＪ（θ）の予測値である。
【００６８】
また、上述したように、電流制御特性も、電流制御ゲインおよびモータパラメータ（イ
ンダクタンスや抵抗）から算出可能である。
以上のようにして、本実施の形態に係る軌跡制御装置によると、多関節ロボットの姿勢に応じて、各軸の干渉トルクの影響を補償して、高い軌跡精度でウィービング等の動作を可能とすることができる。
【００６９】
＜第５の実施の形態の変形例＞
次に、第５の実施の形態の変形例に係る軌跡制御装置について説明する。
図１３に示すように、本変形例では、非線形項である干渉トルク補償指令値計算部２００の前後に、第２の動特性演算部４４００を配置した。より詳しくは、干渉トルク補償指令値計算部２００の前に動特性（２１）４４１０を、干渉トルク補償指令値計算部２００の後に動特性（２２）４４２０および動特性（２２）４４３０を、それぞれ配置した。
【００７０】
ここで、動特性（２１）×動特性（２２）が上述した動特性（２）と一致するように与えれば、これまでの実施の形態と同等の効果が得られる。ここで、θｅは関節角度指令値θｃを動特性（２１）４４１０に入力したときの出力値であり、θｅに基づいて干渉トルク補償指令値計算部２００にて算出された干渉トルク補償指令値ｃｃを動特性（２２）４４２０に入力したときの出力値が干渉トルク補償値ｃｄであり、θｅに基づいて干渉トルク補償指令値計算部２００にて算出された慣性値Ｊ（θｅ）を動特性（２２）４４３０に入力したときの出力値が慣性補償値Ｊｄである。
【００７１】
以上のようにして、本変形例に係る軌跡制御装置によると、多関節ロボットにおいて、各軸の干渉トルクの影響を分割して配置された第２の動特性演算部により補償して、高い軌跡精度でウィービング等の動作を可能とすることができる。
＜第６の実施の形態＞
以下、本発明の第６の実施の形態に係る軌跡制御装置について説明する。
【００７２】
図１４および図１５に、本実施の形態に係る軌跡制御装置の制御ブロック図を示す。図１４に示す制御ブロックと、図１５に示す制御ブロックと、逆変換（逆ヤコビ）要素の数および位置が異なる。
本実施の形態においては、「動特性２」（または「所望動特性」）によって目標値から実値への動特性が決定されるため、与えられた「動特性２」にしたがって、ウィービング動作時の周期におけるゲイン特性および位相特性を逆算することが可能となる。その特性に応じてウィービング指令を補正することにより、所望のウィービング動作を実現することができるようになる。
【００７３】
＜実施の形態の作用効果＞
上述した第１〜第６の実施の形態のように、以下のように軌跡制御装置を構成したため、多関節ロボットにおいて、高い軌跡精度でウィービング等の動作を可能とすることができる。
（１）目標値から固有振動周期を遮断するローパスフィルタ特性を与え、振動成分を目標角度から除去するとともに、非線形補償トルクについてもローパスフィルタ処理し、目標値と非線形補償トルクの位相を揃え、振動抑制しつつ非干渉化制御を行う。
【００７４】
（２）サーボ制御部の位相遅れがある状態においても、非線形補償に関するローパスフィルタの特性を遅らせることにより、目標値と非線形補償トルクの位相を揃え、振動抑制しつつ非干渉化制御を行う。
（３）軸毎のサーボ制御特性の違いを、上記のローパスフィルタにて吸収することにより、軸毎の特性差を揃える。
【００７５】
（４）ロボットの姿勢によってフィルタ特性を変更することで、ロボットの姿勢によって変化するサーボ制御特性を吸収する。
（５）上述した対応の上、ウィービング周期毎にウィービング振幅補正を行う。
なお、今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【００７６】
１  多関節ロボット
１０、２０、３０、４０  軌跡制御装置
１００  関節角度指令値計算部
２００  干渉トルク補償指令値計算部（非線形ＦＦ）
３００  第１の動特性演算部（動特性（１））
４００、２４００、３４００、４４００  第２の動特性演算部（動特性（２））
５００  フィードバック制御部（サーボ制御ＦＢ特性）
５１０  関節角度制御部
５２０  モータ電流制御部（電流制御）
【図１】
0005409844.tif 000010
【図２】
0005409844.tif 000011
【図３】
0005409844.tif 000012
【図４】
0005409844.tif 000013
【図５】
0005409844.tif 000014
【図６】
0005409844.tif 000015
【図７】
0005409844.tif 000016
【図８】
0005409844.tif 000017
【図９】
0005409844.tif 000018
【図１０】
0005409844.tif 000019
【図１１】
0005409844.tif 000020
【図１２】
0005409844.tif 000021
【図１３】
0005409844.tif 000022
【図１４】
0005409844.tif 000023
【図１５】
0005409844.tif 000024