(57)【要約】【課題】  制御ゲイン切換えを簡素化し、ＰＩ型とＩ−Ｐ型の速度制御両方で利用できる積分補正式を用いて補正し、位置決め時間の短いモータ制御装置と制御方法を提供する。【解決手段】  位置指令の差分値の絶対値と前記位置偏差の絶対値を計算し、前記状態量に応じて制御パラメータを変更するゲイン切換器１６を備えるとともに、積分出力値は、次式で補正するようにした。【数１】2006323745.tif 000009ここで、ｖ：積分器出力値、Ｋｖ：速度ゲイン、Ｔｓ：速度制御のサンプリング時間、Ｋｉ：速度ループ積分ゲイン、Ｖｅｒｒ：速度偏差  を表す。【選択図】図１
2006323745.tif 000002
【特許請求の範囲】
【請求項１】
位置指令を生成する位置指令生成器と、前記位置指令とモータ位置の偏差を入力し速度指令を生成する位置制御器と、前記速度指令とモータ速度の偏差を入力しトルク指令を生成する速度制御器と、前記トルク指令を入力しモータ駆動電流を生成する電流制御器と、前記位置制御器の位置制御ゲインと前記速度制御器の速度制御ゲインを状態に応じて切換えるゲイン切換器とを備えたモータ制御装置において、
前記ゲイン切換器は、前記位置指令の時間差分の絶対値である位置指令差分絶対値が所定値以上のときは前記位置制御ゲインと前記速度制御ゲインを第１所定値に切換え、前記位置指令差分絶対値が所定値よりも小さく、前記位置偏差の絶対値である位置偏差絶対値が所定値以上のときは第２所定値に切換え、前記位置指令差分絶対値が所定値よりも小さく前記位置偏差絶対値が所定値よりも小さい時は第３所定値に切換えるとともに、前記速度制御器の積分器出力値を（１）式で補正することを特徴とするモータ制御装置。
【数１】
2006323745.tif 000007
ここで、ｖ：積分器出力値、Ｋｖ：速度ループゲイン、Ｔｓ：速度制御のサンプリング時間、Ｋｉ：速度ループ積分ゲイン、Ｖｅｒｒ：速度偏差  を表す。
【請求項２】
前記速度制御器はＩ−Ｐ制御器であることを特徴とする請求項１記載のモータ制御装置。
【請求項３】
前記速度制御器はＰＩ制御器であることを特徴とする請求項１記載のモータ制御装置。
【請求項４】
前記ゲイン切換器は、外部信号の値に応じて、前記位置制御ゲインおよび前記速度制御ゲインを切換えることを特徴とする請求項１記載のモータ制御装置。
【請求項５】
前記ゲイン切換器は、現在のゲイン設定値を表示できるモニタを備えたことを特徴とする請求項１記載のモータ制御装置。
【請求項６】
位置指令を発生する位置指令発生器と、前記位置指令とモータ位置の偏差を入力し速度指令を生成する位置制御器と、前記速度指令とモータ速度の偏差を入力しトルク指令を生成する速度制御器と、前記トルク指令を入力しモータ駆動電流を生成する電流制御器と、前記位置制御器の位置制御ゲインと前記速度制御器の速度制御ゲインを状態に応じて切換えるゲイン切換器とを備えたモータ制御装置のモータ制御方法において、
位置指令の時間差分の絶対値である位置指令差分絶対値を求めるステップＳＴ１と、
前記位置指令差分絶対値を所定値と比較し、前記位置指令差分絶対値が大きい場合はステップＳＴ４へ移行し、小さい場合はステップＳＴ３へ移行するステップＳＴ２と、
位置制御ゲイン、速度制御ゲインを第１所定値に切換えるステップＳＴ４と、
位置偏差絶対値を所定値と比較し、前記位置偏差絶対値が大きい場合はステップＳＴ５へ移行し、小さい場合はステップＳＴ６へ移行するステップＳＴ３と、
前記位置制御ゲイン、前記速度制御ゲインを第２所定値に切換えるステップＳＴ５と、
前記位置制御ゲイン、前記速度制御ゲインを第３所定値に切換えるステップＳＴ６と、前記速度制御器の積分器出力を（１）式で補正するステップＳＴ７と、
を備えることを特徴とするモータ制御方法。
【数２】
2006323745.tif 000008
ここで、ｖ：積分器出力値、Ｋｖ：速度ループゲイン、Ｔｓ：速度制御のサンプリング時間、Ｋｉ：速度ループ積分ゲイン、Ｖｅｒｒ：速度偏差  を表す。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ロボットや工作機械などを駆動するサーボモータで、動作状態に応じて制御パラメータを切換えるゲイン切換器を備えたモータ制御装置とその制御方法に関するものである。
【背景技術】
【０００２】
従来の動作状態に応じて制御パラメータを切り換えるゲイン切換器を備えたモータ制御装置においては、電動機の極低速状態、特に停止状態に限り発生する振動を回避することを目的するものやサーボゲインを不連続に切り換えても、モータにその不連続の影響が出ないようにすることを目的とするゲイン切換器を備えたモータ制御装置であった。
特許文献１では、電動機の極低速状態、特に停止状態に限り発生する振動を回避するゲイン切換器を備えたモータ制御装置が記載されている。以下、簡単に図面を用いて説明する。図７（従来装置１の図）において、７０１は指令パルスを発生するパルス発生器であり、指令パルスを７０２のサーボドライバが受け取る。サーボドライバ７０２は、７０３のパルス間隔計測器と７０４のサーボ定数切換器と７０５のサーボ制御器で構成されている。指令パルスは、サンプリング周期毎にパルス間隔計測器７０３へ入力される。パルス間隔計測器７０３は指令パルスが入力されない場合にカウントし、指令パルスが入力された場合はゼロクリアし、パルス間隔をサンプリング周期単位で計測するものである。パルス間隔計測器７０３で計測されたパルス間隔がサーボ定数切換器７０４の切換設定値以上の時間になれば、サーボ定数が切り換えられ、反対にパルス間隔計測器７０３で計測されたパルス間隔が、サーボ定数切換器７０４の切換設定値未満の時間になれば、切り換え前のサーボ定数に切り換える。指令パルスが切換え設定値以上の時間入力されない場合、低いサーボゲインとなり、それ以外の場合、高いサーボゲインとなる。
【０００３】
特許文献２では、サーボゲインを不連続に切換えても、モータにその不連続の影響が出ないようにするゲイン切換器を備えたモータ制御装置が記載されている。以下、簡単に図面を用いて説明する。図８（従来装置２の図）において、位置指令Ｐｓと８１０の検出器の出力であるモータ位置Ｐｆｂを８００の減算器に入力し、減算器８００の出力Ｅｒを８０１の位置ループゲインと乗算する。位置ループゲイン乗算結果である速度指令Ｖｓと、８０３の速度検出器の出力であるモータ速度を８０２の減算器に入力する。減算器８０２の出力である速度偏差Ｅｖは８０４の速度ループゲインと乗算するとともに８０５の積分器に入力し、積分器出力を８０６の速度ループ積分ゲインと乗算する。速度ループゲイン乗算結果と速度ループ積分ゲイン乗算結果を８０７の加算器に入力し、加算器８０７の出力であるトルク指令を８０８のサーボアンプに入力し、サーボアンプ８０８では８０９のサーボモータを駆動する電流を出力する。サーボモータに結合された８１０の検出器によりモータ位置を出力して、フィードバック制御している。ゲイン切換は、動作状態データ（位置指令、位置フィードバック、速度フィードバック、トルク指令）に応じて８１１の動作状態判断部でゲイン切換信号を８１２のゲイン変更部と８１３の速度偏差積分値変更部に送信し、ゲイン変更部８１２では予め設定しておいた位置ループゲインと速度ループゲインと速度ループ積分ゲインに変更する。また、速度偏差積分値変更部８１３では動作状態判定部８１１から動作状態データを受け取り、ゲイン変更部８１２から新旧のゲインを受け取り、積分器８０５から現在の積分値を受け取って新しい積分値を生成し変更するものである。アンプへの出力が連続的になるように、ゲイン切換と同時に積分器８０５の積分値を調整する。この積分器８０５の積分値の調整は、ゲイン切換前の各ゲインをＫｐ１、Ｋｖ１、Ｋｉ１、積分値をΣＥｖ１、そしてゲイン切換後の各ゲインをＫｐ２、Ｋｖ２、Ｋｉ２とすると、新しい積分値ΣＥｖ２はゲイン切換前後でサーボアンプへの指令が等しいという条件より、
【０００４】
【数１】
2006323745.tif 000003
【０００５】
となり、この（２）式を変形して、
【０００６】
【数２】
2006323745.tif 000004
【０００７】
としている。ゲイン切換後は、切換後のＫｐ２を使って指令速度Ｖｓを算出し、指令速度Ｖｓとモータ速度を使って速度偏差Ｅｖを算出し、Ｋｖ２、Ｋｉ２を使ってサーボアンプ８０８へのトルク指令を算出している。
【特許文献１】特開平８−２４１１２９（３頁図１）
【特許文献２】特開平７−１９４１５７（４頁図３）
【発明の開示】
【発明が解決しようとする課題】
【０００８】
従来のゲイン切換装置を備えたモータ制御装置の中で、特許文献１ではパルス発生器からの指令パルスのみを条件としてゲイン切換えしており、例えば指令パルスが入力されている期間はハイゲインとし、指令パルスが入力されない期間をローゲインとすると位置決め時間整定時間が延びるという問題がある。また、（３）式に示すような積分器の積分値の調整をしていないため、ゲイン切換時にオーバーシュートが発生するという問題がある。  特許文献２ではゲイン切換条件を位置指令、位置フィードバック、速度フィードバック、トルク指令としており、これらの値は動作条件で異なるのでその都度、ゲイン切換条件を設定する必要がある。また、（３）式は計算に利用する変数が多く複雑であると共に速度ＰＩ制御を対象とした積分補正式であり、速度Ｉ−Ｐ制御にする時には補正式を変更しなければならないという問題がある。
本発明では、このような問題点に鑑みてなされたものであり、制御ゲイン切換えを簡素化し、ＰＩ型とＩ−Ｐ型の速度制御両方で利用できる積分補正式を用いて補正し、ゲイン切換後のオーバーシュートを抑制し、位置決め時間が短く、設定の誤りなどをユーザが監視でき安全に調整ができるモータ制御装置と制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上記問題を解決するため、本発明は、次のように構成したのである。
請求項１に記載の発明は、位置指令を生成する位置指令生成器と、前記位置指令とモータ位置の偏差を入力し速度指令を生成する位置制御器と、前記速度指令とモータ速度の偏差を入力しトルク指令を生成する速度制御器と、前記トルク指令を入力しモータ駆動電流を生成する電流制御器と、前記位置制御器の位置制御ゲインと前記速度制御器の速度制御ゲインを状態に応じて切換えるゲイン切換器とを備えたモータ制御装置において、前記ゲイン切換器は、前記位置指令の時間差分の絶対値である位置指令差分絶対値が所定値以上のときは前記位置制御ゲインと前記速度制御ゲインを第１所定値に切換え、前記位置指令差分絶対値が所定値よりも小さく、前記位置偏差の絶対値である位置偏差絶対値が所定値以上のときは第２所定値に切換え、前記位置指令差分絶対値が所定値よりも小さく前記位置偏差絶対値が所定値よりも小さい時は第３所定値に切換えるとともに、前記速度制御器の積分器出力値を（１）式で補正することを特徴とするものである。
【００１０】
【数３】
2006323745.tif 000005
【００１１】
ここで、ｖ：積分器出力値、Ｋｖ：速度ループゲイン、Ｔｓ：速度制御のサンプリング時間、Ｋｉ：速度ループ積分ゲイン、Ｖｅｒｒ：速度偏差  を表す。
請求項２に記載の発明は、請求項１に記載のモータ制御装置において、前記速度制御器はＩ−Ｐ制御器であることを特徴とするものである。
請求項３に記載の発明は、請求項１に記載のモータ制御装置において、前記速度制御器はＰＩ制御器であることを特徴とするものである。
請求項４に記載の発明は、請求項１に記載のモータ制御装置において、前記ゲイン切換器は、外部信号の値に応じて、前記位置制御ゲインおよび前記速度制御ゲインを切換えることを特徴とするものである。
請求項５に記載の発明は、請求項１に記載のモータ制御装置において、前記ゲイン切換器は、現在のゲイン設定値を表示できるモニタを備えたことを特徴とするものである。
請求項６に記載の発明は、位置指令を発生する位置指令発生器と、前記位置指令とモータ位置の偏差を入力し速度指令を生成する位置制御器と、前記速度指令とモータ速度の偏差を入力しトルク指令を生成する速度制御器と、前記トルク指令を入力しモータ駆動電流を生成する電流制御器と、前記位置制御器の位置制御ゲインと前記速度制御器の速度制御ゲインを状態に応じて切換えるゲイン切換器とを備えたモータ制御装置のモータ制御方法において、位置指令の時間差分の絶対値である位置指令差分絶対値を求めるステップＳＴ１と、前記位置指令差分絶対値を所定値と比較し、前記位置指令差分絶対値が大きい場合はステップＳＴ４へ移行し、小さい場合はステップＳＴ３へ移行するステップＳＴ２と、位置制御ゲイン、速度制御ゲインを第１所定値に切換えるステップＳＴ４と、位置偏差絶対値を所定値と比較し、前記位置偏差絶対値が大きい場合はステップＳＴ５へ移行し、小さい場合はステップＳＴ６へ移行するステップＳＴ３と、前記位置制御ゲイン、前記速度制御ゲインを第２所定値に切換えるステップＳＴ５と、前記位置制御ゲイン、前記速度制御ゲインを第３所定値に切換えるステップＳＴ６と、前記速度制御器の積分器出力を（１）式で補正するステップＳＴ７とを備えることを特徴とするものである。
【発明の効果】
【００１２】
請求項１および６に記載の発明によると、速度制御方式（速度ＰＩ制御や速度Ｉ−Ｐ制御）によらず、ゲイン切換後のオーバーシュートを抑制できる。また、ゲイン切換条件を位置指令の差分値の絶対値を使っており、動作条件に大きく依存しないため切換条件の設定が容易である。
請求項２に記載の発明によると、積分補正式を使わなくとも位置Ｐ速度Ｉ−Ｐ制御でオーバーシュートを抑制できる。
請求項３に記載の発明によると、積分補正式を使わなくとも位置Ｐ速度ＰＩ制御でオーバーシュートを抑制できる。
請求項４に記載の発明によると、内部状態よりも外部信号（例えば負荷状態）を優先させてゲイン切換ができる。
請求項５に記載の発明によると、現在のゲイン設定値をモニタできるので、設定の誤りなどをユーザーが監視でき、安全に調整ができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明の実施の形態について図を参照して説明する。
【実施例１】
【００１４】
図１は、本発明のモータ制御装置の全体構成図であり、本実施例では速度比例積分制御を速度Ｉ−Ｐ制御に限定して説明する。速度ＰＩ制御においても、同様の方法で実現できる。図において、１は指令発生器であり、２の位置指令と３のモータ位置を４の減算器に入力した結果、５の位置偏差を出力する。位置偏差５は６の位置ループゲインと乗算し、乗算結果は速度指令となる。速度指令と７の差分演算器の出力であるモータ速度を８の減算器に入力する。減算器８の出力は速度偏差であり、速度偏差とモータ速度を９の速度Ｉ−Ｐ制御器に入力する。速度Ｉ−Ｐ制御器９では、速度偏差を１０の積分制御器に入力する。積分制御器１０では、（１）式を計算する。
【００１５】
まず、（１）式の右辺第１項の計算を説明する。１サンプリング過去の積分出力値（ｖ［ｉ−１］）に１サンプリング過去の速度ループゲイン（Ｋｖ［ｉ−１］）を乗算し、乗算結果を現在の速度ループゲイン（Ｋｖ［ｉ］）で除算する。次に（１）式の右辺第２項の計算を説明する。速度偏差（Ｖｅｒｒ［ｉ］）とサンプリング時間Ｔｓを乗算し、乗算結果を速度ループ積分ゲイン（Ｋｉ［ｉ］）で乗算する。（１）式の右辺第１項と第２項の和が積分制御器の出力値となる。次に、積分制御器の出力値と速度フィードバックを１１の減算器に入力し、減算器１１の出力と１２の速度ループゲインを乗算する。乗算結果であるトルク指令を１３の電流制御器に入力し、電流制御器１３では１４のモータを駆動する電流を出力する。モータ１４が駆動されると回転数に応じて１５の検出器でモータ位置３が出力される。次に１６のゲイン切換器を説明する。ゲイン切換器１６には位置指令２と位置偏差５を入力し、ゲイン切換器１６では、位置指令２の差分値の絶対値と位置偏差５の絶対値を計算する。位置指令２の差分値の絶対値が所定値よりも大きい時（これを状態１とする）には、モータが動きだすことを表しており、位置ループゲインＫｐ１，速度ループゲインＫｖ１，速度ループ積分ゲインＫｉ１を位置ループゲイン６と速度ループゲイン１２と積分制御器１０の速度ループ積分ゲインに設定する。次に位置指令２の差分値の絶対値が０となり、位置偏差の絶対値が所定値以上の時（これを状態２とする）では、指令は０であるが、まだ駆動中であるので、位置ループゲインＫｐ２，速度ループゲインＫｖ２，速度ループ積分ゲインＫｉ２を位置ループゲイン６と速度ループゲイン１２と積分制御器１０の速度ループ積分ゲインに設定する。最後に位置指令２の差分の絶対値が０で、位置偏差の絶対値が所定値以下の時（これを状態３とする）、モータは停止状態であると見なし、位置ループゲインＫｐ３，速度ループゲインＫｖ３，速度ループ積分ゲインＫｉ３を位置ループゲイン６と速度ループゲイン１２と積分制御器１０の速度ループ積分ゲインに設定する。ゲイン切換時点、例えば状態１から状態２に変わった瞬間は、現在速度ループゲイン（Ｋｖ［ｉ］）はＫｖ２であり、１サンプリング過去の速度ループゲイン（Ｋｖ［ｉ−１］）はＫｖ１を表す。また、状態１が持続されている間は、現在の速度ループゲインも１サンプリング過去の速度ループゲインもＫｖ１を表す。この時、（１）式のＫｖ［ｉ−１］はＫｖ１であり、Ｋｖ［ｉ］もＫｖ１であることを表している。上記説明では、状態２と３の速度ループゲイン、位置ループゲイン、速度ループ積分ゲインは異なるが、同値としても良い。１８は、現在の速度ループゲインを表示するモニタである。モニタ１８の出力信号を計測装置などで取り込むことにより、運転状態を確認することができる。
【００１６】
次に、本発明のモータ制御装置（図１）と従来のモータ制御装置１（図８）をシミュレーションした。このシミュレーションでの各条件を説明する。指令発生器１では、速度台形指令を積分して位置指令として、減算器４に入力する。指令は、０ｓから加速し、０．１ｓで最大速度１０００（１／ｍｉｎ）に到達する。０．１ｓから０．３ｓまで１０００（１／ｍｉｎ）を維持し、０．３ｓから０．４ｓまで減速し、指令払い出し終了は０．４ｓとなる。その後、指令０であり、０．６ｓからまた負方向に加速し、０．７ｓで−１０００（１／ｍｉｎ）に到達し、０．７ｓから０．９ｓまで−１０００（１／ｍｉｎ）を維持し、０．９ｓから減速して１ｓで指令払い出し完了とする速度台形指令とした。モータ１４には、定格トルクの１０％に相当する外乱トルクが入力される。ゲイン切換器１６の切換条件とゲイン設定値を次のように設定した。状態１は位置指令の差分の絶対値が１パルス以上として、位置ループゲインＫｐ１＝１００Ｈｚ、速度ループゲインＫｖ１＝１６０Ｈｚ、速度ループ積分ゲインＫｉ１＝２πＫｖ１として、状態２は位置指令２の差分の絶対値が０で位置偏差の絶対値が１０パルスよりも大きい時とし、位置ループゲインＫｐ２＝９０Ｈｚ、速度ループゲインＫｖ２＝１５０Ｈｚ、速度ループ積分ゲインＫｉ２＝２πＫｖ２とした。さらに状態３は位置指令２の差分の絶対値が０で、位置偏差の絶対値が１０パルス以下の時として、位置ループゲインＫｐ３＝８０Ｈｚ、速度ループゲインＫｖ３＝８０Ｈｚ、速度ループ積分ゲインＫｉ３＝２πＫｖ３とした。それに対して従来装置１では、指令が１パルス以上の時には、位置ループゲインＫｐ１＝１００Ｈｚ、速度ループゲインＫｖ１＝１６０Ｈｚ、速度ループ積分ゲインＫｉ１＝２πＫｖ１とし、指令が０で、位置ループゲインＫｐ３＝８０Ｈｚ、速度ループゲインＫｖ３＝８０Ｈｚ、速度ループ積分ゲインＫｉ３＝２πＫｖ３とした。この条件でモータ速度の波形比較（図５）とモータ位置の波形比較（図６）をした。まず図５を説明する。本発明の装置ではゲイン切換は図中ＡとＢの時点で実行される。Ａ時点以前が状態２であり、Ａ時点以降が状態３である。またＢ時点以降は状態１である。従来装置のゲイン切換は、指令払い出し完了時点（図中０．４ｓ）から０．６ｓまでは位置ループゲインＫｐ３＝８０Ｈｚ、速度ループゲインＫｖ３＝８０Ｈｚ、速度ループ積分ゲインＫｉ３＝２πＫｖ３であり、０．６ｓ以降は、位置ループゲインＫｐ１＝１００Ｈｚ、速度ループゲインＫｖ１＝１６０Ｈｚ、速度ループ積分ゲインＫｉ１＝２πＫｖ１としている。従来装置では、指令払い出し完了後にゲインを低くする為、０速度に到達する時間が本発明に比べて２０ｍｓ長い事がわかる。また、指令１パルス以上になる時点（０．６ｓ）から、従来装置１ではオーバーシュートが発生しているのに対して、本発明ではオーバーシュートがなく良好な結果となっている。次に図６を説明する。図中Ａ、Ｂの説明は図５の説明と同じであるので説明を省略する。Ａ時点で本発明装置の結果は、従来装置１の結果に比べて１０パルス程度目標位置に近づいていることがわかる。また、位置決め整定時間を指令払い出し後、±２パルス以内に入ったときとすると��本発明装置は従来装置１の結果に比べて、２０ｍｓ程度位置決め時間が短縮されていることがわかる。
【実施例２】
【００１７】
図２は、請求項２記載のゲイン切換器を表している。図において、１は指令生成器であり、２の位置指令と３のモータ位置を４の減算器に入力し５の位置偏差を出力する。位置偏差５は６の位置ループゲインと乗算し、乗算結果は速度指令となる。速度指令と７の差分演算器の出力であるモータ速度を８の減算器に入力する。減算器８の出力は速度偏差であり、速度偏差と１２の速度ループゲインを乗算する。乗算結果を２０１の積分制御器に入力する。速度偏差から積分出力値までの関係は、（４）式となる。
【００１８】
【数４】
2006323745.tif 000006
（４）
【００１９】
ｖ：積分器出力値、Ｋｖ：速度ループゲイン、Ｔｓ：速度制御のサンプリング時間、Ｋｉ：速度ループ積分ゲイン、Ｖｅｒｒ：速度偏差
モータ速度と２０２の速度ループゲインを乗算した結果と積分出力値を１１の減算器に入力する。減算器１１の出力であるトルク指令を１３の電流制御器に入力し、電流制御器１３は１４のモータを駆動する電流を出力する。１６のゲイン切換器を説明する。ゲイン切換器１６には位置指令２と位置偏差５を入力し、ゲイン切換器では、位置指令２の差分値の絶対値と位置偏差５の絶対値を計算する。位置指令２の差分値の絶対値が所定値よりも大きい時（これを状態１とする）には、モータが動きだすことを表しており、位置ループゲインＫｐ１，速度ループゲインＫｖ１，速度ループ積分ゲインＫｉ１を位置ループゲイン６と速度ループゲイン１２、２０２と積分制御器２０１の速度ループ積分ゲインに設定する。次に位置指令２の差分値の絶対値が０となり、位置偏差の絶対値が所定値以上の時（これを状態２とする）では、指令は０であるが、まだ駆動中であるので、位置ループゲインＫｐ２，速度ループゲインＫｖ２，速度ループ積分ゲインＫｉ２を位置ループゲイン６と速度ループゲイン１２、２０２と積分制御器２０１の速度ループ積分ゲインに設定する。最後に位置指令２の差分の絶対値が０で、位置偏差の絶対値が所定値以下の時（これを状態３とする）、モータは停止状態であると見なし、位置ループゲインＫｐ３，速度ループゲインＫｖ３，速度ループ積分ゲインＫｉ３を位置ループゲイン６と速度ループゲイン１２、２０２と積分制御器２０１の速度ループ積分ゲインに設定する。ゲイン切換時点、例えば状態１から状態２に変わった瞬間は、現在速度ループゲイン（Ｋｖ［ｉ］）はＫｖ２であり、１サンプリング過去の速度ループゲイン（Ｋｖ［ｉ−１］）はＫｖ１を表す。また、状態１が持続されている間は、現在の速度ループゲインも１サンプリング過去の速度ループゲインもＫｖ１を表す。この時、（４）式のＫｖ［ｉ−１］はＫｖ１であり、Ｋｖ［ｉ］もＫｖ１であることを表している。１８は、現在の速度ループゲインを表示するモニタである。モニタ１８の出力信号を計測装置などで取り込むことにより、運転状態を確認することができる。
【実施例３】
【００２０】
図３は、請求項３記載のゲイン切換装置を表している。図において、１は指令発生器であり、２の位置指令と３のモータ位置を４の減算器に入力した結果、５の位置偏差を出力する。位置偏差５と６の位置ループゲインを乗算し、乗算結果は速度指令となる。速度指令と７の差分演算器の出力であるモータ速度を８の減算器に入力する。減算器８の出力は速度偏差であり、速度偏差を３００の速度ＰＩ制御器に入力する。速度ＰＩ制御器３００では、速度偏差と１２の速度ループゲインを乗算し、乗算結果を２０１の積分制御器に入力する。速度偏差から積分出力値までの関係は（４）式となる。
【００２１】
モータ速度と速度ループゲイン１２の乗算結果と積分出力値を３０１の加算器に入力する。加算器３０１の出力であるトルク指令を１３の電流制御器に入力し、電流制御器１３は１４のモータを駆動する電流を出力する。１６のゲイン切換器を説明する。ゲイン切換器１６には位置指令２と位置偏差５を入力し、ゲイン切換器では、位置指令２の差分値の絶対値と位置偏差５の絶対値を計算する。位置指令２の差分値の絶対値が所定値よりも大きい時（これを状態１とする）には、モータが動きだすことを表しており、位置ループゲインＫｐ１，速度ループゲインＫｖ１，速度ループ積分ゲインＫｉ１を位置ループゲイン６と速度ループゲイン１２と積分制御器２０１の速度ループ積分ゲインに設定する。次に位置指令２の差分値の絶対値が０となり、位置偏差の絶対値が所定値以上の時（これを状態２とする）では、指令は０であるが、まだ駆動中であるので、位置ループゲインＫｐ２，速度ループゲインＫｖ２，速度ループ積分ゲインＫｉ２を位置ループゲイン６と速度ループゲイン１２と積分制御器２０１の速度ループ積分ゲインに設定する。最後に位置指令２の差分の絶対値が０で、位置偏差の絶対値が所定値以下の時（これを状態３とする）、モータは停止状態であると見なし、位置ループゲインＫｐ３，速度ループゲインＫｖ３，速度ループ積分ゲインＫｉ３を位置ループゲイン６と速度ループゲイン１２と積分制御器２０１の速度ループ積分ゲインに設定する。ゲイン切換時点、例えば状態１から状態２に変わった瞬間は、現在速度ループゲイン（Ｋｖ［ｉ］）はＫｖ２であり、１サンプリング過去の速度ループゲイン（Ｋｖ［ｉ−１］）はＫｖ１を表す。また、状態１が持続されている間は、現在の速度ループゲインも１サンプリング過去の速度ループゲインもＫｖ１を表す。この時、（４）式のＫｖ［ｉ−１］はＫｖ１であり、Ｋｖ［ｉ］もＫｖ１であることを表している。１８は、現在の速度ループゲインを表示するモニタである。モニタ１８の出力信号を計測装置などで取り込むことにより、運転状態を確認することができる。
【００２２】
次に、本発明のモータ制御装置（図３）と従来のモータ制御装置２（図８）をシミュレーションした。このシミュレーションでの各条件を説明する。指令発生器１では、速度台形指令を積分して位置指令として、減算器４に入力する。指令は、０ｓから加速し、０．１ｓで最大速度１０００（１／ｍｉｎ）に到達する。０．１ｓから０．３ｓまで速度１０００（１／ｍｉｎ）を維持し、０．３ｓから０．４ｓまで減速し、指令払い出し終了は、０．４ｓとなる。その後、指令０であり、０．６ｓからまた負方向に加速し、０．７ｓで−１０００（１／ｍｉｎ）に到達し、０．７ｓから０．９ｓまで速度−１０００（１／ｍｉｎ）を維持し、０．９ｓから減速して、１ｓで指令払い出し完了とする速度台形指令とした。モータ１３には、定格トルクの１０％に相当する外乱トルクを入力した。ゲイン切換器１６の切換条件とゲイン設定値を次のように設定した。状態１は位置指令の差分の絶対値が１パルス以上として、位置ループゲインＫｐ１＝１００Ｈｚ、速度ループゲインＫｖ１＝１６０Ｈｚ、速度ループ積分ゲインＫｉ１＝２πＫｖ１として、状態２は位置指令２の差分の絶対値が０で位置偏差の絶対値が１０パルスよりも大きい時とし、位置ループゲインＫｐ２＝９０Ｈｚ、速度ループゲインＫｖ２＝１５０Ｈｚ、速度ループ積分ゲインＫｉ２＝２πＫｖ２とした。さらに状態３は位置指令２の差分の絶対値が０で、位置偏差の絶対値が１０パルス以下の時として、位置ループゲインＫｐ３＝８０Ｈｚ、速度ループゲインＫｖ３＝８０Ｈｚ、速度ループ積分ゲインＫｉ３＝２πＫｖ３とした。それに対して従来装置２では、位置指令の差分値が１パルス以上の時には、位置ループゲインＫｐ１＝１００Ｈｚ、速度ループゲインＫｖ１＝１６０Ｈｚ、速度ループ積分ゲインＫｖｉ１＝（２πＫｖ１）＾２とし、位置指令の差分値が０で速度フィードバックが１（１／ｍｉｎ）より大きい時には、位置ループゲインＫｐ２＝９０Ｈｚ、速度ループゲインＫｖ２＝１５０Ｈｚ、速度ループ積分ゲインＫｖｉ２＝（２πＫｖ２）＾２とし、位置指令の差分値が０で速度フィードバックが１（１／ｍｉｎ）以下であれば、位置ループゲインＫｐ３＝８０Ｈｚ、速度ループゲインＫｖ３＝８０Ｈｚ、速度ループ積分ゲインＫｖｉ３＝（２πＫｖ３）＾２とした。従来装置２の説明には、ゲイン切換の条件に、動作状態（位置指令、位置フィードバック、速度フィードバック、トルク指令）を使うとあるが、どのような状態でゲイン切り換えするのかが、説明されていないため、上記のように位置指令の差分値とモータ速度を切換条件とした。この条件でモータ速度の波形比較（図９）とモータ位置の波形比較（図１０）をした。まず図９を説明する。本発明の装置ではゲイン切換は図中ＢとＣの時点で実行される。Ｂ時点以前が状態２であり、Ｂ時点以降が状態３であり、Ｃ時点以降は状態１である。従来装置のゲイン切換は、図中ＡとＣの時点で実行される。Ａ時点以前はＫｐ２、Ｋｖ２、Ｋｖｉ２のゲインを利用し、Ａ時点からＣ時点まではＫｐ３、Ｋｖ３、Ｋｖｉ３のゲインを利用し、Ｃ時点以降はＫｐ１、Ｋｖ１、Ｋｖｉ１を利用するようにしている。Ａ時点以前は、本発明装置による結果と従来装置による結果は一致しており良好であるが、Ａ時点のゲイン切換により、従来装置２では速度フィードバックが、不連続な動きをしていることがわかる。それに対して、本発明装置のゲイン切換時点Ｂでは、不連続な動きはほとんど見られず良好である。Ｃ時点は指令が入力され、ゲイン切換が行われるが、本発明装置１および従来装置２で良好な結果となった。次に図１０を説明する。図中Ａ、Ｂ、Ｃは上記説明と同じなので、説明を省略する。Ａ時点以前は、本発明装置と従来装置２の結果は一致し、良好であるが、Ａ時点のゲインの切り換わりで、従来装置の応答が遅くなっていることがわかる。位置決め完了を目標位置の±５パルスとすると従来装置２の応答は６ｍｓ程度遅れている。
【実施例４】
【００２３】
図４は請求項４に記載のモータ制御装置を表しており、４００の外部信号（例えば、現在の負荷状態を表す信号）を１６のゲイン切換装置に入力し、モータ制御装置の位置ループゲイン６と速度ループゲイン１２と速度ループ積分ゲイン２０１を外部信号４００の値に応じて、位置ループゲイン（Ｋｐ１，Ｋｐ２，Ｋｐ３）のいずれか一つと速度ループゲイン（Ｋｖ１，Ｋｖ２，Ｋｖ３）のいずれか一つと速度ループ積分ゲイン（Ｋｉ１，Ｋｉ２，Ｋｉ３）のいずれか一つを設定する。ゲイン設定の組み合わせとして、例えば位置ループゲインＫｐ１と速度ループゲインＫｖ１と速度ループ積分ゲインＫｉ１を選択する。外部信号を割り込み動作として、位置指令の差分値の絶対値や位置偏差の絶対値条件よりも優先順位を高くしてゲイン切り換えを行うことができる。
【実施例５】
【００２４】
図１２は、請求項５に記載のゲイン切換器であり、ゲイン切換器で設定されている速度ループゲインをモニタした結果を表している。図１２の説明を容易にする為に、図１１の説明を交えて以下説明する。図１１は本発明のゲイン切換条件に設定している位置指令差分値の絶対値と位置偏差の絶対値の状態変化を表している。図１１の状態変化に対応するように図１２の速度ループゲインが変化している。図１１の指令払い出し完了時点以前（状態１）は、図１２では速度ループゲインは１６０Ｈｚになっており、図１１の指令払い出し完了（位置指令の差分値の絶対値が０）時点以降から位置偏差の絶対値が１０パルスよりも大きい時（状態２）は、図１２では速度ループゲインは１５０Ｈｚとなる。図１１で位置指令の差分値の絶対値が０で位置偏差の絶対値が１０パルス以内（状態３）で図１２では速度ループゲインは８０Ｈｚとなっている。さらに、図１１で指令開始（位置指令差分値の絶対値が１パルス以上）時点で、図１２では速度ループゲインは第１所定値の１６０Ｈｚとなる事を表している。従来のゲイン切換装置は、ユーザーが現在どのゲイン状態であるのかを確認できなかった。本発明では、例えば、この速度ループゲインをゲイン切換条件設定時にチェックし、デバッグ機能として利用できる。
図１３は本発明のモータ制御方法を示すフローチャートである。図１３においてステップＳＴ１で位置指令の時間差分の絶対値を求める。次にステップＳＴ２で位置指令差分絶対値と所定値を比較し、大きい場合はステップＳＴ４へ、小さい場合はステップＳＴ３へ移行する。次にステップＳＴ３で位置偏差の絶対値と所定値を比較し、大きい場合はステップＳＴ５へ、小さい場合はステップＳＴ６へ移行する。次にステップＳＴ４で位置制御ゲイン、速度制御ゲインを第１所定値に切換える。また、ステップＳＴ５で位置制御ゲイン、速度制御ゲインを中間ゲインの第２所定値に切換える。さらに、ステップＳＴ６で位置制御ゲイン、速度制御ゲインを第３所定値に切換える。次にステップＳＴ７で速度制御器の積分器出力を補正式（１）を使用して補正する。なお第１所定値＞第２所定値＞第３所定値である。
【産業上の利用可能性】
【００２５】
本発明によると、制御ゲイン切換えを簡素化し、ＰＩ型とＩ−Ｐ型の速度制御両方で利用できる積分補正式を用いて補正し、位置決め時間の短いモータ制御装置と制御方法を提供できるので、ロボットや工作機械だけでなくなめらかなエレベータ制御への適用も期待できる。
【図面の簡単な説明】
【００２６】
【図１】本発明の第１実施例を表すモータ制御装置
【図２】本発明の第２実施例を表すモータ制御装置
【図３】本発明の第３実施例を表すモータ制御装置
【図４】本発明の第４実施例を表すモータ制御装置
【図５】請求項１記載の装置と従来装置１（図８）との速度フィードバック比較結果
【図６】請求項１記載の装置と従来装置１（図８）との位置フィードバック比較結果
【図７】従来装置１
【図８】従来装置２
【図９】請求項３記載の装置と従来装置２（図９）との速度フィードバック比較結果
【図１０】請求項３記載の装置と従来装置２（図９）との位置フィードバック比較結果
【図１１】位置指令差分の絶対値と位置偏差の絶対値の結果
【図１２】速度ループゲインのモニタ結果
【図１３】モータ制御方法を示すフローチャート
【符号の説明】
【００２７】
１  指令発生器
２  位置指令
３  モータ位置
４、８、１１、８００、８０２  減算器
５  位置偏差
６  位置制御ゲイン
７  差分演算器
９、２００、３００  速度比例積分制御器
１０、２０１  積分制御器
１２、２０２  速度制御ゲイン
１３  電流制御器
１４、８０９  サーボモータ
１５、８１０  検出器
１６  ゲイン切換器
１７  設定パラメータ
１８  モニタ
３０１、８０７  加算器
４００  外部信号
７０１  パルス発生器
７０２  サーボドライバ
７０３  パルス間隔計測器
７０４  サーボ定数切換器
７０５  サーボ制御器
８０１  位置ループゲイン
８０３  速度検出器
８０４  速度ループゲイン
８０５  積分器
８０６  速度ループ積分ゲイン
８０８  サーボアンプ
８１１  動作状態判断部
８１２  ゲイン変更部
８１３  速度偏差積分値変更部
【図１】
2006323745.tif 000010
【図２】
2006323745.tif 000011
【図３】
2006323745.tif 000012
【図４】
2006323745.tif 000013
【図５】
2006323745.tif 000014
【図６】
2006323745.tif 000015
【図７】
2006323745.tif 000016
【図８】
2006323745.tif 000017
【図９】
2006323745.tif 000018
【図１０】
2006323745.tif 000019
【図１１】
2006323745.tif 000020
【図１２】
2006323745.tif 000021
【図１３】
2006323745.tif 000022