【手続補正書】
【提出日】平成18年3月10日(2006.3.10)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】発明の名称
【補正方法】変更
【補正の内容】
【発明の名称】サーボ制御装置
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
サーボモータの負荷となるマシンの特性を抽出する機能を有するサーボ制御装置において、
前記サーボモータの推定速度から実際の速度を差し引いた速度差の振動振幅から前記マシンの振動を検出する振動検出手段と、
前記速度差の周波数解析を行う振動周波数測定手段と、
前記振動検出手段が所定のレベルの振動を検出するまで、前記サーボ制御装置の制御ゲインを上げながら前記サーボモータに対するトルク指令に模擬外乱トルクを加える処理を繰り返し、前記振動検出手段が前記所定のレベルの振動を検出した時に、前記振動周波数測定手段によって測定された振動周波数を前記マシンの共振周波数とする処理手段を備えることを特徴とするサーボ制御装置。
【請求項２】
前記処理手段は、前記制御ゲインを所定の上限値まで上げても前記振動検出手段が前記所定のレベルの振動を検出しなかった場合は、前記マシンを共振周波数を有しない剛体と判断することを特徴とする請求項１記載のサーボ制御装置。
【請求項３】
前記処理手段は、前記制御ゲインの所定の上限値より小さい複数の値を設定し、前記振動検出手段が前記所定のレベルの振動を検出した時の前記制御ゲインの値を前記複数の値の各々と比較して前記マシンの剛性を推定することを特徴とする請求項１記載のサーボ制御装置。
【請求項４】
前記処理手段は、前記共振周波数の高周波成分をフィルタまたはオブザーバによって抑制し、再び前記制御ゲインを上げながら、前記模擬外乱トルクを加える処理を繰り返し、前記振動検出手段が再び前記所定のレベルの振動を検出した時に、前記振動周波数測定手段によって測定された振動周波数を前記マシンの反共振周波数とすることを特徴とする請求項１記載のサーボ制御装置。
【請求項５】
前記処理手段は、前記振動検出手段が前記所定のレベルの振動を検出すると、前記模擬外乱トルクを加える処理を停止すると共に前記制御ゲインを小さくして前記マシンの振動を抑えることを特徴とする請求項１記載のサーボ制御装置。
【請求項６】
前記振動検出手段が振動として検出する、前記所定のレベルの振動の大きさは、前記マシンの用途や使用状況に応じて変更することを特徴とする請求項１記載のサーボ制御装置。
【請求項７】
前記処理手段によって求められた前記共振周波数を前記サーボモータの制御に使用することを特徴とする請求項１記載のサーボ制御装置。
【請求項８】
前記処理手段によって求められた前記反共振周波数を前記サーボモータの制御に使用することを特徴とする請求項４記載のサーボ制御装置。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０００１
【補正方法】変更
【補正の内容】
【０００１】
【発明の属する技術分野】
本発明はサーボモータを駆動するサーボ制御装置に関し、特にサーボモータの負荷であるマシン（機械）の特性を抽出する機能を有するサーボ制御装置に関する。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０００５
【補正方法】変更
【補正の内容】
【０００５】
【課題を解決するための手段】
上記課題を解決するため、本発明は次のように構成したものである。
請求項１に記載の発明は、サーボモータの負荷となるマシンの特性を抽出する機能を有するサーボ制御装置において、前記サーボモータの推定速度から実際の速度を差し引いた速度差の振動振幅から前記マシンの振動を検出する振動検出手段と、前記速度差の周波数解析を行う振動周波数測定手段と、前記振動検出手段が所定のレベルの振動を検出するまで、前記サーボ制御装置の制御ゲインを上げながら前記サーボモータに対するトルク指令に模擬外乱トルクを加える処理を繰り返し、前記振動検出手段が前記所定のレベルの振動を検出した時に、前記振動周波数測定手段によって測定された振動周波数を前記マシンの共振周波数とする処理手段を備えることを特徴とするものである。
請求項２に記載の発明は、前記処理手段は、前記制御ゲインを所定の上限値まで上げても前記振動検出手段が前記所定のレベルの振動を検出しなかった場合は、前記マシンを共振周波数を有しない剛体と判断することを特徴とするものである。
請求項３に記載の発明は、前記処理手段は、前記制御ゲインの所定の上限値より小さい複数の値を設定し、前記振動検出手段が前記所定のレベルの振動を検出した時の前記制御ゲインの値を前記複数の値の各々と比較して前記マシンの剛性を推定することを特徴とするものである。
請求項４に記載の発明は、前記処理手段は、前記共振周波数の高周波成分をフィルタまたはオブザーバによって抑制し、再び前記制御ゲインを上げながら、前記模擬外乱トルクを加える処理を繰り返し、前記振動検出手段が再び前記所定のレベルの振動を検出した時に、前記振動周波数測定手段によって測定された振動周波数を前記マシンの反共振周波数とすることを特徴とするものである。
請求項５に記載の発明は、前記処理手段は、前記振動検出手段が前記所定のレベルの振動を検出すると、前記模擬外乱トルクを加える処理を停止すると共に前記制御ゲインを小さくして前記マシンの振動を抑えることを特徴とするものである。
請求項６に記載の発明は、前記振動検出手段が振動として検出する、前記所定のレベルの振動の大きさは、前記マシンの用途や使用状況に応じて変更することを特徴とするものである。
請求項７に記載の発明は、前記処理手段によって求められた前記共振周波数を前記サーボモータの制御に使用することを特徴とするものである。
請求項８に記載の発明は、前記処理手段によって求められた前記反共振周波数を前記サーボモータの制御に使用することを特徴とするものである。
上記のサーボ制御装置により、特別の測定器等を使用することなく自動的に簡単に共振周波数や反共振周波数といった機械の特性を得ることができ、それを制御に使うことができる。
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】０００６
【補正方法】変更
【補正の内容】
【０００６】
【発明の実施の形態】
以下、本発明の具体的実施例を図１に示して説明する。
図１において１は振動検出、２はマイクロコンピュータ、３は電流アンプ、４はベースドライブ回路、５はパワートランジスタモジュール、６はモータ、７はエンコーダ、８はマシン等の負荷、９はデータトレース、１０は周波数解析である。
以上のように構成された回路において、その動作を図４のブロック図を用いて説明する。
まずマイクロコンピュータ２は位置や速度といった指令を外部のコントローラ等から受取る。そして例えば速度指令の場合は速度制御を行い、その出力の電流指令を電流アンプ３で電流制御を行い、ベースドライブ駆動回路４を通してパワートランジスタ５を駆動してモータを制御する。ここでマイクロコンピュータ２は、通常の制御以外に図４の速度制御の出力のトルク指令に、ステップ状の模擬外乱トルクを加えることができる。
本発明の機械特性の抽出方法を図９の概略フローチャートを用いて説明する。
まず最初に位置ループや速度ループといった制御系のゲインを低ゲインとしておき、図５のように運転して機械特有の振動レベルを検出する。この図では通常運転での差速度（推定速度−速度）の振動振幅の最大値を検出している。図９のフローチャートでは処理１を行う。
ここで振動検出１は差速度（推定速度−速度）がある振動レベルを超えた場合、振動として検出する。最初通常運転での振動レベルを検出して、その３倍等したものを、振動レベルとする。この振動レベルの倍率は単なる目安であり機械の用途、状況等に応じて決めても良い。差速度（推定速度−速度）は、図２のようにモータ及び負荷のモデル３から推定速度を算出して、それから速度を引いて、求める。或いは図３のようにオブザーバから推定速度を算出してそれから速度を引いて、求める。差速度（推定速度−速度）から振動検出や振動周波数を求めるのは、差し引いた後に振動成分のみが残るので、正確に振動振幅や振動周波数を求めやすいからである。
次に位置ループや速度ループといった制御系のゲインを低ゲインとしておき、図４の制御ブロック図のトルク指令τｒｅｆに模擬外乱トルクをステップ状に加えて、推定速度−速度の応答があるレベル以上あることを確認する。図９のフローチャートの２から３の処理を行う。ここで、あるレベル以上の応答がなければ、加えた模擬外乱トルクが機械負荷を超えられなかったと考え、模擬外乱トルクを大きくする。あらかじめ定めたレベルまで、応答が大きくなるように模擬外乱トルクを大きくする。この応答のレベルは前記図９のフローチャートの処理１にて、例えば通常の運転中の振動振幅の最大値を２倍等にする。そして模擬外乱トルクをあるレベルまで大きくしても応答が大きくならない場合、応答の検出レベルを下げる。このようにして模擬外乱トルクの大きさとその応答の検出レベルを調整する。
模擬外乱トルクの大きさを決めた後で、次に図６に示すような時間タイミングで段階的に制御ゲインを上げる。図９のフローチャート４〜７の処理のようにゲインを上げたところで、トルク指令に模擬外乱トルクを加え振動検出１にて、振動を確認する。振動検出１は図６のように推定速度−速度の振幅を振動検出レベルと比較し、大きい場合振動として検出する。振動レベルは前に調整した応答レベルの１．５倍等する。制御ゲインには１つの上限値を設定する。１つの上限値よりも低いレベルを幾つか設けて、剛体であるかどうかを判断することもできる。
模擬外乱トルクを加えた後にデータトレース９で推定速度−速度をトレースし、あるレベルを超えて振動を検出したら、データトレースは止めて周波数解析１０にてデータトレースした速度差を解析して、振幅の大きな周波数を算出する。仮に制御ゲインをあるレベル迄上げても振動検出１で振動が検出されない場合、共振周波数のない剛体として判断する。そして振動した場合、この周波数が機械の共振周波数となる。
機械の周波数特性をとると図８のように共振周波数ｆｈと反共振周波数ｆｌが現れることがある。共振周波数が無い場合は、ほぼ剛体として考えることができる。そして共振周波数ｆｈをフィルタや高周波成分を抑える制御法（例えば制振制御）等で抑えて、制御ゲインが更に上げられるようになると次に反共振周波数ｆｌで振動が発生する。この周波数を測定すると反共振周波数が分かるので、共振周波数と反共振周波数の機械特性を得ることができる。周波数の測定は推定速度−速度の振動成分を図７のようにデータトレース９でデータトレースし、それを周波数解析１０でＦＦＴ解析しその振幅の最大値の周波数を求める。求めた周波数が振動周波数となる。振動検出レベルを超える等振動振幅がある一定のレベルであるので、振幅もある程度大きいことになる。
次に図９のフローチャート７の処理で振動検出１にて振動を検出すると図６のようなタイミングで模擬外乱トルクを加えることを停止し、ゲインを振動しないレベル迄下げる（例えば、振動したゲインの半分あるいは、最初に設定した低いゲイン等）。あるいは、確実に振動を止めるため、トルク指令を絞るか、位置偏差を一瞬ゼロにする。図９のフローチャート８の処理を行う。
測定した振動周波数ｆ０を、振動抑制フィルタ、例えばノッチフィルタのノッチ周波数として設定する或いはオブザーバ等を用いて高周波の振動成分を抑える。
高周波の振動を抑えた後、前と同様に図６に示すような時間タイミングで段階的にゲインを上げる。図９のフローチャート１０〜１２の処理のようにゲインを上げたところで、トルク指令に模擬外乱トルクを加え振動検出１にて、同様に振動を確認する。
模擬外乱トルクを加えた後にデータトレース９で推定速度−速度をトレースし、あるレベルを超えて振動を検出したら、データトレースは止めて周波数解析１０にてデータトレースした速度差を解析して、振幅の大きな周波数を算出する。この周波数が機械の反共振周波数となる。
次に図９のフローチャート１２の処理で振動検出１にて振動を検出すると図６のようなタイミングで模擬外乱トルクを加えることを止め、同様にゲインを振動しないレベル迄下げる（例えば、振動したゲインの半分あるいは、最初に設定した低いゲイン等）。あるいは、確実に振動を止めるため、トルク指令を絞るか、位置偏差を一瞬ゼロにする。図９のフローチャート１３の処理を行う。
このようにして機械が剛体であるか共振周波数及び反共振周波数を持った機械であっても適用できる。そして共振周波数、反共振周波数等の機械の特性が分かる。