(57)【要約】【課題】運転中負荷イナーシャが変動しても、負荷イナーシャに適したサーボ制御ゲインの自動設定を可能とするサーボ制御装置およびその負荷イナーシャ算出方法を提供する。【解決手段】サーボ制御装置１は、段階的に推定負荷イナーシャＪｏの値を変化させながら、モータおよび負荷の状態を推定するためのモータに負荷を装着した負荷モデル７０１またはオブザーバ７１０により得られた推定回転速度ωｏ、ωｏｂと実際のモータの回転速度ωとの差ωｅからモータの振動成分を検出するための振動検出手段７１と、前記振動成分からその最小値を検出するための最小値検出手段７２と、前記振動の最小値を検出した時の推定負荷イナーシャＪｏを負荷イナーシャＪ、Ｊ１、Ｊ２として取得し記憶するための最小値記憶手段７３とを備える。【選択図】    図１
2006034003.tif 000002
【特許請求の範囲】
【請求項１】
モータの負荷イナーシャ（Ｊ、Ｊ１、Ｊ２）に適したループゲインになるようにサーボ制御ゲインを自動設定する機能を有するサーボ制御装置において、
前記サーボ制御装置（１）は、モータの振動を検出するための振動検出手段（７１）と、前記振動の最小値を検出するための最小値検出手段（７２）と、前記振動の最小値を記憶するための最小値記憶手段（７３）を備え、
前記振動検出手段（７１）は、段階的に推定負荷イナーシャ（Ｊｏ）の値を変化させながら、前記モータおよび負荷の状態を推定するためのモータに負荷を装着した負荷モデル（７０１）またはオブザーバ（７１０）により得られた推定回転速度（ωｏ、ωｏｂ）と実際のモータの回転速度（ω）の差（ωｅ）から振動成分を検出し、前記最小値検出手段（７２）へ出力するものであり、
前記最小値検出手段（７２）は、前記振動検出手段（７１）で検出した振動成分からその最小値を検出するものであり、
最小値記憶手段（７３）は、前記最小値検出手段（７２）で前記振動の最小値を検出した時の前記推定負荷イナーシャ（Ｊｏ）を前記負荷イナーシャ（Ｊ、Ｊ１、Ｊ２）として取得し記憶するものであることを特徴とするサーボ制御装置。
【請求項２】
前記負荷モデル（７０１）は、剛体モデルであることを特徴とする請求項１記載のサーボ制御装置。
【請求項３】
前記負荷モデル（７０１）は、剛体モデルと２慣性系モデルの両者を備えたものであることを特徴とする請求項１記載のサーボ制御装置。
【請求項４】
前記オブザーバ（７１０）は、剛体オブザーバであることを特徴とする請求項１記載のサーボ制御装置。
【請求項５】
前記オブザーバ（７１０）は、剛体オブザーバと２慣性系オブザーバの両者を備えたものであることを特徴とする請求項１記載のサーボ制御装置。
【請求項６】
モータおよび負荷の状態を推定するためのモータに負荷を装着した負荷モデル（７０１）として剛体モデルと２慣性系モデルを有するサーボ制御装置の負荷イナーシャ算出方法において、
前記負荷が剛体か２慣性系かの判別を行なうステップ（ＳＴ３）と、
剛体と判断した場合は前記負荷モデル（７０１）として剛体モデルを選択するステップ（ＳＴ４）と、
前記剛体モデルの推定負荷イナーシャ（Ｊｏ）の値を段階的に変化させるステップ（ＳＴ６）と、
前記負荷モデル（７０１）により得られた推定回転速度（ωｏ）と実際のモータの回転速度（ω）の速度差（ωｅ）から振動振幅を検出するステップ（ＳＴ７）と、
前記検出した振動振幅は最小値かどうか判別するステップ（ＳＴ８）と、
前記振動振幅が最小値の時の前記推定負荷イナーシャ（Ｊｏ）の値を剛体の負荷イナーシャ（Ｊ）として記憶するステップ（ＳＴ９）と、を有することを特徴とするサーボ制御装置の負荷イナーシャ算出方法。
【請求項７】
前記剛体か２慣性系かの判別を行なうステップ（ＳＴ３）で２慣性系と判断した場合は、前記負荷モデル（７０１）として先ず、剛体モデルを選択するステップ（ＳＴ５）と、
段階的に前記剛体モデルの推定負荷イナーシャ（Ｊｏ）の値を変化させるステップ（ＳＴ１０）と、
前記負荷モデル（７０１）により得られた推定回転速度（ωｏ）と実際のモータの回転速度（ω）の速度差（ωｅ）から振動振幅を検出するステップ（ＳＴ１１）と、
前記検出した振動振幅は最小値かどうか判別するステップ（ＳＴ１２）と、
前記振動振幅が最小値の時の前記推定負荷イナーシャ（Ｊｏ）を２慣性系のモータ側負荷イナーシャ（Ｊ１）として記憶するステップ（ＳＴ１３）と、
次に、負荷モデル（７０１）を２慣性系モデルとするステップ（ＳＴ１４）と、
段階的に前記負荷モデル（７０１）の推定負荷イナーシャ（Ｊｏ）の値を変化させるステップ（ＳＴ１５）と、
前記負荷モデル（７０１）により得られた推定回転速度（ωｏ）と実際のモータの回転速度（ω）の速度差（ωｅ）から振動振幅を検出するステップ（ＳＴ１６）と、
前記検出した振動振幅は最小値かどうか判別するステップ（ＳＴ１７）と、
前記振動振幅が最小値の時の前記推定負荷イナーシャ（Ｊｏ）の値を２慣性系の負荷側の負荷イナーシャ（Ｊ２）として記憶するステップ（ＳＴ１８）と、を有することを特徴とする請求項６記載のサーボ制御装置の負荷イナーシャ算出方法。
【請求項８】
モータおよび負荷の状態を推定するためのオブザーバ（７１０）として剛体オブザーバと２慣性系オブザーバを有するサーボ制御装置の負荷イナーシャ算出方法において、
前記負荷は剛体か２慣性系かの判別を行なうステップ（ＳＴ２３）と、
剛体と判断した場合はオブザーバ（７１０）として剛体オブザーバを選択するステップ（ＳＴ２４）と、
前記オブザーバ（７１０）の推定負荷イナーシャ（Ｊｏ）の値を段階的に変化させるステップ（ＳＴ２６）と、
前記オブザーバ（７１０）により得られた推定回転速度（ωｏｂ）と実際のモータの回転速度（ω）の速度差（ωｅ）から振動振幅を検出するステップ（ＳＴ２７）と、
前記検出した振動振幅は最小値かどうか判別するステップ（ＳＴ２８）と、
前記振動振幅が最小値の時の前記推定負荷イナーシャ（Ｊｏ）の値を剛体の負荷イナーシャ（Ｊ）として記憶するステップ（ＳＴ２９）と、を有することを特徴とするサーボ制御装置の負荷イナーシャ算出方法。
【請求項９】
前記剛体か２慣性系かの判別を行なうステップ（ＳＴ２３）で２慣性系と判断した場合はオブザーバ（７１０）として、先ず剛体オブザーバを選択するステップ（ＳＴ２５）と、
前記オブザーバ（７１０）の推定負荷イナーシャ（Ｊｏ）の値を段階的に変化させるステップ（ＳＴ３０）と、
前記オブザーバ（７１０）により得られた推定回転速度（ωｏｂ）と実際のモータの回転速度（ω）の速度差（ωｅ）から振動振幅を検出するステップ（ＳＴ３１）と、
前記検出した振動振幅は最小値かどうか判別するステップ（ＳＴ３２）と、
前記振動振幅が最小値の時の推定負荷イナーシャ（Ｊｏ）を２慣性系のモータ側負荷イナーシャ（Ｊ１）として記憶するステップ（ＳＴ３３）と、
次に、前記オブザーバ（７１０）を２慣性系オブザーバとするステップ（ＳＴ３４）と、
前記オブザーバ（７１０）の推定負荷イナーシャ（Ｊｏ）の値を段階的に変化させるステップ（ＳＴ３５）と、
前記オブザーバ（７１０）により得られた推定回転速度（ωｏｂ）と実際のモータの回転速度（ω）の速度差（ωｅ）から振動振幅を検出するステップ（ＳＴ３６）と、
前記検出した振動振幅は最小値かどうか判別するステップ（ＳＴ３７）と、
前記振動振幅が最小値の時の前記推定負荷イナーシャ（Ｊｏ）の値を２慣性系の負荷側の負荷イナーシャ（Ｊ２）として記憶するステップ（ＳＴ３８）と、を有することを特徴とする請求項８記載のサーボ制御装置の負荷イナーシャ算出方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はサーボモータを駆動するサーボ制御装置およびその負荷イナーシャ算出方法に関し、特に、モータを通常運転中に負荷イナーシャを算出してサーボ制御ゲインを自動設定するサーボ制御装置およびその負荷イナーシャ算出方法に関する。
【背景技術】
【０００２】
従来のサーボ制御装置およびその負荷イナーシャ算出方法は、モータを運転して、互いに異なる加速度で複数回の加速を行い、モータ加速期間のみにおいて各々のトルク比例信号の積分量と速度変化幅から負荷イナーシャを算出する技術が考えられてきた（例えば、特許文献１参照）。
また、別の技術として、モータ運転中に外乱推定オブザーバより得られた外乱トルク推定値と加速度情報を用いて、外乱トルク推定値に加速度を乗算し、１周期の間、積分動作をさせて負荷イナーシャを算出する技術や、イナーシャ推定器内で外乱トルク推定値に加速度を乗算した後、フィルタ処理して負荷イナーシャを算出する技術などが考えられてきた（例えば、特許文献２参照）。
【特許文献１】特開２００２―１５３０８８号公報  （第５頁、第１図）
【特許文献２】特開平１１−３１３４９５号公報  （第３−５頁、第１図）
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来技術では負荷イナーシャを、いずれも加速時間から得ていたため、加速中でないと負荷イナーシャを算出することができなかった。加速中以外の連続した運転中では負荷イナーシャを算出できないため、仮に運転中に負荷イナーシャが変動した場合、負荷イナーシャに適したサーボ制御ゲインの自動設定が出来ないという問題があった。また、負荷イナーシャの値を加速時間から得ていたため、一旦振動を始めたり動きが不安定になったりすると加速時の加速度が一定でなくなるため、負荷イナーシャを正しく算出できなくなるという問題もあった。
本発明はこのような問題点に鑑みてなされたものであり、負荷イナーシャを加速中以外の連続した運転中でも算出でき、また、運転中に負荷イナーシャが変動しても運転中に負荷イナーシャを算出可能なサーボ制御装置およびその負荷イナーシャ算出方法を提供することを目的とする。
【課題を解決するための手段】
【０００４】
上記問題を解決するため、請求項１に記載の発明は、モータの負荷イナーシャに適したループゲインになるようにサーボ制御ゲインを自動設定する機能を有するサーボ制御装置において、前記サーボ制御装置は、モータの振動を検出するための振動検出手段と、前記振動の最小値を検出するための最小値検出手段と、前記振動の最小値を記憶するための最小値記憶手段を備え、前記振動検出手段は、段階的に推定負荷イナーシャの値を変化させながら、前記モータおよび負荷の状態を推定するためのモータに負荷を装着した負荷モデルまたはオブザーバにより得られた推定回転速度と実際のモータの回転速度の差から振動成分を検出し、前記最小値検出手段へ出力するものであり、前記最小値検出手段は、前記振動検出手段で検出した振動成分からその最小値を検出するものであり、最小値記憶手段は、前記最小値検出手段で前記振動の最小値を検出した時の前記推定負荷イナーシャを前記負荷イナーシャとして取得し記憶するものであることを特徴としている。
また、請求項２に記載の発明は、請求項１記載のサーボ制御装置において、前記負荷モデルは、剛体モデルであることを特徴としている。
また、請求項３に記載の発明は、請求項１記載のサーボ制御装置において、前記負荷モデルは、剛体モデルと２慣性系モデルの両者を備えたものであることを特徴としている。
また、請求項４に記載の発明は、請求項１記載のサーボ制御装置において、前記オブザーバは、剛体オブザーバであることを特徴としている。
また、請求項５に記載の発明は、請求項１記載のサーボ制御装置において、前記オブザーバは、剛体オブザーバと２慣性系オブザーバの両者を備えたものであることを特徴としている。
また、請求項６に記載の発明は、モータおよび負荷の状態を推定するためのモータに負荷を装着した負荷モデルとして剛体モデルと２慣性系モデルを有するサーボ制御装置の負荷イナーシャ算出方法において、前記負荷が剛体か２慣性系かの判別を行なうステップと、  剛体と判断した場合は前記負荷モデルとして剛体モデルを選択するステップと、前記剛体モデルの推定負荷イナーシャの値を段階的に変化させるステップと、前記負荷モデルにより得られた推定回転速度と実際のモータの回転速度の速度差から振動振幅を検出するステップと、前記検出した振動振幅は最小値かどうか判別するステップと、前記振動振幅が最小値の時の前記推定負荷イナーシャの値を剛体の負荷イナーシャとして記憶するステップと、を有することを特徴としている。
また、請求項７に記載の発明は、請求項６に記載のサーボ制御装置の負荷イナーシャ算出方法において、前記剛体か２慣性系かの判別を行なうステップで２慣性系と判断した場合は、前記負荷モデルとして先ず、剛体モデルを選択するステップと、段階的に前記剛体モデルの推定負荷イナーシャの値を変化させるステップと、前記負荷モデルにより得られた推定回転速度と実際のモータの回転速度の速度差から振動振幅を検出するステップと、  前記検出した振動振幅は最小値かどうか判別するステップと、前記振動振幅が最小値の時の前記推定負荷イナーシャを２慣性系のモータ側負荷イナーシャとして記憶するステップと、次に、負荷モデルを２慣性系モデルとするステップと、段階的に前記負荷モデルの推定負荷イナーシャの値を変化させるステップと、前記負荷モデルにより得られた推定回転速度と実際のモータの回転速度の速度差から振動振幅を検出するステップと、前記検出した振動振幅は最小値かどうか判別するステップと、前記振動振幅が最小値の時の前記推定負荷イナーシャの値を２慣性系の負荷側の負荷イナーシャとして記憶するステップと、を有することを特徴としている。
また、請求項８に記載の発明は、モータおよび負荷の状態を推定するためのオブザーバとして剛体オブザーバと２慣性系オブザーバを有するサーボ制御装置の負荷イナーシャ算出方法において、前記負荷は剛体か２慣性系かの判別を行なうステップと、剛体と判断した場合はオブザーバとして剛体オブザーバを選択するステップと、前記オブザーバの推定負荷イナーシャの値を段階的に変化させるステップと、
前記オブザーバにより得られた推定回転速度と実際のモータの回転速度の速度差から振動振幅を検出するステップと、前記検出した振動振幅は最小値かどうか判別するステップと、前記振動振幅が最小値の時の前記推定負荷イナーシャの値を剛体の負荷イナーシャとして記憶するステップと、を有することを特徴としている。
また、請求項９に記載の発明は、請求項８記載のサーボ制御装置の負荷イナーシャ算出方法において、前記剛体か２慣性系かの判別を行なうステップで２慣性系と判断した場合はオブザーバとして、先ず剛体オブザーバを選択するステップと、前記オブザーバの推定負荷イナーシャの値を段階的に変化させるステップと、前記オブザーバにより得られた推定回転速度と実際のモータの回転速度の速度差から振動振幅を検出するステップと、前記検出した振動振幅は最小値かどうか判別するステップと、前記振動振幅が最小値の時の推定負荷イナーシャを２慣性系のモータ側負荷イナーシャとして記憶するステップと、次に、前記オブザーバを２慣性系オブザーバとするステップと、前記オブザーバの推定負荷イナーシャの値を段階的に変化させるステップと、前記オブザーバにより得られた推定回転速度と実際のモータの回転速度の速度差から振動振幅を検出するステップと、前記検出した振動振幅は最小値かどうか判別するステップと、前記振動振幅が最小値の時の前記推定負荷イナーシャの値を２慣性系の負荷側の負荷イナーシャとして記憶するステップと、を有することを特徴としている。
【発明の効果】
【０００５】
本発明のサーボ制御装置およびその負荷イナーシャ算出方法によれば、運転中に負荷イナーシャを算出する構成としているので、負荷イナーシャを加速中以外の連続した運転中でも算出でき、また、運転中に負荷イナーシャが変動しても負荷イナーシャを算出することができる。その結果、負荷イナーシャに適したサーボ制御ゲインの自動設定を行なうことが可能となる。
【発明を実施するための最良の形態】
【０００６】
以下、本発明の具体的実施例について、図に基づいて説明する。
【実施例１】
【０００７】
図１は本発明の第１実施例を示すサーボ制御装置のブロック図である。
図１において、１はサーボ制御装置、２は位置制御部、３は速度制御部、４は電流アンプ、５はサーボモータ、６は速度検出器、７は負荷イナーシャ算出部、７１は振動検出部、７２は最小値検出部、７３は最小値記憶部、８は算出した負荷イナーシャに適したループゲインになるように位置制御部２及び速度制御部３のサーボ制御ゲインを自動設定するサーボゲイン設定部、Ｎｒｅｆは速度指令、Ｎｆｂは速度フィードバック信号、Ｐｒｅｆは位置指令、Ｐｆｂは位置フィードバック信号、τはトルク指令、ωはモータ回転速度、ωｅは推定回転速度と実際の回転速度ωの差である。
本発明の特徴とする点は下記のとおりである。
すなわち、サーボ制御装置１は、サーボモータを運転中に、段階的に推定負荷イナーシャＪｏの値を変化させながら、負荷モデル７０１により得られた推定回転速度ωｏと実際のモータの回転速度ωの差ωｅから振動成分を検出するための振動検出部７１と、振動検出部７１で検出した振動成分からその最小値を検出するための最小値検出部７２と、最小値検出部７２で振動の最小値を検出した時の推定負荷イナーシャＪｏを負荷イナーシャとして取得し記憶するための最小値記憶部７３を備える構成としている点である。
【０００８】
図２は、本発明の振動検出部７１の構成を示すブロック図である。
図２において、３は速度制御部、５はサーボモータ、７０１はモータに負荷を装着した負荷モデル（以下、負荷モデルと称す）、τはトルク指令、Ｊはモータのイナーシャとモータに装着した負荷のイナーシャを合算した実際のイナーシャ（以降、実際の負荷イナーシャと称す）、Ｊｏは負荷モデル７０１で使用している推定負荷イナーシャ、ωはサーボモータ５の実際の回転速度、ωｏは負荷モデル７０１で推定した推定回転速度、ωｅは推定回転速度ωｏと実際の回転速度ωの差である。
図３は本発明の第１実施例で用いた２慣性系モデルを示すブロック図である。
図３において、Ｊ１はモータ側のイナーシャ、Ｊ２は負荷側のイナーシャ、Ｋは軸ねじり剛性、τはトルク指令、ωはサーボモータの実際の回転速度、ωＬは負荷側の回転速度である。
以下、図２、３を用いて、本発明における負荷モデル７０１および本発明の振動検出部７１の説明を行なう。
負荷モデル７０１は図２に示す剛体モデルと、図３に示す２慣性系モデルがある。
負荷が剛体の場合は剛体モデルを用い、２慣性系の場合は剛体モデルと２慣性系モデルを用いる。２慣性系の場合は、先ず剛体モデルでモータ側のイナーシャＪ１を求め、次に２慣性系モデルを用いて負荷側のイナーシャＪ２を求める。
負荷モデル７０１は、トルク指令τを取り込み、推定負荷イナーシャＪｏを用いて推定回転速度ωｏを得る。この推定回転速度ωｏと実際の回転速度ωの差ωｅは、振動検出部７１から最小値検出部７２へ出力される。
振動検出部７１は、推定回転速度ωｏと実際の速度ωの差ωｅから振動成分を検出するが、その際速度検出器６の速度フィードバック信号Ｎｆｂおよびトルク指令τに含まれる振動成分が、検出レベルを超えた場合に振動を検出するようにしている。この振動検出レベルは、予め決めておくか、制御系が安定な状態で停止している時の振幅レベルなどから決定する。
【０００９】
図４は、本発明のサーボ制御装置の動作を説明するための説明図であり、推定負荷イナーシャＪｏの値を段階的に変化させたときの、推定回転速度ωｏと実際の回転速度ωの差を示している。なお、図４の横軸は時間の経過を示している。
図５は、推定負荷イナーシャＪｏの値と、推定回転速度ωｏと実際の回転速度ωの差ωｅとの関係を示す説明図である。
図５の縦軸は推定回転速度ωｏと実際の回転速度ωの差ωｅを示し、横軸は負荷イナーシャ比、すなわち（推定負荷イナーシャＪｏ／実際の負荷イナーシャＪ）を示している。
以下、図４、５を用いて本発明のサーボ制御装置１の負荷イナーシャの算出に係る動作を説明する。
負荷が剛体か２慣性系かを判別する必要があるが、その判別は、例えば、加減速等でトルクを加えて振動させた時、振動に共振と反共振の２つが現れるのが２慣性系で、振動が現れない又は制御系の振動しか現れない時は剛体と判断する。
最初に、負荷が剛体と判断された場合について説明を行なう。
負荷モデル７０１として図２に示す剛体モデルを用い、サーボモータ５を運転中、振動検出部７１により、図４に示すように段階的に推定負荷イナーシャＪｏの値を上げながら振動を検出する。
ここで、振動の検出は推定回転速度ωｏと実際の回転速度ωの差ωｅ（以下、速度差ωｅと称す）の振幅を求めることによりを行なう。速度差ωｅが図４、５に示す最小になる時の推定負荷イナーシャＪｏを最小値検出部７２で検出し、この検出した最小値を最小値記憶部７３で記憶することで、負荷イナーシャの値Ｊを取得する。取得した負荷イナーシャＪに適したループゲインになるように、サーボゲイン設定部８によりサーボ制御ゲインが自動設定される。
サーボ制御装置１は、実際の負荷イナーシャＪと負荷モデル７０１で使用している推定負荷イナーシャＪｏの値が一致している場合は、実際のサーボ制御装置と負荷モデルは同じような応答をするため、速度差ωｅは小さい（図４のＡ点）が、一致していない場合は応答が合わないので速度差ωｅは大きくなる（図４のＢ点）。そこで、速度差ωｅが一番小さくなる時の推定負荷イナーシャの値を算出することにより、実際の負荷イナーシャの値を得ることができるのである。
次に、負荷が２慣性系、すなわちモータ側の負荷イナーシャＪ１と負荷側のイナーシャＪ２が存在する場合について説明を行なう。
剛体の場合と同様に、負荷モデル７０１として図２に示す剛体モデルを用い、サーボモータ５を運転中、振動検出部７１により、図４に示すように段階的に推定負荷イナーシャＪｏの値を上げながら振動を検出する。
ここで、振動の検出は推定回転速度ωｏと実際の回転速度ωの差ωｅ（以下、速度差ωｅと称す）の振幅を求めることによりを行なう。速度差ωｅが図４、５に示す最小になる時の推定負荷イナーシャＪｏを最小値検出部７２で検出し、この検出した最小値を最小値記憶部７３で記憶する。このようにして先ず、モータ側の負荷イナーシャＪ１を取得する。
次に、負荷モデル７０１として２慣性系の負荷モデルを用い、サーボモータ５を運転中、振動検出部７１により、図４に示すように段階的に推定負荷イナーシャＪｏの値を上げながら振動を検出する。
ここで、振動の検出は推定回転速度ωｏと実際の回転速度ωの差ωｅ（以下、速度差ωｅと称す）の振幅を求めることによりを行なう。速度差ωｅが図４、５に示す最小になる時の推定負荷イナーシャＪｏを最小値検出部７２で検出し、この検出した最小値を最小値記憶部７３で記憶する。このようにして、負荷側の負荷イナーシャＪ２を取得する。
取得した負荷イナーシャＪ１、Ｊ２に適したループゲインになるように、サーボゲイン設定部８によりサーボ制御ゲインが自動設定される。
なお、振動検出部７１はマイクロコンピュータで行っても良い。
【００１０】
次に、本発明のサーボ制御装置の負荷イナーシャ算出方法の手順について、図６を用いて説明する。
なお、図６は、本発明の第１実施例を示すサーボ制御装置の負荷イナーシャ算出方法のフローチャートである。
最初に振動検出レベルを設定する（ステップＳＴ１）。次に位置ループや速度ループといった制御系のゲインを低ゲインとしておき（ステップＳＴ２）、剛体か２慣性系かの判別を行なう（ステップＳＴ３）。剛体と判断した場合は剛体モデルを選択する（ステップＳＴ４）。２慣性系と判断した場合は後述するステップＳＴ５へ進む。剛体と判断した場合は、推定負荷イナーシャＪｏの値を上げる（ステップＳＴ６）。次に、速度差ωｅから振動振幅を検出する（ステップＳＴ７）。次に、検出した振動振幅は最小値かどうか判別する（ステップＳＴ８）。最小値を検出できない場合は、ステップＳＴ６に戻り、前述の図４に示すような時間タイミングで段階的に推定負荷イナーシャＪｏの値を上げていき、速度差ωｅが小から大きくなる変化を検出することで振動振幅、すなわち速度差ωｅの最小値を検出し、最小値の時の推定負荷イナーシャＪｏの値を負荷イナーシャＪとして記憶する。これが求められた剛体の負荷イナーシャの値である（ステップＳＴ９）。以降、推定負荷イナーシャＪｏの値を下げ、ステップＳＴ６〜９を繰り返すことにより、負荷イナーシャが変化してもその検出が可能である。
このようにして取得した負荷イナーシャＪに適したループゲインになるように、サーボ制御ゲインを自動設定する。
ステップＳＴ３で２慣性系と判断した場合も、先ず剛体モデルを選択する（ステップＳＴ５）。次に推定負荷イナーシャＪｏの値を上げる（ステップＳＴ１０）。次に、速度差ωｅから振動振幅を検出する（ステップＳＴ１１）。次に、検出した振動振幅は最小値かどうか判別する（ステップＳＴ１２）。最小値を検出できない場合は、ステップＳＴ１０に戻り、段階的に推定負荷イナーシャＪｏの値を上げていき、速度差ωｅが小から大きくなる変化を検出することで振動振幅、すなわち速度差ωｅの最小値を検出し、最小値の時の推定負荷イナーシャＪｏの値を負荷イナーシャＪ１として記憶する。これが求められた２慣性系のモータ側の負荷イナーシャＪ１の値である（ステップＳＴ１３）。次に、負荷モデルを２慣性系モデルとする（ステップＳＴ１４）。次に推定負荷イナーシャＪｏの値を上げる（ステップＳＴ１５）。次に、速度差ωｅから振動振幅を検出する（ステップＳＴ１６）。次に、検出した振動振幅は最小値かどうか判別する（ステップＳＴ１７）。最小値を検出できない場合は、ステップＳＴ１５に戻り、段階的に推定負荷イナーシャＪｏの値を上げていき、速度差ωｅが小から大きくなる変化を検出することで振動振幅、すなわち速度差ωｅの最小値を検出し、最小値の時の推定負荷イナーシャＪｏの値を負荷イナーシャＪ２として記憶しておく。これが求められた２慣性系の負荷側の負荷イナーシャＪ２である（ステップＳＴ１８）。以降、推定負荷イナーシャＪｏの値を下げ、ステップＳＴ５、１０〜１８を繰り返すことにより、負荷イナーシャが変化してもその検出が可能である。
このようにして取得した負荷イナーシャＪ１、Ｊ２に適したループゲインになるように、サーボ制御ゲインを自動設定する。
【実施例２】
【００１１】
次に、本発明の第２実施例を説明する。
図７は、本発明の第２実施例を示す推定回転速度ωｏｂと実際の回転速度ωの差を求める剛体オブザーバを含むブロック図である。
図８は、本発明の第２実施例を示す推定回転速度ωｏｂと実際の回転速度ωの差を求める２慣性系オブザーバを含むブロック図である。
図７、８において、３は速度制御部、５はサーボモータ、７１は振動検出部、７１０はオブザーバ、７１２はオブザーバの負荷イナーシャ分、７１３はオブザーバの速度制御のゲイン、７１４は積分、７１５はオブザーバの速度制御の積分、Ｎｒｅｆは速度指令、τはトルク指令、ωはサーボモータ５の実際の回転速度、ωｏｂはオブザーバで推定した推定回転速度、ωｅは推定回転速度ωｏｂと実際の回転速度ωの差、θは回転角度、Ｋは軸ねじり剛性、Ｊは実際の負荷イナーシャ、Ｊｏはオブザーバ７１０で使用している推定負荷イナーシャ、Ｊ１はモータ側のイナーシャ、Ｊ２は負荷側のイナーシャである。
第１実施例と相違する点は以下のとおりである。
すなわち、本発明の第１実施例を構成する振動検出部７１は、負荷モデル７０１を用いているのに対し、本実施例は、オブザーバ７１０を用いる構成としている点である。
以下、図７、８を用いて、本発明のオブザーバ７１０および振動検出部７１の説明を行なう。
オブザーバ７１０は図７に示す剛体オブザーバと、図８に示す２慣性系オブザーバがある。
負荷が剛体の場合は剛体オブザーバを、２慣性系の場合は剛体オブザーバと２慣性系オブザーバを用いる。
オブザーバ７１０は、オブザーバの負荷イナーシャモデル７１２、オブザーバの速度制御のゲイン７１３、積分７１４、オブザーバの速度制御の積分７１５から成り、速度指令Ｎｒｅｆおよびトルク指令τを取り込み推定回転速度ωｏｂを得ている。振動検出部７１は、オブザーバ７１０で推定した推定回転速度ωｏｂとサーボモータ５の実際の回転速度ωの差ωｅを、最小値検出部７２へ出力する。
なお、振動検出部７１はマイクロコンピュータで行っても良い。
【００１２】
図９は、本発明の第２実施例を示すサーボ制御装置の負荷イナーシャ算出方法のフローチャートである。
以下、図９を用いて、本発明のサーボ制御装置の負荷イナーシャ算出方法の手順を説明する。
最初に振動検出レベルを設定する（ステップＳＴ２１）。次に、位置ループや速度ループといった制御系のゲインを低ゲインとし（ステップＳＴ２２）、剛体か２慣性系かの判別を行なう（ステップＳＴ２３）。剛体と判断した場合は剛体オブザーバを選択する（ステップＳＴ２４）。２慣性系と判断した場合は後述するステップＳＴ２５へ進む。剛体と判断した場合は、推定負荷イナーシャＪｏの値を上げる（ステップＳＴ２６）。次に、速度差ωｅから振動振幅を検出する（ステップＳＴ２７）。次に、検出した振動振幅は最小値かどうか判別する（ステップＳＴ２８）。最小値を検出できない場合は、ステップＳＴ２６に戻り、前述の図４に示すような時間タイミングで段階的に推定負荷イナーシャＪｏの値を上げていき、速度差ωｅが小から大きくなる変化を検出することで振動振幅、すなわち速度差ωｅの最小値を検出し、最小値の時の推定負荷イナーシャＪｏの値を負荷イナーシャＪとして記憶する。これが求められた剛体の負荷イナーシャＪである（ステップＳＴ２９）。以降、推定負荷イナーシャＪｏの値を下げ、ステップＳＴ２６〜２９を繰り返すことにより、負荷イナーシャが変化してもその検出が可能である。
このようにして取得した負荷イナーシャＪに適したループゲインになるように、サーボ制御ゲインを自動設定する。
ステップＳＴ２３で２慣性系と判断した場合も、先ず剛体オブザーバを選択する（ステップＳＴ２５）。次に推定負荷イナーシャＪｏの値を上げる（ステップＳＴ３０）。次に、速度差ωｅから振動振幅を検出する（ステップＳＴ３１）。次に、検出した振動振幅は最小値かどうか判別する（ステップＳＴ３２）。最小値を検出できない場合は、ステップＳＴ３０に戻り、段階的に推定負荷イナーシャＪｏの値を上げていき、速度差ωｅが小から大きくなる変化を検出することで振動振幅、すなわち速度差ωｅの最小値を検出し、最小値の時の推定負荷イナーシャＪｏの値を負荷イナーシャＪ１として記憶する。これが求められた２慣性系のモータ側の負荷イナーシャＪ１の値である（ステップＳＴ３３）。次に、オブザーバを２慣性系オブザーバとする（ステップＳＴ３４）。次に推定負荷イナーシャＪｏの値を上げる（ステップＳＴ３５）。次に、速度差ωｅから振動振幅を検出する（ステップＳＴ３６）。次に、検出した振動振幅は最小値かどうか判別する（ステップＳＴ３７）。最小値を検出できない場合は、ステップＳＴ３６に戻り、段階的に推定負荷イナーシャＪｏの値を上げていき、速度差ωｅが小から大きくなる変化を検出することで振動振幅、すなわち速度差ωｅの最小値を検出し、最小値の時の推定負荷イナーシャＪｏの値を負荷イナーシャＪ２として記憶しておく。これが求められた２慣性系の負荷側の負荷イナーシャＪ２である（ステップＳＴ３８）。以降、推定負荷イナーシャＪｏの値を下げ、ステップＳＴ２５、３０〜３８を繰り返すことにより、負荷イナーシャが変化してもその検出が可能である。
このようにして取得した負荷イナーシャＪ１、Ｊ２に適したループゲインになるように、サーボ制御ゲインを自動設定する。
【００１３】
以上述べたように、本発明の第１、２実施例に係るサーボ制御装置およびその負荷イナーシャ算出方法は、推定負荷イナーシャＪｏの値を変化させながら、負荷モデル７０１またはオブザーバ７１０により得られた推定回転速度ωｏ、ωｏｂと実際のモータの回転速度ωの差ωｅから振動成分を検出し、最小値検出手段７２へ出力する振動検出手段７１と、振動検出手段７１で検出した振動成分からその最小値を検出する最小値検出手段７２と、最小値検出手段７２で振動の最小値を検出した時の推定負荷イナーシャＪｏを負荷イナーシャＪ、Ｊ１、Ｊ２として取得し記憶する最小値記憶手段７３を備え、運転中に負荷イナーシャを算出する構成としているので、運転中に負荷イナーシャが変動しても負荷イナーシャを算出することができ、負荷イナーシャに適したサーボ制御ゲインの自動設定が出来るのである。
【産業上の利用可能性】
【００１４】
サーボモータ運転中に負荷イナーシャを検出するようにしているので、運転中に負荷イナーシャが変動するような用途のサーボ制御装置にも適用可能である。
【図面の簡単な説明】
【００１５】
【図１】本発明の第１実施例を示すサーボ制御装置のブロック図
【図２】本発明の振動検出部７１の構成を示すブロック図
【図３】本発明の第１実施例で用いた２慣性系モデルを示すブロック図
【図４】本発明のサーボ制御装置の動作を説明するための説明図
【図５】推定負荷イナーシャＪｏの値と、推定回転速度ωｏと実際の回転速度ωの差ωｅとの関係を示す説明図
【図６】本発明の第１実施例を示すサーボ制御装置の負荷イナーシャ算出方法のフローチャート
【図７】本発明の第２実施例を示す推定回転速度ωｏｂと実際の回転速度ωの差を求める剛体オブザーバを含むブロック図
【図８】本発明の第２実施例を示す推定回転速度ωｏｂと実際の回転速度ωの差を求める２慣性系オブザーバを含むブロック図
【図９】本発明の第２実施例を示すサーボ制御装置の負荷イナーシャ算出方法のフローチャート
【符号の説明】
【００１６】
１  サーボ制御装置
２  位置制御部
３  速度制御部
４  電流アンプ
５  サーボモータ
６  速度検出器
７  負荷イナーシャ算出部
７１  振動検出部
７２  最小値検出部
７３  最小値記憶部
７０１  モータに負荷を装着した負荷モデル
７１０  オブザーバ
７１２  オブザーバの負荷イナーシャ分
７１３  オブザーバの速度制御のゲイン
７１４  積分
７１５  オブザーバの速度制御の積分
８  サーボゲイン設定部
Ｎｒｅｆ  速度指令
Ｎｆｂ  速度フィードバック信号
Ｐｒｅｆ  位置指令
Ｐｆｂ  位置フィードバック信号
τ  トルク指令、
Ｊ  実際の負荷イナーシャ
Ｊｏ  推定負荷イナーシャ
Ｊ１  モータ側のイナーシャ
Ｊ２  負荷側のイナーシャ
ω  サーボモータの実際の回転速度
ωｏ  負荷モデルで推定した推定回転速度
ωｏｂ  オブザーバで推定した推定回転速度
ωｅ  推定回転速度と実際の回転速度の差
θ  回転角度
Ｋ  軸ねじり剛性
【図１】
2006034003.tif 000003
【図２】
2006034003.tif 000004
【図３】
2006034003.tif 000005
【図４】
2006034003.tif 000006
【図５】
2006034003.tif 000007
【図６】
2006034003.tif 000008
【図７】
2006034003.tif 000009
【図８】
2006034003.tif 000010
【図９】
2006034003.tif 000011