(57)【要約】【課題】通常の運転中でも、負荷側の種々の条件下でも、短時間で精度良く制御パラメータを調整することを目的とする。【解決手段】モータ制御部１１の指令に基づいてモータ１３を駆動し、モータに接続される駆動機構部１２を有するモータの制御装置において、モータ１３を模擬したモータモデル２３と、機構部１２を模擬した機構モデル部２２と、モータ制御部１１を模擬した制御モデル部２１とを有するシミュレーション部２０と、モータ制御部１１、モータ１３及び機構部１２からなる実機部１０とシミュレーション部２０との同一状態量を比較する状態量比較部３１と、状態量を用いた評価量を作成する評価量演算部３２と、評価量を一定値内に調整するようにモータ制御部１１の制御パラメータを調整する制御パラメータ調整部３３とを備える。【選択図】図１
2004328829.tif 000002
【特許請求の範囲】
【請求項１】
モータ制御部の指令に基づいてモータを駆動し、前記モータに接続される駆動機構部を有するモータの制御装置において、
前記モータを模擬したモータモデルと、前記機構部を模擬した機構モデル部と、前記モータ制御部を模擬した制御モデル部とを有するシミュレーション部と、
前記モータ制御部、前記モータ及び前記機構部からなる実機部と前記シミュレーション部との同一状態量を比較する状態量比較部と、
前記状態量を用いた評価量を作成する評価量演算部と、
前記評価量を一定値内に調整するように前記モータ制御部の制御パラメータを調整する制御パラメータ調整部とを備えることを特徴とするモータの制御装置。
【請求項２】
複数のモータの前記状態量を用いて調整動作を実施することを特徴とする請求項１記載のモータの制御装置。
【請求項３】
前記制御パラメータ調整部は、前記モータ制御部の速度及び加速度の振動特性に基づいて調整することを特徴とする請求項１乃至２記載のモータの制御装置。
【請求項４】
前記状態量は、振動周波数成分を用いることを特徴とする請求項１乃至３記載のモータの制御装置。
【請求項５】
制御パラメータ調整部は、前記モータ制御部の制御構造を変化させること特徴とする請求項１乃至４記載のモータ制御装置
【請求項６】
前記状態量は、瞬時値又は蓄積値を用いることを特徴とする請求項１乃至５記載のモータの制御装置
【請求項７】
前記モデルパラメータ調整部は、作業者の判断又は前記評価量演算部の結果に基づいて前記調整動作を行うか否かを選択することを特徴とする請求項１乃至６記載のモータの制御装置
【請求項８】
前記モータ制御部の制御パラメータは位置ループゲイン又は速度ループゲインであることを特徴とする請求項１乃至７記載のモータの制御装置
【請求項９】
モータ制御部の指令に基づいてモータを駆動し、前記モータに接続される機構部を有するモータの制御装置において、
前記モータを模擬したモータモデルと前記機構部を模擬した機構モデル部と前記モータ制御部を模擬した制御モデル部とを有するシミュレーション部と、
前記実機部に作用する外力を補償する外力補償部と、
前記実機部と前記シミュレーション部の同一状態量から前記外力補償部のパラメータを調整する補償パラメータ調整部とを備えたことを特徴とするモータの制御装置。
【請求項１０】
モータ制御部の指令に基づいてモータを駆動し、前記モータに接続される機構部を有するモータの制御方法において、
前記モータ制御部と前記モータと前記機構部からなる実機部をシミュレーションするシミュレーション部を備え、
同一の入力を前記実機部と前記シミュレーション部に与え、
前記実機部と前記シミュレーション部の同一の状態量を比較し、
前記モータ制御部の制御パラメータを調整することを特徴とするモータの制御方法。
【請求項１１】
複数の前記モータの相互干渉を補償し、相互干渉のパラメータを調整することを特徴とする請求項１０記載のモータの制御方法。
【発明の詳細な説明】
【０００１】
【産業上の利用分野】
本発明は、モータの制御装置に関し、さらに詳しく言えば、特にモータの制御パラメータを調整するモータの制御装置及び制御方法に関する。
【０００２】
【従来の技術】
モータの制御装置に適用されているモータの制御系のブロック線図を図９に示す。モータ制御系の特性が機構系とモータ含む全体の動作に直接影響するため、高い軌跡精度や速度応答性が要求される場合には、制御装置の制御パラメータの調整は極めて重要である。
制御パラメータ、ここでは特に、位置ゲインや速度ゲインなどの制御パラメータを調整する方法について述べる。モータの制御系において、良好な定常特性と即応性・剛性を高く保つために、内部ループから発振が生じないよう注意をしながらできるだけ大きめのループゲインを決定して行く必要がある。従来は、作業者が経験によって、モータから振動や異音が発生しないように、適切なゲインを設定していた。これは、予め特定のゲインを入力し、実際の使用に近い動作をモータに行わせることで、振動や異音が発生した場合にはゲインを小さくし、位置や速度の応答遅れが発生した場合にはゲインを大きく変更するなどの手順を踏み、希望とするモータの性能が得られるようにゲインを調整する方法である。
【０００３】
また、従来のモータの制御ゲインを自動調整する装置の従来例１として、モータの回転速度を変えるパターン（ランプ状の速度指令を含む）を発生するテストパターン発生器と、速度制御演算器の積分器への出力を遮断するスイッチと、テストゲインへの切り替えが可能な速度ループゲイン乗算器と、ゲイン調整器を備えている。この制御装置では、実際に駆動するランプ状の速度指令のテストパターンとモータの回転速度を検出する速度検出手段から出力の差に応じてモータの制御ループのループゲインを変えるゲイン調整器により負荷イナーシャを推定し、この負荷イナーシャにより適したループゲインを設定するオートチューニングが可能となる（特許文献１参照）。
また、従来例２として、速度偏差に制御ループのゲインを乗じた値を制御対象に加えて制御対象の比例制御を行う制御系において、速度偏差の増加に対して発振領域から安定領域に向かってゲインが減少する特性を備えたゲイン調整系を形成し、発振限界に収束するゲインを求めている（特許文献２参照）。
【０００４】
【特許文献１】
特開平６−７０５６６号公報
【特許文献２】
特開平９―１０６３０３号公報
【０００５】
【発明が解決しようとする課題】
ところが、従来の制御パラメータのゲインを調整する方法においては、熟練者の経験に頼らなければならず、チューニングする作業者によっては、最適なゲインを得るまでには多大な時間を要するばかりでなく、モータ制御系が発振する恐れがあるという問題があった。また、作業者が振動の発生を確認するために、別に測定器を使用してモータの位置や速度の情報を測定する必要があった。
また、従来例１では、パラメータ調整する際に、特別な調整動作を必要とし、通常の運転中にパラメータの調整をすることができないという問題がある。頻繁に機構部の負荷が換わる場合には、その都度通常の運転を止め、パラメータ調整ができる動作範囲を確保し、特別な調整動作を実行する必要がある。また、専用の動作指令で調整を行っても、実際の作業で使用する動作指令で動作させると、条件の違いにより制御系が発振するなどの危険性もある。更には、精度の面では、モータを含む駆動系に摩擦が働く場合、位置偏差や速度検出値が影響を受けるため、パラメータ調整を正確にすることができないという問題もある。
【０００６】
同様に、前記従来２でも、精度の面で、モータに重力や摩擦が働く場合には速度偏差が影響を受けるため、パラメータ調整を正確にすることができないという問題がある。また、制御パラメータの速度ループゲインの調整にしか対応していないという問題もある。
そこで本発明は、調整のための特別な動作を必要とせず、通常の運転中でも、負荷側の種々の条件下でも、短時間で精度良く制御パラメータを調整することを目的とするものである。
【０００７】
【課題を解決するための手段】
本発明では、上記問題点を解決するため、以下の構成としたものである。
請求項１記載のモータの制御装置は、モータ制御部の指令に基づいてモータを駆動し、前記モータに接続される駆動機構部を有するモータの制御装置において、前記モータを模擬したモータモデルと、前記機構部を模擬した機構モデル部と、前記モータ制御部を模擬した制御モデル部とを有するシミュレーション部と、前記モータ制御部、前記モータ及び前記機構部からなる実機部と前記シミュレーション部との同一状態量を比較する状態量比較部と、前記状態量を用いた評価量を作成する評価量演算部と、前記評価量を一定値内に調整するように前記モータ制御部の制御パラメータを調整する制御パラメータ調整部とを備えることを特徴とするものである。
【０００８】
請求項２記載のモータの制御装置は、複数のモータの前記状態量を用いて調整動作を実施することを特徴とするものである。
請求項３記載のモータの制御装置は、前記制御パラメータ調整部は、前記モータ制御部の速度及び加速度の振動特性に基づいて調整することを特徴とするものである。
請求項４記載のモータの制御装置は、前記振動特性は、振動周波数成分を用いることを特徴とするものである。
請求項５記載のモータの制御装置は、制御パラメータ調整部は、前記モータ制御部の制御構造を変化させること特徴とするものである。
請求項６記載のモータの制御装置は、前記状態量は、瞬時値又は蓄積値を用いることを特徴とするものである。
請求項７記載のモータの制御装置は、前記モデルパラメータ調整部は、外部又は前記評価量演算部の結果に基づいて前記調整動作を行うか否かを選択することを特徴とするものである。
【０００９】
請求項８記載のモータの制御装置は、前記モータ制御部の制御パラメータは位置ループゲイン又は速度ループゲインであることを特徴とするものである。
請求項９記載のモータの制御装置は、モータ制御部の指令に基づいてモータを駆動し、前記モータに接続される機構部を有するモータの制御装置において、前記モータを模擬したモータモデルと前記機構部を模擬した機構モデル部と前記モータ制御部を模擬した制御モデル部とを有するシミュレーション部と、前記実機部に作用する外力を補償する外力補償部と、前記実機部と前記シミュレーション部の同一状態量から前記外力補償部のパラメータを調整する補償パラメータ調整部とを備えたことを特徴とするものである。
また、請求項１０記載のモータの制御方法は、モータ制御部の指令に基づいてモータを駆動し、前記モータに接続される機構部を有するモータの制御方法において、前記モータ制御部と前記モータと前記機構部からなる実機部をシミュレーションするシミュレーション部を備え、同一の入力を前記実機部と前記シミュレーション部に与え、前記実機部と前記シミュレーション部の同一の状態量を比較し、前記モータ制御部の制御パラメータを調整することを特徴とするものである。
請求項１１記載のモータの制御方法は、複数の前記モータの相互干渉を補償し、相互干渉のパラメータを調整することを特徴とするものである。
【００１０】
【発明の実施の形態】
本発明の基本構成を図１に示して説明する。ここでは、説明の簡略化のため、本制御装置で駆動するモータは１個で、前記モータに接続される機構部は減速機を介した単純な円筒形状の負荷とする。
図１において、実機部１０は、機構部１２と、前記機構部１２に接続されたモータ１３と、前記モータ１３を制御するモータ制御部１１で構成されている。シミュレーション部２０は、前記モータ１３の動力学系を模擬したモータモデル２３と、前記機構部１２の動力学系を模擬した機構モデル部２２と、前記モータ制御部１１を模擬した制御モデル部２１で構成されている。
制御装置のモータを制御する装置内で、前記実機部１０及び前記シミュレーション部２０は並列に配置されており、それぞれ上位コントローラから同一の指令を入力とする。前記実機部１０及び前記シミュレーション部２０では、入力された指令に応じて機構部１２及び機構部モデル２２を制御するためのトルク指令をそれぞれモータ１３及びモータモデル２３に出力する。ここで、上位コントローラから入力される同一の指令は、実際の作業で使用する動作指令であり、予め記憶されたパターンを再生して用いても良いし、ＣＡＤデータなどから自動的に作成する方法でも良い。予め記憶されたパターンを使用すると、例えば、パターン作成時点で周辺機器との干渉を回避しているため、同定動作中に周辺機器との衝突がないなどのメリットがある。
【００１１】
状態量比較部３１では、前記実機部１０と前記シミュレーション部２０における前記モータ制御部１１と前記制御モデル部２２の同一状態量（例えば、位置偏差や速度フィードバックなど）を、または、前記機構部１２と前記機構モデル部２２の同一状態量（例えば、位置フィードバックなど）を比較して、状態量比較値を作成する。評価量演算部３２は、前記状態量比較部３１で作成した前記状態量比較値がしきい値以内であるかどうかで、実機部１０のモータ制御部１１の制御パラメータが最適に設定されているかどうかを判断する。ここでは、実機とモデルのパラメータが完全に一致した場合、即ち実機とシミュレーションが全く同じ挙動を示す場合には、理想的には状態量比較値が０になることを判断基準としている。
【００１２】
ここで、しきい値と比較する際に、前記状態量比較値の瞬時値を用いるか、前記状態量比較値の蓄積値を用いるかなどは選択できる。更に、モータが複数接続されるロボット等の機械装置の場合には、ロボットの手先効果器部分の状態量として、前記状態量比較値を直交座標値に変換した値なども使用できる。
前記状態量比較値がしきい値以上であれば、制御パラメータ調整部３３で前記モータ制御部１１と制御モデル部２１の制御パラメータの値を連動させて変更し、前記状態量比較値がしきい値以内に入るまで、同一指令による動作から制御パラメータ値を変更する。前記状態量比較値がしきい値以内であれば、実機とシミュレーションの制御パラメータが近似値になったと判断して調整作業を終了する。ここで、制御パラメータ値の変更方法は状態量比較値の符号で修正方向を判別し、しきい値に対する状態量比較値の大きさで修正量を決定するなどの方法を用いる。
【００１３】
通常の作業中に調整動作を実行するか、又は通常の作業を中断して特別な調整動作を実行するかは、作業者が前記制御装置を介して選択できる。更に、通常の運転中に、前記評価量演算部３２内において逐次前記状態量比較値を監視しておき、状態量比較値が大きくなることで調整の必要／不要を判断し、自動的に調整動作を実行させても良い。
【００１４】
以下に、本発明の第１の具体的実施例を図２に示して説明する。
前記モータ制御部１１は、位置速度制御ループ１１１とアンプ１１２で構成されており、通常の作業用の位置（角度）指令を入力して、トルク指令をアンプ１１２へ出力することで、モータ１２及び前記機構部１３を駆動する。位置速度制御ループ１１１では、例えば図９に示す位置比例−速度比例積分制御を用いる。同様に、前記制御モデル部２１も、位置速度制御ループモデル２１１とアンプモデル２１２で構成されており、通常運転時の位置（角度）指令を入力してトルク指令をアンプモデル２１２へ出力することで、前記機構モデル部２２を駆動するモデル構造とする。
【００１５】
更に、前記基本構成で想定した機構部に重力が作用する場合や、減速機の摩擦が大きい場合や調整精度の要求が高い場合には、実機部とシミュレーション部の差異を無くすため、重力や摩擦の補償を行うことも可能である。前記モータ制御部１１で、前記機構部１２の重力と静止摩擦及び動摩擦の外力補償部１５を内蔵し、位置フィードバック（以下、ＦＢとする）に応じた重力トルクと摩擦トルクを演算して、トルク指令に加算することで、外力の影響を補償する。又は、前記制御モデル部２１に前記モータモデル２３の重力モデルと静止摩擦及び動摩擦モデルの外力補償部モデル２５を内蔵して、指令に応じた重力トルクと摩擦トルクを演算して、トルク指令に加算することで、外力の影響を模擬しても良い。外力補償部１５を有効にするか、外力補償部モデル２５を有効にするかを、必要に応じて選択する。
また同様に、制御対象が複数のリンクを持つロボットの場合には、通常の動作指令によって姿勢変化が起きるため、各軸の負荷イナーシャが実時間で変動する。そこで、予め機構部のモデルを持ち、実時間で動力学の演算を解き、姿勢毎の負荷イナーシャを求めることで、制御パラメータの調整時に、姿勢変化の影響を補償する。
以下では、前記モータ制御部１１の速度ループゲインＫｖ及び位置ループゲインＫｐを調整する方法について述べる。ここでは、通常運転時の指令を用いて調整動作を実行するが、特別に調整動作用の指令を使用しても良い。
【００１６】
（１）調整準備
実機部１０の前記モータ制御部１１において、調整前の位置ループゲインと速度ループゲインの初期値としてＫｐ０、Ｋｖ０を設定する。また、シミュレーション部２０の前記制御モデル部２１も、位置ループゲインと速度ループゲインの初期値として実機部１０と同じＫｐ０、Ｋｖ０を設定する。
上位コントローラから、図３（ａ）に示す作業時の位置指令を、前記実機部１０の前記モータ制御部１１及び前記シミュレーション部２０の前記制御モデル部２１に入力する。この指令は、例えば、作業中のあるポイントから別のポイントへの移動命令とする。
【００１７】
（２）速度ループゲインＫｖの調整
調整には位置指令の等速区間（定常状態）を使用して、この指令に対するモータ１３及びモータモデル２３に接続された位置検出器１４及び位置検出器モデル２４で検出した位置ＦＢの微分値（速度ＦＢ）を状態量とする。実機部及びシミュレーション部の速度指令及び速度ＦＢは、図３（ｂ）に示す波形となる。
ここで、指令の周波数成分による応答が発生した場合は、実機部の速度ＦＢとシミュレーション部の速度ＦＢの両方で同じ周波数の応答が生じ、指令を要因とする周波数成分の影響を取り除くことができる。
実機とシミュレーションの速度ＦＢは前記状態量比較部３１で比較され、状態量比較値（速度ＦＢの差）を作成する。求められた状態量比較値が、評価量演算部３２で予め決められたしきい値以内であるかどうかを判断する。ここでは、高周波の振動成分を判断基準とするため、前記状態量比較には瞬時値を用いている。
【００１８】
実機部の速度ループゲインＫｖ０が適正な値より高すぎる場合には制御系が発振的になり速度ＦＢに高周波成分の振動が乗るため、高周波成分が現れる直前の値が最適値である。よって、高周波成分がしきい値以上となった場合は、モータ制御部１１及び制御モデル部２１の速度ループゲインＫｖ０を小さい値Ｋｖ１にそれぞれ設定し直して調整を繰り返す。この調整中にしきい値以上であった状態からしきい値以内になった直後の値を最適値Ｋｖ２として調整を終了する。
逆に高周波成分が無い場合は、前記状態量比較値はしきい値以下となるが、最適な値であるかは判断できない。そのため、徐々に実機部の速度ループゲインＫｖ０を大きい値Ｋｖ１に設定し直して、高周波成分が現れるまで調整を繰り返す。この調整中にしきい値以内であった状態からしきい値以上になった直前の値を最適値Ｋｖ２として調整を終了する。
以上の手順により、速度ループゲインの最適値Ｋｖ２を求めることができる。
【００１９】
（３）位置ループゲインＫｐの調整
前述の速度ループゲインＫｖの調整後に、位置ループゲインＫｐの調整を実施する。調整には図４（ａ）に示す位置指令の等速区間（定常状態）を使用して、この指令に対するモータ１３及びモータモデル２３に接続された位置検出器１４及び位置検出器モデル２４で検出した位置ＦＢの微分値（速度ＦＢ）を状態量とする。実機部及びシミュレーション部の速度指令及び速度ＦＢは、図４（ｂ）及び（ｃ）に示す波形となる。
実機とシミュレーションの速度ＦＢは前記状態量比較部３１で比較され、状態量比較値（速度ＦＢの偏差）を作成する。求められた状態量比較値が、評価量演算部３２で予め決められたしきい値以内であるかどうかと高周波成分が乗っているかで判断する。前記状態量比較値は一定時間毎の蓄積値を用いることで、平均的な比較が可能となる。
【００２０】
実機部の位置ループゲインＫｐ０の最適値は、高周波成分が現れる直前の値である。実機部の位置ループゲインＫｐ０が最適な値より高い場合には、図４（ｂ）に示すように制御系が発振して速度ＦＢの偏差に高周波成分の振動が乗り、図４（ｄ）に示すように状態量比較値はしきい値よりも大きくなる。この場合は、モータ制御部１１及び制御モデル部２１の位置ループゲインＫｐ０を小さい値Ｋｐ１に設定し直して調整を繰り返す。この調整中にしきい値以上であった状態からしきい値以内になった直後の値を最適値Ｋｐ２として調整を終了する。
逆に、実機部の位置ループゲインＫｐ０が最適な値より小さい場合には、図４（ｃ）に示すように高周波成分の振動は発生しないが、最適な値であるかは判断できない。また、速度ＦＢの偏差が大きくなるため、図４（ｄ）に示すように前記状態量比較値はしきい値よりも大きくなる。この場合は、徐々に実機部の位置ループゲインＫｐ０を大きい値Ｋｐ１に設定し、高周波成分の振動が乗るまで調整を繰り返し、しきい値以内であった状態からしきい値以上になった直前の値を最適値Ｋｐ２として調整を終了する。
【００２１】
これら一連の調整作業の実施は、作業者が機構部の負荷を変更した場合に作業者が制御装置を操作することで意図的に実施する方法や、予め前記評価量演算部３２内で特定の状態量比較値（実機部とシミュレーション部の速度ＦＢの偏差など）を監視して、負荷イナーシャの変動を自動的に検出して制御パラメータの調整作業を開始する方法が考えられる。そのため、上記実施例では、通常運転時の速度ＦＢの偏差を監視して、実機部とシミュレーション部の状態量に差がある場合には、自動的にゲイン調整動作を開始する構成にしても良い。
【００２２】
以下に、本発明の第２の具体的実施例を説明する。
本実施例では、前記第１の実施例で位置ループゲインと速度ループゲインの調整時の高周波成分を判定する過程が異なる。前記第１の実施例では、振動成分の抽出を波形の時間変化を直接測定して求めていたが、本実施例では状態量比較部３１でＦＦＴ（Ｆａｓｔ  Ｆｏｕｒｉｅｒ  Ｔｒａｎｓｆｏｒｍ）を用いることで、実機部とシミュレーション部の位置ＦＢや速度ＦＢの振動成分をより簡単に判定できる。
速度ＦＢの振動判定を例に説明する。前記状態比較部３１内の振動成分抽出部３１１でＦＦＴ解析することによって、図５（ａ）及び（ｂ）の速度ＦＢから、図５（ｃ）に示すように簡単に高周波成分が発生していることを特定することができる。
後は第１の具体的実施例に記載した手順で、実機部とシミュレーション部の周波数およびパワーがしきい値内でほぼ一致するように制御パラメータ調整部３３で制御パラメータである速度ループゲインＫｖ及び位置ループゲインＫｐを変更して、状態量比較値がしきい値以内になるように繰り返す。
【００２３】
以下に、本発明の第３の具体的実施例を説明する。
本実施例は、前記第１の具体的実施例で求められたモータ制御部の制御パラメータを調整し、振動特性評価を実施した後に、必要に応じて実機部１０の前記モータ制御部１１及びシミュレーション部２０の前記機構モデル部２２の制御構造を変更し、調整の精度を向上させるものである。
振動特性評価で振動がしきい値よりも小さくならない場合には、制御対象のモデルの次数が合ってないと判断し、図６に示すようにシミュレーション部２０の機構モデル部２２の次数を大きくする方向に変更する。
【００２４】
ここでは、剛体モデル（１慣性系）から２慣性系モデルの制御構成に変更する。ただし、２慣性系の制御対象を制御する場合、２つの慣性を繋ぐバネ要素が振動の原因になるため、バネからの反力をモータ制御系のトルク指令から減算する必要がある。そこで、実機部１０のモータ制御部１１では、２慣性モデルのオブザーバを配置し、推定したねじれ角θＳによる反力τＲをトルク指令から減算する構造に変更する。また、シミュレーション部２０では、２次側機構部モデル２２１に入力されるねじれ角θＳＳによる反力τＳをトルク指令から減算する。
このように、制御パラメータの調整結果により、前記モータ制御部１１及び前記機構モデル部２２の制御構成を変更することで、負荷側の振動を抑制し、高精度な制御を行うことができる。
【００２５】
以下に、本発明の第４の具体的実施例を説明する。ここでは、実機部とシミュレーション部の軌跡ズレ情報を元に、ロボットの相互慣性による干渉力補償の制御パラメータを調整する方法に関して説明する。
本実施例では、モータが複数接続された水平多関節型ロボットに関して、相互慣性を補償する制御系パラメータの調整方法を説明する。説明を簡略化するため、図７（ａ）に示すように制御対象の機構部は、２軸の水平多関節型ロボットとする。ここで、各軸の主慣性（各軸の負荷イナーシャＪＬ）は既に求められていると仮定し、他の軸に影響を与える相互慣性の補償パラメータを調整する方法について説明する。
本実施例では、図８に示すように実機部に相互干渉補償部３５を設ける。理想空間であるシミュレーション部には相互干渉が作用しないため、相互干渉補償部３５により実機部に作用している相互干渉を完全に補償できると、シミュレーション部と同等の振るまいになる。このことを利用して、実機部とシミュレーション部のロボット先端の直交座標系における位置ＦＢ値を比較し、位置ＦＢ偏差を小さくすることで、実機部の相互干渉補償の制御パラメータを調整する。以下で詳細に説明する。
【００２６】
（１）相互干渉部の設定
２軸の水平多関節型ロボットの運動方程式は次のように表される。
【００２７】
【数１】
2004328829.tif 000003
【００２８】
ここで、ｍｉはリンクｉの質量、Ｌｉは軸から重心までの距離、ａｉはリンク長さである。また、速度に関する干渉力の項は速度に依存しており、慣性項に比較して変化は緩やかであり、速度制御ループで補償されるため、無視して考えられる。その場合、式（１）と（２）は次のように表せる。
【００２９】
【数２】
2004328829.tif 000004
【００３０】
よって、式（３）と（４）は以下のように表現することができる。
【００３１】
【数３】
2004328829.tif 000005
【００３２】
ここで、
【００３３】
【数４】
2004328829.tif 000006
【００３４】
また、Ｉｉは重心周りの慣性モーメント、Ｎｉはｉ軸モータの減速機の減速比、Ｉｉｍはモータのモータロータのイナーシャ（等価慣性モーメント）である。
ｍｉ、Ｌｉ、ａｉ、Ｎｉは既知であり、主慣性であるＪ１１とＪ２２は、負荷イナーシャＪＬとして既に求められているため、特定の姿勢θ１とθ２での重心周りの慣性モーメントＩｉを式（６）〜（８）から求め、相互慣性であるＪ１２とＪ２１を求めることができる。
【００３５】
式（５）は、加減速時に２軸目が１軸目に作用する干渉トルクτ１２と１軸目が２軸目に作用する干渉トルクτ２１が、以下のように表せることを意味する。
【００３６】
【数５】
2004328829.tif 000007
【００３７】
よって、図８に示すように、求められた相互慣性のパラメータＪ１２（＝Ｊ２１）を元に、実機部１０に相互干渉部３５を配置する。
【００３８】
（２）相互慣性モデルのパラメータＪ１２の調整
上位コントローラから、通常運転時の位置（角度）指令を、前記実機部１０の前記モータ制御部１１ａ、１１ｂ及び前記シミュレーション部２０の前記制御モデル部２１ａ、２１ｂに入力する。この指令は、図７（ｂ）に示すように１軸目を・・θ１で、２軸目を・・θ２で動作させることで、２軸目に干渉力τ２１を与え、実機部とシミュレーション部の挙動（軌跡ズレ）を比較する。
実機部の相互干渉補償部３５の相互慣性Ｊｒ１２（＝Ｊｒ２１）と、実際に実機部の機構部に作用している相互慣性Ｊｓ１２（＝Ｊｓ２１）が一致していない場合には、実機部とシミュレーション部に軌跡ズレが発生する。ここでは、実機部とシミュレーション部の軌跡ズレを定量的に判断することで、相互干渉補償部３５の相互慣性パラメータを調整する。
【００３９】
実機部とシミュレーション部の軌跡の比較をするために、順変換部３４では、前記モータ制御部１１の位置検出器１４ａ、１４ｂの位置ＦＢと、前記制御モデル部２１の位置検出器モデル２４ａ、２４ｂの位置ＦＢをそれぞれ順変換し、直交座標系における実機部とシミュレーション部のロボット先端の位置ＦＢ（状態量）を求める。前記状態比較部３１では、２つの前記位置ＦＢを差分して状態量比較値を求め、評価量演算部３２で予め決められたしきい値以内であるかどうかを判断する。
しきい値以内であれば、制御パラメータ（相互慣性）の調整を終了する。これで実際に作用している相互干渉と実機部の相互干渉補償部３５が近似値になったことになる。しきい値以上であれば、以下に示すように制御パラメータ調整部３３で相互干渉補償部３５の制御パラメータＪ１２を変更し、しきい値以内になるまで繰り返す。
【００４０】
相互慣性のパラメータＪ１２の変更方法は、図７（ｂ）に示すように実機部の軌跡とシミュレーション部の軌跡のズレ量（ΔＸ，ΔＹ）から、相互慣性のパラメータＪ１２を変更する大きさと正負方向について判断する。これには、直交座標系における軌跡のズレ量を、ヤコビアンと呼ばれる関節座標系と作業座標系の微小変位関係式の逆行列を用いて、関節座標系のズレ量に変換する。２軸のヤコビアンＪａｃｏｂｉａｎは以下の式で表すことができる。
【００４１】
【数６】
2004328829.tif 000008
【００４２】
ここで、θ１２＝θ１＋θ２
また、その逆行列Ｊａｃｏｂｅａｎ−１は以下の式で表すことができる。
【００４３】
【数７】
2004328829.tif 000009
【００４４】
よって、直交座標系における軌跡のズレ量（ΔＸ，ΔＹ）と関節座標系における角度誤差（Δθ１，Δθ２）は以下のように表すことができる。
【００４５】
【数８】
2004328829.tif 000010
【００４６】
また、関節座標系の剛性から、角度誤差とトルクの関係は以下の式で表すことができる。
【００４７】
【数９】
2004328829.tif 000011
【００４８】
ここで、Ｋ＝Ｋｐ・Ｋｖ・Ｊ
よって、相互慣性のパラメータＪ１２は、式（１３）と以下の式を解くことで得ることができる。
【００４９】
【数１０】
2004328829.tif 000012
【００５０】
実際の作業で使用する位置指令を用いて以上の作業を繰り返すことで、多軸ロボットの相互干渉による干渉力補償の制御パラメータを調整することができる。
【００５１】
【発明の効果】
以上述べたように、請求項１のモータの制御装置によれば、実機部及びシミュレーション部を並列に配置し、入力された同一の指令に応じて機構部及び機構部モデルの状態量を比較し、予め決められたしきい値以内に状態量入るまで、同一指令による動作の比較から実機部の制御パラメータ値の変更を繰り返すことにより、重力や動摩擦等の影響を受けずに、動作領域の制限などの制約を受けずに、制御部の制御パラメータを自動的に調整することができる。
請求項２記載のモータの制御装置によれば、複数のモータ制御の状態量で調整動作を実施することにより、複数軸の場合の軸間に生じる制御パラメータも調整することができる。
請求項３記載のモータの制御装置によれば、前記モータ制御部のゲイン調整は前記モータ制御部の速度、加速度の振動特性が前記シミュレーション部の同信号に比較して一定レベル以下になるように調整することにより、状況を的確に判断して運転条件に依らず、正確にモデルパラメータを同定できる。
請求項４記載のモータの制御装置によれば、前記振動特性の評価はＦＦＴなどの振動周波数成分の大きさを評価する手法を用いることにより、問題となる振動成分を的確に判断して、正確に制御パラメータの調整を行うことができる。
請求項５記載のモータの制御装置によれば、振動特性の評価を実施後、前記モータ制御部の制御構造を変化させることにより、実機及びモデルの機構構成に合った制御系を構築でき、制御対象をより的確に制御できる。
請求項６記載のモータの制御装置によれば、状態量の瞬時値又は蓄積値を用いたゲイン調整結果に応じて調整動作を終了することにより、モデルパラメータの不用意な変更や、ノイズによる影響を防止できる。
請求項７記載のモータの制御装置によれば、作業者又は前記評価量演算部の判断により、前記調整動作の実行を選択することにより、作業者が作業内容に応じて制御パラメータの更新ができ、制御パラメータの不用意な変更を防止できる。また、自動的にパラメータの更新ができる。
請求項８記載のモータの制御装置によれば、前記モータ制御部の制御パラメータを位置ループゲイン又は速度ループゲインとすることにより、高精度の位置決めや速度応答が可能となる。
請求項９記載のモータの制御装置によれば、実機部及びシミュレーション部を並列に配置し、前記実機部に作用する外力を補償する外力補償部と、前記実機部と前記シミュレーション部の同一状態量から前記外力補償部のパラメータを調整する補償パラメータ調整部とを備えたことにより、重力と摩擦の外力補償パラメータを調整でき、制御パラメータ調整の精度も向上できる。
請求項１０記載のモータの制御方法によれば、実機部及びシミュレーション部を並列に配置し、入力された同一の指令に応じて機構部及び機構部モデルの状態量を比較し、予め決められたしきい値以内に状態量入るまで、同一指令による動作から実機部の制御パラメータ値の変更を繰り返すことにより、重力や動摩擦等の影響を受けずに、機構部の周りに複数の周辺機器がある場合でも動作領域の制限などの制約を受けずに、制御部の制御パラメータを簡単に調整することができる。
請求項１１記載のモータの制御方法によれば、複数の前記モータの相互干渉を補償し、相互干渉のパラメータを調整することにより、相互干渉の制約を受けずに、制御部の制御パラメータを自動的に調整することができる。
【図面の簡単な説明】
【図１】本発明の第１の基本構成図
【図２】本発明の第１の具体的実施例を表すブロック図
【図３】本発明の第１の具体的実施例における応答波形１
【図４】本発明の第１の具体的実施例における応答波形２
【図５】本発明の第２の具体的実施例における応答波形
【図６】本発明の第３の具体的実施例を表すブロック図
【図７】本発明の第４の具体的実施例を表すモデル
【図８】本発明の第４の具体的実施例を表すブロック図
【図９】従来の制御方式を示す図
【符号の説明】
１０：実機部
１１：モータ制御部
１２：機構部
１３：モータ
１４：位置検出器
１５：外力補償部
２０：シミュレーション部
２１：制御モデル部
２２：機構モデル部
２３：モータモデル
２４：位置検出器モデル
２５：外力補償部モデル
３１：状態量比較部
３２：評価量演算部
３３：制御パラメータ調整部
３４：パラメータ同定部
３５：相互干渉補償部
１１１：位置速度ループ
１１２：アンプ
１２１：２次側機構部
１２２：減速機
２１１：位置速度制御ループモデル
２１２：アンプモデル
２２１：２次側機構部モデル
２２２：減速機モデル
３１１：振動成分抽出部
【図１】
2004328829.tif 000013
【図２】
2004328829.tif 000014
【図３】
2004328829.tif 000015
【図４】
2004328829.tif 000016
【図５】
2004328829.tif 000017
【図６】
2004328829.tif 000018
【図７】
2004328829.tif 000019
【図８】
2004328829.tif 000020
【図９】
2004328829.tif 000021